2016-04-16 3 views
0

Я хочу сфотографировать свою IP-камеру Dynacolor с помощью opencv 2.45 в Microsoft Visual Studio.подключиться к IP-камере с помощью opencv

Я нашел свой ip с iSpy. и вот мой код.

#include "opencv2/highgui/highgui.hpp" 
#include "opencv2/core/core.hpp" 
#include "opencv2/opencv.hpp" 

int main() 
{ 
    cv::VideoCapture vcap; 
    const std::string videoStreamAddress = "http://Admin:[email protected]:80/cgi-bin/jpg/image.cgi"; 
    if (!vcap.open(videoStreamAddress)) 
    { 
     printf("Camera is null\n"); 
     return -1; 
    } 
    else 
    { 
     cv::Mat image; 
     vcap.read(image); 
     cv::imshow("image",image); 
    } 
    cv::waitKey(100); 
    return 0 
} 

Это займет мне предупреждение: Не удалось найти параметры кодека < .../.../модули/highgui/SRC/cap_ffmpeg_impl.hpp: 540>, а также камеры равна нулю.

Я прочитал много тем об этой проблеме, но я не мог исправить эти проблемы.

Любая помощь будет оценена по достоинству.

ответ

0

Проверьте этот код. Меня устраивает. Обратите внимание на «.mjpg» в конце адреса. Я также изменил IP и порт для тестирования.

#include "opencv2/highgui/highgui.hpp" 
#include "opencv2/core/core.hpp" 
#include "opencv2/opencv.hpp" 
#include <cstdio> 

int main() 
{ 
    cv::VideoCapture vcap; 

    // changed address 
    const std::string videoStreamAddress = "http://213.171.96.200/cgi-bin/jpg/image.cgi?.mjpg"; 
    if (!vcap.open(videoStreamAddress)) 
    { 
     printf("Camera is null\n"); 
     return -1; 
    } 
    else 
    { 
     cv::Mat image; 
     vcap.read(image); 
     cv::imshow("image",image); 
    } 
    cv::waitKey(10000); 
    return 0; 
} 
+0

Спасибо Адам. Я добавил '? Channel = 0 & .mjpg', и теперь он работает. –

Смежные вопросы