基于mediapipe和KNN分类算法实现的健身计数器/引体向上计数器/深蹲计数器/俯卧撑计数器Python源码+文档说明+演示

源码下载地址

点击这里下载代码

项目介绍

本项目的测试环境:win10,python3.7,mediapipe0.8.10,pycharm

功能:由于使用的是KNN算法而不是根据各个运动的特点计算骨骼之间的角度来判断动作是否完成,因此本项目可以直接计数引体向上、深蹲和俯卧撑这几种健身运动而几乎无需修改代码,只需要输入视频或调用摄像头时选择一下是哪个运动即可,非常滴好用。

各模块和文件介绍:

​ poseembedding.py是人体关键点归一化编码模块

​ poseclassifier.py是人体姿态分类模块,使用的算法是k-NN

​ resultsmooth.py是分类结果平滑模块,使用的是指数移动平均

​ counter.py是运动计数模块

​ visualizer.py是分类结果可视化模块

​ extracttrainingsetkeypoint.py是提取和处理训练集关键点模块,并将特征向量存储在csv文件中

​ trainingsetprocess.py是输入训练样本生成训练集以及训练集的检验校正的模块,里面说明了训练样本文件夹的要求

​ videoprocess.py是检测视频并计数动作的的模块(注意class_name参数的含义)

​ videocapture.py是调用摄像头实时检测并计数动作的模块(注意class_name参数的含义)

​ main.py是整个项目运行的入口程序

​ Roboto-Regular是visualizer.py中需要用到的字体文件

​ video-sample中的squat-sample.mp4和pushup-sample.mp4是样本视频,当然你也可以换成你自己做深蹲或俯卧撑的测试视频,在videoprocess.py中把video_path换成您的视频路径即可,需要注意的是本项目使用cv2处理视频帧,cv2要求路径不能有中文,并且路径应使用“\”。

​ 视频输出在video-output文件夹里

​ fitness_poses_csvs_out文件夹里面的csv文件就是使用拍摄的训练样本提取出来的深蹲和俯卧撑的训练集文件,有了该文件后就可以直接运行本项目。当然,如果你想体验自己动手的快乐,可以自己拍摄训练样本并把它放到fitness_poses_images_in(存放样本图片的文件夹最好取这个名字省得去改代码)文件夹中,然后删掉fitness_poses_csvs_out文件夹中对应运动的两个csv文件,这两个csv文件丢失后程序会自动加载样本图片进行特征提

项目功能

界面预览

在这里插入图片描述
在这里插入图片描述

项目备注

1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!
2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。
3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。
下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

源码下载地址

点击这里下载代码

  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗奋斗再奋斗的ajie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值