# napari-simpleitk-image-processing (n-SimpleITK)
[![License](https://img.shields.io/pypi/l/napari-simpleitk-image-processing.svg?color=green)](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/LICENSE)
[![PyPI](https://img.shields.io/pypi/v/napari-simpleitk-image-processing.svg?color=green)](https://pypi.org/project/napari-simpleitk-image-processing)
[![Python Version](https://img.shields.io/pypi/pyversions/napari-simpleitk-image-processing.svg?color=green)](https://python.org)
[![tests](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/workflows/tests/badge.svg)](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/actions)
[![codecov](https://codecov.io/gh/haesleinhuepf/napari-simpleitk-image-processing/branch/main/graph/badge.svg)](https://codecov.io/gh/haesleinhuepf/napari-simpleitk-image-processing)
[![Development Status](https://img.shields.io/pypi/status/napari-simpleitk-image-processing.svg)](https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha)
[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-simpleitk-image-processing)](https://napari-hub.org/plugins/napari-simpleitk-image-processing)
[![DOI](https://zenodo.org/badge/432729955.svg)](https://zenodo.org/badge/latestdoi/432729955)
Process images using [SimpleITK](https://simpleitk.org/) in [napari]
## Usage
Filters, segmentation algorithms and measurements provided by this napari plugin can be found in the `Tools` menu.
You can recognize them with their suffix `(n-SimpleITK)` in brackets.
Furthermore, it can be used from the [napari-assistant](https://www.napari-hub.org/plugins/napari-assistant) graphical user interface.
Therefore, just click the menu `Tools > Utilities > Assistant (na)` or run `naparia` from the command line.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/screenshot_with_assistant.png)
All filters implemented in this napari plugin are also demonstrated in [this notebook](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/blob/main/docs/demo.ipynb).
### Gaussian blur
Applies a [Gaussian blur](https://en.wikipedia.org/wiki/Gaussian_blur)
to an image. This might be useful for denoising, e.g. before applying the Threshold-Otsu method.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/gaussian_blur.png)
### Median filter
Applies a [median filter](https://en.wikipedia.org/wiki/Median_filter) to an image.
Compared to the Gaussian blur this method preserves edges in the image better.
It also performs slower.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/median_filter.png)
### Bilateral filter
The [bilateral filter](https://en.wikipedia.org/wiki/Bilateral_filter) allows denoising an image
while preserving edges.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/bilateral.png)
### Threshold Otsu
Binarizes an image using [Otsu's method](https://ieeexplore.ieee.org/document/4310076).
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/threshold_otsu.png)
### Connected Component Labeling
Takes a binary image and labels all objects with individual numbers to produce a label image.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/connected_component_labeling.png)
### Measurements
This function allows determining intensity and shape statistics from labeled images. I can be found in the `Tools > Measurement tables` menu.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/measurements.png)
### Signed Maurer distance map
A distance map (more precise: [Signed Maurer Distance Map](https://itk.org/ITKExamples/src/Filtering/DistanceMap/MaurerDistanceMapOfBinary/Documentation.html)) can be useful for visualizing distances within binary images between black/white borders.
Positive values in this image correspond to a white (value=1) pixel's distance to the next black pixel.
Black pixel's (value=0) distance to the next white pixel are represented in this map with negative values.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/signed_maured_distance_map.png)
### Binary fill holes
Fills holes in a binary image.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/binary_fill_holes.png)
### Touching objects labeling
Starting from a binary image, touching objects can be splits into multiple regions, similar to the [Watershed segmentation in ImageJ](https://imagej.net/plugins/classic-watershed).
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/Touching_object_labeling.png)
### Morphological Watershed
The [morhological watershed](http://insightsoftwareconsortium.github.io/SimpleITK-Notebooks/Python_html/32_Watersheds_Segmentation.html)
allows to segment images showing membranes. Before segmentation, a filter such as the Gaussian blur or a median filter
should be used to eliminate noise. It also makes sense to increase the thickness of membranes using a maximum filter.
See [this notebook](https://github.com/clEsperanto/pyclesperanto_prototype/blob/master/demo/segmentation/segmentation_2d_membranes.ipynb) for details.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/morphological_watershed.png)
### Watershed-Otsu-Labeling
This algorithm uses [Otsu's thresholding method](https://ieeexplore.ieee.org/document/4310076) in combination with
[Gaussian blur](https://en.wikipedia.org/wiki/Gaussian_blur) and the
[Watershed-algorithm](https://en.wikipedia.org/wiki/Watershed_(image_processing))
approach to label bright objects such as nuclei in an intensity image. The alogrithm has two sigma parameters and a
level parameter which allow you to fine-tune where objects should be cut (`spot_sigma`) and how smooth outlines
should be (`outline_sigma`). The `watershed_level` parameter determines how deep an intensity valley between two maxima
has to be to differentiate the two maxima.
This implementation is similar to [Voronoi-Otsu-Labeling in clesperanto](https://github.com/clEsperanto/pyclesperanto_prototype/blob/master/demo/segmentation/voronoi_otsu_labeling.ipynb).
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/watershed_otsu_labeling.png)
### Richardson-Lucy Deconvolution
[Richardson-Lucy deconvolution](https://en.wikipedia.org/wiki/Richardson%E2%80%93Lucy_deconvolution)
allows to restore image quality if the point-spread-function of the optical system used
for acquisition is known or can be approximated.
![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/Richardson-Lucy-Deconvolution.png)
## Installation
You can install `napari-simpleitk-image-processing` via using `conda` and `pip`.
If you have never used `conda` before, please go through [this tutorial](https://biapol.github.io/blog/johannes_mueller/anaconda_getting_started/) first.
conda install -c conda-forge napari
pip install napari-simpleitk-image-processing
## Features
The user can select categories of features for feature extraction in the user interface. These categories contain the following measurements:
* size:
* equivalent_ellipsoid_diameter
* equivalent_spherical_perimeter
* equivalent_spherical_radius
* number_of_pixels
* number_of_pixels_on_border
* intensity:
* maximum
* mean
* median
* minimum
* sigma
* sum
* variance
* perimeter:
* perimeter
* perimeter_on_border
* perimeter_on_border_ratio
* shape:
* elongation
* feret_diameter
* flatness
* roundness
* position:
* centroid
* bbox
* moments:
* principal_axes
* principal_moments
## See also
There are other napari plugins with similar functionality for processing images and extracting features:
* [morphometrics](https://www.napari-hub.org/plugins/morphometrics)
* [PartSeg](https://www.napari-hub.org/plugins/PartSeg)
* [napari-skimage-regionprops](https://www.napari-hub.org/plugins/napari-skimage-regionprops)
* [napari-cupy-image-processing](https://www.napari-hub.org/plugins/napari-cupy-image-processing)
* [napari-pyclesperanto-assistant](https://www.napari-hub.org/plugins/napari-pyclesperanto-assistant)
* [napari-allencell-segmenter](https://napari-hub.org/plugins/napari-allencell-segmenter)
* [RedLionfish](https://www.napari-hub.org/plugins/RedLionfish)
* [bbii-decon](https://www.napari-hub.org/plugins/bbii-decon)
* [napari-segment-blobs-and-things-with-membranes](https://www.napari-hub.org/plugins/napari-segment-blobs-and-things-with-membranes)
Furthermore, there are plugins for postprocessing extracted measurements
* [napari-feature-classifier](https://www.napari-hub.org/plugins/napari-feature-classifier)
* [napari-clusters-plotter](https://www.napari-hub.org/plugins/napari-clusters-plotter)
## Contributing
Contributions are very welcome. There are many useful algorithms available in
[SimpleITK](https://simpleitk.org/). If you want another one available here in this napari
plugin, don't hesitate to send a [pull-request](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/pulls).
This repository just holds wrappers for SimpleITK-functions, see [this file](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/src/napari_simpleitk_image_processing/_simpleitk_image_processing.py#L51) for how those wrappers
can be written.
## License
Distributed under the terms of the [BSD-3] license,
"napari-simpleitk-image-processing" is free and open source software
## Citation
For implementing this napari plugin, the
[SimpleITK python notebooks](https://insightsoftwareconsortium.github.io/SimpleITK-Notebooks/) were very helpful.
Thus, if you find the plugin useful, consider citing the SimpleITK notebooks:
Z. Yaniv, B. C. Lowekamp, H. J. Johnson, R. Beare,
"SimpleITK Image-Analysis Notebooks: a Collaborative Environment for Education and Reproducible Research", \
J Digit Imaging., 31(3): 290-303, 2018, [https://doi.org/10.1007/s10278-017-0037-8](https://doi.org/10.1007/s10278-017-0037-8).
## Issues
If you encounter any problems, please [file an issue] along with a detailed description.
[napari]: https://github.com/napari/napari
[Cookiecutter]: https://github.com/audreyr/cookiecutter
[@napari]: https://github.com/napari
[MIT]: http://opensource.org/licenses/MIT
[BSD-3]: http://opensource.org/licenses/BSD-3-Clause
[GNU GPL v3.0]: http://www.gnu.org/licenses/gpl-3.0.txt
[GNU LGPL v3.0]: http://www.gnu.org/licenses/lgpl-3.0.txt
[Apache Software License 2.0]: http://www.apache.org/licenses/LICENSE-2.0
[Mozilla Public License 2.0]: https://www.mozilla.org/media/MPL/2.0/index.txt
[cookiecutter-napari-plugin]: https://github.com/napari/cookiecutter-napari-plugin
[file an issue]: https://github.com/haesleinhuepf/napari-simpleitk-image-processing/issues
[napari]: https://github.com/napari/napari
[tox]: https://tox.readthedocs.io/en/latest/
[pip]: https://pypi.org/project/pip/
[PyPI]: https://pypi.org/
Raw data
{
"_id": null,
"home_page": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing",
"name": "napari-simpleitk-image-processing",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": null,
"author": "Robert Haase",
"author_email": "robert.haase@tu-dresden.de",
"download_url": "https://files.pythonhosted.org/packages/de/0a/f04cb73dddbfe8f1dc9847ba0bfc6e963051a0d8b75a3f680bdb032537a4/napari_simpleitk_image_processing-0.4.9.tar.gz",
"platform": null,
"description": "# napari-simpleitk-image-processing (n-SimpleITK)\n\n[![License](https://img.shields.io/pypi/l/napari-simpleitk-image-processing.svg?color=green)](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/LICENSE)\n[![PyPI](https://img.shields.io/pypi/v/napari-simpleitk-image-processing.svg?color=green)](https://pypi.org/project/napari-simpleitk-image-processing)\n[![Python Version](https://img.shields.io/pypi/pyversions/napari-simpleitk-image-processing.svg?color=green)](https://python.org)\n[![tests](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/workflows/tests/badge.svg)](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/actions)\n[![codecov](https://codecov.io/gh/haesleinhuepf/napari-simpleitk-image-processing/branch/main/graph/badge.svg)](https://codecov.io/gh/haesleinhuepf/napari-simpleitk-image-processing)\n[![Development Status](https://img.shields.io/pypi/status/napari-simpleitk-image-processing.svg)](https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha)\n[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-simpleitk-image-processing)](https://napari-hub.org/plugins/napari-simpleitk-image-processing)\n[![DOI](https://zenodo.org/badge/432729955.svg)](https://zenodo.org/badge/latestdoi/432729955)\n\nProcess images using [SimpleITK](https://simpleitk.org/) in [napari]\n\n## Usage\n\nFilters, segmentation algorithms and measurements provided by this napari plugin can be found in the `Tools` menu. \nYou can recognize them with their suffix `(n-SimpleITK)` in brackets.\nFurthermore, it can be used from the [napari-assistant](https://www.napari-hub.org/plugins/napari-assistant) graphical user interface. \nTherefore, just click the menu `Tools > Utilities > Assistant (na)` or run `naparia` from the command line.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/screenshot_with_assistant.png)\n\nAll filters implemented in this napari plugin are also demonstrated in [this notebook](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/blob/main/docs/demo.ipynb).\n\n### Gaussian blur\n\nApplies a [Gaussian blur](https://en.wikipedia.org/wiki/Gaussian_blur)\nto an image. This might be useful for denoising, e.g. before applying the Threshold-Otsu method.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/gaussian_blur.png)\n\n### Median filter\n\nApplies a [median filter](https://en.wikipedia.org/wiki/Median_filter) to an image. \nCompared to the Gaussian blur this method preserves edges in the image better. \nIt also performs slower.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/median_filter.png)\n\n### Bilateral filter\n\nThe [bilateral filter](https://en.wikipedia.org/wiki/Bilateral_filter) allows denoising an image\nwhile preserving edges.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/bilateral.png)\n\n### Threshold Otsu\n\nBinarizes an image using [Otsu's method](https://ieeexplore.ieee.org/document/4310076).\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/threshold_otsu.png)\n\n### Connected Component Labeling\n\nTakes a binary image and labels all objects with individual numbers to produce a label image.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/connected_component_labeling.png)\n\n### Measurements\n\nThis function allows determining intensity and shape statistics from labeled images. I can be found in the `Tools > Measurement tables` menu.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/measurements.png)\n\n### Signed Maurer distance map\n\nA distance map (more precise: [Signed Maurer Distance Map](https://itk.org/ITKExamples/src/Filtering/DistanceMap/MaurerDistanceMapOfBinary/Documentation.html)) can be useful for visualizing distances within binary images between black/white borders. \nPositive values in this image correspond to a white (value=1) pixel's distance to the next black pixel.\nBlack pixel's (value=0) distance to the next white pixel are represented in this map with negative values.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/signed_maured_distance_map.png)\n\n### Binary fill holes\n\nFills holes in a binary image.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/binary_fill_holes.png)\n\n### Touching objects labeling\n\nStarting from a binary image, touching objects can be splits into multiple regions, similar to the [Watershed segmentation in ImageJ](https://imagej.net/plugins/classic-watershed).\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/Touching_object_labeling.png)\n\n### Morphological Watershed\n\nThe [morhological watershed](http://insightsoftwareconsortium.github.io/SimpleITK-Notebooks/Python_html/32_Watersheds_Segmentation.html)\nallows to segment images showing membranes. Before segmentation, a filter such as the Gaussian blur or a median filter\nshould be used to eliminate noise. It also makes sense to increase the thickness of membranes using a maximum filter. \nSee [this notebook](https://github.com/clEsperanto/pyclesperanto_prototype/blob/master/demo/segmentation/segmentation_2d_membranes.ipynb) for details.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/morphological_watershed.png)\n\n### Watershed-Otsu-Labeling\n\nThis algorithm uses [Otsu's thresholding method](https://ieeexplore.ieee.org/document/4310076) in combination with \n[Gaussian blur](https://en.wikipedia.org/wiki/Gaussian_blur) and the \n[Watershed-algorithm](https://en.wikipedia.org/wiki/Watershed_(image_processing)) \napproach to label bright objects such as nuclei in an intensity image. The alogrithm has two sigma parameters and a \nlevel parameter which allow you to fine-tune where objects should be cut (`spot_sigma`) and how smooth outlines \nshould be (`outline_sigma`). The `watershed_level` parameter determines how deep an intensity valley between two maxima \nhas to be to differentiate the two maxima. \nThis implementation is similar to [Voronoi-Otsu-Labeling in clesperanto](https://github.com/clEsperanto/pyclesperanto_prototype/blob/master/demo/segmentation/voronoi_otsu_labeling.ipynb).\n\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/watershed_otsu_labeling.png)\n\n### Richardson-Lucy Deconvolution\n\n[Richardson-Lucy deconvolution](https://en.wikipedia.org/wiki/Richardson%E2%80%93Lucy_deconvolution)\nallows to restore image quality if the point-spread-function of the optical system used \nfor acquisition is known or can be approximated.\n\n![img.png](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/docs/Richardson-Lucy-Deconvolution.png)\n\n\n## Installation\n\nYou can install `napari-simpleitk-image-processing` via using `conda` and `pip`.\nIf you have never used `conda` before, please go through [this tutorial](https://biapol.github.io/blog/johannes_mueller/anaconda_getting_started/) first.\n\n conda install -c conda-forge napari\n pip install napari-simpleitk-image-processing\n\n## Features\n\nThe user can select categories of features for feature extraction in the user interface. These categories contain the following measurements:\n* size:\n * equivalent_ellipsoid_diameter\n * equivalent_spherical_perimeter\n * equivalent_spherical_radius\n * number_of_pixels\n * number_of_pixels_on_border\n* intensity:\n * maximum \n * mean \n * median\n * minimum \n * sigma\n * sum\n * variance\n* perimeter:\n * perimeter\n * perimeter_on_border\n * perimeter_on_border_ratio\n* shape:\n * elongation\n * feret_diameter\n * flatness\n * roundness\n* position:\n * centroid \n * bbox\n* moments:\n * principal_axes\n * principal_moments\n\n## See also\n\nThere are other napari plugins with similar functionality for processing images and extracting features:\n* [morphometrics](https://www.napari-hub.org/plugins/morphometrics)\n* [PartSeg](https://www.napari-hub.org/plugins/PartSeg)\n* [napari-skimage-regionprops](https://www.napari-hub.org/plugins/napari-skimage-regionprops)\n* [napari-cupy-image-processing](https://www.napari-hub.org/plugins/napari-cupy-image-processing)\n* [napari-pyclesperanto-assistant](https://www.napari-hub.org/plugins/napari-pyclesperanto-assistant)\n* [napari-allencell-segmenter](https://napari-hub.org/plugins/napari-allencell-segmenter)\n* [RedLionfish](https://www.napari-hub.org/plugins/RedLionfish)\n* [bbii-decon](https://www.napari-hub.org/plugins/bbii-decon) \n* [napari-segment-blobs-and-things-with-membranes](https://www.napari-hub.org/plugins/napari-segment-blobs-and-things-with-membranes)\n\nFurthermore, there are plugins for postprocessing extracted measurements\n* [napari-feature-classifier](https://www.napari-hub.org/plugins/napari-feature-classifier)\n* [napari-clusters-plotter](https://www.napari-hub.org/plugins/napari-clusters-plotter)\n\n## Contributing\n\nContributions are very welcome. There are many useful algorithms available in \n[SimpleITK](https://simpleitk.org/). If you want another one available here in this napari\nplugin, don't hesitate to send a [pull-request](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/pulls).\nThis repository just holds wrappers for SimpleITK-functions, see [this file](https://github.com/haesleinhuepf/napari-simpleitk-image-processing/raw/main/src/napari_simpleitk_image_processing/_simpleitk_image_processing.py#L51) for how those wrappers\ncan be written.\n\n## License\n\nDistributed under the terms of the [BSD-3] license,\n\"napari-simpleitk-image-processing\" is free and open source software\n\n## Citation\n\nFor implementing this napari plugin, the \n[SimpleITK python notebooks](https://insightsoftwareconsortium.github.io/SimpleITK-Notebooks/) were very helpful. \nThus, if you find the plugin useful, consider citing the SimpleITK notebooks:\n\nZ. Yaniv, B. C. Lowekamp, H. J. Johnson, R. Beare, \n\"SimpleITK Image-Analysis Notebooks: a Collaborative Environment for Education and Reproducible Research\", \\\nJ Digit Imaging., 31(3): 290-303, 2018, [https://doi.org/10.1007/s10278-017-0037-8](https://doi.org/10.1007/s10278-017-0037-8).\n\n## Issues\n\nIf you encounter any problems, please [file an issue] along with a detailed description.\n\n[napari]: https://github.com/napari/napari\n[Cookiecutter]: https://github.com/audreyr/cookiecutter\n[@napari]: https://github.com/napari\n[MIT]: http://opensource.org/licenses/MIT\n[BSD-3]: http://opensource.org/licenses/BSD-3-Clause\n[GNU GPL v3.0]: http://www.gnu.org/licenses/gpl-3.0.txt\n[GNU LGPL v3.0]: http://www.gnu.org/licenses/lgpl-3.0.txt\n[Apache Software License 2.0]: http://www.apache.org/licenses/LICENSE-2.0\n[Mozilla Public License 2.0]: https://www.mozilla.org/media/MPL/2.0/index.txt\n[cookiecutter-napari-plugin]: https://github.com/napari/cookiecutter-napari-plugin\n\n[file an issue]: https://github.com/haesleinhuepf/napari-simpleitk-image-processing/issues\n\n[napari]: https://github.com/napari/napari\n[tox]: https://tox.readthedocs.io/en/latest/\n[pip]: https://pypi.org/project/pip/\n[PyPI]: https://pypi.org/\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "Process and analyze images using SimpleITK in napari",
"version": "0.4.9",
"project_urls": {
"Bug Tracker": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing/issues",
"Documentation": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing#README.md",
"Homepage": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing",
"Source Code": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing",
"User Support": "https://github.com/haesleinhuepf/napari-simpleitk-image-processing/issues"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b1ba211b58329b699212f10d2796b649ff7056a4d67da1c9f523c3cc2434173e",
"md5": "c0896b200b4e0c86e608785a67a54c44",
"sha256": "f0e6f8242bbbf6aea9242900452aee231941087ecef1c338e454446dc0b7b996"
},
"downloads": -1,
"filename": "napari_simpleitk_image_processing-0.4.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c0896b200b4e0c86e608785a67a54c44",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 19027,
"upload_time": "2024-10-10T19:33:09",
"upload_time_iso_8601": "2024-10-10T19:33:09.995190Z",
"url": "https://files.pythonhosted.org/packages/b1/ba/211b58329b699212f10d2796b649ff7056a4d67da1c9f523c3cc2434173e/napari_simpleitk_image_processing-0.4.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "de0af04cb73dddbfe8f1dc9847ba0bfc6e963051a0d8b75a3f680bdb032537a4",
"md5": "ab8974c178cd45d735523e0faada92b5",
"sha256": "1ecc4689ee3863da736babd90f1b202ee4cb8e17d788bcacb241fe3d1a227674"
},
"downloads": -1,
"filename": "napari_simpleitk_image_processing-0.4.9.tar.gz",
"has_sig": false,
"md5_digest": "ab8974c178cd45d735523e0faada92b5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 20199,
"upload_time": "2024-10-10T19:33:11",
"upload_time_iso_8601": "2024-10-10T19:33:11.101515Z",
"url": "https://files.pythonhosted.org/packages/de/0a/f04cb73dddbfe8f1dc9847ba0bfc6e963051a0d8b75a3f680bdb032537a4/napari_simpleitk_image_processing-0.4.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-10 19:33:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "haesleinhuepf",
"github_project": "napari-simpleitk-image-processing",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "napari-simpleitk-image-processing"
}