• Version:

    • 0.1.2
  • Release date:

    • 24 June 2021
  • First released:

    • 06 May 2020
  • Development status:

    • 3 - Alpha
  • License:

    • BSD-3-Clause

Github Activity

  • Stars: 8
  • Forks: 3
  • Issues + PRs: 2
  • Python versions supported:

    • >=3.7
  • Operating system:

    • OS Independent
  • Requirements:

    • napari-plugin-engine (>=0.1.4)
    • numpy
    • dask[array]
    • python-dateutil
    • scipy
    • tifffile

napari-ndtiffs

napari plugin for nd tiff folders with OpenCl deskew

License PyPI Python Version tests codecov

napari plugin for nd tiff folders with optional OpenCl-based deskewing.

Built-in support for folders of (skewed) lattice light sheet tiffs.

napari-ndtiffs demo


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

Features

  • Drag and drop a folder of tiffs onto napari window to view easily
    • (currently designed to detect lattice light sheet tiffs, but easily adjustable)
  • If lattice Settings.txt file is found, will deskew automatically (only if necessary)
  • Lazily loads dataset on demand. quickly load preview your data.
  • Handles .zip archives as well! Just directly compress your tiff folder, then drop it into napari.
  • All-openCL deskewing, works on GPU as well as CPU, falls back to scipy if pyopencl is unavailable.

It would not be hard to support arbitrary filenaming patterns! If you have a folder of tiffs with a consistent naming scheme and would like to take advantage of this plugin, feel free to open an issue!

Installation

You can install napari-ndtiffs via pip:

pip install napari-ndtiffs

To also install PyOpenCL (for faster deskewing):

pip install napari-ndtiffs[opencl]

Usage

In most cases, just drop your folder onto napari, or use viewer.open("path")

Overriding parameters

You can control things like voxel size and deskewing angle as follows:

from napari_ndtiffs import parameter_override
import napari

viewer = napari.Viewer()
with parameter_override(angle=45, name="my image"):
    viewer.open("path/to/folder", plugin="ndtiffs")

Valid keys for parameter_override include:

  • dx: (float) the pixel size, in microns
  • dz: (float)the z step size, in microns
  • deskew: (bool) whether or not to deskew, (by default, will deskew if angle > 0, or if a lattice metadata file is detected that requires deskewing)
  • angle: (float) the angle of the light sheet relative to the coverslip
  • padval: (float) the value with which to pad the image edges when deskewing (default is 0)
  • contrast_limits: (2-tuple of int) (min, max) contrast_limits to use when viewing the image
  • name: (str) an optional name for the image

Sample data

Try it out with test data: download sample data

You can unzip if you like, or just drag the zip file onto the napari window.

Or, from command line, use:

napari path/to/lls_mitosis.zip

Debugging

To monitor file io and deskew activity, enter the following in the napari console:

import logging
logging.getLogger('napari_llsfolder').setLevel('DEBUG')

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-ndtiffs" is free and open source software

Issues

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

  • Version:

    • 0.1.2
  • Release date:

    • 24 June 2021
  • First released:

    • 06 May 2020
  • Development status:

    • 3 - Alpha
  • License:

    • BSD-3-Clause

Github Activity

  • Stars: 8
  • Forks: 3
  • Issues + PRs: 2
  • Python versions supported:

    • >=3.7
  • Operating system:

    • OS Independent
  • Requirements:

    • napari-plugin-engine (>=0.1.4)
    • numpy
    • dask[array]
    • python-dateutil
    • scipy
    • tifffile

Sign up to receive updates