基于知识蒸馏的三维目标检测方法

未命名 07-12 阅读:114 评论:0


1.本发明属于计算机视觉技术领域,涉及一种基于知识蒸馏的三维目标检测方法,具体是一种用于自动驾驶场景中三维目标检测的深度神经网络的方法。


背景技术:

2.三维物体检测是三维场景感知中不可或缺的一环,在现实世界中有着广泛的应用,特别是在自动驾驶领域。自动驾驶,旨在使车辆智能地感知周围环境,并在很少或无需人力的情况下安全行驶,近年来取得了快速发展。自动驾驶技术已广泛应用于自动驾驶卡车、无人驾驶出租车、送货机器人等多种场景,能够减少人为错误,提高道路安全。作为自动驾驶系统的核心组成部分,车辆感知通过各种传感器输入帮助自动驾驶汽车了解周围环境。感知系统的输入一般是多模态数据(来自摄像头的图像数据、来自lidar的点云、高精地图等),并且会预测道路上关键要素的几何和语义信息。高质量的感知结果可作为轨迹预测和路径规划等后续步骤的可靠依据。
3.为了全面了解驾驶环境,感知系统涉及到许多视觉任务,例如目标检测和跟踪、车道线检测、语义和实例分割等。在这些感知任务中,3d目标检测是车辆感知系统中最不可或缺的任务之一。3d目标检测旨在预测3d空间中关键目标的位置、大小和类别,例如机动车、行人、骑自行车的人等。与仅在图像上生成2d边界框并忽略目标与本车的实际距离信息的2d目标检测相比,3d目标检测侧重于对真实世界3d坐标系中目标的定位和识别。3d目标检测在现实世界坐标中预测的几何信息可以直接用于测量本车与关键目标之间的距离,并进一步帮助规划行驶路线和避免碰撞。
4.三维目标检测的研究现状可以归纳为以下几个方面:
5.从传感器角度来说,许多类型的传感器都可以为3d目标检测提供原始数据,相机和激光雷达是两种最常采用的传感器类型。相机价格便宜且易于使用,并且可以从某个角度捕捉场景信息。相机能产生w
×h×
3的图像,用于3d目标检测的输入,其中w和h是一幅图像的宽和高,每个像素有3个rgb通道。尽管价格便宜,但相机应用在3d目标检测方面存在某些限制。首先,相机只捕捉外观信息,不能直接获取场景的3d结构信息。另一方面,3d目标检测通常需要在3d空间中进行准确定位,而从图像数据获取3d信息异常困难。此外,基于图像的3d检测很容易受到极端天气和时间条件的影响。在夜间或雾天从图像中检测目标比在晴天检测要困难得多,这样的自动驾驶系统无法保证鲁棒性。
6.作为相机的替代解决方案,激光雷达传感器可以通过发射激光,然后测量其反射信息来获得场景中的3d信息。一个激光雷达在一个扫描周期内发射光束并进行多次测量可以产生一个深度图像,每个深度图的像素有3个通道,分别为球坐标系中的深度r、方位角α和倾角φ。
7.深度图像是激光雷达传感器获取的原始数据格式,可以通过将球坐标转换为笛卡尔坐标进一步转换为点云。一个点云可以表示为n
×
3,其中n表示一个场景中的点数,每个点有3个xyz坐标通道。深度图像和点云都包含由激光雷达传感器直接获取的准确3d信息。
8.因此,与相机相比,激光雷达更适合检测3d空间中的目标,并且激光雷达也更不易受时间和天气变化的影响。然而,激光雷达比摄像头贵得多,这限制了在驾驶场景中的大规模应用。所以基于单目图像去做3d检测依然是具有很大的研究价值的。


技术实现要素:

9.本发明的目的是提供基于单张rgb图像去进行三维目标检测的深度神经网络。本发明首先使用投影的激光点云数据训练教师网络,然后在教师网络的指导下训练本发明的单目三维目标检测器。本发明认为,与之前的工作相比,所提出的方法具有以下两个优点:首先,本发明的方法直接从以激光雷达作为输入的教师网络学习3d空间线索,而不是rgb图像预测出来的深度图。这种设计通过避免代理任务中的信息丢失而表现得更好。其次,本发明的方法不会改变基线模型的网络架构,因此不会引入额外的计算成本。为了达到上述技术目的,本发明采用的技术方案如下:
10.为了达到上述技术目的,本发明采用的技术方案如下:
11.一种基于知识蒸馏的三维目标检测方法,应用于自动驾驶场景中。该三维目标检测方法包括以下步骤:
12.第一步,构建以激光点云作为输入的教师网络
13.将激光雷达采集到的点云通过相机内外参投影到图像平面上,得到稀疏的深度图,然后进行深度补全得到稠密的深度图。以此作为教师网络的输入。通过深度卷积网络提取该深度图的多尺度特征,并进行特征融合。将最终的特征输入到检测头模块得到3d检测结果的各个子结果。
14.第二步,构建以rgb图像为输入的学生网络,与教师网络唯一不同的是输入数据不同,教师网络的输入是激光点云,而学生网络的输入是rgb图像。
15.第三步,通过教师和学生网络的构建,分别得到了激光点云和rgb图像的多尺度特征图以及3d检测的结果。然后本发明提出三种类型的知识蒸馏方式,分别为特征空间的场景蒸馏采用sf模块、特征空间的目标蒸馏采用of模块、结果空间的目标蒸馏采用or模块。这三种蒸馏方式将教师网络从激光点云数据中提取到的深度信息传递给rgb图像特征中。
16.对于sf模块,只输入1/16,1/32,1/64三个尺度的特征图,对于每个尺度的特征图,通过计算一张亲和力图来表示各个像素之间的相似度关系。对于一张hxw的特征图,其亲和力图为hw x hw。对于rgb图像每个尺度会得到一张亲和力图,对于激光点云数据也能够得到得到类似形状的亲和力图。在这两个不同模态间,采用平滑损失函数拉近两者亲和力图的关系,使得不同模态间每个像素与周围邻域关系更加相似。
17.对于of模块,同样输入较小的三个尺度特征图,然后直接对rgb特征图和激光点云特征图的前景区域进行平滑损失函数约束。前景区域采用2d box的真值获取。该模块可以使得两个模态在特征空间的距离更加接近。
18.对于or模块,对于教师和学生网络的检测头结果进行约束,让激光点云的检测结果作为一种软标签去指导rgb网络的3d检测结果,监督区域除了每个目标的中心点之外,还根据每个目标的大小进行了标签的扩展。该模块可以使得rgb学生网络的检测结果更接近激光点云的检测结果。
19.本发明的有益效果:
20.(1)本发明是用于自动驾驶领域的视觉三维目标检测的深度学习方法,通过构建了以激光点云为输入的教师网络,来指导以视觉rgb图像作为输入的学生网络,从而达到提升纯视觉三维目标检测能力的目的。
21.(2)本发明中间的引导模块设计了三个子模块分别为sf,of,or来进行深度信息的引导。这三个模块分别从特征层面和结果层面给予一定的指导,提高模型从图像中提取3d信息的能力。
22.(3)本发明可以应用到任何一种三维目标检测网络里,并且不需要增加计算量,显著提升模型的三维检测精度,可以保证实时的推理速度,易于部署。
附图说明
23.图1为教师网络的示意图;
24.图2为学生网络的示意图;
25.图3为标签扩展操作示意图;图3(a)为未经过标签扩散的图;图3(b)经过标签扩散处理后的示意图;
26.图4为实施例结果图;图4(a)为图像空间的三维检测结果图;图4为点云空间的三维检测结果图。
具体实施方式
27.第一步,构建以激光点云作为输入的教师网络,其结构如图1所示。具体步骤如下:
28.1.1)首先将激光雷达采集到的点云通过相机内外参投影到图像平面上,得到稀疏的深度图,然后进行深度补全得到稠密的深度图。该深度图为h x w x 1,与对应的rgb图像具有相同的长和宽。
29.1.2)通过深度卷积网络提取该深度图的多尺度特征,主干网络部分本发明采用的是深度层级聚合网络:具体来说该网络经过多个树形层级结构处理。其中基本的结构单元为卷积+归一化处理+激活函数。整个特征提取网络可以提取到多尺度的特征表示,分别有1/64,1/32,1/16,1/8,1/4五个尺度的特征图。
30.1.3)采用一个多尺度特征融合网络将得到的多尺度的特征最终融合成1/n尺度,本发明最终融合到1/8尺度下,最后将融合后的特征图输入到检测头模块中,得到3d检测的结果。检测头的具体结构如下:包含热力图头,偏移量头,尺度头以及旋转角度头等部分,通过热力图的结果可以定位到图像中目标的粗略位置,结合偏移量头的结果又可以进一步得到准确的位置。再结合相机内外参,可以将该目标的二维位置映射到三维空间得到3d的结果,尺度头的结果为该目标的实际长宽高,旋转角度头的结果为在俯视图下的朝向角。这几个部分组成在一起,就得到了最终的3d检测框的结果。
31.第二步,构建以rgb图像为输入的学生网络,其结构如图2所示。具体步骤如下:
32.学生网络同样是由特征提取网络,特征融合网络和检测头三部分组成。为了简单化,学生网络中的特征提取网络,特征融合网络和检测头模块采用和教师网络相同的网络结构,这样一来两个网络可以得到相同的输出,唯一不同的是输入数据不同,教师网络的输入是激光点云,而学生网络的输入是rgb图像。
33.第三步,通过教师和学生网络的构建,分别得到了rgb图像和激光点云的多尺度特
征图以及3d检测的结果。然后本发明采用知识蒸馏的方式将教师网络提取到的激光点云多尺度特征中的深度信息传递给rgb图像中。本发明设计了三种类型的蒸馏方式,分别为特征空间的场景蒸馏采用sf模块,特征空间的目标蒸馏采用of模块,结果空间的目标蒸馏采用or模块。具体如下:
34.对于sf模块,只输入1/16,1/32,1/64三个尺度的特征图,对于每个尺度的特征图,去计算一张亲和力图来表示各个像素之间的相似度关系。对于一张hxw的特征图,其亲和力图为hw x hw。这样对于rgb图像每个尺度会得到一张亲和力图,对于激光点云数据也能够得到得到类似形状的亲和力图。在这两个不同模态间,采用平滑l1损失函数拉近两者亲和力图的关系,使得不同模态间每个像素与周围邻域关系更加相似。
35.对于of模块,同样输入较小的三个尺度特征图,然后直接对rgb特征图和激光点云特征图的前景区域进行平滑l1损失函数约束。前景区域采用2d box的真值获取。该模块可以使得两个模态在特征空间的距离更加接近。
36.对于or模块,对于教师和学生网络的检测头结果进行约束,让激光点云的检测结果作为一种软标签去指导rgb网络的3d检测结果,监督区域除了每个目标的中心点之外,还根据每个目标的大小进行了标签的扩展,如图4描述所示。该模块可以使得rgb学生网络的检测结果更接近激光点云的检测结果。
37.以上所述乃是本发明的具体实施例及所运用的技术原理,若依本发明的构想所作的改变,其所产生的功能作用仍未超出说明书及附图所涵盖的精神时,仍应属本发明的保护范围。

技术特征:
1.一种基于知识蒸馏的三维目标检测方法,其特征在于,包括以下步骤:第一步,构建以激光点云作为输入的教师网络将激光雷达采集到的点云通过相机内外参投影到图像平面上,得到稀疏的深度图,然后进行深度补全得到稠密的深度图;以此作为教师网络的输入;通过深度卷积网络提取该深度图的多尺度特征,并进行特征融合;将最终的特征输入到检测头模块得到3d检测结果的各个子结果;第二步,构建以rgb图像为输入的学生网络,与教师网络唯一不同的是输入数据不同,教师网络的输入是激光点云,而学生网络的输入是rgb图像;第三步,通过教师和学生网络的构建,分别得到了激光点云和rgb图像的多尺度特征图以及3d检测的结果;然后采用三种类型的知识蒸馏方式,分别为:特征空间的场景蒸馏采用sf模块、特征空间的目标蒸馏采用of模块、结果空间的目标蒸馏采用or模块;这三种蒸馏方式将教师网络从激光点云数据中提取到的深度信息传递给rgb图像特征中。2.根据权利要求1所述的一种基于知识蒸馏的三维目标检测方法,其特征在于,所述的三种类型的知识蒸馏方式具体如下:对于sf模块,只输入较小的三个尺度的特征图,对于每个尺度的特征图,通过计算一张亲和力图来表示各个像素之间的相似度关系;对于rgb图像每个尺度会得到一张亲和力图,对于激光点云数据也能够得到得到类似形状的亲和力图;在这两个不同模态间,采用平滑损失函数拉近两者亲和力图的关系,使得不同模态间每个像素与周围邻域关系更加相似;对于of模块,同样输入较小的三个尺度特征图,然后直接对rgb特征图和激光点云特征图的前景区域进行平滑损失函数约束;前景区域采用2d box的真值获取;该模块可以使得两个模态在特征空间的距离更加接近;对于or模块,对于教师和学生网络的检测头结果进行约束,让激光点云的检测结果作为一种软标签去指导rgb网络的3d检测结果,监督区域除了每个目标的中心点之外,还根据每个目标的大小进行扩展标签;该模块可以使得rgb学生网络的检测结果更接近激光点云的检测结果。

技术总结
本发明提供一种基于知识蒸馏的三维目标检测方法,是一种用于自动驾驶领域的视觉三维目标检测的深度学习方法。首先,分别构建以激光点云作为输入的教师网络、构建以RGB图像为输入的学生网络,得到激光点云和RGB图像的多尺度特征图以及3D检测的结果。然后采用三种类型的知识蒸馏方式,将教师网络从激光点云数据中提取到的深度信息传递给RGB图像特征中。本发明通过构建LiDARNet作为教师网络,来知道RGBNet学生网络的检测结果,中间的引导模块设计三个子模块来进行深度信息的引导,这三个模块分别从特征层面和结果层面给予一定的指导。本发明可以应用到任何一种三维目标检测网络里,并且不需要增加计算量,可以保证实时的推理速度,易于实现。易于实现。易于实现。


技术研发人员:王智慧 李豪杰 崇智禹
受保护的技术使用者:大连理工大学
技术研发日:2023.03.29
技术公布日:2023/7/7
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐