Giter Site home page Giter Site logo

riddhi9570 / brain-tumor-detection Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aryanyuva/brain-tumor-detection

1.0 0.0 0.0 6.85 MB

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.

Python 52.57% CSS 11.74% HTML 35.70%

brain-tumor-detection's Introduction

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

brain-tumor-detection's People

Contributors

riddhi9570 avatar aryanyuva avatar kumaryash18 avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.