精华内容
下载资源
问答
  • 疗效预测中的影像组学特征提取

    千次阅读 2020-04-21 14:35:53
    最近一直在做关于肿瘤的放疗疗效预测相关的工作,遇到了一些问题主要是关于影像组学特征提取相关的问题,在这里做一个总结,主要是关于基于python提取影像组学特征: 需要的module: 主要需要的是SimpleITK,NRRD...

    介绍

    最近一直在做关于肿瘤的放疗疗效预测相关的工作,遇到了一些问题主要是关于影像组学特征提取相关的问题,在这里做一个总结,主要是关于基于python提取影像组学特征:

    需要的module:

    主要需要的是SimpleITK,NRRD和pyradiomics这几个包,安装的话直接pip就可以

    pip install pyradiomics
    pip install SimpleITK
    pip install pynrrd

     具体流程:

    因为我们收到的数据都是图像是dicom格式的,标注为nii格式的,但是pyradiomics这个包,他说明只支持nrrd格式的输入,所以前期我们踩了大量的坑,思路都停留在将dicom和nii格式的数据转换为nrrd格式的数据,但是一直都是会缺少部分信息,最近才有部分进展,现在的流程如下:

    1. 使用ITK-SNAP这个软件将nii格式的标注转换为nrrd格式的数据,过程很简单只需要将nii文件打开,选择file-save image-main image即可,然后再弹出框中选择nrrd格式,即可在对应文件目录下生成一个对应格式的标注文件

    2. 数据的处理过程,还有一个问题就是,我们收到的标注中既包含肿瘤区也包含了淋巴区,但是我们需要将这两部分数据分开处理,所以需要形成不同的标注文件,两部分的标注的区别是肿瘤区标注为1,淋巴区标注为5。这里的思路是我们先使用nrrd包将生成的nrrd中的数据读出来,进行修改,在反写回去即可。
      
      import numpy as np
      import nrrd
      
      
      data, header = nrrd.read(nrrdpath)
      
      # 提取淋巴结的标注
      data = np.where(data[:, :, :] == 1, 0, data[:, :, :])
      lymph_data = np.where(data[:, :, :] == 5, 1, data[:, :, :])
      
      nrrd.write(lymphpath, lymph_data, header)
      

       

    3.  数据的读入过程:主要包含两部分,图像的读入和标注的读入;在这里之前陷入一个误区,以为只能输入nrrd格式,但是后来发现只要是simpleitk读入的数据,pyradiomics都能处理,于是在这里同时使用simpleitk进行数据的读取,最后抽取数据即可

      # get image
      series_IDs = sitk.ImageSeriesReader.GetGDCMSeriesIDs(image_path)
      nb_series = len(series_IDs)
      print(nb_series)
      series_file_names = sitk.ImageSeriesReader.GetGDCMSeriesFileNames(image_path,series_IDs[0])
      series_reader = sitk.ImageSeriesReader()
      series_reader.SetFileNames(series_file_names)
      image3D = series_reader.Execute()
      
      # get mask
      mask = sitk.ReadImage(nrrdpath)
      extractor = featureextractor.RadiomicsFeatureExtractor(geometryTolerance=0.001)
      
      print('Extraction parameters:\n\t', extractor.settings)
      print('Enabled filters:\n\t', extractor.enabledImagetypes)
      print('Enabled features:\n\t', extractor.enabledFeatures)
      
      features = extractor.execute(image3D, mask)

      最终得到的features是一个元组,大约包含100多个数据,每个数据都是浮点数,衡量了肿瘤的统计学,形状,纹理等特征,基于这些特征,经过特征筛选,使用机器学习方法进行建模,是当前比较流行的肿瘤疗效预测,预后预测的研究思路

    4.   影像组学的包的地址:影像组学特征介绍,此外还会使用不同的滤波器对图像进行处理提取更多的特征,但思路是一样的:filter介绍

       

     

    展开全文
  • 使用Pyradiomics(Python)提取图像(.nrrd)影像组学特征 一、首先要安装Python和Pyradiomics 需要注意的的是Pyradiomics需要C++支持,Microsoft C++ 生成工具可以解决 直接安装pyradiomics,pip会自动安装其他...

    使用Pyradiomics(Python)提取图像(.nrrd)影像组学特征

    一、首先要安装Python和Pyradiomics

    需要注意的的是Pyradiomics需要C++支持,Microsoft C++ 生成工具可以解决
    直接安装pyradiomics,pip会自动安装其他pyradiomics所需的安装包

    pip install pyradiomics
    

    二、数据格式及数据储存格式

    数据格式:图像使用的是.nrrd格式储存,每个受试者两个文件,一个是图像,一个是体素感兴趣区(VOI)
    数据储存格式:两个文件夹一个存放所有的图像,一个存放所有的VOI
    注意:图像的命名与VOI命名如下,如test1.nrrd(图像文件)和 test1.nrrd(VOI文件)

    三、组学特征提取

    需要修改的是四处:1. tree1,是图像文件的地址;2. tree2,是VOI文件的地址;3. tree3,是参数配置文件,格式为.yaml;4. 特征提取结束后结果文件储存位置

    import radiomics
    import radiomics.featureextractor as FEE
    import os
    import csv
    import pandas as pd
    
    tree1 = r'G:\img'
    tree2 = r'G:\voi'
    tree3 = r'G:\parameter.yaml'
    tree4 = r'results.csv'
    
    extractor = FEE.RadiomicsFeatureExtractor(tree3)
    namelist = []
    valuelist = []
    result = []
    for root, dirs, files in os.walk(tree1):
        for name in files:
            result = (extractor.execute(os.path.join(tree1, name), os.path.join(tree2, name)))
            valuelist.append(result.values())
            namelist.append(name)
    with open("./csv.csv",'w',newline='') as t:
        writer = csv.writer(t)
        writer.writerow(result.keys())
        writer.writerows(valuelist)
    csv = pd.read_csv("./csv.csv")
    csv.insert(0, 'Name', namelist)
    
    csv.to_csv(tree4, index=False)
    
    展开全文
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(5)主要介绍: 特征筛选之方差选择法   针对医疗人员在影像组学研究中碰到的编程问题,李博士建议: 如果有一门编程语言基础的话会比较轻松 先学说话,再学...

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频
    本节(5)主要介绍: 特征筛选之方差选择法
     
    针对医疗人员在影像组学研究中碰到的编程问题,李博士建议:

    如果有一门编程语言基础的话会比较轻松
    先学说话,再学语法
    根据你的需求顺序,而非课本安排的顺序来学

    方差选择法:
    思考:一个能用来做分类的特征,它的方差应该是怎么样的?

    方差公式:
    在这里插入图片描述

    方差选择法进行降维的代码实现:

    import pandas as pd
    import numpy as np
    from sklearn.utils import shuffle
    
    xlsx1_filePath = 'C:/Users/RONG/Desktop/PythonBasic/data_A.xlsx'
    xlsx2_filePath = 'C:/Users/RONG/Desktop/PythonBasic/data_B.xlsx'
    data_1 = pd.read_excel(xlsx1_filePath)
    data_2 = pd.read_excel(xlsx2_filePath)
    rows_1,__ = data_1.shape
    rows_2,__ = data_2.shape
    data_1.insert(0,'label',[0]*rows_1)
    data_2.insert(0,'label',[1]*rows_2)
    data = pd.concat([data_1,data_2])
    data = shuffle(data)
    data = data.fillna(0)
    
    X = data[data.columns[0:]]
    X.head()
    

    方差选择法:

    # VarianceSelection
    from sklearn.feature_selection import VarianceThreshold
    selector = VarianceThreshold(1e10)  # 注意修改参数达到筛选目的
    selector.fit_transform(X)
    # print('EveryVaris:'+str(selector.variances_))
    print('selectedFeatureIndex:'+str(selector.get_support(True)))
    print('selectedFeatureNameis:'+str(X.columns[selector.get_support(True)]))
    # print('excludedFeatureNameis:'+str(X.columns[~ selector.get_support()]))  # ‘~’取反 
    

    Output:

    # selectedFeatureIndex:[17 30 34 92]
    # selectedFeatureNameis:Index(['original_firstorder_Energy', 'original_firstorder_TotalEnergy',
    #        'original_glcm_ClusterProminence',
    #        'original_glszm_LargeAreaHighGrayLevelEmphasis'],
    #      dtype='object')
    

    作者:北欧森林
    链接:https://www.jianshu.com/p/7e44f3b53411
    来源:简书,已获授权转载

    RadiomicsWorld.com “影像组学世界”论坛:
    影像组学世界/RadiomicsWorld

    展开全文
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(6)主要介绍: 特征筛选之LASSO回归分析(理论通俗讲解) LASSO (Least Absolute Shrinkage Selector Operator) 一句话掌握Lasso:把不重要特征的系数变为0   ...

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频
    本节(6)主要介绍: 特征筛选之LASSO回归分析(理论通俗讲解)

    LASSO (Least Absolute Shrinkage Selector Operator)
    一句话掌握Lasso:把不重要特征的系数变为0
     
     
    在这里插入图片描述

    作者:北欧森林
    链接:https://www.jianshu.com/p/e518b7b5f3ce
    来源:简书,已获授权转载

    RadiomicsWorld.com “影像组学世界”论坛:
    影像组学世界/RadiomicsWorld

    展开全文
  • 大家应该看过一些影像组学的论文,里面动辄就提取出上千种特征。这上千种怎么来的?秘诀就是在原始图像以外,还对原始图像衍生出的多种类型滤波图像,并对滤波图像进行了特征提取。 滤波即卷积。做不同类型的卷积,...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(7)主要介绍: 特征筛选之LASSO回归分析(代码实现) import pandas as pd import numpy as np from sklearn.utils import shuffle from sklearn.preprocessing ...
  • 本节(23)主要讲解: 主成分析PCA,影像组学降维和特征筛选的区别 0. PCA(Principal component analysis)的数学原理 1. 导入包 import numpy as np import pandas as pd from sklearn.utils import shuffle from ...
  • 影像组学简述

    万次阅读 多人点赞 2018-10-11 13:28:39
    影像组学简述 影像组学的工作流程 一、 图像采集 多模态的数据采集方法,使用各种成像方法的都有,...影像组学特征可以分为:形状特征,一阶直方图特征,二阶直方图或纹理特征。还有一些获取于特定图像的影像组学特...
  • 所谓影像组学,是对医疗影像进行定量描述和定量分析的一种研究方法,将视觉影像信息转化为深层次的特征来进行量化研究。 放射组学(Radiomics):从医学影像图像中挖掘高通量的定量影像特征,使用统计学方法筛选出...
  • 影像组学

    千次阅读 2021-01-23 20:54:07
    3、影像组学特征提取; 4、特征降维; 5、模型建立、优化。 医学影像有哪些 主要有CT(电子计算机断层扫描)、MRI(磁共振成像)、PET(正电子发射断层扫描) 2、有哪些好用的医学影像配准软件? 首推Ants, 其次...
  • 影像组学技术方法

    万次阅读 多人点赞 2018-11-21 19:00:59
    从影像图像中提取的全部特征就是“影像组学”,而通过特征选择后所挑选出那些具有预测价值特征集合通常被称为“影像组学标签(radiomic signature)”。 影像组学源于计算机辅助检测或诊断(computer-aided ...
  • 影像组学应用技术

    2021-07-23 19:11:27
    2012年,受生物医学领域高产出的“组学”概念的启发,荷兰Lambin等首次提出了影像组学(radiomics)的概念,即使用计算机软件从影像图像中自动化抽取海量影像定量特征,借助大数据分析手段,解析临床信息,用于肿瘤...
  • 2012年,影像组学(radiomics)概念的提出,影像组学分析流程主要包括:图像获取、病灶分割、特征提取和筛选、模型构建和临床信息解析等;其研究涉及医工交叉学科, 需要医学和工科紧密合作,共同解决医生们在临床...
  • 影像组学技术与应用

    2021-04-13 19:25:16
    2012年,受生物医学领域高产出的“组学”概念的启发,荷兰Lambin等首次提出了影像组学(radiomics)的概念,即使用计算机软件从影像图像中自动化抽取海量影像定量特征,借助大数据分析手段,解析临床信息,用于肿瘤...
  • 影像组学延伸领域也随之高速增长,同时也推动了人工智能技术在医学科研应用领域快速地发展,相关科研成果和学术论文数量逐年激增,医学组学涉及的技术如图像获取、病灶识别病灶分割、特征提取和筛选、模型构建和临床...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(1)主要介绍: 影像组学基本概念和流程 影像组学研究基本流程: 获取图像 图像分割 特征提取 特征筛选 分类/预测 作图   视频中李博士引用了两篇文献,...
  • 大话脑影像:浅谈影像组学

    千次阅读 2020-02-17 20:09:07
    提笔写下浅谈影像组学几个字,我略微有点忐忑以及不安,史诗般的宏大题目,怕自己HOLD不住,但在这个满世界人工智能的时代,不做点严肃文学科普工作,不是我的风格,毕竟,我下楼吃碗面,老板都跟我说,根据他潜心...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(5)主要介绍: 特征筛选之方差选择法 针对医疗人员在影像组学研究中碰到的编程问题,李博士建议: 如果有一门编程语言基础的话会比较轻松 先学说话,再学...
  • 使用R语言对影像组学数据进行处理 测试数据 library(caret);library(glmnet);library(pROC) set.seed(123456) data <- read.csv("data.csv", header = T) p.data <- preProcess(data[,-1],method = c(...
  • 影像组学导论】第一部分:官方定义解读。这咋整?读懂这个频道就够了! 公众号:挺烦的统计 “请问特征提取之后我该如何分析?” “我想找出有统计学差异的特征,要用什么统计学方法?” “LASSO的内涵是...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(23)主要讲解: 主成分析PCA,影像组学降维和特征筛选的区别 0. PCA(Principal component analysis)的数学原理 1. 导入包 import numpy ...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(6)主要介绍: 特征筛选之LASSO回归分析(理论通俗讲解) LASSO (Least Absolute Shrinkage Selector Operator) 一句话掌握Lasso:把不重要特征的...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(7)主要介绍: 特征筛选之LASSO回归分析(代码实现) import pandas as pd import numpy as np from sklearn.utils import shuffl...
  • 影像组学的概念最早由荷兰学者在2012年提出,其强调的深层次含义是指从影像(CT、MRI、PET等)中高通量地提取大量影像信息,实现肿瘤分割、特征提取与模型建立,凭借对海量影像数据信息进行更深层次的挖掘、预测和...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(17)主要介绍: lasso相关的两幅图的python实现 1. 导入各种包 import pandas as pd import sklearn from sklearn.utils import shuffle from sklearn.linear_...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(24)主要讲解: 解读一篇文献,了解不同的降维、分类器组合方法     这篇文献2018年发表在European Radiology上: Radiomics features on non-contrast-...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(12)主要介绍: SVM参数优化(代码) 参数优化: 自动寻找最合适的γ和C组合。 原理:遍历所有给定的参数组合,对数据进行训练,找到最合适的参数组合。 函数:...
  • 影像组学世界/RadiomicsWorld 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(37)主要介绍一篇文献,关于 机器学习模型判断脑卒中发病时间 文献题目:Machine Learning Approach to Identify Stroke Within...
  • 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(10)主要介绍: T检验+lasso+随机森林 李博士借用和女朋友一起吃饭这个实例来说明:爱情和机器学习一样,复杂深奥、难以揣测。 import pandas as pd import ...
  • 影像组学研究浅见

    2021-05-11 19:28:48
    2012年由荷兰学者PhilippeLambin首次提出,其定义是借助计算机软件,从医学影像图像中挖掘海量的定量影像特征,使用统计学和/或机器学习的方法,筛选最有价值的影像组学特征,用以解析临床信息,用于疾病的定性、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,376
精华内容 550
关键字:

影像组学特征筛选