2017-05-05 12 views
0

OpenCV 3.1을 사용하여 우분투 14.04에서 컴파일 중입니다. 비디오 파일을 열려고 할 때이 오류를 제공합니다 :는 FFmpeg 등 StackOF에 비슷한 질문을 체크 아웃 해결책을 발견하지 않았습니다 : OpenCV VideoCapture에서 파일을 열 수 없습니다. 무엇이 잘못 되었나요?

"Cannot open the video file"

나는 내가 설치할 수있는 모든 설치.

무엇을할까요?

cv::VideoCapture cap(argv[1]); 

여기서 argv [1]은 실행 파일과 동일한 디렉토리에있는 파일 이름입니다.

+1

게시 됨 – edd

+0

argv [1]이란 무엇입니까? –

+0

argv [1]은 열려고하는 파일 이름을 나타내는 문자열에 대한 포인터입니다. – edd

답변

0

생성자가 실패한 경우 .open() 메서드를 사용할 수 있습니다. 이 방법에 대한 자세한 정보를 들어

cv::VideoCapture cap; 
cap.open("myVideo.mp4"); 

documentation link을 확인 : 프로젝트의 폴더에 "myVideo.mp4"이라고 파일을 열고 자한다면, 다음을 수행 할 것 26 페이지의 O'Rilley 미디어에서 OpenCV 3 학습하기 책은 좋은 예입니다. 여기에 Gist이 나와 예를 들어 설명해 드리겠습니다.

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

int main() { 
    cv::VideoCapture cap; 
    cap.open("myVideo.mp4"); 
    cv::namedWindow("myVideo", cv::WINDOW_AUTOSIZE); 
    cv::Mat frame; 
    while(true) { 
    cap >> frame; 
    if(frame.empty()){ 
     std::cout << "Could not load the video frames. \n"; 
     break; 
    } 
    cv::imshow("myVideo", frame); 
    if(cv::waitKey(27) >= 0){ 
     std::cout << "Escape pressed \n"; 
     break; 
    } 
    } 
    return 0; 
}