MATLAB source code for automated measurement of anteroposterior diameter and foraminal widths in MRI images for lumbar spinal stenosis diagnosis (PLoS ONE 2020)
Description
Lumbar Spinal Stenosis causes low back pain through pressures exerted on the spinal nerves. This can be verified by measuring the anteroposterior diameter and foraminal widths of the patient’s lumbar spine. Our goal is to develop a novel strategy for assessing the extent of Lumbar Spinal Stenosis by automatically calculating these distances from the patient’s lumbar spine MRI. Our method starts with a semantic segmentation of T1- and T2-weighted composite axial MRI images using SegNet that partitions the image into six regions of interest. They consist of three main regions-of-interest, namely the Intervertebral Disc, Posterior Element, and Thecal Sac, and three auxiliary regions-of-interest that includes the Area between Anterior and Posterior elements. A novel contour evolution algorithm is then applied to improve the accuracy of the segmentation results along important region boundaries. Nine anatomical landmarks on the image are located by delineating the region boundaries found in the segmented image before the anteroposterior diameter and foraminal widths can be measured. The performance of the proposed algorithm was evaluated through a set of experiments on the Lumbar Spine MRI dataset containing MRI studies of 515 patients. These experiments compare the performance of our contour evolution algorithm with the Geodesic Active Contour and Chan-Vese methods over 22 different setups. We found that our method works best when our contour evolution algorithm is applied to improve the accuracy of both the label images used to train the SegNet model and the automatically segmented image. The average error of the calculated right and left foraminal distances relative to their expert-measured distances are 0.28 mm (p = 0.92) and 0.29 mm (p = 0.97), respectively. The average error of the calculated anteroposterior diameter relative to their expert-measured diameter is 0.90 mm (p = 0.92). The method also achieves 96.7% agreement with an expert opinion on determining the severity of the Intervertebral Disc herniations. This data consists of the MATLAB source code, improved label images, and composite images used in the experiment. Additional datasets and source code are necessary: - The Lumbar Spine MRI Dataset http://dx.doi.org/10.17632/k57fr854j2.2 - The Radiologists Notes for Lumbar Spine MRI Dataset http://dx.doi.org/10.17632/s6bgczr8s2.2 - The MATLAB source code for developing Ground Truth Dataset, Semantic Segmentation, and Evaluation for the Lumbar Spine MRI Dataset http://dx.doi.org/10.17632/8cp2cp7km8.2 - The original (unmodified) Label Image Data for Lumbar Spine MRI Dataset http://dx.doi.org/10.17632/zbf6b4pttk.2
Files
Steps to reproduce
This repository only contains the source code for contour evolution, boundary delineation, and important points location. For image segmentation source code and Lumbar Spine MRI dataset please check: - Lumbar Spine MRI dataset can be found on http://dx.doi.org/10.17632/k57fr854j2.2 - SegNet training and testing MATLAB source code can be found on http://dx.doi.org/10.17632/8cp2cp7km8.2 Execute initialise.m from the base folder to start. This will also change the current folder to \09_Source_Code\09_Boundary_Improvement Execute step_04_calc_bfscore.m to show bfscores along the important boundary Execute step_05_collate_results to get the measurement errors Execute step_06_generate_figure_10_to_13.m to generate figures 10 to 13 in the paper Execute step_07_visualise_results.m to show the result UI