Skip to content

General-purpouse camera capture plugin for data streaming to napari

License

Notifications You must be signed in to change notification settings

jacopoabramo/napari-live-recording

Repository files navigation

napari-live-recording

License: MIT PyPI Python Version tests codecov
napari hub Chan-Zuckerberg Initiative

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

Description

napari-live-recording (or nlr, if you like acronyms) is a medium-weight plugin part of the napari ecosystem that provides an easy access point for controlling area detector devices (most commonly reffered to as cameras) with a common interface. Other than that, the plugin also allows to create computation pipelines that can be executed real-time in a flow starting directly from the camera stream.

Note

Why medium weight?

napari-live-recording relies on multithreading to handle camera control, image processing and data storage via a common pipelined infrastructure. More details are provided in the documentation.

The plugin allows the following operations:

  • snapping: capture a single image
  • live view: continously acquiring from the currently active camera and show the collected data on the napari viewer;
  • recording: stream data to disk from the currently active cameras

When recording, the plugin allows to store images according to the following formats:

  • ImageJ TIFF
  • OME-TIFF

Note

Future releases will also add further file formats to the recording options, specifically:

  • HDF5
  • MP4

We will also provide a method to add custom metadata to the recorded image files.

Supported cameras

napari-live-recording aims to maintain itself agnostic for the type of cameras it controls. Via a common API (Application Programming Interface), it possible to define a controller for a specific camera. Instructions on how to do so are provided in the documentation.

By default, the plugin is shipped with the following interfaces:

Documentation

To install and use the plugin you can review the documentation here.

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.

Acknowledgments

The developers would like to thank the Chan-Zuckerberg Initiative (CZI) for providing funding for this project via the napari Ecosystem Grants.

License

Distributed under the terms of the MIT license, "napari-live-recording" is free and open source software

Issues

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

About

General-purpouse camera capture plugin for data streaming to napari

Resources

License

Stars

Watchers

Forks

Languages