Skip to content

This is our collaborative project on Brain Tumor Detection using CNN. This is a trained model that identifies from the MRI images of brain that it has tumor or not.

Notifications You must be signed in to change notification settings

Riddhi9570/Brain-Tumor-Detection

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Brain-Tumor-Detection

A brain tumor is a very critical disease which causes deaths of many individuals. Currently, doctors locate the position and the area of brain tumor by looking at the MR Images of the brain of the patient manually. This results in inaccurate detection of the tumor and is considered very time consuming. This project deals with such a system, which uses computer, based procedures to detect tumor blocks using Convolution Neural Network Algorithm for MRI images of different patients.

The complete project report can be found here.

Objective

  • The main aim of the application is tumor identification.
  • The main reason behind the development of this application is to provide proper treatment as soon as possible and protect the human life which is in danger.
  • This application is helpful to doctors as well as patient.
  • The manual identification is not so fast, more accurate and efficient for user. To overcome those problems this application is designed.

Dataset

The dataset selected for our model is acquired from the internet. In this dataset, there were different folders with a different set of images, one with a healthy brain image and the other with a brain tumor image. The MRI images present in the dataset are of different dimensions. This dataset is selected because acquiring data sets from hospitals is not a very simple task. The data set used is available on the internet website Kaggle and the link to reach there is provided below.

https://www.kaggle.com/datasets/navoneel/brain-mri-images-for-brain-tumor-detection.

Using these datasets, we have trained our model to predict brain tumor in MR images of any brain.

Software Requirements

To run this project locally, you need to install the following :

  • Python
  • PIP
  • VS Code
  • Tensor Flow
  • Keras
  • Matplotlib
  • NumPy
  • SciKit Learn
  • Flask

Experimental Results

When the model is applied to the testing data set for 32 epochs, a validation accuracy of upto 85.19% is obtained and the validation loss is also less.

lossed_plot

fig. Model Loss

As seen in the above figure, when the model is applied to the validation and testing set, the loss gradually decreases with the increasing number of epochs.

accuracy_plot

fig. Model Accuracy

The accuracy of the convolutional neural network model achieved after applying it to the testing set was 97.79%. with a very minimal loss with increasing epochs.

image image

fig. Model History

From above figures, it can be confirmed that the accuracy increases with the increase in the number of epochs and there is a decrease in loss of the testing set.

image

fig. Model Summary

Demonstration

The main model is created using python. But we have also created a simple web application using flask and html to manually test the results by uploading images with a user-friendly interface.

Sample Input 1

0 (no)

fig. Non-tumor Brain MR Image

image

fig. Inititial Interface

image

fig. Uploading MRI Image of Non-tumor Brain

image

fig. Predicted Output for Sample Input 1

Sample input 2

3 (yes)

fig. Tumor Brain MR Image

image

fig. Uploading MRI Image of Tumor Brain

image

fig. Predicted Output for Sample Input 2

Hence, the predicted output identifies the tumor and non-tumor brain MRI images.

Conclusion and Future Scope

The created model achieves an accuracy of 97.79% when applied to the training set and an accuracy of upto 85.19% when applied to the validation set. It is observed on extermination that the proposed approach needs a vast training set for better accurate results. In future, different datasets would be applied to this model, to further increase the overall accuracy. The proposed approach can be further improvised through in cooperating weakly trained algorithms that can identify the abnormalities with a minimum training data and also self-learning algorithms would aid in enhancing the accuracy of the algorithm and reduce the computational time.

Team Members

About

This is our collaborative project on Brain Tumor Detection using CNN. This is a trained model that identifies from the MRI images of brain that it has tumor or not.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 52.6%
  • HTML 35.7%
  • CSS 11.7%