All Projects → ZhengyiLuo → MEVA

ZhengyiLuo / MEVA

Licence: other
Official implementation of ACCV 2020 paper "3D Human Motion Estimation via Motion Compression and Refinement" (Identical repo to https://github.com/KlabCMU/MEVA, will be kept in sync)

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to MEVA

Vibe
Official implementation of CVPR2020 paper "VIBE: Video Inference for Human Body Pose and Shape Estimation"
Stars: ✭ 2,080 (+2136.56%)
Mutual labels:  human-pose-estimation, 3d-human-pose, 3d-pose-estimation, smpl
metro-pose3d
Metric-Scale Truncation-Robust Heatmaps for 3D Human Pose Estimation
Stars: ✭ 51 (-45.16%)
Mutual labels:  human-pose-estimation, 3d-human-pose
HybrIK
Official code of "HybrIK: A Hybrid Analytical-Neural Inverse Kinematics Solution for 3D Human Pose and Shape Estimation", CVPR 2021
Stars: ✭ 395 (+324.73%)
Mutual labels:  3d-pose-estimation, smpl
PyMAF
[ICCV21, Oral] PyMAF: 3D Human Pose and Shape Regression with Pyramidal Mesh Alignment Feedback Loop
Stars: ✭ 333 (+258.06%)
Mutual labels:  3d-human-pose, smpl
ICON
ICON: Implicit Clothed humans Obtained from Normals (CVPR 2022)
Stars: ✭ 641 (+589.25%)
Mutual labels:  human-pose-estimation, smpl
BOA
Bilevel Online Adaptation for Human Mesh Reconstruction
Stars: ✭ 43 (-53.76%)
Mutual labels:  human-pose-estimation, smpl
Awesome Human Pose Estimation
A collection of awesome resources in Human Pose estimation.
Stars: ✭ 2,022 (+2074.19%)
Mutual labels:  human-pose-estimation, 3d-human-pose
H36m Fetch
Human 3.6M 3D human pose dataset fetcher
Stars: ✭ 220 (+136.56%)
Mutual labels:  human-pose-estimation
Lite-HRNet
This is an official pytorch implementation of Lite-HRNet: A Lightweight High-Resolution Network.
Stars: ✭ 677 (+627.96%)
Mutual labels:  human-pose-estimation
Cu Net
Code for "Quantized Densely Connected U-Nets for Efficient Landmark Localization" (ECCV 2018) and "CU-Net: Coupled U-Nets" (BMVC 2018 oral)
Stars: ✭ 218 (+134.41%)
Mutual labels:  human-pose-estimation
Pytorch realtime multi Person pose estimation
Pytorch version of Realtime Multi-Person Pose Estimation project
Stars: ✭ 205 (+120.43%)
Mutual labels:  human-pose-estimation
Monoloco
[ICCV 2019] Official implementation of "MonoLoco: Monocular 3D Pedestrian Localization and Uncertainty Estimation" in PyTorch + Social Distancing
Stars: ✭ 242 (+160.22%)
Mutual labels:  human-pose-estimation
minimal-body
A very simple baseline to estimate 2D & 3D SMPL-compatible keypoints from a single color image.
Stars: ✭ 50 (-46.24%)
Mutual labels:  3d-pose-estimation
Pyranet
Code for "Learning Feature Pyramids for Human Pose Estimation" (ICCV 2017)
Stars: ✭ 222 (+138.71%)
Mutual labels:  human-pose-estimation
FastPose
pytorch realtime multi person keypoint estimation
Stars: ✭ 36 (-61.29%)
Mutual labels:  human-pose-estimation
Binary Human Pose Estimation
This code implements a demo of the Binarized Convolutional Landmark Localizers for Human Pose Estimation and Face Alignment with Limited Resources paper by Adrian Bulat and Georgios Tzimiropoulos.
Stars: ✭ 210 (+125.81%)
Mutual labels:  human-pose-estimation
MultiPerson-pose-estimation
This is the proposal network for MultiPerson Pose Estimation.
Stars: ✭ 15 (-83.87%)
Mutual labels:  human-pose-estimation
OpenPoseDotNet
OpenPose wrapper written in C++ and C# for Windows
Stars: ✭ 55 (-40.86%)
Mutual labels:  human-pose-estimation
MobileHumanPose
This repo is official PyTorch implementation of MobileHumanPose: Toward real-time 3D human pose estimation in mobile devices(CVPRW 2021).
Stars: ✭ 206 (+121.51%)
Mutual labels:  3d-human-pose
generative pose
Code for our ICCV 19 paper : Monocular 3D Human Pose Estimation by Generation and Ordinal Ranking
Stars: ✭ 63 (-32.26%)
Mutual labels:  human-pose-estimation

MEVA: 3D Human Motion Estimation via Motion Compression and Refinement

report PWC


3D Human Motion Estimation via Motion Compression and Refinement

Zhengyi Luo, S. Alireza Golestaneh, Kris M. Kitani

ACCV 2020, Oral
[Project website][Quantitative Demo][10min Talk]

Notable

MEVA (Motion Estimation vis Variational Autoencoding) is a video-based 3D human pose estimation method that focus on producing stable and natural-looking human motion from videos. MEVA achieves state-of-the-art human pose estimation accuracy while reducing acceleration error siginificantly. Pleaser refer to our paper for more details.

Updates

  • November 11, 2020 – 14:16 Inference code finished.

Getting Started

Install:

Environment

  • Tested OS: Linux
  • Python >= 3.6

How to install

Install the dependencies:

cat requirements.txt | xargs -n 1 pip install

(The requirements need to installed in certian order)

Running inference/Demo

Prepare necessary data

To run pre-trained models, please run the script:

bash scripts/prepare_data.sh

Command:

python scripts/run_meva_on_video.py --cfg train_meva_2  --vid_file zen_talking_phone.mp4  --output_folder results/output --exp train_meva_2

Training

Training script can be found at scripts/train_meva.py

Prepare Datasets

Coming soon!

Evaluation

Here we compare MEVA with recent state-of-the-art methods on 3D pose estimation datasets. Evaluation metric is Procrustes Aligned Mean Per Joint Position Error (PA-MPJPE) in mm.

Models 3DPW ↓ MPI-INF-3DHP ↓ H36M ↓
SPIN 59.2 67.5 41.1
Temporal HMR 76.7 89.8 56.8
VIBE 56.5 63.4 41.5
MEVA 51.9 62.6 48.1

(The numbers here reflect the current state of this repo, so it might be different from what's in the paper. I did a couple of small improvment to code so it achieved better performance. The changes:

  1. I used an overlapping temporal window when processing the video frames, which largly eliminate the issue introduced at the 3 second transition described in the paper.
  2. I used a new VAE architecture where the VAE does not take in the initial frame and only reconstructs motion from the latent code. )

Eval code can be found at: scripts/eval_meva.py

Known issues

  1. Visulization scale seems off somehow (the humanoid is not scaled properly), still debugging!

Citation

If you find our work useful in your research, please cite our paper MEVA:

@InProceedings{Luo_2020_ACCV,
    author    = {Luo, Zhengyi and Golestaneh, S. Alireza and Kitani, Kris M.},
    title     = {3D Human Motion Estimation via Motion Compression and Refinement},
    booktitle = {Proceedings of the Asian Conference on Computer Vision (ACCV)},
    month     = {November},
    year      = {2020}
}

References:

Notice that this repo builds upon a number of previous great works (especially, VIBE), and borrow scripts from them for convenience. Since MEVA focuses on using a pre-trained VAE on AMASS to breakdown human pose estimation into its coarase-to-fine elements, so the visual training part is heavily borrowed from VIBE. For each file that is borrowed, we indicate that it is referenced and please adhere to their liscnece for usage.

  • Dataloaders, part of the loss function, data pre-processing are from: VIBE
  • SMPL models and layer is from: SMPL-X model
  • Feature extractors are from: SPIN
  • NN modules are from (khrylib): DLOW
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].