Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN...

15
SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh Mario Bunda Setiawan NIM : 612009016 Skripsi Untuk melengkapi salah satu syarat memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Fakultas Teknik Elektronika dan Komputer Universitas Kristen Satya Wacana Salatiga Januari 2015

Transcript of Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN...

Page 1: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN

SCALE INVARIANT FEATURE TRANSFORM (SIFT)

oleh

Mario Bunda Setiawan

NIM : 612009016

Skripsi

Untuk melengkapi salah satu syarat memperoleh

Gelar Sarjana Teknik

Program Studi Teknik Elektro

Fakultas Teknik Elektronika dan Komputer

Universitas Kristen Satya Wacana

Salatiga

Januari 2015

Page 2: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda
Page 3: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda
Page 4: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda
Page 5: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

i

INTISARI

Pada sistem robot autonomous yang dapat bergerak tanpa awak dibutuhkan kemampuan

untuk mengenali lokasi. Untuk mengenali lokasi secara global dapat digunakan GPS, akan tetapi

penggunaan GPS masih sangat terbatas apabila lokasi berada dalam ruangan tertutup atau dalam

gedung. Untuk itu dirancang sistem untuk mengenali lokasi dalam ruangan atau gedung.

Dirancang sebuah sistem pengenalan lokasi dengan algoritma SIFT yang digunakan

untuk mendeteksi simbol yang ada di lokasi. Untuk proses pencocokkan pada SIFT digunakan K-

d Tree dan R-Tree. Kinect digunakan untuk memotong bagian citra dengan jarak yang sudah

ditentukan untuk mempercepat pemrosesan algoritma SIFT.

Dari hasil pengujian diperoleh bahwa kinect dapat mendeteksi jarak dengan baik pada

intensitas cahaya 10 lux - 300 lux. Dari hasil pengujian, akurasi dari R-Tree pada jarak 1,5 m

adalah 63,08% dengan waktu pemrosesan 13 s dan akurasi dari BBF K-d Tree pada jarak 1,5 m

adalah 82,96% dengan waktu pemrosesan 1,8 s. Algoritma R-Tree kurang sesuai diterapkan pada

SIFT disebabkan waktu pemrosesan yang lama. Algoritma K-d Tree dapat mengenali simbol

pada citra dengan akurasi yang lebih baik dan dengan waktu pemrosesan yang lebih cepat

daripada R-Tree. Algoritma K-d Tree dapat diimplementasikan pada SIFT dengan rentang jarak

1 m - 2,5 m dan pada intensitas cahaya 20 lux - 300 lux.

Kata kunci: SIFT, BBF K-d Tree, R-Tree, Kinect

Page 6: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

ii

Abstract

In unmanned robotic systems, there is a requirement to recognize the location. GPS can

be used to recognize global location, but GPS performance is limited in a enclosed space or

inside a building. Therefore a system that can recognize location in a enclosed space or inside

building is designed.

A system that can recognize position in enclosed space or inside building is desgined by

using SIFT to identify symbol which placed in the location. K-d Tree and R-Tree are used to

mathcing SIFT feature data. Kinect is used to take image part within defined distance to reduce

the runtime of SIFT algorithm.

The test results show that kinect can still measure distance in illuminance range of 10

lux-300 lux. From the test result, the accuracy of R-Tree in 1,5 m is 63,08% with runtime 13 s

and the accuracy of BBF K-d Tree in 1,5 m is 82,96% with runtime 1,8 s. R-tree algorithm is not

suitable to be implemented in SIFT because of long runtime. BBF K-d tree algorithm can

recognize symbol extraced using SIFT with better accuracy and the K-d tree has faster runtime

than R-Tree. The K-d tree can be implemented on SIFT in distance range of 1 m-2,5 m and in

illuminance range of 20 lux-300 lux.

Keywords: SIFT, kinect , BBF K-d Tree, R-Tree

Page 7: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

iii

Kata Pengantar

Puji syukur penulis panjatkan ke Tuhan Yang Maha Esa karena berkat rahmat-Nya

penulis bisa menyelesaikan skripsi ini.

Dalam kesempatan ini penulis ingin mengucapakan terimakasih yang sedalam-dalamnya

kepada Yth:

1. Bapak Saptadi Nugroho dan Bapak Darmawan Utomo selaku pembimbing yang telah

banyak membantu dalam pengerjaan skripsi ini.

2. Orang tua saya yang memberikan bantuan baik moril, materi, maupun waktunya.

3. Rekan-rekan seperjuangan dalam pengerjaan skripsi ini yaitu Kevin dan Ricky yang

telah banyak memberikan bantuan berupa solusi dalam pengerjaan dan pengujian

sistem.

4. Teman-teman beserta asisten di FTEK yang tidak dapat saya sebutkan satu-persatu

yang selama ini telah berjuang bersama-sama dalam perkuliahan.

5. Semua pihak lain yang telah membantu dan mendukung saya dalam terselesaikannya

skripsi ini yang tidak dapat saya sebutkan satu-persatu.

Harapan saya semoga ini skripsi ini dapat membantu menambah pengetahuan dan

pengalaman bagi para pembaca. Saya akui bahwa skripsi ini masih memiliki banyak kekurangan.

Sehinggga alangkah baiknya pembaca ada yang berminat mengembangkan atau memperbaiki

sistem yang dibuat pada skripsi ini.

Salatiga, Januari 2015

Page 8: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

iv

DAFTAR ISI

INTISARI ...................................................................................................................... i

ABSTRACT .................................................................................................................... ii

KATA PENGANTAR ..................................................................................................... iii

DAFTAR ISI ................................................................................................................... iv

DAFTAR GAMBAR ...................................................................................................... vi

DAFTAR TABEL ........................................................................................................ viii

DAFTAR LAMBANG .................................................................................................. ix

DAFTAR SINGKATAN ................................................................................................. xi

BAB I PENDAHULUAN .............................................................................................. 1

1.1. Tujuan .................................................................................................................. 1

1.2. Latar Belakang .................................................................................................... 1

1.3. Gambaran Sistem ................................................................................................ 2

1.4. Batasan Masalah .................................................................................................. 3

1.5. Perincian Tugas ................................................................................................... 4

1.6. Sistematika Penulisan .......................................................................................... 5

BAB II DASAR TEORI ................................................................................................. 6

2.1. Scale Feature Invariant Transform (SIFT) ......................................................... 6

2.1.1. Scale-Space Extrema Detection ................................................................ 6

2.1.2. Keypoint Localization ............................................................................... 8

2.1.3. Orientation Assignment ............................................................................. 9

2.1.4. Keypoint Descriptor .................................................................................. 10

2.1.5. Contoh Hasil Ekstraksi Fitur pada Citra dengan SIFT ............................. 10

2.2. Kinect .................................................................................................................. 11

2.3. K-d Tree .............................................................................................................. 12

2.3.1.Best Bin First (BBF) K-d Tree ................................................................... 13

2.3.2. Penerapan BBF K-d Tree ........................................................................... 15

2.3.3. Contoh BBF K-d Tree dengan 5 Buah Data Berdimensi-8 ...................... 17

2.4. R-Tree ............................................................................................................... 18

2.4.1. Penerapan R-Tree ...................................................................................... 20

2.5. Random Sample Consensus (RANSAC) ............................................................. 23

Page 9: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

v

BAB III PERANCANGAN ............................................................................................ 24

3.1. Perancangan Perangkat Keras ............................................................................. 25

3.1.1. Peletakkan Posisi Kinect .......................................................................... 25

3.2. Perancangan Perangkat Lunak ............................................................................ 26

3.2.1 Proses Penyimpanan Fitur Data Simbol dan Pengekstrakan Fitur Menggunakan

SIFT ......................................................................................................... 26

3.2.2. Perancangan Perangkat Lunak pada Kinect .............................................. 27

3.2.3. Pencocokan dengan BBF-kd tree .............................................................. 28

3.2.4. Pencocokan dengan R-tree yang Disusun dari Fitur Citra Kinect ............ 30

3.2.5. Pencocokan dengan R-tree yang Disusun dari Fitur Citra Simbol ........... 31

BAB IV PENGUJIAN DAN ANALISIS ....................................................................... 34

4.1. Pengujian Kinect ................................................................................................. 34

4.2. Pengujian Database pada Simbol ....................................................................... 36

4.2.1. Pengujian dengan menggunakan R-tree yang Disusun dari Citra Kinect . 37

4.2.2. Pengujian dengan menggunakan R-tree yang Disusun dari Citra Simbol 38

4.2.3. Pengujian dengan menggunakan BBF K-d Tree ...................................... 40

4.3. Pengujian Jarak untuk Pengenalan Simbol ........................................................ 43

4.4. Pengujian Intensitas Cahaya untuk Pengenalan Simbol ..................................... 44

4.5. Pengujian Waktu pada Sistem ............................................................................. 46

4.6. Pengujian Pengenalan Citra Simbol yang Diambil dari Kinect pada saat Robot Bergerak

............................................................................................................................. 47

4.6. Pengujian dengan Penambahan Batas Bawah ..................................................... 48

BAB V KESIMPULAN DAN SARAN.......................................................................... 49

5.1 Kesimpulan ......................................................................................................... 49

5.2. Saran Pengembangan ......................................................................................... 50

DAFTAR PUSTAKA ...................................................................................................... 51

LAMPIRAN .................................................................................................................... 52

A. Simbol-simbol yang Digunakan untuk Pengujian ................................................. 52

Page 10: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

vi

Daftar Gambar

Gambar 1.1. Diagram Blok dari Sistem 3

Gambar 2.1. Citra yang diproses dengan fungsi Gaussian dan Difference of Gaussian 7

Gambar 2.2. Proses pencarian nilai extremum pada titik x 8

Gambar 2.3.(a) Contoh Citra Masukan untuk Algoritma SIFT 10

Gambar 2.3.(b) Citra Keluaran dari Gambar 2.3.(a) 10

Gambar 2.4. Data Fitur Citra pada Gambar 2.3.(a) 10

Gambar 2.5. Tampilan Fisik Kinect 12

Gambar 2.6. Contoh Kd Tree 2 Dimensi 13

Gambar 2.7. Daerah yang Dibentuk K-d Tree dari Gambar 2.6 13

Gambar 2.8. Diagram Alir Pembentukan BBF K-d tree 16

Gambar 2.9. BBF K-d Tree yang Dibentuk dari Data pada Tabel 2.1 18

Gambar 2.10. Contoh overlap antar MBR, walaupun objek geometri tidak mengalami overlap

19

Gambar 2.11. Contoh Data MBR dan MBR yang Memuat Data 20

Gambar 2.12. Bentuk R-tree dari Gambar 2.11 20

Gambar 2.13. Diagram Alir Pembentukan R-tree 22

Gambar 3.1. Diagram Blok dari Sistem Positioning 24

Gambar 3.2. Posisi Kinect dan Sudut Kemiringan Kinect 25

Gambar 3.3. Diagram Alir Pemrosesan dan Penyimpanan Data Fitur 27

Gambar 3.4. Diagram Alir Pemrosesan Citra pada Kinect 28

Gambar 3.5. Diagram Alir Pencarian pada BBF K-d Tree 29

Gambar 3.6. Diagram Alir Pencocokan pada R-Tree yang Disusun dari Fitur Citra Kinect 31

Gambar 3.7. Diagram alir Pencocokan pada R-Tree yang Disusun dari Fitur Citra Simbol 33

Gambar 4.1. Hasil Perbandingan Data Jarak Kinect terhadap Jarak Sebenarnya 35

Gambar 4.2. (a) Citra dari Kinect 36

Gambar 4.2. (b) Bagian Citra dengan jarak 36

Gambar 4.3. Citra dari Kinect yang Digunakan untuk Pengujian 36

Gambar 4.4. Hasil Pengujian Akurasi R-tree yang Disusun dari Citra Kinect 37

Page 11: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

vii

Gambar 4.5. Waktu Pemrosesan Citra dengan R-tree yang Disusun dari Citra

Kinect 37

Gambar 4.6. Hasil Pengujian Akurasi R-tree yang Disusun dari Citra Simbol dengan

Menggunakan Euclidean Distance Tetap 38

Gambar 4.7. Waktu Pemrosesan Citra dengan R-tree yang Disusun dari Citra Simbol dengan

Menggunakan Euclidean Distance Tetap 39

Gambar 4.8. Hasil Pengujian R-tree yang Disusun dari Citra Simbol dengan Menggunakan Rasio

pada Data pada Leaf Node Euclidean Distance Terkecil 39

Gambar 4.9. Waktu Pemrosesan Citra dengan R-tree yang Disusun dari Citra Simbol dengan

Menggunakan Rasio pada Data pada Leaf Node dengan Euclidean Distance Terkecil

40

Gambar 4.10. Hasil Pengujian BBF K-d tree 41

Gambar 4.11. Waktu Pemrosesan Citra dengan BBF K-d tree 41

Gambar 4.12. Sampel-Sampel Simbol yang Kurang Sesuai dalam Algoritma SIFT 42

Gambar 4.13. Sampel-Sampel Simbol yang Sesuai dalam Algoritma SIFT 42

Gambar 4.14.(a) Citra Simbol pada Jarak 43

Gambar 4.14. (b) Citra Simbol pada Jarak 43

Gambar 4.14. (c) Citra Simbol pada Jarak 43

Gambar 4.14. (d) Citra Simbol pada Jarak 43

Gambar 4.15. Hasil Pengujian Jarak 44

Gambar 4.16. Citra Simbol pada Intensitas Cahaya 10 lux 45

Gambar 4.17. Citra Simbol pada Intensitas Cahaya 20 lux 45

Gambar 4.18. Citra Simbol pada Intensitas Cahaya 300 lux 45

Gambar 4.19. Grafik Perbandingan Waktu Pemrosesan dari Citra Sampel 47

Gambar 4.20. Citra yang Didapat dari Kinect yang Dipasang pada Robot yang

Bergerak 48

Gambar A.1. Simbol-Simbol yang Digunakan untuk Pengujian 52

Page 12: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

viii

Daftar Tabel

Tabel 2.1. Data dan Hasil Pemrosesan Algoritma BBF K-d Tree 18

Tabel 4.1. Perbandingan Data jarak Kinect terhadap Jarak Sebenarnya 34

Tabel 4.2. Pengaruh Intensitas Cahaya terhadap Akurasi Pengenalan Simbol 46

Tabel 4.2. Pengujian dengan Penambahan Batas Bawah 48

Page 13: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

ix

Daftar Lambang

Fungsi konvolusi

Fungsi Gaussian

Citra Masukan

Fungsi Difference of Gaussian (DOG)

Fungsi Derivatif dari titik

Titik optimal

Matriks

Eigenvalues dengan magnitude besar

Eigenvalues dengan magnitude kecil

Determinan dari Matriks

Trace dari Matriks

Rasio antara dan

Sampel citra

Gradien Magnitude dari

Orientasi dari

Jumlah dimensi pada K-d Tree

Indeks descriptor ke- dengan varians terbesar

Nilai median dari seluruh descriptor pada index ke-

Jumlah node yang dikunjungi pada Best Bin First(BBF) K-d Tree

Nilai varians dari index descriptor ke-

Page 14: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

x

Jumlah descriptor

Nilai rata-rata dari index descriptor ke-

Jumlah dimensi dari descriptor

Jumlah minimal data yang ada pada leaf node dari R-tree

Jumlah maksimal data yang ada pada leaf node dari R-tree

Euclidian Distance

Euclidian Distance antara titik dan

Euclidian Distance konstan

Luas kotak pada R-tree

Page 15: Sistem Positioning Menggunakan Simbol dengan Menggunakan ... · SISTEM POSITIONING MENGGUNAKAN SIMBOL DENGAN MENGGUNAKAN SCALE INVARIANT FEATURE TRANSFORM (SIFT) oleh . Mario Bunda

xi

Daftar Singkatan

SIFT Scale Invariant Feature Transform

GPS Global Positioning System

Kd-Tree K-dimensional Tree

DOG Difference of Gaussian

3D 3 Dimensi

SDK Software Development Kit

PC Personal Computer

USB Universal Serial Bus

RAM Random Access Memory

GB GigaByte

GHz GigaHertz

BST Binary Search Tree

NN Nearest Neighbour

BBF Best Bin First

MBR Minimum Bounding d-dimensional Rectangles

RANSAC Random Sample Consensus