tacslip op• 데이터 종류: image2d × scalar × scalar → table
• 호출: import fullseye as fs; fs.ledger.marker_detect(m, dark: 'float', r_px: 'float', binary: 'bool' = False) -> 'dict'(구현을 직접 호출하려면 import tacslip; tacslip.marker_detect(m, dark: 'float', r_px: 'float', binary: 'bool' = False) -> 'dict', 원장에서 가져오려면 opsdrive.get("marker_detect"))
마커 영상 m(marker_image) → 마커 중심. weighted(주, (N, 2)의 (x, y) [px]): 높은 임계값 0.5·dark의 연결 성분(blob2d.blob_label)을 본체로 하고, 낮은 임계값 0.08·dark의 화소(번짐)를 거리 변환으로 가장 가까운 본체에 할당하며, m을 가중치로 한 무게중심을 반복 가우스 가중(σ = r_px)으로 정밀화. weighted_plain = 정밀화 전. binary=True이면 binary = blob2d.blob_features의 row/col(이진 무게중심, 둘레·볼록 껍질까지 계산하므로 1,000개에 0.4 s). 가장자리에 닿는 성분은 버림. n = 본체의 수. 번짐을 본체에서 떼어 내는 것은 미끄럼 고리에서 인접 간격이 8 → 6 px로 줄면 낮은 임계값의 번짐이 이어져 1성분으로 병합되기 때문(실측). Raises ValueError: m이 2차원이 아님, dark가 (0, 1] 밖, r_px ≤ 0.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• poc_tacsim_marker_shear — py -3.11 examples/poc_tacsim_marker_shear.py
table 를 입력으로 받는 것)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
tacslip)mindlin_partial_slip · mindlin_traction · hertz_surface_ur · hertzian_tangential_inner · cerruti_kernel · cerruti_surface_displacement · membrane_shear_field · membrane_markers
*Provenance: tacslip.py — DRIVE 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.