Git Product home page Git Product logo

dicominator's Introduction

DICOMinator ๐ŸŒŠ

DICOMinator is an open-source Python script for sorting images from common 4D Flow pulse sequences.

Features โœจ

  • ๐Ÿ“‚ Recursively traverses the input directory to find all DICOM files.
  • ๐Ÿ“‚ Sorts the DICOM files into a specified output directory based on encoding direction.
  • ๐Ÿ’พ Provides options to save the sorted data in various formats:
    • ๐Ÿ“ฆ NIfTI: The NIfTI files are split along the time dimension, allowing them to be imported as a Sequence (or MultiVolume) in 3D Slicer.
    • ๐Ÿ“ฆ h5: The h5 format should be compatible with Edward Ferdian's 4DFlowNet.
    • ๐Ÿ“ฆ mat: The mat format should be compatible with Julio Sotelo's 4D-Flow-Matlab-Toolbox.

Installation ๐Ÿ› ๏ธ

  1. Clone the repository:

    git clone https://github.com/fyrdahl/dicominator.git
    cd dicominator
  2. Install the required dependencies:

    pip install -r requirements.txt

Prerequisites ๐Ÿ“‹

  • Python 3.6 or higher
  • Required Python libraries (listed in requirements.txt)

Usage ๐Ÿš€

Arguments

  • input_root: The root folder where DICOMs are stored.
  • output_root: The root folder where DICOMs will be stored (will be created if it does not exist).
  • -d, --desc: Optional 'SeriesDescription' to search for.
  • -p, --purge: Purge the output folder before processing.
  • --nii: Save as NIfTI.
  • --h5: Save as h5.
  • --mat: Save as mat.
  • -l, --list: List all unique Series Descriptions in the dataset without further processing.
  • -f, --force: Force process files thay may or may not be flow datasets.

Example

python dicominator.py /path/to/input /path/to/output --desc "4D Flow" --nii --h5 --mat

Contact ๐Ÿ“ง

For support, please contact [email protected] or open an issue.

Acknowledgments ๐Ÿ™

Contributing ๐Ÿค

Contributions are welcome! Is your 4D Flow sequence not supported? Please feel free to open an issue or submit a pull request.

Code Formatting

This project uses Ruff for code formatting.

License ๐Ÿ“„

This project is licensed under the MIT License.

dicominator's People

Contributors

fyrdahl avatar

Stargazers

Thomas Olausson avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.