sinat_35241575 2017-10-14 10:33 采纳率: 83.3%
浏览 6056

opencv打开IP网络摄像头

想用opencv2.4.9+QT接收一个wifi模块传回的视频,根据网上的资料和实际情况,编写如下:const string addr="http://192.168.1.1:8080/?action=stream.mjpg";

VideoCapture cap(addr);

但是就是读不出来,我用浏览器可以显示视频,请问前辈们有遇到这种情况的么,是因为什么地方配置不对吗?还请指教

  • 写回答

3条回答

  • Saeba 2017-10-15 08:00
    关注

    試試看我下免寫的 code. 我自己用的 video camera 會成功 !!

    讀取 local video 方式如下:

     #include <cstdio>
    #include <opencv2/opencv.hpp>
    using namespace cv;
    
    int main(){
        VideoCapture video(0);
        if (!video.isOpened()){
            return -1;
        }
        Size videoSize = Size((int)video.get(CV_CAP_PROP_FRAME_WIDTH),(int)video.get(CV_CAP_PROP_FRAME_HEIGHT));
        namedWindow("video demo", CV_WINDOW_AUTOSIZE);
        Mat videoFrame;
    
        while(true){
            video >> videoFrame;
            if(videoFrame.empty()){
                break;
            }
            imshow("video demo", videoFrame);
            waitKey(33);
        }
        return 0;
    }
    

    讀取遠端 video 方式如下:

     #include <stdio.h>
    #include <opencv2/opencv.hpp>
    #include <iostream>
    int main(int, char**) {
        cv::VideoCapture vcap;
        cv::Mat image;
    
        // This works on a D-Link CDS-932L
    
        const std::string videoStreamAddress = "http://USER:PWD@IPADDRESS:8088/mjpeg.cgi?user=USERNAME&password=PWD&channel=0&.mjpg";
           //open the video stream and make sure it's opened
        if(!vcap.open(videoStreamAddress)) {
            std::cout << "Error opening video stream or file" << std::endl;
            return -1;
        }
    
        for(;;) {
            if(!vcap.read(image)) {
                std::cout << "No frame" << std::endl;
                cv::waitKey();
            }
            cv::imshow("Output Window", image);
    
            if(cv::waitKey(1) >= 0) break;
        }   
    
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大