Halcon学习之二:摄像头获取图像和相关参数
1、close_all_framegrabbers ( : : : )
关闭所有图像采集设备。
2、close_framegrabber ( : : AcqHandle : )
关闭Handle为AcqHandle的图像采集设备。
3、open_framegrabber ( : : Name, HorizontalResolution,
VerticalResolution, ImageWidth, ImageHeight, StartRow, StartColumn,
Field, BitsPerChannel, ColorSpace, Generic, ExternalTrigger,
CameraType, Device, Port, LineIn : AcqHandle )
打开图像采集设备
参数信息:
Name:图像采集设备的名称
HorizontalResolution和VerticalResolution:分别指预期的图像采集接口的水平分辨率和垂直分辨率
ImageWidth和ImageHeight:指预期图像的宽度部分和高度部分。
StartRow和StartColumn:指显示预期图像的开始坐标
Field:预期图像是一半的图像或者是完整图像
BitsPerChannel:每像素比特数和图像通道
ColorSpace:输出的色彩格式的抓住图像{gray、raw、rgb、yuv、default}
Generic:通用参数与设备细节部分的具体意义。
ExternalTrigger:是否有外部触发
CameraType:使用相机的类型
Device:图像获取设别连接到的设备
Port:图像获取设别连接到的端口
LineIn :相机输入的多路转接器
AcqHandle:图像获取设备的Handle
4、grab_image ( : Image : AcqHandle : )
获取AcqHandle的图像采集设备的Image。
5、get_framegrabber_param ( : : AcqHandle, Param : Value )
查询AcqHandle的图像采集设备的特殊参数
Param∈{name、port、revision、bits_per_channel, camera_type、color_space、device、field、generic、external_trigger、grab_timeout、horizontal_resolution、image_available、image_height、image_width、line_in、start_column、start_row、volatile、vertical_resolution、continuous_grabbing、}
6、info_framegrabber ( : : Name, Query : Information, ValueList )
查询指定的图像采集接口的信息。
Name为图像采集设备的名称
Query为需要查询的参数名称
Information是指输出的文本信息
ValueList为该图像采集接口的参数值。
Name∈{1394IIDC、ABS、BaumerFCAM、BitFlow、Crevis、uEye、DahengCAM、DahengFG、DFG-LC、DirectFile、DirectShow、dPict、DT315x、DT3162、eneo、eXcite、FALCON、FlashBusMV、FlashBusMX、GigEVision、Ginga++、GingaDG、INSPECTA、TAG、INSPECTA5、iPORT、Leutron、LinX、LuCam、MatrixVisionAcquire、MILLite、File、mEnableIII、mEnableIV、mEnableVisualApplets、MultiCam、Opteon、p3i2、p3i4、PixeLINK、PX、PXC、PXD、PXR、pylon、RangerC、RangerE、SaperaLT、Sentech、SonyXCI、SonyXCI-2、SVCam-GigE、TWAIN、VRmUsbCam}
Query∈{defaults、general、info_boards、parameters、field、generic、parameters_readonly、parameters_writeonly、vertical_resolution、port、bits_per_channel、camera_type、color_space、device、external_trigger、field、generic、horizontal_resolution、image_height、image_width、start_row、start_column、revision}
7、grab_image_async ( : Image : AcqHandle, MaxDelay : )
获取AcqHandle的图像采集设备的Image
当调用grab_image_async 或者grab_data_async时,抓拍下一个图像就结束了。
- // Select a suitable image acquisition interface name AcqName
- open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,’default’,’default’,’default’,-1,-1,AcqHandle)
- // Grab image + start next grab
- grab_image_async(Image1,AcqHandle,-1.0)
- // Process Image1 ...
- // Finish asynchronous grab + start next grab
- grab_image_async(Image2,AcqHandle,-1.0)
- // Process Image2 ...
- close_framegrabber(AcqHandle)
8、grab_image_start ( : : AcqHandle, MaxDelay : )
开始抓拍
只有当和grab_image_async or grab_data_async一起使用时,grab_image_start 才会起作用。
- // Select a suitable image acquisition interface name AcqName
- open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,
- ’default’,’default’,’default’,-1,-1,AcqHandle)
- grab_image(Image1,AcqHandle)
- // Start next grab
- grab_image_start(AcqHandle,-1.0)
- // Process Image1 ...
- // Finish asynchronous grab + start next grab
- grab_image_async(Image2,AcqHandle,-1.0)
- // Process Image2 ...
- close_framegrabber(AcqHandle)
9、get_framegrabber_lut ( : : AcqHandle : ImageRed, ImageGreen,
ImageBlue )
查询AcqHandle的图像采集设备的look-up table
注意:该运算子不能支持所有的图像采集设备
10、grab_data ( : Image, Region, Contours : AcqHandle : Data )
获取AcqHandle的图像采集设备获得的Image、预处理Region和预处理XLD轮廓Contours和预处理控制数据Data。
注意:该运算子不能支持所有的图像采集设备
11、grab_data_async ( : Image, Region, Contours : AcqHandle,MaxDelay: Data )
获取AcqHandle的图像采集设备的Image、预处理Region和预处理XLD轮廓Contours和预处理控制数据Data。(需要特殊图像采集数据)
12、set_framegrabber_lut ( : : AcqHandle, ImageRed, ImageGreen,ImageBlue : )
设置AcqHandle的图像采集设备的look-up table
13、set_framegrabber_param ( : : AcqHandle, Param, Value : )
设置AcqHandle的图像采集设备的特殊参数
相关代码:
- close_all_framegrabbers ()
- open_framegrabber ('DahengCAM', 1, 1, -1, -1, 0, 0, 'default', -1, 'rgb', -1, 'false', 'default', 'default', -1, -1, AcqHandle)
- grab_image (Image, AcqHandle)
- grab_image_async (Image2, AcqHandle, -1)
- get_framegrabber_param (AcqHandle, 'image_width', Value)
- info_framegrabber ('DirectFile', 'info_boards', Information, ValueList)
可以通过调试以上代码,并且查看相关变量的变化,更深入的了解函数的意义。
注意:在本段代码中,使用的是大恒的HV1303的工业摄像机,如果是使用一般的摄像头来采集数据的话,Name值可以设置为Direct_show。
- 顶
- 1
- 踩
- 0
Halcon学习之二:摄像头获取图像和相关参数的更多相关文章
- 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用
目录 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用 23.1 跳出循环 23.1.1 break和continue 23.2 Shift参数左移指令 23.3 函数 ...
- Kafka 学习笔记之 High Level Consumer相关参数
High Level Consumer相关参数 自动管理offset auto.commit.enable = true auto.commit.interval.ms = 60*1000 手动管理o ...
- 跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码
跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码 第一步:插入QQ摄像头,安装好驱动(有的可能免驱动) 第二步:打开HDevelop,点击助手-打开新的Image Acquisitio ...
- Halcon学习笔记之支持向量机(二)
例程:classify_halogen_bulbs.hdev 在Halcon中模式匹配最成熟最常用的方式该署支持向量机了,在本例程中展示了使用支持向量机对卤素灯的质量检测方法.通过这个案例,相信大家可 ...
- halcon学习相关资料(转载)
https://blog.csdn.net/maweifei/article/details/78162581 论坛.培训 halcon学习网:http://www.ihalcon.com/ 鸟叔机器 ...
- Python(二)Marshmallow 库相关学习
0. 前言 Marshmallow 是一个用于将 ORM 对象与 Python 原生数据类型之间转换的库.实现 object → dict.object → list.string → dict 和 ...
- halcon学习笔记——机器视觉工程应用的开发思路【转】
转自:http://www.cnblogs.com/hanzhaoxin/archive/2013/02/15/2912879.html 机器视觉工程应用主要可划分为硬件和软件两大部分. 硬件:工程应 ...
- 跟我学机器视觉-HALCON学习例程中文详解-FUZZY检测用于开关引脚测量
跟我学机器视觉-HALCON学习例程中文详解-FUZZY检测用于开关引脚测量 * This example program demonstrates the basic usage of a fuzz ...
- ROS 教程之 vision : 用各种摄像头获取图像
可能有很多人想在ROS下学习视觉,先用摄像头获取图像,再用opencv做相应算法处理,可是ROS下图像的采集可不像平常的read一下那么简单,需要借助外部package的使用.而摄像头即可以用笔记本自 ...
随机推荐
- 软工作业-Wc
Wc.exe wc.exe是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写一个命令行程序,模仿已有wc.exe 的功能,并加以扩充,给出某程序设计语言源文件的字符数.单词数和行 ...
- 【网络】<网络是怎样连接的>笔记
[一] 浏览器 http://user:pwd@hosturl:port/dir/of/file 基本思路: 1.1 生成http请求信息 包含“对什么”“进行怎样的操作”两个方法.一般常用操作是GE ...
- falsh developer 快捷键
1.文件夹搜索是Ctrl+I2.注释// Ctrl+Q 3.注释/*...*/ Ctrl+Shift+Q4. 代码提示 Ctrl+Alt+space5. 复制一行 Ctrl+D ctrl+shift+ ...
- php实现安装程序的 安装
install.php 只要填写数据库就可以把数据插入到数据库中,实现安装 <?php header("Content-type:text/html;charset=utf-8&quo ...
- android textview xml 属性设置
android:ems 设置TextView的宽度为N个字符的宽度. android:maxems 设置TextView的宽度为最长为N个字符的宽度.与ems同时使用时覆盖ems选项. andr ...
- 如何复制一个java对象(浅克隆与深度克隆)
在项目中,有时候有一些比较重要的对象经常被当作参数传来传去,和C语言的值传递不同,java语言的传递都是引用传递,在任何一个地方修改了这个对象的值,就会导致这个对象在内存中的值被彻底改变.但是很多时候 ...
- Leetcode 807. Max Increase to Keep City Skyline
class Solution(object): def maxIncreaseKeepingSkyline(self, grid): """ :type grid: Li ...
- InpOut32 CSharpExample.cs hacking
/************************************************************************************ * InpOut32 CSh ...
- volatile 续
上次的问题在看了一篇博客后有了点理解了 博文地址为 http://www.cnblogs.com/dolphin0520/p/3920373.html 按照文章中写的,在并发编程中,我们通常会遇到以下 ...
- bzoj 3124 直径
Written with StackEdit. Description 小\(Q\)最近学习了一些图论知识.根据课本,有如下定义. 树:无回路且连通的无向图,每条边都有正整数的权值来表示其长度.如果一 ...