-
Notifications
You must be signed in to change notification settings - Fork 104
Global radiomics feature calculation parameters
The parameters supplied to the global radiomics feature calculation are supplied via the paramS
Matlab data structure. paramS
has 5 fields containing the parameters required for calculating the first order, higher order, shape, peak/valley and IVH based features.
Here we initialize Matlab data structures for each type of global radiomics feature
firstOrderParamsS = struct;
higherOrderParamS = struct;
shapeParamS = struct;
peakValleyParamS = struct;
ivhParamS = struct;
whichFeatS = struct;
The next task is to populate the data structures defined above with parameter fields and values.
No parameters are required for the first order features; hence no need to add to it.
Next, we populate the parameters required for higher order features as follows:
higherOrderParamS.minIntensity = -38; %stateS.optS.higherOrder_minIntensity; %-140;
higherOrderParamS.maxIntensity = 195; %stateS.optS.higherOrder_maxIntensity; %100;
higherOrderParamS.numGrLevels = 32; %stateS.optS.higherOrder_numGrLevels; %100;
higherOrderParamS.patchRadius2dV = [1 1 0]; %stateS.optS.higherOrder_patchRadius2dV; % [1 1 0];
higherOrderParamS.imgDiffThresh = 0; %stateS.optS.higherOrder_imgDiffThresh; %0;
higherOrderParamS.patchRadius3dV = [1 1 1]; %stateS.optS.higherOrder_patchRadius3dV; %[1 1 1];
paramS.higherOrderParamS = higherOrderParamS;
Next, we populate the shape parameters:
shapeParamS.rcsV = [100 100 100]; %stateS.optS.shape_rcsV; %[100, 100, 100];
paramS.shapeParamS = shapeParamS;
Next, we populate the parameters required for the peak/valley calculation:
peakValleyParamS.peakRadius = [2 2 0]; %stateS.optS.peakValley_peakRadius; %[2 2 0];
paramS.peakValleyParamS = peakValleyParamS;
Next, we populate the parameters required for the IVH-based metrics:
ivhParamS.xAbsForVxV = -38:10:195; %stateS.optS.ivh_xAbsForIxV; % -140:10:100; % CT;, 0:2:28; % PET
ivhParamS.xForIxV = 10:10:90; %stateS.optS.ivh_xForIxV; % 10:10:90; % percentage volume
ivhParamS.xAbsForIxV = 5:10:200; %stateS.optS.ivh_xAbsForIxV; % 10:20:200; % absolute volume [cc]
ivhParamS.xForVxV = 10:10:90; %stateS.optS.ivh_xForVxV; % 10:10:90; % percent intensity cutoff
paramS.ivhParamS = ivhParamS;
Next, we define which types of features are to be calculated via the whichFeatS
Matlab structure.
whichFeatS.shape = 1;
whichFeatS.harFeat2Ddir = 1;
whichFeatS.harFeat2Dcomb = 1;
whichFeatS.harFeat3Ddir = 1;
whichFeatS.harFeat3Dcomb = 1;
whichFeatS.rlmFeat2Ddir = 1;
whichFeatS.rlmFeat2Dcomb = 1;
whichFeatS.rlmFeat3Ddir = 1;
whichFeatS.rlmFeat3Dcomb = 1;
whichFeatS.ngtdmFeatures2d = 1;
whichFeatS.ngtdmFeatures3d = 1;
whichFeatS.ngldmFeatures2d = 1;
whichFeatS.ngldmFeatures3d = 1;
whichFeatS.szmFeature2d = 1;
whichFeatS.szmFeature3d = 1;
whichFeatS.firstOrder = 1;
whichFeatS.ivh = 1;
whichFeatS.peakValley = 1;
paramS.whichFeatS = whichFeatS;
Finally, the toQuantizeFlag
flag is used to quantize or not to quantize the input scan volume.
paramS.toQuantizeFlag = 1; % 1: quantize, 0: don't quantize, the input scan is already quantized.