HALCON中的重要数据结构

1 HALCON运算子

       运算子之间没有继承关系,其使用功能来分类。也可以设计自己的运算子并加入HALCON,而且许多运算子可以藉由并行计算来加快速度。

2 参数和资料结构

       所有运算子(函数)的参数均以相同的方式来排列:输入图像,输出图像,输入控制,输出控制。HALCON有两种基本的资料形态:图像资料(iconic)以及控制资料(control,例如变量、整数、字串、handle等等)。

3 图像

       图像中的主要部分是由不同通道的灰度矩阵组成。其包括如下几个基本概念:
       (1)定义域:每张图像都有其定义域(domain),代表影像中药处理的资料范围。定义域包含的范围很广,例如从一个简单的矩形到任意的形状。
       (2)像素值:像素值可以为整型和浮点型
       (3)通道
       (4)坐标系统:左上角为坐标原点(0,0),坐标值的范围从(0,0)到(height-1,width-1)。每一个像元的中心坐标为(0,0),因此第一个像元的范围是从(-0.5,-0.5)到(0.5,0.5)。

4 Regions

       Region即一堆像元的集合,但他们的坐标范围不受影像大小的限制,甚至可以大于图像的范围。且region中的像元不一定要相连,也就是说任意形状的像元集合都可成为一个region。最后,由于region不是以一般软体的label images来控制,因此可以相互重叠。

5 XLDs

       XDLs(属于iconic data)是eXtended Line Description的缩写,可以理解为线型描述子,该描述子是一连串的坐标的串列,相邻两点之间以直线相连。此外,还包含了全域或区域的属性,例如edge方向。

6 Control Tuples

       Tuples(元组)是一个阵列,其中的数据类型可以为整型、浮点型或字符串。一个tuple型的变数可以为上诉三种资料形态之一,甚至混合。当我们计算一个region的某些特征时,会传回一个结果,如果计算的是一群region,会传回一个tuple,其中含有每个region的计算结果。Control tuple的指标由0开始。请注意,iconic tuple的指标由1开始。

7 Handles

       Handle是用于管理一组复合的资料,例如shape-based matching中的models。为了程式设计的方便性,该类资料只通过一个唯一的整数数值来标识。例如:图形视窗、档案、sockets、取像设备等均以handle来标识要操作的对象。

8 取像

       目前HALCON提供了40余种取像设备连接界面,并以动态连接的方式载入(Windows: DLLs; UNIX: shared libraries)。这些库随着HALCON一起安装到电脑中,其名称以HFG开头。

你可能感兴趣的:(Halcon)