用opencv打開蘋果手機ip_camera

關於蘋果手機打開ip_camera的資料網上比較上,而且操做起來與實際大有出入。我的在蘋果手機上安裝的是這麼一個APP,這種APP能夠到蘋果的官方網站上下載,暫時用的免費版的IP攝像頭,有水印。html


關於這款APP只要多玩一下都熟練了,APP內部用使用說明。關鍵是要提取的是:用戶名,密碼,IP地址。ios

新建opencv的C++項目,代碼以下:ide

#include <opencv2/opencv.hpp>
#include <iostream>
#include <stdio.h>

using namespace std;
using namespace cv;

void main() {

	VideoCapture vcap;
	Mat image;
        // 下面是代碼中最重要的語句,其中admin爲用戶名,12345爲密碼,192.168.1.231:8081爲IP地址
	const string videoStreamAddress = "http://admin:12345@192.168.1.231:8081";
	//open the video stream and make sure it's opened
	if (!vcap.open(videoStreamAddress)) {
		cout << "Error opening video stream or file" << std::endl;
		exit(0);
	}

	while (vcap.isOpened())
	{
		vcap >> image;
		if (image.empty()) break;
		imshow("video", image);
		waitKey(30);  // 延時30ms
	}

}

對於打開ip攝像頭,還能夠直接用更加簡潔的語句:VideoCapture vcap("http://admin:12345@192.168.1.231:8081");直接進行初始化。網站

須要注意的是:當WIFI鏈接不一樣路由器時,這一個IP地址會發生變化,須要作出相應的設置。spa

弄了好幾天,以前一直是IP地址寫不對,致使沒辦法讀取攝像頭,我也是經過參閱了網站https://stackoverflow.com/questions/21324785/ip-camera-access-using-opencv獲得的靈感,正確的IP地址應該是以下:http://<USERNAME>:<PASSWORD>@<IP_ADDRESS>/<the value of src>3d

const string videoStreamAddress = "http://admin:12345@192.168.1.231:8081";