综合数据:改进感知算法并优化边界搜索

图片



为了覆盖现实世界中遇到的所有极端情况,关键的传感系统需要大量数据。自动驾驶汽车训练算法最常用的方法之一是选择和标记实际驾驶数据。在2020年CVPR大会上,安德烈·卡帕蒂(Andrey Karpaty)表示,特斯拉也使用这种方法-他们的汽车在线适应对象标签。由于自动驾驶汽车始终面临着需要分析的新场景,工程师不断调整本体和方法来标注数据,因此“变化和控制”非常重要。



但是,由于可伸缩性,数据收集成本以及准确标记数据集所需的工作量,因此这种数据驱动的方法具有各种局限性。在本文中,应用团队将讨论合成的标记数据方法。这种方法使针对无人驾驶车辆的学习和开发关键算法的速度更快且更具成本效益。



图片



带有参考标记的摄像机图像的合成数据示例。原始RGB图像(左上方),2D帧(右上方),语义标记(左下方)和3D帧(右下方)。



数据标记和相关问题的现代方法



图2显示了创建标记数据集的典型方法。这是一个非常耗时的过程-测试驾驶员以手动或无人驾驶模式驾驶配备有多个传感器的车辆。在这些行程中,嵌入在汽车中的特殊软件会记录原始传感器数据以及来自传感,控制和计划模块的程序输出。在开发过程中,可能需要创建专用车辆,因为串行车辆可能缺少数据收集所需的精确传感器。收集数据之后,就形成了要标记的数据样本的艰巨任务。这需要仔细选择特定且有趣的事件,然后将数据集发送给公司,参与标记(建议将数据集的大小最小化以节省其标记)。有时,这包括在日志中搜索特定的极端情况(例如高速公路上飞来的包裹)。另外,在更新任何传感器的配置时,可能需要重新收集和标记。



图片



2:



虽然标记可能是准备训练自动驾驶算法所需的原始数据的唯一方法,但此方法的主要缺点是需要进行足够规模的投资。测试驾驶员可能需要行驶数百或数千公里才能发现任何边缘情况。例如,特斯拉拥有一支超过100万辆量产车的车队,这些车收集大量数据:不同语言的停车标志,不同的位置,数据验证等等,所有这些都代表公司。大多数OEM没有足够的工具来收集此类数据集。即使有大量的行驶数据,也无法保证。该数据将在数据集中可用。在这种情况下,为了收集此类数据,有必要进行专门的活动,这会增加开发成本并增加时间范围。



另一方面是可用性和特定条件的可用性。在撰写本文时,美国正处于极端天气条件下-天空变成橙色(有时甚至是红色)(图3)。如果在有这些条件的区域内没有车辆,则将需要数年的时间来收集此类数据-以便再次出现极端条件。否则,数据集将因其不提供此类条件的样本而产生偏差。



图片



图3:极端条件很难在自动驾驶车辆数据集中预测和捕捉。资料来源:哥伦比亚广播公司新闻。



此外,自动驾驶汽车开发商一直在寻找新的设计,并且需要大量的基础设施来有效地处理数据。关于此数据的许多查询都假定该数据已经具有标签或标记。问题是,如果以前从未使用过此方法,则它们可能不存在。最后,标记数据的成本非常高,并且数据通常是手动标记的。错误和不准确的可能性很高(例如,当一辆汽车在图像中与另一辆汽车重叠时)。



使用综合数据及其好处



合成数据提供了更可扩展和更准确的替代方法。尽管合成数据是通过模拟生成的,但可以准确地提供可靠的信息(语义车辆标签或路标上的文字)。仿真还可以为场景中的每个对象提供有关反照率,深度,反射和粗糙度的准确数据(图4)。另外,对象具有像素蒙版和语义标签。所有这些使您可以自动创建注释,而无需手动标记传感器中的数据。尽管它可能需要专用的实际提取软件来生成单独的注释,但这将是一项一次性的投资,使您可以创建和使用新的标签类。



图片



4: . : , , , , .



综合数据标记的另一个显着优点是,它使您可以创建同一场景的许多变体,而不必环游世界并依靠运气。综合数据还使您可以专注于开发人员感兴趣的特定对象。通过正确的算法设置,可以在数小时内模拟数百万种道路标志变体。这些选项可能包括不同的照明条件,物体放置,各种障碍物和损坏(生锈,油渍,涂鸦)。因此,合成数据可以补充来自现实世界的数据。复合现实事件可以用作起点,从该起点将创建原始场景的数千种变体。



从地理角度来看,多样性也很重要。为了满足在特定国家/地区使用的经过特殊修改的国外路标,测试车辆将需要前往这些国家/地区。同样,一辆测试车可以行驶数百公里才能找到特定的路标,但最终结果证明它被校车挡了一半。通过使用合成数据集立即创建必要的场景,可以克服所有这些困难(图5)。由于可以在综合数据的基础上创建各种场景,因此可以在许多边缘情况下对算法进行测试(图6)。这篇文章描述了Kodiak机器人技术(与自动驾驶卡车打交道)如何使用综合模拟来训练算法和测试-他们验证了自己的Kodiak驱动程序系统能够充分处理各种边缘测试用例。



图片



图片



图5:欧洲和美国不同路标的示例



图片



图6:合成数据中道路条件和标记的修改



另一个重要的用例是获取无法从传感器收集或手动添加的参考数据样本。一个典型的例子是从带有一个或多个镜头的相机中精确提取深度。现实世界的数据并不能告诉我们每个像素的深度,并且不可能准确地计算出来或手工标记。



综合数据要求



传感器数据



为了使合成数据标记在自动驾驶汽车的测试和训练算法方面有用,来自模拟传感器和注释的数据必须满足某些标准。正如我们之前在传感器建模中所写的那样,用于开发无人驾驶车辆的人工传感器的大型数据集应该廉价而快速地(几天之内)生成。同样,应在考虑特定类型传感器固有的基本物理原理的基础上对人工传感器进行建模。最重要的因素是所创建模型的准确性水平。在似然差距(算法对实际数据和合成数据的感知方式不同)和数据收集速度之间需要权衡。该间隙可以根据模拟传感器的类型,周围物体和环境条件而变化。能够量化此差距并使用得出的估算值来形成使用合成数据的策略也非常重要。例如,请看图7,该图显示了激光雷达模型如何响应潮湿的道路。在图片中,您可以看到激光雷达如何响应地面返回信号并从周围的车辆喷洒。在图片中,您可以看到激光雷达如何响应地面返回信号并从周围的车辆喷洒。在图片中,您可以看到激光雷达对地面反馈和附近车辆的喷雾有何反应。



图片



7:







处理合成数据时出现的另一个重要方面是各种媒体和在这些媒体中找到的材料。应该从真实的地图和数据中快速生成环境-如图8所示。快速创建此类环境的能力取决于程序生成技术。能够对来自世界各地的任何地理区域进行建模的能力是合成数据相对于真实数据的另一个不可思议的优势。但是,虽然易于创建不同的位置,但是如果方法配置错误,则可以复制区域和数据。当前,该领域中的一个非常重要的方面是找到数据重复与反映现实世界多样性之间的关系。必须在宏观层面(路线的一公里路段上路面可以改变多少)上都考虑多样性,以及微观层面(例如,环境的不同材料如何不同)。



尽管在通常情况下,构成这些材料的纹理是对真实表面的扫描,但在以前的文章中讨论了材料在渲染物理上可信的环境中的重要性。创建这些材料的组合和变体以增加生成的数据的多样性在训练算法和测试它们中都至关重要。



图片



图8:以程序方式生成的高质量城市环境。



注释



数据注释的要求取决于用例和算法。表1列出了来自现实世界的数据注释的类型。



一种 细节
语义的 语义分割(像素或点)
长方体 对于图像,激光雷达点或雷达反射
2D标记的像素注释




表1:现实世界数据的注释类型



在合成数据的情况下,可以使用更可靠的信息来生成可以在收集的数据中捕获的类似注释。参考数据也以点/像素精度再现。最后,传感器数据和注释都可以在任何参照系(世界,系统本身,单独的传感器等)中进行处理。



表2列出了模拟生成的数据的标准注释类型。此外,可以进一步自定义许多格式和数据类型。



一种 细节
语义的 语义分割(像素或点)
长方体 , ( )
,
, , , ,
,
,
( BBox – )
反照率,表面法线,深度,表面粗糙度,反射,金属性,反射表面,光学特性




表2:合成数据的注释类型



使用所有这些其他参考数据类型可显着加快算法开发。数据的绝对规模,质量和数量使工程师能够更快地做出决策。



图片



图9:带注释的合成数据显示了完美像素的2D框










图片



空缺
, , , - .



, , , .



, , . , , , , , .



, , .







关于ITELMA
- automotive . 2500 , 650 .



, , . ( 30, ), -, -, - (DSP-) .



, . , , , . , automotive. , , .





All Articles