
Pytorch-Pose adalah implementasi Pytorch dari pipa umum untuk estimasi pose manusia tunggal 2D. Tujuannya adalah untuk menyediakan antarmuka pelatihan/inferensi/evaluasi, dan Dataloader dengan berbagai opsi augmentasi data untuk database pose manusia yang paling populer (misalnya, pose manusia MPII, LSP dan FLIC).
Beberapa kode untuk persiapan data dan augmentasi dibawa dari jaringan jam pasir yang ditumpuk. Terima kasih kepada penulis aslinya.
UPDATE: Repositori ini kompatibel dengan pytorch 0.4.1/1.0 sekarang!
Pytorch (> = 0.4.1): Harap ikuti instruksi pemasangan pytorch. Perhatikan bahwa kode ini dikembangkan dengan Python2 dan belum diuji dengan Python3.
Klon Repositori dengan Submodule
git clone --recursive https://github.com/bearpaw/pytorch-pose.git
Buat tautan simbolis ke direktori images dari dataset MPII:
ln -s PATH_TO_MPII_IMAGES_DIR data/mpii/images
Untuk pelatihan/pengujian di Coco, silakan merujuk ke Coco Readme.
data/mpiidata/mscoco Silakan merujuk ke pelatihan.md untuk resep pelatihan terperinci!
Anda dapat mengunduh model pretrained kami (misalnya, 2-stack Hourglass Model) untuk awal yang cepat.
Jalankan perintah berikut di terminal untuk mengevaluasi model pada split validasi MPII (split kereta/val dari Tompson et al. CVPR 2015).
CUDA_VISIBLE_DEVICES=0 python example/main.py --dataset mpii -a hg --stacks 2 --blocks 1 --checkpoint checkpoint/mpii/hg_s2_b1 --resume checkpoint/mpii/hg_s2_b1/model_best.pth.tar -e -d
-a menentukan arsitektur jaringan--resume akan memuat bobot dari model tertentu-e hanya berarti evaluasi-d akan memvisualisasikan output jaringan. Itu juga dapat digunakan selama pelatihan Hasilnya akan disimpan sebagai file .mat ( preds_valid.mat ), yang merupakan matriks 2958x16x2 , di folder yang ditentukan oleh --checkpoint .
Anda dapat menggunakan evaluation/eval_PCKh.m untuk mengevaluasi prediksi Anda. Kode evaluasi porting dari Tompson et al. CVPR 2015.
Hasil ([email protected] skor) dilatih menggunakan kode ini dilaporkan dalam tabel berikut.
| Model | Kepala | Bahu | Siku | Pergelangan tangan | Panggul | Lutut | Pergelangan kaki | Berarti |
|---|---|---|---|---|---|---|---|---|
| HG_S2_B1 (terakhir) | 95.80 | 94.57 | 88.12 | 83.31 | 86.24 | 80.88 | 77.44 | 86.76 |
| HG_S2_B1 (terbaik) | 95.87 | 94.68 | 88.27 | 83.64 | 86.29 | 81.20 | 77.70 | 86.95 |
| hg_s8_b1 (terakhir) | 96.79 | 95.19 | 90.08 | 85.32 | 87.48 | 84.26 | 80.73 | 88.64 |
| hg_s8_b1 (terbaik) | 96.79 | 95.28 | 90.27 | 85.56 | 87.57 | 84.3 | 81.06 | 88.78 |
Kurva pelatihan / validasi divisualisasikan sebagai berikut.

Anda juga dapat mengevaluasi hasilnya dengan menjalankan python evaluation/eval_PCKh.py untuk mengevaluasi prediksi. Ini akan menghasilkan hasil yang persis sama dengan matlab. Terima kasih @sssruhan1 untuk kontribusinya.
Jalankan perintah berikut di Terminal untuk melatih 8-tumpukan jaringan jam pasir pada dataset pose manusia MPII.
CUDA_VISIBLE_DEVICES=0 python example/main.py --dataset mpii -a hg --stacks 8 --blocks 1 --checkpoint checkpoint/mpii/hg8 -j 4
Di Sini,
CUDA_VISIBLE_DEVICES=0 mengidentifikasi perangkat GPU yang ingin Anda gunakan. Misalnya, gunakan CUDA_VISIBLE_DEVICES=0,1 jika Anda ingin menggunakan dua GPU dengan ID 0 dan 1 .-j Menentukan berapa banyak pekerja yang ingin Anda gunakan untuk pemuatan data.--checkpoint Menentukan di mana Anda ingin menyimpan model, log dan prediksi. Dataset yang Didukung
Model yang didukung
Harap buat permintaan tarik jika Anda ingin berkontribusi.