表面边缘拟合圆
基本概念
卡尺、圆形路径、边缘点
根据设置的特征区域,步骤会生成一个以该区域的长度(或宽度)为直径、中心为圆心的圆形路径(circular path)。在此圆形路径上,等间距放置若干卡尺(caliper),卡尺向心排列,且每个卡尺的中心都位于圆形路径上。在每个卡尺中,根据设置的间距沿卡尺长度方向提取轮廓线,并从每条轮廓线上检测出符合要求的点作为边缘点(edge point)。最后,使用这些边缘点来拟合一个圆。
如图所示,卡尺内边缘处的黄褐色点即为边缘点,亮黄色的线即为拟合圆的半径。 |
综上,使用此步骤时需要掌握的基本概念如下:
-
卡尺
卡尺需等间距放置在圆形路径上。在每个卡尺内,沿卡尺长度方向按设置的间距提取出若干轮廓线(不显示)。
-
圆形路径
以特征区域的长度或宽度(长度等于宽度)为直径、特征区域中心为圆心的圆,用于确定卡尺的位置。
若未设置特征区域,圆形路径的直径将等于图像包围框的短边,圆心位于包围框的中心。 -
边缘点
从每个卡尺中的轮廓线上检测出符合参数要求的点,用于拟合圆。
使用流程
该步骤的使用流程如下图所示。
-
选择输入数据。在工程编辑区连接对应的步骤端口,或者在参数设置区的输入栏下选择对应的输入数据。
-
设置特征区域,然后设置其他通用参数。
-
根据选择的边缘检测模式,设置阶跃类或角点类边缘相关参数。
-
在输出栏中勾选输出项,并单击输出项左侧的 ▶ 展开该项,输入合格范围的最小值和最大值。
参数说明
通用参数
参数 | 解释 | ||
---|---|---|---|
使用强度图 |
当目标检测区域较平整且颜色差异明显时,可使用强度图来检测边缘。 勾选此选项后,步骤将使用强度图数据来检测圆形边缘并拟合圆;不勾选时,步骤默认使用深度图数据。 |
||
使用特征区域 |
不勾选时,使用整个表面数据检测圆形边缘并拟合圆;勾选时,则仅使用特征区域内的数据进行检测和拟合。 查看特征区域说明了解如何调整特征区域。 |
||
使用掩膜 |
勾选该选项后,可设置1~4个掩膜区域来遮挡部分数据。掩膜区域内的数据不参与圆形边缘检测和拟合。 |
||
起始角度 |
通过角度设置卡尺放置的初始位置,剩余卡尺将按相关设置逆时针均匀放置。 卡尺间隔角度 = 角度范围 ÷ 卡尺数量。设置好起始角度后,在偏离起始角度半个间隔角度处放置第一个卡尺,然后按照间隔依次逆时针放置剩余卡尺。 |
||
角度范围 |
需要放置指定数量卡尺的角度范围。
|
||
卡尺数量 |
需要均匀放置在圆形路径上的卡尺数量。 |
||
卡尺长度 |
卡尺的长度方向与其中心点处圆形路径的切线垂直。 |
||
卡尺宽度 |
卡尺的宽度方向与其中心点处圆形路径的切线平行。 |
||
搜索方向 |
检测边缘点的方向。在卡尺内,步骤将沿搜索方向提取轮廓线以检测边缘点。 值列表:由内向外、由外向内 |
||
拟合圆方法 |
拟合圆的方法,可用于计算和评估拟合圆的圆度。
|
||
离群点百分比 |
拟合过程中要剔除的离群点的比例。 仅当“拟合圆方法”为最小二乘圆时可见。 |
||
轮廓线间距 |
卡尺内相邻轮廓线之间的距离。当设置的间距小于单个像素的宽度时,步骤将使用单个像素宽度作为轮廓线间距。
|
||
平均轮廓线宽度 |
在垂直轮廓线方向上计算数据点均值的窗口大小,用于获取更平滑的轮廓线,减少噪点的影响。当参数值设置为0时,表示不对轮廓线进行平均处理。
|
||
边缘检测模式 |
|||
显示细节 |
勾选此参数后,可以在可视化窗口中看到卡尺及圆形路径。 |
阶跃类边缘相关参数
边缘检测模式设置为阶跃时,需设置以下参数。
参数 | 解释 | ||
---|---|---|---|
轮廓线平滑窗口大小 |
在沿轮廓线方向上对每条轮廓线进行平均处理时的窗口大小。平均处理后,轮廓线会更平滑。当参数值设置为0时,表示不在搜索方向上对轮廓线进行平均处理。 |
||
空缺填充阈值 |
轮廓线上的数据点可能因遮挡而出现空缺。当轮廓线上的空缺小于或等于设置的阈值时,使用空缺低侧最近的有效点填充该空缺;当空缺大于设置的阈值时,保持空缺为无效点。
|
||
包含无效点 |
该参数用于选择是否要在边缘检测过程中包含无效点(无效点为不包含深度或强度信息的点)。勾选后,需设置无效点深度填充值。
|
||
无效点深度填充值 |
用于填充无效点的深度值。 仅勾选包含无效点后需要设置。 |
||
无效点强度填充值 |
用于填充无效点的强度值。 仅在同时勾选使用强度图、包含无效点后需要设置。 |
||
阶跃宽度 |
轮廓线上发生阶跃的宽度。当边缘为斜坡状时,合理设置此参数有助于准确测量阶跃高度和定位边缘的位置。
|
||
阶跃方向 |
以搜索方向为基准,选择目标边缘处的阶跃方向。 值列表:上升、下降、上升或下降 |
||
阶跃类型 |
设置需要从每条轮廓线上选取的阶跃类型。 值列表:最优、首个、最后一个 |
||
绝对阈值 |
轮廓线上发生阶跃时高度变化的最小值,满足此值才可以得到边缘点。 当勾选使用强度图参数时,此参数表示轮廓线上发生阶跃时强度变化的最小值。 |
||
使用相对阈值 |
使用此参数确定发生阶跃时高度(或强度)变化不少于轮廓线上最大变化量的百分之几,才可认定该阶跃有效。勾选后,需设置相对阈值。
|
||
相对阈值 |
仅在勾选了使用相对阈值后可见。 |
输出说明
勾选输出项后,步骤将增加对应的输出端口,步骤运行后将输出对应的数据。可根据实际测量需求选择对应的输出项。
如果输出项可展开(左侧有 ▶),则勾选后必须展开,然后设置最小值和最大值来确定该项的合格范围。如果输出的值在合格范围内,该测量项被判定为合格(OK),否则被判定为不合格(NG)。 |
输出项 | 说明 |
---|---|
圆心X |
拟合圆的圆心X值。 |
圆心Y |
拟合圆的圆心Y值。 |
半径 |
拟合圆的半径。 |
圆度 |
拟合圆与理想圆的接近程度。值越小,表示越接近,拟合的圆越准确。 |
最小误差 |
距离拟合圆最远的圆内边缘点对应的误差值,数值为负。 |
最大误差 |
距离拟合圆最远的圆外边缘点对应的误差值,数值为正。 |
圆心 |
拟合圆的圆心。 |
拟合圆 |
圆形边缘拟合圆。 |
最小误差点 |
最小误差对应的点。 |
最大误差点 |
最大误差对应的点。 |
错误排查
|
CV-W3402
错误:“轮廓线平滑窗口大小”参数设置无效。
可能原因:
-
参数值小于0,或大于图像的长边。
-
参数值大于卡尺长度。
解决方案:
-
确保参数值大于或等于0,且小于图像的长边。
-
确保参数值小于卡尺长度。
CV-W3403
错误:“阶跃宽度”参数设置无效。
可能原因:
-
参数值小于0,或大于图像的长边。
-
参数值大于卡尺长度。
解决方案:
-
确保参数值大于或等于0,且小于图像的长边。
-
确保参数值小于卡尺长度。