基于脊线跟踪与海森矩阵的结构光光条中心提取方法转让专利

申请号 : CN200910071584.0

文献号 : CN101499168B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘宛予杨尉

申请人 : 哈尔滨工业大学

摘要 :

基于脊线跟踪与海森矩阵的结构光光条中心提取方法,属于机器视觉技术领域,本发明的目的是解决目前结构光光条中心提取方法不能兼顾高精度和高速度的问题。本发明步骤为:选取一个可靠的初步跟踪点;用Hessian矩阵求所述初步跟踪点的法线方向上的亚像素级精度光条中心点,对所述亚像素级精度光条中心点的坐标取整,得到当前中心跟踪点;用Hessian矩阵求所述中心跟踪点的切线,将所述中心跟踪点在其切线方向上按一像素步长延伸并取整,得到下一个初步跟踪点;重复以上步骤,即可求得光条图像中所有亚像素级精度光条中心点。本发明兼有脊线跟踪方法处理图像点点数少和Hessian矩阵法处理精度高的优点,实现了结构光光条中心高精度快速提取。

权利要求 :

1.基于脊线跟踪与海森矩阵的结构光光条中心提取方法,其特征在于,实现该方法的步骤包括:步骤一、图像预处理,确定图像目标区域与图像背景区域,确定目标块与背景块;

步骤二、令k为跟踪点的变量,k为自然数,且k≥1,并初始化为k=1;

步骤三、在未被跟踪过的目标块中选取图像方差数值最大的目标块,求取所述方差数值最大的目标块中的灰度值最大点Ak,并作为第k个像素级初步跟踪点;

步骤四、用海森矩阵求所述第k个像素级初步跟踪点Ak的法线方向上的第k个亚像素级精度光条中心点Ck,对所述第k个亚像素级精度光条中心点Ck的坐标取整,得到第k个像素级中心跟踪点Bk,用海森矩阵求所述第k个像素级中心跟踪点Bk的切线方向;

步骤五、将第k个像素级中心跟踪点Bk在其切线方向上增加一个像素步长,获取第k个亚像素级初步跟踪点Dk,对所述第k个亚像素级初步跟踪点Dk的坐标取整,得到第k+1个像素级初步跟踪点Ak+1;

步骤六、如果第k+1个像素级初步跟踪点Ak+1不属于图像目标区域,或者所述第k+1个像素级初步跟踪点Ak+1已被跟踪过,则执行步骤七,否则,令k=k+1,执行步骤四;

步骤七、完成一条脊线跟踪,及基于所述脊线的结构光光条中心的提取;

步骤八、判断未被跟踪过的目标块的数量是否为零;

判断结果为否,令k=k+1,然后执行步骤三,判断结果为是,获得亚像素级精度光条中心点集合{C1,C2,C3…Ck},基于脊线跟踪与海森矩阵的结构光光条中心提取方法完成。

2.根据权利要求1所述的基于脊线跟踪与海森矩阵的结构光光条中心提取方法,其特征在于,步骤一所述确定图像目标区域与图像背景区域、确定目标块与背景块的方法为:将结构光光条灰度图像进行灰度值归一化处理及方差归一化处理,设置灰度值阈值Tg,所述结构光光条灰度图像中灰度值大于等于灰度值阈值Tg的点所在区域为图像目标区域,否则为图像背景区域;将所述结构光光条灰度图像分成m×n个子块,计算出每个子块的图像方差数值var[i,j],设定方差阈值Tvar,图像方差数值var[i,j]大于等于方差阈值Tvar的子块为目标块,否则为背景块,其中,var[i,j]为第i行第j列子块的图像方差数值,且i≤m,j≤n,m≥1,n≥1,m,n为自然数。

说明书 :

基于脊线跟踪与海森矩阵的结构光光条中心提取方法

技术领域

[0001] 本发明涉及一种基于脊线跟踪与海森矩阵的结构光光条中心提取方法,属于机器视觉技术领域。

背景技术

[0002] 结构光光条在视觉检测和非接触测量中已被广泛应用,它通常与CCD摄像机按照三角法原理组成结构光检测系统。如图1所示,结构光光源1产生一线状光条,投射到被测物体2的表面,由于被测物体2的表面高度与检测平台4不同,光条在被测物体2的表面形成一条变形条纹,利用CCD摄像机3采集所述变形条纹的图像,若要获得被测物体2精确的三维轮廓,必须从被测物体2的光条图像中提取光条中心位置信息,故结构光光条中心提取的精度与速度会直接影响整个结构光检测系统的性能。
[0003] 在工业检测中,高精度是评定检测设备性能优良的重要指标之一;高速度可以实现在线检测,大大提高工作效率。所以研究结构光光条中心高精度快速提取有着重要意义,它可为整个结构光检测系统的高精度在线检测提供保证。
[0004] 目前,常见的光条中心提取方法有极值法、阈值法、灰度重心法等(参见《基于图像的精密测量与运动测量》:于起峰,陆宏伟,刘肖琳,科学出版社,2002.),这些方法实现简单,速度快,但精度不高;曲线拟合法(参见《结构光三维视觉检测中光条图像处理方法研究》:贺俊吉,张广军,北京航空航天大学学报,2003,29(7):593-597)只适用于光条图像中法线方向变化不大的情况,具有局限性;基于骨架的灰度重心法(参见《一种新的线结构光光带中心提取算法》:吴庆阳,苏显渝,李景镇等,四川大学学报(工程科学版),2007,39(4):151-155)、方向模板法(参见《一种结构光条纹中心快速检测方法》:雷海军,李德华,王建永等,华中科技大学学报(自然科学版),2003,31(1):74-76)等虽然精度较高,但是由于计算量大,难以实现快速检测。
[0005] Steger提出了一种基于Hessian矩阵(海森矩阵)的亚像素级精度结构光光条中心提取方法(参见《An unbiased detector of curvilinear structures[J]》:STEGER.C.IEEE Transactions on Pattern Analysis and machine Intelligence.1998,20(2):113-125),该方法精度高、鲁棒性好,但由于图像中所有点均须参与大规模高斯卷积运算,计算量大,速度低,很难实现结构光条纹中心线的快速提取,难以满足实时性要求较高的应用场合。
[0006] 公开号为CN101178812的中国专利“一种结构光光条中心线提取的混合图像处理方法”在Steger方法的基础上提出了一种基于感兴趣区域(ROI)的结构光条纹中心混合图像处理方法,该方法只对图像中感兴趣区域的点进行大规模高斯卷积运算,虽处理速度有了较大提高,但处理的点数依旧较多,有进一步改进空间。
[0007] 发明内容
[0008] 本发明的目的是解决目前已有结构光光条中心提取方法不能兼顾高精度和高速度的问题,为实现结构光光条中心高精度在线提取,提供了一种基于脊线跟踪与海森矩阵的结构光光条中心提取方法。
[0009] 本发明实现基于脊线跟踪与海森矩阵的结构光光条中心提取方法的步骤包括: [0010] 步骤一、图像预处理,确定图像目标区域与图像背景区域,确定目标块与背景块; [0011] 步骤二、令k为跟踪点的变量,k为自然数,且k≥1,并初始化为k=1; [0012] 步骤三、在未被跟踪过的目标块中选取图像方差数值最大的目标块,求取所述方差数值最大的目标块中的灰度值最大点Ak,并作为第k个像素级初步跟踪点; [0013] 步骤四、用海森矩阵求所述第k个像素级初步跟踪点Ak的法线方向上的第k个亚像素级精度光条中心点Ck,对所述第k个亚像素级精度光条中心点Ck的坐标取整,得到第k个像素级中心跟踪点Bk,用海森矩阵求所述第k个像素级中心跟踪点Bk的切线方向; [0014] 步骤五、将第k个像素级中心跟踪点Bk在其切线方向上增加一个像素步长, 获取第k个亚像素级初步跟踪点Dk,对所述第k个亚像素级初步跟踪点Dk的坐标取整,得到第k+1个像素级初步跟踪点Ak+1;
[0015] 步骤六、如果第k+1个像素级初步跟踪点Ak+1不属于图像目标区域,或者所述第k+1个像素级初步跟踪点Ak+1已被跟踪过,则执行步骤七,否则,令k=k+1,执行步骤四; [0016] 步骤七、完成一条脊线跟踪,及基于所述脊线的结构光光条中心的提取; [0017] 步骤八、判断未被跟踪过的目标块的数量是否为零;
[0018] 判断结果为否,令k=k+1,然后执行步骤三,判断结果为是,获得亚像素级精度光条中心点集合{C1,C2,C3…Ck},基于脊线跟踪与海森矩阵的结构光光条中心提取方法完成。 [0019] 本发明的优点:
[0020] 1、处理速度快;
[0021] 在处理速度方面,本发明由于采用了脊线跟踪,只对光条脊线附近的点进行了大规模高斯卷积运算,从而大大地减少了光条中心提取的冗余计算,处理速度大大提高,实现了结构光光条中心线的快速提取。
[0022] 2、处理精度高;
[0023] 在处理精度方面,本发明由于采用了Hessian矩阵进行亚像素级精度光条中心提取,处理精度高。
[0024] 3、鲁棒性好。

附图说明

[0025] 图1是本发明背景技术中结构光检测系统的原理示意图,图2是Steger方法须进行大规模卷积运算处理的图像点点数示意图,图3是公开号为CN101178812的中国专利所述方法须进行大规模卷积运算处理的图像点点数示意图,图4是本发明所述方法须进行大规模卷积运算处理的图像点点数示意图,图5是灰度重心法提取的结构光光条中心的效果图,图6是方向模板法提取的结构光光条中心的效果图,图7是本发明所述方法提取的结构光光条中心的效果图,图8是本发明在采集的结构光光条灰度图像上提取结构光光条中心的过 程示意图,图9是本发明提取结构光光条中心的原理示意图,图10是本发明所述方法的流程图。

具体实施方式

[0026] 具体实施方式:下面结合图2~图10说明本实施方式,本实施方式实现基于脊线跟踪与海森(Hessian)矩阵的结构光光条中心提取方法的步骤包括:
[0027] 步骤一、图像预处理,确定图像目标区域与图像背景区域,确定目标块与背景块; [0028] 将结构光光条灰度图像进行灰度值归一化处理及方差归一化处理,设置灰度值阈值Tg,所述结构光光条灰度图像中灰度值大于等于灰度值阈值Tg的点所在区域为图像目标区域,否则为图像背景区域;将所述结构光光条灰度图像分成m×n个子块,计算出每个子块的图像方差var[i,j],设定方差阈值Tvar,方差var[i,j]大于等于方差阈值Tvar的子块为目标块,否则为背景块,
[0029] 其中,var[i,j]为第i行第j列子块的图像方差数值,且i≤m,j≤n,m≥1,n≥1,m,n为自然数。
[0030] 步骤二、令k为跟踪点的变量,k为自然数,且k≥1,并初始化为k=1; [0031] 步骤三、在未被跟踪过的目标块中选取方差数值最大的目标块,求取所述方差数值最大的目标块中的灰度值最大点Ak,并作为第k个像素级初步跟踪点;
[0032] 步骤四、用Hessian矩阵求所述第k个像素级初步跟踪点Ak的法线方向上的第k个亚像素级精度光条中心点Ck,对所述第k个亚像素级精度光条中心点Ck的坐标取整,得到第k个像素级中心跟踪点Bk,用Hessian矩阵求所述第k个像素级中心跟踪点Bk的切线方向; [0033] 步骤五、将第k个像素级中心跟踪点Bk在其切线方向上增加一个像素步长,获取第k个亚像素级初步跟踪点Dk,对所述第k个亚像素级初步跟踪点Dk的坐标取整,得到第k+1个像素级初步跟踪点Ak+1;
[0034] 步骤六、如果第k+1个像素级初步跟踪点Ak+1不属于图像目标区域,或者所述第k+1个像素级初步跟踪点Ak+1已被跟踪过,则执行步骤七,否则,令k=k+1,执行步骤四; [0035] 步骤七、完成一条脊线跟踪,及基于所述脊线的结构光光条中心的提取; [0036] 步骤八、判断未被跟踪过的目标块的数量是否为零;
[0037] 判断结果为否,令k=k+1,然后执行步骤三,判断结果为是,获得亚像素级精度光条中心点集合{C1,C2,C3…Ck},基于脊线跟踪与海森矩阵的结构光光条中心提取方法完成。 [0038] 本实施方式步骤一中说明了结构光光条灰度图像的预处理过程,将所述结构光光条灰度图像区分出图像目标区域与图像背景区域,所述图像目标区域与图像背景区域用于判定本实施方式步骤六中第k+1个像素级初步跟踪点Ak+1是否可靠;然后对所述结构光光条灰度图像进行图像分块,分成目标块和背景块,目标块就是图像块内包含了光条区域的子块,背景块就是图像块内不包含光条区域的子块。目标块的方差越大,表示目标图像块内灰度值变化越大,光条特征越明显。因为目标块中包含了光条区域,所以在跟踪过程中,必须保证所有目标块均被跟踪到,所有的光条中心才提取完毕。
[0039] 本实施方式步骤三中说明了确定第k个像素级初步跟踪点Ak的方法。进行脊线跟踪时,必须选取一个可靠的初步跟踪点,所述可靠的初步跟踪点必须在光条中心附近,才能保证跟踪结果的正确性。本发明采用以下方法设置初步跟踪点:方差var[i,j]数值最大的目标块为图像中光条特征最明显处,选择所述方差var[i,j]数值最大的目标块中灰度值最大的点为初步跟踪点。
[0040] 本实施方式步骤四中涉及用Hessian矩阵求光条图像中点的法线方向及其法线方向上的亚像素级精度光条中心点,其基本原理简要介绍如下:
[0041] 以提取结构光光条第一个亚像素级精度中心点C1为例进行说明,基于Hessian矩阵的亚像素级精度结构光光条中心提取算法的基本思路是:首先利用Hessian矩阵确定第一个像素级初步跟踪点A1(x1,y1)(其中x1,y1分别表示第一个像素级初步跟踪点A1的横、纵坐标)的法线方向,然后在所述法线方向上利用泰勒展开求出基于第一个像素级初步跟踪点A1(x1,y1)法线方向上的结构光光条第一个亚像素级精度光条中心点C1。 [0042] Hessian矩阵求法线的原理为:图像中点的法线方向就是图像中点的二阶方 向导数绝对值取极大值的方向,该方向可以通过计算Hessian矩阵的特征值和特征向量来确定。在结构光光条图像中,Hessian矩阵可以表示为:
[0043]
[0044] 其中:
[0045]
[0046] 其中,g(x,y)为二维高斯卷积模板, 表示卷积运算,I(x,y)为以图像点(x,y)为中心,大小与所述二维高斯卷积模板g(x,y)大小相等的图像矩阵。第一个像素级初步跟踪点A1(x1,y1)的法线方向由图像I(x,y)在该点的Hessian矩阵最大特征值的绝对值所对应的特征向量(nx,ny)给出。
[0047] Hessian矩阵求第一个亚像素级精度光条中心点C1的原理为:设根据Hessian矩阵求得结构光光条中第一个像素级初步跟踪点A1(x1,y1)的法线方向的单位向量为(nx,ny),以所述第一个像素级初步跟踪点A1(x1,y1)为基点,对结构光光条横截面上灰度分布函数进行二阶泰勒展开,则所述结构光光条横截面上的点I(x1+tnx,y1+tny)的灰度值可以表示为:
[0048] I(x1+tnx,y1+tny)=I(x1,y1)+N(Ix Iy)T+(NH(x1,y1)NT)/2 (2) [0049] 其中N=(tnx,tny),Ix,Iy由图像I(x,y)分别与相应微分形式的高斯模板卷积得到,即:
[0050]
[0051] 由于光条能量在光条法线方向上呈高斯分布,且光强越大,越接近光条中心,那么使公式(2)中I(x1+tnx,y1+tny)的一阶导数为零的点即为第一个像素级初步跟踪点A1(x1,y1)所在法线上的第一个亚像素级精度光条中心点C1,由 根据公式(2)得到: [0052]
[0053] 则基于第一个像素级初步跟踪点A1(x1,y1)法线方向上的第一个亚像素精度光条中心点C1的位置为(x1+tnx,y1+tny)。
[0054] 其它亚像素级精度光条中心点{C2,C3…Ck}的提取与上述过程相同,不再赘述。 [0055] 本实施方式步骤四与步骤五中说明了脊线跟踪的跟踪原则。在结构光光条图像中,光条上点的法线方向上灰度值最大处为光条中心点,光条上点的切线方向为该点延伸的方向;此外,步骤四中“对所述第k个亚像素级精度光条中心点Ck的坐标取整,得到第k个像素级中心跟踪点Bk”,及步骤五中“对所述第k个亚像素级初步跟踪点Dk的坐标取整,得到第k+1个像素级初步跟踪点Ak+1”是由于Hessian矩阵法只能对图像中真实存在的像素级图像点进行处理,故如果所得点需要利用Hessian矩阵进行处理时,须先将其坐标求整。 [0056] 参见图8和图9。图8是本发明在采集的结构光光条灰度图像上提取结构光光条中心的过程示意图,图9是本发明提取结构光光条中心的原理示意图,其中,10表示第k个像素级初步跟踪点Ak的法线,11表示第k个像素级中心跟踪点Bk的法线,12表示第k个像素级中心跟踪点Bk的切线。
[0057] 本实施方式步骤六至步骤八说明了脊线跟踪中的判定条件。已跟踪过的图像点及已跟踪过的目标块程序自动作标记,与未被跟踪的图像点及目标块区分开,在跟踪过程中,若第k+1个像素级初步跟踪点Ak+1不属于图像目标区域,或者所述第k+1个像素级初步跟踪点Ak+1已经被跟踪过,则结束一条脊线的结构光光条中心提取,再重新开始,在未被跟踪过的目标块中重新定位初步跟踪点,开始另一条脊线的结构光光条中心提取过程,直至最后判断所有的目标块都被跟踪过了,结束这幅图像的处理,所述图像中全部结构光光条中心都被提取出来。
[0058] 脊线跟踪可以大幅减少所处理的图像点点数,从而提高处理速度,但普通的基于脊线跟踪的方法只能达到像素级精度处理,在指纹图像处理,心血管图像、静脉图像等医学图像处理中有涉及;用Hessian矩阵提取结构光光条中心,处理精度高,但是其处理点数多,且均须参与大规模卷积运算,处理速度慢。本发明创新之处在于将两者结合,并首次将脊线跟踪方法用于结构光光条处理领域,实现了进行结构光光条中心提取时兼顾高精度和高速度。具体的优点说明如下:
[0059] 1、处理速度快;
[0060] 在处理速度方面,本发明由于采用了脊线跟踪,只对光条脊线附近的点进行了大规模高斯卷积运算,从而大大地减少了光条中心提取的冗余计算,处理速度大大提高,实现了结构光光条中心线的快速提取。
[0061] 对一幅大小为768×576像素、光条宽度约15像素的单线状光条图像,Steger方法须参与大规模高斯卷积运算的点数如图2中黑色部分所示,为768×576点;公开号为CN101178812的专利所述方法须参与大规模高斯卷积运算的点数如图3中黑色部分所示,约为768×15点,已有公开文献——《结构光光条提取的混合图像处理方法》(周富强,陈强,张广军,光电子.激光,2008,19(11):4351-7351)中阐述了公开号为CN101178812的专利所述方法处理相关光条图像所需的时间可达约28.8毫秒;而本发明须参与大规模高斯卷积运算的点数如图4中黑色部分所示,仅仅约768×2点,约为公开号CN101178812的专利所述方法须参与大规模高斯卷积运算的点数的2/15,速度比所述公开号为CN101178812的专利所述方法提高约7.5倍。以上所述说明本发明在处理速度方面有大幅提高。 [0062] 2、处理精度高;
[0063] 在处理精度方面,由于采用了Hessian矩阵进行亚像素级精度光条中心提取,处理精度高。
[0064] 分别用灰度重心法(参见图5)、方向模板法(参见图6)以及本发明方法(参见图7)对相同的结构光光条图像进行处理,结果显示,在光条弯曲细节处 (图中方框部分),本发明的处理精度高,明显优于灰度重心法以及方向模板法。
[0065] 图5~图7所示的效果图中包括原始图像相关区域和直接叠加在其上的所提取的光条中心线13。
[0066] 3、鲁棒性好。
[0067] 用本发明所述的方法对网格标定板背景(由黑白相间的小方格组成)上的光条提取中心,当光条照射在黑色方格上时,光条亮度低于、或者接近于白色方格背景,但是利用本发明仍然能够准确地提取光条中心线;本发明所述的方法也可以精确地进行十字线光条中心提取。上述处理特例说明本发明所述方法具有良好的鲁棒性。