gait_phase — DRIVE locomotion op

• Data kinds: matrix → table

• Call: import fullseye as fs; fs.ledger.gait_phase(foot_heights, stance_frac: 'float' = 0.25, ground=None, contact_tol=None) (implementation को सीधे call करना हो तो import locomotion; locomotion.gait_phase(foot_heights, stance_frac: 'float' = 0.25, ground=None, contact_tol=None), registry से लेना हो तो opsdrive.get("gait_phase"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

ऊँचाई से हर frame में हर पैर को stance (ज़मीन पर) या swing में वर्गीकृत करता है।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

foot_heights is (T, F) — the height of each of F feet over T frames. Returns {stance (T,F bool), duty_factor (F,), n_contacts (T,), double_support} (duty factor, Alexander 1984; how many feet are down each frame; fraction of frames with >=2 feet down).

★Stance is defined against a ground reference:

• ground given (recommended for anti-cheat) — a foot is stance only when it is within contact_tol of the absolute floor level ground. This is the honest test: an airborne / hopping / frozen-in-air foot is correctly NOT stance. contact_tol defaults to stance_frac × the foot's own range.

• ground=None (default, backward-compatible) — stance is inferred from each foot's OWN height range (within stance_frac of its per-foot minimum). ★This heuristic CANNOT tell a foot planted on the floor from a foot at the bottom of an airborne trajectory, so it must NOT be used as a stability / cheat gate — pass ground for that.

संदर्भ (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 करते हैं)

• consumer_hillco — py -3.11 examples/consumer_hillco.py

• consumer_onocollo — py -3.11 examples/consumer_onocollo.py

• walking_ops_tour — py -3.11 examples/walking_ops_tour.py

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

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

इसी category के (locomotion)

contact_points · com_from_silhouette · support_polygon · com_support_margin · support_line_margin · lipm_capture_point · capture_margin · gait_step_events


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

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