Skip to main content

Interactive surface analysis in napari for measuring mechanical stresses in biological tissues

Project description

License PyPI Python Version tests codecov pre-commit PyPI - Downloads napari hub DOI

napari-stress

This plugin provides tools for the analysis of surfaces in Napari, such as utilities to determine and refine the surface-representation of objects using a ray-casting approach and calculate the curvature of surfaces. It re-implements code in Napari that was written for Gross et al. (2021): STRESS, an automated geometrical characterization of deformable particles for in vivo measurements of cell and tissue mechanical stresses and has been made open source in this repository.

Usage

Functionality in this repository is divided in two groups: Workflows and functions.

Workflows

This section describes common workflows for processing images, points and surface data step-by-step.

Workflow Description
Confocal data (.tif), 3D+t: Interactive tutorial on how to extract surfaces from intensity image data
Confocal data (.tif), 3D+t: Interactive tutorial on how to extract curvature from surfaces
Confocal data (.tif), 3D+t: Jupyter notebook for processing single channel data and extracting gaussian curvature.

Functions

All functions in napari-stress are documented separately for interactive usage from the napari viewer as well as Jupyter notebooks.

Function Links
Fit spherical harmonics: Interactive Code
Surface tracing: Code
Reconstruct surface: Code
Fit ellipsoid: Interactive Code
Analyze spherical harmonics: Code

Utilities

Data to be used for this plugin is typically of the form [TZYX] (e.g., 3D + time). Napari-stress offers convenient ways to use functions from other repositories (which are often made for 3D data) on timelapse data with the frame_by_frame function and the TimelapseConverter class. Both are described in more detail in this notebook.

Installation

Create a new conda environment with the following command. If you have never used conda before, please read this guide first.

conda create -n napari-stress Python=3.9 napari jupyterlab -c conda-forge
conda activate napari-stress

You can then install napari-stress using pip:

pip install napari-stress

Issues

To report bugs, request new features or get in touch, please open an issue or tag @EL_Pollo_Diablo on image.sc.

See also

There are other napari plugins with similar / overlapping functionality

Contributing

Contributions are very welcome. Tests can be run with pytest, 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-stress" is free and open source software

Acknowledgements

This project was supported by the Deutsche Forschungsgemeinschaft under Germany’s Excellence Strategy – EXC2068 - Cluster of Excellence "Physics of Life" of TU Dresden.

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

napari-stress-0.0.19.tar.gz (812.6 kB view hashes)

Uploaded Source

Built Distribution

napari_stress-0.0.19-py3-none-any.whl (818.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page