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时,抓拍下一个图像就结束了。

  1. // Select a suitable image acquisition interface name AcqName
  2. open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,’default’,’default’,’default’,-1,-1,AcqHandle)
  3. // Grab image + start next grab
  4. grab_image_async(Image1,AcqHandle,-1.0)
  5. // Process Image1 ...
  6. // Finish asynchronous grab + start next grab
  7. grab_image_async(Image2,AcqHandle,-1.0)
  8. // Process Image2 ...
  9. close_framegrabber(AcqHandle)

8、grab_image_start ( : : AcqHandle, MaxDelay : )

开始抓拍

只有当和grab_image_async or grab_data_async一起使用时,grab_image_start 才会起作用。

  1. // Select a suitable image acquisition interface name AcqName
  2. open_framegrabber(AcqName,1,1,0,0,0,0,’default’,-1,’default’,-1.0,
  3. ’default’,’default’,’default’,-1,-1,AcqHandle)
  4. grab_image(Image1,AcqHandle)
  5. // Start next grab
  6. grab_image_start(AcqHandle,-1.0)
  7. // Process Image1 ...
  8. // Finish asynchronous grab + start next grab
  9. grab_image_async(Image2,AcqHandle,-1.0)
  10. // Process Image2 ...
  11. 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的图像采集设备的特殊参数

相关代码:

  1. close_all_framegrabbers ()
  2. open_framegrabber ('DahengCAM', 1, 1, -1, -1, 0, 0, 'default', -1, 'rgb', -1, 'false', 'default', 'default', -1, -1, AcqHandle)
  3. grab_image (Image, AcqHandle)
  4. grab_image_async (Image2, AcqHandle, -1)
  5. get_framegrabber_param (AcqHandle, 'image_width', Value)
  6. info_framegrabber ('DirectFile', 'info_boards', Information, ValueList)

可以通过调试以上代码,并且查看相关变量的变化,更深入的了解函数的意义。

注意:在本段代码中,使用的是大恒的HV1303的工业摄像机,如果是使用一般的摄像头来采集数据的话,Name值可以设置为Direct_show。

 
1
0

Halcon学习之二:摄像头获取图像和相关参数的更多相关文章

  1. 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用

    目录 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用 23.1 跳出循环 23.1.1 break和continue 23.2 Shift参数左移指令 23.3 函数 ...

  2. Kafka 学习笔记之 High Level Consumer相关参数

    High Level Consumer相关参数 自动管理offset auto.commit.enable = true auto.commit.interval.ms = 60*1000 手动管理o ...

  3. 跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码

    跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码 第一步:插入QQ摄像头,安装好驱动(有的可能免驱动) 第二步:打开HDevelop,点击助手-打开新的Image Acquisitio ...

  4. Halcon学习笔记之支持向量机(二)

    例程:classify_halogen_bulbs.hdev 在Halcon中模式匹配最成熟最常用的方式该署支持向量机了,在本例程中展示了使用支持向量机对卤素灯的质量检测方法.通过这个案例,相信大家可 ...

  5. halcon学习相关资料(转载)

    https://blog.csdn.net/maweifei/article/details/78162581 论坛.培训 halcon学习网:http://www.ihalcon.com/ 鸟叔机器 ...

  6. Python(二)Marshmallow 库相关学习

    0. 前言 Marshmallow 是一个用于将 ORM 对象与 Python 原生数据类型之间转换的库.实现 object → dict.object → list.string → dict 和 ...

  7. halcon学习笔记——机器视觉工程应用的开发思路【转】

    转自:http://www.cnblogs.com/hanzhaoxin/archive/2013/02/15/2912879.html 机器视觉工程应用主要可划分为硬件和软件两大部分. 硬件:工程应 ...

  8. 跟我学机器视觉-HALCON学习例程中文详解-FUZZY检测用于开关引脚测量

    跟我学机器视觉-HALCON学习例程中文详解-FUZZY检测用于开关引脚测量 * This example program demonstrates the basic usage of a fuzz ...

  9. ROS 教程之 vision : 用各种摄像头获取图像

    可能有很多人想在ROS下学习视觉,先用摄像头获取图像,再用opencv做相应算法处理,可是ROS下图像的采集可不像平常的read一下那么简单,需要借助外部package的使用.而摄像头即可以用笔记本自 ...

随机推荐

  1. SpringCloud教程 | 第十二篇: 断路器监控(Hystrix Dashboard)

    版权声明:本文为博主原创文章,欢迎转载,转载请注明作者.原文超链接 ,博主地址:http://blog.csdn.net/forezp. http://blog.csdn.net/forezp/art ...

  2. android代码设置EditText只输入数字、字母

     如何设置EditText,使得只能输入数字或者某些字母呢? 一.设置EditText,只输入数字: 方法1:直接生成DigitsKeyListener对象就可以了. et_1.setKeyLis ...

  3. del语句

    5.2. del 语句 有个方法可以从列表中按给定的索引而不是值来删除一个子项: del 语句.它不同于有返回值的 pop() 方法.语句 del 还可以从列表中删除切片或清空整个列表(我们以前介绍过 ...

  4. Robot Framework接口测试(1)

    RF是做接口测试的一个非常方便的工具,我们只需要写好发送报文的脚本,就可以灵活的对接口进行测试. 做接口测试我们需要做如下工作: 1.拼接发送的报文 2.发送请求的方法 3.对结果进行判断 我们先按步 ...

  5. Protobuf-net 应用

    什么是ProtoBuf-net Protobuf是google开源的一个项目,是基于二进制的类似于XML,JSON这样的数据表示语言,用户数据序列化反序列化,google声称google的数据通信都是 ...

  6. myeclipse按.自动提示方法

    第一步:菜单Window->Preferences->Java->Editor->Content Assist->Enable auto activation 选项要打勾 ...

  7. jstl_fn方法库

    <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 1,st ...

  8. css3动画学习笔记

    具体学习地址:http://www.imooc.com/learn/33CSS3中的三种动画:tranform形变动画/transition缓动动画/animation逐帧动画; tranform: ...

  9. mysql + unidac 使用事务例子

    //备注:mysql必须是使用innoDB引擎才支持事务功能,否则以下事务相关代码将失效.//SQL SERVER和Oracle还没试,明天回公司试了再发代码.procedure TForm1.btn ...

  10. springmvc freemarker 全局变量的三种配置方式

    方法一 直接在spring-servlet.xml 中进行配置 <bean id="freemarkerConfiguration" class="org.spri ...