C++ OpenCV VideoWriter报错解决方案

今天终于把四相机同步采集系统的所有bug都解决了,遇到了好多问题百度都是错误的答案,下面记录一下。

(1)自定义一张图片,输入VideoWriter里面可以生成一个视频。可是换一台电脑就会出现如下错误:

cv::VideoWriter::open VIDEOIO(CV_IMAGES):raise OpenCV exception:

OpenCV(4.5.5) C:\build\master_winpack-build-win64-vc14\opencv\module\videoio\src\cap_images.cpp:253: error: (-5:Bad argument) CAP_IMAGES: can't find starting number(in the name of file): 一堆乱码 in function cv::icvExtractPattern'

网上搜了全是说什么把文件名test.mp4改成什么带数字的test001.mp4

乱讲。实际上只需要把opencv的版本降低成3.几的就可以了。

(2)CV_8UC4(24)转成CV_8UC3(16)。

输入VideoWriter里面的RGB图片一定是三通道的,不能是带透明度的四通道数据。网上的人说用convertTo()这个函数转换。乱讲,实际上这个函数不能改变通道数。正确的应该是使用split()函数把8UC4的图片分成大小为4的数组,然后再merge()函数把前面三个拼接起来。这样就能去掉第四个通道(比如透明度了)。

 

接下来每天都要去好远的地方采集数据,上午花一小时下午花一小时在那呆着。

只能拿书去看准备实习了。晚上回学校才能刷题。

posted @   花与不易  阅读(1973)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
点击右上角即可分享
微信分享提示