Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
drshailesh88 avatar

Omero Integration

  • 23 installs
  • 5 repo stars
  • Updated June 18, 2026
  • drshailesh88/integrated_content_os

Accesses microscopy data via the OMERO Python API: retrieve images and datasets, analyze pixels, manage ROIs and annotations, and run batch server-side scripts.

About

OMERO is an open-source platform for managing and analyzing microscopy images, accessed here through omero-py. A developer uses it to retrieve datasets, analyze pixel data, manage ROIs and annotations, and run high-content screening workflows.

  • Connection and session management with group contexts
  • ROI, annotation, and server-side batch processing

Omero Integration by the numbers

  • 23 all-time installs (skills.sh)
  • Ranked #1,200 of 2,065 Data Science & ML skills by installs in the Skillselion catalog
  • Data as of Jul 29, 2026 (Skillselion catalog sync)
npx skills add https://github.com/drshailesh88/integrated_content_os --skill omero-integration

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs23
repo stars5
Last updatedJune 18, 2026
Repositorydrshailesh88/integrated_content_os

What it does

Accesses microscopy data via the OMERO Python API: retrieve images and datasets, analyze pixels, manage ROIs and annotations, and run batch server-side scripts.

Files

SKILL.mdMarkdownGitHub ↗

OMERO Integration

Overview

OMERO is an open-source platform for managing, visualizing, and analyzing microscopy images and metadata. Access images via Python API, retrieve datasets, analyze pixels, manage ROIs and annotations, for high-content screening and microscopy workflows.

When to Use This Skill

This skill should be used when:

  • Working with OMERO Python API (omero-py) to access microscopy data
  • Retrieving images, datasets, projects, or screening data programmatically
  • Analyzing pixel data and creating derived images
  • Creating or managing ROIs (regions of interest) on microscopy images
  • Adding annotations, tags, or metadata to OMERO objects
  • Storing measurement results in OMERO tables
  • Creating server-side scripts for batch processing
  • Performing high-content screening analysis

Core Capabilities

This skill covers eight major capability areas. Each is documented in detail in the references/ directory:

1. Connection & Session Management

File: references/connection.md

Establish secure connections to OMERO servers, manage sessions, handle authentication, and work with group contexts. Use this for initial setup and connection patterns.

Common scenarios:

  • Connect to OMERO server with credentials
  • Use existing session IDs
  • Switch between group contexts
  • Manage connection lifecycle with context managers

2. Data Access & Retrieval

File: references/data_access.md

Navigate OMERO's hierarchical data structure (Projects → Datasets → Images) and screening data (Screens → Plates → Wells). Retrieve objects, query by attributes, and access metadata.

Common scenarios:

  • List all projects and datasets for a user
  • Retrieve images by ID or dataset
  • Access screening plate data
  • Query objects with filters

3. Metadata & Annotations

File: references/metadata.md

Create and manage annotations including tags, key-value pairs, file attachments, and comments. Link annotations to images, datasets, or other objects.

Common scenarios:

  • Add tags to images
  • Attach analysis results as files
  • Create custom key-value metadata
  • Query annotations by namespace

4. Image Processing & Rendering

File: references/image_processing.md

Access raw pixel data as NumPy arrays, manipulate rendering settings, create derived images, and manage physical dimensions.

Common scenarios:

  • Extract pixel data for computational analysis
  • Generate thumbnail images
  • Create maximum intensity projections
  • Modify channel rendering settings

5. Regions of Interest (ROIs)

File: references/rois.md

Create, retrieve, and analyze ROIs with various shapes (rectangles, ellipses, polygons, masks, points, lines). Extract intensity statistics from ROI regions.

Common scenarios:

  • Draw rectangular ROIs on images
  • Create polygon masks for segmentation
  • Analyze pixel intensities within ROIs
  • Export ROI coordinates

6. OMERO Tables

File: references/tables.md

Store and query structured tabular data associated with OMERO objects. Useful for analysis results, measurements, and metadata.

Common scenarios:

  • Store quantitative measurements for images
  • Create tables with multiple column types
  • Query table data with conditions
  • Link tables to specific images or datasets

7. Scripts & Batch Operations

File: references/scripts.md

Create OMERO.scripts that run server-side for batch processing, automated workflows, and integration with OMERO clients.

Common scenarios:

  • Process multiple images in batch
  • Create automated analysis pipelines
  • Generate summary statistics across datasets
  • Export data in custom formats

8. Advanced Features

File: references/advanced.md

Covers permissions, filesets, cross-group queries, delete operations, and other advanced functionality.

Common scenarios:

  • Handle group permissions
  • Access original imported files
  • Perform cross-group queries
  • Delete objects with callbacks

Installation

uv pip install omero-py

Requirements:

  • Python 3.7+
  • Zeroc Ice 3.6+
  • Access to an OMERO server (host, port, credentials)

Quick Start

Basic connection pattern:

from omero.gateway import BlitzGateway

# Connect to OMERO server
conn = BlitzGateway(username, password, host=host, port=port)
connected = conn.connect()

if connected:
    # Perform operations
    for project in conn.listProjects():
        print(project.getName())

    # Always close connection
    conn.close()
else:
    print("Connection failed")

Recommended pattern with context manager:

from omero.gateway import BlitzGateway

with BlitzGateway(username, password, host=host, port=port) as conn:
    # Connection automatically managed
    for project in conn.listProjects():
        print(project.getName())
    # Automatically closed on exit

Selecting the Right Capability

For data exploration:

  • Start with references/connection.md to establish connection
  • Use references/data_access.md to navigate hierarchy
  • Check references/metadata.md for annotation details

For image analysis:

  • Use references/image_processing.md for pixel data access
  • Use references/rois.md for region-based analysis
  • Use references/tables.md to store results

For automation:

  • Use references/scripts.md for server-side processing
  • Use references/data_access.md for batch data retrieval

For advanced operations:

  • Use references/advanced.md for permissions and deletion
  • Check references/connection.md for cross-group queries

Common Workflows

Workflow 1: Retrieve and Analyze Images

1. Connect to OMERO server (references/connection.md) 2. Navigate to dataset (references/data_access.md) 3. Retrieve images from dataset (references/data_access.md) 4. Access pixel data as NumPy array (references/image_processing.md) 5. Perform analysis 6. Store results as table or file annotation (references/tables.md or references/metadata.md)

Workflow 2: Batch ROI Analysis

1. Connect to OMERO server 2. Retrieve images with existing ROIs (references/rois.md) 3. For each image, get ROI shapes 4. Extract pixel intensities within ROIs (references/rois.md) 5. Store measurements in OMERO table (references/tables.md)

Workflow 3: Create Analysis Script

1. Design analysis workflow 2. Use OMERO.scripts framework (references/scripts.md) 3. Access data through script parameters 4. Process images in batch 5. Generate outputs (new images, tables, files)

Error Handling

Always wrap OMERO operations in try-except blocks and ensure connections are properly closed:

from omero.gateway import BlitzGateway
import traceback

try:
    conn = BlitzGateway(username, password, host=host, port=port)
    if not conn.connect():
        raise Exception("Connection failed")

    # Perform operations

except Exception as e:
    print(f"Error: {e}")
    traceback.print_exc()
finally:
    if conn:
        conn.close()

Additional Resources

  • Official Documentation: https://omero.readthedocs.io/en/stable/developers/Python.html
  • BlitzGateway API: https://omero.readthedocs.io/en/stable/developers/Python.html#omero-blitzgateway
  • OMERO Model: https://omero.readthedocs.io/en/stable/developers/Model.html
  • Community Forum: https://forum.image.sc/tag/omero

Notes

  • OMERO uses group-based permissions (READ-ONLY, READ-ANNOTATE, READ-WRITE)
  • Images in OMERO are organized hierarchically: Project > Dataset > Image
  • Screening data uses: Screen > Plate > Well > WellSample > Image
  • Always close connections to free server resources
  • Use context managers for automatic resource management
  • Pixel data is returned as NumPy arrays for analysis

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.