用于实时视觉活动识别的神经形态系统的制作方法

文档序号:19488597发布日期:2019-12-21 04:07阅读:226来源:国知局
用于实时视觉活动识别的神经形态系统的制作方法

相关申请的交叉引用

本申请是2018年1月30日提交的美国专利申请no.15/883,822的部分继续申请,美国专利申请no.15/883,822是2017年3月30日提交的美国临时申请no.62/479,204的非临时申请,其全部内容通过引用并入于此。

本申请还要求保护2017年6月7日提交的美国临时申请no.62/516,217的权益并且作为其非临时专利申请,其全部内容通过引用并入于此。

政府权利

本发明是以onr授予的美国政府合同号n00014-15-c-0091nemesis下的政府支持来进行。政府在本发明中具有特定权利。

本发明涉及视觉活动识别,并且更具体地,涉及用于实时视觉活动识别的神经形态系统。



背景技术:

自动化模式识别,并且更具体地,视觉图像和/或活动识别具有广泛的应用领域,包括导航、制造、监视、医学以及其它范围。尝试识别活动的一些常规方法包括在“large-scalevideoclassificationwithconvolutionalneuralnetworks”(参见所引入的参考文献列表中的参考文献no.1)以及“two-streamconvolutionalnetworksforactionrecognitioninvideos”(参见参考文献no.2)中所公开的那些方法。其它常规方法包括在“areviewofhumanactivityrecognitionmethods”(参见参考文献no.3)以及“long-termrecurrentconvolutionalnetworksforvisualrecognitionanddescription”(参见参考文献no.4)中所公开的那些方法。

然而,这些方法中的每一种都受限于仅寻求解决活动分类问题:他们假定输入是活动视频片段,该活动视频片段正好以关注的活动为中心并且仅包含关注的活动。这些方法不适用于场景可能包含多个对象、杂波(clutter)并且实际的关注活动仅占该视频的较小区段的情报、监视以及侦察(isr)类型的检测和分类应用。在这类问题中,在可以执行活动分类之前,首先需要对关注对象进行检测/分类和跟踪。另外,这些现有技术系统都无法应用于多种不同的使用情况,例如空中、地面、静止或移动的平台。

因此,持续需要一种解决上述限制的用于视觉活动识别的系统。



技术实现要素:

本公开提供了一种用于视觉活动识别的系统。在各种实施方式中,所述系统包括一个或更多个处理器以及存储器。所述存储器是编码有可执行指令的非暂时性计算机可读介质,使得在执行所述指令时,所述一个或更多个处理器执行包括以下操作:检测视频数据中的关注对象的集合并且确定所述关注对象的集合中的每个对象的对象分类,所述集合包括至少一个关注对象;通过跨多个帧跟踪所述关注对象的集合中的每个对象来形成每个对象的对应的活动轨迹;针对每个关注对象并且使用特征提取器,通过基于所述对应的活动轨迹执行特征提取来确定所述视频数据中的对应特征,所述特征提取器包括卷积神经网络;以及针对每个关注对象,基于所述特征提取器的输出,确定每个关注对象的对应的活动分类。

在另一方面,所述一个或更多个处理器还执行以下操作:基于所述对应的活动分类中的至少一个活动分类来控制装置。

在又一方面,控制所述装置的步骤包括:使用机器发送有关所述活动分类的视觉警告、音频警告或电子警告中的至少一种。

在又一方面,控制所述装置的步骤包括:使基于地面的车辆或空中飞行器开始物理动作。

在又一方面,所述特征提取器包括递归神经网络,并且所述一个或更多个处理器还执行以下操作:针对每个关注对象并且使用所述递归神经网络,基于所述对应的活动轨迹和所述对应特征中的至少一者来提取对应的时间序列特征。

在又一方面,所述递归神经网络使用长短期记忆作为时间分量。

在又一方面,所述卷积神经网络包括至少五个卷积-纠正-池化层。

在又一方面,所述卷积神经网络还包括至少两个全连接层。

在又一方面,所述活动分类包括概率和置信度得分中的至少一者。

在又一方面,所述关注对象的集合包括多个关注对象,并且所述卷积神经网络、所述递归神经网络以及所述活动分类器针对多个对应的活动轨迹并行运行。

在又一方面,所述分类包括概率和置信度得分中的至少一者。

最后,本发明还包括一种计算机程序产品和计算机实现方法。所述计算机程序产品包括存储在非暂时性计算机可读介质上的计算机可读指令,该计算机可读指令能够由具有一个或更多个处理器的计算机执行,使得在执行所述指令时,所述一个或更多个处理器执行本文列出的操作。另选地,所述计算机实现方法包括使计算机执行这种指令并且执行所得操作的行为。

附图说明

根据下面结合参照附图对本发明各个方面的详细描述,本发明的目的、特征以及优点是显而易见的,其中:

图1是描绘根据本发明的各个实施方式的系统的组件的框图;

图2是具体实施本发明的一个方面的计算机程序产品的例示图;

图3是根据一些实施方式的用于实时活动识别的框图;

图4是例示根据一些实施方式的用于实时活动识别的附加细节的框图;

图5是示出根据一些实施方式的各种方法的正确分类的百分比的表;

图6是根据一些实施方式的进出设施活动分类的示例图像的例示图;

图7包括了根据一些实施方式的打开/关闭后备箱活动分类的示例图像的例示图;

图8包括了根据一些实施方式的打开/关闭后备箱活动和进/出车辆分类的示例图像的例示图;

图9是例示了针对各种情形的分类的百分比准确度的表;

图10是例示根据一些实施方式的来自完整活动识别流水线的测试的结果的表;

图11是例示根据一些实施方式的来自完整活动识别流水线的测试的结果的图表;

图12是描绘根据各种实施方式的装置的控制的框图;以及

图13是例示根据各种实施方式的用于预测对象的移动的操作的流程图。

具体实施方式

本发明涉及视觉活动识别,并且更具体地,涉及用于实时视觉活动识别的神经形态系统。

呈现以下描述以使本领域普通技术人员能够制造和使用本发明并将其并入特定应用的背景中。各种变型例以及不同应用方面的多种用途对于本领域技术人员来说是显而易见的,并且本文定义的一般原理可以被应用于广泛的方面。因此,本发明不旨在限于所呈现的方面,而是符合与本文所公开原理和新颖特征相一致的最广范围。

在下面的详细描述中,阐述了许多具体细节,以便提供对本发明的更详尽理解。然而,本领域技术人员应当明白,本发明可以在不受限于这些具体细节的情况下来实践。在其它情况下,公知结构和装置按框图形式而不是按细节示出,以便避免模糊本发明。

将读者的注意引向与本说明书同时提交的所有文件和文档,并且所述文件和文档可以利用本说明书开放以供公众查阅,所有这些文件和文档的内容通过引用并入于此。本说明书中公开的所有功能(包括任何所附权利要求、摘要,以及附图)可以用服务相同、等同或相似目的的另选特征来代替,除非另有明确说明。因此,除非另有明确说明,所公开的每个特征仅仅是通用系列的等同或相似特征中的一个例子。

而且,权利要求中没有明确陈述“用于执行指定功能的装置”或“用于执行特定功能的步骤”的任何部件不解释为如在35u.s.c.112节第6款中指定的“装置”或“步骤”条款。特别地,在本文的权利要求中使用“…的步骤”或“……的动作”不旨在援引35u.s.c.112节第6款的规定。

在详细描述本发明之前,首先,提供并入参考文献列表作为读者的中心资源。接下来,提供了对本发明各个主要方面的描述。随后,向读者进行了介绍,使得能够对本发明有个总体上的理解。最后,提供本发明各个实施方式的具体细节以取得对具体方面的理解。

(1)引入参考文献列表

贯穿本申请引用以下参考文献。为了清楚和方便起见,这些参考文献在此被列为读者的中心资源。下列参考文献通过引用并入于此,就像在此完全陈述的一样。这些参考文献通过参照如下对应文献参考号而在本申请中加以引用,如下:

1.karpathy,a.etal.,“large-scalevideoclassificationwithconvolutionalneuralnetworks”(2014)。

2.simonyan,k.etal.,“two-streamconvolutionalnetworksforactionrecognitioninvideos”(2014)。

3.vrigkas,m.etal.,“areviewofhumanactivityrecognitionmethods,”frontierinroboticsandai,2015。

4.donahue,j.etal.,“long-termrecurrentconvolutionalnetworksforvisualrecognitionanddescription,”cvpr2015。

5.kim,k.etal.,“bio-inspiredmethodofgroundobjectcueinginairbornemotionimagery,”u.s.patentno.9,008,366。

6.zhang,l.“rapidobjectdetectionbycombiningstructuralinformationfromimagesegmentationwithbio-inspiredattentionalmechanisms,”u.s.patentno.9,147,255。

7.khosla,d.“aneuromorphicsystemforvideoobjectrecognition,frontiersincomputationalneuroscience,”8:147(2014)。

8.u.s.patentapplicationno.15/883,822,“real-timeobjectrecognitionusingcascadedfeatures,deeplearningandmulti-targettracking”filedonjanuary30,2018。

9.rothe,r.etal.“non-maximumsuppressionforobjectdetectionbypassingmessagesbetweenwindows”computervision--accv2014.lecturenotesincomputerscience,vol.9003(2015)。

10.kuhn,h.“thehungarianmethodfortheassignmentproblem”navalresearchlogisticsquarterly,2:83–97(1955)。

11.munkres,j.“algorithmsfortheassignmentandtransportationproblems”journalofthesocietyforindustrialandappliedmathematics,5(1):32–38,(1957)。

12.gershgorn,d.(2017,july26)“thedatathattransformedairesearch—andpossiblytheworld”retrievedfromhttps://qz.com/1034972/the-data-that-changed-the-direction-of-ai-research-and-possibly-the-world/。

13.olah,c.(2015,august27)“understandinglstmnetworks”colah’sblog.retriedfromhttp://colah.github.io/posts/2015-08-understanding-lstms/#fn1。

14.cortes,c.etal.“support-vectornetworks”machinelearning.20(3):273–297(1995)。

15.kalal,z.(2011)opentld.retrievedfromhttps://github.com/zk00006/opentld。

16.he,y.(2016,jan.24)mean-shift-tracking.retrievedfromhttps://github.com/heyijia/mean-shift-tracking。

(2)主要方面

本发明的各种实施方式包括三个“主要”方面。第一个主要方面是一种用于视觉活动识别的系统,更具体地,涉及用于实时视觉活动识别的神经形态系统。该系统通常采用计算机系统操作软件的形式或采用“硬编码”指令集的形式。该系统可以并入提供不同功能的各种各样的装置中。第二个主要方面是通常采用软件的形式的方法,其利用数据处理系统(计算机)进行操作。第三个主要方面是计算机程序产品。计算机程序产品通常表示存储在诸如光存储装置(例如,光盘(cd)或数字通用盘(dvd))或的磁存储装置(例如,软盘或磁带)的非暂时性计算机可读介质上的计算机可读指令。计算机可读介质的其它非限制示例包括:硬盘、只读存储器(rom)以及闪存型存储器。这些方面将在下面进行更详细描述。

图1中提供了描绘本发明的系统(即,计算机系统100)的示例的框图。计算机系统100被配置成执行与程序或算法相关联的计算、处理、操作和/或功能。在一个方面,本文讨论的某些处理和步骤被实现为驻留在计算机可读存储器单元内并由计算机系统100的一个或更多个处理器执行的一系列指令(例如,软件程序)。在执行时,所述指令使计算机系统100执行特定动作并展现特定行为,如本文所描述的。

计算机系统100可以包括被配置成传送信息的地址/数据总线102。另外,一个或更多个数据处理单元(例如处理器104(或多个处理器))与地址/数据总线102联接。处理器104被配置成处理信息和指令。在一方面,处理器104是微处理器。另选地,处理器104可以是不同类型的处理器,诸如并行处理器、专用集成电路(asic)、可编程逻辑阵列(pla)、复杂可编程逻辑器件(cpld)或现场可编程门阵列(fpga)。

计算机系统100被配置成利用一个或更多个数据存储单元。计算机系统100可以包括与地址/数据总线102联接的易失性存储器单元106(例如,随机存取存储器(“ram”)、静态ram、动态ram等),其中,易失性存储器单元106被配置成存储用于处理器104的信息和指令。计算机系统100还可以包括与地址/数据总线102联接的非易失性存储器单元108(例如,只读存储器(“rom”)、可编程rom(“prom”)、可擦除可编程rom(“eprom”)、电可擦除可编程rom(“eeprom”)、闪存等),其中,非易失性存储器单元108被配置成存储用于处理器104的静态信息和指令。另选地,计算机系统100可以执行从诸如“云”计算中的在线数据存储单元取得的指令。在一方面,计算机系统100还可以包括与地址/数据总线102联接的一个或更多个接口,例如接口110。所述一个或更多个接口被配置成使得计算机系统100能够与其它电子装置和计算机系统连接。由所述一个或更多个接口实现的通信接口可以包括有线(例如,串行电缆、调制解调器、网络适配器等)和/或无线(例如,无线调制解调器、无线网络适配器等)通信技术。

在一个方面,计算机系统100可以包括与地址/数据总线102联接的输入装置112,其中,输入装置112被配置成将信息和命令选择传送至处理器100。根据一个方面,输入装置112是字母数字输入装置(如键盘),其可以包括字母数字键和/或功能键。另选的是,输入装置112可以是除字母数字输入装置之外的其它输入装置。在一方面,计算机系统100可以包括与地址/数据总线102联接的光标控制装置114,其中,光标控制装置114被配置成将用户输入信息和/或命令选择传送至处理器100。在一方面,光标控制装置114是利用诸如鼠标器、轨迹球、轨迹板、光学跟踪装置或触摸屏的装置来实现的。前述尽管如此,但在一方面,例如响应于使用与输入装置112相关联的特殊键和键序列命令,光标控制装置114经由来自输入装置112的输入而被引导和/或启用。在另选方面中,光标控制装置114被配置成通过语音命令指引或引导。

在一方面,计算机系统100还可以包括一个或更多个可选的计算机可用数据存储装置,例如与地址/数据总线102联接的存储装置116。存储装置116被配置成存储信息和/或计算机可执行指令。在一个方面,存储装置116是诸如磁或光盘驱动器(例如,硬盘驱动器(“hdd”)、软盘、光盘只读存储器(“cd-rom”)、数字通用盘(“dvd”))的存储装置。依据一个方面,显示装置118与地址/数据总线102联接,其中,显示装置118被配置成显示视频和/或图形。在一方面,显示装置118可以包括:阴极射线管(“crt”)、液晶显示器(“lcd”)、场发射显示器(“fed”)、等离子体显示器,或适于显示视频和/或图形图像以及用户可识别的字母数字字符的任何其它显示装置。

本文所呈现的计算机系统100是根据一方面的示例计算环境。然而,计算机系统100的非限制示例并不严格限于作为计算机系统。例如,一个方面提供了计算机系统100代表可以根据本文所述各个方面使用的一类数据处理分析。此外,还可以实现其它计算系统。实际上,本技术的精神和范围不限于任何单一数据处理环境。因此,在一方面中,使用通过计算机执行的计算机可执行指令(例如程序模块)来控制或实现本技术的各个方面的一个或更多个操作。在一个实现中,这样的程序模块包括被配置成执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件和/或数据结构。另外,一个方面提供了通过利用一个或更多个分布式计算环境来实现本技术的一个或更多个方面,例如,在该计算环境中,任务由通过通信网络链接的远程处理装置执行,或者例如,在该计算环境中,各种程序模块位于包括存储器-存储装置的本地和远程计算机存储介质中。

图2中描绘了具体实施本发明的计算机程序产品(即,存储装置)的例示图。计算机程序产品被描绘为软盘200或诸如cd或dvd的光盘202。然而,如先前提到的,该计算机程序产品通常代表存储在任何兼容的非暂时性计算机可读介质上的计算机可读指令。如关于本发明所使用的术语“指令”通常指示要在计算机上执行的一组操作,并且可以表示整个程序的片段或单个分离的软件模块。“指令”的非限制示例包括计算机程序代码(源或目标代码)和“硬编码”电子装置(即,编码到计算机芯片中的计算机操作)。所述“指令”被存储在任何非暂时性计算机可读介质上,例如存储在计算机的存储器中或者软盘、cd-rom以及闪存驱动器上。无论如何,这些指令被编码在非暂时性计算机可读介质上。

(3)介绍

本公开描述了一种用于诸如在来自静止和/或移动的平台的流传输或记录的视频中进行活动识别的新颖的实时神经形态方法和系统。对于一些实施方式,一些统的新颖方面涉及以下五个模块的特定用途、实现以及整合:对象检测、跟踪、卷积神经网络图像特征提取器、递归神经网络序列特征提取器以及活动分类器。对于一些实施方式,所述系统和方法即使在小型的、低功率、低成本的平台(例如无人飞行器(uav)和无人驾驶地面车辆(ugv))上也能提供实时视觉处理。该方法还能经修正用于新兴的尖峰神经形态硬件的实现。

一些其它的示例应用可以包括:导航、制造、医疗技术、情报、监视以及侦察(isr)、边境安全、自主驾驶uav和ugv、任务安全、人类活动检测、威胁检测、分布式移动操作等。下面提供了关于所述系统和各种实施方式的进一步的细节。

(4)各个实施方式的具体细节

(4.1)系统

图3是根据一些实施方式的用于实时活动识别的系统300的框图。在一些实施方式中,所述系统在来自静止或移动的平台的流传输或记录的视频302中执行实时活动识别。在各种实施方式中,系统集成了以下五个模块中的一个或更多个模块:对象检测304、轨迹形成306(例如,跟踪)、卷积神经网络图像特征提取器308、递归神经网络序列特征提取器310以及最终活动分类器312。在各种实施方式中,本公开所涵盖的系统和方法可以使用由上述模块执行的功能中的一些、部分或全部。此外,可以使用更多模块、更少模块或不使用模块来执行本公开中描述的操作。在各种实施方式中,系统识别所有关注对象,跟踪这些关注对象,并且处理针对所有活动跟踪的处理,以给出所有关注对象的活动分类。例如,在不同实施方式中,如果存在1、5、10或更多个关注对象,则系统将检测、跟踪并且给出所有关注对象的活动分类。

(4.2)对象检测

对象检测304模块在输入视频302中找到关注对象,并输出这些关注对象的边界框位置和类标签。可以预先录制输入视频,或者可以经由摄像头或其它传感器实时获取输入视频。输入视频可以包括包含多个顺序记录的图像帧的视频数据。

例如,如果目的是人类活动识别,那么该模块检测并分类传入视频302中的所有人类或“人(man)”对象(例如,人)。如果目的是车辆活动识别,那么该模块检测并分类传入视频中的所有“车辆(vehicle)”对象。换句话说,对象检测304检测视频数据中的关注对象的集合,并且确定该关注对象集合中的每个关注对象的对象分类。该对象集合可以包括视频中的所有关注对象,该对象集合可以包括量和/或量的范围,例如1-3、1-5、1-10或更多个关注对象。

应当明白,可以针对该对象检测模块304实现任何合适的对象检测器,其非限制例包括文献参考文献no.5、6、7及8中所述的那些对象检测模块(参见所引入的参考文献列表)。在一些实施方式中,对于空中平台,所述系统包括对象检测304、轨迹形成306以及cnn308。在一些实施方式中,对于地面平台,所述系统除其它模块外还包括rnn310。其它实施方式是可能的。在一些实施方式中,检测到的关注对象用作下一模块的种子(例如,轨迹形成306),如下更详细说明的。

(4.3)轨迹形成

在轨迹形成306模块中,活动跟踪是通过跨帧跟踪对象检测304检测到的对象中的每个检测到的对象而形成的,从而形成每个检测到的对象的对应活动轨迹。所述系统使用多目标卡尔曼滤波器跟踪器。在其它实施方式中,另选的跟踪器可能包括opentld或均值漂移跟踪(参见参考文献no.15和16)。所述系统还执行定制的非最大抑制(参见参考文献no.9),并且使用启发式方法来识别和消除误报轨迹。将卡尔曼滤波器用于预测当前帧中的每个轨迹的质心,并且相应地更新对应的跟踪对象的边界框。在一些实施方式中,轨迹是具有唯一id的边界框位置(以检测到的对象为中心,该对象的位置可以随着对象的移动而在帧与帧之间改变)的以帧号为索引的列表。在一些实施方式中,当前帧是正在处理的帧,无论是录制的视频还是流传输的视频直播。在一些实施方式中,“更新”是指确定在哪里绘制边界框的定义边界。基于该更新,在一些实施方式中,整个边界框应移动为以所预测的质心为中心。

将前一帧中的边界框的宽度和高度用作尺寸的当前预测。使用预测的边界框与分类的边界框之间的边界框交叠率来计算成本。换句话说,所述成本是通过确定两个矩形之间的交叠面积而计算出的比率(例如0-1之间的数字)。将hungarian算法的munkres版本用于计算将总成本最小化的指派(参见参考文献no.10和11)。在一些实施方式中,通过仅考虑具有最小持续时间t秒(例如,t标称为2秒)的轨迹,可以去除零星检测的移动树木、阴影等。对于一些实施方式,轨迹形成306模块的输出是具有最小持续时间t秒的持久对象轨迹。例如,如果某人在视频中手持枪支并且有5秒钟可见,则轨迹形成306将在那5秒钟期间输出具有独特的轨迹号的被跟踪的对象(例如,枪支、携枪的人、枪的部分(例如枪筒等)的轨迹。

(4.4)卷积神经网络特征提取

特征提取器314(该特征提取器包括卷积神经网络(cnn308)模块)从轨迹形成306接收活动轨迹(例如,持久轨迹或其它轨迹)作为输入,并且基于每个轨迹,自动从每个轨迹边界框内的原始图像信息中学习哪些中间特征最有用(例如,基于对应的活动轨迹确定每个关注对象的对应特征)。在一些实施方式中,不提取明显的特征。在一些实施方式中,cnn的较低层可以学习边缘或取向特征,并且cnn的较高层可以学习更高级别的形状或颜色信息。在一些实施方式中,各种cnn层的节点处的值是所述特征。例如,如果cnn的最后一层有4096个节点,那么特征矢量的大小可以为4096。

在特征提取之前,可以将轨迹边界框放大x%(通常为20%),以帮助处理底层检测边界框中的抖动。在一些实施方式中,可以将边界框扩大5%至40%,但更小和更低的范围也是可以的。在一个实施方式中,该模型中的cnn308的维度是基于alexnet(参见参考文献no.12),并且具有5个卷积-纠正-池化层,跟着是2个全连接层。在实施方式中,对于所述轨迹的每个帧,cnn308输出的维数为4096个特征。在不同的实施方式中,所述系统使用参考文献no.8的5层定制设计和训练的cnn308。

(4.5)递归神经网络活动分类器

在一些实施方式中,特征提取器314不仅包括cnn308,而且包括基于来自cnn308的输出(例如,cnn特征)来提取时间序列特征的递归神经网络(rnn310)。cnn308按帧对特征进行编码,并且rnn310将来自多个帧(即,时间序列)的特征级联。在其它实施方式中,rnn310不是所述系统的一部分。

由于活动在运动之间可能会有不同的时间间隙(例如,某人是缓慢还是快速进入建筑物),因此将长短期记忆(lstm)网络用作rnn310的时间分量(参见参考文献no.13)。存在多种类型的rnn,包括完全递归、递归、hopfield、双向联想记忆以及其它rnn,并且可以在不同的实施方式中使用其它时间分量。

在实施方式中,lstmrnn310将来自cnn308的4096维的特征矢量作为输入。针对n个帧(通常为n=16个帧)的这些特征的序列按每个帧来更新rnn的内部状态。在一些实施方式中,将n帧序列结束时的rnn310的256维内部状态用作rnn310阶段的输出,该rnn310阶段是最终层分类器(例如,活动分类器312)的输入。

(4.6)活动分类器

在一些实施方式中,所述系统包括活动分类器312,该活动分类器接收来自特征提取器314的输出,所述输出可以是来自轨迹形成306(未示出)、来自cnn308(例如,当rnn310不是所述系统的一部分时,也未示出)或者来自rnn310的输出。基于轨迹形成306(例如,活动轨迹)、cnn308(例如,特征)以及rnn310(例如,时间特征)中的一个或更多个的输出,活动分类器312确定所述关注对象的活动分类。在各种实施方式中,活动分类器312接收来自rnn310(若使用的话)的输入,而如果未使用rnn310,则接收来自cnn308的输入。在一些实施方式中,将活动分类器312配置成向用户的蜂窝电话或中央监测站发送警告和推文(包括活动分类、时间以及图像或视频)。

假定要对k个活动进行分类,具有k个输出的最终全连接层(例如,活动分类器312)给出最终的类概率(例如,最后一层的值是活动分类的结果)。在各种实施方式中,值通常在0到1之间,并且活动类型的高分表示该活动类型的高置信度。根据一些实施方式,在全连接层中,所有节点都连接至前一层的所有节点。另选地,活动分类器312可以是具有k个输出的支持矢量机(svm)(例如,支持矢量网络)分类器,并且可以将来自rnn310的rnn特征发送至svm(参见参考文献no.14)。在各种实施方式中,svm是一种具有对用于分类和/或回归分析的数据进行分析的一个或更多个相关的学习算法的数据的监督学习模型。用于发现svm分类器的一些算法包括子梯度下降和坐标下降。

最终的输出是针对k个类中的每个类的概率或置信度得分(例如75%,或者诸如从0到1的范围)。在将所述系统配置为仅限于识别某些类型的活动的一些实施方式中,可以不使用softmax,而是针对k个输出节点的输出响应布置阈值,以确定何时检测到关注的活动。其它活动(例如,一个人仅仅是在走路)应当没有高于所述阈值的输出,并有效地接收“没有相关活动”的标签。在一些实施方式中,softmax是指对节点值进行归一化,以使它们的总和为1,然后,最高的值成为声明的活动。在赢者通吃实施方式中,具有最高置信度的活动是该轨迹的活动标签。换句话说,虽然最终层中的每个节点都可以表示活动,但将上述方法用于基于那些节点值(例如,80%的人在挖洞、15%的人站着、5%的人在持枪瞄准)来确定最终的输出。

在一些实施方式中,特征提取器314(例如,cnn308和/或rnn310)模块,以及活动分类器312模块针对来自轨迹形成306模块的每个轨迹并行运行。换句话说,特征提取器314(例如,该特征提取器314包括cnn308和/或rnn310),并且活动分类器312可以基于活动轨迹以及先前操作的模块的输出来顺序地操作。在一些实施方式中,来自轨迹形成306的每个轨迹都经历该轨迹自己的308-310-312或308-312处理,其始终是顺序的(每个轨迹)。由于视频中可能有几个轨迹,因此这些轨迹都具有自己的独立处理流水线308-310-312或者308-312,并且生成独立的活动分类结果。在此,“并行运行”是指在各种实施方式中,所述系统可以同时(并行)处理多个轨迹。

对于一些实施方式,图4示出了特征提取器314模块、cnn308模块、rnn310模块以及活动分类器312模块的更多细节。图4包括活动分类子系统400的表示,该活动分类子系统400包括cnn308、rnn310以及活动分类器312。子系统400接收对象轨迹402,并输出活动标签416(例如,活动分类)。层410表示cnn308的最后一层,并且在一些实施方式中,具有4096个节点(例如,特征)。

(4.7)实施

已经针对来自空中平台和地面平台这两者的视频实现和测试了实施方式。用于测试的软件和演示系统在ubuntulinux14.04下运行,并使用nvidiagpu来起作用。在测试运行中,在具有nvidiagtx980mgpu和四核corei7cpu@2.7ghz的dellalienware膝上型电脑上,所述实施方式实现了大约10帧/秒(fps)的近实时吞吐量。

(4.7.1)空中平台

(a)virat数据集

下载实施方式并针对视频和图像检索和分析工具(virat)数据集(http://www.viratdata.org/)评估实施方式。与现有的动作识别数据集相比,该数据集在其分辨率、背景杂波、场景多样性以及人类活动/事件类别方面被设计得对于视频监视领域而言是现实的、自然的以及有挑战性的。所述数据集的一个子集包含执行各种日常活动的人的几个hd视频。地面实况注释指定活动的类型以及每个视频中的活动的边界框和时间范围。注释有12类活动。为了测试,将三对相似的活动组合起来装作一个k=3类活动分类问题:开/关后备箱、进/出车辆以及进/出设施。

所实现的评估仅专注于活动分类(即,cnn308、rnn310以及活动分类器312这三个模块)。使用基于地面实况的视频片段(来自每个活动的16个均匀间隔的帧并将图像重新缩放成360x360的像素)对四种不同的方法进行了评估。将cnn308-rnn310模块用作256维特征提取器,并针对k=3的活动训练了新的svm最后一层分类器(例如,活动分类器1)。针对跨16个帧平均的cnn特征、跨16个帧平均的rnn特征、跨16个帧级联的rnn特征或者从最后一帧中选择的rnn特征对svm进行了训练。使用80%的训练和20%的测试的划分,利用交叉验证来对性能进行评估。图5的表示出了利用这四种方法的正确分类的百分比,并且图6示出了示例性进出设施分类图像。

图6包括某人进入或离开设施的图像602,以及边界框604的表示。

(b)内部数据集

还收集活动视频并将该活动视频用于测试活动识别分类器的一些实施方式的一般化性能。所述数据是从安装至建筑物的向下观看停车场的两个平移-倾斜-变焦监视摄像头收集的。当人们经过停车场(具体来说,执行打开/关闭后备箱和进/出车辆的活动(例如,参见图7和图8的视频图像))时,每个摄像头都记录了大约45分钟的视频。

图7包括分别表示挨着打开的后备箱的人的图像702、表示两辆车之间的人的图像704以及表示在关闭的后备箱附近的人的图像706。图7还包括分别表示挨着关闭的后备箱的人的图像708以及未挨着车辆后备箱的人的图像710。

图8包括挨着打开的后备箱的人的图像802,以及进入车辆或从车辆中出来的人的图像804。

地面实况已经完成,利用边界框以及开始/停止时间对所述视频进行了注释。这导致47个后备箱打开/关闭序列和40个进/出车辆序列。活动边界框具有大约160x160的像素的分辨率。根据有关3个类(打开/关闭后备箱、进/出车辆、进/出建筑物)的virat数据集来使用针对由cnn提取的特征进行了训练的分类器。对38/40的车辆活动和32/37的后备箱活动进行正确分类,并且总体上有80.5%的正确的总性能(参见图9)。

(4.7.2)地面平台

针对来自移动的地面车辆的可见域彩色视频,也已经完成了整个活动识别流水线(例如,对象检测304、轨迹形成306、cnn308、rnn310、活动分类器312)的实施方式的端到端测试和评估。对于一些实施方式,可以使用附加或不同的模块来构成整个活动识别流水线。

针对该数据集完成了两次评估。第一次评估专注于具有k=12个人类活动的活动分类。针对大约427,000个活动片段中的80/20分割,来对cnn308、rnn310以及活动分类器312这三个模块进行评估。由于所述视频中的一些视频中的人物距离很远,因此所述评估专注于目标上的垂直像素的数量大于50个像素的人类活动。如图10所示,13类活动的全局准确度=56.69%。

第二次评估针对30个视频完成了具有五个集成模块(对象检测304、轨迹形成306、cnn308、rnn310、活动分类器312)的整个系统的评估,并且图11中示出了结果。将这些视频隔绝,并且不在任何训练步骤中使用或观看。用于该评估的对象检测模块使用来自参考文献no.8中的信息。每16帧对轨迹进行分类;然后将该轨迹最频繁出现的标签应用于该轨迹中的所有帧。将输出与地面实况进行比较并进行roc评估(图6)。这些评估不涉及按目标上的像素的数量(例如,构成关注对象的总像素)进行过滤。结果表明,在fppi<0.02时,总体准确度为29%。该数据集的机会准确度为8%。为了比较,观看这些视频的人类观察者正确地识别了这些视频中的大约35%的视频。准确度低是由于所述视频中的人类目标的相对较小的尺寸和混杂活动的缘故。例如,携带蜂窝电话的人和携带水瓶的人从远处看非常相似。

(4.8)装置的控制。

如图12所示,可以使用处理器104基于上述模块中的一个或更多个模块的输出,来控制装置1204(例如,移动装置显示器、虚拟现实显示器、增强现实显示器、计算机监视器、电动机、机器、无人机、摄像机等)。例如,可以基于由活动分类器312确定的活动分类来控制装置1204。

可以将对装置1204的控制用于发送视觉警告、音频警告或电子警告中的至少一种,例如有关所关注对象的活动分类(例如,行人可以被给予移动到车辆的路径中的活动分类)。例如,如果发生关注的事件(例如,活动分类),则视觉警告可能是警告灯、显示器上提供的消息或者检测到的对象的图像。声音警告可以是音调或其它声音。电子警告可能是电子邮件、文本消息或社交媒体消息。

在其它实施方式中,可以对装置1204进行控制以使装置1204基于所述预测来移动或以其它方式开始物理动作(例如,机动)。在一些实施方式中,可以控制空中飞行器或地面车辆(例如,无人机)以移动和/或改变移动,例如朝向或远离与关注的活动分类有关的关注对象。换句话说,装置1204可以是被用于使摄像机(或传感器)或其它机器移动的致动器或电动机。在其它实施方式中,装置1204可以是摄像机或车辆或其它机器。在一些附加实施方式中,装置1204可以接收警告和/或推文(包括活动分类、时间以及图像或视频)或者向用户的蜂窝电话或中央监测站发送所述警告和/或推文。示例操作可以包括改变摄像机的视场(例如,取向)以包围或者以其它方式指向检测到分类活动的位置,这可以允许视频图像以正在执行所分类的关注活动的关注对象为中心和/或针对所述关注对象进行放大。基本的电动机命令在本领域中是已知的,就像用于保持或改变位置、速度、加速度以及取向的系统和算法那样。

图13是例示根据实施方式的用于预测一个或更多个关注对象的移动的操作的流程图。在操作1302中,检测视频数据中的关注对象的集合并且确定所述关注对象的集合中的每个对象的对象分类,所述集合包括至少一个关注对象。在操作1304中,通过跨多个帧跟踪所述关注对象的集合中的每个对象来形成每个对象的对应的活动轨迹。在操作1306中,针对每个关注对象并且使用特征提取器,通过基于对应的活动轨迹执行特征提取来确定所述视频数据中的对应特征,所述特征提取器包括卷积神经网。在操作1308中,针对每个关注对象,基于所述特征提取器的输出,确定每个关注对象的对应的活动分类。在操作1310中,向用户的蜂窝电话或者向中央监测设施报告每个关注对象的对应的活动分类。

最后,虽然已经根据几个实施方式对本发明进行了描述,但本领域普通技术人员应当容易地认识到本发明在其它环境中可以具有其它应用。应注意到,可以有许多实施方式和实现。而且,所附的权利要求绝不是旨在将本发明的范围限制成上述具体实施方式。另外,“用于…的装置(means)”的任何陈述都旨在唤起对部件和权利要求的装置加功能的解读,而不具体使用陈述“用于…的装置(means)”的任何部件不是旨在被解读为装置加功能部件,即使权利要求以其它方式包括了“装置(means)”一词。而且,虽然已经按特定次序陈述了特定的方法步骤,但这些方法步骤可以按任何期望的次序发生并且落入本发明的范围内。

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