【OpenCV】IPCamera读取网络摄像头实时画面

news/2024/11/9 5:08:26/

软硬件平台

VS2015
OpenCV 3.2
IPCamera 沃仕达T7866WIP CGI协议


代码

#include "stdafx.h"  
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/opencv.hpp>
#include <iostream>using namespace cv;
using namespace std;int main(int argc, char* argv[])
{cv::VideoCapture vcap;cv::Mat image;const std::string videoStreamAddress = "http://192.168.1.142:81/videostream.cgi?user=admin&pwd=888888&.mjpg";/*Address e.g. "http://IP:port/videostream.cgi?user=admin&pwd=******&.mjpg" *///open the video stream and make sure it's openedif (!vcap.open(videoStreamAddress)) {std::cout << "Error opening video stream or file" << std::endl;return -1;}cv::namedWindow("Output Window");while (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;}}cvWaitKey(0);vcap.~VideoCapture();  
}

说明

  1. 如果用浏览器直接访问URL,得到的是当前的画面,也就是一张图片。URL根据IP地址、端口号、不同摄像机命令格式可能稍有不同。例如我的就是http://IP:port/videostream.cgi?user=admin&pwd=******&.mjpg
  2. 外面加一个while(1)循环,就变成“视频”了,但是目前存在掉帧的问题,如果解决了再来补充。(掉帧是因为…电脑和路由我连的是wifi…摄像头到路由,电脑到路由都用网线连起来就没事了。)

参考

https://www.codeproject.com/questions/720045/how-to-access-an-ip-camera-using-opencv-cplusplus


http://www.ppmy.cn/news/570481.html

相关文章

运算放大器(一):电压跟随器

一、电压跟随器 电压跟随器&#xff08;单位增益放大器、缓冲放大器或隔离放大器&#xff09;是一种电压放大倍数为 1 的运算放大器&#xff0c;能够将输入信号的电压放大到同样的幅度并输出&#xff0c;同时保持输入输出电阻不变&#xff08;电压跟随器的输入电阻很大&#x…

操作系统——基于信号量机制的并发程序设计

一、实验题目 基于信号量机制的并发程序设计 二、实验目的 (1) 回顾操作系统进程、线程的有关概念&#xff0c;针对经典的同步、互斥、死锁与饥饿问题进行并发 程序设计。 (2) 了解互斥体对象&#xff0c;利用互斥与同步操作编写读者-写者问题的并发程序&#xff0c;加深…

war3改键精灵脱壳去广告

今天偶尔在局域网打了几把dota&#xff0c;发现某改键精灵在每次启动时自动弹出两次广告&#xff0c;全屏游戏自动弹出到桌面。十分捉急&#xff0c;于是有此破文。 OD载入 》脱壳》再载入dump》搜索字符串》 采用我认为最暴力最简单的方法NOP掉&#xff08;顺便把自动升级NOP掉…

Python实现 dota 改建精灵

如题&#xff0c;用Python3实现 dota改建精灵。本质原理是通过改变键盘按键映射关系。比如按下数字键1&#xff0c;映射到字母A。映射关系可以自定义。 这样就构成了改建逻辑。 实现工具清单如下&#xff1a; python 3.7.3python库&#xff1a;PyHook3 &#xff0c;关于该库的…

linux shell 键盘输入 $,linuxshell在while中用read从键盘输入的实现

系统是ubuntu 14.04 64bit&#xff0c;之前曾想安装Stream来玩dota2&#xff0c;但最终没成功。由于Stream只有32bit&#xff0c;安装Stream时也安装了大量32bit的库。删除Stream后&#xff0c;这些库也一直没管&#xff0c;今天忽然心血来潮&#xff0c;想清理一下系统&#x…

hw1-浅谈Dota2设计元素

今年的TI9赛事在中国上海举行&#xff0c;可谓是Dota2玩家们的一大幸事。但是&#xff0c;LGD战队止步于季军&#xff0c;也让我们的粉丝心凉了一截。8月25日&#xff0c;OG战队以3比1战胜Liquid战队&#xff0c;将2019Dota2国际邀请赛冠军收入囊中&#xff0c;实现了在该项赛事…

Dota 2 with Large Scale Deep Reinforcement Learning翻译

摘要 2019年4月13日&#xff0c;OpenAI Five成为第一个在电子竞技游戏中击败世界冠军的AI系统。Dota2游戏为AI系统提供了新的挑战&#xff0c;例如长时间相关的视野&#xff0c;不完全的信息和复杂的连续状态动作空间&#xff0c;所有这些挑战将会要求具有更强能力的AI系统。O…

java键盘监听wasd控制_dota2rpg自定义按键绑定及WASD移动的实现

本文的目的是在DOTA2自定义游戏中实现一个WASD控制的8方向移动&#xff0c;如果你想实现的是4方向的&#xff0c;稍微修改一点点代码也可以做到。 通过本文&#xff0c;你也可以了解到DOTA2自定义按键的流程。 本文的所有代码你都可以在我开源的Endless Dungeon项目中找到 一、…