feature op• Data kinds: voxel → voxel
• Call: import fullseye as fs; fs.ledger.vol_orientation_coherence(vol, sigma=1.0, rho=3.0) (to call the implementation directly, import volops; volops.vol_orientation_coherence(vol, sigma=1.0, rho=3.0); from the registry, ops3d.get("vol_orientation_coherence"))
How strongly the local structure points one way (3-D structure tensor).
Builds `J = G_rho * (grad I)(grad I)^T` and returns
(l1 - l3) / (l1 + l2 + l3), l1 >= l2 >= l3
in `[0, 1]: 1` where one direction dominates (a fibre, a lamella edge,
a crack face), `0` where the gradient is isotropic (a uniform block, white
noise) or where two directions are equally strong. *sigma* smooths before
differentiating (so noise is not differentiated into structure); *rho* is the
integration width — make it larger than the spacing of the structure you are
measuring.
HALCON computes this tensor and throws it away: `coherence_enhancing_diff`
uses it to steer a diffusion but exposes neither the orientation nor the
coherence. Returning the measurement is the point of this operator.
Applicability. (1) `rho` too small collapses the tensor to rank 1 and
the answer sticks at 1 everywhere — that is *not* perfect alignment, it is a
failure to measure. (2) Two fibre families crossing at equal strength read
as 0, indistinguishable from a uniform block; pair it with `vol_local_std`
to tell "no direction" from "no structure". (3) Voxels whose tensor trace is
below `1e-6` of the volume maximum return 0.
Returns a `(D, H, W) float64 volume in [0, 1]`.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• ct_porosity_and_fibre_morphometry — py -3.11 examples_3d/ct_porosity_and_fibre_morphometry.py
voxel as input)voxel_to_mips · voxel_to_mesh · signed_distance_field · to_points · sobel3d · hessian3d · curvature_maps · edt_jfa
feature)sobel3d · hessian3d · curvature_maps · edt_jfa · vol_frangi · vol_local_std · vol_local_thickness · vol_euler_number
*Provenance: volops.py — 3D operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.