커널을 컴파일하고 USB 카메라를 지원하기위한 작은 시스템을 가지고 있습니다. 내가 장치에 카메라를 연결할 때 그것은 나에게 약간의 출력을 제공하고 내가는/dev/video0 장치 얻을 때 : 필요한 모든 libs와 함께 암에 대한static opencv가 Linux busybox에서 usb 웹캠을 찾을 수 없습니까?
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
/#
내가 staticly 컴파일 opencv2.4을하고 컴파일 오류를 얻을 코드 :
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 카메라의 여는 방법을 여러 가지 방법으로 시도해 봤지만 나에게도 같은 결과를 주었다.
카메라에서 내 Busbox 시스템과 opencv를 읽으려면 어떻게해야합니까?
감사합니다.
나는 똑같은 생각을하고 있었지만 opencv 컴파일 된 statlicy를 가지고 있으며 내가 작성한 코드에 대해서도 opencv는 WITH_V4L 등의 추가 기능으로 컴파일되었습니다. 또한 커널을 컴파일해야합니다. UVC 카메라 및 V4L 장치 등을 지원합니다. 저는이 프로젝트에 이번 주 언젠가 넣고 다시 방문 할 시간이있을 때 동적 인 exec를 컴파일하고 필요한 라이브러리를 대상 장치에 복사하려고합니다. – Sisco
그래서 문제를 발견하고 해결할 수있었습니다. cmake를 사용하여 OpenCV를 구성 할 때 v4l 지원이 활성화되었지만 라이브러리를 빌드 할 때 실제로 v4l은 actuallibs로 컴파일되지 않았습니다. 어딘가에 모든 컴파일 결과 사이에 발견되지 않는 v4l1 및 v4l2 libs에 대한 오류가 발생했습니다. 그래서 나는 소스에서 v4l libs를 컴파일하고, cross lib 폴더와 voila에 복사했습니다! – Sisco
업데이트 해 주셔서 감사합니다. – fireant