Skip to content

VIPP 0.16.0a3

VIPP 0.16.0a3 adds fixed-template detection, basic position-based tracking, read-only trajectory review and adjacent-frame whole-volume registration. It also makes result windows easier to open and keeps preview framing and crop outlines separate between workflow tabs.

Use the canonical GitHub release for the exact wheel, source archive, Windows installer, separate Apple Silicon/Intel macOS packages and their checksums, or the exact PyPI version. Install only assets attached to that release and verify their hashes. Desktop installers are unsigned alpha builds; macOS packages are also unnotarized and CPU-only. Follow the installation instructions.

Detect repeated patterns and spots

Template Match compares one fixed-size, fixed-orientation template against complete windows of a scalar YX image or ZYX volume. It returns calibrated Match scores and a Boolean Valid scores mask. Find Peaks turns local maxima into a coordinate table using explicit cutoffs, pixel/physical separation, border exclusion and a result cap. Add Find Peaks connects both matching outputs in one undoable edit; adding a node does not calculate it.

Scores are normalized correlation, not confidence probabilities. Coordinates refer to template centers; even-sized templates have half-integer centers. The read-only Inspect detections on source… view connects table rows to markers, including an explicit Z-plane selector for volumes. It does not segment boundaries, create label identities or edit the scientific table.

Try Repeated 2D Pattern Detection or Anisotropic 3D Pattern Detection. Their independent synthetic centers include nearby, border and absent cases. See Detect repeated patterns for the walkthrough and detection contracts for exact validity, coordinate and persistence rules.

Follow objects through a time series

Detect Spots per Frame detects independently in every complete XY image or XYZ volume of one scalar TYX/TZYX series. Its IDs are local to each frame; matching numbers in different frames do not establish persistent identity. It records empty frames and detection caps explicitly.

Build Tracks consumes those complete observations or calibrated time-series object measurements. It creates Tracked observations and Track summary tables using position-only, one-to-one links. Adjacent frames take priority over gap reconnections. Maximum displacement is multiplied by elapsed frames; there is no velocity prediction, interpolated observation or automatic drift correction. Physical distances respect anisotropic spatial sampling.

Use Review trajectories… on the node card or Review trajectories on source… in the inspector to inspect current cached observations against the resident source series. Dashed segments span missing observations; orange trails flag competing feasible links. Sorting, trail length and decimal display change only review. Stale or unavailable inputs prevent review of old results.

Crossing objects can exchange identities even with visually plausible links. A review flag is not a confidence score, and its absence does not prove correctness. This release does not implement appearance/morphology models, lineages, division/fusion, identity editing or GPU detection/tracking. See Track objects and spots and the tracking reference.

Register against adjacent frames

Estimate Registration → Time-series strategy → Previous frame estimates each original volume against its neighbour toward the selected reference time, then combines those motion instructions. Apply Transform still resamples the original data only once onto the reference grid. Whole XYZ volumes move as units, and the estimated motion is reused across compatible channels.

Adjacent-pair displacement and overlap limits always apply. Choose Previous-frame cumulative quality → Report only to report combined motion and coverage without rejecting them, or Require local limits to enforce the same limits after composition. One failed pair rejects the series; there is no skipped frame or silent identity replacement. Small local errors can accumulate, so inspect both pair and cumulative diagnostics and independent landmarks. The existing Fixed reference strategy remains the default. See Register images and correct drift.

Easier result review and safer previews

  • Intensity Histogram cards provide Open histogram…. Relevant table-producing cards provide Open measurements…, and time-series cards provide Review trajectories… when their cached result supports it. These shortcuts open the clicked node's result without calculating or changing node selection.
  • Detection, tracking and registration sliders have practical tuning windows. Numeric spinners still accept each setting's full valid range, and values outside a slider window are preserved. The windows are not scientific limits.
  • Inspector setting summaries wrap rather than being cut off; changing long numeric values no longer makes the summary reflow with every slider step.
  • Workflow tabs retain their own zoom, slice position and 2D/3D view. A newly viewed tab fits its selected image, not an unrelated large image. Crop teardown and delayed presentation callbacks cannot carry an outgoing crop surface into another workflow. These are runtime view settings, not saved analysis parameters.
  • Synchronous CPU calculations retain reusable dependency execution provenance, preventing the first later manual recalculation from unnecessarily treating an unchanged cached dependency as stale.

The catalogue contains 31 examples and 26 bundled samples. New tracking examples cover a 2D missing frame and crossing ambiguity, and anisotropic 3D objects with a missing observation and later appearance. The Exhaustive Inspector Showcase includes the new domains for broader interface review.

Compatibility and qualification boundaries

Workflow, batch-config and manifest schemas remain 6. New operation IDs, detection/time-series evidence and transform strategy metadata require a runtime that contains these features despite unchanged schema numbers. The released tracking names and code identifiers are Detect Spots per Frame (detect_spots_per_frame) and Build Tracks (build_tracks); transient development names are not supported aliases.

Keep original workflows, source data, environments and decisive outputs. Recalculate representative data and regenerate Python exports with the installed version. Keep per-item batch manifests with exported tables: detached CSV/TSV files do not establish the complete detection/tracking provenance or a shared calibrated time series.

The qualification declaration separates changed-domain checks from carried-forward evidence. Independent synthetic pattern/trajectory/known-motion checks establish bounded numerical and integration behavior, not acquired-microscopy accuracy. Exact-candidate cross-platform CI, native dependency checks, installer artifact checks and fresh-machine GUI lifecycles are separate evidence domains. Consult the release record for the exact platforms and artifacts qualified; earlier branch-local Windows passes are not substitutes for those release gates.

This release does not expand admitted GPU operation regions or validate minimum-dependency environments, arbitrary large-volume performance or biological tracking accuracy. Detection/tracking and registration run on CPU. No deformable registration, rotation/scale template bank or inferential statistics is added.

Full source comparison: 0.16.0a2 → 0.16.0a3