Logitech QuickCam Pro 9000 Bayer захватывает с openCV

Я пытаюсь получить необработанные данные Logitech Pro 9000 (например, так называемый шаблон Байера). Это может быть достигнуто с помощью так называемого приложения Байера, которое можно найти в интернете. Он должен возвращать 8-битный паттерн Байера, но результаты совершенно не такие.

Тем не мение; Изображение, которое передается в потоковом режиме, кажется совершенно нереальным. Как видно на изображении ниже, я получаю 2 изображения сцены в 3-канальном изображении (всего 6 каналов). Каждое изображение составляет 1/4 от общей площади захвата, поэтому может показаться, что в потоковом режиме есть какие-то данные YUV.

Мне не удалось преобразовать эти данные во что-либо значимое, используя преобразования, предоставленные openCV. Любые идеи, какие данные отправляются и (что более важно), как преобразовать это в RGB?

Обрезанный пример захваченного изображения

РЕДАКТИРОВАТЬ
Как просили; codenippet, который используется для генерации изображения.

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);
}

2

Решение

Как вы получили кадры из потока, используя openCV? Можете ли вы поделиться некоторыми фрагментами кода? В openCV слишком много видеоформатов для получения правильного цветового канала и сжатых данных.

Я думаю, что вы должны быть в состоянии получить правильные рамки изображения, как указано здесь:

http://forum.openrobotino.org/archive/index.php/t-295.html?s=c33acb1fb91f5916080f8dfd687598ec

1

Другие решения

Скорее всего, это произойдет, если формат выходных данных (ширина, высота, битовая глубина, количество каналов …) камеры и формат данных, ожидаемый вашей программой, отличаются.

Однако я мог захватить камеру Logitec Pro, просто используя

Mat img;
VideoCapture cap(0);
cap >> img;
1

По вопросам рекламы [email protected]