1. 调用摄像头并显示

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

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

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

2. 读取视频文件并显示

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

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

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

3. 保存视频

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

1234567import cv2cap = 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)
Python

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