首页> 中国专利> 从机器学习模型输出推断出的实例分割

从机器学习模型输出推断出的实例分割

摘要

本发明讨论了用于训练机器学习(ML)模型的改进技术。训练ML模型可以基于示例子集。特别地,训练可以包括:识别与表示对象的图像的区域相关联的参考区域,以及至少部分地基于与第一边界框相关联的第一置信度得分,选择第一困难示例以包括在示例子集中。在一些情况下,第一置信度得分和第一边界框可以与特征地图的第一部分相关联。接下来,训练可以包括确定第一边界框与参考区域的第一对准度高于阈值对准度,并且作为响应,用第二困难示例代替第一困难示例。

著录项

  • 公开/公告号CN112334906A

    专利类型发明专利

  • 公开/公告日2021-02-05

    原文格式PDF

  • 申请/专利权人 祖克斯有限公司;

    申请/专利号CN201980041346.7

  • 申请日2019-06-19

  • 分类号G06K9/00(20060101);G06K9/32(20060101);

  • 代理机构72002 永新专利商标代理有限公司;

  • 代理人夏青

  • 地址 美国加利福尼亚州

  • 入库时间 2023-06-19 09:47:53

说明书

本专利申请要求于2018年6月20日提交的序列号为16/013,729,名称为“机器学习技术”的美国实用新型专利申请的优先权,以及于2018年6月20日提交的序列号为16/013,748,名称为“机器学习的受限多尺度推断”的美国实用新型专利申请的优先权,以及于2018年6月20日提交的序列号为16/013,764,名称为“从机器学习模型输出推断出的实例分割”的美国实用新型专利申请的优先权,列号为16/013,729、16/013,748以及16/013,764的全部内容通过引用并入本申请。

背景技术

计算机视觉对于某些应用(例如操作自主车辆)至关重要。为计算机配备模仿人类视觉的功能可以包括构建获取图像,识别图像中的显着部分并以计算机可用于进行进一步操作的形式向计算机表示图像的显着部分的软件组件。可以为计算机配备这种功能的一种形式的软件是机器学习(ML)模型。

先前训练ML模型以识别图像的显着部分的尝试已导致有缺陷的ML模型。例如,某些形式的ML模型训练会导致ML模型无法正确地区分彼此接近的对象(例如,在摄像机视图中经过另一个行人的行人),从而导致对一个或两个对象的无关和/或不正确的标识。

此外,某些ML模型比这种有缺陷的ML模型提供了更准确的对象标识,但是需要太多的计算才能用于实时应用和/或可能需要昂贵的专用计算设备,而这些设备可能不适合特定用途。例如,使用用于计算机视觉的ML模型的自主车辆可以接收视频流,并且可能需要每50毫秒或更短的时间做出决定以操作自主车辆。由于这些ML模型中的某些模型需要一定的计算时间来识别对象,因此到检测到对象时,检测到的对象可能已经移动了足够大的距离,因此,对象检测对于决策不再可靠。例如,其中一些ML模型可能需要超过100毫秒的计算时间。

附图说明

参照附图描述详细描述。在附图中,附图标记的最左边的数字标识该附图标记首次出现的附图。不同附图中的相同附图标记表示相似或相同的项目。

图1示出了用于示例场景的示例图像,包括该场景的示例鸟瞰图。

图2A示出了示例图像以及如何将该图像离散化为网格。

图2B示出了示例性感兴趣区域(ROI)和为其生成ROI的图像部分。

图3示出了指示两个区域的示例基准真相(ground truth),以及指示第二较小区域的示例收缩基准真相。

图4A-4D示出了示例ROI,与ROI相关联的示例置信度得分以及为其生成ROI的图像部分。

图5示出了图4A-4D的示例ROI,这些示例ROI是相对于由基准真相指示的区域,并且与示例ROI和基准真相指示的区域的对准度相关联。

图6A和图6B示出了根据本文讨论的非最大抑制替换技术的用于训练ML模型的示例过程的流程图。

图7A示出了第一ML模型对图像内具有各种尺寸的对象的示例第一响应曲线。

图7B示出了第二ML模型对图像内具有各种尺寸的对象的示例第二响应曲线。

图8A示出了根据本文所讨论的技术的示例图像,该图像作为输入被提供给第一ML模型,以及响应于接收到第一缩放图像而由第一ML模型生成的ROI。

图8B示出了根据本文所讨论的技术的图8A的示例图像,其被重新缩放为第二缩放图像,并且作为输入提供给第一ML模型,以及响应于接收到第二缩放图像而由第一ML模型生成的ROI。

图8C示出了根据本文讨论的技术的图8A的示例图像,其作为输入提供给第二ML模型,以及响应于接收到该示例图像而由第二ML模型生成的ROI。

图9A示出了为示例图像的一部分生成的示例ROI。

图9B示出了与示例图像中的相同对象相关联的示例多个ROI。

图9C示出了根据本文讨论的技术的示例性对象分割。

图10示出了用于实现本文讨论的技术的示例系统。

具体实施方式

本文讨论的技术通过增加对象检测的准确性和减少用于获得准确的对象标识的计算时间来改善计算机视觉,从而可以实时检测对象以用于诸如自主车辆控制的应用中。可以预期本文讨论的技术的其他应用,例如,视频游戏,增强现实等。

本文讨论的技术可以包括将图像提供给ML模型,并从ML模型接收图像的不同部分的多个感兴趣区域(ROI)。这些ROI可以是识别ML模型认为图像中存在对象的任何形式。例如,ROI可以包括指示被标识为与检测到的对象相关联的像素的框(“边界框”),包括与检测到的对象相对应的像素的掩模等。

在一些实例中,ML模型可以附加地或替代地输出与多个ROI中的每个ROI相关联的置信度得分(或置信度信息)。例如,ML模型可以从图像的一部分检测对象的存在,并且可以生成ROI以指示该对象在图像中的位置。ML模型可以附加地或可替代地产生置信度得分,该置信度分数本质上指示了ML模型对ML模型实际识别出图像中的显着对象的置信度和/或ROI拟合该对象的程度。例如,置信度得分可以是0到1之间的值,其中0表示ML模型的指示,即ML模型完全不确定对象是否出现在ROI中,而其中1表示ML模型非常有信心对象出现在ROI中,尽管可以考虑其他排列方式。换句话说,ML模型会输出:表示它认为对象可能在何处的指示,以及得分,该得分表明ML模型如何有信心正确识别对象和/或ROI如何满意地指出对象在图像中的位置的程度。

本文讨论的一些技术针对于训练ML模型以产生更好的ROI(ROI更准确地标识对象在图像中的位置)和/或更准确的置信度得分(例如,对于不包含对象的ROI产生更接近0的得分,和/或对于指示明显对象的ROI产生更接近1的得分),并减少了计算时间以实现这种精度的ROI。

ML模型可以包括神经网络,例如随机森林和/或决策树的增强集合;有向无环图(DAG)(例如,将节点组织为贝叶斯网络);深度学习算法,例如人工神经网络(ANN)(例如递归神经网络(RNN),残差神经网络(ResNet)),深度信念网络(DBN),深度堆叠网络(DSN)等等。用于训练ML模型的损失函数可以包括,例如,确定ROI与由基准真相指示为表示对象的图像区域的对准度。在一些情况下,确定ROI与基准真相指示的区域的对准度可以包括确定ROI的联合交叠(Intersection over Union,IoU),其是确定ROI如何充分地“拟合”基准真相的一种度量。可以使用ROI与基准真相指示的区域拟合的其他指示。在一些情况下,基准真相可以被称为参考区域。

因为训练ML模型可能包括向ML模型提供成千上万甚至数十万张图像或更多图像,并对权重进行此类校正,所以识别出ML模型有最大错误的那些ROI是有利的。这大大减少了训练ML模型所花费的时间,并且可以提高ML模型的准确性,因为对ML模型进行校正以解决“非常错误”的ROI和/或置信度得分不会通过加强对“正确”ROI的学习和/或置信度得分而被淘汰。

在一些情况下,本文讨论的技术可以包括选择用于训练ML模型的特定示例。选择这些示例可以包括困难示例挖掘,例如,其可以包括通过置信度得分(例如,最大置信度得分至最小)和/或置信度得分的误差(例如,对于根据NMS抑制的ROI,与ROI相关的置信度得分误差)对多个ROI进行排序,然后选择前n个ROI。在一些情况下,通过困难示例挖掘来选择示例可能会排除与最大置信度得分(或得分)相关联的ROI。另外地或可替代地,该技术可以包括选择n个随机ROI。在一些情况下,可以将数量n选择为图像中的积极示例的数量(例如,与图像中所表示的对象相对应的积极识别的ROI)。

然而,在一些训练方案中(例如,在表示对象的区域的一部分(例如30%)上进行训练,而不是在整个区域上进行训练,这将在本文中进行更详细的描述),仅选择前n个ROI(通过置信度得分)可能会使ML模型训练偏斜,因为经常,前n个ROI中的至少一些往往会正确识别对象。由于这些示例充分预测了预期的ROI,因此不应惩罚此类选定的示例。如将在下面详细讨论的,技术可以包括抑制选择前n个ROI中的一些来训练ML模型,以及选择新的ROI来代替被抑制的ROI。附加地或可替代地,可以选择将被选为困难消极示例但与感兴趣区域一致的示例重新分配为积极示例。换句话说,网络(例如本文所述的网络)可以在实际的困难示例和不应因训练而受到惩罚的示例之间进行歧义消除。无论如何,在至少一些示例中,这样选择的示例可以包括反向传播(以惩罚作为实际的困难消极示例,或者以改进作为良好示例)。

在一些情况下,这样的技术可以至少部分地基于以下确定来排除图像数据的部分以进行训练:(1)确定与该部分相关的ROI与该ROI所指示的对象的基准真相的对准度达到或超过阈值对准度(例如,ROI拟合基准真相“良好”指示的区域),以及(2)确定ROI是针对由基准真相指示的区域内的一部分图像生成的。另一方面,由图像中位于基准真相之外的部分产生的ROI,无论ROI与基准真相的拟合度如何,都可能包含在用于训练的子集(“训练子集”)中,并在损失函数中受到惩罚。类似地,针对位于基准真相内的图像部分产生ROI,但是会产生“不良”ROI(例如,ROI与基准真相的对准度小于阈值对准度),其被包括在训练子集中,并在损失函数中被惩罚。在一些情况下,可以选择前n个示例以包括在训练子集中,排除以上根据技术讨论的那些示例。使用本文讨论的排除/包含规则的该技术在本文中称为改进的困难示例挖掘技术。

训练子集(由排除/包含规则确定)可以被提供给损失函数。这样的损失函数可以包括,例如,交叉熵损失函数,Huber损失函数(例如,对于示例的置信度得分,在该示例中,置信度得分被包括在与之相关联的ROI的训练/损失确定中),均方误差,聚焦损失函数等。

在一些情况下,这些技术可以包括使用多个阶段训练ML模型。这些阶段可以包括向ML模型提供第一批图像(无论是否缩放),并根据上述过程从第一批图像使用困难示例训练ML模型。在一些情况下,第一批可能包含数万或数十万张图像。

在一些情况下,训练ML模型可以包括在第一阶段之后的第二阶段。在第二阶段期间训练ML模型可以包括使用包括困难示例的训练子集。在一些情况下,第二阶段可以另外包括使用聚焦损失函数训练ML模型。在一些情况下,聚焦损失函数可能会修改由交叉熵损失函数(或任何其他损失函数)计算出的损失,从而对为良好分类的ROI计算的损失下加权,对为较差分类的ROI计算的损失较小加权。

在一些情况下,ML模型的感受野可能导致ML模型为对于感受野太大的对象产生ROI,其与较差的置信度得分和/或错误值相关联。例如,如果一个人的鼻子靠着一幅画站立,那将很难识别画,更不用说识别画中的特定对象了。这是因为绘画的显着部分是在人类的感受野之外。

同样,一个ML模型可能无法很好地检测到ML模型的感受野之外的对象(例如,太大的对象不足以使该对象落入ML模型的感受野中,从而无法“看到”该对象并理解ML模型“看到”的内容)。

解决此问题的一些技术包括提供图像作为ML模型的输入,使用ML模型获得尺寸范围内的对象,然后缩小图像比例,并通过ML模型重新运行它,以使以前超出尺寸范围的对象现在落入尺寸范围内(缩放后)。这可以迭代地重复。请注意,按比例缩小图像会使大的对象在按比例缩小的图像中显得较小,从而使它们落入ML模型的感受野内。虽然可能用与输入图像的尺寸基本相似的感受野来训练ML模型,但这种ML模型可能比较慢或响应不够快,例如用于自动驾驶。

在另外的或替代的实例中,本文描述的技术可以包括确定与第一ML模型相关联的响应曲线,该响应曲线指示第一ML模型的准确度以在图像中的表观对象尺寸上对对象进行分类(例如,产生ROI和/或置信度得分)。在一些情况下,产生该响应曲线可以包括将图像中的多个对象提供给第一ML模型,并跟踪第一ML对不同尺寸的对象进行分类的程度。该技术可以包括确定ROI的精度,以及将精度和ROI的尺寸(例如,高度,宽度,面积)相关联。在至少一些情况下,可以基于基于输入比例尺寸的最佳区域来约束ML模型的输出尺寸。作为非限制性示例,以640x480图像作为输入的ML模型可以被约束为输出像素尺寸为100x100至200x200的ROI,而采用940x940图像作为输入的ML模型可能会受到约束,以输出像素尺寸约为250x250至300x300像素的ROI。

对于为第一ML模型确定的每个ROI,可以将这些精度/ROI尺寸对合并。该技术可包含识别与达到或超过阈值准确性的准确性相关联的ROI的范围。该尺寸范围可以指示第一ML模型为该尺寸范围内的对象确定“良好”ROI。在一些情况下,第一ML模型可以输出具有在尺寸范围内的尺寸的ROI,并且可以抑制由ML模型确定的其他ROI。

在一些情况下,可以使用缩放因子(例如,0.75、0.5)按比例缩小第一批图像,并且可以将这批按比例缩放的图像作为输入提供给第二ML模型。可以至少部分地基于这批缩放图像,类似地为第二ML模型确定第二响应曲线和第二尺寸范围。

在一些情况下,在运行时,可以将图像作为输入提供给第一ML模型;可以缩放图像并将其作为输入提供给第二ML模型;以及可以将第一ML模型输出的ROI限制在第一范围内的ROI,而将第二ML模型的输出限制在第二范围内的ROI。可以训练ML模型,使得与不同ML模型相关联的ROI的不同范围彼此重叠和/或彼此邻接,从而可以由多个ML模型检测更大范围的对象尺寸。

简而言之,这些技术可能包括训练至少两个ML模型并确定每个ML模型为其产生“良好”ROI的ROI尺寸范围。这样,与其重复地将图像提供给ML模型,接收输出,缩放图像,将其重新提供给ML模型,接收第二输出等等,不如通过向多个ML模型提供相同图像的缩放版本,可以缩短过程并提高准确性(例如,将第一缩放图像提供给第一ML模型,将第二缩放图像提供给第二ML模型,依此类推,其中缩放图像是同一未密封图像的缩放版本),其中训练每个ML模型以对小尺寸范围做出最佳响应,并限制其在该小范围内输出ROI。通常,这样的技术可以提高检测图像中的对象的速度和性能,同时降低存储器需求(例如,降低的GPU存储器需求)。

本文描述的技术还可以包括用于提供图像作为对ML模型的输入,并作为ML模型的输出,接收ROI和识别与图像中检测到的对象相关的特定像素(或图像的其他部分)的对象分割(例如,掩模,轮廓集合)。代替需要第二ML模型和/或第二操作来分割图像(例如,通过输出掩模或一组线和/或曲线,来识别哪些像素与检测到的对象相对应),本文讨论的技术基本上同时(例如,在技术公差内)检测对象(例如,确定ROI)并分割图像。

在一些情况下,实例分割的技术(例如,以像素为单位分割图像)可以包括在ML模型上接收图像;以及确定图像的一部分(例如,像素,像素群)的ROI和与其相关联的置信度得分,直到ML模型已经为图像的多个部分确定了多个ROI和与之相关联的多个置信度得分。在一些情况下,ML模型可以通过选择与最大置信度得分相关联的ROI(“输出ROI”)作为输出来检测图像。为了分割表示输出ROI识别的对象的图像区域,该技术可以包括确定与置信度得分相关联的多个ROI的子集达到或超过置信度得分阈值,该阈值和与最大置信度得分相关联的ROI基本重叠,和/或在最大置信度得分的阈值置信度内;以及将确定ROI的部分级联到图像分割(例如,通过将像素添加到掩模,通过修改曲线以包括该像素)。

进行不同的解释,以决定是否在实例分割(可能是掩模)中包括图像的数据(例如,像素),该技术可以包括确定与那个特定像素(或特征地图的一部分)相关联的ROI是否与表示ROI及其对应的置信度值基本相似。在至少一个示例中,该实例可以包括与单个ROI相对应的所有像素,其将在非最大抑制(也称为非最大抑制)下被抑制。

在一些情况下,训练ML模型以生成对象的实例分割可以包括基于基准真相掩模和对象的相关联ROI的训练。在这样的示例中,损失函数可以被配置为对掩模之外的图像的部分进行惩罚,以产生具有超过预定值的置信度得分的ROI。换句话说,即使ROI足够,如果此类像素落在与像素(或区域)相关联的对象的掩模之外,则这种ML模型的图像像素(或区域)不应输出ROI。尽管本说明书主要讨论了导致输出像素掩模的实例分割,但是可以想到,可以使用任何合适的方法来识别图像的子集(例如,输出一组点,线,曲线和/或其他边缘指示器)。

示例场景

图1A示出了示例图像100和示例场景102的示例鸟瞰图,可以从该示例场景102生成示例图像100。示例场景102可以包括自主车辆104以及在与自主车辆104相同的环境中运行的三个其他车辆106、108和110(例如,示例图像100中描绘的城市街区,其可以包括示例场景102的鸟瞰图中描绘的驾驶表面)。自主车辆104可以从自主车辆104的一个或多个传感器接收传感器数据。自主车辆104可以使用该传感器数据来确定用于控制自主车辆的运动的轨迹。传感器数据可以包括图像,例如,示例图像100。

在一些情况下,自主车辆104可以是配置为根据美国国家公路交通安全管理局发布的5级分类运行的自主车辆,该级别描述了一种能够在整个行程中执行所有对安全至关重要的功能的车辆,而在任何时候都不期望驾驶员(或乘员)控制该车辆。然而,在其他示例中,自主车辆104可以是具有现在存在或将来发展的任何其他级别或类别的完全或部分自主车辆。此外,在一些情况下,所描述的计算机视觉技术也可以由非自主车辆使用。

根据本文讨论的技术,自主车辆104可以从自主车辆104的传感器112接收图像,并且可以从图像中检测对象,例如其他车辆106、108和110,和/或可以在图像中分割检测到的对象。例如,自主车辆104可以识别和分割其他车辆106、108、110;可驾驶表面;交通信号灯等。在一些情况下,这种检测和/或分割可以通过将图像作为输入提供给在自主车辆104的计算设备118上运行的感知引擎116的ML模型114来完成。

在一些情况下,感知引擎116可以包括一个或多个ML模型和/或其他计算机可执行指令,用于从自主车辆104的环境中收集的传感器数据来进行检测、识别、分割、分类和/或跟踪对象,例如ML模型114。在一些情况下,感知引擎116可以在自主车辆104上接收来自自主车辆104的一个或多个传感器112的传感器数据,从传感器数据确定感知数据,并将感知数据发送到规划器120以供规划器120使用,以将自主车辆104的位置定位在全局地图上,确定一条或多条轨迹,和/或控制自主车辆104的运动以穿越路径或路线,尽管可以在各种其他组件中执行任何此类操作(例如,可以由未示出的定位引擎执行定位)。

例如,感知引擎116可以检测环境中的对象并且对对象进行分类(例如,客车,半卡车,皮卡车,人,儿童,狗,球)。感知引擎116还可确定对象的轨迹(例如,对象的历史的、当前的和/或预测的行进方向,位置,速度和/或加速度)。在一些情况下,感知引擎116可以附加地或替代地确定由定位引擎(未示出,其可以使用任何传感器数据来定位车辆104)确定的自主车辆104的位置,该数据与自主车辆104附近的对象有关,指定车辆目的地的路线数据,识别道路特征的全局地图数据(例如,可用于定位自主车辆的不同传感器模式中可检测到的特征),识别在附近检测到的特征的局部地图数据车辆(例如建筑物,树木,篱笆,消火栓,停车标志以及在各种传感器模式中可检测到的任何其他特征的位置和/或尺寸)等。由感知引擎116产生的数据可以被统称为“感知数据”。一旦感知引擎116已经从图像和/或确定的其他感知数据中识别和/或分割了对象,则感知可以将包括对象检测和/或分割的感知数据提供给规划器120。

在一些情况下,规划器120可以使用包括识别出的和/或分割的对象的感知数据来生成用于控制自主车辆104的运动的轨迹。例如,规划器120可以确定自主车辆104从第一位置到第二位置的路线,并根据滚动时域(receding horizon)技术基本上同时生成用于控制自主车辆104的运动的多个潜在轨迹(例如1微秒,半秒),以控制车辆穿越该路线,并选择潜在轨迹之一作为自主车辆104的轨迹,该轨迹可用于生成驱动控制信号,驱动控制信号可被传输至自主车辆104的驱动组件。

ML模型生成的示例感兴趣区域(ROI)

图2A示出了示例图像100和示例输出网格200,其中输出网格200的每个单元格标识图像100的一部分。图像202的一个示例部分在图像100的中心附近被强调(突出)。可以想到,如本文所讨论的,“图像的一部分”可以包括图像的单个像素和/或图像的像素的集合。在一些情况下,机器学习模型的输出是特征地图,其中单个单元格可以表示特征地图的一部分。这样的特征地图可以具有多个通道,每个通道与由模型确定的各种元素相关联(例如,置信度得分,感兴趣区域等)。图2A示出了示例,其中“图像的一部分”,例如示例部分202,包括图像100的像素的集合。特征地图的一部分(例如,单元)可以与图像的一部分相关联。因此,示例部分202可以被称为示例输出网格200的示例单元202。

在一些情况下,示例输出网格200可以是将示例图像100离散化为由ML模型输出的方式。例如,ML模型可以配置为接收图像,并针对输出网格200的每个单元输出一个或多个ROI和关联的置信度水平。在至少一些情况下,根据m乘n像素的图像,可以将这种输出网格200离散成m/4乘n/4个单元。在一些情况下,这些单元可以是4像素乘4像素,但是可以考虑任何其他离散化。在一些情况下,并且如上所述,可以将示例图像100离散化成特征地图的多个部分。即,示例不限于单元格,并且本文中构想了各种实施方式。

在一些情况下,ML模型可以为图像的每个部分(例如,对于图2A中的每个单元)生成ROI和/或置信度得分。例如,ML模型可以确定例如部分202的ROI和/或置信度得分。在一些情况下,ML模型可以生成具有ROI边界的ROI,该ROI边界延伸超过图像的该部分的边界。在至少一些情况下,每个输出单元可以对应于由中心位置(例如,图像坐标位置),范围(例如,宽度和/或高度)和/或任何一个或多个分类的置信度水平指示的ROI。作为非限制性示例,每个单元可以与汽车、行人、自行车骑者、卡车/公共汽车、交通信号灯和/或停车牌分类中的每一个的中心、范围和置信度相关联。

图2B示出了关于“汽车”的分类的图像的示例部分(即,图像中的单元)及其相关的感兴趣区域(ROI)。图2B示出了作为边界框的若干个ROI,尽管可以理解的是,表示对象的图像区域可以其它方式指示(例如,通过掩模)。如本文中所论述,ML模型可确定部分204(例如,单元204)的ROI 204',部分206的ROI 206',以及部分208的ROI 208'。在一些情况下,ML模型可确定与ROI 204'相关联的第一置信度得分,与ROI 206'相关联的第二置信度得分和与ROI 208'相关联的第三置信度得分。置信度得分可以指示关联的ROI准确表示图像中表示对象(此处为汽车)的区域的概率。ROI 204’、206’和208’中的每一个标识图像的不同区域,这些区域分别表示不同的对象,即车辆106、108和110。在一些情况下,ROI 204'可被视为通过ML模型对图像100中车辆106的“检测”。

示例机器学习(ML)模型训练技术

图3示出了示例图像100的一部分300,其是标识表示第一对象(即,车辆108)的图像的第一区域的示例基准真相302,示例基准真相302标识了表示第二对象的图像的第二区域(即,车辆110和两个缩放的基准真相302'和304')。示例缩放的基准真相302'是定义了基准真相302的中心30%的区域(“中心30%框302'”),示例缩放的基准真相304'是定义了基准真相304的中心30%的区域。当然,尽管将示例缩放的基准真相302'描述为对应于基准真相302的中心30%,但是在本文中可以预期任何百分比。

以下讨论涉及训练ML模型的技术以及如何训练ML模型,以便ML模型将生成更准确的ROI和/或置信度得分。在一些情况下,图3-6总体上示出了用于确定在训练时如何惩罚ML模型的各种输出的技术。

如图3所示,ML模型可以仅使用那些按比例缩放的30%区域进行训练,因为这样可以消除在图像100中重叠显示的对象(即遮挡物)之间的歧义,例如车辆110和112。注意,基准真相302部分地遮挡了基准真相304的重叠,因此,根据以上讨论的技术训练ML模型可以在确定图像的一部分应与哪个对象相关联(即,要输出哪个ROI)时避免歧义。

图4A至图4D示出示例ROI,与ROI相关联的示例置信度得分以及为其生成ROI的图像的部分。

例如,图4A示出了ML模型可能已经为部分400确定的示例ROI 400'和ML模型可能已经为诸如“汽车”之类的特定分类为ROI 400'确定了置信度得分402。在一些情况下,置信度得分表示由ML模型确定的、与置信度得分相关联的ROI准确识别图像中对象的概率。置信度得分可以指示ROI拟合于包括完美地表示对象的像素的区域的概率(例如,由ROI标识的像素没有代表检测到的对象以外的其他东西,ROI的边缘涵盖了对象的边缘而没有与对象的边界交叠,并且在对象的边界和ROI之间保留了最小的空间)。

在图4A所示的示例中,置信度得分402为“0.97”。在一些情况下,虽然可以考虑其他值,但ML模型可以确定介于0.00和1.00之间的置信度得分。在该示例中,0.00可能表示ML模型不认为图像的一部分生成的ROI标识了对象,和/或1.00可能表示ML模型绝对确定ROI以完美的对准度标识了对象。

图4B示出了ML模型可能已经为部分404确定的示例ROI 404’以及ML模型可能已经为ROI 404’确定的置信度得分406。请注意,ROI 404’与ROI 400’不拟合表示对象(即,车辆110)的区域,因为它太小了。在此示例中,置信度得分406正确地低于最大置信度得分,置信度得分402,至少因为ROI 404'不完美拟合表示对象(例如,车辆108)的区域,或者以及ROI400'。还应注意,部分400继续显示为图4B-4D的参考点,并不意味着这些图的ROI以某种方式与部分400相关联。

图4C示出了ML模型可能已经为部分408确定的示例ROI 408'和ML模型可能已经为ROI 408'确定的置信度得分410。请注意,ROI 408’不能很好地拟合代表车辆108的区域,因为它太大并且除了车辆108之外还包含更多对象。与由于中等拟合而适当降低的置信度得分406不同,置信度得分410反映的值为0.94,该值可能被认为太高,因为ROI 408'与表示车辆108的图像区域的较差拟合。

图4D示出了ML模型可能已经为部分412确定的示例ROI 412′以及ML模型可能已经为ROI 412′确定的置信度得分414。请注意,由于ROI 412’太小,因此无法很好地拟合表示对象(例如,车辆108)的区域。置信度得分414反映的值为0.13,考虑到ROI 412'与表示车辆108的图像区域的较差拟合,这个值是合适的。

图5示出了选择用于非最大抑制(NMS)重新分配的区域的示例。通常,由于图像中积极示例的稀疏性,可以使用积极示例和消极示例之间的平衡来训练ML模型,以输出更好的估计。训练还可以包含“困难”示例(即,示例对正确性有很高的置信度,但不正确)。在一些情况下,将相同数量的积极、消极和困难示例提供给网络进行训练。在至少一些情况下,可以对所有单元(图像的部分)的置信度水平进行排序,并且可以选择产生不正确的ROI的最高置信度作为困难示例。当使用关于图3所示的技术时,落入与最高置信度相关联的ROI内但不属于中心30%的部分的图像部分(例如,单元),通常可以通过朴素地将此类单元表示为“困难”示例来加以惩罚(即,可以明确训练网络不要输出具有这些单元的ROI,因为它们具有较高的置信度水平,但不会落在中心30%的范围内)。尽管关于图3描述的技术可以帮助消除歧义(提供更好的ROI),但是通过惩罚这些部分来朴素地训练模型可能导致较差的性能(例如,不良的估计)。如下所述,以智能方式训练模型可以避免这种朴素的假设。

在一些情况下,ML模型可以确定已指示为困难示例的图像部分(例如,单元)与在NMS下被抑制的ROI相关联。换句话说,模型可以确定不应选择被选为困难示例的单元,而应该选择另一个困难示例,以便向后传播损失,以对真实的困难示例进行惩罚。在至少一些示例中,被选择为困难示例但已经输出了良好框的单元可以代替地被重新分配为良好示例(即,使得损失向后传播以改善与该单元相对应的输出)。这样的过程通常可以称为NMS重新分配。图5中示出了应该和不应该进行NMS重新分配的图像部分的各种示例。

在整个图5中,相对于附图标记500给出了由虚线(例如,附图标记500)表示的参考ROI(基准真相ROI和/或通过非最大抑制(NMS)确定的ROI)表示的区域以及示例ROI的对准度。从中生成示例ROI的图像的各部分继续在图5中针对环境再现,其中部分400在视觉环境中再次出现。在一些情况下,为了选择所生成的可能与图像中的对象相对应的多个ROI中要输出的ROI,ML模型可以对多个ROI进行NMS管理,也就是说,ML模型可以确定哪个ROI与最大置信度得分相关联,并且可以将该ROI识别为要输出的与对象相关联的ROI。在一些情况下,在图像中表示某个对象分类的多个对象的情况下,ML模型可以确定ROI重叠的群集(例如,彼此的对准度达到或超过阈值对准度),从而指示对象可能出现在该ROI群集周围的图像中某个位置的图像中的可能性,并且可以对ROI群集进行NMS,以确定针对该对象的输出ROI。换句话说,与单个对象相关联地输出ROI可以基于确定重叠的多个ROI中的与最大置信度得分相关联的ROI。ML模型可以重复识别群集并针对群集执行NMS,直到已识别所有对象并对其进行NMS。对于针对其检测到ROI的每个对象分类,可以这样做。在一些情况下,识别集群可以包括除了识别重叠的ROI之外,还识别与超过置信度得分阈值的置信度得分相关联的ROI。这可以被称为阈值化ROI。

在一些情况下,为了训练ML模型,ML模型可以确定ROI和参考ROI 500之间的对准度。在一些情况下,确定对准度可以包括确定反映ROI与基准真相500的重叠和/或拟合量的度量。在一些情况下,这可以包括确定联合交叠,尽管可以使用其他技术来确定ML模型生成的ROI的重叠量/误差。

在该示例中,ML模型可以确定示例ROI 400’很好地拟合基准真相区域500,例如,由由对准度502表示,其指示示例ROI 400’的对准度/拟合度为98%。考虑到高度的对准度,示例置信度得分402适当地较高。在一些情况下,“良好”拟合可以被定义为0.70或更高的对准度。该值(0.70)可以被认为是阈值对准度,尽管可以考虑使用其他值,例如0.80、0.50和/或0.60。在此,示例400'将需要进行NMS重新分配。换句话说,即使400不是中央30%的一部分,它也会产生“良好”的ROI,因此,不应受到惩罚(如果选择作为困难示例)。

类似地,ML模型可以通过确定ROI 404'与0.90的对准度504相关联,来确定示例ROI 404'非常拟合参考ROI 500,尽管比示例ROI 400'稍差。尽管如此,示例404也将接受NMS重新分配(如果选择作为困难示例)。

ML模型还可通过确定ROI 408'与未能达到或超过阈值对准度(例如0.70)的对准度506(在此示例中为0.62)相关联,来确定示例ROI 408'与参考ROI 500的拟合很差。这样,即使示例部分408落在参考ROI 500内,它也构成了有效的困难示例。

同样,ML模型还可通过确定ROI 412'与未能达到或超过阈值对准度(例如0.70)的对准度508(在此示例中为0.47)相关联,来确定示例ROI 412'与参考ROI 500的拟合很差。由于置信度得分低(在此示例中为0.13),因此ML模型可以将示例408/408’确定为有效的困难示例。

图6A和6B示出了用于至少部分地基于经由NMS重新分配选择的ROI的子集来训练ML模型的示例过程600的图形流程图。在操作602,示例性过程600可以包括根据这里讨论的任何技术接收图像。

在操作604,示例过程600可以包括:根据所讨论的任何技术确定多个ROI(例如,如示例612所示的ROI 400',404',408',412'),和与其相关联的多个置信度得分。例如,ML模型可以针对包括输出单元(或更一般地,包括多个特征)的图像生成输出网格(或更一般地,可以输出特征地图),并且可以针对输出单元(例如,每个输出单元)按照每个分类确定ROI(以及与其相关联的置信度得分)。作为非限制性示例,尽管可以考虑分类的任何组合,但是输出网格的每个单元对于例如车辆分类、自行车分类、行人分类等中的每一个可以具有若干个ROI和置信度。这可以包括生成针对示例分类“汽车”确定的如图6A所示的ROI(400′,404′,408′,412′)。

在操作606处,根据本文讨论的任何技术,示例过程600可包括接收参考ROI(例如,参考ROI 500,如示例614所示)。参考ROI 500(例如,参考区域)可以是基准真相,基准真相是经由人类标签、或为表示图像中的对象的图像区域建立基准真相的任何其他合适的方法来接收的。在一些情况下,参考ROI可以指示与针对其生成ROI的分类相关联的图像的区域。例如,如上所述,ROI 500可以指示表示分类“汽车”的图像的区域。在操作608,示例过程600可以包括:根据本文讨论的任何技术,选择示例子集来训练ML模型。这可以包括从图像的所有部分中的一个或多个中确定图像的一部分(例如,输出单元),以包括在用于训练ML模型的示例子集中。例如,示例过程600可以包括确定要包括在子集中的积极示例(608(a)),确定要包括在子集中的消极示例(608(b)),和/或使用NMS重新分配确定要包括在子集中的困难示例(608(c))。这些操作将在下面更详细地讨论。在一些情况下,操作608可以附加地或替代地随机选择示例以包括在用于训练ML模型的示例子集中。

操作608(a)可以包括确定ROI的置信度得分是最大置信度得分和/或达到或超过置信度得分阈值,并且ROI与参考ROI的对准度超过阈值对准度(例如,这可能表示ROI正确识别了图像中表示的对象。操作608(a)可以包括作为积极示例并且基于该确定来选择输出单元和/或由与之相关联的ML模型生成的任何数据,以包括在训练ML模型的子集中。

操作608(b)可以包括确定针对ROI的置信度得分是最小置信度得分和/或未达到置信度得分阈值,并且确定ROI与参考ROI的对准度未达到阈值对准度。操作608(a)可以包括作为消极示例并且基于该确定来选择,输出单元,和/或与之相关联的ML模型生成的任何数据,以包括在训练ML模型的子集中。

转向图6B,操作608(c)通常可以包括(608(c)(1))选择一个困难示例。困难示例可以称为机器学习的模型犯了最大错误的示例。例如,这样的困难示例可能对应于具有对应ROI的非常高置信度的单元,但是错误地标识了这种ROI,或者应该基于它们的相应输出而以其它方式受到惩罚。通常,困难示例可能是消极示例。选择困难示例可以包括识别已产生不正确的ROI(或者应该以其它方式被惩罚)、但是与高置信度得分相关联的图像的那些部分(例如,一个或多个单元);通过置信度得分对这些部分进行排序;以及从排序后的剩余ROI中选择关联部分的前n个,作为困难示例。然而,应当理解,可以考虑任何合适的困难示例选择方法。

一旦已经选择了困难示例,则操作608(c)可以包括(608(c)(2))根据在此讨论的任何技术确定是否抑制所选择的困难示例。在一些情况下,例如,仅训练与对象相关联的一部分单元以输出相关联数据(例如和ROI),这种困难示例(例如,当朴素的选择时)实际上可以表示要训练的良好示例(例如,单元已经正确地识别了与对象相关联的ROI,但是由于不属于例如对象的中心30%而受到惩罚)。在这样的情况下,如果所选的困难示例对应于在ROI区域的边界内的图像的一部分,则操作608(c)(2)可以确定抑制所选的困难示例(或以其他方式与有效输出相关联,例如,与和该图像的该部分相关联的对象相对应的ROI)。基于确定抑制选择的困难示例,操作608(c)(2)可以包括丢弃选择的困难示例,并返回操作608(c)(1)以选择新的困难示例(例如,根据上面讨论的排序,下一个最错误的示例)。例如,丢弃所选的困难示例可以包括:从用于训练ML模型的子集中排除所选的困难示例,以及从排序的ROI中排除所选的困难示例,以使得在随后的选择中无法选择它。在一些情况下,抑制选定的困难示例的确定可以附加地或替代地包括:确定与选定的困难示例相关联的ROI与参考ROI的对准度达到或超过对准度阈值。在一些情况下,可以通过确定在NMS下是否会抑制ROI来进行此类确定。也就是说,NMS操作可以用于确定具有高置信度并且与对应于参考ROI的ROI相关联的那些示例,并将它们排除在从其他情况下将会是困难示例之外。

在一些情况下,操作608(c)(2)可以抑制对于参考ROI内的图像部分的困难示例的选择,并且这些困难示例产生具有“良好”对准度的ROI。例如,ROI 400'和404'是示例,如果选择这些示例作为困难示例,则可以在操作608(c)(2)中对其进行抑制,因为它们是从参考ROI 500内的图像的部分产生的,并且它们各自与超过阈值对准度的对准度相关联,表明这些ROI与参考ROI500的“良好”拟合。

在至少一些情况下,与抑制(例如丢弃)这样的示例相反,可以将这些示例重新指定为积极示例。在一些情况下,确定抑制困难示例可以包括改变与困难示例相关联的目标置信度得分。例如,基于确定它们表示基准真相的确定,针对在参考ROI的中心30%之内的图像部分产生的ROI可以与最大目标置信度得分(例如1.0)相关联。然而,当抑制困难示例时,可以修改与该困难示例相关联并且用于使用困难示例进行训练的目标置信度得分。例如,如果选择被确定为被抑制的困难示例,则该困难示例的目标置信度得分可以更改为1.0。然后可以使用被抑制的困难示例和新的目标置信度得分1.0进行训练。换句话说,替代地,可以将所选择的困难消极示例重新分配为积极示例,从而反向传播损失。如果未抑制所选的困难示例(即该示例是真正的困难消极示例),则可以将置信度损失设置为0,以便训练该示例以输出任何框,但具有相应的低置信度值。

在至少一些将30%中心区域实现为基准真相的示例中,这些技术相对于仅忽略根据排名朴素地选择的剩余70%的参考ROI(例如,对象的那部分不是中央30%的部分)所产生的示例,提高了ML模型的准确性。与通过惩罚在中心30%外部产生的示例来训练ML模型的技术相比,这些技术还提高了ML模型的准确性,因为在中心30%外部且在参考ROI内的图像部分可能会产生足够的ROI对准度-换句话说,对这些部分进行惩罚以产生足够的ROI可能会教会ML模型学习现实中不存在的区别(例如,产生了足够的ROI的部分实际上与图像中对象的表示相关,并且对此进行惩罚会教给ML模型区分现实中不存在)。

在操作610,示例过程600可以包括:根据本文讨论的任何技术,使用所选择的示例子集来训练ML模型。

在至少一些情况下,训练ML模型可以包括至少两个阶段,其中第一阶段可以省略这样的NMS重新分配,并且紧随第一阶段的第二阶段可以包括NMS重新分配。在这样的示例中,在第二阶段期间,可以在NMS下抑制图像(单元)的各个部分的ROI,从而可以将未被抑制的ROI用作参考ROI 500,以在相同或后续阶段中训练ML模型。

在一些情况下,第一阶段可以包括将第一批图像提供给ML模型以进行训练,而第二阶段可以包括将第二批图像提供给ML模型来进行训练。也就是说,可以使用不同批次的数据来随后训练模型。

在一些情况下,在第二阶段训练ML模型可能会合并聚焦损失函数。在一些情况下,聚焦损失函数可以包括交叉熵损失函数,该函数将因子(1-p

FL(p

其中:

并且y∈{±1}表示基准真相类别,而p∈[0,1]是标签y=1的类别的ML模型的置信度得分。从功能上讲,这对由交叉熵损失函数针对与低误差相关的ROI计算出的误差进行下加权(例如,对于p

在一些情况下,设想了三个阶段,其中第一阶段省略了任何聚焦损失和NMS重新分配,而第二和第三阶段合并了聚焦损失和/或NMS重新分配。在至少一些情况下,可以在一个或多个阶段对图像进行不同的缩放。作为非限制性示例,当在第一阶段中训练时,可以在第一批中使用尺寸为240x240的裁剪图像,而可以在第三阶段中在用于训练模型的第三批中使用尺寸为960x600的图像裁剪。通常,图像裁剪尺寸、迭代次数、学习率、批尺寸和/或平衡可能随阶段而变化。

在一些情况下,第一批图像和/或第二批图像可以是数据平衡的,以确保训练了ML模型以准确检测不同类型的对象。连续暴露于一个对象分类的ML模型可能会缓慢“忘记”(例如,检测时变得不太准确)与其较不频繁暴露的不同类型的对象。此外,在一个特定类别的数据集中几乎没有示例的情况下(例如,如果相对于自行车,汽车对于数据集处于支配地位),则ML模型可以通过简单地声明任何图像中都没有自行车来优化损失。因此,在一些情况下,第一批图像和/或第二批图像可以包括与第一对象分类相关联的第一预定数量的图像(例如,第一预定数量的图像中的每个包括至少一个行人)和与第二对象分类相关联的第二预定义数量的图像(例如,第二预定数量的图像中的每一个都包括至少一个骑自行车的人),但是可以考虑任何数量的类别和相对权重。例如,输入批次可以包括32个图像,其中ML模型经过训练可以检测每种类型的对象中的4个,例如检测4个自行车,4个汽车,4个行人,4个夜间图像,4个白天图像等。在一些情况下,训练ML模型可以包括:接收图像,确定与该图像相关联的对象分类,以及将该图像与和该对象分类相关联的训练队列相关联。在训练时,批次可以由多个队列的输出组成,其中每个队列与不同的对象分类和/或图像条件(例如,夜晚/白天,障碍物)相关联。通过确保ML模型正在不断在各种对象分类上训练,ML模型不太可能“忘记”对象分类。

示例响应曲线和受限的多尺度推断

图7A和7B示出基于缩放抑制ROI输出尺寸的示例。通常,神经网络可以与感受野相关联。这样的感受野可以指示在进行推断时使用了多少输入信号的数据。例如,如果模型的感受野不够大,则可能无法使用模型充分确定较大尺寸的对象。如上所述,尽管可以采用更大的模型来检测所有对象,但是这样的模型将需要大量的资源和处理,这限制了它们的应用(例如,由于处理时间和存储要求,这样的模型将无法在自主车辆应用中被使用)。为了解决这些限制,可以采用一个或多个较小的网络(即,具有较小的存储器占用空间和/或处理要求的网络)。每个这样的网络可以与用于各种ROI尺寸的特定精度相关联,并且被约束为仅在该范围内输出ROI。尽管在尺寸的环境中进行了讨论,但是本文考虑了任何数据分层(或其他度量)。作为非限制性示例,在图7-8中的任何一个中示出的这种技术可以进一步针对感兴趣区域的尺寸、局部对比度等中的任何一个或多个选择最优网络。

如图7A所示,第一曲线图700包括第一ML模型对在第一缩放的图像内具有各种尺寸的对象的示例响应曲线702。图7B示出了第二曲线图704,该第二曲线图704包括第二ML模型对在第二缩放的图像内具有各种尺寸的对象的第二示例响应曲线706。第一曲线图700和第二曲线图704的y轴可以指示关于ROI和/或置信度得分的模型的准确性,以识别图像中的对象,而第一曲线图700和第二曲线图704的x轴可以指示图像中对象的尺寸、ROI的尺寸和/或图像的尺寸。在一示例中,x轴可以指示ROI的尺寸。

在一些情况下,这些技术可以包括确定与第一ML模型相关联的响应曲线,该响应曲线指示第一ML模型在图像中的表观对象尺寸上对对象进行分类(例如,为其生成ROI和/或置信度得分)的准确性。为了产生该响应曲线,这些技术可以包括:提供多个对象(以一个或多个图像表示)作为第一ML模型的输入;接收与多个对象相关联的多个ROI和/或置信度得分作为从第一ML模型的输出;以及确定每个ROI和/或置信度得分的准确性(例如,通过与基准真相进行比较,通过计算每个ROI与相应基准真相区域的对准度。为了产生响应曲线,这些技术可以包括将ROI的尺寸(例如,高度和/或宽度,区域)与ROI的精度(例如,与ROI相关联的对准度,对准度和置信度得分之间的差异)相关联。这些准确性/ROI尺寸对可以被合并用于ROI,这些ROI是根据一批图像为第一ML模型而确定的。

在一些情况下,可以将一批成千上万甚至数十万张图像作为输入提供给第一ML模型,以便可以确定此响应曲线。一旦第一ML模型处理完该批次,该技术可以包括识别与达到或超过阈值精度的精度相关联的ROI尺寸范围,以及将该尺寸范围与第一ML模型相关联。该尺寸范围可以指示第一ML模型为该尺寸范围内的对象确定“良好”ROI。在一些情况下,第一ML模型可以输出具有在尺寸范围内的尺寸的ROI,并且可以抑制由第一ML模型确定的其他ROI。在一些情况下,除了在ROI尺寸上绘制精度外,还可以通过基准真相尺寸、图像部分尺寸和/或图像尺寸上绘制ROI的精度。

例如,阈值准确度可以由708指示,第一ML模型可以与响应曲线702相关联,并且第二ML模型可以与响应曲线706相关联,其类似地根据上述技术生成。在至少一些情况下,第一和第二ML模型可以是相同模型,只是输入缩放不同。根据所描绘的示例,与第一ML模型相关联的第一范围可以仅基于尺寸为900x900的输入图像输出像素高度在100和200像素之间的ROI,而与第二ML模型相关联的第二范围可以仅基于尺寸为300x300的输入图像输出高度在50到100像素之间的ROI。在一些情况下,第一响应曲线702和第二响应曲线可以与不同的阈值准确度水平相关联。

当然,可以针对输入和输出尺寸的各种范围确定任何数量的模型和/或缩放。可以将各种缩放的图像(大于,等于或小于原始图像尺寸)输入到各种模型(顺序地或基本上同时地),以检测、分类和/或分割图像中的对象。

在至少一个示例中,可以至少部分地基于第三模型来确定要选择的模型、范围或分层的指定。作为非限制性示例,可以训练模型以区别用于确定期望输出的缩放和/或模型。

图8A示出了第一缩放图像800,根据本文讨论的技术,第一缩放图像作为输入,第一缩放图像和响应于接收到第一缩放图像而由第一ML模型生成的两个ROI(804和806)被提供给第一ML模型802。在一些情况下,第一ML模型802可以与第一尺寸范围相关联并且可以已经为车辆108生成ROI,但是该ROI可能已经落在第一尺寸范围之外并且被第一ML模型抑制。而对应于车辆106的ROI 804和对应于车辆110的ROI 806可以落入第一尺寸范围内,并且因此可以由第一ML模型输出。在一些情况下,第一缩放图像可以按因子1来缩放(例如,第一缩放图像是未缩放的)。

图8B示出了根据本文所讨论的技术,作为输入提供给第一ML模型的示例性第二缩放图像808,以及响应于接收到第二缩放图像而由第一ML模型生成的ROI 810。在一些情况下,第二缩放图像通过小于1的缩放系数进行缩放,从而得到比示例图像800的缩放比例小的图像。在所描绘的示例中,由于图像已按比例缩小,因此对应于车辆108的ROI现在落入与第一ML模型相关联的第一尺寸范围内,并且与车辆106和110相关联的ROI已落入第一尺寸范围之外,因此被图8B中的第一ML模型802抑制。在一些情况下,可以选择第二缩放因子(和/或任何其他缩放因子),使得当以两个不同的缩放将相同的图像提供给第一ML模型时,不会为相同的对象多余地产生ROI。

在一些情况下,第一尺寸范围可以至少部分地基于第一ML模型的感受野。例如,示例图像800中的车辆108的表示可能太大而无法拟合感受野,但是示例图像808中车辆108的表示一旦缩小,就可以拟合第一ML模型的感受野。

在一些情况下,第一尺寸范围和/或第二尺寸范围可以部分地基于回归模型(或其他机器学习的模型),以优化用于区分各种尺寸(或区分各种度量和/或数据分层,如下所述)的各种ML模型的精度、召回率和/或准确性。

图8C示出了用于检测图像中的所有对象的附加或替代实例。代替迭代地将图像提供给ML模型,确定ROI,并输出具有在第一尺寸范围内的尺寸的ROI,缩放图像,将缩放后的图像提供给ML模型,等等(如图8B所示),可以将示例图像800提供给与第二尺寸范围相关联的第二ML模型812,以使第二ML模型812可以确定第一ML模型(例如,本示例中的车辆108)未检测到的对象的ROI 814。在一些情况下,可以将图像提供给多个检测器,其中每个检测器与不同的尺寸范围相关联,并输出该尺寸范围内的ROI;和/或该技术可以与向第一检测器提供第一缩放图像、从第一检测器接收第一输出、将第一缩放图像缩放为第二缩放图像、向第一检测器提供第二缩放图像、以及从第二检测器接收第二输出相结合。

尽管在改变输入图像的尺寸的环境下和/或在基于期望的输出尺寸选择ML模型的环境下讨论了图8A、8B和8C,但是可以使用任何度量和/或数据分层来选择适当的ML模型和/或输入缩放。例如,各种度量可以包括但不限于对比度(例如,图像的区域和/或像素的局部对比度)、亮度、通道数、颜色(例如,RGB,黑色和白色,灰度等)、尺寸(例如,宽度和高度)、面积、网格的尺寸、图像中标识的多个对象、一天中的时间(例如,白天/晚上)、天气(例如,下雨,天晴,雪,雾等)、分类等中的一个或多个。

以这种方式,相同的ML模型和/或不同的ML模型可以高精度地产生针对不同尺寸的对象的ROI,而无需训练大型神经网络,训练大型神经网络将花费太多的计算时间,以致于无法用于实时应用,例如控制自主车辆。

示例实例分割

图9A示出了由ML模型针对示例图像904的一部分902确定的示例ROI 900。与上述示例(例如,关于图5)相同,可以训练ML模型以输出ROI。但是,与在以上示例中训练的模型不同,可以训练图9A中所示的ML模型,而不是使用与中心30%关联的ROI,而是与对象掩模中的像素关联的那些ROI。具体地,当训练ML模型时,图像中对象的图像掩模和对应ROI可以用作基准真相。可以例如基于与掩模相关联的ROI(例如,至少部分基于掩模的像素的边界框)来确定这种感兴趣区域的训练。如图9A所示,图像904的一部分902(可以是像素)可以形成对象掩模的一部分,并具有相关联的ROI 900。

图9B示出了与示例图像904(即,该示例中的车辆110)中的相同对象相关联的示例多个ROI 906。在一些情况下,ML模型可以接收示例图像904,并且可以产生多个ROI,包括针对图像904的每个部分和/或像素的示例多个ROI906、和/或与其相关联的置信度得分。

在一些情况下,如上,ML模型可以确定所确定的多个ROI中的将与对象(例如,对象110)相关联的单个ROI。在至少一个示例中,可以使用NMS来完成这种检测。类似于本文讨论的示例,每个像素或部分可以输出ROI,并且可以利用NMS来抑制多个ROI(例如,可以抑制与最大置信度水平不相关的那些ROI)。ML模型可至少部分地基于对用于输出的ROI的确定,来基本上同时确定与车辆110相关联的ROI和标识与对象相关联的图像的特定部分(例如,表示对象的像素)的掩模。

在至少一种情况下,这样的ML模型可以保留NMS期间被抑制的像素和/或区域的指示。图像的所有这样的像素和/或部分可以与对象的掩模(实例分割)相关联。在一些情况下,图像中产生未被NMS抑制的最大ROI的部分也可能与掩模相关联。

图9C示出了根据本文讨论的技术、识别对象的示例实例分割(即,所描绘的示例中的掩模)的两种表示(910和912)。表示910包括示例掩模标识为表示对象(即,车辆110)的图像的变暗部分。为了清楚起见,在图9C中包括表示912,以表示掩模中包括的图像中积极识别对象的部分对应于车辆110。在一些情况下,表示910的图像的每个变暗的部分可以对应于ML模型为其生成的在NMS期间被抑制的ROI的图像的一部分,或者以其它方式与该对象的ROI相关联(例如,与最大置信度得分相关联的ROI)。在一些情况下,自主车辆可以使用ROI和/或掩模来生成用于控制自主车辆的运动的轨迹。

该技术是对以前的技术的改进,以前的技术需要单独的操作来执行实例分割。替代地,本文讨论的技术在使用常规技术执行目标检测所花费的相同计算时间内执行目标检测和图像分割。在一些情况下,本文描述的ML模型会在20毫秒内运行。

示例架构

图10是示例架构1000的框图,示例架构1000包括根据本文讨论的任何技术、用于控制至少一个车辆(例如自动驾驶车辆)的操作的示例车辆系统1002。在一些情况下,车辆系统1002可以表示自主车辆104的至少一部分。在一些情况下,该体系结构可以用于至少部分基于此处讨论的ROI、图像分割和/或置信度得分来控制自主车辆。

在一些情况下,车辆系统1002可以包括处理器1004和/或存储器1006(其可以共同表示计算设备118)。这些部件在图10中以组合方式示出,尽管可以理解,它们可以是车辆系统1002的单独的部件,并且在某些情况下,系统的组件可以被实现为硬件和/或软件。

处理器1004可以包括包括一个处理器的单处理器系统,或者包括几个处理器(例如,两个,四个,八个或其它合适数量)的多处理器系统。处理器1004可以是能够执行指令的任何合适的处理器。例如,在各种实施方式中,处理器可以是实现各种指令集架构(ISA)(例如x86,PowerPC,SPARC或MIPS ISA或任何其他合适的ISA)的通用或嵌入式处理器。在多处理器系统中,每个处理器1004可以共同但不一定实现相同的ISA。在一些情况下,处理器1004可以包括中央处理单元(CPU)、图形处理单元(GPU)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或其组合。

示例车辆系统1002可以包括存储器1006。在一些情况下,存储器1006可以包括非暂时性计算机可读介质,其被配置为存储可执行指令/模块,数据和/或处理器1004可访问的数据项。在各种实施方式中,可以使用任何适当的存储器技术来实现非暂时性计算机可读介质,诸如静态随机存取存储器(SRAM),同步动态RAM(SDRAM),非易失性/闪存类型的存储器或任何其他类型的存储器。在所示的示例中,示出了实现所需操作的程序指令和数据,例如上述的那些,被存储在非暂时性计算机可读存储器中。在其他实施方式中,程序指令和/或数据可以在不同类型的计算机可访问介质(例如,非暂时性计算机可读介质)上或在与非暂时性计算机可读介质分开的类似介质上接收、发送或存储。一般而言,非暂时性计算机可读存储器可以包括存储介质或存储介质,诸如闪存(例如,固态存储器),磁性或光学介质(例如,磁盘)等经由输入/输出(“I/O”)接口1008耦合到示例车辆系统1002。可以通过传输介质或诸如电,电磁或数字信号之类的信号来传输经由非暂时性计算机可读介质存储的程序指令和数据,该传输介质或信号可以经由诸如网络和/或无线链路之类的通信介质来传送,例如可以经由网络接口1010来实现。

此外,尽管在图10中被示为单个单元,但是应当理解,处理器1004和存储器1006可以分布在车辆的多个计算设备之间和/或多个车辆,数据中心,远程操作中心等之间。

在一些情况下,输入/输出(“I/O”)接口1008可以被配置为协调处理器1004,存储器1006,网络接口1010,传感器1012,I/O设备1014,驱动系统1016和/或车辆系统1002的任何其他硬件之间的I/O流量。在一些情况下,I/O设备1014可以包括外部和/或内部扬声器,显示器,乘客输入设备等。在一些情况下,I/O接口1008可以执行协议,定时或其他数据转换,以将来自一个组件(例如,非暂时性计算机可读介质)的数据信号转换为适合另一组件(例如,处理器)使用的格式。在一些情况下,I/O接口1008可以包括对通过各种类型的外围总线附接的设备的支持,所述外围总线例如是用于外围组件互连(PCI)总线标准,通用串行总线(USB)标准或其变体。在一些实施方式中,I/O接口1008的功能可以被分成两个或更多个单独的组件,例如,北桥和南桥。而且,在一些情况下,I/O接口1008的一些或全部功能,例如到存储器1006的接口,可以直接合并到处理器1004和/或车辆系统1002的一个或多个其他组件中。

示例车辆系统1002可以包括网络接口1010,其被配置为在车辆系统1002和一个或多个其他设备之间建立通信链路(即“网络”)。例如,网络接口1010可以被配置为允许经由第一网络1020在车辆系统1002与另一车辆1018之间和/或经由第二网络1024在车辆系统1002与远程计算系统1022之间交换数据。例如,网络接口1010可以启用另一车辆1018和/或远程计算设备1022之间的无线通信。在各种实施方式中,网络接口1010可以支持经由无线通用数据网络(例如,Wi-Fi网络),和/或电信网络,例如蜂窝通信网络,卫星网络等的通信。

示例车辆系统1002可以包括传感器1012,例如,传感器1012被配置为将车辆系统1002定位在环境中,以检测环境中的一个或多个对象,以感测示例车辆系统1002通过其环境,感测环境数据(例如,环境温度,压力和湿度)和/或感测示例车辆系统1002内部的状况(例如,乘客人数,内部温度,噪声水平)。传感器1012可以包括,例如,一个或多个LIDAR(激光雷达)传感器,一个或多个相机(例如RGB摄像机,强度(灰度)相机,红外相机,深度相机,立体相机),一个或多个磁力计,一个或多个雷达传感器,一个或多个声纳传感器,一个或多个用于感测声音的麦克风,一个或多个IMU传感器(例如,包括加速度计和陀螺仪),一个或多个GPS传感器,一个或多个Geiger计数器传感器,一个或多个轮编码器,一个或多个驱动系统传感器,速度传感器和/或其他与示例车辆系统1002的操作相关的传感器。在一些情况下,本文讨论的传感器数据可以在第一车辆处被接收并且被发送到第二车辆。在一些情况下,本文讨论的图像可以在传感器1012的传感器处被接收并且被提供给感知引擎1026。

示例车辆系统1002可以包括感知引擎1026(例如感知引擎116),ML模型1028(例如ML模型114)和规划器1030(例如规划器120)。

感知引擎1026可以包括存储在存储器1006上的指令,该指令在由处理器1004执行时配置处理器1004以从传感器1012接收传感器数据作为输入,并且输出表示以下各项的数据,例如,示例车辆系统1002周围环境中的一个或多个对象的姿势(例如,位置和定向),与该对象相关联的对象轨迹(例如,对象的历史位置,速度,加速度和/或在一段时间(例如5秒)内物体的行进方向),和/或与该对象相关联的对象分类(例如行人,车辆,骑自行车的人等)。在一些情况下,感知引擎1026可被配置以预测一个或多个对象的多于一个的对象轨迹。例如,感知引擎1026可以被配置为基于例如与对象相关联的预测位置、轨迹和/或速度的概率确定或多模式分布来预测多个对象轨迹。

感知引擎1026可以包括存储在存储器1006上的指令,该指令在由处理器1004执行时将处理器1004配置为从传感器1012接收传感器数据作为输入,例如图像;将传感器数据提供给ML模型1028;从ML模型1028接收ROI、图像分割和/或置信度分数;以及输出表示感知引擎从传感器数据中检测到对象的指示,并且可以输出一个或多个ROI、实例分割、置信度得分、分类和/或与其相关的其他数据。ROI、实例分割、置信度得分、分类和/或与其相关的其他数据也可以存储在存储器1006中。

ML模型1028可以包括存储在存储器1006上的指令,该指令在由处理器1004执行时将处理器1004配置为接收图像,并至少部分基于图像确定输出ROI和/或识别图像中对象表示的实例分割。ML模型1028可以包括决策树或其任何布置,例如随机森林和/或决策树的增强集合;有向无环图(DAG)(例如,将节点组织为贝叶斯网络);深度学习算法,例如人工神经网络(ANN),深度信念网络(DBN),深度堆叠网络(DSN)或递归神经网络(RNN);等等。在一些情况下,ML模型1028可以包括具有节点的RNN,通过这些节点可以推送特征值以确定输出。例如,ML模型1028可以包括节点的输入层,节点的一个或多个隐藏层以及节点的输出层。在一些情况下,节点的输入层可以被配置为接收图像和/或其一部分并激活一个或多个隐藏层的节点。输出层可以被配置为从一个或多个隐藏层的节点接收刺激,并且基于最活跃的输出层的节点来输出ROI,图像分割和/或置信度得分和/或输出节点的输出可以对应于输出节点的激活量。在一些情况下,单个输出节点可能与图像的一部分相对应。

感知引擎1026可以将ROI、图像分割、置信度得分和/或与其相关的其他数据发送给规划器1030,连同规划器1030可用于生成轨迹的任何其他附加信息(例如,对象分类,对象轨迹,车辆姿态)。在一些情况下,至少部分基于感知引擎1026确定的置信度得分,感知引擎1026和/或规划器1030可以附加地或可替代地经由网络接口1010传输ROI、实例分割、置信度得分、分类和/或其他相关数据,经由网络1024到达远程计算设备1022,和/或经由网络1020到达另一车辆1018。

在一些情况下,感知引擎1026和/或ML模型1028可以位于另一车辆1018和/或远程计算设备1022处。在一些情况下,位于另一车辆1018和/或远程计算设备1022处的感知引擎可以与感知引擎1026协调确定。在ML模型1028位于另一车辆1018和/或远程计算设备1022处的一些实例中,另一车辆1018和/或远程计算设备1022可以分别经由网络1020和1024从车辆系统1002接收图像,并可以确定ROI、实例分割、置信度得分、分类和/或与其相关的其他数据。然后,另一车辆1018和/或远程计算设备1022可以将ROI、实例分割、置信度得分、分类和/或与之相关的其他数据发送回车辆系统1002的规划器1030。

规划器1030可以包括存储在存储器1006上的指令,该指令在由处理器1004执行时配置处理器1004以生成表示示例车辆系统1002的轨迹的数据,例如,使用表示示例车辆系统1002在其环境中的位置的数据以及其他数据,例如本地姿势数据和ROI、实例分割、置信度得分、分类、和/或与其相关的其他数据。在一些情况下,规划器1030可以基本连续地(例如,每1或2毫秒,尽管考虑到任何滚动时域时间)生成多个潜在轨迹,利用这些潜在轨迹来控制示例车辆系统1002并选择其中的一个轨迹来控制车辆。该选择可以至少部分地基于当前路线、静止的车辆是阻塞车辆的概率、当前车辆轨迹和/或检测到的对象轨迹数据。在选择了轨迹之后,规划器1030可以将轨迹传输至驱动系统1016,以根据所选择的轨迹来控制示例车辆系统1002。

在一些情况下,感知引擎1026、ML模型1028和/或规划器1030可以进一步包括专用硬件,诸如适合于运行感知引擎的处理器(例如,图形处理器,FPGA)。

示例条款

A.一种系统,包括:一个或多个处理器;以及一种或多种计算机可读介质,其存储可由一个或多个处理器执行的指令,其中,该指令在被执行时使系统执行以下操作,包括:提供图像作为机器学习(ML)模型的输入;接收作为来自ML模型的输出的特征地图,其中,该特征地图的一部分与边界框和置信度得分相关联;以及至少部分基于示例子集来训练ML模型,该训练包括:识别与表示对象的图像区域相关联的参考区域;至少部分地基于与第一边界框相关联的第一置信度得分来选择要包括在示例子集中的第一困难示例,第一置信度得分和第一边界框与特征地图的第一部分相关联;确定第一边界框与参考区域的第一对准度达到或超过阈值对准度;至少部分地基于达到或超过阈值对准度,将第一困难示例替换为第二困难示例。

B.根据段落A所述的系统,该操作还包括:至少部分地基于确定与第二困难示例相关联的第二边界框与参考区域的第二对准度小于阈值对准度,将第二困难示例包括在示例子集中。

C.根据段落A或B所述的系统,其中:参考区域的第一部分被指示为与积极示例相关联;特征地图的第一部分与参考区域的第一部分之外的参考区域的第二部分相关联。

D.根据段落C所述的系统,其中:与参考区域的第一部分相关联的第一目标置信度得分是最大置信度得分;与第二部分相关的第二目标置信度得分是最小置信度得分;以及训练ML模型还包括:至少部分地基于第一对准度达到或超过阈值对准度,将第一困难示例与第一目标置信度得分而不是第二目标置信度得分相关联。

E.根据段落A至D中任一项所述的系统,其中第一对准度是第一边界框与参考区域的交集除以第一边界框与区域的并集。

F.一种计算机实现的方法,包括:接收表示对象的图像;识别指示表示图像中的对象的区域的参考区域;选择图像部分的子集;以及至少部分地基于子集训练机器学习(ML)模型以输出特征图、与分类信息相关联的特征地图的一部分、感兴趣区域(ROI)信息和置信度信息,其中,选择图像的部分的子集包括:至少部分地基于具有达到或超过阈值置信度的第一置信度信息的第一部分来识别特征地图的第一部分;作为比较,将与第一部分相关联的ROI信息与参考区域进行比较;并且至少部分地基于比较,将特征地图的第二部分确定为图像部分的子集。

G.根据段落F所述的计算机实现的方法,其中:比较ROI包括相对于参考区域对第一部分的ROI信息执行非最大抑制(NMS);以及特征地图的第二部分与在非最大抑制下抑制的ROI相关联。

H.根据段落G所述的计算机实现的方法,还包括:将最高置信度得分与第一部分相关联。

I.根据段落F至H中任一项所述的计算机实现的方法,还包括:训练ML模型以基本上同时至少部分地基于图像输出对应于分类的多个输出ROI,分类包括车辆,行人或骑自行车的人中的一个或多个。

J.根据段落F至I中任一项所述的计算机实现的方法,其中:参考区域包括第一区域和第二区域,并且其中特征地图的第二部分包括第一区域之外的特征。

K.根据段落J所述的计算机实现的方法,其中,第一区域与参考区域的中央部分相关联;以及对分类信息的积极标识。

L.根据段落F至K中任一项所述的计算机实现的方法,其中,比较包括确定对准量作为ROI信息与参考区域所指示的区域的交集除以ROI信息和参考区域的并集。

M.根据段落L所述的计算机实现的方法,其中,其中比较还包括确定对准量达到或阈值对准度。

N.根据段落F至M中任一项所述的计算机实现的方法,其中,训练ML模型包括至少两个阶段,其中:至少两个阶段的第一阶段包括:提供第一批图像作为ML模型的第一输入;从ML模型并且至少部分地基于第一批图像接收与第一批图像的第一图像相关联的中间ROI;识别中间ROI作为参考区域;至少两个阶段的第二阶段包括:提供第一批图像作为ML模型的第二输入;从ML模型并至少部分地基于第一批图像接收第二多个ROI和与其相关的第二多个置信度得分;为了包括在训练ML模型的示例的第二子集中,并且至少部分地基于非最大抑制(NMS)技术,从与第二多个ROI相关联的图像部分中选择用于训练ML模型的困难示例;以及至少部分基于第二子集训练ML模型。

O.根据段落N所述的计算机实现的方法,其中,第二阶段还包括使用聚焦损失训练ML模型。

P.根据段落F至O中任一项所述的计算机实现的方法,其中,ROI信息包括边界框。

Q.根据段落F至P中任一项所述的计算机实现的方法,还包括:接收一批图像,该批图像包括与第一对象分类相关联的第一预定数量的图像和与第二对象分类相关联的第二预定数量的图像;以及至少部分地基于将图像批次作为输入提供给ML模型来训练ML模型,其中第一预定数量的图像和第二预定数量的图像至少部分基于与一个或多个特征地图的特征相关联的置信度信息。

R.一种非暂时性计算机可读介质,具有一组指令,该指令在被执行时使一个或多个处理器执行以下操作:提供图像作为机器学习(ML)模型的输入;作为从ML模型的输出,接收特征地图,特征地图的第一部分包括指示图像中的对象的第一感兴趣区域(ROI)和第一置信度得分;以及至少部分基于与测试图像的多个部分相关联的积极示例子集和消极示例子集训练ML模型,其中训练ML模型包括:将测试图像提供给ML模型,该测试图像表示与基准真相参考区域相对应的对象;作为困难消极示例,确定特征地图的第二部分的第二置信度得分达到或超过阈值置信度得分;确定困难消极示例与在非最大抑制技术下被抑制的第二ROI相关联;从消极示例的子集中排除困难消极示例。

S.根据段落R所述的非暂时性计算机可读介质,其中:第一部分的第一ROI包括边界框;第一部分的第一置信度得分表示第一ROI准确表示代表对象的图像区域的概率。

T.根据段落R或S所述的非暂时性计算机可读介质,其中:特征地图的第一部分与多个ROI相关联,多个ROI中的ROI与多个分类相对应,这些分类包括车辆,自行车或行人中的一个或多个。

U.一种系统,包括:一个或多个处理器;以及一种或多种计算机可读介质,其存储可由一个或多个处理器执行的指令,其中,该指令在被执行时使系统执行以下操作,包括:接收具有第一缩放的图像;将图像提供给第一机器学习(ML)模型;从第一ML模型接收第一边界框,该第一边界框指示图像的第一区域,该第一区域表示第一对象的至少一部分,第一边界框具有在第一尺寸范围内的第一尺寸;至少部分地基于第二缩放将图像缩放为缩放图像;将缩放后的图像提供给第二ML模型;以及从第二ML模型接收第二边界框,该第二边界框指示图像的第二区域,该第二区域表示第二对象的至少一部分,第二边界框具有第二尺寸范围内的第二尺寸。

V.根据段落U所述的系统,其中,将图像基本上同时提供给第一ML模型,并将缩放后的图像提供给第二ML模型。

W.根据段落U或V所述的系统,其中,第一ML模型和第二ML模型是相同的ML模型。

X.根据段落U至W中任一项所述的系统,操作还包括:至少部分地基于以下步骤确定ML模型的第一尺寸范围:将包括不同尺寸的对象的第一批训练图像提供给ML模型作为输入;至少部分基于与对象相关联的基准真相,确定ML模型的准确度作为ROI尺寸的函数;以及至少部分地基于识别与达到或超过阈值精度的精度相对应的ROI尺寸范围来确定第一尺寸范围。

Y.一种计算机实现的方法,包括:接收第一缩放图像和第二缩放图像,第一缩放图像和第二缩放图像对应于图像;提供第一缩放图像作为第一机器学习(ML)模型的第一输入;接收具有在第一尺寸范围内的尺寸的一个或多个第一感兴趣区域(ROI)作为来自第一ML模型的第一输出;提供第二缩放图像作为第二ML模型的第二输入;以及接收具有在第二尺寸范围内的尺寸的一个或多个第二ROI作为第二ML模型的第二输出。

Z.根据段落Y所述的计算机实现的方法,其中:图像包括第一对象和第二对象的表示,并且计算机实现的方法还包括:通过第一ML模型并且至少部分地基于第一缩放图像,确定表示第一对象的第一ROI和表示第二对象的第二ROI;以及通过第二ML模型并至少部分基于第二缩放图像,确定表示第一对象的第三ROI和表示第二对象的第四ROI。

AA.根据段落Z所述的计算机实现的方法,其中:第一ROI具有在第一尺寸范围之外的第一尺寸;第二ROI具有在第一尺寸范围内的第二尺寸;第三ROI具有在第二尺寸范围之外的第三尺寸;第四ROI具有在第二尺寸范围内的第四尺寸;第一ML模型丢弃第一ROI并输出第二ROI;第二ML模型丢弃第四ROI,并输出第三ROI。

AB.根据段落Y至AA中任一项所述的计算机实现的方法,还包括:至少部分地基于第一缩放对图像进行缩放以生成第一缩放图像;以及至少部分地基于第二缩放对图像进行缩放以生成第二缩放图像。

AC.根据段落Y至AB中任一项所述的计算机实现的方法,其中,基本上同时地,第一缩放图像被提供给第一ML模型,第二缩放图像被提供给第二ML模型。

AD.根据段落Y至AC中任一项所述的计算机实现的方法,还包括至少部分地基于与一个或多个第一ROI的第一ROI相关联的精度来确定第一尺寸范围,该确定包括:至少部分地基于与表示对象的图像的区域相关联的基准真相,确定第一ROI与基准真相所限定的区域的对准度;以及至少部分地基于识别与达到或超过阈值对准度的一个或多个第一ROI确定的对准度相对应的ROI尺寸的范围来确定第一尺寸范围。

AE.根据段落Y至AD中任一项所述的计算机实现的方法,还包括:接收一批图像,其中,该批图像包括与第一对象分类相关联的第一预定数量的图像和与第二对象分类相关联的第二预定数量的图像;以及至少部分地基于将该批图像作为输入提供给第一ML模型,从而训练第一ML模型,其中,第一预定数量的图像和第二预定数量的图像至少部分地基于与所述第一ML模型或第二ML模型相关联的置信度得分。

AF.一种非暂时性计算机可读介质,具有一组指令,该指令在被执行时使一个或多个处理器执行以下操作:提供图像作为与第一尺寸范围相关联的第一机器学习(ML)模型的输入;通过第一ML模型并且至少部分地基于图像确定第一多个感兴趣区域(ROI);抑制第一多个ROI的ROI的第一子集的第一输出,其中抑制ROI的第一子集的第一输出包括确定ROI的第一子集与在第一尺寸范围之外的第一尺寸相关联;以及接收与对象相关联的一个或多个第一ROI或该对象的尺寸超出第一尺寸范围的第一指示作为来自第一ML模型的第二输出。

AG.根据段落AF所述的非暂时性计算机可读介质,其中接收对象的尺寸在第一尺寸范围之外的第一指示至少部分地基于确定ROI的第一子集包括所有第一多个ROI。

AH.根据段落AF或AG所述的非暂时性计算机可读介质,其中,操作还包括:将图像提供给与第二尺寸范围相关联的第二ML模型作为输入,其中将图像提供给第二ML模型与将图像提供给第一ML模型基本上同时发生;通过第二ML模型确定第二多个ROI;抑制第二多个ROI的ROI的第二子集的第三输出,其中,抑制ROI的第二子集包括确定ROI的第二子集的ROI的至少一部分与第二尺寸范围之外的第二尺寸相关联;从第二ML模型中接收与对象相关联的一个或多个第二ROI,或者接收对象的尺寸在第二尺寸范围之外的第二指示。

AI.根据段落AH所述的非暂时性计算机可读介质,其中,至少部分地基于图像中对象的尺寸,第一尺寸范围和第二尺寸范围,从第一ML模型或第二ML模型接收与对象相对应的ROI。

AJ.根据段落AH或AI所述的非暂时性计算机可读介质,其中:第一ML模型至少部分地基于与第一尺寸范围相关联的第一ML模型的第一精度,输出具有在第一尺寸范围内的尺寸的一个或多个第一ROI;以及第二ML模型至少部分地基于与第二尺寸范围相关联的第二ML模型的第二精度来输出具有在第二尺寸范围内的尺寸的一个或多个第二ROI。

AK.根据段落AH至AJ中任一项所述的非暂时性计算机可读介质,其中,操作还包括:至少部分地基于一个或多个第一ROI或一个或多个第二ROI生成用于控制自主车辆的运动的轨迹。

AL.根据段落AH至AK中任一项所述的非暂时性计算机可读介质,其中,操作还包括:至少部分地基于机器学习模型来选择第一尺寸范围和第二尺寸范围。

AM.根据段落AF至AL中任一项所述的非暂时性计算机可读介质,其中,操作还包括至少部分地基于以下步骤为第一ML模型确定第一尺寸范围:训练第一ML模型,其中,训练包括:提供包括与参考区域定义的区域相关联的测试对象的测试图像作为第一ML模型的输入;以及通过第一ML模型并且至少部分地基于测试图像来确定多个ROI;确定多个ROI与参考区域所限定的区域中的区域的对准度;以及至少部分地基于与识别达到或超过阈值对准度的对准度的一部分相对应的对象尺寸的跨度来确定第一尺寸范围。

AN.根据段落AF至AM中任一项所述的非暂时性计算机可读介质,其中,该操作还包括:接收一批图像,其中该批图像包括与第一对象分类相关联的第一预定数量的图像和与第二对象分类相关联的第二预定数量的图像;以及至少部分地基于将该批图像作为输入提供给第一ML模型来训练第一ML模型,其中第一预定数量和第二预定数量至少部分基于与第一ML预定或第二ML模型相关联的置信度得分。

AO.一种计算机实现的方法,包括:提供图像作为机器学习(ML)模型的输入;接收包括多个特征的特征地图作为从ML模型的输出,多个特征中的特征包括置信度得分、分类信息和根据非最大抑制(NMS)技术确定的感兴趣区域(ROI);以及使用实例分割将具有相似ROI的特征子集进行关联。

AP.根据段落AO所述的计算机实现的方法,其中,具有相似ROI的特征子集包括被指示为经由NMS技术被抑制的特征。

AQ.根据段落AP所述的计算机实现的方法,其中,确定输出与第一特征相关联的第一ROI包括:确定第一ROI与和特征子集相关联的置信度得分的子集的最大置信度得分相关联;以及输出第一ROI以将图像的区域关联为表示对象。

AR.根据段落AO至AQ中任一项所述的计算机实现的方法,还包括输出与实例分相对应的掩模,以将图像的像素识别为表示对象。

AS.根据段落AR所述的计算机实现的方法,还包括至少部分地基于由ML模型输出的ROI或实例分割中的至少之一来生成用于控制自主车辆的运动的轨迹。

AT.根据段落AO至AS中任一项所述的计算机实现的方法,还包括至少部分地基于测试图像和与之相关联的基准真相来训练ML模型,其中基准真相标识掩模。

AU.根据段落AO至AT中任一项所述的计算机实现的方法,还包括训练ML模型以针对对应于多个分类的每个特征基本同时输出多个ROI,该多个分类包括车辆,行人或自行车中的一个或多个。

AV.根据段落AO至AU中任一项所述的计算机实现的方法,其中,ROI是边界框。

AW.一种系统,包括:一个或多个处理器;以及一种或多种计算机可读介质,其存储可由一个或多个处理器执行的指令,其中,该指令在被执行时使系统执行以下操作,包括:提供图像作为机器学习(ML)模型的输入;通过ML确定包括多个特征的特征地图,多个特征中的特征包括感兴趣区域(ROI),标识和置信度得分;以及至少部分地基于与多个特征相关联的标识来输出输出图像作为实例分割。

AX.根据段落AW所述的系统,其中,根据非最大抑制(NMS)技术确定特征的ROI,NMS技术包括:确定与特征相关联的置信度得分达到或超过阈值置信度得分;确定ROI与和达到或超过阈值对准度的对应特征的对应ROI的对对准度关联;确定对应的ROI作为ROI;以及确定对应特征的对应标识作为标识。

AY.根据段落AW或AX所述的系统,其中,操作还包括将实例分割作为掩模输出,该掩模将图像的像素标识为表示与对象分类相关联的对象。

A Z.根据段落AY所述的系统,操作还包括:至少部分地基于掩模,确定被配置为使自主车辆穿越环境的一部分的轨迹;以及将轨迹提供给自主车辆。

BA.根据段落AW至AZ中任一项所述的系统,操作还包括:至少部分基于提供作为ML模型的输入和一批图像来训练ML模型,该批图像包括基本上同时地与第一对象分类相关联的第一预定数量的图像和与第二对象分类相关联的第二预定数量的图像,其中,至少部分地基于与多个特征相关联的一个或多个置信度得分来确定第一预定数量和第二预定数量。

BB.根据段落AW至BA中任一项所述的系统,操作还包括:至少部分地基于测试图像和与其相关联的基准真相训练ML模型,其中基准真相标识参考区域和掩模。

BC.一种非暂时性计算机可读介质,具有一组指令,该指令在被执行时使一个或多个处理器执行以下操作:在机器学习(ML)模型上接收图像;通过ML模型确定包括多个特征的特征地图,多个特征中的特征包括感兴趣区域(ROI)和标识,ROI指示图像中的一个或多个对象;以及作为实例分割,输出与多个特征相关联的标识,其中至少部分地基于特征的ROI和非最大抑制(NMS)技术来确定标识的标识。

BD.根据段落BC所述的非暂时性计算机可读介质,其中,标识进一步基于NMS技术基于对应特征的对应ROI是否抑制特征的ROI而确定,该特征和对应特征具有相同的标识。

BE.根据段落BC或BD所述的非暂时性计算机可读介质,其中,ROI是具有范围和中心位置的边界框。

BF.根据段落BC至BE中任一项所述的非暂时性计算机可读介质,其中,特征地图的尺寸是图像尺寸的一小部分。

BG.根据段落BC至BF中任一项所述的非暂时性计算机可读介质,操作还包括:至少部分地基于测试图像和与之相关联的基准真相来训练ML模型,其中基准真相标识参考区域和掩模。

BH.根据段落BG所述的非暂时性计算机可读介质,其中,训练ML模型包括提供一批图像,作为ML模型的输入,该批图像包括与第一对象分类相关联的第一预定数量的图像和与第二对象分类相关联的第二预定数量的图像,其中,第一预定数量和第二预定数量至少部分地基于多个特征的一个或多个置信度水平。

尽管针对一个特定实施方式描述了上述示例性条款,但是应该理解,在本文档的上下文中,示例性条款的内容也可以经由方法,设备,系统,计算机可读介质和/或另一种实现方式来实现。

尽管已经用特定于结构特征和/或方法动作的语言描述了主题,但是应该理解,所附权利要求书中定义的主题不必限于所描述的特定特征或动作。相反,公开了特定的特征和动作作为实现权利要求的示例形式。

本文描述的模块表示可以存储在任何类型的计算机可读介质中并且可以以软件和/或硬件来实现的指令。以上描述的所有方法和过程可以通过由一个或多个计算机或处理器,硬件或其某种组合执行的软件代码模块和/或计算机可执行指令来体现并完全自动化。这些方法中的一些或全部可以替代地体现在专用计算机硬件中。

除非另有明确说明,否则条件语言(例如“可以”或“可能”在上下文中应理解为表示某些示例包括某些特征,而其他示例不包括某些特征、元素和/或步骤。因此,这种条件性语言通常不旨在暗示一个或多个示例以任何方式需要某些特征、元素和/或步骤,或者一个或多个示例必然包括用于在有或没有用户输入或提示的情况下确定在任何特定示例中是否包括或将要执行某些特征,元素和/或步骤的逻辑。

除非另有明确说明,否则诸如短语“X,Y或Z中的至少一个”之类的组合语应理解为表示项目,术语等可以是X,Y或Z或其任何组合,包括每个元素的倍数。除非明确描述为单数,否则“一个”表示单数和复数。

在此描述的和/或在附图中描绘的流程图中的任何常规描述,元素或方框应被理解为潜在地表示模块,代码段或代码的一部分,其包括用于实现特定逻辑功能的一个或多个计算机可执行指令或例程中的元素。替代实施方式包括在本文所述示例的范围内,其中,可以根据所示出或所讨论的内容来删除或以不按顺序执行元素或功能,包括基本上同步,以相反的顺序进行附加操作或省略操作,具体取决于本领域技术人员将理解所涉及的功能。

应当强调的是,可以对上述示例进行许多变型和修改,其中的要素应被理解为是其他可接受的示例。所有这些修改和变型旨在被包括在本公开的范围内,并由所附权利要求书保护。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号