图像处理3:击中击不中算法

图像处理3:击中击不中算法

(1)击中击不中简介:

           击中击不中变换是形态学形状检测的基本工具,是用来查找像素局部模式的形态学运算符,其中局部是指结构元素的大小。

           两个不相交集合B=(B1, B2),称B为复合结构元素。则击中击不中变换为:用B1去腐蚀x,然后用B2去腐蚀X的补集,得到的结果相减就是击中击不中变换。

(2)击中击不中算法原理:

          如果要在一幅图像A上找到B形状的目标:

          ①建立一个比B大的模板W,使用此模板对图像A进行腐蚀,得到图像假设为Process1;

          ②用B减去w,从而得到V模板(W-B),使用V模板对图像A的补集进行腐蚀,得到图像假设为Process2;

          ③Process1与Process2取交集,得到的结果就是B的位置,这里的位置可能不是B的中心位置。

(3)击中击不中算法原理:

        击中击不中算法的原理基于腐蚀运算的一个特性:腐蚀的过程相当于对可以填入结构元素的位置作标记的过程。

        腐蚀过程中,虽然标记点取决于原点在结构元素中的相对位置,但输出图像的形状与此无关,改变原点的位置,只会导致输出结果发生平移。既然腐蚀的过程相当于对可以填入结构元素的位置作标记的过程,可以利用腐蚀来确定目标的位置。

        进行目标检测,既要检测到目标的内部,也要检测到外部,即在一次运算中可以同时捕获内外标记。

        由于以上两点,采用两个结构基元H,M,作为一个结构元素对B= (H, M) ,一个探测目标内部,一个探测目标外部。当且仅当H平移到某一点可填入X的内部, M平移到该点可填入X的外部时,该点才在击中击不中变换的输出中。

(4)击中击不中算法的应用:

        ①物体识别:将击中基元设计成为需要识别的图像的样子,击不中基元设计为击中基元取反后的样子,然后用这两个基元对图像进行检测即可。

        ②图像细化:将图像变细,就像取到了图像的骨架。

(5)击中击不中算法的结构元素:

         选取击中击不中需要两个结构基元E和F,这两个结构基元一个探测图像内部,一个探测图像外部。当被测图像上目标击中"击中元素" ,但击不中"击不中结构元素"时,将该目标输出。

(6)击中击不中算法的Halcon实现:

         hit or miss(Region, StructElement1, StructElement2, RegionHitMiss, Row, Column)

         首先,在输入区域Region上对结构元素结构1StructElement1进行腐蚀,然后在输入区域的补集上对结构元素2StructElement2进行腐蚀,两个结果区域的交集是算法的结果区域。

猜你喜欢

转载自blog.csdn.net/weixin_39504171/article/details/94553606