椭圆查找模块用于在图像指定区域中查找符合特定要求的椭圆形轮廓,并输出椭圆信息,包括椭圆是否存在、椭圆中心点、椭圆长半轴和短半轴、拟合误差等。
本节内容包含:
该模块的算法工作流程可分为如下两个主要步骤:
算法在椭圆环形状的ROI内,基于该ROI内置的卡尺提取边缘点。
如下左图中两个深蓝色椭圆构成的椭圆环由该矩形ROI(蓝色矩形)生成
卡尺的具体工作原理,请参见卡尺工具工作原理。
椭圆环ROI |
提取到的边缘点 |
---|---|
![]() |
![]() |
算法将提取到的边缘点拟合为椭圆。
椭圆查找模块一次仅能查找单个椭圆。如需查找多个椭圆,建议配合Group模块的循环功能使用。
在流程中,椭圆查找的:
前序模块通常为图像源。图像源为椭圆查找提供图像输入。
后序模块可为逻辑工具模块(如脚本和数据集合);也可为其他模块,如测量模块中的点点测量、点圆测量、点线测量等。椭圆查找为后序模块提供定位到的圆信息。
在流程中调用椭圆查找模块后,该模块的主要配置步骤如下:
执行一次流程,使图像源将图像数据输出至椭圆查找。
在基本参数页签单击,并将光标移动至图像区域绘制ROI。
绘制的矩形ROI的四边需接近目标椭圆的四个顶点(但需避免与椭圆相切),以确保定位精度。
根据实际情况调整ROI参数。
根据业务需求配置下文参数配置中提及的边缘极性、卡尺数量、滤波尺寸等运行参数。
以下仅介绍该模块的运行参数详情。通过配置运行参数,可定义当前模块如何处理输入的数据。
参数 |
描述 |
|
---|---|---|
缩放范围 |
内缩放系数 |
根据用户设置的ROI区域生成椭圆环,椭圆环内椭圆的长短轴与ROI宽高之间的比例关系。 |
外缩放系数 |
根据用户设置的ROI区域生成椭圆环,椭圆环外椭圆的长短轴与ROI宽高之间的比例关系。 |
|
边缘类型 |
最强 |
只提取扫描范围内梯度最大的边缘点集合并拟合成椭圆。 |
最后一条 |
只提取扫描范围内与椭圆圆心距离最大的边缘点集合并拟合成椭圆。 |
|
第一条 |
只提取扫描范围内与椭圆圆心距离最小的边缘点集合并拟合成椭圆。 |
|
边缘极性 |
黑到白 |
从椭圆圆心向外看,灰度值低的区域过渡到灰度值高的区域的边缘,极性为黑到白。 |
白到黑 |
从椭圆圆心向外看,灰度值高的区域过渡到灰度值低的区域的边缘,极性为白到黑。 |
|
任意 |
上述两种边缘均被检测。 |
|
卡尺数量 |
用于查找边缘点的ROI的数量,下图中的绿色“+”字形即卡尺。 ![]() |
|
滤波尺寸 |
用于增强边缘和抑制噪声,最小值为1。当边缘模糊或有噪声干扰时,增大该值有利于使得检测结果更加稳定,但如果边缘与边缘之间距离小于滤波尺寸时反而会影响边缘位置的精度甚至丢失边缘。 更多详情可参见圆查找模块运行参数中的滤波尺寸参数。 |
|
投影宽度 |
在ROI中环形分布若干个边缘点查找ROI,该值描述扫描边缘点查找ROI的区域宽度。在一定范围内增大该值可以获取更加稳定的边缘点。 |
|
误差容忍度 |
在进行椭圆拟合时会计算每个参与拟合的边缘点的拟合误差,该参数值越小时,拟合时删除掉的边缘点越多,拟合结果更加准确,但该值设置的过于小时,有可能造成过拟合。 |
该模块输出结果中各项参数详情,请参见椭圆查找模块的输出结果。