概述自动泊车系统中的计算机视觉的设计、实施和挑战

文章:Computer Vision in Automated Parking Systems: Design, Implementation and Challenges

作者:Markus Heimbergera , Jonathan Horganb , Ciaran Hughesb , John McDonaldb , Senthil Yogamani

编辑:点云PCL

摘要

自动泊车即在低速场景下有限停车场场景中进行的自动驾驶,是完全自动驾驶系统的关键产品。从较早一代的驾驶员辅助系统,包括碰撞警告、行人检测等方面的角度来看,它也是一个重要的里程碑。本文讨论了从计算机视觉算法的角度设计和实施自动泊车系统,设计一个低成本的具有功能安全性的系统具有挑战性,原型与最终产品之间存在巨大差距,以便处理所有边缘情况。我们演示了相机系统如何对处理各种自动泊车用例至关重要,同时为基于主动距离测量传感器(如超声波和雷达)的系统增加健壮性。实现自动泊车用例的关键视觉模块包括3D重建、停车位标记识别、自由空间和车辆/行人检测。详细介绍了重要的自动泊车用例,并演示了如何结合视觉模块以构建强大的泊车系统。

介绍

汽车摄像头的使用始于为驾驶员提供单一视角的摄像头系统。然而,在过去的五年中,随着处理能力的提高,使计算机视觉功能的高级实时处理成为可能,使用汽车摄像头的数量和可实现的高级驾驶辅助系统的数量迅速增加。一些示例包括倒车保护、车道偏离警告、前碰撞警告,或者用于更全面深度估计车辆前方环境的立体摄像头。下一级的高级系统需要在某些场景中实现自动驾驶,比如高速公路或停车场情景。目前的系统在最好的情况下也只能达到Level 3,商业部署主要用于高速公路驾驶。在本文中,我们关注Level 2或Level 3类型的自动泊车系统。当然由于没有完美的算法,而且在某些场景中使用的传感器可能存在局限性,因此存在风险。自动泊车是在更受限制的环境中部署自动驾驶的良好商业起点。首先,它涉及低速操控,低碰撞风险。其次,它是一个更受控制的环境,场景变化较少且边缘情况较少。在真实世界中稳定部署自动泊车并分析性能统计数据是迈向更高级别的自主性的重要一步。第一代停车系统使用超声波或雷达进行半自动化。最近,摄像头开始加强它们的功能,提供更强大和多功能的解决方案。

在本文中,我们将摄像头视为泊车系统的重要组成部分,扩展了其他传感器的功能或提供了成本较低的替代方案。设计泊车系统存在许多挑战。由于功能安全性、事故风险和消费者舒适度等方面的要求很高,因此精度要求比较高,泊车设备的基础设施相对较少,可能有动态交互物体,如车辆、行人、动物等。不同的环境条件也可能发挥重要作用。例如,低光条件和恶劣的天气如雨、雾可能会显著影响准确性和检测范围。商业因素也会限制低功率嵌入式系统上可用的计算能力。另一方面,停车场景在可能性集方面受到更多限制,与完全自动驾驶相比。车速较低,为决策提供了足够的处理时间。摄像头的运动受到限制,具有明确定义的感兴趣区域。基础设施可能提供帮助,尤其是为了找到和导航到空的停车位。虽然在这项工作中我们没有讨论任何基础设施支持,但作者认为这将是自动停车解决方案的重要组成部分。自动泊车可以指的是管理汽车在机械停车场中的停放位置的智能基础设施,通常是多层或嵌入在汽车中的智能电子系统。

基于摄像头的高级驾驶辅助系统(ADAS)应用及其各自的视野

内容概述

硬件模块

ECU系统和接口电子设备

一般有两种类型的摄像头系统,一个是独立的摄像头,配备一个紧密集成在摄像头外壳中的小型嵌入式系统。这对于像后视摄像头这样的小型应用已经足够了。但是,对于更复杂的应用,摄像头通常通过附加的接口电子设备连接到强大的外部 SOC(系统芯片)。

环视图摄像头网络的示例图像,展示近场感应和广泛的视野。

如图2所示,对于具有4个摄像头输入的典型环视图系统,空间上分离的摄像头必须连接到中央 ECU。与其他系统相比,视频的数据带宽要求很高,这给 SOC 带来了许多挑战和限制。传感器的原始数字输出通常是10/12位,但 SOC 的视频输入端口可能只支持8位。这需要外部 ISP(图像信号处理器)来将深度压缩为8位,图像分辨率和帧速率这样的简单因素可能会使系统要求翻倍,SOC和摄像头之间的连接通常通过双绞线或同轴电缆进行有线连接。图5说明了所使用的两种备用方法。

视觉系统的框图

相机

相机通常包括成像传感器、光学系统和可选的ISP硬件。

  • 光学系统:光学系统由镜头、光圈和快门组成。这些组件通过焦距(f)、光圈直径(d)、视场(FOV)和光学传递函数(OTF)的相机矩阵来捕捉。
  • 成像传感器:Omnivision和Aptina是常用的传感器供应商,尽管还有其他制造商可供选择,相机的视觉质量显着提高。影响系统设计的主要因素来自相机选择的分辨率(1 MP到2 MP,甚至更高)、帧率(30到60 fps)和位深(8到12位)。提高这些参数是有益的,但它们会带来相当大的内存带宽开销。
  • ISP硬件:将来自传感器的原始信号转换为可视格式包括各种步骤,如去马赛克、去噪和高动态范围处理。这些步骤被统称为图像信号处理(ISP)。通常情况下,大多数ISP都在硬件中完成,或者在传感器本身、作为伴侣芯片的ISP或在主SOC(片上系统)中完成。ISP基本上是将通过应用程序捕获的图像转换为可用格式所需的步骤。

SOC

嵌入式系统的SOC选择的典型设计约束是性能(MIPS、利用率、带宽)、成本、功耗、散热、高到低端可扩展性和可编程性。与手持设备不同,功耗不是主要的标准,因为它由汽车电池供电。散热只在某一阈值之上才重要,并可能通过更好的散热器增加成本。可编程性通过OpenCL等软件框架进行抽象,不是成本的主要因素。因此,对于ADAS,最终的主要因素最终归结为成本和性能。由于处理器的多样性,这通常是一个难以做出的决策。通常,通过MIPS来比较处理器并不有用,因为利用率在很大程度上取决于算法的性质。因此,基于供应商库和估算的给定应用程序列表的基准分析对于选择适当的SOC至关重要。一个混合架构,结合了完全可编程、半可编程和硬编码的处理器,可能是一个良好的分摊风险选择。

自动泊车使用案例

泊车动作概述

自动泊车系统已经在市场上有一段时间了,从最初的自动平行泊车开始,近年来发展到包括垂直停车在内。泊车系统已经发展超越了只控制转向的驾驶辅助系统,实现了横向和纵向控制的部分自动化。泊车辅助系统的挑战在于可靠准确地检测停车位,以允许最少独立移动的停车动作。自动停车系统的目标是向驾驶员提供一个坚固、安全、舒适,尤其是有用的功能,可以节省时间、实现准确、无碰撞的停车。市场上目前的系统仅依赖于范围传感器数据,通常是超声波,用于检测停车位、重新测量和在自动停车过程中避免碰撞。虽然这些系统已经在现场证明非常成功,并且正在继续在市场上推广,不过它们具有一些固有的局限性,如果没有其他传感器技术的帮助,这些局限性是无法解决的。在自动泊车开始之前,泊车系统必须首先搜索、识别并准确定位车辆周围的有效停车位。目前的系统通常依赖驾驶员来启动搜索模式,停车位可以以不同的形式出现,如下面的使用案例所述。

突出了使用计算机视觉与传统超声波停车系统融合的好处。(a) 增加了检测性能和范围,(b) 超声波无法实现的环境检测(车道标线)。

自动停车系统包括以下关键步骤:

  • 停车位定位:系统首先定位可用的停车位,然后呈现给驾驶员,以供其选择。这包括识别停车位的位置和朝向。
  • 选择停车位:驾驶员选择一个停车位后,系统会根据停车位的特征自动计算出适当的停车轨迹。
  • 自动行驶:车辆自动沿着计算出的轨迹行驶到所选停车位,通常在有限的速度范围内行驶,低于10千米/小时。
  • 遥控停车(可选):部分自动化系统也可以允许驾驶员在识别到停车位后远程操作车辆并开始停车动作,通过钥匙扣或智能手机来实现。这需要驾驶员监控车辆周围的情况。
  • 持续测量:在停车过程中,系统会持续重新测量所期望的停车位和车辆自身的位置,以提高最终位置的准确性,并避免与障碍物发生碰撞。
  • 自动驶出(可选):自动停车系统还包括将车开出停车位的功能,以便车辆能够顺利离开停车位。这涉及计算适当的驶出轨迹。这些步骤共同实现了自动停车功能,包括将车辆安全地停入和驶出停车位。

使用摄像头进行泊车的好处

  • 广阔的视野:摄像头可以提供前后各两个镜头以及两侧镜头的全景视野,对停车位搜索、停车自动化以及所有停车用例的可视化提供帮助。此外单个后视鱼眼摄像头在倒车停车用例中也非常有益。
  • 能够检测道路标记:摄像头可以用于检测道路上的停车位线标记,并利用线的结束类型来理解停车位的预期用途。这有助于理解停车位的可用性。
  • 与其他传感器的互补性:摄像头的检测范围较大,可以提供更好的停车位定向准确性,尤其是对于垂直停车位。它的大垂直视野还可用于检测车辆高度以上的障碍物。
  • 生成点云数据:摄像头具有显著的测量分辨率,可以为某些类型的对象生成点云数据,如杆或链条围栏。这些数据对于主动传感器无法检测的情况非常有用。
  • 对象分类:摄像头的数据非常适合机器学习技术,允许进行对象分类,如行人和车辆。这种分类有助于车辆根据对象类型进行智能反应。
  • 车辆测距信息:摄像头可以通过视觉同时定位和建图(SLAM)技术提供坚固的车辆测距信息源,克服了机械测距传感器的许多准确性问题。

突出显示计算机视觉与传统超声波停车系统融合的好处。(a) 增加的检测性能和范围, (b) 超声波无法实现的环境检测(车道标记)

停车场景的分类

自动停车系统可分为四种主要停车用例

  • 垂直停车(前进和后退):系统使用计算机视觉方法检测车辆侧面的物体和线标记,测量停车位的大小和方向,以为驾驶员提供可选的停车位。计算机视觉通过分类和SFM技术支持障碍物检测,与超声波系统融合提高检测速度和范围。
  • 平行停车:进入停车位通常在单次操作中完成,而后续操作用于更准确地对准停车位。摄像头系统融合可以提高停车操作的容差并更可靠地检测路沿。
  • 鱼骨停车:使用摄像头系统可以提供更大的范围,以查看停车位内部的情况,从而确定停车位的目标方向。
  • 模糊停车:在不明确定义的停车情况下,摄像头系统提供更大的检测范围和更完整的传感器覆盖,增强停车操作的高级规划。

此外,摄像头系统增强了其他功能的可靠性,包括:

  • 紧急制动/舒适制动:摄像头系统增加了制动系统的鲁棒性,可以更快速、安全地响应环境变化。
  • 叠加物体距离信息:视觉系统数据与传统停车系统结合,用于在视频输出流中叠加物体距离信息,提供更精确的导航信息,特别在具有路沿的平行停车位情况下有帮助。

停车场景分类 - (a) 平行倒车停车, (b) 垂直倒车停车, (c) 垂直前进停车, (d) 模糊不明确停车, 和 (e) 带有道路标线的斜向停车。

视觉应用

  • 3D点云深度估计是用于构建环境地图的主要计算机视觉机制,对自动停车系统的各种用例至关重要,包括垂直、平行和鱼骨停车,路缘检测以及减少紧急制动的虚假报警。

3D重建的重投影和俯视图

  • 在计算机视觉中,深度感知技术通常基于立体或单眼摄像头,立体摄像头更有利于深度估计,通过解决图像的像素对应问题,允许创建视差图并计算像素的3D位置。
  • 停车位标记的检测是关键,通常使用摄像头系统实现。不仅有助于确定停车位的位置,还支持更准确的停车操作。

停车位标记识别示例

  • 车辆和行人的检测和跟踪对于自动执行停车操作至关重要。分类方法通常用于解决车辆和行人检测问题,如支持向量机、随机森林和卷积神经网络。

使用泊车摄像头对行人进行分类和跟踪

  • 可行驶空间的检测是基于占用格网的方法,用于检测车辆周围的未被物体占据的区域。可行驶空间信息支持环境感知地图的更新和障碍物的识别,有助于规划碰撞自由轨迹。

(a)显示了使用基于图像的分割从场景的其余部分分割出的道路,(b)显示了基于(a)中道路分割的基于径向单元的可行驶空间

  • 计算机视觉还可以在测距、穿越交通警报检测、道路标记检测等其他领域提供支持。
  • 准确性在停车系统中至关重要,包括检测准确性和定位准确性。准确性要求根据特定用例和功能来定义,如前进垂直停车、后退停车、紧急制动等。
  • 准确性的要求应综合考虑功能、嵌入式系统的计算能力和算法可行性。融合其他传感器如超声波可以提供互补准确性来支持基于摄像头的检测。

自动泊车系统

摄像头泊车系统设计决策流程

自动停车系统的规格受到多种因素的影响,包括相机像素分辨率、硬件选择、用例要求以及计算机视觉算法性能等。

  • 在硬件选择方面,相机成像器和处理器的选择是关键决策,需要平衡分辨率提高和低光性能的挑战。
  • 系统的应用场景要求对检测能力、准确性、覆盖范围、工作范围和系统可用性等提出了明确定义,影响了传感器和处理器的选择。
  • 自动泊车系统需要使用多种计算机视觉功能来实现不同的停车用例,如线标识检测、结构运动检测和行人检测,这些功能需要高速并行处理。
  • 摄像头传感器在自动泊车系统中扮演重要角色,因为其成本低廉且能够提供相对其他传感器更丰富的语义信息。
  • 未来自动泊车系统的趋势是实现更高级别的自主停车,包括在未经驾驶员输入的情况下搜索、选择和停车,这需要多种传感器技术的结合以提高准确性和可靠性。
  • 已知区域自动泊车涉及训练系统以自动识别和定位车辆,而未知区域自动泊车需要系统自主地搜索、选择和停车,而不需要预存的轨迹信息。
  • 这些关键点突出了自动停车系统的技术挑战、硬件和算法选择以及未来自主泊车的趋势。

使用摄像头的全自动泊车系统的应用。

总结

自动驾驶是技术领域的快速增长领域,许多高端汽车已经开始配备自动停车功能。这导致传感器的改进和计算能力的大幅增加,这可以产生更强大和准确的系统。由于成本低且相对于其他传感器而言拥有丰富语义信息,摄像头传感器将继续发挥重要作用。本文专注于摄像头传感器的优点以及它如何实现停车用例,详细讨论了一个使用四个鱼眼摄像头的自动停车系统的系统实现,该系统提供了车辆周围的360度视图。介绍了系统的各个方面,包括嵌入式系统组件、需要处理的泊车用例以及解决这些用例的视觉算法。由于重点放在计算机视觉方面,暂时省略了传感器融合、轨迹控制和运动规划的细节。