HumanML3D는 HumanAct12와 Amass 데이터세트의 조합으로 생성된 3D 인간 동작 언어 데이터세트입니다. 이는 일상 활동(예: '걷기', '점프'), 스포츠(예: '수영', '골프 치기'), 곡예(예: '수레바퀴') 및 예술성(예: '수영')과 같은 광범위한 인간 행동을 다룹니다. , '춤').
HumanML3D의 각 모션 클립에는 Amazon Mechanical Turk에 주석이 달린 3-4개의 단일 문장 설명이 함께 제공됩니다. 모션은 20fps로 다운샘플링되며 각 클립의 지속 시간은 2~10초입니다.
전체적으로 HumanML3D 데이터세트는 14,616개의 동작과 5,371개의 개별 단어로 구성된 44,970개의 설명으로 구성됩니다. 총 동작 시간은 28.59 시간입니다. 평균 모션 길이는 7.1 초이고, 평균 설명 길이는 12 단어입니다.
모든 모션을 미러링하고 설명의 특정 키워드(예: '왼쪽'->'오른쪽', '시계 방향'->'시계 반대 방향')를 적절하게 대체하여 HumanML3D 데이터 세트의 크기를 두 배로 늘렸습니다.
KIT-ML(KIT Motion-Language Dataset)도 3,911개의 모션과 6,278개의 설명을 포함하는 관련 데이터세트입니다. HumanML3D 데이터세트와 동일한 절차에 따라 KIT-ML 데이터세트를 처리하고 이 저장소에 대한 액세스를 제공합니다. 단, KIT-ML 데이터 세트를 사용하려면 원본 논문을 인용하는 것을 잊지 마세요.
이 데이터세트가 귀하의 프로젝트에 유용하다면 이 코드베이스에서 귀하의 별표를 높이 평가하겠습니다. ??
?♀️ T2M - 시간적 VAE를 사용하여 텍스트 설명에서 3D 모션을 생성하는 방법을 학습하는 HumanML3D의 첫 번째 작업입니다.
? TM2T - 개별 모션 토큰을 통해 텍스트와 모션 간의 상호 매핑을 학습합니다.
? TM2D - 텍스트 지시로 댄스 모션을 생성합니다.
? MoMask - 잔여 VQ 및 생성 마스크 모델링을 사용한 새로운 수준의 text2motion 생성입니다.
KIT-ML 데이터 세트의 경우 [여기]에서 직접 다운로드할 수 있습니다. AMASS 데이터 세트의 배포 정책으로 인해 데이터를 직접 배포할 수 없습니다. 우리는 AMASS 데이터세트에서 HumanML3D 데이터세트를 재현할 수 있는 일련의 스크립트를 제공합니다.
이 저장소를 복제하고 가상 환경을 설치해야 합니다.
[2022/12/15] 업데이트 : matplotlib=3.3.4를 설치하면 생성된 데이터가 참조 데이터에서 약간 벗어나는 것을 방지할 수 있습니다. 문제 보기
conda env create -f 환경.yaml 콘다는 torch_render를 활성화합니다
설치에 실패한 경우 다음을 대신 설치할 수도 있습니다.
- 파이썬==3.7.10 - 넘피 - 사이피 - 파이토치 - Tqdm - 판다 - Matplotlib==3.3.4 // 애니메이션 전용 - ffmpeg==4.3.1 // 애니메이션 전용 - Spacy==2.3.4 // 텍스트 처리에만 해당
SMPL+H(AMASS 프로젝트에 사용되는 확장 SMPL+H 모델 선택)에서 SMPL+H 모드를 다운로드하고 DMPL(SMPL과 호환되는 DMPL 선택)에서 DMPL 모델을 다운로드합니다. 그런 다음 모든 모델을 "./body_model/" 아래에 배치합니다.
HumanML3D 데이터세트를 얻으려면 다음 스크립트를 실행해야 합니다.
raw_pose_processing.ipynb
Motion_representation.ipynb
cal_mean_variance.ipynb
이는 선택사항일 수 있습니다. 애니메이션이 필요하면 실행하세요.
animation.ipynb
반드시 다시 확인 단계를 거쳐야 합니다. 이는 HumanML3D 데이터세트를 얻는 올바른 방향으로 가고 있는지 확인하는 것을 목표로 합니다.
결국 "./HumanML3D" 폴더 아래의 데이터가 최종적으로 필요한 것입니다.
<DATA-DIR>./animations.rar //mp4 형식의 모든 모션 클립 애니메이션. ./new_joint_vecs.rar //3D 모션 위치에서 회전 불변 특징 및 회전 특징 벡터를 추출합니다. ./new_joints.rar //3D 모션 위치. ./texts.rar //모션 데이터에 대한 설명입니다. ./Mean.npy //new_joint_vecs의 모든 데이터에 대한 평균 ./Std.npy //new_joint_vecs의 모든 데이터에 대한 표준 편차 ./all.txt //모든 데이터의 이름 목록 ./train.txt //훈련 데이터 이름 목록 ./test.txt //테스트 데이터 이름 목록 ./train_val.txt //훈련 및 검증 데이터 이름 목록 ./val.txt //검증 데이터 이름 목록 ./all.txt //모든 데이터의 이름 목록
HumanML3D 데이터는 22개의 관절이 있는 SMPL 골격 구조를 따릅니다. KIT-ML에는 21개의 골격 관절이 있습니다. 자세한 운동학적 체인은 paraUtils를 참조하세요.
"MXXXXXX.*"(예: 'M000000.npy')에 이름이 지정된 파일은 해당 이름이 "XXXXXX.*"(예: '000000.npy')인 파일에서 미러링됩니다. 텍스트 파일과 모션 파일은 동일한 명명 프로토콜을 따릅니다. 즉, "./texts/XXXXXX.txt"(예: '000000.txt')의 텍스트는 "./new_joints(또는 new_joint_vecs)/XXXXXX.npy의 인간 모션을 정확하게 설명합니다. " (예: '000000.npy')
각 텍스트 파일은 다음과 같습니다.
남자가 왼쪽 다리로 무언가 또는 누군가를 차다.#a/DET man/NOUN kick/VERB what/PRON or/CCONJ someone/PRON with/ADP his/DET left/ADJ Leg/NOUN#0.0#0.0thestanding person kicks 왼발로 원래 자세로 돌아갑니다.#the/DET 스탠드/VERB person/NOUN kick/VERB with/ADP their/DET left/ADJ foot/NOUN before/ADP go/VERB back/ADV to/ADP their/DET 원래/ADJ 자세/NOUN#0.0#0.0a man kicks with someone or someone with his left 다리.#a/DET man/NOUN kick/VERB with/ADP what/PRON 또는/CCONJ 누군가/PRON with/ADP 그의/DET 왼쪽/ADJ 다리/NOUN#0.0#0.0그는 왼쪽 다리로 플라잉킥을 하고 있습니다#그/PRON은/AUX입니다 플라이/동사 킥/NOUN with/ADP his/DET left/ADJ 레그/NOUN#0.0#0.0
각 줄에는 # 으로 구분된 원래 설명(소문자) , 처리된 문장 , 시작 시간 , 종료 시간 의 네 부분으로 구성된 고유한 텍스트 주석이 있습니다.
일부 모션은 설명하기에는 너무 복잡하므로 필요한 경우 주석자가 특정 모션의 하위 부분을 설명할 수 있도록 허용합니다. 이러한 경우 시작 시간 과 종료 시간은 주석이 달린 모션 세그먼트를 나타냅니다. 그럼에도 불구하고 우리는 이것이 HumanML3D의 작은 부분만을 차지한다는 것을 관찰했습니다. 시작 시간 과 종료 시간은 기본적으로 0으로 설정됩니다. 이는 텍스트가 해당 모션의 전체 시퀀스에 캡션을 추가한다는 의미입니다.
ffmpeg를 설치할 수 없는 경우 '.mp4' 대신 '.gif'로 비디오에 애니메이션을 적용할 수 있습니다. 그러나 GIF 생성은 일반적으로 시간과 메모리 점유가 더 오래 걸립니다.
KIT-ML 데이터세트를 사용하는 경우 다음 논문을 인용해 보세요.
@article{Plappert2016, author = {Matthias Plappert and Christian Mandery and Tamim Asfour}, title = {The {KIT} Motion-Language Dataset}, journal = {Big Data} publisher = {Mary Ann Liebert Inc}, year = 2016, month = {dec}, volume = {4}, number = {4}, pages = {236--252}, url = {http://dx.doi.org/10.1089/big.2016.0028}, doi = {10.1089/big.2016.0028}, }
HumanML3D 데이터세트를 사용하는 경우 다음 논문을 인용해 보세요.
@InProceedings{Guo_2022_CVPR, author = {Guo, Chuan and Zou, Shihao and Zuo, Xinxin and Wang, Sen and Ji, Wei and Li, Xingyu and Cheng, Li}, title = {Generating Diverse and Natural 3D Human Motions From Text}, booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)}, month = {June}, year = {2022}, pages = {5152-5161} }
질문이나 의견이 있으시면 [email protected]로 Chuan Guo에게 연락하세요.