Spatial Omics: a pipeline architecture for trustworthy imaging.

01 · Pipeline Engineering

Turn an experimental method into an executable system.

Microscopy analysis often begins as a working method understood by one scientist: instrument settings, processing decisions, and scripts developed around a particular experiment. Fovea Lab provides a structured environment for turning that method into a pipeline that can be run, examined, and developed over time.

A scientist can begin in the visual workspace, ask the agent to help develop a stage, or open the underlying code when direct control is needed. Each way of working modifies the same pipeline rather than creating a separate version of the analysis. The scientific purpose of the experiment remains connected to the computation, allowing the workflow to mature from early exploration into a system that another researcher can understand and use.

02 · Evidence Integrity

Make confidence part of the computation.

A final measurement does not reveal whether the source data were complete, whether a model behaved unexpectedly, or whether an important parameter changed between runs. Fovea Lab evaluates the analysis as it runs and preserves the evidence needed to understand the result afterward.

Checks are placed at the stages where failures can occur. Scientists can return from a result to the pipeline that produced it, inspect whether the run remained within accepted conditions, and trace unexpected behavior to the point where it entered the analysis. Verification becomes part of the workflow itself rather than a report reconstructed after the experiment is finished.

03 · Agentic Development

Let AI improve the workflow without taking control away from the scientist.

Fovea Lab gives agents access to the structured experimental context that governs the pipeline. Instead of producing isolated code without understanding the surrounding system, an agent can inspect a specific stage, propose a bounded revision, and evaluate its effect against criteria established by the scientist.

A proposed change remains separate from the approved workflow until it has been reviewed. Its effect can be compared with the current version, while the decision to adopt it remains with an authorized user. AI can accelerate pipeline development while the platform preserves accountability and a stable record of what was actually run.

Pipeline architectures, module by module.

Pipeline backbone — reshapes per modality. Select a module for its sub-steps, tools, and deliverable.

Spatial Omics

High confidence

Ingest

Read raw multiplex tissue imaging outputs (cyclic-IF rounds, CODEX/PhenoCycler tiles, MERFISH/Xenium/CosMx transcript tables, Visium spot matrices, IMC MCD files) into a harmonized, chunked, coordinate-aligned representation — typically OME-Zarr for images and SpatialData/AnnData for molecules and matrices — preserving vendor metadata, codebooks, panel manifests, and ROI geometry.

Operations

  1. Vendor-format parsingParse platform-native outputs — 10x Xenium output folders (cell_feature_matrix, transcripts.parquet, morphology images), Vizgen MERSCOPE CSV/HDF5/Parquet bundles, NanoString CosMx flat files, Akoya PhenoCycler QPTIFF tile stacks, CyCIF OME-TIFF cycles, IMC MCD/TXT files — using the appropriate loader or spatialdata-io reader.
  2. Multi-round / multi-tile concatenationFor cyclic methods (CyCIF, CODEX, IMC), assemble per-cycle or per-tile files into a single multi-channel image stack, tracking round/channel indexing from the panel manifest.
  3. Codebook and panel manifest ingestionLoad the gene codebook (MERFISH/Xenium/CosMx) or antibody panel (CyCIF/CODEX/IMC) associating each channel/barcode with a gene symbol (HGNC) or protein marker name, clone, conjugate, and cycle index.
  4. Coordinate system registrationEstablish a unified physical coordinate system (micrometres) in SpatialData, linking image pixel grids, molecule coordinates, and ROI polygons to a common global-tissue reference frame.
  5. OME-Zarr / SpatialData writeWrite images as chunked OME-Zarr (with multiscales pyramid), molecule tables as Parquet, and the full SpatialData Zarr store; validate OME-NGFF conformance.
  6. Checksum and completeness validationVerify that all expected cycles/tiles/FOVs are present, file checksums match manifests, and no truncated files were ingested.

Inputs

  • Vendor-native raw outputs (cyclic-IF OME-TIFF stacks, MERFISH/Xenium/CosMx transcript tables and morphology images, Visium filtered_feature_bc_matrix, IMC MCD files)OME-TIFF · QPTIFF · MCD · CSV · Parquet · HDF5 · zarr
  • Panel manifest / codebook (gene-barcode or antibody-channel mapping)CSV · JSON · XLSX

Outputs

  • Harmonized multi-channel tissue image stackOME-Zarr · OME-TIFF
  • Molecule / transcript table with physical coordinatesParquet · CSV
  • SpatialData Zarr store (images + labels + shapes + tables unified)SpatialData Zarr
  • Panel / codebook manifest (canonical)JSON · CSV

QC checks

  • File completeness — Verify all expected cycle/tile/FOV files are present and non-truncated.
  • Checksum validation — Compare ingested file checksums against vendor-provided manifests.
  • Pixel size consistency — Confirm pixel size in OME metadata matches expected instrument value; flag discrepancies.
  • Panel completeness — Verify all channels in the panel manifest have corresponding image data; flag missing channels.
  • Coordinate system alignment — Spot-check that molecule coordinates (MERFISH/Xenium) fall within the image extent.

Failure modes it guards against

  • Truncated or missing cycle files — Checksum validation at ingest; fail-closed on incomplete file sets.
  • Incorrect pixel size in vendor metadata — Cross-check pixel size against instrument spec; store in OME-NGFF coordinate transform.
  • Channel/round index mismatch — Validate channel_to_marker_map against panel manifest at ingest; require explicit panel file.
  • Coordinate system mismatch between images and molecule tables — Enforce a single canonical coordinate system in SpatialData at ingest; test with spot overlap checks.

Tools (13)

  • spatialdata-ioPRIMARYOSS · BSD-3-Clause

    Vendor-specific readers for Xenium, MERSCOPE/Vizgen, CosMx, Visium HD, PhenoCycler/CODEX, MACSima into SpatialData format — the recommended first-pass ingest layer.

  • SpatialDataPRIMARYOSS · BSD-3-Clause

    Unified spatial omics data framework storing images, labels, shapes, points and tables with shared coordinate systems.

  • Bio-FormatsPRIMARYOSS · GPL-2.0-or-later

    Read proprietary and OME microscopy files (OME-TIFF, QPTIFF, CZI, ND2, LIF, MCD); preserve vendor metadata.

  • ome-zarr-pyPRIMARYOSS · BSD-2-Clause

    Write and validate OME-Zarr (OME-NGFF) image datasets with multiscales pyramids and coordinate transforms.

  • AICSImageIOOSS · BSD-3-Clause

    Python reader/writer for OME-TIFF, CZI, ND2, LIF, and OME-Zarr; wraps Bio-Formats via bioformats_jar.

  • tifffileLibrary · BSD-3-Clause

    Read and write multi-page TIFF and OME-TIFF files; used for CyCIF cycle stacks and tile assembly.

  • zarrLibrary · MIT

    Chunked N-dimensional array storage underpinning OME-Zarr/SpatialData; direct use for custom array writes.

  • MCMICROOSS · MIT

    End-to-end Nextflow pipeline for CyCIF/CODEX; handles ingest (Bio-Formats → OME-TIFF), registration (ASHLAR), segmentation and feature extraction.

  • sopaOSS · BSD-3-Clause

    Technology-invariant SpatialData-native pipeline supporting Xenium, MERSCOPE, CosMx, PhenoCycler, Visium HD ingest and downstream analysis.

  • Xenium Ranger (10x Genomics)Commercial · 10x Genomics EULA (commercial; verify)

    Off-instrument re-analysis of Xenium data including relabeling, re-segmentation, and output of canonical Xenium folder structure.

  • Vizgen Post-processing Tool (VPT)Commercial · Apache-2.0

    Re-analysis and cell-boundary re-segmentation of MERSCOPE/MERFISH datasets from Vizgen.

  • steinbockOSS · MIT

    IMC (Imaging Mass Cytometry) raw MCD data pre-processing, including image export, hot-pixel filtering and panel ingestion.

  • AnnDataLibrary · BSD-3-Clause

    In-memory and on-disk (HDF5/h5ad) cell×gene/feature matrix with obs/var metadata; standard exchange format for spatial expression tables.

Metadata captured

FieldTypeExampleStandard
pipeline_run_idstringspatial-omics-ingest-2026-06-05-ab3f
technologyenumxeniumMITI
instrument_modelstringXenium Analyzer (10x Genomics); MERSCOPE Ultra (Vizgen)MITI
panel_name_versionstringHuman Tissue Tumor Microenvironment Panel v1.0 (Xenium)MITI
marker_or_gene_panelarrayCD3E, EPCAM, KRT8, PTPRC, MKI67HGNC
n_cycles_or_roundsint (count)12MITI
channel_to_marker_mapobject{'c0': 'DAPI', 'c1': 'CD3-AF488', 'c2': 'EPCAM-AF555'}OME-NGFF
pixel_size_umfloat (micrometer)0.2125OME-NGFF
roi_idstringROI_001SpatialData
coordinate_system_namestringglobal_tissue_umSpatialData
input_file_checksumsobject{'morphology_mip.ome.tif': 'sha256:abcd1234'}
software_versionsobject{'spatialdata_io': '0.1.5', 'spatialdata': '0.2.2', 'python': '3.11', 'container': 'sha256:...'}REMBI

You get

  • OME-Zarr image store · OME-Zarr
  • SpatialData Zarr store · SpatialData Zarr
  • Canonical panel manifest · JSON
  • Ingest QC report · HTML/JSON

References