symmetry_order_contour — DRIVE pegtactile op

• Data kinds: matrix → table

• Call: import fullseye as fs; fs.ledger.symmetry_order_contour(contour, K: 'int' = 24, rel: 'float' = 0.01) -> 'dict' (implementation को सीधे call करना हो तो import pegtactile; pegtactile.symmetry_order_contour(contour, K: 'int' = 24, rel: 'float' = 0.01) -> 'dict', registry से लेना हो तो opsdrive.get("symmetry_order_contour"))

उपयोग

बंद contour (N, 2) = (row, col) के complex Fourier coefficients (fourierdesc.contour_fourier_complex, arc length से resample, ±K orders) से n-fold symmetry का order पढ़ता है: n-fold symmetric हो तो non-zero coefficients केवल k ≡ 1 (mod n) पर होते हैं। महत्वपूर्ण (|c_k| > rel·|c_1|, k ≠ 0, 1) k के (k − 1) का GCD n है। कोई महत्वपूर्ण k न हो तो वृत्त (n = 0 = continuous)। दिशा α̂ = arg(c₁₋ₙ c₁ⁿ⁻¹)/n (शुरुआती बिंदु के चुनाव से स्वतंत्र invariant, mod 2π/n)। n = 1 पर c₂ c₁⁻² से α̂ = −arg(·) —— k = −1 (amplitude 3 गुना) का स्थिर phase आकार पर निर्भर है, इसलिए branch (α / α + π) reference के बिना तय नहीं हो सकती (prototype में 180° की गलती हुई)। return n, angle (rad, n = 0 पर nan), amps (k → |c_k|/|c_1|), sig, centroid (c₀ = (row, col))। 2nd-order moments की दिशा n ≥ 3 पर inertia isotropic होने से उपयोगी नहीं (PoC के जाल का gate)। Raises ValueError: contour (N ≥ 8, 2) नहीं, K < 6।

संदर्भ (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_peg_insertion_tactile — py -3.11 examples/poc_peg_insertion_tactile.py

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

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

इसी category के (pegtactile)

pad_params · pad_context · peg_wrench_to_pad_loads · pad_loads_to_peg_wrench · pad_shear_asymmetry · pad_marker_displacement · pad_tactile_frame · pad_tactile_read


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

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