Surface To Volume Registration
Aligns external surface-scan point clouds to a volume-derived body surface from a CT or MR scan. The Suite workflow is built around automatic skin extraction; it is not a general “register scans to any volume label” tool.
Input
Volume — one CT or MR
SharedImageSet.Surface scans — one or more point clouds, assigned in the controller (see below).
Volume weight map (optional) — label map aligned with the volume. Used together with Volume weights to weight regions on the volume-side surface points during ICP (for example emphasize the torso). It does not replace skin extraction or select a different anatomy as the registration target.
Output
Aligned surface point clouds (green in the display). Optionally the extracted volume-side surface points (cyan) when Export skin points is enabled. Transformation history is stored on each aligned scan when Align volume to surface is disabled.
Description
Typical use case: register handheld or structured-light surface scans of a patient to the skin surface implied by a CT or MR volume (for example before or during image-guided therapy).
The workflow:
Select the volume and open the algorithm.
Select surface-scan point clouds in the annotation view and click Set Surface Points in the controller (order defines scan index for ground-truth matrices).
Configure sensor orientation relative to the patient, then run.
On each run the algorithm reorients the volume for surface extraction, builds a point cloud (and optionally a mesh) of the outer skin using the built-in skin-segmentation step unless a volume-side point cloud was already supplied programmatically (see Volume-side target surface below), optionally downsamples each input scan, computes a centroid-based initial alignment, and refines with point-to-plane ICP against that volume-side surface. Use Reset in the controller to restore original volume and scan poses.
Volume-side target surface
In the Suite UI, the registration target on the volume is always the skin surface:
By default, skin is extracted automatically from the CT/MR volume (see Automatic skin extraction below).
The optional Volume weight map only assigns per-point weights on those skin points during ICP — it cannot point the algorithm at an arbitrary organ or label volume instead of skin.
Programmatic integrations can inject a precomputed volume-side point cloud before compute() (for example skin from another tool, or any surface already sampled as points). That path is not available from the algorithm controller. Passing a label map alone is not supported; an arbitrary segmentation would need to be converted to a point cloud first.
Sensor setup
Surface right orientation — patient-centric orientation of the volume’s local axes relative to the 3D sensor (Feet, Head, Patient Left, Patient Right).
Surface viewing angle — tilt in degrees from a top-down view (for example 90 when the sensor views the patient from the side).
Registration options
Align volume to surface — when enabled with a single surface scan, moves the volume to match the scan instead of moving scans to the volume. Not supported for multiple scans.
Downsample surface — subsample each input scan before registration (faster, coarser).
ICP overlap ratio — overlap fraction passed to the internal ICP alignment.
Volume weights — per-label weights indexed by label value in the weight map; applied to skin surface points during ICP, not to pick a different structure.
GT registration (surface to volume) — optional ground-truth transforms per scan for evaluation logging.
Automatic skin extraction
When no volume-side point cloud is supplied via the API, skin is extracted from the volume automatically:
Skin segmentation threshold — optional override of the default skin threshold.
Skin segmentation padding / Skin segmentation padding size / Skin segmentation padding mode — morphological padding on the segmentation mask.
Skin segmentation subvoxel refinement — use subvoxel skin extraction instead of mesh-based extraction.
Export skin points — add the extracted skin point cloud to the algorithm output.