[Halcon&几何] 线段中点、端点和角度的计算

1. xld线段中点

 area_center_points_xld (Line4, Area, Row, Column)

2. xld线段端点

 *xld转region
 gen_region_contour_xld (LineContours, RegionLines, 'filled')
 *提取区域轮骨
 skeleton (RegionLines, Skeleton)
 *获取轮骨端点
 junctions_skeleton (RegionLines, EndPoints, JuncPoints)
 get_region_points (EndPoints, Rows1, Columns1)

3. xld线段角度

法一:可将xld转成区域,然后求区域的方向

 gen_region_contour_xld (LineContours, RegionLines, 'filled')
 orientation_region (RegionLines, Phi)

法二:直接求xld轮廓方向

 orientation_xld(XLD : : : Phi)

法三:通过求椭圆长半轴、短半轴的方式求xld轮廓(精度较高,但是方向有时会找不准

 elliptic_axis_points_xld(XLD : : : Ra, Rb, Phi)

法三:通过线段两端点的反正切来求角度(方向准确,精度较高,始终以X轴正方向为起始方向,推荐

 offsetX := RightDownColumn - LeftUpColumn
 offsetY := RightDownRow - LeftUpRow
 tuple_atan2 (offsetY, offsetX, angel)
 tuple_deg (angel, angelDeg)
 *线段与X轴正方向的夹角
 m_rotate := 180 - angelDeg

注:直线起始端点(Rows[0],Columns[0]),末尾端点(Rows[1],Columns[1])


戳戳小手帮忙点个免费的赞和关注吧,嘿嘿。
  • 14
    点赞
  • 79
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

丶布布

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值