How to do image normalization in Radiomics

Hello
I am doing some work about texture analysis using Radiomics package and how can I do image normalization before texture analysis? Thanks

1 Like

This section in the documentation may be helpful:

https://pyradiomics.readthedocs.io/en/latest/customization.html?highlight=normalization#feature-extractor-level

1 Like

Thank you for your help :slightly_smiling_face:

1 Like

Hi Fedorov, thank you for the answer. I noticed that pyradiomics normalizes the whole image instead of the ROI. Is it possible to normalize the gray level of ROI? Thank you!

No, I don’t think this is possible.

1 Like

@fedorov, and others,

does radiomics has any guideline on normalizing the whole image then extracting features from ROI image or cropping ROI image and then normalizing?

I don’t think there is a formal recommendation, but some suggested settings for normalization are available in this folder of the repo: pyradiomics/examples/exampleSettings at master · AIM-Harvard/pyradiomics · GitHub.

We also explored the effects of normalization choices on reproducibility of features extracted from prostate MRI in this paper: Repeatability of Multiparametric Prostate MRI Radiomics Features | Scientific Reports (a lot more things that were explored but didn’t fit into the peer-reviewed paper are discussed in the preprint: [1807.06089] Repeatability of Multiparametric Prostate MRI Radiomics Features).

Thanks for your answers, but I don’t know coding. How can I do image normalization in 3d slicer without using code? I am doing radiomics work using ct images and I want to normalize with 3 sigma technique

1 Like

It is my question tOO!

1 Like

If you look at the PyRadiomics documentation suggested above you can enable normalization using sigma technique. If you add a resegmenatation range on [-3, 3], this ensures you only include voxels in the range -3 sigma to +3 sigma.

Hi,

this a little confusing for me, sorry if I say a nonsense. So if we configure resegmentation with mode ‘sigma’ and range [-3, 3] we’ll keep only the voxels of the ROI inside that range and the rest will be considered as non-roi pixels for the calculation of the features, but I am not sure if it is exactly the 3sigma normalization does. Because what pyradiomics does is not a normalization where the voxels are transformed to a new range of values, they are just erased.