AIM-Harvard / pyradiomics

Open-source python package for the extraction of Radiomics features from 2D and 3D images and binary masks. Support: https://discourse.slicer.org/c/community/radiomics
http://pyradiomics.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
1.11k stars 485 forks source link

[FEAT EXTRACTION] how dose the setting: for normalizeScale work? #790

Open zhuangmingzan opened 1 year ago

zhuangmingzan commented 1 year ago

*it is strange for normalize scale, with the setting below for example Brain1 (imageName, maskName = radiomics.getTestCase('brain1') ). how dose the setting: for normalizeScale work?

without normalize (other setting the same), the maxi is 1266, mean 825, min 468, range 798, 82 bins [460,470,...1270,1280] for the results. with normalize, maxi is 218.68, mean 109.19, mini 20.45, range 198.23, 21 bins [20,30,...,220,230] for the results.

setting: normalize: true normalizeScale: 101 # This allows you to use more or less the same bin width.

The ideal number of bins is somewhere in the order of 16-128 bins. A possible way to define a good binwidt is to extract firstorder:Range from the dataset to analyze, and choose a binwidth so, that range/binwidth remains approximately in this range of bins.

binWidth: 10

label: 1 interpolator: 'sitkBSpline' # This is an enumerated value, here None is not allowed resampledPixelSpacing: # This disables resampling, as it is interpreted as None, to enable it, specify spacing in x, y, z as [x, y , z] weightingNorm: # If no value is specified, it is interpreted as None

featureClass: firstorder: shape: glcm: glrlm: glszm: gldm: ngtdm: