当前位置: 首页 > news >正文

Halcon找圆心

计算方法概述

在Halcon中对轮廓(XLD轮廓)的中心坐标进行计算,可借助以下若干方法达成:

通用方法:area_center_xld 算子

适用情形

适用于所有类型的XLD轮廓(包含不规则形状)。

核心代码

area_center_xld(Contours, Area, Row, Column, PointOrder)
  • Contours:所输入的XLD轮廓对象
  • Row/Column:输出的中心坐标(行/列坐标)
  • PointOrder:轮廓点的顺序('positive'表示逆时针,'negative'表示顺时针)

特定形状优化方法

圆形/圆弧轮廓中心

方法1

利用 smallest_circle_xld 计算最小外接圆的中心:

smallest_circle_xld(Contours, Row, Column, Radius)
方法2

使用 fit_circle_contour_xld 拟合圆:

fit_circle_contour_xld(Contours, 'algebraic', -1, 0, 0, 3, 2, Row, Column, Radius, StartPhi, EndPhi, PointOrder)

实例代码

* 读取图像
read_image (Image, 'D:/halcon/找圆心/幫找圓.png')
gen_rectangle1 (ROI_0, 104.118, 92.9265, 449.814, 547.758)
reduce_domain (Image, ROI_0, Region)
edges_sub_pix (Region, Edges, 'lanser2', 0.5, 5, 60)
*方法一
area_center_xld (Edges, Area, Row, Column, PointOrder)
*方法二
* smallest_circle_xld (Edges, Row, Column, Radius)
*方法三
* fit_circle_contour_xld (Edges, 'algebraic', -1, 0, 0, 3, 2, Row, Column, Radius, StartPhi, EndPhi, PointOrder1)
*生成十字标记 
gen_cross_contour_xld(Cross, Row, Column, 20, 0)
dev_display(Image)
dev_display(Edges)
dev_display(Cross)
stop()

运行结果,如图:

结语:本文主要记录用halcon找圆心的几种方法,实例代码测试可用。

http://www.dtcms.com/a/92006.html

相关文章:

  • c++some
  • 如何为你的github开源项目选择合适的开源协议?
  • Go 1.24 新特性解析:泛型类型别名、弱指针与终结器改进
  • HTTP抓包Websocket抓包(Fiddler)
  • tar包部署rabbitMQ
  • 进阶版孟德尔随机化方法!遗传变异聚类+异质性检验,避免水平多效性带来的假阳性结果(PCMR)
  • C++ 命名空间
  • 【neo4j数据导出并在其他电脑导入】
  • SQL问题分析与诊断(8)——前提
  • 动态路由机制MoE专家库架构在多医疗AI专家协同会诊中的应用探析
  • 登山第二十一梯:点云补全——零样本、跨激光分布的“泥瓦匠”
  • 计算机二级(C语言)考试高频考点总汇(一)—— C语言通识、数据类型和运算符、位运算、进制转换、进制转换方法
  • LabVIEW柔性机械臂减振控制系统
  • LeetCode算法题(Go语言实现)_12
  • 今日行情明日机会——20250326
  • 微信小程序pdf预览
  • 基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
  • 华为OD机试A卷 - 快递业务站 计算快递主站点(C++ Java JavaScript Python )
  • 【图片识别Excel表格】批量将图片上的区域文字识别后保存为表格,基于WPF和阿里云的项目实战总结
  • Echarts使用
  • Chaos Mesh 混沌工程平台介绍、安装及使用指南
  • C++智能指针万字详细讲解(包含智能指针的模拟实现)
  • rANS:快速的渐进最优码
  • 【UTM】通用横轴墨卡托投影
  • WPF InkCanvas 控件详解
  • 树莓派超全系列文档--(7)RaspberryOS播放音频和视频
  • 等差数列公式推导
  • SynchronousQueue的不恰当使用,瞬时过载导致线程池任务被拒绝
  • 【hadoop】hadoop streaming
  • Vue3动态加载组件,警告:Vue received a Component than was made a reactive object