|
|
|
|
|
|
|
|
|
|
|
|
|
import os |
|
from dust3r_visloc.datasets.base_colmap import BaseVislocColmapDataset |
|
|
|
|
|
class VislocAachenDayNight(BaseVislocColmapDataset): |
|
def __init__(self, root, subscene, pairsfile, topk=1, cache_sfm=False): |
|
assert subscene in [None, '', 'day', 'night', 'all'] |
|
self.subscene = subscene |
|
image_path = os.path.join(root, 'images') |
|
map_path = os.path.join(root, 'mapping/colmap/reconstruction') |
|
query_path = os.path.join(root, 'kapture', 'query') |
|
pairsfile_path = os.path.join(root, 'pairsfile/query', pairsfile + '.txt') |
|
super().__init__(image_path=image_path, map_path=map_path, |
|
query_path=query_path, pairsfile_path=pairsfile_path, |
|
topk=topk, cache_sfm=cache_sfm) |
|
self.scenes = [filename for filename in self.scenes if filename in self.pairs] |
|
if self.subscene == 'day' or self.subscene == 'night': |
|
self.scenes = [filename for filename in self.scenes if self.subscene in filename] |
|
|