Skip to main content

MRI and CT Brain Tumor Diagnosis and Grad-CAM Visualization

Project description

Neuroflux

Neuroflux is a Python package that analyzes MRI and CT scans of brains and highlights regions of tumor damage on a heat map.

Installation

To install neuroflux, you can use pip:

pip install neuroflux

The recommended import is:

import neuroflux

MRI Scans

Setup

To begin, declare the following variables:

  • case_folder: The folder where the input MRI scans are located (set it to "" if the input files are in the same folder as the program)
  • input_flair: The file name of the input FLAIR
  • input_t1ce: The file name of the input T1ce
  • model_weights: The file name of the predefined model weights

Example setup:

case_folder = "BraTS20"
input_flair = "01_flair.nii"
input_t1ce = "01_t1ce.nii"
model_weights = "mri_weights.h5"

Usage

Neuroflux has three main functions:

  • prepare_mri_model(model_weights, img_size=128)
    • Creates the U-Net (first step)
  • display_slice(folder, input_flair, input_t1ce, slice_num, model, target_layer_name="conv2d_1", img_size=128)
    • Displays the Grad-CAM heat map at a given slice number
  • display_grid(folder, input_flair, input_t1ce, model, num_slices=84, rows=7, cols=12, start_slice=20, target_layer_name="conv2d_1")
    • Displays a grid containing a given number of slices beginning at a given slice number

Example usage:

model = neuroflux.mri.prepare_mri_model(model_weights=model_weights, img_size=img_size)
neuroflux.mri.display_slice(folder=case_folder, input_flair=input_flair, input_t1ce=input_t1ce, slice_num=77, model=model)
neuroflux.mri.display_grid(folder=case_folder,input_flair=input_flair, input_t1ce=input_t1ce, model=model)

CT Scans

Setup

To begin, declare the following variables:

  • case_folder: The folder where the input CT scans are located (set it to "" if the input files are in the same folder as the program)
  • input: The file name of the input CT scan (can be .jpg, .jpeg, or .png)
  • model_weights: The file name of the predefined model weights

Example setup:

case_folder = "CT Scans"
input = "01.jpg"
model_weights = "ct_weights.pth"

Usage

Neuroflux has three main functions:

  • prepare_ct_model(model_weights)
    • Creates the neural network (first step)
  • display_gradcam(folder, input, model)
    • Displays the Grad-CAM heat map overlaid on the CT scan

Example usage:

model = neuroflux.ct.prepare_ct_model(model_weights=model_weights)
neuroflux.ct.display_gradcam(folder=case_folder, input=input, model=model)

Notes

  • The model weights are not built into this package. Our GitHub contains two options to attain model weights for MRI and CT: Use our pre-trained weights (recommended) or run the Google Colab notebook to create your own unique weights.
  • To get more involved, see our website, read our research paper, or contact us at neurofluxai@gmail.com.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neuroflux-2.3.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuroflux-2.3-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file neuroflux-2.3.tar.gz.

File metadata

  • Download URL: neuroflux-2.3.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for neuroflux-2.3.tar.gz
Algorithm Hash digest
SHA256 3ae05dc743a9db855f723d5f0c02a53a7fef66209cec61a57e467039baaa01ca
MD5 f612efe958522918f17dfd2e1deec407
BLAKE2b-256 9d05bcfa841d434c7baec5663a12cda966a9a476254cea682974809b81fff2e3

See more details on using hashes here.

File details

Details for the file neuroflux-2.3-py3-none-any.whl.

File metadata

  • Download URL: neuroflux-2.3-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for neuroflux-2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b00b83aa6f8885bda3372f739900f65081574132e90217731ec0be513eb66ad1
MD5 e8a14d73ae5abfbb89c8327dd54ff0fd
BLAKE2b-256 4932e0586239ffac38a387393b15377aa1adac9a00dacc2e90b0b63fc9572030

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page