textureFeatures
Description
Examples
Compute Texture Features for Computed Tomography (CT) Image
Import a computed tomography (CT) image volume and the corresponding ROI mask volume from the IBSI validation data set [1][2][3] as medicalVolume
objects.
unzip("CTImageMaskNIfTI.zip") data = medicalVolume("CT_image.nii.gz"); roi = medicalVolume("CT_mask.nii.gz");
Visualize a slice of the CT image volume and the corresponding ROI.
figure
imshowpair(data.Voxels(:,:,20),roi.Voxels(:,:,20),"montage")
Create a radiomics
object, using the CT image volume and ROI mask volume, with default preprocessing options.
R = radiomics(data,roi)
R = radiomics with properties: Data: [1x1 medicalVolume] ROILabel: [1x1 medicalVolume] Resample: 1 Resegment: 1 Discretize: 1 DiscretizeIVH: 1 ResampledVoxelSpacing: 1 DataResampleMethod: 'linear' MaskResampleMethod: 'linear' ResegmentationRange: [] ExcludeOutliers: 1 DiscreteBinSizeOrBinNumber: [] DiscreteMethod: 'FixedBinNumber' DiscreteIVHBinSizeOrBinNumber: [] DiscreteIVHMethod: 'FixedBinNumber'
Compute the grey level co-occurrence matrix (GLCM) texture features of the ROI in the 2D-resampled CT image volume.
I = textureFeatures(R,Type=["GLCM","GLRLM"],SubType="2D")
I=1×83 table
LabelID JointMaximumAveraged2D JointAverageAveraged2D JointVarianceAveraged2D JointEntropyAveraged2D DifferenceAverageAveraged2D DifferenceVarianceAveraged2D DifferenceEntropyAveraged2D SumAverageAveraged2D SumVarianceAveraged2D SumEntropyAveraged2D AngularSecondMomentAveraged2D ContrastAveraged2D DissimilarityAveraged2D InverseDifferenceAveraged2D NormalisedInverseDifferenceAveraged2D InverseDifferenceMomentAveraged2D NormalisedInverseDifferenceMomentAveraged2D InverseVarianceAveraged2D CorrelationAveraged2D AutoCorrelationAveraged2D ClusterTendencyAveraged2D ClusterShadeAveraged2D ClusterProminenceAveraged2D InformationCorrelation1Averaged2D InformationCorrelation2Averaged2D JointMaximumSliceMerged2D JointAverageSliceMerged2D JointVarianceSliceMerged2D JointEntropySliceMerged2D DifferenceAverageSliceMerged2D DifferenceVarianceSliceMerged2D DifferenceEntropySliceMerged2D SumAverageSliceMerged2D SumVarianceSliceMerged2D SumEntropySliceMerged2D AngularSecondMomentSliceMerged2D ContrastSliceMerged2D DissimilaritySliceMerged2D InverseDifferenceSliceMerged2D NormalisedInverseDifferenceSliceMerged2D InverseDifferenceMomentSliceMerged2D NormalisedInverseDifferenceMomentSliceMerged2D InverseVarianceSliceMerged2D CorrelationSliceMerged2D AutoCorrelationSliceMerged2D ClusterTendencySliceMerged2D ClusterShadeSliceMerged2D ClusterProminenceSliceMerged2D InformationCorrelation1SliceMerged2D InformationCorrelation2SliceMerged2D ShortRunsEmphasisAveraged2D LongRunsEmphasisAveraged2D LowGrayLevelRunEmphasisAveraged2D HighGrayLevelRunEmphasisAveraged2D ShortRunLowGrayLevelEmphasisAveraged2D ShortRunHighGrayLevelEmphasisAveraged2D LongRunLowGrayLevelEmphasisAveraged2D LongRunHighGrayLevelEmphasisAveraged2D GrayLevelNonUniformityAveraged2D NormalisedGrayLevelNonUniformityAveraged2D RunLengthNonUniformityAveraged2D NormalisedRunLengthNonUniformityAveraged2D RunPercentageAveraged2D GrayLevelVarianceAveraged2D RunLengthVarianceAveraged2D RunEntropyAveraged2D ShortRunsEmphasisSliceMerged2D LongRunsEmphasisSliceMerged2D LowGrayLevelRunEmphasisSliceMerged2D HighGrayLevelRunEmphasisSliceMerged2D ShortRunLowGrayLevelEmphasisSliceMerged2D ShortRunHighGrayLevelEmphasisSliceMerged2D LongRunLowGrayLevelEmphasisSliceMerged2D LongRunHighGrayLevelEmphasisSliceMerged2D GrayLevelNonUniformitySliceMerged2D NormalisedGrayLevelNonUniformitySliceMerged2D RunLengthNonUniformitySliceMerged2D NormalisedRunLengthNonUniformitySliceMerged2D RunPercentageSliceMerged2D GrayLevelVarianceSliceMerged2D RunLengthVarianceSliceMerged2D RunEntropySliceMerged2D
_______ ______________________ ______________________ _______________________ ______________________ ___________________________ ____________________________ ___________________________ ____________________ _____________________ ____________________ _____________________________ __________________ _______________________ ___________________________ _____________________________________ _________________________________ ___________________________________________ _________________________ _____________________ _________________________ _________________________ ______________________ ___________________________ _________________________________ _________________________________ _________________________ _________________________ __________________________ _________________________ ______________________________ _______________________________ ______________________________ _______________________ ________________________ _______________________ ________________________________ _____________________ __________________________ ______________________________ ________________________________________ ____________________________________ ______________________________________________ ____________________________ ________________________ ____________________________ ____________________________ _________________________ ______________________________ ____________________________________ ____________________________________ ___________________________ __________________________ _________________________________ __________________________________ ______________________________________ _______________________________________ _____________________________________ ______________________________________ ________________________________ __________________________________________ ________________________________ __________________________________________ _______________________ ___________________________ ___________________________ ____________________ ______________________________ _____________________________ ____________________________________ _____________________________________ _________________________________________ __________________________________________ ________________________________________ _________________________________________ ___________________________________ _____________________________________________ ___________________________________ _____________________________________________ __________________________ ______________________________ ______________________________ _______________________
"1" 0.025292 10.263 9.9482 6.9415 2.6834 4.353 2.8719 20.525 27.92 4.3458 0.011452 11.872 2.6834 0.39071 0.8891 0.3042 0.97287 0.30871 0.39971 111.04 27.92 -17.682 2401.8 -0.10434 0.66674 0.021298 10.262 9.9491 7.1238 2.678 4.5887 2.9277 20.525 27.962 4.3981 0.0098741 11.835 2.678 0.39129 0.8893 0.3049 0.97295 0.30908 0.40201 111.06 27.962 -18.094 2408.5 -0.052692 0.55415 0.91083 1.4376 0.023078 119.32 0.021376 108.52 0.030767 173.59 75.51 0.087674 710.23 0.79414 0.896 12.076 0.15199 4.243 0.91189 1.4316 0.023109 119.34 0.021486 108.64 0.030465 172.87 301.76 0.087414 2836.1 0.79414 0.896 12.083 0.15192 4.2827
[1] Vallières, Martin, Carolyn R. Freeman, Sonia R. Skamene, and Issam El Naqa. “A Radiomics Model from Joint FDG-PET and MRI Texture Features for the Prediction of Lung Metastases in Soft-Tissue Sarcomas of the Extremities.” The Cancer Imaging Archive, 2015. https://doi.org/10.7937/K9/TCIA.2015.7GO2GSKS.
[2] Vallières, M, C R Freeman, S R Skamene, and I El Naqa. “A Radiomics Model from Joint FDG-PET and MRI Texture Features for the Prediction of Lung Metastases in Soft-Tissue Sarcomas of the Extremities.” Physics in Medicine and Biology 60, no. 14 (July 7, 2015): 5471–96. https://doi.org/10.1088/0031-9155/60/14/5471.
[3] Clark, Kenneth, Bruce Vendt, Kirk Smith, John Freymann, Justin Kirby, Paul Koppel, Stephen Moore, et al. “The Cancer Imaging Archive (TCIA): Maintaining and Operating a Public Information Repository.” Journal of Digital Imaging 26, no. 6 (December 2013): 1045–57. https://doi.org/10.1007/s10278-013-9622-7.
Input Arguments
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Example: textureFeatures(R,Type="GLCM",SubType="2D")
computes the GLCM
texture features as the average over 2D slices in the 2D resampled data.
Type
— Category of texture features
"all"
(default) | string scalar | character vector | string array | cell array of character vectors
Category of texture features to compute, specified as one or more of these options.
"GLCM"
— Grey level co-occurrence matrix"GLRLM"
— Grey level run length matrix"GLSZM"
— Grey level size zone matrix"GLDZM"
— Grey level distance zone matrix"NGTDM"
— Neighbourhood grey tone difference matrix"NGLDM"
— Neighbourhood grey level dependence matrix"all"
If you specify "all"
, the function computes every
category of texture features. For more information on which specific texture features
each category includes, see IBSI Standard and Radiomics Function Feature Correspondences.
Data Types: char
| string
SubType
— Resampling from which to compute texture features
"3D"
(default) | "2D"
| "2.5D"
| "all"
Resampling from which to compute texture features, specified as one of these options.
"2D"
— Computes features for each 2D slice in the 2D resampled data and averages them."2.5D"
— Computes features after merging all 2D slices in the 2D resampled data."3D"
— Computes features for the entire 3D volume in the 3D resampled data."all"
— Computes features for all three options.
When you 2D-resample the volume, the function makes the voxel spacing along the x- and y-dimensions isotropic, but the voxel spacing along the z-dimension is the same as in the input volume. When you 3D-resample the volume, the function makes the voxel spacing along all three spatial dimensions isotropic.
Data Types: char
| string
Output Arguments
T
— Texture features
table
Texture features, returned as a table. The first column in T
is
LabelID
. The subsequent columns are the texture features. For more
details on which texture features are computed in each Type
and
SubType
, see IBSI Standard and Radiomics Function Feature Correspondences.
Version History
Introduced in R2023bR2024b: Compute one or more types of texture features
Compute one or more types of texture features by specifying one or more options in the
name-value argument Type
.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)