def get_closest_and_furthest_single_scene(data_dir, demo_base_name): verb_data_accessor = multi_item_verbs.VerbDataAccessor(test_info_dir=osp.join("test", BASE_DATA_DIR, data_dir)) abs_exp_dir = osp.join(osp.dirname(osp.abspath(__file__)), "exp_pcs") possible_demo_names = get_possible_demo_names(demo_base_name, 2) # assuming that the first possible_demo_name is a demo verb = verb_data_accessor.get_verb_from_demo_name(possible_demo_names[0]) verb_pc_name_dict = get_exp_pcs_for_verb(verb) exp_clouds = [] for pc_file in verb_pc_name_dict[demo_base_name]: exp_clouds.append(np.loadtxt(osp.join(abs_exp_dir, pc_file))) closest_demo, furthest_demo = scene_diff.get_closest_and_furthest_demo(verb_data_accessor, verb, exp_clouds, ignore=possible_demo_names) return closest_demo, furthest_demo
def get_closest_and_furthest_scenes(data_dir, verb): verb_data_accessor = multi_item_verbs.VerbDataAccessor(test_info_dir=osp.join("test", BASE_DATA_DIR, data_dir)) abs_exp_dir = osp.join(osp.dirname(osp.abspath(__file__)), "exp_pcs") verb_pc_name_dict = get_exp_pcs_for_verb(verb) closest, furthest = {}, {} for demo_base_name in verb_pc_name_dict.keys(): exp_clouds = [] for pc_file in verb_pc_name_dict[demo_base_name]: exp_clouds.append(np.loadtxt(osp.join(abs_exp_dir, pc_file))) possible_demo_names = get_possible_demo_names(demo_base_name, 2) closest_demo, furthest_demo = scene_diff.get_closest_and_furthest_demo(verb_data_accessor, verb, exp_clouds, ignore=possible_demo_names) closest[demo_base_name] = closest_demo furthest[demo_base_name] = furthest_demo return closest, furthest