python-opencv保存视频失败

http://t.csdn.cn/va9eD

四、视频保存失败的原因
多数是因为编码或者视频的宽度和写入的frame宽度不同,导致写入失败。因此,最好使用输入视频的编码(fourcc),视频的宽度也要设置对。不知道处理后的图片的大小,那就打印下图片的大小就行了,保存视频时,视频的大小要和图片的大小一致。

python-opencv写视频几个步骤: fourcc = cv2.VideoWriter_fourcc(*‘DIVX’) out =
cv2.VideoWriter(‘D:/GestureVideo/’+video_name, fourcc, 10, (640, 480))
out.write(frame) out.release()

bug1:代码生成exe文件后运行,保存的视频是0kb 网上说的opencv的dll文件放在exe同一目录,试了没用。
将编码器从DIVX改成MJPG解决了问题,不知道为何。

bug2:代码生成exe文件后运行,保存的视频不是0kb,但是打开时提示视频损坏 没有正确release(直接关闭dos窗口)。

bug3:视频文件无法读取,显示只有6kb 视频文件大小设置出了问题,可以先去查看读取的视频的属性,看它的宽和高,再设置w、h就没有问题了。
———————————————— 版权声明:本文为CSDN博主「夜空骑士」的原创文章,遵循CC 4.0
BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/NIeson2012/article/details/94635799

问题3:我设置视频长宽属性之后,打印并没有生效。导致保存是6kb。需要注意。

ret = cap.set(cv.CAP_PROP_FRAME_WIDTH, 500)
if not ret:
    print("Can't set cv.CAP_PROP_FRAME_WIDTH ...")
    exit()
ret = cap.set(cv.CAP_PROP_FRAME_HEIGHT, 800)
if not ret:
    print("Can't set CAP_PROP_FRAME_HEIGHT ...")
    exit()
print(cap.get(cv.CAP_PROP_FPS), cap.get(cv.CAP_PROP_FRAME_HEIGHT), cap.get(cv.CAP_PROP_FRAME_WIDTH))

0.0 480.0 640.0
打印一直都是480 640。设置的时候,需要设置成480.0 640.0

out = cv.VideoWriter('output.avi', fourcc, 20.0, (640, 480))
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值