KidsWithTokens / MedSegDiff

Medical Image Segmentation with Diffusion Model
MIT License
979 stars 147 forks source link

About the image size #129

Open kjRainy opened 11 months ago

kjRainy commented 11 months ago

When I trained with the previous version, the code worked fine when the dataset size was 256, but I got an error when my dataset size was 512.How should I solve it? Thank you!

Traceback (most recent call last): File "scripts/segmentation_train.py", line 119, in main() File "scripts/segmentation_train.py", line 88, in main lr_anneal_steps=args.lr_anneal_steps, File "./guided_diffusion/train_util.py", line 186, in run_loop self.run_step(batch, cond) File "./guided_diffusion/train_util.py", line 207, in run_step sample = self.forward_backward(batch, cond) File "./guided_diffusion/train_util.py", line 239, in forward_backward losses1 = compute_losses() File "./guided_diffusion/gaussian_diffusion.py", line 1145, in training_losses_segmentation model_output, cal = model(x_t, self._scale_timesteps(t), model_kwargs) File "/data0/KongJY/anaconda3/envs/Kong/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl return forward_call(*input, *kwargs) File "/data0/KongJY/anaconda3/envs/Kong/lib/python3.7/site-packages/torch/nn/parallel/distributed.py", line 886, in forward output = self.module(inputs[0], kwargs[0]) File "/data0/KongJY/anaconda3/envs/Kong/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl return forward_call(*input, kwargs) File "./guided_diffusion/unet.py", line 775, in forward uemb, cal = self.highway_forward(c, [hs[3],hs[6],hs[9],hs[12]]) File "./guided_diffusion/unet.py", line 744, in highway_forward return self.hwm(x,hs) File "/data0/KongJY/anaconda3/envs/Kong/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl return forward_call(*input, *kwargs) File "./guided_diffusion/unet.py", line 2473, in forward h = self.ffparserd File "/data0/KongJY/anaconda3/envs/Kong/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl return forward_call(input, kwargs) File "./guided_diffusion/unet.py", line 479, in forward x = x * weight RuntimeError: The size of tensor a (129) must match the size of tensor b (65) at non-singleton dimension 3

wzx0720 commented 7 months ago

same question