参照halcon中的create_shape_model_xld算子,自己写了一个基于几何图形创建模板的函数,目前只支持圆形和矩形,圆形需要指定半径,矩形需要指定长宽。与从图像创建模板不同,特征点不能在图像中直接提取得到,而是需要从上一层金字塔下采样得到,方法也很简单,直接选择偶数行列的特征点即可。
圆形模板创建及匹配
矩形模板创建及匹配
在实际应用中矩形会在行、列方向呈现不同的缩放尺度,圆形也会变成椭圆,所以需要将行方向和列方向的缩放尺度单独求出来,这也是halcon中的find_aniso_shape_model算子,俗称各向异性模板匹配,实现起来也不难,在find_scaled_shape_model的基础上改一下,执行效果如下。