用于构建鲁棒的深度卷积神经网络的滤波器重用机制

文档序号:1745751 发布日期:2019-11-26 浏览:12次 >En<

阅读说明:本技术 用于构建鲁棒的深度卷积神经网络的滤波器重用机制 (For constructing the filter reuse mechanism of the depth convolutional neural networks of robust ) 是由 姜晓恒 于 2017-02-13 设计创作,主要内容包括:一种装置和方法,该方法包括:针对卷积神经网络的第一卷积层,基于将被评估的图像的区域和来自第一卷积层的经学习的滤波器来生成特征图(406);针对卷积神经网络的一个或多个后续卷积层,基于先前卷积层的特征图、针对先前卷积层的经学习的滤波器以及针对后续卷积层的经学习的滤波器来生成特征图(408);以及基于第一卷积层和一个或多个后续卷积层的所生成的特征图来在图像的区域中检测感兴趣的对象的存在(410)。(A kind of device and method generate characteristic pattern (406) based on by the region for the image being evaluated and the filter through learning from the first convolutional layer this method comprises: be directed to the first convolutional layer of convolutional neural networks;For the subsequent convolutional layers of one or more of convolutional neural networks, characteristic pattern (408) are generated based on the characteristic pattern of previous convolutional layer, the filter for previous convolutional layer through learning and for the filter through learning of subsequent convolutional layer;And the characteristic pattern generated based on the first convolutional layer and one or more subsequent convolutional layers detects the presence (410) of interested object in the area of the image.)

用于构建鲁棒的深度卷积神经网络的滤波器重用机制

技术领域

本公开涉及神经网络,并且更具体地,涉及用于卷积神经网络的滤波机制。

背景技术

对象识别是计算机视觉领域中的重要组成部分。在过去的几年中,深度卷积神经网络(CNN)已经被用于促进目标识别。深度卷积神经网络的强大之处在于其能够学习特征的层级的事实。在G.Huang,Z.Liu,Q.Weinberge:Densely Connected ConvolutionalNetworks,CoRR,abs/1608.06993(2016)(以下简称“Huang”)中描述了CNN架构的示例。在Huang中,提出了CNN架构,其在神经网络中的块的所有层内引入了直接连接。即,在一个块中,每层以前馈方式直接连接到每个其他层。一个块通常包括不具有下采样操作的若干层。针对每一层,所有在先前层的特征图都被视为单独的输入,而其自身的特征图作为对所有后续层的输入被持续传递。核心思想是重用前面的层中所生成的特征图。然而,这些特征图本身不会为神经网络带来新的信息。

发明内容

因此,本公开提供一种装置和方法,以针对卷积神经网络的第一卷积层,基于将被评估的图像的区域和来自第一卷积层的经学习的滤波器来生成特征图,针对卷积神经网络的在第一卷积层之后的一个或多个后续卷积层生成特征图,以及基于第一卷积层和一个或多个后续卷积层的所生成的特征图来在图像的区域中检测感兴趣的对象的存在。每个后续卷积层基于先前卷积层的特征图、针对先前卷积层的经学习的滤波器和针对后续卷积层的经学习的滤波器而被生成。

装置和方法可以进一步被配置以接收从图像感测设备所捕获的图像,和/或在对象被检测到的情况下启动告警。此外,卷积神经网络可以被应用于图像的每个区域,以检测对象是否存在于图像的区域中的任何区域中。

装置和方法还可以被配置以在训练阶段(或时期)期间使用一个或多个训练图像来针对卷积神经网络的每个卷积层学习滤波器。为了学习滤波器,装置和方法可以被配置以针对卷积神经网络的卷积层初始化滤波器,使用前向传播来针对每个卷积层生成特征图,基于所生成的特征图以及针对每个类别和相应标签的得分使用损失函数来计算损失,以及在所计算的损失已经减少的情况下使用后向传播来针对卷积层更新滤波器。第一卷积层之后的每个后续卷积层基于先前卷积层的特征图、针对先前卷积层的经学习的滤波器以及针对后续卷积层的滤波器而被生成。装置和方法可以被配置以重复计算特征图、计算损失以及更新滤波器的操作,直到在所计算的损失不再减少时卷积神经网络收敛为止。

在装置和方法中,两个图特征可以针对一个或多个后续卷积层中的每个卷积层被生成。此外,针对第一卷积层生成特征图、针对一个或多个后续卷积层生成特征图以及检测对象的存在的操作在测试阶段被执行。

为了在图像的区域中检测对象的存在,装置和方法可以被配置以从卷积神经网络的应用获得针对区域的得分,以及将针对区域的得分与阈值的值比较。如果针对区域的得分大于阈值的值,则对象在区域中被检测到。

附图说明

各种示例实施例的描述结合附图被说明,在附图中:

图1图示了根据本公开的实施例的用于使用具有滤波器重用(或共享)的卷积神经网络(CNN)来检测对象的存在或不存在的示例系统的框图;

图2图示了根据本公开的另一实施例的用于使用具有滤波器重用(或共享)的卷积神经网络(CNN)来检测对象的存在或不存在的示例系统的框图;

图3是根据本公开的实施例的卷积神经网络的示例架构,该卷积神经网络在后续卷积层中重用来自先前卷积层的滤波器;

图4是示出本公开的实施例的示例过程的流程图,诸如例如图1或图2中的系统被配置以通过该示例过程来使用卷积神经网络来实现训练和/或测试阶段;

图5是示出根据本公开的实施例的示例过程的流程图,诸如例如图1或图2中的系统被配置以通过该示例过程来实现用于训练卷积神经网络的训练阶段;

图6是示出根据本公开的实施例的示例过程的流程图,诸如例如图1或图2中的系统被配置以通过该示例过程来使用经训练的卷积神经网络来实现用于评估图像或其区域的测试阶段;以及

图7是示出根据本公开的示例实施例的示例检测过程的流程图,诸如例如图1或图2中的系统被配置以通过该示例检测过程来使用卷积神经网络来检测诸如对象的特征的存在(或不存在)。

具体实施方式

根据各种示例实施例,提供了一种装置和方法,其采用具有滤波重用机制的深度卷积神经网络(CNN)来分析图像或其区域,并且检测感兴趣的(多个)对象的存在(或不存在)。CNN被配置以重用来自先前(例如,前面的或较早的)卷积层的滤波器,以计算后续卷积层中的图特征。以此方式,滤波器可以被充分地使用或共享,使得特征表示的能力被显著增强,从而显著改进所得深度CNN的识别准确性。与简单地重用先前特征图的其他方式相比,具有滤波器重用的本CNN方法还可以利用从先前卷积层获得的信息(例如,滤波器),并且在当前卷积层中生成新的信息(例如,特征图)。此外,由于每个当前卷积层都重用先前卷积层的滤波器,因此这种CNN的架构可以减少参数的数目。因此,这种配置可以解决由使用太多参数所导致的过拟合问题。

本公开的装置和方法可以在对象识别系统中被采用,诸如例如采用相机或其他传感器的视频监控系统。例如,相机可以捕获相同场景的若干多视图图像,诸如360度图像。视频监控的任务是从多视图图像中检测一个或多个感兴趣的对象(例如,行人、动物或其他对象),然后向用户提供警报或通知(例如,告警或警告)。因为相机系统可以被提供以捕获360度图像,所以视频监控系统可以潜在地检测场景或环境中出现的所有感兴趣的对象。在这种监控系统中,每个相机(或相机子系统)可以被配置以执行对象检测。例如,使用具有滤波器重用的CNN的视频监控系统的操作可以涉及以下内容。系统的每个相机捕获图像。针对所捕获的图像的每个区域,具有滤波器重用的CNN可以例如被采用以在CNN的响应大于预定义的阈值的情况下将该区域分类为感兴趣的对象,并且在CNN的响应等于或小于阈值的情况下将该区域分类为背景(例如,非对象)。

如本文所述,对象检测过程可以涉及训练阶段和测试阶段。训练阶段的目标是设计或配置具有滤波器重用的CNN的结构,并且学习CNN的参数(即,滤波器)。在训练阶段,使用训练图像作为输入来训练CNN以检测(多个)特定对象的存在(或不存在)。例如,后向传播可以被用于学习或配置CNN的参数(诸如滤波器)以检测对象的存在(或不存在)。训练图像可以包括(多个)感兴趣的对象的示例图像、(多个)背景的示例图像以及图像中可能存在的其他方面。在测试阶段,具有滤波器重用的经训练的CNN可以被应用于将被测试的图像(例如,输入图像或测试图像)以检测(多个)特定对象的存在(或不存在)。利用经训练的深度CNN的结构和参数,测试阶段的目标是通过将区域作为经训练的CNN的输入来对图像的每个区域分类。区域被分类为感兴趣的对象或背景。例如,如果分类判决是感兴趣的对象,则系统例如生成警报或通知(例如,以语音或消息形式的警报信号),其可以立即经由网络连接(例如,互联网)或其他介质被发送给用户。在对象检测的过程中所实现的这些操作可以在监控系统的每个相机或相机子系统中被执行。在系统中的相机中的一个相机检测到感兴趣的对象之后警报可以被生成。对象检测过程可以在每个相机或每个相机子系统中被实现或者利用每个相机或每个相机子系统被实现。下面参考附图进一步详细地描述具有滤波器重用的CNN和对象检测系统的示例。

图1图示了系统100的示例组件的框图,该系统用于使用重用或共享滤波器的卷积神经网络(CNN)来检测感兴趣的对象的存在(或不存在)。如图1所示,系统100包括一个或多个处理器110、多个传感器120、(多个)用户接口130、存储器140、(多个)通信接口150、电源160以及(多个)输出设备170。电源160可以包括电池供电单元,其可以是可充电的,或者可以是提供与外部电源的连接的单元。

传感器120被配置以感测或监测地理区域或环境(诸如车辆周围、建筑物周围或内部等)中的活动(例如,(多个)对象)。传感器120可以包括一个或多个图像感测设备或传感器。例如,传感器120可以是具有一个或多个镜头的相机(例如,相机、web相机、捕获全景或360度图像的相机系统、具有广角镜头或多个镜头的相机等)。图像感测设备被配置以捕获图像或图像数据,可以使用CNN对图像或图像数据分析以检测感兴趣的对象的存在(或不存在)。所捕获的图像或图像数据可以包括图像帧、视频,图片等。传感器120还可以包括毫米波雷达、红外相机、激光雷达(光检测和测距)传感器和/或其他类型的传感器。

(多个)用户接口130可以包括多个用户输入设备,用户可以通过该多个用户输入设备来向系统100输入信息或命令。(多个)用户接口130可以包括小键盘、触摸屏显示器、麦克风或者用户可以通过其输入信息或命令的其他用户输入设备。

输出设备170可以包括显示器、扬声器或能够向用户传达信息的其他设备。(多个)通信接口150可以包括通信电路,例如,传输器(TX)、接收器(RX)、收发器(诸如射频收发器)等,以用于与诸如USB或以太网电缆接口的外部设备执行基于线路的通信,或者用于诸如例如通过无线个域网、无线局域网、蜂窝网络或无线广域网来与外部设备执行无线通信。例如,(多个)通信接口150可以被用于从外部计算设备180(例如,服务器、数据中心等)接收CNN及其参数或者其更新(例如,针对感兴趣的对象的经学习的滤波器),向外部计算设备180(例如,诸如计算机的用户的设备等)传输告警或其他通知,以及/或者与外部计算设备180交互,以便以分布式方式来实现本文所述的各种操作,诸如训练阶段、测试阶段、告警通知和/或本文所述的其他操作。

存储器140是数据存储设备,其可以存储计算机可执行代码或程序,该计算机可执行代码或程序在由处理器110执行时控制系统100的操作。存储器140还可以存储针对CNN142及其参数144(例如,经学习的滤波器)的配置信息、图像146(例如,训练图像、捕获的图像等)以及用于实现本文所述的各种操作(诸如训练阶段,测试阶段、告警通知以及本文所述的其他操作)的检测算法148。

处理器110与存储器140通信。处理器110是处理系统,其可以包括一个或多个处理器,诸如CPU、GPU、控制器、专用电路或控制包括本公开中的在此所描述的检测操作(例如,训练阶段、测试阶段、告警通知等)的系统100的操作的其他处理单元。例如,处理器110被配置以通过使用训练图像之类、类别/标签信息等配置或学习参数(例如,学习滤波器),来训练CNN 142以检测感兴趣的对象的存在或不存在,例如,检测(多个)感兴趣的对象、(多个)背景等。处理器110还被配置以使用具有经学习的参数的经训练的CNN 142来测试捕获的(多个)图像或其区域,以便在图像或其区域中检测对象的存在(或不存在)。感兴趣的对象可以包括诸如行人的人、动物、车辆、交通标志、道路危险等或根据预期应用的其他感兴趣的对象。处理器110还被配置以在对象的存在被检测到时启动告警或其他通知,诸如通过使用输出设备170输出通知或者通过经由通信接口150向外部计算设备180(例如,用户的设备、数据中心、服务器等)传输通知来通知用户。外部计算设备180可以包括类似于系统100中的那些组件的组件,诸如上面参考图1所示和所述的。

图2描绘了根据一些示例实施例的包括(多个)处理器210和(多个)传感器220的示例系统200。系统200还可以包括射频收发器250。此外,系统200可以被安装在诸如汽车或卡车的车辆20中,但是该系统也可以在没有车辆20的情况下被使用。系统200可以包括诸如在图1的系统100中提供的相同或相似的组件和功能。

例如,(多个)传感器220可以包括一个或多个图像传感器,该图像传感器被配置以提供诸如图像帧、视频、图片等的图像数据。例如,在高级驾驶员辅助系统/自主车辆的情况下,传感器220可以包括相机、毫米波雷达、红外相机、激光雷达(光检测和测距)传感器和/或其他类型的传感器。

处理器210可以包括CNN电路,其可以表示被配置以实现卷积神经网络和本文所述的其他操作的专用CNN电路。备选地或附加地,CNN电路可以以其他方式被实现,诸如使用包括由至少一个处理设备(例如,CPU、GPU、控制器等)执行的程序代码的至少一个存储器而被实现。

在一些示例实施例中,系统200可以具有训练阶段。训练阶段可以配置CNN电路配置以进行学习以便检测和/或分类一个或多个感兴趣的对象。处理器210可以利用包括诸如人、其他车辆、道路危险等对象的图像而被训练。在被训练后,当图像包括(多个)对象时,经由处理器210可实现的经训练的CNN可以检测(多个)对象并且提供(多个)对象的检测/分类的指示。在训练阶段,CNN可以学习其配置(例如,参数、权重等)。在被训练后,经配置的CNN可以在测试或操作阶段被用于检测和/或分类未知的输入图像的区域(例如片或部分),并且由此确定输入图像是否包括感兴趣的对象或者仅包括背景(即不具有感兴趣的对象)。

在一些示例实施例中,系统200可以被训练以检测对象,诸如人、动物、其他车辆、交通标志、道路危险等。在高级驾驶员辅助系统(ADAS)中,在诸如车辆/人的对象被检测到时,诸如警告声、触觉反馈、识别到的对象的指示或其他指示的输出可以被生成,以例如警告或通知驾驶员。在包括系统200的自主车辆的情况下,检测到的对象可以用信号通知控制电路以在车辆中采取附加的动作(例如,启动暂停、加速/减速、转向和/或其他动作)。此外,指示可以经由无线电收发器250被传输给其他车辆、IoT设备或者云、移动边缘计算(MEC)平台等。

图3是卷积神经网络(CNN)架构300的示例,其包括多个卷积层(例如,层1…层L或l)和判决层。CNN架构200被配置以在后续卷积层中重用或共享来自先前卷积层的滤波器。例如,在层1中,N1个特征图C1通过滤波器W1被获得。C1的空间宽度和高度分别是w1和h1。在层2中,特征图C2不仅通过新的滤波器W2而且还通过先前的层1的滤波器W1而被获得。利用滤波器W2,N21个特征图被获得。利用已有的滤波器W1,N22个特征图被获得。N21个特征图和N22个特征图被级联以形成层2中的特征图C2。因此,如图2中所示,先前的层1的滤波器W1在层2中被重用。类似地,新的滤波器W3被用于生成层3的N31个特征图,并且在先前的层2中获得的滤波器W2被用于产生层3的N32个特征图。N31个特征图和N32个特征图被级联以形成层3的特征图C3。以相同的方式,其余的特征图C4、C5…CL被计算。CNN架构300可以在检测过程中被采用以在图像的区域中检测(多个)感兴趣的对象的存在(或不存在),或者对图像的感兴趣的区域分类。如本文所述,检测过程可以包括训练阶段以使用训练图像来学习用于CNN的参数,并且包括测试阶段以应用经训练的CNN来对图像的区域分类并且检测感兴趣的对象的存在(或不存在)。下面参考附图来描述训练阶段和测试阶段的示例。

图4是示出示例过程400的流程图,诸如例如图1或图2的系统被配置以通过该示例过程来实现诸如例如图3中所示的卷积神经网络的训练和/或测试阶段。出于说明的目的,下面参考图1中的系统100的处理器110和其他组件来讨论过程400,并且该过程400描述了关于训练阶段和测试阶段所执行的高级操作。

在附图标记402处,处理器110被配置以在训练阶段期间提供卷积神经网络。

在附图标记404处,处理器110被配置以在训练阶段期间针对卷积神经网络的每个卷积层学习参数,诸如滤波器。

在附图标记406处,处理器110被配置以在测试阶段期间,针对卷积神经网络的第一卷积层,基于将被评估的图像的区域以及来自第一卷积层的经学习的滤波器来生成特征图。

在附图标记408处,处理器110被配置以在测试阶段,针对卷积神经网络的一个或多个后续卷积层,基于先前卷积层的特征图、针对先前卷积层的经学习的滤波器以及针对后续卷积层的经学习的滤波器来生成特征图。

在附图标记410处,处理器110被配置以在测试阶段基于第一卷积层和一个或多个后续卷积层的所生成的特征图,来在图像的区域中检测感兴趣的对象的存在(或不存在)。在对象被检测到的情况下,处理器可以被配置以启动向用户或其他实体的告警或其他通知。

图5是示出示例过程500的流程图,诸如例如图1或图2中的系统被配置以通过该示例过程来实现用于训练具有滤波器重用的CNN(例如,参见图3)的训练阶段。出于说明的目的,下面参考图1中系统100的处理器110和其他组件来讨论过程400,并且该过程400描述了在训练阶段期间所执行的操作。

在附图标记502处,准备训练图像的集合及其相应标签。例如,如果训练图像包含感兴趣的对象,则标签被设置为数字(例如,1)。如果训练图像不包含感兴趣的对象,则图像的标签被设置为另一数字(例如,-1)。训练图像的集合及其相应的标签在训练阶段期间被用于CNN的设计和配置中,以用于检测感兴趣的对象。

在附图标记504处,处理器110实现用于CNN的诸如滤波器的参数的初始化操作。例如,处理器110针对诸如在图3中的CNN的卷积层(例如,层1…L或l)初始化滤波器(例如,W1…WL)。可以通过使用具有零均值和很小方差(例如0.01)的高斯分布来初始化滤波器。

在附图标记506处,处理器110诸如例如利用来自训练图像集合的训练图像或其区域作为输入,使用前向传播在逐层卷积的基础上生成(例如,计算或估算)特征图。例如,此操作可涉及使用两个滤波器来计算特征图,诸如图3的CNN架构300中所示。一个滤波器来自先前卷积层,另一滤波器来自当前卷积层。例如,给定层l的Wi和层l+1的Wi+1,在层l中生成的特征图被表示为Nl。在计算层l+1的特征图时,卷积操作被执行两遍。首先,计算特征图其中“°”表示卷积操作。其次,特征图被如下计算:随后,特征图被级联以生成层l+1的最终输出Nl+1。应当注意,Wl在层1中被用于计算特征图因此,在层1中使用的滤波器Wl在层l+1中被重用以生成新的特征图。

在附图标记508处,处理器110实现判决层,在该判决层中损失计算被执行。例如,处理器110诸如通过根据针对每个类别和相应标签的最终得分计算损失,来执行损失计算。可以使用softmax损失函数来执行损失计算。softmax损失函数的示例由如下所示的方程(1)表示:

其中:

y是表示针对所有类的得分的向量,以及

yc是类c的得分。

代替softmax损失函数,其他函数也可以在判决层中被采用,诸如支持向量机(SVM)损失函数或用于与CNN一起使用的其他适当的损失函数。例如,softmax损失函数计算交叉熵损失,而SVM损失函数计算铰链损失。对于分类任务,这两个函数性能几乎相同。

在附图标记510处,处理器110基于所计算的损失(例如,所计算的损失的变化)来确定CNN的滤波器是否应当被更新。例如,处理器110确定损失是否已经停止减小或改变,或者换言之,CNN是否正在收敛。如果损失已经停止减小,则处理器110在附图标记514处输出滤波器(例如,经学习的滤波器),以用于在测试阶段期间在CNN中使用。输出的滤波器可以被存储在存储器中,以用于与CNN一起使用。

否则,如果损失还没有停止减小,则处理器110在附图标记512处更新CNN的滤波器。例如,处理器110可以实现后向传播(例如,标准后向传播或其其他变型)以更新CNN的所有滤波器。例如,滤波器可以在后向传播期间通过链规则根据如下等式(2)被更新:

其中,

ε表示损失函数,以及

是从深层传播的梯度。

随后,滤波器被如下更新:

其中

η表示更新系数(例如,学习率)。

然后,过程500通过重复附图标记506、508和510中的操作来继续,直到所计算的损失停止减小或改变(或者换言之,CNN收敛)为止。

图6是示出示例过程600的流程图,诸如例如图1或图2的系统被配置以通过该示例过程来实现测试阶段,以用于使用具有滤波器重用的经训练的CNN(例如,参见图3)来评估图像或其区域。测试阶段与训练阶段的不同之处在于其不需要更新滤波器。相反,测试阶段可以采取从训练阶段经学习的滤波器来分类或检测对象。此外,无需计算针对判决层的损失。判决层简单地判决哪个类别具有最高的得分。出于说明的目的,下面参考图1中的系统100的处理器110和其他组件来讨论过程600,并且该过程600描述在测试阶段期间所执行的操作。

在附图标记602处,处理器110通过确定可能包含感兴趣的对象(例如目标对象)的(图像的)区域来实现区域建议操作。例如,一种用以标识感兴趣的区域以用于评估的简单方法是采取滑动窗口技术,其竭尽式地扫描输入图像。其他方法也可以被采取。

在附图标记604处,处理器110使用具有滤波器重用的CNN来实现图特征生成。例如,处理器110将图像的感兴趣的区域应用于CNN,并且使用诸如来自训练阶段的学习的参数(例如滤波器)在逐层卷积的基础上生成特征图。测试阶段中的图特征生成过程可以类似于在训练阶段中所执行的过程,诸如上面参考图5描述的。

在附图标记606处,处理器110实现判决层以执行区域的分类或对象检测。例如,在判决层中,处理器110可以采用得分向量y作为输入,并且确定哪个(例如,yc)具有最高得分。此操作输出与最高得分相对应的标签(例如,行人)。

如先前所讨论,判决层可使用softmax损失函数或其他损失函数,诸如SVM损失函数。softmax损失函数计算交叉熵损失,而SVM损失函数计算铰链损失。对于分类任务,这两个函数性能几乎相同。

图7是示出示例检测过程700的流程图,诸如例如图1或图2的系统被配置以通过该示例检测过程来使用具有滤波器重用的经训练的CNN(例如,参见图3)来检测感兴趣的对象的存在(或不存在)。出于说明的目的,下面参考图1中的系统100的处理器110和其他组件来讨论过程700。

在附图标记702处,(多个)传感器120捕获(多个)图像。取决于检测过程700的应用,图像可以针对不同场景被捕获。例如,(多个)传感器120可以被定位、安装或安置以捕获针对固定位置(例如,建筑物内或建筑物周围的不同位置或其他位置)或者针对可移动位置(例如,移动的车辆、人或其他系统周围的位置)的图像。例如,诸如单镜头或多镜头相机或用以捕获全景或360度图像的相机系统的相机系统被安装在车辆上。

在附图标记704处,处理器110扫描诸如来自捕获的(多个)图像的图像的每个区域。

在附图标记706处,处理器110诸如通过实现测试阶段来将CNN应用于图像的每个区域。测试阶段的示例由参考图6所描述的过程600描述。如上所述,CNN的应用提供了针对图像的测试区域的得分。

在附图标记708处,处理器110确定来自CNN的得分是否大于阈值(例如,阈值的值)。

如果得分不大于阈值,则在附图标记710处,处理器110不启动告警或通知。过程700继续捕获和评估图像。否则,如果得分大于阈值,则在附图标记712处,处理器110启动反映感兴趣对象的检测或这种对象的分类的告警或通知。如先前所讨论的,取决于用于检测过程的预期应用,感兴趣的对象的示例可以包括行人、动物、车辆、交通标志、道路危险或其他相关对象。告警或通知可以经由输出设备170中的一个输出设备在系统100处本地被启动,或者被传输给外部计算设备180。告警可以以视觉或音频通知或其他适当的媒体(例如振动等)的形式被提供给用户。

实验示例

KITTI数据集上的实验结果示出了采用了具有滤波器重用的CNN的本方法和系统的有效性。KITTI数据集由一对相机捕获。被用于行人检测的KITTI数据集的子集包括7481个训练图像和7518个测试图像。在本方法和系统中,深度CNN可以例如包括L=13个层。滤波器W1、W2、W3、W4、W5、W6、W7、W8、W9、W10、W11、W12和W13的大小分别是3×3×3、3×3×32、3×3×64、3×3×64、3×3×128、3×3×128、3×3×128、3×3×256、3×3×256、3×3×256、3×3×256、3×3×256以及3×3×256。传统的VGG神经网络与采用了利用CNN的滤波器重用机制的本方法和系统的示例被比较。具有滤波器重用的当前CNN的平均精度(AP)是60.43%,而传统VGG神经网络的平均精度是56.74%(例如,参见Simonyan K,Zisserman A.:Very deepconvolutional networks for large-scale image recognition.arXiv preprintarXiv:1409.1556(2014))。可以看出,具有滤波器重用的当前CNN方法显著地优于传统的VGG方法。即,滤波器重用或共享的引入在改进对象检测性能方面起着重要作用。这样,在CNN中采用滤波重用机制的本方法和系统可以为对象检测领域以及由此为视频监控领域提供显著的改进。

应该理解,上述系统和方法仅作为示例被提供。尽管可以使用如本文所述的系统100或200来实现包括训练阶段、测试阶段和告警通知的操作以及其他方面,但是这些操作可以通过(多个)通信网络跨多个系统被分布和执行。此外,除了标准的后向传播之外,训练阶段可以替代地采用后向传播的其他变型,该其他变型可以旨在改进后向传播的性能。训练和测试阶段还可以采取其他适当的损失函数或训练策略。如本文所述,利用了重用或共享滤波器的CNN方式可以被用于各种应用,包括但不限于视频监控系统中、自主或半自主辆中或ADAS实现中的对象检测/识别。

还应当理解,本文公开和教导的示例实施例容许多种和各种修改和备选形式。因此,使用诸如但不限于“一个”等的单数术语不旨在限制项的数目。

应当想到,包含所公开的实施例的实际的、真实的商业应用的开发将需要许多实现特定的判决,以达到开发方针对商业实施的最终目标。这种实现特定的判决可以包括并且可能不限于遵守系统相关、商业相关、政府相关以及其他约束条件,这些约束条件可能由于特定实现、位置和随着时间而变化。虽然在绝对意义上说,开发方的工作可能是复杂并且耗时的,但是对于受益于本公开的本领域技术人员来说,这种工作仍然是常规的事务。

使用本文提供的描述,示例实施例可以通过使用标准编程和/或工程技术来产生编程软件、固件、硬件或其任何组合,而被实现为机器、过程或制品。

具有计算机可读程序代码的任何(多个)所得程序都可以被实施在一个或多个计算机可用介质上,诸如常驻存储器设备、智能卡或其他可移动存储器设备或传输设备,从而制造根据实施例的计算机程序产品或制品。这样,如本文所使用的术语“制品”和“计算机程序产品”旨在涵盖永久地或临时地存在于任何计算机可用介质上或者传输这种程序的任何传输介质中的计算机程序。

如上所述,存储器/存储设备可以包括但不限于磁盘、固态驱动器、光盘、可移动存储器设备(诸如智能卡、SIM、WIM)、半导体存储器(诸如RAM、ROM、PROM)。传输介质包括但不限于经由如下各项的传输:无线通信网络、互联网、内联网、基于电话/调制解调器的网络通信、硬线/电缆通信网络、卫星通信以及其他固定或移动网络系统/通信链路。

尽管已经图示和描述了本公开的特定实施例和应用,但是应该理解,本公开不限于本文所公开的精确结构和组成,并且在不脱离所附权利要求所限定的本发明的情况下,根据前述描述,各种修改、变化和变型可以是明显的。

20页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:隐空间中的目标检测

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!