Intelligent Quality Control using AutoBundles

Project Details

Project Lead
Eleftherios Garyfallidis 
Project Manager
Tingyi Wanyan 
Project Members
Tingyi Wanyan, Bishakh Chandra Ghosh, Saber Sheybani, Bishakh Chandra Ghosh, Serge koudoro  
Indiana University, Intelligent Systems Engineering, Neuroengineering, Garyfallidis Lab  
Biomedical Engineering (103) 


DIPY is a brain imaging and diffusion MRI software analysis library built in Python. Diffusion MRI is a unique non-invasive MRI technique that is used to study the structural connectivity of the brain. DIPY is already heavily tested however now we would like to allow it to use advanced and innovative quality control that works along large pipelines and across many datasets. Which is currently not available. In the field of diffusion MRI there is large amount of different algorithms that work sequentially from the input to the output. The output is usually a visual approximation of the white matter. As a first step we would like to create a system that directly checks the final output and generates reports if something is missing. To do so we are developing a new algorithm called AutoBundles which can quickly segment the tractograms and report which pathways are available in the dataset.

Intellectual Merit

This is an automated quality control project. Automatic quality control is paramount for software development and scientific research as it can tell us which exact parts of the algorithmic pipeline need improvement. This project will advance knowledge and understanding within the field of brain imaging as it allows us to have a design platform to create new algorithms that can be tested with a range of datasets.

Broader Impacts

In brain imaging research there are many libraries and software packages which do not provide any quality assurance. So, what often happens is that as these packages start growing bigger and bigger plenty of bugs appear. The reason why often these systems do not have quality control is that it is too complicated to create. For example, it is common that to have such algorithms that do the quality control successfully you need to invent new algorithms in A.I. or M.L. We want to make sure that this will not happen with DIPY and that it will always be able to give the correct solutions given different input datasets. And we are more than happy to create such intelligent algorithms that can perform QC so that the research communities can truly depend and rely on DIPY. AutoBundles will be the first algorithm to try and hopefully more will come in the future.

Scale of Use

At first we will need to have access to a few nodes. Some of them will need GPUs. We need the GPUs for remote 3D visualization (primary reason) or for deep learning tasks (secondary reason). Also the IO datasets used or created will be initially a few Terabytes. We hope to be able to run our quality control scripts once a day every day. Some of the execution pipelines will take from a few hours to many hours (e.g. 10 hours) per node. At first stage we will not need many nodes but as more datasets are included then we will need more processing power.