caliper op• 数据种类:无 → measurehandle(仅由参数决定的算子 —— 不接受图像或数据输入)
• 调用: import fullseye as fs; fs.ledger.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape)(要直接调用实现,import measuring1d; measuring1d.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape);从台账取用则 opsmeasure1d.get("gen_measure_arc"))
定义测量弧(沿圆周方向以 ≈1 px 间隔取剖面)(gen_measure_arc)。采样数 n = round(|angle_extent|*radius)+1,spacing = 弧长/(n-1)。
弧上的采样点为 row = center_row + radius sin(θ)、col = center_col + radius cos(θ)、θ = angle_start + linspace(0, angle_extent, n)。角度为弧度,从 col 轴(x)转向 row 轴(图像向下)的方向为正。angle_extent 为负时反向前进,measure_pos 的 pos / dist 沿该前进方向计数。
• radius: [px]。由于 n = max(2, round(|angle_extent| * radius) + 1), 半径或角度范围过小时,采样只有 2 点,spacing 就等于弧长本身。radius = 0 会得到 spacing = 0,在后续微分中崩溃(此处不校验)。
• width: 宽度方向(法线)的平均宽度 [px]。截断为 int,1 以下则不平均。
• shape: 图像的 (H, W)。只是存入 dict,超出范围的部分由 measure_pos 一侧用最近邻外推(不会抛出异常)。
• 返回值: {"type": "arc", "rows", "cols", "width", "shape", "spacing", "center", "radius", "angles"} 的 dict(measurehandle 类型)。
传给 measure_pos / measure_pairs / fuzzy_measure_pairing。直线则用 gen_measure_rectangle2。定位后用 translate_measure 移动。
• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。
• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。
• 算法的正典(作者、年份)与用途见上面的族使用指南。
• poc_dimensional_inspection — py -3.11 examples/poc_dimensional_inspection.py
measurehandle 作为输入)translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing
caliper)gen_measure_rectangle2 · translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing
*Provenance: measuring1d.py — MEASURE1D 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.