openCV基礎學習札記(2)—視頻的基本操作

openCV基礎學習札記(2)—視頻的基本操作

一.獲取picamera視頻圖像:

openCV基礎學習札記(2)—視頻的基本操作

說明:

  1. cv2.VideoCapture(0)

    該函數用來獲取視頻流,注意這個函數,在硬件上,在/dev/裡面一定有video0這個設備節點

  2. cv2.flip(img,flipcode) 翻轉圖像

  • flipcode = 0:沿x軸翻轉

  • flipcode > 0:沿y軸翻轉

  • flipcode < 0:x,y軸同時翻轉

3. cv2.cvtColor() 空間顏色轉換

  • 彩色圖像轉為灰度圖像

    img2 = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)

  • 灰度圖像轉為彩色圖像

    img3 = cv2.cvtColor(img,cv2.COLOR_GRAY2RGB)

  • #cv2.COLOR_X2Y,其中X,Y = RGB, BGR, GRAY, HSV, YCrCb, XYZ, Lab, Luv, HLS

4.可以使用cap.get(propId)來獲取視頻的一些參數信息。 propId可以是0到18之間的任何數,每一個數代表一個屬性。其中一些值可以使用cap.set(propId,value)來修改,例如cap.get(3)和cap.get(4)來查看每一幀的寬和高,默認是640x480。 我們可以使用ret=cap.set(3,320)和ret = cap.set(4,240)來把寬和高改成320x240。

二.從文件中播放視頻

openCV基礎學習札記(2)—視頻的基本操作

demo2.2.avi是我本地的一個視頻,把設備索引號改成文件名即可。 在播放每一幀時,使用cv2.waitKey()適當持續時間,一般可以設置25ms。

三.保存picamera獲取視頻

openCV基礎學習札記(2)—視頻的基本操作

說明:

  1. cv2.VideoWriter('output.avi',fourcc,20.0,(640,480))

    實際運行時生成的視頻大小為0k,究其原因是運行環境沒有相對應的視頻編碼器,故無法生成視頻,或者說第二個參數設置的不合適,系統裡沒有合適的。

    cv2.VideoWriter()第二個參數設置為-1,程序運行時則會交互地彈出一個對話框讓你從系統已有的編碼中選擇一個。要是沒有,那就給樹莓派安裝一個。

  2. cv2.VideoWriter_fourcc(*'XVID')

    參數可選:DIVX , XVID , MJPG , X264 , WMV1 , WMV2

    XVID是最好的,MJPG是高尺寸視頻,X264得到小尺寸視頻


分享到:


相關文章: