用于视觉推断的动态图像区域选择的制作方法

文档序号:23068565发布日期:2020-11-25 17:56阅读:129来源:国知局
用于视觉推断的动态图像区域选择的制作方法



背景技术:

本发明总体上涉及环境的自动语义分析,并且特别地涉及自动选择图像中的区域以用于自动语义分析。

对图像中所示的环境的分析可以通过视觉推断模型来执行。视觉推断模型接收通常具有特定分辨率(例如,600×400)的图像,并且识别图像中的语义信息,例如图像中的环境的对象和其他特性。作为一个示例使用,视觉推断模型可以与车辆结合使用以识别车辆附近的对象,例如在自主或半自主控制下的车辆。视觉推断模型可以在此场景下用于识别道路上遇到的各种类型的对象,例如,汽车、人、标志、车道、车道标记等。这些视觉推断模型可以是各种类型的经训练的计算机模型,例如,神经网络,其基于大量对象图像的训练集来学习识别环境的各种对象和特征。

然而,通常,成像传感器可以以比视觉推断模型直接可使用的分辨率高得多的分辨率来捕获图像。例如,成像传感器可以以1920×1280的分辨率捕获图像,而视觉推断模型可能需要具有分辨率为480×320的输入图像。在典型情况下,来自成像传感器的全尺寸图像可以被调整尺寸为视觉推断模型的分辨率。此尺寸调整会降低视觉推断模型的分析的准确性,并且可以包括全尺寸图像的与视觉推断模型或与语义信息的后续处理不相关的部分。



技术实现要素:

为了提高由视觉推断模型确定的语义信息的相关性和准确性,动态地选择全尺寸图像的一部分以用于视觉推断模型。此选择的部分可以用作视觉推断模型中尺寸调整的全尺寸图像的替选或补充,以改进由视觉推断模型确定的语义信息。所选择的部分可以跨由成像传感器捕获的图像的各个帧而变化,以允许所选择的部分适应于正被成像的环境中的不同条件。

当捕获全尺寸图像时,该图像的环境特征集被识别,该环境特征集描述了捕获该全尺寸图像的环境。这些环境特征可以包括来自先前图像(例如,在先前视频帧中识别的对象)的语义信息,以及道路结构信息和其上附接有成像传感器的车辆的控制信息或运动信息。因此,这些环境特征可以被用来识别全尺寸图像的哪些部分可能是感兴趣的,尽管全尺寸图像尚未被视觉推断模型分析。例如,在先前帧(或多帧)中识别的对象可以用于增加或减小所选择的区域的尺寸以包括先前识别的对象,而道路曲率可以用于选择道路在车辆的行进方向上朝向其转向的区域。另外,控制信息或运动信息可以用于选择车辆控制使车辆朝向其移动的区域。作为示例,当预期车辆由于控制或运动而向左移动时,选择区域可以在全尺寸图像帧中向左移动。因此,这些环境特征可以用于确定车辆的感兴趣的区域和可能的未来位置两者,从而允许在分析关于该区域的语义信息时选择对于车辆而言最感兴趣的区域。

可以使用环境特征集,通过规则集、权重或经训练的模型来识别所选择的区域。在一些情况下,所选择的区域的尺寸和纵横比可以变化。当所选择的区域被识别时,所选择的区域可以被调整尺寸为与视觉推断引擎兼容的预定尺寸。例如,所选择的区域可以包括800×500像素,并且可以针对接受600×400像素分辨率的视觉推断引擎而调整尺寸。在选择区域并且在必要时对所选择的区域调整尺寸之后,将所选择的区域输入到视觉推断模型以确定关于图像的语义信息。

由于感兴趣的区域可能会随着图像被捕获而逐帧地改变,因此该动态区域选择允许包括图像的更多相关部分以用于图像推断模型,并且允许图像推断模型继续有效地使用比由成像传感器捕获的全尺寸图像的分辨率更小的分辨率。

附图说明

图1示出了用于对图像中描绘的环境进行语义分析的示例视觉推断系统。

图2示出了用于图像的语义分析的示例数据流。

图3示出了用于利用从全尺寸图像中选择的区域进行语义分析的一个示例方法。

图4是根据一个实施方式的计算机系统的系统图。

这些图仅出于说明的目的描绘了本发明的各种实施方式。本领域技术人员从下面的讨论中将会容易地认识到,在不脱离本文描述的本发明的原理的情况下,可以采用本文所示的结构和方法的替选实施方式。

具体实施方式

图1示出了用于对图像中描绘的环境进行语义分析的示例视觉推断系统100。环境的语义分析提供了关于环境的对象和特征的语义信息。视觉推断系统100可以是使用图像和由视觉推断系统100生成的语义分析来进行控制和操作的较大系统的部件。作为本文使用的典型示例,视觉推断系统100可以是自主或半自主车辆的部件,并且形成车辆的感知系统的一部分。自主或半自主车辆可以使用来自视觉推断系统100的语义信息来识别对象,并且随后通过控制车辆的运动、动力、制动和其他控制部件来导航环境。作为示例,由视觉推断系统100生成的语义信息可以用于自动中断、自动维持跟随距离或维持车辆的车道。因此,视觉推断系统100可以是现在图1所示的较大系统的一个部件。

视觉推断系统100包括用于生成关于由图像捕获的环境的语义信息的各种部件。图1所示的视觉推断系统100包括图像传感器110以及图像区域选择模块120和视觉推断模型130。视觉推断模型130能够解释输入到模型的图像以确定提供给模型的图像中的语义信息。通常,图像传感器110可以以比视觉推断模型130的分析所兼容的分辨率更高的分辨率来捕获图像。由图像传感器所捕获的分辨率的图像在本文中被称为“全尺寸图像”。在一些配置中,视觉推断系统100可以用于分析未被视觉推断系统100中的图像传感器捕获的图像。在这种情况下,全尺寸图像可以指的是由视觉推断系统100以比视觉推断模型被配置成接收图像的分辨率更高的分辨率接收的图像。

图像区域选择模块120选择全尺寸图像中的区域以用于通过视觉推断模型130进行分析。视觉推断系统100可以包括诸如控制信号140、运动传感器150、位置传感器160和环境数据170的附加部件,其可以由图像区域选择模块120使用以选择要由视觉推断模型130分析的图像区域。由这些部件提供的信息以及由视觉推断模型130(例如,根据图像传感器100捕获的先前图像)生成的语义信息合起来描述了可以由区域选择模块120在选择全尺寸图像的区域时使用的环境特征集。在各种配置中,环境特征的类型的任何组合可以由图像区域选择模块120使用以选择全尺寸图像的一部分。

视觉推断系统100的各种配置可以具有与图1所示的部件不同的、与环境特征相关的部件,并且因此使用更多或更少类型的信息作为环境特征。例如,图像区域选择模块120可以在没有从控制信号140识别的控制信息或者没有可以根据环境数据170和位置传感器160确定的道路结构信息的情况下选择区域。

图像传感器110捕获视觉推断系统100周围的环境的图像。作为车辆的实施方式,图像传感器110可以被安装在车辆的前面、侧面或后面以在相对于车辆的相应方向上捕获图像。图像传感器110通常包括捕获环境的相对高分辨率图像的电子传感器。作为示例,图像传感器可以以例如1024×768、1920×1280、2560×1920或更高的分辨率来捕获图像,并且可以以各种纵横比来捕获这些图像。另外,图像传感器可以捕获连续图像来以特定的帧速率生成环境的视频。

视觉推断模型130是识别图像中的语义信息的计算机模型。语义信息可以识别图像中的环境的对象和其他特征。例如,视觉推断模型130可以识别对象的类型(例如,识别图像的一部分的标签“卡车”)以及对象在图像中的位置或边界框。视觉推断模型130还可以识别环境的其他特征,例如,环境光的等级、天气状况、交通信号或标志牌、车道标记或车道标识以及环境的各种其他特征。尽管在这里被描述为“一个”模型,但是视觉推断模型130可以被实现为顺序地或并行地操作以生成关于图像的语义信息的、多于一个的模型。例如,多个模型可以并行操作以识别环境中的不同种类的特征。

视觉推断模型130可以被实现为各种机器学习模型或可训练网络。例如,视觉推断模型130可以是神经网络、决策树、分类器或其他类型的计算机模型及其任何组合,其识别提供给视觉推断模型130的图像中的语义信息。视觉推断模型130可以根据训练数据和图像的集合进行训练以学习用于有效地执行语义分析的权重和参数。这些网络的复杂性和到网络的图像输入分辨率可能影响视觉推断模型130的处理时间和准确性。

当由图像传感器110生成的图像被连续地生成为视频时,视觉推断模型130可以处理视频的图像的速度可能影响可以通过视觉推断模块处理的视频的图像(即帧)的数量或部分。例如,当图像传感器110每秒捕获60个图像时,视觉推断模型130可以被设计成分析这些帧中的20个、30个或60个。作为控制处理速度的一种方法,并且由于其他原因,视觉推断模型130可以处理以比全尺寸图像低的分辨率的图像。例如,视觉推断模型130可以直接接收以指定的或预先确定的600×400分辨率的图像。全尺寸图像或其所选择的部分可以被调整尺寸为可以由视觉推断模型130接收的分辨率。

控制信号140用于识别其上安装有图像传感器110的车辆或其他结构的控制信息。也就是说,控制信号140反映关于图像传感器110相对于由图像传感器捕获的图像中所示的环境的可能的未来移动的信息。当视觉推断系统100是诸如汽车的车辆的一部分时,控制信号140可以反映诸如车辆的加速度、制动器和车轮位置的控制。控制信号140可以表示或捕获如由车辆的用户或驾驶员输入的控制,或者可以表示来自计算机或车辆的其他自动控制的输入。这些信号可以被表征并且表示为车辆的控制信息。

运动传感器150可以用于识别车辆的、反映车辆在环境中的当前移动的运动信息。虽然控制信息可以反映图像传感器110在环境内的移动的未来变化或预期变化,但是运动信息描述了图像传感器110在环境中的当前移动。运动传感器150可以包括各种类型的传感器以描述图像传感器110的运动。作为示例,运动传感器150可以包括加速计、陀螺仪,速度计和其他传感器来测量图像传感器在环境内的移动。

位置传感器160与环境数据170结合可以用于识别环境中的视觉推断系统100的位置以及附近的道路结构信息。例如,位置传感器160可以提供诸如位置传感器160的地理坐标的定位信息。位置传感器160的地理坐标可以用于访问相关的环境数据170。该访问可以例如通过在环境数据170中进行查找或数据访问来执行,其可以提供描述道路和道路结构的信息。例如,该数据可以指定道路结构信息,以帮助识别其他车辆或对象的可能位置以及车辆的未来行进的位置。因此,道路结构信息可以指示道路在何处转弯、弯曲或倾斜度的改变(即,增加或减小海拔高度)。因此,环境数据170可以包括视觉推断系统100附近的物理环境的地图数据。

图2示出了用于图像的语义分析的示例数据流。可以从图像传感器110或从另一源接收全尺寸图像200。为了与视觉推断模型130一起使用,全尺寸图像200可以被调整尺寸成以能够与视觉推断模型130一起使用的分辨率的、经调整尺寸的全图像210。另外,全尺寸图像200的所选择的区域也可以由图像区域选择模块120选择。来自全尺寸图像200的所选择的区域可以被调整尺寸为经调整尺寸的区域220,以与视觉推断模型130一起使用。如图所示,可以将一个以上的经调整尺寸的图像应用于视觉推断模型130(例如,经调整尺寸的全图像210和经调整尺寸的区域220)。可以为视觉推断模型130选择一个以上的区域并调整其尺寸,并且在其他情况下,全尺寸图像200本身不直接用于视觉推断模型130。视觉推断模型130可以被配置成联合使用一个以上的图像,并且在其他情况下可以分别分析每个图像并将从每个图像确定的语义信息进行组合。

为了在全尺寸图像中选择区域,可以根据如上所述的各种信息确定环境特征270的集合。环境特征270中包括的语义信息230可以根据先前图像确定,或者可以表示来自先前图像集或关于环境的其他确定信息(例如,由感知系统的其他部分确定的或根据其他传感器输入而确定的信息)的语义信息的累积集合。如上所述,环境特征270还可以包括分别基于来自位置传感器160、控制信号140和运动传感器150的数据的、道路结构信息、控制信息和运动信息。

然后,区域选择模块120可以基于环境特征集在全尺寸图像200中执行区域选择280。区域选择280可以基于环境特征270选择一个或更多个区域,并且可以使用一种或更多种方法来选择区域。所选择的区域可以如选择过程所指定的在尺寸、位置和纵横比方面变化,并且因此允许选择环境中任何“感兴趣的”特征。通常,区域选择280识别反映全尺寸图像200中可能感兴趣的范围的区域,以及视觉推断系统100可能行进的位置和由图像传感器110捕获的图像的区域。作为示例,当全尺寸图像描绘了道路中的弯道时,区域选择选择全尺寸图像的区域以将视觉推断模型130的语义分析集中在车辆将来行进到道路中的转弯。

在一个配置中,区域选择280使用规则集来识别区域。规则可以说明环境特征中提供的各种信息。例如,规则可以指定选择包括在语义信息230中识别的所有对象的区域。规则可以基于信息的值和特征来指定全尺寸图像200的区域,并且基于环境特征来指定所选择的区域的尺寸、位置和纵横比。

在某些情况下,环境特征270可能缺少某种类型的信息。例如,环境数据170可能缺少关于位置的道路结构的信息,在这种情况下,规则可以基于其他类型的信息来选择区域。

在另一种配置中,区域选择280可以确定根据每种类型的信息要选择的区域,并且使用根据每种类型的信息的区域的组合(或加权组合)。例如,语义信息可以用于识别选择环境中先前识别的每个对象的区域。当对象正在接近车辆时,所选择的区域的尺寸可能会增加,而当对象变小时,所选择的区域的尺寸可能会减小。道路结构信息可以指定在车辆行进方向上道路转弯的方向以及该转弯的曲率。该转弯及其曲率可以用于选择朝向该转弯的区域,并且曲率的程度可能影响偏移量。另外,较大的曲率还可以增加所选择的区域的尺寸,以增加在所选择的区域中捕获弯曲道路的额外部分的可能性。也就是说,当道路明显转弯时,所选择的区域可以在转弯的方向上捕获图像的较大部分。同样,当道路向上或向下弯曲(例如,道路的坡度增加或减小)时,所选择的区域可能向上或向下移位以将道路在全尺寸图像中的位置捕获为在全尺寸图像的中心上方或下方。同样,控制和运动信息可以示出车辆正在或将要向左或向右行进,或者正在(或将要)更快或更慢地移动。指示向左或向右转弯的控制信息或运动信息可以用于在相同方向上使所选择的区域移位。如同道路结构信息一样,更急的左转弯或右转弯也可能增加移位,并且还可能增加所选择的区域的尺寸,以捕获转弯方向上的额外信息。同样,车辆的速度(例如,由于控制加速或制动而导致的当前速度或预期速度)可能增加或减小所选择的区域的尺寸。当车辆更快地移动时,可以选择较小的区域以增加语义信息对在车辆前方的车辆将快速到达的对象的识别的关注。同样,当车辆缓慢地移动时,假定在车辆到达图像中距离更远的对象的时间相对较长,所选择的区域可以更大以识别更宽的视野。

因此,这些类型的信息中的每一种都可以用来输出用于选择区域的参数,这些参数在选择全尺寸图像200的最终区域时可以组合起来。

作为附加示例,所选择的区域可以基于经训练的模型,例如决策树或神经网络。该模型可以与训练模型的使用分开地进行训练,例如在另一个系统处或者“离线”地训练。为了训练模型,可以提供包括许多全尺寸图像的训练数据以及图像的“最相关”或“最感兴趣”的区域的选择。该数据可以通过全尺寸图像的人为标注或通过在观看全尺寸图像时监视人眼聚焦来确定。此外,该数据可以基于由视觉推断模型识别的对象来自动标注,使得具有最大细节和语义信息的全尺寸图像的范围被标注并被用作用于选择区域的训练数据。在该配置中,用于区域选择的经训练的模型可以学习环境特征270与在训练数据中的识别区域之间的关系。

图3示出了利用从全尺寸图像中选择的区域进行语义分析的一种示例方法。该方法可以例如由视觉推断系统100执行。最初,例如从图像传感器110接收(300)环境的全尺寸图像。全尺寸图像可以是视频帧或者是环境的一系列捕获的图像。

为了选择区域,识别(310)环境的环境特征以及关于捕获图像的条件的信息。这些可以描述语义信息(例如,来自对环境的先前的一个图像或多个图像的分析)以及其他信息(例如道路结构信息、控制信息或与在其上安装有捕获图像的图像传感器的车辆有关的运动信息)。如上所述,这些环境特征可以用于例如基于如上所述的规则集、权重或经训练的模型来选择(320)全尺寸图像的一部分或区域。

然后,使用环境的全尺寸图像的所选择的区域来确定(330)环境中的语义信息。在与语义推断模型一起使用之前,所选择的区域还可以被调整尺寸为与语义推断模型的输入兼容的尺寸。在图像是一系列图像之一的情况下,当接收到一系列图像中的另一图像时,可以重复该过程。这允许来自一个图像的语义信息影响下一图像的区域的选择,并且允许动态选择全尺寸图像中的区域以用于分析。

图4是示出可以在视觉推断系统100内实现本文描述的实施方式的计算机系统400的图。例如,在图1的上下文中,诸如图像区域选择模块120和视觉推断模型130的计算模块可以使用诸如图4所描述的计算机系统来实现。视觉推断系统100也可以使用如图4所述的多个计算机系统的组合来实现。

在一个实施方式中,视觉推断系统100包括处理资源401、主存储器403、只读存储器(rom)405、存储设备407和通信接口409。视觉推断系统100包括用于处理信息的至少一个处理器401,和用于存储信息和要由处理器401执行的指令的主存储器403,例如,随机存取存储器(ram)或其他动态存储设备。主存储器403还可以用于存储在执行要由处理器401执行的指令期间的临时变量或其他中间信息。视觉推断系统100还可以包括用于存储用于处理器401的指令和静态信息的rom405或其他静态存储设备。诸如磁盘或光盘或固态存储设备的存储设备407被提供用于存储信息和指令。

通信接口409可以使视觉推断系统100能够通过使用通信链路(无线或有线)进行通信。使用通信链路,视觉推断系统100可以与不同的子系统进行通信,并且可以实现车辆的自主操作。在一些变型中,视觉推断系统100可以被配置成从计算机系统400中的一个或更多个位置跟踪设备(例如,位置传感器160)接收传感器数据(例如,gps数据)。传感器数据可以由处理器401处理并且可以被存储在例如存储设备407中。处理器401可以处理位置跟踪设备的传感器数据以确定车辆的位置和轨迹。

视觉推断系统100可以可选地包括显示设备411,例如用于向用户显示图形和信息,例如,阴极射线管(crt)、lcd监视器、led监视器、tft显示器或电视机。输入机构413、例如包括字母数字键和其他键的键盘可以可选地耦接到计算机系统400,用于将信息和命令选择传送给处理器401。输入机构413的其他非限制性说明性示例包括鼠标、跟踪球、触摸感应屏或光标方向键,其用于将方向信息和命令选择传送给处理器401,并且用于控制显示设备411上的光标移动。

本文描述的示例与使用视觉推断系统100来实现本文描述的技术有关。根据一个实施方式,这些技术由视觉推断系统100响应于处理器401执行包含在主存储器403中的一个或更多个指令的一个或更多个序列而执行。这样的指令可以从诸如存储设备407的另一种机器可读介质读取到主存储器403中。执行包含在主存储器403中的指令序列使得处理器401执行本文所述的处理步骤。在替选实施方式中,可以使用硬连线电路代替软件指令或与软件指令结合来实现本文描述的示例。因此,所描述的示例不限于硬件电路和软件的任何特定组合。

已经出于说明的目的给出了本发明的实施方式的前述描述,前述描述并非旨在穷举或将本发明限制为所公开的精确形式。相关领域的技术人员可以理解,根据以上公开内容,许多修改和变型是可能的。

本说明书的一些部分根据对信息的操作的算法和符号表示来描述本发明的实施方式。数据处理领域的技术人员通常使用这些算法描述和表示来有效地将他们工作的实质传达给本领域的其他技术人员。这些操作尽管在功能上、计算上或在逻辑上被描述,但应理解为由计算机程序或等效电路、微代码等来实现。此外,在不失一般性的情况下,有时还可以方便地将这些操作的安排称为模块。所描述的操作及他们相关联的模块可以以软件、固件、硬件或其任何组合来实现。

本文描述的任何步骤、操作或过程都可以使用一个或更多个硬件或软件模块单独地或与其他设备组合地执行或实施。在一个实施方式中,使用包括计算机可读介质的计算机程序产品来实现软件模块,该计算机可读介质包括计算机程序代码,该计算机程序代码可以由计算机处理器执行以实施所描述的任何或所有步骤、操作或过程。

本发明的实施方式还可以涉及用于执行本文中的操作的装置。该装置可以是为了所需的目的而是特别地构造的,以及/或者该装置可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算设备。这样的计算机程序可以被存储在非暂态有形计算机可读存储介质中,或者被存储在可以耦接到计算机系统总线的适合于存储电子指令的任何类型的介质中。此外,本说明书中提到的任何计算系统可以包括单个处理器,或者可以是采用多个处理器设计以提高计算能力的架构。

本发明的实施方式还可以涉及通过本文描述的计算过程产生的产品。这样的产品可以包括由计算过程产生的信息,其中该信息被存储在非暂态有形计算机可读存储介质上,并且可以包括本文所述的计算机程序产品或其他数据组合的任何实施方式。

最后,说明书中使用的语言主要是出于可读性和指导性目的而选择的,并且所使用的语言可以不被选择成描绘或限制本发明的主题。因此,本发明的范围旨在不受该详细描述的限制,而是受到基于此的申请所公布的任何权利要求的限制。因此,本发明的实施方式的公开内容旨在是说明而非限制在所附权利要求中阐述的本发明的范围。

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