{
  "original": {
    "width": 1280,
    "height": 960,
    "megapixels": 1.23
  },
  "staged": {
    "width": 684,
    "height": 512,
    "megapixels": 0.35
  },
  "aspect_ratio": {
    "original": 1.3333,
    "staged": 1.3359,
    "deviation": 0.002,
    "pass": true
  },
  "resolution_kept": false,
  "resolution_ratio": 0.285,
  "raw_drift_score": 9.0,
  "alignment": {
    "ok": true,
    "method": "SIFT + ratio test + RANSAC similarity (estimateAffinePartial2D)",
    "keypoints_original": 276,
    "keypoints_staged": 384,
    "matches": 148,
    "affine_anisotropy": 0.0011,
    "inliers": 128,
    "inlier_ratio": 0.865,
    "median_residual_px": 0.5,
    "matrix_staged_to_original_work": [
      [
        0.99965,
        -0.00014,
        0.37403
      ],
      [
        0.00014,
        0.99965,
        0.4878
      ]
    ]
  },
  "framing": {
    "pass": true,
    "result": "pass",
    "zoom": 1.0003,
    "shift_px": [
      0.2,
      -0.1
    ],
    "shift_pct": [
      0.01,
      -0.01
    ],
    "rotation_deg": 0.008,
    "visible_overlap_pct": 99.93,
    "invented_area_pct": 0.0,
    "original_px_lost": {
      "left": 0.5,
      "right": 0.1,
      "top": 0.8,
      "bottom": 1.0
    },
    "criteria": "overlap >= 97%, zoom 0.99-1.02, |rotation| <= 0.5 deg, invented area <= 2%",
    "units": "px of the original image; shift = staged frame centre vs original centre; zoom > 1 = cropped/zoomed in"
  },
  "diagnostics": {
    "sensitive_edges": {
      "line_recall": 0.9027,
      "line_displaced_frac": 0.0547,
      "line_missing_frac": 0.0427,
      "structural_line_pixels": 23248
    },
    "note": "low-threshold Canny that also sees white wall/soffit/column edges; not part of drift_score"
  },
  "architecture": {
    "edge_ssim": 0.9534,
    "line_recall": 0.8353,
    "line_displaced_frac": 0.0189,
    "line_missing_frac": 0.1458,
    "structural_line_pixels": 6235,
    "evaluated_area_frac": 0.644,
    "drift_score": 10.6,
    "aligned": true,
    "evaluated_area_frac_of_mask": 0.991,
    "mask": "auto: top 65% of frame"
  },
  "drift_score": 10.6,
  "structure": {
    "edge_ssim": 0.961,
    "line_recall": 0.8598,
    "line_displaced_frac": 0.02,
    "line_missing_frac": 0.1202,
    "structural_line_pixels": 6242,
    "evaluated_area_frac": 0.65,
    "drift_score": 9.0,
    "mask": "auto: top 65% of frame",
    "note": "legacy unaligned structure check (= raw_drift_score)"
  },
  "seconds_to_result": null,
  "seconds_approx": true,
  "files": {
    "original": "photos/01-open-plan-kitchen-living.jpg",
    "staged": "results/sofabrain/01.jpg"
  }
}