Cancer Imaging Phenomics Toolkit (CaPTk)  1.7.3.nonRelease.20191015
Feature Extraction


  1. An image or a set of co-registered images.
  2. An ROI file containing various labels, for which features will be extracted.


  1. Once image(s) and an ROI file are loaded, go to the "Feature Extraction" panel.
  2. In the "Customization" section, you can select one of the preset of features to extract from the drop-down menu:
    • Custom: allows the manual selection & customization of specific features.
    • Custom_Lattice: allows the manual selection & customization of specific features using a lattice-based strategy for feature extraction [1]. A regular lattice is virtually overlaid on the ROI and features are computed on local square (for 2D images) or cubic (for 3D images) regions centered on each lattice point. The final feature estimates are then calculated as summary statistics of the corresponding feature measurements across all regions defined by the lattice. The parameterization of the lattice is described in the Technical Reference section.
    • Lung_SBRT: enables the extraction of features that are used in [2].
  3. For the "Custom" and "Custom_lattice" presets, and once specific features are selected, you can use the Advanced button (in "Customization") to parameterize further the individual selected features.
  4. In the Image Selection section, you can select the radio button of "<b>Selected Image</b>" or "<b>All Images</b>" to extract features for either the visualized image or all the images loaded in CaPTk, respectively.
  5. In the Mask Selection section, you have the option to define the label number(s) for which you want to extract features. Note that when more than one label number is entered the 'pipe' symbol should be used as a separator, i.e. |. Equivalently, text labels should be provided corresponding to each label number, again separated by a 'pipe'.
  6. Once the output CSV file is defined you can click on Compute + Save. (Note that the CSV file should be in ASCII format)
  7. For the command line interface, a user can copy the file ${CaPTk_Installation_Folder}/data/features/1_params_default.csv to a location where they would have write access, change the parameters as they see fit and then pass that to the CLI under the "-b" parameter (example shown below).
  • This application is also available as with a stand-alone CLI for data analysts to build pipelines around, and can run in the following format:
    ${CaPTk_InstallDir}/bin/FeatureExtraction.exe -n AAC0_timestamp -i /usr/path/T1.nii.gz,/usr/path/T2.nii.gz -t T1,T2 -m /user/path/mask.nii.gz -r 2,4,5 -l ED,EN,NE -p /usr/path/features.csv -o /usr/path/output.csv
  1. Batch processing is also available:
    ${CaPTk_InstallDir}/bin/FeatureExtraction.exe -b /usr/path/batch.csv -p /usr/path/features.csv -o /usr/path/output.csv
  2. As intermediate results of the "Custom_lattice", the user also has the option to save feature maps, i.e., images that represent the spatial distribution of the corresponding feature measurements as sampled by the lattice over the ROI, using the following CLI format:
    ${CaPTk_InstallDir}/bin/FeatureExtraction.exe -n AAC0_timestamp -i /usr/path/T1.nii.gz,/usr/path/T2.nii.gz -t T1,T2 -m /user/path/mask.nii.gz -r 2,4,5 -l ED,EN,NE -p /usr/path/features.csv -o /usr/path/output.csv -f 1

The above command extracts features defined in the parameter file defined in "-p" for the input images defined in "-i" in the regions defined in "-m" and "-r". The output is populated using the subject ID from "-n", modality information from "-t" and annotation label information from "-l" and saves the results in the path defined in "-o".

An example of the list file for batch processing can be found in ${CaPTk_InstallDir}/share/featureExtractionBatch/batch_featureextraction.csv. An explanation of the inputs is given below (the headers are case-insensitive):

Header Description
PATIENT_ID The subject ID of the images getting processed

| IMAGES | The co-registered input images for whom features are to be extracted; separated by '|' | | MODALITIES | The corresponding modalities used in the output CSV; separated by '|' | | ROIFile | The mask file which defines the annotated regions for extracting features | | SELECTED_ROI | The selected annotations from which to extract features; separated by '|' | | ROI_LABEL | The corresponding annotation labels used in the output CSV; separated by '|' | | OUTPUT (OPTIONAL) | The output file for the current subject | | PARAM_FILE (OPTIONAL) | The parameter file for the current subject |

NOTE: The output of Feature Extraction can be used to run the Training Module.


  1. Y.Zheng, B.M.Keller, S.Ray, Y.Wang, E.F.Conant, J.C.Gee, D.Kontos, "Parenchymal texture analysis in digital mammography: A fully automated pipeline for breast cancer risk assessment", Medical Physics, 2015.
  2. H.Li, M.Galperin-Aizenberg, D.Pryma, C.Simone, Y.Fan, "Predicting treatment response and survival of early-stage non-small cell lung cancer patients treated with stereotactic body radiation therapy using unsupervised two-way clustering of radiomic features", Int. Workshop on Pulmonary Imaging, 2017.