示例#1
0
    def parse_colmap_model_folder(
        model_idp,
        image_dp,
        image_fp_type,
        depth_map_idp=None,
        suppress_distortion_warnings=False,
        op=None,
    ):
        """Parse a :code:`Colmap` model."""
        log_report("INFO", "Parse Colmap model folder: " + model_idp, op)

        assert ColmapFileHandler._is_valid_model_folder(model_idp)
        ext = ColmapFileHandler._get_model_folder_ext(model_idp)

        # cameras represent information about the camera model
        # images contain pose information
        id_to_col_cameras, id_to_col_images, id_to_col_points3D = read_model(
            model_idp, ext=ext)

        cameras = ColmapFileHandler._convert_cameras(
            id_to_col_cameras,
            id_to_col_images,
            image_dp,
            image_fp_type,
            depth_map_idp,
            suppress_distortion_warnings,
            op,
        )

        points3D = ColmapFileHandler._convert_points(id_to_col_points3D)

        return cameras, points3D
    def parse_colmap_model_folder(model_idp, image_dp, image_fp_type, op):

        op.report({'INFO'}, 'Parse Colmap model folder: ' + model_idp)

        ifp_s = os.listdir(model_idp)

        if len(set(ifp_s).intersection(['cameras.bin', 'images.bin', 'points3D.bin'])) == 3:
            ext = '.bin'
        elif len(set(ifp_s).intersection(['cameras.txt', 'images.txt', 'points3D.txt'])) == 3:
            ext = '.txt'
        else:
            assert False    # No valid model folder

        # cameras represent information about the camera model
        # images contain pose information
        id_to_col_cameras, id_to_col_images, id_to_col_points3D = read_model(
            model_idp, ext=ext)

        op.report({'INFO'}, 'id_to_col_cameras: ' + str(id_to_col_cameras))

        cameras = ColmapFileHandler.convert_cameras(
            id_to_col_cameras, id_to_col_images, image_dp, image_fp_type, op)

        points3D = ColmapFileHandler.convert_points(
            id_to_col_points3D)

        return cameras, points3D
示例#3
0
    def parse_colmap_model_folder(model_idp, image_dp, image_fp_type, op):

        op.report({'INFO'}, 'Parse Colmap model folder: ' + model_idp)

        assert ColmapFileHandler.is_valid_model_folder(model_idp)
        ext = ColmapFileHandler.get_model_folder_ext(model_idp)

        # cameras represent information about the camera model
        # images contain pose information
        id_to_col_cameras, id_to_col_images, id_to_col_points3D = read_model(
            model_idp, ext=ext)

        op.report({'INFO'}, 'id_to_col_cameras: ' + str(id_to_col_cameras))

        cameras = ColmapFileHandler.convert_cameras(id_to_col_cameras,
                                                    id_to_col_images, image_dp,
                                                    image_fp_type, op)

        points3D = ColmapFileHandler.convert_points(id_to_col_points3D)

        return cameras, points3D