簡體   English   中英

OpenCV沒有顯示來自Macbook網絡攝像頭的視頻

[英]OpenCV shows no video from Macbook webcam

我正在從這里使用代碼:

#include "opencv2/opencv.hpp"

using namespace cv;

int main(int, char**)
{
    VideoCapture cap(0); // open the default camera
    if(!cap.isOpened())  // check if we succeeded
        return -1;

    namedWindow("edges",1);
    for(;;)
    {
        Mat frame;
        cap >> frame; // get a new frame from camera
        imshow("edges", frame);
        if(waitKey(200) >= 0) break;
    }
    // the camera will be deinitialized automatically in VideoCapture destructor
    return 0;
}

幾乎一切都按預期工作。

出現一個窗口,我的網絡攝像頭指示燈變為綠色,然后沒有視頻。

我實際上簡化了代碼,因為我實際上不希望示例中的轉換。 只想看一個視頻提要。

我在Google上搜索了一堆,讀了幾個問題,但似乎沒有任何效果。 我嘗試使用cap.read (包括highgui來調整等待時間,跳過第一幀,從而使highgui特別受到排斥和褻瀆。 到目前為止,沒有任何效果。

我使用了從源代碼構建的opencv,並且正在運行opencv2.4.13.6 使用CMake和make。

我的CMake是:

set( OpenCV_DIR /Users/jason.nichols/opencv-2.4.13.6/build )
cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage motion.cpp )
target_link_libraries( DisplayImage  ${OpenCV_LIBS} )

有任何想法嗎?

由於某種原因,關閉我的終端並重新打開它可以完成此工作。

我猜這是我在opencv設置過程中在.bash_profile中添加的環境變量,但不是100%肯定。

這個問題的真實故事是沒有運行時錯誤,cmake錯誤和編譯器錯誤。

我知道這不是令人滿意的答案,但是如果您達到這種狀態,請嘗試將其關閉然后再重新打開。

再次,具體來說,該代碼可以編譯,運行,打開攝像頭燈,但不顯示任何視頻或引發任何異常。 在這種狀態下,重新啟動終端可以解決我的問題。 如果有人知道原因,可以公開獲得更好的答案。 對於其他任何問題,這幾乎肯定是行不通的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM