Repositori ini berisi kode sumber Pytorch untuk kertas oral AAAI2020: Grapy-ML: Grafik Piramida Mutual Learning untuk Parsing Manusia Dataet Silang oleh Haoyu HE, Jing Zhang, Qiming Zhang dan Dacheng Tao.
Pytorch = 1.1.0
Torchvision
SCIPY
Tensorboardx
Numpy
OpenCV-Python
matplotlib
Anda perlu mengunduh tiga set data. Dataset CIHP dan Dataset ATR dapat ditemukan di repositori ini dan kode kami juga banyak dipinjam darinya.
Kemudian, dataset harus diatur di folder berikut, dan gambar harus disusun ulang dengan struktur file yang disediakan.
/data/dataset/
Model pretrain dan beberapa model terlatih disediakan di sini untuk pengujian dan pelatihan.
Nama model | Keterangan | Berasal dari |
---|---|---|
deeplab_v3plus_v3.pth | Bobot pretrain Deeplab V3+ | |
CIHP_PRETRAIN.PTH | Model Deeplab V3+ yang direproduksi dilatih pada dataset CIHP | deeplab_v3plus_v3.pth |
Cihp_trained.pth | Model GPM dilatih pada dataset CIHP | CIHP_PRETRAIN.PTH |
deeplab_multi-dataset.pth | Model DeePlab V3+ Multi-Task Learning V3+ yang direproduksi terlatih pada dataset CIHP, Pascal-Orang dan ATR Dataset | deeplab_v3plus_v3.pth |
Gpm-ml_multi-dataset.pth | Model Grapy-ML dilatih pada dataset CIHP, Pascal-Person-Part dan ATR | deeplab_multi-dataset.pth |
Gpm-ml_finetune_pascal.pth | Model Grapy-ML Finetuned pada dataset Pascal-Person-Part | Gpm-ml_multi-dataset.pth |
Untuk menguji, jalankan dua skrip berikut:
bash eval_gpm.sh
bash eval_gpm_ml.sh
Selama pelatihan, pertama -tama Anda harus mendapatkan model pretrain Deeplab (misalnya cihp_dlab.pth) pada setiap dataset. Tindakan semacam itu bertujuan untuk memberikan hasil mentah awal yang dapat dipercaya untuk operasi GSA di GPM.
bash train_dlab.sh
Model Pretrain Imagenet disediakan dalam tabel berikut, dan Anda harus mengayunkan nama dataset dan kelas target ke dataset yang Anda inginkan dalam skrip. (CIHP: 20 Kelas, Pascal: 7 Kelas dan ATR: 18 Kelas)
Pada langkah berikutnya, Anda harus menggunakan model pretrain Deeplab untuk lebih lanjut melatih model GPM.
bash train_gpm.sh
Disarankan untuk mengikuti pengaturan pelatihan di makalah kami untuk mereproduksi hasilnya.
Pertama, Anda dapat melakukan proses pretrain Deeplab dengan skrip berikut:
bash train_dlab_ml.sh
Multi-Dataset Deeplab V3+ diubah sebagai tugas multi-tugas sederhana.
Kemudian, Anda dapat melatih model GPM-ML dengan set pelatihan dari ketiga dataset dengan:
bash train_gpm_ml_all.sh
Setelah fase ini, dua tingkat pertama dari model GPM-ML akan lebih kuat dan digeneralisasi.
Akhirnya, Anda dapat mencoba untuk melakukan finetune pada setiap dataset dengan model pretrain terpadu.
bash train_gpm_ml_pascal.sh
@inproceedings{he2020grapy,
title={Grapy-ML: Graph Pyramid Mutual Learning for Cross-dataset Human Parsing},
author={He, Haoyu and Zhang, Jing and Zhang, Qiming and Tao, Dacheng},
booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
year={2020}
}