Spaces:
Running
on
Zero
Running
on
Zero
File size: 4,219 Bytes
b887ad8 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 |
import numpy as np
# Define a kinematic tree for the skeletal struture
kit_kinematic_chain = [[0, 11, 12, 13, 14, 15], [0, 16, 17, 18, 19, 20], [0, 1, 2, 3, 4], [3, 5, 6, 7], [3, 8, 9, 10]]
kit_raw_offsets = np.array(
[
[0, 0, 0],
[0, 1, 0],
[0, 1, 0],
[0, 1, 0],
[0, 1, 0],
[1, 0, 0],
[0, -1, 0],
[0, -1, 0],
[-1, 0, 0],
[0, -1, 0],
[0, -1, 0],
[1, 0, 0],
[0, -1, 0],
[0, -1, 0],
[0, 0, 1],
[0, 0, 1],
[-1, 0, 0],
[0, -1, 0],
[0, -1, 0],
[0, 0, 1],
[0, 0, 1]
]
)
t2m_raw_offsets = np.array([[0,0,0],
[1,0,0],
[-1,0,0],
[0,1,0],
[0,-1,0],
[0,-1,0],
[0,1,0],
[0,-1,0],
[0,-1,0],
[0,1,0],
[0,0,1],
[0,0,1],
[0,1,0],
[1,0,0],
[-1,0,0],
[0,0,1],
[0,-1,0],
[0,-1,0],
[0,-1,0],
[0,-1,0],
[0,-1,0],
[0,-1,0]])
t2m_kinematic_chain = [[0, 2, 5, 8, 11], [0, 1, 4, 7, 10], [0, 3, 6, 9, 12, 15], [9, 14, 17, 19, 21], [9, 13, 16, 18, 20]]
t2m_left_hand_chain = [[20, 22, 23, 24], [20, 34, 35, 36], [20, 25, 26, 27], [20, 31, 32, 33], [20, 28, 29, 30]]
t2m_right_hand_chain = [[21, 43, 44, 45], [21, 46, 47, 48], [21, 40, 41, 42], [21, 37, 38, 39], [21, 49, 50, 51]]
kit_kinematic_tree = [
[0, 1, 2, 3, 4], # body
[3, 5, 6, 7], # right arm
[3, 8, 9, 10], # left arm
[0, 11, 12, 13, 14, 15], # right leg
[0, 16, 17, 18, 19, 20], # left leg
]
humanml3d_kinematic_tree = [
[0, 3, 6, 9, 12, 15], # body
[9, 14, 17, 19, 21], # right arm
[9, 13, 16, 18, 20], # left arm
[0, 2, 5, 8, 11], # right leg
[0, 1, 4, 7, 10], # left leg
]
kit_tgt_skel_id = '03950'
t2m_tgt_skel_id = '000021'
KIT_JOINT_NAMES = [
"pelvis", # 0
"spine_1", # 1
"spine_3", # 2
"neck", # 3
"head", # 4
"left_shoulder", # 5
"left_elbow", # 6
"left_wrist", # 7
"right_shoulder", # 8
"right_elbow", # 9
"right_wrist", # 10
"left_hip", # 11
"left_knee", # 12
"left_ankle", # 13
"left_heel", # 14
"left_foot", # 15
"right_hip", # 16
"right_knee", # 17
"right_ankle", # 18
"right_heel", # 19
"right_foot", # 20
]
HumanML3D_JOINT_NAMES = [
"pelvis", # 0: root
"left_hip", # 1: lhip
"right_hip", # 2: rhip
"spine_1", # 3: belly
"left_knee", # 4: lknee
"right_knee", # 5: rknee
"spine_2", # 6: spine
"left_ankle", # 7: lankle
"right_ankle", # 8: rankle
"spine_3", # 9: chest
"left_foot", # 10: ltoes
"right_foot", # 11: rtoes
"neck", # 12: neck
"left_clavicle", # 13: linshoulder
"right_clavicle", # 14: rinshoulder
"head", # 15: head
"left_shoulder", # 16: lshoulder
"right_shoulder", # 17: rshoulder
"left_elbow", # 18: lelbow
"right_elbow", # 19: relbow
"left_wrist", # 20: lwrist
"right_wrist", # 21: rwrist
]
HumanML3D2KIT = {
0:0, # pelvis--pelvis
1:16, # left_hip--right_hip
2:11, # right_hip--left_hip
3:1, # spine_1--spine_1
4:17, # left_knee--right_knee
5:12, # right_knee--left_knee
6:1, # spine_2--spine_1
7:18, # left_ankle--right_ankle
8:13, # right_ankle--left_ankle
9:2, # spine_3--spine_3
10:20, # left_foot--right_foot
11:15, # right_foot--left_foot
12:3, # neck--neck
13:8, # left_clavicle--right_shoulder
14:5, # right_clavicle--left_shoulder
15:4, # head--head
16:8, # left_shoulder--right_shoulder
17:5, # right_shoulder--left_shoulder
18:9, # left_elbow--right_elbow
19:6, # right_elbow--left_elbow
20:10, # left_wrist--right_wrist
21:7, # right_wrist--left_wrist
} |