一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种视觉测量目标中心亚像素定位方法与流程

2022-06-02 14:41:39 来源:中国专利 TAG:


1.本发明涉及计算机视觉、视觉测量技术领域,具体为一种视觉测量目标中心亚像素定位方法,实现了针对目标边缘模糊且亮度饱和情况下的高精度中心定位。


背景技术:

2.目标中心定位算法被广泛应用于机器视觉中的三维重建、视觉测量和航空航天器姿态测量等诸多领域。目标定位的准确程度对最终测量结果起到了决定性的作用。在视觉测量中,常用的目标有以下三种:红外主动光源、人工逆反射标志和被测物形貌特征点。红外主动光源以其独有的稳定性和良好的抗干扰能力,被广泛的使用于各种视觉测量系统中。本发明主要针对红外光源图像目标中心定位时遇到的亮度饱和问题,提供一种基于目标光斑边缘区域计算目标中心亚像素坐标的方法。
3.当前,视觉测量领域的目标识别主要分为两大类。
4.第一类是基于边缘信息的椭圆拟合方法,该方法适用于对焦成像系统中的人工逆反射标志目标中心定位。这一类测量系统实时性差,对于10米以上的大型工件只能采用离线测量,且逆反射标志受环境光影响严重,不适于户外测量。基于边缘的中心定位算法在实际应用中存在以下不足:1)测量前的准备工作及测量完成后的清理工作复杂;由于使用人工逆反射标志,所以在测量前要将反射标志粘贴于被测工件表面,为了保证测量精度,往往与要大量的反光标志。这同时为测量完成的清理工作带来了很多麻烦。2)应用场景受限;若要达到工业测量级别的精度,就需要保证目标边缘成像清晰且稳定,这就使得测量只能在室内相对稳定的环境中进行。3)测量过程非常耗时;为了保证成像清晰,拍摄距离通常保持在3至5米范围,对于大型工件就需要测量人员从不同角度拍摄成百上千的图像,以得到理想精度的测量结果。4)抗干扰能力差;人工逆反射标志的成像受环境光影响严重,并且拍摄角度过大也会导致成像不清晰。
5.第二类是基于目标灰度分布进行拟合,主要包括灰度质心法、加权灰度法、高斯曲面拟合法等算法。基于灰度分布的方法多在离焦成像系统中使用,所用的目标为红外主动光源。这一类测量系统可在线测量超大型工件,且能够应对复杂的室外测量环境。基于灰度分布的中心定位算法也存在这以下不足:1)目标光斑亮度难统一;测量过程中不同目标之间距离远,导致相同曝光下成像的亮度不同,容易出现远处目标亮度太小的同时近处目标亮度过高导致成像过曝,从而使得目标中心定位不准确。2)灰度分布要求高;基于灰度的方法在定位时所有的信息均来自像素灰度分布,同一个目标,灰度分布轻微变化有可能导致中心定位结果差别非常大。


技术实现要素:

6.本发明目的是提供一种边缘模糊中心过饱和状态的目标光斑高精度中心定位方法,用于解决离焦成像系统无法使用边缘拟合中心定位算法,以及高斯曲面拟合无法准确拟合过饱和光斑的问题。
7.本发明是采用如下技术方案实现的:
8.一种视觉测量目标中心亚像素定位方法,包括如下步骤:
9.步骤一、确定目标光斑兴趣区域。
10.步骤二、采用双调和插值方法对兴趣区域进行像素细分,所采用的插值公式为:
11.i
p
=g
pwꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
12.其中,下标p为所求插值点编号;式(1)中g
p
为1
×
k阶格林函数矩阵,计算公式为:
13.g
p
=[d
01 d
02 ... d
0k
]
ꢀꢀꢀꢀꢀꢀ
(2)
[0014]
式(2)中的元素d为插值核函数,具体计算公式为:
[0015][0016]
式(3)中式(1)中w为权值矩阵,计算公式为:
[0017]
w=g-1zꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0018]
其中,z为k
×
1阶属性向量,由所有像素值组成z=[z
1 z
2 ... zk]
t
[0019]
g为k
×
k格林函数矩阵,如:
[0020][0021]
式(5)矩阵中的元素d计算公式如式(3);
[0022]
将式(2)至式(5)代入式(1)中计算出插值点的像素值。
[0023]
步骤三、首先使用sobel算子得到所有像素x方向和y方向的梯度和幅值;若某像素梯度幅值在其法向上为极大值,则判断该像素为边缘像素,否则置零;记边缘像素坐标为(xi,yi),i=1,...,k,然后根据如下公式计算每个边缘像素的补偿值:
[0024][0025]
其中,i为选定的边缘像素索引号,|g
x
|和|gy|表示x方向和y方向梯度值,||g(x,y)||为像素(x,y)的梯度幅值;将式(6)得到补偿值与边缘像素坐标相加得到亚像素边缘坐标(xi η
x
,yi ηy),这些点是目标光斑边缘区域梯度变化最大的位置。
[0026]
步骤四、对步骤三中得到的边缘点椭圆拟合,然后选取[0.9r
max
,1.1r
max
]范围内的像素组成待选像素集合{pixeltbs}。
[0027]
步骤五、对目标光斑兴趣区域的灰度值进行灰度投票统计,得到灰度值统计数列{graystatic}。
[0028]
步骤六、对步骤五中得到数列{graystatic}求导,并根据如下约束选取最大统计值对应的灰度值i
max1
和第二大统计值对应的灰度值i
max2

[0029]
|i
max1-i
max2
|>150
ꢀꢀꢀꢀꢀꢀ
(7)。
[0030]
步骤七、在步骤六筛选得到的i
max1
和i
max2
附近找统计数量百分比大于1%的灰度值,分别与i
max1
、i
max2
组成背景阈值数列{th_background_grayvalues}和中心区域阈值数列{th_center_grayvalues};采用如下计算公式得到背景阈值和中心区域阈值:
[0031][0032]
步骤八、对步骤四中得到的待选像素集合{pixeltbs}使用步骤七得到的两个阈值进行筛选,所有在阈值范围内的像素(th_ibg<im<th_icen)组成集合{valid_pixel},参与后续中心坐标计算,而不在阈值范围内的像素灰度值置零。
[0033]
步骤九、利用步骤八中有效像素{valid_pixel}与步骤三中使用公式(6)计算得到的边缘点在梯度方向的距离计算每个有效像素的距离权重因子w
di
(i=1,...,k);距离权重因子的计算公式为:
[0034][0035]
其中,dist为像素i到亚像素边缘的距离。
[0036]
步骤十、采用二维离散高斯函数对步骤八得到的有效像素集合{valid_pixel}拟合,根据得到的拟合参数计算每个有效像素的灰度权重因子w
gi
(i=1,...,k);采用的二维高斯拟合函数为:
[0037][0038]
使用式(11)作为目标函数进行非线性优化,求得w
gi
(i=1,...,k)最优解;具体计算公式为:
[0039][0040]
其中,ii为像素i=1,...,k的灰度值。
[0041]
步骤十一、将像素灰度值ii和步骤十计算的灰度权重因子w
gi
进行复合,得到新的影响因子λi,复合公式为:
[0042][0043]
步骤十二、将步骤十一计算得出的影响因子代入式(13)计算目标光斑中心位置(xc,yc):
[0044][0045]
本发明使用高精度双调和插值算法对目标光斑进行高精度快速插值,将光斑边缘定位和中心定位提升至亚像素级别,通过对目标光斑边缘区域准确定位并筛选,得到中心过饱和光斑的有效计算区域,采用高斯权重函数与距离权重函数相复合,得到每个有效像素对中心定位提供的影响因子,根据加权质心定位算法的思想,结合像素影响因子可以计
算得到更接近真实目标中心的定位坐标,解决了由于目标亮度差别大,部分光斑中心存在过饱和像素,从而导致目标中心定位存在截断误差的问题。
[0046]
本发明设计合理,对于大直径光斑的中心定位精度明显优于高斯曲面拟合算法,且抗干扰能力强受噪声影响较小,鲁棒性较好,适用于多种视觉测量环境。
附图说明
[0047]
图1表示本发明实施例中的光斑兴趣区域。
[0048]
图2表示本发明实施例中的sobel算子。
[0049]
图3表示本发明实施例与现有技术的结果对比示意图。
具体实施方式
[0050]
以下结合一个具体实例对本发明进行详细解释,并将现有文献[2]和高斯曲面拟合法做横向比较以说明本发明的有益效果。
[0051]
本发明实施例使用仿真光斑。仿真相机参数选用basler a102f工业相机,分辨率为1392
×
1040,镜头焦距f=12mm。使用matlab科学计算软件做相关算法验证。具体步骤如下:
[0052]
一、确定目标光斑兴趣区域,所用方法包括但不限于图像滤波、阈值分割、目标形状筛选等方法,最终获得的目标光斑兴趣区域如图1所示。
[0053]
本实施例具体为:人工设定8个光斑中心名义值,采用高斯光斑模型结合离焦成像模型在同一幅图像上生成8个目标光斑,在图像上添加信噪比为50db的高斯噪声,重复添加100组,生成100组图像,显而易见,每组图像都包含8个仿真目标光斑。将图像分别进行二值化后,根据matlab的连通域信息确定8个光斑大致的中心坐标
[0054]
二、对于一个目标光斑,其包含的灰度信息十分有限,为了最大程度利用目标光斑的灰度信息,使用像素细分技术对两个相邻像素进行灰度值插值,尽可能减小量化误差。本发明使用双调和插值方法(具体参考文献[1]:deng x,tang z.moving surface spline interpolation based on green’s function[j].mathematical geosciences,2011,43(6):663-680.)对兴趣区域进行像素细分,该方法对比广泛使用的三次样条插值具有更高的插值精度和更短的计算时间。所采用的插值公式为:
[0055]ip
=g
pwꢀꢀꢀꢀꢀ
(1)
[0056]
下标p为所求插值点编号。
[0057]
式(1)中g
p
为1
×
k阶格林函数矩阵,计算公式为:
[0058]gp
=[d
01 d
02 ... d
0k
]
ꢀꢀꢀꢀ
(2)
[0059]
式(2)中的元素d为插值核函数,具体计算公式为:
[0060][0061]
式(3)中式(1)中w为权值矩阵,计算公式为:
[0062]
w=g-1zꢀꢀꢀ
(4)
[0063]
z为k
×
1阶属性向量,由所有像素值组成z=[z
1 z
2 ... zk]
t

[0064]
g为k
×
k格林函数矩阵,形如:
[0065][0066]
矩阵中的元素d计算公式如式(3);
[0067]
将式(2)至式(5)代入式(1)可以计算出插值点的像素值。
[0068]
本实施例具体为:对于第p张图象的第c个目标光斑,选取每个坐标周围(31
×
31)pixel的区域作为计算窗口window,将窗口左上角像素坐标记为该坐标值为目标光斑中心坐标的全局偏移量。对窗口window内的光斑像素灰度值双调和插值,得到(121
×
121)pixel=14641pixel的待计算区域roi_interp。
[0069]
三、为了选取合适的边缘像素进行中心定位,需要对光斑目标进行亚像素边缘提取,确定有效边缘区域。现有技术文献[2](石达顺,唐朝.基于统计高斯拟合的圆形光斑中心定位方法[j].测控技术,2020,39(7):51-56.)使用canny算法提取圆形光斑边缘,但由于本发明所针对目标光斑为离焦成像,无法取得清晰的边缘成像,故使用文献[2]中的方法会导致边缘偏差较大。本发明首先使用sobel算子得到所有像素x方向和y方向的梯度和幅值,图2例举了竖直方向和水平方向的sobel算子。若某像素梯度幅值在其法向上为极大值,则判断该像素为边缘像素,否则置零。记边缘像素坐标为(xi,yi),i=1,...,k,然后根据如下公式计算每个边缘像素的补偿值:
[0070][0071]
其中,i为选定的边缘像素索引号,|g
x
|和|gy|表示x方向和y方向梯度值,||g(x,y)||为像素(x,y)的梯度幅值。将式(6)得到补偿值与边缘像素坐标相加得到亚像素边缘坐标(xi η
x
,yi ηy),这些点是目标光斑边缘区域梯度变化最大的位置。
[0072]
本实施例具体为:使用sobel算子计算roi_interp内所有像素的梯度幅值,取像素梯度方向的极大值作为边缘像素坐标整数部分,记为其中ei=1,k,n
edge
表示该区域内共有n
edge
个像素是边缘像素。对于边缘像素ei,根据公式(6)计算其补偿值(η
x
,ηy),将补偿值与边缘像素坐标整数部分相加,得到最终的亚像素边缘坐标
[0073]
四、对步骤三中得到的边缘点椭圆拟合,然后选取[0.9r
max
,1.1r
max
]范围内的像素组成待选像素集合{pixeltbs}。
[0074]
本实施例具体为:使用最小二乘拟合方法拟合区域roi_interp内所有边缘点,拟合函数为椭圆函数ax2 by2 cxy dx ey f=0,得到椭圆的参数(a,b,c,d,e,f)从而计算出中心(x
ellip
,y
ellip
)和长轴半径r
max
,计算区域roi_interp内所有像素与椭圆中心(x
ellip
,y
ellip
)
的距离选择|d
j-r
max
|<0.1r
max
的像素放入待选像素集合{pixeltbs}。
[0075]
五、对目标光斑兴趣区域的灰度值进行灰度投票统计,得到灰度值统计数列{graystatic}。
[0076]
六、对步骤五中得到数列{graystatic}求导,并根据如下约束选取最大统计值对应的灰度值i
max1
和第二大统计值对应的灰度值i
max2

[0077]
|i
max1-i
max2
|>150
ꢀꢀꢀꢀꢀꢀ
(7)
[0078]
七、在步骤六筛选得到的i
max1
和i
max2
附近找统计数量百分比大于1%的灰度值,分别与i
max1
、i
max2
组成背景阈值数列{th_background_grayvalues}和中心区域阈值数列{th_center_grayvalues}。采用如下计算公式得到背景阈值和中心区域阈值:
[0079][0080]
本实施例具体为:统计roi_interp内像素的灰度值数量,由于图像传感器为8位,所以灰度值为0—255的整数,统计间隔1灰度值,得到数列{graystatic}={n1,...,n
255
}。降序排列{graystatic}将灰度值计数最多的灰度值i
max1
记为第一个阈值,在剩余的灰度值计数中寻找满足|i
max1-i
max2
|>150的第二个灰度值计数最多的灰度值i
max2
,假设i
max1
<i
max2
。挑选灰度值计数n
vl
>0.01
×
14641≈146,(vl=1,...,255)的所有灰度值i
vl
,将|i
max1-i
vl
|<20的灰度值i
vl
与i
max1
一起记为背景阈值数列{th_background_grayvalues},将|i
max2-i
vl
|<20的灰度值i
vl
与i
max2
一起记为中心区域阈值数列{th_center_grayvalues}。根据式(8)寻找背景阈值和中心阈值。
[0081]
八、对步骤四中得到的待选像素集合{pixeltbs}使用步骤七得到的两个阈值进行筛选,所有在阈值范围内的像素(th_ibg<im<th_icen)组成集合{valid_pixel},参与后续中心坐标计算,而不在阈值范围内的像素灰度值置零。
[0082]
本实施例具体为:对于所有(xj,yj)∈{pixeltbs},如果th_ibg《i(xj,yj)<th_icen,则将像素(xj,yj)记为有效像素(x
sj
,y
sj
),组成有效像素集合{valid_pixel}。
[0083]
九、利用步骤八中有效像素{valid_pixel}与步骤三中使用公式(6)计算得到的边缘点在梯度方向的距离计算每个有效像素的距离权重因子w
di
(i=1,...,k)。主要为了消除以下两个因素的影响:第一,环境中不可避免的杂散光,以及测量设备电子器件产生的噪声等因素的影响,目标光斑中比较接近背景区域的像素受噪声影响较大,在计算目标中心时,这些像素所占权重应较小;第二,目标光斑中心区域像素过饱和,由于感光元器件互相之间存在“串扰”现象,饱和像素将对相邻像素产生一定影响,故这些受影响像素参与中心计算的权重也应更小。距离权重因子的计算公式为:
[0084][0085]
dist为像素i到亚像素边缘的距离。
[0086]
本实施例具体为:对于有效像素集合{valid_pixel}中的像素(x
sj
,y
sj
),连接(x
sj
,y
sj
)与椭圆中心(x
ellip
,y
ellip
)该线段(或线段延长线)交椭圆圆周于点(x
int
,y
int
),计算
(x
int
,y
int
)与(x
sj
,y
sj
)之间的距离得到像素(x
sj
,y
sj
)的距离权重因子:
[0087]
十、采用二维离散高斯函数对步骤八得到的有效像素集合{valid_pixel}拟合,现有技术文献[2]直接使用高斯函数拟合灰度分布来计算目标光斑中心,但其所用光斑直径较大且边缘清晰,针对本发明所使用的离焦光斑效果不佳。本发明根据得到的拟合参数可以计算每个有效像素的灰度权重因子w
gi
(i=1,...,k),一方面避免现有技术文献[3](郝颖明,束枫等.目标中心定位方法对位姿测量结果的影响分析[j].仪器仪表学报,2007,28(4):1-6.)中指出的“高斯曲面拟合对大直径目标光斑精度及鲁棒性较差”的问题,另一方面可滤除随机噪声对后续中心定位的影响。采用的二维高斯拟合函数为:
[0088][0089]
使用式(11)作为目标函数进行非线性优化,可求得w
gi
(i=1,...,k)最优解,由于步骤九中提到的原因,本发明在优化目标函数中加入距离权值因子,保证梯度越大的像素对拟合结果影响越大,越靠近边缘和饱和位置的像素对拟合结果影响越小,具体计算公式为:
[0090][0091]
其中,ii为像素i=1,...,k的灰度值。
[0092]
本实施例具体为:使用二维高斯函数对效像素集合{valid_pixel}中的像素进行曲面拟合,二维高斯函数为:其中w
gsi
为像素(x
sj
,y
sj
)的所求灰度权重因子,设参数初值为1,采用lm非线性优化方法求取参数最优值。目标函数为:其中k为有效像素个数,w
dsj
为计算得到的像素(x
sj
,y
sj
)的距离权重因子。
[0093]
十一、采用加权质心法的思想,将像素灰度值ii和步骤十计算的灰度权重因子w
gi
进行复合,得到新的影响因子λi,复合公式为:
[0094][0095]
本实施例具体为:将像素(x
sj
,y
sj
)的灰度值i
sj
和计算的该像素的灰度权重因子w
gsi
进行计算得到像素(x
sj
,y
sj
)的复合权重因子:
[0096]
十二、将步骤十一计算得出的影响因子代入式(13)计算目标光斑中心位置
[0097]
本实施例具体为:根据下式计算目标光斑窗口window内中心坐标:
[0098]
该中心坐标在整幅图像中的位置需要加上光斑窗口window在图像中的偏移量所以最终该目标光斑在整幅图像的亚像素中心坐标为:
[0099]
十三、将步骤十二的结果存入寄存器,然后对当前图像的下一个目标光斑重复步骤二至步骤十二,确定下一个目标光斑的图像坐标,当全部完成8个目标光斑的中心定位后按同样的方法对其余图像上的目标光斑进行中心定位,直到100组图像全部完成。
[0100]
对上述过程在matlab软件中编程实现算法验证,完成100组图像的总用时为11.44秒。相比之下,高斯曲面拟合算法总用时为12.52秒,文献[2]提供的方法总用时为15.41秒,可以发现三种方法总用时差别不大。
[0101]
为了验证本发明方法的实施精度,将三种方法对同一个图像光斑的定位结果展示于图3,光斑名义值以黑色十字表示,本发明所使用的目标光斑中心定位准确度明显优于其他两种方法,且100结果的重复性也更好。
[0102]
总之,本发明通过对目标光斑边缘区域准确定位并筛选,得到中心过饱和光斑的有效计算区域,采用高斯权重函数与距离权重函数相复合,得到每个有效像素对中心定位提供的影响因子,根据加权质心定位算法的思想,结合像素影响因子计算得到目标中心定位。本发明精度高,抗干扰能力强,受噪声影响小,适用于多种视觉测量环境。
[0103]
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照本发明实施例进行了详细说明,本领域的普通技术人员应当理解,本发明方法的保护范围不局限应用于红外靶灯识别,基于本方法的原理发明的可控光源的识别方法,无论是等同变换或改进,均不应排除在本发明的保护范围之外。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献