基于块匹配的激光条纹亚像素中心提取

2021-07-23 09:27邵新杰李晓磊唐香珺
激光与红外 2021年6期
关键词:骨架灰度像素

潘 硕,邵新杰,李晓磊,唐香珺

(陆军工程大学石家庄校区车辆与电气工程系,河北 石家庄 050003)

1 引 言

线结构光法是获取被测物体表面三维信息的一种常用视觉测量方法,近年来在工业检测、环境感知、地理、医疗及文物保护等领域得到广泛应用[1~4]。该检测方法使用相机采集激光发射器投射到三维物体表面的光条图像,通过计算机解算光条信息获取物体表面的三维特征。在实际测量过程中,采集图像中光条宽度通常为几个到几十个像素,从图像中精确提取光条中心是实现测量的关键步骤[5]。

进行线结构光检测时,光条投射到三维物体表面,由于被测物体的表面特性、三维形状、投影强度及环境光强不同,对激光条纹图像的成像质量造成干扰,成为限制提取光条中心坐标精度的重要原因[6]。在线结构光中心提取的研究过程中,国内外学者提出了许多中心提取方法,其中边缘提取法、阈值提取法、极值法、骨架细化法提取光条中心精度为整像素级,几何中心法、灰度重心法、Steger方法,曲线拟合法的提取精度可以达到亚像素级[7],随着测量要求的提高,在噪声环境中提取精度更高、鲁棒性更好的算法成为研究的重点。胡改玲[8]等在结构光条骨架上划分窗口,对窗口内的像素采用自适应灰度加权重心法求得图像的亚像素坐标,提取的光条中心光顺性更好。王利等[9]引入距离变换提取条纹的中心像素,然后利用曲线拟合和重心法提取亚像素重心,结合光条宽度和灰度信息降低了图像噪声对提取精度的影响。LI等[10]通过最小二乘法计算出光条上每一点的方向向量和曲率值,构建沿法向量的自适应矩形窗口,在矩形窗口内并沿着法线向量的方向重新计算每个中心点的坐标,显著提高了光条中心的提取精度。张佳等[11]提取ROI区域后采用自适应宽度的二次加权重心法确定光条中心,并通过斜率阈值对中心坐标进行均值优化,提高了光条中心提取的稳定性。

上述算法都在光条的中心像素附近生成了一定大小的窗口,利用光条的邻域信息提取光条中心,相比传统算法能够在一定程度上减少噪声及被测物体表面环境的影响,提高了算法的精度和稳定性。一般情况下,同一激光投射器产生的结构光条纹形状单一,有固定模式的光强分布,在获取的激光条纹图像中呈现为相似的光条纹结构。在图像获取过程中,噪声的存在造成了相似光条邻域内的细小差异,提取全局图像中具有相似结构的光条中心,将其均值作为其中心坐标,能够有效减小噪声干扰,提高提取精度。本文利用骨架细化法提取光条的中心像素,在中心像素邻域内构建包含光条基本结构的图像块,通过块匹配方式搜寻相似度较高的光条结构,利用图像全局光条信息得到了更高精度的光条中心坐标。

2 光条中心提取算法

本文提取光条中心算法步骤如图1所示。首先对拍摄的结构光图像进行阈值处理,将其转化为二值图像,对二值图像进行骨架细化,逐层剥离得到光条的中心像素。然后在每个中心像素邻域内生成包含光条信息的图像块,将其作为光条中心亚像素坐标提取的基本单元。之后利用块匹配的方法将图像中具有一定相似度的图像块划分为不同的块匹配群组,求取组内光条结构的重心坐标,将同一群组的灰度重心坐标均值作为群组内亚像素坐标与其中心像素的坐标偏差,然后将坐标偏差与群组内图像块各自对应的中心像素坐标相加得到各自光条中心的亚像素坐标。

2.1 骨架细化算法

对结构光图像进行骨架细化,得到光条中心的像素级坐标。首先对结构光图像进行阈值分割,得到分割出光条轮廓的二值化图像,然后对光条轮廓一层层细化,直至得到轮廓的单像素骨架,得到光条中心像素坐标。

对图像进行二值化操作时,本文采用局部均值和标准差的阈值处理提取结构光条,在处理背景照明不均的图像时能取到较好效果。该算法首先确定一个固定大小的模板,通过计算模板的标准差和均值确定模板中心像素点的的阈值,公式为:

其中,f(x,y)为处理前的图像;g(x,y)为处理后的图像;σxy,mxy分别为(x,y)邻域像素的标准差和均值;a,b为常系数。遍历整幅图像,得到的二值图像g(x,y)中光条区域为1,其余部分为0[12]。

对二值图像进行骨架细化操作,将图像中任意一点像素P1的3×3邻域构造为图2所示顺序,对整幅图像逐点运算,当P1=1时判断其是否为轮廓点进行删除操作,算法步骤如下:

图2 P1的3×3窗口内的9像素

(1)进行第1次子迭代时,如果满足下列情况则删除该点:

(a)2≤B(P1)≤6

(b)A(P1)=1

(c)P2·P4·P6=0

(d)P4·P6·P8=0

其中:

表示在P2,P3,…P8,P9顺序下0、1模式的数量,B(P1)=P2+P3+P4+…+P8+P9,表示P1非零邻域的个数。

(2)进行第2次子迭代,条件(c)、(d)变为:

(c′)P2·P4·P8=0

(d′)P2·P6·P8=0

其余条件不变,删除满足条件的点。

(3)重复步骤(1)、(2),直至没有点被删除后得到光条图像的中心像素[13]。

2.2 块匹配

块匹配算法是运动估计、图像滤波和视频压缩中的一种常用方法,该方法将图像划分为大小相等的图像块,选定其中一个图像块作为查询块与其他图像块进行匹配,找出与查询块具有相似特征的K个匹配块,组成块匹配数组。

在骨架细化法提取出的光条中心像素邻域内生成大小为k×k(k为奇数)的图像块,将其作为提取光条中心坐标的基本单位,利用块匹配的方式搜寻具有一定相似度的光条结构。结构光图像I在中心像素生成图像块,其中P代表查询块,Q代表与查询块进行匹配的图像块,当P,Q之间的相似程度小于一定阈值时,认定两者相似属于同一分组,在搜索过程中,图像块的距离使用d(P,Q)表示:

(2)

式中,d表示两个图像块之间的距离,分子表示查询块与匹配块的模,分母表示图像块的大小。与查询块P的距离小于一定阈值的匹配块组成分组SP:

SP={Q∈I|d(P,Q)≤τ}

(3)

τ表示匹配块与查询块的相似度阈值,当两个图像之间差异的小于τ时,认定两个图像的相似度高,具有相同的光条中心坐标[14]。

2.3 光条中心的亚像素提取

分组SP内的光条图像块相似度高,含有相同的光条结构,将其坐标均值作为光条中心坐标真值可以降低噪声对光条亚像素中心提取的干扰。

设C(xC,yC)为骨架细化法提取出的中心像素,P为以点C为中心的大小为k×k的查询块,SP={Qi∈I}为与该点相似的匹配块集合,在每个匹配块中采用灰度重心法提取光条中心。匹配块内的中心点x方向的像素集合为Gx(x,y),y方向的像素集合为Gy(x,y),则光条中心在图像中的亚像素定位可由重心法确定为:

(4)

(5)

n为SP中匹配块的个数,对SP中所有的匹配块求光条的中心坐标,最后将其均值作为该块匹配群组中光条中心的亚像素坐标偏差:

(6)

(7)

最终确定光条在整个图像的亚像素条纹中心坐标为:

(8)

(9)

通过上述方法遍历所有的中心像素点,得到结构光图像中所有光条的亚像素中心坐标。

3 仿真分析与实验验证

3.1 仿真分析

生成如图3所示10条服从峰值为180,标准差为2的多线高斯分布的多线结构光仿真图像,条纹中心横向等距分布。在仿真图像中加入均值为0,方差为0.01~0.05范围的高斯噪声,分别使用本文方法与基于骨架提取的灰度重心法提去不同噪声图像中的结构光条中心。图4显示出在不同噪声环境中两种方法光条中心提取坐标平均偏差的对比结果,从中可以看出块匹配的方法能够在复杂噪声环境中提高提取精度,在不同的噪声环境中均有较好的提取效果。

图3 多线结构光仿真图像

图4 不同噪声环境下的提取误差对比

在仿真试验中分别使用基于块匹配的改进算法、传统灰度重心法及Steger法分别提取噪声方差为0.01图像中的光条中心线,比较其效果。图5为三种算法在提取光条中心线时的局部放大图,可以看出灰度重心法在提取光条中心图像时容易受到噪声干扰,误差较大,本文算法与Steger算法更为接近真实光条中心。图6为使用三种算法提取的光条中心在不同光条上的的平均偏差。可以看出本文所提出的算法精度高于传统的灰度重心法,平均偏差总体保持在0.05 pixel左右,误差更小。

图5 激光条纹中心提取结果对比

图6 光条中心提取平均偏差对比

3.2 实验验证

为验证本文提出方法的有效性,使用文献[15]中的多线结构光测量系统对金属平面工件进行测量实验,图7所示为实验拍摄图像。图8所示为分别使用基于骨架提取的灰度重心法,Steger法和本文算法提取光条中心的放大图像,可以看出,基于骨架提取的灰度重心提取算法受噪声影响较大,提取出的光条中心较为散乱,Steger法提取的的光条中心在光条边缘处有离散噪声点存在,影响提取精度,本文算法提取的光条中心比较平滑,更为逼近真实的光条中心。

图7 平面工件的多线结构光图像

图8 实验条纹中心提取结果对比

线结构光在平面上的投影为一条直线,在实验结果的基础上,对提取的光条中心点进行直线拟合,分别计算每种方法提取中心点到直线的平均偏差,以表征光条中心提取的精度。表1为图7中不同编号光条提取中心线的拟合结果。

表1 光条中心提取实验拟合结果及误差

从表中可知,本文提出算法提取的光条中心平均偏差小于灰度重心法及Steger法,更加逼近真实的光条中心,抗噪能力更强,能够在噪声环境中提取较高精度的光条中心。

4 结 论

线结构光在提取光条中心时往往受到噪声影响,限制中心提取精度,本文利用结构光图像中的全局信息,通过块匹配的方法将具有相似光条结构的图像块分组,求取每组图像块中光条的中心坐标,将其均值作为最终光条中心,减少了光条图像随机噪声对提取算法精度的影响。在仿真分析过程中,对高斯光条施加均值为0,方差为0.01的高斯噪声时,本文算法提取光条中心坐标精度优于传统灰度重心算法和Steger法,平均偏差在0.1pixel内,同时实验验证本文提出的算法在实际光条提取过程中产生的平均偏差更小,能够有效减少噪声对光条中心提取精度的影响,具有较好的抗噪性。

猜你喜欢
骨架灰度像素
采用改进导重法的拓扑结构灰度单元过滤技术
像素前线之“幻影”2000
浅谈管状骨架喷涂方法
骨架密度对炭/炭多孔骨架压力浸渗铜的影响
“像素”仙人掌
ÉVOLUTIONDIGAE Style de vie tactile
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算
高像素不是全部
内支撑骨架封抽技术在突出煤层瓦斯抽采中的应用