Opencv+VS2010同时打开三路摄像头源代码及各类问题分析
来源:互联网 发布:4g卡显示2g网络能用吗 编辑:程序博客网 时间:2024/05/21 09:16
本文使用Opencv2.4.9和VS2010进行的打开多路摄像头:
在opencv2.1版本及之前版本支持最多同时打开2个摄像头,在之后的版本由于opencv对DirectShow进行了封装,可以同时打开多个摄像头。下面是同时打开三路摄像头的例子;
#include "stdafx.h"
#include <opencv2/opencv.hpp>
using namespace cv;
int _tmain(int argc, _TCHAR* argv[])
{
VideoCapture capture0(2);
VideoCapture capture1(1);
VideoCapture capture2(0);
if (!capture0.isOpened()||!capture1.isOpened()||!capture2.isOpened())
{
printf("error");
return -1;
}
Mat frame0,frame1,frame2;
while (1)
{
capture0>>frame0;
capture1>>frame1;
capture2>>frame2;
imshow("播放视频0",frame0);
imshow("播放视频1",frame1);
imshow("播放视频2",frame2);
waitKey(30);
}
return 0;
}
关于使用opencv同时打开多路摄像头的注意事项和相关问题说明如下:
(1)在获取摄像头设备的时候必须按照倒序的顺序进行获取,因为opencv里面获取的摄像头设备序号是按照倒序的顺序排列的。
(2)如果安装有360安全卫视需要将360安全卫视关闭或者运行摄像头采集。
(3)请勿使用USB hub进行电脑USB口的扩展来进行对电脑多个摄像头的实验,因为USB hub受功率和数据传输的限制只能带动一个摄像头(好的USB hub最多带动两个)
(4)一台电脑最多同时带动三个摄像头,虽然一台电脑有多个USB接口但是只有一个USB主控器,可能会受到USB主控器对于USB数据传输的限制(如果是USB3.0的主控器可能会同时带动多个摄像头),若需同时带动多个摄像头可以通过安装PCI转USB卡或PCIE转USB卡,使USB摄像头数据传输直接通过PCI进行传输。
转载请标明出处:http://blog.csdn.net/u011028345/article/details/53384927
- Opencv+VS2010同时打开三路摄像头源代码及各类问题分析
- OpenCV打开摄像头问题
- opencv打开多个摄像头同时预览
- 图像拼接(三):OpenCV同时打开两个摄像头捕获视频
- 关于opencv打开摄像头成灰色问题
- 使用PCI-E USB3.0扩展板卡解决OPENCV不能同时打开同品牌摄像头的问题
- 利用ffmpeg打开windows系统下面的摄像头源代码分析
- Opencv--打开摄像头
- opencv打开摄像头
- opencv 打开摄像头
- OpenCV打开摄像头失败
- OpenCV打开摄像头(二)
- 通过OpenCV打开摄像头
- opencv 打开网络摄像头
- MFC+OpenCV打开摄像头
- opencv 打开摄像头
- Opencv打开内置摄像头
- opencv 无法打开摄像头
- < %=request.getParameter(“username”)% > 等价于 ${ param.username }
- Bloom Filter概念和原理
- 26. Remove Duplicates from Sorted Array
- 394. Decode String
- C/C++指向指针的指针
- Opencv+VS2010同时打开三路摄像头源代码及各类问题分析
- 设计模式-模版方法模式(8)
- 排序算法之归并排序
- 我遇到的面试题,供大家参考
- 基于Shiro的用户权限管理管理思想
- mysql大数据高并发处理
- 分布式缓存--序列4--缓存更新策略/缓存穿透/缓存雪崩
- jvm住内存与工作内存,内存模型反映的java多线程问题
- php 通过curl进行GET/POST(包含鉴权)请求