一种在线时序动作检测方法及设备与流程

文档序号:24131953发布日期:2021-03-02 18:31阅读:183来源:国知局
一种在线时序动作检测方法及设备与流程

[0001]
本申请涉及计算机视觉领域,特别涉及一种在线时序动作检测方法及在线时序动作检测装置。


背景技术:

[0002]
作为计算机视觉(computervision)的子领域之一,视频分析技术近年来发展迅猛。在此之前,视频分析问题通常采用人工设定规则在画面中寻找关键点,并通过机器学习(machinelearning)的方法分析关键点位置变化的梯度、光流等信息。与两维图像不同,视频由一系列有序的帧组成,因此额外具有时间维度。如果忽视视频中帧的序列关系,仅将视频视作图像的集合,便有可能出现无法分辨开门和关门、拿起和放下等必须考虑帧关联次序才能解决的问题。所以,视频分析的重点之一即为学习帧与帧之间的联系。
[0003]
视频分析领域中的时序动作检测(temporalactionproposalgeneration),可从未经剪辑的视频中定位可能包含特定的人物动作或事件的时间片段,适用于视频分段、视频重点段落选取等场景。在具体实现中,时序动作检测需要同步分析视频在图像上的空间内容以及将视频细化至帧级别的之间的时序关系,并涉及到视频解码、特征提取、候选动作片段生成、片段筛选等多个步骤,使之成为一个颇具挑战性且需要综合多种方法与技术的问题。


技术实现要素:

[0004]
本申请实施例提供了一种在线时序动作检测方法、在线时序动作检测装置、在线时序动作检测设备及计算机可读介质。
[0005]
第一方面,提供了一种在线时序动作检测方法,方法包括:
[0006]
在线地获取视频,并从所述视频中提取用于动作检测的初始特征向量;执行候选动作片段生成处理,以根据所述初始特征向量,构建所述候选动作片段,生成与所述候选动作片段关联的置信分数,所述置信分数表示所述候选动作片段与所述视频中真实动作片段的匹配度;执行动作片段筛选处理,以从所述候选动作片段中筛除冗余动作片段,输出生成动作片段;
[0007]
其中,在所述候选动作片段生成处理中,基于所述初始特征向量执行至少一次在线一维卷积操作,逐时间点地输出基本特征向量;基于所述基本特征向量,分别执行时序评估处理和片段评估处理,其中,在所述时序评估处理中,逐时间点地接收单个所述基本特征向量,并执行包括循环神经网络的操作,以逐时间点地产生所述候选动作片段的起点概率序列和终点概率序列;在所述片段评估处理中,累积接收预设数量个逐时间点产生的所述基本特征向量,并执行包括采样和卷积的操作,输出分类置信向量和回归置信向量;基于所述起点概率序列、所述终点概率序列、所述分类置信向量和所述回归置信向量,计算得到所述置信分数。
[0008]
本申请中的在线时序动作检测方法采用了轻量级的在线一维卷积、长短期记忆网
络和边界匹配层等操作,能够随着视频流的实时产生推断当前时间点作为片段边界的概率,并考察以当前时间为终点的各个时间段作为片段区间的可能性。与现有技术相比,本申请的在线时序动作检测方法对候选片段的置信分数估计更为准确。在实际的在线时序动作检测应用场景下,为控制冗余,每个时间点t不能生成过多的动作片段时,可用更少的片段达到更高的召回率。另外一方面,相较于结构相近的(离线)边界匹配网络(bmn),在线边界匹配网络的参数数量只有不到十分之一。在对实时性要求高的情况下,不依靠显卡加速运算时也能达到毫秒级的单步计算时间,比基准方法在线边界敏感网络快四到五倍以上。且即便在运算能力受限的平台,且需要实时根据产生的视频流提取特征再进行动作检测的端到端环境中,在线动作检测方法也可以使用在时间维度上颗粒度要求更细的应用场景。
[0009]
在上述第一方面的一种可能的实现中,所述在线一维卷积操作,包括:将所述初始特征向量逐时间点地输入第一特征缓冲区,其中所述第一特征缓冲区可保存逐时间点排列的k个所述初始特征向量,k是所述在线一维卷机操作的卷积核的大小。
[0010]
在上述第一方面的一种可能的实现中,所述在线一维卷积操作,进一步包括:将所述初始特征向量逐时间点地输入所述在线一维卷积中的第一特征缓冲区,并删除最先放入所述第一特征缓冲区的所述初始特征向量,以保证所述第一特征缓冲区中保存最近逐时间点地输入的k个所述初始特征向量,其中k是卷积核的大小;所述卷积核对所述第一特征缓冲区内的k个所述初始特征向量做卷积操作,并得到所述基本特征向量作为输出结果。
[0011]
在上述第一方面的一种可能的实现中,在所述时序评估处理中,包括:逐时间点地接收单个所述基本特征向量,并执行包括循环神经网络的操作,所述循环神经网络对当前所述基本特征向量的处理结合对上一时间点的所述基本特征向量处理的结果。
[0012]
在上述第一方面的一种可能的实现中,所述时序评估处理,进一步包括:所述循环神经网络为长短期记忆网络;所述长短期记忆网络逐时间点的接收单个所述基本特征向量、上一时间点的长短期记忆网络得出的原隐状态h
t-1
和原细胞状态c
t-1
,并基于所述基本特征向量、所述原隐状态h
t-1
和所述原细胞状态c
t-1
计算并输出当前的新隐状态h
t
;逐时间点的将所述新隐状态h
t
输入全连接层,经过激活函数输出所述起点概率序列和所述终点的概率序列,其中,所述起点概率由时间点t作为所述候选片段的起点概率p
s,t
组成,所述终点概率由时间点t作为所述候选片段的终点概率p
e,t
组成。
[0013]
在上述第一方面的一种可能的实现中,上述方法还包括:将初始隐状态h0和初始细胞状态c0设置为0。
[0014]
在上述第一方面的一种可能的实现中,在所述片段评估处理中,所述基本特征向量逐时间点地输入第二特征缓冲区,其中所述第二特征缓冲区累积接收并保存预设数量的逐时间点产生的所述基本特征向量。
[0015]
在上述第一方面的一种可能的实现中,所述片段评估处理,进一步包括:第二特征缓冲区累积接收预设数量的逐时间点的所述基本特征向量,并保存为基本特征序列s
f
∈r
c
×
d
;将所述基本特征序列和采样权重矩阵w∈r
n
×
d
输入边界匹配层进行点乘,得到并输出以时间点t为终点,时间区域长度为1到d的采样时长为n的边界匹配矩阵m∈r
c
×
n
;将所述边界匹配矩阵输入包括至少一层的卷积神经网络执行卷积操作,输出所述分类置信向量m
cc
∈r
d
和所述回归置信向量m
cr
∈r
d

[0016]
其中,c表示所述基本特征向量的通道数,d表示最长的所述候选动作片段在所述
基本特征序列中的长度,所述采样权重矩阵表示所述基本特征序列s
f
在采样时长n内的权重,m
cc
表示以当前时间为终点长度为1到d的所述候选动作片段是否是动作片段的概率,m
cr
表示以当前时间为终点的长度为1到d的所述候选动作片段趋近于所述真实动作片段的概率。
[0017]
在上述第一方面的一种可能的实现中,所述至少一层的卷积神经网络可包括四层卷积层,其中,第一层为二维卷积层,作用于所述边界匹配矩阵的采样时长n和所述长度d两个维度上,用以整合各采样点的信息;第二层和第四层均为一维卷积层,作用在所述长度d的维度上,用以整合各通道信息;第三层为一维卷积层,作用在所述长度d的维度上,用以整合相邻片段长度的信息。
[0018]
在上述第一方面的一种可能的实现中,构建所述候选片段,进一步包括:确定时间点t是候选动作起点,将所述候选动作起点的时间点t添到加候选动作起点列表中;确定时间点t是候选动作终点,从所述候选动作起点列表中选出能与时间点t组成长度小于最大长度d的所述候选动作片段的所述候选起点,并输出所述候选动作片段的集合其中,φ
i
表示第i个所述候选动作片段,n
c
表示所述候选动作片段的个数,t
s,i
表示第i个所述候选动作片段的起始时间。
[0019]
在上述第一方面的一种可能的实现中,所述候选动作片段的所述置信分数通过以下公式计算:
[0020][0021]
其中,t-t
s,i
+1表示所述候选动作片段φ
i
的长度,p
s,t
和p
e,t
分别表示时间点t作为所述候选动作片段的起点和终点的概率,m
cc,t
表示以时间点t为终点长度为1到d的所述候选动作片段是否是动作片段的概率,m
cr,t
表示以时间点t为终点的长度为1到d的所述候选动作片段趋近于所述真实动作片段的概率。
[0022]
在上述第一方面的一种可能的实现中,所述初始特征向量包括时序结构信息。
[0023]
第二方面,提供了一种在线时序动作检测装置,包括:视频获取单元,用于在线地获取视频,并从所述视频中提取用于动作检测的初始特征向量;候选动作片段生成单元,用于基于所述初始特征向量,构建所述候选动作片段,并根据所述候选动作片段和所述视频中对应的真实动作片段生成与所述候选动作片段关联的置信分数,所述置信分数表示所述候选动作片段与所述视频中真实动作片段的匹配度;动作片段筛选单元,用于从所述候选动作片段中筛除冗余动作片段,输出生成动作片段;
[0024]
其中,在所述候选动作片段生成单元中,在线一维卷积操作子单元,用于基于所述初始特征向量执行至少一次在线一维卷积操作,逐时间点地输出基本特征向量;将所述基本特征向量分别输入时序评估子单元和片段评估子单元进行操作,其中,所述时序评估子单元,用于逐时间点地接收单个所述基本特征向量,并执行包括循环神经网络的操作,以逐时间点地产生所述候选动作片段的起点概率序列和终点概率序列;所述片段评估子单元,用于累积接收预设数量个逐时间点产生的所述基本特征向量,并执行包括采样和卷积的操作,输出分类置信向量和回归置信向量;置信分数计算子单元,用以基于所述起点概率序列、所述终点概率序列、所述分类置信向量和所述回归置信向量,计算得到所述置信分数。
[0025]
在上述第二方面的一种可能的实现中,在所述在线一维卷积操作子单元中,将所
述初始特征向量逐时间点地输入第一特征缓冲区,其中所述第一特征缓冲区可保存逐时间点排列的k个所述初始特征向量,k表示所述在线一维卷机操作的卷积核的大小。
[0026]
在上述第二方面的一种可能的实现中,所述在线一维卷积操作子单元,进一步包括:第一特征缓冲区,用于逐时间点接收所述初始特征向量,并删除最先放入所述第一特征缓冲区的所述初始特征向量,以保证所述第一特征缓冲区中保存最近逐时间点地输入的k个所述初始特征向量,其中k是卷积核的大小;一维卷积层,对所述第一特征缓冲区内的k个所述初始特征向量做卷积操作,并得到所述基本特征向量作为输出结果。
[0027]
在上述第二方面的一种可能的实现中,在所述时序评估子单元中,包括:逐时间点地接收单个所述基本特征向量,并执行包括循环神经网络的操作,所述循环神经网络对当前所述基本特征向量的处理结合了对上一时间点的所述基本特征向量处理的结果。
[0028]
在上述第二方面的一种可能的实现中,所述时序评估子单元,进一步包括:长短期记忆网络,所述循环神经网络为所述长短期记忆网络,用于逐时间点的接收单个所述基本特征向量、上一时间点的长短期记忆网络得出的原隐状态h
t-1
和原细胞状态c
t-1
,并基于所述基本特征向量、所述原隐状态h
t-1
和所述原细胞状态c
t-1
计算并输出当前的新隐状态h
t
;全连接层,用于接收逐时间点的所述新隐状态h
t
,经过激活函数输出所述起点概率序列和所述终点的概率序列,其中,所述起点概率由时间点t作为所述候选片段的起点概率p
s,t
组成,所述终点概率由时间点t作为所述候选片段的终点概率p
e,t
组成。
[0029]
在上述第二方面的一种可能的实现中,上述装置还包括:将初始隐状态h0和初始细胞状态c0设置为0。
[0030]
在上述第二方面的一种可能的实现中,在所述片段评估子单元中,所述基本特征向量逐时间点的输入第二特征缓冲区,其中所述第二特征缓冲区累积接收并保存预设数量的逐时间点产生的所述基本特征向量。
[0031]
在上述第二方面的一种可能的实现中,所述片段评估子单元,进一步包括:第二特征缓冲区,用于累积接收预设数量的逐时间点的所述基本特征向量,并保存为基本特征序列s
f
∈r
c
×
d
;边界匹配层,将所述基本特征序列和采样权重矩阵w∈r
n
×
d
进行点乘,得到并输出以时间点t为终点,时间区域长度为1到d的采样时长为n的边界匹配矩阵m∈r
c
×
n;卷积神经网络,所述卷积神经网络至少包括一层,输入所述边界匹配矩阵执行卷积操作,输出所述分类置信向量m
cc
∈r
d
和所述回归置信向量m
cr
∈r
d

[0032]
其中,c表示所述基本特征向量的通道数,d表示最长的所述候选动作片段在所述基本特征序列中的长度,所述采样权重矩阵表示所述基本特征序列s
f
在采样时长n内的权重,m
cc
表示以当前时间为终点长度为1到d的所述候选动作片段是否是动作片段的概率,m
cr
表示以当前时间为终点的长度为1到d的所述候选动作片段趋近于所述真实动作片段的概率。
[0033]
在上述第二方面的一种可能的实现中,所述至少一层的卷积神经网络可包括四层卷积层,其中,第一层为二维卷积层,作用于所述边界匹配矩阵的采样时长n和所述长度d两个维度上,用以整合各采样点的信息;第二层和第四层均为一维卷积层,作用在所述长度d的维度上,用以整合各通道信息;第三层为一维卷积层,作用在所述长度d的维度上,用以整合相邻片段长度的信息。
[0034]
在上述第二方面的一种可能的实现中,构建所述候选片段,进一步包括:确定时间
点t是候选动作起点,将所述候选动作起点的时间点t添到加候选动作起点列表中;确定时间点t是候选动作终点,从所述候选动作起点列表中选出能与时间点t组成长度小于最大长度d的所述候选动作片段的所述候选起点,并输出所述候选动作片段的集合其中,φ
i
表示第i个所述候选动作片段,n
c
表示所述候选动作片段的个数,t
s,i
表示第i个所述候选动作片段的起始时间。
[0035]
在上述第二方面的一种可能的实现中,所述候选动作片段的所述置信分数通过以下公式计算:
[0036][0037]
其中,t-t
s,i
+1表示所述候选动作片段φ
i
的长度,p
s,t
和p
e,t
分别表示时间点t作为所述候选动作片段的起点和终点的概率,m
cc,t
表示以时间点t为终点长度为1到d的所述候选动作片段是否是动作片段的概率,m
cr,t
表示以时间点t为终点的长度为1到d的所述候选动作片段趋近于所述真实动作片段的概率。
[0038]
在上述第二方面的一种可能的实现中,所述初始特征向量包括时序结构信息。
[0039]
本申请中的在线时序动作检测装置采用了轻量级的在线一维卷积、长短期记忆网络和边界匹配层等操作,能够随着视频流的实时产生推断当前时间点作为片段边界的概率,并考察以当前时间为终点的各个时间段作为片段区间的可能性。与现有技术相比,本申请的在线时序动作检测方法对候选片段的置信分数估计更为准确。在实际的在线时序动作检测应用场景下,为控制冗余,每个时间点t不能生成过多的动作片段时,可用更少的片段达到更高的召回率。另外一方面,相较于结构相近的(离线)边界匹配网络(bmn),在线边界匹配网络的参数数量只有不到十分之一。在对实时性要求高的情况下,不依靠显卡加速运算时也能达到毫秒级的单步计算时间,比基准方法在线边界敏感网络快四到五倍以上。且即便在运算能力受限的平台,且需要实时根据产生的视频流提取特征再进行动作检测的端到端环境中,在线动作检测装置也可以使用在时间维度上颗粒度要求更细的应用场景。
[0040]
第三方面,提供了一种在线时序动作检测设备,包括:
[0041]
存储器,用于存储由系统的一个或多个处理器执行的指令,以及
[0042]
处理器,是系统的处理器之一,用于执行所述指令以实施上述第一方面中的任意一种在线时序动作检测方法。
[0043]
第四方面,提供了一种使用计算机程序编码的计算机可读存储介质,其特征在于,所述计算机可读介质上存储有指令,所述指令在计算机上执行时使计算机执行上述第一方面中的任意一种在线时序动作检测方法。
附图说明
[0044]
图1根据本申请的一些实施例,示出了一种在线时序动作检测系统的框图;
[0045]
图2根据本申请的一些实施例,示出了一种在线时序动作检测的应用场景;
[0046]
图3根据本申请的一些实施例,示出了一种电子设备的结构框图;
[0047]
图4根据本申请的一些实施例,示出了一种在线时序动作检测方法流程图;
[0048]
图5根据本申请的一些实施例,示出了一种在线的从视频中提取初始特征向量的示意图;
[0049]
图6根据本申请的一些实施例,示出了一种候选动作片段生成步骤的流程图;
[0050]
图7根据本申请的一些实施例,示出了一种在线一维卷积操作的结构框图;
[0051]
图8根据本申请的一些实施例,示出了一种时序评估处理输出的起点和终点概率图;
[0052]
图9根据本申请的一些实施例,示出了一种边界匹配层的结构框图;
[0053]
图10根据本申请的一些实施例,示出了一种片段评估处理输出的置信向量图;
[0054]
图11根据本申请的一些实施例,示出了一种在线时序动作检测装置的结构示意图。
具体实施例
[0055]
本申请的说明性实施例包括但不限于一种在线时序动作检测方法、在线时序动作检测装置、在线时序动作检测设备及计算机可读介质。
[0056]
图1根据本申请的一些实施例,示出了一种在线时序动作检测系统的框图。如图2所示,该系统包括:前端设备220和电子设备240。前端设备220和电子设备240之间通信连接,例如通过有线网络、wifi、zigbee,蓝牙等方式连接。
[0057]
前端设备220可以是监控摄像头、智能家居设备、聊天机器人、台式电脑、智能手机等。前端设备220能够采集视频、生成视频、存储视频或下载视频。前端设备220向电子设备240实时提供待处理的视频。
[0058]
电子设备240内设置有在线时序动作检测模型,该模型用于在线地对视频进行时序评估和片段评估,并根据评估结果输出该视频的生成动作片段。该生成动作片段可以用于后续的动作检测、视频分析和安防报警等。
[0059]
时序动作检测(temporal action proposal generation):又名时序动作片段生成。对于一个视频,找出其中若干个可能包含特定人物动作或事件(统称“动作”)的候选时间片段(proposal)。由于缺少通行的中文译名,时序动作检测有时也代表temporal action detection(或temporal action localization,意同)。二者的主要区别在于temporal action proposal generation只选出动作片段,而temporal action detection还需要给出动作片段的类别信息。对于先选动作片段、后分类的两步temporal action detection方法而言,temporal action proposal generation可以看作第一步。在本申请中,时序动作检测专指temporal action proposal generation。
[0060]
时序动作检测有很多应用场景。现实生活中,视频往往是未经剪辑的(untrimmed)。下面结合图2所示的演奏乐器的视频的具体场景进行详细说明,如图2所示,整个视频时间区间从0.0s到119.2s,视频内容包括对演奏曲目的解说、乐手演奏、以及制片人列表等内容。重点部分在于从乐手做好预备姿势到演奏结束放下乐器的真实动作片段,起止时间为13.8s到97.9s,为了使得该片段在视频网站上受到更多的关注,方便进行视频类别的标注或其他分析工作,本申请通过在线地获取演奏视频,并从视频中提取用于动作检测的初始特征向量;根据初始特征向量,构建候选动作片段,并根据候选动作片段和视频中对应的从乐手做好预备姿势到演奏结束放下乐器的真实动作片段生成与候选动作片段关联的置信分数;执行动作片段筛选处理,以从候选动作片段中筛除冗余动作片段,输出生成动作片段。通过本申请中的时序动作检测方法标出了乐手演奏的片段,起止时间为14.2s
到98.0s的生成动作片段,与真实动作片段较为接近,使得能够从未剪辑的视频中实时的在线定位可能包含特定人物动作或事件的动作片段。另外,在替代可穿戴设备进行人体动作识别、教育场景中教师的上课动作分析、教育场景中的学生课堂表现分析、长视频中精华视频的提取、短视频中的关键动作检测等分析任务,都可以通过运用时序动作检测方法从视频中找出每个动作的片段,方便后续对每个动作逐一处理。
[0061]
迄今为止,绝大多数的时序动作检测方法都是离线的,即当获取了完整的视频后,再进行时序动作检测。离线时序动作检测方法需要全面考虑整个视频的信息,例如演奏乐器视频中,即便是没有关注乐手放下乐器的动作,通过稍后出现的制片人列表也可以推断出演奏已经于之前的某个时刻结束。然而在某些实时性要求较高的场合,需要获得完整视频后再开始处理的离线时序动作检测方法变得不再适用。例如对监控录像的处理中,需要在线的实时检测出画面里可疑的人物动作,并能在动作结束时(于一个极短的、用于方法运算的毫秒级延迟时间内)立即给出动作片段,以便及时提醒安防人员注意,或继而进行动作识别等下游任务。
[0062]
因而在线时序动作检测方法需要随着视频的进行实时给出动作片段,与离线方法最大的区别是无法获得当前时刻以后的视频内容,仅能靠分析之前的视频内容,给出以当前时刻为终点的动作片段。时序循环网络(temporal recurrent network)是少有的可从视频中在线检测出动作片段的例子。在实现过程需要动作类别标记的支持,导致方法无法处理包含未见过的动作类别的视频,且基于组合动作类别预测结果产生片段的方法无法分辨出视频中同时发生、存在时间重叠的多个动作。为此,需要脱离动作类别的限制,更多地聚焦于视频的空间和时间变化本身,使之适用于各种各样的视频内容。为此,本申请提供了一种准确性和实时性高、能兼顾效果和效率的在线时序动作检测方法来适应此类需求。
[0063]
可以理解,上述对于进行在线时序动作检测的应用场景的描述仅仅是示例性的,并非限制性的。
[0064]
图3根据本申请的一些实施例,示出了一种电子设备100的结构框图。具体地,如图2所示,电子设备100包括一个或多个处理器104,与处理器104中的至少一个连接的系统控制逻辑108,与系统控制逻辑108连接的系统内存112,与系统控制逻辑108连接的非易失性存储器(nvm)116,以及与系统控制逻辑108连接的网络接口120。
[0065]
在一些实施例中,处理器104可以包括一个或多个单核或多核处理器。在一些实施例中,处理器104可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。在电子设备100采用enb(evolved node b,增强型基站)或ran(radio access network,无线接入网)控制器的实施例中,处理器104可以被配置为执行各种符合的实施例。
[0066]
在一些实施例中,处理器104可以用于基于神经网络模型,进行在线时序动作的检测。具体的,例如,在神经网络模型的各层对图像的处理过程中,处理器104根据获取到的图像信息不断调整神经网络模型,直至得到准确度较高的候选动作片段。处理器104还可以周期性更新上述神经网络模型,以便于较好的适应对神经网络模型的各种实际需求的变化。
[0067]
在一些实施例中,系统控制逻辑108可以包括任意合适的接口控制器,以向处理器104中的至少一个和/或与系统控制逻辑108通信的任意合适的设备或组件提供任意合适的接口。
[0068]
在一些实施例中,系统控制逻辑108可以包括一个或多个存储器控制器,以提供连接到系统内存112的接口。系统内存112可以用于加载以及存储数据和/或指令。在一些实施例中电子设备100的系统内存112可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(dram)。在一些实施例中,系统内存112可以用于加载或者存储实施上述在线时序动作检测的指令,或者系统内存112可以用于加载或者存储实施利用上述神经网络模型进行图像生成的应用程序的指令。处理器104通过运行该指令可以实现根据本申请的实施例的在线时序动作检测的方法。
[0069]
nvm/存储器116可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,nvm/存储器116可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如hdd(hard disk drive,硬盘驱动器),cd(compact disc,光盘)驱动器,dvd(digital versatile disc,数字通用光盘)驱动器中的至少一个。nvm/存储器116还可以用于存储上述在线时序动作检测过程中所用的神经网络模型。
[0070]
nvm/存储器116可以包括安装电子设备100的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口120通过网络访问nvm/存储116。
[0071]
特别地,系统内存112和nvm/存储器116可以分别包括:指令124的暂时副本和永久副本。指令124可以包括:由处理器104中的至少一个执行时导致电子设备100实施本申请中的在线时序动作检测方法的指令。在一些实施例中,指令124、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑108,网络接口120和/或处理器104中。
[0072]
网络接口120可以包括收发器,用于为电子设备100提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口120可以集成于电子设备100的其他组件。例如,网络接口120可以集成于处理器104的,系统内存112,nvm/存储器116,和具有指令的固件设备(未示出)中的至少一种,当处理器104中的至少一个执行所述指令时,电子设备100实现本申请中的在线时序动作检测方法。
[0073]
网络接口120可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口120可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
[0074]
在一些实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑封装在一起,以形成系统封装(sip)。在一些实施例中,处理器104中的至少一个可以与用于系统控制逻辑108的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(soc)。
[0075]
电子设备100可以进一步包括:输入/输出(i/o)设备132。i/o设备132可以包括用户界面,使得用户能够与电子设备100进行交互;外围组件接口的设计使得外围组件也能够与电子设备100交互。在一些实施例中,电子设备100还包括传感器,用于确定与电子设备100相关的环境条件和位置信息的至少一种。
[0076]
根据本申请的一些实施例,提供了一种在线时序动作检测方法400,如图4所示,该方法400包括如下步骤:
[0077]
步骤401:在线地获取视频,并从视频中提取用于动作检测的初始特征向量。
[0078]
具体的,在步骤401中,例如对实时监控录像的处理中,需要实时检测出画面里可疑的人物动作,因而需要在线地获取实时视频,即逐时间的获取实时产生的视频,该视频以当前时间点为终点。获取视频后,对该视频做特征提取,具体操作为基于动作识别方法框架,去掉最后的全连接层(fully connected layer,fc layer)和全局时序池化(global temporal pooling),保留卷积和/或循环神经网络的部分,从而提取出包含时间顺序结构的视频特征,称为初始特征向量。该初始特征向量包括颜色特征、纹理特征、形状特征等静态特征,声音特征以及包含时序结构的运动特征。
[0079]
在本申请中,用表示一段视频。其中l
v
表示这段视频的帧数,x
i
表示第i帧的内容,根据特征提取步骤401所使用的输入,内容可能包括图像rgb、光流等信息。图5根据本申请的一些实施例,示出了一种在线的从视频中提取初始特征向量的示意图,经过如图5所示的特征提取步骤后,得到以表示的初始特征向量序列,其中l
f
表示序列长度,而f
j
∈r
c
表示序列中第j个位置的初始特征向量,c表示初始特征向量的通道(channel)数。如图5中所示c=6,l
f
=8,即演奏者演奏乐器的视频通过特征提取,均匀的映射到通道数为6的8个初始特征向量上。一般来说可以按比例地从视频中提取特征(例如原视频中每σ帧对应个特征向量中的一个);也可以每个视频根据视频的时长采用不同的σ,用线性插值(linear interpolation)的方法固定特征序列的长度l
f
。总而言之,可以理解,特征提取过程是将原视频l
v
帧的内容均匀映射到l
f
个初始特征向量上,而f则是对原视频经过时间尺度缩放后的抽象表示。所以对于后续的时序动作检测方法而言,每个初始特征向量对应原视频中的时间长度即是最小的时间单位。为方便起见,本申请中将用t表示l
f
,并在不致混淆的情况下把初始特征序列的序数称作时间点t。
[0080]
步骤402:执行候选动作片段生成处理,构建候选动作片段,生成置信分数。
[0081]
具体的,在步骤402中,根据从视频中提取的初始特征向量,通过时序评估处理得到时间点t作为候选动作片段的起点的概率和终点的概率,基于此,构建出候选动作片段,再基于片段评估处理得到的分类置信向量和回归置信向量,生成与候选动作片段关联的置信分数,其中,置信分数表示候选动作片段与真实动作片段的匹配度。具体实现方式在后面进行详细阐述。
[0082]
用表示候选动作片段的集合,用表示真实(ground truth)动作片段的集合,其中n
c
表示视频中候选动作片段的个数,n
g
表示视频中真实动作片段的个数,t
s,i
和t
e,i
分别表示第i个动作片段φ
i
的起始时间和结束时间。时序动作检测通过构建出候选动作片段的集合φ
c
,并通过置信分数的判断,能够尽可能精确且全面地涵盖真实动作片段的集合φ
g

[0083]
步骤403:执行动作片段筛选处理,根据置信分数筛除冗余动作片段,输出生成动作片段。
[0084]
具体的,在步骤403中,在时序动作检测中,相差很短的两个时刻的边界概率很有可能十分相近,导致候选动作片段集合中出现重复、冗余的片段。
[0085]
非极大抑制方法(non-maximum suppression,nms)在筛除冗余候选框、候选视频片段等任务中非常常用。通过保留相似候选动作片段中置信分数最大的,并将置信分数设
为0的方法剔除其余的片段。但是存在当足够接近但均为真实动作两个的候选动作片段中,置信分数小的会被直接排除的缺点,因而也被称为硬非极大抑制(hard-nms)方法。在本申请的技术方案中,采用非极大抑制方法衍生的软化非极大抑制方法(soft-nms),能够保留互相接近的候选动作片段被选中的可能性。流程如下:
[0086]
1.设最终要保留的生成动作片段集合为φ
p
={}。
[0087]
2.从候选动作片段集合中,选出置信分数最大的候选动作片段,记为φ
p
=[t
s,p
t,score
p
]。将φ
p
从φ
c
选入到φ
p
中。
[0088]
3.遍历φ
c
中所有剩下的候选动作片段,如果一个动作片段φ
i
与φ
p
的交并比满足iou(φ
i
,φ
p
)>0.8,则将φ
i
的置信分数改为:
[0089][0090]
4.重复步骤2-3,当φ
p
中的保留片段数量达到预设的n
p
或φ
c
中的全部片段均已被选入φ
p
时,筛选结束,返回φ
p

[0091]
最终,集合φ
p
中的所有片段即为在线时序动作检测方法给出的以时间点t为终点的生成动作片段。在将φ
p
中的生成动作片段的起点和终点时间(此时为所对应特征向量的序数)映射到真实时间上时,采用特征序列i所对应时间区间的中点,即真实时间其中t
v
为原视频时长,t为特征序列长度。
[0092]
以下结合图6对上述步骤402中执行的候选动作片段生成的具体处理过程进行进一步的解释。如图6所示,可示例性地包括如下步骤:
[0093]
步骤4021:基于初始特征向量,执行至少一次在线一维卷积操作,逐时间点地输出基本特征向量。
[0094]
具体的,在步骤4021中,在实时的视频环境中,可以认为视频特征序列中的初始特征向量是逐时间点的产生并输入到在线一维卷积层中的,所以无法对完整的序列进行卷积操作。为此,本申请提出了在线一维卷积(online conv1d)的技术方案。图7根据本申请的一些实施例,示出了一种在线一维卷积操作的结构框图,如图7所示,在线一维卷积包括一个第一特征缓冲区和一个一维卷积,第一特征缓冲区可以保存最近输入的k个初始特征向量,其中k为卷积核的大小。随着时间的流逝,每当一个新的时间点对应的视频所提取的初始特征向量产生并被传入在线一维卷积中时,会被放入第一特征缓冲区的尾部,并删除第一特征缓冲区最先被放入的初始特征向量,以保证第一特征缓冲区中保存的是最近逐时间点输入的k个初始特征向量。然后,卷积核会在第一特征缓冲区内的初始特征向量上做单步、无滑动的卷积操作,并最终产生一个基本特征向量作为输出结果。在线一维卷积操作可以满足随着基本特征向量逐时间点的提取,实时的在线进行计算的要求,同时能达到与普通的一维卷积相同的效果。具体的,可选由两层在线一维卷积神经网络组成,如表1所示,卷积核的大小k值为3,即第一缓冲区保存最近3个初始特征向量,并随着初始特征向量逐时间点的输入第一特征缓冲区,对每相邻的3个初始特征向量做卷积操作,每相邻的3个初始特征向量生成一个基本特征向量,因而使得基本特征向量逐时间点的被输出。
[0095]
以上k的取值只是根据本申请的实施例的示例性说明。k的取值由实际应用决定,
例如其他的情况下可选择k为5或7的卷积核大小。
[0096]
表1
[0097][0098]
以下是在线一维卷积层操作的定量表示。假设某在线一维卷积层的输入通道数为c
in
,输出通道数为c
out
,卷积核大小为k,则该层共有权重(weight)w∈r
cout
×
cin
×
k
和偏移量(bias)b∈r
cout
两组参数。在线一维卷积层参数的初始化遵循普通卷积参数初始化的方法,将权重矩阵和偏移量向量的每个元素的值从中随机选取,其中u(a,b)是从a到b的均匀分布。对于该层在线一维卷积的输入特征(包括缓冲区中的特征)f
in
∈r
cin
×
k
,输出特征为:
[0099][0100]
计算后的f
out
经过线性整流函数(rectified linear unit,relu)relu(x)=max(0,x),输出深度学习在视频分析中的应用范围[0,+∞)。以上操作计算简单,仅由一次矩阵乘法和一次矩阵加法即可完成,能够满足在线时序动作检测对于实时性的要求。在线一维卷积操作进一步的对特征提取阶段产生的初始特征向量进行处理,同时增大了特征的感受野,使产生的基本特征向量能够包含更多与前后视频帧相关联的时间顺序信息。
[0101]
步骤4022:在时序评估处理中,逐时间点地接收单个基本特征向量,并执行包括循环神经网络的操作,以逐时间点地产生候选动作片段的起点概率序列和终点的概率序列。
[0102]
具体的,在步骤4022中,不同于大多数基于帧/小段视频的时序动作检测方法使用卷积神经网络获取起点和终点的概率序列,本申请中的时序评估处理由一层长短期记忆网络和一层全连接层组成,如表2所示。相比于离线时序动作检测方法,在线的时序动作检测无法获知当前时间之后的信息,所以为了利用更长时间的历史信息,本申请中采用了循环神经网络代替卷积神经网络。对于在线一维卷积操作输出的每个基本特征向量,将其输入到长短期记忆网络细胞中(lstm cell),长短期记忆网络细胞同时会接收上一次得出的隐状态(hidden state)和细胞状态(cell state),并计算当前的新隐状态和新细胞状态,把新隐状态作为特征输出。且将初始隐状态和初始细胞状态设置为0。隐状态进入全连接层,最终输出时间点t作为候选动作片段的起点概率p
s,t
和终点概率p
e,t

[0103]
表2
[0104]
[0105]
以下是长短期记忆网络操作的定量表示。设在时间点t时输入的特征向量为f
t
∈r
cin
,上一次计算得出的原隐状态为h
t-1
∈r
s
,原细胞状态为c
t-1
∈r
s
,其中s为隐状态和细胞状态的长度。长短期记忆网络的运算可表示为:
[0106]
i
t
=σ(w
ii
·
f
t
+b
ii
+w
hi
·
h
t-1
+b
hi
)
ꢀꢀ
(3)
[0107]
f
t
=σ(w
if
·
f
t
+b
if
+w
hf
·
h
t-1
+b
hf
)
ꢀꢀ
(4)
[0108]
g
t
=tanh(w
ig
·
f
t
+b
ig
+w
hg
·
h
t-1
+b
hg
)
ꢀꢀ
(5)
[0109]
ο
t
=σ(w
io
·
f
t
+b
io
+w
ho
·
h
t-1
+b
ho
)
ꢀꢀ
(6)
[0110]
c
t
=f
t
*c
t-1
+i
t
*g
t
ꢀꢀ
(7)
[0111]
h
t
=o
t
*tanh(c
t
)
ꢀꢀ
(8)
[0112]
其中a*b表示哈达玛积(hadamard product),即对于同尺寸的向量a={a
i
}和b={b
i
},返回相同尺寸的向量c={c
i
},使得向量c中的各元素值为a和b对应位置元素值的乘积,即c
i
=a
i
×
b
i

[0113]
表示sigmoid函数,输出范围(0,1)。表示双曲正切函数,输出范围(-1,1)。i表示输入门(input gate),处理输入信息。g表示细胞门(cell gate),用于控制将哪些输入信息添加到新细胞状态c
t
。f表示遗忘门(forget gate),用于控制保留和放弃原细胞状态的哪些内容。o表示输出门(output gate),处理并准备输出信息。各个w和b是各个门分别作用于输入的基本特征向量f
t
和原隐状态h
t-1
的权重和偏移量,初始化方法为每个元素的值从中随机选取。最终作为输出特征的新隐状态h
t
由输出门产生的向量和新细胞状态共同决定。
[0114]
而后的全连接层用于整合长短期记忆网络输出的新隐状态,经过sigmoid激活函数输出两个范围为(0,1)的数值,分别表示时间点t作为候选动作片段起点和终点的概率。时间点t作为候选动作片段起点的概率,可理解为第t个特征向量所对应视频时间的时间点或时间区间是起点的概率。总的来说,时序评估操作的作用是逐时间点的循环接收在线一维卷积操作输出的基本特征向量,逐时间点地产生候选动作片段的起点概率序列和终点的概率序列。对于长度为t的视频初始特征序列,时序评估处理的输出是起点概率序列和终点概率序列图8根据本申请的一些实施例,示出了一种时序评估处理输出的起点和终点概率图,如图8所示,横轴坐标为时间从0到时间点t,纵轴坐标为从0到1的概率值,实线表示当前时间作为候选动作片段起点的概率p
s,t
,虚线表示当前时间作为候选动作片段终点的概率p
e,t

[0115]
步骤4023:执行片段评估处理,累积接收预设数量个逐时间点产生的基本特征向量,并执行包括采样和卷积的操作,输出分类置信向量和回归置信向量。
[0116]
具体的,在步骤4023中,由一个第二特征缓冲区、一个边界匹配层和四层卷积神经网络组成,如表3所示。
[0117]
表3
[0118][0119]
第二特征缓冲区累积接收预设数量的逐时间点的基本特征向量,例如接收了最近d个基本特征向量,并保存为基本特征序列s
f
∈r
c
×
d
;图9根据本申请的一些实施例,示出了一种边界匹配层的结构框图,如图9所示,边界匹配层的作用是输入由在线一维卷积操作输出、保存在第二特征缓冲区中的最近d个基本特征向量(d表示最长的动作片段在特征序列中的长度,具体数值取决于数据集中的真实动作片段长度),通过把这些基本特征向量乘上采样权重矩阵,将以时间点t为终点、长度分别为1到d的所有区间及其周边的特征采样为时间维度上定长的新特征矩阵,方便后续计算。
[0120]
对于以时间点t为终点、长度为d的片段(即起点s=t-d+1,d=1,2,

,d),定义其周边时间区域为[s-0.25d,t]。为了能在周边时间区域范围内均匀地选取n个时间点并依此在基本特征序列s
f
上采样,提出采样权重矩阵w∈r
n
×
d
。采样权重矩阵的第i行w[i]的d个数值分别表示特征序列s
f
的d个时间点的特征向量对第i个采样时间点的权重。针对整数采样时间点,直接将w[i]中该时间点的位置设为1,其余为0。针对不为整数的采样时间点,用线性插值的方法按比例累加时间点前后两个整数时间点对应的基本特征向量。例如对于第i个采样时间点t
i

[0121][0122]
其中floor(
·
)、ceil(
·
)、dec(
·
)分别表示取下整数、取上整数和取小数。
[0123]
将特征序列s
f
和采样权重矩阵的转置w
t
相乘,即可得到边界匹配特征m∈r
c
×
n
,每一列对应一个采样时间点。对于1到d之间的每一个片段长度d,都可以用一个与之对应的n
×
d的采样权重矩阵在特征序列s
f
上进行采样,所以采样权重矩阵实际上是三维矩阵w∈r
n
×
d
×
d
。将特征序列s
f
与转置了前两维的采样权重矩阵w
t
相乘,结果是完整的边界匹配特征矩阵m∈r
c
×
n
×
d
,公式化表达为:
[0124][0125]
从而实现了一次性将以t为终点,长度为1到d的全部区间的周边时间区域采样时长为n的新特征矩阵的过程。值得注意的是,采样权重矩阵w的数值是固定的,与特征序列s
f
的数值无关。所以可以事先一次性地计算好采样权重矩阵w的数值,而无需在训练或测试的过程中实时计算。
[0126]
边界匹配层得到的边界匹配特征矩阵m传入后续的四层卷积神经网络。其中,二维
卷积层conv2d作用于n和d两个维度上,卷积核尺寸分别为32和1,整合各个采样时间点的信息。之后两个一维卷积层conv1d 1、conv1d 2均作用在d一个维度上,卷积核尺寸分别为1、3,作用是整合各通道的信息、整合相邻片段长度的信息。以上三个卷积层均以relu作为激活函数。最后一个一维卷积层conv1d 3同样作用在d上,卷积核尺寸为1,经过sigmoid激活函数输出两个置信向量m
cc
,m
cr
∈r
d
,其中,分类置信向量m
cc
表示以当前时间为终点长度为1到d的候选动作片段是否是动作片段的概率,用以辅助分类;回归置信向量m
cr
表示以当前时间为终点的长度为1到d的候选动作片段趋近于真实动作片段的概率,用于精准预测。即片段评估处理输出的两种置信向量包含了以时间点t为终点,长度为1到d的候选动作片段的可能性信息。当前时间点t<d时,片段评估处理的输入将会加入值全部为零的填充(padding),补齐特征序列长度d,相应输出的分类置信向量m
cc
和回归置信向量m
cr
的长度仍为d,但在计算损失时只使用片段长度为1到t的部分。具体的,片段评估处理的标记为g
c
∈r
d
×
t
,g
c
[d,t]表示终点为t、长度为d的时间区间是动作片段的可能性。对应于时间点t时,输出的分类置信向量m
cc
和回归置信向量m
cr
与g
c
的第t列,即g
c
[:,t]对应。其中,分类置信向量m
cc
用于与g
c
[:,t]计算带权重的交叉熵损失(weighted cross entropy loss,wce),使正例趋近于1,负例趋近于0,有助于正确划分正例和负例;回归置信向量m
cr
用于与g
c
[:,t]计算均方误差损失函数(mean square error loss,mse),目的是使置信向量在数值上尽可能靠近动作片段可能性标记。两种置信向量均是为了计算两部分损失而设,共同表示该候选动作片段是动作片段的概率。图10根据本申请的一些实施例,示出了一种片段评估处理输出的置信向量图,如图10所示,横轴坐标为时间从d到时间点t的时间区间,纵轴坐标为从0到1的概率值,实线表示以当前时间为终点长度为1到d的候选动作片段是否动作片段的概率,即分类置信向量m
cc
,虚线表示以当前时间为终点长度为1到d的候选动作片段趋近于真实动作片段的概率,即回归置信向量m
cr

[0127]
本申请中的候选动作片段生成处理又称在线边界匹配网络。其中的片段评估处理与(离线)边界匹配网络(bmn)的片段评估处理功能相似,均为将一系列时间片段内部和周围的特征序列选取n个采样时间点获得边界匹配特征矩阵,再经一系列卷积操作获得置信向量(在线边界匹配网络)或置信矩阵((离线)边界匹配网络)。不同之处是(离线)边界匹配网络仅对完整的视频特征序列进行一次片段评估处理的操作,将任意满足长度小于d的时间片段采样。而在线边界匹配网络在时间点t关注的只有以t为终点长度小于d的时间片段,所以在参数、操作和结果上都减少一维,即时间维度t。例如(离线)边界匹配网络的片段评估处理输出的是置信矩阵m
cc
,m
cr
∈r
d
×
t
,而在线边界匹配网络输出置信向量m
cc
,m
cr
∈r
d

[0128]
以上步骤4022和步骤4023可并行的执行,此处的顺序仅是示例性说明。
[0129]
步骤4024:基于起点概率序列、终点概率序列、分类置信向量和回归置信向量,计算得到置信分数。
[0130]
具体的,对于时间点t,在将第t个特征向量传入在线边界匹配网络后,从时序评估处理中我们可以获得时间点t作为起点概率p
s,t
和终点概率p
e,t
,从片段评估处理中我们可以获得以t为终点的置信向量m
cc
和m
cr

[0131]
为了给出最终的生成动作片段,首先我们需要通过概率判断时间点t是否是起点或终点。如果起点概率p
s,t
满足或p
s,t
>p
s,t-1
,就将t视作候选动作起点,并存入包含从0到t之间所有候选动作起点的列表中。用类似判断候选动作起点的方法,
判断时间点t是否为候选动作终点。如果时间点t不满足候选动作终点的需求,则在当前时间不给出任何动作片段,直接等待处理下一个时间的基本特征向量。如果时间点t是候选终点,则从候选动作起点列表中选出所有满足能与时间点t组成的候选动作片段长度小于最大长度限制d的起点,并将产生的所有候选动作片段传至下一步,具体的,可将d设置为20s。
[0132]
综合考虑起点概率、终点概率以及分类置信向量和回归置信向量两种置信向量,给出片段的置信分数。将φ
i
的置信分数score
i
定义为:
[0133][0134]
其中t-t
s,i
+1是候选动作片段φ
i
的长度。带有置信分数的候选动作片段集合可以表示为
[0135]
为了验证在线边界匹配网络(online boundary matching network,online bmn)方法的效果,并与离线方法和基准方法比较,本申请设计并进行了多组实验,以全面地考察在线边界匹配网络的准确性与实时性。实验基于包括27801个视频的适用于包括动作识别、时序动作检测在内的多视频分析任务的大规模的视频分析数据集activitynet v1.3。本申请中采用两种方法从activitynet v1.3数据集视频中提取特征,但因为对于将特征作为直接输入的时序动作检测方法而言是不同的两组特征,可以视为不同的数据集。为了方便起见,将用双流卷积网络提取的特征数据集记作activitynet v1.3ts,将用slowfast网络提取的特征数据集记作activitynet v1.3sf。
[0136]
实验中代码的编程语言是python 3.7,所使用的机器学习框架是pytorch 1.5。我们共实现了三种时序动作检测方法:
[0137]
1)(离线)边界匹配网络(bmn):获取每个小段视频是起点和终点的概率的部分于边界敏感网络相似,均由卷积神经网络组成。采用边界匹配层(bm layer),通过把一段时间的视频特征信息乘上提前计算好的采样权重矩阵,将这段时间内所有可能的起点-终点对之间的特征信息采样为定长的新特征,并通过几层卷积神经网络,一次性得到全部起点-终点对的置信分数。本申请的在线时序动作检测方法中的候选动作片段的生成处理命名为在线边界匹配网络(online bmn),为了更好的区分,将边界匹配网络称为(离线)边界匹配网络。本申请中使用(离线)边界匹配网络的模型,用作与在线边界匹配网络对比效果。训练过程中,(离线)边界匹配网络的学习(learning rate)取值为0.001或0.0001;批大小为64,每张显卡16;用于在片段评估处理平衡带权重的交叉熵损失和均方误差损失的权值(与在线边界匹配网络中的功能相同)取值为1.0或10.0。
[0138]
2)在线边界敏感网络(online bsn):将输入的视频特征通过三层时间维度上的一维卷积神经网络,获得每个小段视频是起点、终点和中间点的概率。之后,对于每个高概率的起点-终点对,从起点-终点的区间内的中间点概率序列中采样一个定长的新序列,并通过由两层全连接层组成的片段评估处理(proposal evaluation module,pem),最终把输出结果与起点和终点的概率相乘获得片段的置信分数。在本申请中,将(离线)边界敏感网络改为在线方法,作为基准模型(baseline)。训练过程中,在线边界敏感网络的学习率取值为0.0003;批大小为128,每张显卡32。
[0139]
3)在线边界匹配网络(online bmn):训练过程中,在线边界匹配网络的学习率取值为0.002或0.001;批大小为128,每张显卡32;用于在片段评估处理平衡带权重的交叉熵
损失和均方误差损失的权值取值为1.0或10.0。
[0140]
以上三个方法中,在线和离线的边界匹配网络的最大片段长度d取值与特征序列长度t相同,以保证覆盖所有长度的真实动作片段;在线边界敏感网络本身没有最大片段长度的限制。在线和离线的边界匹配网络的边界匹配层的采样时间点数量n设为32。另外,以上三个方法均训练10轮(epoch),使用的优化器均为adam方法,除学习率根据模型而定,权重衰减(weight decay)均设为0.0001作正则化(regularization)以外,其余参数使用pytorch 1.5中adam方法的默认参数(β=(0.9,0.999),ε=1e-8)。对于有多个取值的参数,在所有参数组合上进行实验,并保留最好的实验结果。
[0141]
在初期的实验过程中,发现用于筛除冗余候选动作片段的软化非极大抑制方法耗费的时间较长。软化非极大抑制方法虽然流程简单,但其需要在每选出一个片段φ
p
时计算与φ
c
中所有片段的交并比并相应更新置信分数,时间复杂度为o(n
p
·

c
|),其中n
p
为生成动作片段的目标数量,|φ
c
|为候选动作片段集合中的片段个数。当集合φ
c
有数千个候选动作片段时,软化非极大抑制方法将会占据推断过程的绝大多数时间。为降低消耗时长,我们用cython编译了包含软化非极大抑制方法的源文件,并用生成的动态链接库替代源文件。实验结果显示软化非极大抑制方法的效率提升了3.5

4倍。
[0142]
1)离线检测实验
[0143]
在时序动作检测问题上,离线方法可以观察到完整的视频特征序列,而在线方法在每个进行推断的时间点t只能观察到t之前的特征序列,因而理论上结构相似的离线方法应当是在线方法能获得的效果的上界。虽然本本申请所保护的技术方案是在线时序动作检测方法,但为了能与离线方法直接比较,观察效果差距,同样设置了离线形式的检测实验。在离线检测实验的推断过程中,只进行候选动作片段生成和分数结合步骤,暂不进行片段筛选。当视频处理完毕,已经获得每个时间点t时的候选动作片段集合φ
c,t
时,合并这些集合为一个整个视频的候选动作集合,记为φ
c
,最终再针对φ
c
用软化非极大抑制方法进行一次片段筛选得到φ
p
,最多包含n
p
个动作片段。离线检测实验的特点是能够综合全部的候选动作片段,选出全局置信分数最高的至多n
p
个动作片段。这种检测方式与近年的离线时序动作检测研究工作(包括离线的边界敏感网络和边界匹配网络)的检测方式相同。
[0144]
时序动作检测任务的基本评价指标是真实动作片段的召回率,即对于每一个真实动作片段(ground truth)φ
g
,在推断出的动作片段集合φ
p
中存在一个片段φ
p
与之匹配的概率,而匹配的量化定义则是φ
g
与φ
p
的交并比达到某个设定的阈值z。另外一方面,给出的动作片段的数量也会影响召回率。所以,我们要衡量的是每个视频固定最大动作片段生成数量n
p
的条件下各个视频中真实动作片段的平均召回率,称作ar@an,即平均动作片段数量下的平均召回率。遵循近年来时序动作检测研究工作的通行评价标准,在针对activitynet v1.3 ts和sf两个数据集的离线检测实验中,我们考虑交并比阈值z=[0.5:0.05:0.95]的平均ar@an,且关注n
p
∈{10,50,100}三个取值时的ar@an(分别记作ar@10、ar@50、ar@100),以及取值为1到100之间整数时ar@an曲线下的面积(area under curve,auc):
[0145][0146]
在activitynet v1.3 ts数据集上的离线检测实验结果如表4所示。总体来看,边界匹配网络(bmn)由于本身是离线方法,在运算时能够获知特征序列的全部信息,所以效果
优于两个在线方法。在线方法中在线边界匹配网络(online bmn)由于在时序评估处理运用了能更好利用历史信息的长短期记忆网络,且在片段评估处理直接对特征序列进行分析,从而更适应时序动作检测任务,其效果总体优于作为基准模型的在线边界敏感网络(online bsn)。值得注意的是,在生成动作片段的数量n
p
被控制在10这一较小的值时,在线边界匹配网络的ar@10结果比在线边界敏感网络高将近2%,优势较为明显,说明在线边界匹配网络对动作片段给出的置信分数更准确,能与真实动作片段匹配的正例被排在了前列。另一方面,虽然在线边界匹配网络与(离线)边界匹配网络还具有一定差距,但在线边界匹配网络仅用了(离线)边界匹配网络不到十分之一数量的参数就能达到仅与(离线)边界匹配网络差距3%—4%的效果。对于实时性要求高、倾向于轻量级方法的在线时序动作检测任务中,在线边界匹配网络仍具有一定的优势。
[0147]
在activitynet v1.3 sf数据集上的离线检测实验结果如表5所示。趋势与activitynet v1.3 ts数据集上的结果相近。参数个数的增加是由于activitynet v1.3 sf数据集中特征通道数远大于ts数据集所致。
[0148]
表4
[0149][0150]
表5
[0151][0152]
2)在线检测实验
[0153]
在离线实验中,在时间点t时我们可以将任意多个时间区间放入候选动作片段集合φ
c
中,当视频结束后再从中整体筛选置信分数高的片段。不同于离线检测实验,在线检测实验要尽可能地贴近实时的视频环境,随视频的产生而给出动作片段。所以在到达时间点t时就要立即根据情况,从以t为终点的时间区间中选择少量几个最有可能与真实动作片段匹配的区间。
[0154]
为满足上述要求,在线检测实验的推断过程中,候选动作片段生成、分数结合和片段筛选三个阶段在每个时间点都要进行,其中片段筛选阶段每个时间点t仅允许给出最多
10个动作片段。然而,减少冗余的动作片段也是在线时序动作检测方法的目标之一。方法可能会以达到更高的召回率为目的,每个时间点都在10个片段的限额内尽可能多地产生不必要的(置信分数不高的或冗余的)动作片段。为了避免这种情况,我们仍在方法的最后将每个时间点产生的至多10个动作片段放入集合φ
c
并再用软化非极大抑制方法进行一次片段筛选,最终选出不超过n
p
个动作片段。在理想情况下,如果方法对于时间区间的置信分数评估得足够好,则在应用场景中可以不进行最终的片段筛选,仅设定置信分数阈值作为输出标准,让方法根据情况适量输出动作片段,同时又能保证方法的推断过程完全是在线进行的。
[0155]
在线检测实验的评价标准与离线检测相同,均为交并比阈值z=[0.5:0.05:0.95]的平均ar@an,且关注n
p
∈{10,50,100}三个取值时的ar@an(分别记作ar@10、ar@50、ar@100),以及取值为1到100之间整数时ar@an曲线下的面积auc。
[0156]
(离线)边界匹配网络(bmn)不可进行在线检测,所以我们仅比较在线边界匹配网络(online bmn)和作为基准线的在线边界敏感网络(online bsn)的结果。从表6可以看出在在线检测实验中在线边界匹配网络的效果整体优于在线边界敏感网络,且相比离线实验提升更显著,说明在在线环境下在线边界匹配网络能更好地学习视频特征。类似离线检测实验中的情形,当生成的总动作片段数量被控制在较小值10时,在activitynet v1.3ts和sf两个数据集上,在线边界匹配网络相比于在线边界敏感网络都有超过2%的提升,再次证明在线边界匹配网络评估动作片段置信分数的准确性。
[0157]
表6
[0158][0159]
另外一方面,单步时间列的数据代表方法在依次处理一个视频特征序列的各个特征向量时,从接收特征向量的输入到给出以当前时间为终点的不超过10个候选动作片段为止的时间。这部分测试不使用gpu,仅在cpu上完成。数据表明在线边界匹配网络的处理速度是在线边界敏感网络的四到五倍以上,实时性更高。即便在计算能力有限的平台,或者使用端到端的在线时序动作检测需要同时提取视频特征,效率更高的在线边界匹配网络方法仍能在时间维度上保持更精细的颗粒度。
[0160]
3)结构对比实验
[0161]
在近年提出的时序动作检测方法中,与在线边界匹配网络的时序评估处理作用类似的模块通常使用卷积神经网络获得起点和终点概率序列。使用卷积神经网络的优势在于并行性强,在离线时序动作检测方法中运行速度快,但也难免存在感受野有限、不能很好地利用特征序列的历史信息的缺陷,而这点在无法获知当前时间之后特征的在线时序动作检测问题中尤为重要。为了验证用长短期记忆网络(lstm)代替常用的卷积神经网络作为时序
评估处理的主要结构带来的效果提升,我们设计了分别带有两种时序评估处理的在线边界匹配网络在activitynet v1.3 ts数据集上的结构对比实验。其中,我们提出的在线边界匹配网络使用的是长短期记忆网络,在结构对比实验中暂时记作online bmn-rnn;使用了两层在线一维卷积神经网络的模型记为online bmn-cnn,时序评估处理tem结构如表7所示。如表8和表9所示的试验结果表明,无论是离线检测实验还是在线检测实验,online bmn-rnn均获得了优于online bmn-cnn的效果。另外,尽管使用的长短期记忆网络比在线一维卷积参数更多、运算更复杂,online bmn-rnn的单步运算时间仍比online bmn-cnn快0.3毫秒。
[0162]
表7
[0163][0164]
表8
[0165][0166]
表9
[0167][0168]
本申请中的在线时序动作检测方法采用了轻量级的在线一维卷积、长短期记忆网络和边界匹配层等操作,能够随着视频流的实时产生推断当前时间点作为片段边界的概率,并考察以当前时间为终点的各个时间段作为片段区间的可能性。通过在activitynet v1.3 ts和sf两个数据集上分别进行的离线检测和在线检测的实验结果表明,在线边界匹配网络(online bmn)能够取得比基准模型(baseline),即在线边界敏感网络(online bsn)更好的效果。与现有技术相比,本申请的在线时序动作检测方法对候选片段的置信分数估计更为准确。在实际的在线时序动作检测应用场景下,为控制冗余,每个时间点t不能生成过多的动作片段时,可用更少的片段达到更高的召回率。另外一方面,相较于结构相近的(离线)边界匹配网络(bmn),在线边界匹配网络,且参数数量只有不到十分之一。在对实时性要求高的情况下,不依靠显卡加速运算时也能达到毫秒级的单步计算时间,比基准方法在线边界敏感网络快四到五倍以上。且即便在运算能力受限的平台,且需要实时根据产生
的视频流提取特征再进行动作检测的端到端环境中,在线动作检测方法也可以使用在时间维度上颗粒度要求更细的应用场景。
[0169]
根据本申请的一些实施例,提供了一种在线时序动作检测装置600,图11根据本申请的一些实施例,示出了一种在线时序动作检测装置的结构示意图。如图11所示,进行在线时序动作检测的装置600如下:
[0170]
视频获取单元601,用于在线地获取视频,并从视频中提取用于动作检测的初始特征向量;
[0171]
候选动作片段生成单元602,用于基于初始特征向量,构建候选动作片段,并根据候选动作片段和视频中对应的真实动作片段生成与候选动作片段关联的置信分数,置信分数表示候选动作片段与视频中真实动作片段的匹配度;
[0172]
动作片段筛选单元603,用于从候选动作片段中筛除冗余动作片段,输出生成动作片段;
[0173]
其中,在候选动作片段生成单元602中包括,
[0174]
在线一维卷积操作子单元6021,用于基于初始特征向量执行至少一次在线一维卷积操作,逐时间点地输出基本特征向量;
[0175]
将基本特征向量分别输入时序评估子单元6022和片段评估子单元6023进行操作,其中,
[0176]
时序评估子单元6022,用于逐时间点地接收单个基本特征向量,并执行包括循环神经网络的操作,以逐时间点地产生候选动作片段的起点概率序列和终点概率序列;
[0177]
片段评估子单元6023,用于累积接收预设数量个逐时间点产生的基本特征向量,并执行包括采样和卷积的操作,输出分类置信向量和回归置信向量;
[0178]
置信分数计算子单元6024,用以基于起点概率序列、终点概率序列、分类置信向量和回归置信向量,计算得到置信分数。
[0179]
在一些实施例中,在在线一维卷积操作子单元6022中,将初始特征向量逐时间点的输入第一特征缓冲区,其中第一特征缓冲区可保存逐时间点排列的k个初始特征向量,k表示在线一维卷机操作的卷积核的大小。
[0180]
在一些实施例中,在线一维卷积操作子单元6021,进一步包括:
[0181]
第一特征缓冲区,用于逐时间点接收初始特征向量,并删除最先放入第一特征缓冲区的初始特征向量,以保证第一特征缓冲区中保存最近逐时间点输入的k个初始特征向量,其中k是卷积核的大小;
[0182]
一维卷积层,对第一特征缓冲区内的k个初始特征向量做卷积操作,并得到基本特征向量作为输出结果。
[0183]
在一些实施例中,在时序评估子单元6022中,包括:
[0184]
逐时间点地接收单个基本特征向量,并执行包括循环神经网络的操作,循环神经网络对当前基本特征向量的处理结合对上一时间点的基本特征向量处理的结果。
[0185]
在一些实施例中,时序评估子单元6022,进一步包括:
[0186]
长短期记忆网络,循环神经网络为长短期记忆网络,用于逐时间点的接收单个基本特征向量、上一个长短期记忆网络得出的原隐状态h
t-1
和原细胞状态c
t-1
,并基于基本特征向量、原隐状态h
t-1
和原细胞状态c
t-1
计算并输出当前的新隐状态h
t

[0187]
全连接层,用于接收逐时间点的新隐状态h
t
,经过激活函数输出起点概率序列和终点的概率序列,其中,起点概率由时间点t作为候选片段的起点概率p
s,t
组成,终点概率由时间点t作为候选片段的终点概率p
e,t
组成。
[0188]
在一些实施例中,装置600还包括:将初始隐状态和初始细胞状态设置为0。
[0189]
在一些实施例中,在片段评估子单元6023中,基本特征向量逐时间点的输入第二特征缓冲区,其中第二特征缓冲区累积接收并保存预设数量的逐时间点的基本特征向量。
[0190]
在一些实施例中,片段评估子单元6023,进一步包括:
[0191]
第二特征缓冲区,用于累积接收预设数量的逐时间点的基本特征向量,并保存为基本特征序列s
f
∈r
c
×
d

[0192]
边界匹配层,将基本特征序列和采样权重矩阵w∈r
n
×
d
进行点乘,得到并输出以时间点t为终点,时间区域长度为1到d的采样时长为n的边界匹配矩阵m∈r
c
×
n

[0193]
卷积神经网络,卷积神经网络至少包括一层,输入边界匹配矩阵执行卷积操作,输出分类置信向量m
cc
∈r
d
和回归置信向量m
cr
∈r
d

[0194]
其中,c表示基本特征向量的通道数,d表示最长的候选动作片段在基本特征序列中的长度,采样权重矩阵表示基本特征序列s
f
在采样时长n内的权重,m
cc
表示以当前时间为终点长度为1到d的候选动作片段是动作片段的概率,m
cr
表示以当前时间为终点的长度为1到d的候选动作片段的1到d的准确度。
[0195]
在一些实施例中,至少一层的卷积神经网络可包括四层卷积层,其中,
[0196]
第一层为二维卷积层,作用于边界匹配矩阵的采样时长n和长度d两个维度上,用以整合各采样点的信息;
[0197]
第二层和第四层均为一维卷积层,作用在长度d的维度上,用以整合各通道信息;
[0198]
第三层为一维卷积层,作用在长度d的维度上,用以整合相邻片段长度的信息。
[0199]
在一些实施例中,构建候选片段,进一步包括:
[0200]
确定时间点t是候选动作起点,将候选动作起点的时间点t添到加候选动作起点列表中;
[0201]
确定时间点t是候选动作终点,从候选动作起点列表中选出能与时间点t组成长度小于最大长度d的候选动作片段的候选起点,并输出候选动作片段的集合
[0202][0203]
其中,φ
i
表示第i个候选动作片段,n
c
表示候选动作片段的个数,t
s,i
表示第i个候选动作片段的起始时间。
[0204]
在一些实施例中,候选动作片段的置信分数通过以下公式计算:
[0205][0206]
其中,t-t
s,i
+1表示候选动作片段φ
i
的长度,p
s,t
和p
e,t
分别表示时间点t作为候选动作片段的起点和终点的概率,m
cc,t
表示以时间点t为终点长度为1到d的候选动作片段是动作片段的概率,m
cr,t
表示以时间点t为终点的长度为1到d的候选动作片段的准确度。
[0207]
在一些实施例中,初始特征向量包括时序结构信息。
[0208]
本申请中的在线时序动作检测装置采用了轻量级的在线一维卷积、长短期记忆网络和边界匹配层等操作,能够随着视频流的实时产生推断当前时间点作为片段边界的概
率,并考察以当前时间为终点的各个时间段作为片段区间的可能性。与现有技术相比,本申请的在线时序动作检测方法对候选片段的置信分数估计更为准确。在实际的在线时序动作检测应用场景下,为控制冗余,每个时间点t不能生成过多的动作片段时,可用更少的片段达到更高的召回率。另外一方面,相较于结构相近的(离线)边界匹配网络(bmn),在线边界匹配网络的参数数量只有不到十分之一。在对实时性要求高的情况下,不依靠显卡加速运算时也能达到毫秒级的单步计算时间,比基准方法在线边界敏感网络快四到五倍以上。且即便在运算能力受限的平台,且需要实时根据产生的视频流提取特征再进行动作检测的端到端环境中,在线动作检测装置也可以使用在时间维度上颗粒度要求更细的应用场景。
[0209]
根据本申请的一些实施例,提供了一种在线时序动作检测设备。可以理解,在线时序动作检测的电子设备与本申请提供的在线时序动作检测方法相对应,以上关于本申请的提供的在线时序动作检测方法的具体描述中的技术细节依然适用于在线时序动作检测的电子设备,具体描述请参见上文,在此不再赘述。
[0210]
根据本申请的一些实施例,提供了一种使用计算机程序编码的计算机可读存储介质。可以理解,使用计算机程序编码的计算机可读存储介质与本申请提供的在线时序动作检测方法相对应,以上关于本申请的提供的在线时序动作检测方法的具体描述中的技术细节依然适用于使用计算机程序编码的计算机可读存储介质,具体描述请参见上文,在此不再赘述。
[0211]
可以理解,本申请实施例提供的在线时序动作检测的示例性应用包括但不限于人工智能领域的图像生成。
[0212]
可以理解,如本文所使用的,术语“模块”、“单元”可以指代或者包括专用集成电路(asic)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用、或群组)和/或存储器、组合逻辑电路、和/或提供所描述的功能的其他适当硬件组件,或者可以作为这些硬件组件的一部分。
[0213]
可以理解,在本申请各实施例中,处理器可以是微处理器、数字信号处理器、微控制器等,和/或其任何组合。根据另一个方面,所述处理器可以是单核处理器,多核处理器等,和/或其任何组合。
[0214]
可以理解,本申请提供的在线时序动作检测方法可以在各种电子设备上实施,包括但不限于,服务器、多个服务器组成的分布式服务器集群、手机、平板电脑、膝上型计算机、台式计算机、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备、个人数字助理、虚拟现实或者增强现实设备、其中嵌入或耦接有一个或多个处理器的电视机等电子设备等。
[0215]
特别地,本申请提供的在线时序动作检测方法适用于边缘设备,边缘计算是在靠近物或数据源头的网络边缘侧,融合网络、计算、存储、应用核心能力的分布式开放平台(架构),就近提供边缘智能服务,能够满足实时业务、数据优化、应用智能、安全与隐私保护等方面的关键需求。例如,边缘设备可以是在视频监控系统中靠近视频数据源(网络智能摄像头)端能够对视频中的图像数据执行边缘计算的设备。
[0216]
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程系统包括至少一个处理器、存储系统(包括易失性和非易失性存储器和/或存储元件)、至
少一个输入设备以及至少一个输出设备。
[0217]
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理系统包括具有诸如例如数字信号处理器(dsp)、微控制器、专用集成电路(asic)或微处理器之类的处理器的任何系统。
[0218]
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理系统通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
[0219]
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(cd-roms)、磁光盘、只读存储器(rom)、初始存取存储器(ram)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
[0220]
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
[0221]
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
[0222]
需要说明的是,在本申请的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0223]
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请
的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1