Markerless Augmented Reality Pada Perangkat Android Yoze Rizki : 2207100102 1) Dosen Pembimbing: Mochamad Hariadi, ST.,MSc.,PhD. 2); Cristyowidiasmoro, ST.,MT.3). Department of Electrical Engineering, Faculty of Industrial Technology, ITS Surabaya Indonesia 60111 email:
[email protected] 1),
[email protected]),
[email protected])
Abstract – During this time, Augmented Reality applied by
using a marker. The use of markers has made the use of space on the tracked object becomes less efficient and less interesting. Augmented Reality Technology will be much more interesting if the objects tracked are in the form of images or page. So it will be more practical and can be used anywhere without the need to print the marker. Final Project aims to display object in the Augmented Reality Environment without using markers on Android devices. In this final project, Markerless Augmented Reality tested on the Android device with Image target, Multi target, and Virtual button feature. The first test result showed that application of augmented reality without using traditional markers that implements image target and multi target as an object tracking as well interactive features of the virtual button can be implemented properly on Android devices. The test results also showed that the quantity and pattern of spread of the corner features of the target used is a major determinant of the success of markerless augmented reality tracking
menjadi tidak efisien dan kurang menarik. Teknologi Augmented Reality akan jauh lebih menarik bila obyek yang dilacak yang berupa gambar atau halaman. Hal ini akan membuat aplikasi Augmented Reality lebih praktis dan bisa digunakan dimanapun tanpa perlu mencetak marker. Android merupakan teknologi mobile yang sedang sangat berkembang di dunia. Pengguna perangkat Android tersebar diseluruh segmen masyarakat dunia. Fasilitas yang diberika sangat mempermudah pengguna peranti ini dalam aktifitas sehari-hari. ditambah lagi Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak, sehingga aplikasi yang dapat digunakan menjadi sangat beragam. Aplikasi Markerless Augmented Reality akan sangat efisien bila dapat dikembangkan dalam peranti bergerak. Sebuah gambar dideteksi menggunakan kamera dari perangkat Android secara real time, lalu memunculkan informasi lain secara virtual pada layar perangkat tersebut. Metode ini selain lebih interaktif dan menghibur, juga dapat meningkatkan efisiensi karena langsung dapat diaplikasikan oleh para pengguna Android secara praktis. Bukan menggunakan webcam pada komputer pribadi.
Keyword : Augmented Reality, Android, Markerless I. PENDAHULUAN Augmented Reality (AR) merupakan teknologi dalam bidang komunikasi dan informasi yang menggabungkan benda maya dua dimensi atau tiga dimensi ke dalam dunia nyata tiga dimensi. Dengan teknologi Augmented Reality, suatu benda yang sebelumnya hanya dapat dilihat secara dua dimensi, dapat muncul sebagai obyek virtual yang dimasukkan kedalam lingkungan nyata secara real-time. Saat ini penelitian dan penggunaan Augmented Reality meluas hinga ke berbagai aspek, contohnya dalam bidang kesehatan, militer, hiburan, fashion, komersial, hingga game. Hal ini dikarenakan penggunaan AR sangat informatif dan menarik. Selama ini, Augmented Reality diaplikasikan dengan menggunakan Marker (Penanda). Penggunaan marker membuat penggunaan ruang pada obyek yang dilacak
II. TEORI PENUNJANG Untuk mendukung penelitian ini, dibutuhkan beberapa teori penunjang sebagai bahan acuan dan referensi. Dengan demikian penelitian akan lebih terarah. 2.1 Augmented Reality Augmented Reality (AR) merupakan variasi dari Virtual Environment (VE) atau Virtual Reality (VR). Teknologi VE secara menyeluruh membenamkan pengguna dalam lingkungan sintetik. Saat terbenam itu, seorang pengguna tidak akan mampu membedakan benda nyata disekitarnya. Sebaliknya, AR memungkinkan pengguna untuk melihat dunia nyata, dengan objek maya yang dilapiskan diatasnya atau digabung dengan dunia nyata. Oleh karena itu, AR menambah realitas, bukan menggantinya. Idealnya, maka akan muncul ke pengguna bahwa benda virtual dan nyata tampil berdampingan di ruang yang sama[1].
[1] Azuma, Ronald T., “A Survey of Augmented Reality”, In Presence: Teleoperators and Virtual Environments 6, 4 (August 1997), 355-385.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
Markerless Augmented Reality merupakan salah satu metode Augmented Reality tanpa menggunakan frame marker sebagai obyek yang dideteksi. Dengan adanya Markerless Augmented Reality, maka, penggunaan marker sebagai tracking object yang selama ini menghabiskan ruang, akan digantikan dengan gambar, atau permukaan apapun yang berisi dengan tulisan, logo, atau gambar sebagai tracking oject (obyek yang dilacak) agar dapat langsung melibatkan obyek yang dilacak tersebut sehingga dapat terlihat hidup dan interaktif, juga tidak lagi mengurangi efisiensi ruang dengan adanya marker.
Gambar 2.5. Deteksi sudut pada sebuah citra 2.3 Qualcomm Augmented Reality Qualcomm Augmented Reality (QCAR) adalah sebuah SDK (Software Development Kit) augmented reality yang dikeluarkan oleh Qualcomm. QCAR menyediakan teknologi visi komputer yang dengan sangat erat menyelaraskan grafis dari sebuah permukaan yang dicetak dengan obyek 3D sederhana.
Gambar 3.1 Tampilan Markerless Augmented Reality
Terdapat perbedaan antara pelacakan berbasis marker (marker based tracking) dan pelacakan markerless (markerless tracking). Pada pelacakan berbasis marker posisi kamera dan orientasi kamera dhitung dengan marker yang telah ditetapkan. Sementara pelacakan markerless, menghitung posisi antara kamera/pengguna dan dunia nyata tanpa referensi apapun, hanya menggunakan titik-titik fitur alami (edge, corner. garis atau model 3D). Metode Markerless memerlukan langkah priori manual, serta model atau gambar referensi untuk inisialisasi.
Sebuah aplikasi AR berbasis QCAR SDK dari komponen inti berikut: 1. 2.
3.
4.
2.2 Deteksi Sudut Dalam sistem Visi computer, deteksi sudut atau Corner Detection merupakan pendekatan yang digunakan untuk mengekstraksi beberapa jenis fitur dan menyimpulkan isi dari suatu gambar. Corner Detection sering digunakan dalam deteksi gerakan, pencocokan citra, pelacakan, mosaicing gambar, panorama stitching, pemodelan 3D dan pengenalan obyek. Terdapat berbagai metode yang digunakan untuk Corner Detection seperti moravec operator dan Harris/Plessey operator. Harris/Plessey Operator merupakan pengembangan lebih lanjut dari Moravec Operator, dimana Harris dan Stephens menggabungkan deteksi sudut dan tepi untuk mengatasi keterbatasan Moravec Operator.
5.
6.
Kamera. Memastikan bahwa setiap frame ditangkap dan diteruskan secara efisien untuk dilacak.. Image Converter. Format piksel tunggal converter mengkonversi antara format kamera (misalnya YUV12) ke format yang sesuai untuk rendering OpenGL ES (misalnya RGB565) dan untuk pelacakan. Pelacak. Pelacak berisi algoritma visi komputer yang mendeteksi dan melacak obyek dunia nyata dalam bingkai kamera video Video Background Renderer. Video Background renderer merender gambar kamera yang tersimpan dalam state obyek. Kode aplikasi. Pengembang aplikasi harus menginisialisasi semua komponen di atas dan melakukan tiga langkah kunci dalam kode aplikasi: a. Menanyakan pada state obyek tentang target yang baru terdeteksi atau state terbaru dari elemen ini. b. Memperbarui logika aplikasi dengan input data baru. c. Merender tampilan grafis yang tertambah. Target resource. Target resource dibuat menggunakan Sistem manjemen target online.
SDK QCAR akan melacak trackable yang merupakan kelas dasar yang mewakili semua obyek yang berada di dunia nyata di enam derajat kebebasan (6DoF). Ketika terlacak, tiap trackable memiliki nama, ID, status dan informasi. Ada beberapa jenis trackable dalam markerless Augmented Reality yang dimungkinkan oleh QCAR, yaitu Image target dan multi target. SDK QCAR menggunakan sistem koordinat tangan kanan. Setiap Target gambar mendefinisikan sistem koordinat lokal dengan (0,0,0) di pusat target. + X kearah kanan, + Y mengarah naik , + Z keluar dari trackable. Yang dapat dilacak.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
2.4 Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikasi. Tingkat API adalah nilai integer yang secara unik mengidentifikasi kerangka revisi API yang ditawarkan oleh versi dari platform Android. Adapun versi-versi API Android yang pernah dirilis adalah sebagai berikut: a. b. c. d. e. f. g. h.
Android versi 1.1 Android versi 1.5 (Cupcake) Android versi 1.6 (Donut) Android versi 2.0/2.1 (Eclair) Android versi 2.2 (Froyo) Android versi 2.3(Gingerbread) Android versi 3.0/3.1/3.2 (Honeycomb) Android versi 4.0 (Ice Cream Sandwich)
Tingkat API penting bagi pengembang aplikasi meliputi hal-hal: 1. 2. 3. 4.
kerangka revisi API maksimum yang mendukung revisi kerangka API yang dibutuhkan oleh aplikasi versi API yang tidak kompatibel. Setiap versi platform menyimpan pengenal level API secara internal.
Android terdiri dari satu set core libraries yang menyediakan sebagian besar fungsi yang tersedia dalam core libraries dari bahasa pemrograman Java. Salah satu elemen kunci dari Android adalah Dalvik Virtual Machine (DVM). Mesin Virtual Dalvik dieksekusi dalam Dalvik executable (.dex), Android bergantung pada Linux Versi 2.6 untuk inti sistem pelayanan seperti keamanan, manajemen memori, proses manajemen, susunan jaringan, dan driver model. APK adalah paket aplikasi Android (Android Package). APK digunakan untuk menyimpan sebuah aplikasi atau program yang akan dijalankan pada perangkat Android.
2.5 Game Engine Unity 3D Unity 3D adalah perangkat lunak game engine untuk membangun permainan 3 Dimensi (3D) baik. Game engine merupakan komponen yang ada dibalik layar setiap video game. Adapun fitur-fitur yang dimilik oleh Unity 3D antara lain sebagai berikut. a) Integrated development environment lingkungan pengembangan terpadu
(IDE)
atau
b) Penyebaran hasil aplikasi pada banyak platform: c) Engine grafis menggunakan Direct3D (Windows), OpenGL (Mac, Windows), OpenGL ES (iOS), and proprietary API (Wii). d) Game Scripting melalui Mono. Scripting yang dibangun pada Mono, implementasi open source dari NET Framework. Selain itu Pemrogram dapat menggunakan UnityScript (bahasa kustom dengan sintaks JavaScriptinspired), bahasa C # atau Boo (yang memiliki sintaks Python-inspired). Mesh merupakan bentuk dasar dari obyek 3D. Pembuatan mesh tidak dilakukan pada Unity. Sementara GameObjects adalah kontainer untuk semua Komponen lainnya. Semua objek dalam permainan disebut game objects. Material digunakan dan dihubungkan dengan mesh atau renderer partikel yang melekat pada game object. Material berhubungan dengan penyaji Mesh atau partikel yang melekat pada GameObject tersebut. Mereka memainkan bagian penting dalam mendefinisikan bagaimana objek ditampilkan. Mesh atau partikel Tidak dapat ditampilkan Tanpa material karena material meliputi referensi untuk Shader yang digunakan untuk membuat Mesh atau Partikel. Material digunakan untuk menempatkan Tekstur ke GameObjects. Unity mendukung pengembangan aplikasi Android. Sebelum dapat menjalankan aplikasi yang dibuat dengan Unity Android diperlukan adanya pengaturan lingkungan pengembang Android pada perangkat. Untuk itu pengembang perlu men-download dan menginstal SDK Android dan menambahkan perangkat fisik ke sistem. Unity Android memungkinkan pemanggilan fungsi kustom yang ditulis dalam C / C + + secara langsung dan Java secara tidak langsung dari script C #.
Gambar 2.9 Android SDK Manager Gambar 2.6 merupakan tampilan dari SDK manager yang diinstall pada komputer pribadi untuk mendukung pengembangan aplikasi pada peranti Android.
Perbedaan mendasar antara Unity desktop dan unity Android yang perlu diketahui yaitu: 1. Dynamic typing pada JavaScript tidak diperbolehkan dalam Unity Android. 2. Terrain Engine tidak didukung pada perangkat Android.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
3.
4.
ETC sebagai Texture Compression dikarenakan Persatuan Android tidak mendukung tekstur DXT / PVRTC / ATC,. Movie texture tidak didukung pada Android, tetapi streaming video layar penuh disediakan melalui fungsi scripting.
III. PERANCANGAN SISTEM APLIKASI 3.1 Rancangan Sistem Pada sistem yang diberikan QCAR, semua simulasi tersebut dapat dibentuk dalam sebuah aplikasi yang dijalankan pada perangkat Android dengan Unity sebagai editor. Pada dasarnya dari segi sistem, aplikasi Augmented Reality pada PC maupun Android tidak banyak terdapat perbedaan. Kamera tetap merupakan sebuah alat visi yang digunakan untuk mengambil tiap-tiap frame video. Kemudian akan dikirimkan untuk diproses oleh komputer. sistem akan memproses citra digital yang telah ditangkap oleh kamera berpatokan dengan adanya target yang cocok lalu memunculkan obyek maya yang telah diasosiasikan.
3.2 Markerless Augmented Reality Menggunakan QCAR QCAR memungkinkan obyek yang berupa citra maya 3D ataupun 2D muncul pada layar peranti Android dan langsung ditampilkan diatas frame-frame video yang ditangkap kamera. Berbeda dengan metode marker yang menjadikan sebuah kotak hitam pada marker sebagai penghitung posisi relatif kamera, pada markerless Augmented Reality hal ini terjadi langsung diatas gambar ataupun permukaan yang menjadi trackable. Untuk mendeteksi Target yang ada pada setiap frame dalam video itu dibutuhkan sebuah library. QCAR menyediakan library libQCAR.so. Library libQCAR.so inilah yang menjadi sistem aplikasi sehingga pelacakan target bisa dilakukan dengan mudah. alur proses yang terjadi pada pelacakan QCAR dapat dilihat pada blok diagram pada gambar 3.4.
Untuk menampilkan obyek virtual kedalam lingkungan nyata dibutuhkan sebuah perender grafis. Unity 3D digunakan untuk menangani proses ini. Selain sebagai editor (IDE), Unity 3D berperan dalam menciptakan obyek maya 3D dan proses rendering grafis. Inisialisasi kamera
menangkap frame
[2]
Gambar 3.4 Blok diagram pelacakan QCAR . melacak fitur obyek terdeteksi
menemukan target
image target menu
mengevaluasi virtual button
Image target
Multi target
Virtual button (obyek 3D)
virtual button (soccerball)
3.3 Unity 3D Sebagai Graphic Renderer QCAR SDK membutuhkan renderer untuk menampilkan obyek virtual kedalam lingkungan nyata. Proses pelacakan posisi dan orientasi hingga mengenali Target sebagai tempat memunculkan obyek dilakukan sengan sistem QCAR. Sedangkan Unity 3D berperan dalam menciptakan obyek maya 3D dan proses rendering grafis sama seperti yang dilakukan pada lingkungan antarmuka Unity 3D. Gambar 3.5 merupakan diagram proses penciptaan gambar pada Unity 3D. Mesh
olah state object
query state object perbarui logika aplikasi
Render grafis
Gambar 3.2 Diagram alur Aplikasi
[2] System Module Overview, Qualcomm Developer Network, http://ar.qualcomm.at/qdevnet/developer_guide
Materi al
Obyek
Animasi
Gambar 3.5 Diagram rendering Unity 3D
Dari blok diagram gambar 3.5 terlihat hasil akhir Obyek yang akan dimunculkan setelah pelacakan. Setiap obyek yang akan dimunculkan memiliki bentuk dan tekstur
masing-masing. Obyek juga tidak selalu bersifat statis. Seringkali obyek yang diinginkan adalah obyek bergerak. Unity bertugas memproses ini sehingga obyek-obyek tersebut dapat muncul dengan baik pada perangkat Android.
IV. IMPLEMENTASI DAN PENGUJIAN APLIKASI Simulasi dilakukan diatas perangkat Android dengan sistem operasi Android 3.2 (Honeycomb) dengan prosessor NVidia Tegra 2. Aplikasi QCAR akan bekerja diatas peranti Android namun diprogram dan dirancang dengan sebuah komputer. Komputer yang dipakai merupakan komputer dengan Sistem operasi Windows XP Professional. Dengan Unity3D yang digunakan adalah versi 3.3.0f4 yang mana versi ini didukung oleh QCAR SDK versi 1.0.6.
Adapun spesifikasi perlengkapan komputer yang digunakan untuk uji coba simulasi ini adalah sebagai berikut. Tabel 4.1 Spesifikasi perangkat Android yang diuji
Komponen
Spesifikasi
Sistem Operasi
Android Honeycomb 3.2.1
Manufaktur sistem
ASUS
Model sistem
Eee-pad Transformer TF101
BIOS
Default System BIOS
Processor
NVIDIA® Tegra™ 2, 1.0GHz ARM Cortex A9 Processor, dual core CPU
Memory
1GB LP-DDR2
Kamera
Built in Camera ASUS Transformer TF10
Sensor gambar
1.2 M Pixel Front Camera 5 M Pixel Rear Camera
Display
10.1" LED Backlight WXGA (1280x800)
Untuk Komputer yang digunakan dalam memprogram dan merancang aplikasi Augmented Reality ini, memiliki spesifikasi sebagai berikut:
Model sistem
A770M-A
BIOS
Default System BIOS
Processor
AMD Athlon(tm) 64 X2 Dual Core Processor 5200+, MMX, 3DNow (2 CPUs), ~2.7GHz
Memory
2048MB RAM
Versi DirectX
DirectX 9.0c (4.09.0000.0904)
Versi DxDiag
5.03.2600.2180 32bit Unicode
Tabel 4.2 Spesifikasi komputer yang digunakan untuk uji coba
4.1 Implementasi dan Pengujian Image target Untuk mengimplementasikan sebuah image target QCAR dalam lingkungan Augmented reality, cara yang harus dilakukan adalah dengan menentukan target gambar, mengukur ukurannya, menentukan kualitas dan kuantitas fiturnya dan membuat file konfigurasi serta dataset dari image target tersebut. Proses penilaian kualitas dan kuantitas fitur, konfigurasi dan pembuatan dataset dapat dilakukan secara online. Gambar 4.1 merupakan tampilan dari sistem manajemen target online yang disediakan QCAR untuk membuat sebuah image target.
Gambar 4.1 Pengaturan ukuran image target Pembangunan aplikasi dilakukan pada Unity 3D dengan mengasosiasikan obyek tertambah sebagai child dari image target serta pengaturan script. Setelah disimulasikan, image target berhasil memunculkan obyek virtual kedalam lingkungan nyata pada display sebuah perangkat Android. Hasil simulasi dapat dilihat pada gambar berikut:
Tabel 4.2 Spesifikasi komputer yang digunakan untuk uji coba
Komponen
Spesifikasi
Sistem Operasi
Windows XP Professional (5.1, Build 2600) Service Pack 2
Manufaktur sistem
ECS Gambar 4.2 Simulasi markerless image target AR
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
Fitur yang terdapat pada target gambar menjadi tolak ukur atas ditampilkannya obyek maya pada Augmented Reality. Pada pengujian ini akan diuji pengaruh jumlah fitur serta aspek lainnya pada percobaan image target. Untuk pengujian pertama dilakukan pada target dengan pola tidak beraturan:
Tabel 4.4 Hasil pengujian jumlah fitur dengan pola sembarang Jumlah fitur
Gambar
hasil
Table 4.5 Hasil pengujian jumlah fitur dengan pola teratur Jumlah fitur
Gambar
hasil
1 fitur
Tidak terlacak
3 fitur
Tidak terlacak
5 fitur
Tidak terlacak
gambar
1 fitur
Tidak terlacak
3 fitur
Tidak terlacak
6 fitur
Tidak terlacak
5 fitur
Tidak terlacak
8 Fitur
Tidak terlacak
7 fitur
Tidak terlacak
12 fitur
Tidak Terlacak
8 Fitur
Tidak terlacak
9 fitur
10 Fitur
gambar
Terlacak
Terlcacak
Dan percobaan berikutnya dilakukan dengan target berpola teratur:
Dapat dilihat dari hasil diatas bahwa jumlah fitur yang terlalu sedikit tidak mencukupi untuk terlacak oleh sistem. Dan pada pengujian jumlah fitur yang harus terdapat pada image target setidaknya sebanyak 9 fitur terlacak oleh sistem manajemen target dan tidak boleh memiliki pola berulang. Begitu besarnya pengaruh jumlah, tata letak, dan penyebaran fitur pada kualitas sebuah image target. Hal ini dikarenakan sebuah system image target AR memiliki cara kerja melacak fitur frame tertangkap, membandingkannya dengan fitur yang telah dikonfigurasi, menentukan posisi dan orientasi obyek tersebut, lalu merender obyek virtual pada posisi yang telah diatur. 4.2 Implementasi dan Pengujian Multi target Multi target pada dasarnya merupakan beberapa image target yang diatur sehingga menjadi sebuah trackable yang terdiri dari beberapa target gambar tersebut. Pada proses pembuatan sebuah multi target Augmented Reality
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
kita membutuhkan enam buah image target yang merupakan enam sisi kotak yang akan dibentuk menjadi multi target. Untuk mengimplementasikan sebuah multi target QCAR dalam lingkungan Augmented reality, sama seperti pada image target, cara yang harus dilakukan adalah dengan menentukan multi target dengan parameter ukuran sisi-sisi multi target yaitu panjang, lebar, serta tingginya, menentukan kualitas dan kuantitas fitur tiap sisi multi target, dan membuat file konfigurasi serta dataset dari multi target tersebut. Proses konfigurasi dan pembuatan dataset juga dilakukan secara online. Pada Gambar 4.2 dapat dilihat tampilan dari sistem manajemen target online untuk membuat sebuah multi target.
Multi target yang telah dirancang diuji dengan sebuah kotak yang ketika diuji pada setiap sisinya akan memunculkan hasil seperti ini:
Tabel 4.6 Pengujian tiap sisi multi target Sisi
Gambar
Posisi obyek
Atas
Pada tutup kotak menghadap ke arah depan kotak
Bawah
Obyek tidak terlacak
Kanan
Pada tutup kotak menghadap ke arah depan kotak
Kiri
Pada tutup kotak menghadap ke arah depan kotak
Depan
Pada tutup kotak menghadap ke arah depan kotak
Gambar 4.4 Konfigurasi sisi Multi target Gambar 4.6 menunjukkan multi pembuatan multi target yang melibatkan enam sisi dari kotak yang dijadikan trackable. Pembuatan ini dilakukan dengan sistem manajemen target online yang disediakan oleh QCAR. Setelah disimulasikan, setelah kamera melacak multi target, Multi target berhasil menambahkan obyek virtual dan ditampilkan pada layar android. Hasil simulasi dapat dilihat pada gambar berikut:
Gambar 4.5 Tampilan simulasi markerless Multi target AR
Diperlukan sebuah pengujian yang mengukur keberhasilan multi target menampilkan obyek virtual dimana bila sisi multi target yang terlihat terbatas. menguji kemampuan fitur pada salah satu sisi multi target untuk menampilkan obyek virtual. Pengujian ini juga dilakukan untuk melihat pengaruh posisi obyek apabila hanya ada satu sisi multi target terlihat.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
belakang
Pada tutup kotak menghadap ke arah depan kotak Tabel 4.6 Pengujian tiap sisi multi target
Pada table 4.5 terlihat bahwa multi target dapat ditampilkan walaupun yang terlacak oleh kamera hanya satu sisi saja. Hanya saja, obyek tidak tampil pada bagian bawah kotak karena, fitur alami dari bagian bawah kotak tidak mencukupi untuk dilacak sebagai trackable. Hal ini terjadi karena bagian bawah kotak hanya berupa planar polos yang tidak memiliki tekstur sudut yang dibutuhkan untuk melacak obyek. Pada table 4.5 juga dapat dilihat setiap sisi multi target memunculkan obyek tetap berada pada posisi tutup kotak dan menghadap ke arah depan kotak sesuai koordinat asli multi target. Hal ini terjadi karena pada multi target AR, masing-masing image target pembentuk multi target dikonfigurasi dengan melakukan translasi dan rotasi pada image target sehingga tiap-tiap sisi multi target yang berada pada posisi berbeda akan tetap dianggap sejajar oleh system. Sehingga obyek yang muncul akan sesuai dengan koordinat asal multi target.
Gambar 4.7 Virtual button sebagai tombol pergantian obyek Pada gambar 4.7 terdapat target gambar dimana diatasnya dipasang fitur virtual button yang akan mengganti adegan yang muncul, dalam hal ini pergantian game object yang telah ditentukan untuk aktif dan nonaktif sehingga ketika masing-masing virtual button ditutupi, game object yang muncul akan berganti-ganti. . Untuk simulasi kedua adalah dengan memasukkan virtual button sebagai tombol yang akan mengubah state event untuk mengganti material dari obyek 3D yang dikeluarkan ketika kamera berhasil melacak target gambar. Target gambar dipasangi empat buah virtual button. Pada masing-masing virtual button telah ditanamkan perintah untuk mengganti tekstur dari obyek yang ditampilkan. Hasil simulasi pergantian material dapat dilihat pada gambar berikut:
4.3 Implementasi dan Pengujian Virtual button Virtual button diimplementasikan dengan menempelkan virtual button pada image target yang menjadi gambar induk. Dibutuhkan image target dengan fitur yang baik dan penempatan virtual button yang tepat. Penempatan virtual button harus pada tekstur yang memiliki fitur yang baik pada image target agar virtual button dapat berjalan dengan baik. Untuk simulasi virtual button, dilakukan percobaan dengan memasukkan virtual button dalam target gambar. Simulasi pertama adalah menjadikan virtual button sebagai tombol untuk mengganti obyek. Jadi, setiap salah satu virtual button ditekan, akan membuat obyek yang dikeluarkan berbeda dan ketika virtual button dilepas, tidak akan ada obyek yang muncul.
Gambar 4.8 Virtual button sebagai tombol pergantian tekstur
Pada gambar 4.10 terdapat target gambar yang dipasang empat buah virtual button. Pada masing-masing virtual button telah ditanamkan perintah untuk mengganti tekstur dari obyek yang ditampilkan. Simulasi berikutnya adalah mengimplementasikan fitur virtual button untuk membuat permainan sepakbola. Pada kasus ini, virtual button bersama-sama dengan mesh bola menjadi child dari obyek bola ini. Ketika virtual button tertutup oleh tangan atau benda lain, maka obyek akan bergerak menjauh. Virtual button akan selalu menempel pada obyek bola, sehingga akan membuat aplikasi ini menjadi permainan sepakbola dengan bola virtual. .
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
20x20
0.215%
Berjalan dengan baik
16x16
0.138%
Berjalan dengan baik
12x12
0.077%
Performa tidak stabil
8x8
0.034%
Virtual button tidak berfungsi
Gambar 4.9 Virtual button game sepakbola virtual Pada simulasi ini, yang pertama dilakukan adalah menentukan event apa yang terjadi apabila virutal button tertutup. Pada simulasi ini, yang dilakukan pertama kali adalah menentukan batas-batas target ini agar bola tidak bergerak melewati image target. Lalu menemukan arah random yang akan ditempuh bola. kemudian menentukan sampai mana posisi final bola tersebut sehingga berhenti. Bola akan bertranslasi kearah random tersebut. Keberhasilan implementasi virtual button hampir sepenuhnya bergantung pada fitur dari image target yang digunakan. Agar berhasil berfungsi, virtual button harus ditempelkan pada image target dengan fitur yang tersebar merata, jumlah yang banyak dengan pola yang unik dan tidak berulang. Parameter keberhasilan yang dimiliki oleh virtual button sendiri hanya ukuran. Untuk itu perlu dilakukan pengujian terhadap ukuran virtual button yang digunakan Pada pengujian kali ini, digunakan image target yang sangat baik berukuran 497x373px agar tidak berpengaruh terhadap hasil pengujian ukuran virtual button.
Gambar 4.10 Image target yang digunakan untuk pengujian Virtual button yang diuji dengan perubahan ukuran secara bertahap menunjukkan hasil seperti ini:
gambar
Ukuran (px)
Perbandinga n dengan gambar induk
hasil
34x34
0.625%
Berjalan dengan baik
Table 4.8 Pengujian ukuran virtual button Virtual button bekerja dengan melacak keberadaan fitur-fitur yang ada pada latar belakang ia menempel. Apabila ukuran virtual button terlalu kecil, akan menyebabkan virtual button tidak dapat menemukan cukup jumlah fitur alami image target yang dibutuhkan virtual button sebagai latar belakang.
4.4 Simulasi Skenario simulasi ini menggabungkan semua fitur markerless Augmented reality yang telah dirancang mulai dari image target, multi target hingga virtual button sehingga menjadi sebuah aplikasi markerless augmented reality. Skenario dibuat dengan sebuah menu sebagai penghubung semua fitur markerless AR. Mula-mula menu akan mengarahkan pengguna untuk menuju halaman image target. Pada halaman image target muncul obyek yang akan terus membawa alur cerita yang akan mengarahkan pengguna menuju multi target, hingga virtual button. Tampilan simulasi terlihat pada gambar berikut:
Gambar 4.11 Tampilan simulasi markerless augmented reality
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya
V. PENUTUP Setelah melalui pengujian aplikasi simulasi metode markerless pada lingkungan augemented reality akhirnya diperoleh beberapa kesimpulan serta kritik dan saran untuk pengembangan kedepan. 5.1
Kesimpulan
Kesimpulan yang dapat diambil dari penelitian tentang markerless Augmented Reality pada perangkat Android ini adalah sebagai berikut. tanpa menggunakan 1) Aplikasi augmented reality marker tradisional yang mengimplementasikan image target dan multi target sebagai obyek pelacakan serta fitur interaktif virtual button dapat diimplementasikan dengan baik pada perangkat Android. 2) Kuantitas dan pola penyebaran fitur sudut dari target yang digunakan merupakan penentu utama keberhasilan pelacakan markerless augmented reality. 5.2 Kritik dan Saran Berdasarkan pengujian dan kesimpulan yang telah didapat, muncul beberapa kritik dan saran yang dapat diperhatikan untuk pengembangan aplikasi ini di masa yang akan datang. Beberapa kritik dan saran tersebut diantaranya: 1.
2.
Library libQCAR yang digunakan untuk membuat aplikasi ini juga tersedia untuk platform peranti bergerak lainnya. Disarankan untuk dapat mengimplementasikan pengembangan aplikasi Augmented Reality ini pada peranti bergerak lain pada masa yang akan datang. Fitur alami yang berjumlah banyak, tersebar merata, serta dengan pola yang unik dan tidak berulang akan
sangat baik dalam implementasi markerless augmented reality. Penggunaan target dengan parameter tersebut disarankan demi kesempurnaan pelacakan untuk pengembangan pada masa yang akan datang. 3.
Apabila penelitian ini akan dikembangkan lebih lanjut pada masa yang akan datang, disarankan untuk menggunakan sumber daya yang sekurang-kurangnya sama atau lebih besar dari yang digunakan pada penelitian ini I.
DAFTAR PUSTAKA
[1] Azuma, Ronald T., “A Survey of Augmented Reality”, In Presence: Teleoperators and Virtual Environments 6, 4 (August 1997), 355-385. [2] Milgram, Paul dan Kishino, Fumio, “A Taxonomy of Mixed Reality Visual Displays”, IEICE Transactions on Information Systems, Vol E77-D, No.12 December 1994. [3] Hohl, Lukas dan Quack, Till,”Markerless 3D Augmented Reality” Computer Vision ETH, 2003. [4] Goldstone, Will, "Unity Game Development Essentials", Packt Publishing Ltd., Birmingham, Oktober 2009. [5] Rogers, Rick, dkk,”Android Application Development”, O’Reilly Media, Inc., Sebastopol, CA, May, 2009. [6] “QCAR 1.5 Beta1 SDK and Unity Extension for Android”, Qualcomm Austria Research Center GmbH, Operngasse 17-21, A-1040 Vienna, Austria, 2011.
Proceeding Seminar Tugas Akhir Jurusan Teknik Elektro FTI – ITS Surabaya