napari/OMERO interoperability
Project description
napari-omero
This package provides interoperability between the OMERO image management platform, and napari: a fast, multi-dimensional image viewer for python.
It provides a GUI interface for browsing an OMERO instance from within napari, as well as command line interface extensions for both OMERO and napari CLIs.
Features
- GUI interface to browse remote OMERO data, with thumbnail previews.
- Loads remote nD images from an OMERO server into napari
- Planes are loading on demand as sliders are moved ("lazy loading").
- session management (login memory)
- OMERO rendering settings (contrast limits, colormaps, active channels, current Z/T position) are applied in napari
as a napari plugin
This package provides a napari reader plugin that accepts OMERO resources as
"proxy strings" (Image:<ID>
) or as OMERO webclient
URLS.
viewer = napari.Viewer()
# omero object identifier string
viewer.open("Image:1", plugin="omero")
# or URLS: https://help.openmicroscopy.org/urls-to-data.html
viewer.open("http://yourdomain.example.org/omero/webclient/?show=image-314")
these will also work on the napari command line interface, e.g.:
napari Image:1
# or
napari http://yourdomain.example.org/omero/webclient/?show=image-314
as a napari dock widget
The main OMERO browser widget can be manually added to the napari viewer:
import napari
from napari_omero import OMEROWidget
with napari.gui_qt():
viewer = napari.Viewer()
viewer.window.add_dock_widget(OMEROWidget(), area="right")
Or, to launch napari with this widget added automatically, run:
napari_omero
as an OMERO CLI plugin
This package also serves as a plugin to the OMERO CLI
omero napari view Image:1
- ROIs created in napari can be saved back to OMERO via a "Save ROIs" button.
- napari viewer console has BlitzGateway 'conn' and 'omero_image' in context.
installation
Requires python 3.6 or 3.7 due to omero-py
Ice dependencies.
It's easiest to install omero-py
from conda, so the recommended install
procedure is to first create a new conda environment (here called "omero
")
with omero-py
installed from the ome
channel, and then use pip
to
install napari-omero
(until we have a conda package available).
conda create -n omero -c ome python=3.7 omero-py
conda activate omero
pip install napari-omero
issues
❗ | This is alpha software & some things will be broken or sub-optimal! |
---|
- experimental & definitely still buggy! Bug reports are welcome!
- remote loading can be very slow still... though this is not strictly an issue of this plugin. Datasets are wrapped as delayed dask stacks, and remote data fetching time can be significant. Plans for asynchronous rendering in napari and tiled loading from OMERO may eventually improve the subjective performance... but remote data loading will likely always be a limitation here.
contributing
Contributions are welcome! To get setup with a development environment:
# clone this repo:
git clone https://github.com/tlambert03/napari-omero.git
# change into the new directory
cd napari-omero
# create conda environment
conda env create -f environment.yml
# activate the new env
conda activate napari-omero
To maintain good code quality, this repo uses flake8, mypy, and black. To enforce code quality when you commit code, you can install pre-commit
# install pre-commit which will run code checks prior to commits
pre-commit install
The original OMERO data loader and CLI extension was created by Will Moore.
The napari reader plugin and GUI browser was created by Talley Lambert
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
File details
Details for the file napari-omero-0.1.0.tar.gz
.
File metadata
- Download URL: napari-omero-0.1.0.tar.gz
- Upload date:
- Size: 10.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58fa7cf29aa8dc9515003e4679b3e423b483fbea7fd9bc9440c5dc7561992e68 |
|
MD5 | 3b30d8b162c1372120dc47be2f517fa0 |
|
BLAKE2b-256 | 9547b33e005f03efea1eee5b3ac7a73dd3edbeee4270a313d412371cf94ff7ec |
File details
Details for the file napari_omero-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: napari_omero-0.1.0-py3-none-any.whl
- Upload date:
- Size: 19.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35ff9b2a6f7f9a69bbba213eed788dc633e743f1d176c4033c58ae81e5c713f6 |
|
MD5 | ce2db5b3220ff79744183b3709ab6cb1 |
|
BLAKE2b-256 | 2677af6f4323a96f986ccba2d140e6dc68f88fbb5b10900e67acb6759f4ff4f8 |