7e4ef6f98b
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
246 lines
9.2 KiB
Python
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)
|