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
- Tiny trained model (Resnet18[43MB], MobilenetV2[8.9MB])
- Fast inference speed (GPU>100FPS, CPU~30FPS)
- Accurate keypoint estimation (75~85mAP(0.5IoU))
Requirements:
- Python 3.6.2
- 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
Usage
- Training:
export CUDA_VISIBLE_DEVICES=0; python training.py --model=mobilenet/resnet --gpu=0
- Evaluation
export CUDA_VISIBLE_DEVICES=0; python eval.py --model=mobilenet/resnet
- 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 or SightPlus Co. Ltd.