Table of Contents

Objek pelacakan dan pelacakan gerak yang dikombinasikan

Artikel ini memperkenalkan cara menggabungkan pelacakan objek 3D dengan fungsi pelacakan gerak perangkat untuk meningkatkan stabilitas pelacakan dan pengalaman pengguna dalam skenario kompleks. Konten mencakup prinsip inti, efek yang diharapkan, dan analisis masalah potensial.

Dasar-dasar

Fusi gerak (Motion Fusion) menggabungkan data pose pelacakan objek 3D dan data pose pelacakan gerak perangkat untuk mencapai estimasi pose yang lebih kuat. Berikut adalah alur intinya:

Sinkronisasi dan komplementer data

  • Pelacakan visual: Menghitung pose frame saat ini (posisi + rotasi) melalui pencocokan titik fitur gambar, tetapi rentan terhadap oklusi, blur, atau pergerakan cepat.
  • Pelacakan gerak: Menggunakan output sensor IMU frekuensi tinggi dan output gambar visual untuk mendapatkan data gerak perangkat, tetapi memiliki kesalahan drift kumulatif.
  • Mekanisme fusi:
    • Menyelaraskan sistem koordinat pose pelacakan visual dengan pose pelacakan gerak perangkat.
    • Saat objek target terlihat jelas dan bergerak stabil: Pelacakan visual menjadi utama. Terus-menerus memasukkan pose pelacakan visual ke modul fusi untuk koreksi, mengurangi drift kumulatif seluruh sistem.
    • Saat objek target hilang atau proporsinya terlalu kecil dalam frame, bergerak cepat: Pelacakan visual gagal, pelacakan gerak menjadi utama. Memprediksi pose gabungan berdasarkan pose pelacakan gerak saat ini.

Poin teknologi kunci

  • Penyelarasan stempel waktu: Menyelaraskan stempel waktu frame visual dengan data pelacakan gerak untuk menghindari getaran akibat penundaan.
  • Penyelarasan sistem koordinat: Menyelaraskan sistem koordinat berdasarkan lintasan pelacakan visual dan lintasan pelacakan gerak.
  • Relokasi: Saat objek target muncul kembali, pelacakan visual mengambil alih untuk mengoreksi cepat kesalahan kumulatif yang mungkin terjadi, "menarik" objek virtual kembali ke posisi yang benar.

Skenario yang berlaku dan batasan

Fusi gerak tidak cocok untuk semua skenario. Fungsi ini tidak berlaku jika salah satu kondisi berikut terpenuhi:

  • Perangkat target tidak mendukung fungsi pelacakan gerak seperti ARCore/ARKit. Daftar dukungan perangkat detail merujuk ke: Dukungan perangkat pelacakan gerak.
  • Objek target bersifat dinamis dalam adegan, misalnya mainan atau figur yang dipegang tangan.

Selain skenario tersebut, penggunaan fusi gerak akan sangat meningkatkan pengalaman pengguna pelacakan objek 3D, termasuk tetapi tidak terbatas pada situasi penggunaan berikut:

  • Pergerakan cepat: Pengguna menggerakkan perangkat dengan cepat, motion blur menyebabkan pelacakan visual gagal.
  • Target menghilang: Saat gambar meninggalkan target itu sendiri atau target terhalang oleh objek dinamis (seperti pejalan kaki), konten virtual dalam keseluruhan adegan tetap dipertahankan.
  • Menjauh dari target: Pengguna menjauhkan perangkat sehingga objek target proporsinya terlalu kecil dalam frame, pelacakan tetap stabil dan berkelanjutan.
  • Kondisi pencahayaan rendah: Kinerja pelacakan visual menurun, perlu mempertahankan pengalaman.

Efek dan hasil yang diharapkan

Dengan asumsi skenario berlaku, penggunaan fusi gerak akan memberikan pengalaman pengguna yang lebih stabil dan halus dibandingkan hanya menggunakan pelacakan objek 3D.

Efek ideal

  • Pelacakan lebih stabil: Objek virtual tidak bergetar, tidak melompat.
  • Transisi halus: Saat pelacakan visual gagal, perubahan pose gabungan berlangsung kontinu dan alami.
  • Ketahanan terhadap gangguan: Saat objek target hilang atau terhalang, perangkat bergerak cepat, dll., objek virtual masih dapat mengikuti gerakan perangkat dan terus dilacak.

Situasi tidak ideal dan penanganan

Fenomena Penyebab Persepsi pengguna Solusi
Awal tidak aktif Pelacakan gerak memerlukan waktu untuk inisialisasi Konten menghilang pada tahap awal Peringatan UI tertentu, memastikan inisialisasi pelacakan gerak sistem selesai
Drift terlihat jelas Akumulasi kesalahan sistem, dan tidak ada koreksi visual dalam waktu lama Objek virtual menyimpang dari posisi semula Pandu pengguna untuk memperpendek waktu oklusi, atau tambahkan petunjuk relokasi visual
Penurunan kinerja Menjalankan dua fungsi bersamaan dalam waktu lama Frame rate turun, gambar tersendat Fenomena normal, dapat menonaktifkan fusi gerak melalui antarmuka

Metode verifikasi hasil yang diharapkan

Uji dengan perangkat yang didukung dalam skenario nyata:

  1. Arahkan ke objek target, pastikan objek virtual stabil.
  2. Tutupi objek dengan tangan selama 2 detik dan gerakkan perangkat, amati apakah objek virtual bergerak mulus.
  3. Singkirkan tangan, pastikan objek virtual cepat kembali ke posisi semula tanpa lompatan.

Ringkasan dan praktik terbaik

Fusi gerak secara signifikan meningkatkan ketahanan pelacakan objek 3D dalam banyak skenario, tetapi memerlukan dukungan perangkat keras perangkat dan kinerja yang memadai. Pengembang harus mengaktifkan fungsi ini secara selektif berdasarkan perangkat pengguna target dan menyediakan solusi degradasi pada perangkat berkinerja rendah.

Referensi API untuk membuka/menutup fungsi fusi gerak secara real-time: