vent_analysis

Ventilation Image Analysis Pipeline

https://github.com/thomenr/vent_analysis

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.4%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Ventilation Image Analysis Pipeline

Basic Info
  • Host: GitHub
  • Owner: thomenr
  • Language: Python
  • Default Branch: main
  • Size: 15.2 MB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 1
  • Releases: 0
Created over 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

README.md

PIRL Ventilation Analysis Pipeline, RPT, 3/27/2024, updated 7/3/2024 GMG

This is the Ventilation analysis pipeline for MU data, version 240703_GMGD.

Overview

There's 2 important pieces to this code. First, this contains the Vent_Analysis class which contains the processing pipeline for analyzing xenon ventilation data given the xenon image set (a DICOM file) and corresponding segmentation (a folder containing mask DICOMs). Second, the main script employs the PySimpleGUI module to create a graphical user interface [GUI] so the data can be processed easily. Here's what the GUI looks like: alt text The powerpoint gives an overview of how it all works. Essentially, you just plug in paths to your data and click the buttons for methods you want to run. Once they've run, the image windows will update with your data and you can export the analyses. Easy peasy!

Setup

Using your favorite git bash clone this github:
git clone https://github.com/thomenr/Vent_Analysis
Next you'll need to install the python modules listed in the requirements.txt file:
pip install -r requirements.txt
Now, using your favorite IDE, run the code (see the powerpoint for a few ways to do this - slide 3). Follow the GUI instructions and you'll be calculating VDPs in no time!

If you want, you can also create your own .exe to run the GUI without a python instance or anything...BUT, you'll need to compile the exe yourself in python. I didn't do that here, because the resultant exe is 183 Mb which is too big for github. If you want to create an exe it's super easy. Just install the PyInstaller module:
pip install pyinstaller
Then, in powershell navigate to the repository directory and run the command in the EXEbuildcommand.txt file. It will build the exe for you in a 'dist' folder. Done!

Things to do in future versions

  • Vent_Analysis class inputs either paths to data or the arrays themselves (done)
  • Output DICOM header info as JSON (done)
  • get more header info (both TWIX and DICOM) into metadata variable
  • CI colormap output in screenshot (done)
  • Multiple VDPs calculated (linear binning, k-means)
  • show histogram?
  • edit mask
  • automatic segmentation using proton (maybe DL this?)
  • Denoise Option

Owner

  • Login: thomenr
  • Kind: user

Citation (citation.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Thomen
  given-names: Robert
- family-names: Shammi
  given-names: U Afia
- family-names: Garcia Delgado
  given-names: Gabriela
- family-names: Ruppel
  given-names: Mia
- family-names: Parks
  given-names: Isabella
title: "MU PIRL Ventilation Analysis Pipeline"
version: "241007"
identifiers:
  - type: doi
    value: 10.5281/zenodo.1234
date-released: 2024-07-03
repository-code: "https://github.com/thomenr/Vent_Analysis"

GitHub Events

Total
  • Push event: 4
Last Year
  • Push event: 4

Dependencies

requirements.txt pypi
  • Pillow ==10.0.0
  • PyPDF2 ==3.0.1
  • PySimpleGUI ==4.60.5
  • SimpleITK ==2.3.1
  • h5py ==3.10.0
  • matplotlib ==3.7.2
  • matplotlib-inline ==0.1.6
  • nibabel ==5.1.0
  • numba ==0.58.1
  • numpy ==1.23.2
  • pdfkit ==1.0.0
  • pyMapVBVD ==0.5.4
  • pydicom ==2.3.0
  • pyinstaller ==6.3.0
  • pyinstaller-hooks-contrib ==2023.12
  • python-dateutil ==2.8.2
  • python-git ==2018.2.1
  • scikit-image ==0.21.0
  • scipy ==1.10.1
  • tqdm ==4.66.1