【发布时间】:2014-03-09 17:11:42
【问题描述】:
我在 Qt 中使用 opencv 摄像头支持来捕获图像,因为 Qt5.2 现在有 QCamera 和 QCameraImageCapture,我正在移植到它,代码非常简化。
但是拍摄的图像太暗,而 QCameraViewfinder 曝光的帧具有正确的亮度。唉,QWidget::grab() 在 QCameraViewfinder 上不起作用。
此外,相机演示代码的行为方式相同(更改“曝光补偿”对捕获的图像没有任何影响)。
关于这个问题的任何提示?我正在使用带有 USB 网络摄像头的 Ubuntu 64 位。
【问题讨论】:
-
可能是图片格式不对。您是否仔细检查了您使用的相机的规格并确保它正确解释像素? Qt 可以处理很多图像格式,但它可能会自动分配错误的格式。
-
@phyatt:我尝试设置像素格式,但没有任何改变。当然,有很多变化,我没有尝试一切。奇怪的是 QCameraViewfinder 的显示效果很好。只是 capture() 失去亮度。
-
我也有同样的问题。即使是示例应用程序也有这个问题。它显示得很好,但是当它捕获时,它显示的图像就像它没有白平衡一样。就像它在拍照前重置相机一样。
-
看起来像 k/ubuntu 问题,windows 中的相同代码提供了出色的结果。也禁食。
-
@Nande:刚刚尝试过 Qt 5.4(在 Ubuntu 上)。还是有问题...
标签: qt video-capture capture