Computer Vision News - April 2023
30 Medical Imaging Tools train_loader = DataLoader(train_ds, batch_size=16, shuffle=True, num_work- ers=8) val_ds = DecathlonDataset( root_dir=root_dir, task="Task01_BrainTumour", transform= data_trans- form, section="validation", download=True ) val_loader = DataLoader(val_ds, batch_size=16, shuffle=False, num_work- ers=8, persistent_workers=True) Download MedNIST Validation only dataset from monai.apps import MedNISTDataset val_data = MedNISTDataset(root_dir=root_dir, section="validation", down- load=True, progress=False, seed=0) val_datalist = [{"image": item["image"]} for item in val_data.data if item["class_name"] == "Hand"] GENERATION OF SYNTHETIC IMAGES WITH DENOISING DIFFUSION PROBABILISTIC MODEL (DDPM) Note: You will probably need to lower the batch size before running this experiment! from generative.inferers import DiffusionInferer from generative.networks.nets import DiffusionModelUNet from generative.networks.schedulers import DDPMScheduler Model: Diffusion Model U-Net (3D) model = DiffusionModelUNet( spatial_dims=3, in_channels=1, out_channels=1, num_channels=[256, 256, 512], attention_levels=[False, False, True], num_head_channels=[0, 0, 512], num_res_blocks=2, ) model.to (device) Parameters: Adam Optimiser and DDPM Scheduler scheduler = DDPMScheduler(num_train_timesteps=1000, beta_schedule="scaled_ linear", beta_start=0.0005, beta_end=0.0195) inferer = DiffusionInferer(scheduler) optimizer = torch.optim.Adam(params=model.parameters(), lr=5e-5) Training n_epochs = 150 val_interval = 25
Made with FlippingBook
RkJQdWJsaXNoZXIy NTc3NzU=