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.