一种基于混合模型的轻量级视频行为识别方法

文档序号:33195667发布日期:2023-02-04 11:41阅读:136来源:国知局
一种基于混合模型的轻量级视频行为识别方法

1.本发明涉及一种基于混合模型的轻量级视频行为识别方法,属于计算机人工智能学科技术领域。


背景技术:

2.视频行为识别是通过对一段视频片段进行分析从而得到视频中人物的动作行为,在安防监控、驾驶员或乘客行为识别、短视频审核等具有广泛的应用前景。
3.使用3d卷积能够有效的捕捉到时间维度和空间维度的信息,但直接基于3d卷积的视频行为识别网络(d.tran,l.bourdev,r.fergus,l.torresani and m.paluri.learning spatiotemporal features with 3d convolutional networks.proceedings of the ieee international conference on computer vision(iccv).2015:4489-4497.)往往会造成参数量大和浮点计算量高等问题,无法直接在算力受限的边缘设备上应用与普及,而直接基于轻量化网络膨胀而来的3d结构网络模型虽然拥有较小的参数量和计算量,然而精度损失严重,这就限制了基于3d卷积的视频行为识别的使用与普及。基于transformer的视频行为识别网络模型虽然具有较优异的精度表现,但其往往具有较大的参数量和计算量,并且与使用卷积的模型相比在达到相同精度时,所需训练数据集更大,构建识别模型和进行识别的效率较低。
4.因此,现有的视频行为识别方法难以在达到高精度识别效果的同时,保持较高的识别效率。


技术实现要素:

5.为了解决目前的视频行为识别方法无法同时保证高精度和高效率的问题,本发明提供了一种轻量级视频行为识别方法及系统,具体技术方案如下:
6.本发明的第一个目的在于提供一种视频行为识别方法,包括:
7.步骤一:获取待识别的行为视频;
8.步骤二:对所述待识别的行为视频进行预处理,得到行为图像序列;
9.步骤三:将所述行为图像序列输入基于transformer与3d-cnn混合的轻量级视频行为识别网络;
10.步骤四:所述基于transformer与3d-cnn混合的轻量级视频行为识别网络对所述行为图像序列进行计算并输出行为识别结果。
11.可选的,所述基于transformer与3d-cnn混合的轻量级视频行为识别网络包括依次连接的:输入层、第一卷积层、连续堆叠1次以上的3d-shufflevit网络、第二卷积层、池化层、线性分类层和输出层;
12.所述3d-shufflevit网络包括:3d-shufflenetv2基础模块、3d-shufflenetv2下采样模块和shufflevit模块;
13.所述3d-shufflevit网络的构建过程包括:
14.步骤1:构建所述3d-shufflenetv2基础模块和3d-shufflenetv2下采样模块;
15.将轻量级shufflenetv2网络通过膨胀的方式,将其2d卷积转换为3d卷积,2d池化操作转换为3d池化操作;并将原有的relu激活函数换为hardswish激活函数;
16.步骤2:构建所述shufflevit模块;
17.对特征层进行unflod展开操作,计算展开后特征层patch之间的自注意力,最后将展开的特征层折叠;
18.步骤3:由所述3d-shufflenetv2基础模块、所述3d-shufflenetv2下采样模块和所述shufflevit模块构建3d-shufflevit网络。
19.可选的,所述步骤2包括:
20.步骤2.1:首先将特征图通过一个卷积核大小为3x3x3的卷积层进行局部特征建模,然后再通过一个卷积核大小为1x1x1的卷积层调整通道数;
21.步骤2.2:unflod操作;
22.对特征图划分patch,设置的patch大小为2x2x2,即每个patch内有4个像素;
23.步骤2.3:自注意力计算;
24.每个token只和在每个patch中位置相同的token进行自注意力计算;
25.步骤2.4:flod操作;
26.自注意力计算完后,对特征进行折叠操作,将[n,c,t,h,w]折叠为[n,c,t*h*w],其中n表示batch大小,c表示通道数,t表示时间维度,h和w表示高和宽,将经过自注意力机制计算后的特征折叠为原特征图。
[0027]
可选的,所述shufflevit网络采用hardswish激活函数。
[0028]
可选的,所述第一卷积层的卷积核大小为3x3x3,步长为1。
[0029]
可选的,所述第二卷积层的卷积核大小为1x1x1。
[0030]
可选的,所述步骤二中对所述待识别的行为视频进行预处理的过程包括:归一化、随机裁剪、分辨率调整。
[0031]
可选的,所述分辨率调整为224x 224。
[0032]
本发明的第二个目的在于提供一种视频行为识别系统,包括:
[0033]
视频获取模块,用于采集待识别的行为视频;
[0034]
视频预处理模块,用于对采集的行为视频进行处理并输出行为图像序列;采用上述的3d-shufflevit网络,用于对所述行为图像序列进行计算;
[0035]
输出显示模块,用于根据3d-shufflevit网络的计算结果输出行为识别结果。
[0036]
可选的,还包括报警装置,用于根据行为识别结果发出警报信号。
[0037]
本发明有益效果是:
[0038]
本发明的视频行为识别方法及系统,通过将transformer和shufflenetv2上采样模块和下采样模型进行混合,构造了轻量级视频行为识别网络3d-shufflevit,弥补了直接基于轻量化网络扩展而来的视频行为识别网络的精度损失问题,达到了显著提升了网络精度并保证了网络仍为轻量级网络,并降低了训练难度。
[0039]
相比于现有的识别方案,本发明不仅提升了识别精度,且同时提高了模型的构建和识别效率。
附图说明
[0040]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]
图1是本发明实施例二的2d-shufflenetv2基础模块以及对应的3d-shufflenetv2基础模块结构图。
[0042]
图2是本发明实施例二的2d-shufflenetv2下采样模块以及3d-shufflenetv2下采样模块结构图。
[0043]
图3是本发明实施例二的3d-shufflevit模块unflod和flod操作示意图。
[0044]
图4是本发明实施例二的基于transformer与3d-cnn混合的轻量级视频行为识别网络结构图。
[0045]
图5是本发明实施例二的shufflevit模块结构图。
具体实施方式
[0046]
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0047]
首先,对本发明涉及到的基础理论知识进行介绍:
[0048]
一、transformer
[0049]
transformer放弃使用传统的循环神经网络顺序结构而采用自注意力机制来使得模型能够并行化训练且掌握全局信息。vision transformer可以看成是transformer的图形版本,在尽可能少的改造下将标准的transformer模型直接迁移至图像领域变成vision transformer模型。为了将transformer模型适用于图像,将图像切分成很多子块并将这些子块组成线性嵌入序列,然后将这些线性嵌入序列作为transformer的输入以模拟在nlp领域中词组序列输入。transformer的自注意力机制能够有效的进行长距离信息建模。
[0050]
二、shufflenetv2网络
[0051]
当前先进的轻量化网络大都使用深度可分离卷积或者组卷积,以降低网络的计算量,但这两种操作都无法改变特征的通道数,因此还需要使用1
×
1卷积来促进通道之间信息的融合并改变通道至指定维度。因此,轻量化网络中1
×
1卷积占据了大量的计算,并且致使通道之间充满约束,一定程度上降低了模型的精度。为了进一步降低计算量,shufflenetv1提出了通道重排来完成通道之间信息的融合。shufflenetv2进一步弥补了shufflenetv1的不足,提出了通道拆分操作,将输入特征分成两部分,一部分进行真正的深度可分离计算,将计算结果与另一部分进行通道拼接,最后进行通道的混洗操作,完成信息的互通,减少了参数量和计算量,并提升了模型的准确率。
[0052]
本发明的3d-shufflevit,其结构主要从shufflenetv2和transformer模型二者相结合改进而来。
[0053]
实施例一:
[0054]
本实施例提供一种视频行为识别方法,包括:
[0055]
步骤一:获取待识别的行为视频;
shufflenetv2基础模块、3d-shufflenetv2下采样模块和shufflevit模块进行堆叠,最后使用卷积核大小为1x1x1的卷积层进行最后的特征提取,其中步长stride为1为3d-shufflenetv2的基础模块,stride为2时表示3d-shufflenetv2的下采样模块,shufflevit block表示shufflevit模块,最后对特征层使用全局池化,接着使用线性分类层进行最终分类。
[0076]
步骤4:训练和测试基于混合模型的轻量级视频行为识别网络。
[0077]
步骤4.1:使用jester和ucf-101两个视频行为数据集进行测试改进的模型的有效性,对数据集的视频数据集进行抽取视频帧操作。
[0078]
步骤4.2:对视频帧进行预处理操作,如归一化、随机裁剪等。将输入图像序列的分辨率控制在224x 224。
[0079]
步骤4.3:将经过预处理操作的连续16帧视频帧序列输入给网络模型,进行模型训练。通过网络的前向计算,以及损失函数计算网络误差,并将该误差反向传播,计算网络每一层权重的误差梯度,并进行权值更新,逐渐缩小网络误差值。不断循环执行上述过程,寻找最有效的网络训练参数,使得网络损失降低至最小即完成网络的训练过程,获得网络模型,此过程可以简单概括为参数寻优。
[0080]
步骤4.4:测试并计算网络模型的参数量、浮点计算量、准确率以及在gpu和cpu上的推理延迟。
[0081]
步骤4.5:将训练好的模型导出,应用到移动端手机设备上,测试模型在真实环境下的推理速度与推理延迟。
[0082]
为了证明本发明的有益效果,进行了对比实验,将本发明的视频行为识别方法与直接基于轻量化网络扩展而来的轻量级视频行为识别方法进行了比较,实验数据如表1和表2所示,其中表1是本实施例的参数量和浮点计算量对比数据,表2是本实施例的识别准确率对比数据。
[0083]
表1参数量和浮点计算量对比数据
[0084][0085]
表2识别准确率对比数据
[0086][0087]
由表1的数据可以看出,本实施例的基于transformer与3dcnn混合的轻量级视频行为识别方法中,参数量为1.7m,浮点数计算量为0.6g,与其他方案相比,本实施例的参数量和计算量都具备轻量级优势;
[0088]
由表2的数据可以看出,本实施例与其他方案相比,在三种数据集下的识别准确率均较高。结合表1,可证明本发明在保证识别精确度的同时,能够保证较高的识别效率。
[0089]
综上所述,本发明引入transformer,以弥补3d卷积不能进行长距离建模的缺点,且在3d卷积的帮助下,弥补了transformer所缺少的归纳偏置,使得网络具有长距离时间建模的能力和强大的特征提起能力的同时,提高了模型的精度并保证了模型的大小仍为轻量化网络,基于transformer和3d卷积构建的轻量级视频行为识别混合模型,同时具备高精度和高效率的优势。
[0090]
本发明实施例中的部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
[0091]
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1