2012-11-28 5 views
1

우분투 12.04 LTS에서 openCV 2.4.3을 사용하여 다음 프로그램을 실행하려고합니다. 하지만 "카메라가 출력으로 초기화되지 않았습니다."아무도 나를 도울 수 있습니까? 여기 OpenCV 2.4.3 카메라 캡처가 Ubuntu에서 작동하지 않습니다. 12.04

코드입니다 :

include <iostream> 
include "opencv2/imgproc/imgproc.hpp" 
include "opencv2/highgui/highgui.hpp" 

using namespace cv; 
using namespace std; 

int main() 
{ 
    VideoCapture cap(1); 

    if (!cap.isOpened()) 
    { 
     cout <<"Failed to initialize camera\n"; 
     return 1; 
    } 

    namedWindow("CameraCapture"); 

    Mat frame; 
    while (1) 
    { 
     cap>> frame; 
     imshow("cameraCapture",frame); 
     if (waitKey(30)>0)break; 
    } 
    destroyAllWindows(); 

    return 0; 

} 

제발 도와주세요!

감사합니다, Kushal

답변

1

유는 기본 캡처 장치를 확인 했습니까? 기본적으로는 0

VideoCapture cap(0); 
+0

감사합니다 다음 시도이다. 카메라 드라이버가 설치되지 않았습니다. 그런 다음 sudo apt-get mesa utils를 사용하여 GLX 드라이버를 설치했습니다. 그러나 여전히 운이 없다. 이제 세그먼트 분할 오류가 발생합니다 (코어 덤프 됨). 웹캠 소프트웨어를 테스트하고 싶었 기 때문에 samorama로 테스트했습니다. 괜찮습니다. 당신의 도움은 매우 감사하겠습니다. 나는 붙어있다. 모두에게 감사드립니다. – user891558

+0

세그먼트 화 오류 (코어 덤프)가 발생한 행을 디버깅 할 수 있습니까? – isrish

2

는 귀하의 제안에 대한 ...

#include "iostream" 
#include <opencv2/core/core.hpp> 
#include <opencv2/highgui/highgui.hpp> 

using namespace std; 
using namespace cv; 

int main() 
{ 
    CvCapture *webcam = cvCaptureFromCAM(-1); 
    IplImage *img = NULL; 

    while(true) 
    { 
     img = cvQueryFrame(webcam); 
     cvShowImage("TEST",img); 
     cvWaitKey(20); 
    } 

    return 0; 
} 
+0

제안 해 주셔서 감사합니다. 카메라 드라이버가 설치되지 않았습니다. 그런 다음 sudo apt-get mesa utils를 사용하여 GLX 드라이버를 설치했습니다. 그러나 여전히 운이 없다. 이제 세그먼트 분할 오류가 발생합니다 (코어 덤프 됨). 웹캠 소프트웨어를 테스트하고 싶었 기 때문에 s/w camorama로 테스트했습니다. 괜찮습니다. 당신의 도움은 매우 감사하겠습니다. 나는 붙어있다. 모두에게 감사드립니다. – user891558

관련 문제