explaingit

facebookresearch/densepose

7,230Jupyter NotebookAudience · researcherComplexity · 4/5Setup · hard

TLDR

DensePose maps every visible pixel in a photo of a person to a 3D body surface, telling you exactly which part of the body each pixel belongs to, all at once, not just joints.

Mindmap

mindmap
  root((DensePose))
    What it does
      Pixels to 3D body
      Full body at once
      Not just joints
    Dataset
      DensePose-COCO
      SMPL body template
      Interactive notebooks
    Tech Stack
      Python
      Caffe2
      Detectron2
    Status
      Archived 2018 paper
      Moved to Detectron2
      Reference only
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Map body pixels in a photo to 3D surface coordinates for animation or augmented reality.

USE CASE 2

Browse and visualize DensePose-COCO annotations overlaid on a 3D SMPL body template.

USE CASE 3

Reproduce the original 2018 CVPR DensePose-RCNN results for academic research.

Tech stack

PythonJupyter NotebookCaffe2Detectron2

Getting it running

Difficulty · hard Time to first run · 1day+

This repo is archived, the maintained version lives in Detectron2 and requires a matching Caffe2/PyTorch environment.

In plain English

DensePose is a research project from Facebook that takes a regular photo of a person and figures out how every visible pixel on their body maps to a 3D model of the human form. In plain terms: you give it an image of someone standing, sitting, or moving, and the system can tell you exactly which part of a 3D body surface each pixel corresponds to, covering the whole visible body at once rather than just tracking joints or outlines. The code here was used to train and test the original DensePose-RCNN system, which was published at a computer vision conference in 2018. It also includes interactive notebooks that let you browse the DensePose-COCO dataset, a large collection of images with body-surface annotations, and see how those annotations look when placed on a 3D body template called SMPL. This repository is no longer actively maintained. The project has moved into Detectron2, a newer Facebook research framework, where it continues to receive updates and new model versions. If you want to use DensePose today, the Detectron2 version is the right starting point. This older repository is preserved mainly as a reference for the original 2018 paper.

Copy-paste prompts

Prompt 1
I have an image of a person. Using DensePose, write Python code to predict which 3D body surface region each visible pixel maps to and display the result as a colored overlay.
Prompt 2
Show me how to load a DensePose-COCO annotation file and visualize the body surface UV coordinates on the SMPL template using the provided Jupyter notebooks.
Prompt 3
I want to run DensePose inference on my own photos. Point me to the Detectron2 version of DensePose and show me the minimal setup steps to get predictions.
Prompt 4
Explain the difference between DensePose's pixel-to-surface mapping and standard human pose estimation that only predicts joints.
Open on GitHub → Explain another repo

← facebookresearch on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.