郑州大学学报(理学版)  2025, Vol. 57 Issue (3): 65-71  DOI: 10.13705/j.issn.1671-6841.2023171

引用本文  

高晗, 万方杰, 马明旭. 结合ResNet和CBAM的静态图像行为识别方法[J]. 郑州大学学报(理学版), 2025, 57(3): 65-71.
GAO Han, WAN Fangjie, MA Mingxu. Still Image Action Recognition Method Combining ResNet and CBAM[J]. Journal of Zhengzhou University(Natural Science Edition), 2025, 57(3): 65-71.

基金项目

河南省重大专项(221100210100)

通信作者

万方杰(1975—),男,副研究员,主要从事计算机视觉研究,E-mail: wanfangjie@zzu.edu.cn

作者简介

高晗(1999—),男,硕士研究生,主要从事行为识别研究,E-mail: dreamer@nyist.edu.cn

文章历史

收稿日期:2023-07-06
结合ResNet和CBAM的静态图像行为识别方法
高晗, 万方杰, 马明旭    
郑州大学 网络空间安全学院 河南 郑州 450002
摘要:针对静态图像行为识别缺乏大规模训练数据集和无法利用时空特征所导致的识别效果不佳问题,提出一种结合残差神经网络(residual neural network, ResNet)和卷积注意力模块(convolutional block attention module,CBAM)的静态图像行为识别方法。使用特定数据增强技术对数据集进行扩充,采用迁移学习方法对模型初始化,并进行微调训练提升对静态图像行为识别的特征表达能力。通过将CBAM嵌入ResNet的第1个卷积层后来调整模型注意力,利用Grad-CAM方法提取模型识别图像时关注区域并进行可视化,对精度提升进行了解释。在PPMI数据集上,所提方法在演奏乐器类、持有乐器类和总类的平均识别精度分别达到88.30%、81.94%和77.93%,验证了方法的有效性。
关键词残差网络    行为识别    卷积注意力模块    静态图像    迁移学习    
Still Image Action Recognition Method Combining ResNet and CBAM
GAO Han, WAN Fangjie, MA Mingxu    
School of Cyber Science and Engineering, Zhengzhou University, Zhengzhou 450002, China
Abstract: To address the problem of poor recognition performance caused by the lack of large-scale datasets and the inability to utilize spatiotemporal features, a model that combined residual neural network(ResNet)and convolutional block attention module(CBAM)was proposed for still image action recognition. Specific data augmentation techniques were employed to extend the dataset. Transfer learning was applied to initialize the model, followed by fine-tuning to enhance feature representation of still image action recognition. The CBAM was embedded into the first convolutional layer of ResNet to adjust the model′s attention. The Grad-CAM method was utilized to extract and visualize the regions of interest in image which provided an explanation for the precision improvement. On the PPMI dataset, the proposed model achieved the average precision for instrument-playing, instrument-holding, and overall categories of 88.30%, 81.94% and 77.93%, respectively, which verified the effectiveness of the method.
Key words: residual network    action recognition    convolutional block attention module    still image    transfer learning    
0 引言

目前,行为识别研究主要集中在视频领域,基于静态图像的行为识别工作较少。无法利用时空特征和缺乏大规模数据集是基于静态图像的行为识别工作所面临的主要挑战[1]。人体动作大都可以在单张图像中表现出来,这是在静态图像上进行行为识别工作的前提[2]。人类可以仅由单帧图像判断出行为类别,因此基于单帧图像的行为识别研究对探索计算机视觉和人类视觉的关系具有重要意义。早期的静态图像行为识别研究主要是提取图像底层特征。Yao等[3]对人物交互动作中物体和人体姿势之间的相互上下文进行建模,以便每个上下文都可以促进彼此的识别。杨红菊等[4]提取图像中的方向梯度直方图线索和尺度不变特征变换(scale-invariant feature transform, SIFT)描述,使用空间金字塔模型加入粗略空间信息作为特征进行训练。王恩德等[5]使用局部约束线性编码和池化的SIFT融合通用搜索树来共同描述图像特征,利用支持向量机进行分类,也有一定的效果。但这些借助图像底层特征的方法无法区分许多行为之间的差别,也未考虑人体动作与物体或环境的关系,因此早期的研究方法精度较低。

许多学者意识到卷积神经网络(convolutional neural network, CNN)在行为识别研究上的价值[6]。Pratt等[7]首先检测人体和对象的位置,之后利用LSTM网络来识别人体与对象的交互。Lavinia等[8]利用多个CNN与两个颜色空间融合来改善识别效果。Li等[9]提出深度选择性特征学习网络,学习具有细粒度和全局信息的特征图。魏丽冉等[10]采用迁移学习的思想对GooLeNet模型进行改进,并使用逻辑回归进行动作的多分类。但是,一方面深层神经网络训练较为困难,并且网络深度增加会导致模型退化;另一方面,缺乏大规模数据集使得训练深度神经网络时容易出现过拟合,而浅层神经网络又学习不到有效特征,效果较差。因此,本文提出一种结合残差神经网络(residual neural network, ResNet)和卷积注意力模块(convolutional block attention module,CBAM)的网络模型。通过实验调整并确定CBAM的添加位置,使得网络能够注意那些更加重要的特征,以此改善模型效果; 使用微调的迁移学习方法,将来自大型数据集的预训练权重作为模型的初始化权重,提升模型的识别精度。

1 方法设计 1.1 网络结构

使用的网络结构以ResNet152为主体,在ResNet的第1个卷积层后引入1个CBAM, 之后是4个由BottleNeck组成的卷积层,网络最终以1个平均池化层和softmax函数的全连接层结束。将基于ImageNet数据集预训练的ResNet网络权重作为初始化权重,最后一层全连接层从应用于ImageNet分类任务的1 000个类改为对应任务的分类数。具体的网络结构如图 1所示。

图 1 网络结构 Fig. 1 Network structure
1.2 ResNet

ResNet[11]是一种通过在网络中加入恒等映射来解决深度神经网络梯度爆炸问题的CNN。采用ResNet152作为网络基本结构,浅层和深层残差网络分别使用BasicBlock和BottleBlock两种残差块,其基本结构如图 2所示。为了体现网络深度对于图像特征提取能力的影响,并对比CBAM在不同深度网络模型中的效果,选取了ResNet18(残差层=[2, 2, 2, 2])、ResNet50(残差层=[3, 4, 6, 3])和ResNet152(残差层=[3, 8, 36, 3])进行对比实验。ResNet结构如图 3所示。

图 2 残差块基本结构 Fig. 2 Basic structure of residual block

图 3 ResNet结构 Fig. 3 ResNet architecture
1.3 CBAM

CBAM[12]由1个通道注意力模块和1个空间注意力模块连接组成。在计算通道注意力时,首先采用平均池化和最大池化对每个通道特征图中的空间信息进行聚合,生成2个不同的空间上下文描述符,再将其经过2个全连接层来获取通道中的注意力权重,对不同通道的特征进行对比,学习通道之间的重要性,调整每个通道的权重。通道注意力模块如图 4所示。

图 4 通道注意力模块 Fig. 4 Channel attention module

将通道注意力的输出作为空间注意力模块的输入,对其进行基于通道维度的最大池化和平均池化操作,将这2个结果连接起来以生成有效的特征描述符,在连接的特征描述符上卷积生成空间注意力特征图。经过1个sigmoid激活函数得到注意力权重,用来编码在哪些位置强调或者抑制。空间注意力模块如图 5所示。

图 5 空间注意力模块 Fig. 5 Spatial attention module

将CBAM加入ResNet各卷积层后进行对比实验,以此探究CBAM位置变化对识别效果的影响。对比实验包括将CBAM模块单独加入各卷积层后、同时加入第1个卷积层和第5个卷积层后以及同时加入每个卷积层后。CBAM位置对比结果如表 1所示。

表 1 CBAM位置对比结果 Tab. 1 Comparison results of CBAM positions

ResNet的第1层卷积主要是对低级特征进行提取,其他4层卷积主要是对更高级和语义相关特征进行提取。在加入CBAM后,通过对特征图在通道和空间上的注意力进行调整来增强重要通道和位置的信息。CBAM对于这些包含更多语义信息和抽象表示的高级特征不太适用,而在低级特征上能够更好地提取和强调关键信息。

表 1可知,在每个卷积层后加入CBAM,导致精度下降严重,对比不加入CBAM模块的网络,平均识别精度下降1.24个百分点,而仅在第1个卷积层后加入CBAM模块,平均识别精度则提升1.92个百分点。

1.4 数据增强

使用的数据集为PPMI[13],共有2 110张训练图像,每一类行为的训练图像只有70~100张。在训练网络时,使用数据增强技术来增加数据量。由于静态图像的行为识别是一种较为特殊的图像分类任务,并不能适用于所有的数据增强技术。Chakraborty等[14]对在静态图像行为识别数据集上应用数据增强技术的效果进行对比实验,证明了镜像技术中的水平翻转对于效果提升非常有效,而垂直翻转在大多数情况下变成了非标签保留转换,导致结果恶化。在几何变换技术中,透视倾斜和轻微旋转有助于训练,但当旋转量较大时,也会导致类似垂直翻转的效果。在变焦技术中,放大需要保持在适当范围内,以免错失需要捕捉的特征和关键对象。而对于随机擦除技术,由于静态图像行为识别对动作对象的强依赖性,为了防止擦除动作对象或人体部位影响识别效果,本文不引入。因此,数据增强管道选择使用几何变换、水平翻转和变焦技术。将图像的像素调整为标准大小(224×224)后通过数据增强管道,依次执行以下操作。(1) 几何变换。主要包括透视倾斜和图像旋转等操作,其中图像旋转操作时,左右旋转最大角度在10°以内,图像经过管道时应用这项操作的概率为70%。(2) 变焦操作。最小因子为1.1,最大因子为1.5,操作概率为50%。(3) 镜像操作。即水平翻转,操作概率为50%。

2 实验与分析 2.1 数据集

所提方法在PPMI数据集上进行实验评估。PPMI的全称为people playing musical instruments,意为演奏乐器的人。该数据集包含的图像是人体与12种不同乐器之间的互动,分为演奏乐器和持有乐器两种动作类型,每种类型都含有12种乐器,共24种动作分类。PPMI数据集包含2 231张演奏乐器类图像和1 978张持有乐器类图像。图 6显示了PPMI数据集的一些示例图像。由于PPMI数据集中的图片类内相似度较高,因此对于识别方法在细粒度分类方面的能力要求更高。识别任务分为在演奏乐器类、持有乐器类上分别识别和在总24类上识别3项任务。

图 6 PPMI数据集示例图像 Fig. 6 Example images from PPMI dataset
2.2 实验设置

在Ubuntu18.04系统下进行实验,硬件为NVIDIA Quadro RTX 6000,程序环境为Python 3.8.12,使用PyTorch1.10.2深度学习框架,CUDA版本为10.2.89。由于需要训练较深的网络,考虑硬件限制,批尺寸大小设置为8。得益于迁移学习方法,训练周期仅为30个轮次,初始学习率为0.001,每5个轮次后学习率衰减为原来的0.1。使用交叉熵损失函数和随机梯度下降优化算法,Momentum动量设置为0.9。使用1.4节所述的数据增强技术后,演奏乐器类训练图像数量为5 590张,持有乐器类训练图像数量为4 905张。使用PyTorch提供的在ImageNet数据集上预训练的ResNet网络权重作为所提模型的初始化权重。

2.3 实验结果与分析 2.3.1 消融实验

为了验证方法的有效性,在PPMI数据集上进行消融实验,所有实验使用相同硬件与超参数。为了显示CBAM对不同网络深度的影响,增加了ResNet18和ResNet50模型的实验。消融实验结果如表 2所示,给出了应用数据增强技术和加入CBAM对演奏乐器类、持有乐器类和总24类的平均识别精度。

表 2 消融实验结果 Tab. 2 Results of ablation experiments

表 2可知,在仅加入CBAM后,ResNet50与ResNet152在3项任务上的识别效果均有所提升。加入CBAM后的ResNet50和ResNet152网络在PPMI总24类动作识别精度上分别提升0.73个百分点和1.17个百分点,几乎达到了只使用数据增强后的效果。在同时应用数据增强和加入CBAM后,3种网络模型在3项任务上的识别效果均有提升。改进后的ResNet18在演奏乐器类、持有乐器类、总24类3项行为识别任务上的平均识别精度分别提升3.09、5.02、4.25个百分点,ResNet50在3项任务上的平均识别精度分别提升1.90、1.23、2.79个百分点,ResNet152在3项任务上的平均识别精度分别提升1.58、1.42、3.82个百分点。

网络深度的增加对于平均识别精度的提升有着较大帮助。加入CBAM对于网络层数较浅模型的提升效果比深层网络更好,这主要是因为较浅层的ResNet对于图像的特征信息提取能力不足,注意力机制可以很好地在这方面帮助模型提升识别效果,而在深层网络中CBAM帮助提取特征的效果相对不明显。在不应用数据增强时,ResNet18不仅没有提升识别精度,反而有所下降。在模型对特征提取能力不强的情况下,加入CBAM放大了缺乏训练数据的问题,受到训练图像背景杂乱等影响,出现了严重的过拟合情况。在3项行为识别任务中,加入CBAM后对于总24类的精度提升效果高于其他两类,这说明CBAM缓解了原模型对细粒度的特征信息分辨能力不强的问题。总的来说,应用的数据增强方法和加入的注意力模块都对识别效果有着改善作用。

2.3.2 对比实验

在PPMI数据集上,将所提方法与其他文献提出的静态图像行为识别方法进行平均精度对比,结果如表 3所示。可以看到,所提方法在演奏乐器类、持有乐器类和总24类的平均识别精度分别为88.30%、81.94%和77.93%,相比对比方法有着较为明显的提升。值得注意的是,所提方法在演奏乐器类上的效果要比持有乐器类更好,表明模型能够从与物体有明显交互的动作中提取到更多的识别信息。

表 3 不同方法在PPMI数据集上的平均识别精度对比结果 Tab. 3 Comparison results of average recognition precision of different methods on PPMI dataset
2.3.3 混淆矩阵和可视化结果

所提方法在PPMI数据集演奏乐器类验证集上的混淆矩阵如图 7所示,在PPMI数据集持有乐器类验证集上的混淆矩阵如图 8所示。演奏乐器类和持有乐器类都在竖琴(harp)、吉他(guitar)等这些目标较大且与其他乐器差异较大的类别上识别效果较好。同时,也容易受到物体形状相似的影响而误识别一些动作,如演奏乐器类和持有乐器类都易将单簧管(clarinet)与竖笛(recorder)误判。

图 7 PPMI演奏乐器类数据集混淆矩阵 Fig. 7 Confusion matric on the PPMI instrument-playing dataset

图 8 PPMI持有乐器类数据集混淆矩阵 Fig. 8 Confusion matric on the PPMI instrument-holding dataset

所提方法在PPMI数据集总24类动作识别验证集上的混淆矩阵如图 9所示。对总24类动作进行识别,模型效果相比演奏乐器类和持有乐器类都有所下降,准确率为77.22%。对于相同的乐器,动作是演奏还是持有,模型会有不同程度的误判,例如将持有巴松管识别为演奏巴松管等。这说明在细粒度的行为上,所提方法在处理图像信息进行特征提取时,所获取的交互信息还不能够完全地将两种行为分辨出来,同时图像中同种乐器的物体信息也影响了模型的预测。在一些形状相似的乐器上,模型也产生了一些误判,例如竖笛和单簧管两种乐器较为相似,持有动作也较为一致,使得模型将一些真实标签为持有单簧管的图像判断为持有竖笛。

图 9 PPMI总24类动作数据集混淆矩阵 Fig. 9 Confusion matric on the PPMI overall 24 action dataset

为了分析所提方法的模块作用,增强可解释性,通过Grad-CAM可视化方法[17]进行了演奏圆号(Frenchhorn)行为识别对比,Grad-CAM可视化结果如图 10所示。可以看出,在无数据增强、无CBAM的模型中,网络比较关注人体与交互对象的连接点。应用数据增强后,对于交互物体的关注度增加。而在加入CBAM后,网络的注意力明显由原来的小部分转移为人体与交互物体的整体以及交互物体的大致形状,同时也增加了一些无关区域的关注度。这就解释了所提方法识别精度提升和对于细粒度行为识别改善的原因。

图 10 Grad-CAM可视化结果 Fig. 10 Grad-CAM visualization results
3 结语

本文提出一种结合ResNet和CBAM的静态图像行为识别方法,将在ImageNet上预训练的ResNet网络权重作为模型的初始化权重,新的网络模型在ResNet的第1个卷积层后加入由通道注意力机制和空间注意力机制组成的CBAM。在模型训练部分,对原训练集图像进行数据增强,在数据增强后的训练集上进行训练,改变权重。所提方法在PPMI数据集演奏乐器类和持有乐器类的平均识别精度分别为88.30%和81.94%,而在总24类的平均识别精度为77.93%,取得了较好的效果。所提方法对于细粒度行为的识别虽有改善,但还会受到相似交互对象的影响。对于相似行为和相似物体导致的误识别,还需要在细粒度方面进行更多的研究。尽管应用数据增强和加入注意力模块缓解了缺乏训练数据的问题,但仍旧需要一个大规模的静态图像人体行为识别数据集来开展更多的研究,这也是未来的工作方向。

参考文献
[1]
GUO G D, LAI A. A survey on still image based human action recognition[J]. Pattern recognition, 2014, 47(10): 3343-3361. DOI:10.1016/j.patcog.2014.04.018 (0)
[2]
GIRISH D, SINGH V, RALESCU A. Understanding action recognition in still images[C]//IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Piscataway: IEEE Press, 2020: 1523-1529. (0)
[3]
YAO B P, LI F F. Recognizing human-object interactions in still images by modeling the mutual context of objects and human poses[J]. IEEE transactions on pattern analysis and machine intelligence, 2012, 34(9): 1691-1703. DOI:10.1109/TPAMI.2012.67 (0)
[4]
杨红菊, 冯进丽, 郭倩. 基于多核学习的静态图像人体行为识别方法[J]. 数据采集与处理, 2016, 31(5): 958-964.
YANG H J, FENG J L, GUO Q. Action recognition in still image based on multiple kernel learning[J]. Journal of data acquisition and processing, 2016, 31(5): 958-964. (0)
[5]
王恩德, 刘巧英, 李勇. 基于LLC与GIST特征的静态人体行为分类[J]. 计算机工程, 2018, 44(8): 268-272.
WANG E D, LIU Q Y, LI Y. Static human behavior classification based on LLC and GIST features[J]. Computer engineering, 2018, 44(8): 268-272. (0)
[6]
钱文祥, 衣杨. 视频识别深度学习网络综述[J]. 计算机科学, 2022, 49(S2): 341-350.
QIAN W X, YI Y. Survey of deep learning networks for video recognition[J]. Computer science, 2022, 49(S2): 341-350. (0)
[7]
PRATT S, YATSKAR M, WEIHS L, et al. Grounded situation recognition[C]//European Conference on Computer Vision. Cham: Springer International Publishing, 2020: 314-332. (0)
[8]
LAVINIA Y, VO H, VERMA A. New colour fusion deep learning model for large-scale action recognition[J]. International journal of computational vision and robotics, 2020, 10(1): 41. DOI:10.1504/IJCVR.2020.104356 (0)
[9]
LI Z Q, GE Y X, FENG J Y, et al. Deep selective feature learning for action recognition[C]//IEEE International Conference on Multimedia and Expo. Piscataway: IEEE Press, 2020: 1-6. (0)
[10]
魏丽冉, 岳峻, 朱华, 等. 基于深度神经网络的人体动作识别方法[J]. 济南大学学报(自然科学版), 2019, 33(3): 215-223.
WEI L R, YUE J, ZHU H, et al. Human action recognition method based on deep neural network[J]. Journal of university of Jinan (science and technology), 2019, 33(3): 215-223. (0)
[11]
HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]//IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE Press, 2016: 770-778. (0)
[12]
WOO S, PARK J, LEE J Y, et al. CBAM: convolutional block attention module[C]//European Conference on Computer Vision. Cham: Springer International Publishing, 2018: 3-19. (0)
[13]
YAO B P, LI F F. Grouplet: a structured image representation for recognizing human and object interactions[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE Press, 2010: 9-16. (0)
[14]
CHAKRABORTY S, MONDAL R, SINGH P K, et al. Transfer learning with fine tuning for human action recognition from still images[J]. Multimedia tools and applications, 2021, 80(13): 20547-20578. DOI:10.1007/s11042-021-10753-y (0)
[15]
IANDOLA F N, HAN S, MOSKEWICZ M W, et al. SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and < 0.5 MB model size[EB/OL]. (2021-04-15)[2023-03-06]. https://arxiv.org/pdf/1602.07360.pdf. (0)
[16]
HOWARD A, SANDLER M, CHEN B, et al. Searching for MobileNetV3[C]//IEEE/CVF International Conference on Computer Vision. Piscataway: IEEE Press, 2020: 1314-1324. (0)
[17]
SELVARAJU R R, COGSWELL M, DAS A, et al. Grad-CAM: visual explanations from deep networks via gradient-based localization[J]. International journal of computer vision, 2020, 128: 336-359. (0)