应用到道路场景图像的低保真分类器和高保真分类器的制作方法

文档序号:11678133阅读:495来源:国知局
应用到道路场景图像的低保真分类器和高保真分类器的制造方法与工艺

本发明涉及图像处理系统,并且更具体地涉及道路场景图像的对象分类、检测和/或定位的系统。



背景技术:

辅助驾驶和自主驾驶技术的希望和潜力依靠快速和准确分类、检测和/或定位迎面而来的对象和/或周围对象的能力。已经用于支持提供快速和准确分类、检测和/或定位信息的各种技术包括无线电检测与测距(雷达)子系统和光检测与测距(激光雷达)子系统、声音导航与测距(声纳)子系统以及图像分析技术。关于图像分析技术,安装在车辆上的摄像机可以捕捉用于数字处理的迎面而来的和/或周围道路和/或环境场景的图像。

多年来,应用于图像分析的技术改进——例如使用卷积神经网络(cnn)——在图像分析的准确性上取得了令人印象深刻的改进。然而,如cnn应用的技术开发和部署两者的计算强度大,在快速和准确地提供分类、检测和/或定位信息和/或灵活以及相应地改进分析技术的要求方面产生问题。能够保持准确性上的改进同时成功控制计算需求的创新能够被用于改进分析开发。此外,这样的创新可以在辅助和自主驾驶方面为提供检测、分类和/或定位信息和/或在通过其它技术提供的类似信息中提供冗余和/或填充空白带来收益。



技术实现要素:

根据本发明的一方面,提供一种系统,包含:

位于处理器集合上的低保真分类器,低保真分类器可操作用于在确定描述被分类对象的候选区域时从跨越图像的下采样版本的区域集合中选择候选区域,图像来自捕捉道路场景的固定于机动车辆上的摄像机;

位于处理器集合上的高保真分类器,高保真分类器可操作用于验证图像的高保真版本的小片中的被分类对象的描述,小片是从候选区域映射的,其中高保真分类器表明描述。

根据本发明的一个实施例,其中:

包含第一卷积神经网络(cnn)的低保真分类器是利用下采样训练集合训练的,下采样训练集合包含对象图像的多个被标记的下采样版本,对象在表征被分类对象的类别中,被标记的下采样版本具有与区域集合中的区域的尺寸相称的尺寸;以及

包含第二cnn的高保真分类器是利用高分辨率训练集合训练的,高分辨率训练集合包含类别中的对象的图像的多个带标记的高保真版本。

根据本发明的一个实施例,该系统进一步包含分辨率模块,分辨率模块可操作用于产生下采样训练集合中的下采样版本,至少一些下采样版本被下采样至最低分辨率,在最低分辨率的下采样版本的熵保持在阈值以上,该阈值是相对于该类别中的对象的图像中的熵所限定的。

根据本发明的一个实施例,该系统进一步包含下采样模块,下采样模块在处理器集合上实施并且可操作用于以下采样因子产生来自固定在机动车辆上的摄像机的图像的下采样版本,下采样因子被确定用于在下采样版本中保留来自摄像机的图像中的熵的预定百分比。

根据本发明的一个实施例,其中熵的预定百分比来自以百分之八十为中心并且在百分之八十以上和以下扩展百分之五的范围。

根据本发明的一个实施例,该系统进一步包含:

窗口模块,窗口模块可操作用于:

针对区域集合而从下采样版本中分离由完全滑过下采样版本的至少一个窗口来框定的重叠区域,并且

将重叠区域应用到低保真分类器;以及

映射模块,映射模块可操作用于将来自图像的下采样版本的候选区域映射到图像的高保真版本的小片,以使候选区域和小片分别在下采样版本和高保真版本中覆盖图像的共有扇区。

根据本发明的一个实施例,其中:

至少一个窗口包含具有第一尺寸的第一窗口,第一尺寸与第二窗口的第二尺寸不同,第一尺寸和第二尺寸两者对应于不同的比例,在图像的下采样版本中以该比例潜在地描述和检测类别中的对象;

区域集合包含第一重叠区域的第一区域子集合以及第二重叠区域的第二区域子集合,第一重叠区域具有与第一尺寸相称的尺寸,第二重叠区域具有与第二尺寸相称的尺寸;

下采样训练集合包含第一下采样版本的第一下采样子集合以及具有第二下采样版本的第二下采样子集合,第一下采样版本具有与第一尺寸相称的尺寸,第二下采样版本具有与第二尺寸相称的尺寸。

根据本发明的一个实施例,该系统进一步包含:

成像子系统,成像子系统包含雷达检测与测距(radar)子系统和光检测与测距(lidar)子系统中的至少一个;以及

多级图像分类系统,多级图像分类系统包含摄像机以及位于处理器集合上的低保真分类器和高保真分类器两者;以及

实施在处理器集合上的聚合模块,聚合模块可操作为使低保真分类器应用于来自摄像机的图像的下采样版本的全部范围,与应用到区域集合相同,以提供冗余并且提供通过成像子系统提供的分类信息中缺失的遗漏分类信息。

根据本发明的一个实施例,该系统进一步包含:

图像队列,图像队列可操作用于使摄像机捕捉的迎面而来的道路场景的一系列图像顺序排队;

位于处理器集合内的至少一个图像处理单元(gpu),至少一个图像处理单元实施低保真分类器和高保真分类器中的至少一种;并且其中

低保真分类器和高保真分类器两者的参数被设置为相对于至少一个图像处理单元的计算能力限定低保真分类器和高保真分类器的计算要求,实现以提供对一系列图像中的分类信息的实时访问的预定速率处理一系列的图像。

根据本发明的一方面,提供一种用于对象分类和定位的方法,包含:

将图像下采样为图像的下采样版本;

提取覆盖下采样版本的重叠区域的集合,重叠区域通过具有与该区域的尺寸相等尺寸的滑动窗口来限定;

从重叠区域集合中选择潜在区域,包含第一卷积神经网络(cnn)的低保真分类器针对潜在区域表明对象存在的概率,对象属于低保真分类器的可分类对象的类别;

将从下采样版本中选择的潜在区域映射到图像的高分辨率版本的扇区中;以及

通过将扇区应用到包含第二cnn的高保真分类器来确认对象的存在,其中应用扇区表明存在。

根据本发明的一个实施例,该方法进一步包含:

以图像尺寸的集合来裁剪对象图像的集合,根据检测类别的集合利用分配给图像的标签分类图像集合中的图像;

下采样图像集合以产生带标签图像的下采样集合;

利用带标签图像的下采样集合训练低保真分类器;以及

利用图像集合和为了训练的目的而选择的可比图像中的至少一个训练高保真分类器。

根据本发明的一个实施例,该方法进一步包含:

收集训练图像集合,图像集合描述位于各种位置的行人和包含在图像集合内的环境;

并且根据检测类别集合中的共有类别标记训练集合。

根据本发明的一个实施例,该方法进一步包含计算最大因子,利用最大因子下采样图像,以产生下采样版本,同时保持下采样版本中的熵与图像中的熵的比率位于预定阈值水平以上。

根据本发明的一个实施例,该方法进一步包含针对至少一个另外的潜在区域搜索还未应用低保真分类器的重叠区域集合中的区域,同时通过将该扇区应用到高保真分类器来确认对象的存在。

根据本发明的一个实施例,该方法进一步包含:

通过固定到机动车辆的摄像机以满足预定阈值的帧速率捕捉迎面而来的道路场景的一系列图像;以及

通过在一系列图像中的单独图像上以同样满足预定阈值的处理速率应用权利要求10来处理一系列的图像,预定阈值为机动车辆的预定自主响应提供足够的时间,预定自主响应针对一系列图像中的分类信息。

根据本发明的一个实施例,该方法进一步包含:

从下采样版本中分离缩放区域集合,缩放区域集合中的缩放区域具有与滑动窗口的尺寸不同的尺寸并且与缩放滑动窗口的缩放尺寸相称;

从缩放区域集合中选择缩放区域,低保真分类器针对该缩放区域表明被低保真分类器分类的缩放对象存在的概率;

将缩放区域映射到高分辨率版本的缩放扇区;以及

通过将缩放扇区应用到高保真分类器来确认缩放对象的存在,其中应用缩放扇区产生存在的概率。

根据本发明的一方面,提供一种图像分析系统,包含:

位于至少一种存储介质上的至少一个数据库,至少一个数据库包含:

第一数据集合,第一数据集合包含具有标签集合的标签的裁剪的下采样图像;

第二数据集合,第二数据集合包含具有标签集合的标签的裁剪的高分辨率图像;以及

处理器集合,处理器集合实施:

第一卷积神经网络(cnn),第一卷积神经网络可操作用于在第一数据集合上被训练以与标签集合相关地分类来自重叠区块集合的区块,重叠区块跨越道路场景图像的下采样版本,该区块尺寸与下采样图像的尺寸相称;以及

第二卷积神经网络,第二卷积神经网络可操作用于在第二数据集合上被训练以与标签集合相关地以高保真度重新分类覆盖该区块的道路场景图像的区域。

根据本发明的一个实施例,该系统进一步包含分辨率模块,分辨率模块可操作用于产生位于第一数据集合中的下采样图像,第一数据集合包含下采样到极限分辨率的完全下采样图像,极限分辨率被计算为能够相对于初始裁剪图像保持熵的至少预定百分比的分辨率的下限,对应下采样图像是从初始裁剪图像产生的。

根据本发明的一个实施例,该系统进一步包含处理器集合,处理器集合实施:

下采样模块,下采样模块可操作用于将道路场景图像下采样为低分辨率的图像;

应用模块,应用模块可操作用于:

通过将低分辨率图像的重叠区块应用到低保真分类器来彻底检查由低分辨率图像捕捉的全部视野;

记录潜在区块的集合,低保真分类器在该潜在区块内标识可根据标签集合分类的对象的潜在描述;以及

确定模块,确定模块可操作用于:

将潜在区块集合投射到道路场景图像的高保真版本上以产生候选区域集合;以及

通过将高保真分类器应用到候选区域的集合来确定被确认的区域集合。

根据本发明的一个实施例,该系统进一步包含:

摄像机,摄像机可操作为安装在机动车辆上以捕捉一系列道路场景图像;

位于处理器集合内的图像处理单元(gpu),图像处理单元实施第一卷积神经网络以利用gpu的平行处理能力,使第一卷积神经网络以为预定自主车辆响应提供时间的速率处理一系列的道路场景图像,预定自主车辆响应针对被处理的一系列道路场景图像中的分类信息。

附图说明

为了容易地理解本发明的有利之处,通过参照附图中示出的具体实施例呈现了更具体的说明。理解这些附图仅描述典型的示例并且因此不认为限制范围,通过使用附图,利用另外的特征和细节描述和说明了本发明,其中:

图1是根据示例的配备有用于捕捉辅助和/或自主驾驶技术中所使用的信息的各种技术的机动车辆的描述,该机动车辆包括用于捕捉迎面而来的道路场景的图像的摄像机;

图2是根据示例的描述卷积神经网络(cnn)中的前馈示例的示意性框图;

图3a是根据现有技术的描述将cnn应用于图像的冗长详尽的滑动窗口方法以及用于减少实施时间的分段网格法的示意性框图;

图3b是根据现有技术的描述选择性方法的示意性框图,该方法在应用cnn时使用环境信息,该方法跳过应用cnn的图像部分以减少计算和时间;

图4是根据示例描述产生被分类对象的裁剪标记图像的低保真数据集合的示意性框图,利用该低保真数据集合训练实施cnn的低保真分类器,低保真分类器作为多级图像分析系统的第一级;

图5是根据示例描述利用不同比例和分辨率的图像的低保真数据集合训练低保真分类器的示意性框图;

图6是根据示例描述用作多级图像分析系统中第二级的高保真分类器的训练的示意性框图,利用被分类对象的裁剪标记高保真图像的高保真数据集合来训练高保真分类器;

图7是根据示例的描述下采样模块的示意性框图,下采样模块对图像分析系统分析的道路场景测试图像进行下采样;

图8是根据示例的将不同比例的滑动窗口应用于道路场景下采样部分以分离应用于低保真分类器的图像的部分区段的示意性框图;

图9是根据示例描述多级图像分析系统的示意性框图,其中实施第一cnn的低保真分类器将道路场景下采样图像的候选区块识别为被高保真分类器确认的潜在描述被分类对象,高保真分类器实施第二cnn,第二cnn被应用到候选区块的高保真版本,产生道路场景图像中被分类对象的描述的分类、检测和定位;

图10是根据示例的描述映射模块的示意性框图,映射模块可操作用于将来自道路场景的下采样图像的区块映射到图像高保真版本的对应扇区内;以及

图11是根据示例的利用多级图像分析系统快速、准确和全面分类、检测和定位图像中的对象的步骤的流程图,多级图像分析系统建立在实施一对cnn的低保真分类器和高保真分类器上。

具体实施方式

容易理解的是,如本发明附图中总体描述和示出的本发明的部件可以以各种不同的配置设置和设计。因此,如附图中所表示的下列更具体的说明并非意在限制要求保护的范围,而仅仅是某些示例的表示。通过参照附图更好地理解当前描述的示例,其中相同的部分全部由相同的附图标记指代。在一些示例中,附图中元件的具体示例可以由后面带字母的标识数字识别,其中对于相同标识数字而言,在不同的图中字母可以变化,表明具有相同或不同属性的元件的不同示例。仅在说明书中利用数字引用的这样的元件可以更普遍地指代一类这种元件和/或该类的代表示例。

参照图1,示出了机动车辆10。然而,本发明也可以应用于其它车辆10。车辆10可以配备能够感测和记录信号的各种类型的工具,信号反应各种对象、标志、信号和/或与驾驶车辆10相关的类似物。这种设备的非限制性示例可以包括无线电检测与测距(雷达)子系统12和光检测与测距(激光雷达)子系统14。雷达子系统12、激光雷达子系统14或两者以及潜在地另外的子系统可以是更广义的成像子系统的一部分。可以明白的是,车辆10可以装备其它这样的设备,例如声音导航与测距(声纳)子系统。另外地,车辆10配备有摄像机16。

虽然单个摄像机16示出位于车辆10车顶前缘附近,但可以在任何数量的位置处安装任何数量的摄像机16,例如但不限于在车辆内部仪表板上,以捕捉迎面而来的道路场景和/或周围环境的图像。这样的摄像机16可以是利用数字图像传感器的数字摄像机,例如但不限于电荷耦合器件(ccd)和/或互补金属氧化物半导体(cmos)。进一步地,摄像机16可以是能够以帧频捕捉图像的视频摄像机。

在一些示例中,帧频可以超过每秒十四帧,潜在地超出每秒多帧,从而提供容许对辅助和/或自主驾驶技术的图像特性中的信息作出响应的足够新的图像。此外,摄像机16可以响应于可见范围内和外两者的各种波长和/或可以与它捕捉的图像一起捕捉颜色信息。如安装的摄像机装置16的内部分解图中示出的,摄像机可以设置有光学系统18,例如但不限于,控制焦点、视野、放大倍率和/或类似参数的透镜的单眼系统。

可以分析通过这样的摄像机16捕捉的图像以呈现信息,例如分类、检测和/或定位与辅助和自主驾驶系统相关的图像中所描述的对象的信息。在一些示例中,这些信息可以与其它子系统的信息结合,子系统是例如但不限于雷达子系统12和/或激光雷达子系统14,从而提供冗余、填补空白和/或改进统计准确性。此外或可选地,为了实施信息辅助和/或自主驾驶系统,可以单独使用来自摄像机16的这样的信息。然而,在驾驶系统中应用这样的信息之前,可以通过处理从图形中提取该信息。

参照图2,示出了应用卷积神经网络(cnn)20处理来自摄像机16的图像22a。虽然若干不同的方法——从基于规则的方法到不同类型的机器学习方法——已经被用于图像分析,但近些年来所沉浸的最准确的方法涉及使用cnn20。在图2中描述了处于处理来自摄像机16的数字或数字化图像22a的各个阶段的示例cnn20。

cnn20可以在具有一个或多个卷积层26a-n的卷积部分24和神经网络部分28之间细分。在卷积部分24内的卷积层26n可以包括一个或多个子层。这样的子层的示例可以包括但不限于卷积子层30n、子采样子层32n和/或非线性子层34n,不一定是处理顺序。归一化层提供这种子层另外的非限制性示例。卷积子层30n、子采样子层32n和非线性子层34n中的每一个可以各自包括一个(但通常多于一个)的卷积神经元/节点36a-n、非线性神经元/节点38a-n和/或子采样神经元/节点40a-n。

以说明卷积部分24内的前馈的方式,示出了示例图像22a。通过cnn20处理的图像22a提供为了实施辅助和/或自主驾驶的目而被分类、检测和/或定位的停车标志、重要对象的低分辨率描述。向cnn20的输入层42a提供图像22a。

为了便于说明,示出具有交叉镶嵌的黑和白的简单灰度图像22a。在另外的示例中,图像22可以具有多个通道,如彩色图像的情况。例如但并非限制,图像22可以是红-绿-蓝(rgb)图像22或者针对yuv颜色空间编码的图像22。在这样的示例中,可以认为单独的图像22是三维矩阵,其中前两个维度被分配给像素的行和列,并且第三个维度被分配给颜色通道。能够明白的是,第三个维度同样可以用于其它类型的信息,例如使用多个摄像机16从多个角度捕捉道路场景情况下的立体信息。

关于第一卷积层26a,在第一卷积子层30a,第一子层30a内的每个卷积神经元/节点36a-n的不同单独子层过滤器或内核46a-n可以与图像22a-n卷积,第一子层30a的维度的二维权重/值比图像22a的维度的那些更小。神经元/节点36a-n的示例数量可以包括但不限于从四到四十的数值。在cnn20的训练过程期间,每个过滤器46a-n可以近似于被分类对象集合中的对象的约一个或多个特征,cnn20针对被分对象进行训练。由于可以通过将图像22a与第一层过滤器46卷积而使用卷积确定功能之间的相似处,因此可以产生特征图,该特征图表明在第一层过滤器46内表示的特征在图像22a的不同区域内出现的各种程度。

虽然可以在卷积神经元/节点36a-n应用不同形式的卷积,但在与图2描述的灰度图像22a一致的一些示例中,第一层过滤器46a-n中的每个权重/值可以乘以基础值,该基础值用于渲染其覆盖的图像22a,并且乘积可以在所得特征图中的单个单元内加和。因此,所得特征图内的每个像素可以视为图像22一部分的点积,该部分维度等于应用到其上的第一层过滤器46a-n的那些维度。

在计算第一层过滤器46a-n和图像22a的第一部分的点积之后,可以通过使第一层过滤器46相对于基础图像22a水平、竖直或两者滑动一个或多个像素,以及计算关于图像22a新的对应部分的另一点积来继续卷积,新的对应部分可以与第一部分重叠。对应卷积神经元/节点36可以继续计算点积,将点积在所得的特征图中以行和列排序直至第一层过滤器46已经应用于所有基础图像22a或在图像22包括多个信息通道情况下的所有矩阵22a。因此,在不填充并且第一层过滤器46a-n针对每个点积仅滑动一个像素的情况下,所得矩阵会使它的前两个维度等于基础图像/矩阵的维度减去第一层过滤器46的维度在每个维度再加一。

因此,相对于图像22a的维度,较小的第一层过滤器46可以利用图像22中相对高的局部信号相关性,而不需要承担整个大范围的低的相关性。此外,由于小的第一层过滤器46在图像22a上滑过,识别特征的能力定位不变。通过提供多个第一层过滤器46a-n,可以针对若干不同特征产生特征图。在图像22具有产生三维或更多维度矩阵的多个图像通道的示例中,第一层过滤器46a-n以及后续层过滤器46na-nn也可以设置为具有第三维度或更多。这样的三维过滤器46可以针对图像22的每个图像通道提供单独的二维过滤器。

在一些示例中,可以包括非线性子层32a以将非线性函数应用于卷积子层30a所产生的矩阵的数值中。所得的非线性容许另外的卷积层26b-n作出贡献,在前馈过程是纯线性的情况下可以不这样做。可以应用的这种函数的非限制性示例包括s形函数和/或双曲正切函数。

也可以应用第一子采样子层34a中的子采样神经元/节点40a-n。在一些示例中,这样的神经元/节点40a-n可操作用于实施最大值池(max-pooling),其中所得矩阵的单元集合被单个单元代替,该单个单元具有与单元集合中单元的最大值相等的值。然而,可以实施其它形式的池,例如但不限于平均值池。池化为单个单元的单元数量可以包括但不限于四个到一个、九个到一个、十六个到一个等。不但可以使用子采样子层34减少存储,它还可以提供局部的不变性和抗扰性。

在图2中示出了来自第一卷积层26a下游的卷积非线性映射以及子采样特征图48a-n的集合,采样特征图48a-n具有比初始图像22a的维度更小的维度。在该点上,cnn20可以通过包括多个卷积层26a-n来提供深度学习的优势。这些卷积层26a-n可以分层设置,以通过越来越高水平或更抽象的特征的存在来确定卷积子层30内的后续过滤器46。

关于卷积层26之间的神经元/节点的激活,由先前的卷积层26产生的特征图48可以激活后续卷积层26内的卷积神经元/节点。在一些示例中,来自先前的卷积层26的每个特征图48可以激活后续卷积层26的单独的卷积神经元/节点36。此外或可选地,在第一卷积层26a之后,所得的特征图48可以在后续卷积层26内结合。

可以在单个卷积神经元/节点30实施这样的结合,其中对应过滤器46可以具有至少三个维度,其中描述特征图48数量的一个维度被组合。可以认为这样的过滤器46具有容积。可以使用超过三个维度,例如但不限于如图像通道的属性。结合先前特征图所产生的特征图48可以描述来自各种先前过滤器46的特征可以在图像22的不同区域内被结合的程度。在来自先前卷积层26的所得特征图48被结合的情况下,来自先前卷积层26的所有的特征图48在后续特征图48中可以结合和/或先前特征图48的一个或多个子集可以在一个或多个后续特征图48中结合。在诸多示例中,扩展后续卷积层26内的卷积神经元/节点36的数量是有帮助的。然而,对于一些后续卷积层26而言,减少数量也是有帮助的。

卷积层26的数量可以变化,非限制性示例数量包括二到二十的数量,潜在地使卷积部分24成为深度网络。随着处理进展通过卷积层26,所得特征图48可以变得越来越小,接近它们卷积的过滤器46的大小。最后,在一些示例中,特征图48的迭代的高度、宽度或两方面的维度可以与它们所应用的过滤器46的那维度相等,产生标量和/或向量。同样地,在一些示例中,子采样子层32的结果是标量或向量。这样的标量和/或向量可以是卷积部分24的输出以及分类器/神经网络部分28的输入。

如同卷积部分24,层54a-n(也可以被称作隐藏层54a-n)的数量可以变化,非限制性示例数量包括二到十二的数量。同样地,如同卷积部分24内的非线性子层34,神经网络部分28内的隐藏层54a-n可以应用非线性函数。在神经网络部分28内,两个相邻的子层54可以完全连接,以使第一子层54a中的每个神经元/节点52的输出可以适当地计算权重和通信以激活第二子层54b内的每个神经元/节点52。

在这样的示例中,应用到第二子层54b内的每个神经元/节点52的输入的权重/值可以取决于第一子层54a内的初始神经元/节点52、被激活的第二子层54b内的神经元/节点52和/或两者。此外,偏置权重/值58可以被应用到一个或多个子层54。在一些示例中,一个或多个偏置值58也可以被应用在一个或多个卷积层26内。因此,在分类器部分28内从一个层54进展到另一个层54会引起后续层54中每个神经元/节点52处的非线性加权求和,偏置值58被加和到该和。除全连接层54之外或可选地,层54也可以以其它方式连接,例如但不限于,利用高斯类型连接。

通过神经网络部分28处理的结果可以被记录在输出层58内。输出层58可以提供若干输出节点60a-n,其中每个输出节点60提供概率值,该概率值表明图像22a描述位于类别/类集合的对应类/类别中的对象、标志、信号或类似项,cnn20针对该类别/类训练或cnn20针对其正在被训练。例如,分配给停车标志的类别/类的输出神经元/节点60a显示检验符号,概率值的符号表明图像22a描述停车标志,而在其它输出神经元/节点60n内的“x”表明可能没有描述与该输出神经元/节点60n相关的对象。

可以明白的是,cnn20的前馈所涉及的计算数量是相当大的。幸运的是,大部分计算是对浮点值执行简单的乘法和求和运算。此外,许多这些运算可以平行执行。因此,在一些示例中,具有大量浮点值运算的cnn20可以有利地在一个或多个图像处理单元(gpu)62上实施,图像处理单元可以具有一个或多个核,以利用这种处理器的平行处理和每秒高浮点运算(flops)能力。然而,如下文关于下列附图更具体地说明的,当除了提供分类功能之外,cnn20被用于提供检测和/或定位功能时,cnn20的计算强度会大大增加。

参照图3a,描述了道路场景图像的部分66。然而,与图2中处理的图像不同,在图2中可分类对象——即,停车标志——占该图像主要部分,图像部分66内受关注的可分类对象包括占据图像部分66更小扇区的交通灯68a-b以及行人70a。因此,当作为整体处理时,来自这种可分类对象的信号会被图像中的其它元素超越和/或另外不被检测到。

而且,为实施辅助和/或自主驾驶系统,不仅对象的检测和/或分类是重要的,而且对象在图像中的位置也是重要的。例如,行人70是否在车辆10路线的即将到达的部分内和/或接近该部分,该部分是被捕捉图像的部分,或者行人70安全地停留在边缘,这是至关重要的。然而,关于单个输入图像,cnn20的结构具有关于占图像主要部分的对象的检测和分类的准确度的跟踪记录,但cnn20的设计不适合定位对象。以重叠方式平铺在整个输入图像上的过滤器46特有的位置不变性(这非常有助于分类)使对象在图像中的相对位置变模糊。

通过带圆圈的数字1表示的第一种方法将滑动窗口72a应用于图像上方,应用该方法以克服定位对象中的这种限制,如图3a中描述的关于图像部分66的描述。该窗口72提取和/或分离图像的扇区74,滑动窗口72重叠在该扇区上方。为了实施对象检测和/或分类以及上文关于图2所描述的前馈路线,提取和/或分离的扇区74之后可以应用于cnn20。

之后滑动窗口72一次一个像素地水平或竖直滑动,并且之后提取和/或分离要处理的图像的另一扇区74,以使后续扇区74覆盖先前的扇区74,如通过图像上的扇区74的剩余轮廓示出的。滑动窗口72a继续该处理直至它已彻底覆盖该图片。以这种方式,无论对象位于图像中的什么位置,都可以被检测和分类。而且,与将窗口72a放置在其先前边界的相对侧相反,通过逐个像素地滑动,由这样的边界分割的对象的描述不会被遗漏。同样地,通过持续跟踪应用到cnn20的分离扇区74的坐标,被检测和分类的对象的图像中的相对位置可以由检测对象所在的扇区74的坐标获得。

可以明白的是,将每个重叠的扇区74单独应用于cnn20会使利用cnn20处理图像的现有计算强度运算增加若干数量级。在考虑到图3a中描述的图像部分66可能没有组成道路场景的全部图像时,该大量计算增加会进一步突出。而且,根据透视规律,由于被检测的可分类对象的比例会基于对象相对于摄像机16的距离而减小或增大,因此通常需要应用多个不同尺寸的窗口72a-n,每个窗口都单独提取要被处理的自身的扇区74的组。

例如,图3a中示出的第一窗口72a可以大到足够检测和分类行人70a,但它对于检测和分类交通灯68a、b而言太大。第二窗口72b可以被应用于检测交通灯68a、b,但它对于检测行人70a而言太小。因此,需要应用多个窗口72a-n。

因此,该第一种方法虽然详尽,但其不仅计算强度大,而且非常耗时,如通过时钟图标表明的。相比之下,人眼和大脑可以在十分之一秒内处理道路场景的要点,给驾驶人员时间以针对道路场景中的对象作出反应和/或响应。辅助和/或自主驾驶系统同样需要在这样的时间尺度获得信息,从而对迎面而来的道路场景中重要的快速接近对象作出响应。每秒处理十五到三十张图像(图3a中示出的了该图像的仅一部分66),根据第一方法对于满足辅助和/或自主驾驶系统的需要而言是不可行的。

参照图3b,示出了第二方法,通过带圆圈的数字二表示。根据第二方法,环境信息依靠减少应用到cnn20的图像提取和/或分离区域74a-n所用的位置、密度和/或比例。例如,从图像提取和/或分离的扇区74的数量和/或不同比例在图像的上部区域可以大大减少,上部区域通常被天空占据。此外,这种方法可以专注于车辆正前方的区域,或紧邻的侧方区域,给更靠近边缘的区域减少的注意力。

然而,虽然该第二方法可以大大加快图像处理速度,但如此做会有不可接受的代价——使图像视场内的许多空白点漏报,即,在对象实际上存在时错误地确定对象不存在。例如,在车辆下坡前进的情况下,图像的部分通常会集中到描述道路场景的空中,道路场景的上部是重要的。通过另一示例的方式,对于对象从侧方缓慢接近而言不重要的周边部分在对象从侧方快速接近的情况下是非常相关的。在另外的反映中,可以产生若干其它示例。

同样地,甚至是在这样的背景方法分离和/或提取应用于cnn20描述可分类对象的区块74的情况下,被提取部分的大小不足以和/或无法恰当地定位以分离足够量的被描述区域。例如,图3b描述了一系列的区块74c-f,该区块是从图像部分66分离的,其中例如但不限于来源于图像部分66内先前图像处理和/或相关位置的环境信息表明对应于邻近车道或相邻的路缘以及人行道。第一组三个区块74c-e的处理恰好表明行人不存在,如通过复选标记符号和减号示出的。

然而,最右侧区域74f产生漏报,如通过禁止圆圈示出的。最右侧区块74f对于捕捉描述行人的图像部分66的区域而言不仅看起来太小,而且它也定位不当,导致不能捕捉到行人的头部、胸部、后侧手臂以及后侧腿。最右侧区块74f内的分类进一步因交通灯柱76的存在而复杂化。而恰当地设置尺寸和定位的图像会产生正确位置处的行人70a的阳性检测和分类,第二方法产生危险的漏报。即使第二方法能够检测和分类行人70,不当定位区块74f会提供令人误解的位置信息。

虽然图3b中的第二方法可以使用于提供分类、检测和/或定位信息的图像处理速率加速到足够快地容许响应,但如此做会具有不可接受的准确性的代价。可以例如通过激光雷达子系统14来检测行人70a。然而,摄像机16和成像系统未能提供请求的冗余度和/或实现统计水平确定性所需的用于提供完整性以及用于填充其它子系统12、14的空白的能力,该统计水平确定性是辅助和/或自主驾驶系统所需的。

如同图3b,示出了第三方法,其中通过应用网格80将图像或图像的部分66细分成不同的网格单元78。应用于图3a中图像部分66的网格80包括四行和四列,产生十六个网格单元78。在第三方法中,网格单元78可以完全跨越图像,以考虑该图像整体。同样地,在该第三方法中,cnn20的输出层58内的输出60可以等于网格单元78的数量,每个输出60表明行人70是否存在于对应网格单元78内。在图像处理期间,可以利用应用到不同网格单元78的不同过滤器46来同时处理网格单元78,以加速处理。通过在分类器的神经网络部分28中应用全连接层,可以通过其它网格单元78的环境信息获知一个网格单元78的输出60。

在训练期间,与使用对象的裁剪图像相反,其中训练网络以分类、检测和/或定位该对象,在与第三方法类似的方法中,训练发生在更大环境的图像上,在该环境中如行人的一个或多个可分类对象可以占据训练图像的仅一小部分,该部分与一个或多个网格单元78相配。可以按照图像所描述的可分类对象以及图像所描述的网格单元是哪个网格单元78两者来标记这样的图像。此外,开销会涉及通过移动和/或重新配置初始训练数据集合中的图像产生不同的带标记的数据集合,以使其中的可分类对象可以出现在不同的网格单元78内。

当应用到测试图像时,对应输出60表明可分类对象存在的网格单元78可以用作应用到一个或多个另外的分类器的候选区。可以利用包括裁剪图像的图像来训练应用到单个网格单元78的第二分类器,裁剪图像由可分类对象占主要部分。可以按照图像描述的可分类对象来标记这样的训练图像,其需要分类标签的不同系统。

同样地,在如行人70的对象位于网格单元78的交叉处的情况下,第三方法是有问题的。例如,虽然第八个网格单元78f覆盖了所示行人70a的大部分,但它也通过排除行人70a的腿而将行人70a截断。网格单元78与所示对象之间的这种不一致在对象分类、检测和/或定位上产生问题。如图3b所示的另一示例问题,如果所示的可分类对象——例如行人70a——是不同的比例,例如行人70a延伸到第八个网格单元78f之外,那么分类器不能很好地训练用于分类、检测和定位所示对象。

因此,为了利用cnn20最新实现的精确性来改进辅助和/或自主驾驶,需要新的方法。这样的方法需要同时准确、详尽并且以容许辅助和/或自主驾驶及时响应的速度提供分类、检测和定位信息。这样的方法应该不在乎可分类对象的描述的相对位置和/或比例而以同等的可靠性执行。尽管达到可接受精确度所用的训练图像数量大,但该方法应该在低开销以及易于微调的训练时间下训练。

通过提供满足这些要求的示例性方法的简要概况的方式,可以实施分层、多级方法。这种方法中的级别可以包括低保真分类器和高保真分类器两者。低保真分类器可以实施在处理器集合上,在本发明中也可以称作处理器集。如本发明所使用的,术语集合和子集合可以包括任何数量的元素,包括单个元素。低保真分类器可操作为从跨越图像的下采样版本的重叠区域集合中选择一个或多个候选区域,重叠区域集合在本发明中也称作区域集合。

可以由固定在机动车辆上的捕捉道路场景的摄像机16来提供图像。在确定描述如行人70或交通标志的被分类对象的候选区域时,低保真分类器可以选择一个或多个候选区域,低保真分类器针对被分类对象而进行训练。这样的多级方法也可以包括高保真分类器,高保真分类器也可以实施在处理器集合上。

高保真分类器可操作用于验证一个或多个小片中的被分类对象的描述。可以从低保真分类器选择的候选区域将小片映射到高保真版本的图像。高保真分类器也可以被训练用于分类、检测和/或定位被分类的对象,但其具有更高的保真度。因此,高保真分类器验证从候选区域映射的小片中的被分类描述,高保真分类器在候选区域中表明描述。

在这样的方法中,低保真分类器可以包括利用下采样训练集合训练的第一cnn20。下采样训练集合可以包括对象图像的多个被标记的下采样版本,该对象位于表征被分类对象的类别中。被标记的下采样版本可以具有与区域集合中的区域的尺寸相称的尺寸。类似地,高保真分类器可以包括第二cnn20。利用高分辨率训练集合来训练该第二cnn20,高分辨率训练集合包含在该类别中的对象的图像的多个被标记的高保真版本。

在一些示例中,下采样训练集合中的至少一些下采样版本可以被下采样到最低分辨率,在该分辨率时下采样版本中的熵保持高于阈值,该阈值是相对于该类别中对象的初始图像中的熵所限定的。在一些但不一定是所有这样的示例中,熵的预定百分比可以来自于以百分之八十为中心并且在百分之八十以上和以下扩展百分之五的范围。

关于测试图像,与用于训练第一和第二cnn20的图像相反,在一些示例中,下采样模块也可以实施在处理器集合中。下采样模块可操作为以下采样因子产生来自固定在机动车辆上的摄像机16的图像的下采样版本。在该示例中,下采样因子可以被确定用于在下采样版本中保留来自摄像机图像中的预定百分比的熵。

此外或可选地,一些示例可以包括窗口模块,窗口模块可以实施在处理器集合上。窗口模块可操作用于从测试图像的下采样版本中分离重叠区域。为了产生区域集合,这样的重叠区域可以具有窗口所框定的尺寸,该窗口滑动完全跨越下采样版本。之后窗口模块和/或低保真分类器可以将区域集合的重叠区域应用到低保真分类器。关于高保真分类器,一些示例可以包括映射模块,映射模块可操作用于将来自图像下采样版本的一个或多个候选区域映射到图像高保真版本中的一个或多个小片中。如此,候选区域和小片可以在下采样版本和高保真版本中分别覆盖图像的共有扇区。

能够明白的是,与本发明所公开的元素相关说明的多数结构和功能可以通过模块来设置。模块可以采用完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或软件与硬件方面结合的实施例的形式。而且,当前所述主题的若干方面可以采用嵌入在任何有形表达介质中的计算机程序产品的形式,该计算机程序产品具有计算机可用的程序代码。

关于软件方面,可以使用一种或多种计算机可用或计算机可读介质的任何组合。例如,计算机可读介质可以包括便携式计算机软盘、硬盘、随机存取存储器(ram)装置、只读存储器(rom)装置、可擦除可编程只读存储器(eprom或闪存)装置、只读光盘存储器(cdrom)、光学存储装置和磁性存储装置中的一种或多种。在选定的实施例中,计算机可读介质可以包含任何非暂态介质,该非暂态介质包含、存储、传送、传播或传输由指令执行系统、装置或设备所使用或与其结合使用的程序。

可以通过一种或多种编程语言的任何组合来编写用于实施本发明的运算的计算机程序代码,编程语言包括如c++的面向对象的编程语言以及如“c”编程语言的常规程序的编程语言或类似编程语言。与软件一起实施的模块方面可以在微处理器、中央处理单元(cpu)和/或诸如此类上执行。模块的任何硬件方面可以被实施用于与软件方面交互。

能够明白的是,上述概括并非详尽了该方法涉及的创新点。下文说明了该方法的若干另外方面。与下列附图相关地更详细地说明该新方法中所使用的用于实施训练低保真分类器的数据集合。

参照图4,示出了存储在一个或多个数据库84a内的第一数据集合82a的方面,其用于满足上文说明的要求的多级分层方法中的第一级的训练。数据库84可以存储在一个或多个物理存储介质中,例如但不限于本发明下文所说明的那些。该第一级可以是实施为cnn20的低保真分类器。在本发明中也被称作下采样训练集合82a和/或下采样集合82a的第一数据集合82a可以由图像对象的版本86组成。

下采样训练集合82a可以包括描述类别的集合中的对象的图像88a-n的多个裁剪的带标记的下采样图像/版本86a-n,低保真分类器针对该类别而训练以执行分类、检测和/或定位功能。在图4中,训练图像90a视野中与道路场景图像90a的裁剪部分88a相关的区块(section)92a、区域region)92a或区(zone)92a相关的尺寸描述了被分类对象94a(为了说明的目的而扩大了裁剪部分88a),被分类对象94a即停车标志94a。在一些示例中,可以通过将被分类对象94框定在训练图像90内以在图像90中占主要部分来实现裁剪。

同样在图4中描述的是,可操作用于下采样98a训练图像90a和/或下采样98b裁剪部分88a的分辨率模块96。在图4所示的示例中,分辨率模块96可以相对于每个维度通过四的下采样因子来下采样98。然而,能够明白的是,与给定的一个维度或两个维度相关的因子可以改变。

通过给出用于确定这种因子的指导示例的方式,第一数据集合82a内的下采样图像86a-n可以包括完全下采样图像86,完全下采样图像86下采样98到极限分辨率。分辨率模块96可以将极限分辨率应用和/或计算为相对于初始裁剪图像88a能够保持熵的至少预定百分比的分辨率的下限,对应下采样图像86a/n由初始裁剪图像88a产生。在一些示例中,该极限分辨率可以取决于下采样被裁剪图像88的大小或比例。

换言之,本发明所应用的方法可以包括计算最大因子,利用该最大因子能够下采样图像88以产生下采样图像/版本86,同时将下采样图像/版本86的熵与初始图像88中的熵的比率值保持在预定阈值水平之上和/或保持熵的绝对值,该绝对值依赖于比例。如通过下采样图标(该图标具有从圆形周边向内辐射的箭头)示出的,在一些但不一定是全部这样的示例中,熵的预定百分比可以来自以百分之八十为中心并且在百分之八十以上和以下扩展百分之五的范围。

此外,为了训练的目的,每个裁剪的下采样图像86a-n可以标记为具有分类所示对象94的对应标签100a-n。虽然图4中的全部标签100a标识相同的类,即停车标志,但标签100a可以来源于更广泛的标签集合102a。该更广泛的标签集合102a可以包括在更广泛的检测类别集合中的若干不同类型对象94的标签100。这种类的示例可以包括行人70、行人70的不同类型(如儿童)、动物、车辆、交通标志、道路标记、路缘边界和/或与辅助和/或自主驾驶系统的决策程序相关的任何其它对象。

因此,收集图像82a的训练集合可以包括收集描述位于各种位置行人70的图像88的集合以及图像82a的集合内所包括的环境。在这样的示例中,可以根据检测类别集合中的共有类别来完成标记训练集合82a的图像。在描述不同相对距离、描述不同尺寸的尽可能多的被分类对象94中,可以针对检测对象集合中对象的一个或多个类别利用不同图像、或版本、尺寸或比例来训练低保真分类器和/或高保真分类器。收集图像82的训练集合可以包括针对不同类别和/或在检测类别集合的相同类别内以一个或多个图像尺寸的集合来裁剪被分类对象94图像88的集合。因此,图4描述了以不同图像尺寸或比例裁剪下采样图像/版本86a/n。

不同图像尺寸或比例可以对应于不同分辨率。因此,在一些示例中,可以针对不同版本/图像尺寸或比例来产生不同图像/版本86,对于共有的检测类别通过进一步下采样104以进一步降低分辨率。图4描述了第一下采样版本86a,该版本被进一步下采样104以产生裁剪图像88a的进一步下采样版本86n。进一步下采样版本86n可以代替下采样图像100a的新的部分106a处描述的相同停车标志94a的描述,该部分对应于与摄像机16更大的相对距离并且通过透视规律相应地减小。

参照图5,进一步说明了使用低保真数据集合82a来训练低保真分类器108a。低保真分类器108a可以包含cnn20a。低保真分类器108a是利用cnn20实施的低保真分类器108的简单象征并且为了便于说明,仅在三的过滤器深度情况下仅利用单个卷积层26来说明。然而,在低保真分类器108的实际实施中,关于图2所述的cnn20的全部可能性——包括神经网络部分28——对于低保真分类器108都是开放的。

可以利用被标记图像82a的下采样集合以及其中的许多裁剪的下采样标记的图像/版本86a-n来实现低保真分类器108a的训练。裁剪的下采样标记的图像/版本86a-n的数量可以从几千变到几百万。因此,用于图像分类、检测和/或定位的cnn20的先前应用需要从几天到几周以及甚至是在超级计算机上的几个小时的测量的训练时间。

图像/版本86被应用到低保真分类器108a的速度确定低保真分类器108a的不同配置是否可行和/或更新配置、重新训练和/或微调低保真分类器108a是否可行。通过使用下采样的图像/版本86,将图像/版本86前馈110到低保真分类器108a所需的计算量可以降低几个数量级,例如但不限于从几百万降低到几千。作为结果,将数据集合82a应用到低保真分类器108a的时间可以从几周减少到几个小时,容许在更宽泛的可能结构中实施低保真分类器108a、重新训练和/或微调以产生更准确的结果。

通过说明的方式,来自下采样集合82a的第一下采样图像/版本86a可以被前馈110a穿过过低保真分类器108a,从输入层42b到输出层58b。虽然图5中示出了仅单个输出60aa,但如关于图2所述,输出层58b可以包括任何数量的输出60aa-an。每个输出60可以对应于来自类别集合的不同类别,低保真分类器108针对该类别进行训练。而且,每个输出60可以表明关于被前馈110到低保真分类器108的图像/版本86是否描述了被分配给输出60的类别内的被分类对象94的可能性。

在图5提供的说明中,第一图像/版本86a已经被前馈110a穿过低保真分类器108。然而,被分配给交通信号或更具体地是停车信号的被描述对象94a的类别的输出60aa没有表明第一下采样图像/版本86a描述了停车标志94a。如上文所述,可以根据检测类别的集合利用分配给图像/版本86的标签100来分类图像82a集合中的图像/版本86。

因此,可以利用标签100将监督学习方法实施到用于训练低保真分类器108a的机器学习。例如,可以通过将输出60aa与标签100a比较112a来发现和使用不正确的结果进一步训练低保真分类器108a,通过“x”字符将输出60aa表示为未发现说明的概率,标签100a对应于第一版本/图像86a。不正确结果60aa表明低保真分类器108a的元件——例如但不限于过滤器46-1a到46-1n、隐藏层54以及偏置值56——需要进一步另外的调整。可以通过应用错误方法的向相反方向的传播114——这里被称作反向传播114——来确定这样的调整。

可以包括一个或多个gpu62的一个或多个处理器可以通过应用优化方法跨越低保真分类器108a从输出层58b到输入层42a地实施反向传播114a。优化方法可以涉及执行函数。在一些示例中,可以通过最小化或最大化执行函数来训练低保真分类器108a,以示例而并非限制的方式,执行函数可以是由标签100a表明的结果与输出60aa的实际概率之间的平方差的一半,如在最小二乘法中的情况。在一些示例中,1和0的二进制数值可以分别分配给相关对象的描述以及缺乏这样的描述或反过来,如通过对应标签100示出的。

如关于图2所说明的,可以将平滑的非线性函数40a-n、52a-n应用于贯穿低保真分类器108a的所有权重/值,执行函数的导数可以用于表明方向和调整权重/值以最小化执行函数的相对量。因此,可以将优化方法作为梯度下降/上升方法来实施,例如随机梯度下降/上升法。然而,由于执行函数高的空间维度,低保真分类器108a中的大量可调整权重/值使微分问题复杂化。

反向传播114根据低保真分类器108a中的各种可调整权重/值的偏导数来提供微分执行函数的方法。按照反向传播114,为了发现与给定可调整权重/值相关的执行函数的偏导数,可以应用链式规则。在应用链式规则发现给定可调整权重/值的偏导数时,与给定可调整权重/值相关的偏导数乘以任何输入的偏导数,产生给定可调整权重/值和输出60aa之间的执行函数。

在计算可调整的权重/值的偏导数中,通过从输出层58b向输入层42b的逐层反向工作,因此反向传播114可以重新使用来自前一层的偏导数的计算。更具体地,当应用链规则并且寻找目标可调整权重/值和输出60之间的所有中间偏导数的乘积时,反向传播114可以使用偏导数的这些计算。换言之,针对层中的每个神经元/节点的可调整权重/值,为了防止明显超出最终答案,通过计算调整来继续反向传播114,该调整通常通过速率因子来缩放。

反向传播114可以开始于最靠近输出层58b的层,例如隐藏层54。可以通过计算下一个最接近的层中的每个神经元/节点中的权重/值来继续反向传播114,直到到达输入层42b。之后所计算的调整可以应用于重新计算的它们的对应可调整权重/值和执行函数。之后,反向传播114迭代该过程直至执行函数被充分减小和/或放大。由于该过程的迭代性质,通过利用用于训练的下采样图像/版本86实现的计算和时间的节省针对训练所用的每个图像/版本86乘以所需迭代数以及训练集合82a中的图像/版本86的数量。

而神经网络部分28内的每个神经元/节点会涉及在卷积部分24的卷积子层30内相对于单个可调整权重/值取动作函数的偏导数,每个神经元/节点36根据其相应的过滤器46呈现具有多维变量矩阵的动作函数。当对卷积子层30应用反向传播114时,可以相对于对应过滤器46的每个索引的可调整权重/值取卷积函数的偏导数。

一经减小或放大执行函数之后,另一图像/版本86n可以被前馈110b穿过低保真分类器108a,以提供进一步的训练。如所示的,另一图像/版本86n可以具有不同比例。如通过第一和第二图像/版本86a/n的两个放大示例示出的,比例不同也是相对于所示的被分类对象94a的分辨率的不同。

首先,可以随机选择低保真分类器108a内的各种可调整权重/值,可以基于其它网络训练来初始化各种可调整权重/值和/或可以基于各种图像处理技术来初始化各种可调整权重/值。同样地,在一些示例中,可以通过无监督学习过程来确定一个或多个层。可以以类似的方式来训练高保真分类器,如参照下列附图中所说明的。

参照图6,在高保真分类器116a的训练环境中说明了高保真分类器116a,高保真分类器可以用作多级图像分析系统中的第二级。其中如上文所述,低保真分类器108训练所针对的下采样图像86a-n在训练过程期间提供速度和灵活性并且在以第一级别分类、检测和/或定位第一道路场景图像中的对象94期间提供速度和广泛的覆盖范围,而高保真分类器116可以被训练用于以第二级别提供改进的精确性,以实现没有或基本上没有遗漏和没有假警报的准确性目标。同样地,由于利用高保真分类器116提供另外的准确性,可以针对关于低保真分类器108所选定的候选区域的高召回率和/或灵敏度训练低保真分类器108,信任高保真分类器116以移除不相关的候选区域。

如同低保真分类器108a,高保真分类器116a可以实施cnn20。同样地,图6中的高保真分类器116a是简单的符号并且因此为了便于说明在仅三个过滤器46-2a到46-2n情况下仅利用单个卷积层26说明。再次地,实际的高保真分类器116可以实施关于图2说明的用于cnn20的任何可能的组合,包括神经网络部分28。由于高保真分类器116发挥不同的作用,高保真分类器116和低保真分类器108的具体结构可以变化或不变。

此外,由于不同的作用,利用第二cnn20的高保真分类器116a可操作用于在第二数据集合82b上训练,第二数据集合82b与被用于训练低保真分类器108a的第一数据集合82a不同。第二数据集合82b——在本发明中也被称作高分辨率训练集合82b或简单地称为图像集合82b——可以包括图像88a-n。这些图像88a-n也可以被裁剪。然而,相对于被用于训练低保真分类器108a的第一数据集合82a中的图像/版本86a-n,这些图像88a-n也可以保持在更高的分辨率和/或保真度。在针对多种不同尺寸和/或比例而训练高保真分类器116a的一些示例中,更小尺寸/比例的图像88的分辨率可以小于第一数据集合82a中的更大比例的图像/版本86的分辨率。然而,在共有尺寸/比例下,第二数据集合82b中图像被设置为比第一数据集合82a中的那些更高的分辨率。

在一些示例中,第二数据集合82b中的图像88a-n可以包括与用于产生第一数据集合82a相同的图像88a-n,但没有下采样98和/或具有较少的下采样98。此外或可选地,第二数据集合82b可以包括新的和不同的但可比的图像88,为了训练高保真分类器116a而选择该图像88。为了继续并且使高保真分类器更好地检验低保真分类器108a所选择的候选区域,第二数据集合82b中的图像88可以利用标签100来标记,标签100来自与关于第一数据集合82a所用的那些标签相同的标签集合102a。

当在第二数据集合82b上训练时,高保真分类器116a可以与标签集合102相关地在高保真下重新分类道路场景图像区域,该区域覆盖区块、可能的区域和/或由低保真分类器108a选定的候选区域。以这种方式,可以使用高保真分类器116a确认根据标签集合102a分类的对象94的描述。由于增加的分辨率,高保真分类器116a的训练时间会增加,但仍可以在相对容易的情况下通过低保真分类器108a作出调整和微调。

为了说明训练过程,示出了来自第二数据集合82b的示例图像88a。第二数据集合82b可以存储在与第一数据集合82a相同的数据库集合84a或不同的数据库集合84b中。如同在低保真分类器108a的说明中说明的图像/版本86a/n,针对停车标志94a的可分类对象94利用标签100a标记图像88a。

图像88a可以被前馈110c通过高保真分类器116a从输入层42c到达输出层58c,这可以提供图像88a描述被分配给输出层58c的一个或多个节点60ba-bn的一个或多个可分类对象94的概率。如同低保真分类器108a,如果该概率和通过标签100a表明的数值之间的差在可接受量以上,那么可以应用上述反向传播114b过程。可以实施和/或迭代反向传播114,直至解决任何显著的差。在该点,来自数据集合82b的接下来的图像88可以被前馈110通过高保真分类器116a并且重复该过程。再次地,裁剪的被标记图像88a-n的数量可以从几千变到几百万。

在第二数据集合82b和/或候选扇区/区域/范围中的高分辨率可以提供另外的信息,利用该信息以改进在道路场景图像上实施检测、分类和/或定位的准确性。然而,由于来自道路场景图像的候选区域的数量被低保真分类器108a限制,在没有导致过高量的计算和/或时间的情况下,为了实施辅助和/或自主驾驶应用,高保真分类器116a可以被包括在多层多级系统中。因此,一经低保真分类器108a和高保真分类器116a被训练,就可以为了实施辅助和/或自主驾驶应用而应用低保真分类器108a和高保真分类器116a分类、检测和/或定位图像中被分类的对象94。

参照图7,示出了下采样模块118。下采样模块118可以实施在处理器集合和/或不同的处理器集合上。下采样模块118通过将图像122下采样98为图像122的下采样图像/版本120来产生来自固定在车辆上的摄像机116的图像122的下采样版本120,摄像机116捕捉迎面而来的道路场景。一经下采样,就可以利用图像分析系统的低保真分类器108a来分析下采样图像/版本120。

如同下采样训练集合82a,在一些示例中,确定关于任何或全部维度的因子以用于保持下采样版本120a的熵相对于来自摄像机16的图像122a的熵的预定百分比、比率或绝对值,下采样模块118可以利用该因子下采样98c道路场景图像122a。再次地,熵的预定百分比可以来自以百分之八十为中心并且在百分之八十以上和以下扩展百分之五的范围。在一些示例中,可以将该因子确定的尽可能的高,同时将下采样版本120a中的熵保持在一定比例或绝对值的预定阈值之上。

在图7示出的示例中,初始道路场景图像122a具有1280乘以960的分辨率尺寸,但任何数量的不同分辨率是可行的。由于利用因子四下采样98c道路场景图像122a,下采样版本120a具有320乘以240的分辨率。然而,再次地,对于下采样版本120a而言,任何数量的不同下采样因子和/或分辨率是可行的。为了道路场景图像122a和下采样版本120a两者中捕捉的视野的快速和广泛和/或详尽的初步分析,下采样版本120a可以被反馈到低保真分类器108a的输入层42b。

如所示的,捕捉的视野可以变化。以示例但并非限制的方式,在图7中示出了相对于七十度和八十度的方位角的视角限定的可能的视野。其它非限制性示例可以包括十五度和三百六十度。也可以利用相对于竖直维度成类似的各种视野角度来限定可能的视野。

同样在图7中示出了下采样版本120a的一部分124a,该部分描述一些迎面而来的道路场景。在一些示例中,整个下采样版本120a可以作为一系列重叠的子区域反馈到低保真分类器108a的输入层42b。在其它示例中,下采样版本120a的任何数量的不同重叠部分124可以被反馈到不同示例的低保真分类器108a以同时处理。不同重叠部分124可以在每个尺寸上重叠多个像素,该尺寸对应于低保真分类器108a中的最大过滤器46在对应尺寸上的多个单元,以使整个下采样版本120a被处理,如同在单个示例低保真分类器108a上并且没有分割地处理,分割是如同关于图3b所述的现有技术的方法中的。所示部分124a是九十六个像素乘以九十六个像素的尺寸,但任何数量的不同尺寸是可行的。

参照图8,示出了提取的重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n(在本发明中也被称作区块和/或范围)的集合,其覆盖下采样版本120a。为了便于说明,示出了下采样版本120a的部分124a而并非是整个下采样版本。然而,为了说明的目的,可以将下采样版本120a的部分124a看作是下采样版本120a的代表。

重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n可以由一个或多个滑动窗口128a-n限定,滑动窗口128a-n具有与不同组的重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n的尺寸相等的尺寸。一些示例可以包括位于与低保真分类器108a相同的处理器集合或另一处理器集合上的窗口模块130和/或应用模块132。窗口模块130可操作用于从下采样版本120a中分离重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n,如能够针对区域集合——在本发明中也称作重叠区域集合、重叠区块集合和/或缩放区域集合——利用至少一个窗口128a-d完全跨越下采样版本120a滑动134来框定。

窗口模块130可以将重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n应用136到低保真分类器108a。类似地,在可选示例中,应用模块132可以通过将低分辨率图像120a的重叠区域126-1a到126-1n、126-2a到126-2n、126-3a到126-3n、126-4a到126-4n应用136到低保真分类器108a来彻底检查134低分辨率图像120a捕捉的全部视野。由于区域集合的每个区域126被应用136到低保真分类器108a,因此在它被前馈110通过低保真分类器108a时与过滤器46-3a到46-3n卷积138。

为了产生应用136于低保真分类器108a的区域集合,窗口模块130和/或应用模块132可以使窗口128从第一区域126以预定步长滑动134跨过下采样版本120a和/或下采样版本120a的部分124a。该步长可以是水平、竖直或两者都有的一个像素。然而,只要步长间存在足够的重叠以使被分离区域126内的可分类对象94居中并且准确地定位该对象,每个步长中不同数量的像素也是可行的。在一些示例中,可以使用环境信息来改变下采样版本120a和/或它的部分124a的不同区域的步长。区域(region)126、区(zone)126和/或区块(section)126可以被分离和/或包括在来自每个位置的区域集合中,滑动窗口128存在于该位置。因此,在给定窗口尺寸的区域集合内的区块126的数量可以等于下采样版本120a和/或它的部分124a尺寸减去窗口128的对应尺寸在每个维度上再减去一所得的乘积。

因此,通过因子四下采样98可以将应用到低保真分类器108a的区域的数量从尺寸为1280乘960的道路场景图像122a的1228800减少到76000,或减少两个数量级,其中在图像边界应用零填充。如果尺寸为九十六乘九十六的部分124被应用到多个示例低保真分类器108a,被应用136的区域126的数量可以减少到9216。可以明白的是,这样的减少大大加速了分类、检测和/或定位可分类对象94的过程。在多个不同尺寸或比例的滑动窗口128a-n被应用到下采样版本120a和/或部分124a时,尤其如此。

在这样的示例中,第一窗口128a可以具有第一尺寸集合,第一尺寸集合与第二窗口128b的第二尺寸集合不同。第一窗口128a、第二窗口128b和/或另外的窗口128c、n可以各自滑动134跨越下采样版本120a和/或部分124a。在该示例中,第一尺寸和第二尺寸和/或任何另外滑动窗口128c、n的尺寸可以对应于不同比例,在图像122a的下采样版本120a中可以以该比例潜在地描述和检测该类别的集合。换言之,窗口模块130和/或分离模块132可以从下采样图像120a或它的部分中分离缩放区域的集合,其中缩放区域集合中的缩放区域126具有与第一滑动窗口128a的尺寸不同的尺寸并且与缩放滑动窗口128b的缩放尺寸相称。

在该示例中,区域集合可以包括不同尺寸/比例的多个子集合,例如具有与第一尺寸相称的尺寸的第一重叠区域126-1a到126-1n的第一区域子集合,以及具有与第二尺寸相称的尺寸的第二重叠区域126-2a到126-2n的第二区域子集合。同样地,在一些但并非全部这样的示例中,下采样训练集合82a可以包括第一下采样版本86的第一下采样子集合,该子集合具有与第一尺寸相称的尺寸。下采样训练集合82a也可以包括具有第二下采样版本86的第二下采样子集合,该子集合具有与第二尺寸相称的尺寸。如关于下列附图中所说明的,低保真分类器108a可以从潜在描述可分类对象94的区域集合选择一个或多个候选区域。

参照图9,示出了多层多级图像分析系统140。图像分析系统140可以包括低保真分类器108a,低保真分类器108a之后是高保真分类器116a。在一些示例中,多级图像分类系统140可以包括摄像机16连同处理器集合142上的低保真分类器108a和高保真分类器116a两者。在一些示例中,一个或多个gpu62b可以被包括在处理器集合142内,处理器集合142实施低保真分类器108a和/或高保真分类器116a。

如关于第一幅图所说明的,可操作为安装在机动车辆10上的摄像机16可以如此安装以捕捉一系列的道路场景图像122。这样的摄像机16可以以满足预定阈值的帧速率捕捉迎面而来的道路场景的一系列的图像122。预定阈值可以包括上文关于图1讨论的任何示例。

此外,系统140可以包括图像队列144,图像队列144可以被实施为(但不限于)缓冲器集合,图像队列144可操作为使由摄像机机16捕获的迎面而来的道路场景的一系列图像122按顺序排队。同样,在一些示例中,该系统可以包括下采样模块118,其可操作用于将道路场景图像122下采样98d为低分辨率图像/版本120。在一些示例中,图像队列144可以排队直接来自摄像机16的图像122。在其它示例中,如图9所示的示例,图像队列144可以存储图像122的下采样版本120。此外,一些示例可以提供直接来自摄像机16的图像122的图像队列144的部分以及下采样版本120的另一部分。

一经道路场景图像122a或它的部分124a的下采样版本120b被前馈110d通过低保真分类器108a,低保真分类器108a就可以从重叠区域集合选择一个或多个可能的区域146a-n,该重叠区域集合是由窗口模块130和/或聚合模块132分离/提取的。

可以利用卷积神经网络(cnn)20实施的低保真分类器108a可以被训练或可操作用于在第一数据集合82a上训练,以相对于标签集合102a分类一个或多个区块144,区块144来自道路场景图像122的跨越下采样版本120或它的一部分124的重叠区块126a-n的集合。因此,低保真分类器108a可以选择一个或多个可能的区域,低保真分类器108a针对该区域表明存在属于可被低保真分类器108a分类的对象类别的对象94存在的概率。在一些示例中,应用模块132可操作用于记录潜在区域146a-n的集合,其中低保真分类器108a识别根据标签集合102a可分类的对象94的潜在说明。在低保真分类器108a针对多种尺寸或比例进行训练的示例中,低保真分类器108a可以从缩放区域集合中选择缩放区域146n,其中低保真分类器108a表明可被低保真分类器108a分类的缩放对象94存在的概率。

之后,多级系统140可以将低保真分类器108a选定的一个或多个可能的区域1446a-n或候选区域146a-n前馈110e通过高保真分类器116a。在将候选扇区146a-n应用于可以实施第二cnn20的高保真分类器116a表明一个或多个候选扇区146a-n中存在一个或多个可分类对象94的情况下,高保真分类器116a可以确定一个或多个对象94的存在。在候选区域146a-n包括多个尺寸/比例和/或针对多个尺寸/比例而训练高保真分类器116a的示例中,高保真分类器116a可以确认缩放对象94的存在,其中应用110e候选缩放扇区146n产生缩放对象94存在的概率。在一些示例中可以包括确定模块148,确定模块148可操作为通过将高保真分类器116a应用到候选区域146a-n的集合来确定被确认的区域集合。

多级系统140可以是多层的,以在候选区域146a-n被应用到高保真分类器116a之前先使低保真分类器108a选择候选区域146a-n。然而,在低保真分类器108a已经发现至少一个候选区域146的一些示例中,低保真分类器108a可以继续搜索低保真分类器108a还未针对一个或多个另外的候选区域146而应用到的重叠区域集合中的区域126。同时,高保真分类器116a同时可以通过将对应于先前发现的至少一个候选区域的一个或多个扇区应用于高保真分类器116a来确认一个或多个对象94的存在或描述。

此外,图像分析系统140可操作为通过在一系列图像中的单个图像122上应用上述技术以同样满足预定阈值的处理速率来处理一系列的图像。如所述的,预定阈值可以设置为针对机动车辆10对一系列图像中的分类信息的预定辅助和/或自主响应提供足够的时间。低保真分类器108a和高保真分类器116a中的一个或两个的参数可以被设置为相对于至少一个gpu62b和/或处理器集合142的计算能力而限制低保真分类器108a和/或高保真分类器116a的计算要求。

这样的参数可以包括但不限于卷积层26的数量、一个或多个卷积层26的深度、应用在单独卷积神经元/节点36的过滤器46的尺寸、隐藏层54的数量、一个或多个隐藏层54的深度、输出层58的深度和/或其它这种参数。可以控制这些参数,以实现以提供对一系列图像中的分类信息的实时访问的预定速率处理一系列图像。在该示例中,处理器142集合中的gpu集合62b可实施第一和/或第二cnn20以利用gpu62b的并行处理能力。再次地,这样的能力可以使第一和/或第二cnn20以一定速率处理一系列的道路场景图像,该速率为针对处理的一系列道路场景图像中的分类信息的预定辅助和/或自主车辆响应提供时间。

在一些示例中,由多级系统140提供的一系列道路场景图像122的分类、检测和/或定位信息可以自身被用于辅助和/或自主驾驶应用。在其它示例中,由多级系统140提供的分类、检测和/或定位信息可以与来自一个或多个另外的设备(上文关于图1所说明的)的信息结合用于辅助和/或自主驾驶应用。在这样的示例中,可以使用处理器集合142或一些其它处理器集合上实施的聚合模块150。聚合模块150可操作用于使低保真分类器108a应用于来自摄像机16的图像122下采样版本120的详尽覆盖范围,与对区域集合的应用相同,以向来自另外的成像子系统——如雷达子系统12和/或激光雷达子系统14——的信息提供冗余。此外和/或可选地,来自多级系统140的信息可以提供另一成像子系统提供的分类信息缺少的遗漏的分类、检测和/或定位信息和/或改进其统计可靠性。

参照图10,示出了另外的基础设施,可以依靠该设施连接多级系统140中的低保真分类器108a和高保真分类器116a。可以使用这样的基础设施来克服不同的分辨率,低保真分类器108a和高保真分类器116a针对该不同分辨率进行训练。这样的基础设施可以包括映射模块152。映射模块152可操作用于将从下采样版本120或它的一部分124a中选择的可能区域146映射154到图像122或它的一部分158的高分辨率版本的扇区156a(在本发明中也被称作小片156a和/或区域156a)。可以采用许多不同的方法来映射154,例如但不限于当滑动窗口128提取相应的候选区域146时考虑滑动窗口128的位置并将其在多个维度上的位置乘以下采样因子。

当针对不同的尺寸/比例训练多级系统140时,映射模块152可以将下采样版本120或它的一部分124中的缩放区域126映射154到高分辨率版本122的缩放扇区156。在一些示例中,关于前述附图介绍的确定模块148可操作用于将潜在区域146集合投射到道路场景图像122的高保真版本上,从而产生候选区域集合,该候选区域集合被前馈110通过高保真分类器116a。

以示例方式,描述行人70的可分类对象94b的特定扇区156a可以利用对应卷积138通过过滤器46和其它运算被前馈110f通过高保真分类器116a。在输出层58d,被训练用于提供扇区156a描述可分类对象94b的概率的节点60ca可以穿过阈值,该阈值表明检测,通过校验符号表明。作出检测的输出层58d中的具体节点60ca可以用于提供分类信息,即检测对象94b是行人70,其可以是分配给具体输出节点60ac的类别。而且,用于将区块126映射154到具体扇区156a的相同的信息可以被用于确定初始图像122中被描述对象94b或行人70的位置160。

参照图11,流程图200示出了利用多级图像分析系统140来快速、准确和全面分类、检测和/或定位图像122中的可分类对象94的步骤。这样的系统140可以利用围绕一对cnn20构建的低保真分类器108a和高保真分类器116a来构建。流程图示出了根据示例的系统、方法和计算机程序产品的潜在实施方式的结构、功能和/或运算。在这方面,流程图中的每个框可以代表模块、段或代码部分,其包含用于实施特定逻辑函数的一种或多种可执行指令。也可以注意到的是,可以由执行特定功能或动作的专用的基于硬件的系统或专用的硬件和计算机指令的组合来实施流程图的每个框以及流程图中框的组合。

在涉及计算机程序指令的情况下,可以向通用计算机、专用计算机或其它可编程数据处理装置的处理器提供这些指令以产生机器,以使通过计算机或其它可编程数据处理装置的处理器执行的指令,产生用于实施流程图和/或框或多个框中规定的功能/动作的方式。这些计算机编程指令也可以存储在计算机可读介质中,计算机可读介质可以指示计算机以特定方式工作,以使存储在计算机可读介质中的指令生产制品,包括实施流程图和/或框或多个框中规定的功能/动作的指令方式。

也应指出的是,在一些可选的实施方式中,框中所述的功能可以不按照所示的顺序发生。在特定实施例中,相继示出的两个框实际上可以基本上同时执行,或根据所涉及的功能,有时框可以以相反的顺序执行。可选地,可以省略特定步骤或功能。

与图11一致的方法200中的操作可以以训练操作202和测试操作204来分组。一些示例可以仅涉及训练操作202,其它可以仅涉及测试操作204,同时另外的其它示例可以涉及202、204两者。在涉及202、204两者的示例中,可以通过以一个或多个不同的比例裁剪208一个或多个不同对象94的图像88来开始206该方法200。之后利用所附的对应标签100下采样210被裁剪的图像88。

可以作出确定212,该确定关于下采样版本86的熵相对于初始图像88是否减少到预定数值和/或比率。如果答案是否,方法200可以返回以进一步下采样210一个或多个先前被下采样的版本86。如果答案是肯定的,方法200可以通过在下采样图像/版本86的所得的下采样数据集合82a上训练214低保真分类器108a来继续。此外,可以在高分辨率数据集合82b上训练216高保真分类器116a,高分辨率数据集合82b由被裁剪的初始图像88组成。

方法200可以通过下采样218测试图像122而继续到测试操作204。当具有与区域126相称的尺寸的窗口128滑动穿过下采样测试图像120时,可以在低保真分类器108a上测试下采样测试图像120的每个区域126。可以作出确定222,该确定是关于低保真分类器108a是否选择候选区域126作为潜在描述可分类对象94。如果答案是否,方法200可以继续测试下采样版本102的另外的区域126。然而,如果答案是肯定的,那么方法可以检索224与候选区域146对应的高分辨率图像122的一个或多个扇区156。与候选区域146对应的每个高分辨率扇区156可以在高保真分类器116a上测试226,这可以确认或不确认所描述的被分类对象94的存在,并且该方法结束228。

在不脱离其精神或本质特征的情况下,本发明可以具体化为其它具体形式实施。所描述的示例在所有方面被认为仅是说明性的而不是限制性的。因此,本发明的范围由所附权利要求书表明,而不是由上述说明表明。在权利要求的等同含义和范围内的所有改变将被包括在其保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1