def merge_depthmaps( data: UndistortedDataSet, reconstruction: types.Reconstruction ) -> t.Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray, np.ndarray]: """Merge depthmaps into a single point cloud.""" shot_ids = [ s for s in reconstruction.shots if data.pruned_depthmap_exists(s) ] def depthmap_provider(shot_id): return data.load_pruned_depthmap(shot_id) return merge_depthmaps_from_provider(data, shot_ids, depthmap_provider)
def merge_depthmaps(data: UndistortedDataSet, reconstruction): """Merge depthmaps into a single point cloud.""" logger.info("Merging depthmaps") shot_ids = [ s for s in reconstruction.shots if data.pruned_depthmap_exists(s) ] if not shot_ids: logger.warning("Depthmaps contain no points. Try using more images.") return def depthmap_provider(shot_id): return data.load_pruned_depthmap(shot_id) merge_depthmaps_from_provider(data, shot_ids, depthmap_provider, data.point_cloud_file())