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

一种基于语义关联的多尺度双目立体匹配方法及装置与流程

2021-12-07 21:55:00 来源:中国专利 TAG:


1.本发明涉及图像数据处理技术领域,更具体地,涉及一种基于语义关联的多尺度双目立体匹配方法及装置。


背景技术:

2.双目立体匹配研究在车辆自动驾驶、虚拟现实、三维重建、目标检测与识别领域等具有重要意义。立体匹配旨在为校正后的左右视图提供稠密的匹配对。对于双目相机拍摄同一场景的左、右两幅视点图像,要想获取图像的深度信息,需要运用立体匹配算法获取视差图,进而获取深度图。在自动驾驶场景中,自动驾驶车辆可以配备双目摄像头来拍摄道路图像,算法模型根据输入的双目图像进行立体匹配得到视差图,再通过相机参数转为深度图,从而获取物体可靠的深度信息,有利于后续目标的检测,使自动驾驶车辆能够有效避开障碍,安全行驶。立体匹配的传统方法可分为局部和全局两类:局部算法一般在代价聚合之后,通过选择最低匹配代价来得到对应的视差。全局算法没有进行代价聚合,而是定义了一个包含数据项和平滑项的能量函数并通过最小化能量函数来求得视差。全局算法由于非常高的运算量或内存消耗,在大多数场合都无法应用,而局部算法虽然速度很快,但是鲁棒性差,匹配质量比较低。传统的立体匹配算法虽然取得了一定的效果,但其推导过程复杂,计算量大,随着深度卷积神经网络(cnn)的发展,更多学者偏向于利用深度学习来解决双目图像的立体匹配任务。目前基于深度学习的双目立体匹配算法成为主流,同时在匹配精度上也比传统算法更有优势。
3.现阶段,基于深度学习的双目立体匹配算法具有以下难点,目前主流的论文或专利难以充分解决:
4.一是现有方法对注意力机制的使用比较单一,未考虑到结合注意力机制和语义分割分类结果来构建不同类别之间的语义关联关系。实际应用中,例如自动驾驶场景下的双目立体匹配,对于地面的像素基本上是连续的,是比较容易估计的,相对来说,对于车或者人这些小目标来说,视差估计是比较难的,但由于车或者人往往都是与地面接触的,因此可以通过构建不同类别的像素之间的语义关联,以实现根据地面信息来辅助其他类别的像素的视差估计,从而提高小目标的视差估计精度。
5.二是现有方法未考虑到不同分辨率特征对于视差代价体构建的影响。现有方法往往采用backbone网络获取的特征直接去构建视差代价体,而未考虑到不同分辨率特征对于不同视差范围的影响是不同的。对于那些视差范围比较小的像素点,往往更依赖于高分辨率的特征来提供更多的局部细节信息;对于那些视差范围比较大的像素点,除了局部信息之外,还需要一些低分辨率的特征来提供更多的语义信息。因此,在构建视差代价体的时候需要充分利用多尺度特征来提供更丰富的语义特征和细节信息。


技术实现要素:

6.鉴于上述问题,本发明的目的是提供一种基于语义关联的多尺度双目立体匹配方
法及装置,结合语义信息以及多尺度特征构建代价体的双目立体匹配方法能够有效地提高视差估计的精度。
7.本发明第一方面提供一种基于语义关联的多尺度双目立体匹配方法,包括以下步骤:
8.获取校正后的左相机图像和右相机图像,即左视图和右视图;
9.将左视图和/或右视图输入到语义分割网络获取左视图和/或右视图的语义分割mask(掩模)分类结果;
10.通过2d特征提取网络分别提取左视图、右视图的多尺度的2d特征;
11.通过2d卷积对左视图和/或右视图的mask分类结果进行处理,得到包含类别信息的语义特征,将该语义特征作为权重加权到2d特征提取网络得到的特征结果上,并采用自注意力机制构建不同类别物体之间的语义关联关系;
12.根据2d特征提取网络得到的多尺度特征进行多尺度视差代价体cost volume构建;
13.构建好的多尺度视差代价体cost volume通过3d cnn(三维卷积神经网络)网络实现视差代价传播,3d cnn网络进行视差代价传播的时候需结合不同类别物体之间的语义关联关系;
14.通过视差回归操作得到视差结果,生成最终的视差图。
15.本方案中,多尺度特征提取使用backbone骨干网络,backbone骨干网络可选用resnet50、resnet101、vggnet、densenet或unet等网络结构。
16.本方案中,在backbone骨干网络后面再采用不同尺度的池化、下采样、卷积操作或者spp空间金字塔结构得到多尺度的特征。
17.本方案中,多尺度视差代价体cost volume构建针对不同尺度的特征进行视差代价体构建,然后将不同尺度的视差代价体通过3d卷积层之后拼接得到多尺度视差代价体cost volume,后续的3d特征聚合网络基于该多尺度视差代价体cost volume进行代价聚合。
18.本方案中,多尺度视差代价体cost volume构建的具体方法为:
19.对于来自左视图的多尺度特征和来自右视图的多尺度特征其中n表示特征尺度的种类数,对同样尺度的特征形成特征对,首先在不同视差维度上通过concat操作得到h
×
w
×
d
×
g的4d视差代价体,其中h,w分别为特征图的高和宽,d为设定的最大视差值,g为分组数,在每个视差维度上又采用分组关联操作来计算该特征对的相似性;分组关联是将对特征进行correlation相似性计算,将特征的乘积按照通道维度进行分组,并在每组内计算correlation,具体计算公式如下:
[0020][0021]
其中,x表示特征图的高,y表示特征图的宽,d表示设定的最大视差值,,d表示某个具体的视差值,取值集合为(1,2,

,d),g表示分组的个数,n
c
表示特征的通道数,n
g
表示每
组特征的通道数;
[0022]
对于不同尺度的特征对,其构成视差代价体尺寸不同,需要进行多尺度代价体融合,多尺度代价体融合是指对不同尺度的视差代价体采用3d卷积操作,使其尺寸与其他尺度的视差代价体尺寸相同,然后将它们在通道维度上进行拼接,从而构建出最终的多尺度视差代价体cost volume,计算公式如下:c
total
(x,y,d,g1 g2

g
n
)=concat{conv3d(c1(x,y,d,g1)),conv3d(c2(x,y,d,g1)),

,conv3d(c
n
(x,y,d,g1)}
ꢀꢀ
(3)
[0023]
其中g
i
(i=1,2,

,n)表示第i种尺度特征对构成视差代价体时设置的分组数。
[0024]
本方案中,自注意力机制构建不同类别物体之间的语义关联关系,具体方法为:
[0025]
对包含丰富类别信息的语义分割mask分类结果进行特征提取,并将该语义特征对图像特征进行加权,再结合自注意力机制来构建不同类别之间的语义关联关系;语义分割的mask分类结果给出了图像中每个像素的分类信息,首先对左视图和/或右视图进行语义分割得到每个像素的mask分类结果,对分类结果进行卷积操作得到包含类别信息的语义特征,然后将该语义特征作为权重对从图像提取的2d特征进行加权,即进行点乘操作,再对加权后的特征采用self

attention得到带有不同类别之间的关联关系的特征结果,最后将该特征图通过复制操作来扩展维度到4d用于辅助后续3d cnn的代价聚合模块中精细代价体的生成,其中复制的数目为模型训练时设置的最大视差值。
[0026]
本方案中,所述3d cnn的代价聚合模块包含若干堆叠的沙漏3d cnn结构沿着视差维度和空间维度聚合特征信息,同时采用了语义关联模块的特征结果用于辅助精细代价体的生成。
[0027]
本方案中,所述视差回归作用是根据精细化后的cost volume得到视差预测结果,具体方法为:
[0028]
首先通过插值操作将精细化后的cost volume通过插值得到尺寸为h
×
w
×
d的特征图,其中h和w为原图的宽和高,d为设定的最大视差值,最后通过softmax视差回归得到尺寸为h
×
w的视差预测图,其中每个像素位置的视差预测结果计算公式如下:
[0029][0030]
其中d表示视差范围内的视差值,c
d
为视差为d时的预测代价,σ(
·
)代表softmax操作;
[0031]
网络模型训练时的损失函数采用smooth l
1 loss,具体定义如下:
[0032][0033]
其中
[0034][0035]
其中n表示带标注的像素个数,d表示像素的视差真值,表示预测的视差值;
[0036]
设置4个输出,预测结果分别为模型最终的损失计算公式如下:
[0037][0038]
其中α
i
表示第i个视差预测图的权重系数,d
*
表示视差真值图。
[0039]
本发明第二方面提供一种基于语义关联的多尺度双目立体匹配装置,其特征在
于,包括:
[0040]
图像获取模块:用于获取校正后的左相机图像和右相机图像,即左视图和右视图;
[0041]
语义分割网络模块:用于对左视图和/或右视图进行语义分割,得到左视图和/或右视图的语义分割mask分类结果;
[0042]
2d特征提取网络模块:用于分别提取左视图、右视图不同尺度的2d特征;
[0043]
语义关联模块:用于通过2d卷积对左视图和/或右视图的mask分类结果进行处理,得到包含类别信息的语义特征,将该语义特征作为权重加权到2d特征提取网络得到的图像特征结果上,并采用自注意力机制构建不同类别物体之间的语义关联关系;
[0044]
多尺度cost volume构建模块:用于根据2d特征提取网络得到的多尺度特征进行多尺度视差代价体cost volume构建;
[0045]
3d cnn网络模块:用于对构建好的cost volume进行视差代价传播,3d cnn网络进行代价传播的时候需结合不同类别物体之间的语义关联关系;
[0046]
视差回归模块:用于通过视差回归得到视差结果,生成最终的视差图。
[0047]
本发明第三方面提供一种计算机可读存储介质,所述计算机可读存储介质中包括一种基于语义关联的多尺度双目立体匹配方法程序,所述基于语义关联的多尺度双目立体匹配方法程序被处理器执行时,实现所述的基于语义关联的多尺度双目立体匹配方法。
[0048]
与现有技术相比,本发明技术方案的有益效果是:本发明提供一种基于语义关联的多尺度双目立体匹配方法及装置,结合语义分割分类结果和自注意力机制实现对不同物体的区分处理,并构建不同类别的像素之间的语义关联关系。首先对语义分割得到的分类结果进行2d卷积操作得到具有类别区分度的语义特征,然后将其作为权重加权到2d特征提取网络得到的特征结果上,得到类别信息加权后的语义特征,从而有助于提高网络对不同物体的分辨能力,之后对该特征采用self

attention自注意力机制来构建不同类别的像素之间的关联关系,有利于后续视差回归时充分考虑其它类别的像素对自身视差预测提供的有效信息,从而提高视差估计的准确性。本发明构建多尺度视差代价体cost volume,充分考虑不同分辨率特征对视差估计效果的影响。由于2d特征提取网络(backbone骨干网络)提取的不同层的特征尺度不一样,低分辨率特征感受野比较大,包含丰富的语义以及上下文信息,有助于整体和大范围的视差估计,而高分辨率特征感受野比较小,包含丰富的细节信息,有助于小范围的视差估计,因此在构建视差代价体时对2d特征提取网络提取的每一层特征进行分组关联相似性计算,从而构建不同尺度的视差代价体,然后采用3d卷积操作将不同尺度的代价体变为相同尺寸后通过通道维度的拼接操作从而实现多尺度代价体融合,得到最终的多尺度视差代价体cost volume,充分利用低分辨率特征提供的丰富语义信息和高分辨率特征提供的细节信息,从而有效提高整体的视差估计精度。
附图说明
[0049]
图1为基于语义关联的多尺度双目立体匹配方法的流程图。
[0050]
图2为由三种不同尺度特征构建多尺度视差代价体cost volume的过程示意图。
[0051]
图3为构建不同类别物体之间的语义关联关系的过程示意图。
[0052]
图4为基于语义关联的多尺度双目立体匹配装置的示意图。
具体实施方式
[0053]
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本技术的实施例及实施例中的特征可以相互组合。
[0054]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
[0055]
图1示出了本技术一种基于语义关联的多尺度双目立体匹配方法的流程图。
[0056]
如图1所示,本发明公开一种基于语义关联的多尺度双目立体匹配方法,其特征在于,包括以下步骤:
[0057]
s1:获取校正后的左相机图像和右相机图像,即左视图和右视图;
[0058]
s2:将左视图和/或右视图输入到语义分割网络获取左视图和/或右视图的语义分割mask分类结果;
[0059]
s3:通过2d特征提取网络分别提取左视图、右视图的多尺度的2d特征;
[0060]
s4:通过2d卷积对左视图和/或右视图的mask分类结果进行处理,得到包含类别信息的语义特征,将该语义特征作为权重加权到2d特征提取网络得到的特征结果上,并采用自注意力机制构建不同类别物体之间的语义关联关系;
[0061]
s5:根据2d特征提取网络得到的多尺度特征进行多尺度视差代价体cost volume构建;
[0062]
s6:构建好的多尺度视差代价体cost volume通过3d cnn(三维卷积神经网络)网络实现视差代价传播,3d cnn网络进行视差代价传播的时候需结合不同类别物体之间的语义关联关系;
[0063]
s7:通过视差回归操作得到视差结果,生成最终的视差图。
[0064]
需要说明的是,将左视图和/或右视图输入到语义分割网络获取左视图和/或右视图的语义分割mask分类结果。无论选取左视图还是右视图或者同时选取都可以,本实施例中选取左视图,获取左视图的语义分割mask分类结果。对于语义分割网络,直接选取现有的效果比较好的语义分割网络即可,然后只对左视图进行语义分割,得到左视图的语义分割mask分类结果。
[0065]
根据本发明实施例,多尺度特征提取使用backbone骨干网络,backbone骨干网络可选用resnet50、resnet101、vggnet、densenet或unet等网络结构。
[0066]
需要说明的时,采用以上任意网络均可构成backbone骨干网络。例如,针对resnet50网络,提取的特征输出分为4层,每一层的特征感受野不一样,越前面的特征层感受野越小,分辨率越高,包含丰富的局部细节信息;越后面的特征层感受野越大,分辨率越低,包含丰富的语义信息。根据backbone网络可提取到不同分辨率的特征,此外再在backbone骨干网络后面再采用不同尺度的池化、下采样、卷积操作或者spp空间金字塔结构得到多尺度的特征。
[0067]
根据本发明实施例,多尺度视差代价体cost volume构建针对不同尺度的特征进行视差代价体构建,然后将不同尺度的视差代价体通过3d卷积层之后拼接得到多尺度视差代价体cost volume,后续的3d特征聚合网络基于该多尺度视差代价体cost volume进行代
价聚合。
[0068]
图2示出了由三种不同尺度特征去构建多尺度视差代价体cost volume的过程。
[0069]
根据本发明实施例,多尺度视差代价体cost volume构建的具体方法为:
[0070]
对于来自左视图的多尺度特征和来自右视图的多尺度特征其中n表示特征尺度的种类数,对同样尺度的特征形成特征对,首先在不同视差维度上通过concat操作得到h
×
w
×
d
×
g的4d视差代价体,所述concat操作是指将两个向量在某一个维度上进行拼接。其中h,w分别为特征图的高和宽,d为设定的最大视差值,g为分组数,在每个视差维度上又采用分组关联操作来计算该特征对的相似性;分组关联是将对特征进行correlation相似性计算,将特征的乘积按照通道维度进行分组,并在每组内计算correlation,具体计算公式如下:
[0071][0072]
其中,x表示特征图的高,y表示特征图的宽,d表示设定的最大视差值,,d表示某个具体的视差值,取值集合为(1,2,

,d),g表示分组的个数,n
c
表示特征的通道数,n
g
表示每组特征的通道数。
[0073]
对于不同尺度的特征对,其构成视差代价体尺寸不同,需要进行多尺度代价体融合,多尺度代价体融合是指对不同尺度的视差代价体采用3d卷积操作,也就是conv3d,3d卷积操作与2d卷积类似,只是卷积核由二维变成了三维,由于此处的视差代价体是4d的特征图,因此需要采用3d卷积对其进行进行处理,使其尺寸与其他尺度的视差代价体尺寸相同,然后将它们在通道维度上进行拼接,从而构建出最终的多尺度视差代价体cost volume,计算公式如下:c
total
(x,y,d,g1 g2

g
n
)=concat{conv3d(c1(x,y,d,g1)),conv3d(c2(x,y,d,g1)),

,conv3d(c
n
(x,y,d,g1)}
ꢀꢀ
(3)
[0074]
其中g
i
(i=1,2,

,n)表示第i种尺度特征对构成视差代价体时设置的分组数,本发明中n的取值为3,本领域技术人员可以根据实际应用和具体实验进行调整。
[0075]
需要说明的是,多尺度视差代价体cost volume的构建可以有多种方式,本实施方式中采用了对每种尺度的特征分别进行相关性计算,然后通过3d卷积进行多尺度信息融合来充分考虑不同分辨率特征对于视差估计的影响。
[0076]
根据本发明实施例,如图3所示,自注意力机制构建不同类别物体之间的语义关联关系,具体方法为:
[0077]
对包含丰富类别信息的语义分割mask分类结果进行特征提取,并将该语义特征对图像特征进行加权,再结合自注意力机制来构建不同类别之间的语义关联关系。语义分割的mask分类结果给出了图像中每个像素的分类信息,首先对左视图进行语义分割得到每个像素的mask分类结果,对分类结果进行卷积操作得到包含类别信息的语义特征,然后将该语义特征作为权重对从图像提取的2d特征进行加权,即进行点乘操作,再对加权后的特征采用self

attention(自注意力机制)得到带有不同类别之间的关联关系的特征结果,最后将该特征图通过复制操作来扩展维度到4d用于辅助后续3d cnn的代价聚合模块中精细代
价体的生成,其中复制的数目为模型训练时设置的最大视差值。
[0078]
图3为构建不同类别物体之间的语义关联关系的过程示意图。
[0079]
需要说明的是,此处采用2d attention再进行维度的扩展相较于直接对3d特征图进行attention操作计算量显著降低,大大减少了模型的参数。
[0080]
根据本发明实施例,所述3d cnn的代价聚合模块包含一系列堆叠的沙漏3d cnn结构沿着视差维度和空间维度聚合特征信息,同时采用了语义关联模块的特征结果用于辅助精细代价体的生成。
[0081]
3d代价聚合模块由两个基本的卷积块和3个重复的沙漏结构组成,每个沙漏内部结构相同,并在每个沙漏结构的输入部分都加上了来自语义关联模块的特征,并将处理后的输出结果进行视差回归得到一个视差预测结果。
[0082]
需要说明的是,沙漏结构的设计采样了编码器

解码器(encoder

decoder)结构,从而能够获取丰富的上下文信息。每个沙漏内部结构先通过3d卷积进行下采样,再采用3d反卷积进行上采样恢复到输入时的特征尺度,并将输出结果重新加上语义关联模块得到的特征作为下一个沙漏结构的输入。其中3d cnn模块的卷积核大小均为3x3x3。
[0083]
根据本发明实施例,所述视差回归作用是根据精细化后的cost volume得到视差预测结果,具体方法为:
[0084]
首先通过插值操作将精细化后的cost volume通过插值得到尺寸为h
×
w
×
d的特征图,其中h和w为原图的宽和高,d为设定的最大视差值,本发明中取值为192,最后通过softmax视差回归得到尺寸为h
×
w的视差预测图,其中每个像素位置的视差预测结果计算公式如下:
[0085][0086]
其中d表示视差范围内的视差值,c
d
为视差为d时的预测代价,σ(
·
)代表softmax操作;
[0087]
网络模型训练时的损失函数采用smooth l
1 loss,smooth l
1 loss是一个分段函数,综合了l
1 loss和l
2 loss两个损失函数的优点,相比于l
1 loss函数,可以收敛得更快,相比于l2损失函数,对离群点、异常值不敏感,其具体公式定义如下:
[0088][0089]
其中
[0090][0091]
其中n表示带标注的像素个数,d表示像素的视差真值,表示预测的视差值,x表示视差真值d和视差预测值的差值;
[0092]
设置4个输出,预测结果分别为模型最终的损失计算公式如下:
[0093][0094]
其中α
i
表示第i个视差预测图的权重系数,d
*
表示视差真值图。
[0095]
根据本发明实施例,参数α
i
设置为α0=0.5,α1=0.5,α2=0.7,α3=1.0。
[0096]
根据本发明实施例,将左视图输入到语义分割网络获取左视图的语义分割mask分
类结果;根据物体属性的不同分类结果包括地面、天空、云层、建筑物、路灯、树木、行人、大型机动车、小型机动车、非机动车、交通标识、道路标线。
[0097]
需要说明的是,由于建筑物、路灯、树木、车、人、道路标线往往都是与地面接触的,而云层往往都是与天空接触的,因此通过结合语义分割分类结果和自注意力机制构建不同类别的像素之间的语义关联关系,利用地面信息来辅助车或者人的视差估计,从而有效提高小目标的视差估计精度。
[0098]
为验证本发明基于语义关联的多尺度双目立体匹配的效果,进行了验证实验。由于本发明算法主要用于自动驾驶场景下的双目视差估计,因此数据集的选取上全部使用自动驾驶场景下的数据集进行模型的训练。本发明中采用的训练数据集为kitti 3d目标检测数据集和kitti2015双目立体匹配数据集。由于kitti3d目标检测数据集没有提供视差真值,本发明中训练真值的获取采用了激光雷达投影来获取稀疏的视差真值图,然后采用深度补全的方法得到密集的深度图作为最终的视差真值来预训练网络,然后将预训练好的网络再在kitti2015的训练集上进行finetune和测试。在语义分割结果的获取方面,本发明直接采用了目前现有的语义分割算法来获取语义分割mask结果,没有进行专门的训练。
[0099]
本发明的最终评价指标都在kitti2015验证集上进行,kitti2015提供了200张带有视差真值的图片,psmnet的划分方式为160张训练集,40张验证集,gwcnet的划分方式为180张训练集,20张验证集,本发明中分别按照论文各自的划分方式进行实验,并进行了验证集上的结果指标比较。实验结果也验证了本发明的有效性和高精度特点。
[0100]
本发明的网络模型实现采用pytorch深度学习框架,并使用了adam优化器,其中的参数设置为β1=0.9,β2=0.999。模型训练时的输入图片尺寸为256x512,batchsize设置为12,显卡配置为4块nvidia titan v gpu。模型首先在kitti 3d目标检测数据集上预训练40epochs,学习率的设置为0.001,然后在kitti2015数据集上finetune 300epochs,学习率的设置为第一个100epochs设置为0.001,第二个100epochs设置为0.0005,第三个100epochs设置为0.0001。
[0101]
如图4所示,本发明公开一种基于语义关联的多尺度双目立体匹配装置,包括:
[0102]
图像获取模块:用于获取校正后的左相机图像和右相机图像,即左视图和右视图;
[0103]
语义分割网络模块:用于对左视图和/或右视图进行语义分割,得到左视图和/或右视图的语义分割mask分类结果;
[0104]
2d特征提取网络模块:用于分别提取左视图、右视图不同尺度的2d特征;
[0105]
语义关联模块:用于通过2d卷积对左视图和/或右视图的mask分类结果进行处理,得到包含类别信息的语义特征,将该语义特征作为权重加权到2d特征提取网络得到的图像特征结果上,并采用自注意力机制构建不同类别物体之间的语义关联关系;
[0106]
多尺度cost volume构建模块:用于根据2d特征提取网络得到的多尺度特征进行多尺度视差代价体cost volume构建;
[0107]
3d cnn网络模块:用于对构建好的cost volume进行视差代价传播,3d cnn网络进行代价传播的时候需结合不同类别物体之间的语义关联关系;
[0108]
视差回归模块:用于通过视差回归得到视差结果,生成最终的视差图。
[0109]
需要说明的是,将左视图和/或右视图输入到语义分割网络获取左视图和/或右视图的语义分割mask分类结果。无论选取左视图还是右视图都可以,本实施例中选取左视图,
获取左视图的语义分割mask分类结果。对于语义分割网络,直接选取现有的效果比较好的语义分割网络,然后只对左视图进行语义分割,得到左视图的语义分割mask分类结果。
[0110]
根据本发明实施例,多尺度特征提取使用backbone骨干网络,backbone骨干网络可选用resnet50、resnet101、vggnet、densenet或unet等网络结构。例如针对resnet50网络,提取的特征输出分为4层,每一层的特征感受野不一样,越前面的特征层感受野越小,分辨率越高,包含丰富的局部细节信息;越后面的特征层感受野越大,分辨率越低,包含丰富的语义信息。根据backbone网络可提取到不同分辨率的特征,此外再在backbone骨干网络后面再采用不同尺度的池化、下采样、卷积操作或者spp空间金字塔结构得到多尺度的特征。
[0111]
根据本发明实施例,多尺度视差代价体cost volume构建针对不同尺度的特征进行视差代价体构建,然后将不同尺度的视差代价体通过3d卷积层之后拼接得到多尺度视差代价体cost volume,后续的3d特征聚合网络基于该多尺度视差代价体cost volume进行代价聚合。
[0112]
根据本发明实施例,多尺度视差代价体cost volume构建的具体方法为:
[0113]
对于来自左视图的多尺度特征和来自右视图的多尺度特征其中n表示特征尺度的种类数,对同样尺度的特征形成特征对,首先在不同视差维度上通过concat操作得到h
×
w
×
d
×
g的4d视差代价体,其中h,w分别为特征图的高和宽,d为设定的最大视差值,g为分组数,在每个视差维度上又采用分组关联操作来计算该特征对的相似性;分组关联是将对特征进行correlation相似性计算,将特征的乘积按照通道维度进行分组,并在每组内计算correlation,具体计算公式如下:
[0114][0115][0116]
其中,x表示特征图的高,y表示特征图的宽,d表示设定的最大视差值,,d表示某个具体的视差值,取值集合为(1,2,

,d),g表示分组的个数,n
c
表示特征的通道数,n
g
表示每组特征的通道数;
[0117]
对于不同尺度的特征对,其构成视差代价体尺寸不同,需要进行多尺度代价体融合,多尺度代价体融合是指对不同尺度的视差代价体采用3d卷积操作,使其尺寸与其他尺度的视差代价体尺寸相同,然后将它们在通道维度上进行拼接,从而构建出最终的多尺度视差代价体cost volume,计算公式如下:c
total
(x,y,d,g1 g2

g
n
)=concat{conv3d(c1(x,y,d,g1)),conv3d(c2(x,y,d,g1)),

,conv3d(c
n
(x,y,d,g1)}
ꢀꢀ
(3)
[0118]
其中g
i
(i=1,2,

,n)表示第i种尺度特征对构成视差代价体时设置的分组数。
[0119]
根据本发明实施例,如图3所示,自注意力机制构建不同类别物体之间的语义关联关系,具体方法为:
[0120]
对包含丰富类别信息的语义分割mask分类结果进行特征提取,并将该语义特征对图像特征进行加权,再结合自注意力机制来构建不同类别之间的语义关联关系。语义分割的mask分类结果给出了图像中每个像素的分类信息,首先对左视图进行语义分割得到每个
像素的mask分类结果,对分类结果进行卷积操作得到包含类别信息的语义特征,然后将该语义特征作为权重对从图像提取的2d特征进行加权,即进行点乘操作,再对加权后的特征采用self

attention(自注意力机制)得到带有不同类别之间的关联关系的特征结果,最后将该特征图通过复制操作来扩展维度到4d用于辅助后续3d cnn的代价聚合模块中精细代价体的生成,其中复制的数目为模型训练时设置的最大视差值。
[0121]
需要说明的是,此处采用2d attention再进行维度的扩展相较于直接对3d特征图进行attention操作计算量显著降低,大大减少了模型的参数。
[0122]
根据本发明实施例,所述3d cnn的代价聚合模块包含一系列堆叠的沙漏3d cnn结构沿着视差维度和空间维度聚合特征信息,同时采用了语义关联模块的特征结果用于辅助精细代价体的生成。
[0123]
3d代价聚合模块由两个基本的卷积块和3个重复的沙漏结构组成,每个沙漏内部结构相同,并在每个沙漏结构的输入部分都加上了来自语义关联模块的特征,并将处理后的输出结果传给视差回归模块得到一个视差预测结果。沙漏结构的设计采样了编码器

解码器(encoder

decoder)结构,从而能够获取丰富的上下文信息。每个沙漏内部结构先通过3d卷积进行下采样,再采用3d反卷积进行上采样恢复到输入时的特征尺度,并将输出结果重新加上语义关联模块得到的特征作为下一个沙漏结构的输入。其中3d cnn模块的卷积核大小均为3x3x3。
[0124]
根据本发明实施例,所述视差回归作用是根据精细化后的cost volume得到视差预测结果,具体方法为:
[0125]
首先通过插值操作将精细化后的cost volume通过插值得到尺寸为h
×
w
×
d的特征图,其中h和w为原图的宽和高,d为设定的最大视差值,最后通过softmax视差回归得到尺寸为h
×
w的视差预测图,其中每个像素位置的视差预测结果计算公式如下:
[0126][0127]
其中d表示视差范围内的视差值,c
d
为视差为d时的预测代价,σ(
·
)代表softmax操作;
[0128]
网络模型训练时的损失函数采用smooth l
1 loss,具体定义如下:
[0129][0130]
其中
[0131][0132]
其中n表示带标注的像素个数,d表示像素的视差真值,表示预测的视差值;
[0133]
设置4个输出,预测结果分别为模型最终的损失计算公式如下:
[0134][0135]
其中α
i
表示第i个视差预测图的权重系数,d
*
表示视差真值图。
[0136]
根据本发明实施例,参数α
i
设置为α0=0.5,α1=0.5,α2=0.7,α3=1.0。
[0137]
根据本发明实施例,将左视图输入到语义分割网络获取左视图的语义分割mask分类结果;根据物体属性的不同分类结果包括地面、天空、云层、建筑物、路灯、树木、行人、大
型机动车、小型机动车、非机动车、交通标识、道路标线。
[0138]
需要说明的是,由于建筑物、路灯、树木、车、人、道路标线往往都是与地面接触的,而云层往往都是与天空接触的,因此通过结合语义分割分类结果和自注意力机制构建不同类别的像素之间的语义关联关系,利用地面信息来辅助车或者人的视差估计,从而有效提高小目标的视差估计精度。
[0139]
本发明还公开一种计算机可读存储介质,所述计算机可读存储介质中包括一种基于语义关联的多尺度双目立体匹配方法程序,所述基于语义关联的多尺度双目立体匹配方法程序被处理器执行时,实现所述的基于语义关联的多尺度双目立体匹配方法。
[0140]
本发明提供一种基于语义关联的多尺度双目立体匹配方法及装置,结合语义分割分类结果和自注意力机制实现对不同物体的区分处理,并构建不同类别的像素之间的语义关联关系。首先对语义分割得到的分类结果进行2d卷积操作得到具有类别区分度的语义特征,然后将其作为权重加权到2d特征提取网络得到的特征结果上,得到类别信息加权后的语义特征,从而有助于提高网络对不同物体的分辨能力,之后对该特征采用self

attention自注意力机制来构建不同类别的像素之间的关联关系,有利于后续视差回归时充分考虑其它类别的像素对自身视差预测提供的有效信息,从而提高视差估计的准确性。本发明构建多尺度视差代价体cost volume,充分考虑不同分辨率特征对视差估计效果的影响。由于2d特征提取网络(backbone骨干网络)提取的不同层的特征尺度不一样,低分辨率特征感受野比较大,包含丰富的语义以及上下文信息,有助于整体和大范围的视差估计,而高分辨率特征感受野比较小,包含丰富的细节信息,有助于小范围的视差估计,因此在构建视差代价体时对2d特征提取网络提取的每一层特征进行分组关联相似性计算,从而构建不同尺度的视差代价体,然后采用3d卷积操作将不同尺度的代价体变为相同尺寸后通过通道维度的拼接操作从而实现多尺度代价体融合,得到最终的多尺度视差代价体cost volume,充分利用低分辨率特征提供的丰富语义信息和高分辨率特征提供的细节信息,从而有效提高整体的视差估计精度。
[0141]
对于自动驾驶领域,由于不同物体,例如行人、车辆、地面等差异较大,如果对其不加区分会导致精度的下降。因此采用语义分割网络得到图片的像素分类结果来提高网络对于不同物体的分辨能力,再结合注意力机制从而让网络自主学习对不同类别的像素视差计算的区分。
[0142]
并且,由于不同类别的物体特点不一样,视差估计难度也不一样,例如自动驾驶场景下的图片,对于地面的像素基本上是连续的,是比较容易估计的,相对来说,对于车或者人这些小目标来说,像素偏少、特征不够明显,进行视差估计是比较难的,但由于车或者人往往都是与地面接触的,因此通过结合语义分割分类结果和自注意力机制构建不同类别的像素之间的语义关联关系,利用地面信息来辅助车或者人的视差估计,从而有效提高小目标的视差估计精度。
[0143]
本发明中所提出的基于语义关联的多尺度双目立体匹配算法主要用于自动驾驶场景下基于双目视觉的目标深度估计,能够有效提高目标的深度预测精度,从而更好地进行前方物体的检测和障碍避免,提升自动驾驶的安全性和可靠性。
[0144]
在本技术所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为
一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0145]
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0146]
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0147]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0148]
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
再多了解一些

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

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

相关文献