【视觉-摄像机1】opencv 调用工业摄像机(USB接口和GigE接口)
【计算机视觉】opencv 调用工业摄像机(USB接口和GigE接口)
第一次在CSDN写博客,有不到之处请指教,欢迎交流评论留言开发环境为win7+VS2010+opencv (主要是操作系统windows,Linux还没尝试)
1 代码 opencv直接打开USB和GIgE摄像机
1.1 三种代码形式不同原理相同
//---------------------------------【头文件、命名空间包含部分】----------------------------
// 描述:包含程序所使用的头文件和命名空间
//-------------------------------------------------------------------------------------------------
//#include "opencv2/video/tracking.hpp"
#include "StdAfx.h"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <iostream>
#include <ctype.h>using namespace cv;
using namespace std;//-----------------------------------【全局变量声明】-----------------------------------------
// 描述:声明全局变量
//-----------------Mat image;
Rect selection;
//-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-------------------------------------------------------------------------------------------------
int main()
{VideoCapture cap;Rect trackWindow;cap.open(0);//0默认—摄像机,若用笔记本相机;1 --是USB有限,无USB就 网络,若用笔记本;-1选择多个相机界面if( !cap.isOpened() ){cout << "不能初始化摄像头\n";}namedWindow( "CamShift Demo", 0 );Mat frame;bool paused = false;方法1//for(;;)//{// if( !paused )// {// cap >> frame;// if( frame.empty() )// break;// }// imshow( "CamShift Demo", frame); //}// //方法2while(1) { if( !paused ){cap >> frame;if( frame.empty() )break;}imshow( "CamShift Demo", frame ); //显示当前帧waitKey(30); //延时30ms} return 0;
}
// Camera2.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <opencv2\opencv.hpp>
using namespace cv; //-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始
//-------------------------------------------------------------------------------------------------
int main( )
{ //【1】从摄像头读入视频VideoCapture capture(1);//0默认—摄像机,若用笔记本相机;1 --是USB有限,无USB就 网络,若用笔记本;-1选择多个相机界面//【2】循环显示每一帧while(1) { Mat frame; //定义一个Mat变量,用于存储每一帧的图像capture>>frame; //读取当前帧if( frame.empty() )continue;imshow("读取视频",frame); //显示当前帧waitKey(30); //延时30ms} return 0;
}
方法三
// Camera3.cpp : 定义控制台应用程序的入口点。
//#include "stdafx.h"
#include <opencv2\opencv.hpp>
using namespace cv;
using namespace std;
int main( )
{ VideoCapture capture(0);//0默认—摄像机,若用笔记本相机;1 --是USB有限,无USB就 网络,若用笔记本;-1选择多个相机界面while (1){Mat frame;capture >> frame;if (! frame.empty()){imshow("最终结果", frame);}elsecout << "can not ";//最后一帧的处理waitKey(30);}return(0);
}
(PS VideoCapture capture(1);//1 --是USB有限,无USB就 网络,若用笔记本;-1选择多个相机界面;0默认—摄像机,若用笔记本相机)
其实0,1……的设备ID号看WIN7下设备管理器—图像设备,对应的搜引号,从0开始。
1.2 VideoCapture的参考文档介绍
2 常见摄像机工业说明
2.1根据摄像机接口分为USB接口和GigE接口。
2.2根据需要安装相关驱动分为带驱动和免驱动。
(PS VideoCapture capture(1);//1 --是USB有限,无USB就 网络,若用笔记本;-1选择多个相机界面;0默认—摄像机,若若用笔记本相机)
【视觉-摄像机1】opencv 调用工业摄像机(USB接口和GigE接口)相关推荐
- 【视觉-摄像机2】opencv 调用工业摄像机(GigE接口详细说明)
网络摄像机的使用 开发环境为win7+VS2010+opencv (主要是操作系统windows,Linux还没尝试) 基于Basler_acA1300-30gc 摄像机为例 1 安装摄像机的相关软件 ...
- 讯为iTOP4412开发板ARM-linux 使用OPENCV调用USB摄像头
讯为iTOP4412开发板ARM-linux 使用OPENCV调用USB摄像头 首先要在内核里面确定有添加USB摄像头的驱动,这个在讯为官方文档里面有所以就不展开讲了. 主要问题是如何让opencv能 ...
- 五十、opencv调用USB摄像头并保存图片
@Author: Runsen opencv OpenCV是计算机视觉的一个模块. OpenCV可以通过图像处理减少图像噪声,调整图像亮度.颜色或者对比度等等.想要进一步系统了解OpenCV图像处理基 ...
- ubuntu上python使用opencv调用usb摄像头无故掉线以后重连摄像头。
项目中使用opencv调用usb摄像头,运行过程中,会出现摄像头掉线的情况.猜测掉线原因是硬件相关,可能是摄像头,也可能是usb线和端口. 这里主要介绍两种掉线情况以及代码重连摄像头的方式. 1.第一 ...
- 在Ubuntu中用Qt基于OpenCV调用大恒相机
在Ubuntu中用Qt基于OpenCV调用大恒相机 前言 视觉萌新买了工业相机却不会用,上网也查不到具体方法,没办法只能自己硬刚了.刚开始自己摸索,碰到好多问题解决不了,Qt报错不知道咋回事,缺少的链 ...
- openmv c语言源码,【国外开源】STM32 机器人视觉摄像机OpenMV Cam设计(硬件+固件源码等)...
OpenMV Cam概述: OpenMV项目旨在通过开发开源的低成本机器视觉摄像机,为业余爱好者和制造商提供机器视觉.OpenMV项目于2015年成功通过Kickstarter资助.第一代OpenMV ...
- OpenCV调用TensorFlow预训练模型
OpenCV调用TensorFlow预训练模型 [尊重原创,转载请注明出处]https://panjinquan.blog.csdn.net/article/details/80570120 强大Op ...
- python调用摄像头人脸识别代码_利用face_recognition,dlib与OpenCV调用摄像头进行人脸识别...
用已经搭建好 face_recognition,dlib 环境来进行人脸识别 未搭建好环境请参考: 使用opencv 调用摄像头 import face_recognition import cv2 ...
- python人脸识别截图_Python OpenCV调用摄像头检测人脸并截图
本文实例为大家分享了Python OpenCV调用摄像头检测人脸并截图的具体代码,供大家参考,具体内容如下 注意:需要在python中安装OpenCV库,同时需要下载OpenCV人脸识别模型haarc ...
最新文章
- v-if 与v-show 的区别及使用场景
- 一次挖掘SRC漏洞 - 从0到有
- 了解恶意软件和插件!
- 牛客网_Go语言相关练习_选择题(2)
- 用unison来同步你的远程文件夹 - Fwolf's Blog
- T7-Dropout 解决 overfitting 过拟合
- 2017.9.4 黑白棋 失败总结
- FCKeditor 自动取得焦点问题
- 判断触摸的点在那个 View上
- android+显示ui布局,[Android ]UI布局 (线性布局+相对布局)
- 捷联惯导系统模型及仿真(二)
- 计算机网络基础试题库4答案,计算机网络基础试题库4.doc
- Ubuntu20.04安装ZOOM
- vue实现抽奖大转盘
- 倍福控制电机耦合运动
- Codeforces Round #644 (Div. 3) D.Buying Shovels
- java会导致蓝屏么_原来有这么多原因会导致电脑蓝屏啊
- ansj分词器的配置
- 知乎里面别人发的视频怎么保存下来?
- 性能测试场景设计方法(教科书版)
热门文章
- MTK驱动之modem编译及配置
- 达芬奇pro的FPGA学习笔记1--创建vivado工程
- Windows域认证(Kerberos认证)图解
- Docker——Docker的基础和安装
- NOR falsh、NAND flash、SDEMMC、QSPI flash、SPI flash
- ssm高校就业宣讲会系统计算机毕业设计
- Java程序员上班“划水”向阿里猛投简历,两次被刷后,最终敲定“菜鸟网络”的岗位,定级P6.
- 期望值计算(骰子举例)R语言
- 【Opencv实战】一文看懂车牌识别系统全部内容,未来市场前景看好(很赞)
- 轻松学c语言编程.pdf等,轻松学编程:轻松学C语言编程 PDF