batch_time.update(time.time() - end) end = time.time() # print info if idx % args.print_freq == 0: logger.info(f'Train: [{epoch}][{idx}/{len(train_loader)}]\t' f'T {batch_time.val:.3f} ({batch_time.avg:.3f})\t' f'DT {data_time.val:.3f} ({data_time.avg:.3f})\t' f'loss {loss_meter.val:.3f} ({loss_meter.avg:.3f})\t' f'prob {prob_meter.val:.3f} ({prob_meter.avg:.3f})') return loss_meter.avg, prob_meter.avg if __name__ == '__main__': opt = parse_option() torch.cuda.set_device(opt.local_rank) torch.distributed.init_process_group(backend='nccl', init_method='env://') cudnn.benchmark = True os.makedirs(opt.output_dir, exist_ok=True) logger = setup_logger(output=opt.output_dir, distributed_rank=dist.get_rank(), name="moco") if dist.get_rank() == 0: path = os.path.join(opt.output_dir, "config.json") with open(path, 'w') as f: json.dump(vars(opt), f, indent=2) logger.info("Full config saved to {}".format(path)) main(opt)
prd_itk = sitk.GetImageFromArray(prediction.astype(np.float32)) lab_itk = sitk.GetImageFromArray(label.astype(np.float32)) img_itk.SetSpacing((1, 1, z_spacing)) prd_itk.SetSpacing((1, 1, z_spacing)) lab_itk.SetSpacing((1, 1, z_spacing)) sitk.WriteImage(prd_itk, test_save_path + '/' + case + "_pred.nii.gz") sitk.WriteImage(img_itk, test_save_path + '/' + case + "_img.nii.gz") sitk.WriteImage(lab_itk, test_save_path + '/' + case + "_gt.nii.gz") return metric_list if __name__ == '__main__': opt = parse_option() # torch.cuda.set_device(opt.local_rank) # torch.distributed.init_process_group(backend='nccl', init_method='env://') if not opt.resume: cudnn.benchmark = True os.makedirs(opt.output_dir, exist_ok=True) # logger = setup_logger(output=opt.output_dir, distributed_rank=dist.get_rank(), name="moco") logger = setup_logger(output=opt.output_dir, name="moco") # if dist.get_rank() == 0: path = os.path.join(opt.output_dir, "config.json") with open(path, 'w') as f: json.dump(vars(opt), f, indent=2) logger.info("Full config saved to {}".format(path)) main(opt)
if __name__ == '__main__': # to suppress annoying warnings import warnings warnings.filterwarnings("ignore", "(Possibly )?corrupt EXIF data", UserWarning) opt = parse_option() torch.cuda.set_device(opt.local_rank) torch.distributed.init_process_group(backend='nccl', init_method='env://') cudnn.benchmark = True os.makedirs(opt.output_dir, exist_ok=True) logger = setup_logger(output=opt.output_dir, distributed_rank=dist.get_rank(), name="imagenet-x test") if dist.get_rank() == 0: path = os.path.join(opt.output_dir, "config.json") with open(path, "w") as f: json.dump(vars(opt), f, indent=2) logger.info("Full config saved to {}".format(path)) logger.info("PyTorch VERSION: {}".format(torch.__version__)) logger.info("CUDA VERSION: {}".format(torch.version.cuda)) logger.info("CUDNN VERSION: {}".format(torch.backends.cudnn.version())) logger.info("GPU TYPE: {}".format(torch.cuda.get_device_name(0))) main(opt)