An AI-powered web application for brain tumor analysis from MRI images. The system combines deep learning-based tumor classification and tumor segmentation to assist in identifying brain tumors while generating detailed prediction reports.
Brain Tumor Analysis AI is a deep learning application that allows users to upload MRI brain scans and receive automated predictions regarding tumor presence. The project integrates multiple computer vision models into a web application that performs inference, segmentation, visualization, and report generation.
The project was developed as part of an academic collaboration to demonstrate practical applications of Artificial Intelligence in medical image analysis.
- Brain tumor classification
- Brain tumor segmentation
- MRI image upload interface
- Automatic preprocessing pipeline
- Prediction visualization
- Report generation
- Flask-based web application
- Modular inference pipeline
- Python
- Flask
- TensorFlow / Keras
- OpenCV
- NumPy
- HTML
- CSS
Brain-Tumor-Analysis-AI/
├── brain_tumor/
│ └── data.yaml
│
├── data/
│ └── selected_indices.json
│
├── models/
│ ├── classifier_model.py
│ ├── model_utils.py
│ └── unet_model.py
│
├── scripts/
│ ├── static/
│ ├── templates/
│ ├── app.py
│ ├── inference.py
│ ├── inference_web.py
│ ├── report_generator.py
│ └── ...
│
├── main.py
├── requirements.txt
├── README.md
└── LICENSE
The training and validation datasets are not included in this repository.
This decision was made because:
- The dataset exceeds GitHub's recommended repository size.
- The dataset is publicly available from its original source.
- The repository is intended to focus on the implementation rather than redistributing datasets.
The dataset configuration is provided in:
brain_tumor/data.yaml
If you wish to retrain the models, recreate the following structure:
brain_tumor/
├── train/
└── valid/
and update the paths if necessary.
The pretrained .h5 model files are not included because they exceed GitHub's maximum file size limit.
Place the downloaded model files inside:
models/
before running inference.
Clone the repository
git clone https://github.com/<your-username>/Brain-Tumor-Analysis-AI.gitInstall dependencies
pip install -r requirements.txtStart the application:
python main.pyor
python scripts/app.py(depending on your project configuration)
Open the browser and upload an MRI image for analysis.
Example generated reports are included in the repository to demonstrate the application's reporting capabilities.
- Training dataset not included
- Pretrained model weights not included
- Designed primarily for educational and research purposes
- Performance depends on image quality
- Multi-class tumor classification
- Cloud deployment
- DICOM image support
- Explainable AI (Grad-CAM)
- Patient history integration
- Improved reporting dashboard
Developed collaboratively by:
- Kevin Koruthu George
- Arjun Ritvik Azhagesan
This project is licensed under the Apache 2.0 License.