Files
hand-motion-pipeline/third_party/Dyn-HaMR/dyn-hamr/vis/fig_specs.py
T

246 lines
9.2 KiB
Python

import torch
import numpy as np
def get_seq_figure_skip(seq_name=None):
if seq_name == "017437_mpii_test":
return 15
if seq_name == "012968_mpii_test":
return 15
if seq_name == "recording_20211002_S03_S18_04-all-100-200":
return 11
return 10
def get_seq_static_lookat_points(seq_name=None, bounds=None):
if seq_name == "002276_mpii_test":
top_source = torch.tensor([-0.5, -3.0, -2.0])
top_target = torch.tensor([0.0, 0.0, 4.0])
side_source = torch.tensor([6.0, -2.0, 2.0])
side_target = torch.tensor([2.0, 0.0, 6.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "002374_mpii_test":
top_source = torch.tensor([-4.0, 0.0, 0.0])
top_target = torch.tensor([-2.0, 2.0, 3.0])
side_source = torch.tensor([-7.0, 1.0, 7.0])
side_target = torch.tensor([0.0, 1.0, 8.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "003742_mpii_test":
top_source = torch.tensor([3.0, -2.0, -6])
top_target = torch.tensor([3.0, 1.0, 2.0])
side_source = torch.tensor([-5.0, -1.0, -2])
side_target = torch.tensor([2.0, 0.0, 5])
return (top_source, top_target), (side_source, side_target)
if seq_name == "003747_mpii_test":
top_source = torch.tensor([-5.0, -2.0, -5])
top_target = torch.tensor([-3.0, 2.0, 1.0])
side_source = torch.tensor([-9.0, -1.0, -4])
side_target = torch.tensor([-3.0, 2.0, 3])
return (top_source, top_target), (side_source, side_target)
if seq_name == "003943_mpii_test":
top_source = torch.tensor([0, -1, -2])
top_target = torch.tensor([0, 1, 3])
side_source = torch.tensor([6, 0, 1])
side_target = torch.tensor([0, 0, 5])
return (top_source, top_target), (side_source, side_target)
if seq_name == "006537_mpii_test":
top_source = torch.tensor([0, -4, -1])
top_target = torch.tensor([1.0, 0.0, 5.0])
side_source = torch.tensor([5, -2, 0])
side_target = torch.tensor([1.0, 1.0, 7.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "007684_mpii_test":
top_source = torch.tensor([-2, -4, -6])
top_target = torch.tensor([0.5, 0.0, 4.0])
side_source = torch.tensor([-8, -3, -2])
side_target = torch.tensor([1.0, 0.0, 5.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "009039_mpii_test":
top_source = torch.tensor([-2.0, -3.0, -1.5])
top_target = torch.tensor([1.0, 0.0, 3.0])
side_source = torch.tensor([6, -2, -1.5])
side_target = torch.tensor([2.0, 0.0, 6.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "009607_mpii_test":
top_source = torch.tensor([0, -3, -1])
top_target = torch.tensor([0, 0, 5])
side_source = torch.tensor([-6, -0.5, 2])
side_target = torch.tensor([-1.0, 0.5, 7])
return (top_source, top_target), (side_source, side_target)
if seq_name == "012968_mpii_test":
top_source = torch.tensor([-0.5, -3, -4])
top_target = torch.tensor([0.0, 0.5, 2.0])
side_source = torch.tensor([7, -4, 0])
side_target = torch.tensor([0, 0.5, 2.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "014531_mpii_test":
top_source = torch.tensor([0, -2, -2])
top_target = torch.tensor([0, 0, 2])
side_source = torch.tensor([-2, 0, -2])
side_target = torch.tensor([0, 0, 2])
return (top_source, top_target), (side_source, side_target)
if seq_name == "015933_mpii_test":
top_source = torch.tensor([0.0, 0.5, -5.0])
top_target = torch.tensor([0.0, 2.0, -2.0])
side_source = torch.tensor([5.0, 1.5, -3.0])
side_target = torch.tensor([0.0, 2.5, 1.5])
return (top_source, top_target), (side_source, side_target)
if seq_name == "016195_mpii_test":
top_source = torch.tensor([0, -1, -2])
top_target = torch.tensor([0, 1, 1])
side_source = torch.tensor([-3, 0, 1])
side_target = torch.tensor([0, 1, 2])
return (top_source, top_target), (side_source, side_target)
if seq_name == "018061_mpii_test":
top_source = torch.tensor([4, -1, 2])
top_target = torch.tensor([1, 1, 3])
side_source = torch.tensor([-3, 0, 4])
side_target = torch.tensor([1, 1, 3])
return (top_source, top_target), (side_source, side_target)
if seq_name == "018713_mpii_test":
top_source = torch.tensor([0, -1, -1])
top_target = torch.tensor([0, 0.5, 2])
side_source = torch.tensor([3, 0, 1])
side_target = torch.tensor([0, 0, 3])
return (top_source, top_target), (side_source, side_target)
if seq_name == "022691_mpii_test":
top_source = torch.tensor([0, -4, -4])
top_target = torch.tensor([-2.0, 0.0, 1.0])
side_source = torch.tensor([-5, -2, -5])
side_target = torch.tensor([-3.5, 0.0, 1.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "023390_mpii_test":
top_source = torch.tensor([0.0, -1.5, -1.0])
top_target = torch.tensor([0.0, 0.0, 2.0])
side_source = torch.tensor([4.0, -0.5, 0])
side_target = torch.tensor([1.0, 0.5, 4])
# top_source = torch.tensor([0.0, -3.0, -2.0])
# top_target = torch.tensor([0.0, 0.5, 2.0])
# side_source = torch.tensor([5.0, -0.5, -3])
# side_target = torch.tensor([1.0, 0.5, 4])
return (top_source, top_target), (side_source, side_target)
if seq_name=="024165_mpii_test":
top_source = torch.tensor([0, -3, -3])
top_target = torch.tensor([0, 0, 3])
side_source = torch.tensor([-4, -1, -2])
side_target = torch.tensor([0, 0, 3])
return (top_source, top_target), (side_source, side_target)
if seq_name == "024154_mpii_test":
top_source = torch.tensor([-1, -0.5, 1])
top_target = torch.tensor([-1, 1, 8])
side_source = torch.tensor([-4, 1, 3])
side_target = torch.tensor([-1, 1, 8])
return (top_source, top_target), (side_source, side_target)
# if seq_name == "024159_mpii_test":
# top_source = torch.tensor([-4.0, -2.0, -6.0])
# top_target = torch.tensor([-4.0, 0.0, 0.0])
# side_source = torch.tensor([-12, -1, -2])
# side_target = torch.tensor([-10.0, 0.0, 0.0])
# return (top_source, top_target), (side_source, side_target)
if seq_name == "023962_mpii_test":
top_source = torch.tensor([0, -0.5, -2])
top_target = torch.tensor([0, 0.5, 2])
side_source = torch.tensor([3, 0.5, 0])
side_target = torch.tensor([0, 0, 2])
return (top_source, top_target), (side_source, side_target)
if seq_name == "017437_mpii_test":
top_source = torch.tensor([0, -8, -6])
top_target = torch.tensor([-2.0, -1.0, 2.0])
side_source = torch.tensor([-5, -1, -7])
side_target = torch.tensor([-3.0, -1.0, 1.0])
return (top_source, top_target), (side_source, side_target)
if seq_name == "recording_20211002_S03_S18_04-all-100-200":
top_source = torch.tensor([1.0, -1, -4.5])
top_target = torch.tensor([1.0, 0.0, 1])
side_source = torch.tensor([1.0, 0.5, -4.5])
side_target = torch.tensor([1.0, 0.5, 1])
return (top_source, top_target), (side_source, side_target)
if seq_name == "recording_20211002_S03_S18_04-all-100-500":
top_source = torch.tensor([0.0, -0.5, -3])
top_target = torch.tensor([0.0, 1.0, 1])
side_source = torch.tensor([-2.0, 0.5, -3])
side_target = torch.tensor([0.0, 1.0, 2])
return (top_source, top_target), (side_source, side_target)
if seq_name == "recording_20211002_S03_S18_01-all-700-862":
top_source = torch.tensor([0.5, -2.0, -2])
top_target = torch.tensor([0.5, -0.5, 2])
side_source = torch.tensor([2.0, -0.5, -2])
side_target = torch.tensor([0.5, -0.5, 1])
return (top_source, top_target), (side_source, side_target)
if seq_name == "recording_20220315_S21_S30_02-all-0-100":
top_source = torch.tensor([0.0, -1, -2])
top_target = torch.tensor([0.0, 0.5, 1])
side_source = torch.tensor([-2.0, 0.0, -1])
side_target = torch.tensor([0.0, 0.5, 1])
return (top_source, top_target), (side_source, side_target)
if bounds is not None:
# (3), (3), (3)
bb_min, bb_max, center = bounds
print("SCENE BOUNDS", bb_min, bb_max, center)
length = torch.abs(bb_max - bb_min).max()
print(length)
top_source = center + torch.tensor([0.0, -2.0, -0.9 * length])
side_source = center + torch.tensor([0.5 * length, -0.5, -0.7 * length])
return (top_source, center), (side_source, center)
top_source = torch.tensor([0.0, -2.0, -3.0])
top_target = torch.tensor([0.0, 0.0, 1.0])
side_source = torch.tensor([3.0, -1.0, -1.0])
side_target = torch.tensor([0.0, 0.0, 1.0])
return (top_source, top_target), (side_source, side_target)