{
  "original": {
    "width": 1280,
    "height": 960,
    "megapixels": 1.23
  },
  "staged": {
    "width": 1200,
    "height": 896,
    "megapixels": 1.08
  },
  "aspect_ratio": {
    "original": 1.3333,
    "staged": 1.3393,
    "deviation": 0.0045,
    "pass": true
  },
  "resolution_kept": false,
  "resolution_ratio": 0.875,
  "raw_drift_score": 36.1,
  "alignment": {
    "ok": true,
    "method": "SIFT + ratio test + RANSAC similarity (estimateAffinePartial2D)",
    "keypoints_original": 577,
    "keypoints_staged": 805,
    "matches": 97,
    "affine_anisotropy": 0.0027,
    "inliers": 76,
    "inlier_ratio": 0.784,
    "median_residual_px": 0.42,
    "matrix_staged_to_original_work": [
      [
        1.00004,
        -0.00136,
        0.36083
      ],
      [
        0.00136,
        1.00004,
        1.04559
      ]
    ]
  },
  "framing": {
    "pass": true,
    "result": "pass",
    "zoom": 1.0,
    "shift_px": [
      -0.2,
      0.3
    ],
    "shift_pct": [
      -0.01,
      0.03
    ],
    "rotation_deg": 0.078,
    "visible_overlap_pct": 99.74,
    "invented_area_pct": 0.05,
    "original_px_lost": {
      "left": 0.5,
      "right": 0.8,
      "top": 3.0,
      "bottom": 2.4
    },
    "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.8065,
      "line_displaced_frac": 0.1057,
      "line_missing_frac": 0.0878,
      "structural_line_pixels": 22115
    },
    "note": "low-threshold Canny that also sees white wall/soffit/column edges; not part of drift_score"
  },
  "architecture": {
    "edge_ssim": 0.7631,
    "line_recall": 0.5445,
    "line_displaced_frac": 0.256,
    "line_missing_frac": 0.1994,
    "structural_line_pixels": 5816,
    "evaluated_area_frac": 0.642,
    "drift_score": 34.6,
    "aligned": true,
    "evaluated_area_frac_of_mask": 0.989,
    "mask": "auto: top 65% of frame"
  },
  "drift_score": 34.6,
  "structure": {
    "edge_ssim": 0.7659,
    "line_recall": 0.5113,
    "line_displaced_frac": 0.2827,
    "line_missing_frac": 0.206,
    "structural_line_pixels": 5816,
    "evaluated_area_frac": 0.65,
    "drift_score": 36.1,
    "mask": "auto: top 65% of frame",
    "note": "legacy unaligned structure check (= raw_drift_score)"
  },
  "seconds_to_result": 61,
  "seconds_approx": true,
  "files": {
    "original": "photos/02-room-with-doorway.jpg",
    "staged": "results/roomagen/02.jpg"
  }
}