Halcon set_shape_model_origin 使用以及模板原点设定

1.set_shape_model_origin 作用

用来给已经创建的模板设定原点。模板在创建以后默认的原点为创建图Region 的 重心。这里得重点说下原点是区域的重心 ,如果区域是单个的矩形,那么原点就是矩形的中心点。但是如果创建模板的区域不是一个正常的矩形,比如矩形内部有空洞(掩膜区域),则此时这个区域的重心就不是,这个矩形的中心点了,略有偏移。计算矩形重心的函数用AreaCenter,不能用顶点坐标直接计算。

2.重新设定原点到任意点

那么 如何将模板原点设定到我们想要的的特定点呢。
现在直接说结论,后面解释
调用函数 set_shape_model_origin(ModeID,Row-Rowm,Col-Colm)
其中Row,Col 就是想要设定的原点坐标,就是你想把原点设定的位置
Rowm Colm为模板区域重心,为了保证正确,重心必须是AreaCenter 计算得出。
可以这样理解:模板创建以后,初始原点 就是 Rowm Colm。(Row-Rowm,Col-Colm) 可以看成(-Rowm+Row,-Colm+Col),
初始原点(Rowm,Colm) 经历 2次平移 移动到点(Row,Col)
移动流程如下图。

暂无评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注