halcon轮廓擦除_Halcon中轮廓分割segment

本文详细介绍了Halcon中的轮廓分割算子segment_contours_xld,该算子用于将轮廓分为直线段、圆(或圆弧)、椭圆弧。通过设置不同参数,可以实现灵活的轮廓处理。示例代码展示了如何使用该算子并结合fit_line_contour_xld和fit_circle_contour_xld进行轮廓拟合。
摘要由CSDN通过智能技术生成

在用Halcon进行图像处理的过程中,经常需要对提取出的轮廓进行分割,将轮廓分为直线段、圆(或圆弧)、椭圆弧不同的段,轮廓分割最常用的算子是segment_contours_xld。

segment_contours_xld——Segment XLD contours into line segments and

circular or elliptic arcs(将一个XLD轮廓分割为直线段、圆(圆弧)、椭圆弧。)

signature(语法):

参数说明:

Contours 需要进行分割的轮廓。

ContoursSplit 分割后的轮廓tuple。

Mode 分割轮廓的方式,可以选择'lines'(使用直线段分割), 'lines_circles'(使用直线段和圆(弧)分割),

'lines_ellipses'(使用直线段和椭圆弧分割)。

SmoothCont 轮廓平滑的参数,可以抑制在折线逼近过程中过短的线段,能更加鲁棒的逼近圆和椭圆。

MaxLineDist1

第一次用Ramer算法(即用直线段递进逼近轮廓)时的MaxLineDist,在逼近完成之后,再用圆弧或椭圆弧对相邻分割线段进行拟合,如果拟合圆弧到轮廓的距离小于逼近线段到轮廓的距离,就用圆弧替代逼近线段,这个过程一致迭代直到所有的线段拟合完毕。

MaxLineDist2 第二次逼近轮廓时的MaxLineDist,只有当MaxLineDist2

这种两步逼近算法效率较高,因为在第一次逼近过程中,递进逼近的直线段较少,因此较大直径的圆弧能够被高效的分割出来。在第二次逼近过程中,能够被小直径圆弧逼近的轮廓被找到&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值