tumor-analysis

Computer Aided Diagnosis

This project was a winner at MHacks’21. The project was about creating a semi-automatic tumor segmentation tool that can help doctors in diagnosing cancer. The tool uses a combination of image processing and machine learning techniques to segment the tumor from the MRI images. The tool is designed to be user-friendly and can be used by doctors with minimal training.

It had four main components:

  • Model: Holds details regarding the model that was trained and other details. Model is written in pytorch(UNET) and used figshare dataset.
  • segment_server: Flask server that serves the inference model using REST api
  • vectorization_server: NodeJs-Express server that converts Raster images to Vector Image svg path. These svg path are the masks that can can overlaid on the orginal tumor for annotation purpose
  • annotation_client: Dash app that provides the front-end to work with the segmentation server and allows for manual annoation after automatic annoation annotation is done by model
Date: 5/10/2025

Vectorization server that was used to convert the raster images to vector images was removed from the project to use vtracer within the annotation client which reduced the complexity of the project. Now, there are technically 2 components: client and server. The client is a dash app that provides the front-end to work with the segmentation server and allows for manual annotation after automatic annotation is done by model. The server is a Flask server that serves the inference model using REST api.

Also, made some general design changes to update the project for use. For future, it would be great to host the model on a cloud service like AWS and use that for inference.

References: