from utils.print_easydict import print_easydict args = parse_args('Deep learning of graph matching evaluation code.') import importlib mod = importlib.import_module(cfg.MODULE) Net = mod.Net torch.manual_seed(cfg.RANDOM_SEED) image_dataset = ScannetDataset(cfg.DATASET_FULL_NAME, sets='test', length=cfg.EVAL.SAMPLES, obj_resize=cfg.PAIR.RESCALE, expand_region=cfg.EXPAND_REGION) dataloader = get_dataloader(image_dataset, shuffle=False) device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model = Net(cfg.OUTPUT_SIZE, cfg.SCALES) model = model.to(device) #model = DataParallel(model, device_ids=cfg.GPUS) if not Path(cfg.OUTPUT_PATH).exists(): Path(cfg.OUTPUT_PATH).mkdir(parents=True) now_time = datetime.now().strftime('%Y-%m-%d-%H-%M-%S') with DupStdoutFileManager( str(Path(cfg.OUTPUT_PATH) / ('eval_log_' + now_time + '.log'))) as _: print_easydict(cfg) classes = dataloader.dataset.classes
dataset_len = { 'train': cfg.TRAIN.EPOCH_ITERS * cfg.BATCH_SIZE, 'test': cfg.EVAL.SAMPLES } image_dataset = { x: ScannetDataset(cfg.DATASET_FULL_NAME, sets=x, length=dataset_len[x], cls=cfg.TRAIN.CLASS if x == 'train' else None, obj_resize=cfg.PAIR.RESCALE, expand_region=cfg.EXPAND_REGION) for x in ('train', 'test') } dataloader = { x: get_dataloader(image_dataset[x], fix_seed=(x == 'test')) for x in ('train', 'test') } device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model = Net( cfg.OUTPUT_SIZE, cfg.SCALES, ) model = model.cuda() criterion = CrossEntropyLoss() optimizer = optim.SGD(model.parameters(), lr=cfg.TRAIN.LR,
from utils.print_easydict import print_easydict args = parse_args('Deep learning of graph matching evaluation code.') import importlib mod = importlib.import_module(cfg.MODULE) Net = mod.Net torch.manual_seed(cfg.RANDOM_SEED) image_dataset = ScannetDataset(cfg.DATASET_FULL_NAME, sets='test', length=cfg.EVAL.SAMPLES, obj_resize=cfg.PAIR.RESCALE, expand_region=cfg.EXPAND_REGION) dataloader = get_dataloader(image_dataset) device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model = Net(cfg.OUTPUT_SIZE, cfg.SCALES) model = model.to(device) if not Path(cfg.OUTPUT_PATH).exists(): Path(cfg.OUTPUT_PATH).mkdir(parents=True) now_time = datetime.now().strftime('%Y-%m-%d-%H-%M-%S') with DupStdoutFileManager( str(Path(cfg.OUTPUT_PATH) / ('eval_log_' + now_time + '.log'))) as _: print_easydict(cfg) classes = dataloader.dataset.classes pcks = eval_model(