omero-browser-qt
Reusable PyQt6 dialog for browsing and retrieving images from OMERO servers.
Features
- Login dialog with server-name history, automatic 10-minute OMERO session reuse, and runtime-only credential recall while the app stays open
- QuPath-style browser — group/owner filters, lazy-loading tree, thumbnail preview, attribute table, and name filter
- ICE pixel loading — full 5-D arrays or tile-based dask lazy loading for large / pyramidal images
- OMERO viewer — installable multi-channel viewer for 2D slices, projections, channel toggling, and playback
- 3D volume viewer — GPU-accelerated rendering via vispy with MIP, Attenuated MIP, Translucent, Average, Isosurface, Additive, and context-aware MinIP
- Interactive 3D controls — per-mode slider behavior, downsampling, smooth/nearest interpolation toggle, and free Arcball rotation
- Embeddable in any PyQt6 application
Prerequisites
omero-py requires ZeroC ICE (pre-built wheels for Python 3.10–3.12):
# Example for Python 3.11 on Windows — see docs for all platforms
pip install https://github.com/glencoesoftware/zeroc-ice-py-win-x86_64/releases/download/20240325/zeroc_ice-3.6.5-cp311-cp311-win_amd64.whl
pip install omero-py
Or via conda: conda install -c conda-forge zeroc-ice omero-py
See the Getting Started guide for all platforms.
Installation
pip install omero-browser-qt
This installs the reusable browser/dialog package and the omero_viewer
launcher. On Windows, pip creates omero_viewer.exe in the environment's
Scripts directory.
For full 3D viewer support:
pip install "omero-browser-qt[viewer]"
Quick start
from PyQt6.QtWidgets import QApplication
from omero_browser_qt import OmeroGateway, OmeroBrowserDialog
app = QApplication([])
gw = OmeroGateway()
for img in OmeroBrowserDialog.select_images(gateway=gw):
print(img.getName(), img.getId())
gw.disconnect()
For structured selection with project/dataset breadcrumbs:
for ctx in OmeroBrowserDialog.select_image_contexts():
print(ctx.breadcrumb, ctx.image.getId())
Single-select mode
By default the browser allows selecting multiple images. Pass
multiselect=False to restrict the dialog to a single selection:
images = OmeroBrowserDialog.select_images(multiselect=False)
# images contains at most one ImageWrapper
contexts = OmeroBrowserDialog.select_image_contexts(multiselect=False)
# contexts contains at most one SelectedImageContext
The multiselect keyword argument is also accepted by the
OmeroBrowserDialog constructor itself when embedding the dialog directly:
dlg = OmeroBrowserDialog(parent, gateway=gw, multiselect=False)
if dlg.exec() == QDialog.DialogCode.Accepted:
image = dlg.get_selected_images()[0]
OMERO Viewer
omero_viewer
From a source checkout, you can also run:
python -m omero_browser_qt.omero_viewer
See the OMERO Viewer guide for controls and features.
The login flow silently reuses a valid OMERO session for up to ten minutes across app restarts. The password itself is not written to disk.
Documentation
Full documentation: https://cellular-imaging-amsterdam-umc.github.io/omero-browser-qt/
- Getting Started — prerequisites, install, first workflow
- User Guide — browser, pixel loading, 3D viewer
- API Reference — auto-generated from docstrings
- Examples — recipes and the OMERO Viewer
License
MIT
Metadata
Release files for omero-browser-qt 0.2.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| omero_browser_qt-0.2.5.tar.gz | 2.2 MB | Without provenance | Details for omero_browser_qt-0.2.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| omero_browser_qt-0.2.5-py3-none-any.whl | Python 3 | none | any | Details for omero_browser_qt-0.2.5-py3-none-any.whl |
Total release size: 2.3 MB
Release files / omero_browser_qt-0.2.5.tar.gz
| Download URL | omero_browser_qt-0.2.5.tar.gz |
|---|---|
| Size | 2.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b08e33491f37393670cd664793f23cb3f9ff3e26ce5e81f007cbb8a8ea352f24
|
|
BLAKE2b-256 checksum How to use checksums |
f1f87ce39a31d9e649e82f52273f8f253a8160f13b78a3086f875c4721f0ff66
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / omero_browser_qt-0.2.5-py3-none-any.whl
| Download URL | omero_browser_qt-0.2.5-py3-none-any.whl |
|---|---|
| Size | 59.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e39aa6ab53aafa9536264c066101808e171417c79bf03cebfd2ad84649ae4ea3
|
|
BLAKE2b-256 checksum How to use checksums |
03cdb64665624ca5cd0d93b9f7092c937fd44c50c6708e030ff564242c3e963a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Security for omero-browser-qt 0.2.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.