本文是一篇计算机论文范文,本文结合目标检测、姿态估计、计数算法等技术,构建健身动作的数据集,使用改进的YOLOv5s模型来检测人体信息,再融合POSENET姿态估计检测人体骨骼关键点,并依据不同健身动作设计相应计数算法,最终将上述技术以WEB智能应用展示。
第一章绪论
1.1研究背景及意义
经济的快速发展导致公众身心健康极易受到忽视,为保障全民身心健康,各国将健身作为发展战略的一部分。在中国,健身行业从2011年以来一直处于发展阶段,并受到社会和政府的政策激励,以此在公众中推广健身运动。依据国家体育总局发布的《2022国民健身趋势报告》显示,在我国7岁及以上人群每周至少锻炼一次的人数比例自2014年以来增长了18.5%,达到67.5%,这表明我国国民呈现出积极健身的趋势。据内蒙古自治区体育局发布的《2022年全民健身活动状况调查公报》显示,每周至少参与1次体育锻炼的人数百分比分别是青年人82.6%、成年人59.8%、老年人46.5%,具体数据可见图1-1。这表明全民健身战略已经取得一些初步成功,但需要进一步努力促进和普及。
在体能测试中,人们需要肉眼计算健身动作的数量,并依靠主观感受判断健身动作是否标准。此外,如果没有适当健身知识去盲目健身,可能会导致肌肉拉伤,从而对居民的身心健康产生不利影响。为解决这些问题,可以将健身体育行业与智能技术融合在一起,帮助完善健身动作的相关工作,例如识别健身动作的名称、评估健身动作的标准以及计算健身动作的数量等。这些做法有利于传播全民健身战略,并提高全民健身热情。
1.2研究现状
1.2.1目标检测
(1)健身动作数据集的研究现状
在计算机视觉领域中,常见的健身动作数据集有HUMA、UCF101[1]、Kinetics、STAIRActions[2]以及SBU Kinect Interaction。其中,UCF101是UCF50的扩展,由101个健身动作组成,超过1万个人类行为的视频片段;Kinetics由600个健身动作组成,超过60万个人类行为的视频片段;STAIR Actions应用于日常生活中,由100个健身动作组成,超过10万个人类行为的视频片段。SBU Kinect Interaction描述两个人的互动场景,超过500个互动场景的视频片段。
以上是常见的健身动作数据集,但在我国相关数据集较少,本身构建对应的数据集耗费的时间较多,且各个数据集都有不同的特点。因此,建立合适的健身动作数据集也是一大难题。
(2)目标检测模型的应用现状
目标检测技术的成熟发展,主要有两个基本方向,一个是传统计算机视觉,通过手工设计并提取相关特征以及分类,常用的算法有SIFT(Scale-Invariant FeatureTransform)[3]、HOG(Histogram of Oriented Gradients)[4]以及SURF(Speeded Up RobustFeatures)[5]等,这类模型难以应对复杂场景。另一个是深度学习,通过自动提取特征让模型有更好的准确性,常见的算法有CNN、RNN、YOLO等,其中YOLO系列作为单阶段算法,速度相对较快。
第二章相关理论知识
2.1卷积神经网络
卷积神经网络(Convolutional Neural Network,CNN)作为深度学习模型的基础,在图像识别、自然语言处理等方面有广泛应用,其基本的结构由卷积层、池化层、全连接层以及激活函数组成[30]。
2.1.1卷积层
卷积层是卷积神经网络中的基础组件,在图像识别应用中,其主要功能是提取输入图像数据的相关特征,其图像数据以三维像素矩阵的形式呈现,分别表示为矩阵的长度、宽度以及深度,其中长度与宽度代表尺寸大小,深度代表色彩通道数。例如,对于RGB彩色图像,矩阵的深度为3,黑白图像的矩阵深度为1。卷积层基于卷积核矩阵对输入的图像矩阵进行卷积运算,产生一系列卷积特征矩阵,而且这些矩阵可以捕捉到输入图像中的不同层次上的特征。但是,仅仅依赖一个卷积层的特征提取能力是不够的,通常可以堆叠多个卷积层来构建复杂的特征提取器,从而提高网络模型的表现能力。
2.1.2池化层
卷积神经网络中的池化层可以有效防止模型出现过拟合问题,以此增强模型的鲁棒性和泛化能力。池化层主要是通过将图像特征中的高频与低频进行分分离,使得图像特征表示更为简洁。池化层基于滑动窗口划分区域,对图像中的每个区域进行降采样,这不仅可以缩小图像数据尺寸,还可以减少计算量、参数量以及相关信息的损失。此外,池化层还可通过改变填充和调整步幅的方式来改变滑动窗口的移动方式。
2.2目标检测算法
目标检测是指在输入的图像或者视频流中检测并定位目标对象。最初的目标检测算法为两阶段(Two-stage)算法,将输入图像数据生成候选框,再对候选框进行分类或者回归分析。虽然这种算法具有较高检测精度,但其速度较慢,无法满足实时性要求,常见的模型有R-CNN[35]、Fast-RCNN[36]、Faster-RCNN[37]以及Mask-RCNN[38]等。为了提高模型的检测速度、精确度和实时性,目标检测算法发展为单阶段(One-stage)算法。单阶段算法直接对输入的图像数据预测出目标类别与候选框位置,从而实现一步到位的模型,让目标检测速度有了质的提升,主流单阶段检测算法为YOLO系列,它将目标检测问题转换为回归问题,通过卷积神经网络预测出目标类别与位置,常见的模型有YOLO[39]、YOLOv2[40]、YOLOv3[41]、YOLOv4[42]、YOLOv5、YOLOX[43]、YOLOv6[44]、YOLOv7[45]等,具有速度快、精度高等优点,被广泛应用在计算机视觉领域中,自动驾驶、姿态估计等应用中。
第三章 YOLOv5s模型及改进 ............................ 15
3.1 YOLOv5s结构原理 ..................................... 15
3.2 YOLOv5s网络结构改进 ............................... 22
第四章 健身动作检测结果分析 ................................ 31
4.1 实验数据处理 ....................................... 31
4.2 实验结果与分析 ................................... 37
第五章 模型的应用研究与实现 ......................... 53
5.1 健身动作计数算法 ......................... 53
5.2 实验结果 .......................................... 58
第五章模型的应用研究与实现
5.1健身动作计数算法
通过POSENET姿态估计确定人体骨骼关键点,再根据不同健身动作确定其计数算法。
5.1.1人体骨骼关键点确定
人体骨骼关键点指的是人体的头、肩、膝盖和踝等特定位置,不同数据集训练出的关键点个数会有所不同。如图5-2所示,MPII数据集包含16个人体骨骼关键点,适用相对比较简单的静态数据集;COCO数据集包含17个人体骨骼关键点,比MPII数据集多一个鼻子关键点,适用在不同的场景和环境;而MUCO数据集包含21个人体骨骼关键点,比COCO数据集少一个鼻子关键点,但在躯干部位多了手指和脚趾等关键点,适用于不同的场景和环境。为了确保拍摄环境的多样化以及训练数据的多样性,最终选择MUCO数据集进行训练,以涵盖更多场景和姿态角度。
第六章总结与展望
6.1研究总结
为落实全民健身的线上推广,将智能产业与现代体育行业相结合,采用目标检测、姿态估计以及健身动作的计数算法来实现健身动作的计数,并通过WEB应用呈现。在目标检测模型中,改进后的YOLOv5s网络模型用于检测人体候选框,最终获得的检测精度指标达到96.89%;在姿态估计模型中使用POSENET模型检测人体骨骼关键点,将其DetectNet模块替换为改进后的YOLOv5s模型;在计数算法中,骨骼关键点的变化基于不同健身动作;在WEB应用中,主要使用前端VUE框架和后端Flask框架。
本文主要工作如下:
(1)为构建健身动作的数据集,以实地拍摄和网络爬虫相结合的方式进行采集,使用类别信息和绘制候选框的方式进行标注,并使用无监督图像增强和有监督图像增强这两种方式来扩充数据,最后以训练集、验证集和测试集进行划分,划分比例为8:1:1。
(2)基于健身动作的数据集,使用YOLOv5s作为基准模型进行目标检测。在基准模型中增加5个单一的改进模块来提取健身动作相关特征:将SPPF结构替换为SPPFCSPC结构、增加CBMA注意力机制、增加HardSwish激活函数、将邻近上采样结构替换为转置卷积、增加解耦头模块。上述单一的改进模块中,SPPFCSPC结构在指标mAP_0.5中提高最大,比原始模型增加1.48%,且HardSwish激活函数、转置卷积以及解耦头单一改进模块中都可以降低模型的参数量和计算量。为验证上述模块对模型的贡献值,进行消融实验、传统实验对比以及综合实验分析,发现大多数改进模块都比原始模型的精确度指标要高。其中,组合模块为SPPFCSPC结构、CBMA注意力机制、转置卷积以及解耦头模块的各精度指标都有提升且达到最高,其中Precision、Recall、mAP_0.5以及mAP_0.5:0.95的精度指标比原始模型增加3.17%,3.32%,2.58%,3.73%。
参考文献(略)