Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki...

27
Markerless Augmented Reality Pada Perangkat Android Yoze Rizki - 2207 100 102 Pembimbing: Mochamad Hariadi, ST.,MSc.,PhD. Cristyowidiasmoro, ST.,MT., Department of Electrical Engineering Faculty of Industrial Technology Institut Teknologi Sepuluh Nopember Surabaya

Transcript of Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki...

Page 1: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Markerless Augmented Reality Pada Perangkat

Android

Yoze Rizki - 2207 100 102

Pembimbing: Mochamad Hariadi, ST.,MSc.,PhD.

Cristyowidiasmoro, ST.,MT.,

Department of Electrical Engineering Faculty of Industrial Technology Institut Teknologi Sepuluh Nopember Surabaya

Page 2: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Pendahuluan •Augmented Reality (AR) menggabungkan benda maya dua dimensi atau tiga dimensi ke dalam dunia nyata tiga dimensi. •Selama ini, Augmented Reality diaplikasikan dengan menggunakan Marker (Penanda). Penggunaan marker membuat penggunaan ruang pada obyek yang dilacak menjadi tidak efisien, tidak praktis dan kurang menarik.

Page 3: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Permasalahan Bagaimana menampilkan obyek pada lingkungan Augmented Reality tanpa menggunakan penanda pada perangkat Android?

Bagaimana membuat variasi pada penanda untuk memunculkan obyek?

Bagaimana pengaplikasian virtual button (tombol virtual) interaktif pada aplikasi ini?

Page 4: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Tujuan Menghasilkan program aplikasi yang mampu menampilkan obyek maya pada lingkungan Augmented Reality tanpa menggunakan marker di dalam peranti Android. Dengan memasukkan fitur-fitur seperti image target, multi target dan tombol virtual

Page 5: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Augmented Reality menambah realitas AR memungkinkan pengguna untuk melihat dunia nyata, dengan obyek maya yang digabungkan dengan dunia nyata secara real time. AR menambah realitas, bukan menggantinya seperti virtual environment (VE) atau virtual reality (VR).

Page 6: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Markerless Augmented Reality 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.

Page 7: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Pengolahan Citra Digital Deteksi Sudut

Deteksi sudut atau Corner Detection merupakan pendekatan yang digunakan untuk mengekstraksi beberapa jenis fitur dan menyimpulkan isi dari suatu gambar

.

Page 8: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikasi Android menyediakan Tools dan API yang di perlukan untuk mengembangkan aplikasi pada platform Android dengan menggunakan bahasa pemrograman Java.

Page 9: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

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:

◦ 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)

Page 10: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Unity 3D

Game Engine Unity 3D •Unity 3D adalah perangkat lunak game engine untuk membangun permainan 3 Dimensi (3D) •Game engine adalah alat yang berada dibalik layar sebuag aplikasi/game dari artwork sampai perhitungan matematika dan rendering. •Unity 3D berperan dalam menciptakan obyek maya 3D dan proses rendering grafis sama seperti yang dilakukan pada lingkungan antarmuka Unity 3D.

Page 11: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Unity Android Unity Android •Unity mendukung pengembangan aplikasi Android. •Sebelum dapat menjalankan aplikasi yang dibuat dengan Unity Android diperlukan adanya pengaturan lingkungan pengembang Android pada perangkat. •Unity Android memungkinkan pemanggilan fungsi kustom yang ditulis dalam C / C + + secara langsung dan Java secara tidak langsung dari script C #.

Page 12: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Proses rendering Unity 3D

Page 13: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Qualcomm Augmented Reality •Qualcomm Augmented Reality (QCAR) adalah sebuah SDK (Software Development Kit) untuk perancangan AR. •QCAR sendiri menyediakan teknologi visi komputer yang dengan sangat erat menyelaraskan grafis dari sebuah permukaan yang dicetak dengan obyek 3D sederhana.

Page 14: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

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

Page 15: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.
Page 16: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Qualcomm Augmented Reality Image Target •Image target adalah gambar yang dapat dideteksi dan dilacak oleh QCAR SDK. •QCAR akan mengakui Target Gambar dengan membandingkan fitur alami terhadap database target yang dikenal sumber daya.

Page 17: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Qualcomm Augmented Reality Multi Target •Multi target terdiri dari beberapa image target yang memiliki hubungan spasial tetap dan menjadi bagian dari sebuah multi target. •pada multi target, masing-masing image target pembentuk multi target dikonfigurasi dengan melakukan translasi dan rotasi pada image target

Page 18: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Qualcomm Augmented Reality Virtual Button •Virtual button atau tombol virtual merupakan daerah persegi pada target gambar, yang ketika disentuh atau ditutupi pada tampilan kamera, akan memicu suatu peristiwa. •Virtual button bekerja dengan melacak keberadaan fitur-fitur yang ada pada latar belakang ia menempel.

Page 19: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Qualcomm Augmented Reality Ekstensi QCAR untuk Unity •Perancangan program Augmented Reality dapat dilakukan dengan Integrated Development Environment (IDE) Unity3D. •Didalam paket ini terdapat library libQCAR.so yang menjadi library utama.

Page 20: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Pengujian Image target Merupakan dasar dari semua simulasi yang ada

Page 21: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Implementasi dan Pengujian Image target •pengaruh jumlah, tata letak, dan penyebaran fitur pada kualitas sebuah image target sangat berpengaruh pada hasil

Jumlah fitur hasil

1 fitur Tidak terlacak

3 fitur Tidak terlacak

5 fitur Tidak terlacak

7 fitur Tidak terlacak

8 Fitur Tidak terlacak

9 fitur Terlacak

10 Fitur Terlcacak

Jumlah fitur hasil

1 fitur Tidak terlacak

3 fitur Tidak terlacak

5 fitur Tidak terlacak

6 fitur Tidak terlacak

8 Fitur Tidak terlacak

12 fitur Tidak Terlacak

Hasil pada citra dengan pola teratur

Hasil pada citra dengan pola tidak teratur

Page 22: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Implementasi Multi Target Bergantung pada kualitas Image target pembentuk

Page 23: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Pengujian Sisi Multi target •terlihat bahwa multi target dapat ditampilkan walaupun yang terlacak oleh kamera hanya satu sisi saja •setiap sisi multi target memunculkan obyek tetap berada pada posisi tutup kotak dan menghadap ke arah depan kotak sesuai koordinat asli multi target

Sisi 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

belakang Pada tutup kotak menghadap ke arah depan

kotak

Page 24: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

IMPLEMENTASI VIRTUAL BUTTON Untuk simulasi virtual button, dilakukan percobaan dengan memasukkan virtual button dalam target gambar.

Page 25: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

PENGUJIAN UKURAN VIRTUAL BUTTON Keberhasilan implementasi virtual button hampir sepenuhnya bergantung pada fitur dari image target yang digunakan.Untuk itu perlu dilakukan pengujian terhadap ukuran virtual button yang digunakan

Ukuran (px) Perbandingan dengan

gambar induk

hasil

34x34 0.625% Berjalan dengan

baik

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

Hasil pada pengujian ukuran virtual button dibandingkan dengan gambar induk

Page 26: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

IMPLEMENTASI DAN PENGUJIAN APLIKASI Simulasi Skenario

Simulasi ini yang menggabungkan semua fitur markerless Augmented reality yang telah dirancang

Page 27: Markerless Augmented Reality Pada Perangkat Android · Reality Pada Perangkat Android Yoze Rizki ... menggunakan bahasa pemrograman Java. ... video itu dibutuhkan sebuah library.

Kesimpulan

Kesimpulan yang dapat diambil dari penelitian tentang markerless Augmented Reality pada perangkat Android ini adalah sebagai berikut.

•Aplikasi augmented reality tanpa menggunakan marker tradisional diimplementasikan pada perangkat Android dengan parameter jumlah fitur sudut, pola fitur yang tidak berulang, dan penyebaran fitur ke semua penjuru obyek pelacakan. •Menurut Pengujian jumlah fitur pada image target, jumlah fitur sudut yang harus terdapat pada sebuah image target harus berjumlah minimal 9 fitur dengan pola yang acak. •Menurut pengujian ukuran virtual button, ukuran minimal virtual button yang dapat dilacak oleh sistem adalah 16x16 piksel atau 0,138% dari gambar berukuran 497x373piksel.