napari plugin for nd tiff folders with OpenCl deskew
napari plugin for nd tiff folders with optional OpenCl-based deskewing.
Built-in support for folders of (skewed) lattice light sheet tiffs.
- 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.txtfile is found, will deskew automatically (only if necessary)
- Lazily loads dataset on demand. quickly load preview your data.
.ziparchives 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!
You can install
napari-ndtiffs via pip:
pip install napari-ndtiffs
To also install PyOpenCL (for faster deskewing):
pip install napari-ndtiffs[opencl]
In most cases, just drop your folder onto napari, or use
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
- 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
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:
To monitor file io and deskew activity, enter the following in the napari console:
import logging logging.getLogger('napari_llsfolder').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.
- 24 June 2021
- 06 May 2020
- Information not submitted
- Stars: 10
- Forks: 5
- Issues + PRs: 1