Concetti e flusso di lavoro di MegaTracker
Questo documento introduce i concetti di base di MegaTracker e la relazione tra MegaTracker, il sistema AR nativo di WeChat VisionKit e il framework di rendering xr-frame.
Prima di iniziare
Scopri quanto segue in Panoramica di Mega:
- I principi di base della localizzazione e del tracking Mega.
- Che cos'è un Mega Block.
- Il risultato previsto dopo l'integrazione di Mega.
Che cos'è un Plane AR Tracker
Il Plane AR Tracker di xr-frame è essenzialmente un wrapper della capacità plane 6DoF di VisionKit.
Dopo aver abilitato isARCamera nel componente camera di xr-frame, la trasformazione 3D della camera viene sincronizzata con il sistema AR (VisionKit) a ogni frame.
xr-frame fornisce capacità di rendering 3D, mentre VisionKit fornisce capacità di motion tracking nel sistema di coordinate dello spazio reale.
Il Plane AR Tracker non può essere usato insieme ad altri tracker AR.
Che cos'è MegaTracker
MegaTracker è il componente algoritmico centrale che collega il sistema AR di WeChat (VisionKit) con il servizio di spatial computing Mega. Fornisce la localizzazione cloud.
Input: la posa della camera nel sistema di coordinate VisionKit calcolata da VisionKit per ogni frame (cioè dati 6DoF) e l'immagine della camera del frame usato per la localizzazione Mega.
Output: la posa della camera sotto il Mega Block attualmente localizzato e tracciato.
Come funziona MegaTracker su xr-frame
flowchart BT
subgraph Using xr-frame Only
direction BT
PlaneARTracker_1[PlaneARTracker] -->|MotionData & Image| XRFrame_1[xr-frame]
end
subgraph Using Mega Plugin
direction BT
PlaneARTracker_2[PlaneARTracker] -->|MotionData & Image| MegaTracker
MegaTracker -->|CameraTransform| XRFrame_2[xr-frame]
end
- Nel flusso dati fornito nativamente da WeChat, il componente camera di xr-frame viene aggiornato a ogni frame direttamente dal risultato del Plane AR Tracker.
- Nel flusso dati fornito dal mini program Mega, la posa della camera nel sistema di coordinate VisionKit (cioè dati 6DoF) e i dati immagine del frame di localizzazione vengono inviati a MegaTracker. Dopo la localizzazione cloud e il calcolo locale, viene prodotta la posa della camera sotto il Mega Block attualmente localizzato e tracciato, quindi viene aggiornato il LocalTransform della camera sotto il nodo Mega Block nella scena xr-frame. A questo punto, MegaTracker prende il controllo della camera e xr-frame non aggiorna più la camera in base al tracker AR.
MegaTracker dipende profondamente dai dati di movimento 6DoF forniti dal plane tracker. Pertanto, MegaTracker non può intervenire prima che il plane tracker completi l'inizializzazione e stabilisca uno stato di tracking stabile. Inoltre, la stabilità del tracking AR è limitata dalle caratteristiche dell'ambiente. In scenari estremi, come ampie aree prive di texture (ad esempio pareti bianche) o occlusione prolungata della camera, se il tracking plane sottostante di WeChat deriva o viene perso, MegaTracker entrerà a sua volta in stato di errore perché perde una sorgente di input affidabile.