一种基于多视角和时序融合的泊车场景检测方法
【技术领域】
本发明涉及计算机视觉技术领域,具体涉及一种基于多视角和时序融合的泊车场景检测方法。
【背景技术】
传统的车位检测通常都在单一的鱼眼相机视图,或是多路鱼眼相机静态拼接的鸟瞰图(IPM)上进行,然后将超声波雷达和多路鱼眼相机的障碍物检测结果进行后融合,从而来判断车位是否被占据,以及形成泊车的可行驶区域。目前的泊车场景检测方法主要存在以下几个问题:
1、时序信息的欠缺:在泊车过程中,经常会出现车位和障碍物被遮挡的情况,特别是在自车泊入过程中,目标车位容易被自车遮挡,同时车位的检测又很依赖于角点和车位线的清晰度,因此单帧的检测会很不稳定。
2、逆透视变换(IPM)鸟瞰图的缺陷:在静态拼接的鸟瞰图上进行特征提取,并不能融合各鱼眼视图本身的特征,存在信息的丢失,特别是在多鱼眼视角重叠的区域。同时鸟瞰图也缺失高度信息,默认为高度为0的统一平面,这样对于一些地面不平的车位,例如草砖车位,或者路边带坡度的车位,会在鸟瞰图上会呈现梯形,因此无法得到他们的真实坐标位置。逆透视变换(IPM,Inverse Perspective Mapping)是一种利用相机的内部和外部矩阵的几何约束将像素映射到BEV(鸟瞰视角bird's eye view)平面的方法,尽管由于平地假设而不准确,但它提供了图像和点云可以在BEV中统一的可能性。
3、超声波雷达的缺陷:超声波传感器的检测范围通常比较有限,同时只能提供大致的距离和存在性的判断,无法给出精确的位置,在复杂环境中,回波可能还会受到多路径干扰,导致测量结果不准确,还有很重要的一点是,超声波无法给出障碍物的类型,这样不利于泊车路径的规划。
4、障碍物距离精度差:由于超声波的固有缺陷,只能保证近处的距离精度,所以在障碍物检测这块通常会采用多路鱼眼相机的检测结果和超声波结果后融合的方式。鱼眼相机的障碍物检测通常又会采用接地点检测,加上逆透视变换的方式,来得到真实坐标位置,但是鱼眼视图上的接地点的检测很难做好,再加上多路鱼眼相机后融合的复杂性,通常难以保证障碍物距离精度。
5、计算效率低:由于车位检测通常在逆透视变换(IPM)鸟瞰图上进行,需要多路鱼眼相机先进行拼接再进入神经网络,而障碍物检测在单鱼眼视图上进行,可以直接进入神经网络。两个神经网络模型的输入不一致,因此无法做到参数共享,导致整个计算效率低下。
BEV(鸟瞰视角bird's eye view)感知是一种将三维场景转化为水平二维平面的方法,在二维和三维物体检测、感知地图生成、可行走区域的检测等方面取得了广泛应用。
经过检索(关键词:泊车、车位检测、可行驶区域检测),检索到以下相关专利。
相关检索结果1:中国专利公告号、CN108875911B,名称、一种基于视觉的车位检测方法及装置,所述检测方法,包括:构建大规模、带标注的、面向泊车位感知问题的环视图像数据集;采用基于深度学习的目标检测框架YOLOv2框架加以改进来完成泊车位控制点检测;将检测到的控制点两两配对形成点对组合,判断其距离约束进行初步筛选后,以基于深度卷积神经网络的分类模型的浅层模型AlexNet为基础,设计自定义模型对满足距离约束的泊车位控制点点对进行分类,通过判断泊车位的类型以及入口线方向完成泊车位推断。不仅检测精度高,而且响应速度快、稳定可靠。
专利CN108875911B技术缺点:1、对车辆两侧的环境图像进行预处理,在得到的逆透视变换(IPM)鸟瞰图上进行检测,这样会丢失多路环视图像本身的特征,并且丢失高度信息;2、分别在逆透视变换(IPM)鸟瞰图上利用YOLOV2检测车位角点,再进行匹配,最后利用深度卷积神经网络的分类任务,来确定车位的类型及朝向,准确率不高,通过分类模型确定车位朝向具有一定局限性。
相关检索结果2:中国专利公告号、CN110775052B,名称、一种基于视觉与超声波感知融合的自动泊车方法,包括下列步骤:视觉车位检测,超声波雷达车位检测,两种车位检测结果融合,车位跟踪,车位显示;确定目标泊车位,结合当前场景地图,规划泊车速度及泊车轨迹;根据视觉检测以及超声波雷达检测,进行车辆周围可行驶区域以及可行驶区域边缘障碍物检测,并且对障碍物进行运动估计;计算自身车辆和障碍物发生碰撞的可能性,若碰撞可能性大于预设阈值,则触发避障功能;通过低速控制器进行泊车轨迹跟踪,实现沿泊车轨迹的档位控制、车速控制、方向盘转向控制和避障控制,完成自动泊车。可以提升车辆周围车位以及障碍物检测效果,提升鲁棒性,增加运动障碍物轨迹估计模块,提升避障可靠性。
专利CN110775052B技术缺点:1、在左右环视原始鱼眼场景输入下进行车位角点检测,匹配完成后,再通过逆透视变换至地面坐标系下,这样的方式仅能处理车位角点都在同一张环视图像上的情况,不能够处理各种复杂的场景;2、利用超声波检测障碍物,来判断车位是否可泊,并规划泊入路径,超声波的探测距离较短,而且障碍物位置精度不高,不能够能够检测较远的范围,不利于泊车轨迹规划。
本发明针对现有泊车技术检测精度低、鲁棒性差,无法在各种复杂的泊车场景下都能达到高精度检测的技术问题,对泊车场景检测方法进行了技术改进。
【发明内容】
本发明的目的是,提供一种基于多视角和时序融合,车位和可行驶区域检测精度高、鲁棒性强的泊车场景检测方法。
为实现上述目的,本发明采取的技术方案是一种基于多视角和时序融合的泊车场景检测方法,包括以下步骤:
S1、通过卷积神经网络对多路鱼眼视图分别进行特征提取,生成相应的特征图;
S2、将多路鱼眼视图静态拼接为逆透视变换鸟瞰图,基于所述逆透视变换鸟瞰图构建一个大小可以容纳车位及车辆可行驶区域的俯视视角矩形区域,并划分成若干网格;
S3、引入空间交叉注意力机制,根据鱼眼摄像头相机的内外参将俯视视角矩形区域特征图与多路鱼眼视图特征图进行关联,得到当前帧俯视视角矩形区域特征图;
S4、引入时序信息,将当前帧俯视视角矩形区域特征图,利用车辆位姿和上一帧俯视视角矩形区域时序融合特征图,通过时序注意力机制进行时序融合实现特征的时序对齐,得到当前帧俯视视角矩形区域时序融合特征图,使得历史帧信息能够对当前帧检测结果产生影响;
S5、基于当前帧俯视视角矩形区域时序融合特征图,进行车位检测和可行驶区域检测。
优选地,步骤S4还包括:引入拓展性信息,将当前帧俯视视角矩形区域特征图和其他传感器俯视视角矩形区域特征图进行融合。
优选地,所述其他传感器是激光雷达或其他周视相机。
优选地,所述多路鱼眼包括前环视鱼眼、后环视鱼眼、左环视鱼眼、右环视鱼眼。
优选地,步骤S2俯视视角矩形区域为正方形,划分成若干大小相等的正方形网格。
优选地,步骤S3关联的具体实现方式为从俯视视角矩形区域每个网格中心点出发,在高度上采样后,通过多路鱼眼摄像头相机的的内外参投射到对应的多路鱼眼视图特征图上作为网格参考点,再对每个网格参考点附近的鱼眼视图特征图进行采样,利用注意力机制构建出当前帧俯视视角矩形区域特征图。
优选地,步骤S4时序融合的具体实现为变换采样点的位置,利用双线性插值的方法,在上一帧俯视视角矩形区域时序融合特征图上进行采样,生成时序对齐后的当前帧俯视视角矩形区域时序融合特征图。
优选地,所述的一种基于多视角和时序融合的泊车场景检测方法,步骤S5具体包括以下子步骤:
S51、利用车位检测头进行车位检测;
S52、进行可行驶区域检测;
S53、通过可行驶区域检测结果,融合车位检测结果,判断障碍物是否在车位内部,以及泊入路径中是否有障碍物,如果是,车位判定为占据车位、不可泊入,否则,车位判定为非占据车位、启动泊车。
优选地,步骤S51:
所述车位检测头通过初始化特定的查询,利用交叉注意力机制将目标的查询与当前帧俯视视角矩形区域时序融合特征图进行关联,生成每个查询对应的特征表示,最后利用回归模型预测车位的中心点坐标、存在概率、车位朝向、车辆排列类别,以及四个角点相对于中心点的偏移;
通过车位检测头的回归结果形成车位,将中心点存在概率大于阈值的车位保留下来,回归的四个角点默认按顺时针排列,并且前两个角点为车位的入口角点。
优选地,步骤S52:
进行语义分割得到每个网格上的障碍物类别,先在当前帧俯视视角矩形区域时序融合特征图上进行上采样,然后通过卷积神经网络得到语义图;
对每个网格上的障碍物高度进行预估,对当前帧俯视视角矩形区域时序融合特征图进行上采样,然后利用卷积神经网络回归。
本发明一种基于多视角和时序融合的泊车场景检测方法有益效果如下:
1、时序一致性:引入时序注意力机制可以对历史帧的特征进行融合,实现时序对齐,从而提高检测的连续性和准确性,通过考虑车辆的运动轨迹和历史信息,算法可以更好地理解泊车过程中的状态变化,提供更可靠的检测结果;
2、鲁棒性强:通过引入俯视视角(BEV)和交叉注意力机制,更好地融合了各鱼眼视图的图像特征,避免了直接对静态拼接逆透视变换(IPM)鸟瞰图特征提取带来的各鱼眼视图特征的丢失,同时在计算俯视视角(BEV)和多路鱼眼视角的空间交叉注意力机制的时候,会在俯视视角(BEV)网格的高度上进行采样,投影到各鱼眼视角,不会丢失检测车位和障碍物的高度信息;
3、高精度障碍物检测:用高精度激光雷达(Lidar)点云标注作为真值监督,在俯视视角(BEV)下依靠时空融合的特征图,检测自车周边障碍物分割,提升距离和类别检测精度,不需要后融合,也舍弃了超声波雷达;
4、提升计算效率:由于两个任务的神经网络输入都是多张鱼眼视图,在俯视视角(BEV)上进行检测,因此可以共享神经网络骨干部分的参数,只需要两个不同的检测头,可以减少计算资源的消耗,提升计算效率,提高实时性;
5、可拓展性:由于在俯视视角(BEV)下进行检测,可以与其他传感器如激光雷达(Lidar)进行信息融合,这使得算法在不同的车辆和环境设置下具有很好的适应性和可扩展性。
【附图说明】
图1是一种基于多视角和时序融合的泊车场景检测方法流程图。
【具体实施方式】
下面将详细描述本发明的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本发明的全面理解。但是对于本领域技术人员来说很明显的是,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。本发明决不限于下面所提出的任何具体配置和算法,而是在不脱离本发明构思的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本发明造成不必要的模糊。
实施例
本实施例实现一种基于多视角和时序融合的泊车场景检测方法。
本实施例核心创新点在于基于多视角和时序融合的泊车场景检测,仅使用多路鱼眼相机,在俯视视角(BEV)下,通过多种注意力机制,对不同视角和不同时间的特征进行融合,提高了车位和可行驶区域检测的精度和鲁棒性,在各种复杂的泊车场景下都能达到高精度检测。
本实施例一种基于多视角和时序融合的泊车场景检测方法,核心技术特征在于以下四点。
1、引入空间交叉注意力机制,对多路鱼眼相机的特征在俯视视角(BEV)空间上进行融合,避免了传统泊车场景检测直接对静态拼接逆透视变换(IPM)鸟瞰图特征提取带来的各鱼眼视图特征丢失的技术问题,同时也保留了特征的高度信息。
2、引入时序注意力机制,对历史帧的特征进行融合,实现时序对齐,避免了传统单帧检测中对遮挡障碍物、车位的不稳定性检测。通过考虑车辆的运动轨迹和历史信息,算法可以更好地理解泊车过程中的状态变化,提供更可靠的检测结果。
3、车位检测头通过初始化特定的查询(query),利用交叉注意力机制将目标的查询与俯视视角(BEV)的融合特征进行关联,生成每个查询对应的特征表示,最后利用回归模型预测车位的中心点坐标、车位朝向、车辆类别(垂直、水平、斜列),以及四个角点相对于中心点的偏移(offset)。不同于传统车位检测中检测角点后,通过先验车位宽度参数等进行匹配,并用模板匹配的方式来确定车位类型及朝向的方法,具有更好地泛化性。
4、可行驶区域检测对俯视视角(BEV)特征进行解码,一方面回归周围障碍物的语义图,一方面回归障碍物的高度图,最终可以得到带类别和高度的高精度障碍物信息。不同于传统障碍物检测中利用超声波雷达,以及单鱼眼检测结果进行后融合的方式,避免了繁琐的后处理工作,同时利用高精度激光雷达(Lidar)点云标注作为真值监督,在俯视视角(BEV)下障碍物具有更高的距离精度。
本实施例算法输入:
1、输入为多路鱼眼摄像头,通常为4路鱼眼,分别是,前环视、后环视、左环视、右环视;
2、上一帧融合后的俯视视角(BEV)特征图;
3、相机的内外参;
4、车辆的位姿。
本实施例算法输出:
1、当前帧的车位检测结果,包括是否占据;
2、当前帧的可行驶区域结果;
3、当前帧的俯视视角(BEV)特征图。
图1是一种基于多视角和时序融合的泊车场景检测方法流程图。如附图1所示,本实施例方法主要流程步骤如下:
1、通过卷积神经网络(CNN)对多路鱼眼视图分别进行特征提取,生成相应的特征图。
2、构建一个大小为16m*16m的俯视视角(BEV)区域,并划分成320*320的网格点,每个网格大小为0.05m*0.05m。
3、通过引入空间交叉注意力机制(Spatial Cross Attention),根据相机的内外参将俯视视角(BEV)下的特征图与鱼眼图像上的特征进行关联。这样可以在俯视视角下获得更准确的特征表示,同时通过注意力机制使得不同位置的特征能够相互关注和交叉影响,提高了对车位和可行驶区域的检测性能。具体实现方式为从俯视视角(BEV)网格点出发,在高度上采样后,通过相机的内外参投射到对应的图像特征图上,作为参考点,再对这些参考点附近的图像特征进行采样,利用注意力机制构建出俯视视角下的特征图。
4、通过引入时序信息,将当前帧的俯视视角(BEV)特征与历史帧的特征进行融合。利用车辆的位姿和上一帧融合后的特征图,通过时序注意力机制(Temporal SelfAttention)实现特征的时序对齐,使得历史帧的信息能够对当前帧的检测结果产生影响。具体实现为通过变换采样点的位置,利用双线性插值的方法,在历史特征图上进行采样,生成时序对齐后的特征图。这种时序融合的方法可以提高泊车场景检测的连续性和准确性。
5、作为一个可选项,本实施例将通过多路鱼眼生成的俯视视角(BEV)特征图和其他传感器在俯视视角(BEV)的特征图进行融合,比如激光雷达(Lidar)或其他周视相机,这体现了本实施例方案的可拓展性。这样做的好处是可以进一步提升***的鲁棒性,当某个传感器受到干扰或无法提供准确的信息时,其他传感器可以提供冗余的数据来保持***的可靠性,同时将多种传感器的信息融合在一起,可以提供更全面、更准确的环境感知能力,特别是对于可行驶区域的检测来说,稠密以及多模态的特征能大幅度提升本实施例的感知精度。
6、得到融合后的俯视视角(BEV)特征图之后,所有的泊车检测任务都将基于这个特征图进行,包括车位检测和可行驶区域检测。对于这两个任务,在此之前的所有模型参数都可以共用,因此相比于传统的逆透视变换(IPM)鸟瞰图检测车位,鱼眼视图检测障碍物来说,可以大幅度减少计算资源的消耗,提高计算效率和实时性。
7、车位检测头的主要任务是通过初始化特定的查询(query),利用交叉注意力机制将目标的查询与俯视视角(BEV)的融合特征进行关联,生成每个查询对应的特征表示,最后利用回归模型预测车位的中心点坐标、存在概率、车位朝向、车辆排列类别(垂直、水平、斜列),以及四个角点相对于中心点的偏移(offset)。
8、需要通过车位检测头的回归结果形成车位。本实施例会将中心点大于一定阈值(通常是0.5)的车位保留下来,回归的四个角点默认按顺时针排列,并且前两个角点为车位的入口角点,与制作真值时的标准保持一致。本实施例要求保留车位的入口角点必须在俯视视角(BEV)范围内,因为通常在车辆泊入过程中,对入口角点的精度要求较高。对于另外两个角点,如果都在俯视视角(BEV)范围内,那本实施例可以直接得到车位的位置;如果有其中一个在俯视视角(BEV)范围内,本实施例可以基于平行四边形准则,推断出另外一个角点的位置;但如果两个都不在俯视视角(BEV)范围内,本实施例需要通过回归的车位朝向和车位类别的标准大小,计算出两个角点的位置。最后本实施例会利用车位的角点计算出一个车位的朝向,并结合回归的车位类别进行判断,如果两者不相符,比如回归类型为垂直车位,但是计算出的角度大于100度,本实施例会认为此车位的置信度较低并丢弃。
9、可行驶区域检测的方法是,一方面进行语义分割,回归结果的尺寸大小为320*320*(N+1),长和宽与俯视视角(BEV)网格一致,N是定义的障碍物类别数量,1是背景类别,实施的方式是先在俯视视角(BEV)特征图上进行上采样,然后通过卷积神经网络(CNN)得到语义图。另一方面,对障碍物的高度进行预估,回归的结果是每个网格上最高的障碍物高度,回归结果的尺寸为320*320*1,实施的方式和语义分割类似,对特征图进行上采样然后利用卷积神经网络(CNN)回归。这样就得到了每个网格上的障碍物类别,以及高度信息。
10、通过可行驶区域的检测结果,融合之前的车位检测结果,判断障碍物是否在车位内部,以及泊入路径中是否有障碍物,如果是,车位判定为占据车位,不可泊入。
相对于传统的车位、可行驶区域检测,本实施例基于多视角和时序融合的泊车场景检测方法主要有以下五点优点。
1、时序一致性:引入时序注意力机制可以对历史帧的特征进行融合,实现时序对齐,从而提高检测的连续性和准确性。通过考虑车辆的运动轨迹和历史信息,算法可以更好地理解泊车过程中的状态变化,提供更可靠的检测结果。
2、鲁棒性强:通过引入俯视视角(BEV)和交叉注意力机制,更好地融合了各鱼眼视图的图像特征,避免了直接对静态拼接逆透视变换(IPM)鸟瞰图特征提取带来的各鱼眼视图特征的丢失。同时在计算俯视视角(BEV)和多路鱼眼视角的空间交叉注意力机制的时候,会在俯视视角(BEV)网格的高度上进行采样,投影到各鱼眼视角,不会丢失检测车位和障碍物的高度信息。
3、高精度障碍物检测:用高精度激光雷达(Lidar)点云标注作为真值监督,在俯视视角(BEV)下依靠时空融合的特征图,检测自车周边障碍物分割,提升距离和类别检测精度,不需要后融合,也舍弃了超声波雷达。
4、提升计算效率:由于两个任务的神经网络输入都是多张鱼眼视图,在俯视视角(BEV)上进行检测,因此可以共享神经网络骨干部分的参数,只需要两个不同的检测头,可以减少计算资源的消耗,提升计算效率,提高实时性。
5、可拓展性:由于在俯视视角(BEV)下进行检测,可以与其他传感器如激光雷达(Lidar)进行信息融合。这使得算法在不同的车辆和环境设置下具有很好的适应性和可扩展性。
本领域普通技术人员可以理解,实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和补充,这些改进和补充也应视为本发明的保护范围。