2017-09-24 51 views
1

我正面臨一個奇怪的問題。爲什麼我看不到捕獲的圖像?

我可以加載和顯示圖像。另外,我可以捕捉圖像,但看不到圖像。相機連接良好,拍攝圖像很好,但看不到圖像。

我的系統是窗口10-64位與opencv 3.3.0。

代碼如下。

int main() 
{ 

    cv::VideoCapture cap(0); 

    if (!cap.isOpened()) { 
     std::cerr << "camera didn't connected." << std::endl; 
     return 0; 
    } 

    int nFrame = 0; 

    cv::Mat image = cv::imread("orgin102.jpg"); 

    cv::imshow("image", image); 

    cvWaitKey(0); 

    while (true) { 

     cv::Mat origin; 

     cap >> origin; 

     //flip orign 
     flip(origin, origin, 1); 

     nFrame++; 

     cv::imshow("image", origin); 

     //if (cv::waitKey(27) >= 0) break; 

     cvWaitKey(0); 
    } 
    return 0; 
} 

回答

1

我通過改變cap的參數解決了這個問題。

在這裏它是

cv::VideoCapture cap(1); 

對於某些系統,0的索引表示爲第一照相機。而對於其他索引1則顯示第一臺相機。

希望這會有所幫助。 乾杯!