Back to rankings

openpifpaf/openpifpaf

Pythonopenpifpaf.github.io

Official implementation of "OpenPifPaf: Composite Fields for Semantic Keypoint Detection and Spatio-Temporal Association" in PyTorch.

human-pose-estimationkeypoint-estimationpose-estimationcomputer-visioncomposite-fieldsdeep-learning
Star Growth
Stars
1.3k
Forks
256
Weekly Growth
Issues
48
5001k
Jan 2023Mar 2024May 2025Jul 2026
ArtifactsPyPIpip install openpifpaf
README

openpifpaf

Continuously tested on Linux, MacOS and Windows: Tests deploy-guide-dev Downloads
New 2021 paper:

OpenPifPaf: Composite Fields for Semantic Keypoint Detection and Spatio-Temporal Association
Sven Kreiss, Lorenzo Bertoni, Alexandre Alahi, 2021.

Many image-based perception tasks can be formulated as detecting, associating and tracking semantic keypoints, e.g., human body pose estimation and tracking. In this work, we present a general framework that jointly detects and forms spatio-temporal keypoint associations in a single stage, making this the first real-time pose detection and tracking algorithm. We present a generic neural network architecture that uses Composite Fields to detect and construct a spatio-temporal pose which is a single, connected graph whose nodes are the semantic keypoints (e.g., a person's body joints) in multiple frames. For the temporal associations, we introduce the Temporal Composite Association Field (TCAF) which requires an extended network architecture and training method beyond previous Composite Fields. Our experiments show competitive accuracy while being an order of magnitude faster on multiple publicly available datasets such as COCO, CrowdPose and the PoseTrack 2017 and 2018 datasets. We also show that our method generalizes to any class of semantic keypoints such as car and animal parts to provide a holistic perception framework that is well suited for urban mobility such as self-driving cars and delivery robots.

Previous CVPR 2019 paper.

Guide

Detailed documentation is in our OpenPifPaf Guide. For developers, there is also the DEV Guide which is the same guide but based on the latest code in the main branch.

Examples

example image with overlaid pose predictions

Image credit: "Learning to surf" by fotologic which is licensed under CC-BY-2.0.
Created with:

pip3 install matplotlib openpifpaf
python3 -m openpifpaf.predict docs/coco/000000081988.jpg --image-output

Here is the tutorial for body, foot, face and hand keypoints. Example: example image with overlaid wholebody pose predictions

Image credit: Photo by Lokomotive74 which is licensed under CC-BY-4.0.
Created with:

python -m openpifpaf.predict guide/wholebody/soccer.jpeg \
  --checkpoint=shufflenetv2k30-wholebody --line-width=2 --image-output

Here is the tutorial for car keypoints. Example: example image cars

Image credit: Photo by Ninaras which is licensed under CC-BY-SA 4.0.

Created with:

python -m openpifpaf.predict guide/images/peterbourg.jpg \
  --checkpoint shufflenetv2k16-apollo-24 -o images \
  --instance-threshold 0.05 --seed-threshold 0.05 \
  --line-width 4 --font-size 0

Here is the tutorial for animal keypoints (dogs, cats, sheep, horses and cows). Example: example image cars

python -m openpifpaf.predict guide/images tappo_loomo.jpg \
  --checkpoint=shufflenetv2k30-animalpose \
  --line-width=6 --font-size=6 --white-overlay=0.3 \
  --long-edge=500

Commercial License

The open source license is in the LICENSE file. This software is also available for licensing via the EPFL Technology Transfer Office (https://tto.epfl.ch/, info.tto@epfl.ch).

Related repositories
CMU-Perceptual-Computing-Lab/openpose

OpenPose: Real-time multi-person keypoint detection library for body, face, hands, and foot estimation

C++Otheropenposecomputer-vision
cmu-perceptual-computing-lab.github.io/openpose
34.3k8k
PaddlePaddle/PaddleDetection

Object Detection toolkit based on PaddlePaddle. It supports object detection, instance segmentation, multiple object tracking and real-time multi-person keypoint detection.

PythonPyPIApache License 2.0object-detectioninstance-segmentation
14.3k3k
MVIG-SJTU/AlphaPose

Real-Time and Accurate Full-Body Multi-Person Pose Estimation&Tracking System

PythonPyPIOtherpose-estimationposetracking
mvig.org/research/alphapose.html
8.6k2k
ZheC/Realtime_Multi-Person_Pose_Estimation

Code repo for realtime multi-person pose estimation in CVPR'17 (Oral)

Jupyter NotebookOtherhuman-pose-estimationrealtime
5.1k1.4k
leoxiaobin/deep-high-resolution-net.pytorch

The project is an official implementation of our CVPR2019 paper "Deep High-Resolution Representation Learning for Human Pose Estimation"

CudaMIT Licensehuman-pose-estimationdeep-learning
jingdongwang2017.github.io/Projects/HRNet/PoseEstimation.html
4.5k922
mkocabas/VIBE

Official implementation of CVPR2020 paper "VIBE: Video Inference for Human Body Pose and Shape Estimation"

PythonPyPIOthervideo-pose-estimation3d-pose-estimation
arxiv.org/abs/1912.05656
3.2k577
osmr/imgclsmob

Sandbox for training deep learning networks

PythonPyPIMIT Licensemachine-learningdeep-learning
3k552
microsoft/human-pose-estimation.pytorch

The project is an official implement of our ECCV2018 paper "Simple Baselines for Human Pose Estimation and Tracking(https://arxiv.org/abs/1804.06208)"

PythonPyPIMIT Licensehuman-pose-estimationdeep-learning
3k597
cbsudux/awesome-human-pose-estimation

A collection of awesome resources in Human Pose estimation.

human-pose-estimationdeep-learning
2.5k404
Daniil-Osokin/lightweight-human-pose-estimation.pytorch

Fast and accurate human pose estimation in PyTorch. Contains implementation of "Real-time 2D Multi-Person Pose Estimation on CPU: Lightweight OpenPose" paper.

PythonPyPIApache License 2.0human-pose-estimationdeep-learning
2.2k495
YuliangXiu/ICON

[CVPR'22] ICON: Implicit Clothed humans Obtained from Normals

PythonPyPIOtherimplicit-functionsvirtual-humans
icon.is.tue.mpg.de
1.7k220
wangzheallen/awesome-human-pose-estimation

Human Pose Estimation Related Publication

3d-human-pose2d-human-pose
1.4k208