一种基于曲率与灰度复合的角点亚像素定位方法与流程

文档序号:12906840阅读:652来源:国知局
一种基于曲率与灰度复合的角点亚像素定位方法与流程

本发明涉及机器视觉精密测量技术研究领域,具体是指一种基于曲率与灰度复合的角点亚像素定位方法。



背景技术:

轴类工件是工业中极为常见也是非常重要的旋转类工件,其综合形状误差精度不仅直接影响机械的运动性能、使用寿命,而且对减少能源消耗和环境污染等有重要影响。在工业应用中,轴类工件误差测量,通常采用人工测量,其测量精度不高;三坐标测量仪、影像测量仪、圆度测量仪等高精度测量仪器成本高,对操作环境要求严格,无法满足大规模在线测量要求。而基于机器视觉的测量方法具有非接触、快速、精确、易于实现自动化等优点。其中由线阵相机和平行背光以及运动平台组成的测试系统具有通用性,多参数测量,高效率等优点,在工业测量应用中,越来越受到关注。

角点是指图像中边界曲线具有曲率极大值的点,在该点附近的灰度值会发生剧烈的变化。角点提取的算法主要分为四类:基于灰度图像的角点检测算法、基于二值图像的角点检测算法、基于边缘特征的角点检测算法以及支持向量机角点检测算法,其中基于灰度图像和基于边缘特征的角点检测方法应用最为广泛。上述角点提取方法的定位精度仅能达到像素级,很难满足实际工业测量需要,所以不断提高提取精度,成为该领域的热点,而亚像素技术的应用,是实现高精度测量的一种重要方法。目前常用的亚像素边缘检测方法,主要包括:基于插值的亚像素边缘检测、基于拟合的亚像素边缘检测和基于矩的亚像素边缘检测。

在工业现场中存在着很多影响图像质量的因素,例如轴类工件加工过程中产生的毛刺和油污等附着物,以及环境因素产生的图像噪声。基于以上干扰,如果直接提取原始图像的角点会得到许多伪角点,从而影响角点提取的可靠性。



技术实现要素:

本发明的目的是针对轮廓附着物对视觉测量中角点检测的干扰,设计一种能够可靠且精确提取感兴趣区域内的角点的方法,以此测量轴类工件的部分尺寸参数。

为达到此目的,本发明的技术方案如下:

一种基于曲率与灰度复合的角点亚像素定位方法,包括以下步骤:

a.对区域内图像进行预处理;

b.通过基于曲率特性的方法对所述图像进行候选角点的提取;

c.利用角点处曲率角的多尺度不变性和灰度信息对所述候选角点进行伪角点去除,得到待检测角点;

d.对所述待检测角点进行像素定位,得到角点。

进一步地,所述步骤b具体为:首先使用canny算子检测边缘,获得一个二值边缘图,并填补边缘轮廓间隙;然后在一个固定的低尺度下,计算每个轮廓的曲率,以保留真实角点,并以局部极大值点作为候选角点ai,曲率如下:

其中

进一步地,所述步骤c包括如下步骤:

c1.首先定义曲率角,轮廓集合为l,l={p1,p2,…,pn},其中pi=(xi,yi)是轮廓上各个点的像素坐标,在标轮廓上建立以轮廓点pi为中心,前后分别距离中心点pi为r的3个点所组成的集合,记作si={pi-r,pi,pi+r},则可采用集合si所确定的两条直线段pi-rpi和pipi+r来表示割线.这两条割线构成的向量方向角分别为:

则点pi处的曲率角:δθ(i)=θr+(i)-θr-(i),这里将r称为曲率角计算的尺度;

依次选择若干适宜的尺度r1,r2,…,计算候选角点ai在不同尺度下的曲率角设定当时,将ai标记为候选角点,可以依次得到尺度r1,r2,…所对应的候选角点集合dj,则当dj(j=1,2,…)中不同尺度下曲率角的偏差绝对值小于一定阈值的点标记为候选角点,存入集合d'中,其中,阈值m的设定主要依据真实角点和伪角点的曲率角差异;

c2.以第三步得到的角点坐标为圆心,分别以一个小半径r1和大半径r2作圆形窗口,通过计算圆内包含的轴类工件实体部分的面积与圆面积的比值来去除距离真实角点一定距离的伪角点,计算圆内包含的轴类工件实体部分的面积与圆面积的比值:

其中n表示图像的行数,m表示图像的列数,ii,j表示像素点的灰度值;

当δp=|p1-p2|>δt>且t1<p1<t2,t1<p2<t2时,则为伪角点,这里的δt的设定主要依据δp的大小和经验,由于当圆形窗口的半径足够大的时候,圆内包含的轴类工件实体部分的面积与圆面积的比值接近于0.5,所以t1一般取0.4~0.5,t2一般取0.5~0.6,。

c3.上述步骤之后,获得了最终的待检测角点,并考虑轮廓端点,如果轮廓端点不接近待检测角点,则标记为角点。

进一步地,所述步骤d包括如下步骤:

d1.通过步骤c得到的待检测角点坐标分别与轮廓的两个端点相连得到两条直线l1和l2;

d2.通过canny算子对原始图像进行边缘提取,以直线l1和l2为基准,分别计算边缘点到这两条直线的距离d1(i)和d2(i),通过分别比较d1(i)和d2(i)与阈值t对边缘点进行筛选,剔除大于阈值t的边缘点,保留小于阈值t的边缘点至点集d1和d2,由此得到了包含待检测角点且排除了各种噪声干扰的两条直线的点集;

d3.分别对点集d1和d2用最小二乘直线拟合得到两条直线l1和l2,最后得到两条直线的交点,即为角点。

本发明的有益效果:提供了一种精确、可靠地提取受附着物干扰的轴类工件检测图像中的角点的方法,并将其应用在轴类工件的尺寸测量上。对框选的图像感兴趣区域进行图像预处理,消除原始图像的孤立噪声点和毛刺,便于之后的候选角点提取;通过基于曲率特性的角点检测方法提取候选角点;利用角点处曲率角的多尺度不变性和以角点坐标为圆心的圆形窗口内工件实体部分的面积占比情况排除伪角点,最终得到待检测角点的像素级坐标,并考虑轮廓端点;连接角点与轮廓端点得到两条直线,以此为基准,对原始图像的边缘点进行筛选,得到关于待检测角点的两条直线的点集,用最小二乘直线拟合得到两条直线,最后得到两条直线的交点,即为角点。该角点检测方法解决了由于附着物干扰降低轴类工件角点检测的可靠性和精确度的问题,而且由于最终的角点定位是基于原始图像提取的边缘点,因此所得角点更接近真实角点,且精度达到亚像素级别。

附图说明

图1是本发明整体流程。

图2是曲率角的定义图

图3是灰度信息去除伪角点的流程。

图4是角点的亚像素定位的流程。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合具体实施例,并参照附图,对本发明作进一步详细说明。

本发明的目的是针对轮廓附着物对视觉测量中角点检测干扰的问题,设计一种能够可靠且精确提取感兴趣区域内角点的方法,流程分为四个部分:图像预处理、提取候选角点、去除伪角点、亚像素定位,如图1所示。

具体步骤为:

(1)对感兴趣图像区域进行预处理

(1.1)首先对图像进行形态学闭运算,消除工件加工过程中产生的毛刺边缘,并消除工件表面油污引起的部分伪边缘。

(1.2)然后用双边滤波有效地保边去噪,双边滤波输出为:

其中权重系数

(1.3)最后用高斯滤波器,对其边缘进行平滑,改善图像质量,高斯滤波输出为:

(2)提取候选角点

(2.1)首先使用canny算子进行边缘检测,获得一个二值边缘图,并填补边缘轮廓间隙;

(2.2)然后在一个固定的低尺度下,计算每个轮廓的曲率,以保留真实角点,并以局部极大值点作为候选角点ai,曲率如下:

其中

(3)去除伪角点

(3.1)利用角点处曲率角的多尺度不变性排除真实角点附近的伪角点。首先定义曲率角,如图2,轮廓集合为l,l={p1,p2,…,pn},其中pi=(xi,yi)是轮廓上各个点的像素坐标,在目标轮廓上建立以轮廓点pi为中心,前后分别距离中心点pi为r的3个点所组成的集合,记作si={pi-r,pi,pi+r},则可采用集合si所确定的两条直线段pi-rpi和pipi+r来表示割线.这两条割线构成的向量方向角分别为:

则点pi处的曲率角:δθ(i)=θr+(i)-θr-(i),这里将r称为曲率角计算的尺度。

依次选择若干适宜的尺度r1,r2,...,计算候选角点ai在不同尺度下的曲率角设定当时,将ai标记为候选角点,可以依次得到尺度r1,r2,…所对应的候选角点集合dj,则当dj(j=1,2,…)中不同尺度下曲率角的偏差绝对值小于一定阈值的点标记为候选角点,存入集合d'中,其中,阈值m的设定主要依据真实角点和伪角点的曲率角差异。

(3.2)利用以角点为圆心的圆形窗口内轴类工件实体的面积占比情况排除距离真实角点一定距离的伪角点。以上述得到的候选角点坐标为圆心,分别以一个小半径r1和大半径r2作圆形窗口,通过计算圆内包含的轴类工件实体部分的面积与圆面积的比值来去除距离真实角点一定距离的伪角点。计算圆内包含的轴类工件实体部分的面积与圆面积的比值:

其中n表示图像的行数,m表示图像的列数,ii,j表示像素点的灰度值。当δp=|p1-p2|>δt且t1<p1<t2,t1<p2<t2时,则为伪角点,这里的δt的设定主要依据δp的大小和经验,由于当圆形窗口的半径足够大的时候,圆内包含的轴类工件实体部分的面积与圆面积的比值接近于0.5,所以t1一般取0.4~0.5,t2一般取0.5~0.6,如图3。

(3.3)在上述步骤之后,获得了最终的待检测角点,并考虑轮廓端点,如果轮廓端点不接近待检测角点,则标记为角点。

(4)亚像素定位

(4.1)利用上述步骤得到的待检测角点坐标分别与轮廓的两个端点相连得到两条直线l1和l2;

(4.2)通过canny算子对原始图像进行边缘提取,以直线l1和l2为基准,分别计算边缘点到这两条直线的距离d1(i)和d2(i),通过分别比较d1(i)和d2(i)与阈值t对边缘点进行筛选,剔除大于阈值t的边缘点,保留小于阈值t的边缘点至点集d1和d2,由此得到了包含待检测角点且排除了各种噪声干扰的两条直线的点集;

(4.3)分别对点集d1和d2用最小二乘直线拟合得到两条直线l1和l2,最后得到两条直线的交点,即为角点,如图4。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1