StanfordMIMI / DDM2

[ICLR2023] Official repository of DDM2: Self-Supervised Diffusion MRI Denoising with Generative Diffusion Models
140 stars 21 forks source link

Dataroot for train and Val #7

Open infusion-zero-edit opened 1 year ago

infusion-zero-edit commented 1 year ago

Can you given example for one dataset like stanford_hardi what the typical dataroot in config looks like for these datasets ?

I have downloaded stanford_hardi in a folder specifying the folder path does not work ? can you update readme with proper instructions of doing that.

infusion-zero-edit commented 1 year ago

also i have given the complete path with filename ending with ".gz" as the train and val dataroot it loads the dataset, but it is giving the following code error

RuntimeError: CUDA error: no kernel image is available for execution on the device

tiangexiang commented 1 year ago

Hi thanks for your interest in our work! Yes, for the 'dataroot' variable, it should be directed to the actual data file that usually ends with '.nii' or '.gz'. We have updated this in the example config files. The run time error means the script has been executed well (e.g. package importing, data loading etc), but instead failed to instantiate the model or forward the model on the GPU you have. According to this thread: https://github.com/pytorch/pytorch/issues/31285 it is probable that you have an incompatible GPU with the pytorch version. A workaround could be compiling pytorch from source (as suggested by the thread above). Thanks!

Alphacch commented 1 year ago

Hi, thank you for sharing your creation. I would like to ask about the requirement of "dataroot" in the first stage of training to be a .nii.gz file. When I used my own data, I reported the following error: IndexError: too many indices for array: array is 3-dimensional, but 4 were indexed May I ask if you reshape all the 3D data into a 4D data?Can you tell me in detail how it is converted?Hope my question is not too stupid,thanks!

tiangexiang commented 1 year ago

@Alphacch thank you for your interest! Our data are 4-dimensional, which includes multiple observations of 3D volumes. This error message indicates that your data is only 3-dimensional (maybe it is a single observation of a 3D volume?). Please note that our algorithm (and most other MRI denoising algorithms) only functions on 4D data. A single 3D volume may not be adequate to initiate the denoising algorithm.

Alphacch commented 1 year ago

@tiangexiang Thank you for your reply! May I ask if I can add your wechat or other social software? This may be more efficiently. I am very interested in your project and hope you can help me. My wechat number is: 15855666661. and i will understand if it is inconvenient. Thank you again for your reply!

BAOSONG1997 commented 7 months ago

@Alphacch thank you for your interest! Our data are 4-dimensional, which includes multiple observations of 3D volumes. This error message indicates that your data is only 3-dimensional (maybe it is a single observation of a 3D volume?). Please note that our algorithm (and most other MRI denoising algorithms) only functions on 4D data. A single 3D volume may not be adequate to initiate the denoising algorithm. Hi Tianggexiang, what do mean 4D MRI dataset that you used? Do you mean 4D data includes 3D MRI data of different phantoms/ brains ? Thanks.

tiangexiang commented 7 months ago

@BAOSONG1997 Hi, 4D MRI data in this case is a sequence of 3D MRI volumes that each volume is an i.i.d noisy acquisition. This means that every 3D MRI volume in the 4D dataset represents the same underlying brain anatomy, but with different noise.

BAOSONG1997 commented 6 months ago

@BAOSONG1997 Hi, 4D MRI data in this case is a sequence of 3D MRI volumes that each volume is an i.i.d noisy acquisition. This means that every 3D MRI volume in the 4D dataset represents the same underlying brain anatomy, but with different noise.

Thanks, Tiangexiang. In your article, the number of the volume (n) can be less than 5. Is it the fourth-dimension of 4D MRI data? Does that mean you can use the number of 3D MRI data less than 5?

tiangexiang commented 6 months ago

@BAOSONG1997 Yes! number of 3D MRI data can be less than 5. However, with less 3D acquisitions, the model's capability will be compromised accordingly.