gpt4 book ai didi

c++ - 如何在 Visual C++ 2010 或 2008 中使用 OpenCV 2.1 访问网络摄像头(compro IP50W)

转载 作者:行者123 更新时间:2023-11-28 08:19:31 24 4
gpt4 key购买 nike

CvCapture* cam = cvCaptureFromFile("http:\\192.168.0.77");
IplImage* img;
img = cvQueryFrame(cam);

IplImage* current = cvCreateImage(cvGetSize(img),IPL_DEPTH_8U,1);
IplImage* comResult = cvCreateImage(cvGetSize(img),IPL_DEPTH_8U,1);

double cam_w = cvGetCaptureProperty(cam, CV_CAP_PROP_FRAME_WIDTH);
double cam_h = cvGetCaptureProperty(cam, CV_CAP_PROP_FRAME_HEIGHT);
double fps = 10;

最佳答案

阅读documentation :

CvCapture* cvCaptureFromFile(const char* filename);

Initializes capturing a video from a file.The function cvCaptureFromFile() allocates and initializes the CvCapture structure for reading the video stream from the specified file. Which codecs and file formats are supported depends on the back end library.

这个函数从一个文件中读取!您需要将相机连接到计算机才能从相机中检索帧。

但是,如果您使用 ffmpeg 支持编译 OpenCV,您可以从网络中的文件中读取,但您必须指定文件名 在 url 中。

注意在下面的代码中文件名是在末尾指定的:

CvCapture* camera = cvCaptureFromFile("http://username:pass@cam_address/axis-cgi/mjpg/video.cgi?resolution=640x480&req_fps=30&.mjpg");
if (!camera)
{
printf("cvCaptureFromFile failed\n");
exit(1);
}

始终测试 OpenCV 函数的返回。不检查怎么知道函数执行成功对不对?!

关于c++ - 如何在 Visual C++ 2010 或 2008 中使用 OpenCV 2.1 访问网络摄像头(compro IP50W),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6413069/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com