/Brain-Tumour-Classification

This project was developed as a solution to medical science which aims to classify different types of brain cancers using cutting edge advanced deep learning techniques.

Primary LanguageJupyter Notebook

Brain MRI Image Classification Using Deep Learning Models

Made With Python Tensorflow-Badge Keras-Badge Jupyter-Notebook-Badge NVIDIA-Tesla-T4-Badge Repo-Size-Badge Open In Colab

GitHub-Contributors GitHub-Issues GitHub-Stars GitHub-Forks

Brain-MRI-Image-Classification-Using-Deep-Learning-Cover-Photo

Introduction

  • The occurrence of brain tumor patients in India is steadily rising, more and more cases of brain tumors are reported each year in India across varied age groups. The International Association of Cancer Registries (IARC) reported that there are over 28,000 cases of brain tumours reported in India each year and more than 24,000 people reportedly die due to brain tumours i.e 85.7% people die annually from the total reported cases. Brain tumors are a serious condition and in most cases fatal in later stages if not detected early on.

  • Healthcare sector can benefit significantly from the field of Artificial Intelligence by developing systems which have the capability to detect these fatal diseases in the early stages because most diseases when detected early can be treated successfully before it's too late and same is the case with various different kinds of cancer.

  • The goal of the project was to develop a deep learning model which has the capability to classify the brain MRI images consisting of tumors with higher accuracy.

How to Run

  • To view the jupyter notebook, click on notebook.ipynb
- CAUTION: The total size of repository is atleast 1.56 GB. 
- Make sure you have enough space before cloning.

About Dataset

Results

  • Developed 3 Deep Neural Network models i.e. Multi-Layer Perceptron, AlexNet-CNN, and Inception-V3 in order to classify the Brain MRI Images to 4 different independent classes.
  • Inception-V3 model used is a pre-trained on the ImageNet dataset which consist of 1K classes but for this project we have tuned the later part i.e. the Fully-Connected part of the model while retaining the weights of the CNN part to satisfy the needs of this work.
  • Below table provides the results obtained on the testing dataset: Open In Colab Model-Results-On-Testing-Dataset
  • The pre-trained Inception-V3 model has performed significantly well with an accuracy over 96% as compare to AlexNet-CNN and Multi-Layer Perceptron deep neural network model.

Future Works

  • To improve the robustness and accuracy of model further we can develop a efficient Data-Augmentation pipline in order to expose the CNN model to more variants of the Brain MRI Images.
  • Training process can be migrated to TPUs (Tensor Processing Units) by representing the data in TFRecord format for significant reduction in training time.
  • Implementation of Region Convolutional Neural Networks (R-CNN) to not only detect the tumor in a Brain MRI Image but also label, localise and highlight the tumor region.