图像处理|halcon模板匹配学习(一) Matching 初印象

什么是模板匹配呢?简单而言,就是在图像中寻找目标图像(模板),或者说,就是在图像中寻找与模板图像相似部分的一种图像处理技术。依赖于选择的方法不同,模板匹配可以处理各种情形下的变换,如照明、杂点、大小、位置以及旋转,甚至模版内部的相对移动。
模版匹配的鲁棒性和灵活性都很高,而且很多参数可以自适应生成,只有极少的参数需要配置。
在Halcon中,提供了各种不同的匹配方法。不同方法的选择依赖于图像数据以及要解决的任务。
匹配的流程

图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片


Acquire Images
对于训练和匹配,首先必须先有图像。
Create(Train) Model
为了生成一个模板,首先在训练图像中,必须指定包含模板的ROI区域。仅仅这些区域是重要的和稳定的,应该被用来训练。训练算子的输入是裁剪后的图像(可以使用reduce_domain完成)和控制参数。输出是模型句柄。模型将用来立即搜索图像。
Find Model
一旦创建好(或者读入)了模型,立即可以用于定位图像中的目标。
如果一个或者多个目标被发现,他们的姿势(位置position、旋转rotation、缩放scaling)或者
2D仿射变换矩阵和分数(score)被返回。这些值可以被作为下一步的处理。如对齐ROI。
Destroy Model
当我们不需要匹配模型时,你应该销毁它。比如,对于shape-based 匹配,可以使用
clear_shape_model来销毁。
各种匹配方法简介

匹配方法 使用范围
Gray Value-based Matching 要求照明不变的,内部灰度值和模板相同,应用极少
Correlation-based Matching 不变性体现在:散焦、轻微的形变,线性光源,可以很好地处理纹理。 ,仅仅可以处理灰度图像,不支持杂点、遮挡、缩放、非线性照明变换、以及多通道图像
shape-based Matching 可以处理杂点、遮挡、缩放、非线性照明变换、散焦以及轻微的变形,可以处理多通道图像,也可以一次处理多个模型。但是对于纹理支持不好 。
Component-based Matching 模板内部各个部分可以相对移动。可以处理杂点、遮挡、缩放、非线性照明变换,可以处理多通道图像,也可以一次处理多个模型。但是对于纹理支持不好,且不能支持散焦以及变形。
Local deformable Matching 可以返回模板样例的变形,可以处理杂点、遮挡、缩放、非线性照明变换、局部变形,可以处理多通道图像
Perspective deformable Matching 可以处理杂点、遮挡、缩放、非线性照明变换、散焦、透视形变,可以处理多通道图像,但是很难处理纹理 。
Descriptor-based Matching 可以处理杂点、遮挡、缩放、非线性照明变换、透视形变,但是不能处理纹理、散焦以及多通道图像。
需要说明的是Component-based Matching。
基于部分的匹配是基于形状匹配的加强版。原因在于它可以允许内部的各个部件
移动(旋转和平移)。比如我们常见的钳子。有两个分支组成。但是分支可开可合。这时使用基于分支的匹配可以一次性处理这样一个组合物。否则可能得分开处理。
匹配方法的快速引导 如下的几幅图简单介绍了如何针对特殊的应用,选择合适的匹配方法。
图1,总结了比较粗糙地选择匹配的方法


图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图1

图2,介绍了几种形变

图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图2

图3,介绍了不同方法可以处理的形变

图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图3

图4,介绍了不同方法可以返回的参数信息


图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图4

图5,介绍了几种典型的目标外观变换


图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图5

图6,介绍了不同方法可以处理的目标外观变化


图像处理|halcon模板匹配学习(一) Matching 初印象
文章图片

图6




【图像处理|halcon模板匹配学习(一) Matching 初印象】

    推荐阅读