Thank you for your excellent work. I read the mixamo_loader.py file and realized I needed to read the NPZ file. Can you provide the code for this part of the data processing?
def _preload(self):
for idx in self.names:
c = np.load(os.path.join(self.data_dir, 'npz', idx+'.npz'))
v = c["v"]
center = (np.max(v, 0, keepdims=True) + np.min(v, 0, keepdims=True)) / 2
scale = np.max(v[:, 1], 0) - np.min(v[:, 1], 0)
v = (v - center) / scale
joints = c["joints"]
joints = (joints - center) / scale
self.vs.append(v)
self.fs.append(c["f"].astype(int))
self.joints.append(joints)
self.parents.append(c["parents"])
self.joint_names.append(c["joint_names"].tolist())
self.weights.append(csr_matrix((c["weights_data"], (c["weights_rows"], c["weights_cols"])),
shape=c["weights_shape"], dtype=np.float32))
self.tpl_edge_indexs.append(c["tpl_edge_index"].astype(int).T)
self.geo_edge_indexs.append(np.stack([c["geo_rows"].astype(np.int32), c["geo_cols"].astype(np.int32)], 0))
Thank you for your excellent work. I read the mixamo_loader.py file and realized I needed to read the NPZ file. Can you provide the code for this part of the data processing?