Table of Contents

平面跟踪與運動追蹤結合

本篇介紹如何將平面影像追蹤與設備運動追蹤功能相融合,以提升複雜場景下的追蹤穩定性和使用者體驗。內容包括核心原理、預期效果及潛在問題分析。

基本原理

運動融合(Motion Fusion) 結合平面影像追蹤的位姿數據和設備運動追蹤的位姿數據,實現更魯棒的位姿估計。以下是其核心流程:

數據同步與互補

  • 視覺追蹤:通過影像特徵點匹配計算當前影格的位姿(位置+旋轉),但易受遮擋、模糊或快速移動影響。
  • 運動追蹤:利用 IMU 感測器高頻輸出以及視覺影像的輸出獲得設備運動數據,但存在累積飄移誤差。
  • 融合機制
    • 將視覺追蹤的位姿與設備運動追蹤的位姿進行座標系對齊。
    • 當目標影像清晰可見、穩定運動時:以視覺追蹤為主。不斷地將視覺追蹤位姿送入融合模組進行修正,以減少整個系統的累積漂移。
    • 當目標影像遺失或者在畫面中佔比過小、快速運動時:此時視覺追蹤失效,以運動追蹤為主。根據當前的運動追蹤位姿進行融合位姿預測。

關鍵技術點

  • 時間戳對齊:將視覺影格的時間戳與運動追蹤數據對齊,避免因延遲導致抖動。
  • 座標系對齊:根據視覺追蹤的軌跡和運動追蹤的軌跡進行座標系對齊。
  • 重定位:影像重新出現時,視覺追蹤接管快速校正可能的累積誤差,將虛擬物件「拉回」正確位置。

適用場景與限制

運動融合並不適合所有場景下的使用。有以下情形之一的將 不適用 運動融合功能:

  • 目標設備不支援 ARCore/ARKit 等運動追蹤功能。詳細的設備支援清單參考:運動追蹤設備支援
  • 目標影像/平面物體在場景中是動態的,例如拿在手上體驗的卡片。

除此之外的場景,使用運動融合將極大地提升平面影像追蹤的使用者體驗,包括但不限於以下使用情境:

  • 快速運動:使用者手持設備快速移動,運動模糊會導致影像追蹤失效。
  • 目標消失:畫面離開目標本身或者目標被動態物體(如行人)遮擋時,依然保持整個場景裡虛擬內容的呈現。
  • 遠離目標:使用者手持設備遠離導致目標影像在畫面中佔比過小,依然穩定持續追蹤。
  • 低光照條件:視覺追蹤效能下降,需要維持體驗。

效果與預期結果

在場景適用的前提下,使用運動融合將比單純使用平面影像追蹤帶來更穩定、平順的使用者體驗。

理想效果

  • 更穩定的追蹤:虛擬物件不抖動、不跳變。
  • 平順過渡:視覺追蹤失效時,融合位姿的變化連續自然。
  • 抗干擾能力:目標影像遺失或被遮擋、設備快速運動等情形下,虛擬物件仍能跟隨設備運動持續追蹤。

不理想情況與應對

現象 原因 使用者感知 解決方案
初始未生效 運動追蹤需要一定時間進行初始化 在初始階段出現內容消失 一定的 UI 提示,確保系統運動追蹤初始化完成
飄移明顯 系統誤差累積,且長時間無視覺校正 虛擬物件偏離原位置 引導使用者縮短遮擋時間,或增加視覺重定位的提示
效能下降 長時間同時運行兩個功能 影格率下降畫面卡頓 正常現象,可通過介面關閉運動融合

預期結果驗證方法

使用支援的設備在真實場景中測試:

  1. 對準影像,確認虛擬物件穩定。
  2. 用手遮擋影像2秒並移動設備,觀察虛擬物件是否平順移動。
  3. 移開手,確認虛擬物件快速回正且無跳變。

總結與最佳實踐

運動融合顯著提升了平面影像追蹤在許多場景下的魯棒性,但需要設備的硬體支援且效能足夠。開發者應根據目標使用者設備選擇性啟用該功能,並在低效能設備上提供降級方案。

即時開啟/關閉運動融合功能的 API 參考: