This package contains methods for medical image segmentation.
Project description
Dissector
(Badges to be updated soon.)
| fair-software.eu recommendations | |
|---|---|
| code repository | |
| license | |
| community registry | |
| citation | |
| howfairis | |
| Other best practices | |
| Documentation | |
| Build | |
| Citation data consistency | |
| Link checker |
How to use dissector
Dissector is is an open-source python library which contains methods for medical image segmentation and the evaluation of medical image segmentation.
The module for evaluation contains methods to compare a segmentation to a 'ground truth' segmentation. This module should be run in it's own dedicated environment, which can be made in conda (see yaml environment_evaluation), pip or uv. Currently it has only been tested in conda, but the requirements are loose.
The metrics beyond the expected (hausdorf, jaccard, fp, fn, dice) implemented are : boundary intersection over union, binary cross entropy (for comparing two binary segmentation masks). Please note at present a much more robust group of metrics can be created with libraries like MONAI (metrics doc link). Metrics here are implemented for convenience i.e. no need to load pytorch, have lot of GPU space or cry as dependancies clash.
Images
can be extracted from DICOM files or used
directly (nifti or arrays).
The long term goal of the dissector project is to compare existing segmentation methods to a to be released state of the art method currently being built but not publicly released yet. This new method exploits the various types of noise in different MRI sequences...so computer science enthousiasts can probably guess the kind of model on the way. The primary authors are Candace Makeda H. Moore and Morris Alper.
At current we are testing all kinds of models. This included adapting one model:
A MedSegDiff adaptation (medsegdiff/)
The medsegdiff/ directory contains an adaptation of
MedSegDiff — a denoising diffusion
probabilistic model (DDPM) for medical image segmentation — applied to Dixon MRI
thigh muscle segmentation on the myosegmenTUM dataset.
The original MedSegDiff algorithm was developed by:
Wu, J., Fu, R., Fang, H., Zhang, Y., Yang, Y., Xiong, H., Liu, H., & Xu, Y. (2024). MedSegDiff-V2: Diffusion-Based Medical Image Segmentation with Transformer. Proceedings of the AAAI Conference on Artificial Intelligence.
Wu, J., Fu, R., Fang, H., Zhang, Y., & Xu, Y. (2023). MedSegDiff: Medical Image Segmentation with Diffusion Probabilistic Model. Medical Imaging with Deep Learning (MIDL).
The original code is available at https://github.com/WuJunde/MedSegDiff under its respective licence. The implementation in this repository is an independent re-implementation that adapts the core DDPM ε-prediction paradigm to two-channel Dixon (water + fat-fraction) conditioning with four binary per-muscle models.
Note: medsegdiff/ is a standalone training and inference tool directory —
it is intentionally kept outside src/ and is not part of the installable
dissector Python package. The scripts (train.py, predict.py) are meant to
be run directly (e.g. python medsegdiff/train.py --muscle R_gracilis) and are
not importable as dissector library code.
Installation
To install dissector from GitHub repository, do:
git clone git@github.com:drcandacemakedamoore/dissector.git
cd dissector
python -m pip install .
Instructions for uv and conda soon to come...
Documentation
One source should be https://drcandacemakedamoore.github.io/dissector/. Pypi and build the docs may take longer. Until then it should be online and buid in your docs/_build folder.
Contributing
If you want to contribute to the development of dissector, have a look at the contribution guidelines.
Credits
This package was created with Copier and the NLeSC/python-template.
Acknowledgements
This package supports scientific research which was supported in part by Lambda, Inc.
Generative AI disclosure
This package has some code created with the aid of generative AI. All code on the main branch and in releases is human author written and/or reviewed.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dissector-0.0.7.tar.gz.
File metadata
- Download URL: dissector-0.0.7.tar.gz
- Upload date:
- Size: 394.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8ca2db462db97b8df7b669ad193551857293fd76cdfc4eec3b020a1c7c7bfd3
|
|
| MD5 |
69a8cd82e3e0e6307fae0e27f574966e
|
|
| BLAKE2b-256 |
d61d0cb399c5743d2c1ba8634b6c3ea26e27a0a24d0c6ac6be0a81a7aa4adce5
|
File details
Details for the file dissector-0.0.7-py3-none-any.whl.
File metadata
- Download URL: dissector-0.0.7-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
070ad3573e66b8a837b07b919a4fedd5a3481834ff348d6066fe4db61760f701
|
|
| MD5 |
8502beeabe212f2bc125b3c2ffd4aed1
|
|
| BLAKE2b-256 |
b86e0534ce6c05b1c4730b242313281a0bf522c777fbdfa04cc72871d4406952
|