A napari plugin to load & deskew folders of lattice light sheet TIFFs
BSD-3-CLAUSE License
napari plugin for nd tiff folders with optional CUDA or OpenCL-based deskewing.
Built-in support for folders of (skewed) lattice light sheet tiffs.
This napari plugin was generated with Cookiecutter using with @napari's cookiecutter-napari-plugin template.
Settings.txt
file is found, will deskew automatically (only if.zip
archives as well! Just directly compress your tiff folder,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!
You can install napari-ndtiffs
via pip:
pip install napari-ndtiffs
To also install PyOpenCL (for faster deskewing):
pip install napari-ndtiffs[opencl]
On NVIDIA GPUs with CUDA support, the CuPy implementation may be faster than PyOpenCL. CuPy also has experimental support for AMD GPUs via HIP/ROCm. See the CuPy installation instructions
In most cases, just drop your folder onto napari, or use viewer.open("path")
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:
float
) the pixel size, in micronsfloat
)the z step size, in micronsbool
) whether or not to deskew, (by default, will deskew if angle > 0, or if a lattice metadata file is detected that requires deskewing)float
) the angle of the light sheet relative to the coverslipfloat
) the value with which to pad the image edges when deskewing (default is 0)2-tuple of int
) (min, max) contrast_limits to use when viewing the imagestr
) an optional name for the imageTry 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
To monitor file io and deskew activity, enter the following in the napari console:
import logging
logging.getLogger('napari_ndtiffs').setLevel('DEBUG')
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.
Distributed under the terms of the BSD-3 license, "napari-ndtiffs" is free and open source software
If you encounter any problems, please file an issue along with a detailed description.