- MMpose를 이용해서 학습을 해보자!
https://mmpose.readthedocs.io/en/latest/dataset_zoo/2d_wholebody_keypoint.html
2D Wholebody Keypoint Datasets — MMPose 1.0.0 documentation
2D Wholebody Keypoint Datasets It is recommended to symlink the dataset root to $MMPOSE/data. If your folder structure is different, you may need to change the corresponding paths in config files. MMPose supported datasets: COCO-WholeBody COCO-WholeBody (E
mmpose.readthedocs.io
괜히 키포인트 몇개 추출할바엔 차라리 몸 전체 2D Keypoint를 추출하려고한다.
이는 나중에 2D를 3D로 변환할 때 나중에 필요없는 키포인트는 제거 후 사용하기만 하면 된다.
일단 위의 링크를 들어가면 알 수 있겠지만, 나는 COCO datasets으로 학습하려고 한다.
mmpose
├── mmpose
├── docs
├── tests
├── tools
├── configs
`── data
│── coco
│-- annotations
│ │-- coco_wholebody_train_v1.0.json
│ |-- coco_wholebody_val_v1.0.json
|-- person_detection_results
| |-- COCO_val2017_detections_AP_H_56_person.json
│-- train2017
│ │-- 000000000009.jpg
│ │-- 000000000025.jpg
│ │-- 000000000030.jpg
│ │-- ...
`-- val2017
│-- 000000000139.jpg
│-- 000000000285.jpg
│-- 000000000632.jpg
│-- ...
우리가 로컬에 다운받은 mmpose 폴더 구성을 다음과 같이 만들어주면 된다.
일단... cocoapi 최신버전으로 업그레이드 하고,
pip install xtcocotools
train2017, val2017 파일
images can be downloaded from COCO download,2017 Train/Val is needed for COCO keypoints training and validation.
annotations 파일
Download COCO-WholeBody annotations for COCO-WholeBody annotations for Train / Validation (Google Drive).
person_deteciton_result 파일
Download person detection result of COCO val2017 from OneDrive or GoogleDrive. Download and extract them under $MMPOSE/data, and make them look like this:
여기 파란색 하이퍼 링크에 있는 파일들을 다운 받고 폴더 구성을 동일하게 해준다.
나는 다른 데이터 셋을 사용하고 싶은데용? 하는 분들은
Doc페이지 왼쪽목록 중 Dataset Zoo[ - ] 에서 원하는 데이터 셋을 하라는 대로 똑같이 구성하면 된다!
그래서 저 데이터로 어떻게 학습 시키는데?!!?
https://mmpose.readthedocs.io/en/latest/user_guides/train_and_test.html
Training and Testing — MMPose 1.0.0 documentation
Docs > Training and Testing 以中文阅读 Edit on GitHub Shortcuts
mmpose.readthedocs.io
GPU로 훈련을 하는 코드다!
python tools/train.py ${CONFIG_FILE} [ARGS]
mmpose/configs로 이동하면 이런식으로 폴더들이 있다.
본인이 다운로드 한 데이터 형식(나는 wholebody_2d)에 맞춰서 폴더를 확인해보자
/home/wook/mmpose/configs/wholebody_2d_keypoint/topdown_heatmap/coco-wholebody 경로를 확인해보면...

이런식으로 이미 정리된 py파일이 있다. 저것이 바로 CONFIG_FILE 이다! 그래서 경로를 설정해주면! 학습을 진행하게된다.
저건 이제 mmpose에서 쉽게 사용할 수 있도록 코드 수정을 한 상태이다.
본인이 수정하고 싶으면 아래처럼
/home/wook/mmpose/mmpose/models/backbones 여기서 직접 코드를 수정해서 사용하면된다.

cd mmpose
python tools/train.py /home/wook/mmpose/configs/wholebody_2d_keypoint/topdown_heatmap/coco-wholebody/td-hm_vipnas-res50_8xb64-210e_coco-wholebody-256x192.py
여러가지 일단... 모델을 다 돌려보고 싶었는데 저번에 hrnet 대강 돌려봤기 때문에 일단 먼저 vipnas 모델을 돌려봤다.
그래서 위 코드를 실행한다면? 학습이 진행된다!!
학습이 완료된다면?!

/home/wook/mmpose/work_dirs 이렇게 폴더가 생성된다.

epoch 별로 저장이 된다!!
'데이터사이언스 대학원 생활 > Human Pose Estimation' 카테고리의 다른 글
[논문 리뷰] SMPL: A Skinned Multi-Person Linear Model (0) | 2023.07.12 |
---|---|
Openpose 설치 및 사용(Windows 버전으로 쉽게) (2) | 2023.06.28 |
MMPose - 훈련된 모델로 포즈 추정 실행! (0) | 2023.06.24 |
MMPose 설치 방법 (0) | 2023.06.23 |
HRNet: High-Resolution Net(CVPR 2019) - 실행 환경 구축 (0) | 2023.06.18 |