2013-08-06 98 views
2

我有一個問題讓OpenCV 2.4從Raspberry Pi的MJPEG流中捕獲,我已經在瀏覽器中檢查了流的URL,它似乎工作正常,但是當我嘗試在OpenCV中打開它時,它似乎掛起,當我試圖打開它(我沒有得到終端上的錯誤或成功消息)。MJPEG流無法在OpenCV 2.4中打開

cv::VideoCapture vcap; 
cv::Mat raw_image; 

const string videoStreamAddress = "http://192.168.0.28:8080/?action=stream"; 

if(!vcap.open(videoStreamAddress)) 
{ 
    cout<<"Error opening video stream"<<endl; 
    return -1; 
} 

cout<<"Stream opened"<<endl; 

我使用MJPEG-Streamer來提供流。 捕獲窗體RTSP視頻流時,相同的代碼工作正常。

編輯:我試着改變JPEG的質量和raspistill拍攝的圖像的分辨率,我現在得到消息說流無法打開。

回答

2

我找到了答案,這是類似於亞太區首席技術官Matt的建議,我只是需要有一個.mjpg,使OpenCV的思考它是一個文件的URI。

我發現這個在this類似問題的答案。

3

嘗試添加虛擬PARAM,這暗示了MJPEG內容:

const string videoStreamAddress = "http://192.168.0.28:8080/?action=stream&amp;type=mjpg"; 
+0

似乎沒有幫助,仍然可以在瀏覽器中查看它,但在OpenCV中仍然沒有運氣。 –

+0

得到這個工作,只需要使它看起來像一個文件擴展名。 –