LEAP: Learning Articulated Occupancy of People

Related tags

Deep Learningleap
Overview

LEAP: Learning Articulated Occupancy of People

Paper | Video | Project Page

teaser figure

This is the official implementation of the CVPR 2021 submission LEAP: Learning Articulated Occupancy of People

LEAP is a neural network architecture for representing volumetric animatable human bodies. It follows traditional human body modeling techniques and leverages a statistical human prior to generalize to unseen humans.

If you find our code or paper useful, please consider citing:

@InProceedings{LEAP:CVPR:21,
  title = {{LEAP}: Learning Articulated Occupancy of People},
  author = {Mihajlovic, Marko and Zhang, Yan and Black, Michael J and Tang, Siyu},
  booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
  month = {June},
  year = {2021},
}

Contact Marko Mihajlovic for questions or open an issue / a pull request.

Prerequests

1) SMPL body model

Download a SMPL body model (SMPL, SMPL+H, SMPL+X, MANO) and store it under ${BODY_MODELS} directory of the following structure:

${BODY_MODELS}
├── smpl
│   └── x
├── smplh
│   ├── male
|   │   └── model.npz
│   ├── female
|   │   └── model.npz
│   └── neutral
|       └── model.npz
├── mano
|   └── x
└── smplx
    └── x

NOTE: currently only SMPL+H model is supported. Other models will be available soon.

2) Installation

Another prerequest is to install python packages specified in the requirements.txt file, which can be conveniently accomplished by using an Anaconda environment:

# clone the repo
git clone https://github.com/neuralbodies/leap.git
cd ./leap

# create environment
conda env create -f environment.yml
conda activate leap

and install the leap package via pip:

# note: install the build-essentials package if not already installed (`sudo apt install build-essential`) 
python setup.py build_ext --inplace
pip install -e .

3) (Optional) Download LEAP pretrained models

Download LEAP pretrained models from here and extract them under ${LEAP_MODELS} directory.

Usage

Check demo code in examples/query_leap.py for a demonstration on how to use LEAP for differentiable occupancy checks.

Train your own model

Follow instructions specified in data_preparation/README.md on how to prepare training data. Then, replace placeholders for pre-defined path variables in configuration files (configurations/*.yml) and execute training_code/train_leap.py script to train the neural network modules.

LEAP consists of two LBS networks and one occupancy decoder.

cd training_code

To train the forward LBS network, execute the following command:

python train_leap.py ../configurations/fwd_lbs.yml

To train the inverse LBS network:

python train_leap.py ../configurations/inv_lbs.yml

Once the LBS networks are trained, execute the following command to train the occupancy network:

python train_leap.py ../configurations/leap_model.yml

See specified yml configuration files for details about network hyperparameters.

PCAM: Product of Cross-Attention Matrices for Rigid Registration of Point Clouds

PCAM: Product of Cross-Attention Matrices for Rigid Registration of Point Clouds PCAM: Product of Cross-Attention Matrices for Rigid Registration of P

valeo.ai 24 May 31, 2022
Curriculum Domain Adaptation for Semantic Segmentation of Urban Scenes, ICCV 2017

AdaptationSeg This is the Python reference implementation of AdaptionSeg proposed in "Curriculum Domain Adaptation for Semantic Segmentation of Urban

Yang Zhang 128 Oct 19, 2022
Python utility to generate filesystem content for Obsidian.

Security Vault Generator Quickly parse, format, and output common frameworks/content for Obsidian.md. There is a strong focus on MITRE ATT&CK because

Justin Angel 73 Dec 02, 2022
A general-purpose encoder-decoder framework for Tensorflow

READ THE DOCUMENTATION CONTRIBUTING A general-purpose encoder-decoder framework for Tensorflow that can be used for Machine Translation, Text Summariz

Google 5.5k Jan 07, 2023
💡 Learnergy is a Python library for energy-based machine learning models.

Learnergy: Energy-based Machine Learners Welcome to Learnergy. Did you ever reach a bottleneck in your computational experiments? Are you tired of imp

Gustavo Rosa 57 Nov 17, 2022
YourTTS: Towards Zero-Shot Multi-Speaker TTS and Zero-Shot Voice Conversion for everyone

YourTTS: Towards Zero-Shot Multi-Speaker TTS and Zero-Shot Voice Conversion for everyone In our recent paper we propose the YourTTS model. YourTTS bri

Edresson Casanova 390 Dec 29, 2022
A PyTorch implementation of EfficientDet.

A PyTorch impl of EfficientDet faithful to the original Google impl w/ ported weights

Ross Wightman 1.4k Jan 07, 2023
Optimus: the first large-scale pre-trained VAE language model

Optimus: the first pre-trained Big VAE language model This repository contains source code necessary to reproduce the results presented in the EMNLP 2

314 Dec 19, 2022
Semi-supervised Transfer Learning for Image Rain Removal. In CVPR 2019.

Semi-supervised Transfer Learning for Image Rain Removal This package contains the Python implementation of "Semi-supervised Transfer Learning for Ima

Wei Wei 59 Dec 26, 2022
An implementation of Deep Forest 2021.2.1.

Deep Forest (DF) 21 DF21 is an implementation of Deep Forest 2021.2.1. It is designed to have the following advantages: Powerful: Better accuracy than

LAMDA Group, Nanjing University 795 Jan 03, 2023
implementation of paper - You Only Learn One Representation: Unified Network for Multiple Tasks

YOLOR implementation of paper - You Only Learn One Representation: Unified Network for Multiple Tasks To reproduce the results in the paper, please us

Kin-Yiu, Wong 1.8k Jan 04, 2023
Official PyTorch implementation of "RMGN: A Regional Mask Guided Network for Parser-free Virtual Try-on" (IJCAI-ECAI 2022)

RMGN-VITON RMGN: A Regional Mask Guided Network for Parser-free Virtual Try-on In IJCAI-ECAI 2022(short oral). [Paper] [Supplementary Material] Abstra

27 Dec 01, 2022
Code to replicate the key results from Exploring the Limits of Out-of-Distribution Detection

Exploring the Limits of Out-of-Distribution Detection In this repository we're collecting replications for the key experiments in the Exploring the Li

Stanislav Fort 35 Jan 03, 2023
Image Restoration Using Swin Transformer for VapourSynth

SwinIR SwinIR function for VapourSynth, based on https://github.com/JingyunLiang/SwinIR. Dependencies NumPy PyTorch, preferably with CUDA. Note that t

Holy Wu 11 Jun 19, 2022
A large-scale video dataset for the training and evaluation of 3D human pose estimation models

ASPset-510 (Australian Sports Pose Dataset) is a large-scale video dataset for the training and evaluation of 3D human pose estimation models. It contains 17 different amateur subjects performing 30

Aiden Nibali 25 Jun 20, 2021
[NeurIPS2021] Exploring Architectural Ingredients of Adversarially Robust Deep Neural Networks

Exploring Architectural Ingredients of Adversarially Robust Deep Neural Networks Code for NeurIPS 2021 Paper "Exploring Architectural Ingredients of A

Hanxun Huang 26 Dec 01, 2022
Code for the paper "M2m: Imbalanced Classification via Major-to-minor Translation" (CVPR 2020)

M2m: Imbalanced Classification via Major-to-minor Translation This repository contains code for the paper "M2m: Imbalanced Classification via Major-to

79 Oct 13, 2022
Real-Time Social Distance Monitoring tool using Computer Vision

Social Distance Detector A Real-Time Social Distance Monitoring Tool Table of Contents Motivation YOLO Theory Detection Output Tech Stack Functionalit

Pranav B 13 Oct 14, 2022
Texture mapping with variational auto-encoders

vae-textures This is an experiment with using variational autoencoders (VAEs) to perform mesh parameterization. This was also my first project using J

Alex Nichol 41 May 24, 2022
using STGCN to achieve egg classification task

EEG Classification   The task requires us to classify electroencephalography(EEG) into six categories, including human body, human face, animal body,

4 Jun 13, 2022