【学习记录】Online Realtime Action Recognition based on OpenPose使用教程

这篇博客详细介绍了如何配置Python环境,包括创建conda环境和安装TensorFlow、OpenCV、Keras等依赖库。接着,作者提供了预训练模型的下载链接,并指导将模型放入指定目录。在测试和训练部分,博主演示了如何对视频进行姿态估计,收集数据并保存为CSV格式,最后调整训练参数以开始训练模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

📌 摘要

本文详细介绍了如何部署和运行一个基于 OpenPose 的在线实时动作识别系统。涵盖:

  • Python 环境搭建(conda + TensorFlow + Keras)
  • OpenPose 预训练模型下载与配置
  • 视频姿态估计与数据采集
  • 数据预处理与训练流程

适用于人体动作识别、行为分析、视频监控等方向的研究或开发工作,是一篇面向初学者的完整实践指南。


📘 前言

随着计算机视觉的发展,基于姿态估计的动作识别技术越来越受到关注。OpenPose 是 CMU 开发的一个开源项目,能够实时检测人体 2D 关键点,非常适合用于动作识别任务。

本文介绍的是一个基于 OpenPose 的在线实时动作识别系统的使用教程,包括从环境搭建到训练模型的全过程,适合有一定 Python 和深度学习基础的新手入门。


一、环境配置

✅ 1. 创建 Conda 虚拟环境

推荐使用 Anaconda 来管理 Python 环境,避免版本冲突:

conda create -n py36OpenPose python=3.6
conda activate py36OpenPose

⚠️ 注意:该项目对 Python 版本要求较严格,请务必使用 python=3.6


✅ 2. 安装所需依赖库

依次执行以下命令安装相关模块:

conda install tensorflow-gpu=1.13
pip install opencv-python==3.4.2.17
pip install keras==2.2.4
pip install scikit-learn==0.19
pip install pandas
pip install matplotlib

💡 如果你在安装过程中遇到版本不兼容问题,可以尝试使用虚拟环境隔离不同项目。


二、下载并配置 OpenPose 预训练模型

✅ 1. 下载预训练模型

前往以下链接下载 OpenPose 的预训练模型文件:

🔗 http://www.mediafire.com/file/qlzzr20mpocnpa3/graph_opt.pb

⚠️ 注意:请确保下载的是 graph_opt.pb 文件,这是 OpenPose 的图模型文件。


✅ 2. 放置模型文件

将下载好的 graph_opt.pb 文件放入以下目录中:

\Pose\graph_models\VGG_origin\

✅ 如果路径不存在,请手动创建对应目录结构。


三、测试与数据采集

✅ 1. 准备测试视频

将你想要进行姿态估计的视频文件(如 1.mp4)放到项目的根目录下。


✅ 2. 运行视频姿态估计

在激活虚拟环境后,执行以下命令开始测试:

python main.py --video=1.mp4

✅ 程序会调用 OpenPose 对视频逐帧进行关键点检测,并显示可视化结果。


✅ 3. 收集关键点数据

默认情况下,程序不会自动保存关键点数据。你需要打开 main.py 文件,找到如下注释代码并取消注释:

# f = open("output.txt", "w")
# f.write(str(keypoints))
# f.close()

保存修改后,再次运行测试命令:

python main.py --video=1.mp4

✅ 此时会在当前目录生成一个包含关键点坐标的 output.txt 文本文件。


四、数据处理与模型训练

✅ 1. 数据格式转换

使用 Excel 打开 output.txt 文件,将其另存为 .csv 格式,并命名为类似 action_data.csv

将该文件移动到以下训练目录中:

\Action\training\

✅ 建议每个动作类别单独建立一个 CSV 文件,方便后续分类训练。


✅ 2. 修改训练脚本参数

打开以下训练脚本:

\Action\training\train.py

根据你的数据情况,修改以下两处关键参数:

num_classes = 5     # 动作类别数量
input_length = 30   # 每个动作序列采样帧数

✅ 具体数值取决于你的动作种类和数据长度,请根据实际需求调整。


✅ 3. 启动训练

确认所有配置无误后,在命令行中执行训练脚本:

python train.py

训练完成后,模型权重会自动保存在指定目录中,可用于后续推理和部署。


✅ 总结

本文提供了一份完整的 基于 OpenPose 的在线实时动作识别系统的使用教程,涵盖了以下关键步骤:

步骤内容
环境搭建使用 Anaconda 创建虚拟环境,安装 TensorFlow、Keras、OpenCV 等依赖
模型配置下载并放置 OpenPose 预训练模型
视频测试使用 main.py 对视频进行姿态估计
数据采集提取关键点坐标并保存为 txt 文件
数据处理将 txt 文件转为 csv 格式,准备训练数据
模型训练修改训练参数,运行 train.py 训练动作分类模型

通过这套流程,你可以快速实现一个基于姿态估计的动作识别系统,适用于体育运动分析、智能安防、人机交互等多个领域。


📌 如果你觉得这篇文章对你有帮助,请点赞 + 收藏 + 分享,让更多人了解如何使用 OpenPose 实现动作识别!

💬 欢迎留言交流你在使用过程中遇到的问题,如模型加载失败、关键点提取异常、训练中断等,我们一起讨论解决。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

行云流水剑

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

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

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

打赏作者

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

抵扣说明:

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

余额充值