git clone https://github.com/subhc/unsup-parts.git
cd unsup-parts
conda env create --file environment.yml
conda activate unsup-parts
wget https://www.robots.ox.ac.uk/~vgg/research/unsup-parts/files/checkpoints.tar.gz
tar zxvf checkpoints.tar.gz
Das Projekt verwendet Gewichte und Vorurteile für die Visualisierung. Bitte aktualisieren Sie wandb_userid
in train.py
auf Ihren Benutzernamen
data
mit der folgenden Ordnerstruktur im Inneren und extrahieren Sie die TARs an den genannten Stellen. data
└── CUB # extract CUB_200_2011.tgz, cub_supervisedlabels.tar.gz here
├── CUB_200_2011 # extract cachedir.tar.gz and segmentations.tgz here
│ ├── attributes
│ ├── cachedir
│ ├── images
│ ├── parts
│ └── segmentations
└── supervisedlabels
Beispiel
mkdir -p data/CUB/
cd data/CUB/
tar zxvf CUB_200_2011.tgz
tar zxvf cub_supervised_labels.tar.gz
cd CUB_200_2011
tar zxvf segmentations.tgz
tar zxvf cachedir.tar.gz
data
mit der unten stehenden Ordnerstruktur.segmentation
. data
└── DeepFashion
└── In-shop Clothes Retrieval Benchmark # extract deepfashion_supervisedlabels.tar.gz here
├── Anno
│ └── segmentation # extract img_highres_seg.zip here
│ └── img_highres
│ ├── MEN
│ └── WOMEN
└── supervisedlabels
└── img_highres
├── MEN
└── WOMEN
Beispiel
mkdir -p data/DeepFashion/In-shop Clothes Retrieval Benchmark/Anno/
cd data/DeepFashion/In-shop Clothes Retrieval Benchmark/
wget https://www.robots.ox.ac.uk/~vgg/research/unsup-parts/files/deepfashion_supervisedlabels.tar.gz
tar zxvf deepfashion_supervisedlabels.tar.gz
cd Anno
# get the segmentation folder from the google drive link
cd segmentation
unzip img_highres_seg.zip
Cub trainieren:
python train.py dataset_name=CUB
Deepfashion trainieren:
python train.py dataset_name=DF
Sie können Bewertungscode im Bewertungsordner finden.
Beschreibung | Größe | Link |
---|---|---|
Cub-200-2011 (PTH) | 181MB | Hier |
Deepfashion (PTH) | 181MB | Hier |
Beides (tar.gz) | 351MB | Hier |
Bitte verschieben Sie die pth
-Dateien in den Ordnern checkpoints/CUB
und checkpoints/DeepFashion
.
Das Ziel des selbstbewerteten visuellen Repräsentationslernens ist es, starke, übertragbare Bilddarstellungen zu lernen, wobei sich die Mehrheit der Forschung auf Objekt- oder Szenenebene konzentriert. Andererseits hat das Repräsentationslernen auf Teilebene deutlich weniger Aufmerksamkeit erhalten. In diesem Artikel schlagen wir einen unbeaufsichtigten Ansatz für die Entdeckung und Segmentierung von Objekten vor und leisten drei Beiträge. Erstens erstellen wir eine Proxy -Aufgabe über eine Reihe von Zielen, die das Modell dazu ermutigen, eine aussagekräftige Zerlegung des Bildes in seine Teile zu lernen. Zweitens spricht frühere Arbeiten für die Rekonstruktion oder Clusterbildung vorberechtigter Merkmale als Proxy für Teile. Wir zeigen empirisch, dass dies allein wahrscheinlich keine sinnvollen Teile findet. Hauptsächlich aufgrund ihrer geringen Auflösung und der Tendenz von Klassifizierungsnetzwerken, räumliche Informationen zu verschmieren. Wir schlagen vor, dass die Bildrekonstruktion auf der Ebene der Pixel dieses Problem lindern und als komplementärer Hinweis fungiert. Zuletzt zeigen wir, dass die auf der Tastoint -Regression basierende Standardbewertung nicht gut mit der Segmentierungsqualität korreliert und somit unterschiedliche Metriken, NMI und ARI, einführt, die die Zersetzung von Objekten besser in Teile charakterisieren. Unsere Methode liefert semantische Teile, die in feinkörnigen, aber visuell unterschiedlichen Kategorien konsistent sind und die Stand der Technik auf drei Benchmark-Datensätzen übertreffen. Code ist auf der Projektseite verfügbar.
@inproceedings{choudhury21unsupervised,
author = {Subhabrata Choudhury and Iro Laina and Christian Rupprecht and Andrea Vedaldi},
booktitle = {Proceedings of Advances in Neural Information Processing Systems (NeurIPS)},
title = {Unsupervised Part Discovery from Contrastive Reconstruction},
year = {2021}
}
Code basiert größtenteils auf SCOPS.