Skip to content

Code for bachelorsthesis of Dario "Evaluating the Potential of AI-Based Chromatin Imaging Analysis to detect Signals of Neurodegenerative Diseases"

Notifications You must be signed in to change notification settings

GVS-Lab/chromatin_ndd

Repository files navigation

Chromatin NDD

This repository contains the code for the bachelor’s thesis of Dario. It encompasses a pipeline the process, segment and extract features describing the chromatin organisation of stained nuclei in confocal images. A file describing all the extracted features is included. Furthermore, a 3D adaptation for calculation Gray-Level-Co-occurence matrix in 3D using python is also part of this repository.

Project structure

exp1_rep1, exp1_rep2, exp3, exp3_dapi

These folders contain the notebooks used for the analysis of the experments described in the thesis after extracting the features using the code in this repository.

features

Contains the python scripts to extract the features from nuclear crops (get called by feature_extraction).

segmentation_comparison

Code and notebooks used to compare the different segmentation methods.

feature_description.csv

Description of the extracted features

glcm_testcases.ipynb

Notebook providing testcases for the 3D adaptation of Gray-Level-Co-occurence matrix to test that it works correctly

global_morphology_test.ipynb

Notebook that was used in an attempt to adapt global morphology features to a 3D version, including a suggested approach that should work (at the bottom)

simplified_uml_diagram.png

A simplified UML diagram of the pipeline (only including the most important functions and not including input parameter)

Usage of pipeline

The repository contains several scripts and notebooks to preprocess data, perform segmentation and extract features.

run_all_pipelines.py

- calls the other scripts to run the whole pipeline

preprocessing.py

- extracts files from microscope project file and performs the preprocessing as described in the methods section of the thesis

segmentation.py

- segments the nuclei from the images using MultiOtsu thresholding

feature_extraction.py

- extracts nuclear crops from images and calculates features thereof

How to run the complete pipeline:

python run_all_pipelines.py --input_dir <input directory> --output_dir <output directory> --run_all

3D adaptation of Gray-Level-Co-occurence matrix (GLCM)

The code to calculate GLCM of 3D images can be found in features/utils/graycomatrix.py
Features of the calculated GLCMs were extracted in features/img_texture.py
Testcases to see that the 3D adapation worked are shown in glcm_testcases.ipynb

About

Code for bachelorsthesis of Dario "Evaluating the Potential of AI-Based Chromatin Imaging Analysis to detect Signals of Neurodegenerative Diseases"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages