Version:

  • 0.2.0

Release date:

  • 01 January 2022

First released:

  • 28 November 2021

License:

  • BSD-3-Clause

Supported data:

  • Information not submitted

GitHub activity:

  • Stars: 2
  • Forks: 0
  • Issues + PRs: 1

Python versions supported:

  • >=3.7

Operating system:

  • OS Independent

Requirements:

  • napari-plugin-engine (>=0.1.4)
  • numpy
  • simpleitk
  • napari-tools-menu
  • napari-time-slicer
  • napari-skimage-regionprops

napari-simpleitk-image-processing

Process and analyze images using SimpleITK in napari


    License PyPI Python Version tests codecov Development Status napari hub

    Process images using SimpleITK in napari

    Usage

    Filters of this napari plugin can be found in the Tools > Filtering menu. Segmentation algorithms and tools for post-processing segmented (binary or label) images can be found in the Tools > Segmentation menus. All filters implemented in this napari plugin are also demonstrated in this notebook.

    Gaussian blur

    Applies a Gaussian blur to an image. This might be useful for denoising, e.g. before applying the Threshold-Otsu method.

    img.png

    Median filter

    Applies a median filter to an image. Compared to the Gaussian blur this method preserves edges in the image better. It also performs slower.

    img.png

    Bilateral filter

    The bilateral filter allows denoising an image while preserving edges.

    img.png

    Threshold Otsu

    Binarizes an image using Otsu's method.

    img.png

    Connected Component Labeling

    Takes a binary image and labels all objects with individual numbers to produce a label image.

    img.png

    Measurements

    This function allows determining intensity and shape statistics from labeled images.

    img.png

    Signed Maurer distance map

    A distance map (more precise: Signed Maurer Distance Map) 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

    Binary fill holes

    Fills holes in a binary image.

    img.png

    Touching objects labeling

    Starting from a binary image, touching objects can be splits into multiple regions, similar to the Watershed segmentation in ImageJ.

    img.png

    Morphological Watershed

    The morhological watershed 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 for details.

    img.png

    Watershed-Otsu-Labeling

    This algorithm uses Otsu's thresholding method in combination with Gaussian blur and the Watershed-algorithm 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.

    img.png

    Richardson-Lucy Deconvolution

    Richardson-Lucy 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


    This napari plugin was generated with Cookiecutter using @napari's cookiecutter-napari-plugin template.

    Installation

    You can install napari-simpleitk-image-processing via pip:

    pip install napari-simpleitk-image-processing

    To install latest development version :

    pip install git+https://github.com/haesleinhuepf/napari-simpleitk-image-processing.git

    Contributing

    Contributions are very welcome. There are many useful algorithms available in SimpleITK. If you want another one available here in this napari plugin, don't hesitate to send a pull-request. This repository just holds wrappers for SimpleITK-functions, see this file 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 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.

    Issues

    If you encounter any problems, please file an issue along with a detailed description.

    Version:

    • 0.2.0

    Release date:

    • 01 January 2022

    First released:

    • 28 November 2021

    License:

    • BSD-3-Clause

    Supported data:

    • Information not submitted

    GitHub activity:

    • Stars: 2
    • Forks: 0
    • Issues + PRs: 1

    Python versions supported:

    • >=3.7

    Operating system:

    • OS Independent

    Requirements:

    • napari-plugin-engine (>=0.1.4)
    • numpy
    • simpleitk
    • napari-tools-menu
    • napari-time-slicer
    • napari-skimage-regionprops

    Version:

    • 0.2.0

    Release date:

    • 01 January 2022

    First released:

    • 28 November 2021

    License:

    • BSD-3-Clause

    Supported data:

    • Information not submitted

    GitHub activity:

    • Stars: 2
    • Forks: 0
    • Issues + PRs: 1

    Python versions supported:

    • >=3.7

    Operating system:

    • OS Independent

    Requirements:

    • napari-plugin-engine (>=0.1.4)
    • numpy
    • simpleitk
    • napari-tools-menu
    • napari-time-slicer
    • napari-skimage-regionprops

    Sign up to receive updates