海康的摄像头是用rtsp网口通信的,只要调用opencv的videocapture类即可,里面包含网口的通信协议,具体的协议为:“rtsp://用户名:密码@ip地址/h264/ch1/main/av_stream”
需要注意的一点是,当你知道了海康的ip地址后,需要将你电脑的ip地址改为和它同一个网段即可,以我的为例,我的摄像头ip是192.168.1.64,那么我的本地ip就改为192.168.1.63,这样便可以达成局域网的效果。。。
#include <opencv2\opencv.hpp>
using namespace cv;
using namespace std;
int main() {
VideoCapture cap;
if (!cap.open("rtsp://用户名:密码@ip地址/h264/ch1/main/av_stream"))
{
std::cout << "Error opening video stream or file" << std::endl;
return -1;
}
namedWindow("imgshow", WINDOW_NORMAL);
Mat img;
for (int i = 0;; i++)
{
cap.read(img);
imshow("imgshow", img);
waitKey(1);
}
return 0;
}