napari-skimage-regionprops

napari-skimage-regionprops

A regionprops table widget plugin for napari

    Workflow step:
    Object feature extractionShape features extraction
    Object feature extraction

License

PyPI

Python Version

tests

codecov

Development Status

napari hub

A napari plugin for measuring properties of labeled objects based on scikit-image

Usage: measure region properties

From the menu Tools > Measurement > Regionprops (nsr) you can open a dialog where you can choose an intensity image, a corresponding label image and the features you want to measure:

img.png

If you want to interface with the labels and see which table row corresponds to which labeled object, use the label picker and

activate the show selected checkbox.

If you closed a table and want to reopen it, you can use the menu Tools > Measurements > Show table (nsr) to reopen it.

You just need to select the labels layer the properties are associated with.

For visualizing measurements with different grey values, as parametric images, you can double-click table headers.

img.png

Usage: measure point intensities

Analogously, also the intensity and coordinates of point layers can be measured using the menu Tools > Measurement > Measure intensity at point coordinates (nsr).

Also these measurements can be visualized by double-clicking table headers:

img.png

img_1.png

Working with time-lapse and tracking data

Note that tables for time-lapse data should include a column named "frame", which indicates which slice in

time the given row refers to. If you want to import your own csv files for time-lapse data make sure to include this column.

If you have tracking data where each column specifies measurements for a track instead of a label at a specific time point,

this column must not be added.

In case you have 2D time-lapse data you need to convert it into a suitable shape using the function: Tools > Utilities > Convert 3D stack to 2D time-lapse (time-slicer),

which can be found in the napari time slicer.

Last but not least, make sure that in case of time-lapse data the label image has labels that are subsquently labeled per timepoint.

E.g. a dataset where label 5 is missing at timepoint 4 may be visualized incorrectly.

Usage, programmatically

You can also control the tables programmatically. See this

example notebook for details on regionprops and

this example notebook for details on measuring intensity at point coordinates.

Features

The user can select categories of features for feature extraction in the user interface. These categories contain measurements from the scikit-image regionprops list of measurements library:

  • size:

    • area

    • bbox_area

    • convex_area

    • equivalent_diameter

  • intensity:

    • max_intensity

    • mean_intensity

    • min_intensity

    • standard_deviation_intensity (extra_properties implementation using numpy)

  • perimeter:

    • perimeter

    • perimeter_crofton

  • shape

    • major_axis_length

    • minor_axis_length

    • orientation

    • solidity

    • eccentricity

    • extent

    • feret_diameter_max

    • local_centroid

    • roundness as defined for 2D labels by ImageJ

    • circularity as defined for 2D labels by ImageJ

    • aspect_ratio as defined for 2D labels by ImageJ

  • position:

    • centroid

    • bbox

    • weighted_centroid

  • moments:

    • moments

    • moments_central

    • moments_hu

    • moments_normalized

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

See also

There are other napari plugins with similar functionality for extracting features:

Furthermore, there are plugins for postprocessing extracted measurements

Installation

You can install napari-skimage-regionprops via pip:

pip install napari-skimage-regionprops

Or if you plan to develop it:

git clone https://github.com/haesleinhuepf/napari-skimage-regionprops

cd napari-skimage-regionprops

pip install -e .

If there is an error message suggesting that git is not installed, run conda install git.

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure

the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the BSD-3 license,

"napari-skimage-regionprops" is free and open source software

Issues

If you encounter any problems, please create a thread on image.sc along with a detailed description and tag @haesleinhuepf.

Version:

  • 0.8.1

Last updated:

  • 02 February 2023

First released:

  • 07 June 2021

License:

  • BSD-3-Clause

Supported data:

  • Information not submitted

Plugin type:

GitHub activity:

  • Stars: 27
  • Forks: 8
  • Issues + PRs: 8

Python versions supported:

Operating system:

Requirements:

  • napari-plugin-engine (>=0.1.4)
  • numpy
  • scikit-image
  • napari
  • pandas
  • napari-tools-menu (>=0.1.19)
  • napari-workflows
  • imageio (!=2.22.1)

Sign up to receive updates