728x90
반응형

 

 

2018년 말 쯤 AlphaPose 라는

Real-Time 환경에서 Multi-Person Pose Estimation 및 Tracking 이 가능한 오픈 시스템이 발표되었다. 

최근 (2019.04) 에는 MXNet 버전이 출시되었는데 이는 COCO validation set 기준으로 23 fps 를 달성한다고 한다. 

23 fps 정도면 리얼타임 환경에서 적용 가능 할 수 있을 것으로 보인다. 

 

 

 

이는 Pytorch 를 이용하여 작성되었으며 Linux 와 Windows를 모두 지원한다. 

심지어 코드도 쓰레드로 구현되어있다. 아무튼

아마 이는 OpenPose의 뒤를 이을 자세 추정기가 되지 않을까 싶다. (내 생각)

 

AlphaPose

 

AlphaPose : Real-Time and Accurate Multi-Person Pose Estimation & Tracking System 

https://github.com/MVIG-SJTU/AlphaPose/

 

MVIG-SJTU/AlphaPose

Real-Time and Accurate Multi-Person Pose Estimation&Tracking System - MVIG-SJTU/AlphaPose

github.com

 

 

AlphaPose 논문

https://arxiv.org/abs/1612.00137

 

RMPE: Regional Multi-person Pose Estimation

Multi-person pose estimation in the wild is challenging. Although state-of-the-art human detectors have demonstrated good performance, small errors in localization and recognition are inevitable. These errors can cause failures for a single-person pose est

arxiv.org

 

 

COCO 데이터 세트에서 72.3 mAP 라는 결과를 달성했으며, (Pose Estimation 분야에서는 높은 편에 속함)

다중 인간 자세 추정이 가능한 최초의 오픈 시스템이라고 한다. 

 

AlphaPose의 Tracking 기능은 프레임 전체에서 나타나는 사람들 중

동일한 사람 간의 매칭을 위해 Pose Flow 라는 자세 추적기를 제공한다. 

 

 

 

Pose Flow Github

https://github.com/MVIG-SJTU/AlphaPose/tree/pytorch/PoseFlow

 

MVIG-SJTU/AlphaPose

Real-Time and Accurate Multi-Person Pose Estimation&Tracking System - MVIG-SJTU/AlphaPose

github.com

 

 

PoseTrack Challenge 데이터 세트에서 66.5 mAP 를 달성하였으며 

58.3 MOTA 를 달성하였다. (참고로 MOTA : Multi-Object Tracking Accuracy)

Crowd Pose Estimation 도 가능하니 앞으로 여러 산업에서 응용 될수 있을 것으로 보인다. 

 

 

 

PoseTrack (Dataset and Benchmark)

https://posetrack.net/

 

PoseTrack

PoseTrack Dataset and Benchmark

posetrack.net

 

 

 

 

 

시간이 되면 Demo 를 돌려보는 과정을 포스팅 하고 싶은데 시간적 여력이 되지 않으므로

어느 친절한 중국인이 올려놓은 Demo Run 과정이 담긴 링크를 첨부 한다. 

 

https://blog.csdn.net/qq_38522972/article/details/82993216

https://blog.csdn.net/tracy_frog/article/details/86695087

 

 

 

 

 

Linux 환경에서 소스 코드를 돌리는 과정은 대략 이렇다. 

 

Pytorch 버전 

https://github.com/MVIG-SJTU/AlphaPose/tree/pytorch

Ubuntu 16.04

python 3.5

 

 

1. 소스 코드 다운 받기 

git clone -b pytorch https://github.com/MVIG-SJTU/AlphaPose.git

 

2. pytorch 0.4.0 설치

각자 알아서 Conda or Pip, Python version, CUDA 버전에 따라 설치, 아래는 예시

https://pytorch.org/

 

conda version

conda install pytorch torchvision cudatoolkit=9.0 -c pytorch

pip version

pip3 install https://download.pytorch.org/whl/cu80/torch-1.0.0-cp35-cp35m-linux_x86_64.whl 
pip3 install torchvision

 

2-1 pytorch 제대로 설치되었나 확인

~$ python
---------
import torch
---------
exit()

 

3. requirements.txt 설치 

pip install -r requirements.txt

 

4. duc_se.pth 모델 및 yolov3 weight 다운로드 후 각 ./models/sppe 와 ./models/yolo 에 위치시킴

모델 다운로드 링크는 원글 참조

 

 

5. demo.py Start

이 때 테스트 하고자 하는 영상 폴더를 잘 지정해서 넣어주어야함 

demo.py 는 이미지 버전

video_demo.py 는 비디오 버전 

webcam_demo.py 는 웹캠 버전

python demo.py --indir ${img_directory} --outdir examples/res 
python video_demo.py --video ${path to video} --outdir examples/res --save_video
python webcam_demo.py --webcam 0 --outdir examples/res --vis

video version example

python demo.py --indir examples/demo --outdir examples/res 

 

6. 그 외에 Flags 를 선택하여 돌려 볼 수 있음

https://github.com/MVIG-SJTU/AlphaPose/blob/master/doc/run.md

 

아래는 참고용

./run.sh --indir examples/demo/ --outdir examples/results/ --vis
./run.sh --list examples/img-list.txt --outdir examples/results/ --dataset COCO
./run.sh --video examples/input.mp4 --outdir examples/results/ --vis --format cmu
./run.sh --indir examples/demo/ --outdir examples/results/ --mode fast --sep
./run.sh --indir examples/demo/ --outdir examples/results/ --gpu 0,1 --batch 6

 

visualization 결과를 보고싶다면 --vis

fast 모드는 --mode fast 등이 있다. 

728x90
반응형