def setup(self, stage=None): super().setup(stage=stage) cfg = self.cfg if HydraConfig.initialized(): # Current directory changed! # Update paths with original_cwd csv_path = to_absolute_path(cfg.data.csv_path) root_dir = to_absolute_path(cfg.data.root_dir) else: # Keep relative paths csv_path = cfg.data.csv_path root_dir = cfg.data.root_dir df = pd.read_csv(csv_path) df[["x", "y", "x1", "y1"]] = pd.DataFrame( np.stack(df["box"].apply(ast.literal_eval)).astype(np.float32) ) train_df = df.loc[df["fold"] != cfg.data.valid_fold].copy() valid_df = df.loc[df["fold"] == cfg.data.valid_fold].copy() self.train_dataset = PennFudanDataset( train_df, root_dir=root_dir, transforms=self.train_transforms, mode="train", ) self.val_dataset = PennFudanDataset( valid_df, root_dir=root_dir, transforms=self.val_transforms, mode="val" )
def __init__(self, cfg: DictConfig, train_transforms=None, val_transforms=None): super().__init__( train_transforms=train_transforms, val_transforms=val_transforms, test_transforms=val_transforms, ) self.train_transforms = train_transforms self.val_transforms = val_transforms self.cfg = cfg if HydraConfig.initialized(): # Current directory changed! # Update paths with original_cwd self.data_csv_path = to_absolute_path(cfg.data.csv_path) self.root_dir = to_absolute_path(cfg.data.root_dir) else: # Keep relative paths self.data_csv_path = cfg.data.csv_path self.root_dir = cfg.data.root_dir