该系列是为了记录自己学习的过程
一、简介:
pyradiomics是一个开源的python软件包,可以从医学影像中提取出Radiomics影像组学特征
SimpleITK支持的所有图像类型可以用作PyRadiomics的输入。
输出为由参数映射的SimpleITK图像,而不是针对每个特征的float值。
二、Pyradiomics影像组学特征提取
在PyRadiomics中可以通过4种方式自定义特征提取: 非常重要
- 1)** imageType** :指定用于提取特征的图像类型(原始图像或者基于变换的派生图像)
- 2)** featureClass ** :指定要提取的特征类
- 3) **setting ** :指定一个设置文件来控制预处理、图像变换的滤波器和特征类
- 4)** voxelSetting ** :指定voxel-based基于体素的特定设置,只有在使用PyRadiomics 进行体素提取生成特征图时才需要
2.1、featureClass 主要提取的特征列表
图像类型进行影像组学特征提取的图像既可以是原始图像,也可以是经过滤波器处理的派生图像。默认情况下只使用原始图像
目前可用的特征类如下:
1)**firstorder **:First Order Statistics(19features)
- GetEnergyFeatureValue():能量,是图像中体素值大小的度量,值越大意味着这些值的平方和越大。
- GetTotalEnergyFeatureValue():总能量,是以体素的体积(以立方毫米为单位)为尺度的能量特征值。
- GetEntropyFeatureValue():熵,定义图像值的不确定性或者随机性,是对图像值进行编码所需平均信息量对度量。
- GetMinimunFeatureValue():最小特征值
- Get10PercentileFeatureValue():第10%的特征值。
- Get90PercentileFeatureValue():第90%的特征值
- GetMaximunFeatureValue():最大特征值
- GetMeanFeatureValue():平均特征值
- GetMedianFeatureValue():中位数特征值
- GetInterquartileRangeFeatureValue():四分位范围
- GetRangeFeatureValue():强度值范围(最大值-最小值)
- getMeanAbsoluteDeviationFeatureValue():平均绝对偏差
- getRobustMeanAbsoluteDeviationFeatureValue():鲁棒平均绝对偏差
- getRootMeanSquaredFeatureValue():均方根
- getStandardDeviationFeatureValue():标准偏差,衡量与平均值之间的差异或离散程度
- getSkewnessFeatureValue():偏度,偏度测量关于平均值的值分布的不对称性。根据尾巴在哪里加长和分布的质量集中在什么地方,该值可以为正或负。
- GetKurtosisFeatureValue():峰度,峰度是图像ROI中值分布的“峰值”度量。峰度越高,意味着分布的质量集中于尾部而不是均值。较低的峰度意味着相反的情况:分布的质量集中在接近均值的峰值处。
- GetVarianceFeatureValue():方差,是每个强度值与平均值之间的平方距离的平均值。这是对均值分布分布的度量
- getUniformityFeatureValue():均匀度,是每个强度值的平方和的量度。这是图像阵列均匀性的一种度量,其中更大的均匀性意味着更大的均匀性或较小的离散强度值范围。
2) shape2D:Shape-based(2D)(10fetures)
- getMeshSurfaceFeatureValue():网格表面积,由三角形网格定义,计算ROI的表面。
- getPixelSurfaceFeatureValue() : 像素表面积
- getPerimeterFeatureValue():周长。
- getPerimeterSurfaceRatioFeatureValue():周长比,较低的值表示更紧凑的圆形。
- getSphericityFeatureValue():球形度,表示与肿瘤区域具有相同面积的圆形的周长与肿瘤的周长之比。
- getSphericalDisproportionFeatureValue():球形不均匀度,是球形度的倒数。
- getMaximumDiameterFeatureValue():最大2D直径。
- getMajorAxisLengthFeatureValue():主轴长度。
- getMinorAxisLengthFeatureValue():短轴长度。
- getElongationFeatureValue():伸长率。
3)shape:Shape-based(3D)(17features)
- getMeshVolumeFeatureValue():网格体积,由影像RIO的三角形网格计算得到。
- getVoxelVolumeFeatureValue() : 体素体积,
- GetSurfaceAreaFeatureValue():表面积。
- getSurfaceVolumeRatioFeatureValue():表面积与体积之比,较低的值表示更紧凑的球形形状。
- getSphericityFeatureValue():球形度,是肿瘤区域相对于球形度圆度度度量。
- getCompactness1FeatureValue():紧凑度1,是衡量肿瘤形状相对于球形的紧密程度的度量。
- getCompactness2FeatureValue():紧凑度2,也是衡量肿瘤形状相对于球体的紧密程度的度量,公式不同。
- getSphericalDisproportionFeatureValue():球形不对称,是肿瘤区域的表面积与具有相同体积的球体表面积的比值,是球形度的倒数。
- getMaximum3DDiameterFeatureValue():最大3D直径,表示肿瘤表面网格顶点之间的最大欧几里得距离。
- getMaximum2DDiameterSliceFeatureValue():最大2D直径(切片),表示轴向平面中肿瘤表面网格顶点之间最大的欧几里得距离。
- getMaximum2DDiameterColumnFeatureValue():最大2D直径(列),表示冠状平面中肿瘤表面网格顶点之间最大的欧几里得距离。
- getMaximum2DDiameterRowFeatureValue():最大2D直径(行),表示失状平面中肿瘤表面网格顶点之间最大的欧几里得距离。
- getMajorAxisLengthFeatureValue():主轴长,表示包围ROI的椭球的最大轴长。
- getMinorAxisLengthFeatureValue():短轴长,表示包围ROI的椭球的第二轴长。
- getLeastAxisLengthFeatureValue():最小轴长,表示包围ROI的椭球的最小轴长。
- getElongationFeatureValue():伸长率,表示ROI形状中两个最大的主成分之间的关系。
- getFlatnessFeatureValue():平面度,是表示ROI形状中最大和最小主成分之间的关系。
4)Glcm:Gray Level Cooccurence Matrix(24features)灰度共生矩阵
5)Glrlm:Gray Level Run Length Matrix(16features),灰度级运行长度矩阵
6)Glszm:Gray Level Size Zone Matrix(16features)
7)Gldm:Gray Level Dependence Matrix(14features)灰度依赖性矩阵
8)Ngtdm:Neighbouring Gray Tone Difference Matrix(5features)
三、安装
pip install pyradiomics