Awesome Open Source
Awesome Open Source

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 networks and display are brought from:

  1. pytorch-mobilenet-v2
  2. Vanilla FCN, U-Net, SegNet, PSPNet, GCN, DUC
  3. Shufflenet-v2-Pytorch
  4. tf-pose-estimation
  5. dsntnn

NEWS!

  • Apr 2021: Siyuan Pan provides MNN version!
  • Mar 2019: Support running on MacBook with decent FPS!
  • Feb 2019: ALL the pretrained model files are avaliable!

Requirements

Evaluation Results

Model(+DUC+DSNTNN) Parmas(M) Flops(G) [email protected]:0.95 [email protected] [email protected]:0.95 [email protected] Link
ResNet18 12.26 1.64 68.2 93.9 79.7 96.7 51.5M
MobileNetV2 3.91 0.49 67.5 94.9 79.4 97.1 16.6M
ShuffleNetV2 2.92 0.31 61.5 91.6 74.8 95.5 12.4M
SqueezeNet1.1 2.22 0.63 58.4 92.1 72.3 95.8 9.3M

Features

  • [x] multi-thread dataloader with augmentations (dataloader.py)
  • [x] training and inference (training.py)
  • [x] performance evaluation (eval.py)
  • [x] multiple models support (network.py)
  • [x] ipython notebook visualization (demo.ipynb)
  • [x] Macbook camera realtime display script (run_webcam.py)

Usage

  1. Installation:
pip install -r requirements.txt
  1. Training:
python training.py --model shufflenetv2 --gpu 0 --inputsize 224 --lr 1e-3 --batchsize 128 --t7 ./models/shufflenetv2_224_adam_best.t7
  1. Evaluation
ln -s cocoapi/PythonAPI/pycocotools
cd cocoapi/PythonAPI && make

python eval.py --t7 ./models/resnet18_224_adam_best.t7 --model resnet18 --gpu 0
  1. Web Camera Demo (MacBook)
python run_webcam.py --model squeezenet --inp_dim 224 --camera 0

Contributors

MobilePose is developed and maintained by Yuliang Xiu, Zexin Chen and Yinghong Fang. Thanks for Siyuan Pan's implementation of mnn version.

License

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


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
jupyter-notebook (6,304
deep-learning (3,985
machine-learning (3,642
pytorch (2,380
real-time (273
realtime (217
lightweight (197
pose-estimation (111
data-augmentation (67
mobilenetv2 (40
heatmap (38
dataloader (23