日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenCV 从文件中读取视频并播放

發布時間:2025/5/22 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV 从文件中读取视频并播放 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在OpenCV中要獲取一個視頻,需要創建一個VideoCapture對象,指定要讀取的視頻文件:

1.創建讀取視頻的對象
cap = cv.VideoCapture(filepath)

參數:

  • filepath: 視頻文件路徑
2.視頻的屬性信息
2.1 獲取視頻的某些屬性,
retval = cap.get(propId)

參數:

  • propId: 從0到18的數字,每個數字表示視頻的屬性

    常用屬性有:

索引flags意義
0cv2.CAP_PROP_POS_MSEC視頻文件的當前位置(ms)
1cv.CAP_PROP_POS_FRAMES從0開始索引幀,幀位置
2cv.CAP_PROP_POS_AVI_RATIO視頻文件的相對位置(0表示開始 1表示結束)
3cv.CAP_PROP_FRAME_WIDTH視頻流的幀寬度
4cv.CAP_PROP_FRAME_HEIGHT視頻流的幀高度
5cv.CAP_PROP_FPS幀率
6cv.CAP_PROP_FOURCC編解碼器四字符代碼
7cv.CAP_PROP_FRAME_COUNT視頻文件的幀
2.2. 修改視頻的屬性信息
cap.set(propId,value)

參數:

  • proid: 屬性的索引,與上面的表格相對應
  • value: 修改后的屬性值
3.判斷圖像是否讀取成功
isornot = cap.isOpened()
  • 若讀取成功則返回true,否則返回False

    ret, frame = cap.read()

4.獲取視頻的一幀圖像
ret, frame = cap.read()

參數:

  • ret: 若獲取成功返回True,獲取失敗,返回False
  • Frame: 獲取到的某一幀的圖像
5.調用cv.imshow()顯示圖像

在顯示圖像時使用cv.waitkey()設置適當的持續時間,如果太低視頻會播放的非常快,如果太高就會播放的非常慢,通常情況下我們設置25ms就可以了。

6.調用cap.realease()函數

cap.realease()函數可以將視頻釋放掉。

import cv2 as cv# 1.獲取視頻對象 cap = cv.VideoCapture('./1.wmv')# 2.判斷是否讀取成功 while(cap.isOpened()):# 3.獲取每一幀圖像ret, frame = cap.read()# 4. 獲取成功顯示圖像if ret == True:cv.imshow('frame', frame)# 5.每一幀間隔為25msif cv.waitKey(25) & 0xFF == ord('q'):break# 6.釋放視頻對象 cap.release() cv.destroyAllWindows()

總結

以上是生活随笔為你收集整理的OpenCV 从文件中读取视频并播放的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。