Skip to content

Feature: per-axis spatial and temporal calibration declarations #58

Open

Description

@guijacquemet

Goal

Support anisotropic pixel sizes (X, Y, Z) and time intervals where scientifically necessary, instead of treating all images as if one PixelSizeOf scalar were sufficient. Declare the required calibration semantically once; every host extracts it from the image it actually submits.

Existing PixelSizeOf("image") should retain its meaning for simple isotropic 2D workflows. Reuse the proposed ZStepOf and TimeIntervalOf in Wave 2 spec PR #39 rather than inventing duplicate markers. Decide whether a new per-axis/calibration object is preferable to independent float parameters. Make both pixel-center spacing and physical units explicit.

Acceptance criteria

  • Y/X anisotropic images report both spacings with verified units; do not silently average them.
  • Z and T information is offered only where the corresponding axes exist and metadata are usable.
  • Unavailable, zero or inconsistent calibration is visibly unknown—not a silently carried over value or fabricated 1.0.
  • Manual overrides are distinguishable from automatic detection.
  • Unit/metadata tests for Napari, Fiji, QuPath, TIFF/OME-TIFF and stack inputs.
  • Link regression criteria to Napari #35, #38, Fiji #26 and QuPath #15.

Priority: High for correct 3D/quantitative measurements, after the current calibration defects are fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions