8、HALCON数据类型,tuple、image、region、XLD

1、 tuple 的处理

HALCON 运算符的各种输入输出参数,只要是含有资料的,其内容可以是单一的对象或是对象/数值的 tuple,HALCON 在计算时同时会计算 tuple 中所有对象。例如说您要对六张影 像做 filter 处理,可以使用 median_image 六次,也可以将六张影像读进一个 tuple,然后呼 叫 median_image 一次。当输入一个 tuple 时,HALCON 就会同时对六张影像作处理,然后 输出一个 tuple,其中含有六张处理过的影像。在第三章的例子中,从影像中取出的数个 region 变成了 tuple,如果要求取每个 region 的中心,只要把这个 tuple 做为 area_center 的输入参 数,输出的 tuple 就包含了这些 region 中心位置的坐标组。

2、image 物件

image 对象中包含了像元数据。它本身可以是 tuple,含有一张或是多张影像,每个影像对象 本身含有一个 domain,记载了面积,范围,以及一或多个频道的灰度值数据,而频道的数目没有限制,一个单色影像只有一个频道,一般的全彩影像有三个(RGB),多光谱影像可能就更多。

影像的 domain 可以是任何尺寸,其范围是以 region 表示,所以其中可以有空洞,或是有数个彼此不相连的区域,一张影像默认的domain即是包含该张影像的最小矩形。domain 可以 任意修改变形,而每一张影像都有个别的 domain。 每张影像给定其定义区域有其好处,所有的运算符在做计算时都只在 domain 的范围内计 算,也就是在 ROI 中计算,因此待计算数据减少,速度得以加快。HALCON 提供了一个范 例 autobahn.dev,位于

%HALCONROOT%\examples\hdevelop\Applications\Sequences

3、 region物件

region 记载了影像中的特定区域数据,例如说影像中明亮的部分,region 对象中可含有一个以上的区域数据,这些数据是彼此互相独立的,而且即使记载了某张影像的区域,这些数据和影像本身并非直接相关。这种设计使得 region 的资料可以是任意形状尺寸,而且储存时非常有效率。在内存中的 region 数据和影像灰阶数据是分离的,即使 region 有互相重迭时, 内存中的影像数组不会受到任何影响。

region 的纪录方式是由 runlength encording 演变而来的,称之为 chord encording,纪录的是每一条弦(线)的起讫点数据,这种方式使得 region 数据占用极少的内存资源,而且在做 计算,尤其是型态学的计算有很好的效率。

region 既然没有尺寸的限制,因此它甚至于可以超过原始影像尺寸,这在应用上有其长处, 例如 region 中含有圆形特征物体,且要将边缘圆滑来去掉一些缺角或漏洞,例如用 closing_circle做运算。另一个例子是去掉物体上的鳍状突出,(HDevelop的例子fin2.dev,位于%HALCONROOT%\examples\hdevelop\Applications\FA),这是利用同一个圆形元素来 做边缘的扩张和收缩,圆半径250,这个半径似乎很大,但是对 HALCON 来说不是问题,计算后的区域就把突出物去掉而变平滑。如果 region 被限制在影像大小的区域,扩张和收缩 两个步骤后的区域形状就无法去除突出物。

4、XLD物件

XLD是 eXtended Line Description 的缩写,这种数据结构用于纪录区域,例如任意尺寸的区域或是多边型,开放或是封闭的等值线,直线等等。和 region 对象不同的,region 的纪录精度是以像元为单位,而XLD对象以次像元精度来记录。XLD对象有两种基本结构,等值线和多边型。

XLD 对象的建立方法是由线(等值线,边缘等等)上的取样点连接而成,藉由改变取样密度和位置,可以提高精度,此外还包含了角度,弪度等等数据。一般来说,XLD记录了边缘侦测计算的结果,例如edge_sub_pix,lines_gauss 等等。进一步的,可以用在次像元精度等级的计算及应用。详 细的信息请参考 Extension Package Programmer's Manual。

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值