Transpose는 CNN 피처 추출기, 변압기 인코더 및 예측 헤드를 기반으로 한 휴먼 포즈 추정 모델입니다. 이미지가 주어지면, 변압기에 내장 된주의 레이어는 키 포인트 간의 장거리 공간 관계를 효율적으로 포착하고 예측 된 키 포인트 위치가 어떤 의존하는지 설명 할 수 있습니다.
[ARXIV 2012.14214] [논문] [Demo-Notebook]
전환 : Transformer, Sen Yang, Zhibin Quan, Mu Nie, Wankou Yang, ICCV 2021을 통한 키패 포인트 현지화
우리는 백본 후보자로서 두 가지 유형의 CNN을 선택합니다 : RESNET 및 HRNET. 파생 된 컨볼 루션 블록은 resnet-small, hrnet-small-W32 및 HRNet-Small-W48입니다.
모델 | 등뼈 | #항목 계층 | 디 | 시간 | #헤드 | #Params | AP (Coco Val GT Bbox) | 다운로드 |
---|---|---|---|---|---|---|---|---|
R-A3를 전환하십시오 | resnet-s | 3 | 256 | 1024 | 8 | 5.2MB | 73.8 | 모델 |
R-A4를 전환하십시오 | resnet-s | 4 | 256 | 1024 | 8 | 6.0MB | 75.1 | 모델 |
전환 h | HRNET-S-W32 | 4 | 64 | 128 | 1 | 8.0MB | 76.1 | 모델 |
전환 -H-a4 | HRNET-S-W48 | 4 | 96 | 192 | 1 | 17.3MB | 77.5 | 모델 |
전환 -H-a6 | HRNET-S-W48 | 6 | 96 | 192 | 1 | 17.5MB | 78.1 | 모델 |
웹 데모를 시도해보십시오.
Torch Hub의 Coco Train2017 데이터 세트에서 간단히 다음과 같이 직접 전환 R-A4 또는 Transpose-H-A4 모델을 직접로드 할 수 있습니다.
import torch
tpr = torch . hub . load ( 'yangsenius/TransPose:main' , 'tpr_a4_256x192' , pretrained = True )
tph = torch . hub . load ( 'yangsenius/TransPose:main' , 'tph_a4_256x192' , pretrained = True )
모델 | 입력 크기 | fps* | gflops | ap | AP .5 | AP .75 | AP (M) | AP (L) | AR | AR .5 | AR .75 | 팔) | AR (L) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
R-A3를 전환하십시오 | 256x192 | 141 | 8.0 | 0.717 | 0.889 | 0.788 | 0.680 | 0.786 | 0.771 | 0.930 | 0.836 | 0.727 | 0.835 |
R-A4를 전환하십시오 | 256x192 | 138 | 8.9 | 0.726 | 0.891 | 0.799 | 0.688 | 0.798 | 0.780 | 0.931 | 0.845 | 0.735 | 0.844 |
전환 h | 256x192 | 45 | 10.2 | 0.742 | 0.896 | 0.808 | 0.706 | 0.810 | 0.795 | 0.935 | 0.855 | 0.752 | 0.856 |
전환 -H-a4 | 256x192 | 41 | 17.5 | 0.753 | 0.900 | 0.818 | 0.717 | 0.821 | 0.803 | 0.939 | 0.861 | 0.761 | 0.865 |
전환 -H-a6 | 256x192 | 38 | 21.8 | 0.758 | 0.901 | 0.821 | 0.719 | 0.828 | 0.808 | 0.939 | 0.864 | 0.764 | 0.872 |
메모:
모델 | 입력 크기 | #Params | gflops | ap | AP .5 | AP .75 | AP (M) | AP (L) | AR | AR .5 | AR .75 | 팔) | AR (L) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
전환 h | 256x192 | 8.0m | 10.2 | 0.734 | 0.916 | 0.811 | 0.701 | 0.793 | 0.786 | 0.950 | 0.856 | 0.745 | 0.843 |
전환 -H-a4 | 256x192 | 17.3m | 17.5 | 0.747 | 0.919 | 0.822 | 0.714 | 0.807 | 0.799 | 0.953 | 0.866 | 0.758 | 0.854 |
전환 -H-a6 | 256x192 | 17.5m | 21.8 | 0.750 | 0.922 | 0.823 | 0.713 | 0.811 | 0.801 | 0.954 | 0.867 | 0.759 | 0.859 |
Jupyter 노트북 데모
입력 이미지, 사전 전환 모델 및 예측 된 위치가 주어지면 예측 된 위치의 공간 의존성을주의 점수에 대한 임계 값으로 시각화 할 수 있습니다.
threshold=0.00
으로 TransPose-R-A4
threshold=0.01
로 TransPose-R-A4
threshold=0.00
인 TransPose-H-A4
threshold=0.00075
인 TransPose-H-A4
이 저장소를 복제하면 $ {pose_root}로 복제 한 디렉토리로 호출하겠습니다.
git clone https://github.com/yangsenius/TransPose.git
Pytorch 공식 웹 사이트에서 Pytorch> = 1.6 및 Torchvision> = 0.7을 설치하십시오
패키지 종속성을 설치하십시오. 파이썬 환경이> = 3.7인지 확인하십시오
pip install -r requirements.txt
$ {pose_root} 아래에서 출력 (교육 모델 및 파일) 및 로그 (Tensorboard log) 디렉토리를 만들고 Libs Make Make
mkdir output log
cd ${POSE_ROOT} /lib
make
이 repo의 릴리스에서 지정된 디렉토리로 사기꾼 모델을 다운로드하십시오.
$ {POSE_ROOT}
`-- models
`-- pytorch
|-- imagenet
| |-- hrnet_w32-36af842e.pth
| |-- hrnet_w48-8ef0771d.pth
| |-- resnet50-19c8e357.pth
|-- transpose_coco
| |-- tp_r_256x192_enc3_d256_h1024_mh8.pth
| |-- tp_r_256x192_enc4_d256_h1024_mh8.pth
| |-- tp_h_32_256x192_enc4_d64_h128_mh1.pth
| |-- tp_h_48_256x192_enc4_d96_h192_mh1.pth
| |-- tp_h_48_256x192_enc6_d96_h192_mh1.pth
우리는 Coco Train/Val/Test 데이터 세트와 주석을 준비하기 위해 HRNET의 단계를 따릅니다. 감지 된 사람 결과는 OneDrive 또는 GoogleDrive에서 다운로드됩니다. $ {pose_root}/data/coco/에 다운로드하거나 연결하고 다음과 같이 보이게하십시오.
$ {POSE_ROOT}/data/coco/
| -- annotations
| |-- person_keypoints_train2017.json
| `-- person_keypoints_val2017.json
| -- person_detection_results
| |-- COCO_val2017_detections_AP_H_56_person.json
| `-- COCO_test-dev2017_detections_AP_H_609_person.json
`-- images
|-- train2017
| |-- 000000000009.jpg
| |-- ...
`-- val2017
|-- 000000000139.jpg
|-- ...
python tools/test.py --cfg experiments/coco/transpose_r/TP_R_256x192_d256_h1024_enc4_mh8.yaml TEST.USE_GT_BBOX True
python tools/train.py --cfg experiments/coco/transpose_r/TP_R_256x192_d256_h1024_enc4_mh8.yaml
이 논문과 오픈 소스 코드에 감사드립니다. hrnet, detr, darkpose
이 저장소는 MIT 라이센스에 따라 릴리스됩니다.
이 저장소가 유용하다고 생각되면 별을주세요. 또는 우리의 작업을 인용하는 것을 고려하십시오.
@inproceedings{yang2021transpose,
title={TransPose: Keypoint Localization via Transformer},
author={Yang, Sen and Quan, Zhibin and Nie, Mu and Yang, Wankou},
booktitle={IEEE/CVF International Conference on Computer Vision (ICCV)},
year={2021}
}