发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种三维路面裂缝图像生成系统和方法,该系统和方法不受成像传感器与路面的距离的影响,更加简单可靠。
为达到以上目的,本发明采用的技术方案是:一种三维路面裂缝图像生成系统,所述系统包括信息采集子系统、数据处理子系统和照明子系统:
信息采集子系统包括图像采集模块和裂缝深度采集模块,所述图像采集模块包括拍摄控制子模块、CCD线扫描摄像机和结构光投射器,所述拍摄控制子模块用于控制CCD线扫描摄像机进行摄像和控制结构光投射器将一定模式的结构光投射于被测路面上可见光成像的半幅范围内,所述结构光投射器用于投射出结构光,所述CCD线扫描摄像机用于采集裂缝的每帧包含可见光图像和结构光图像的原始图像;所述裂缝深度采集模块用于采集一定数量的样本裂缝深度信息;
数据处理子系统,包括信息存储模块、图像配准模块、可见光图像裂缝检测模块、结构光图像空间纹理提取模块和裂缝深度计算模块,该信息存储模型用于存储CCD线扫描摄像机采集的裂缝的每帧包含可见光图像和结构光图像的原始图像、可见光图像检测模块检测的裂缝特征、可见光图像检测模块提取的空间纹理信息以及由样本裂缝深度信息组成的三维裂缝图像库,可见光图像检测模块用于检测可见光图像中的裂缝特征,结构光图像空间纹理提取模块用于提取结构光图像中的空间纹理,裂缝深度计算模块用于根据一定数量的样本裂缝建立裂缝深度预测模型,并根据该裂缝深度预测模型,结合目标裂缝的可见光图像中的裂缝特征和提取的结构光图像中的空间纹理,计算目标裂缝深度信息;
照明子系统;为CCD线扫描相机提供光源。
进一步,所述三维路面裂缝图像生成系统还包括三维裂缝可视化模块,所述三维裂缝可视化模块用于将得到的裂缝深度信息生成三维可视图像,并显示在用户终端上。
进一步,结构光投射器为投影仪。
本发明提供一种三维路面裂缝图像生成方法,包括以下步骤:
步骤S100:采集样本裂缝信息,建立裂缝深度预测模型,具体包括:
步骤S101,采集样本裂缝深度信息,包括:选定一个路段,不同光照条件下,使用裂缝深度采集模块,在静止条件下,测定好每一处裂缝的深度,建立三维裂缝图像库,存储在信息存储模块中。
步骤S102,采集样本裂缝图像,包括:拍摄控制子模块通过结构光投射器将一定模式的结构光投射于所选路段上可见光成像的半幅范围内,利用CCD线扫描摄像机采集所选路段的每帧包含可见光图像和结构光图像的原始图像,并存储在信息存储模块中;
步骤S103,配准样本裂缝的可见光图像I和结构光图像Ipre,包括:筛选出包含裂缝的原始图像,从包含裂缝的前一帧原始图像上获取未覆盖结构光的可见光图像I,并从当前帧原始图像Iorg上获取同一路面位置处与所述未覆盖结构光的可见光图像I相对应的叠加了结构光信息的结构光图像Ipre;
步骤S104,检测样本裂缝的可见光图像I中的裂缝,包括:对每一可见光图像I,利用图像处理方法检测出裂缝,获取可见光图像中裂缝特征,并存储在信息存储模块中;
步骤S105,提取样本裂缝的结构光图像Ipre中的空间纹理,包括:对每一与可见光图像I相对应的结构光图像Ipre,利用图像处理方法提取结构光图像中的空间纹理,存储在信息存储模块中;
步骤S106,建立裂缝深度预测模型,包括:根据信息存储模块存储的所述被测路面上样本裂缝的可见光图像中的裂缝特征和结构光图像中的空间纹理以及三维裂缝图像库中的样本裂缝深度信息,建立裂缝深度预测模型;
步骤S200:采集目标裂缝图像,提取裂缝特征和空间纹理,计算目标裂缝深度,具体包括:
步骤S201,采集目标裂缝的图像,包括:拍摄控制子模块通过结构光投射器将一定模式的结构光投射于被测路段上可见光成像的半幅范围内,利用CCD线扫描摄像机采集被测路段的每帧包含可见光图像和结构光图像的原始图像,并存储在信息存储模块中;
步骤S202,配准目标裂缝的可见光图像I和结构光图像Ipre,包括:筛选出包含目标裂缝的原始图像,从包含目标裂缝的前一帧原始图像上获取未覆盖结构光的可见光图像I,并从当前帧原始图像Iorg上获取目标裂缝的与所述未覆盖结构光的可见光图像I相对应的叠加了结构光信息的结构光图像Ipre;
步骤S203,检测样本裂缝的可见光图像I中的裂缝,包括:对目标裂缝的可见光图像I,利用图像处理方法检测出目标裂缝,获取可见光图像中目标裂缝特征,并存储在信息存储模块中;
步骤S204,提取目标裂缝的结构光图像Ipre中的空间纹理,包括:对目标裂缝的结构光图像Ipre,利用图像处理方法提取结构光图像中的空间纹理,存储在信息存储模块中;
步骤S205,根据步骤S106建立的裂缝深度预测模型,结合信息存储模块存储的目标裂缝特征和空间纹理信息,计算目标裂缝深度。
进一步,步骤S101,采集样本裂缝深度信息时,通过激光法、红外探测法或超声波测距仪测定;将裂缝深度信息存储在信息存储模块中的方式是,将裂缝深度信息标记在裂缝所在帧的原始图像上。
进一步,步骤S103和步骤S202中,通过滤除结构光图像Ipre中的结构光信息,并设定相似性测度,来达到预定的配准精度。
进一步,步骤S104和步骤S203中,利用Hessian矩阵的特征值和特征向量获取图像中裂缝的强度和方向,得到裂缝曲线结构;并利用高斯滤波算法对裂缝曲线结构的非均匀强度进行平滑处理。
进一步,步骤S105和步骤S204中,利用灰度共生矩阵、局部相位一致性、局部分数维提取结构光图像中的空间纹理。
进一步,步骤S106的实现方式为:将样本裂缝图像中各个像素的深度看作一系列随机变量,将在结构光图像及可见光图像提取的多个特征作为影响深度的因素,建立图像中每个像素点的深度预测模型,并求解模型参数。
再进一步,步骤S205的实现方式为:将步骤S203、S204获得的裂缝特征和空间纹理看成一列观测数据,利用深度预测模型计算目标裂缝深度。
进一步,所述方法还包括,根据获得的目标裂缝深度,获取裂缝三维信息,并将裂缝三维信息保存在文件中或通过三维可视化软件生成三维可视图像,并显示在用户终端上。
本发明提供了一种利用单相机的三维路面裂缝图像生成系统和方法,并提出了一种新的立体视觉方法,通过该方法可获得二维路面图像的深度信息。本发明提供的系统只需用一个可见光摄像机(相机)和一台投影仪,由投影仪生成结构光,投影于可见光成像的半幅范围内,这样可见光相机在路面的同一位置得到两种图像信息,一种是可见光成像信息,另一种是结构光在路面的成像信息,经过图像配准及融合计算,可以获得路面的深度数据,从而生成三维路面裂缝图像。本发明所提出的系统,思路新颖,与目前流行的双目立体视觉和其它视觉测距技术相比,更加简单易用,准确性高,可预见其广阔的应用前景。
具体实施方式
下面结合具体实施方式对本发明作进一步描述。
如图1所示,本发明提供的一种三维路面裂缝图像生成系统,所述系统包括信息采集子系统、数据处理子系统和照明子系统:
信息采集子系统包括图像采集模块和裂缝深度采集模块,所述图像采集模块包括拍摄控制子模块、CCD线扫描摄像机和结构光投射器,所述拍摄控制子模块用于控制CCD线扫描摄像机进行摄像和控制结构光投射器将一定模式的结构光投射于被测路面上可见光成像的半幅范围内,所述结构光投射器用于投射出结构光,所述CCD线扫描摄像机用于采集裂缝的每帧包含可见光图像和结构光图像的原始图像;所述裂缝深度采集模块用于采集一定数量的样本裂缝深度信息;
数据处理子系统,包括信息存储模块、图像配准模块、可见光图像裂缝检测模块、结构光图像空间纹理提取模块和裂缝深度计算模块,该信息存储模型用于存储CCD线扫描摄像机采集的裂缝的每帧包含可见光图像和结构光图像的原始图像、可见光图像检测模块检测的裂缝特征、可见光图像检测模块提取的空间纹理信息以及由样本裂缝深度信息组成的三维裂缝图像库,可见光图像检测模块用于检测可见光图像中的裂缝特征,结构光图像空间纹理提取模块用于提取结构光图像中的空间纹理,裂缝深度计算模块用于根据一定数量的样本裂缝建立裂缝深度预测模型,并根据该裂缝深度预测模型,结合目标裂缝的可见光图像中的裂缝特征和提取的结构光图像中的空间纹理,计算目标裂缝深度信息;
照明子系统;为CCD线扫描相机提供光源。
本发明的三维路面裂缝图像生成系统还可以包括三维裂缝可视化模块,用于将得到的裂缝深度信息生成三维可视图像,并进一步显示在用户终端上。所述结构光投射器可采用投影仪。
如图2所示,本发明提供的一种三维路面裂缝图像生成方法,包括以下步骤S100和步骤S200,其中步骤S100包括步骤S101-S106,步骤S200包括步骤S201-S205。以下分别说明各步骤。
步骤S100:采集样本裂缝信息,建立裂缝深度预测模型,具体包括:
步骤S101,采集样本裂缝深度信息,包括:选定一个路段,不同光照条件下,使用裂缝深度采集模块,在静止条件下,测定好每一处裂缝的深度,建立三维裂缝图像库,存储在信息存储模块中。
测定被测路面上裂缝深度信息时,通过激光法、红外探测法或超声波测距仪测定。
步骤S102,采集样本裂缝图像,包括:拍摄控制子模块通过结构光投射器将一定模式的结构光投射于被测路面上可见光成像的半幅范围内,利用CCD线扫描摄像机采集被测路面的每帧包含可见光图像和结构光图像的原始图像,并存储在信息存储模块中。所述结构光投射器可以是投影仪。
以下简要描述一下步骤S102具体的操作方式。为此,首先简要说明一下本发明的投影原理,
如图3所示,结构光投射器2将一定模式的结构光投射于物体表面,在表面形成由被测物体表面形状所调制的光条三维图像,该三维图像由处于另一位置的摄像机(相机)1探测,从而获得光条畸变图像。光条畸变程度取决于投影仪和相机的相对位置和物体表面轮廓。
本发明采用结构光投射器2将一定模式的结构光投射于被测路面上可见光成像的半幅范围内,由于相机1装载到检测车上可以移动,在移动过程中,假如相机一次成像可以获得尺寸为M*N的图像,则在这张图像上,有一半的面积,1/2M*N(图3的A部分)叠加了结构光信息,而剩下的一半部分(图3的B部分)只有可见光信息。
当车向前移动1/2M的距离,第二次成像,同样是由1/2M*N(图4的B部分)叠加了结构光信息,而剩下的一半部分(图4的C部分)只有可见光信息。
A、B、C部分在路面上的位置关系如图5所示,第一次成像获得的图像记为前一帧图像I’org,第二次成像获得的图像记为当前帧图像Iorg。
这样B部分在两次成像中获得了两张图片:只有可见光信息的图像(由第一次成像);只有可见光信息和结构光信息叠加的图像(由第二次成像获得)。
这样,在车行驶过程中,路面上的每一段(除了刚刚启动时的1/2M长度,和最后停止时的1/2M长度)都可以获得这样两张图片。
步骤S103:配准样本裂缝的可见光图像I和结构光图像Ipre。
在该步骤中,需要先筛选出包含裂缝的原始图像,然后利用图像分割法从包含裂缝的前一帧原始图像I’org上获取未覆盖结构光的可见光图像I(即图3的B部分),并从当前帧原始图像Iorg上获取同一路面位置处与所述未覆盖结构光的可见光图像I相对应的叠加了结构光信息的结构光图像Ipre(即图4的B部分)。
为精准匹配图像,可根据所采用的结构光设计过滤器,滤除结构光图像Ipre中的结构光信息(如条纹)。
步骤S104:检测样本裂缝的可见光图像I中的裂缝。
在该步骤中,对每一样本裂缝的可见光图像I,利用图像处理方法检测出裂缝,获取可见光图像中裂缝特征。
检测裂缝的方法有很多,优选地,本发明利用Hessian矩阵来检测裂缝。从Hessian矩阵的特征值和特征向量获取图像中裂缝的强度和方向,得到裂缝曲线结构;并利用高斯滤波算法对裂缝曲线结构的非均匀强度进行平滑处理,得到去噪后平滑的裂缝曲线。具体检测方法如下:
Hessian矩阵一个平方矩阵的图像函数的二阶偏导数,考虑了曲线结构的全部特征值和特征向量。
式(3)中,K=(fxx+fyy)/2,
H表示图像的Hessian矩阵,fxx表示x方向的二阶偏导数,fyy表示y方向的二阶偏导数,fxy表示xy方向的二阶偏导数,fyx表示yx方向的二阶偏导数,计算方法如公式(2)所示。
Hessian矩阵描述了一个多变量函数的局部曲率。H的特征值λ1和λ2被用来分析和使用于定义一个曲线化测度vesselness(一个像素属于曲线结构的可能性),λ1等于λ2是一个理想曲线结构的中心像素。这个测度vesselness定义如下:
式(4)中h表示像素点的灰度值,参数σ代表一个空间尺度的高斯滤波的标准差,β和c是两个Frangi纠正常量,RB与s表示曲线化测度参数,计算方法见式(5)、(6)。为了获取更好的性能,β一般固定位0.5。c的值依赖于图像的灰度值,它经常设为海森矩阵范数的最大值的一半。曲线结构的测度v值在0和1之间,其中1表示最接近曲线结构,而0表示最不接近。这个滤波器是尺度依赖的,因为它是折叠的输入高斯二阶导数。
增强的效果和β设置的值有关。β越大,粗的曲线增强的越好,但是细的曲线就很差。β设置的小,细的曲线效果增强了,但是噪声点和阴影也会随着被增强,很容易导致错误的提取。为了减少阴影影响,需要设置一个阈值来过滤,将概率大的点保留,将概率低于阈值的点去掉,从而得到裂缝曲线结构。
可以利用高斯滤波对曲线的非均匀强度进行平滑,作为对测度vesselness的补偿。
式(7)中g′代表一张图像,g表示高斯滤波后的输出的图像,G是一个二维高斯函数。
步骤S105:提取结构光图像Ipre中的空间纹理。
在该步骤中,对每一样本裂缝的与可见光图像I相对应的结构光图像Ipre。,利用图像处理方法提取结构光图像中的空间纹理。所述空间纹理包括共生矩阵特征、局部相位一致性特征、局部分数维特征等特征。以下简要分别说明各特征的提取方法。
1)共生矩阵特征,采用共生矩阵提取,可参考以下文献1描述的方法。
文献1:Soh,L-K.,and Costas Tsatsoulis."Texture analysis of SAR sea iceimagery using gray level co-occurrence matrices."Geoscience and RemoteSensing,IEEE Transactions on 37.2(1999):780-795.
以下简要说明提取共生矩阵特征的方法。
设图像X轴方向的像素总数为Nx,Y轴方向的像素总数为Ny。为了降低计算量,将图像灰度归并,令其最高灰度级为Ng,记序列Lx={1,2,…,Nx},Ly={1,2,…,Ny},G={1,2,…,Ng}。
可以把图像理解为从Lx×Ly到G的一个映射,即Lx×Ly中的每点,对应属于G中的一个灰度。
定义方向为θ、间隔为d的灰度共生矩阵为:[p(i,j,θ,d)]。
p(i,j,θ,d)为共生矩阵的第i行第j列元素,其意义表示所有θ方向、相邻间隔为d的像素中有一个取i值、另一个取j值的相邻对点数。角度θ为正向的0°,45°,90°,135°,对不同的θ,共生矩阵的元素是不同的,分别定义如下(记B=Ly×Lx,{x}表示集合X元素数):
p(i,j,0°,d) (9),
={(k,l),(m,n)∈B×B|k-m=0,|l-n|=d;f(k,l)=i,f(m,n)=j}
p(i,j,45°,d) (10),
={(k,l),(m,n)∈B×B|k-m=0,|l-n|=d;f(k,l)=i,f(m,n)=j}
p(i,j,90°,d) (11),
={(k,l),(m,n)∈B×B||k-m|=d,l-n=0;f(k,l)=i,f(m,n)=j}
p(i,j,135°,d)
={(k,l),(m,n)∈B×B|(k-m=d,l-n=-d或k-m=-d,l-n=d; (12),
f(k,l)=i,f(m,n)=j}
2)局部相位一致性特征。
相位一致性是一种特征点检测方法,它是利用图像信号在特征点处的傅里叶分量具有最大的相位一致性的特征进行特征点的检测。该特征定位精确,包含了丰富的纹理、边缘和结构信息,对于图像亮度或对比度的变化无关,并适应高噪声,可以很准确的表征局部回声,其计算方法为:
式(13)中,κ为滤波器带宽,ω为频率,ω0为中心频率。
3)局部分数维特征。
分数维是描述自然表面及曲线的粗糙度和自相似规模的统计量,本项目拟用表面积法提取分数维特征S(A),用其表征局部纹理:
式(14)中,B为半径为1的单位球,⊕表示膨胀运算,表示A的表面积。图像纹理特征的粗糙度与分数维成正比。
上述步骤S300、S400并无次序先后之分,可同时进行。并且,将步骤S300、S400得到所有关于裂缝的特征信息都存储到信息存贮模块中。
步骤S106:建立裂缝深度预测模型。
该步骤的具体实现方式如下:将样本裂缝图像中各个像素的深度看作一系列随机变量,将在结构光图像及可见光图像提取的多个特征作为影响深度的因素,通过建立多因素灰度预测模型来预测每个像素点的深度。以下结合模型具体描述一下。
(i)GM(1,1)模型
设每个像素点提取有n个特征,作为特征因素,y=(y1,y2…,yn)表示事物发展的特征因素时间序列, 表示像素深度的单因素时间序列,其中p为三维数据库中的图像数,做1-AGO(X(0)的一次累加生成算子),得,
对于单因素序列根据灰色系统建模方法,得GM(1,1)模型:
式(16)中,a为发展系数,其大小反映了序列x(0)的增长速度,μ为挥作用量,反映数据变化的关系。a和μ均为待定参数。
设为待估参数向量,记为:
利用最小二乘法来求解
式(18)中B,Y1为由原始特征因素序列构造的矩阵。
结合式(17)、(18)可求得a,进而得第i个特征因素在t时刻的预测值:
(ⅱ)建立多因素灰色预测模型
采用多元回归的原理建立多特征因素灰色预测模型:
y(t)=b0+b1x1(t)+b2x2(t)+…+bpxp(t) (20),
式(20)中,y(t)为该事物在t时刻的预测值,xi(t)(i=1,2,…,p)为第i个单因素在t时刻的预测值,bi(t)(i=1,2,…,p)为估计参数。
(ⅲ)模型的求解
1)根据式(19)求出各个因素t时刻的预测值xi(t)(i=1,2,…,p)。
2)确定估计参数的值
从信息存贮模块提取步骤S101采集的裂缝深度信息以及步骤S104、S105获得的所有关于裂缝的特征信息作为影响因素,获得三维数据库观测数据y(1),y(2),…,y(m)和xi(1),xi(2),…,xi(m)后,其中y(1),y(2),…,y(m)对应样本裂缝深度信息,xi(1),xi(2),…,xi(m)对应可见光图像和结构光图像中的所有特征,从而得估计参数:
b=(b0b1…bp)T=(XTX)-1XTY (21),
式(20)中,m表示特征个数,T表示时间序列,
Y=(y(1)y(2)…y(m))T (23)。
根据式(21)-(23)可求得估计参数b0、b1、b2……bp。
3)最后,将步骤1)求得的预测值和步骤2)求得的估计参数b0、b1、b2……bp带入模型即式(20)中,即得到裂缝深度预测模型(即灰色预测模型)。
步骤S200:采集目标裂缝图像,提取裂缝特征和空间纹理,计算目标裂缝深度,具体包括:
步骤S201,采集目标裂缝的图像,包括:拍摄控制子模块通过结构光投射器将一定模式的结构光投射于被测路段上可见光成像的半幅范围内,利用CCD线扫描摄像机采集被测路段的每帧包含可见光图像和结构光图像的原始图像,并存储在信息存储模块中;
步骤S202,配准目标裂缝的可见光图像I和结构光图像Ipre,包括:筛选出包含目标裂缝的原始图像,从包含目标裂缝的前一帧原始图像上获取未覆盖结构光的可见光图像I,并从当前帧原始图像Iorg上获取目标裂缝的与所述未覆盖结构光的可见光图像I相对应的叠加了结构光信息的结构光图像Ipre。
步骤S203,检测样本裂缝的可见光图像I中的裂缝,包括:对目标裂缝的可见光图像I,利用图像处理方法检测出目标裂缝,获取可见光图像中目标裂缝特征,并存储在信息存储模块中。具体实现方式可参考步骤S103。
步骤S204,提取目标裂缝的结构光图像Ipre中的空间纹理,包括:对目标裂缝的结构光图像Ipre,利用图像处理方法提取结构光图像中的空间纹理,存储在信息存储模块中。具体实现方式可参考步骤S104。
步骤S205,根据裂缝深度预测模型,计算目标裂缝的深度,包括:根据步骤S106建立的裂缝深度预测模型,结合信息存储模块存储的目标裂缝特征和空间纹理信息,计算目标裂缝深度。具体计算方式是:将步骤S203、S204获得的裂缝特征和空间纹理看成一列观测数据xi(1),xi(2),…,xi(m),利用式(20)表示的裂缝深度预测模型(即灰色预测模型)计算目标裂缝深度。
为了可视化需要,本发明还包括,根据获得的目标裂缝深度预测值,得到裂缝的三维信息,并将三维信息保存在文件中,或可采用3D Surfer等可视化软件将得到的裂缝三维信息生成三维可视图像,并显示在用户终端上,但这一步不是必须步骤。
此外,对本领域普通技术人员来说,本发明提供的三维路面裂缝生成系统除了包括上述模块,还应包括本领域通用的其他模块或装置,例如用于承载系统中各模块并提供稳定行驶速度的承载车、图像预处理模块以及为系统中其他模块提供稳定电源的供电模块等。
上述实施例只是对本发明的举例说明,本发明也可以以其它的特定方式或其它的特定形式实施,而不偏离本发明的要旨或本质特征。因此,描述的实施方式从任何方面来看均应视为说明性而非限定性的。本发明的范围应由附加的权利要求说明,任何与权利要求的意图和范围等效的变化也应包含在本发明的范围内。