Spaces:
Runtime error
Runtime error
# Continuous Surface Embeddings for Dense Pose Estimation for Humans and Animals | |
## <a name="Overview"></a> Overview | |
<div align="center"> | |
<img src="https://dl.fbaipublicfiles.com/densepose/web/densepose_cse_teaser.png" width="700px" /> | |
</div> | |
The pipeline uses [Faster R-CNN](https://arxiv.org/abs/1506.01497) | |
with [Feature Pyramid Network](https://arxiv.org/abs/1612.03144) meta architecture | |
outlined in Figure 1. For each detected object, the model predicts | |
its coarse segmentation `S` (2 channels: foreground / background) | |
and the embedding `E` (16 channels). At the same time, the embedder produces vertex | |
embeddings `Γ` for the corresponding mesh. Universal positional embeddings `E` | |
and vertex embeddings `Γ` are matched to derive for each pixel its continuous | |
surface embedding. | |
<div align="center"> | |
<img src="https://dl.fbaipublicfiles.com/densepose/web/densepose_pipeline_cse.png" width="700px" /> | |
</div> | |
<p class="image-caption"><b>Figure 1.</b> DensePose continuous surface embeddings architecture based on Faster R-CNN with Feature Pyramid Network (FPN).</p> | |
### Datasets | |
For more details on datasets used for training and validation of | |
continuous surface embeddings models, | |
please refer to the [DensePose Datasets](DENSEPOSE_DATASETS.md) page. | |
## <a name="ModelZoo"></a> Model Zoo and Baselines | |
### Human CSE Models | |
Continuous surface embeddings models for humans trained using the protocols from [Neverova et al, 2020](https://arxiv.org/abs/2011.12438). | |
Models trained with hard assignment loss ℒ: | |
<table><tbody> | |
<!-- START TABLE --> | |
<!-- TABLE HEADER --> | |
<th valign="bottom">Name</th> | |
<th valign="bottom">lr<br/>sched</th> | |
<th valign="bottom">train<br/>time<br/>(s/iter)</th> | |
<th valign="bottom">inference<br/>time<br/>(s/im)</th> | |
<th valign="bottom">train<br/>mem<br/>(GB)</th> | |
<th valign="bottom">box<br/>AP</th> | |
<th valign="bottom">segm<br/>AP</th> | |
<th valign="bottom">dp. AP<br/>GPS</th> | |
<th valign="bottom">dp. AP<br/>GPSm</th> | |
<th valign="bottom">model id</th> | |
<th valign="bottom">download</th> | |
<!-- TABLE BODY --> | |
<!-- ROW: densepose_rcnn_R_50_FPN_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_s1x.yaml">R_50_FPN_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.349</td> | |
<td align="center">0.060</td> | |
<td align="center">6.3</td> | |
<td align="center">61.1</td> | |
<td align="center">67.1</td> | |
<td align="center">64.4</td> | |
<td align="center">65.7</td> | |
<td align="center">251155172</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_s1x/251155172/model_final_c4ea5f.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_s1x/251155172/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_101_FPN_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_101_FPN_s1x.yaml">R_101_FPN_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.461</td> | |
<td align="center">0.071</td> | |
<td align="center">7.4</td> | |
<td align="center">62.3</td> | |
<td align="center">67.2</td> | |
<td align="center">64.7</td> | |
<td align="center">65.8</td> | |
<td align="center">251155500</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_s1x/251155500/model_final_5c995f.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_s1x/251155500/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_DL_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_DL_s1x.yaml">R_50_FPN_DL_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.399</td> | |
<td align="center">0.061</td> | |
<td align="center">7.0</td> | |
<td align="center">60.8</td> | |
<td align="center">67.8</td> | |
<td align="center">65.5</td> | |
<td align="center">66.4</td> | |
<td align="center">251156349</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_DL_s1x/251156349/model_final_e96218.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_DL_s1x/251156349/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_101_FPN_DL_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_101_FPN_DL_s1x.yaml">R_101_FPN_DL_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.504</td> | |
<td align="center">0.074</td> | |
<td align="center">8.3</td> | |
<td align="center">61.5</td> | |
<td align="center">68.0</td> | |
<td align="center">65.6</td> | |
<td align="center">66.6</td> | |
<td align="center">251156606</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_DL_s1x/251156606/model_final_b236ce.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_DL_s1x/251156606/metrics.json">metrics</a></td> | |
</tr> | |
</tbody></table> | |
Models trained with soft assignment loss ℒ<sub>σ</sub>: | |
<table><tbody> | |
<!-- START TABLE --> | |
<!-- TABLE HEADER --> | |
<th valign="bottom">Name</th> | |
<th valign="bottom">lr<br/>sched</th> | |
<th valign="bottom">train<br/>time<br/>(s/iter)</th> | |
<th valign="bottom">inference<br/>time<br/>(s/im)</th> | |
<th valign="bottom">train<br/>mem<br/>(GB)</th> | |
<th valign="bottom">box<br/>AP</th> | |
<th valign="bottom">segm<br/>AP</th> | |
<th valign="bottom">dp. AP<br/>GPS</th> | |
<th valign="bottom">dp. AP<br/>GPSm</th> | |
<th valign="bottom">model id</th> | |
<th valign="bottom">download</th> | |
<!-- TABLE BODY --> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_s1x.yaml">R_50_FPN_soft_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.357</td> | |
<td align="center">0.057</td> | |
<td align="center">9.7</td> | |
<td align="center">61.3</td> | |
<td align="center">66.9</td> | |
<td align="center">64.3</td> | |
<td align="center">65.4</td> | |
<td align="center">250533982</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_s1x/250533982/model_final_2c4512.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_s1x/250533982/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_101_FPN_soft_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_101_FPN_soft_s1x.yaml">R_101_FPN_soft_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.464</td> | |
<td align="center">0.071</td> | |
<td align="center">10.5</td> | |
<td align="center">62.1</td> | |
<td align="center">67.3</td> | |
<td align="center">64.5</td> | |
<td align="center">66.0</td> | |
<td align="center">250712522</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_soft_s1x/250712522/model_final_4637da.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_soft_s1x/250712522/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_DL_soft_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_DL_soft_s1x.yaml">R_50_FPN_DL_soft_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.427</td> | |
<td align="center">0.062</td> | |
<td align="center">11.3</td> | |
<td align="center">60.8</td> | |
<td align="center">68.0</td> | |
<td align="center">66.1</td> | |
<td align="center">66.7</td> | |
<td align="center">250713703</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_DL_soft_s1x/250713703/model_final_9199f5.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_DL_soft_s1x/250713703/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_101_FPN_DL_soft_s1x --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_101_FPN_DL_soft_s1x.yaml">R_101_FPN_DL_soft_s1x</a></td> | |
<td align="center">s1x</td> | |
<td align="center">0.483</td> | |
<td align="center">0.071</td> | |
<td align="center">12.2</td> | |
<td align="center">61.5</td> | |
<td align="center">68.2</td> | |
<td align="center">66.2</td> | |
<td align="center">67.1</td> | |
<td align="center">250713061</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_DL_soft_s1x/250713061/model_final_1d3314.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_101_FPN_DL_soft_s1x/250713061/metrics.json">metrics</a></td> | |
</tr> | |
</tbody></table> | |
### Animal CSE Models | |
Models obtained by finetuning human CSE models on animals data from `ds1_train` | |
(see the [DensePose LVIS](DENSEPOSE_DATASETS.md#continuous-surface-embeddings-annotations-3) | |
section for more details on the datasets) with soft assignment loss ℒ<sub>σ</sub>: | |
<table><tbody> | |
<!-- START TABLE --> | |
<!-- TABLE HEADER --> | |
<th valign="bottom">Name</th> | |
<th valign="bottom">lr<br/>sched</th> | |
<th valign="bottom">train<br/>time<br/>(s/iter)</th> | |
<th valign="bottom">inference<br/>time<br/>(s/im)</th> | |
<th valign="bottom">train<br/>mem<br/>(GB)</th> | |
<th valign="bottom">box<br/>AP</th> | |
<th valign="bottom">segm<br/>AP</th> | |
<th valign="bottom">dp. AP<br/>GPS</th> | |
<th valign="bottom">dp. AP<br/>GPSm</th> | |
<th valign="bottom">model id</th> | |
<th valign="bottom">download</th> | |
<!-- TABLE BODY --> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_chimps_finetune_4k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_chimps_finetune_4k.yaml">R_50_FPN_soft_chimps_finetune_4k</a></td> | |
<td align="center">4K</td> | |
<td align="center">0.569</td> | |
<td align="center">0.051</td> | |
<td align="center">4.7</td> | |
<td align="center">62.0</td> | |
<td align="center">59.0</td> | |
<td align="center">32.2</td> | |
<td align="center">39.6</td> | |
<td align="center">253146869</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_chimps_finetune_4k/253146869/model_final_52f649.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_chimps_finetune_4k/253146869/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_animals_finetune_4k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_animals_finetune_4k.yaml">R_50_FPN_soft_animals_finetune_4k</a></td> | |
<td align="center">4K</td> | |
<td align="center">0.381</td> | |
<td align="center">0.061</td> | |
<td align="center">7.3</td> | |
<td align="center">44.9</td> | |
<td align="center">55.5</td> | |
<td align="center">21.3</td> | |
<td align="center">28.8</td> | |
<td align="center">253145793</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_finetune_4k/253145793/model_final_8f8ba2.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_finetune_4k/253145793/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_animals_CA_finetune_4k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_animals_CA_finetune_4k.yaml">R_50_FPN_soft_animals_CA_finetune_4k</a></td> | |
<td align="center">4K</td> | |
<td align="center">0.412</td> | |
<td align="center">0.059</td> | |
<td align="center">7.1</td> | |
<td align="center">53.4</td> | |
<td align="center">59.5</td> | |
<td align="center">25.4</td> | |
<td align="center">33.4</td> | |
<td align="center">253498611</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_CA_finetune_4k/253498611/model_final_6d69b7.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_CA_finetune_4k/253498611/metrics.json">metrics</a></td> | |
</tr> | |
</tbody></table> | |
Acronyms: | |
`CA`: class agnostic training, where all annotated instances are mapped into a single category | |
Models obtained by finetuning human CSE models on animals data from `ds2_train` dataset | |
with soft assignment loss ℒ<sub>σ</sub> and, for some schedules, cycle losses. | |
Please refer to [DensePose LVIS](DENSEPOSE_DATASETS.md#continuous-surface-embeddings-annotations-3) | |
section for details on the dataset and to [Neverova et al, 2021]() for details on cycle losses. | |
<table><tbody> | |
<!-- START TABLE --> | |
<!-- TABLE HEADER --> | |
<th valign="bottom">Name</th> | |
<th valign="bottom">lr<br/>sched</th> | |
<th valign="bottom">train<br/>time<br/>(s/iter)</th> | |
<th valign="bottom">inference<br/>time<br/>(s/im)</th> | |
<th valign="bottom">train<br/>mem<br/>(GB)</th> | |
<th valign="bottom">box<br/>AP</th> | |
<th valign="bottom">segm<br/>AP</th> | |
<th valign="bottom">dp. AP<br/>GPS</th> | |
<th valign="bottom">dp. AP<br/>GPSm</th> | |
<th valign="bottom">GErr</th> | |
<th valign="bottom">GPS</th> | |
<th valign="bottom">model id</th> | |
<th valign="bottom">download</th> | |
<!-- TABLE BODY --> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_16k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_16k.yaml">R_50_FPN_soft_animals_I0_finetune_16k</a></td> | |
<td align="center">16k</td> | |
<td align="center">0.386</td> | |
<td align="center">0.058</td> | |
<td align="center">8.4</td> | |
<td align="center">54.2</td> | |
<td align="center">67.0</td> | |
<td align="center">29.0</td> | |
<td align="center">38.6</td> | |
<td align="center">13.2</td> | |
<td align="center">85.4</td> | |
<td align="center">270727112</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_16k/270727112/model_final_421d28.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_16k/270727112/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_m2m_16k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_m2m_16k.yaml">R_50_FPN_soft_animals_I0_finetune_m2m_16k</a></td> | |
<td align="center">16k</td> | |
<td align="center">0.508</td> | |
<td align="center">0.056</td> | |
<td align="center">12.2</td> | |
<td align="center">54.1</td> | |
<td align="center">67.3</td> | |
<td align="center">28.6</td> | |
<td align="center">38.4</td> | |
<td align="center">12.5</td> | |
<td align="center">87.6</td> | |
<td align="center">270982215</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_m2m_16k/270982215/model_final_6fe5f4.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_m2m_16k/270982215/metrics.json">metrics</a></td> | |
</tr> | |
<!-- ROW: densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_i2m_16k --> | |
<tr><td align="left"><a href="../configs/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_i2m_16k.yaml">R_50_FPN_soft_animals_I0_finetune_i2m_16k</a></td> | |
<td align="center">16k</td> | |
<td align="center">0.483</td> | |
<td align="center">0.056</td> | |
<td align="center">9.7</td> | |
<td align="center">54.0</td> | |
<td align="center">66.6</td> | |
<td align="center">28.9</td> | |
<td align="center">38.3</td> | |
<td align="center">11.0</td> | |
<td align="center">88.9</td> | |
<td align="center">270727461</td> | |
<td align="center"><a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_i2m_16k/270727461/model_final_8c9d99.pkl">model</a> | <a href="https://dl.fbaipublicfiles.com/densepose/cse/densepose_rcnn_R_50_FPN_soft_animals_I0_finetune_i2m_16k/270727461/metrics.json">metrics</a></td> | |
</tr> | |
</tbody></table> | |
## <a name="References"></a> References | |
If you use DensePose methods based on continuous surface embeddings, please take the | |
references from the following BibTeX entries: | |
Continuous surface embeddings: | |
``` | |
@InProceedings{Neverova2020ContinuousSurfaceEmbeddings, | |
title = {Continuous Surface Embeddings}, | |
author = {Neverova, Natalia and Novotny, David and Khalidov, Vasil and Szafraniec, Marc and Labatut, Patrick and Vedaldi, Andrea}, | |
journal = {Advances in Neural Information Processing Systems}, | |
year = {2020}, | |
} | |
``` | |
Cycle Losses: | |
``` | |
@InProceedings{Neverova2021UniversalCanonicalMaps, | |
title = {Discovering Relationships between Object Categories via Universal Canonical Maps}, | |
author = {Neverova, Natalia and Sanakoyeu, Artsiom and Novotny, David and Labatut, Patrick and Vedaldi, Andrea}, | |
journal = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, | |
year = {2021}, | |
} | |
``` | |