in build_graph/localization_network/dataset.py [0:0]
def __init__(self, root, split):
super().__init__()
dset = epic.EPICInteractions(root, split, 32)
for key in ['split', 'annotations', 'data', 'train_vids', 'val_vids', 'train_data', 'val_data', 'load_image']:
setattr(self, key, getattr(dset, key))
self.retr_dir = 'build_graph/data/epic/'
seed = 8275 if self.split=='val' else None
self.rs = np.random.RandomState(seed)
self.transform = util.default_transform('val')
self.uid_to_entry = {entry['uid']:entry for entry in self.data}
videos = self.train_vids if self.split=='train' else self.val_vids
bg_frames = {v_id:set([(v_id, f_id) for f_id in range(1, self.annotations['vid_lengths'][v_id])]) for v_id in videos}
for entry in self.data:
bg_frames[entry['v_id']] -= set([(entry['v_id'], f_id) for f_id in range(entry['start'], entry['stop']+1)])
self.bg_frames = bg_frames
self.FPS = 60
self.pdist = {}
self.pdist['homography'] = self.parse_pdist(pdist_fl = f'{self.retr_dir}/{self.split}_homography_inliers.pth',
keep_fn = lambda mat: (mat>self.min_inliers))
self.pdist['r152'] = self.parse_pdist(pdist_fl = f'{self.retr_dir}/{self.split}_pdist_r152_samek.pth',
keep_fn = lambda mat: (mat==mat))
self.data = [entry for entry in self.data if entry['uid'] in self.pdist['homography']['domain']]
print (f'Keeping {len(self.data)} entries in {self.split}')