传感器数据标记验证的制作方法



1.本说明书涉及标记传感器数据


背景技术:



2.自主载具包括自驾驶小汽车、船只和飞行器。自主载具使用各种机载传感器和计算机系统来检测附近的对象,以及使用经训练的机器学习模型来做出控制和导航决策。为了确保这些机器学习模型的正确操作,用于训练机器学习模型的数据中的对象必须被正确标记。


技术实现要素:



3.本说明书描述了在一个或多个位置中的一个或多个计算机上的实现为计算机程序的系统,该系统验证与环境中的场景的传感器测量相关联的标记。
4.可以实施本说明书中描述的主题的特定实施例,以实现以下优势中的一个或多个。
5.标记验证系统可以提高对大型传感器数据集进行标记的准确度,其中大型可以被定义为数千个或更多个图像。这导致提高了使用大型传感器数据集的标记进行训练的机器学习模型的准确度。例如,机载部署在自主载具上的机器学习模型的准确度可以由于标记质量提高而提高。
6.标记验证系统还可以向执行标记任务的人类提供即时反馈,通知标记者不正确的操作,从而减少人类标记者重复做出类似错误的可能性。
7.标记验证系统还可以对照新创建的标记标准验证先前输入的标记。例如,如果在先前已经标记了数万个传感器测量集合之后改变了标记策略,现在只有其中一些违反了新策略,则标记验证系统可以只识别不符合新的标记策略的传感器数据子集,从而减少使标记符合新标记策略所要求的精力。
8.标记验证系统还可以响应于接收的反馈调整验证标准。例如,如果标记验证系统指示标记确实满足验证标准,并且随后接收来自人类的标记确实满足所有验证标准的确认,则标记验证系统可以调整验证标准。这样的调整可以导致提高的准确度,也就是说,在更少的情况下,标记被错误地识别为未达到验证标准。
9.所描述的技术允许在所描述的技术执行标记验证时更快地生成准确的标记,因此,部署在自主载具上的机器学习模型可以更快地更新,以考虑新收集的训练数据,从而提高自主载具的性能。
10.一方面的特征在于接收由一个或多个传感器生成的表示环境中的场景的传感器测量的数据。传感器测量可以与一个或多个标记相关联,并且每个标记可以识别已被分类为测量环境中的对象的传感器测量的部分。对于每个标记,可以确定标记是否满足每个验证标准。每个验证准则可以测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致。响应于确定一个或多个标记中的特定标记不满足一个或多个验证标
准,可以生成指示该特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。
11.可以包括一个或多个以下特征。可以将通知提供给用户设备以呈现给用户。用户设备可以接收为由特定标记识别的传感器测量的部分指定更新标记的更新标记数据,并且更新标记可以被包括在用于传感器测量的验证标记集中。在将更新标记数据包括在验证标记数据集中之前,可以确定更新标记满足所有的验证标准。机器学习模型可以在训练数据上进行训练,该训练数据包括用于传感器测量的验证标记集。可以接收特定标记对环境的场景中的至少一个真实世界对象有效的指示,并且响应于接收该指示,可以修改至少一个验证准则。可以接收对特定标记的纠正的指示,并且响应于接收该指示,可以修改特定标记。该指示可以包括与标记不同的第二标记,并且修改特定标记可以包括用第二标记替换标记。表示传感器测量的数据可以表示至少一个道路附近的至少一个对象。
12.本说明书的主题的一个或多个实施例的细节在附图和以下描述中阐述。本主题的其他特征、方面和优点将从描述、附图和权利要求中变得清晰。
附图说明
13.图1示出了验证与和环境中的场景相关的传感器数据相关联的标记的示例系统。
14.图2是表示场景的传感器数据的图示。
15.图3是用于验证标记的示例过程的流程图。
16.图4是显示来自验证过程的结果的用户界面的示例。
17.不同附图中相同的附图标记和指定指示相同的元素。
具体实施方式
18.本说明书描述了系统可以如何验证与环境中的场景相关联的标记。标记用于训练指导自主载具的操作的机器学习模型,并且对场景内的对象的准确标记对于准确训练机器学习模型是重要的。准确的训练进而允许自主载具的正确导航,自主载具在穿越环境时必须避开障碍物。如果对象被错误标记,则机器学习模型可能被不准确地训练,并且载具的操作可能被影响。例如,如果邻近道路的杆子或树木被标记为行人,则机器学习模型可能会错误地识别这样的对象,从而导致自主载具停止以允许“行人”穿过道路。由于杆子和树木实际上并不穿过道路,因此载具可能没有正当原因地停止前进。同样,如果训练数据中的标记放置不正确,则机器学习模型可能被不准确地训练,并且自主载具内的识别系统可能无法正确理解环境中的对象。
19.描述场景的数据可以在自主载具穿越环境时生成。载具上的传感器(诸如lidar(激光雷达)和相机)可以收集在各个时间点和各个空间点的传感器测量。场景是环境内的区域,通常紧密接近自主载具,传感器可以在某时间点收集用于自主载具的测量数据。
20.在真实世界的示例中,场景通常包含许多对象,诸如道路标志、灯柱、行人、道路锥等。载具上的传感器可以收集关于对象的测量数据。然而,为了自主载具正确操作,载具的机载系统必须将原始测量数据转换(translate)为识别的对象。例如,特定的lidar散射模式可能表示灯柱,并且自主载具应该避开灯柱。道路标志同样必须被避开,但也可能包括在自主载具规划其路线时应考虑的信息。灯柱不包含这样的信息,但在大小和形状上可能与
道路标志相似。因此,虽然用于道路标志和灯柱的测量数据可能看起来相似,但将它们识别为不同的对象类型是重要的。
21.自主载具上的或远程但耦合到自主载具的对象识别系统将传感器数据转换为检测的对象。对象检测系统通常采用机器学习技术,更具体地,采用在标记的场景数据上训练的机器学习模型。
22.标记可以识别以下各项中的一个或多个:(i)对象所属的对象类别(例如,像载具、行人、骑自行车的人、道路标志等),或(ii)“边界框”或识别与检测的对象对应的传感器测量的部分的其他区域。标记可以由用户创建或由配置为自动创建用于场景的标记的系统创建。
23.如果用于训练机器学习模型的场景数据被不准确地标记,例如将道路标志标记为灯柱,则机器学习模型可能产生不准确的对象检测。因此,自主载具的正确操作至少部分依赖于对场景数据的准确标记。
24.由于准确训练机器学习模型可能要求大量数据集,通常有数百万个实例,因此标记这些数据集(通常由人类执行)要求大量工作。此外,由于人类容易犯错,尤其是在执行大量任务时,因此出现标记错误是不可避免的。
25.此外,对象的体系(universe)以及相对应的有效标记可能随着时间而改变。例如,在传统上小汽车一直未超过7英尺宽的情况下,如果对象被标记为“小汽车”,而该对象超过7英尺宽,则该标记被假设为不正确并将被标示为无效。然而,如果推出超过7英尺宽的新型号的小汽车,则这样的标记可能是正确的,并且标记评估标准必须改变。
26.此外,标记策略可能随着时间而改变。例如,标记策略可能声明灯柱、消火栓、邮箱等都要被标记为“固定障碍物”。之后,标记策略可能会被调整为要求对每个类型的固定障碍物进行特定标记—即,灯柱被标示为“灯柱”,邮箱被标示为“邮箱”,等等。在这种情况下,有必要快速定位不再符合调整标记策略的场景,以便应用纠正的标记。
27.因此,这对于用于训练由自主载具采用以识别标记不正确(可能由于人类错误、策略改变或其他原因)的实例的机器学习模型的训练数据的质量以及允许标记被纠正是有利的。一旦场景被标记,系统可以验证标记,并在标记不是用于场景中的任何真实世界对象的有效标记时创建通知。例如,如果“打开的小汽车车门”标记与不包含小汽车的场景的部分相关联,则系统可以创建标记可能无效的通知。如上所述,确保正确标记环境中的对象对于自主载具的操作是重要的。
28.更具体地,本说明书中描述的技术可以导致更准确地标记传感器数据,从而提高用于训练由自主载具使用的机器学习模型的数据的质量。提高训练数据的质量导致更准确的经训练的机器学习模型。当自主载具使用这样的改善的模型时,自主载具可以做出改善的驾驶决策。
29.可选地,系统可以从用户接收关于通知的准确度的反馈并调整验证标准。例如,如果系统被配置为使得标记为“小汽车”的对象的宽度不能超过7英尺,并且系统遇到宽度为7.5英尺的对象,则系统可以生成标记可能无效的通知。如果系统接收了标记正确的指示(可能由于新型号的小汽车特别宽),则系统可以调整验证标准以许可宽度最多7.5英尺的小汽车。
30.下面更详细地描述这些特征和其他特征。
31.图1是示例标记验证系统100的框图。标记验证系统100是在一个或多个位置中的一个或多个计算机上的实现为计算机程序的系统的示例,其中,可以实现下文描述的系统、组件和技术。
32.标记验证系统100可以包括多个储存库,包括:传感器数据储存库104、标记数据储存库106和验证标准储存库108。
33.在本说明书中使用的“储存库”可以指代可以存储数据的任何适当类型的逻辑或物理数据存储装置。例如,储存库可以使用将数据存储为文件的文件系统来实现,并且可以使用文件系统操作来存储和检索数据。文件系统可以被存储在一个计算机系统上,也可以被存储在通过网络连接的多个计算机系统上。在另一个实施方式中,储存库可以是数据库(诸如关系数据库),并且使用数据库操作(例如,表达为sql(结构化查询语言)命令)来存储和检索数据。数据库可以被存储在一个计算机系统上,也可以被存储在通过网络连接的多个计算机系统上。储存库可以与系统一起被存储在相同计算机上,也可以被存储在与系统不同的计算机上。此外,储存库可以包括多个数据存储单元。例如,与一个储存库相关联的数据可能存在于多个关系数据库中,每个关系数据库被存储在不同的计算机上。可替代地,储存库可以包括关系数据库表和文件系统中的文件二者。此外,储存库可以指代存在于一个或多个计算机系统中的计算机存储器(诸如随机存取存储器(ram))的一个或多个区域。本说明书中的储存库还可以指代以上列出的所有这样的实施方式的组合和/或指代单独或组合的其他数据存储技术。
34.传感器数据储存库104包含从已经穿越区域的自主载具上的传感器或从区域中的其他传感器获得的传感器数据。例如,传感器数据可以包括从被配置为检测激光的反射的一个或多个激光传感器(例如,lidar激光传感器)获得的数据。作为另一示例,传感器数据可以包括来自被配置为检测无线电波的反射的一个或多个雷达传感器的数据。作为另一示例,传感器数据可以包括来自被配置为检测可见光的反射的一个或多个相机传感器的数据。传感器数据可以由在特定方向上的传输的一个或多个电磁辐射脉冲产生,该特定方向可以用于测量任何反射的强度以及接收反射的时间。传感器数据还可以包括从上述传感器数据计算的数据。例如,可以通过确定传输脉冲和接收其反射之间经过的时间来计算距离并将距离包括在传感器数据中。
35.标记数据储存库106包含已经与传感器数据相关联的标记。例如,如果传感器数据指示灯柱,则标记“灯柱”可以被包括在标记数据储存库中。标记数据通常由标记传感器数据的用户创建。标记数据还可以包括边界框,如下文进一步描述。
36.验证标准储存库108包含用于验证标记的标准。例如,标准可以被表示为验证标记所对照的规则。(参考图3进一步描述了验证标准。)
37.标记验证系统100还可以包括执行子系统110,其根据验证标准来验证与传感器数据相关联的标记数据,并与一个或多个用户设备交互。执行子系统110可以包括验证引擎120、通知引擎130、用户设备界面引擎140和标准调整引擎150。
38.标记验证系统100还可以包括训练系统160或与训练系统160通信,训练系统160可以用于训练用于指导自主载具的操作的一个或多个机器学习模型。训练系统可以包括训练数据存储装置162、训练引擎166和模型参数存储装置170。
39.执行子系统110可以从传感器数据储存库104检索传感器数据、从标记数据储存库
106检索与传感器数据相关联的标记数据、以及从验证标准储存库108检索验证标准。执行子系统110可以通过使用验证标准(诸如验证规则)来验证标记,并在标记验证失败时通知用户设备190。
40.当标记验证失败时,与用户设备190相关联的用户可以选择调整标记,这可以导致标记数据储存库106中的更新,如参考图3进一步描述的。
41.在标记验证系统100不正确地指示标记无效的情况下,执行子系统110可以通知与用户设备190相关联的用户,该用户可以调整验证标准储存库中的验证标准。
42.执行子系统110可以从传感器数据储存库104接收传感器数据。传感器数据可以包括例如如上所述的来自lidar系统的读数、来自相机的图像或来自由视频相机捕获的视频的帧。
43.执行子系统110还可以从标记数据储存库106接收与传感器数据相关联的标记数据。可选地,传感器数据储存库104和标记数据储存库106可以是相同的储存库。
44.执行子系统110还从验证标准储存库108接收验证标准。虽然传感器数据储存库104、标记数据储存库106和验证标准储存库108被示为在执行子系统之外,但它们中的一个、一些或全部可以驻留在执行子系统内。
45.执行子系统110中的验证引擎120可以对照与场景的传感器测量相关联的标记来评估验证标准。当验证引擎120确定对标记的验证失败时,通知引擎130可以创建指示验证失败的通知。通知可以是旨在显示在用户设备190上的消息,其向一个或多个用户通知与传感器测量相关联的标记不满足至少一个验证准则。
46.通知引擎130可以将通知提供给用户设备界面引擎140,其可以使通知显示在至少一个用户界面设备190上。作为响应,用户可以通过在用户界面190上提交一个或多个输入来调整标记,并且执行子系统110可以将调整的标记存储在标记数据储存库106和/或训练数据存储装置162中。系统可以更新用户界面以移除错误的通知。如上所述,提高标记的准确度会提高用于训练一个或多个机器学习模型的数据的质量,机器学习模型由自主载具用来导航。
47.可替代地,如果与用户设备190相关联的用户确定标记被正确地应用于传感器数据,并且因此通知不正确地指示标记无效,则用户可以通过用户界面设备190向验证标准调整引擎150提供纠正的验证标准的指示。验证标准调整引擎150可以响应于接收与场景的传感器测量相关联的标记是正确的指示,调整与标记相关联的至少一个验证准则。可选地,验证标准调整引擎可以仅在错误通知的报告数量超过配置阈值时(例如,如果多于一个用户提交纠正的验证标准的指示),调整验证标准。参考图3进一步描述验证标准调整。
48.训练系统160包括训练数据存储装置162,其存储用于训练机器学习模型的训练数据。训练示例164包括与传感器数据相关联的验证标记和边界框。
49.训练数据存储装置162向同样容纳在训练系统160中的训练引擎166提供训练示例164。训练引擎166使用训练示例164来更新机器学习模型的模型参数,并向模型参数存储装置170提供更新的模型参数168。一旦模型的参数值已经被完全训练,训练系统160就可以将训练后的参数值发送到例如与自主载具相关联的控制系统。
50.训练系统160通常被托管在数据中心(未示出)内,该数据中心可以是在一个或多个位置中的具有数百个或数千个计算机的分布式计算系统。
51.图2是表示验证准则可能失败的场景200的传感器数据的图示。场景已被用户标记为包括两个对象:小汽车,由包含在第一边界框210内的区域表示在传感器数据中;以及打开的小汽车车门,由包含在第二边界框220内的区域表示在传感器数据中。
52.相关的验证准则可能指示打开的小汽车车门必须连接到小汽车对象,以使得“打开的小汽车车门”标记有效。在该示例中,第一边界框210(用于汽车)和第二边界框220(用于打开的车门)是脱离的,这可以指示打开的小汽车车门没有连接到小汽车本身。在这样的情况下,第二边界框220的放置可能是不正确的,因为打开的小汽车车门必须连接到一些小汽车(根据验证准则)。在数据的表示中,小汽车周围的边界框210不是粗体,指示没有检测到违规,而车门周围的边界框220是粗体,指示潜在的违规。虽然在该图示中以粗线指示违规指示,但也可以使用诸如阴影、颜、弹出对话框、替代文本等替代表示。此外,响应于用户修改标记使得标记不再违反任何验证标准,系统可以改动边界框的显示以移除错误指示符,例如,通过将线从粗体改变为非粗体或改动颜或阴影。
53.响应于确定第二边界框220的标记违反准则,标记验证系统可以产生通知,该通知可以包括传感器数据的特定实例的指示、与验证失败相关的标记以及特定失败的指示(即标记违反的准则或标准的指示,在这种情况下,“打开的车门与小汽车脱离”)。标记验证系统可以实时评估标准(即,在用户向系统提交标记的阈值时间量(诸如5秒或1分钟)内),并立即在用户界面面板中显示指示。
54.图3是用于验证标记的示例过程的流程图。为方便起见,过程300将被描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,适当编程的标记验证系统(例如,图1的标记验证系统100)可以执行过程300。
55.在步骤302中,系统获得传感器数据。如前所述,传感器数据可以包括由自主载具中通常包括的传感器生成的数据,诸如lidar数据、来自相机的静态图像、来自摄像机的视频、或来自其他传感器(如激光或声音设备)的数据。传感器数据可以从如参考图1所描述的包含传感器数据的一个或多个储存库中获得。例如,如果传感器数据被存储在关系数据库中,则系统可以使用sql操作检索传感器数据。
56.在步骤304中,系统还从标记数据储存库获得标记数据。如前所述,标记可以识别对象所属的对象类别、识别与检测的对象对应的传感器测量的部分的“边界框”或两者。对象类别标记可以指示传感器数据中表示的对象类型,诸如“行人”或“树木”。边界框可以描绘传感器数据中表示的对象的边界。可替代或附加地,当系统的用户正在创建标记时,系统可以获得标记数据。
57.在步骤306中,系统还获得验证标准。验证标准可以包括验证规则、一个或多个训练后的机器学习模型或其他形式的验证标准。
58.当验证标准包括规则时,每个规则可以为一个或多个对应对象类别指定一个或多个约束,该约束在标记指示传感器测量的部分属于对应对象类别时所必须被满足,如下所述。
59.一些验证标准还可以取决于一个或多个训练后的机器学习模型(诸如识别描绘对象的场景数据中的边界框的训练后的对象检测模型)的输出,如下文进一步描述。机器学习模型可以使用传统的ml训练技术在标记的传感器数据的数据集上进行训练。
60.系统可以使用传统技术从上面列出的任何储存库中获得数据。例如,如果储存库
是关系数据库中的一个或多个表,则系统可以使用sql查询来获得数据。可替代地,如果储存库是文件系统中的文件,则系统可以使用操作系统提供的文件系统api来获得数据。
61.在获得传感器数据、标记数据和验证标准后,在步骤320中,系统评估验证标准。对于一个或多个标记中的每个标记,系统确定标记是否满足多个验证标准中的每个验证标准,其中每个验证准则测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致。响应于确定一个或多个标记中的特定标记不满足一个或多个验证标准,系统可以生成指示该特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。
62.在一些实施方式中,验证标准是声明为关于与传感器测量相关联的标记数据的断定的规则。规则可以指定与传感器测量相关联的标记数据、道路的各方面和其他可用数据的各种组合之间的关系。系统可以对照与和场景相关的传感器数据的项目相关联的至少一个标记或边界框来测试断定。
63.例如,如上所述,一些规则可以指定被分配了指定标记的传感器测量必须与道路的特定方面(如在表征道路的道路图中所识别的)具有指定关系。在该示例中,断定可能声明“灯柱不能位于行进车道中”。对于与“灯柱”位置相关的标记,系统确定场景中的灯柱是否位于行进车道中。如果是,则系统确定不满足验证标准内的相关验证准则。
64.在第二示例中,一些规则可以指定被分配了指定标记的传感器测量必须与被分配了不同标记的传感器测量的部分具有指定关系。在该示例中,规则可能声明“打开的车门必须接触小汽车”或“小汽车的边界框必须接触地面”。
65.在第三示例中,一些规则可以确定被分配了给定标记的传感器测量的部分的属性是否满足对那些属性的值的一个或多个约束。“小汽车宽度小于7英尺”是这样的规则的示例。
66.在一些实施方式中,可以将规则实施为程序。这样的程序可以将标记作为输入,评估规则,并输出标记是否满足规则中表达的准则。
67.如上所述,在一些实施方式中,验证标准包括基于由一个或多个训练后的机器学习模型生成的输出的那些验证标准。系统可以对照来自场景的传感器数据执行训练后的机器学习模型,以确定标记正确的可能性。如果确定的可能性不满足配置阈值,则系统确定不满足相关的验证准则。例如,可以要求与任何标记关联的边界框与由机器学习模型通过处理传感器数据生成的边界框具有阈值重叠水平,其中,重叠水平可以被定义为交并比(intersection over union),即,与标记相关联的边界框和由机器学习模型生成的边界框之间的重叠的面积除以与标记相关联的边界框和由机器学习模型生成的边界框所覆盖的总面积。如果重叠水平不满足阈值,则系统可以确定不满足相关验证标准。该系统还可以执行多个机器学习模型,每个机器学习模型被配置为实行不同或重叠的标准。在一些实施方式中,任何机器学习模型确定不满足验证准则会导致系统确定不满足验证标准。
68.系统可以响应于接收传感器数据的特定项目、与传感器数据的项目相关联的标记数据的一个和/或多个项目来执行步骤320。这种执行模式与在添加标记时对标记的验证一致。
69.附加或可替代地,系统可以在标记与传感器数据储存库中的传感器数据相关联之前对用户生成的标记评估标准,省略步骤302。在该实施方式中,系统在将每个标记与传感器数据相关联之前确定每个标记是否有效,可能会避免其他系统访问依赖于尚未验证的信
息的标记数据的情况。
70.附加或可替代地,系统可以响应于接收指示而执行步骤320,该指示表明系统应当对已经与传感器数据的多个项目相关联的标记数据的多个项目评估验证标准。在验证标准改变的情况下,诸如在标记策略更新时或在部分验证标准改变时,让系统对照已经被标记的传感器数据评估验证标准可能是有利的。这样的步骤可以帮助确保标记已经对照最近期的验证标准进行了验证。
71.响应于确定不满足验证标准,在步骤330中,系统生成通知。通知旨在告知用户验证失败。与通知相关联的数据可以包括导致不满足验证标准的传感器数据、验证标准和标记的指示。
72.在步骤340中,系统向用户界面设备提供通知,在该用户界面设备上可以显示包括在通知中的或由通知引用的数据。用户界面设备可以包括移动设备(诸如移动电话或平板计算机)、个人计算机(诸如台式计算机或膝上型计算机)或其他用户界面设备。可选地,系统可以使与不满足的验证标准相关的信息显示在用户界面设备上,例如,在图2和图4所示的用户界面面板上。信息可以包括问题的视觉表示,诸如相关的传感器数据连同以粗体或以诸如红的颜突出显示的对应边界框。信息还可以包括不满足的标准的指示,以及关于用户可以采取以解决问题的步骤的建议。
73.在步骤350中,系统可以可选地接收指定通知准确或不准确的准确度指示。例如,用户可以通过与用户界面面板(诸如图4所示的面板)交互来提供准确度指示。系统可以从用户界面设备接收关于精度指示的指示或从数据储存库检索准确度指示。
74.准确度指示可以包括与被确定为准确或不准确的通知相关联的数据。例如,它可以包括与在步骤340中提供的与通知相关联的数据或对那些数据的引用。准确度指示还可以包括另外的数据,如下所述。
75.在判定步骤355中,系统确定准确度指示是与准确通知的指示还是与不准确通知的指示相关联。如果系统确定该指示与准确通知的指示相关联,则系统进行到步骤370;如果系统确定该指示与不准确通知的指示相关联,则系统进行到步骤360。
76.在步骤360中,系统可以响应接收不准确通知的指示。在一些实施方式中,系统仅在接收配置阈值的与相同标记相关的不准确通知之后才可以响应。如果系统仅在接收配置阈值的不准确通知之后才响应,则系统可以为每个标记维持计数器,当接收不准确通知的指示时将计数器增加,并在计数器达到阈值时动作(还有将计数器重置为零)。可选地,响应于接收不准确通知的指示,系统可以更新用户界面面板(诸如图4中所示的面板),以移除违反标准的任何指示。
77.当验证标准的部分与真实世界中的可能性不匹配时,通知可能不准确。例如,如果在将验证标准加载到系统时所有小汽车的宽度在7英尺以下,并且小汽车制造商随后发布了7.5英尺宽的小汽车,则验证标准将与包含新的小汽车型号的有效真实世界场景不匹配,即,当验证标准要求小汽车的宽度小于7英尺时,实际小汽车的宽度为7.5英尺。在这种情况下,在步骤350中,系统可以接收通知不准确的指示,从而允许用户或系统本身调整验证标准。
78.准确度通知可以包括或参考描述不准确度的数据。继续上面的示例,准确度指示可以包括小汽车的最大有效宽度应至少为7.5英尺的数据指示。
79.如果系统使用包括断定的规则,则系统可以使用准确度指示中的数据来检索不准确的断定,并调整断定以符合对真实世界的观察。在接下来的示例中,系统将断定“车的宽度小于7英尺”调整为“车的宽度小于或等于7.5英尺”。
80.如果系统使用一个或多个训练后的机器学习模型,则系统可以使用传感器数据和与准确度指示相关联的标记重新训练模型,例如,通过将其用作传统分类机器学习模型的正例。
81.然后,系统可以在系统评估验证标准的后续情况中(如在步骤320中)使用更新的验证标准。
82.在步骤370中,系统接收了通知准确的指示(即标记不正确),并且系统随后可以接收包括更新标记的指示的数据。可替代地,响应于接收指示,系统可以从数据储存库或从用户界面设备检索更新标记。在另一个替代实施方式中,更新标记可以改为被包括在步骤350中接收的准确度指示中。
83.在步骤375中,系统可以使用参考步骤320描述的过程来验证更新标记。
84.在判定步骤380中,系统确定更新标记是否有效。如果标记有效,则系统进行到步骤385;如果标记无效,则系统进行到步骤390。
85.在步骤385中,系统可以将与更新标记相关联的数据存储在标记数据储存库中。系统可以更新与标记相关联的数据,或者添加新的标记数据并移除现有的(不正确的)标记数据。
86.在步骤390中,系统可以产生更新标记不满足验证标准的指示。例如,系统可以将描述性条目添加到错误日志和/或产生错误消息以显示在用户界面设备上。
87.在一些实施方式中,系统可以改为进入步骤330,而不是进入步骤390,在步骤330中,系统生成通知并继续从330执行过程。
88.可选地,系统可以收集与标记者准确度相关的数据。例如,在完成步骤320之后,如果系统确定标记不准确,则系统可以存储不准确标记的指示,该指示可选地与创建标记的用户的标识符相关联。系统可以将收集的信息提供给用户,使用户能够提高他们的标记准确度。
89.图4是显示来自验证过程的结果的用户界面的示例。
90.用户界面面板410由验证系统产生,以用于在用户界面设备上显示并且包括与不满足验证标准的情况相关联的行的集合。例如,行420a指示具有以“5uvz”开头的id的对象不满足验证准则。行420a下方是反映错误性质的文本描述430a,在这种情况下,指出“标记离sdc(自驾驶载具)太远”。类似地,行420b指示具有以“iqdd”开始的id的对象不满足验证标准的部分。在行420b下方是反映错误性质的文本描述430b,在这种情况下,也指出“标记离sdc太远”。更具体地,每行可以对应于违反验证标准,并且可以与可以使用错误的视觉指示符来描绘的边界框相关联,诸如图2中的小汽车车门220周围的粗体边界框,并且也可以使用不是粗体的使边界框的颜变为红的指示符,或者在使用粗体的基础上使用该指示符,。
91.用户可以与标记验证系统提供的用户界面进行交互。例如,用户可以选择在用户界面中显示的行(例如420a),并且作为响应,标记验证系统可以产生用户界面数据,用户界面数据当显示在用户界面设备上时,可以允许用户修改标记由选择的行指示的标记。为了
简化修改标记的过程,标记验证系统可以生成用户界面数据,包括与所选的标记相关联的相关传感器数据。此外,响应于用户选择行(例如,通过点击它),系统可以呈现诸如图2中所示的面板的用户界面面板,其焦点指向不满足验证标准的边界框。类似地,如果由于缺少边界框而不满足验证准则,则响应于用户在用户界面中选择对应的行,系统可以显示传感器数据,以及满足验证标准的需要的边界框的大概位置的指示。响应于从用户界面显示器接收修改的标记,标记验证系统可以修改标记,如参考图3所描述的。如果修改的标记满足验证标准,则可以从用户界面面板410中的行列表移除对应的行,行列表列出不满足验证标准的情况。
92.在另一个示例中,标记验证系统可以产生允许用户选择行,并指定不满足验证标准的指示不正确(即,标记被正确分配)的用户界面数据。响应于从用户界面显示器接收该指示,标记验证系统可以如参考图3所描述地作出响应。
93.本说明书与系统和计算机程序组件结合地使用术语“配置”。对于一个或多个计算机的系统被配置为执行特定操作或动作,这意味着系统在其上安装有软件、固件、硬件或它们的组合,在操作时,软件、固件、硬件或它们的组合使系统执行操作或动作。对于一个或多个计算机程序被配置为执行特定操作或动作,这意味着一个或多个程序包括指令,指令在由数据处理装置执行时,使装置执行操作或动作。
94.本说明书中描述的主题的实施例和功能操作可以在数字电子电路中、在有形地实现的计算机软件或固件中、在计算机硬件(包括本说明书中公开的结构以及其结构等同物)中或在它们中的一个或多个的组合中实现。本说明书中描述的主题的实施例可以被实现为一个或多个计算机程序,即编码在有形非暂态存储介质上以供数据处理装置执行或控制数据处理装置的操作的计算机程序指令的一个或多个模块。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备或它们中的一个或多个的组合。可替代或附加地,程序指令可以被编码在人工生成的传播的信号(例如,机器生成的电信号、光信号或电磁信号)上,该信号被生成为将信息编码以传输到合适的接收器装置以供数据处理装置执行。
95.术语“数据处理装置”指数据处理硬件并且涵盖用于处理数据的所有种类的装置、设备和机器,包括例如可编程处理器、计算机或者多个处理器或计算机。该装置还可以是或者还包括专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。除了硬件之外,该装置可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
96.计算机程序(其也可以被称为或被描述为程序、软件、软件应用、app(应用)、模块、软件模块、脚本或代码)可以以任何形式的编程语言编写,包括编译或解释性语言、或者声明性或过程语言,并且其可以以任何形式部署,包括作为独立程序或作为模块、组件、子例程或适于在计算环境中使用的其他单元。程序可以但不必与文件系统中的文件对应。程序可以被存储在保持其他程序或数据的文件的部分(例如,存储在标记语言文档中的一个或多个脚本)中、在专用于所讨论的程序的单个文件中或在多个协作的文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中。计算机程序可以被部署为在一个或多个计算机上执行,所述多个计算机位于一个站点处或在多个站点之上分布并通过数据通信网络互连。
97.在本说明书中,术语“引擎”被用于广义地指代基于软件的系统、子系统或被编程为执行一个或多个特定功能的过程。通常,引擎将被实现为安装在一个或多个位置中的一个或多个计算机上的一个或多个软件模块或组件。在一些情况下,一个或多个计算机将专用于特定引擎;在其他情况下,可以在相同的计算机或多个计算机上安装并运行多个引擎。
98.本说明书中描述的过程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过对输入数据操作并生成输出来执行功能。所述过程和逻辑流程也可以由专用逻辑电路(例如fpga或asic)执行,或者由专用逻辑电路和一个或多个经编程的计算机的组合来执行。
99.适用于执行计算机程序的计算机可以基于通用微处理器或专用微处理器或二者,或者任何其他种类的中央处理单元。通常,中央处理单元将从只读存储器或随机存取存储器或二者接收指令和数据。计算机的基本元件是用于执行或运行指令的中央处理单元和用于存储指令和数据的一个或多个存储器设备。中央处理单元和存储器可以由专用逻辑电路来补充或可以结合到其中。通常,计算机也将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘)或可操作地耦合一个或多个大容量存储设备以从其接收数据或向其传送数据或者接收和传送二者。然而,计算机不必具有这样的设备。另外,计算机可以嵌入到另一设备(例如,仅举几例,移动电话、个人数字助理(pda)、移动音频或视频播放器、游戏控制台、全球定位系统(gps)接收器或便携式存储设备(例如通用串行总线(usb)快闪驱动器))中。
100.适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如eprom、eeprom和闪存设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及cd-rom盘和dvd-rom盘。
101.为了提供与用户的交互,本说明书中描述的主题的实施例可以被实现在具有用于向用户显示信息的显示设备以及用户可以通过其向计算机提供输入的键盘和指向设备的计算机上,显示设备例如为crt(阴极射线管)或lcd(液晶显示器)监视器,指向设备例如为鼠标或轨迹球。也可以使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。此外,计算机可以通过向由用户使用的设备发送文档和接收来自该设备的文档来与用户交互;例如,通过响应于从网络浏览器接收的请求而将网页发送到用户的设备上的网络浏览器。另外,计算机可以通过将文本消息或其他形式的消息发送到个人设备(例如,运行消息传递应用的智能电话)并且作为回应从用户接收响应消息来与用户交互。
102.用于实现机器学习模型的数据处理装置还可以包括例如用于处理机器学习训练或生产的普通和计算密集部分(即,推断、工作负荷)的专用硬件加速器单元。
103.机器学习模型可以使用机器学习框架(例如,tensorflow框架、微软认知工具包框架、apache singa框架或apache mxnet框架)来实现和部署。
104.本说明书中描述的主题的实施例可以在计算系统中实现,该计算系统包括后端组件(例如,作为数据服务器)或包括中间件组件(例如,应用服务器)或包括前端组件(例如,具有图形用户界面、网络浏览器或app的客户端计算机,用户可通过客户端计算机与本说明书中描述的主题的实现进行交互)、或者一个或多个这样的后端组件、中间件组件或前端组
件的任意组合。可以通过任意形式或媒介的数字数据通信(例如,通信网络)将系统的组件互连。通信网络的示例包括局域网(lan)和广域网(wan),例如,互联网。
105.计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离,并且通常通过通信网络交互。通过运行在相应计算机上且彼此具有客户端-服务器关系的计算机程序来形成客户端和服务器的关系。在一些实施例中,服务器向用作客户端的用户设备传输数据(例如,html页面)(例如,用于向与设备交互的用户显示数据和从与设备交互的用户接收用户输入的目的)。在服务器处,可以从用户设备接收在该设备处生成的数据(例如,作为用户交互的结果)。
106.尽管本说明书包含许多具体的实施方式细节,但是这些细节不应当被理解为对任何发明的范围或对可能请求保护的范围进行限制,而应该被理解为对可能特定于特定发明的特定实施例的特征的描述。在本说明书中在分开的实施例的上下文中描述的某些特征也可以以组合方式在单个实施例中实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中分开实现或以任何合适的子组合实现。此外,尽管特征可以如上被描述为在某些组合中起作用并且甚至最初也这样地请求保护,但在一些情况下,来自所请求保护的组合的一个或多个特征可以从组合中删除,并且所请求保护的组合可以涉及子组合或子组合的变体。
107.类似地,尽管以特定次序在附图中描绘了操作并且在权利要求中记载了操作,但是这不应当被理解为要求以示出的特定次序或以顺序的次序来执行这样的操作或者要求执行所有示出的操作来实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。另外,在上述实施例中的各种系统模块和组件的分离不应当被理解为在所有实施例中要求这样的分离,而是应当理解,所描述的程序组件和系统可以一般地在单个软件产品中被集成在一起或者被封装成多个软件产品。
108.已经描述了主题的特定实施例。其他实施例落入所附权利要求的范围内。例如,记载在权利要求中的动作可以以不同的次序执行而仍然实现期望的结果。作为一个示例,附图中描绘的过程不一定要求所示出的特定次序或者顺序的次序来实现期望的结果。在一些情况下,多任务和并行处理可能是有利的。

技术特征:


1.一种计算机实现的方法,包括:接收由一个或多个传感器生成的表示环境中的场景的传感器测量的数据,其中,所述传感器测量与一个或多个标记相关联,每个标记识别已被分类为测量环境中的对象的传感器测量的相应部分;对于一个或多个标记中的每个标记,确定所述标记是否满足多个验证标准中的每个验证标准,其中,每个验证准则测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致;以及响应于确定一个或多个标记中的特定标记不满足一个或多个验证标准,生成指示所述特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。2.如权利要求1所述的方法,还包括:将通知提供给用户设备以呈现给用户。3.如权利要求2所述的方法,还包括:从用户设备接收为由特定标记识别的传感器测量的部分指定更新标记的更新标记数据;以及将更新标记包括在用于传感器测量的验证标记集中。4.如权利要求3所述的方法,还包括:在将更新标记数据包括在验证标记数据集中之前,确定更新标记满足所有的验证标准。5.如权利要求3所述的方法,还包括:在包括用于传感器测量的验证标记集的训练数据上训练机器学习模型。6.如权利要求1所述的计算机实现的方法,还包括:接收特定标记对环境的场景中的至少一个真实世界对象有效的指示,以及响应于接收指示,修改至少一个验证准则。7.如权利要求1所述的计算机实现的方法,还包括:接收对特定标记的纠正的指示,以及响应于接收所述指示,修改特定标记。8.如权利要求5所述的计算机实现的方法,其中,所述指示包括与标记不同的第二标记,并且修改特定标记包括用第二标记替换标记。9.如权利要求1所述的计算机实现的方法,其中,表示传感器测量的数据表示至少一个道路附近的至少一个对象。10.一种或多种存储指令的非暂时性计算机可读存储介质,指令在由一个或多个计算机执行时,使一个或多个计算机执行包括以下各项的操作:接收由一个或多个传感器生成的表示环境中的场景的传感器测量的数据,其中,所述传感器测量与一个或多个标记相关联,每个标记识别已被分类为测量环境中的对象的传感器测量的相应部分;对于一个或多个标记中的每个标记,确定所述标记是否满足多个验证标准中的每个验证标准,其中,每个验证准则测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致;以及响应于确定一个或多个标记中的特定标记不满足一个或多个验证标准,生成指示所述
特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。11.如权利要求10所述的一种或多种非暂时性计算机可读存储介质,还包括:将通知提供给用户设备以呈现给用户。12.如权利要求11所述的一种或多种非暂时性计算机可读存储介质,还包括:从用户设备接收为由特定标记识别的传感器测量的部分指定更新标记的更新标记数据;以及将更新标记包括在用于传感器测量的验证标记集中。13.如权利要求12所述的一种或多种非暂时性计算机可读存储介质,还包括:在将更新标记数据包括在验证标记数据集中之前,确定更新标记满足所有的验证标准。14.如权利要求12所述的一种或多种非暂时性计算机可读存储介质,还包括:在包括用于传感器测量的验证标记集的训练数据上训练机器学习模型。15.如权利要求10所述的一种或多种非暂时性计算机可读存储介质,还包括:接收特定标记对环境的场景中的至少一个真实世界对象有效的指示,以及响应于接收指示,修改至少一个验证准则。16.如权利要求10所述的一种或多种非暂时性计算机可读存储介质,还包括:接收对特定标记的纠正的指示,以及响应于接收所述指示,修改特定标记。17.如权利要求14所述的一种或多种非暂时性计算机可读存储介质,其中,所述指示包括与标记不同的第二标记,并且修改特定标记包括用第二标记替换标记。18.如权利要求10所述的一种或多种非暂时性计算机可读存储介质,其中,表示传感器测量的数据表示至少一个道路附近的至少一个对象。19.一种系统,包括一个或多个计算机和一个或多个存储指令的存储设备,指令在由一个或多个计算机执行时,使一个或多个计算机执行包括以下各项的操作:接收由一个或多个传感器生成的表示环境中的场景的传感器测量的数据,其中,所述传感器测量与一个或多个标记相关联,每个标记识别已被分类为测量环境中的对象的传感器测量的相应部分;对于一个或多个标记中的每个标记,确定所述标记是否满足多个验证标准中的每个验证标准,其中,每个验证准则测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致;以及响应于确定一个或多个标记中的特定标记不满足一个或多个验证标准,生成指示所述特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。20.如权利要求19所述的系统,还包括:将通知提供给用户设备以呈现给用户。

技术总结


方法、系统和装置,包括在计算机存储介质上编码的计算机程序,其验证与环境中的场景的传感器测量相关联的标记。方法之一包括接收由一个或多个传感器生成的表示环境中的场景的传感器测量的数据。传感器测量可以与一个或多个标记相关联,并且每个标记可以识别已被分类为测量环境中的对象的传感器测量的部分。对于每个标记,可以确定该标记是否满足每个验证标准。每个验证准则可以测量标记的一个或多个特性是否与环境中的真实世界对象的一个或多个特性一致。响应于确定一个或多个标记中的特定标记不满足一个或多个验证标准,可以生成指示该特定标记对于环境的场景中的任何真实世界对象不是有效标记的通知。对象不是有效标记的通知。对象不是有效标记的通知。


技术研发人员:

L.P.崔 A.米尼克 M.范韦利 N.巴鲁阿 D.安格洛夫

受保护的技术使用者:

伟摩有限责任公司

技术研发日:

2022.04.21

技术公布日:

2022/12/22

本文发布于:2024-09-24 00:22:21,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/45726.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:标记   多个   数据   传感器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议