Single Person Pose Estimation for Mobile Device
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
cocoapi fix Apr 28, 2018
pose_dataset fix bug Apr 27, 2018
.gitignore fix bug Apr 27, 2018
README.md fix Apr 28, 2018
coco_utils.py fix bug Apr 27, 2018
convert2onnx.py fix bug Apr 27, 2018
dataloader.py fix, clean Apr 28, 2018
dataset_factory.py Merge branch 'master' of https://github.com/YuliangXiu/DeepPose-pytorch Apr 27, 2018
estimator.py fix bug Apr 27, 2018
eval.py fix, clean Apr 28, 2018
mobilenetv2.py fix bug Apr 27, 2018
networks.py fix bug Apr 27, 2018
pycocotools minor modification Mar 3, 2018
requirements.txt fix bug Apr 27, 2018
run_webcam.py fix bug Apr 27, 2018
training.py fix, clean Apr 28, 2018

README.md

MobilePose

MobilePose is a Tiny PyTorch implementation of single person 2D pose estimation framework. The aim is to provide the interface of the training/inference/evaluation, and the dataloader with various data augmentation options. And final trained model can satisfy basic requirements(speed+size+accuracy) for mobile device.

Some codes for mobilenetV2 and display are brought from pytorch-mobilenet-v2 and tf-pose-estimation. Thanks to the original authors.

Functionality

  1. Tiny trained model (Resnet18[43MB], MobilenetV2[8.9MB])
  2. Fast inference speed (GPU>100FPS, CPU~30FPS)
  3. Accurate keypoint estimation (75-85mAP(0.5IoU), 33-40mAP(0.5~0.95IoU))

Requirements

  • Python 2.7.13
  • Pytorch 0.2.0_3
  • imgaug 0.2.5

Todo List

  • multi-thread dataloader
  • training and inference
  • performance evaluation
  • multi-scale training
  • support resnet18/mobilenetV2
  • data augmentation(rotate/shift/flip/multi-scale/noise)
  • Macbook camera realtime display script

Pretrained Model

Resnet18+MobilenetV2

Usage

  1. Training:
export CUDA_VISIBLE_DEVICES=0; python training.py --model=mobilenet/resnet --gpu=0 --retrain=True
  1. Evaluation
ln -s cocoapi/PythonAPI/pycocotools
cd cocoapi/PythonAPI && make
export CUDA_VISIBLE_DEVICES=0; python eval.py --model=mobilenet/resnet
  1. Realtime visualization:
python run_webcam.py --model=mobilenet/resnet

Contributors

MobilePose is developed and maintained by Yuliang Xiu, Zexin Chen and Yinghong Fang.

License

MobilePose is freely available for free non-commercial use. For commercial queries, please contact Cewu Lu.