pegtactile op• Data kinds: table × table → table
• Call: import fullseye as fs; fs.ledger.pad_tactile_read(frame: 'dict', pad: 'dict', ctx=None, track=None, pixelwise: 'bool' = True, torsion_model: 'str' = 'partial_slip') -> 'dict' (implementation को सीधे call करना हो तो import pegtactile; pegtactile.pad_tactile_read(frame: 'dict', pad: 'dict', ctx=None, track=None, pixelwise: 'bool' = True, torsion_model: 'str' = 'partial_slip') -> 'dict', registry से लेना हो तो opsdrive.get("pad_tactile_read"))
1 pad की image → (P̂, q̂, torsion)।
P̂ = छायांकन → photometric नॉर्मल (tacsim.membrane_recover) → संपर्क त्रिज्या (केंद्र ज्ञात = पैड का केंद्र; pixelwise हो तो tacsim.contact_radius_fit_pixelwise, असत्य हो तो बिन संस्करण tacsim.contact_radius_fit = जाल का नियंत्रण) → tacsim.hertz_force। q̂ = मार्कर ट्रैकिंग (tacslip.marker_track, track से दिया जाए तो छोड़ा जाता है) → अभिलंब भार का ūr (P̂ से बंद रूप) घटाएँ → 2-घटक Mindlin फ़िट (tacslip.mindlin_fit_vector)। मरोड़ = फ़िट किए गए अपरूपण क्षेत्र को घटाने के बाद के शेष पर, स्टिक कोर (r < 0.6 â) में दृढ़ घूर्णन (tactorque.rigid_rotation_fit) → बिना-फिसलन संबंध M = (16Gâ³/3)ω (Reissner–Sagoci) torsion_no_slip है। ★torsion_model="partial_slip" (डिफ़ॉल्ट, 2026-10-06 से) में, from_no_slip_read उस मान को आंशिक फिसलन के संख्यात्मक हल (cuttouch.torsion_partial_slip का torsion) से सुधारकर लौटाता है —— Hertz संपर्क का मरोड़ किनारे से अवश्य फिसलता है, इसलिए बिना-फिसलन संबंध पर रहने से M अधिक पढ़ा जाता है (पूर्ण फिसलन तक के अनुपात 0.5 पर +33 %, 0.8 पर +85 %)। "no_slip" 0.4.0 तक का मान है (torsion = torsion_no_slip)। torsion_c_over_a (स्टिक वृत्त की त्रिज्या / a) और torsion_readable (स्टिक वृत्त फ़िट कोर r < 0.6a को समाहित करता है और पूर्ण फिसलन नहीं है —— असत्य हो तो संख्या लौटाई जाती है पर भरोसेमंद नहीं) भी लौटाए जाते हैं। दूसरा कार्यान्वयन Q_stick = स्टिक कोर के एकसमान विस्थापन δ̂ से Mindlin के δx सूत्र को उलटकर निकाला गया मान (μ अंशांकित मान है)। रिटर्न P, a, q (2,), Q, phi, torsion, torsion_no_slip, torsion_model, torsion_c_over_a, torsion_readable, c_over_a, Q_stick, matched, rms_px (फ़िट अवशेष), track। Raises ValueError: frame में rgb या shading नहीं, 3 से कम मार्कर ट्रैक हुए, torsion_model की वर्तनी ग़लत।
• 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 में दिए गए हैं।
• poc_knife_tactile_toughness — py -3.11 examples/poc_knife_tactile_toughness.py
• poc_peg_insertion_tactile — py -3.11 examples/poc_peg_insertion_tactile.py
table को input के रूप में लेते हैं)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
pegtactile)pad_params · pad_context · peg_wrench_to_pad_loads · pad_loads_to_peg_wrench · pad_shear_asymmetry · pad_marker_displacement · pad_tactile_frame · contact_candidates
*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.