A napari plugin for live video recording with a generic camera device.
Project description
napari-live-recording
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:
- an OpenCV camera grabber;
- a Micro-Manager interface via the package
pymmcore-plus
; - an interface to the microscope python package.
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for napari-live-recording-0.3.7.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3022c65a66f010d4b13aaaf9a59893f6723a12533b3a54c86345ce8f8dc820f |
|
MD5 | fb837e47c8888fe95fce5c2986865915 |
|
BLAKE2b-256 | f93c65dc947fd3d370f2e1d984f8fe96894301c3afc269e4960297800b33e497 |
Hashes for napari_live_recording-0.3.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab85fd2671421b8b300c1c98bd368a48e889fad827258c0908a1aef3824700a8 |
|
MD5 | 79a6b4c4bdefacb506e0ec563d4eb624 |
|
BLAKE2b-256 | 11606fc89dee631457cdc1b70f297e39222c3c87321214804ec31aa9f2c8f9f3 |