BAB 3 PERANCANGAN SISTEM

dokumen-dokumen yang mirip
PERANCANGAN SISTEM ROBOT MOBIL PENDETEKSI BOLA TENIS MEJA

BAB 4 IMPLEMENTASI DAN EVALUASI. menggunakan serial port (baudrate 4800bps, COM1). Menggunakan Sistem Operasi Windows XP.

BAB 3 PERANCANGAN SISTEM

BAB III PERANCANGAN. 3.1 Diagram blok sistem

Pengenalan Bahasa Isyarat Tangan Menggunakan Metode PCA dan Haar-Like Feature

BAB 3 PERANCANGAN SISTEM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III PERANCANGAN SISTEM

BAB 4 IMPLEMENTASI DAN EVALUASI. Atmel (

SISTEM PENJEJAK POSISI OBYEK BERBASIS UMPAN BALIK CITRA

BAB III METODE PENELITIAN. pada blok diagram tersebut antara lain adalah webcam, PC, microcontroller dan. Gambar 3.1 Blok Diagram

BAB II SISTEM PENENTU AXIS Z ZERO SETTER

BAB III METODE PENELITIAN

BAB III PERANCANGAN ALAT

BAB 4 IMPLEMENTASI DAN EVALUASI

BAB III ANALISA DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN. Tahap & Hasil Langkah Penelitian Literatur & Referensi. Memahami konsep deteksi wajah

BAB III PERANCANGAN SISTEM

III. METODE PENELITIAN. : Laboratorium Teknik Kendali Jurusan Teknik Elektro. Universitas Lampung

BAB 3 PERANCANGAN SISTEM. Computer. Parallel Port ICSP. Microcontroller. Motor Driver Encoder. DC Motor. Gambar 3.1: Blok Diagram Perangkat Keras

BAB III ANALISIS DAN PERANCANGAN SISTEM. secara otomatis. Sistem ini dibuat untuk mempermudah user dalam memilih locker

BAB 3 PEMBAHASAN. 3.1 Sistem Absensi Berbasis Webcam

APLIKASI WEBCAM UNTUK MENJEJAK PERGERAKAN MANUSIA DI DALAM RUANGAN

BAB III PERANCANGAN ALAT

Pengendalian Posisi Mobile Robot Menggunakan Metode Neural Network Dengan Umpan Balik Kamera Pemosisian Global

APLIKASI PENGENALAN WAJAH MENGGUNAKAN METODE EIGENFACE DENGAN BAHASA PEMROGRAMAN JAVA

PENGENDALIAN POSISI MOBILE ROBOT MENGGUNAKAN METODE NEURAL NETWORK DENGAN UMPAN BALIK KAMERA PEMOSISIAN GLOBAL

III. METODE PENELITIAN. Penelitian ini mulai dilaksanakan pada bulan September 2011 s/d bulan Februari

IMPLEMENTASI DAN EVALUASI

BAB 3 PERANCANGAN SISTEM. ruangan yang menggunakan led matrix dan sensor PING))). Led matrix berfungsi

KAMERA PENDETEKSI GERAK MENGGUNAKAN MATLAB 7.1. Nugroho hary Mindiar,

Bab III Perangkat Pengujian

BAB IV IMPLEMENTASI DAN PENGUJIAN

PENDAHULUAN BAB I PENDAHULUAN

BAB III PERANCANGAN SISTEM

Gambar 3.1 Diagram Blok Alat

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN SISTEM

BAB III METODE PENELITIAN. melacak badan manusia. Dimana hasil dari deteksi atau melacak manusia itu akan

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN ALAT

Perancangan Sistem Kendali Pergerakan Robot Beroda dengan Media Gelombang Radio

BAB IV PENGUJIAN ROBOT AMPHIBI

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB 3 PERANCANGAN SISTEM

BAB II LANDASAN TEORI

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB 4 IMPLEMENTASI DAN EVALUASI. Spesifikasi minimum dari perangkat keras yang diperlukan agar dapat. Graphic Card dengan memory minimum 64 mb

BAB IV PERANCANGAN DAN REALISASI PERANGKAT LUNAK

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM APLIKASI

BAB III PERANCANGAN PERANGKAT KERAS MOBILE-ROBOT

BAB III PERANCANGAN DAN PEMBUATAN APLIKASI

BAB 3 PERANCANGAN SISTEM. Perancangan sistem dimulai dari penempatan posisi kamera dengan posisi yang

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

PENGENDALI LAJU KECEPATAN DAN SUDUT STEERING PADA MOBILE ROBOT DENGAN MENGGUNAKAN ACCELEROMETER PADA SMARTPHONE ANDROID

pengambilan citra video, pemrosesan citra pada setiap frame,, pendeteksian objek

BAB IV ANALISA IMPLEMENTASI DAN EKSPERIMEN SISTEM PENGENDALI ROBOT CRANE

BAB III METODOLOGI PENELITIAN. Alat yang digunakan dalam penelitian ini adalah:

BAB IV ANALISA DAN PENGUJIAN ALAT

BAB 3 PERANCANGAN SISTEM

BAB 3 METODE PENELITIAN. Bab ini membahas perancangan sistem yang digunakan pada robot hexapod.

BAB III ANALISIS DAN PERANCANGAN

BAB 3 PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM. Sistem sortir mur dan baut ini terdiri dari beberapa rangkaian sub sistem yang

BAB I PENDAHULUAN. 1.1 Latar Belakang

Rancang Bangun Sistem Pelacakan Obyek Menggunakan CCTV dan Webcam. Kampus ITS, Surabaya

SISTEM KENDALI JARAK JAUH MINIATUR TANK TANPA AWAK

BAB 4. Implementasi dan Evaluasi. Setelah dibuatnya alat pengangkat dan pengelompokan benda yang

BAB III PERANCANGAN ALAT

BAB III DESAIN DAN IMPLEMENTASI SISTEM

Elvin Nur Afian, Rancang Bangun Sistem Navigasi Kapal Laut berbasis pada Image Processing metode Color Detection

BAB III ANALISIS DAN DESAIN SISTEM

BAB III PERANCANGAN ALAT

BAB 3 PERANCANGAN SISTEM. Perancangan sistem pengendalian posisi linier motor DC dengan algoritma

PENENTUAN SUDUT LENGAN ROBOT HUMANOID BERDASARKAN KOORDINAT YANG DIKIRIM DARI PC MENGGUNAKAN USER INTERFACE YANG DIBUAT DARI Qt

BAB III PERANCANGAN DAN PEMBUATAN ALAT

DETEKSI WAJAH METODE VIOLA JONES PADA OPENCV MENGGUNAKAN PEMROGRAMAN PYTHON

BAB III PERANCANGAN SISTEM. 3.1 Pengantar Perancangan Sistem Pengendalian Lampu Pada Lapangan Bulu

BAB III METODE PENELITIAN. diperlukan dengan beberapa cara yang dilakukan, antara lain:

BAB 3 PERANCANGAN SISTEM

Rancangan Dan Pembuatan Storage Logic Analyzer

BAB 3 ANALISIS DAN PERANCANGAN SISTEM PROGRAM APLIKASI HANDS RECOGNIZER

DAFTAR ISI. HALAMAN JUDUL... i. HALAMAN PENGESAHAN... ii. HALAMAN PERNYATAAN... iii. KATA PENGANTAR... iv. MOTO DAN PERSEMBAHAN... v. DAFTAR ISI...

BAB III ANALISIS DAN DESAIN SISTEM

PENGENALAN WAJAH DENGAN METODE TEMPLATE MATCHING SEBAGAI SISTEM STARTER SEPEDA MOTOR BERBASIS MIKROKONTROLER ATMEGA 16 Oleh : Margito Hermawan

BAB IV UJI COBA DAN IMPLEMENTASI

BAB 1 PENDAHULUAN Latar Belakang

PERANCANGAN DAN PEMBUATAN ALAT PEMANTAU KEADAAN RUANGAN JARAK JAUH BERBASIS MIKROKONTROLER AT89S52 MENGGUNAKAN SMARTPHONE

III. METODE PENELITIAN. Penelitian mengenai analisis pola interferensi pada interferometer Michelson

BAB II LANDASAN TEORI. Kamera web (singkatan dari web dan camera) merupakan sebuah media

BAB III PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN

BAB 3 PERANCANGAN SISTEM. sederhana, ditunjukan pada blok diagram dibawah ini.

BAB IV IMPLEMENTASI DAN EVALUASI

BAB III METODE PENELITIAN. mengerjakan tugas akhir ini. Tahap pertama adalah pengembangan konsep

BAB III PERANCANGAN SISTEM

Transkripsi:

BAB 3 PERANCANGAN SISTEM Sistem vision yang akan diimplementasikan terdiri dari 2 bagian, yaitu sistem perangkat keras dan perangkat lunak. Perangkat lunak yang digunakan dalam sistem vision ini adalah Matlab, yang digunakan untuk mendeteksi objek (dalam hal ini objek berupa bola ping-pong), dan mengestimasi jarak dan posisi bola. Pada bagian perangkat keras digunakan sebuah kamera web, 2 buah motor servo, sebuah PC, RS-232 dan sebuah mikrokontroller AT89S52. Input dalam sistem ini didapat dari kamera, dan pengolahan citra dilakukan dalam PC, dan selanjutnya data akan dikirim melalui serial port ke mikrokontroler. Setelah jarak dan posisi bola diketahui maka mikrokontroler akan memberikan perintah kepada mobile robot untuk bergerak mendekati objek tersebut. Hal ini ditunjukan oleh Gambar 3.1 di bawah. Object kamera web PC controller ( AT89S52 ) Servo motor 1 & 2 Gambar 3.1 Blok Diagram Sistem Beberapa hal yang menjadi perhatian pada sistem vision disini antara lain pencahayaan, jarak antara kamera dengan objek, latar belakang dan resolusi gambar. 26

27 3.1 Perancangan pada Perangkat Keras Spesifikasi perangkat keras yang digunakan dan teknik perancangannya dalam penelitian ini meliputi : PC (Personal Computer) Kamera web Mikrokontroler AT89S52 dan RS-232 Motor Servo dan Roda pada Mobile Robot 3.1.1 PC (Personal Computer) Spesifikasi dari PC yang digunakan dalam sistem vision disini adalah sebagai berikut : Pentium IV 1,4 GHz RAM 512 MB VGA NVIDIA GeForce Go 7400 PC ini digunakan untuk pengolahan citra yang mendapat input dari kamera, hal ini akan dilakukan setelah kamera meng-capture citra. Setelah itu, PC akan mengirimkan informasi pada mobile robot berupa jarak dan posisi objek dengan komunikasi secara serial. Informasi yang diberikan akan menentukan pergerakan mobile robot selanjutnya. 3.1.2 Kamera Web Kamera ini digunakan untuk mengambil gambar yang akan diproses oleh PC, sebelumnya kamera ini harus dalam keadaan siap setelah program utama dijalankan. Metoda pengiriman data yang digunakan melalui kabel USB. Jenis kamera yang digunakan adalah kamera web Logitech quickcam pro 4000.

28 3.1.3 Mikrokontroler AT89S52 dan RS-232 Mikrokontroler AT89S52 digunakan sebagai pengatur pergerakan mobile robot sesuai dengan perintah dari PC yang telah mengolah gambar berdasarkan input dari kamera. Komunikasi serial yang digunakan memakai IC MAX232, IC 232 berfungsi sebagai konverter level tegangan dari PC ke mikrokontroler, yaitu dari logic RS-232 (-12 sampai +12 V) ke dalam logic TTL (0-5 V). Rangkaian dari IC MAX232 menggunakan konfigurasi cross null modem, dimana bagian TX dari mikrokontroler akan dihubungkan dengan RX dari PC, dan RX dari mikrokontroler akan dihubungkan dengan TX dari PC. 3.1.4 Motor Servo dan Roda pada Mobile Robot Pada sistem ini digunakan 2 buah motor servo untuk menggerakan mobile robot. Jenis motor servo yang digunakan memiliki torsi 3.4 kg.cm. Motor dapat melakukan rotasi sebesar 360, keduanya dipasang sejajar dengan prinsip differential drive. Roda yang dipilih untuk roda penggerak terbuat dari bahan karet dengan diameter 4 cm dengan tujuan agar dapat mengurangi slip pada mobile robot karena pengaruh keadaan lantai. 3.1.5 Blok Diagram Sistem Object kamera web PC controller ( AT89S52 ) Servo motor 1 & 2 Gambar 3.1 Blok Diagram Sistem

29 3.1.6 Skematik Rangkaian Sistem Gambar 3.2 Skematik Rangkaian 3.1.7 Mekanik Mobile Robot Mekanik dari mobile robot yang dibuat dapat dilihat pada gambar 3.3. Gambar dilihat dari tampak depan dan tampak atas berdasarkan ukuran dan bentuk sistem yang telah dirancang.

30 Gambar 3.3 Mekanik Robot (a) Tampak Atas (b) Tampak Depan. 3.1.8 Peletakan Kamera pada Mobile Robot Kamera diletakkan pada bagian tengah PCB modul kontroller mobile robot. Sudut pandang dari kamera telah diukur sesuai jarak pandang yang telah ditentukan, dengan jarak gambar yang dapat ditangkap kamera yaitu 25-65 cm dan besar sudut 45º. Contoh rancangannya dapat dilihat pada gambar 3.4. Gambar 3.4 Peletakan kamera pada Mobile Robot

31 3.2 Perancangan pada Perangkat Lunak Pengenalan objek yang dilakukan oleh PC dalam sistem ini ditulis dengan menggunakan bahasa Matlab versi 7.1. Pengenalan yang dilakukan akan membedakan objek menjadi 2 yaitu apakah objek merupakan bola ping-pong atau bukan. Setelah pengenalan objek selesai dilakukan, informasi yang didapat akan dikirim ke mikrokontroler secara serial dimana selanjutnya akan menggerakan motor servo pada mobile robot. Pada mikrokontroler AT89S52 digunakan bahasa pemrograman assembly 8051. Diagram alir sistem secara keseluruhan dapat dilihat pada gambar 3.5. Start Mengambil Gambar Pemrosesan Gambar tidak Objek terdeteksi? ya Mencari Posisi objek Kirim Perintah ke Mikrokontroler Mobile Robot bergerak mendekati objek end Gambar 3.5 Diagram Alir Sistem Secara Keseluruhan

32 3.2.1 Perancangan GUI Graphical User Interface yang digunakan dalam pemrosesan citra dapat dilihat pada gambar 3.6. Gambar 3.6 Tampilan awal GUI Ukuran 176 x 144 pada bagian GUI adalah untuk menampilkan original image, result, atau sub window Tombol Preview, digunakan untuk menampilkan image (Video Preview) dari kamera Tombol Search the ball(s), digunakan untuk memproses image dalam pendeteksian bola Tombol B (Backward), digunakan untuk menggerakkan mobile robot secara

33 manual kearah belakang/mundur Tombol F (Forward), digunakan untuk menggerakkan mobile robot secara manual kearah depan/maju Tombol L (Left), digunakan untuk menggerakkan mobile robot secara manual kearah kiri Tombol R (Right), digunakan untuk menggerakkan mobile robot secara manual kearah kanan Check box Enable Serial, digunakan untuk mengaktifkan dan menonaktifkan port serial pada PC Tombol Open Serial, digunakan untuk mengaktifkan port serial pada PC Tombol Close Serial (akan muncul setelah port serial dalam keadaan aktif), digunakan untuk menonaktifkan port serial pada PC Tombol Original image, digunakan untuk menampilkan citra asli sebelum diproses Tombol Result, digunakan untuk menampilkan hasil akhir citra setelah diproses Tombol Sub Window, digunakan untuk menampilkan bagian-bagian dari citra yang berhasil lolos dari semua classifier Check box New Window, digunakan untuk memilih apakah citra akan ditampilkan pada window sekarang atau window baru Video preview, untuk melihat tampilan webcam. 3.2.2 Program Pemrosesan Citra Diagram alir untuk pemrosesan citra dapat dilihat pada gambar 3.7, proses ini dilakukan pada PC dengan menggunakan bahasa pemrograman Matlab.

34 Gambar 3.7 Diagram Alir Pemrosesan Citra Dari diagram alir diatas dapat dilihat bahwa ada 3 modul utama dalam pemrosesan citra, yaitu : Komputasi Fitur, Pemilihan Fitur dan Pencarian Bola. Komputasi fitur disini merupakan proses untuk menentukan nilai threshold dari setiap fitur yang digunakan berdasarkan teknik perhitungan integral image. Selanjutnya adalah Pemilihan Fitur yang merupakan proses untuk melakukan pemilihan fitur-fitur terbaik yang akan digunakan, dengan menggunakan algoritma AdaBoost. Berikutnya Pencarian Bola yang didalamnya terdapat proses scanning, merging, dan pengkalkulasian jarak dan posisi objek.

35 3.2.3 Algoritma Pemrosesan Citra Berikut akan dibahas tentang algoritma-algoritma yang digunakan dalam pemrosesan citra. Seperti yang telah diketahui sebelumnya pada diagram alir pemrosesan gambar diatas (Gambar 3.7), pemrosesan terbagi dalam 3 modul utama, yaitu : Modul komputasi Fitur, Modul Learning (pemilihan fitur) dan modul pencarian bola. 3.2.3.1 Modul Komputasi Fitur Modul komputasi fitur ini digunakan untuk menentukan nilai threshold dari setiap fitur yang digunakan. Prosedur penelitian ini mengklasifikasikan citra berdasarkan nilai dari fitur-fitur sederhana. Alasan dari pemilihan penggunaan fitur ini adalah kecepatan pemrosesannya, yang jika dibandingkan dengan melakukan proses scanning secara piksel per piksel akan jauh lebih cepat. Fitur yang digunakan merupakan versi mini dari fungi basis Haar (Haar basis functions). Dalam hal ini digunakan 3 jenis fitur, yaitu : Fitur dengan 2 persegi panjang, fitur dengan 3 persegi panjang, dan fitur dengan 4 persegi panjang, seperti yang dicontohkan pada gambar 3.8. Gambar 3.8 A dan B merupakan fitur dengan 2 persegi panjang, C merupakan fitur dengan 3 persegi panjang, dan D merupakan fitur dengan 4 persegi panjang.

36 Perhitungan fitur ini menggunakan cara integral image yang merupakan penjumlahan dari seluruh piksel yang berada dalam persegi panjang berwarna putih dikurangi dengan seluruh jumlah piksel yang ada di persegi panjang berwarna abu-abu. Gambar 3.9 dibawah ini mencontohkan posisi bola terhadap fitur yang digunakan sesuai dengan perhitungan integral image. Gambar 3.9 Gambar bola grayscale dengan fitur A, B, C, dan D. 3.2.3.2 Modul Learning (Pemilihan Fitur) AdaBoost (Adaptive Boosting) merupakan sebuah algoritma learning yang banyak digunakan dalam masalah pengklasifikasian. Dalam penelitian ini AdaBoost digunakan untuk memilih fitur-fitur yang baik (weak-classifier) dan membentuk sebuah strong classifier (kumpulan dari beberapa weak classifier) yang nantinya akan digunakan pada sistem pendeteksian objek. Untuk kemudahan dalam pembacaan dan penyusunan buku, maka hanya akan diilustrasikan cara kerja AdaBoost menggunakan 30 gambar training dan 4 fitur dengan ukuran gambar training 16 x 16 piksel. Gambar 3.10 menunjukkan gambar-gambar yang digunakan untuk training, dengan 6 gambar positif (gambar bola) dan 24 gambar negatif (gambar bukan bola).

37 Karena banyaknya jumlah fitur yang dapat digunakan, misalnya dengan subwindow ukuran 24x24 piksel, kemungkinan jumlah fitur yang dapat digunakan ialah 45.396 fitur (Viola-Jones). Pada percobaan sebenarnya, digunakan 55 gambar training dan 112 fitur dengan iterasi sebanyak 112 kali. Maka untuk menambah kecepatan pemrosesan citra cukup dipilih fitur-fitur yang terbaik untuk mengklasifikasikan bola, dari 112 fitur yang dicoba menggunakan algoritma ini, terpilih 28 fitur yang terbaik untuk digunakan dalam sistem pendeteksian objek ini. Gambar 3.10 Contoh gambar yang digunakan untuk training fitur Gambar 3.11 menunjukkan 4 fitur yang digunakan untuk ilustrasi proses pemilihan fitur dengan AdaBoost dan tabel 3.1 menunjukkan hasil klasifikasinya. Gambar 3.11 Empat contoh fitur yang digunakan Tabel 3.1 Hasil klasifikasi dengan menggunakan 4 fitur. Gambar Fitur 1 Fitur 2 Fitur 3 Fitur 4 training Gambar 1 * Gambar 2 * Gambar 3 * Gambar 4 *

38 Gambar 5 * Gambar 6 * Gambar 7 ** Gambar 8 ** Gambar 9 ** Gambar 10 ** Gambar 11 ** Gambar 12 ** Gambar 13 ** Gambar 14 ** Gambar 15 ** Gambar 16 ** Gambar 17 ** Gambar 18 ** Gambar 19 ** Gambar 20 ** Gambar 21 ** Gambar 22 ** Gambar 23 ** Gambar 24 ** Gambar 25 ** Gambar 26 ** Gambar 27 ** Gambar 28 ** Gambar 29 ** Gambar 30 ** Keterangan : = Gambar berhasil diklasifikasi dengan benar oleh fitur bersangkutan = Gambar yang salah diklasifikasi oleh fitur bersangkutan * = Gambar positif ** = Gambar negatif Berdasarkan tabel di atas, biasanya manusia akan langsung memilih Fitur 2 sebagai fitur terbaik, disusul oleh Fitur 1, Fitur 4 dan terakhir Fitur 3 berdasarkan jumlah gambar yang berhasil diklasifikasi dengan benar. Akan tetapi dengan menggunakan Algoritma AdaBoost, urutan Fitur terbaik ialah Fitur 2, disusul oleh Fitur 4, Fitur 3 dan Fitur 1 (tabel 3.2 menunjukkan proses pemilihan fitur tersebut). AdaBoost menggunakan sistem pembobotan untuk masing-masing gambar. Pada umumnya AdaBoost dilatih dengan menggunakan jumlah gambar

39 positif yang lebih sedikit dibandingkan dengan gambar negatif, sehingga memberikan nilai bobot untuk gambar positif yang sedikit lebih tinggi dibanding dengan gambar negatif, dengan tujuan supaya kesalahan deteksi pada benda yang bukan bola menjadi lebih kecil [Viola & Jones]. Algoritma AdaBoost yang secara umum dipakai untuk pengklasifikasian ialah sebagai berikut : 1. Input berupa : gambar untuk training, dengan = nomor gambar ke-i, = 1 untuk gambar positif, = 0 untuk gambar negatif, dan i ialah jumlah gambar dengan i = 1...N. Contoh : gambar ke-1,..., ke-30 (1,1),...,(6,1),(7,0),...,(30,0) 2. Inisialisasi : Bobot awal, dengan m = jumlah gambar negatif, dan l = jumlah gambar positif Contoh : m = 24, l = 6 maka w 1, 1 = 1 2 6 = 0.0833, w 1, 30 = 1 2 24 = 0.0208 3. For t = 1...T, dimana t ialah jumlah iterasi (tergantung dari banyaknya fitur yang akan dipilih) a. Normalisasi bobot, sehingga penjumlahan total dari semua bobot ialah satu. w t adalah bobot gambar pada iterasi ke-t. b. Untuk setiap fitur, j, latih classifier h j. Evaluasi error rate c. Pilih Fitur dengan error rate terkecil.

40 d. Update bobot dengan = 1 bila gambar diklasifikasi dengan benar dan 0 bila salah diklasifikasi, dan 4. hasil akhir klasifikasi yang bagus :, dimana Tabel 3.2 menunjukkan proses pemilihan urutan fitur terbaik dengan menggunakan AdaBoost dari 4 fitur dengan 4 kali iterasi. αt = 1 βt Gambar training Bobot Awal Tabel 3.2 Proses pemilihan fitur terbaik Bobot setelah Iterasi 1 Bobot setelah Iterasi 2 Bobot setelah Iterasi 3 Bobot setelah Iterasi 4 Gambar 1 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 2 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 3 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 4 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 5 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 6 * 0.0833 0.0426 0.0393 0.0459-0.1137 Gambar 7 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 8 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 9 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 10 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 11 ** 0.0208 0.0106 0.0098 0.0042 0.0042 Gambar 12 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 13 ** 0.0208 0.0106 0.0162 0.0070 0.0070 Gambar 14 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 15 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 16 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 17 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 18 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 19 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 20 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 21 ** 0.0208 0.0106 0.0098 0.0042-0.0105

41 Gambar 22 ** 0.0208 0.0106 0.0098 0.0042-0.0105 Gambar 23 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 24 ** 0.0208 0.0106 0.0162 0.0070 0.0070 Gambar 25 ** 0.0208 0.0106 0.0098 0.0115-0.0284 Gambar 26 ** 0.0208 0.0106 0.0098 0.0042-0.0105 Gambar 27 ** 0.0208 0.0106 0.0098 0.0042-0.0105 Gambar 28 ** 0.0208 0.0106 0.0162 0.0070-0.0173 Gambar 29 ** 0.0208 0.5000 0.4618 0.5392 0.5392 Gambar 30 ** 0.0208 0.0106 0.0162 0.0189-0.0468 Error rate Fitur 1 Error rate Fitur 2 Error rate Fitur 3 Error rate Fitur 4 0.0833 0.0208 0.3333 0.2500 0.6152 0.5208 # 0.5035 0.3777 1.1193 0.9826# 0.7308 0.5720# 1.6766 1.5218 # 0.8285 # 0.6675 # Keterangan : # = Error rate yang diabaikan, karena fitur bersangkutan telah dipilih pada iterasi sebelumnya * = Gambar positif ** = Gambar negatif Dalam penelitian ini, hal pemilihan fitur dengan AdaBoost fitur dengan error rate diatas 0.5 tidak akan digunakan dengan maksud agar dapat memperkecil kesalahan deteksi objek yang digunakan (bola ping pong).

42 3.2.3.3 Modul Pencarian Bola Start Inisialisasi Proses Ambil Gambar (RGB) Konversi RGB ke Grayscale For ukuran Sub-window = 1 n Jalankan classifier Merging Kalkulasi jarak dan posisi objek Jalankan mobile robot End Gambar 3.12 Diagram Alir Pencarian Bola Berdasarkan diagram alir diatas, setelah citra di capture akan dilakukan pengkonversian citra dari RGB ke grayscale. Setelah itu proses scanning, dimana ukuran terkecil sub-window akan dijalankan terlebih dahulu pada setiap classifier, kemudian fitur yang sama dengan ukuran yang lebih besar akan dijalankan pada proses berikut dan seterusnya hingga didapat gambar yang cocok dengan pendeteksian. Setelah proses scanning selesai akan dilakukan proses merging sehingga tampak sebuah sub-window baru yang menandakan bahwa

43 objek yang diinginkan telah terdeteksi. proses selanjutnya adalah pengkalkulasian jarak dan posisi objek guna menentukan arah pergerakan mobile robot. Penjelasan tentang scanning, merging dan pengkalkulasian jarak dan posisi akan dibahas lebih lanjut dalam sub-bab berikut. 3.2.3.3.1 Scanning Pada bagian ini menguraikan suatu algoritma untuk membangun classifier cascade untuk mengurangi waktu komputasi yang didasarkan pada fitur-fitur yang telah terseleksi dalam classifier, dengan fitur ini akan dilakukan scanning gambar pada classifier cascade yang digunakan. Semua contoh fitur yang digunakan untuk latihan mengklasifikasi gambar yang dinormalisasi (nilai piksel gambar menjadi setara dalam kondisi lingkungan yang berbeda) untuk memperkecil pengaruh dari kondisi cahaya yang berbeda, dan ukuran sub-window yang berbeda. Normalisasi dilakukan dengan membagi nilai fitur (penjumlahan nilai fitur dalam metode integral image) dengan nilai piksel total pada sub-window tersebut. Proses scanning fitur dilakukan keseluruh bagian gambar, ukuran dari fitur yang digunakan terbagi beberapa ukuran ( hal ini bergantung pada iteration, scale dan shift ). Ukuran yang paling kecil dijalankan terlebih dahulu kemudian fitur yang sama dengan ukuran yang lebih besar akan dijalankan pada proses berikut dan seterusnya hingga didapat gambar yang cocok dengan pendeteksian bagian dari citra yang lolos seleksi dari semua classifier akan ditandai dengan sebuah gambar bujur sangkar putih (subwindow).

44 3.2.3.3.2 Merging Merging merupakan penggabungan dari beberapa sub-window menjadi satu sub-window berdasarkan titik pusat pada banyaknya kumpulan subwindow pada hasil scanning fitur tersebut. Algoritma merging menggunakan teknik yang sama dengan teknik labeling, dengan mengelompokkan subwindow yang berdekatan menjadi satu kelompok. Tehnik labeling maksudnya mengelompokan subwindow subwindow berbagai ukuran sebelum merging ke dalam satu label yang sama dengan melakukan cara scanning. Kemudian subwindow dalam label yang sama akan dirata ratakan setiap ukuran subwindow sehingga didapatkan satu buah subwindow. 3.2.3.3.3 Kalkulasi jarak dan posisi Apabila PC telah berhasil menentukan posisi bola berdasarkan algoritma yang digunakan pada program Matlab, maka PC akan mengkalkulasi jumlah step yang diperlukan untuk menggerakkan motor servo. Adapun algoritma yang dipakai untuk menentukan jumlah step yang ditunjukkan pada gambar 3.7, yaitu dengan : 1. Menentukan titik acuan/titik tengah pada gambar (Xtengah) 2. Menentukan titik sudut sub-window berdasarkan hasil deteksi bola (Xbola, Ybola) 3. Memprediksi jarak bola sebenarnya, dengan rumus : jarakbola = (d^1.5)/50 + d/12 + offset/1.8

45 4. Menentukan sudut kemiringan (orientasi) bola terhadap kamera, dengan rumus berikut ini : Sudutbola = atan(y/x) Gambar 3.13 Hubungan posisi bola dengan estimasi perpindahan mobile robot 5. Jarak yang harus ditempuh robot untuk mencapai bola dengan jumlah step putaran motor dengan rumus berikut ini: Jumlah step robot maju= jarakbola/s Dimana : - S = Konstanta jarak = 1.3 6. Besar sudut yang harus ditempuh robot untuk mencapai bola dengan jumlah step putaran motor dengan rumus berikut ini: Jumlah step robot berbelok = sudutbola/c Dimana : - C = Konstanta orientasi = 7 Format data serial yang dikirimkan oleh PC ke mikrokontroller untuk menggerakkan motor servo ialah berupa 8 bit. Data serial yang dikirimkan oleh PC ke mikrokontroller akan diinterpretasi oleh mikrokontroler sebagai perintah,

46 dengan : 00000001 = maju selangkah 00000010 = mundur selangkah 00000011 = kiri selangkah 00000100 = kanan selangkah