赞
踩
正在学习OpenCV遇到了一些问题,跟着B站https://www.bilibili.com/video/BV1Mv4y1M7gJ/?p=21&spm_id_from=pageDriver&vd_source=3fc1e130e6c0c19d6c60d24c8275ee65学的,但是为什么VScode创建VideoWriter对象后无法播放,代码如下
import cv2
#创建VideoWriter为写多媒体文件
fourcc = cv2.VideoWriter_fourcc(*‘MJPG’)
vw = cv2.VideoWriter(‘./out.mp4’,fourcc,25,(1280,720))#里面必须是自己电脑的分辨率,否则无法正常写入文件,此句是创建videowriter的对象
#创建窗口
cv2.namedWindow(‘video’,cv2.WINDOW_NORMAL)
cv2.resizeWindow(‘video’,640,480)#设置窗口尺寸,不设置的话上面用AUTOSIZE
#获取视频设备/读取视频文件
cap = cv2.VideoCapture(0)#参数为0是获取摄像头
#判断摄像头是否为打开态
while cap.isOpened():
#从摄像头读视频帧
ret, frame = cap.read()#ret为是否真正读到数据帧,第二个是视频帧
if ret == True:
#将视频帧在窗口中显示
cv2.imshow(‘video’, frame)
cv2.resizeWindow(‘video’,640,480)#因为窗口会被撑大,所以在这里再次设置窗口大小
#写数据到多媒体文件
vw.write(frame)
#等待键盘事件,若为q则退出
key = cv2.waitKey(16)
if(key & 0xFF == ord('q')):
break
else:
break
#释放VideoCapture
cap.release()
#释放VideoWiter
vw.release()
cv2.destroyAllWindows()
报错如下
摄像头的宽高问题已经排除,剩下在网上没找到解决方案,希望有大神看到能帮助解决一下
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。