Built to order

Brain Tumor Detection using CNN

A deep-learning system that detects brain tumors from MRI scans using a convolutional neural network, with Grad-CAM heatmaps that visually explain where the model sees the tumor. Upload a scan in the web app and get a classification with confidence — the most-searched deep-learning final-year topic.

Illustrative mockup of the Brain Tumor Detection using CNN interface.
More project photos (2)

The problem

Manual inspection of MRI scans is slow, expensive, and depends heavily on specialist availability. NeuroScan demonstrates how a trained CNN can screen scans quickly while remaining interpretable — a point that impresses examiners and makes viva answers easy. The project ships with a working upload-and-diagnose Flask web app: drop in an MRI image, get the predicted class with a confidence score plus the Grad-CAM overlay showing the tumor region the model focused on.

How it works

  1. MRI scans are preprocessed — resized to a fixed input size, normalized, and augmented (rotation, flip, zoom) to improve generalization.
  2. A convolutional neural network (custom CNN, with a VGG16 transfer-learning variant) is trained on a labeled public MRI dataset to classify scans as tumor or non-tumor.
  3. At inference time, the trained model predicts the class of an uploaded scan along with a confidence score.
  4. Grad-CAM back-propagates the class score to the last convolutional layer, generating a heatmap of the regions that most influenced the decision — the visual explanation an examiner asks about.
  5. The NeuroScan web app presents the original scan, the Grad-CAM overlay, the predicted class, and the confidence score in a clean results dashboard.

Project features

  • CNN classifier for brain tumor detection on MRI scans (tumor vs. non-tumor)
  • Transfer-learning option (VGG16 backbone) plus a custom CNN baseline for comparison
  • Grad-CAM heatmaps that visually explain every prediction — the key differentiator
  • Upload-and-diagnose NeuroScan web app: drag in a scan, get class + confidence + overlay
  • Model training pipeline with data augmentation, normalization, and checkpointing
  • Accuracy / precision / recall / F1 metrics and confusion-matrix evaluation
  • Side-by-side original vs. heatmap view for presentations and report figures
  • Clean, documented, runnable codebase with a requirements file

What is included

  • Full source code (training scripts, Grad-CAM module, Flask app)
  • Trained model weights for instant demo without retraining
  • Complete project report PDF (with architecture diagrams and results)
  • Project PPT for your final presentation
  • Viva Q&A document covering CNN, transfer learning, Grad-CAM, and medical-imaging questions
  • Dataset setup guide with public dataset links
  • Installation and run instructions

Limitations & prerequisites

  • This is an academic demonstration project, NOT a clinical diagnostic tool — it is not validated for medical use and must never be used for real diagnosis.
  • Performance depends on the public training dataset; accuracy on unseen scanners or protocols may differ.
  • Binary classification (tumor vs. non-tumor) is implemented; multi-class tumor-type classification is a listed extension.
  • Training a deep CNN benefits from a GPU; CPU-only machines can run the demo with the provided trained weights.
Components & software requirements
  • Python, TensorFlow/Keras, CNN (custom architecture + VGG16 transfer learning), Grad-CAM, Flask web app, NumPy, OpenCV, scikit-learn, Matplotlib

Download abstract (PDF)

Related guides

All guides
Technical illustration of a cloud server pushing event envelopes outward to web application endpoints for payments, dashboards and chat.Web development and IoT students who have built a REST API or an ESP32 project and now need external services (payments, GitHub, messaging) to notify their app when things happen

Webhooks Explained: Receive Data from Payments, GitHub and IoT

A webhook lets a service call your server the moment an event happens — payments, code pushes, form submissions. This guide explains the event anatomy, HMAC signature verification, the fast-acknowledge reliability pattern, local testing, and how webhooks compare with polling, WebSockets and SSE.

Read guide
Illustration of object tracking showing video frames with bounding boxes and persistent ID labels following people and vehicles, comparing motion prediction and appearance matching.B.E./B.Tech Computer Science and Electronics students building video analytics projects — people counting, vehicle tracking, sports analysis — who have detection working and need

Object Tracking: DeepSORT and ByteTrack Explained

Detection finds objects per frame; tracking keeps their identities across frames. This guide explains tracking-by-detection, Kalman motion models, DeepSORT's appearance embeddings vs ByteTrack's low-confidence box recovery, tracking metrics (HOTA, IDF1, ID switches), and the tuning parameters that determine real-world quality.

Read guide
Illustration of image segmentation showing U-Net's U-shaped encoder-decoder with skip connections producing pixel masks, alongside Mask R-CNN detecting instances with masks.B.E./B.Tech Computer Science and AI/ML students moving from image classification or detection to pixel-level understanding — medical imaging, defect detection, autonomous driving

Image Segmentation: U-Net and Mask R-CNN

When projects need pixel-level answers, segmentation delivers. This guide explains semantic vs instance vs panoptic segmentation, U-Net's encoder-decoder with skip connections, Mask R-CNN's parallel mask head, Dice and IoU evaluation, paired augmentation, and how to choose the right architecture for your data and question.

Read guide
Get a quotation