我尝试过使用vIDeoCapture.set(CV_CAP_PROP_CONVERT_RGB,false),但是收到消息“HIGHGUI ERROR:V4L:Property(16)不支持设备”.
我想避免转换为RGB的原因是因为相机将左右视频一起打包到单个YUYV图像中.两个相机都是单色的,据我所知,左图像信息在Y通道中编码,而右图像在U和V通道中编码.例如,如果我运行guvcvIEw,我会得到一个包含左右图像叠加的单个图像.它看起来像一个黑白图像(左图像在Y通道中编码),顶部是绿色和粉红色图像(右侧相机在UV通道中编码).我知道这听起来很不寻常,所以如果您对此有任何其他想法/问题,请不要犹豫.
我的目标是将图像捕获为YUYV,以便我可以使用split()将左图像(Y通道)与右图像(U和V通道)分开,并将它们显示为单色图像.然而,一旦图像被转换为RGB,亮度和色度通道就会混合在一起,并且不可能将两个图像分开.
总结一下,我需要捕获视频而不将其转换为RGB,以便保留YUYV格式.这将允许我分离左右图像.
或者我需要一种分别捕捉左右图像的方法,但我认为这不太可能.
我认为这在v4l中是可能的,但我更愿意只在可能的情况下使用openCV.
谢谢!
解决方法 我认为在openCV中有一种方法可以做到这一点.最后用V4L2捕获帧并将它们存储在openCV Mats中并不是太麻烦. 总结以上是内存溢出为你收集整理的c – OpenCV从没有RGB转换的相机捕获YUYV全部内容,希望文章能够帮你解决c – OpenCV从没有RGB转换的相机捕获YUYV所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)