generate remasked data sample
This commit is contained in:
+16
-12
@@ -242,22 +242,25 @@ def check(folder, frame):
|
||||
|
||||
|
||||
def remask(folder, frame, mask, out_folder):
|
||||
id, frame_nr, garment = frame.split()
|
||||
id, frame_nr = frame.split('_')
|
||||
frame_nr = int(frame_nr)
|
||||
info = loadInfo(os.path.join(folder, id, 'info.mat'))
|
||||
|
||||
if frame_nr == 0:
|
||||
mesh_static = read_static_garment(folder, id, garment)
|
||||
mesh_static = np.load(os.path.join(folder, 'mesh_static', f'{id}.npz'))['mesh_static']
|
||||
mesh_static_new = np.zeros((14475,3), dtype=np.float32)
|
||||
mesh_static_new[mask,:] = mesh_static[mask,:]
|
||||
np.savez_compressed(os.path.join(out_folder, 'mesh_static', f'{id}.npz'), mesh_static=mesh_static_new)
|
||||
|
||||
mesh_posed = read_posed_garment_frame(folder, id, garment, frame_nr, mask=None, shape=None, pose=info['poses'][:,frame_nr], deorient=True, unshape=None)
|
||||
mesh_posed = mesh_posed[mask,:]
|
||||
os.makedirs(os.path.join(out_folder, 'mesh_posed_no_orient'), exist_ok=True)
|
||||
# mesh_posed = read_posed_garment_frame(folder, id, garment, frame_nr, mask=None, shape=None, pose=info['poses'][:,frame_nr], deorient=True, unshape=None)
|
||||
mesh_posed = np.load(os.path.join(folder, 'mesh_posed_no_orient', f'{id}_{frame_nr}.npz'))['mesh_posed_no_orient']
|
||||
mesh_posed_new = np.zeros((14475,3), dtype=np.float32)
|
||||
mesh_posed_new[mask,:] = mesh_posed[mask,:]
|
||||
np.savez_compressed(os.path.join(out_folder, 'mesh_posed_no_orient', f'{id}_{frame_nr}.npz'), mesh_posed_no_orient=mesh_posed)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
folder = r'D:\Work\Dataset\cloth3d\train'
|
||||
folder = '/data-local/127/train'
|
||||
frames = [f'00761_{i}' for i in range(300)]
|
||||
root = '/'.join(folder.split('/')[:-1])
|
||||
type = folder.split('/')[-1]
|
||||
@@ -270,12 +273,13 @@ if __name__ == "__main__":
|
||||
orient_mod = '_no_orient' if use_no_orient else ''
|
||||
shape_mod = '_no_shape' if no_shape else ''
|
||||
|
||||
mask = np.load('/data-net/dataset/00761/mesh_mask/00761.npy')
|
||||
faces = np.load('/data-net/dataset/00761/faces/00761.npy')
|
||||
|
||||
while True:
|
||||
frame = random.choice(frames)
|
||||
frame = '00761 0 Tshirt'
|
||||
for frame in frames:
|
||||
# frame = random.choice(frames)
|
||||
# frame = '00761 0 Tshirt'
|
||||
|
||||
mask, faces = check(folder, frame)
|
||||
remask(folder, frame, mask, 'temp/00761')
|
||||
remask(folder, frame, mask, '/data-net/dataset/00761')
|
||||
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user