os.path.join(model_save_path, 'lib')) if torch.cuda.is_available() and not opt.usegpu: print("WARNING: You have a CUDA device, so you should probably run with --usegpu") # Load Seeds random.seed(ts.SEED) np.random.seed(ts.SEED) torch.manual_seed(ts.SEED) # Define Data Loaders pin_memory = False if opt.usegpu: pin_memory = True train_dataset = SegDataset(ts.TRAINING_LMDB) assert train_dataset train_align_collate = AlignCollate( 'training', ts.N_CLASSES, ts.MAX_N_OBJECTS, ts.MEAN, ts.STD, ts.IMAGE_HEIGHT, ts.IMAGE_WIDTH, random_hor_flipping=ts.HORIZONTAL_FLIPPING, random_ver_flipping=ts.VERTICAL_FLIPPING, random_transposing=ts.TRANSPOSING, random_90x_rotation=ts.ROTATION_90X, random_rotation=ts.ROTATION,
model_dir = os.path.dirname(model_path) sys.path.insert(0, model_dir) from lib import SegDataset, Model, AlignCollate from settings import ModelSettings ms = ModelSettings() if torch.cuda.is_available() and not opt.usegpu: print('WARNING: You have a CUDA device, so you should probably run with --cuda') # Define Data Loaders pin_memory = False if opt.usegpu: pin_memory = True test_dataset = SegDataset(opt.lmdb) test_align_collate = AlignCollate('test', ms.LABELS, ms.MEAN, ms.STD, ms.IMAGE_SIZE_HEIGHT, ms.IMAGE_SIZE_WIDTH, ms.ANNOTATION_SIZE_HEIGHT, ms.ANNOTATION_SIZE_WIDTH, ms.CROP_SCALE, ms.CROP_AR, random_cropping=ms.RANDOM_CROPPING, horizontal_flipping=ms.HORIZONTAL_FLIPPING,random_jitter=ms.RANDOM_JITTER) assert test_dataset test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=opt.batchsize, shuffle=False, num_workers=opt.nworkers, pin_memory=pin_memory, collate_fn=test_align_collate) # Define Model model = Model(ms.LABELS, load_model_path=model_path, usegpu=opt.usegpu) # Test Model test_accuracy, test_dice_coeff = model.test(ms.CLASS_WEIGHTS, test_loader)