У меня есть небольшая система busybox, для которой я скомпилировал ядро и добавил поддержку USB-камер. Когда я подключаю камеру к устройству, это дает мне выходной сигнал, и я получаю устройство / dev / video0:
usb 1-1: new high-speed USB device number 3 using orion-ehci
uvcvideo: Found UVC 1.00 device Webcam C170 (046d:082b)
input: Webcam C170 as /devices/platform/orion-ehci.0/usb1/1-1/1-1:1.0/input/input1
/ # ls -l /dev/video0
crw-rw---- 1 0 0 81, 0 Mar 8 08:08 /dev/video0
/ #
Я статически скомпилировал opencv2.4 для arm со всеми необходимыми библиотеками и не получаю ошибок при компиляции кода:
Mat frame;
VideoCapture capture(0);
if(!capture.isOpened()){
printf("Cannot open camera\r\n");
printf("%s\r\n", cvErrorStr(cvGetErrStatus()));
}
который дает встретился в качестве вывода:
Cannot open camera
No Error
/ #
Камера отлично работает на моем ноутбуке, и я попробовал несколько камер с одинаковым результатом. Я также пробовал много разных способов открытия камеры через opencv, которые также дали мне те же результаты.
Как я могу получить мою систему busybox и opencv для чтения с камеры?
Спасибо
Возможно, вам не хватает V4L. Я бы запустил пример кода для V4L и исследовал это. Вы проверяли с помощью ldd, что у вас есть все библиотеки, с которыми вы связываете программу?
Других решений пока нет …