机器视觉_HALCON_HDevelop用户指南_7.图像采集助手


图像采集助手

图像采集/获取助手(Image Acquisition Assistant,下文简称助手)是一个支持各种图像采集方法的简单易用的UI工具。用户可以用它从文件系统(选中单个文件或整个目录)中读取图像;还可以从HALCON图像采集接口支持的图像采集设备获取图像。在选择图像采集接口时,用户可以设置相应的设备参数,如图像格式等。在成功与所选的图像采集接口建立连接后,可以在活动的图形窗口中抓取并显示图像。使用实时图像时,可以交互式地调节所选接口支持的参数(交互式调节就是可以GUI操作,并且可以马上从图形窗口中看到反馈)。

在更改参数获得合适的设置后,可以保存助手的设置以供以后重用(文件菜单项中的 保存当前助手设置 )。还能指示助手生成HDevelop代码,该代码将连接到所选的图像采集接口,设置指定的参数并捕获图像。

1 图像源 选项卡

图像源 选项卡用于选定从哪里获取图像。

图像文件

激活该按钮后,就可以从文件中加载图像。文本框中输入图像文件的名称,多文件以 ; 分隔。
若指定的图像没有路径名或相对路径名,则会在环境遍历 HALCONROOTHALCONIMAGES 指定的目录中搜索图像文件(这就是为什么HALCON官方示例中有些代码看似可以不用路径名就访问到图像)。

你可以输入图像完整路径,以指定该目录下的所有图像。若勾选了 “递归” ,则还将指定所有子目录的图像。

在按下回车键后,会在活动窗口中显示指定的第一个图像。

单击按钮 选择文件…选择目录… 会打开文件浏览器,它们分别可以选择多个图像文件和单个图像文件的目录。在文件浏览器中单击确定后,源选项卡的文本字段将用所选项更新,并且活动窗口会显示第一个图像。
在这里插入图片描述
使用采集菜单项中的 “采集” 或 “实时” ,可以依次查看所选图片。

图像采集/获取接口

激活此按钮可以从图像采集接口中获取图像。下拉列表中包含了所有支持的图像采集接口。
在这里插入图片描述
点击 自动检测接口 会依次探测图像采集接口,并从列表中删除那些无响应的接口。建议在探测接口之前保存程序。

2 连接 选项卡

连接 选项卡用来为 选项卡中选中的图像采集接口设置连接参数。
此选项卡仅在图像源为图像采集接口时可用。下面介绍连接参数,相关字段的其它信息,请查阅 open_framegrabber 算子的描述。

配置项

设备(Device)
若所选的图像采集接口有多台设备,请通过选择一个板卡、相机或逻辑设备的ID来选中目标设备。
这个设备ID,实际上是由设备的多个参数组合而成的,其中就包括设备物理地址。比如下图是我使用的一台海康相机的信息,我通过助手生成代码中,设备参数/ID就是将物理地址、厂商和型号进行组合。


在构建设备列表时,助手会查询每个设备的状态。根据图像采集接口的不同,设备可能被报告为配置错误。若你选中这样的设备,助手会建议使用一个通用参数,以可能解决错误。若你确认该建议,参数会被输入到通用槽中。若设备上标有问号,它可能是只读的、繁忙的或未知的。

端口(Port)
指定输入端口号。

相机类型(Camera Type)
选择相机配置项或信号类型。

选择…(Select…)
从文件浏览器中选择相机配置文件(XML/ini格式)。

触发器(Trigger)
若图像采集由外部触发器控制,就勾上该复选/检查框。

分辨率(X/Y)(Resolution)
指定图像的宽和高。

颜色空间(Color Space)
指定色彩采集的配置。

场(Field)
指定隔行扫描相机(Interlaced camera)的帧选择。

位深度(Bit Depth)
为图像通道指定位数。

通用(Generic)
有些图像采集接口支持在相机初始化前将设备特定参数预设成所选值。接口声称支持的参数被建议在下拉列表中。要设置一个通用参数,请从列表中选择,并编辑分配的值,即 = 后面的值。多个参数由逗号分隔。
若所选的图像采集接口不支持该通用参数,则字段显示为灰色。

设置完连接参数,动作按钮将用于连接到指定设备并从指定设备获取图像。图像采集助手窗口的状态栏会显示连接错误的提示信息。

动作按钮

连接(Connect)
用于连接到指定的图像采集设备。若连接失败,请仔细检查上述字段的配置。并非所有设备都允许所有设置项的组合。建议启用低级错误消息(通用选项->有经验的用户),以了解什么地方出错了。注意,如果修改了连接参数,已建立的连接会自动关闭。
当连接建立后,该按钮可用于断开设备连接。

采集(Snap)
从设备获取单个图像。图像会显示在活动图形窗口中(除非将显示图像设置为禁用)。

实时(Live)
启动/停止实时图像采集模式。图像会显示在活动图形窗口中(除非将显示图像设置为禁用)。

检测(Detect)
单击此按钮将尝试重新检测当前设备的有效参数。

所有重置(Reset All)
将所有连接参数重置为默认值。

3 参数 选项卡

设置所选图像采集设备的参数。

若图像源设为图像采集接口,并且已经建立了与图像采集设备的连接,则此选项卡可用。按 F1 可以查看显示参数的更多信息。

接口库
当前连接使用的图像采集接口库(DLL或共享对象)显示在该字段中。

更新图像
若勾选该检查框,在每次变更参数后会立刻采集一个新图像。若你想要一次变更多个参数,就禁用该检查框。

刷新
刷新支持的参数及其值范围的列表。这对具有副作用的参数很有用。

重置全部
将所有参数重置为默认值。也可以通过点击每个参数右侧显示的相应按钮来重置单个参数。

参数组

可用参数按用户参数、只读参数、动作参数和写入参数进行分组。后者不能在助手中更改,仅供参考。部分接口的参数还按类别和可见性进行分组。如果有分组信息可用,你可以从下拉列表“种类”中选择一个主题,以减少显示的参数数量。你还可以从下拉列表“可见性/可视度”(初学者/开始值、专家或大师/Guru)中选择类别,进一步过滤参数。

默认情况下,参数按主题排序。你还可以按名称/名字对参数进行排序。

设置参数

参数以表格形式显示。将鼠标指针悬停在表格行上以获取相应参数的简短描述作为工具提示。

鼠标悬停显示提示信息

对于数值参数,工具提示还包括值范围(最小值 - 最大值)。

第一列显示参数名称。
第二列取决于参数类型:

  • 如果参数可编辑,其值可以输入到文本字段中。此字段可能包含作为下拉列表的值建议。可以使用文本字段旁边的箭头增减数值。
  • 如果参数是只读的,其值将显示,但不能修改。
  • 对于动作/活动参数(Action Parameters),可以通过点击应用按钮来触发相应的动作。在这里插入图片描述

第三列保留给数字参数。它包含一个滑块,以便在定义的范围内快速更改参数值。请注意,拖动滑块时将抑制低级错误消息。如果最小值低于-10000,或最大值高于10000,或根本未定义范围,则不显示滑块。
在这里插入图片描述
第四列包含可编辑参数的重置按钮。单击它以将更改的参数重置为默认值。

4 检测 选项卡

设置显示模式和展示图像采集统计信息。

显示

显示图像
建议将显示模式设置为正常(Normal),除非你需要进行速度测量。其他模式有易失性(Volatile)(即易失性抓取)和禁用(Disabled)(抓取图像但不显示)。

输出窗口
指定图像显示的图形窗口(可以是活动/激活的图形窗口,或从列表中选择一个窗口ID)。

统计

此区域显示所有采集图像的采集时间和帧速率统计。

忽略实时采集的第一张图像
在实时模式下采集到第一张图像时,会增加一定的开销。因此,建议勾选此框以提高结果的准确性。

状态栏

实时采集时显示帧率
通常,窗口状态栏中显示抓取图像的数量和最后一张图像的采集时间。勾选此复选框将导致在实时模式下显示帧率。

显示 最小值/平均值/最大值
若选中此选项,图像采集统计信息也会显示在窗口的状态栏中。这样,你可以在助手的任何选项卡中查看采集统计信息。

5 代码生成 选项卡

用于预览/生成HDevelop代码。

连接参数 选项卡中所做设置可提炼为当前程序中执行所需图像采集的程序行。此选项卡中的字段指定代码生成的详细信息。你可以在 代码预览 面板中预览代码行。

采集

如果从图像采集接口获取图像,可以使用本段的设置。

控制流
当设置为 仅初始化 时,会生成所选图像采集接口的初始化代码。它会打开指定图像采集设备的连接,并设置所有变更过的参数;你还可以生成代码以获取单个图像(当选择 采集单幅图像 时);或者在循环中采集图像(选 在循环中采集图像 时)。

采集模式
可以切换同步采集和异步采集。后者在后台运行,适用于连续采集。

变量名

本段定义了在生成的代码中使用的变量名称。

连接句柄(Connection Handle)
该变量存储了采集句柄。通过此变量名可以访问图像采集接口。下面示例中,将其设为 AcqHandle

图像对象(Image Object)
该变量用于存储获取的图像。下面示例中,将其设置 Image
若图像源设置成图像文件且指定了多个文件,则需要指定以下变量:

循环计数器(Loop Counter)
存储循环索引。

图像文件(Image Files)
将图像名存储为元组。

生成代码(Generate the Code)

插入代码(Insert Code)
将代码插入至IC(当前程序左侧的黑色箭头)处。

* 示例代码
* Code generated by Image Acquisition 01
open_framegrabber ('GigEVision', 1, 1, 0, 0, 0, 0, 'progressive', 8, 'gray', \
                   -1, 'false', 'default', '003053095003_Basler_scA160014gc', \
                   0, -1, AcqHandle)
grab_image_start (AcqHandle, -1)
while (true)
    grab_image_async (Image, AcqHandle, -1)
*     Do something
endwhile
close_framegrabber (AcqHandle)

6 菜单栏

菜单项 文件代码生成帮助 ,这几项属于通用项。
在这里插入图片描述
采集 项的功能与前面连接选项卡中的功能一样,
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/BadAyase/article/details/129857372