opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作
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)表示将每一帧写入文件。
猜您想看
-
Windows无响应怎么办
Windows...
2023年04月27日 -
如何使用MySQL查询数据
MySQL如何...
2023年05月05日 -
宝塔使用技巧:如何限制 IP 访问
如何使用阿里云...
2023年05月06日 -
文件系统挂载与卸载
挂载文件系统挂...
2024年05月30日 -
如何在Linux中使用Socat进行网络数据传输?
Socat是一...
2023年04月15日 -
如何解决Steam客户端出現Failed to create D3D device的问题?
Steam是一...
2023年05月03日