问题简介
在对物料进行模板匹配时,往往是去匹配物料最突出的部分。然后在根据匹配到的位置。再去找我们需要测量或者检测部分。那么,这里就涉及到一个问题。该如何根据我们模板匹配到的特定位置,计算偏差值,并进行一些测量工具(卡尺,ROI)的跟随移动。
获取相对位置
此处,我们以卡尺拟合直线为例子。
首先,在标准图像下。我们需要进行一次模板匹配得到匹配位置的坐标信息。
然后,使用卡尺工具去拟合直线,得到对应物料边的起始坐标和终点坐标(要注意卡尺的卡点方向和直线方向的关系,不然可能卡不到点)。
计算相对位置坐标,首先我们利用模板匹配得到的坐标和角度信息,生成一个仿射矩阵。该仿射矩阵对应了当前模板匹配得到的坐标和角度的逆变换(-row,-column,-phi)。我们对卡尺拟合所得到的直线起点和终点使用这个仿射矩阵进行变换,即可得到起点和终点相对于模板匹配得到的位置的相对坐标。
自动跟随
读取一张新的图像,在此进行模板匹配。
此时,我们能够得到匹配位置的坐标信息。我们根据这个坐标信息,生成一个正向的仿射变换矩阵。然后对前面得到的相对位置使用个仿射矩阵进行仿射变换,即可得到对应的位置信息,从而实现自动跟随。
这里的线,并不是我们画的,而是通过前面的思路,进行仿射变换自动生成的。