LANDASAN TEOR
2.3 Vuforia SDK
Vuforia adalah Augmented Reality SDK ( Software Development Kit ) yang digunakan sebagai pendukung untuk AR di perangkat mobile seperti Android dan iOS. Vuforia menganalisis gambar menggunakan pendeteksi marker dan menghasilkan informasi ,seperti teks , video, objek 3D atau animasi virtual di kamera dari marker yang terdeteksi oleh Vuforia API (Waruwu, et al. 2015).
Kemampuan registrasi citra memungkinkan pengembang untuk mengatur posisi dan virtual orientasi objek, seperti model 3D dan media lainnya, dalam kaitannya dengan gambar dunia nyata ketika hal ini dilihat melalui kamera perangkat
mobile. Obyek maya kemudian melacak posisi dan orientasi dari gambar secara real- time sehingga perspektif pengguna pada objek sesuai dengan perspektif mereka pada
Target Image, sehingga muncul bahwa objek virtual adalah bagian dari adegan dunia nyata. SDK Vuforia mendukung berbagai jenis target 2D dan 3D termasuk target gambar markerless, 3D Multi target konfigurasi, dan bentuk Marker Frame. Fitur tambahan dari SDK termasuk deteksi oklusi lokal menggunakan tombol virtual,
runtime pemilihan gambar target, dan kemampuan untuk membuat dan mengkonfigurasi ulang set pemrograman pada saat runtime (Rentor, 2013).
2.3.1 Arsitektur Vuforia
Vuforia SDK memerlukan beberapa komponen penting agar dapat bekerja dengan baik. Komponen - komponen tersebut antara lain :
a. Kamera
Kamera dibutuhkan untuk memastikan bahwa setiap frame ditangkap dan diteruskan secara efisien ke tracker. Para developer hanya tinggal memberi tahu kamera kapan mereka mulai menangkap dan berhenti.
b. Image Converter
Mengkonversi format kamera (misalnya YUV12) kedalam format yang dapat dideteksi oleh OpenGL (misalnya RGB565) dan untuk tracking
(misalnya luminance). c. Tracker
Mengandung algoritma computer vision yang dapat mendeteksi dan melacak objek dunia nyata yang ada pada video kamera. Berdasarkan gambar dari kamera, algoritma yang berbeda bertugas untuk mendeteksi
trackable baru, dan mengevaluasi virtual button. Hasilnya akan disimpan dalam state object yang akan digunakan oleh video background renderer
dan dapat diakses dari application code. d. Video Background Renderer
Me-render gambar dari kamera yang tersimpan di dalam state object. Performa dari video background renderer sangat bergantung pada device
yang digunakan. e. Application Code
Menginisialisasi semua komponen di atas dan melakukan tiga tahapan penting dalam application code seperti :
1. Query state object pada target baru yang terdeteksi atau marker. 2. Update logika aplikasi setiap input baru dimasukkan.
3. Render grafis yang ditambahkan (augmented). f. Target Resources
Dibuat menggunakan on-line Target Management System. Assets yang diunduh berisi sebuah konfigurasi xml - config.xml - yang memungkinkan
developer untuk mengkonfigurasi beberapa fitur dalam trackable dan
binary file yang berisi database trackable (Rentor, 2013).
Detail Kerja Vuforia adalah sebagai berikut :
2. Gambar yang ditangkap sebagai marker di konversikan dari format YUV 12 ke format RGB565 untuk OpenGL ES kemudian mengatur pencahayaan untuk pelacakan marker.
3. Setelah itu marker dikonversikan menjadi beberapa frame, dengan menggunakan algoritma computer vision untuk mendeteksi dan melakukan pelacakan objek nyata yang diambil dari kamera. Objek tersebut dievaluasi dan hasilnya akan disimpan yang kemudian akan diakses oleh aplikasi. 4. Berikutnya, setelah mendapat posisi kamera yang tepat maka objek yang
telah ditangkap oleh kamera tadi akan di render dan divisualisasikan dalam bentuk video secara realtime.
5. Objek yang ada pada video akan tampak menempel diatas marker.
Output akhirnya yaitu objek akan ditampilkan pada display screen smartphone, sehingga ketika user melihat objek seolah – olah objek tersebut berada didunia nyata (Pratama, 2014). Untuk lebis jelasnya dapat dilihat pada Gambar 2.4 :
Gambar 2.4 Gambaran Kerja Vuforia AR SDK Sumber : (Rentor, 2013)
2.3.2 Multi Target Tracking
Multi target tracking adalah salah satu fitur pelacakan yang dimiliki oleh vuforia dalam menciptakan augmented reality. Fitur pelacakan multi target terdiri dari beberapa gambar sasaran dalam susunan geometris yang telah didefinisikan. Posisi dan orientasi masing – masing gambar sasaran didefinisikan relatif terhadap asal
multi target, yaitu berada di pusat volumetriknya.
Semua gambar dalam multi target dapat dilacak secara bersamaan karena mereka memiliki sifat relatif yang telah ditentukan pada asal mulanya. Multi target
dibuat dengan mendefinisikan hubungan antara beberapa gambar sasaran yang ada
menggunakan Vuforia Target Manager atau dengan langsung memanipulasi
konfigurasi dataset file XML. Vuforia dapat melacak hingga lima target secara bersamaan (https://developer.vuforia.com).
2.3.3 Natural Features Tracking
Dalam mengenali marker yang akan di tracking vuforia menggunakan metode yang dinamakan Natural Features Tracking (NFT). Secara umum Natural Features Tracking (NFT) adalah pendekatan berbasis penglihatan. Pendekatan berbasis penglihatan dapat diklasifikasikan kedalam teknik pelacakan berbasis model dan teknik berbasis fitur. Klasifikasi ini mempertimbangkan jumlah pengetahuan terdahulu yang perlu dimiliki sistem pelacakan tentang kejadiannya. NFT merupakan bagian dari teknik berbasis fitur yang bergantung pada fitur – fitur alami. Sebagian besar penelitian dikhususkan untuk Natural Feature Tracking pada aplikasi
Augmented Reality sejak AR bergantung pada proses pelacakan dan NFT memfasilitasi penggunaan benda – benda fisik di sekelilingnya (Radkowski & Oliver, 2013).
Feature tracking merupakan langkah proses awal yang diperlukan dari masalah struktur dari gerak yang menemukan struktur 3D yang diambil dari gambar dari waktu ke waktu. Karena fitur yang cocok adalah satu-satunya informasi awal untuk penglihatan lebih lanjut berbasis inferensi, skema pelacakan berbasis titik konvensional mencoba untuk mencari banyak poin fitur sebanyak mungkin. Kebanyakan skema sebelumnya Natural Feature Tracking telah difokuskan pada deskripsi dan pencocokan fitur antara dua gambar berturut-turut. Metode mereka mengekstrak satu set baru fitur titik dari masing-masing gambar yang baru muncul,
pencocokan titik yang baru ditetapkan memakan waktu dan harus dihindari terutama ketika metode ini digunakan untuk aplikasi real-time ( Solin, 2014).
Dalam penglihatan aplikasi berbasis Augmented Reality tujuan Natural Features Tracking adalah untuk menghitung homograpi antara adegan planar dan gambar yang diproyeksikan. Untuk memastikan adanya pola, harus ada sejumlah besar titik fitur untuk pola planar dan juga jumlah titik fitur yang cukup harus disesuaikan dengan poin dalam gambar yang diproyeksikan. Untuk mengidentifikasi wilayah persegi panjang pola diproyeksikan, homograpi yang dihitung dari titik pasang dicocokkan. Sebuah aplikasi memanfaatkan homograpi untuk layanan lebih lanjut pengolahan tertentu (Gruber, et al. 2010).
2.4Unity 3D
Unity 3D adalah perangkat lunak game engine untuk membangun permainan 3 Dimensi (3D). Game engine merupakan komponen yang ada di balik layar setiap
video game.
Adapun fitur - fitur yang dimiliki oleh unity 3D antara lain sebagai berikut: 1. Integrated development environment (IDE) atau lingkungan
pengembangan terpadu.
2. Penyebaran hasil aplikasi pada banyak platform.
3. Engine grafis menggunakan Direct3D (windows), OpenGL (Mac, Windows), OpenGL ES (Android, iOS), dan Proprietary API (Wii)
4. Game scripting melalui Mono. Scripting yang dibangun pada mono, implementasi open source dari NET Framework. Selain itu pemrograman dapat menggunakan UnityScript (bahasa custom dengan sintaks
JavaScript-inspired), bahasa C# atau BOO (yang memiliki sintaks
Python-inspired) (Rizki, 2012).
Lingkungan dari pengembangan Unity 3D berjalan pada Microsoft Windows dan Mac Os X, serta permainan yang dibuat oleh Unity dapat berjalan pada Windows, Mac, Xbox 360, Playstation 3, Wii, iPad, iPhone, dan tidak ketinggalan pada platform Android. Unity juga dapat membuat game berbasis browser yang menggunakan Unity web player plugin, yang dapat bekerja pada Mac dan Windows, tapi tidak pada Linux.
Web player yang dihasilkan juga digunakan untuk pengembangan pada widgets Mac (Wirga, 2012).
Vuforia SDK membutuhkan renderer untuk menampilkan objek virtual
kedalam lingkungan nyata. Proses pelacakan posisi dan orientasi hingga mengenali target sebagai tempat memunculkan objek dilakukan dengan sistem QCAR. Sedangkan Unity 3D berperan dalam menciptakan objek maya 3D dan proses
rendering grafis sama seperti yang dilakukan pada lingkungan antarmuka Unity 3D. Diagram proses penciptaan gambar pada Unity 3D dapat dilihat pada Gambar 5:
Gambar 2.5 Diagram Rendering Unity 3D Sumber : (Rizki, 2012)
2.5Blender 3D
Blender adalah salah satu software open source yang digunakan untuk membuat konten multi objek khususnya 3 Dimensi. Ada beberapa kelebihan yang dimiliki blender dibandingkan software sejenis. Berikut kelebihannya :
1. Open Source, Blender merupakan salah satu software open source, dimana kita bisa bebas memodifikasi source code untuk keperluan pribadi maupun komersial, asal tidak melanggar General Public License (GNU) yang digunakan Blender.
2. Multi Platform, karena sifatnya yang open source, Blender tersedia untuk berbagai macam sistem operasi seperti Linux, Mac dan Windows.
3. Update, dengan status yang Open Source, Blender bisa dikembangkan oleh siapapun. Sehingga update software ini jauh lebih cepat dibandingkan software sejenis lainnya.
4. Free, Blender merupakan sebuah software yang Gratis. Dengan digratiskannya software ini, siapapun bisa berpartisipasi dalam mengembangkannya untuk menjadi lebih baik.
5. Lengkap, Blender memiliki fitur yang lebih lengkap dari software 3D lainnya. Terdapat fitur Video editing, Game Engine, Node Compositing, Sculpting. Dan bukan lagi plugin, tapi sudah include atau di bundling di dalam Blender
6. Ringan, Blender relatif ringan jika dibandingkan software sejenis. Hanya dengan RAM 512 dan prosesor Pentium 4 dan VGA on board, Blender sudah dapat berjalan dengan baik.
7. Komunitas Terbuka, tidak perlu membayar untuk bergabung dengan komunitas Blender yang sudah tersebar di dunia. Dari yang baru sampai yang sudah ahli terbuka untuk menerima masukan dari siapapun, selain itu mereka juga saling berbagi tutorial dan file secara terbuka. Salah satu contoh nyatanya adalah OPEN MOVIE garapan Blender Institute (Adam, 2014).