{
  "aggregate_only": true,
  "data_mode": "artificial-dicom-fixtures",
  "disclaimer": "Exploratory aggregate HU harmonisation baseline \u2014 not for clinical use.",
  "domains": [
    {
      "after_mean_hu": 89.89454571577778,
      "before_mean_hu": -150.1903076171875,
      "calibration_sample_count": 24576,
      "evaluation_sample_count": 24576,
      "kvp": 80.0,
      "label": "80 kVp",
      "mapping": "monotonic_quantile",
      "mean_shift_hu": 240.08485333296528,
      "series_count": 3
    },
    {
      "after_mean_hu": 89.91379158244922,
      "before_mean_hu": -30.21331787109375,
      "calibration_sample_count": 24576,
      "evaluation_sample_count": 24576,
      "kvp": 100.0,
      "label": "100 kVp",
      "mapping": "monotonic_quantile",
      "mean_shift_hu": 120.12710945354297,
      "series_count": 3
    },
    {
      "after_mean_hu": 89.7445068359375,
      "before_mean_hu": 89.7445068359375,
      "calibration_sample_count": 24576,
      "evaluation_sample_count": 24576,
      "kvp": 120.0,
      "label": "120 kVp",
      "mapping": "identity",
      "mean_shift_hu": 0.0,
      "series_count": 3
    }
  ],
  "method": {
    "calibration_split": "even-indexed bounded samples",
    "evaluation_split": "odd-indexed bounded samples",
    "geometry_resampled": false,
    "hu_clipped": false,
    "name": "Held-out monotonic quantile mapping",
    "quantile_points": 101,
    "reference_kvp": 120.0,
    "reference_selection": "requested_domain"
  },
  "pairwise": [
    {
      "after_wasserstein_hu": 0.8330786938490353,
      "before_wasserstein_hu": 120.0643656716418,
      "domain_a": "80 kVp",
      "domain_b": "100 kVp",
      "passes_exploratory_target": true,
      "reduction": 0.9930613992820536,
      "target_reduction": 0.3
    },
    {
      "after_wasserstein_hu": 1.0279813080326985,
      "before_wasserstein_hu": 240.26492537313433,
      "domain_a": "80 kVp",
      "domain_b": "120 kVp",
      "passes_exploratory_target": true,
      "reduction": 0.9957214674325175,
      "target_reduction": 0.3
    },
    {
      "after_wasserstein_hu": 0.9924844783422664,
      "before_wasserstein_hu": 120.20055970149254,
      "domain_a": "100 kVp",
      "domain_b": "120 kVp",
      "passes_exploratory_target": true,
      "reduction": 0.9917430960321066,
      "target_reduction": 0.3
    }
  ],
  "pixel_data_read": true,
  "source_configured": true,
  "status": "ready",
  "summary": {
    "domain_count": 3,
    "median_wasserstein_reduction": 0.9930613992820536,
    "pair_count": 3,
    "pairs_passing_30_percent": 3,
    "rejected_files": 0,
    "rejected_series": 0,
    "series_analysed": 9,
    "series_discovered": 9
  },
  "voxels_returned": false,
  "warnings": [
    "Distribution mapping can suppress biological contrast and is not an anatomical or radiomic validation.",
    "Results on generated phantoms are methodological evidence only; real-data validation must remain in the SPE."
  ]
}
