gen_measure_arc — MEASURE1D caliper op

• Data kinds: कोई नहीं → measurehandle (केवल arguments से तय होने वाला op — यह कोई image या data input नहीं लेता)

• Call: import fullseye as fs; fs.ledger.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape) (implementation को सीधे call करना हो तो import measuring1d; measuring1d.gen_measure_arc(center_row, center_col, radius, angle_start, angle_extent, width, shape), registry से लेना हो तो opsmeasure1d.get("gen_measure_arc"))

उपयोग

measurement arc परिभाषित करता है (profile को परिधि की दिशा में ≈1 px अंतराल पर लिया जाता है) (gen_measure_arc)। sample संख्या n = round(|angle_extent|*radius)+1, spacing = arc length/(n-1)।

arc पर sample points row = center_row + radius sin(θ), col = center_col + radius cos(θ), θ = angle_start + linspace(0, angle_extent, n) हैं। कोण radian में है, और col axis (x) से row axis (image में नीचे की ओर) की ओर घूमने की दिशा धनात्मक है। angle_extent ऋणात्मक हो तो उल्टी दिशा में बढ़ता है, और measure_pos के pos / dist उसी आगे बढ़ने की दिशा में गिने जाते हैं।

• radius: [px]। चूँकि n = max(2, round(|angle_extent| * radius) + 1) है, radius या कोण की चौड़ाई बहुत छोटी हो तो sample 2 points होते हैं और spacing arc length ही बन जाता है। radius = 0 से spacing = 0 बनता है और आगे के differentiation में टूट जाता है (यहाँ validate नहीं होता)।

• width: चौड़ाई दिशा (normal) में averaging की चौड़ाई [px]। int में काटा जाता है, 1 या कम हो तो averaging नहीं।

• shape: image का (H, W)। केवल dict में रखा जाता है, range से बाहर वाले हिस्से को measure_pos की ओर nearest neighbour से extrapolate किया जाता है (exception नहीं उठता)।

• return value: {"type": "arc", "rows", "cols", "width", "shape", "spacing", "center", "radius", "angles"} की dict (measurehandle type)।

measure_pos / measure_pairs / fuzzy_measure_pairing को दें। सीधी रेखा के लिए gen_measure_rectangle2। positioning के बाद translate_measure से खिसकाएँ।

उपयोग की विस्तृत guide

• subpixel_measuring family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_dimensional_inspection — py -3.11 examples/poc_dimensional_inspection.py

वे अगले ops जिनसे type जुड़ता है (measurehandle को input के रूप में लेते हैं)

translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing

इसी category के (caliper)

gen_measure_rectangle2 · translate_measure · measure_pos · measure_pairs · fuzzy_measure_pairing


*Provenance: measuring1d.py — MEASURE1D operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.