Classification and Region Analysis of COVID-19 Infection using Lung CT Images and Deep Convolutional Neural Networks
This work proposes a two-stage deep Convolutional Neural Networks (CNNs) based framework for delineation of COVID-19 infected regions in Lung CT images. In the first stage, initially, COVID-19 specific CT image features are enhanced using a two-level discrete wavelet transformation. These enhanced CT images are then classified using the proposed custom-made deep CoV-CTNet. In the second stage, the CT images classified as infectious images are provided to the segmentation models for the identification and analysis of COVID-19 infectious regions. In this regard, we propose a novel semantic segmentation model CoV-RASeg, which systematically uses average and max pooling operations in the encoder and decoder blocks. This systematic utilization of max and average pooling operations helps the proposed CoV-RASeg in simultaneously learning both the boundaries and region homogeneity. Moreover, the idea of attention is incorporated to deal with mildly infected regions. The proposed two-stage framework is evaluated on a standard Lung CT image dataset, and its performance is compared with the existing deep CNN models. The performance of the proposed CoV-CTNet is evaluated using Mathew Correlation Coefficient (MCC) measure (0.98) and that of proposed CoV-RASeg using Dice Similarity (DS) score (0.95). The promising results on an unseen test set suggest that the proposed framework has the potential to help the radiologists in the identification and analysis of COVID-19 infected regions.
In this repository, we provide the MATLAB GUI and Test Code for the COVID-19 Diagnostic System for the research community to use our model.
The proposed COV-CTNet Classification model takes COVID-19 CT Lungs images as input and predicts COVID-19 Infected from Healthy CT images. We used a Discrete Wavelet Transform (DWT) and Data augmentation as a pre-processing step to improve input representation as well as increasing the samples to enhance the performance of the CNN model.
The proposed COV-RAseg segmentation model takes COVID-19 Infected CT Lungs image as input and predict a binary mask as well as an original with predicted mask overlay image describing the COVID-19 infected lungs region. This helps in determining the severity of a patient's condition.
Dataset: http://medicalsegmentation.com/covid19/
Two main steps are performed on original dataset.
- 3D to 2D conversion
- Separation of COVID-19 Infected and Heathy slices for classification and segmentation challenge.
- Matlab 2019b.
- Deep Learning library.
- NVIDIA GeForce GTX Titan X Computer.
- Clone this repo.
git install https://github.com/PRLAB21/COVID-19-Diagnostic-System.git
- Change directory to cloned folder.
cd COVID-19-Diagnostic-System-master
- Download dataset and place it in following structure.
COVID-19-Diagnostic-System-master
|__dataset
|__classification
|__segmentation
-
Pre-trained models are downloaded along with this repo and are present inside trained-models directory.
-
Run either MATLAB-GUI-app or any code file present under code directory as described below.
- Open MATLAB.
- Set MATLAB folder location same as this repos folder.
- Now add each folder to MATLAB path from Current Folder panel by right clicking on each folder and selecting Add to Path > Selected Folder and Subfolders.
- Now you can run either test models individually or run MATLAB GUI App as described below.
- code/classification-codes/test_code_folder.m: Use this file for testing classification model on folder of images at once.
- code/classification-codes/test_code_single.m: Use this file for testing classification model on one particular image only.
- code/segmentation-codes/test_code_folder.m: Use this file for testing segmentation model on folder of images at once.
- code/segmentation-codes/test_code_single.m: Use this file for testing segmentation model on one particular image only.
- Inside this directory there are two GUI files, the main file is gui_detection.mlapp. In order to use MATLAB-GUI-app type following at command window.
>> gui_detection
Now the GUI interface will open after some time, then it will allow use to load image, preprocess it, detect COVID. In case if the input image was detected as COVID image then you can further analyze it for obtaining the segmentation mask.
Although, Performance of the proposed Classification CoV-CTNet and segmentation COV-RASeg outperforms with the different existing deep CNN based classification and Segmentation Models, it is worth to mention, a study on a huge number of cleanly labelled COVID-19 images is required to have a more concrete conclusion on the potential of CT images for COVID-19 diagnosis.
Khan, Saddam Hussain, et al. "Classification and Region Analysis of COVID-19 Infection using Lung CT Images and Deep Convolutional Neural Networks." arxiv preprint: 2009.08864 (2020).
@misc{khan2020classification,
title={Classification and Region Analysis of COVID-19 Infection using Lung CT Images and Deep Convolutional Neural Networks},
author={Saddam Hussain Khan and Anabia Sohail and Asifullah Khan and Yeon Soo Lee},
year={2020},
eprint={2009.08864},
archivePrefix={arXiv},
primaryClass={eess.IV}
}