1. 程式人生 > >Opencv&Python -視訊錄製播放及儲存

Opencv&Python -視訊錄製播放及儲存

視訊的錄製播放及儲存內容

# Author Copyright LAPLA.Inc Time: 2018/8/11
import cv2 as cv

n=input("Please input c or o:")
cap = cv.VideoCapture(0)#用VideoCapture()建立一個物件,其引數是攝像機的編號或者是一個視訊的檔名
fourcc=cv.VideoWriter_fourcc(*'XVID')#指定視訊視訊編解碼器格式
out=cv.VideoWriter('output.avi',fourcc,20.0,(640,480))#用VideoWriter建立一個物件,其引數有:輸出視訊的格式、編碼格式、幀數(圖片數/s,幀數少,視訊不流暢,反之流暢,一般在25幀左右)、畫面的大小
open=cv.VideoCapture('kongfan.mp4')

if n=='c':
    while (True):
        ret,frame=cap.read()#返回一個布林值和一個影象矩陣
        gray = cv.cvtColor(frame, 0)
        flip=cv.flip(gray,1)#一個標誌,指定如何翻轉陣列; 0表示繞x軸翻轉,正值(例如1)表示繞y軸翻轉。負值(例如,-1)表示在兩個軸周圍翻轉
        out.write(frame)
        cv.imshow("frame", flip)
        k = cv.waitKey(1)
        if k == ord('q'):
            break


elif n=='o':
    while(open.isOpened()):
        ret,frame=open.read()
        gray=cv.cvtColor(frame,cv.COLOR_BGR2GRAY)
        cv.imshow("Playing Video",frame)
        if cv.waitKey(25)==ord("q"):
            break
else:
    print("Please input right order")

#完成後,要釋放攝像機(或檔案)
cap.release()
open.release()
cv.destroyAllWindows()