itasc.contact_analysis.quantifiers.cell_shape

Cell-shape quantifier — the registry adapter over the shape core.

Exposes per-cell morphology through the generic Quantifier interface as a pooled quantity: compute_object_table() runs the shape core over the cell label stack in memory and hands the tidy table straight to the pooling layer (no per-position artifact is persisted). The object-key column is cell_id (the shared track id).

Classes

CellShapeQuantifier()

Quantifies per-cell, per-frame shape descriptors from cell labels.

class itasc.contact_analysis.quantifiers.cell_shape.CellShapeQuantifier[source]

Bases: Quantifier

Quantifies per-cell, per-frame shape descriptors from cell labels.

quantity_id: ClassVar[str] = 'cell_shape'

Stable key; an empty value marks an intermediate (non-registered) base.

display_name: ClassVar[str] = 'Cell shape'

Human-readable label shown wherever a quantity is selected.

requires: ClassVar[tuple[str, ...]] = ('cell_labels_path',)

PositionInputs field names this quantifier needs to build.

required_build_params: ClassVar[dict[str, str]] = {'pixel_size_um': 'pixel size (µm/px)'}

Shared build-param keys that must be present and positive for this quantifier to build, mapped to the human label shown in the UI (e.g. cell density needs {"fov_area_mm2": "FOV area (mm²)"}). The studio greys the metric out — rather than letting the build fail — until they are supplied. Empty for a quantifier that needs no shared param.

table_keys: ClassVar[tuple[str, ...]] = ('frame', 'cell_id')

Per-cell, per-frame shape descriptors, keyed (frame, cell_id).

compute_object_table(inputs, *, params=None)[source]

The pooled tidy table for one position, computed directly from inputs.

A pooled quantifier (one that declares table_keys) implements this: it returns the same column-major table that object_table used to return after a disk round-trip, but never touches disk. None when this position yields no rows. Producers (contacts) are not pooled and do not implement it. params carries the shared build knobs (e.g. fov_area_mm2) for the quantifiers that opt in; per-position values (pixel size, frame interval) arrive via inputs.