其他分享
首页 > 其他分享> > halcon的三种模板匹配方法总结

halcon的三种模板匹配方法总结

作者:互联网

        halcon有三种模板匹配方法:即Component-Based、Gray-Value-Based、Shaped_based,分别是基于组件(或成分、元素)的匹配,基于灰度值的匹配和基于形状的匹配,此外还有变形匹配和三维模型匹配也是分属于前面的大类。

一、  Shape_Based匹配方法 

1.1 形状匹配常见的有四种情况 

1.2 四种匹配的特点 

匹配函数类型特点
shape_model不支持投影变形的模板匹配,是速度是最高的。
planar_deformable_model是支持投影变形的匹配
local_deformable_model是支持局部变形的匹配
Scale_model是支持投影变形的匹配

1.3 一般形状匹配模板shape_model

        一般形状匹配模板是最常用的,模板的形状和大小一经制作完毕便不再改变,在查找模板的过程中,只会改变模板的方向和位置等来匹配目标图像中的图像。这个方法查找速度很快,但是当目标图像中与模板对应的图像存在比例放大缩小或是投影变形如倾斜等,均会影响查找结果。涉及到的算子通常为:

1.4 线性变形匹配模板planar_deformable_model

        一般形状匹配模板是指模板在行列方向上可以进行适当的缩放。行列方向上可以分别独立的进行一个适当的缩放变形来匹配。主要参数有:

线性变形匹配又分为两种:

涉及到的算子有:

                创建和查找模板算子create_planar_uncalib_deformable_modelfind_planar_uncalib_deformable_model

先读入摄像机内参和外参 read_cam_parread_pose       创建和查找模板算子 create_planar_calib_deformable_modelfind_planar_calib_deformable_model

1.5 局部变形模板 

        是指在一张图上查找模板的时候,可以改变模板的尺寸,来查找图像上具有局部变形的模板。例如包装纸袋上图案查找。参数和线性变形额差不多

算子如下:

1.6 比例缩放末班匹配 

        是介于一般形状匹配和线性变形匹配之间的一种方法。它可以匹配放大或是缩小的模板,但是仅限于模板大小的缩放,即行列缩放因子一样。这也是它和线性缩放最大的不同。

涉及到的算子如下:

二、 Gray-Value-Based匹配

        基于灰度值的匹配是经典的方法,只有当内部的灰度值 对象没有变化,如果没有丢失的部分和没有杂乱。该方法可以在搜索图像中旋转的对象实例。请注意,对于几乎所有应用程序, !其他方法,例如,基于相关的匹配或基于形状的匹配之一方法,是首选。只有罕见情况,非常缓慢的基于经典灰度值的匹配是优选的,包括匹配必须是光照变化的情况。如果,例如一个 必须找到彩色图案,并且搜索图像中对象的色调值不得偏离,模板图像中对象的色调值,光照不变的方法可能更少合适,因为他们使用归一化的灰度值,即,他们评估灰度之间的相对差异 值而不是绝对值。

2.1 创建模板方法如下 

2.2 匹配搜索操作

2.3 模板调整操作 

三、Component-Based匹配

        基于组件的匹配是基于形状匹配的扩展。他可以看成多个形状模板,具有一定连接结构共同组成的模板。

        与基于形状的匹配一样,基于组件的匹配提取轮廓并将其形状,与预先创建的模型匹配。但与基于形状的匹配相反,组件模型由多个组件组成,这些组件可以改变它们的关系,即它们可以相对于彼此移动和旋转。这在创建模型时必须确定或指定可能的关系。然后,实际匹配返回找到的模型实例的各个关系。请注意,与基于形状的 匹配比较,对于基于组件的匹配,无法进行大小缩放。

        定位可以相对移动的组件的任务比 基于形状的匹配所需的过程更长。例如,不是单个 ROI,而是多个 ROI (包含初始组件)必须被选择或提取。此外,关系,即 必须确定模型组件之间可能的移动。概览,图 3.16 说明了基于组件的匹配所需的主要步骤。

参考流程图。

 关于更多信息可以专题说明。


3.1 操作列表

标签:匹配,变形,deformable,halcon,组件,model,模板
来源: https://blog.csdn.net/gongdiwudu/article/details/113756100