support_line_margin — DRIVE locomotion op

• 데이터 종류: vector × points → measurement

• 호출: import fullseye as fs; fs.ledger.support_line_margin(com, contacts, ground=None, contact_tol: 'float' = 0.02) -> 'float'(구현을 직접 호출하려면 import locomotion; locomotion.support_line_margin(com, contacts, ground=None, contact_tol: 'float' = 0.02) -> 'float', 원장에서 가져오려면 opsdrive.get("support_line_margin"))

• GPU: 없음(CPU 참조 구현만)

사용법

두 발(선분) 지지를 포함해 모든 지지 집합에서 정의되는 지지 여유.

> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.

支持の形がどれでも値を持つ静的安定余裕。com_support_margin は支持多角形に面積が無いとき(2 足支持 = 線分、1 足 = 点)-inf を返す ―― 2 足で立つ人型の大半の時間が「測れない」になる穴がある。既存の値を変えると破壊的変更なので、この op を別に足した。

• 面積のある多角形: com_support_margin と同じ符号つき距離(+ = 内側)。

• 線分(2 足、または一直線に並んだ足): COM の地面への射影から閉じた線分までの距離に 負号を付けた値(-dist)。線分の上でちょうど 0、離れるほど負。線分には内側が無いので正にはならない(刃の上で釣り合うのが最良)。点と線分の距離は閉形式 t = clip(((p-a)·(b-a))/|b-a|², 0, 1)。

• 点(1 足): -|p - foot|。

com は (x, y) か (x, y, z)(z は使わない)。contacts は (N, 2) / (N, 3)。ground / contact_tol は support_polygon に渡す(宙に浮いた足を外す)。単位は入力の世界単位。足が 1 つも無い(フィルタ後も含む)ときは ValueError (支えが無いことを -inf で黙って返さない)。

English: polygon with area -> the same signed distance as com_support_margin; segment -> -distance to the closed segment (0 on it, never positive: a line has no interior); single foot -> -distance to that foot; no foot -> ValueError. The first source of the segment rule is fullseye_shows/common/measure.py (support_line_margin, same author).

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

• walking_ops_tour — py -3.11 examples/walking_ops_tour.py

타입이 이어지는 다음 연산자(measurement 를 입력으로 받는 것)

spin_from_marker_sequence · carla_transform_matrix · carla_pose_to_world · carla_camera_pose · carla_xy_yaw · carla_scene_load · town_chain · osm_parse

같은 카테고리(locomotion)

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


*Provenance: locomotion.py — DRIVE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

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