https://github.com/CMU-Perceptual-Computing-Lab/openpose
Openpose는 몸, 얼굴, 손, 발 추정을 위한 실시간 다중 사람 키포인트 탐지 라이브러리이다.
왜 Openpose를 사용하게 됐느냐...
Openpose를 이용하면 2D keypoint json 파일이 output으로 생성되는데,
이를 이용하여 smplify를 사용해서 smpl모델의 3d 모습을 추출하는게 목표다.
그런데... 환경이 설정이 생각보다 까다롭다.
smplpix 코랩에 있는 Openpose 코드는 Caffe, Cuda랑 dependency를 유지하기 상당히 까다롭다.
게다가 Cpu로 돌리는 것도 안되더라... 흑흑
※ 근데 이 openpose 코랩은 될수도 있다.(필자는 안해봄)
뭐... 일단 나는 사실 리눅스환경이 편하니, 우분투 20.04 환경에서 직접깔아보기로 했는데...
Cuda 환경을 안맞췄다고 안돌아갔다...@_@
mmpose 모델을 돌리고 있기 때문에(7일 소요), 따로 cuda환경을 건드릴 수 없었다...
그러한 이유로 인해, 윈도우로 진행을 하게됐는데..
그런데... 충격적인 사실은... 윈도우가 더 쉬운 것이었다!!!!
바로 윈도우즈 버전을 사용하는것!
빌드 환경
- Window 11
- Geforce RTX 3060 laptop
- CUDA 10.1
1. Openpose 윈도우즈 버전 다운로드
https://github.com/CMU-Perceptual-Computing-Lab/openpose/releases
위의 페이지로 들어가서,
2번째 zip파일을 다운로드 한다. 버전은 최신 버전으로 다운 받으면 된다.
여기에 output 폴더를 따로 생성해준다.
2. 가중치 파일 다운로드
http://daddynkidsmakers.blogspot.com/2020/07/openpose.html
2-1 위 블로그에서 가중치를 다운로드 받는다.
근데 이게 정확히 되는지는 모르겠다 나는 가중치 다운로드를 아래와 같은 방식으로 했다.
사실 아래와 같은 방법으로 하는게 아마도 베스트이다.
2-2
https://github.com/CMU-Perceptual-Computing-Lab/openpose
위 공식 사이트에서 openpose-master.zip파일을 다운로드 받아 압축 해제한다.
그 후 getModels.bat을 실행하면, 검은색 창이 뜨는데 이때 시간이 상당히 소요되고,
모델의 구성요소 정보와 훈련된 모델의 가중치 파일 설치된다.
우리가 가져올 것은 저 caffemodel파일!!!! 저게 가중치 파일이다.
3. 모델 돌리기(Windows PowerShell)
저 파일을 openpose-1.7.0-binaries-win64-gpu-python3.7-flir-3d_recommended 폴더의 같은 위치에
가중치 파일 5개를 쏙 넣어준다.
이로써 모든 준비는 완료되었다.
openpose-1.7.0-binaries-win64-gpu-python3.7-flir-3d_recommended > openpose 폴더로 이동해서
powershell을 입력후 엔터 누르면! 간단하게 powershell로 이동이 가능하다.
bin\OpenPoseDemo.exe --image_dir examples/media --write_json output/
그리고 위 코드를 입력하고 실행해주면!
짜잔~~~ 이런식으로 json파일이 생성된다.
형식을 보아하니... mmpose로 뽑은 keypoint들을 위와같은 형식으로 변경해주면?
smplify도 적용할 수 있을 것 같다 ㅎㅎ
6일 뒤에는 위 코드를 smplify에 우분투환경으로 적용시켜 보겠다.
참고로
아~ 나는 윈도우에서 환경을 직접 맞춰서 하고 싶어 ! 하는 분들이나 리눅스, 맥환경을 사용하시는 분들이라면
https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation/0_index.md
위 두 링크를 참조하여 openpose를 설치하도록 하자.
'데이터사이언스 대학원 생활 > Human Pose Estimation' 카테고리의 다른 글
Human3.6M 데이터셋 다운로드(Docker 사용) (3) | 2023.11.09 |
---|---|
[논문 리뷰] SMPL: A Skinned Multi-Person Linear Model (0) | 2023.07.12 |
MMPose - 훈련된 모델로 포즈 추정 실행! (0) | 2023.06.24 |
MMpose 사용해서 (COCO - 2D WholeBody Datasets) 데이터로 모델 학습까지! (0) | 2023.06.23 |
MMPose 설치 방법 (0) | 2023.06.23 |