CN113632094A - 存储器引导的视频对象检测 - Google Patents
存储器引导的视频对象检测 Download PDFInfo
- Publication number
- CN113632094A CN113632094A CN201980094235.2A CN201980094235A CN113632094A CN 113632094 A CN113632094 A CN 113632094A CN 201980094235 A CN201980094235 A CN 201980094235A CN 113632094 A CN113632094 A CN 113632094A
- Authority
- CN
- China
- Prior art keywords
- feature extractor
- network
- features
- computer
- feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 199
- 238000000034 method Methods 0.000 claims abstract description 106
- 238000012549 training Methods 0.000 claims description 67
- 230000003044 adaptive effect Effects 0.000 claims description 60
- 230000006870 function Effects 0.000 claims description 30
- 230000009471 action Effects 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 11
- 230000000694 effects Effects 0.000 claims description 10
- 230000001360 synchronised effect Effects 0.000 claims description 10
- 230000001934 delay Effects 0.000 claims description 5
- 230000003416 augmentation Effects 0.000 claims 1
- 238000004091 panning Methods 0.000 claims 1
- 238000013528 artificial neural network Methods 0.000 description 15
- 238000010801 machine learning Methods 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000002787 reinforcement Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000000306 recurrent effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000008014 freezing Effects 0.000 description 1
- 238000007710 freezing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/285—Selection of pattern recognition techniques, e.g. of classifiers in a multi-classifier system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/776—Validation; Performance evaluation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/87—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using selection of the recognition techniques, e.g. of a classifier in a multiple classifier system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
提供了用于检测视频中的对象的系统和方法。一种方法可以包括将包括多个帧的视频输入到包括多个特征提取器网络和共享存储器层的交织对象检测模型中。针对一个或多个帧中的每个帧,操作可以包括选择多个特征提取器网络中的一个特征提取器网络以分析所述一个或多个帧,由所选择的特征提取器网络分析所述一个或多个帧以确定所述一个或多个帧的一个或多个特征,至少部分地基于所述一个或多个特征和从存储在共享存储器层中的先前帧提取的一个或多个先前提取特征来确定更新的特征集,以及至少部分地基于更新的特征集来检测所述一个或多个帧中的对象。
Description
技术领域
本公开一般涉及存储器引导的视频对象检测。更具体地,本公开涉及使用交织对象检测模型的系统和方法,该交织对象检测模型可以采用多个特征提取器网络和共享存储器层来分析视频的帧以检测和跟踪对象。
背景技术
图像对象检测的最新进展已经遵循了越来越精细的卷积神经网络设计的趋势,以提高准确性或速度。尽管准确性最初是主要考虑并且继续是关键度量,但是随着深度学习技术已经越来越多地部署在实际应用中,提高这些模型的速度的重要性已经稳步上升。在速度谱的远端,已经进行了大量工作来允许神经网络在移动设备上运行,移动设备表示具有极端计算和能量约束的环境。然而,尽管有显著的进步,还没有任何单帧检测模型能够实现能够在移动设备上实时运行神经网络而没有实质上的准确性损失的最终目标。
发明内容
本公开的实施例的方面和优点将在以下描述中部分地阐述,或者可以从描述中学习,或者可以通过实施例的实践来学习。
本公开的一个示例方面涉及一种用于检测视频中的对象的计算机实现的方法。该计算机实现的方法可以包括将视频输入到包括第一特征提取器网络、第二特征提取器网络和共享存储器层的交织对象检测模型中,所述视频包括多个帧。该方法还可以包括利用所述第一特征提取器网络分析所述视频的初始帧以确定初始化的特征集。该方法还可以包括将所述初始化的特征集存储在所述共享存储器层中。针对视频的一个或多个后续帧中的每一个,该方法还可以包括选择所述第一特征提取器网络或所述第二特征提取器网络来分析所述后续帧,由所选择的特征提取器网络分析所述后续帧以确定所述后续帧的一个或多个后续特征,至少部分地基于所述一个或多个后续特征来确定更新的特征集,以及至少部分地基于所述更新的特征集来检测所述后续帧中的对象。
本公开的另一示例方面涉及一种计算系统,包括一个或多个处理器和一个或多个非暂时性计算机可读介质,所述一个或多个非暂时性计算机可读介质共同存储指令,所述指令在由所述一个或多个处理器执行时使所述计算系统执行操作。所述操作可以包括将视频输入到包括多个特征提取器网络和共享存储器层的交织对象检测模型中。所述视频可以包括多个帧。针对一个或多个帧中的每一个,所述操作可以包括选择所述多个特征提取器网络中的一个特征提取器网络来分析所述一个或多个帧。操作还可以包括由所选择的特征提取器网络分析所述一个或多个帧以确定所述一个或多个帧的一个或多个特征。所述操作还可以包括至少部分地基于所述一个或多个特征和从存储在所述共享存储器层中的先前帧中提取的一个或多个先前提取特征来确定更新的特征集。所述操作还可以包括至少部分地基于所述更新的特征集来检测所述一个或多个帧中的对象。
本公开的另一示例方面涉及一种训练包括第一特征提取器网络、第二特征提取器网络和共享存储器层的交织对象检测模型的计算机实现的方法。该方法可以包括将包括多个图像帧的训练视频输入到所述交织对象检测模型中。针对视频的一个或多个帧,该方法还可以包括随机选择所述第一特征提取器网络或所述第二特征提取器网络。该方法还可以包括用所选择的特征提取器网络分析所述训练视频的一个或多个图像帧以确定所述多个图像帧中存在的一个或多个检测到的对象。该方法还可以包括至少部分地基于地面实况检测与所述一个或多个检测到的对象的比较来确定检测损失函数。该方法还可以包括至少部分地基于所述检测损失函数来训练所述交织对象检测模型。
本公开的另一示例方面涉及训练用于对象检测模型的自适应交织策略网络的计算机实现的方法。所述对象检测模型可以包括所述自适应交织策略网络、被配置用于准确性的第一特征提取器网络、被配置用于速度的第二特征提取器网络、以及共享存储器层。该方法可以包括将训练数据输入到所述对象检测模型中以生成一个或多个批量的推断数据,每个批量的推断数据包括状态数据、动作数据和奖励函数数据。该方法还可以包括至少部分地基于所述一个或多个批量的推断数据来训练所述自适应交织策略网络。
本公开的其它方面涉及各种系统、方法、装置、非暂时性计算机可读介质和计算设备。
参考以下描述和所附权利要求,本公开的各种实施例的这些和其它特征、方面和优点将变得更好理解。并入本说明书中并构成本说明书的一部分的附图示出了本公开的示例实施例,并且与描述一起用于解释相关原理。
附图说明
在参考附图的说明书中阐述了针对本领域普通技术人员的实施例的详细讨论,其中:
图1描绘了根据本公开的示例方面的示例交织对象检测模型;
图2描绘了根据本公开的示例方面的使用固定交织策略的示例交织对象检测模型;
图3描绘了根据本公开的示例方面的示例共享存储器层;
图4描绘了根据本公开的示例方面的使用自适应交织策略的示例交织对象检测模型;
图5描绘了根据本公开的示例方面的用于交织对象检测模型的示例同步模式和异步模式;
图6A描绘了根据本公开的示例方面的示例计算系统的框图;
图6B描绘了根据本公开的示例方面的示例计算设备的框图;
图6C描绘了根据本公开的示例方面的示例计算设备的框图;
图7描绘了根据本公开的示例实施例的用于检测视频中的对象的示例方法的流程图;
图8描绘了根据本公开的示例实施例的用于训练交织对象检测模型的示例方法的流程图;
图9描绘了根据本公开的示例实施例的用于训练对象检测模型的自适应交织策略网络的示例方法的流程图。
在多个图中重复的附图标记旨在标识各种实现方式中的相同特征。
具体实施方式
概述
一般而言,本公开涉及一种交织对象检测模型,该交织对象检测模型可以采用多个特征提取器网络和共享存储器层来分析视频的帧以检测和跟踪对象。具体地,交织对象检测模型可以包括第一特征提取器网络(例如,第一卷积神经网络)和第二特征提取器网络(例如,第二卷积神经网络),该第一特征提取器网络和第二特征提取器网络可以具有反映准确性与计算延迟之间的不同权衡的不同属性,例如,第一特征提取器网络可以是常规特征提取器网络,并且第二特征提取器网络可以是具有显著更短运行时间的轻量特征提取器网络。交织对象检测模型可以选择第一特征提取器网络或第二特征提取器网络中的任一个来分析视频中的帧。例如,在一些实现方式中,第一特征提取器网络可以从视频的第一帧提取特征,并且将第一提取特征存储在共享存储器层(例如,LSTM层)中。第二特征提取器网络可以在一个或多个后续帧上运行以提取后续特征,并且后续特征可以与第一提取特征融合以更新后续帧的特征。然后,对象检测模型可以基于融合特征来检测对象。然后,第一特征提取器网络可以定期地运行在后续帧上以确定更新的特征,并且可以将更新的特征存储在共享存储器层中。此外,交织对象检测模型可以实现各种交织策略,诸如自适应交织策略或固定交织策略,以选择分别使用哪个特征提取器网络来分析视频的每个相应帧。特征提取器网络还可以被配置为以同步模式或异步模式操作,其中在该同步模式中对于每个帧一次运行单个提取器网络(例如,顺序地),在异步模式中,该特征提取器网络以并行线程运行(例如,并发地)。
因为相邻视频帧往往是相似的,所以对多个帧运行单个特征提取器很可能导致大部分冗余计算。本公开涉及允许神经网络在存储器的辅助下以非常少的计算量执行视频对象检测的系统和方法。例如,根据本公开的示例方面的交织对象检测模型可以包括多个特征提取器网络和共享存储器层。第一特征提取器网络可以被配置用于准确性,并且第二特征提取器网络可以被配置用于速度。准确特征提取器网络可以初始化并维护存储器,而速度特征提取器网络可以用于从新帧中快速地提取少量必要特征。
在一些方面,本公开的示例对象检测模型类似于人类视觉系统。例如,人类视觉不对单个图像进行操作,而是对图像流进行操作。即使使用仅持续几分之一秒的单眼注视,人类视觉系统也能够通过依赖于上下文提示和记忆来补充视觉系统对图像的理解,从而形成复杂环境的丰富表示。这种现象被称为识别场景的“要点(gist)”,并且通过依赖于相关的现有知识来实现。因此,在一些方面,本公开的示例对象检测模型与人类视觉系统中的要点的角色并行,因为两者都需要最少计算并且依赖记忆来起效。
更具体地,本公开提供一种新颖的交织框架,其中具有不同速度和识别能力的两个(或更多个)特征提取器网络可以在不同的图像帧上运行。例如,特征提取器网络可以具有不同的计算延迟、输入分辨率以及对象检测和识别能力。作为示例,第一特征提取器网络可以被配置用于准确性(例如,具有增加的对象检测能力和/或较高的输入分辨率),并且第二特征提取器网络可以被配置用于速度(例如,具有降低的对象检测能力和/或较低的输入分辨率)。来自这些提取器的特征可以用于维护图像中的场景的共同视觉记忆。例如,共同视觉记忆可以以LSTM层的形式维护。对于由被配置用于准确性的特征提取器网络分析的帧,从帧提取的特征可以用于检测对象,并且提取的特征可以被存储在共享存储器层中。对于由被配置用于速度的特征提取器网络分析的帧,从图像提取的特征可以与来自先前帧的特征(例如,来自被配置用于准确性的特征提取器网络分析的帧的在共享存储器层中最近存储的特征)融合。此外,然后可以从融合特征生成检测。
在一些实现方式中,自适应交织策略可以在交织对象检测模型中(例如,通过轻量级自适应交织策略网络)实现,该交织对象检测模型可以选择特征提取器网络中的一个来分析个别帧。例如,在一些实现方式中,可以训练交织对象检测模型以决定何时应当使用特定特征提取器网络来使用先前存储的特征(例如,记忆)和随后提取的特征(例如,要点)的组合来分析帧。例如,可以通过将任务制订(formulating)为强化学习问题来学习自适应交织策略。在一些实现方式中,包括速度奖励分量和准确性分量的奖励函数可以用于训练自适应交织策略。例如,速度奖励可以是固定值,其在轻量、较短计算延迟的特征提取器网络分析帧时被授予。此外,准确性奖励可以基于检测损失,其中该检测损失至少部分地基于最小损失特征提取器(例如,被配置用于准确性的特征提取器)与所选择的特征提取器网络之间的损失差而确定。
在一些实现方式中,可以实现固定交织策略以选择特征提取器来分析个别帧。例如,可调谐交织比率超参数τ可以用于选择特征提取器网络以分析个别帧,使得一个特征提取器网络在τ个帧已经被另一特征提取器网络分析之后运行。作为示例,可以在τ个帧已经由被配置用于速度的特征提取器网络分析之后,运行被配置用于准确性的特征网络,并且可以将提取的特征存储在共享存储器层中。被配置用于速度的特征提取器网络可以针对其它帧运行,并且可以通过将提取的特征与先前存储的特征进行融合来生成检测。
在一些实现方式中,交织对象检测模型可以被配置为以同步模式操作。例如,单个特征提取器网络可以以顺序方式在每个时间步(例如,每个帧)运行。例如,对于帧Ik,第一特征提取器网络可以分析该帧,并且对于后续帧Ik+1,一旦第一特征提取器网络已经分析了帧Ik,第二特征提取器网络就可以分析该帧Ik+1。
在一些实现方式中,交织对象检测模型可以被配置为以异步模式操作。例如,两个(或更多个)特征提取器网络可以被配置为在并行线程中运行。例如,第一特征提取器网络可以分析帧Ik,而第二特征提取器网络分析帧Ik+1。此外,由于第一特征提取器网络可能需要比第二特征提取器网络更长的运行时间,所以第二特征提取器网络可以在第一特征提取器网络分析帧Ik的同时分析帧Ik+1。换句话说,对第一帧Ik和第二帧Ik+1的分析可以重叠。由于第二特征提取器网络的运行时间可以比第一特征提取器网络短,所以第二特征提取器网络可以进一步分析一个或多个附加帧(例如,帧Ik+2,Ik+3,…)而第一特征提取器网络继续分析帧Ik。此外,在一些实现方式中,第一特征提取器网络可以在完成对帧的分析时更新共享存储器层,并且可以将针对后续帧所提取的特征与共享存储器层中最近存储的特征进行融合以生成检测。
虽然其它对象检测方法(特别是基于流的方法)也提供了基于交织的快速和慢速网络的快速视频对象检测的方法,但是这些方法基于CNN特定观察,即中间特征可以被光流扭曲。然而,本公开可以利用视觉记忆来跟踪对象,并且因此不依赖于光流。本公开的示例方法和系统已经展示了前所未有的在线(例如,实时)性能,从而在移动计算设备上实现72.3FPS(帧每秒)的后优化,同时匹配ImageNetVID2015基准的本领域中最先进的性能。
本公开的系统和方法提供许多技术效果和益处。例如,通过提供共享存储器层,本发明允许基于一个或多个先前检测到的特征来确定特征集。以此方式,基于所存储的存储器层中正在进行的更新的特征集来提供改进的对象检测。在确定初始特征集之后,可以以降低的处理成本更快地执行确定后续特征集的分析,因为可以在所存储的存储器层中建立所确定的特征中的至少一些特征。因此,可以使输入视频的正在进行的对象检测过程更有效,具有降低的处理成本和/或改进的处理帧速率。
作为另一示例技术效果和益处,本公开的系统和方法可以允许由第一特征提取器网络和第二特征提取器网络中的任一个来分析后续帧。这样,该方法允许以互补的方式组合使用两个或更多个网络。在一些实现方式中,特定特征提取器网络的选择可以基于当前可用的计算机资源。例如,当选择用于分析特定帧的特征提取器网络时,可以考虑处理器可用性、电池资源、存储器资源、同时运行的应用的数量和其它计算机资源参数,从而在当前观察到的计算约束内优化准确性。以此方式,本公开允许例如采用更高效网络以用于后续帧,使得总体处理成本被降低,同时由于共享存储器层而维持了总体检测性能。在一些实现方式中,可以提供不同的特征提取器网络以在不同的规模下操作,使得该方法可以在不同的规模下提供改进的检测性能。
作为另一示例技术效果和益处,本公开的系统和方法可以实现用于选择任一特征提取器网络的自适应交织策略。以此方式,本公开可以根据针对自适应交织策略提供的训练奖励函数来提供速度、效率和/或检测性能的进一步改进。本公开的示例方面可以提供奖励函数以平衡两个或更多个奖励目标,以便提供例如改进的处理效率和对象检测准确性的平衡。例如,可以手动地调谐奖励函数参数以生成针对特定应用的速度和准确性之间的特定平衡而优化的不同的交织对象检测模型。对于每个后续帧,自适应交织策略可以用于选择第一特征提取器网络或第二特征提取器中的任一个,使得本公开提供独立于输入视频的内容的改进的对象检测过程。以这种方式,可以确定对第一特征提取器网络或第二特征提取器的选择,以提供针对输入视频的最有效和/或最准确的对象检测。
作为另一示例技术效果和益处,本公开的系统和方法可以允许异步地执行由第一特征提取器网络和第二特征提取器进行的处理。以此方式,本公开提供了更恒定的、可预测的处理负载。通过以这种方式改进处理器需求的一致性,本公开的系统和方法允许更有效的对象检测,同时维持对象检测准确性。
现在参考附图,将更详细地讨论本公开的示例方面。
示例交织对象检测模型
图1描绘了根据本公开的示例方面的示例交织对象检测模型100。交织对象检测模型100可以包括多个特征提取器网络。例如,如图所示,第一特征提取器网络110和第二特征提取器网络120可以被包括在交织对象检测模型100中。在一些实现方式中,第一特征提取器网络110可以被配置用于准确性,而第二特征提取器网络120可以被配置用于速度。特征提取器网络110/120可以是例如卷积神经网络,并且可以包括一个或多个卷积层。在一些实现方式中,第一特征提取器网络110和第二特征提取器网络120可以具有不同计算延迟。例如,在一些实现方式中,与第一特征提取器网络110相比,第二特征提取器网络120可以具有更短的运行时间。在一些实现方式中,与第二特征提取器网络120相比,第一特征提取器网络110可以具有减少的检测损失。
根据本公开的示例方面,包括多个图像帧130A-130B(例如,图像帧流)的视频130可以被输入到交织对象检测模型100中。例如,视频130的初始帧130A可以由第一特征提取器网络110分析以从帧130A提取一个或多个特征140。然后,可以将该一个或多个特征140存储在共享存储器层150中。在一些实现方式中,共享存储器层150可以是例如长短期存储器网络。从初始帧130A提取的该一个或多个特征140然后可以用于检测对象。例如,该一个或多个特征140可以被输入到检测层(未示出)中,并且可以从检测层接收检测到的对象输出160。例如,在一些实现方式中,可以检测到对象161,并且输出可以是对象161周围的边界框162。
根据本公开的附加示例方面,可以由第二特征提取器网络120分析后续帧130B以提取后续帧130B中的一个或多个后续特征。此外,该一个或多个后续特征可以与最近存储在共享存储器层150中的一个或多个特征融合。例如,来自由第一特征提取器网络110分析的帧的最近存储的特征可以与由第二特征提取器网络120提取的该一个或多个后续特征融合以确定更新的特征集。然后,可以将更新的特征集合输入到检测层(未示出)中,并且可以从检测层接收检测到的对象输出170。例如,在一些实现方式中,可以检测对象171(例如,来自先前帧的对象161)并且输出可以是围绕对象171的边界框172。这样,如将在本文中更详细描述的,交织对象检测模型100可以使用多个特征提取器网络110/120,以通过用所选择的特征提取器网络110/120分析个别帧130A/B来从视频130提取特征。此外,所提取的特征可以存储在共享存储器层150中,并且对象161/171可以由交织对象检测模型100检测到。
本公开因此解决视频对象检测的任务。对于该任务,本公开的示例对象检测模型可以在视频v={I0,I1,...In}的每个帧上生成帧级别边界框和类预测。本公开的示例模型还可以用于在线设置中,其中当生成针对第k帧的检测时,仅{I0,I1,...Ik}可用。
此外,本公开提供了一种其中多个特征提取器可以顺序地或同时地运行的交织模型框架。如本文所提供的,可以使用存储器机制来聚合和细化由特征提取器网络提取的帧级别特征。此外,对象可以由交织对象检测模型检测,例如通过对细化的特征使用SSD风格检测以产生边界框结果。
本公开的示例方法可以被表示为多个函数。例如,使m个特征提取器是将图像空间映射到中的分离的特征空间。共享存储器层(例如,存储器模块)可以被表示为并且可以将来自f的特征和内部状态表示映射到共同的、细化的特征空间,同时还输出更新的状态。检测层(例如,SSD检测器)可以被表示为并且可以将细化的特征映射到最终检测锚预测。
利用多个特征提取器的本公开的示例对象检测模型提供多个优点。例如,不同特征提取器可以专门针对不同图像特征,这可以产生时间上的模糊效果。此外,特征提取器可以具有显著不同的计算成本。例如,一些特征提取器可以被配置用于准确性(例如,具有低检测损失),而其它特征提取器可以被配置用于速度(例如,具有低运行时间),其可以显著地降低模型的运行时间。本公开的示例交织对象检测模型可以包括任何数量的特征提取器网络。作为示例,在一些实现方式中,特征提取器网络的数量可以是m=2,其中f0(例如,第一特征提取器网络)被配置用于准确性并且f1(例如,第二特征提取器网络)被配置用于速度。
根据本公开的示例方面的交织对象检测模型可以通过运行m(fi(Ik),Sk-1)获得特征映射Fk和更新的状态Sk,在给定先前帧的状态Sk-1的情况下获得关于第k帧的检测结果Dk。换句话说,可以通过将先前帧的状态与从当前帧提取的特征进行融合来获得检测结果。因此,Dk=d(Fk)。
图2示出根据本公开的示例方面的使用固定交织策略的示例交织对象检测模型。例如,如图所示,交织对象检测模型200可以包括第一特征提取器210、第二特征提取器220、共享存储器层230和一个或多个检测层240。对于每个帧Ik 250,可以获得检测Dk 260。
根据本公开的示例方面,在一些实现方式中,可以使用固定交织策略,其中第一特征提取器210或第二特征提取器220用于使用可调谐交织比率超参数τ来分析个别帧Ik。例如,超参数τ可以用于选择特征提取器网络210/220以分析个别帧Ik,使得在τ帧已经被另一特征提取器网络分析之后运行一个特征提取器网络。例如,如图2所示,τ=2,其中第一特征提取器网络210可以分析帧It-3,而第二特征提取器网络220可以分析后续帧It-2和It-1。对于帧It,然后可以运行第一特征提取器网络210,然后第二特征提取器网络220可以分析后续帧It+1和It+2。注意,运行任何特征提取器(例如,选择任何有效i)将产生有效检测结果,但是检测的质量和更新的状态表示可能变化。因此,可能期望找到一种交织策略,使得对象检测模型200的平摊运行时间类似于f1(例如,第二特征提取器网络220),同时保持排他地运行f0(例如,第一特征提取器网络210)的准确性。因此,简单的固定交织策略可能需要定义超参数τ、交织比以及在f1运行τ次之后的运行f0。
在一些实现方式中,f0(例如,第一特征提取器网络210)和f1(例如,第二特征提取器网络220)可以具有不同的计算延迟。例如,第一特征提取器网络210可以具有比第二特征提取器网络220更长的运行时间。此外,第一特征提取器网络210可以具有比第二特征提取器网络220更低的检测损失。此外,第一特征提取器网络210和第二特征提取器网络220可以具有不同的输入分辨率。例如,在一些实现方式中,f0的架构可以是第一卷积神经网络(例如,具有1.4的深度乘数和320×320的输入分辨率的标准MobileNetV2),并且f1的架构可以是第二卷积神经网络(例如,具有0.35深度乘数和160×160的降低的输入分辨率的MobileNetV2架构),在这样的配置中,可能需要移除最后步幅卷积上的步幅以使输出尺寸匹配。在一些实现方式中,检测层240可以是例如输出具有256的恒定信道深度和卷积框预测器的SSD特征映射的SSDLite层。在一些实现方式中,锚点的纵横比可以限制为{1,0.5,2.0}。
示例共享存储器层
图3中描绘了根据本公开的示例性方面的示例共享存储器层(例如,存储器模块)300。共享存储器层300可以允许使用时间提示来扩充粗略特征,例如当使用被配置用于速度的特征提取器网络时。共享存储器层300可以聚合来自不同特征提取器的特征。共享存储器层300可以从不同特征空间接收输入特征,并且将它们投影到共享特征空间中。此外,共享存储器层300可以在非常短的运行时间内对所有帧执行,同时保持长期依赖性。
共享存储器层300可以被配置为接收输入302(例如,来自特征提取器网络的空间特征映射)和来自先前帧的共享存储器层的状态ht-1 304(例如,来自先前帧的特征提取器网络的空间-时间特征映射)。状态ht-1304可以被切成组306,并且可以单独地处理成组的卷积。给定具有N个信道的先前状态ht-1 304和具有M个信道的输入特征映射xt,共享存储器层可以将状态ht-1 304信道方式划分成G个分区1ht-1,2ht-1...Ght-1。使因此每个分区具有K个信道。然后,可以由一个或多个卷积层处理每组切片306。例如,对于每个组,可以执行以下操作:
其中gct和ght分别是更新的状态的切片和输出的切片。最后,可以以信道方式级联切片以获得ct和ht。注意,表示具有权重W、输入X、j个信道和k个输出信道的深度方式可分离卷积,φ表示ReLU激活函数,表示Hadamard乘积,σ表示S形函数,并且[a,b]表示a和b的信道方式级联,如图3所示,在一些实现方式中,具有320信道状态的组的数量是G=4。
如308处所示,切片306可以与输入302级联,并且由瓶颈门310处理。瓶颈门310可以包括一个或多个卷积层。如图3所示,状态ht-1304可以具有尺寸H×W×N,输入302可以具有尺寸H×W×N,每个切片可以具有尺寸H×W×N/G,并且在308处的级联之后,到瓶颈门310的输入可以具有尺寸瓶颈门310的输出可以被输入到遗忘门312中。遗忘门312可以包括一个或多个卷积层。
类似地,在316处,可以将内部单元状态ct-1314按信道方式被切成G个分区,并且在318处,可以将切片316按元素方式乘以遗忘门312的输出。遗忘门312可以包括一个或多个卷积层。瓶颈门310的输出可以由输入门320和一个或多个卷积层322处理。在324处,卷积层322与输入门320的输出可以相乘,并且可以将输出324添加(在326处)到318处的输出以生成更新的状态ct328的切片,该切片可以以信道方式级联以生成更新的状态ct328。瓶颈门310的输出可以被输入到输出门330中,并且输出门330的输出可以与状态ct328的切片相乘,以生成更新的状态ht332的切片,该切片可以以信道方式级联以生成更新的状态ht332。输出门330可以包括一个或多个卷积层。瓶颈门310的输出可以在334处与更新的状态ht332的切片级联以生成输出336。
实际上,共享存储器层300(例如,长短期存储器网络)可能无法跨更新完全地保留其状态。输入门320和遗忘门312的S形激活可能很少完全饱合,这可能导致缓慢的状态衰减,其中长期依赖性逐渐丢失。当在许多步骤上复合时,使用f1特征提取器网络的预测可能降级,除非重新运行f0特征提取器网络。
为了解决这个问题,本公开的附加方面提供在f1特征提取器网络分析帧时跳过状态更新。换句话说,来自f0特征提取器网络上次运行的输出状态可以总是被重用。这可以大大提高共享存储器层300跨长序列传播时间信息的能力,从而即使在仅f0特征提取器网络运行数十步时也使准确性损失最小。
示例训练方法
本公开的示例方面进一步提供用于训练交织对象检测模型。例如,可以在没有检测层的情况下预训练交织对象检测模型的特征提取器网络,诸如在分类训练数据集(例如,Imagenet分类训练数据集)上预训练,以便确定用于对象检测模型的初始权重集,诸如共享存储器层(例如,LSTM层)。此外,可以移除检测层d,并且可以在共享存储器层(例如,LSTM层)之后立即添加平均池化和完全连接层,随后是softmax分类器。
在一些实现方式中,可以生成训练视频。例如,训练数据集中的每个帧可以被复制多次(例如,三次),并且共享存储器层(例如,LSTM层)可以展开到类似数量的步骤(例如,三步)。在每个步骤处,可以选择随机特征提取器网络来分析特定帧。在一些实现方式中,随机选择可以均匀地分布在多个特征提取器网络之间。作为示例,可以使用两个特征网络之间的50/50随机选择。
此外,可以执行检测训练(例如,单状态检测(SSD)训练)。例如,共享存储器层(例如,LSTM层)可以展开为多个步骤(例如,六个步骤),并且可以在每个步骤处选择随机特征提取器。在一些实现方式中,随机选择可以均匀地分布在多个特征提取器网络之间。本公开的对象检测模型可以在视频数据和图像数据的混合上被训练。例如,在一些实现方式中,可以在两个或更多个连续静态图像帧之间执行一个或多个增强效果。作为示例,可以通过在每一步处修剪特定区域并且在各步之间平移(例如,移位)该修剪来模仿平移和变焦来增强图像帧。这可以帮助交织对象检测模型学习运动与框位移之间的关系。在一些实现方式中,可以在训练交织对象检测模型时实现单状态检测(SSD)训练。例如,在一些实现方式中,可以实现带有余弦衰减的大小为12的批量和0.002的学习速率。
检测损失函数可以用于训练本公开的交织对象检测模型。例如,可以至少部分地基于交织对象检测模型的输出和与地面实况检测的比较来确定检测损失函数。然后,可以至少部分地基于检测损失函数来训练交织对象检测模型。
示例自适应交织策略
在一些实现方式中,可以实现自适应交织策略以进一步改善本公开的示例交织对象检测模型的性能。例如,根据本公开的示例方面,自适应交织策略可以由轻量自适应交织策略网络来实现,该轻量自适应交织策略网络可以使用强化学习来学习。图4中描绘了根据本公开的示例方面的示例自适应交织策略网络400。如图所示,自适应交织策略网络400可以利用来自存储在共享存储器层中的一个或多个先前时间步(例如,在时间步t-1)的一个或多个状态来选择特征提取器网络以分析当前时间步(例如,在时间步t)的帧。例如,如图所示,自适应交织策略网络400(表示为π)可以检查共享存储器层状态,并且输出410下一个特征提取器网络来运行,如图4所示,在一些实现方式中,可以使用双Q学习(DDQN)来训练自适应交织策略网络。
例如,根据本公开的附加示例方面,可以通过定义动作空间、状态空间和奖励函数使用强化学习来训练自适应交织策略网络400。动作空间可以由m个动作组成,其中动作k对应于在下一个时间步运行特定特征提取器网络fk。状态S可以由5个项组成:当前共享存储器层状态和输出ct和ht,以及它们在当前步(ct-ct-1)和(ht-ht-1)期间的变化。还可以使用动作历史项a∈Rm,使得自适应交织策略网络400可以知道其先前的动作,并且可以避免过度地运行特定特征提取器网络(例如,被配置用于准确性的特征提取器网络诸如f0)。动作历史可以保存最近采取的动作的衰减计数。例如,在每个步骤,可以使用等式1:
例如,根据本公开的附加示例方面,奖励函数可以用于在维持准确性的同时在尽可能频繁地运行被配置用于速度的特征提取器网络(例如f1)之间进行平衡。例如,奖励函数可以被定义为速度奖励和准确性奖励的总和。对于速度奖励,当运行被配置用于速度的特征提取器网络(例如f1)时,可以定义正的恒定值β并且可以授予β奖励。对于准确性奖励,可以计算在运行每个特征提取器之后的检测损失,并且可以确定最小损失特征提取器和所选择的特征提取器之间的损失差。例如,最终奖励可以表示为等式2中所示:
其中E(fi)表示在使用来自fi的特征之后的检测损失。
在一些实现方式中,自适应交织策略网络400可以是轻量卷积神经网络,该轻量卷积神经可以预测给定状态的每个状态-动作对的Q值。例如,在一些实现方式中,状态和输出410可以被提供给一个或多个卷积层420、430和440。例如,自适应交织策略网络400可以使用四个卷积状态中的每一个作为单独的组来执行分组卷积,如420处所示。此外,自适应交织策略网络400可以执行深度方式可分离卷积,如430处所示,并且使用最大池化来移除空间维度,如440处所示。然后,自适应交织策略网络400可以级联动作特征向量,并且应用完全连接层以获得m个输出,即每个状态-动作对的Q值,如450所示。
根据本公开的示例方面,可以通过以推断模式运行交织对象检测模型来生成一批推断数据(St,a,St+1,Rt)来训练自适应交织策略网络400。例如,训练数据可以被输入到交织对象检测模型中。在一些实现方式中,包括自适应交织策略网络400的整个交织对象检测模型可以被端对端地训练。在其它实现方式中,对象检测模型可以被预训练(例如,可以针对缺少自适应交织策略网络400的特征提取器网络确定预训练的权重),并且可以通过冻结自适应交织策略网络400之外的所有权重来训练自适应交织策略网络400。在生成批量推断数据之后,可以至少部分地基于批量推断数据来训练自适应交织策略网络400。例如,在一些实现方式中,自适应交织策略网络400可以使用具有经验重放的标准DDQN来训练。示例训练过程在以下算法中详细描述:
算法1:自适应交织训练过程
一旦训练了自适应交织策略网络400,则自适应交织策略460就可以由交织对象检测模型实现,以选择特征提取器网络来分析特定帧,如图4所示。
示例同步和异步配置
在一些实现方式中,根据本公开的示例方面的交织对象检测模型可以在同步模式或异步模式下运行。例如,如图5所示,描述了同步模式500和异步模式550。
如图5所示,在同步模式中,可以顺序地分析多个顺序图像帧510A-510C。例如,帧510A可以对应于帧It-2,帧510B可以对应于帧It-1,而帧510C可以对应于帧It。在每个时间步处,可以运行单个特征提取器网络。例如,可以在520A处由第一特征提取器网络(例如,被配置用于准确性的特征提取器网络)来分析帧510A,并且在分析之后,可以确定检测Dt-2530A。一旦分析了帧510A,就可分析帧510B。例如,可以在520B处由第二特征提取器网络(例如,被配置用于速度的特征提取器网络)来分析帧510B,该第二特征提取器网络具有比第一特征提取器网络更短的运行时间。在分析之后,可以确定检测Dt-1 530B。同样,在520C处,第二特征提取器网络(例如,被配置用于速度的特征提取器网络)可以再次在帧510C上运行,并且可以确定检测Dt 530C。因此,如图所示,可以在每个时间步运行单个特征提取器网络,并且可以在分析先前帧It-1之后顺序地执行对每个帧It的分析。
然而,当同步地运行交织对象检测模型时,在每个时间步t处运行一个特征提取器网络,因此最大潜在延迟取决于最慢特征提取器网络(例如,被配置用于准确性的f0特征提取器网络)的延迟。
根据本公开的附加方面,对象检测模型可以被配置为以异步模式运行,如图5所示。如图所示,每个特征提取器网络可以被配置为在并行线程中并发运行。例如,如图所示,帧It-2 560A可以在570A处被提供给第一特征提取器网络(例如,被配置用于准确性的特征提取器网络)和在580A处被提供给第二特征提取器网络(例如,被配置用于速度的特征提取器网络)。在由第二特征提取器网络(例如,被配置用于速度的特征提取器网络)进行分析之后,可以确定检测Dt-2 590A。由于计算延迟的差异,第二特征提取器可以在第一特征提取器网络之前完成对帧It-2 560A的分析。因此,在完成对帧It-2 560A的分析之后,第二特征提取器网络(例如,被配置用于速度的特征提取器网络)可以在580B处分析帧It-1 560B,并且在分析之后,可以确定检测Dt-1 590B。类似地,在完成对帧It-1 560B的分析之后,第二特征提取器网络(例如,被配置用于速度的特征提取器网络)可以在580C处分析帧It 560C。然而,如图所示,第一特征提取器网络(例如,被配置用于准确性的特征提取器网络)可以在与第二特征提取器网络(例如,被配置用于速度的特征提取器网络)完成对帧It 560C的分析几乎相同的时间完成对帧It-2 560A的分析。如图所示,在595,共享存储器层可以将从第一特征提取器网络对帧It-2 560A的分析中提取的特征与从第二特征提取器网络对帧It 560C的分析中提取的特征(例如,共享存储器层中最近存储的特征)相融合。然后,可以从融合特征确定检测Dt 590C,如图所示。换句话说,在异步模式中,第二特征提取器网络(例如,被配置用于速度的特征提取器网络f1)可以在每个时间步t处运行并且专门用于生成检测Dt,而第一特征提取器网络(例如,被配置用于准确性的特征提取器网络f0)可以(以固定交织策略)每τ个帧运行并且在完成对帧的分析时更新共享存储器层。类似地,在自适应交织策略配置中,第二特征提取器网络(例如,被配置用于速度的特征提取器网络f1)可以在每个时间步t处运行并且专门用于生成检测Dt,而第一特征提取器网络(例如,被配置用于准确性的特征提取器网络f0)可以在根据自适应交织策略被选择时运行。因此,在异步配置中,第二特征提取器网络然后可以在每个时间步处使用共享存储器层中最近存储的特征,并且在分析一个或多个帧之前不再必须等待第一特征提取器运行。
通过在异步模式下运行交织对象检测模型所提供的优点在于:异步模式下的最大延迟在所有时间步上通常可以是一致的。这可以允许交织对象检测模型在诸如智能电话的移动设备上实时(例如,在线模式)平顺地运行。
示例设备和系统
图6A描绘根据本公开的示例方面的执行交织视频对象检测的示例计算系统600的框图。系统600包括通过网络680通信地耦合的用户计算设备602、服务器计算系统630和训练计算系统650。
用户计算设备602可以是任何类型的计算设备,诸如例如个人计算设备(例如,膝上型或台式)、移动计算设备(例如,智能电话或平板电脑)、游戏控制台或控制器、可穿戴计算设备、嵌入式计算设备或任何其它类型的计算设备。
用户计算设备602包括一个或多个处理器612和存储器614。该一个或多个处理器612可以是任何合适的处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器614可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等以及它们的组合。存储器614可以存储数据616和由处理器612执行以使用户计算设备602执行操作的指令618。
在一些实现方式中,用户计算设备602可以存储或包括一个或多个交织对象检测模型620。例如,交织对象检测模型620可以是或可以以其它方式包括各种机器学习模型,诸如神经网络(例如,深度神经网络)或其它类型的机器学习模型,包括非线性模型和/或线性模型。神经网络可以包括前馈神经网络、循环神经网络(例如,长短期存储器循环神经网络)、卷积神经网络或其它形式的神经网络。参考图1至图5讨论了示例交织对象检测模型620和/或其组件。
在一些实现方式中,所述一个或多个交织对象检测模型620可以通过网络680从服务器计算系统630接收,存储在用户计算设备存储器614中,并且然后由所述一个或多个处理器612使用或以其它方式实现。在一些实现方式中,用户计算设备602可以实现单个交织对象检测模型620的多个并行实例(例如,跨视频流的多个实例执行并行交织视频对象检测)。
更具体地,如本文所述,交织对象检测模型620可以使用多个特征提取器网络和共享存储器层来执行视频流中的对象检测。在一些实现方式中,交织对象检测模型620包括被配置为实现自适应交织策略的自适应交织策略网络。在一些实现方式中,交织对象检测模型620可以实现固定交织策略。在一些实现方式中,交织对象检测模型620可以以同步和/或异步模式操作。
附加地或替换地,一个或多个交织对象检测模型640可以被包括在根据客户端-服务器关系与用户计算设备602通信的服务器计算系统630中或以其它方式由其存储和实现。例如,交织对象检测模型640可以由服务器计算系统640实现为web服务(例如,视频对象检测服务)的一部分。因此,一个或多个模型620可以存储并且实现在用户计算设备602处,和/或一个或多个模型640可以存储并且实现在服务器计算系统630处。
用户计算设备602还可以包括接收用户输入的一个或多个用户输入组件622。例如,用户输入组件622可以是对用户输入对象(例如,手指或指示笔)的触摸敏感的触敏组件(例如,触敏显示屏或触摸板)。触敏组件可用于实现虚拟键盘。其它示例用户输入组件包括麦克风、传统键盘或用户可以用来提供用户输入的其它装置。
服务器计算系统630包括一个或多个处理器632和存储器634。该一个或多个处理器632可以是任何合适处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器634可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等以及它们的组合。存储器634可以存储数据636和指令638,这些指令由处理器632执行以使服务器计算系统630执行操作。
在一些实现方式中,服务器计算系统630包括一个或多个服务器计算设备或以其它方式由一个或多个服务器计算设备实现。在服务器计算系统630包括多个服务器计算设备的实例中,这样的服务器计算设备可以根据顺序计算架构、并行计算架构或它们的某种组合来操作。
如上所述,服务器计算系统630可以存储或以其它方式包括一个或多个机器学习交织对象检测模型640。例如,模型640可以是或者可以以其它方式包括各种机器学习模型。示例机器学习模型包括神经网络或其它多层非线性模型。示例神经网络包括前馈神经网络、深度神经网络、循环神经网络和卷积神经网络。参考图1至图5讨论了示例模型640和/或其组件。
用户计算设备602和/或服务器计算系统630可以经由与通过网络680通信地耦合的训练计算系统650的交互来训练模型620和/或640。训练计算系统650可以与服务器计算系统630分离的,或者可以是服务器计算系统630的一部分。
训练计算系统650包括一个或多个处理器652和存储器654。该一个或多个处理器652可以是任何合适处理设备(例如,处理器核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是一个处理器或可操作地连接的多个处理器。存储器654可以包括一个或多个非暂时性计算机可读存储介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等以及它们的组合。存储器654可以存储数据656和指令658,这些指令由处理器652执行以使得训练计算系统650执行操作。在一些实现方式中,训练计算系统650包括一个或多个服务器计算设备或以其它方式由一个或多个服务器计算设备实现。
训练计算系统650可以包括模型训练器660,该模型训练器使用各种训练或学习技术(诸如,例如,误差的后向传播、强化学习或如本文所描述的其它技术)来训练存储在用户计算设备602和/或服务器计算系统630处的机器学习模型620和/或640。在一些实现方式中,执行误差的向后传播可以包括执行随时间的截断反向传播。模型训练器660可以执行多种泛化技术(例如,权重衰减、丢弃等)以提高所训练的模型的泛化能力。
特别地,模型训练器660可以基于训练数据集662来训练交织对象检测模型620和/或640。训练数据662可以包括例如图像分类训练数据集、视频流训练数据集、地面实况训练数据集、推断数据训练数据集和/或如本文所述的其它训练数据。
在一些实现方式中,如果用户已经提供同意,则训练示例可以由用户计算设备602提供。因此,在这样的实现方式中,提供给用户计算设备602的模型620可以由训练计算系统650对于从用户计算设备602接收到的用户特定数据进行训练。在一些情况下,该过程可以被称为个性化模型。
模型训练器660包括用于提供期望功能的计算机逻辑。模型训练器660可以以控制通用处理器的硬件、固件和/或软件来实现。例如,在一些实现方式中,模型训练器660包括存储在存储设备上、加载到存储器中并且由一个或多个处理器执行的程序文件。在其它实现方式中,模型训练器660包括存储在有形计算机可读存储介质(诸如RAM硬盘或光或磁介质)中的计算机可执行指令的一个或多个集合。
网络680可以是任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,因特网)、或它们的某种组合,并且可以包括任何数目的有线或无线链路。通常,网络680上的通信可以经由任何类型的有线和/或无线连接、使用各种各样的通信协议(例如,TCP/IP、HTTP、SMTP、FTP)、编码或格式(例如,HTML、XML)和/或保护方案(例如,VPN、安全HTTP、SSL)来承载。
图6A示出了可以用于实现本公开的一个示例计算系统。也可以使用其它计算系统。例如,在一些实现方式中,用户计算设备602可以包括模型训练器660和训练数据集662。在这样的实现方式中,模型620可以在用户计算设备602处被训练并且本地使用。在一些这样的实现方式中,用户计算设备602可以实现模型训练器660以基于用户特定数据个性化模型620。
图1B描绘了根据本公开的示例方面的执行视频对象检测的示例计算设备610的框图。计算设备610可以是用户计算设备或服务器计算设备。
计算设备610包括多个应用(例如,应用1至N)。每个应用包含其自己的机器学习库和机器学习模型。例如,每个应用可以包括机器学习模型。示例应用包括文本消息应用、电子邮件应用、口述应用、虚拟键盘应用、浏览器应用等。
如图1B所示,每个应用可以与计算设备的多个其它组件(诸如,例如,一个或多个传感器、上下文管理器、设备状态组件、和/或附加组件)通信。在一些实现方式中,每个应用可以使用API(例如,公共API)与每个设备组件通信。在一些实现方式中,每个应用所使用的API专用于该应用。
图1C描绘了根据本公开的示例方面的执行视频对象检测的示例计算设备670的框图。计算设备670可以是用户计算设备或服务器计算设备。
计算设备670包括多个应用(例如,应用1至N)。每个应用与中央智能层通信。示例应用包括文本消息应用、电子邮件应用、口述应用、虚拟键盘应用、浏览器应用等。在一些实现方式中,每个应用可以使用API(例如,跨所有应用的公共API)与中央智能层(以及存储在其中的模型)通信。
中央智能层包括多个机器学习模型。例如,如图1C所示,可以为每个应用提供相应的机器学习模型(例如,模型),并且由中央智能层管理。在其它实现方式中,两个或更多个应用可以共享单个机器学习模型。例如,在一些实现方式中,中央智能层可以为所有应用提供单个模型(例如,单个模型)。在一些实现方式中,中央智能层被包括在计算设备670的操作系统内或以其它方式由其实现。
中央智能层可以与中央设备数据层通信。中央设备数据层可以是计算设备670的数据的集中式存储库。如图1C所示,中央设备数据层可以与计算设备的多个其它组件(诸如,例如,一个或多个传感器、上下文管理器、设备状态组件、和/或附加组件)通信。在一些实现方式中,中央设备数据层可以使用API(例如,私有API)与每个设备组件通信。
示例方法
图7描绘了根据本公开的示例方面的用于执行交织视频对象检测的示例方法700的流程图。尽管图7出于说明和讨论的目的描绘以特定顺序执行的步骤,但是本公开的方法不限于特定示出的顺序或布置。在不偏离本公开的范围的情况下,可以以各种方式省略、重新布置、组合和/或适配方法700的各种步骤。
在702处,方法700可以包括将视频输入到交织对象检测模型中。例如,视频可以包括多个连续帧。该交织对象模型可以包括多个特征提取器网络和共享存储器层。例如,在一些实现方式中,交织对象检测模型可以包括被配置用于准确性的第一特征提取器网络和被配置用于速度的第二特征提取器网络。
在704处,方法700可以包括用第一特征提取器网络来分析视频的初始帧以确定初始化的特征集。例如,在一些实现方式中,第一特征提取器网络可以是被配置用于准确性的特征提取器网络。
在706处,方法700可以包括将初始化的特征集存储在共享存储器层中。例如,初始化的特征集可以被存储在共享存储器层中以由一个或多个特征提取器网络访问,诸如被配置用于速度的特征提取器网络。
在708处,该方法可以包括选择第一特征提取器网络或第二特征提取器网络以分析后续帧。例如,在一些实现方式中,可以根据固定交织策略来选择第一特征提取器网络或第二特征提取器网络。在一些实现方式中,可以根据自适应交织策略来选择第一特征提取器网络或第二特征提取器网络。例如,在一些实现方式中,自适应交织策略网络可以被包括在交织对象检测模型中,并且自适应交织策略网络可以被训练成通过例如使用包括速度分量和准确性分量的奖励函数来实现自适应交织策略。
在710处,方法700可以包括用所选择的特征提取器网络来分析后续帧,以确定一个或多个后续特征。例如,后续帧可以被输入到所选择的特征提取器网络中,并且该一个或多个后续特征可以由所选择的特征提取器网络提取。
在712处,方法700可以包括至少部分基于后续特征来确定更新的特征集。例如,在一些实现方式中,来自一个或多个先前帧的一个或多个先前存储的特征可以与所述一个或多个后续特征融合以确定更新的特征集。在一些实现方式中,更新的特征集可以是例如所述一个或多个后续特征。在一些实现方式中,更新的特征集可以被存储在共享存储器层中。
在714处,方法700可以包括至少部分基于更新的特征集来检测后续帧中的对象。例如,检测层可以分析更新的特征集以检测对象。
在一些实现方式中,对象检测可以是例如具有边界框的SSD检测。
如图所示,方法700的步骤708至714可以对一个或多个后续帧重复。例如,对于视频流中的每个帧,可以选择相应的特征提取器网络来分析该帧。在一些实现方式中,交织对象检测模型可以被配置为在同步模式下运行,在该同步模式下,多个特征提取器网络被配置为顺序地运行,在该同步模式下,针对每个帧运行单个特征提取器网络。在一些实现方式中,交织对象检测模型可以被配置为以异步模式运行,在该异步模式中,多个特征提取器网络在并行线程中并发运行。
图8描绘了根据本公开的示例方面的用于训练交织对象检测模型的示例方法800的流程图。尽管图8出于说明和讨论的目的描绘了以特定顺序执行的步骤,但是本公开的方法不限于特定示出的顺序或布置。在不偏离本公开的范围的情况下,可以以各种方式省略、重新布置、组合和/或适配方法800的各种步骤。
在802处,方法800可以包括使用图像分类训练数据集预训练第一特征提取器网络、第二特征提取器网络和交织对象检测模型的共享存储器层。在一些实现方式中,交织对象检测模型可以包括任何数量的特征提取器网络,并且每个特征提取器网络可以被预先训练。例如,如本文所述,可以在图像分类训练数据集上训练特征提取器网络和/或共享存储器层,以确定特征提取器网络和/或共享存储器层的初始权重集。
在804处,方法800可以包括从静态图像帧生成训练视频。例如,可以生成多个连续静态图像帧(例如,静态图像帧的顺序副本)并且在视频流中顺序地布置。在一些实现方式中,可以在连续静态图像帧中的两个或更多个之间执行一个或多个增强效果。例如,一个或多个图像增强效果可以包括一个或多个裁剪(例如,选择图像的一部分)、一个或多个变焦(例如,放大或缩小)和/或一个或多个平移(例如,从图像的一部分移位/滑动到另一部分)。
在806处,方法800可以包括将训练视频输入到交织对象检测模型中。例如,来自训练视频的个别帧可以被顺序地输入到交织对象检测模型中。
在808处,方法800可以包括随机选择特征提取器网络以分析特定帧。例如,在一些实现方式中,交织对象检测模型可以包括第一特征提取器网络和第二特征提取器网络,并且第一特征提取器网络或第二特征提取器网络中的任一个可以诸如根据统一随机选择(例如,50/50)来随机选择。
在810处,方法800可以包括用所选择的特征提取器网络来分析一个或多个帧,以确定一个或多个检测到的对象。例如,来自训练视频的一个或多个帧可以被输入到所选择的特征提取器网络中以从该帧提取一个或多个特征。在一些实现方式中,该一个或多个所提取的特征可以用于检测帧中的对象。例如,检测层可以从一个或多个特征检测一个或多个对象。
在812处,方法800可以包括至少部分地基于地面实况检测与所述一个或多个检测到的对象的比较来确定检测损失函数。例如,训练数据集可以包括与在所述一个或多个帧中的检测到的对象相对应的地面实况检测。来自检测层的所述一个或多个检测到的对象可以与地面实况检测进行比较以确定检测损失函数。
在814处,方法800可以包括至少部分地基于检测损失函数来训练交织对象检测模型。例如,在一些实现方式中,误差的向后传播可以用于训练对象检测模型。
如图所示,方法800的步骤808至814可以对一个或多个后续帧重复进行。例如,可以针对训练视频中的每个剩余帧重复步骤808至814。
图9描绘了根据本公开的示例方面的用于训练用于对象检测模型的自适应交织策略网络的示例方法900的流程图。尽管图9出于说明和讨论的目的描绘了以特定顺序执行的步骤,但是本公开的方法不限于特定示出的顺序或布置。在不偏离本公开的范围的情况下,可以以各种方式省略、重新布置、组合和/或适配方法900的各种步骤。
在902处,该方法可以包括将训练数据输入到对象检测模型中以生成一个或多个批量的推断数据。例如,对象检测模型可以包括被配置为实现自适应交织策略的自适应交织策略网络、被配置用于准确性的第一特征提取器网络、被配置用于速度的第二特征提取器网络,以及共享存储器层。训练数据可以被输入到对象检测模型中以生成一个或多个批量的推断数据。
每个批量的推断数据可以包括如本文所述的状态数据、动作数据和奖励函数数据。例如,奖励函数数据可以包括速度奖励和准确性奖励的总和。速度奖励可以是当使用被配置用于速度的第二特征提取器网络时授予的定义值。准确性奖励可以是至少部分地基于最小损失特征提取器网络与所选择的特征提取器网络之间的损失差而确定的检测损失。例如,当选择了被配置用于准确性的第一特征提取器网络时,检测损失可以是零,或者当选择了被配置用于速度的第二特征提取器网络时,检测损失可以是非零的。状态数据可以包括由所选择的特征提取器网络(例如,第一特征提取器网络或第二特征提取器网络)在特定时间步处输出的数据。动作数据可以包括与在特定时间步处运行哪个特征提取器网络(例如,第一特征提取器网络或第二特征提取器网络)相对应的数据。
在904处,方法900可以包括至少部分地基于所述一个或多个批量的推断数据来训练所述自适应交织策略网络。例如,自适应交织策略网络可以被训练以便增加(例如,优化)交织对象检测模型的准确性,同时减少(例如,最小化)交织对象检测模型的延迟(例如,运行时)。
附加公开
本文所讨论的技术参考了服务器、数据库、软件应用和其它基于计算机的系统,以及所采取的动作和发送到这些系统以及来自这些系统的信息。基于计算机的系统的固有灵活性允许组件之间的任务和功能的各种各样的可能配置、组合和划分。例如,本文讨论的过程可以使用单个设备或组件或者组合工作的多个设备或组件来实现。数据库和应用程序可以在单个系统上实现或分布在多个系统上。分布式组件可以顺序地或并行地操作。
虽然已相对于本发明主题的各种特定实例实施例详细描述了本发明主题,但以解释而非限制本发明的方式提供每一实例。本领域技术人员在理解了上述内容之后,可以容易地对这些实施例进行改变、变化和等效替换。因此,本主题公开不排除包括对本领域普通技术人员显而易见的对本主题的这样的修改、变化和/或添加。例如,作为一个实施例的一部分示出或描述的特征可与另一实施例一起使用,以产生又一实施例。因此,本公开旨在覆盖这样的改变、变化和等同物。
Claims (45)
1.一种用于检测视频中的对象的计算机实现的方法,包括:
将视频输入到包括第一特征提取器网络、第二特征提取器网络和共享存储器层的交织对象检测模型中,所述视频包括多个帧;
用所述第一特征提取器网络分析所述视频的初始帧,以确定初始化的特征集;
将所述初始化的特征集存储在所述共享存储器层中;以及
针对所述视频的一个或多个后续帧中的每一个:
选择所述第一特征提取器网络或所述第二特征提取器网络来分析所述后续帧;
由所选择的特征提取器网络分析所述后续帧,以确定所述后续帧的一个或多个后续特征;
至少部分地基于所述一个或多个后续特征来确定更新的特征集;以及
至少部分地基于所述更新的特征集来检测所述后续帧中的对象。
2.根据权利要求1所述的计算机实现的方法,其中,选择所述第一特征提取器网络或所述第二特征提取器网络来分析所述后续帧包括:根据自适应交织策略,至少部分地基于先前存储在所述共享存储器层中的一个或多个特征来选择所述第一特征提取器网络或所述第二特征提取器网络。
3.根据权利要求2所述的计算机实现的方法,其中,所述交织对象检测模型已经被训练以实现所述自适应交织策略。
4.根据权利要求3所述的计算机实现的方法,其中,所述交织对象检测模型已经被训练以至少部分地基于包括速度奖励分量和准确性分量的奖励函数来实现所述自适应交织策略。
5.根据权利要求1所述的计算机实现的方法,其中,选择所述第一特征提取器网络或所述第二特征提取器网络来分析所述后续帧包括:根据固定的交织策略来选择所述第一特征提取器网络或所述第二特征提取器网络。
6.根据前述权利要求中的任一项所述的计算机实现的方法,其中,当所述第一特征提取器网络已经被选择时,至少部分地基于所述一个或多个后续特征来确定所述更新的特征集包括:使用所述一个或多个后续特征作为所述更新的特征集。
7.根据权利要求6所述的计算机实现的方法,还包括:
将所述更新的特征集存储在所述共享存储器层中。
8.根据前述权利要求中的任一项所述的计算机实现的方法,其中,当所述第二特征提取器网络已经被选择时,至少部分地基于所述一个或多个后续特征来确定所述更新的特征集包括:将最近的已经存储在所述共享存储器层中的特征集与所述一个或多个后续特征进行融合。
9.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络和所述第二特征提取器网络被配置为在同步模式中顺序地运行,在所述同步模式中针对每个帧运行单个特征提取器网络。
10.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络和所述第二特征提取器网络被配置为在异步模式中并发地运行,在所述异步模式中所述第一特征提取器网络和所述第二特征提取器网络在并行线程中运行。
11.根据权利要求10所述的计算机实现的方法,其中,所述第一特征提取器网络被配置为定期地更新存储在所述共享存储器层中的所述特征集;
其中所述第二特征提取器网络被配置为分析每个帧以确定所述一个或多个后续特征;以及
其中所述共享存储器层被配置为通过将所述一个或多个后续特征与最近被存储在所述共享存储器层中的所述特征集进行融合来确定所述更新的特征集。
12.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络和所述第二特征提取器网络包括卷积神经网络。
13.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络包括与所述第二特征提取器网络相比具有减少的检测损失的、被配置用于准确性的特征提取器网络。
14.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第二特征提取器网络包括与所述第一特征提取器网络相比具有更短的运行时间的、被配置用于速度的特征提取器网络。
15.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络和所述第二特征提取器网络具有不同的计算延迟。
16.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述第一特征提取器网络和所述第二特征提取器网络具有不同的输入分辨率。
17.根据前述权利要求中的任一项所述的计算机实现的方法,其中,所述共享存储器层包括长短期存储器网络。
18.一种计算系统,包括:
一个或多个处理器;以及
一个或多个非暂时性计算机可读介质,所述一个或多个非暂时性计算机可读介质共同存储指令,所述指令在由所述一个或多个处理器执行时使所述计算系统执行操作,所述操作包括:
将视频输入到包括多个特征提取器网络和共享存储器层的交织对象检测模型中,所述视频包括多个帧;以及
针对一个或多个帧中的每一个:
选择所述多个特征提取器网络中的一个特征提取器网络来分析所述一个或多个帧;
由所选择的特征提取器网络分析所述一个或多个帧,以确定所述一个或多个帧的一个或多个特征;
至少部分地基于所述一个或多个特征和从存储在所述共享存储器层中的先前帧中提取的一个或多个先前提取特征来确定更新的特征集;以及
至少部分地基于所述更新的特征集来检测所述一个或多个帧中的对象。
19.根据权利要求18所述的计算系统,其中,选择所述多个特征提取器网络中的一个特征提取器网络来分析所述一个或多个帧包括:根据自适应交织策略来选择所述多个特征提取器网络中的一个特征提取器网络。
20.根据权利要求19所述的计算系统,其中,所述交织对象检测模型还包括自适应交织策略网络,所述自适应交织策略网络已经被训练以实现所述自适应交织策略。
21.根据权利要求20所述的计算系统,其中,所述自适应交织策略网络已经被训练以至少部分地基于包括速度奖励分量和准确性分量的奖励函数来实现所述自适应交织策略。
22.根据权利要求18所述的计算系统,其中,选择所述多个特征提取器网络中的一个特征提取器网络来分析所述后续帧包括:根据固定的交织策略来选择所述多个特征提取器网络中的一个特征提取器网络。
23.根据权利要求18-22中的任一项所述的计算系统,其中,当所述多个特征提取器网络中的第一特征提取器网络已经被选择时,至少部分地基于所述一个或多个后续特征来确定所述更新的特征集包括:使用所述一个或多个后续特征作为所述更新的特征集。
24.根据权利要求23所述的计算系统,还包括:
将所述更新的特征集存储在所述共享存储器层中。
25.根据权利要求18-24中的任一项所述的计算系统,其中,当第二特征提取器网络已经被选择时,至少部分地基于所述一个或多个后续特征来确定所述更新的特征集包括:将最近的已经存储在所述共享存储器层中的所述特征集与所述一个或多个后续特征进行融合。
26.根据权利要求18-25中的任一项所述的计算系统,其中,所述多个特征提取器网络被配置为在同步模式中顺序地运行,在所述同步模式中针对每个帧运行单个特征提取器网络。
27.根据权利要求18-25中的任一项所述的计算系统,其中,所述多个特征提取器网络被配置为在异步模式中并发地运行,在所述异步模式中所述多个特征提取器网络在相应的并行线程中运行。
28.根据权利要求18-27中的任一项所述的计算系统,其中,所述共享存储器层包括长短期存储器网络。
29.根据权利要求28所述的计算系统,其中,所述长短期存储器网络被配置成将从所述先前帧提取的一个或多个先前提取特征分割成多个切片;
将所述多个切片中的每个切片与所述一个或多个特征组合,以生成多个更新的切片;
使用所述长短期存储器网络的一个或多个卷积层单独地处理所述多个更新的切片中的每一个,以生成多个处理的切片;以及
将所述多个处理的切片组合成处理的输出。
30.根据权利要求18-29中的任一项所述的计算系统,其中,所述一个或多个特征和所述一个或多个先前提取特征各自包括相应的特征映射,所述相应的特征映射包括宽度、高度和多个信道。
31.根据权利要求18-30中的任一项所述的计算系统,其中,所述计算系统包括被配置为以在线模式运行的移动计算设备。
32.一种训练包括第一特征提取器网络、第二特征提取器网络和共享存储器层的交织对象检测模型的计算机实现的方法,包括:
将包括多个图像帧的训练视频输入到所述交织对象检测模型中;以及
针对所述视频的一个或多个帧:
随机选择所述第一特征提取器网络或所述第二特征提取器网络中的任一个;
用所选择的特征提取器网络分析所述训练视频的所述一个或多个图像帧,以确定所述多个图像帧中存在的一个或多个检测到的对象;
至少部分地基于地面实况检测与所述一个或多个检测到的对象的比较来确定检测损失函数;以及
至少部分地基于所述检测损失函数来训练所述交织对象检测模型。
33.根据权利要求32所述的计算机实现的方法,还包括:
使用图像分类训练数据集来预训练所述第一特征提取器网络、所述第二特征提取器网络和所述共享存储器层,以确定所述交织对象检测模型的初始权重集。
34.根据权利要求32所述的计算机实现的方法,还包括:
从静态图像帧生成所述训练视频。
35.根据权利要求34所述的计算机实现的方法,其中,从所述静态图像帧生成所述训练视频包括:生成多个连续静态图像帧并且在两个或更多个连续静态图像帧之间执行一个或多个增强效果。
36.根据权利要求35所述的计算机实现的方法,其中,所述一个或多个增强效果包括一个或多个修剪、变焦或平移。
37.一种训练用于对象检测模型的自适应交织策略网络的计算机实现的方法,所述对象检测模型包括所述自适应交织策略网络、被配置用于准确性的第一特征提取器网络、被配置用于速度的第二特征提取器网络、以及共享存储器层,所述方法包括:
将训练数据输入到所述对象检测模型中以生成一个或多个批量的推断数据,每个批量的推断数据包括状态数据、动作数据和奖励函数数据;以及
至少部分地基于所述一个或多个批量的推断数据来训练所述自适应交织策略网络。
38.根据权利要求37所述的计算机实现的方法,其中,所述奖励函数数据包括速度奖励和准确性奖励的总和。
39.根据权利要求38所述的计算机实现的方法,其中,所述速度奖励包括当使用所述第二特征提取器网络时授予的定义值。
40.根据权利要求38-39中的任一项所述的计算机实现的方法,其中,所述准确性奖励包括检测损失,所述检测损失是至少部分地基于最小损失特征提取器网络与所选择的特征提取器网络之间的损失差来确定的。
41.根据权利要求37-40中的任一项所述的计算机实现的方法,其中,所述状态数据包括由所述第一特征提取器网络或由所述第二特征提取器网络在特定时间步处输出的数据。
42.根据权利要求37-41中的任一项所述的计算机实现的方法,其中,所述动作数据包括与在特定时间步处运行所述第一特征提取器网络或所述第二特征提取器网络相对应的数据。
43.根据权利要求37-42中的任一项所述的计算机实现的方法,其中,所述对象检测模型先前已经被训练。
44.一种装置,所述装置被配置为执行前述权利要求中的任一项所述的方法。
45.一种计算机可读指令,当计算机可读指令由计算装置执行时使得执行前述权利要求中的任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/019102 WO2020171818A1 (en) | 2019-02-22 | 2019-02-22 | Memory-guided video object detection |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113632094A true CN113632094A (zh) | 2021-11-09 |
Family
ID=65686126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980094235.2A Pending CN113632094A (zh) | 2019-02-22 | 2019-02-22 | 存储器引导的视频对象检测 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11961298B2 (zh) |
EP (1) | EP3928247A1 (zh) |
CN (1) | CN113632094A (zh) |
WO (1) | WO2020171818A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208755A (zh) * | 2022-07-13 | 2022-10-18 | 北京交通大学 | 面向物联网设备资源友好的特征提取器部署方法及系统 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102244380B1 (ko) * | 2020-07-29 | 2021-04-26 | 고려대학교 산학협력단 | 자율 주행 환경에서 큐잉 기반 모델 선택과 광학 흐름을 이용한 사물 인식 방법, 이를 수행하기 위한 기록 매체 및 장치 |
US20220103831A1 (en) * | 2020-09-30 | 2022-03-31 | Alibaba Group Holding Limited | Intelligent computing resources allocation for feature network based on feature propagation |
US20220111860A1 (en) * | 2020-10-14 | 2022-04-14 | Volkswagen Aktiengesellschaft | Detecting objects and determining behaviors of objects |
CN112434607B (zh) * | 2020-11-24 | 2023-05-26 | 北京奇艺世纪科技有限公司 | 特征处理方法、装置、电子设备及计算机可读存储介质 |
US11948387B2 (en) * | 2021-02-08 | 2024-04-02 | Adobe Inc. | Optimized policy-based active learning for content detection |
DE102021202933A1 (de) * | 2021-03-25 | 2022-09-29 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfolgung mehrerer Objekte in Zusammenarbeit mehrerer neuronaler Netzwerke |
CN113473026B (zh) * | 2021-07-08 | 2023-04-07 | 厦门四信通信科技有限公司 | 一种摄像头的日夜切换方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108320296A (zh) * | 2017-12-28 | 2018-07-24 | 新智数字科技有限公司 | 一种视频中目标对象的检测跟踪方法、装置及设备 |
CN108334081A (zh) * | 2017-01-20 | 2018-07-27 | 福特全球技术公司 | 用于对象检测的循环深度卷积神经网络 |
CN108388834A (zh) * | 2017-01-24 | 2018-08-10 | 福特全球技术公司 | 利用循环神经网络和级联特征映射的对象检测 |
CN108985165A (zh) * | 2018-06-12 | 2018-12-11 | 东南大学 | 一种基于卷积及循环神经网络的视频拷贝检测系统及方法 |
WO2019013711A1 (en) * | 2017-07-12 | 2019-01-17 | Mastercard Asia/Pacific Pte. Ltd. | MOBILE DEVICE PLATFORM FOR AUTOMATED VISUAL RECOGNITION OF RETAIL PRODUCTS |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7313269B2 (en) | 2003-12-12 | 2007-12-25 | Mitsubishi Electric Research Laboratories, Inc. | Unsupervised learning of video structures in videos using hierarchical statistical models to detect events |
US8098891B2 (en) * | 2007-11-29 | 2012-01-17 | Nec Laboratories America, Inc. | Efficient multi-hypothesis multi-human 3D tracking in crowded scenes |
JP5259456B2 (ja) * | 2009-03-02 | 2013-08-07 | 株式会社東芝 | 学習装置及び物体検出装置 |
JP6128910B2 (ja) * | 2013-03-21 | 2017-05-17 | キヤノン株式会社 | 学習装置、学習方法及びプログラム |
US10997421B2 (en) * | 2017-03-30 | 2021-05-04 | Hrl Laboratories, Llc | Neuromorphic system for real-time visual activity recognition |
EP3700835A4 (en) * | 2017-10-24 | 2021-07-14 | Waterloo Controls Inc. | SYSTEMS AND METHODS FOR DETECTION OF GARBAGE USING NEURAL CONVOLUTION NETWORKS |
US10452959B1 (en) * | 2018-07-20 | 2019-10-22 | Synapse Tehnology Corporation | Multi-perspective detection of objects |
US11308325B2 (en) * | 2018-10-16 | 2022-04-19 | Duke University | Systems and methods for predicting real-time behavioral risks using everyday images |
US11361505B2 (en) * | 2019-06-06 | 2022-06-14 | Qualcomm Technologies, Inc. | Model retrieval for objects in images using field descriptors |
US11423644B1 (en) * | 2019-09-19 | 2022-08-23 | Ambarella International Lp | Hardware efficient RoI align |
US11288515B2 (en) * | 2019-11-11 | 2022-03-29 | Samsung Electronics Co., Ltd. | Methods and systems for real-time data reduction |
US11651588B1 (en) * | 2020-06-05 | 2023-05-16 | Aetherai Ip Holding Llc | Object detection method and convolution neural network for the same |
US11138409B1 (en) * | 2020-09-02 | 2021-10-05 | Tokenize, Inc. | Biometric recognition and security system |
-
2019
- 2019-02-22 CN CN201980094235.2A patent/CN113632094A/zh active Pending
- 2019-02-22 EP EP19709341.2A patent/EP3928247A1/en active Pending
- 2019-02-22 WO PCT/US2019/019102 patent/WO2020171818A1/en unknown
- 2019-02-22 US US17/432,221 patent/US11961298B2/en active Active
-
2024
- 2024-03-13 US US18/603,946 patent/US20240212347A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108334081A (zh) * | 2017-01-20 | 2018-07-27 | 福特全球技术公司 | 用于对象检测的循环深度卷积神经网络 |
CN108388834A (zh) * | 2017-01-24 | 2018-08-10 | 福特全球技术公司 | 利用循环神经网络和级联特征映射的对象检测 |
WO2019013711A1 (en) * | 2017-07-12 | 2019-01-17 | Mastercard Asia/Pacific Pte. Ltd. | MOBILE DEVICE PLATFORM FOR AUTOMATED VISUAL RECOGNITION OF RETAIL PRODUCTS |
CN108320296A (zh) * | 2017-12-28 | 2018-07-24 | 新智数字科技有限公司 | 一种视频中目标对象的检测跟踪方法、装置及设备 |
CN108985165A (zh) * | 2018-06-12 | 2018-12-11 | 东南大学 | 一种基于卷积及循环神经网络的视频拷贝检测系统及方法 |
Non-Patent Citations (1)
Title |
---|
BABU SAM, D等: "Switching convolutional neural network for crowd counting", 《PROCEEDINGS OF THE IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION》, 31 December 2017 (2017-12-31), pages 5744 - 5752 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208755A (zh) * | 2022-07-13 | 2022-10-18 | 北京交通大学 | 面向物联网设备资源友好的特征提取器部署方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
US11961298B2 (en) | 2024-04-16 |
US20240212347A1 (en) | 2024-06-27 |
WO2020171818A1 (en) | 2020-08-27 |
US20220189170A1 (en) | 2022-06-16 |
EP3928247A1 (en) | 2021-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113632094A (zh) | 存储器引导的视频对象检测 | |
Hung et al. | Optimizing agent behavior over long time scales by transporting value | |
Zhu et al. | A novel approach to workload prediction using attention-based LSTM encoder-decoder network in cloud environment | |
US10733431B2 (en) | Systems and methods for optimizing pose estimation | |
EP3446260B1 (en) | Memory-efficient backpropagation through time | |
WO2021047593A1 (zh) | 推荐模型的训练方法、预测选择概率的方法及装置 | |
US20230325722A1 (en) | Model training method, data processing method, and apparatus | |
CN109068174B (zh) | 基于循环卷积神经网络的视频帧率上变换方法及系统 | |
CN111213160A (zh) | 高效卷积神经网络 | |
US12062227B2 (en) | Systems and methods for progressive learning for machine-learned models to optimize training speed | |
JP6647455B1 (ja) | 時間差モデルの教師なし学習法 | |
JP2022511716A (ja) | 非集中的な分散型深層学習 | |
US20230281973A1 (en) | Neural network model training method, image processing method, and apparatus | |
CN113435682A (zh) | 分布式训练的梯度压缩 | |
CN116097277A (zh) | 使用渐进式知识蒸馏训练神经网络模型的方法和系统 | |
Ngo et al. | Adaptive anomaly detection for internet of things in hierarchical edge computing: A contextual-bandit approach | |
CN114072809A (zh) | 经由神经架构搜索的小且快速的视频处理网络 | |
CN113947703A (zh) | 通过神经网络识别图像的方法和设备 | |
WO2019106132A1 (en) | Gated linear networks | |
US11188035B2 (en) | Continuous control of attention for a deep learning network | |
CN114021697A (zh) | 基于强化学习的端云框架神经网络生成方法和系统 | |
WO2020262587A1 (ja) | 機械学習装置、機械学習プログラム、及び機械学習方法 | |
JP2023534956A (ja) | 解釈可能な結果を生成するように構成された分解可能な階層的な層を有する予測モデル | |
CN113490955B (zh) | 用于产生金字塔层的架构的系统和方法 | |
CN112116700A (zh) | 基于单目视图的三维重建方法与装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |