Exemple #1
0
def scene_synthetic_cube():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()

    reconstruction = data.get_reconstruction()
    input_data = synthetic_scene.SyntheticInputData(reconstruction, 40, 0.0,
                                                    0.0, False)
    return reconstruction, input_data.tracks_manager
Exemple #2
0
def scene_synthetic_cube():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()

    reference = geo.TopocentricConverter(47.0, 6.0, 0)
    reconstruction = data.get_reconstruction()
    input_data = synthetic_scene.SyntheticInputData(reconstruction, reference,
                                                    40, 0.0, 0.0, False)
    return reconstruction, input_data.tracks_manager
Exemple #3
0
def pairs_and_poses():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()
    reconstruction = data.get_reconstruction()

    scale = 0.0
    features, _, _, tracks_manager = data.get_tracks_data(40, scale)

    points_keys = list(reconstruction.points.keys())
    pairs, poses = defaultdict(list), defaultdict(list)
    for (im1, im2), tuples in tracks_manager.get_all_common_observations_all_pairs().items():
        f1 = [p.point for k, p, _ in tuples if k in points_keys]
        f2 = [p.point for k, _, p in tuples if k in points_keys]
        pairs[im1, im2].append((f1, f2))
        poses[im1, im2] = reconstruction.shots[im2].pose.\
            compose(reconstruction.shots[im1].pose.inverse())

    camera = list(reconstruction.cameras.values())[0]
    return pairs, poses, camera, features, tracks_manager, reconstruction
Exemple #4
0
def pairs_and_poses():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()

    reconstruction = data.get_reconstruction()
    input_data = synthetic_scene.SyntheticInputData(reconstruction, 40, 0.0,
                                                    0.0, False)
    features, tracks_manager = input_data.features, input_data.tracks_manager

    points_keys = list(reconstruction.points.keys())
    pairs, poses = defaultdict(list), defaultdict(list)
    for im1, im2 in tracks_manager.get_all_pairs_connectivity():
        tuples = tracks_manager.get_all_common_observations(im1, im2)
        f1 = [p.point for k, p, _ in tuples if k in points_keys]
        f2 = [p.point for k, _, p in tuples if k in points_keys]
        pairs[im1, im2].append((f1, f2))
        pose1 = reconstruction.shots[im1].pose
        pose2 = reconstruction.shots[im2].pose
        poses[im1, im2] = pose2.relative_to(pose1)

    camera = list(reconstruction.cameras.values())[0]
    return pairs, poses, camera, features, tracks_manager, reconstruction
Exemple #5
0
def pairs_and_poses():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()
    reconstruction = data.get_reconstruction()

    scale = 0.0
    features, _, _, graph = data.get_tracks_data(40, scale)

    pairs, poses = defaultdict(list), defaultdict(list)
    for track in reconstruction.points:
        for im1, im2 in combinations(graph[track].keys(), 2):
            f1 = features[im1][graph[track][im1]['feature_id']][:2]
            f2 = features[im2][graph[track][im2]['feature_id']][:2]
            if im1 > im2:
                im1, im2 = im2, im1
                f1, f2, = f2, f1
            pairs[im1, im2].append((f1, f2))

            if not poses[im1, im2]:
                poses[im1, im2] = reconstruction.shots[im2].pose.\
                    compose(reconstruction.shots[im1].pose.inverse())

    camera = list(reconstruction.cameras.values())[0]
    return pairs, poses, camera, features, graph, reconstruction
Exemple #6
0
def scene_synthetic_cube():
    np.random.seed(42)
    data = synthetic_examples.synthetic_cube_scene()
    _, _, _, tracks_manager = data.get_tracks_data(40, 0.0)
    return data.get_reconstruction(), tracks_manager