• Stars
    star
    118
  • Rank 298,189 (Top 6 %)
  • Language
    Python
  • Created over 5 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Posture recognition based on common camera

最新提示(2022-01-05):openpose的最新接口可能有所改动,需要对用地方改改。

0. 创新点


:octocat: 两个手工定制的特征,实现快速识别
:octocat: 第一个是距离,两个关键点的距离会随着动作不同而不同。
:octocat: 第二个是角度,考虑到距离会随着摄像头位置发生变化,而三个点的夹角不同,不论远近,夹角固定,同时夹角会随着动作不同而不同。

1. Overview pic

  • pic
  • 基于普通摄像头的太极姿势识别(分类),通过openpose采集的骨骼点数据做分类。
    • 第一就是通过openpose采集的骨骼数据做一个自定义特征的全连接网络的训练分类。(已完成)
    • 第二就是通过openpose采集的骨骼图片做卷积神经网络(CNN)分类(已完成)
  • 相关:基于Kinect的姿态识别(分类)

1.1. 安装与使用

首先根据OpenPose WindowsAPI安装说明安装,调用方式为Python调用。
OpenPose GitHub地址
OpenPose安装说明 最近迁移至Ubuntu,Windows的更新后cuda与caffee不兼容。部分程序有改动。总体不变。

  • 若有需要和问题可提issues.我在Windows,Ubuntu,Mac上均安装过OpenPose。

1.1.1. 程序开发目录说明

git clone 下来后cmake进行编译,其中要勾选BUILD_PYTHON进行编译才能被python调用。

workspace 程序开发目录详细说明

  • 📂workspace
    • 📁data_collection(数据采集)
      • data_collection_window.py
      • data_collection_window.ui
      • data_collection.py
    • 📁dataset (数据集)
      • 📁taichi
        • 📁marked_pic
          • 🎴 p_2_0.jpg(最后一个下划线后面是类别,此处0是类别,前一个数字2代表大概数量)
          • 🎴 ...
        • 📄bone_dataSet.data(骨骼特征数据)
        • 📄marked_pictrain.txt(图片路径)
    • 📁main_program
      • main.py 主程序入口
      • mainWindow.py
      • mainWindow.ui
    • 📁model_pth (模型保存位置)
      • 23classification_eigenvalue.pth
      • 23classification_pic.pth
    • 📁neural_network
      • 📁runs (tensorboard 可视化,如果有必要)
      • 📃classification23_taichi_eigenvalue.py
      • 📃classification23_taichi_pic.py
      • 📃data_process.py
      • 📃predict_eigenvalue.py
      • 📃predict_pic.py
    • 📁openpose_python_demos (包含一些python使用openpose的例子)
      • 📃flags.hpp(调用openpose的参数设置)
      • 📃use_camera_by_opencv.py
      • 📃use_camera.py
    • 📁sundry (包含一些界面设计的图片等杂项)
      • ...

1.2. 训练效果

(注意此处没有测试集,研一的时候我又利用此数据集,并且划分训练集测试集,利用四层卷积+池化能达到97%以上的效果)
全连接 卷积网络
pic pic

1.3. 展示效果

数据采集系统 识别系统
pic pic

说明:由于在Ubuntu下选择了桌面是unity所以不能录屏,展示为GIF图片。
由于电脑的摄像头在下方,使用iPad来作为输入。效果依旧是实时效果,但是数据量较小。
马赛克保护隐私。。。。。。

1.4. 关于更更更更具体的思路

论文地址:腾讯文档 (权限设置,需要申请才能开放查看)

1.5. 答辩结果

校级答辩 优秀 哈哈哈哈哈,承蒙老师指导,承蒙答辩老师欣赏,承蒙被抽到校级答辩。

写在最后

这个属于特别简单的一个本科生的毕业设计,思路可以模仿而内容不可照搬。

禁止商用