项目作者: taznux

项目描述 :
Image processing tools for radiomics analysis
高级语言: C++
项目地址: git://github.com/taznux/radiomics-tools.git
创建时间: 2016-07-01T18:49:08Z
项目社区:https://github.com/taznux/radiomics-tools

开源协议:MIT License

下载


Radiomics tools

Note: Here is a full system for lung cancer screening radiomics. https://github.com/taznux/LungCancerScreeningRadiomics

Image processing tools and ruffus based pipeline for radiomics feature analysis

Super build

Just run super-build.sh

  1. ./super-build.sh

Install software

Python 3.7

Slicer 4.10

Build

  • gcc or visual studio
  • cmake
  • ITK 4.13.2
    1. ./build.sh

Tools

1. DICOMTools

  1. DICOMTagReader - Display entire DICOM tags

    1. DICOMTagReader [DICOM directory]
  2. DICOM2NRRDConverter - DICOM to nrrd (Slicer file format)
    Simple recursive converting for single patient data

    1. DICOM2NRRDConverter [DICOM directory] [nrrd directory]

    For large data

    1. python DICOM2NRRDConverter.py [DICOM directory] [nrrd directory]
  3. DICOM-RT2NRRDConverter - DICOM-RT to nrrd

2. ContourTools

  1. STAPLEComparison - variation comparison on multiple contours
  2. ExtractBoundary
  3. GTVs2ITV
  4. HoleGenerator
  5. ROIGenerator
  6. ROI2BinImage
  7. ROICropImage

3. GrowCutSegmentation

NoduleSegmentation - Segment small nodular objects for solid nodule and GGO

  1. NoduleSegmentation [InputImageFile] [SeedPoint_x] [SeedPoint_y] [SeedPoint_z] \
  2. [NoduleSize_long] [NoduleSize_short] [OutputImageFile]

4. Feature Extraction

FeatureExtraction - Extract image features from the nodule segmentation

  1. FeatureExtraction [InputImage] [LabelImage] [FeatureFile] [Label={1}]

5. Python Tools

  1. metadata.py - for handling metadata in csv or xls
  2. organize_features.py - for collecting feature data into a single csv file

6. MATLAB Tools

  1. NRRD4Matlab - for handing nrrd format in MATLAB
  2. PET2SUV - for converting raw PET image to standardized uptake value(SUV)

7. ETC

  1. RegistrationSITK - simple registration code, required SimpleITK module for python
  2. SlicerPythonExtensions - simple extensions for Slicer
    1. InterpolateROIsEffect.py
    2. LineProfile.py

6. LASSO-SVM

TBD - modeling code for radiomics features

Usage

Radiomics feature extraction pipeline example for LUNGx dataset

  1. Download DICOM images
    https://wiki.cancerimagingarchive.net/display/Public/SPIE-AAPM+Lung+CT+Challenge

    Download all DICOM images to ‘DATA’
    You can use the included metadata files for LUNGx (TrainingSet.csv and TestSet.csv)

  2. Environmental parameters
    Set your parameters in script/run_lungx.py (recommend default setting).

    1. experiment_set = 'TrainingSet'
    2. # experiment_set = 'TestSet'
    3. output_path = 'output'
    4. data_path = 'DATA'
    5. dicom_path = data_path + '/DOI'
    6. image_path = data_path + '/' + experiment_set
    7. nodule_info_path = './' + experiment_set + '.csv'
  3. Run radiomics pipeline

    1. $ python script/run_lungx.py or script/run_lungx.py
  4. Analysis feature data
    output files (intermediate images and feature data) will be generated in ‘output’ directory

  • TrainingSet: feature_list_TrainingSet.csv
  • TestSet: feature_list_TestSet.csv

Wookjin Choi wchoi1022@gmail.com