Этот репозиторий содержит исходный код Pytorch для пероральной бумаги AAAI2020: GRAPY-ML: Графическая пирамида взаимное обучение для перекрестного разбора человека HAOYU HE, Jing Zhang, Qiming Zhang и Dacheng Tao.
Pytorch = 1,1,0
TOCHVISION
Scipy
Tensorboardx
Numpy
OpenCV-Python
matplotlib
Вам нужно скачать три набора данных. Набор данных CIHP и набор данных ATR можно найти в этом репозитории, и наш код также в значительной степени заимствован.
Затем наборы данных должны быть организованы в следующей папке, а изображения должны быть перестановлены с предоставленной структурой файла.
/data/dataset/
Модели предварительных дородов и некоторые обученные модели представлены здесь для тестирования и обучения.
Название модели | Описание | Получен из |
---|---|---|
DeepLab_v3plus_v3.pth | Вес на предварительную долю Deeplab V3+ | |
CIHP_PRETRAIN.PTH | Воспроизведенная модель DeepLab V3+, обученная набору данных CIHP | DeepLab_v3plus_v3.pth |
CIHP_TRINED.PTH | Модель GPM, обученная набору данных CIHP | CIHP_PRETRAIN.PTH |
Deeplab_multi-dataset.pth | Воспроизводимая многозадачная обучение DeepLab V3+ модель, обученная набору данных CIHP, Pascal-Person-Part и ATR | DeepLab_v3plus_v3.pth |
Gpm-ml_multi-dataset.pth | Модель GRAPY-ML, обученная набору данных CIHP, Pascal-Person-Part и ATR | Deeplab_multi-dataset.pth |
Gpm-ml_finetune_pascal.pth | GRAPY-ML модель, созданная на наборе данных Pascal-Person Part | Gpm-ml_multi-dataset.pth |
Чтобы проверить, запустите следующие два сценария:
bash eval_gpm.sh
bash eval_gpm_ml.sh
Во время обучения вам сначала необходимо получить модель предварительного дорода DeepLab (например, CIHP_DLAB.PTH) на каждом наборе данных. Такой акт направлен на обеспечение надежного первоначального необработанного результата для операции GSA в GPM.
bash train_dlab.sh
Модель Preferain ImageNet представлена в следующей таблице, и вы должны повернуть имя набора данных и целевые классы для набора данных, который вы хотите в скрипте. (CIHP: 20 классов, Pascal: 7 классов и ATR: 18 классов)
На следующем этапе вы должны использовать модель Deeplab предварительной обработки для дальнейшего обучения модели GPM.
bash train_gpm.sh
Рекомендуется следовать учебным настройкам в нашей статье, чтобы воспроизвести результаты.
Во -первых, вы можете провести процесс предварительной обработки Deeplab по следующему сценарию:
bash train_dlab_ml.sh
Мульти-датасет Deeplab V3+ преобразуется как простая многозадачная задача.
Затем вы можете обучить модель GPM-ML с учебным набором из всех трех наборов данных с помощью:
bash train_gpm_ml_all.sh
После этого этапа первые два уровня модели GPM-ML будут более надежными и обобщенными.
Наконец, вы можете попытаться накапливаться на каждом наборе данных с помощью Unified Pretrain Model.
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}
}