-
星空体育入口:讨论高级自动驾驶系统的开发还需解决的问题
- 时间:2024-06-21 来源:zoc7RcITctunhMtq7EzA 人气:
高级自动驾驶系统是未来智能网联汽车的必要课题。在实现车辆自主驾驶的同时,还需要解决当前一代自动驾驶系统所面临的功能开发和性能提升问题。 从最近发生的蔚来汽车自动驾驶事故可以得出,实现真正的自动驾驶需要解决目前许多边缘场景,这些场景对系统功能安全具有很大的影响。许多汽车制造商都希望效仿特斯拉,采用类似的影子模式进行数据采集和仿真。因此,在开发过程中如何避免掉入陷阱,这也是一个值得深思的问题。此外,为了实现高级别的自动驾驶,我们将采用基于SOA的开发模式来设计系统架构。因此,如何提高效率以实现兼顾通用、高效和可靠的目标,是我们必须解决的挑战。本文将详细探讨上述三个棘手且急需解决的问题,旨在为开发者提供参考借鉴。如何改进静态目标碰撞检测的方法,我们从开发测试的角度已经收集了许多棘手或可能出现问题的情况。这中识别静止物体就是其之一。目前的自动驾驶产品主要采用单目或三目视觉来进行检测,这些产品考虑了全方位的视觉需求。这种检测方式存在固有无法改变的缺陷,因为它是基于深度学习的机器视觉,通常将识别、分类、探测放在同一模块中,难以分割,也就是说,如果无法对目标进行分类,那么通常无法有效地进行探测。容易导致自动驾驶车辆发生碰撞的原因是这种漏识别。为了更好地阐述无法识别的原因,并总结解决这类问题的方法,我们需要重点强调以下几点:首先,训练数据集可能无法完全涵盖真实世界中的所有目标。因为许多静态目标不一定是标准的车辆,甚至可能是异形车辆、落石或不规则的施工标志灯。因此,在开发阶段训练的目标类型很大程度上可能无法适用于真正的自动驾驶识别场景。另一种情况是图像缺乏纹理特征。纹理特征指的是在一个区域内涵盖多个像素点并进行统计计算的特征。这种特征通常具有旋转不变性,对抗噪声的能力较强。因此,对于一些纹理较少的货车车厢、白墙等物体,很难通过视觉方式进行识别。另外,需要解释一下为什么深度学习在识别静态目标方面表现不佳。由于深度学习中的机器视觉,特别是基于单目摄像头探测的机器视觉图像,会删除所有静态目标,将其视为背景,从而有效地筛选出视频理解过程中重要的运动目标。这种方法不仅可以提高识别效率,还可以有效降低编码率。为了避免误检测,必须分开处理运动目标和静止目标,比如在一些道路上,两侧停满了汽车,此时应当优先处理运动目标而不是静止目标。在进行识别之前,通常会采用背景减除、三帧法或光流法等方法。这些识别算法通常需要1-2秒的时间,但对于实时性要求较高的自动驾驶系统来说,这段时间可能已经导致碰撞事故的发生。由于这个原因,为了解决上述识别性能问题,需要从根本上解决深度学习不足导致的问题。机器视觉通常采用两种学习匹配模式,一种是基于手工模型,另一种是深度学习。通常情况下,我们使用深度学习进行图像识别和分类。由于深度学习的核心是通过分割和拟合来实现的,基本上需要处理每个像素点,对已经训练好的模型进行数十亿次的乘法累加,并应用不同的权重进行比较。与人类视觉不同,机器视觉是非整体性的。深度学习本质上是一种利用采集数据点,并通过与已有数据库有效匹配的方式来拟合出与实际非常接近的曲线函数,从而可以识别出期望的环境目标,推断趋势,并给出各种问题的预测性结果。当然,在展示特定数据集时,进行曲线拟合也是有一定风险的,这被称为拟合误差。具体说来,算法有可能无法分辨数据的正常波动,结果就会把噪音误认为是有效信息以提高拟合程度。因此,单单依靠提升SOC芯片的AI加速器能力来解决对于这类异常环境目标的识别能力是不明智的。想要真正解决这个问题还需要其他手段。由于AI加速器只是用来提升MAC乘积累加计算模块的速度,并没有其他功能。为了彻底解决这类辨识或匹配误差问题,下一代高性能自动驾驶系统通常会选择多传感器融合的方式(比如毫米波雷达和激光雷达),或者采用多目摄像头检测的方式进行优化。那些设计过驾驶辅助系统的工程师应该明白,目前使用的毫米波雷达对金属物体非常敏感。在检测物体时,通常需要避免误检,以防止主动紧急制动系统的误触发。因此,许多静止目标通常被忽略,同时,对于一些底盘较高的大型货车或者特殊操纵车辆,往往由于毫米波雷达的高度问题导致无法检测到目标而漏检。为了进行三维目标重建,
可以使用传统的方式(也称为非深度学习算法)进行。通常情况下,这可以通过激光雷达或高分辨率4D毫米波雷达进行点云重建,或者使用双目摄像头进行光流追踪并实现优化。基于激光雷达检测目标的方法,工作原理是先发射激光束探测信号,再将从目标反射回来的信号(即目标回波)与发射信号进行比较。经适当处理后,可以得到有关目标的信息。因此,回波点云匹配本身也是一种深度学习过程,只不过与弹幕图像识别的分割和匹配相比,速度会更快一些。依赖双目视觉检测静态目标时必须使用视差图像,这种纯几何关系的视差图可精确定位目标位置。在许多情况下,单眼视觉能够检测到颠簸路面、明暗对比强烈的路段以及破损道路上的远处物体,但进行三维重建可能会遇到很多不确定性。立体相机结合深度学习技术,能够将3D立体点云与图像的RGB信息和纹理信息融合在一起,从而提高远距离目标的识别和3D测量的效果。深度学习能够更准确、更稳定地识别常见的道路参与者,通过综合多种特征,有助于更加远距离地发现道路参与者。立体视觉可以同时实现对3D测量和基于点云的全路参与者检测,不受物体类型、安装位置和姿态的限制,动态测距更加稳定,泛化能力更强。将立体视觉和深度学习相融合,可以帮助我们更远距离地探测目标,同时也能够利用立体视觉进行三维建模。上述算法要么基于 CPU 进行逻辑运算,例如实现卡尔曼滤波、平滑运算和梯度处理,要么依赖于 GPU 进行图像深度学习处理。因此,未来的高级自动驾驶领域控制系统需要具备强大的计算能力,以确保其性能达到要求。在研发下一代先进自动驾驶系统时,采用影子模式能否完美应对目前的挑战?各大主机制造商或Tier1供应商往往难以全面涵盖可能出现突变情况的各种工作场景,因此基于规模有限的数据收集和处理,通常依赖于高质量的数据获取,这被称为极端场景数据覆盖。我们需要解决一个重要问题,那就是如何收集大量极端场景数据,并将其传送到自动驾驶系统后台。这关乎评估后续自动驾驶系统是否能够达到完美突破的关键要素。特斯拉的自动驾驶系统开创了一种有关数据采集的创新模式。影子模式" 指的是在手动驾驶状态下,系统和周围传感器仍在运行,但不进行车辆控制,只用于验证决策算法。在"影子模式"下,系统的算法持续模拟决策,并将这些决策与驾驶员的行为进行比较,一旦发现不一致,该情况被视为"极端工况",从而触发数据回传。然而,若要深入了解影子模式,需要特别解决以下问题。一、如何通过影子模式提供更广泛的极端工况探测和数据采集
\n影子模式能够提供更广泛的极端工况探测和数据采集,并覆盖标注和非标注训练场景。在数据采集和处理的过程中,影子模式通常作为其中的一部分。除了利用控制端轨迹的差异来触发数据记录,在其余的工作模式下,影子模式并不直接应用于数据记录。如果要实现自动驾驶快速高效地应用影子模式,就需要在数据采集过程中同时部署深度神经网络,贯穿整个控制流程(包括感知、预测、规划和控制模块的实现)。为了使影子模式更加实用,需要扩大其工作范围。这就意味着不只是要在比对轨迹时触发数据记录和回传,而且还应当在识别目标差异、整合目标差异等方面触发数据记录和回传。在这个过程中,需要根据实际采集到的端口定义相应的数据采集单元。这些单元可以在自动驾驶或人工驾驶模式下运行,主要用于数据采集、记录和回传,不会对车辆控制造成影响。
2、在影子模式下,芯片的选择和传感器的配置是否符合我们的预期在自动驾驶开发中,我们希望影子模式只是一些资源消耗较少的简单逻辑运算,同时在激活影子模式时不会增加后台处理的延迟。为了让下一代高级自动驾驶能够采用影子模式来收集数据,就需要考虑为专门的影子系统额外配置芯片,并且可以在多芯片域控系统中划分某一块芯片的模块,专门用来进行影子算法的训练。
另外,过去的影像系统通常在L2+系统上运行,其使用的传感器类型通常比较单一,例如大多公司采用了5R1V的方法进行数据采集,更高级一点的可能会配置单独的激光雷达(国内尚未有企业实现或将实现这一配置)。这种传感器配置所采集的数据能否直接应用于下一代的高级自动驾驶系统,目前尚不确定。由于单个或少量传感器与多传感器相比,在环境情况的预测和系统执行能力方面存在明显差异星空体育官方。因此,经过升级的高级自动驾驶系统,传感器的性能对整个系统的控制肯定实现了质的飞跃。因此,需要重新规划设计,以确定后续自动驾驶系统是否能够继续利用之前在L2级别下采集的场景数据,或者只能部分利用。
3、为了实现最科学有效的数据传输,需要采用哪种标准的判断方法?
在启动影子模式之前,有个前提条件,就是认为驾驶员对车辆的操作一定是正确和客观的。这是因为在人为驾驶模式下,系统对周围环境的判断能力一定不如驾驶员。这个事情的确如此吗?当然并非全部如此。比如,当司机看到前面的道路上有很多泥土,担心弄脏车轮影响车辆外观,因此选择换道避开。而自动驾驶系统不会因为这个原因而触发自动换道系统。根据司机的行为来判断正确性,这时系统肯定是错误的。所以在这种情况下启动数据采集和回传是没有意义或者说不准确的。因此,从另一个角度来看,在整个自动驾驶控制系统中,驾驶员的持续性驾驶行为可能是一种驾驶趋势。这种数据采集、传输和触发的方式实际上是为了增强驾驶体验的一种方法。4、需要进一步提高影子模式在定位问题上的精确度
由于影子模式是在可视化驾驶端进行的,这种问题定位方式通常采用逆向追溯,从执行端的视角来审视问题。通常当执行过程出现问题时,人们会先考虑是决策端出了问题,如果决策端没有问题,会继续考虑轨迹预测端是否有错,然后再进一步检查感知端是否存在问题。另外,感知端也是一个广义的概念,涵盖了真实场景感知和随后的融合系统。当场景感知遇到问题时,通过融合系统中一系列鲁棒性算法的处理,可以防止由该感知错误引起的误判等问题。因此,需要单独识别出这类异常感知场景。为了筛选这种场景的数据,需要持续记录规划各端感知到的数据之间的跳变情况。一旦发现某两端之间出现较大的跳变,就会触发数据回传,当然整个过程的计算量会很大。目前自动驾驶系统的整体感知能力仍然受到很大限制,误判断导致错误决策的情况仍时常出现。即使感知准确,也可能出现错误执行的情况。在这种情况下,需要影子系统在收集到的“预测/决策失灵”场景数据时进行精细化处理,排除无效数据的采集和传回,这样既能节省流量,也能节省存储空间。在建立了自动驾驶系统数据的仿真应用能力后,我们可以利用数据回传进行深度学习和数据匹配优化。这一过程的第一步是依赖特定场景来构建仿真系统,然后在仿真系统中输入相应的场景检测参数进行算法训练优化。然而,事实上,要有效利用道路实测数据进行模拟需要具备较高的要求。大多数主机制造商、检测机构和一线供应商仍然没有完全具备完成这项任务的能力,或者他们的能力还不够成熟。升级架构会引发哪些开发挑战?高级自动驾驶需要整合车路协同、边缘计算、云端服务等多种应用场景,并且必须具备可扩展性、通用性和自主进化性。目前的电子电气体系结构和软件平台架构非常重要。解决这些需求并不容易,但借助目前的车载SOA,可以很好地应对这些问题。 面向服务架构(SOA)起源于信息技术领域,在汽车领域中,最佳的SOA实施方式应该是继承以太网为基础,实现高内聚和低耦合的思路。
1、标准化服务通信,即面向服务的通信
帮助{b)在处理大数据和高并发场景时遇到困难。因为缺乏对象序列化的功能,SOME/IP 软件的互操作性可能会出现问题。SOME/IP协议不具备共享存储的功能,其基于广播的一对多通信在自动驾驶环境中可能存在性能问题。SOA架构要对服务进行划分,以实现服务的重用和灵活重组,即面向服务的重用共享设计。
要把SOA的系统-软件开发方法应用到整车功能逻辑的定义中。架构会在需求开发、功能定义、功能实现、子系统设计和零部件设计等过程中起主导或参与作用。面向服务的重复使用设计必须贯穿始终,并最终在功能实现阶段得以体现。
需要强调的是,服务重用涉及原有系统的割裂和新系统的再建,随着规模的扩大和新功能的增加,基于信息的通信将不断增多。因此,在意想不到的情况下,可能会出现重要的反应期,这可能导致数据访问延迟。自动驾驶系统需要具备极高的实时性,这也是SOA应用所面临的最大挑战。另外,在实施SOA软件时,需要充分考虑基于服务的软件架构搭建过程中是否能够承载和适配面向服务的通信设计以及面向服务的重组实现问题。
下一个级别的自动驾驶系统需要解决的问题其实就是两个:我在哪里,我要去哪里?这两种问题的解答方式分别取决于地图定位和导航控制。基础设施的搭建是为了增强面向服务的设计能力,因此SOA架构应运而生。在新的架构中,如何突破实现高级自动驾驶系统功能,提升整体体验和性能至新水平,是自动驾驶研究人员需要重点攻克的难题。无论是在整体开发方式上,还是在感知性能方面,都应该实现从量变到质变的过程星空体育入口。这条路上还有很多问题等待我们解决,我们需要不断地一个一个解决它们。
{z}
星空体育网页版
星空体育手机版