aksh-ai / neuralBlack

A Multi-Class Brain Tumor Classifier using Convolutional Neural Network with 99% Accuracy achieved by applying the method of Transfer Learning using Python and Pytorch Deep Learning Framework
Other
125 stars 44 forks source link
accuracy brain brain-tumor brain-tumor-classification brain-tumor-detection brain-tumour braintumour classification cnn cnn-classification deep-learning neural-networks pytorch resnet resnet-50 torch transfer-learning transferlearning

neuralBlack

Note: I have completely changed the POC for this project, and have not updated it over here since I'm publishing it as a paper.

neuralBlack is a complete brain tumor detection, classification, and diagnosis system with high accuracy (99.3%) that uses state of the art Deep Learning methods.

ResNet50 Neural Network Architecture

NN image

Dataset

We have used brain tumor dataset posted by Jun Cheng on figshare.com.

This brain tumor dataset containing 3064 T1-weighted contrast-inhanced images from 233 patients with three kinds of brain tumor: meningioma (708 slices), glioma (1426 slices), and pituitary tumor (930 slices).

Modules

Note: We have included few images for testing under test_images directory.

Running the classifier

Download the classifier model '.pt' file from this drive link and place it under a folder named 'models' in the same directory where the files of this repository are present.

Before running the programs, kindly install the requirements as given in Requirements section of this README.

Screenshots (Results & Web Interface)

Web Interface

Home Page

index

Classification Results via Web Interface

class 1

class 2

class 3

Classifier Evaluation

Loss Graph

Loss Metrics

Accuracy Graph

Accuracy Metrics

Confusion Matrix on Test set

Confusion Matrix

Requirements

Python 3 is required.

Computational Specifications

Project done using Google Colab with follwing specifications:

Library Requirements

We'll be using the following libraries to complete our classification problem:

The above mentioned libraries comes pre-installed and pre-configured with Google Colab.

Install the required libraries on your computer using the pip package manager.

For pip version 19.1 or above:

pip install -r requirements.txt --user

or

pip3 install -r requirements.txt --user

Pytorch

Follow the steps for installation given in the official website of Pytorch.

About

This project was done by Akshay Kumaar M. Paper is in progress. All the references papers have been included at the end of this repository's README.

References

Thanks to Vinoth Arjun for giving ideas for custom dataset class with different real-time augmentations.

License

Copyright 2020 Akshay Kumaar M

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Research Papers

Documentations

Future Scopes