为了账号安全,请及时绑定邮箱和手机立即绑定

带有网络摄像机的OpenCV

带有网络摄像机的OpenCV

C++
万千封印 2019-10-09 16:38:10
我在Windows下使用openCV 1.1pre1。我有一个网络摄像机,我需要从openCV抓取帧。该摄像机可以通过RTSP传输标准mpeg4流,或通过http传输mjpeg。我已经看到很多线程都在谈论将ffmpeg与openCV一起使用,但是我无法使其正常工作。如何使用openCV从IP摄像机抓取帧?
查看完整描述

3 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

#include <stdio.h>

#include "opencv.hpp"



int main(){


    CvCapture *camera=cvCaptureFromFile("http://username:pass@cam_address/axis-cgi/mjpg/video.cgi?resolution=640x480&req_fps=30&.mjpg");

    if (camera==NULL)

        printf("camera is null\n");

    else

        printf("camera is not null");


    cvNamedWindow("img");

    while (cvWaitKey(10)!=atoi("q")){

        double t1=(double)cvGetTickCount();

        IplImage *img=cvQueryFrame(camera);

        double t2=(double)cvGetTickCount();

        printf("time: %gms  fps: %.2g\n",(t2-t1)/(cvGetTickFrequency()*1000.), 1000./((t2-t1)/(cvGetTickFrequency()*1000.)));

        cvShowImage("img",img);

    }

    cvReleaseCapture(&camera);

}


查看完整回答
反对 回复 2019-10-09
  • 3 回答
  • 0 关注
  • 516 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信