Git Product home page Git Product logo

multiview_pose's Introduction

Graph-Based 3D Multi-Person Pose Estimation Using Multi-View Images (ICCV'2021)

[๐Ÿ“œ Paper] [๐Ÿ“ฐ Blog (ๅ•†ๆฑคๅญฆๆœฏ)] [๐Ÿ“น Presentation] [๐Ÿ“บ Demo (YouTube)]

PWC

Introduction

This is the official release for:

Graph-Based 3D Multi-Person Pose Estimation Using Multi-View Images,
Size Wu, Sheng Jin, Wentao Liu, Lei Bai, Chen Qian, Dong Liu, and Wanli Ouyang
ICCV 2021 (arXiv 2109.05885)

Thanks to MMPose, this repo produces slightly better results (compared to those reported in our ICCV'21 paper), please see Results below. Codes will be integrated into MMPose soon.

Abstract

This paper studies the task of estimating the 3D human poses of multiple persons from multiple calibrated camera views. Following the top-down paradigm, we decompose the task into two stages, i.e. person localization and pose estimation. Both stages are processed in coarse-to-fine manners. And we propose three task-specific graph neural networks for effective message passing. For 3D person localization, we first use Multi-view Matching Graph Module (MMG) to learn the cross-view association and recover coarse human proposals. The Center Refinement Graph Module (CRG) further refines the results via flexible pointbased prediction. For 3D pose estimation, the Pose Regression Graph Module (PRG) learns both the multi-view geometry and structural relations between human joints. Our approach achieves state-of-the-art performance on CMU Panoptic and Shelf datasets with significantly lower computation complexity.

Intro

Demo

TODO

  • Training/testing codes release.
  • Pre-trained model release.
  • Integrate codes to MMPose.

Results

Multiview 3D Pose Estimation on CMU Panoptic

Refine Pose mAP $\uparrow$ mAR $\uparrow$ MPJPE (mm) $\downarrow$ Config Download
Paper + 98.10 98.70 15.84 - -
This Repo - 97.25 98.24 17.18 config model; log
This Repo + 98.65 98.80 15.68 config model; log

Installation

MMPose

Following this installation guidance to build the latest version of MMPose from source.

git clone https://github.com/open-mmlab/mmpose.git
cd mmpose
git checkout reform_multiviewpose     # to be discarded in future
pip install -r requirements.txt
pip install -v -e .

PyTorch Geometric

We implement our GCN modules using PyTorch Geometric.

conda install pyg -c pyg   # for PyTorch >= 1.8.0

If having problem installing PyTorch Geometric with the above command, try build it from source following the official tutorial.

Usage

Data preparation

Prepare CMU Panoptic Dataset following MMPose. The data structure looks like:

multiview_pose
โ”œโ”€โ”€ multiview_pose
โ”œโ”€โ”€ tools
โ”œโ”€โ”€ configs
`โ”€โ”€ data
    โ”œโ”€โ”€ panoptic
        โ”œโ”€โ”€ 16060224_haggling1
        |   |   โ”œโ”€โ”€ hdImgs
        |   |   โ”œโ”€โ”€ hdvideos
        |   |   โ”œโ”€โ”€ hdPose3d_stage1_coco19
        |   |   โ”œโ”€โ”€ calibration_160224_haggling1.json
        โ”œโ”€โ”€ 160226_haggling1
            โ”œโ”€โ”€ ...

Pre-trained 2D model

Download the pre-trained 2D bottom-up pose estimator this link and put it under checkpoints

multiview_pose
โ”œโ”€โ”€ checkpoints 
    โ”œโ”€โ”€ resnet_50_deconv.pth.tar

Training and testing

For training and testing, use the exactly same commands as MMPose. For example, you can train the model with 8 GPUs by using

bash tools/dist_train.sh configs/body/3d_kpt_mview_rgb_img/graph_pose/panoptic/gcn_cpn80x80x20_panoptic_cam5_end2end.py 8

To test the model with 8 GPUs, use the following

bash tools/dist_test.sh configs/body/3d_kpt_mview_rgb_img/graph_pose/panoptic/gcn_cpn80x80x20_panoptic_cam5_end2end.py \
path/to/checkpoint 8 --eval mpjpe mAP
bash tools/dist_test.sh configs/body/3d_kpt_mview_rgb_img/graph_pose/panoptic/gcn_cpn80x80x20_panoptic_cam5_end2end_test_without_refinement.py \
path/to/checkpoint 8 --eval mpjpe mAP   # test without pose refinement

Citation

@inproceedings{wu2021graph,
  title={Graph-based 3d multi-person pose estimation using multi-view images},
  author={Wu, Size and Jin, Sheng and Liu, Wentao and Bai, Lei and Qian, Chen and Liu, Dong and Ouyang, Wanli},
  booktitle={ICCV},
  year={2021}
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.