# PHerc0139: 20260102150214-2.399um-0.2m-78keV-masked -> 20250728140407-9.362um-1.2m-113keV-masked

Registration of the moving scan `20260102150214-2.399um-0.2m-78keV-masked` (2.399 um) to the fixed scan `20250728140407-9.362um-1.2m-113keV-masked` (9.362 um), made with `ufsm reg` (github.com/SuperOptimizer/ufsm, src/reg.c), CT read from this mirror.

- `transform.json`: published schema; `transformation_matrix` = refined best-fit affine, moving level-0 voxel (x, y, z) -> fixed level-0 voxel (x, y, z).
- `field.f32` + `field.json`: residual smooth displacement on the fixed grid; full map: moving = T^-1 (p + D(p)) for a fixed point p (see field.json, worked example).
- `reg.json`: the same map in ufsm's format (`ufsm reg map reg.json [--f2c] x,y,z`, `ufsm reg overlay`, `ufsm reg boxes`).
- `eval.json`, `eval_boxes.jsonl`: accuracy before / after on held-out boxes and the certified region; `residuals.jsonl`: the final fit's per-box residuals.

Method: starting from the published transform, per ~1.2 mm box the moving scan's pyramid level closest to the fixed voxel is resampled onto the fixed grid,
both are band-passed (difference of Gaussians), and the 3D shift maximising normalised cross-correlation is found (integer search, then sub-voxel by re-resampling and a quadratic fit).
A Huber-robust affine correction and a membrane-regularised trilinear displacement field (spacing 0.898752 mm, chosen by 1/5 hold-out cross-validation) are fitted to the box shifts,
coarse to fine (~19 um, ~9.5 um boxes). Evaluation boxes sit midway between the fit boxes.

| | p50 | p90 | share < 1/4 voxel |
|---|---|---|---|
| before (published transform) | 1.924 vox (18.01 um) | 3.533 vox (33.07 um) | 0.6% |
| after (held-out boxes) | 0.111 vox (1.04 um) | 0.287 vox (2.68 um) | 86.5% |

Voxels are fixed-scan level-0 voxels (9.362 um). Certified: 1265 of 1462 papyrus evaluation boxes (per fixed-z slab in eval.json).
