halcon之共线连接union_collinear_contours_xld

本文介绍了一个用于处理断裂但共线的轮廓线的算法——union_collinear_contours_xld。该算法能够有效地将断裂的轮廓线合并成连续的整体,提高边缘检测的准确性。文章详细解释了该算法的工作原理及其参数设置,并提供了实际应用案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

union_collinear_contours_xld

很多时候当我们用 edges_sub_pixthreshold_sub_pix  等算子得到边缘后,因为有噪声、物体本身断裂等原因 很多边缘是共线但是断裂的
如下图所示,提取键盘的网格,左图有很多共线线段,右图为共线连接后的结果

更详细信息可查阅自带例程: measure_grid.hdev


一个更直观的例子提取网格,左图因为网格有交叉点通过 edges_sub_pix得到是断裂的网格线,右图为 union_collinear_contours_xld的结果



union_collinear_contours_xld参数详解:

MaxDistAbs:   沿参考回归线方向轮廓端点的最大距离。等于 临近的端点在第一条回归线上的投影距离。



MaxDistRel:轮廓端点距离相对于沿参考回归线方向相对于被延长的轮廓的长度的值



MaxShift:轮廓到参考回归线的最大距离(垂直距离),这个参数决定,即使两个轮廓处于平行,也会合并


MaxAngle: 两个轮廓的最大角度差,弧度制


Mode:  比如,edges_sub_pix附着于每个轮廓点一些属性:角度、边缘方向等可参考 get_contour_attrib_xld。
选择默认值'attr_keep',所有的属性都会考虑, 如果输入轮廓过多,可能就会影响性能,尤其是接下来用不到这些属性。这时,使用'attr_forget'比较好。

NOTCE: 共线轮廓不能和其它轮廓有较大重叠度。最大重叠度为0.5像素。
如果想要合并重叠轮廓就用Unoin_collinear_contours_ext_xld,这是本算子的一个扩展算子。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值