Preprocessing and post processing MSD #1218
-
Hi, I'm working with MONAI to implement a network with the "Medical Segmentation Decathlon" (MSD) dataset. In https://github.com/Project-MONAI/tutorials/tree/main/3d_segmentation there are two tutorials on the breast (brain tumour segmentation) and spleen segmentation, which are also two tasks of MSD. I notice that the BRAST tutorial has some particular pre-processing transformations like ConvertToMultiChannelBasedOnBratsClassesd(keys="label") which I notice impact the parameters of DiceLoss and also the type of post-processing you have to do to the label and predictions, e.g, not converting the results to one hot encoding. Since the only tutorial on MRI data is on BRAST, which uses a particular pre-processing transformation, which type of transformation I should use with simple MRI data? If I use for example SwinUNETR of MONAI which post-processing to the predictions and labels do I have to apply to MRI data?
Do I have to put one-hot encoding or not? If I'm using one-hot encoding do I have to set logit_thresh=0.5 or I use it when one-hot encoding is disabled? If I have MRI data with multiple output classes, how do I have to set the parameters of the above functions?
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Hi @cugwu , In my opinion, using which transforms (here I assume transforms are all for data preprocessing, not for data augmentation) depend on the input/output data format.
It depends on what is the format of your network output? You may need to check the shape of the output, the value (like min, max, mean) of the output to confirm if it is already a one-hot tensor or a multi-channel tensor with logits values, or a multi-channel tensor with probability values (after sigmoid or softmax). |
Beta Was this translation helpful? Give feedback.
Hi @cugwu ,
ConvertToMultiChannelBasedOnBratsClassesd
is used to convert the labels into a multi-label format, and it modifies the original label. If you'd like to use the original label for training, you can ignore this transform I think.In my opinion, using which transforms (here I assume transforms are all for data preprocessing, not for data augmentation) depend on the input/output data format.
It depends on what is the format of your network output? You may need to check the shape of the output, the value (like min, max, mean) of …