分享

halcon图像采集

 学海无涯GL 2014-02-17

图像采集:

Halcon通过imageacquisition interfaces对各种图像采集卡及各种工业相机进行支持。其中包括:模拟视频信号,数字视频信号Camera Link,数字视频信号IEEE 1394,数字视频信号USB2.0,数字视频信号Gigabit Ethernet等。
Halcon通过统一的接口封装上述不同相机的image acquisition interfaces,从而达到算子统一化。不同的相机只需更改几个参数就可变更使用。

Halcon图像获取的思路:1、打开设备,获得该设备的句柄。2、调用采集算子,获取图像。

1、打开设备,获得该设备的句柄。

 
open_framegrabber('DahengCAM', 1, 1, 0, 0, 0, 0, 'interlaced', 8, 'gray', -1, 'false','HV-13xx', '1', 1, -1, AcqHandle) //连接相机,并设置相关参数

Parameter

Values

Default

Type

Description

Name

'DahengCAM'

 

string

Name of the HALCON interface.

HorizontalResolution

1

1

 

1表示水平全部,2为水平1/2,表示图像截取。

VerticalResolution

1 1  

同上,表示垂直方向。

ImageWidth

<width>

0

integer

所需的图像部分的宽度('0 '代表了完整的图像)。

ImageHeight <height> 0 integer 所需的图像部分的高度(0”是完整的图像)
StartRow <width> 0 integer 所需的图像部分左上方的像素行坐标
StartColumn <column> 0 integer 所需的图像部分左上方的像素列坐标
Field       忽视
BitsPerChannel       忽视
ColorSpace 'default', 'gray', 'rgb' 'gray' string HALCON图像的通道模式
Generic       忽视
ExternalTrigger

'false', 'true'

'false' string 外部触发状态
CameraType 'HV-13xx', 'HV-20xx', 'HV-30xx', 'HV-31xx','HV-50xx', 'SV-xxxx' 'HV-13xx' string 所连接的摄像机系列型。
Device '1', '2', '3', ... '1' string 相机连接第一个设备号“1”,第二个设备编号“2”。
Port       忽视
LineIn       忽视

2、调用采集算子,获取图像。

grab_image (Image, AcqHandle) //(同步采集)完后处理图像,然后再采集图像。采集图像的速率受处理速度影响。
grab_image_async (Image, AcqHandle,MaxDelay) //(异步采集),一幅画面采集完后相机马上采集下一幅画面,不受处理速度影响。其中第三个参数为:MaxDelay,表示异步采集时可以允许的最大延时,本次采集命令距上次采集命令的时间不能超出MaxDelay,超出即重新采集。

图像采集其他相关算子:

     grab_image_start,该算子开始命令相机进行异步采集。只能与grab_image_async(异步采集)一起使用。

例子:

* Select a suitable image acquisition interface nameAcqName
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)

3、相机参数读写

读取相机参数:

info_framegrabber( : : Name, Query : Information, ValueList)

写相机参数:

set_framegrabber_param( : : AcqHandle, Param, Value : )

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多