tacslip op• 資料種類:matrix × matrix × scalar → table
• 呼叫: import fullseye as fs; fs.ledger.marker_match_grow(p0, p1, pitch_px: 'float', seed_tol: 'float' = 0.25, tols=(0.2, 0.3, 0.45), nb_r: 'float' = 1.6, border: 'float' = 2.0, max_iter: 'int' = 80) -> 'dict'(要直接呼叫實作,import tacslip; tacslip.marker_match_grow(p0, p1, pitch_px: 'float', seed_tol: 'float' = 0.25, tols=(0.2, 0.3, 0.45), nb_r: 'float' = 1.6, border: 'float' = 2.0, max_iter: 'int' = 80) -> 'dict';從台帳取用則 opsdrive.get("marker_match_grow"))
透過利用連續性逐步擴展來求基準標記 p0 與加載後標記 p1(各 (N, 2) [px])的對應關係。回傳 i0、i1(對應的 index 陣列)與 matched。
在規則網格上,|u| 超過間距/2 時,最近鄰和相關都會跳到相鄰標記(實測:8 px 網格上 5 px 的偏移被 PIV 讀為 −3 px)。種子 = p0 外接矩形邊緣(border·間距以內)的標記中,無預測最近鄰在 seed_tol·間距以內且第 2 近的比 0.75 間距遠的那些(「接觸在視野內側,邊緣是遠場 = 小位移」的物理前提。若處處都作種子,由於核心位移 6.4 px 距離相鄰基準位置 1.6 px,產生了 27 個跳了一個間距的偽種子)。此後,對未對應的標記,以 nb_r·間距以內 2 個以上已對應點的位移平均作為預測, 取 tol·間距以內的最近鄰,tol 從小值逐步放寬。每個 p1 只使用一次。Raises ValueError:p0/p1 不是 (N, 2)、pitch_px ≤ 0。
空輸入(p0 為 0 個元素)會引發 ValueError。
• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。
• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。
• 演算法的正典(作者、年份)與用途見上面的族使用指南。
• gallery_drive_soil_tactile — py -3.11 examples/gallery_drive_soil_tactile.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 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.