1.调用摄像头并显示

使用OpenCV调用摄像头并显示,只需要几行代码就可以实现:

import cv2
cap = cv2.VideoCapture(0)
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
# Display the resulting frame
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break

上面的代码中,cv2.VideoCapture(0)表示调用第一个摄像头,如果有多个摄像头,可以改成cv2.VideoCapture(1),表示调用第二个摄像头。cv2.imshow('frame',frame)表示将捕获的帧显示出来。

2.读取视频文件并显示

要读取视频文件并显示,可以使用如下代码:

import cv2
cap = cv2.VideoCapture('video.mp4')
while(cap.isOpened()):
ret, frame = cap.read()
cv2.imshow('frame',frame)
if cv2.waitKey(1) & 0xFF == ord('q'):
break

上面的代码中,cv2.VideoCapture('video.mp4')表示读取视频文件,cap.isOpened()表示判断视频是否读取成功,cv2.imshow('frame',frame)表示将捕获的帧显示出来。

3.保存视频

要保存视频,可以使用如下代码:

import cv2
cap = cv2.VideoCapture('video.mp4')
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))
while(cap.isOpened()):
ret, frame = cap.read()
if ret==True:
out.write(frame)

上面的代码中,cv2.VideoWriter_fourcc(*'XVID')表示编码器,out = cv2.VideoWriter('output.avi',fourcc, 20.0, (640,480))表示将视频写入文件,out.write(frame)表示将每一帧写入文件。