add_metrology_object_circle_measure — MEASURE1D model op

• Data kinds: metrologymodel → scalar

• Call: import fullseye as fs; fs.ledger.add_metrology_object_circle_measure(model, row, col, radius, n: 'int' = 40) -> 'int' (to call the implementation directly, import metrology; metrology.add_metrology_object_circle_measure(model, row, col, radius, n: 'int' = 40) -> 'int'; from the registry, opsmeasure1d.get("add_metrology_object_circle_measure"))

Usage

Adds a circle metrology object (add_metrology_object_circle_measure).

Stacks the reference circle (centre (row, col), radius radius [px]) onto model["objects"] (the dict is updated in place). apply_metrology_model places points at the angles dividing the circumference into n equal parts, stretches a measuring line at each point radially (outward normal), takes the sub-pixel edge, and recomputes centre and radius by a least-squares circle fit.

• radius: reference radius [px]. The deviation from the real object must be within measure_length of apply (default ±6 px) -- edges farther out than that are not found.

• n: number of samples on the circumference (default 40). Increase it for circles with larger radius.

• Arguments are not validated here (a radius of 0 or less can be stacked but is meaningless).

• Returns: index of the added position (starting at 0). params of the apply result is row / col / radius, and rms is the radial residual from the circle [px].

Used for inspecting hole and pin diameters and for centring circular parts.

Detailed usage guide

• subpixel_measuring family guide

References (sample data, literature)

• 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.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_calipers_under_illusion — py -3.11 examples/poc_calipers_under_illusion.py

• poc_dimensional_inspection — py -3.11 examples/poc_dimensional_inspection.py

Ops the type connects to (they accept scalar as input)

—

Same category (model)

create_metrology_model · add_metrology_object_line_measure · add_metrology_object_rectangle2_measure · add_metrology_object_ellipse_measure · add_metrology_object_generic


*Provenance: metrology.py — MEASURE1D 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.