PROProduction

Workflow-grade Pro analysis with audit-ready outputs.

workflow pro

Workflow Narrative

Image Registration Diagnostics

Problem It Solves

Which pairs are registration-ready, and do we have enough correspondence quality to proceed confidently?

Who It Is For

Primary User

Teams building repeatable image registration pipelines (RGB-RGB, thermal-RGB, and cross-date alignment).

What It Does

How It Works

Why It Wins

Typical Buying Trigger

Manual registration workflows are inconsistent and teams need auditable pair diagnostics before downstream warping/fusion steps.

Typical Presets

Inputs

ParameterOptionalDescription
mode: set | pairnoExecution mode for set-wide pair planning or explicit pair diagnostics.
images_dirno (set mode)Input image directory used when mode is set.
left_image, right_imageno (pair mode)Explicit pair inputs used when mode is pair.
max_pairsyesMaximum number of candidate pairs evaluated in set mode.
max_features_per_imageyesUpper bound on extracted keypoints per image.
ratio_testyesDescriptor ratio-test threshold controlling match strictness.
min_matchesyes[pro] Minimum accepted match count per pair; drives the QA gate, fallback routing, and pass/review/fail classification.
output_prefixyesPrefix used to name workflow outputs.
emit_pair_match_vizyesIf true, writes annotated side-by-side pair images with tie-point lines. Defaults to `false`.
max_pair_visualizationsyesMaximum number of pair visualizations to write when emit_pair_match_viz is true. Defaults to `8`.
max_lines_per_pairyesMaximum number of tie-point lines drawn per visualization. Defaults to `150`.
viz_scaleyesDownscale factor applied to visualization images, in [0.05, 1.0]. Defaults to `0.5`.

Outputs

ParameterTypeDescription
pair_diagnosticsJSONPair-level diagnostics including candidate score, keypoint counts, match quality, confidence proxies, strategy used, fallback flag, and full strategy attempt trace (`*_pair_diagnostics.json`).
match_summaryJSONWorkflow summary contract with aggregate match metrics, status, and fallback policy record (`*_match_summary.json`).
html_reportHTMLHuman-readable customer-facing report generated from the workflow summary contract for stakeholder review and QA traceability.
tie_pointsCSVTie-point table (`pair_id,left_x,left_y,right_x,right_y,confidence`) for downstream registration workflows (`*_tie_points.csv`).
pair_match_vizdirectoryAnnotated side-by-side JPEG images per pair with tie-point lines overlaid, written when emit_pair_match_viz is true.

Python Example

import whitebox_workflows as wbw

wbe = wbw.WbEnvironment(include_pro=True, tier="pro")

result = wbe.registration_oriented_feature_workflow(
    mode="set",
    images_dir="data/uav_mission/images",
    max_pairs=24,
    max_features_per_image=500,
    ratio_test=0.80,
    min_matches=24,
    output_prefix="output/registration_workflow",
    emit_pair_match_viz=True,
)

print(result)

License Notice

Use of this function requires a license for Whitebox Workflows Professional (WbW-Pro). Please visit www.whiteboxgeo.com to purchase a license.

Project Links

WbW Homepage User Manual Learn More