Halcon轮廓的分割,合并及圆&矩形&线拟合

变换

平滑轮廓:smooth_contours

算子:smooth_contours_xld(Contours : SmoothedContours : NumRegrPoints : )

示例:smooth_contours_xld (Border, SmoothedContours, 11)

Border(输入对象):输入轮廓对象

SmoothedContours(输出对象):输出平滑后的轮廓

11(输入控制参数):数值越大越平滑

形状变换:shape_trans_xld

算子:shape_trans_xld(XLD : XLDTrans : Type : )

示例:shape_trans_xld (ContCircle, XLDTrans, 'rectangle1')

ContCircle(输入对象):输入轮廓对象

XLDTrans(输出对象):输出变形后的轮廓

'rectangle1'(输入控制参数):输入需要变形的类型

注意:区域圆变形为椭圆 结果还是圆 轮廓圆变形为椭圆 结果是点

封闭轮廓:close_contours_xld

算子:close_contours_xld(Contours : ClosedContours : : )

示例:close_contours_xld (Contours, ClosedContours)

Contours(输入对象):输入轮廓对象

ClosedContours(输出对象):输出封闭后的轮廓对象

对轮廓排序:sort_contours_xld

算子:sort_contours_xld(Contours : SortedContours : SortMode, Order, RowOrCol : )

示例:sort_contours_xld (ContoursSplit, SortedContours, 'upper_left', 'true', 'column')

ContoursSplit(输入对象):输入包含多个轮廓的对象

SortedContours(输出对象):输出排序轮廓对象

'upper_left'(输入控制参数1):排序方法

'true'(输入控制参数2):升序true或者是降序false

'column'(输入控制参数3):按照行或者列排序

     分割

      按直线和圆弧的特性分割轮廓:segment_contours_xld

算子:segment_contours_xld(Contours : ContoursSplit : Mode, SmoothCont, MaxLineDist1, MaxLineDist2 : )

示例:segment_contours_xld (Contours1, ContoursSplit, 'lines_circles', 5, 4, 2)

Contours1(输入对象):输入轮廓对象

ContoursSplit(输出对象):输出分割后的对象

'lines_circles'(输入控制参数1):输入分割类型

5(输入控制参数2):控制轮廓分割的细节 数值越大 分割的线段越多

4(输入控制参数3):与轮廓拟合参数一 参数越大有角度的轮廓合并的越多

2(输入控制参数4):与轮廓拟合参数二 对参数三进行补充

合并

合并端点临近的轮廓:union_adjacent_contours_xld

算子:union_adjacent_contours_xld(Contours : UnionContours : MaxDistAbs, MaxDistRel, Mode : )

示例:union_adjacent_contours_xld (ContoursSplit, UnionContours, 10, 1, 'attr_keep')

ContoursSplit(输入对象):输入轮廓对象

UnionContours(输出对象):输出合并的轮廓对象

10(输入控制参数1):两个轮廓端点间的最小距离控制参数

1(输入控制参数2):两个轮廓端点间的最小距离与最长轮廓长度的比值控制参数

'attr_keep'(输入控制参数3):定义轮廓属性处理的模式,即,是否保留或丢弃轮廓属性(默认)

合并位于同一条直线上的轮廓:union_collinear_contours_xld

       资料扩展:https://blog.csdn.net/qq_18620653/article/details/105518295

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值