MobilePose
Light-weight Single Person Pose Estimator
Install / Use
/learn @YuliangXiu/MobilePoseREADME
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:
- pytorch-mobilenet-v2
- Vanilla FCN, U-Net, SegNet, PSPNet, GCN, DUC
- Shufflenet-v2-Pytorch
- tf-pose-estimation
- 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
- Python 3.7
- PyTorch 1.0
- dsntnn 1.0
Evaluation Results
|Model(+DUC+DSNTNN)|Parmas(M)|Flops(G)|AP@0.5:0.95|AP@0.5|AR@0.5:0.95|AR@0.5|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|
<div align="center"> <img src="./demo.png"> </div>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
- Installation:
pip install -r requirements.txt
- Training:
python training.py --model shufflenetv2 --gpu 0 --inputsize 224 --lr 1e-3 --batchsize 128 --t7 ./models/shufflenetv2_224_adam_best.t7
- Evaluation
ln -s cocoapi/PythonAPI/pycocotools
cd cocoapi/PythonAPI && make
python eval.py --t7 ./models/resnet18_224_adam_best.t7 --model resnet18 --gpu 0
- 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.
