# BrainPrep **Repository Path**: songxiao1234/BrainPrep ## Basic Information - **Project Name**: BrainPrep - **Description**: Preprocessing pipeline on Brain MR Images through FSL and ANTs, including registration, skull-stripping, bias field correction, enhancement and segmentation. - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-23 - **Last Updated**: 2021-06-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Preprocessing on Brain MRI Sequence This is a pipeline to do preprocessing on brain MR images of **ADNI** dataset by using FMRIB Software Library (**FSL**) and Advanced Normalization Tools (**ANTs**). ## 1. Install FSL & ANTs Download and install **FSL** as instructions [here](https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/FslInstallation). Compile **ANTs** from source code in [Linux and macOS](https://github.com/ANTsX/ANTs/wiki/Compiling-ANTs-on-Linux-and-Mac-OS), or in [Windows 10](https://github.com/ANTsX/ANTs/wiki/Compiling-ANTs-on-Windows-10). ## 2. Install Python Packages All required libraries are listed as below: - tqdm - numpy - scipy - nipype - nibabel - matplotlib - sciKit-fuzzy (optional) - scikit-learn (optional) ## 3. Download Dataset The dataset used in this repo is AD and NC screening images of ADNI1 and ADNI2. See [README.md in *data*](https://github.com/quqixun/BrainPrep/tree/master/data). Here is one sample of original image. original image ## 4. Reorgnization Files Switch the working directory to *src*. Run reorgnize.py, which merge ADNI1 and ADNI2 into one folder. ``` python reorgnize.py ``` ## 5. Registration Run registraion.py to transform images into the coordinate system of template by **FSL FLIRT**. ``` python registraion.py ``` The output of the above image from this step looks like: registration ## 6. Skull-Strpping Run skull_stripping.py to remove skull from registrated images by **FSL BET**. ``` python skull_stripping.py ``` Output: skull stripping ## 7. Bias Field Correction Run bias_correction.py to remove bias-field signal from images by **ANTs**. ``` python bias_correction.py ``` Output: bias field correction ## 8. Enhancement (optional) Based on outputs from step 7, run enhancement.py to enhance images by **histogram equalization**. ``` python enahncement.py ``` ## 9. Tissue Segmentation (optional) Based on outputs from step 7, run segment.py to segment brain into GM, WM and CSF by **KMeans** or **Fuzzy-CMeans** (you should change settings in script). ``` python segment.py ``` Or run fast_segment.py to do segmentation by **FSL FAST**. ``` python fast_segment.py ```