基于多粒度视频信息和注意力机制的视频场景识别方法与流程

文档序号:23384469发布日期:2020-12-22 13:48阅读:72来源:国知局
基于多粒度视频信息和注意力机制的视频场景识别方法与流程

本发明属于视频场景识别方法,涉及机器学习和计算机视觉的技术领域。



背景技术:

近年来,随着深度学习技术的发展,大量针对物体、人脸、动作等维度的识别技术涌现出来。而随着监控技术和短视频app的广泛应用,视频场景识别已成为一项极具科研价值和应用价值的技术,它的具体任务是给定一个特定的视频进行镜头分割,通过提取关键帧,输出场景的类别。目前主流的算法是使用视频级别的特征直接进行场景分类,特征在计算机视觉领域中扮演着重要的角色,选择合适的特征可以极大的提升模型的性能。早期视频特征主要使用vgg特征,该模型由simonyank.等人提出,也大量应用在图像识别领域。后来何凯明通过残差的思想实现了101层的cnn模型,得到了拟合更强的网络。resnet作为特征提取网络被广泛应用于视频识别和图像描述等领域。yu-gangjiang等人使用resnet作为视频级特征实现了视频场景分类的基础模型。使用resnet提取的视频级特征也被称作rgb特征。然而视频帧之间是存在时空关系的,采用rgb特征无法表征出这种时序关系。为了解决这一问题,dutran等人提出了空间卷积(c3d)的网络来获取时空的信息。英伟达提出利用帧之间的差异性计算时空信息的“光流法”,这两种跨时空特征被广泛的应用于视频识别,动作识别等领域。以上特征都可以被视作视频级别的特征,未从更细的粒度考虑视频内部的语义特征联系。shaoqingren等人认为,细粒度的特征有利于增强模型对于视觉信息的理解,为了得到这种信息,他们在较大的视觉检测数据集上训了faster-rcnn用于识别目标图像中的物体,同时提出检测模型标识每个物体的中间特征,并将所有特征级联起来作为图像的总体特征。该模型首次提出后被应用于图像描述和图像问答领域,并取得了不错的成绩。我们认为,该特征同样可以应用于视频理解领域。

在本文中,提出了一种新的模型,该模型利用视频级别的全局信息和物体级别的局部信息,提供更加丰富的推断信息。同时,本文采用了注意力机制来筛选对于视频场景识别重要程度高的特征,这一过程既增强了全局信息和局部信息的关联,同时也实现了对于特征的降维,有效地加速了模型的收敛。具体而言,卷积神经网络resnet提取视频帧全局的视觉特征,faster-rcnn提取单个视频帧的局部表征,即检测特征,该特征包含了物体级别的细粒度信息表示,最后通过视觉注意力模型自适应的对场景中重要的局部信息加权,从而达到更加精准的识别效果。



技术实现要素:

本发明的目的是为了解决在视频场景识别方法中,提出的模型大都使用视频级的特征信息,忽略了多粒度的视频特征关联问题。

本发明为解决上述技术问题采取的技术方案是:

s1.构建深度卷积神经网络模型(resnet)。

s2.构建区域物体检测模型(faster-rcnn)。

s3.结合注意力机制,构建视觉注意力模型。

s4.结合s1中的深度卷积神经网络模型、s2中的区域物体检测模型和s3中的视觉注意力模型构建基于多粒度的视频特征的注意力机制的模型架构。

s5.基于多粒度的视频特征的注意力机制的模型架构的训练和场景识别。

其中,resnet是深度卷积神经网络的一种,它在原有的较浅层次的卷积神经网络的基础上添加了“残差”机制,因此再反向传播的过程中可以保证导数不为0,从而避免了深层网络出现梯度弥散的现象,有效的增加了卷积的拟合性。resnet的残差过程可由如下公式表示

y=f(x)+wx(1)

其中,x是输入的特征图,f代表卷积,w是用来调整x的channel维度的,y是当前残差的输出。

faster-rcnn作为一种有效的检测手段,其原理和sppnet和fast-rcnn这些模型有很大差别,这些模型虽然减少了检测网络运行的时间,但是计算区域建议依然耗时依然比较大。faster-rcnn采用了regionproposalnetwork(区域建议网络)用来提取检测物体的区域,它和整个检测网络共享全图的卷积特征,极大的降低区域建议网络所花时间,从而提升了检测的效率和质量。

给定个固定的视频,首先将视频切割成一个视频序列ti(i=1,2...m),视频场景识别的目的就是产生m个针对特定视频帧的场景分类pi(i=1,2...m)。卷积神经网络resnet提取视频帧全局的视觉特征ii(i=1,2...m),代表即将进行场景分类的帧的粗粒度的表示,该表示是一个d(2048)维的向量,此外我们还通过预训练的faster-rcnn提取单个视频帧的局部表征,即检测特征,该特征包含了物体级别的细粒度信息表示。s={s1,s2...sn}其中n代表选中帧提取的物体个数,实践中n被设置为36。即:

ii=f(ti)(2)

si=g(ti)(3)

其中,f代表深度卷积网络resnet,g代表检测网络faster-rcnn。

得到多粒度的视觉特征后,我们使用全局特征作为注意力机制的键值,通过注意力单元的计算得到n个注意力权重αi,该权重用来控制传入的物体级别的视频特征的。注意力模型会根据不同物体对于推断视频场景的重要程度的到相应权重,物体重要程度越大,其权重值约接近于1;物体对于场景推断越不重要甚至起到干扰作用,其权重越接近于0。最后通过计算得到加权后的视觉特征att,同时也实现了对于细粒度特征的降维,att是一个d(2048)维的向量。该流程如图1所示,可以概括为以下公式:

αi=attention(ii,si)(4)

att=si×αi(i=1,2...n)(5)

最终,融合多粒度信息表示的视觉特征被输入到一个分类器,该分类器是由一个两层的神经网络,和一个激活函数构成,该分类器的作用是将d维表示向量映射为d,d代表了场景分类的总数,选取其中值对应的最大的索引,该索引所对应的分类结果就是最后场景分类的结果。其流程可以用公式表示:

logit=w2(w1×att+b1)+b2(6)

p=softmax(logit)(7)

w1,w2代表两层神经网络的可学习权重,logit是未经过激活函数的值,p为最终的分类概率,概率最大的索引所对应的场景即为神经网络的输出结果。

在图1中所采用的的注意力机制是一种典型的架构,在此基础上设计了多粒度视频信息的注意力机制。我们使用检测模型faster-rcnn提取的图像特征s是一个n×d维的向量,即对应于n个不同物体的子区域,每个区域用d维的向量表示:

s={s1,s2...si...sn},si∈rd

其中,rd表示属于d维度;si表示第i个物体的图像区域;对于每个物体的特征表示,我们依照注意力分配函数根据细粒度检测特征si和全局特征ii生成一个权重αi:

对αi作归一化处理得到注意力权重,使αi介于0到1之间:

其中,αi表示视觉注意力模型中第i个物体的图像对应区域的权重;

经过多粒度视觉注意力模型加权以后的视频帧的最终表示成att,公式如下:

训练过程中我们使用了交叉熵作为损失,因此也可以通过交叉熵损失的变化判断模型的优化程度和模型训练是否收敛。损失函数可用公式表示为:

l(θ)=-∑gilogpi(11)

其中,g为关键帧场景类别的ground-truth,pi为场景预测输出。

与现有的技术相比,本发明的有益效果是:

1.本发明提出了使用多粒度视频特征信息基于注意力架构的视频场景检测模型,并在videonet数据集上取得优异的成绩。

2.本发明考虑了全局特征和局部特征,很好的利用了多个粒度视频信息。并且在模型中采用了注意力模型,既完成了对特征的降维,又能很好的将多个粒度的信息联系起来。

附图说明

图1为基于多粒度的视频特征的注意力机制的模型框架图。

图2为交叉熵损失变化图。

图3为准确率损失变化图。

图4为不同训练模型的准确率。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制。

以下结合附图和实施例对本发明做进一步的阐述。

图1为基于多粒度的视频特征的注意力机制的模型框架图。如图1所示,给定个固定的视频,首先将视频切割成一个视频序列ti(i=1,2...m),视频场景识别的目的就是产生m个针对特定视频帧的场景分类pi(i=1,2...m)。卷积神经网络resnet提取视频帧全局的视觉特征ii(i=1,2...m),代表即将进行场景分类的帧的粗粒度的表示,该表示是一个d(2048)维的向量,此外我们还通过预训练的faster-rcnn提取单个视频帧的局部表征,即检测特征,该特征包含了物体级别的细粒度信息表示。s={s1,s2...sn}其中n代表选中帧提取的物体个数,实践中n被设置为36。即:

ii=f(ti)(2)

si=g(ti)(3)

其中,f代表深度卷积网络resnet,g代表检测网络faster-rcnn。

得到多粒度的视觉特征后,我们使用全局特征作为注意力机制的键值,通过注意力单元的计算得到n个注意力权重αi,该权重用来控制传入的物体级别的视频特征的。注意力模型会根据不同物体对于推断视频场景的重要程度的到相应权重,物体重要程度越大,其权重值约接近于1;物体对于场景推断越不重要甚至起到干扰作用,其权重越接近于0。最后通过计算得到加权后的视觉特征att,同时也实现了对于细粒度特征的降维,att是一个d(2048)维的向量。该流程如图1所示,可以概括为以下公式:

αi=attention(ii,si)(4)

att=si×αi(i=1,2...n)(5)

最终,融合多粒度信息表示的视觉特征被输入到一个分类器,该分类器是由一个两层的神经网络,和一个激活函数构成,该分类器的作用是将d维表示向量映射为d,d代表了场景分类的总数,选取其中值对应的最大的索引,该索引所对应的分类结果就是最后场景分类的结果。其流程可以用公式表示:

logit=w2(w1×att+b1)+b2(6)

p=softmax(logit)(7)

w1,w2代表两层神经网络的可学习权重,logit是未经过激活函数的值,p为最终的分类概率,概率最大的索引所对应的场景即为神经网络的输出结果。

在图1中所采用的的注意力机制是一种典型的架构,在此基础上设计了多粒度视频信息的注意力机制。我们使用检测模型faster-rcnn提取的图像特征s是一个n×d维的向量,即对应于n个不同物体的子区域,每个区域用d维的向量表示:

s={s1,s2...si...sn},si∈rd

其中,rd表示属于d维度;si表示第i个物体的图像区域;对于每个物体的特征表示,我们依照注意力分配函数根据细粒度检测特征si和全局特征ii生成一个权重αi:

对αi作归一化处理得到注意力权重,使αi介于0到1之间:

其中,αi表示视觉注意力模型中第i个物体的图像对应区域的权重;

经过多粒度视觉注意力模型加权以后的视频帧的最终表示成att,公式如下:

图2为交叉熵损失变化图。本文采用了准确率和log损失来评测模型的质量和训练情况。在图2中,我们绘制了测试损失和迭代次数的相关折线图,不难看出本文提出的方法可以快速的收敛,loss值在训练的过程中稳定的下降,最终迭代次数为20时得到最好的效果。

训练过程中我们使用了交叉熵作为损失,因此也可以通过交叉熵损失的变化判断模型的优化程度和模型训练是否收敛。损失函数可用公式表示为:

l(θ)=-∑gilogpi(11)

其中,g为关键帧场景类别的ground-truth,pi为场景预测输出。

图3为准确率损失变化图。如图3所示,随着训练损失的下降,模型的测试准确率也在不断提升,最高可以达到67.71%。由于模型训练了25个迭代,在超过20个迭代次数的时候,模型的测试准确率会有小幅度的下降,说明模型出现了过拟合现象。

图4为不同训练模型的准确率。如图4所示,我们列举了模型迭代次数19到迭代次数25之间的准确率,通过对比发现,迭代次数为23的时候模型得到最好的效果,准确率为67.71%。通过图4,可以看出,本文提出的模型准确率大幅度优于videonet官方开源的baseline模型。与我们提出模型训练取得的最好的效果相比,新模型准确率比官方baseline提升了12.42%。这些数据证明:本文提出的模型可以在较少的训练迭代次数下收敛。基于多粒度视觉特征和注意力机制的模型有效的提升了视频场景识别的质量。相比于传统的使用c3d特征等方法,多粒度视觉信息可以大幅度提升识别的准确率,因为不同粒度的信息不但补充了更加丰富的识别信息,同时还使用注意力机制将不同粒度的信息联系在一起,更加充分的利用了信息。

本发明提出了基于多粒度的视频特征的注意力机制的模型架构用于视频场景识别,它包括一个深度卷积神经网络模型(resnet)、一个区域物体检测模型(faster-rcnn)和一个视觉注意力模型。卷积神经网络resnet提取视频帧全局的视觉特征,faster-rcnn提取单个视频帧的局部表征,即检测特征,该特征包含了物体级别的细粒度信息表示,最后通过视觉注意力模型自适应的对场景中重要的局部信息加权,从而达到更加精准的识别效果。

最后,本发明的上述示例的细节仅为解释说明本发明所做的举例,对于本领域技术人员,对上述实施例的任何修改、改进和替换等,均应包含在本发明权利要求的保护范围之内。

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