Variation in radiomics features

Skip to first unread message

Kundan Singh Chufal

unread,
May 23, 2020, 5:24:10 AM5/23/20
to CERR FORUM
I have calculated radiomics feature over a segmented area using original as well as wavelet transformation. For a particular patient i repeated the feature calculation 10 times and each time calculated feature value differ. For many features this difference is quite a bit. Is it normal to have this difference between two calculations performed over the same patient? How reliable is to do any analysis or model building using this calculation algorithm for feature calculation if it changes so much for a same given image or segmentation.

ap...@mskcc.org

unread,
May 23, 2020, 8:33:39 AM5/23/20
to cerr-...@googlegroups.com
Its not normal for results to differ between runs. Can you please post your json settings file and the calculation wrapper. In the settings there is an option to use perturbations for image and segmentation. Can you please check whether that setting is left empty. 

Thanks,
Aditya 

On May 23, 2020, at 5:24 AM, Kundan Singh Chufal <kund...@gmail.com> wrote:

I have calculated radiomics feature over a segmented area using original as well as wavelet transformation. For a particular patient i repeated the feature calculation 10 times and each time calculated feature value differ. For many features this difference is quite a bit. Is it normal to have this difference between two calculations performed over the same patient? How reliable is to do any analysis or model building using this calculation algorithm for feature calculation if it changes so much for a same given image or segmentation.

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-forum+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cerr-forum/9ae26527-7b2c-4d8c-afd6-0ba9eaf27d5b%40googlegroups.com.



*** Only open attachments or links from trusted senders. Report phishing to inf...@mskcc.org ***

mg_info.txt

kundan

unread,
May 24, 2020, 1:16:47 AM5/24/20
to cerr-...@googlegroups.com
I have attached my Jason file

and this is the script I am using for calculation

clc;clear;close all;

 

% Directory containing CERR files

dirName =  uigetdir(cd, 'Select directory with CERR formated file');

 

% .json file containing radiomics settings 

% including the names of structures to extract radiomics

paramFileName = 'templeteWavelet.json';

 

% Excel file path to save features(Optional)

outXlsFile = 'E:\QARC-E001R\feature_calculations\features28052020.xlsx';

 

 

% Call batch feature calculator

featureS = batchExtractRadiomics(dirName,paramFileName,outXlsFile);


templeteWavelet.json

Aditya Apte

unread,
May 24, 2020, 5:33:47 AM5/24/20
to cerr-...@googlegroups.com

The settings include perturbing images and masks. To use the original image and segmentation, please change


 "perturbation": {

      "sequence": "RV",

      "angle2DStdDeg": 7,

      "volScaleStdFraction": 0.1,

      "superPixVol": 0.005

          },


to 


 "perturbation": {

          },

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-forum+...@googlegroups.com.

ap...@mskcc.org

unread,
May 24, 2020, 5:54:41 AM5/24/20
to cerr-...@googlegroups.com
Here is more information on perturbations setting:

You bring up a good point about some features changing a lot between perturbation runs. Ideally, you want to build a model with features that are robust to small perturbations. Robust features can be detected, for example, by testing their robustness to inter reader segmentation. In the absence of multi-reader data, perturbations have been proposed by Zwanenburg et al https://www.nature.com/articles/s41598-018-36938-4. These are the ones implemented in CERR's "perturbations" setting. 
mg_info.txt

Kundan Singh Chufal

unread,
May 24, 2020, 6:38:20 AM5/24/20
to cerr-...@googlegroups.com
Thanks that solved the problem. 
I would like to use all the filters so do we have some universal template for settings 
In 
ImageType

As for original  we use 
“Original”:{}
Can we use same empty curly braces for other filters like LoG, Haralick, Gabor etc 
Or there are some mandatory parameters which we need to fill prior to extracting features. I am aware of parameters for wavelet filters but not for other. Do we have any reading material guiding us how to set parameters to extract features in CERR using these different filters. 

Thanks and regards 

Sent from my iPhone

On 24-May-2020, at 3:24 PM, ap...@mskcc.org wrote:



ap...@mskcc.org

unread,
May 24, 2020, 7:20:24 AM5/24/20
to cerr-...@googlegroups.com
Hi Kundan,

We need to create more documentation with templates for various filters. Here is existing description of filter parameters.  https://github.com/cerr/CERR/wiki/Texture-calculation

-Aditya 
mg_info.txt

kundan

unread,
May 24, 2020, 7:34:56 AM5/24/20
to cerr-...@googlegroups.com
Thanks  Aditya
Actually we are doing some work related to response prediction modeling using deep learning CNN algorithm and wanted to compare that model performance with radiomics model.
So we need to have as many features as possible prior to feature selection and model building. We plan to do feature stability and selection based on test retest, inter and intraobserver segmentation and two CT acquisition protocols. 

I went through this documentation  https://github.com/cerr/CERR/wiki/Texture-calculation
and accordingly tried to calculate texture feature using 

Haralick


my jason setting was
"HaralickCooccurance": {
                "NumLevels":64,
                "PatchSize":"[2 2 0]",
                "Directionality":2,
                "Type":"All"
                  }

and i got this error

--- Texture Calculation for Slice # 67 ----
Elapsed time is 7967.295615 seconds.
Unrecognized function or variable 'fieldName'.
Error in createFieldNameFromParameters (line 59)
fieldName = strrep(fieldName,' ','');
Error in calcRadiomicsForImgType (line 88)
    outFieldName = createFieldNameFromParameters...
Error in calcGlobalRadiomicsFeatures (line 24)
featureS = calcRadiomicsForImgType(volToEval,maskBoundingBox3M,paramS,gridS);
Error in batchExtractRadiomics (line 48)
        featS.(structFieldName) = calcGlobalRadiomicsFeatures...
Error in newBatchExtractorEso (line 15)
featureS = batchExtractRadiomics(dirName,paramFileName,outXlsFile); 



--
Dr Kundan Singh Chufal
Sr Consultant Radiation Oncology
Chief Breast and Thorax Radiation Services
Rajiv Gandhi Cancer Institute and Research Centre
Sector-5, Rohini 110085, Delhi, India 

Aditya Apte

unread,
May 24, 2020, 7:42:36 AM5/24/20
to cerr-...@googlegroups.com
Sounds great. We will look into your reported error and provide you with template settings. 

-Aditya

Kundan Singh Chufal

unread,
May 24, 2020, 8:56:34 AM5/24/20
to CERR FORUM
Once again thanks Aditya

one more thing to add 

Wavelets name "Haar" is recognized but when i try to use different name like "Coiflets" or  any other name it is not recognizing that name.
I did check the file called wavemngr.m and used mavemngr('tfsn') and it prints the wavelet name but some how when i want to extract feature using that listed names i am unable to do so and there is a message stating that name not found.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.
<templeteWavelet.json>

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.

To view this discussion on the web visit https://groups.google.com/d/msgid/cerr-forum/00919F91-A3CF-43D1-8BF2-68421B736219%40gmail.com.



*** Only open attachments or links from trusted senders. Report phishing to inf...@mskcc.org ***

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.


--
Dr Kundan Singh Chufal
Sr Consultant Radiation Oncology
Chief Breast and Thorax Radiation Services
Rajiv Gandhi Cancer Institute and Research Centre
Sector-5, Rohini 110085, Delhi, India 

--
You received this message because you are subscribed to the Google Groups "CERR FORUM" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cerr-...@googlegroups.com.

iy...@mskcc.org

unread,
May 26, 2020, 5:06:12 PM5/26/20
to cerr-...@googlegroups.com

Hi Kundan,

 

We have expanded the documentation to include examples using derived images: https://github.com/cerr/CERR/wiki/Example1-batch-calculate-global-radiomics-features-for-the-patient-cohort.

 

Also re. wavelet calculations, the supported classes are 'db','haar','coif','fk','sym','dmey','bior','rbio' (‘coif’ , in your case). Further details are available at https://github.com/cerr/CERR/wiki/Texture-calculation.

 

Hope this helps,

Aditi

To unsubscribe from this group and stop receiving emails from it, send an email to cerr-forum+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cerr-forum/2cd733e0-b683-46c1-be03-966e2314957a%40googlegroups.com.

=====================================================================

Please note that this e-mail and any files transmitted from
Memorial Sloan Kettering Cancer Center may be privileged, confidential,
and protected from disclosure under applicable law. If the reader of
this message is not the intended recipient, or an employee or agent
responsible for delivering this message to the intended recipient,
you are hereby notified that any reading, dissemination, distribution,
copying, or other use of this communication or any of its attachments
is strictly prohibited. If you have received this communication in
error, please notify the sender immediately by replying to this message
and deleting this message, any attachments, and all copies and backups
from your computer.

kundan

unread,
May 28, 2020, 10:19:05 PM5/28/20
to cerr-...@googlegroups.com
thanks for the documentation

but when we are calculating class coif for wavelet this is the error

Error in wavDecom3D (line 19)
[loD,hiD] = wfilters(wavType,'d');

Error in processImage (line 184)
            out3M = wavDecom3D(vol3M,dir,wavType);

Error in calcRadiomicsForImgType (line 49)
        outS = processImage(imageTypeC{k}.imageType,volOrig3M,maskBoundingBox3M,...

Error in calcGlobalRadiomicsFeatures (line 24)
featureS = calcRadiomicsForImgType(volToEval,maskBoundingBox3M,paramS,gridS);

Error in batchExtractRadiomics (line 55)
        featS.(structFieldName) = calcGlobalRadiomicsFeatures...

Error in newBatchExtractorEso (line 20)
featureS1 = batchExtractRadiomics(dirName,paramFileName1,outXlsFile1);


Also when we are calculating LAWSCONVOLUTION
this is the error

Error in doseHist (line 67)
    [volsHistV] = accumulate(volsHistV, volsV, indV);

Error in getIvhParams (line 72)
[scanBinsV, volsHistV] = doseHist(scansV, volsV, IVHBinWidth);

Error in calcRadiomicsForImgType (line 208)
            featureS.(outFieldName).ivhFeaturesS = getIvhParams(scanV, volV, IVHBinWidth,...

Error in calcGlobalRadiomicsFeatures (line 24)
featureS = calcRadiomicsForImgType(volToEval,maskBoundingBox3M,paramS,gridS);

Error in batchExtractRadiomics (line 55)
        featS.(structFieldName) = calcGlobalRadiomicsFeatures...

Error in newBatchExtractorEso (line 20)
featureS1 = batchExtractRadiomics(dirName,paramFileName1,outXlsFile1);





iy...@mskcc.org

unread,
May 29, 2020, 4:13:25 PM5/29/20
to cerr-...@googlegroups.com

Can you please share your JSON settings file so we can help identify the issue?

Also, we recently posted an update for Laws texture calculation. Could you make sure you’re using the latest version of CERR?

 

Thanks,

Aditi

Reply all
Reply to author
Forward
0 new messages