Skip to content

Global radiomics feature calculation parameters

Aditya P. Apte edited this page Jul 13, 2017 · 28 revisions

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.
Clone this wiki locally