Skip to main content

Reusable PyQt6 dialog for browsing and retrieving images from OMERO via ICE

Project description

omero-browser-qt

PyPI Python Docs License: MIT

Reusable PyQt6 dialog for browsing and retrieving images from OMERO servers.

Browser dialog

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

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/

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omero_browser_qt-0.2.5.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omero_browser_qt-0.2.5-py3-none-any.whl (59.1 kB view details)

Uploaded Python 3

File details

Details for the file omero_browser_qt-0.2.5.tar.gz.

File metadata

  • Download URL: omero_browser_qt-0.2.5.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for omero_browser_qt-0.2.5.tar.gz
Algorithm Hash digest
SHA256 b08e33491f37393670cd664793f23cb3f9ff3e26ce5e81f007cbb8a8ea352f24
MD5 f70bb3a25cf356051a1fab896c98ccc1
BLAKE2b-256 f1f87ce39a31d9e649e82f52273f8f253a8160f13b78a3086f875c4721f0ff66

See more details on using hashes here.

File details

Details for the file omero_browser_qt-0.2.5-py3-none-any.whl.

File metadata

File hashes

Hashes for omero_browser_qt-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e39aa6ab53aafa9536264c066101808e171417c79bf03cebfd2ad84649ae4ea3
MD5 8da6877fccfa63539d7c1d97da882fba
BLAKE2b-256 03cdb64665624ca5cd0d93b9f7092c937fd44c50c6708e030ff564242c3e963a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page