模板匹配与定位配准通常是相辅相成的。
通常来说,如果不考虑180°的翻转,源和目标各有“一个点,一个倾斜角度”就可以用于定位配准。
图像配准:通常指定一幅图像为参考图像,另一幅图像为待配准图像,配准的目的是通过某种几何变换使待配准图像与参考图像的坐标达到一致。
从算子vector_angle_to_rigid的签名就能清晰看出这一点:
vector_angle_to_rigid( : : Row1, Column1, Angle1, Row2, Column2, Angle2 : HomMat2D)
它只需要输入“源”的定位点坐标、倾斜角度,以及“目标”的定位点坐标、倾斜角度,它就能生成一个仿射变换矩阵用于配准。
因此常见的定位方式有:
① 两点定位
② 点线定位
③ 模板匹配
两点定位案例图:
点线定位案例图:
模板匹配定位案例图:
一般的配准思路:
假如要将左侧的二维码精准地贴入右侧的“条码粘贴槽”中,其算法思路如下。
① 拟合抓取二维码的四条边线,这四条边线相交会有4个角点;
② 将对角线的两个角点连起来,这两条连线会有一个交点,这个点定义为该图形的中心点;
③ 用类似的方法求得“条码粘贴槽”的中心点坐标;
④ 通过直线拟合的方式分别求二维码和“条码粘贴槽”的倾斜角度;
⑤ 根据得到的两个点坐标和两个倾斜角,完成配准工作。
定位的典型应用:
常见的模板匹配方法:
① 基于形状(轮廓特征匹配)
② 基于互相关(基于灰度,NCC)
拓展阅读:
《探究算子find_shape_model中参数MaxOverlap的准确意思》
https://www.cnblogs.com/xh6300/p/6366694.html