This commit is contained in:
2023-08-24 11:36:22 +00:00
parent 59f67a2495
commit afd482522d
36 changed files with 2194 additions and 291 deletions
+8 -6
View File
@@ -10,6 +10,7 @@ parser.add_argument('--config', type=str)
parser.add_argument('--debug', action='store_true')
parser.add_argument('--iteration', type=str, default='200000')
parser.add_argument('-g', '--gpu', type=str, default='0')
parser.add_argument('-f', '--final', action='store_true')
args = vars(parser.parse_args())
if args['debug']:
@@ -68,7 +69,7 @@ def get_normal_loss(pred, gt, mask):
return n_loss.cpu().numpy()
def get_collision_loss(pred, body, mask):
c_loss, c_ratio = collision_loss(torch.from_numpy(pred).unsqueeze(0).to(device), torch.from_numpy(body).unsqueeze(0).to(device), torch.from_numpy(mask).unsqueeze(0).to(device))
c_loss, c_ratio = collision_loss(torch.from_numpy(pred).unsqueeze(0).to(device), torch.from_numpy(body).unsqueeze(0).to(device), torch.from_numpy(mask).unsqueeze(0).to(device), thr=0.0005)
return c_loss.cpu().numpy()[0], c_ratio.cpu().numpy()
@@ -115,10 +116,15 @@ def calculate():
errors_edge.append((str(frame), get_edge_loss(pred, gt, new_mask)))
else:
for i in range(4):
levels = [0,1,2,3] if not args['final'] else [3]
for i in levels:
_pred = pred.item()[f'lvl{i}']
c_loss, c_ratio = get_collision_loss(_pred, body, new_mask)
errors_collision.append((f'{frame}_lvl{i}', c_loss))
errors_collision_ratio.append((f'{frame}_lvl{i}', c_ratio))
errors_normal.append((f'{frame}_lvl{i}', get_normal_loss(_pred, gt, new_mask)))
errors_edge.append((f'{frame}_lvl{i}', get_edge_loss(_pred, gt, new_mask)))
# faces = fix_data['faces']
# body_faces = np.load('smpl/smpl_faces.npy').astype(np.int32)
@@ -143,10 +149,6 @@ def calculate():
# fig.show()
errors_collision.append((f'{frame}_lvl{i}', c_loss))
errors_collision_ratio.append((f'{frame}_lvl{i}', c_ratio))
errors_normal.append((f'{frame}_lvl{i}', get_normal_loss(_pred, gt, new_mask)))
errors_edge.append((f'{frame}_lvl{i}', get_edge_loss(_pred, gt, new_mask)))
# save errors to a csv file