본문 바로가기

좌충우돌개발일지

HumanML3D Dataset 준비하기

Demo를 수행하기 위해서는, Human3DML이 필요하다.

따라서 코드가 원활이 동작하는지 확인하기 위해, HumanML3D 데이터셋을 내려받는다.

HumanML3D에 사용되는 AMASS의 정책에 의해, 바로 다운로드는 불가능하다. 대신 아래 GitHub에서 가공할 수 있으니, 아래 Git을 clone하자.

 

https://github.com/EricGuo5513/HumanML3D

 

GitHub - EricGuo5513/HumanML3D: HumanML3D: A large and diverse 3d human motion-language dataset.

HumanML3D: A large and diverse 3d human motion-language dataset. - EricGuo5513/HumanML3D

github.com

 

KIT-ML과 달리, 다른 데이터셋 두개를 내려받기 때문에, 바로 다운로드는 불가하다.

SMPL+H

  • Extended SMPL+H model used in AMASS project 다운로드

DMPL model from DMPL

  • DMPLs compatible with SMPL 다운로드

두 사이트에서 각 각 파일을 다운로드를 진행한다.

두 모델을 다운로드 완료했다면, 끝!..인줄 알았는 데, 아니다.

제공되는 script에 보면, AMASS dataset을 다운로드해야한다..!!

https://amass.is.tue.mpg.de/download.php

script에서 다운로드 하라는 모델이 존재하지 않을 수 있는데, 다른 파일 안에 함께 있을 수 있다.

그러니 해당 웹사이트에서 아래 Motion들을 다운로드하자.

용량이 상당하다! 천천히 여유를 갖고 다운로드를 진행하자.

여러개를 다운하면 조금 느려진다… 그냥 한번에 하나씩 천천히 하는게 좋아보인다.

써있는 다운로드 순서가 정렬이 안되어있어, 정렬했다.

  • ACCD (ACCD)
  • BMLhandball (BMLhandball)
  • BMLmovi (BMLmovi)
  • BMLrub (BioMotionLab_NTroje)
  • CMU (CMU)
  • DFaust (DFaust_67)
  • EKUT (EKUT)
  • Eyes_Japan_Dataset (Eyes_Japan_Dataset)
  • HDM05 (MPI_HDM05)
  • HumanEva (HumanEva)
  • KIT (KIT)
  • Mosh (MPI_mosh)
  • PosePrior (MPI_Limits)
  • SFU (SFU)
  • SSM (SSM_synced)
  • TCDHands (TCD_handMocap)
  • TotalCapture (TotalCapture)
  • Transitions (Transitions_mocap)

다음과 같이 파일들을 준비하자.

폴더 내부에 License를 삭제하면 에러를 더 줄일 수 있다.

 

 

위 깃을 따라 가상 환경을 Windows에서 조성할 때, 문제가 많이 발생했다.

 

https://github.com/EricGuo5513/HumanML3D/issues/9

 

For windows "conda create -f environment.yaml" · Issue #9 · EricGuo5513/HumanML3D

name: torch_render channels: - defaults dependencies: - _libgcc_mutex=0.1=main - argon2-cffi=21.3.0 - argon2-cffi-bindings=21.2.0 - attrs=21.4.0 - backcall=0.2.0 - beautifulsoup4=4.11.1 - blas=1.0=...

github.com

를 참고해서 해결했다.

맨 아래에 댓글을 남겨두었기 때문에, 참고하면 좋을것 같다!

 

Windows에서 진행하는 경우, 경로를 split할 때 '/'가 아닌 '\\'로 변경해야 한다.

생각 이상으로 오래 걸렸다! ( 11:17 시작, 12:18 종료 - 약 1시간 걸림)

마지막 프로세스에서, './joints' 에 대해 No such file or directory 문제가 발생해, 직접 './joints'폴더를 생성해줬다.

raw_pose_processing 종료


motion_representation의 경우, 환경 설정을 잘 해뒀으면 문제없이 동작한다.

https://github.com/EricGuo5513/HumanML3D/issues/64

에 나와있는 것 처럼, 0.xx정도면 쓸만한것으로 보여진다!!

009707, 011059, M009707, M011059 는 cannot reshape 뜨는게 괜찮다고 HumanML3D저자가 알려줬다. https://github.com/EricGuo5513/HumanML3D/issues/120


cal_mean_variance

그냥 돌리면 아주 잘돈다


 

animation.ipynb

생짜로 돌리면 다음과 같은 에러를 만난다

MovieWriter ffmpeg unavailable; using Pillow instead.

https://notes.nakurei.com/post/i-want-to-output-mp4-with-matplotlib/

https://eclipse360.tistory.com/7

https://m.blog.naver.com/chandong83/221165275268

3개를 참고해서 ffmpeg를 설치했고, 성공적으로 모두 실행할 수 있었다!

'좌충우돌개발일지' 카테고리의 다른 글

Welcome to Hogwarts!  (3) 2024.09.29
정사각형으로 외곽선 검출  (0) 2023.01.31
이미지 전처리  (0) 2023.01.30