我正在 try catch Logitech pro 9000 的原始数据(例如所谓的拜耳模式)。这可以通过使用所谓的拜耳应用程序来实现,该应用程序可以在互联网上找到。它应该返回 8 位拜耳模式,但结果显然不是这样的模式。
但是;正在传输的图像似乎很不正常。如下图所示,我在 3 channel 图像中获得了 2 个场景图像(总共 6 个 channel )。每个图像占总捕获区域的 1/4,因此似乎存在某种 YUV 数据正在流式传输。
我无法使用 openCV 提供的转换将此数据转换为任何有意义的内容。您知道正在发送什么类型的数据以及(更重要的是)如何将其转换为 RGB?
编辑 按照要求;用于生成图像的代码片段。
system("Bayer.exe 1 8"); //Sets the camera to raw mode
// set up camera
VideoCapture capture(0);
if(!capture.isOpened()){
waitKey();
exit(0);
}
Mat capturedFrame;
while(true){
capture>>capturedFrame;
imshow("Raw",capturedFrame);
waitKey(25);
}
最佳答案
如何使用 openCV 从流中获取帧?您可以分享一些代码片段吗? openCV 中的视频格式太多,无法获取正确的颜色 channel 和压缩数据。
我认为您应该能够获得正确的图像帧,如下所述:
http://forum.openrobotino.org/archive/index.php/t-295.html?s=c33acb1fb91f5916080f8dfd687598ec
关于c++ - Logitech Quickcam Pro 9000 Bayer 使用 openCV 进行捕捉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16189645/