1. 程式人生 > >openCV 視頻分解及合成

openCV 視頻分解及合成

int lease imread 圖片合成 mage opencv 判斷 pri image

1. 視頻分解

import cv2
# **************************
# 分解視頻
cap=cv2.VideoCapture(‘1.mp4‘)#獲取一個視頻cap
isOpen=cap.isOpened()#判斷是否打開
fps=cap.get(cv2.CAP_PROP_FPS)#頻率,一秒多少張圖片
width=int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))#寬
height=int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))#高
count=cap.get(cv2.CAP_PROP_FRAME_COUNT)
print(‘height,width,count‘,height,width,count)
i=0
while(isOpen):
    if i==10:
        break
    else:
        i+=1
    (flag,frame)=cap.read()#讀取每一張圖片   flag:是否讀取成功  frame:讀取的照片
    fileName=‘image‘+str(i)+‘.jpg‘
    if flag:
        cv2.imwrite(‘./img/‘+fileName,frame)
print(‘end!‘)

2. 打開攝像頭獲取圖片

# 打開攝像頭
cap=cv2.VideoCapture(0) #值為0 打開攝像頭
isOpen=cap.isOpened()
i=1
while isOpen:
i+=1
(flag,frame)=cap.read()##讀取每一張圖片 flag:是否讀取成功 frame:讀取的照片
cv2.imshow(str(i),frame)
if flag:
cv2.imwrite(‘./img/‘+str(i)+‘.jpg‘,frame)
# 釋放對象
if i == 20:
break
cap.release()

3. 圖片合成視頻

import cv2

fps = 24
fourcc = cv2.VideoWriter_fourcc(*‘MJPG‘)
videoWriter = cv2.VideoWriter(‘test.avi‘, fourcc, fps, (1080,1920))
for i in range(1,1000):
    p2=i
    img12 = cv2.imread(‘./img/image1.jpg‘)
   # cv2.imshow(‘img‘, img12)
   # cv2.waitKey(1000/int(fps))
    print(str(p2))
    videoWriter.write(img12)
videoWriter.release()

openCV 視頻分解及合成