亚像素算法

2024-09-29

亚像素算法(精选7篇)

亚像素算法 篇1

0引言

Rafael C.Gonzalez和Richmard E.Woods认为,边缘是具有以某种意义的方式测量灰度级跃变的能力。通常在不含有噪声的情况下,边缘分可为阶跃型、斜坡型、线型和屋顶型等。传统的边缘检测只精确到像素级别,为了能够更准确的定位边缘位置,国内外专家学者在亚像素边缘检测算法方面进行了很多的研究。亚像素边缘检测原理是根据边缘邻域内灰度或者梯度分布来精确定位边缘,中心极限定理描述在图像边缘的垂直方向上的梯度边缘呈高斯分布,高斯曲线的最大值对应的点即灰度边缘变化最大处对应的点, 为亚像素边缘点。

亚像素级边缘检测的方法主要分为插值方法、拟合方法和矩方法三类。其中, 插值方法一直都是数字图像处理当中最基本的方法,如李云山等人采用的三次正交多项式插值方法以及基于径向基函数的(Multi-Quadric,MQ)插值方法。拟合方法具有较好的抗干扰能力,但它需要获得较多的拟合点才能对边缘进行准确的拟合,而且正确的建立边缘模型也是影响定位精度的因素之一,这类方法如基于高斯拟合的亚像素边缘检测算法等。在高斯曲线拟合的理论基础之上,文章采用估算密度函数的方法检测亚像素边缘,该方法能够很好的检测出亚像素边缘点。矩方法的运算复杂度比较高,如Ghosal和Mehrotal采用的Zernike矩方法,矩方法比较复杂, 这里就不详细介绍。

1基于径向基函数插值的亚像素边缘检测算法

基于径向基函数插值的亚像素边缘检测算法的检测步骤如下:

Step1. 边缘检测。对图像进行像素边缘检测。

Step2. 找到垂线。找到某个像素级边缘点领域内的所有像素级边缘,拟合切线。根据切线找到过该像素点的垂线。

Step3. 插值点选择。将过垂线的像素点的灰度值作为插值灰度值fj,将该像素在垂线上的垂足到垂线的起点位置的距离作为插值位置点xj。

Step4. 插值运算。根据插值点为(xj fj) ,,寻找函数,c是引进的不定参数,当c取小于等于 (1/2n )。

Step5. 亚像素边缘点定位。根据插值函数(xf)计算灰度变化最大处的点,把该点作为最佳边缘位置,即亚像素边缘点。

2基于高斯曲线拟合的亚像素边缘检测算法

基于高斯曲线拟合的亚像素边缘检测算法的检测步骤如下:

Step1. 边缘检测。对图像进行像素边缘检测。

Step2. 找到垂线。找到某个像素级边缘点领域内的所有像素级边缘,拟合切线。根据切线找到过该像素点的垂线。

Step3. 拟合点选择。将过垂线的像素点的梯度幅值作为拟合值gj,将该像素在垂线上的垂足到垂线的起点位置的距离作为插值位置点xj。

Step3. 拟合运算。利用最小二乘法拟合出高斯曲线的参数。

Step4. 亚像素边缘点定位。找到高斯曲线的极大值对应的位置,即亚像素边缘点。

3基于密度函数估算的亚边缘检测算法

根据高斯曲线拟合亚像素边缘检测算法可以了解到,边缘梯度方向上的梯度幅值近似成高斯分布,高斯曲线的极值点对应的位置与高斯曲线分布的密度函数值为0.5时对应的位置是同一个位置,即为亚像素边缘点。

基于密度函数估算的亚边缘检测算法的检测步骤如下:

Step1. 边缘检测。对图像进行像素边缘检测。

Step2. 找到垂线。找到某个像素级边缘点领域内的所有像素级边缘,拟合切线。根据切线找到过该像素点的垂线,确定垂线的起点和终点。

Step3. 估算梯度幅值。从垂线起点到终点等间距分割垂线,将垂线分割成N个线段,判断分割点落在哪个像素内,分割点的梯度幅值可估算为该像素的梯度幅值。

Step4. 计算幅值密度。从起点到终点累加梯度幅值。

Step5. 亚像素边缘点定位。搜索梯度幅值密度在0.5处的线段,把该线段中点作为最终的亚像素边缘点。

4实验比较分析

如图1所示,实验采用大小为的椭圆图片。对椭圆图片从八个方向进行测试, 比较基于Canny算子的边缘检测算法、基于径向基函数插值的亚像素边缘检测算法、基于高斯曲线拟合的亚像素边缘检测算法、基于密度函数估算的亚边缘检测算法等四种算法的边缘定位的边缘位置。

灰度分布图是指在边缘垂直方向上的灰度分布,蓝色垂直实线表示Canny算子定位的边缘,红色垂直点线(两端为菱形)表示MQ插值法定位的边缘,绿色虚线(两端为圆)表示高斯曲线拟合法定位的边缘,青色垂直点划线(两端为五角星) 表示基于密度函数算法定位的边缘。边缘定位图是不同算法定位的边缘点,蓝色十字点表示Canny算子定位的边缘点,红色菱形点表示MQ插值法定位的边缘点,绿色圆点表示高斯曲线拟合法定位的边缘点,青色五角星点表示基于密度函数算法定位的边缘点。

5结论

由图1和表1,分析可以得到以下结论。MQ插值、高斯拟合以及密度函数法都能够得到亚像素边缘点,这几种算法都能够在一定程度上提高定位的精度。其中高斯拟合法的拟合速度较快,但该算法定位精度不稳定。MQ插值方法的精度比较高,但存在运算复杂度较高,运行速度较慢等缺点。密度函数法的定位精度和算法耗时与分割精度有关,分割越短定位精度越高但算法耗时越多,反之分割越长算法耗时约少但定位精度越低。

摘要:针对光学测量中传统边缘检测算法的定位精度低、对噪声敏感等缺点,文章主要比较基于径向基函数插值的亚像素边缘检测算法、基于高斯曲线拟合的亚像素边缘检测算法、基于密度函数估算的亚边缘检测算法等几种边缘检测算法的定位精度,实验分析这几种算法存在的优缺点。

关键词:光学测量,边缘检测,亚像素,密度函数

亚像素算法 篇2

变压器制作需要一种很重要的材料,就是黑片,黑片的平面几何参数的精确度是一个很重要的参数。黑片边缘的亚像素检测被广泛的应用到现代工业中,使用软件方法提高亚像素边缘定位的精度因为成本低而被广泛应用。目前插值法、拟合法、几何矩方法等方法是传统的检测方法,但是这些方法的精确度都比较低,本文提出的基于Sobel黑片图像亚像素边缘检测算法,通过利用Sobel算子细化单像素的边缘,然后结合原梯度图像进行方向插值,这样就能确定亚像素的黑片边缘,本算法边缘定位精度达到了1/90个像素[1]。

1 Sobel边缘检测算法原理和改进方法

1.1 Sobel边缘检测的传统算法

Sobel边缘检测的基本流程是,先利用Sobel算子算出水平梯度和垂直梯度,再把2个方向的梯度结合起来,最后通过应用门限处理方法判断图像边缘。具体算法流程如图1所示。

具体的算法是以图像的每个像素以检测像素点为中心,在x,y方向上分别使用不同的两个卷积核,例如:

设x,y是通过x,y方向卷积核算出的某个像素的卷积像素值,此时这个像素的边界强度q和方向η的计算公式是:

通过式(1)确定红外图像中的像素并进行阈值化处理,从而完成对被测目标的边缘提取[2]。

1.2 改进的Sobel边缘检测算法

在原算法上增加了两个对角线,例如:

检测结果的表达式为:

在梯度数值矩阵上乘以权值系数0.5就能得到梯度边缘图像。此图像不但抑制噪声比较好而且还能相对细化单像素边缘。

2 亚像素边缘确定

2.1 多项式插值原理

通过多项式插值理论可得到插值函数:

式(3)中xk表示插值点,yk表示离散函数值。

对边缘点(xi,yi),在梯度图像T(i-1,j)上取分别T(i-1,),T(i,j)和T(i+1,j)三个点,这三点的梯度幅值确定为函数值,以(xi-w),xi,(xi+w)三点为插值点(w是像素x方向的间距),代入式(3)就能得到亚像素边缘坐标[3]。

式(5)中h为像素y方向的间距。

2.2 多项式插值的改进

传统的多项式插值法因为只考虑x和y两个方向上进行插值计算,所以很难得到较为精确的边缘。本文通过使用S o b e l改进算法可以得到精确的边缘定位。对边缘点(xi,yi),在梯度图像T(i-1,j)上取分别T(i-1,),T(i,j)和T(i+1,j)三个点,这三点的梯度幅值确定为函数值,以(xi-w),xi,(xi+w)三点为插值点(w是像素x方向间距1/2),算法公式和传统的多项式插值法相同[4],但是增加了计算在交叉45°方向的公式:

式(6)和式(7)中r为原像素点和x方向成45°像素的间距的1/2,d为原像素点和y方向成45°像素的间距的1/2。

3 亚像素精度分析

通过使用方向插值误差减小了一半,x方向上的误差dx可以通过对式(4)进行微分计算得到:

根据式(4)中的限定项可得:

根据精确边缘梯度值不可能相等可得:

根据式(8)、式(9)和式(10)可得:

小于±1个灰度级是图像采集卡灰度级量化误差的范围,所以dx≤3/2×2/256=1/85.333,误差降低了一半,精度也大大提高[5]。

4 测试结果和结论

测试选用图像为156×157的黑片灰度图像。图2为黑片的最初拍摄图像,图3为用改进前算法提取的边缘图像,图4为加权值后的边缘图像,图5为细化后的边缘图像,图6为加阈值细化后的边缘图像。

测试结果表明,通过改进的Sobel算法提取边缘较不但细而且有很好抗噪性。表1和表2是通过两种插值算法取得的插值细化数据[6]。

通过对比表1和表2的数据,可以得出以下结论:1)在边缘插值的方向上有很大改进,2)精度上相对原插值算法也有很大提高。

5 结论

本算法充分利用方向模板确定梯度的方向,这样就大大减少了丢失边缘点方向信息的可能性。利用梯度图像加权值后设定阈值对图像边缘进行细化,不但能提高精度,而且能减小伪边缘。把有方向选择的多项式插值应用在亚像素插值中,不但提高了精度,而且降低了误差。

摘要:本文提出一种基于Sobel黑片图像亚像素边缘检测算法。算法对传统Sobel算法进行了改进,并且和多项式插值法的改进的算法相结合。单像素边缘是通过对边缘梯度图像加上合理的权值和阈值的方法得到的,亚像素边缘定位通过多项式插值计算得到。该算法因为检测精度高而广泛的应用于黑片的在线检测。

关键词:亚像素,Sobel,插值法,边缘检测

参考文献

[1]罗敏,王琰.一种黑片图像亚像素边缘检测方法[J].沈阳理工大学学报,2010,4(4):77-81.

[2]王吉林,姚励,赵力.基于改进的多项式插值亚像素法电缆护套材料厚度测量[J].电测与仪表,2009,46(12):25-32.

[3]李庆利,张少军,李忠富,等.一种基于多项式插值改进的亚像素细分算法[J].北京科技大学学报,2003,25(3):280-283.

[4]崔建军,詹世富,郑雄伟.一种改进的图像边缘检测算法[J].地球科学与环境学报,2008,30(3).

[5]薛丽霞,李涛,王佐成.自适应的形态学边缘检测算法[J].计算机工程,2010,36(23):214-216.

[6]付永庆,王咏胜.一种基于数学形态学的灰度图像边缘检测算法[J].哈尔滨工程大学学报,2005,26(5):685-687.

亚像素算法 篇3

加速度计是惯性导航系统中线加速度测量元件,由于结构原因,其零件装配十分困难,而零件装配的精度直接影响加速度计的性能。基于机器视觉的精密装配技术具有装配精度高、稳定性好等优点[1,2,3,4],远优于传统的手工装配方法。该技术通过采集、处理待装配零件的图像而获得其尺寸特征和位置,并以此来指导装配,其中,图像边缘检测是该技术中的基础和关键。

图像边缘处灰度值变化剧烈,传统边缘检测算子通过微分检测图像中的边缘,如Canny算子、Robert算子等[5,6],它们运算简单,但定位精度较差,难以满足对加速度计零件精密测量的需要。为提高测量精度同时兼顾系统成本,亚像素算法成为一个重要手段[7,8,9],在国内外已有许多研究。高斯拟合亚像素算法具有定位精度高、稳定性好等优点,传统高斯拟合亚像素算法先进行粗定位,将边缘定位到一个像素的精度,即像素级精度,然后利用边缘处局部像素点的灰度信息获得亚像素边缘位置。文献[7]将此算法应用于检测刀具等领域,这类应用的图像质量较好,对比度强,粗定位能够达到像素级精度,传统算法能较好地获得亚像素边缘位置。但处理的零件图像质量较差时,由于粗定位算法依赖图像质量且对噪声敏感,易产生伪边缘,粗定位往往达不到像素级精度,若直接使用传统算法,常常会出现因粗定位偏差而导致亚像素定位不正确的情况。文献[11]对传统算法进行了改进,根据粗定位边缘点的梯度方向来选择不同的拟合点进行高斯拟合,提高了边缘定位精度。文献[15]对算法处理后的亚像素边缘点进行曲率滤波,直接滤除了亚像素定位不正确的伪边缘点,但在一定程度上造成了图像边缘信息的丢失,仍未解决图像因粗定位不准而导致的亚像素定位不正确的问题。

本文提出的亚像素定位算法,继承了先前高斯拟合亚像素定位算法优点的同时,也克服了先前算法因粗定位偏差而导致亚像素定位不正确的缺点。算法通过在粗定位边缘点梯度方向滑动选取当前边缘点,根据当前边缘点选择合适的拟合点进行曲线拟合,修正粗定位误差,搜索离粗定位边缘点最近的亚像素边缘点位置。实验表明,改进算法具有更高的精度和实用性,更适用于加速度计零部件的边缘检测。

1 加速度计零部件的亚像素边缘检测

加速度计的零部件如图1所示。其中,零件的圆心位置是视觉装配中零件定位的重要参数。

加速度计零件具有精度高,表面特征多且特征相互交接等特点。在实际装配中直接使用先前的高斯拟合亚像素算法处理零件图像时会出现很多的伪边缘点。通过单步运行程序,逐个查看粗定位边缘点经算法处理后的拟合曲线,如图2所示。图中空心圆点为粗定位边缘点,P'点为拟合得到的亚像素边缘点。当粗定位边缘点达到像素级精度时,其拟合曲线的形状近似为高斯曲线,如图2(a)所示。由于实际加速度计零部件图像纹理复杂、对比度较差、含有噪声等,粗定位往往达不到像素级精度,拟合的曲线常常还会出现如图2(b)-(d)所示的不符合要求的二次曲线。由于粗定位不准,这些粗定位边缘点及其邻近点的拟合曲线并不符合图像边缘处灰度值变化规律。因此,先前算法在此情况下不仅得不到真正的亚像素边缘点,而且还会引入误差更大的伪边缘点。针对上述情况,本文通过在粗定位边缘点梯度方向滑动当前边缘点,动态选取拟合点进行曲线拟合,很好地解决了上述问题。

2 改进高斯拟合亚像素算法

本文的边缘定位算法主要由四部分组成:图像预处理、图像分割、粗边缘定位、亚像素级边缘定位。其中,粗定位采用canny算子,亚像素边缘定位采用本文算法,它分为两部分:拟合点的确定及其灰度差值的求取;滑动边缘点的高斯曲线拟合算法。

2.1 拟合点的确定及其灰度差值的求取

通过粗定位算子获取图像的边缘点集,设P0为粗定位边缘点集中的任意一点,以P0中心,沿着其梯度方向,两边各取6个邻近点,如图3所示,粗定位边缘点P0及其邻近点A-L为拟合点。任意两个相邻点之间的距离为l个像素[11],l与P0点的梯度方向有关。若P0点的梯度方向与水平线夹角θ小于45°,则任意两相邻点在X轴方向的距离为1个像素,即l=1/cos(θ)像素,否则,任意两相邻点在Y轴方向的距离为1个像素,即l=1/sin(θ)像素。

数字图像的像素可以看成正方形的小网格,每个正方形网格的中心表示整像素点,图3中拟合点A~L并非都是整像素点,因此需要对拟合点的灰度值进行灰度线性插值处理。设P0点的坐标为(x0,y0),若夹角θ小于45°,则A点的横坐标为x1=x0+1,求出A点最相近的两个整像素点的灰度值,即将图3中两个星号表示的像素的灰度值进行线性插值,得到A点的灰度值为:

其中,λ=y0-[y0],f(x1,y1)为A点的灰度值,[y0]为y0的整数部分。若夹角θ大于45°,则A点的纵坐标y1=y0+1,根据A点最相近的两个整像素点的灰度值进行线性插值,得到A点的灰度值为:

其中,λ=x0-[x0],f(x1,y1)为A点的灰度值,[x0]为x0的整数部分。

根据上述方法依次类推可以确定B-L点的灰度值。为减少误差和提高差分的严密性,本文用后向差分和前向差分的平均值作为拟合点的灰度差值。设f(x0,y0)为P0点的灰度值,f(x-1,y-1)为C点的灰度值,则P0点灰度差值计算为:

依次类推可以计算出图3中A、B、E、G、I的灰度差值为f1、f2、f3、f4、f5;C、D、F、H、J的灰度差值为f-1、f-2、f-3、f-4、f-5。

2.2 滑动边缘点的高斯曲线拟合算法

根据传统高斯拟合亚像素检测原理,图像边缘处灰度值变化呈高斯分布,一维高斯曲线的表达式为:

其中,μ为函数的均值,σ为标准差。

直接对式(4)拟合难度很大,为降低拟合难度,简化计算过程,对式(4)两边取对数,如下式[12]:

经对数变换后,式(5)为一个关于u的二次曲线,设二次曲线形式为:y*=Au2+Bu+C,可以通过拟合此二次曲线,求出它的顶点位置,就可以获得亚像素边缘点位置。根据方孔径采样定理,像素的灰度差值为:

取-5≤m≤5,m为整数,代入式(6),则图3中各拟合点的灰度差值为:

其中A、B、C为二次曲线中需要求解的参数。

设向量:

式(7)各式左边拟合点的灰度差值构成向量U:

式(7)各式右边常数构成系数矩阵V:

高斯拟合亚像素算法通常采用5点拟合二次曲线,由前面所述,在粗定位达不到像素级精度时,粗定位边缘点及其邻近四点的拟合曲线不能反映边缘处灰度值变化规律,得不到真正的亚像素边缘点。因此,当前边缘点需要在粗定位边缘点附近滑动,多次拟合曲线来修正粗定位误差。则实际每次参与拟合的点的灰度差值构成的向量设为Us,系数矩阵设为Vs:

其中,n表示当前边缘点滑动的次数,取值范围为[1,3],(-n)表示边缘点滑动方向与(+n)相反,V(4+n,:)表示取矩阵V中第4+n行元素,根据式(9),用最小二乘法计算可得:

由式(10)可以求得式(8)中A、B、C的值,设亚像素边缘点与粗定位边缘点的距离为ug,ug=-B/2A。对于粗定位边缘点P0(x0,y0),其对应的亚像素边缘点位置为:

3 滑动边缘点的高斯拟合亚像素算法实现

由上文可知,所有拟合点的灰度差值构成向量U,Us中含有滑动过程中实际参与的拟合点,矩阵Vs包含实际参与拟合点对应的系数矩阵。

拟合曲线中最高点P'与粗定位边缘点P0的距离为ug,设P'与当前边缘点的距离为ug1,根据图像边缘处灰度值变化表征为高斯分布,当前边缘点及其邻近四点的拟合结果若满足|ug1|<1个像素,拟合曲线开口向下,且拟合点满足Us(1)<Us(2),Us(1)<Us(3),Us(3)>Us(5),Us(4)>Us(5)条件,则参与拟合的当前边缘点就是像素级边缘点,P'就为亚像素边缘点。

首先以粗定位边缘点P0作为当前边缘点,即n=0,D、C、P0、A、B点参与拟合,运用MTLAB实现代码如下:

此时,当前边缘点就是粗定位边缘点,有ug1=ug,若拟合曲线满足上述条件,则拟合曲线服从高斯分布,且粗定位边缘点P0达到了像素级精度,边缘点滑动结束,实现效果如图4(a)所示,当前边缘点无需滑动就找到了亚像素边缘点P'。

若n=0时,拟合曲线不满足上述条件,如图4(b)曲线(1)所示。当前边缘点需要在粗定位边缘点附近进行滑动,n=1时,当前边缘点在粗定位边缘点梯度方向和反方向各滑动一次,即当前边缘点滑动到A点,C、P0、A、B、E点参与拟合和当前边缘点滑动到C点,F、D、C、P0、A点参与拟合。n的最大值为3,对于超过滑动范围仍未找到亚像素点的粗定位边缘点将视为伪边缘点丢弃。

MATLAB实现代码如下:

为提高精度,当前边缘点正反向滑动后再给ug赋值,程序中定义了两个标志,biaozhi1和biaozhi2,当两个标志同时为1时,可以选择离粗定位最近的顶点作为亚像素点。实现效果如图4(b)所示,当前边缘点向右滑动了一次进行拟合,如图4(b)中曲线(2);向左滑动了一次进行拟合,如图4(b)中曲线(3),明显曲线(2)符合上述条件,边缘点滑动结束。算法通过滑动当前边缘点重新拟合曲线,对粗定位误差进行了修正。

4 实验验证与分析

4.1 算法的有效性和精度实验

为验证本算法的精度,计算机生成理想圆图像对算法进行检验[13],图像大小为600×600像素,圆心位置(200,300)像素,半径100像素,如图5(a)所示。

为尽量模拟实际成像过程,对理想图像进行了滤波平滑,并加入噪声模拟现实环境等因素的影响,噪声为均值0,方差0.01的高斯噪声。实验中对理想圆分别用文献[11]中的高斯拟合亚像素定位算法与本文算法各运行50次,并绘制两种算法在X、Y轴的定位误差曲线。如图5(b)、(c)所示,本文改进算法在X、Y轴的定位精度都优于0.012个像素,文献[11]算法的定位精度明显偏大。仿真实验表明,本文改进算法具有更高的定位精度。

图像边缘粗定位依赖图像质量,影响粗定位的因素很多:噪声、对比度、边缘陡峭程度、宽度等[14]。很多因素都是主观的评价,无法确切定量的模拟,本文也无法一一验证,因此,本文只讨论在图像其他特征参数理想的情况下,噪声影响图像质量时本文改进算法的应用效果。

在图5(a)的理想图像中添加不同性噪比的高斯噪声,并分别用文献[11]算法与本文算法处理并比较,处理后如表1所示。噪声对图像边缘定位的影响是一个综合的过程,除了影响粗定位精度外,还影响其他方面,如图像边缘处灰度值变化等。因此,两种算法的定位精度总体上随图像信噪比的升高而升高,但与文献[11]算法相比,本文改进算法在不同性噪比的图像中定位偏差的变化量很小,定位精度基本稳定,算法通过滑动当前边缘点,能够修正因噪声引起的粗定位偏差。

4.2 加速度计零部件图像的定位测量实验

本文设计了一套视觉装配系统用于装配加速度计的零部件。系统采用500万Basler工业黑白CCD相机,分辨率为2050×2448像素,采用双远心镜头,双光源:蓝色环形光源,蓝色点光源,系统如图6所示。

将图1中的加速度计零件放于工作台上,并采集零件图像,如图7(a)所示,零件图像较复杂,含有多个凹槽、缺口等特征,多个特征相互交接,图像对比度也较差且伴有噪声。首先用文献[11]算法对零件进行处理,处理结果的局部放大如图7(b)所示。许多亚像素边缘点远偏离粗定位边缘点,产生了误差很大的伪边缘点,若按文献[15]的方法,将偏离超过一个像素的亚像素边缘点滤除,则会导致图像边缘信息的大量丢失。由于粗定位依赖图像质量,在较差的图像质量下粗定位达不到像素级精度,使用先前高斯拟合亚像素算法会产生较多的伪边缘点。

用本文算法对零件边缘进行亚像素检测,检测结果如图7(c)、(d)所示。(d)为(c)的局部放大,(d)中黑色实点为经过一次曲线拟合得到的亚像素边缘点,空心圆点表示经过多次滑动当前边缘点,修正粗定位误差后得到的亚像素边缘点。实际应用表明,改进算法能够修正粗定位不准而带来的亚像素定位误差,通过滑动当前边缘点在粗定位边缘点附近搜索亚像素边缘点位置,比先前算法更有实用性。

5 结语

本文针对视觉装配系统对加速度零件进行定位时,零件图像因粗定位不准而导致的亚像素定位不正确的问题,提出了一种改进的基于滑动边缘点的高斯拟合亚像素定位算法。算法通过在粗定位边缘点梯度方向前后滑动,选择基于不同当前边缘点的拟合点进行曲线拟合,搜索离粗定位边缘点最近的亚像素边缘点位置。实际应用和仿真实验表明,本算法能够修正粗定位误差导致的亚像素定位偏差,且与已有算法相比具有更高的精度与更好的实用性,更适用于加速度计零部件在视觉装配中的精确定位。

摘要:为满足机器视觉装配过程中对加速度计零部件的精确定位要求,提出一种改进的高斯拟合亚像素边缘定位算法。该算法首先在粗定位边缘点梯度方向选取一系列邻近点。然后以粗定位边缘点为当前边缘点,选取拟合点进行曲线拟合。最后,根据曲线拟合质量动态滑动当前边缘点,重新选取拟合点并进行曲线拟合,通过滑动当前边缘点来搜索亚像素边缘点位置。仿真实验表明,在处理经过平滑加噪后的理想圆时,其定位精度优于0.012个像素。实际应用与模拟实验表明,该算法能够修正图像因粗定位不准而带来的亚像素定位误差,获得离粗定位边缘点最近的亚像素边缘点位置。与先验算法相比,改进算法具有更高的精度和实用性。

亚像素算法 篇4

关键词:立体匹配,光栅编码,相位展开,极线约束

1 引言

双目视觉法是立体视觉测量中最常用的形式之一特别适用于制造业中的逆向工程,及工作现场的大型零件的在线测量,因此在现代工业中,尤其是在板料成形零件等自由曲面较多的航空航天和汽车制造行业、柔性物体测量以及/数字模型建模等领域得到越来越广泛的应用,被公认为是最有前途的工业测量方法之一。

目前三维测量技术按采集方法可以分为接触式和非接触式两大类。测量机理包括光、机、电、磁、声等。接触式的测量方式是基于力变形原理的触发式,最具代表的是三坐标测量机;非接触式的采集方法主要有立体视觉法、激光法、干涉法、图像分析法等,此外,还有采取破坏性测量的层析法等。与采用三坐标测量机进行逐点接触式测量的传统方法相比,曲面形体的三维轮廓非接触测量具有速度快、自动化程度高、不损伤被测物体表面、能测量大尺寸零件并能得到全场数据等优点,而且测量系统的硬件结构简单,因而受到广大使用者的青睐。本文介绍一种借助相位编码的技术与双目立体视觉技术相结合,显著提高测试的精度及速度,有着很强的使用价值。

2 基本原理简介

双目视觉法[1,2]的基本原理是以两台结构和性能完全相同的CCD摄像机从不同获取物体图像,通过空间物点在两幅图像中对应像点之间何位置关系来重构该物点的空间三维坐标。该方法测量实现高精度测量的一个关键前提是实现高精度立体匹配,以及获取的匹配点。即点的匹配方法和匹配点的获取方法。

立体匹配时双目视觉中最关键、最困难的环节。与普通的图像配准不同,立体像对之间的差异是由摄像时观察点的不同引起的,而不是由其它如景物本身的变化、运动所致。根据匹配基元的不同,立体匹配可分为区域匹配,特征匹配和相位匹配三大类。区域匹配算法的实质是利用局部窗口之间灰度信息的相关程度,它在变化平缓且细节丰富的地方可以达到较高的精度,但该算法的匹配窗大小难以选择,计算量大、速度慢;特征匹配算法不直接依赖于灰度,具有较强的抗干扰性,计算量小、速度快,但特征在图像中的稀疏性决定特征匹配只能得到稀疏的视差场,特征的提取和定位过程直接影响匹配结果的精确度;相位匹配是近二十年才发展起来的一类匹配算法。相位作为匹配基元,本身反映信号的结构信息,对图像的高频噪声有很好的抑制作用,适于并行处理,能获得亚像素级精度的致密视差。本文即是采用以相位为匹配基元的匹配算法。

2.1 极线法匹配

所谓极线法匹配[3],如图1所示为双目CCD空间示意图,称为极线几何。空间任意一点P与左右透视中心OL,OR构成一个平面,称为极线平面,极线平面与左右像面相交形成两条极线,,也互称共极线。对于交叉摆放的双目CCD,每一像面上的外极线都相交于一点EL,ER即极中心。由立体视觉理论可知,左右像面上任意一对对应点必然在它们相应的极线上。

2.2 空间编码技术

空间二进制编码[4,5]是利用一系列的黑白条纹投影将被测物空间分割成众多微小的区域,每个区域由一个二进制编码唯一确定。

合格的空间二进制编码要满足一定的条件。区域分割后,每个区域的编码必须是独立和唯一的,没有编码相同的区域。编码方案要满足采样定理,要受硬件设备分辨率的限制。按照采样定理,一般要求编码划分的最小区域的宽度和一个像素的视野比大于2。另外编码还要求满足相邻区域编码间的Hamming距离为1,这样才能使编码的误差最小。

3 实现方法

本文所采用的方法就是将以上两种技术相结合,由极线法提供一个极线约束,由空间编码技术提供另一约束,可直接求得图像中的唯一的确定点。正如前文所述,采用空间编码技术的关键在于完成归一化的空间编码,即在纵向(横向)方向的相位的必须保整其唯一性。具体方法如下。

3.1 相位编码的实现

为了获得连续分布的位相值,需要对计算出来的在0与2p之间的位相值进行位相展开。这种在0~2p之间或-p到p之间的位相值,也称之为被包络的位相值。造成位相被包络的原因是,正切函数从定义域到值域不是一一映射的,不同角度的正切值可能是一样的。这样反正切函数只能取主值,从而使位相被包络了。

从被包络的位相值得到真实位相值的过程称为位相展开。位相展开的依据是被测物理量在空间是连续的。如果物理量在空间不连续,则需采用其它方法,例如双频的引入等等。

位相展开有不同的方法,下面以一维位相展开为例,介绍位相展开的基本思想:

(1)计算出的位相分布如图2的(a)图所示,j(x,y)不连续;

(2)不连续之处,必存在一个Dj=2p的阶跃;

(3)若按照一定的判据,产生一个以2π为单位的位相补偿函数j0(x,y)(见(b)图),并按下式进行补偿:

就可得到图(c)所示的连续函数。从而精确计算出没一个点的相位ϕ(x,y)。

3.2 亚像素级匹配

在获得了上述两个约束条件后,由于二维图像中的点为整像素点,而由这两个约束所得到的点却不能确定其是否为整像素,本文所采用的方法是求解亚像素匹配。工作流程如图3所示。

4 实验与测试

基于结构光编码、解码及相位求解的双目CCD三维测量系统不但在理论上是可行的,而且在实际应用中已取得很好的效果。这种测量系统操作方便,可以对不同大小尺寸的物件进行测量,精度可以达到0.03mm,而且测量速度也较快。

试验器材:JAI公司CV-A50 CCD摄像机,2台;东芝公司的P8投影机。

测试图如下所示:

测量结果,在surfacer软件下显示结果如下所示:

如下表为测量2块标准量块的试验数据,标准量块是由哈尔滨量具刃具厂生产,通过国家检验部门认证的3等级标准量块。

5 结束语

总之,这种基于正弦光栅编码、解码、相位求解及极线约束相结合的方法实现了交叉摆放的双目CCD系统的立体精确匹配,这种方法已用于逆向工程中的物件测量,实验证明该测量方法测量误差小,测量时间短,匹配算法具有鲁棒性。

参考文献

[1]章毓晋.图像理解与计算机视觉[M].清华大学出版社,2000,8.

[2]P.F.LUO,S.S.LIOU.Measurement of cured sur-face by stereo vision and analysis[J].Optics and Laser in Engineering,1998,(30):471-486.

[3]张广军.机器视觉[M].科学出版社,2005.6.

[4]石智伟,洪嘉萍,林嘉杰,林桔桦.一种基于相移技术的三维轮廓检测方法[J].信息技术,2008,(1):35-37.

亚像素算法 篇5

光斑质心亚像素定位利用光斑在CCD芯片上具有一定的分布,占据数个像素单元,从而把光斑质心精确到亚像素[1,2,3]。

质心定位误差分析是光斑质心亚像素定位技术不可或缺的部分,国内外已有不少文献对这个问题进行了较详细的分析和讨论[4,5,6,7],但大都侧重于对其中某种误差的讨论,未对光斑质心亚像素定位误差进行比较全面的分析,尤其缺乏相应的测量方法。文献[5]、[6]分析了CCD噪声对光斑质心定位精度的影响;文献[7]分析了像元几何特性的影响;文献[4]提出了一种对CMOS相机亚像素细分精度测试的方法,但该方法需要价格昂贵的快速倾斜镜作为光束偏转控制器,测试成本较高。

本文根据误差的来源将光斑质心亚像素定位误差归类为随机误差和系统误差,提出一种简单有效的实验方法对光斑质心定位误差进行定量测试,并利用高精度一维电动平移台、POINTGREY Flea2-14S3CCD相机和LED光源构建了测试系统,对测试结果进行研究和讨论,计算了基于该CCD相机的光斑质心定位误差,为其在相关系统中的应用提供参考。

1 光斑质心定位算法及误差分析

质心法是计算光斑位置最常用的方法之一,它可以看成是以灰度为权值的加权形心法[8],表达式为

式中I(x,y)为信号强度。

CCD是以像素为单位的阵列图像传感器件,利用CCD确定成像在CCD像面上的光斑位置时,其定位误差主要有以下两方面的来源[9]:一个是因为像元的读出噪声、暗电流散粒噪声、光子散粒噪声、固定模式噪声和光谱响应不均匀性等产生的误差[5,6],由于噪声的随机性,这种误差是随机误差;另一个是图像传感器有限空间采样宽度带来的灰度平均效应以及像元填充率、填充形式带来的误差,这种误差由CCD像元填充形式和填充率等几何特性决定[7],可将其视为系统误差。

1.1 随机误差

光斑图像中像素(i,j)的测量信号Uij由真实信号Lij和噪声信号εij两部分组成,即Lij=Uij+εij,则由实测值估计的x方向的质心位置为[5,6]:

而无噪声真实信号的质心位置为

故噪声导致的x方向上的质心偏差为,相应的方差为σ2ˆx=〈δx2〉。噪声引入的误差σxˆ反映的是根据实测值计算出来的质心xˆ偏离真实信号的质心x′的大小,它一种随机误差,记为σr。通常可将同一位置的同一光斑多次拍摄采样求取的质心位置的标准差作为随机误差的大小,并将质心位置的平均值作为真实信号的质心位置。

1.2 系统误差

由于图像传感器有限空间采样宽度带来的灰度平均效应,以及像元填充形式、填充率等几何特性的影响,导致光斑无噪声真实信号质心x′与光斑的真实质心x0之间存在着偏差,这种偏差在光斑灰度分布和像元几何特性确定的条件下是固定不变的,自身具有一定的规律性,因而可将其视为一种系统误差,记为σs。

1.3 质心定位总体误差

质心定位总体误差σt指的是根据实测值计算得到的质心位置与光斑真实质心x0之间的偏差,因而由上述随机误差σr和系统误差σs两部分组成。二者来源不同,可认为是独立的,根据误差合成理论[10],光斑质心定位总体误差可表示为。

2 误差测试方案及实验系统组成

根据上述误差理论分析可知,随机误差σr可比较容易测量得到,一般通过对同一位置的同一光斑多次拍摄采样求取质心位置,再计算质心标准差即可。系统误差σs表征的是质心平均值与光斑真实质心间的偏差,而实际中光斑的真实质心位置是未知的。因此本文提出一种近似测量光斑真实质心位置的方法,具体如下:

利用一套高精度一维电动平移台,将LED光源固定其上,平移台可带动LED以精确至0.05μm的精度平移,用放置在数米外的CCD相机不断采集LED移动过程的图像。由于LED光源以固定步长平移,其在CCD像平面的光斑质心位置呈线性变化,对实测的质心位置进行直线拟合即可得到光斑真实质心位置。

根据上述方法构建了实验系统对LED光斑质心定位误差进行测试。实验系统主要由高精度一维电动平移台、CCD数字相机、计算机和LED光源组成,如图1所示。其中电动平移台为上海联谊公司的ALB-m-50-1X,该电动平移台行程50 mm,丝杆导程0.5 mm,电机50细分运行分辨率0.05μm;CCD数字相机为POINT GREY Flea2-14S3,该相机采用的是SONY公司生产的面阵CCD图像传感器Sony ICX2671/2″,像元尺寸4.65μm×4.65μm,分辨率1 392×1 032。

3 测试方法

对光斑质心定位误差进行测试的主要步骤如下:

1)将CCD相机架设在距离电动平移台数米的位置,使其正对电动平移台,与LED光源等高;

2)微调镜头焦距,使光斑清晰成像于像面,大小覆盖约10 pixels×10 pixels的范围。微调相机姿态,使光斑位于图像中心位置,且其平移方向大致与图像坐标系的x方向平行;

3)控制电动平移台以一定的步长平移。每平移一次拍摄20张光斑图像,求取光斑的质心位置,计算20次测量的平均值和标准差,标准差的大小即为随机误差σr。由贝塞耳公式,多次测量光斑质心的标准差为:;

4)连续平移100次,计算出每个位置的光斑质心坐标平均值。根据真实质心坐标线性变化的特征,对实验结果进行直线拟合,得出残差的变化规律,计算残差的RMS(均方根值)即为系统误差σs;

5)为排除残差变化规律出现的偶然性,实验中电动平移台往一个方向步进100次后,即反行程以相同的步长步进100次,重复进行3)、4)两步,记录逆行程的测量结果,和正行程进行比较。

4 实验结果分析讨论

测试实验相机横向视场角(FOV)13.4°,距离电动平移台约2.5 m,电动平移台平移步长为10μm,则在图像中LED光斑的平移长度为:。

正行程100个位置所计算得到的光斑质心坐标的标准差大致相同,有小的波动变化。表1给出的是正行程第7个位置处光斑质心坐标。

位置7处LED光斑质心坐标的标准差为:σx=0.017 pixels,σy=0.016 pixels

用同样的方法可以计算其他位置处质心坐标的标准差,平均值为:σx=0.018pixels,σy=0.017pixels此结果即是随机误差大小。

正行程光斑质心y坐标的变化在0.15 pixels之内,与x坐标近2 pixels的行程相差15倍,因此光斑在y方向上的位移相对于x方向可忽略不计,下面只讨论x方向的变化情况,图2给出了光斑质心x坐标变化曲线,显示了光斑质心在x方向上的运动情况。

从图2可以看出,质心x坐标运动呈典型的S曲线形式,具有非常明显的周期性。为了排除这种变化规律出现的偶然性,将逆行程和正行程光斑质心x坐标变化曲线绘于同一坐标系,如图3所示。

从图3可以看出,正行程与逆行程质心坐标值重复性非常好,质心坐标变化规律高度一致,则可说明这种变化规律并非偶然出现的。

利用最小二乘法对正行程光斑质心x坐标变化曲线进行直线拟合,近似认为拟合得到的直线为光斑真实质心变化曲线,如图4所示,对应的残差如图5所示。

图6给出了残差与光斑质心坐标之间的关系曲线。可以看出,残差随着光斑质心在像元内的位置不同而变化,在整像素位置残差较小,在0.5 pixels处残差最大,并且随着质心位置的偏移变化,残差周期性变化。由于每一个光斑质心坐标均为多次取样平均的结果,因此随机误差可以限制在较小的范围内,不会对光斑质心造成如此大的影响。那么初步分析认为,测量过程中出现的系统误差周期性变化现象应该与CCD图像传感器周期性的像元结构有关[4]。LED光斑在CCD图像传感器表面的移动过程中,每个受到光斑覆盖的像元光敏区域面积会发生非线性变化,导致不同位置的光斑质心偏差不同,在某些特定的位置偏差会达到极大或极小。光斑从一个像元平移到相邻的像元,质心偏差的情况就会重复一次,因此就出现了测量过程中周期性变化的规律,而且像元填充形式的不同、填充率的不同都会使周期性变化的大小产生变化。

计算残差的均方根值(RMS),即为系统误差σs的大小,σs=0.06 pixels。则光斑质心亚像素定位总体误差。由此可知,基于POINT GREY Flea2-14S3 CCD相机的光斑质心定位随机误差σr为0.018 pixels,系统误差σs为0.06 pixels,总体误差σt为0.063 pixels(约1/15 pixels),可满足大多数成像测量系统对光斑定位精度指标的要求。

5 结论

本文提出了一种结构原理简单,易于实现的,对光斑质心定位误差进行定量测试的实验方法。利用高精度一维电动平移台、POINT GREY Flea2-14S3 CCD相机和LED光源构建了测试系统,对基于该CCD相机的光斑质心定位误差进行了测试。通过对测试结果进行研究和探讨发现,测试系统LED光斑质心定位的系统误差具有周期性变化规律,且变化周期恰好为1 pixels,初步分析认为该周期性变化规律应该与CCD周期性像素单元的填充形式和填充率等几何特性有着紧密的联系;计算得到了基于Flea2-14S3 CCD相机的光斑质心定位随机误差为0.018 pixels,系统误差为0.06 pixels,总体误差为0.063 pixels(约1/15 pixels),可满足大多数成像测量系统对光斑定位精度指标的要求。实验表明,该测试系统可以作为估算光斑质心定位误差大小的一种有效的手段。

摘要:根据误差的来源将光斑质心亚像素定位误差归类为随机误差和系统误差,提出一种简单有效的实验方法对光斑质心定位误差进行定量测试。利用高精度一维电动平移台、POINTGREYFlea2-14S3CCD相机和LED光源构建了测试系统,对测试结果进行研究和讨论,发现了测试系统LED光斑质心定位系统误差的周期性变化规律,计算得到了基于Flea2-14S3CCD相机的光斑质心定位随机误差为0.018pixels,系统误差为0.06pixels,总体误差为0.063pixels(约1/15pixels),能够应用于以光斑质心检测为手段的测量系统中。实验表明,该测试系统可以作为估算光斑质心定位误差大小的一种有效的手段。

关键词:光斑质心定位,亚像素精度,随机误差,系统误差

参考文献

[1]李春艳,谢华,李怀锋,等.高精度星敏感器星点光斑质心算法[J].光电工程,2006,33(2):41-44.LI Chun-yan,XIE Hua,LI Huai-feng,et al.Centroiding algorithm for high-accuracy star tracker[J].Opto-Electronic Engineering,2006,33(2):41-44.

[2]李季,唐建博.天文导航中星体高精度细分定位方法研究[J].光学与光电技术,2007,5(2):75-77.LI Ji,TANG Jian-bo.High Precision Subdivided Locating Method of Star Image[J].Optics&Optoelectronic Technology,2007,5(2):75-77.

[3]李晓峰,罗彤,邓科,等.采用CCD的空间光通信光斑位置提取重心算法的分析及实验[J].光通信技术,2004,28(6):13-15.LI Xiao-feng,LUO Tong,DENG Ke,et al.Analysis and Experiment of CCD-applied spatial optical communications light spot position locating gravity center calculation[J].Optical Communication Technology,2004,28(6):13-15.

[4]刘智,翟林培,郝志航.互补金属氧化物半导体图像传感器亚像元细分精度实验研究[J].中国激光,2007,34(1):116-122.LIU Zhi,ZHAI Lin-pei,HAO Zhi-hang.Sub-Pixel Measurement Accuracy Experiment of Complementary Metal Oxide Semiconductor Imager[J].Chinese Journal of Lasers,2007,34(1):116-122.

[5]HANCOCK B R,STIRBL R C,CUNNINGHAM T J,et al.CMOS active pixel sensor specific performance effects on star tracker/imager position accuracy[J].Proc.of SPIE(S0277-768X),2001,4284:43-53.

[6]张辉,袁家虎,刘恩海,等.CCD噪声对星敏感器星点定位精度的影响[J].红外与激光工程,2006,35(5):629-633.ZHANG Hui,YUAN Jia-hu,LIU En-hai,et al.CCD noise effects on position accuracy of star sensor[J].Infrared and Laser Engineering,2006,35(5):629-633.

[7]LI Jie,LIU Jin-guo,HAO Zhi-hang.Active Pixel Sensor Geometrical Characteristic Effects on Star Image Subdivided Location accuracy for Star Tracker[J].Proc.of SPIE(S0277-768X),2006,6031:60310C-1-9.

[8]潘波,杨根庆,刘勇.星点质心定位算法最优门限研究[J].光学精密工程,2008,16(9):1787-1792.PAN Bo,YANG Gen-qing,LIU Yong.Study on optimization threshold of centroid algorithm[J].Optics and Precision Engineering,2008,16(9):1787-1792.

[9]李玉峰,郝志航.星点图像超精度亚像元细分定位算法的研究[J].光学技术,2005,31(5):666-671.LI Yu-feng,HAO Zhi-hang.Research of hyper accuracy subpixel subdivision location algorithm for star image[J].Optical Technique,2005,31(5):666-671.

亚像素算法 篇6

本文首先介绍了亚像素边缘检测的概念, 然后介绍了几种目前常用的亚像素边缘检测方法, 主要包括[4]:基于小波变换的亚像素边缘检测、基于矩的亚像素边缘检测、基于插值的亚像素边缘检测、基于拟合的亚像素边缘检测。通过分析每种亚像素边缘检测方法的原理, 对各种方法的优缺点进行了对比。

1 亚像素边缘检测的概念及前提

亚像素边缘检测是实现于像素级边缘检测的基础之上, 亚像素边缘检测技术不是依靠灰度图像中单一的像素点, 而是由邻域内一组有特定灰度分布特性的像素点组成的区域, 在这区域内各像素的灰度值有明显的数值变化, 利用待检测目标的特性, 此特性可以为角点、交点、圆点、直线和曲线, 对图像进行分析和理解, 找到与实际目标特性最相似的位置, 在这个过程中利用浮点运算, 可使目标位置的精度高于整像素精度[5,6]。这种利用目标特性从图像中分析、计算出最符合此特征目标位置的方法称为图像目标亚像素检测技术。

由亚像素的定位原理可知, 实现特征的亚像素边缘定位需要两个前提条件[7,8]:

(1) 必须具有特征的先验知识, 例如特征的形状和特征的属性 (包括灰度和梯度等) 值的分布, 利用这些先验知识就可以用解析方法来建立特征的数学模型, 从而获得高精度定位。

(2) 目标不是孤立的单个像素点, 它必须是由特定灰度分布和形状分布的一组像素点组成, 有明显的灰度变化和一定面积大小, 这样才能从足够多的信息中建立比较准确的特征数学模型。

2 常用的亚像素边缘定位方法

2.1 基于插值的亚像素边缘检测算法

图像检测系统的数学模型, 可以看作是一个对被测物体亮度分布的卷积的过程。由于卷积对函数具有平滑的作用, 即使物体的亮度分布为较理想的阶跃分布, 系统的最终输出也是一个渐变的过程[9]。另一方面, CCD像元不但接收照射到本身感光面的光, 还感受照射到相邻感光面的光, 这同样造成CCD器件对阶跃边缘的响应信号存在明暗渐变过程, 而边缘的亚像素位置, 通常存在于这一过渡过程中的斜率最大的地方。因此, 可以通过插值的方法来获得边缘点的亚像素位置。常用的插值基函数主要有抛物线方程、二次曲线方程、高斯函数、B样条曲线等[10]。

2.2 基于拟合的亚像素边缘检测

常见的曲线拟合方法有边缘灰度拟合、边缘灰度导数值拟合。边缘灰度拟合的亚像素边缘定位技术的工作原理是一种是通过对现有的离散的边缘点的位置和灰度值, 按照选定的函数进行曲线拟合, 试图构造连续的边缘函数, 然后对构造出的函数进行求导, 使其导数值最大的点就是边缘的亚像素位置;边缘灰度导数值拟合跟基于插值的亚像素边缘定位技术的工作原理类似, 首先进行边缘的粗定位, 然后在边缘点两侧的某一小邻域内取点并求其梯度值, 最后通过这几个点的梯度值对函数进行曲线拟合, 那么令该曲线的一阶导数值为零的点就是边缘的亚像素位置。

使用拟合法的前提是目标特性, 如图像的灰度分布, 阴影模式的噪声等满足已知或假定的函数形式。通过对离散图像中目标的灰度或坐标进行拟合, 可以得到目标的连续函数形式, 从而确定描述物体的各个参数值 (位置、尺寸、形状、幅度等) , 对目标进行亚像素定位。常用的拟合方法有直线、圆、多项式、高斯函数和椭圆拟合等[15]。在拟合方法中, 基于最小二乘准则的函数拟合是一个有效的数学工具。用最小二乘准则进行图像测量, 可以达到较高的精度, 可以保证测量的可靠性和效率。其原理是给定一系列点 (xi, yi) , 在某一函数类f (x) 中寻求一个函数f* (x) , 使公式目标函数s取值最小, 其中:

拟合过程是用来确定系数的最佳取值。也就是说, 希望确定这些系数的值, 以使该曲线到给定点的误差s最小。

基于拟合的亚像素边缘检测法具有抗干扰能力强, 检测出的边缘点位置准确的优点, 但是在抗干扰和检测出复杂边缘之间存在着一定的矛盾。

2.3 基于矩的亚像素边缘检测

矩方法在图像识别和计算机视觉中应用广泛的方法, 它是根据物体在成像前后矩特性保持不变的性质, 将矩方法应用到边缘的亚像素边缘检测中, 尤其是对圆和矩形这类对称目标。矩方法包括:灰度矩、空间矩、ZOM矩等。

2.3.1 空间矩法

空间矩边缘定位法是Lyvers等提出的一种利用边缘灰度空间矩来进行边缘亚像素定位的算法空间矩假定的二维边缘模型, 与灰度矩类似。连续二维函数f (x, y) 的空间矩定义:

在实际计算中, 为降低边缘问题的维数, 将窗口顺时针旋转Φ, 使边缘垂至于x轴, 旋转后的空间矩为:

从而确定边缘参数:

2.3.2 灰度矩法

灰度矩边缘定位法是一种利用前三阶灰度矩来对边缘进行亚像素边缘定位的算法。其基本原理就是假设实际图像中的实际边缘分布与理想阶跃边缘模型的灰度矩保持一致, 即矩不变性, 来确定实际边缘的位置。模型如图1所示[18], 直线由两个参数ρ、θ确定。

设I (x, y) 为实际图像目标在归一化边缘邻域内各像素点的灰度值, 则该目标区域前三阶灰度矩满足:

由k=0, 1, 2, 3得:

文献[18]中采用模板求出目标区域的前三阶灰度矩从而求出边缘参数p1、h1、h2。采用9×9的窗口来模拟归一化的区域。I (x, y) 为该归一化区域内的像素灰度, 则假设它具有恒定的值, 那么灰度矩公式就可以写为

式中k=0, 1, 2, 3;Ij代表单位圆中第j个像素点的灰度值;ωj代表第j个像素点灰度值对应的权值。

由所计算的参数可以计算 (h2-h1) 2≥4σ2是否成立, 若成立则认为边缘存在, 由图1可以推导出边缘参数ρ, 若p=min (p1, p2) , 就可以通过求解如下超越方程求得α。

对于边缘方向, 可以通过求θ获得, 若x0、y0分别是该局部区域内的灰度重心坐标值, 则:

从而通过ρ、θ值的确定既确定了边缘。

矩方法在应用过程中亚像素边缘位置不受图像平移或尺寸变化的影响, 但其存在计算时间长的缺点。

2.4 基于小波的亚像素边缘检测

小波分析是一种多分辨率分析, 他能在时频两域突出信号的局部特征, 现已广泛运用于去噪和边缘检测等图像处理领域。在边缘检测中常用的是基于小波变换模极大值的边缘检测方法。其检测过程为:选择一个尺度s, 对给定数据执行小波变换, 并找出在尺度s下的小波变换系数的模极大值;在变换过程中对于小波变换系数随着尺度的增加而减小的模极大值给予剔除;然后设置一阈值T, 滤除由噪声和微小细节生成的模极大值, 最后在模极大值附近, 寻找与模极大值保持相同符号的小波系数领域, 对该领域内的小波系数求期望值, 所得的值即是边缘的亚像素位置。

基于小波的亚像素边缘检测法具有良好的抗噪性能, 能在视频两域突出信号特性, 可以有效检测噪声图像边界的突变点混在一起时的边缘。但小波分解的尺度不易把握。

3 结束语

本文首先对亚像素边缘检测作了简单介绍;然后介绍了目前几种常用的亚像素边缘检测方法的原理, 最后分析对比各种方法的优缺点得出以下结论:

(1) 与其它方法相比基于插值的亚像素定位法计算时间相对较短, 但其定位精度较低;

(2) 基于插值、基于拟合、基于小波的亚像素边缘检测法都具有较好的抗噪性能;

(3) 基于矩的亚像素边缘检测法在应用时边缘位置不受图像平移的影响, 但算法计算时间较长。

参考文献

[1]伍济钢, 宾鸿赞.薄片零件机器视觉图像亚像素边缘检测[J].中国机械工程, 2009, 20 (3) :297-300.

[2]王艳华.机械零件亚像素边缘检测算法的研究[J].齐齐哈尔大学学报:自然科学版, 2008, 24 (1) :72-74.

[3]伍济钢, 宾鸿赞.机器视觉的薄片零件尺寸检测系统[J].光学精密工程, 2007, 15 (1) :124-130.

[4]马睿, 曾理, 卢艳平.改进的基于Facet模型的亚像素边缘检测[J].应用基础与工程科学学报, 2009, 17 (2) :296-302.

[5]范彦斌, 李西兵, 沈自林.基于亚像素的边界检测与提取算法及误差分析[J].机械科学与技术, 2005, 24 (2) :189-191, 211.

[6]屈玉福, 浦昭邦, 王亚爱.视觉检测系统中亚像素边缘检测技术的对比研究[J].仪器仪表学报, 2003, 24 (z1) :460-462.

[7]刘变莲.亚像素边缘检测技术的研究[J].电脑开发与应用, 2005, 18 (11) :54-55.

[8]刘力双, 张铫, 卢慧卿, 等.图像的快速亚像素边缘检测方法[J].光电子·激光, 2005, 16 (8) :993-996.

[9]李庆林, 张少军, 李忠富, 等.一种基于多项式插值改进的亚像素细分算法.北京科技大学学报[J].2003, 25 (3) :280-283.

亚像素算法 篇7

在机器视觉测量的摄像机标定和三维坐标测量中,广泛采用圆形点[1,2]作为标定特征点或测量特征点。为提高抗干扰能力和现场适应性,获得更好的图像质量,以保证标定和测量精度,很多情况下圆形特征点被制作成主动受控的发光点,且发光点的能量中心与圆形几何中心保证重合。因此,如何准确获得与空间发光点能量中心对应的光斑图像中心成为机器视觉测量中的一个关键问题。

空间圆形发光点(以下简称发光点)在图像平面上所成的像一般为椭圆形,常用的光斑图像中心的提取算法有:基于光斑图像边缘提取的椭圆拟合法[3]、基于光斑图像灰度分布的重心法[4]和曲面拟合法[5]。虽然以上算法均为亚像素级提取算法,但是各有局限性:椭圆拟合算法提取的中心一般不是发光点中心的对应像点[6,7];重心法受噪声扰动影响较大,难以达到较高的精度[4];曲面拟合算法采用灰度插值方法,虽然可以获得较高的精度,但运算量较大[8]。

通过Hessian矩阵可以判断曲线或曲面的局部极小值或极大值[9],且文献[10]、[11]将其引入到图像处理与分析中。本文在此基础上提出用Hessian矩阵提取光斑图像像素级中心,并进一步定位亚像素中心。首先建立了光斑图像灰度分布的数学模型,分析了中心区域的曲面特征,提出了一种新的光斑图像中心亚像素提取的方法,该方法分为两步:第一步,计算图像的二阶偏导矩阵,即Hessian矩阵以获得光斑图像局部能量(灰度)分布特征,准确定位光斑图像的像素中心;第二步,以像素中心邻域内图像灰度分布函数的二阶泰勒展开为其数学模型,推导出该邻域灰度分布曲面的极大值点亚像素图像坐标的计算公式,即为光斑图像的亚像素中心。

1 光斑图像灰度分布数学模型

1.1 发光点能量分布数学模型

发光点通常由发光二极管制成,其能量分布可用理想高斯模型来描述,如图1所示。发光点的能量(光强)分布数学模型为

式中:Emax为能量即光强最大值;(xc,yc)为发光点能量中心坐标,亦为函数的极大值点;ax、ay分别是发光点所形成的光强分布光斑的长、短轴。

1.2 光斑图像数学模型

1.2.1 光斑图像灰度分布函数的建立

如图2所示,空间发光点Γ1在摄像机像平面上的透视投影变换为光斑图像Γ2。其中,o-xyz为发光点坐标系,o为摄像机光心,z轴垂直于空间发光点Γ1所在平面Π1,x轴与y轴分别与发光点的长、短轴平行。o-XYZ为摄像机坐标系,且Xo Y面平行于摄像机像平面Π2,而Z轴与平面Π2垂直。由于o-xyz与o-XYZ只存在旋转关系,因此,空间发光点的透视投影模型可表示为

式中:s为某一常数,A为摄像机内参矩阵,R为3×3正交旋转矩阵,H=AR;P=[x y z]T为发光点在o-xyz下的三维坐标,且z为常数,令其为z0;p=[X Y 1]T为以毫米为单位光斑图像点的齐次像坐标。

由式(2),可得发光点的能量中心点(xc,yc)在摄像机像平面Π2上的透视投影点为

其中:p0=[X0 Y0 1]T,P0=[xc yc z0]T。

又由式(2)可得:

将式(4)带入式(1)可得发光点在摄像机像平面Π2上的光斑图像的灰度分布函数如下:

其中:E′max为光斑图像灰度极大值;h1、h2分别为H-1的第一行和第二行构成的行向量。

1.2.2 发光点能量中心为透视投影不变量的证明

下面证明发光点的能量中心在摄像机像平面上对应的像点就是光斑图像灰度分布函数的极大值点,即能量中心点为透视投影不变量。

由式(5)易知,该函数的极大值点p′0满足下式

又由式(4)可得:

其中h3为H-1的第三行构成的行向量。

由式(6)和式(7)得:

即:

对比式(3)与式(9)可知,发光点的能量中心(也即空间圆的圆心)在摄像机像平面上对应的像点p0恰为光斑图像灰度分布函数的极大值点p′0。

2 由Hessian矩阵确定光斑图像像素级中心

从光斑图像灰度分布函数的二阶方向导数和自相关函数两个不同的角度,均可获得光斑图像灰度分布曲面的像素级中心点(即极值点)的求解条件,它们本质上是一致的。

2.1 图像灰度分布二阶方向导数的分析

图像灰度分布函数I(X,Y)在像素坐标点(X,Y)沿v方向上二阶偏导定义为

其中Hess(I(X,Y))为Hessian矩阵,具体表达为[8]

其中:IXX、IXY、IYX、IYY为图像灰度分布函数I(X,Y)对X、Y的二阶偏导数。

通常先对图像做高斯滤波预处理,则上述二阶偏导数可由下列卷积得到:

其中:gxx(x,y)、gxy(x,y)、gyy(x,y)、gyx(x,y)为二阶微分离散高斯卷积核,按下式计算:

卷积核的二维宽度范围为(2N+1)×(2N+1)。其中,N=3σ,σ越大,图像的平滑程度越好,同时也会造成图像越模糊,计算量增大。通常取σ=1~3。

光斑图像Γ2上一点P0(X,Y)成为极值点条件是,在任意方向v上使得(v·∇)I(P0)=0,等价于∇I(P0),于是有:

①如果vTHess(I(X,Y))v正定,即Hess(I(P0))的所有特征值为正,P0为极小值;

②如果vTHess(I(X,Y))v负定,即Hess(I(P0))的所有特征值为负,P0为极大值。

对于本文所讨论的实际光斑图像,其中心为极大值点,因此利用条件②进行判定。

2.2 图像灰度自相关函数的分析

图像灰度的自相关函数[12]描述了局部图像灰度的变化程度的分布,由下式表示:

式中:E(x,y)是由于图像窗口偏离点(x,y)而造成的图像灰度的平均变化,称为图像灰度的自相关函数;w是图像窗口尺度,在x和y方向的变化范围分别为X和Y;I代表图像灰度。在光斑图像中心处,图像窗口的移动将引起E(x,y)的显著变化。

若在像素坐标点(X,Y)将E(x,y)展开,可用一次泰勒多项式近似表示为

其中

当图像窗口在光斑图像中心附近移动时,图像灰度自相关函数E(x,y)在各个方向上的变化均最大,且其各个方向上的极值曲率将达到最大。因此,可通过计算E(x,y)的极值曲率判断光斑图像中心。而图像灰度自相关函数E(x,y)的极值曲率可由矩阵M(x,y)的特征值近似表示[8]。式(20)与式(10)在形式上完全一样,矩阵M(x,y)实际上就是自相关函数E(x,y)的近似Hessian矩阵,与式(10)中的Hessian矩阵Hess(I(X,Y))本质上是一致的。因此,同样可以通过求解Hessian矩阵M(x,y)的特征值来判定P0(X,Y)是否为极值点,这里也用Hess(I(X,Y))表示M(x,y)。

综合2.1和2.2得到求取光斑图像中心的充分条件为:

①Det(Hess(I(X,Y)))~λ1·λ2=IXXIYY–IXY2>0;

②Tr(Hess(I(X,Y)))~λ1+λ2=IXX+IYY<0。

上述这两个条件与2.1节中导出的条件②是相容或等价的。其中,λ1和λ2为矩阵Hess(I(X,Y))的两个特征值。Det(Hess(I(X,Y)))表示灰度分布函数I(X,Y)或自相关函数E(x,y)在某像素点(X,Y)的变化量,Tr(Hess(I(X,Y)))表示变化的方向。

通过上述两个角度分析,获得了求取光斑图像像素级中心位置的统一性判定条件。

3 光斑图像亚像素中心的求取

由第2节Hessian矩阵推导出的判定条件确定光斑图像像素级中心位置后,即可在该像素邻域内确定其亚像素位置。

设光斑图像中心的像素位置为(x0,y0),亚像素位置为(x0+s,y0+t),其中(s,t)∈[-0.5,0.5]×[-0.5,0.5]。则在亚像素位置点(x0+s,y0+t)的邻域内图像灰度分布函数可用二阶泰勒展开式表示为

其中:fx、fy为图像灰度分布函数f(x,y)在(x0,y0)处的一阶偏导数,fxx、fxy、fyy、fyx为图像灰度分布函数f(x,y)在(x0,y0)处的二阶偏导数。由前述光斑图像特征的分析可知,式(22)在光斑图像中心处对s和t的一阶导数为零,即满足如下条件:

于是得到:

由式(24)即可确定光斑图像中心的亚像素位置。

4 提取精度验证实验

为了验证所提出的光斑图像中心亚像素提取算法,进行了如下仿真测试实验。

共产生10种具有式(1)所描述能量分布的不同空间圆形发光点,并通过设定的摄像机模型进行透视投影成像。在此条件下,发光点的能量中心在摄像机像平面上对应的像点坐标精确已知。摄像机成像过程由下式描述

其中:u′=[X Y 1]T为以像素为单位的图像点齐次坐标,x′=[x y z 1]T为空间三维点的齐次坐标。A为摄像机内参矩阵,R为旋转矩阵,T为平移矢量,它们的取值分别如下:

上述参数决定了空间光斑到摄像机像平面形成光斑图像的成像过程。其中,内参矩阵A包含的参数为有效焦距和像面中心,仅影响光斑透视投影后在图像平面上的大小和位置,不改变空间光斑能量中心透视投影不变性,不影响光斑中心的提取。旋转矩阵R和平移矢量T描述了摄像机坐标系与空间光斑所在世界坐标系的位姿关系,即刚体变换关系,对光斑的具体成像过程没有影响,可以任意取值。一般地,实际的机器视觉测量系统中,通常要求光斑图像大小要大于10 pixels×10 pixels大小,且光斑图像避免较大透视畸变,这只需要设定空间光斑自身在世界坐标系中的具体分布即可。因此,参数A、R、T变化时,只需使空间光斑自身在世界坐标系中的具体分布跟随变化,而对所成光斑图像并无影响,对后续的实验结果和结论不产生影响。

在上述设定下,对投影后得到的光斑图像施加不同信噪比水平的噪声,以考察算法的鲁棒性。图3所示为产生的10种空间圆形发光点中的一种所得到的不同信噪比下的光斑图像。

对生成的光斑图像分别采用重心法、椭圆拟合法和本文算法进行中心提取,并考察各算法在同一信噪比水平下提取的RMS误差,即RMSerr=[(‖u1-u′1‖2+‖u2-u′2‖2+……+‖uN-u′N‖2)/N]1/2。其中,uk为空间圆形发光点的能量中心在摄像机像平面上对应的真实像点坐标,u′k是各算法提取得到的光斑图像中心坐标(k=1,2,…,N),N为光斑图像数,这里N=10。表1为所得到RMS误差数据。

由表1的数据可以看出,本文方法提取的光斑图像亚像素中心精度相较其它两种方法有明显提高。而在提取时间上,三种方法大致相当,均在5 ms左右,表中未列出。另外,还与曲面拟合方法进行了比较,在提取精度上两者水平相当,在表中没有给出曲面拟合法的RMS误差数据。但在提取时间上曲面拟合法要比本文方法慢10倍以上。在图像大小相同的条件下,本文方法提取一幅光斑图像的时间约为5.2 ms,而曲面拟合法的提取时间约为53.1 ms。因此,本文方法具有更适合动态应用场合的优势。

5 结论

本文以具有高斯能量分布的空间圆形发光点的透视投影光斑图像中心提取为研究对象,首先证明了发光点能量中心为透视投影不变量。在此基础上,通过对光斑图像灰度分布的二阶方向导数和灰度分布自相关函数两个方面性质的分析,得到了光斑图像中心的像素级位置的统一判定条件。以像素级中心位置为搜索起始点,通过二阶泰勒展开多项式描述光斑图像亚像素中心邻域内的灰度分布,并基于一阶导数过零的判据获得了光斑图像中心的亚像素位置计算公式。仿真测试实验表明,本文算法有效提高了提取精度,在信噪比为0.1的情况下仍然能够达到0.1像素的提取水平。由于本文算法只需对光斑图像区域进行卷积操作,无需插值拟合运算,没有增加运算的负担。因此,本文算法更适合于动态应用场合光斑图像中心的高精度快速提取。

参考文献

[1]Heikkila Janne.Geometric Camera Calibration Using Circular Control Points[J].IEEE Transactions on Pattern Analysis and Machine Intelligence(S0162-8828),2000,22(10):1066-1077.

[2]Mallon John,Whelan Paul F.Which pattern-Biasing aspects of planar calibration patterns and detection methods[J].Pattern Recognition Letters(S0167-8655),2007,28(8):921-930.

[3]魏振忠.基于机器视觉的在线柔性三坐标测量系统研究[D].北京:北京航空航天大学,2003:37-39.WEI Zhen-zhong.Flexible On-line3D Coordinates Measurement System Based on Machine Vision[D].Beijing:Beijing University of Aeronautics and Astronautics,2003:37-39.

[4]尚鸿雁.激光自准直三自由度动态角度测量技术研究[D].北京:北京航空航天大学,2005:89-91.SHANG Hong-yan.3-DOF Dynamic Angle Measurement Based on Laser Auto-collimation[D].Beijing:Beijing University of Aeronautics and Astronautics,2005:89-91.

[5]李为民.大尺度范围内视觉测量技术研究[D].合肥:中国科学技术大学,2006:34-37.LI Wei-min,Research on Large-scale Vision Measurement Technology[D].Hefei:University of Science and Technology of China,2006:34-37.

[6]Heikkila Janne,Silven Olli.A Four-step Camera Calibration Procedure with Implicit Image Correction[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition,San Juan,Puerto Rico,June17-19,1997:1106-1112.

[7]ZHANG Guang-jun,WEI Zhen-zhong.A position-distortion model of ellipse center for perspective projection[J].Measurement Science and Technology(S0957-0233),2003,14:1420-1426.

[8]张广军.视觉测量[M].北京:科学出版社,2008:42-70.ZHANG Guang-jun.Vision Measurement[M].Beijing:Science Press,2008:42-70.

[9]张贤达.矩阵分析与应用[M].北京:清华大学出版社,2008:268-271.ZHANG Xian-da.Matrix Analysis and Applications[M].Beijing:Tsinghua University Press,2004:268-271.

[10]Eberly D,Gardner R.Ridges for image analysis[J].Journal of Mathematical Imaging and Vision(S0924-9907),1994,4:353-373.

[11]Steger Carsten.Unbiased Extraction of Curvilinear Structures from2D and3DImages[D].Germany:Technische Universit-t München,1998:27-81.

上一篇:传统出版企业下一篇:社会工作概论