Rancang Bangun Sistem Informasi Lahan Parkir kendaraan Rodan Empat Di UNIKOM Menggunakan Image Processing

(1)

1 BAB I PENDAHULUAN

1.1 Latar Belakang

Pada zaman sekarang ini sudah banyak sekali tempat-tempat pusat perbelanjaan, rekreasi, rumah sakit, dan universitas yang selalu ramai dengan adanya pengunjung, bertambahnya jumlah mobil pribadi saat ini menimbulkan permintaan lahan parkir yang sangat luas. Tidak mudah untuk menemukan lahan parkir yang masih tersedia atau yang sudah terisi oleh mobil lainya, dan akibatnya harus berputar dan mencari lahan parkir yang masih kosong lainya. Dengan adanya kasus seperti ini sangat dibutuhkan informasi lahan parkir secara otomatis dan cerdas, dengan menggunakan metode image processing (pengolahan citra) yang dapat berperan sebagai pendeteksi lahan parkir yang masih tersedia dan yang sudah terisi pada gedung tersebut yang nantinya akan ditampilkan pada monitor yang sudah dipasang pada pintu masuk area parkir tersebut dalam bentuk denah parkir, dengan demikian calon pengguna area parkir dapat mengetahui lahan parkir yang masih tersedia.

1.2 Identifikasi Masalah

Adapun identifikasi masalah dalam pembuatan tugas akhir ini adalah sebagai berikut.

1. Peningkatan jumlah kendaraan beroda empat berbanding terbalik dengan prasarana lahan parkir.


(2)

2. Kurangnya informasi lahan parkir bagi calon pengguna lahan parkir untuk menemukan lahan parkir yang masih tersedia.

1.3 Rumusan Masalah

Berdasarkan permasalahan yang teridentifikasi di atas, maka dapat dirumuskan beberapa rumusan masalah sebagai berikut.

1. Bagaimana caranya membuat sistem yang mampu mendeteksi jumlah kendaraan dari gambar yang tertangkap oleh kamera.

2. Bagaimana cara memberikan informasi lahan parkir secara jelas kepada calon pengguna lahan parkir secara realtime.

1.4 Tujuan

Adapun tujuan dari pembuatan tugas akhir ini adalah sebagai berikut. 1. Untuk membuat sistem yang dapat mengetahui jumlah mobil yang sedang

mengisi lahan parkir dari gambar yang ditangkap oleh kamera.

2. Merancang sebuah sistem yang dapat membantu pengguna mobil untuk mencari lahan parkir yang tersedia.

3. Merancang sebuah sistem pada PC untuk memproses gambar menggunakan metode pengolahan citra sehingga dapat menentukan lahan kosong dari kamera yang telah dipasang pada tempat yang sudah ditentukan sedemikian rupa.


(3)

3

1.5 Batasan Masalah

Dalam Merancang dan membuat Tugas akhir ini, penulis membatasi beberapa batasan masalah sebagai berikut.

1. Sistem ini menggunakan program MATLAB.

2. Lahan parkir yang digunakan berupa miniatur dari Basement 1 UNIKOM. 3. Hanya menggunakan dua kamera saja.

4. Posisi kamera sudah ditetapkan sedemikian rupa.

5. Pengambilan gambar menggunakan webcam Logitech 270h. 6. Diasumsikan mobil parkir dalam keadaan paralel.

1.6 Metoda Penelitian

Metode penelitian yang digunakan dalam pembuatan sistem informasi lahan parkir ini dan penyusunan karya tulis ini adalah sebagai berikut.

1. Studi Literatur

Melakukan pencarian dan pengumpulan data serta informasi dari berbagai sumber baik dari buku maupun internet dan melakukan percakapan atau tanya jawab dengan para pakar/ahli yang berkaitan langsung dengan objek yang akan diteliti.

2. Perencanaan pembuatan sistem

Pada metode ini penulis mengerjakan beberapa kegiatan yang berkaitan dengan hardware dan software.

3. Pengujian

Setelah semua persiapan hardware dan software selesai, maka akan dilakukan pengujian untuk mengetahui kinerja dari alat tersebut.


(4)

4. Evaluasi

Melakukan evaluasi dari hasil yang sudah dilakukan selama dalam proses pembuatan alat tersebut.

5. Perbaikan dan Penyempurnaan

Dalam metode ini dilakukan perbaikan dan penyempurnaan bila masih terdapat kesalahan yang ada pada produk.

1.7 Sistematika Penulisan

Sistematika penulisan tugas akhir ini terdiri dari 5 (lima) BAB, dengan masing-masing bab sebagai berikut :

BAB I PENDAHULUAN

Berisi tentang latar belakang, identifikasi masalah, tujuan, rumusan masalah, batasan masalah, metode penelitian dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini menjelaskan tentang teori-teori pendukung yang berhubungan dengan pembuatan sistem tersebut serta perangkat pendukung yang digunakan.

BAB III PEMBUATAN DAN PERANCANGAN ALAT

Bab ini menjelaskan tentang proses atau alur pengerjaan ya serta tahapan-tahapan desain program yang dimasukan pada MATLAB.

BAB IV ANALISA DAN PEMBAHASAN

Bab ini membahas hasil dari pengujian dan menunjukan hasil analisa yang telah diperoleh.


(5)

5

BAB V PENUTUP

Bab ini berisi tentang kesimpulan dan saran-saran dari seluruh pengerjaan tugas akhir ini untuk pengembangn lebih lanjut.


(6)

6 2.1 Pengolahan Citra Digital

Pengolahan citra digital (digital image processing) adalah manipulasi dan interprestasi dari citra dengan bantuan komputer. Pengolahan citra biasanya digunakan untuk memperbaiki kualitas citra, melakukan proses penarikan informasi atau deskripsi objek yang terkandung dalam citra, dan melakukan kompresi atau reduksi data.

Berdasarkan dari jenisnya suatu citra dapat diklasifikasikan menjadi 2 jenis yaitu citra kontinu dan citra diskrit (citra digital). Citra kontinu diperoleh dari sistem optik yang menerima sinyal analog, seperti manusia dan kamera analog sedangkan citra diskrit (citra digital) dihasilkan melalui proses digitalisasi terhadap citra kontinu, adapun penjelasan lebih lanjut mengenai kedua jenis citra adalah sebagai berikut.

2.1.1 Citra Kontinu

Citra kontinu adalah fungsi intensitas 2 dimensi f(x,y), adapun x dan y adalah koordinat spasial, dan f pada titik (x,y) merupakan tingkat kecerahan (brightness) suatu citra pada suatu titik.

2.1.2 Citra Diskrit

Citra diskrit atau citra digital merupakan suatu fungsi kontinu dari intensitas cahaya atau derajat keabuan dalam bidang 2 dimensi yang dapat


(7)

7

direpresentasikan dengan f(x,y), dimana x dan y menyatakan koordinat posisi piksel itu berada, dan nilai f(x,y) menunjukan intensitas (derajat keabuan) piksel atau picture element pada koordinat tersebut. Piksel itu sendiri merupakan satuan atau elemen terkecil dari citra yang menempati suatu posisi yang menentukan resolusi citra tersebut.

Misalkan f merupakan sebuah citra digital 2 dimensi berukuran NxM. Maka representasi f dalam sebuah matriks dapat dilihat pada gambar dibawah ini, dimana f(0,0) berada pada sudut kiri atas dari matriks tersebut, sedangkan f(n-1,m-1) berada pada sudut kanan bawah.

Gambar 2.1 Resolusi Spasial

2.2 Piksel

Piksel adalah unsur gambar atau representasi sebuah titik terkecil dalam sebuah gambar grafis yang dihitung per inci. Piksel sendiri berasal dari akronim bahasa inggris Picture Element yang disingkat menjadi Pixel. Pada ujung tertinggi skala resolusi, mesin cetak gambar berwarna dapat menghasilkan hasil cetak yang memiliki lebih dari 2.500 titik per inci dengan pilihan 16 juta warna lebih untuk setiap inci, dalam istilah komputer berarti gambar seluas satu inci persegi yang bisa ditampilkan pada tingkat resolusi tersebut sepadan dengan 150 juta bit informasi.


(8)

2.2.1 Resolusi

Resolusi adalah jumlah pixel per daerahnya. Resolusi menentukan kualitas dari gambar. Jika suatu gambar diperbesar, maka resolusi gambar akan menjadi kecil dan gambar menjadi tidak tajam. Semakin tinggi resolusi gambar, maka akan semakin tinggi kemampuan perbesarannya.

2.2.2 Intensitas

Pixel yang membentuk suatu gambar memiliki warna-warna tertentu. Jumlah warna yang dimiliki suatu gambar disebut intensitas. Intensitas gambar mempunyai beberapa jenis istilah yaitu 256 warna, high color, 16 juta warna (true color), gradasi abu-abu (grayscale), dan hitam-putih (black&white). Semakin banyak jumlah warna dalam suatu gambar maka akan semakin bagus. Jumlah warna maksimum dari gambar dapat dilihat dari jenis (ekstensi) filenya. File gambar berekstensi .jpg memiliki jumlah warna maksimum 16 juta warna, file gambar berekstensi .gif memiliki jumlah warna maksimum 265 warna.

2.3 Warna pada Citra Digital

Warna adalah spektrum tertentu yang terdapat didalam suatu cahaya sempurna (berwarna putih). Nilai warna ditentukan oleh tingkat kecerahan maupun kesuraman warna. Nilai ini dipengaruhi oleh penambahan putih ataupun hitam. Kombinasi warna yang memberikan rentang paling lebar adalah red (R), green (G), dan blue (B). Ketiga warna tersebut merupakan warna pokok yang biasa disebut RGB. Warna lain dapat diperoleh dengan mencampurkan ketiga warna pokok tersebut dengan perbandingan tertentu. Setiap warna pokok


(9)

9

mempunyai intensitas sendiri dengan nilai maksimum 255 (8-bit). Misal warna kuning merupakan kombinasi dari warna merah dan hijau sehingga nilai RGB: 255 255 0.

2.3.1 Citra Warna (True Color)

Citra warna atau lebih dikenal dengan sebutan citra RGB (red, green, blue). Citra RGB adalah citra yang warna dasar penyusunnya adalah warna merah, hijau, dan biru. Warna selain itu adalah warna hasil perpaduan dari ketiga warna tersebut. Setiap piksel pada citra warna mewakili warna yang merupakan kombinasi tiga warna dasar, yaitu merah, hijau, dan biru (RGB = Red, Green, Blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte (nilai maksimum 255 warna), jadi satu piksel pada citra warna diwakili oleh 3 byte.

2.3.2 Citra Grayscale (Skala Keabuan)

Citra grayscale atau citra skala keabuan mempunyai kemungkinan warna antara hitam (minimal) dan putih (maksimal). Jumlah maksimum warna sesuai dengan bit penyimpanan yang digunakan. Jika pada skala keabuan 4bit, maka jumlah kemungkinan adalah 2 = 16 warna, dengan kemungkinan warna 0 (minimal) sampai 15 (maksimal). Banyaknya warna tergantung pada jumlah bit yang disediakan pada memori untuk menampung kebutuhan warna tersebut. Semakin besar jumlah bit warna yang disediakan memori, maka semakin halus gradasi warna yang terbentuk.

Beberapa teknik yang digunakan untuk mengubah warna citra RGB menjadi warna citra grayscale dapat dituliskan dengan persamaan sebagai berikut,


(10)

� = �+�+� ……….. (2.1) Persamaan (2.1) menggunakan nilai rata-rata dari ketiga layer matriks, persamaan (2.1) adalah standar persamaan grayscale pada televisi, baik sistem PAL (Phase Alternation Line) maupun NTSC (National Television System Committee).

2.3.3 Citra Biner (Monokrom)

Citra biner adalah citra yang setiap titik atau pikselnya bernilai 0 atau 1 dengan representasi warna hitam = 0, dan warna putih = 1. Untuk menyimpan kedua warna ini dibutuhkan 1 bit pada memori. Contoh dari susunan piksel pada citra monokrom adalah sebagai berikut :

Gambar 2.2 Susunan pixel pada citra monokrom Ada beberapa keuntungan dari citra biner yaitu :

 Memori yang digunakan menjadi lebih kecil dikarenakan nilai derajat keabuannya hanya membutuhkan representasi satu bit.

 Waktu yang digunakan untuk pengolahan datanya lebih cepat dibandingkan dengan citra grayscale, hal ini dikarenakan banyak operasi pada citra biner yang dilakukan sebagai operasi logika.


(11)

11

2.4 Thresholding

Thresholding adalah suatu metode yang digunakan untuk memisahkan antara obyek dan backgroundnya. Thresholding adalah teknik yang sederhana tapi efektif untuk segmentasi citra. Proses Thresholding sering disebut dengan proses binerisasi. Dalam proses thresholding terhadap sebuah citra, hasil yang diperoleh tidak selalu memuaskan dan sesuai dengan keinginan. Hal ini dikarenakan faktor penghambat seperti pencahayaan yang tidak merata atau citra yang kabur yang menyebabkan histogram tidak bisa dipartisi dengan baik. Citra hasil thresholding biasanya digunakan lebih lanjut untuk proses pengenalan obyek serta ekstraksi fitur. Metode thresholding secara umum dibagi menjadi dua, yaitu :

 Thresholding global :

Thresholding yang dilakukan dengan mempartisi histogram dengan menggunakan sebuah threshold (batas ambang) global T, yang berlaku untuk seluruh bagian pada citra.

 Thresholding adaptif :

Thresholding yang dilakukan dengan cara membagi citra menggunakan beberapa sub citra. Lalu pada setiap sub citra, segmentasi dilakukan dengan menggunakan threshold yang berbeda.

2.5 Cropping

Cropping adalah proses penghapusan beberapa bagian sudut dari suatu gambar untuk mengambil sebagian isi dari gambar, gunanya untuk memperoleh hasil yang diinginkan.


(12)

Gambar 2.3a Metode cropping Gambar 2.3b Cropping pada MATLAB Gambar 2.3a adalah metode cropping dan Gambar 2.3b adalah cara melakukan cropping pada MATLAB. pada Gambar 2.3b 104 adalah x dan 31 adalah y, maka 5,5 adalah ∆x dan ∆y.

2.6 Histrogram

Histogram merupakan suatu bagan yang menampilkan distribusi intensitas dalam indeks atau intensitas warna citra. Matlab menyediakan fungsi khusus untuk pengolahan histogram citra, yaitu imhist(). Fungsi imhist untuk menghitung jumlah piksel-piksel suatu citra untuk setiap jarak warna (0-255). Fungsi imhist ini hanya dirancang untuk menampilkan histogram citra dengan format abu-abu (grayscale). Oleh karena itu, agar bisa menampilkan histogram true color (RGB) maka perlu memodifikasi fungsi imhist.

2.7 Edge Detection

Edge Detection (deteksi tepi) pada suatu citra digital adalah suatu proses yang menghasilkan tepi-tepi dari obyek-obyek citra, tujuannya adalah:

 Untuk menandai bagian yang menjadi detail citra.

 Untuk memperbaiki detail dari citra yang kabur, yang terjadi karena error atau adanya efek dari proses akuisi citra.


(13)

13

Suatu titik (x,y) dikatakan sebagai tepi (edge) dari suatu citra bila titik tersebut mempunyai perbedaan yang tinggi dengan tetangganya.

Gambar 2.4 Proses deteksi tepi citra

Tepian dari suatu citra berada pada titik yang memiliki perbedaan intensitas yang lebih tinggi. Berdasarkan prinsip-prinsip filter pada citra, maka tepian suatu citra dapat diperoleh menggunakan High Pass Filter (HPF), yang mempunyai karakteristik,

∑ ∑ , = 0………..(2.2)

Ada beberapa macam metode yang sering digunakan dalam proses deteksi tepi, diantaranya adalah metode Robert, metode Prewitt, metode Sobel dan metode Canny. Pada penelitian ini metode yang digunakan adalah metode Background subtraction.

Ada tiga macam tepi yang terdapat di dalam citra digital. Ketiganya adalah:

1. Tepi curam Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°.


(14)

2. Tepi landai Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan.

3. Tepi yang mengandung derau (noise) Umumnya tepi yang terdapat pada aplikasi computer vision mengandung derau. Operasi peningkatan kualitas citra (image enhancement) dapat dilakukan terlebih dahulu sebelum pendeteksian tepi.

Gambar 2.5 Jenis-jenis tepi

2.7.1 Background Subtraction

Background Subtraction atau yang juga dikenal sebagai Foreground Detection, adalah salah satu teknik pada bidang pengolahann citra dan computer vision yang bertujuan untuk mendeteksi/mengambil foreground dari background untuk diproses lebih lanjut (seperti pada proses object recognition dll). Background subtraction merupakan metode yang umumnya digunakan untuk mendeteksi benda bergerak pada video dari kamera statis (stationary camera).


(15)

15

Proses deteksi benda bergerak dengan metode background subtraction ini didasarkan pada perbedaan antara background referensi dengan frame.

2.7.2 Tahapan Proses Pendeteksian Tepi

Berikut adalah beberapa tahapan dalam pendeteksian tepi : 1. Image Acquisittion

Akuisisi citra merupakan tahap awal pada pendeteksi tepi, pada tahap ini citra akan diambil/ditangkap menggunakan kamera. Kamera yang umum digunakan pada tahapan ini dapat berupa kamera analog atau digital. Untuk citra yang diambil dengan menggunakan kamera analog perlu dilakukan konversi kedalam bentuk citra digital.

2. Pra Processing (preprocessing)

Pada tahap ini dilakukan proses grayscale terhadap citra yang akan dideteksi tepi citranya.

 Proses grayscalling : adalah proses untuk mengubah gambar yang memiliki warna menjadi gambar yang memiliki tingkat warna ke abu-abuan.

 Gambar yang akan di-gray-scalling nilai tiap titik akan disamakan dengan nilai red-green-bluenya sehingga untuk setiap titik hanya memiliki 1 nilai saja, yang disebut nilai gray-levelnya

 Pada dasarnya proses ini dilakukan dengan meratakan nilai pixel dari 3 nilai RGB menjadi 1 nilai


(16)

3. Segmentasi

Pada tahap ini citra yang telah diubah menjadi grayscale akan dideteksi tepi citranya menggunakan analisis sobel.

4. PostProcessing

Pada tahapan ini akan dihasilkan citra yang berupa citra yang hanya terdiri dari gambar hitam putih yang memiliki tepi citra.

2.8 Unsur-unsur Citra Digital

Terdapat unsur-unsur dasar yang terkandung dalam citra digital, diantaranya adalah sebagai berikut.

2.8.1 Kecerahan (Intensitas Cahaya)

Kecerahan disebut juga sebagai intensitas cahaya. Kecerahan pada suatu titik (piksel) di dalam suatu citra sebenarnya adalah intensitas rata-rata dari suatu area yang melingkupinya.

2.8.2 Kontras

Kontras menyatakan sebaran terang (lightness) dan gelap (darkness) dalam suatu citra. Citra dengan kontras rendah dicirikan oleh sebagian besar komposisi citranya adalah terang atau sebagian besar gelap. Citra dengan kontras yang baik, komposisi gelap dan terangnya tersebar secara merata.


(17)

17

2.8.3 Kontur

Kontur adalah keadaan yang ditimbulkan oleh perubahan intensitas pada pixel-pixel yang bertetangga. Karena adanya perubahan intensitas inilah, maka tepi-tepi (edge) objek pada citra dapat dideteksi.

2.8.4 Warna (color)

Warna adalah persepsi yang dirasakan oleh sistem visual manusia terhadap panjang gelombang cahaya yang dipantulkan oleh objek. Setiap warna mempunyai panjang gelombang ( ) yang berbeda-beda. Warna yang diterima oleh sistem visual manusia (mata) merupakan hasil kombinasi cahaya dengan panjang gelombang yang berbeda-beda. Kombinasi warna yang memberikan rentang warna yang paling lebar adalah red (R), green(G), dan blue(B).

2.8.5 Bentuk (shape)

Bentuk adalah properti intrinsik dari objek tiga dimensi. Bentuk merupakan properti intrinsik utama untuk sistem visual manusia karena manusia lebih sering menginterpretasikan suatu objek berdasarkan bentuknya daripada elemen lainnya.

2.8.6 Tekstur

Tekstur dicirikan sebagai distribusi spasial dari derajat keabuan di dalam sekumpulan pixel-pixel yang bertetangga. Sehingga, tekstur tidak dapat didefinisikan untuk sebuah pixel. Tekstur merupakan karakteristik untuk menganalisa permukaan berbagai jenis citra objek.


(18)

2.9 Mikrokontroller Arduino Mega

Arduino Mega 2560 adalah merupakan board mikrokontroler berbasis ATMega2560. Modul ini memiliki 54 digital input/output di mana 14 digunakan untuk PWM output dan 16 digunakan sebagai analog input, 4 untuk UART, 16 MHz osilator kristal, koneksi USB, power jack, ICSP Header, dan tombol reset. Modul ini memiliki segalanya yang dibutuhkan untuk memrogram mikrokontroler seperti kabel USB dan sumber daya melalui adaptor ataupun baterai.

Gambar 2.6 Arduino Mega

Development board Arduino Mega 2560 R3 telah dilengkapi dengan polyfuse yang dapat direset untuk melindungi port USB komputer/laptop anda dari konsleting atau arus berlebih. Meskipun kebanyakan komputer telah memiliki perlindungan port tersebut didalamnya namun sikring pelindung pada Arduino Mega memberikan lapisan perlindungan tambahan yang membuat anda bisa dengan tenang menghubungkan Arduino ke komputer anda. Jika lebih dari 500mA ditarik pada port USB tersebut, sirkuit proteksi akan secara otomatis memutuskan hubungan, dan akan menyambung kembali ketika batasan aman telah kembali.


(19)

19

Tabel 2.1 Deskripsi Arduino Mega Mikrokontroller ATmega2560 Tegangan Kerja 5V

Tegangan Masukan (Rekomendasi) 7-12V Tegangan Masukan (Batas) 6-20V

I/O 54 pin (14 pin untuk PWM)

Arus Kerja 50mA

Flash Memory 256Kb

Bootloader SRAM 8Kb

EEPROM 4Kb

Kecepatan Kerja 16MHz

2.9.1 Perangkat I/O

Arduino Mega 2560 memiliki jumlah pin terbanyak dari semua papan pengembangan Arduino. Mega 2560 memiliki 54 buah digital pin yang dapat digunakan sebagai input atau output, dengan menggunakan fungsi pinMode(), digitalWrite(), dan digital(Read). Pin-pin tersebut bekerja pada tegangan 5V, dan setiap pin dapat menyediakan atau menerima arus sebesar 20mA, dan memiliki tahanan pull-up sekitar 20-50k ohm (secara default dalam posisi disconnect). Nilai maksimum adalah 40mA, yang sebisa mungkin dihindari untuk menghindari kerusakan chip mikrokontroller

Beberapa pin memiliki fungsi khusus yaitu

Serial, memiliki 4 serial yang masing-masing terdiri dari 2 pin. Serial 0 : pin 0 (RX) dan pin 1 (TX). Serial 1 : pin 19 (RX) dan pin 18 (TX). Serial 2 : pin 17 (RX) dan pin 16 (TX). Serial 3 : pin 15 (RX) dan pin 14 (TX). RX digunakan untuk menerima dan TX untuk transmit data serial TTL. Pin 0 dan pin 1 adalah pin yang digunakan oleh chip USB-to-TTL ATmega16U2


(20)

External Interrups, yaitu pin 2 (untuk interrupt 0), pin 3 (interrupt 1), pin 18 (interrupt 5), pin 19 (interrupt 4), pin 20 (interrupt 3), dan pin 21 (interrupt 2). Dengan demikian Arduino Mega 2560 memiliki jumlah interrupt yang cukup melimpah : 6 buah. Gunakan fungsi attachInterrupt() untuk mengatur interrupt tersebut.

PWM: Pin 2 hingga 13 dan 44 hingga 46, yang menyediakan output PWM 8-bit dengan menggunakan fungsi analogWrite()

SPI : Pin 50 (MISO), 51 (MOSI), 52 (SCK), dan 53 (SS) mendukung komunikasi SPI dengan menggunakan SPI Library

LED : Pin 13. Pada pin 13 terhubung built-in led yang dikendalikan oleh digital pin no 13. Set HIGH untuk menyalakan led, LOW untuk memadamkan nya.

TWI : Pin 20 (SDA) dan pin 21 (SCL) yang mendukung komunikasi TWI dengan menggunakan Wire Library

Arduino Mega 2560 R3 memiliki 16 buah input analog. Masing-masing pin analog tersebut memiliki resolusi 10 bits (jadi bisa memiliki 1024 nilai). Secara default, pin-pin tersebut diukur dari ground ke 5V, namun bisa juga menggunakan pin AREF dengan menggunakan fungsi analogReference(). Beberapa in lainnya pada board ini adalah :

 AREF. Sebagai referensi tegangan untuk input analog.

Reset. Hubungkan ke LOW untuk melakukan reset terhadap mikrokontroller. Sama dengan penggunaan tombol reset yang tersedia.


(21)

21

2.9.2 Catu Daya

Board Arduino Mega 2560 dapat ditenagai dengan power yang diperoleh dari koneksi kabel USB, atau via power supply eksternal. Pilihan power yang digunakan akan dilakukan secara otomatis

External power supply dapat diperoleh dari adaptor AC-DC atau bahkan baterai, melalui jack DC yang tersedia, atau menghubungkan langsung GND dan pin Vin yang ada di board. Board dapat beroperasi dengan power dari external power supply yang memiliki tegangan antara 6V hingga 20V. Namun ada beberapa hal yang harus anda perhatikan dalam rentang tegangan ini. Jika diberi tegangan kurang dari 7V, pin 5V tidak akan memberikan nilai murni 5V, yang mungkin akan membuat rangkaian bekerja dengan tidak sempurna. Jika diberi tegangan lebih dari 12V, regulator tegangan bisa over heat yang pada akhirnya bisa merusak pcb. Dengan demikian, tegangan yang di rekomendasikan adalah 7V hingga 12V

Beberapa pin power pada Arduino Mega :  GND. Ini adalah ground atau negatif.

Vin. Ini adalah pin yang digunakan jika anda ingin memberikan power langsung ke board Arduino dengan rentang tegangan yang disarankan 7V - 12V

Pin 5V. Ini adalah pin output dimana pada pin tersebut mengalir tegangan 5V yang telah melalui regulator

3V3. Ini adalah pin output dimana pada pin tersebut disediakan tegangan 3.3V yang telah melalui regulator


(22)

IOREF. Ini adalah pin yang menyediakan referensi tegangan mikrokontroller. Biasanya digunakan pada board shield untuk memperoleh tegangan yang sesuai, apakah 5V atau 3.3V

2.9.3 Komunikasi

Arduino Mega R3 memiliki beberapa fasilitas untuk berkomunikasi dengan komputer, berkomunikasi dengan Arduino lainnya, atau dengan mikrokontroller lain nya. Chip Atmega2560 menyediakan komunikasi serial UART TTL (5V) yang tersedia di pin 0 (RX) dan pin 1 (TX). Chip ATmega16U2 yang terdapat pada board berfungsi menterjemahkan bentuk komunikasi ini melalui USB dan akan tampil sebagai Virtual Port di komputer. Firmware 16U2 menggunakan driver USB standar sehingga tidak membutuhkan driver tambahan.

2.9.4 Komunikasi Data

Arduino Mega memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer, Arduino lain, atau mikrokontroler lain. ATmega328P ini menyediakan UART TTL (5V) komunikasi serial, yang tersedia pada pin digital 0 (RX) dan 1 (TX). Sebuah ATmega16U2 pada saluran board ini komunikasi serial melalui USB dan muncul sebagai com port virtual untuk perangkat lunak pada komputer. Firmware Arduino menggunakan USB driver standar COM, dan tidak ada driver eksternal yang dibutuhkan. Namun, pada windows, file .Inf diperlukan. Perangkat lunak Arduino termasuk monitor serial yang memungkinkan data sederhana yang akan dikirim ke board Arduino. RX dan TX LED di board akan berkedip ketika data sedang dikirim melalui chipUSB-to-serial dan koneksi USB ke komputer.


(23)

23

ATmega328P ini juga mendukung komunikasi I2C (TWI) dan SPI. Fungsi ini digunakan untuk melakukan komunikasi interface pada sistem.

2.9.5 Programming

Bahasa pemograman pada mikrokontrollernya memiliki bahasa sendiri yaitu bahasa Arduino, dimana bahasa Arduino ini adalah single board microntroller (mikrokontroler dalam satu papan rangkaian) yang bersifat open source, merupakan turunan dari Platform Wiring dan dirancang agar pembuatan proyek mikrokontroler menjadi lebih mudah dilakukan oleh semua kalangan. Sistem Arduino adalah berupa hardware menggunakan chip Atmel AVR, software yang berupa bahasa pemrograman standar C, serta bootloader yang dipasang pada chip utama.

Arduino Mega dapat diprogram dengan perangkat lunak Arduino, pertama pilih Arduino Mega dari Tool lalu sesuaikan dengan mikrokontroler yang digunakan. ATmega2560 pada Mega Arduino memiliki bootloader yang memungkinkan Anda untuk meng-upload program baru tanpa menggunakan downloader eksternal. Komunikasi menggunakan protokol dari bahas C. Sistem dapat menggunakan perangkat lunak FLIP Atmel (Windows) atau programmer DFU (Mac OS X dan Linux) untuk memuat firmware baru. Atau Anda dapat menggunakan header ISP dengan programmer eksternal.


(24)

(25)

25 BAB III

PERANCANGAN ALAT DAN PEMBUATAN SOFTWARE

Dalam bab ini akan membahas mengenai perancangan dan realisasi sistem yang akan dibuat menggunakan MATLAB dan hardware yang digunakan merupakan miniatur tahap awal dari lahan parkir UNIKOM.

3.1 Perancangan Sistem

Perancangan dan pembuatan alat ini secara umum terdiri dari tiga bagian utama, yaitu masukan (input), proses (process), dan keluaran (output). Pada Gambar 3.1 dibawah ini terlihat bahwa setiap bagian dari sistem ini memiliki fungsi yang berbeda, namun akan saling berkaitan dalam pengontrolan keluaranya (output).

Gambar 3.1 Blok Diagram Sistem

Pada gambar diatas memperlihatkan bagian-bagian perancangan sistem pengolahan citra untuk sistem informasi lahan parkir ini, yang meliputi beberapa bagian penting, yaitu :


(26)

Masukan (input) terdiri dari dua buah masukan, yaitu kamera 1 dan kamera 2 yang menghasilkan capture 1 dan capture 2. Kedua masukan ini juga disebut sebagai masukan awal sebelum dilakukan proses pengolahan citra yang akan dilakukan dengan software MATLAB untuk mendeteksi jumlah kendaraan dari masing-masing lahan yang tersedia.

Bagian Proses

Pada bagian ini hasil capture dari kedua buah kamera diolah menggunakan MATLAB untuk mendeteksi jumlah kendaraan. Mendeteksi jumlah kendaraan dilakukan dengancara membandingkan background dengan hasil capture dan dilanjutkan ke proses segmentasi.

Bagian Keluaran (Output)

Bagian keluaran (output) ini merupakan hasil dari beberapa masukan (input) yang telah diproses pada bagian proses yang sudah dijelaskan sebelumnya. Keluaran yang dihasilkan berupa indikator led yang merupakan kondisi dari lahan parkir tersebut, untuk menandakan lokasi lahan parkir yang tersedia dan jumlah dari lahan parkir yang tersedia. Dalam pengerjaan Tugas Akhir ini dibutuhkan suatu simulator dan sebuah miniatur lahan parkir yang telah disesuaikan dengan Basement 1 UNIKOM. Simulator yang digunakanadalah MATLAB R2012a seperti yang terlihat pada Gambar 3.2 dibawah ini.


(27)

27

Gambar 3.2 Tampilan Simulasi di MATLAB

Miniatur atau prototype ini telah disesuaikan dengan Basement 1 Unikom dengan skala 1:50. Dalam prototype ini terdapat webcam USB sebagai alat untuk mengambil gambar yang berupa masukan (input).

Gambar 3.3 Tampilan Prototype

Hasil capture akan diproses menggunakan MATLAB untuk mendeteksi benda dan mengetahui jumlah kendaraan yang sedang berada pada lahan parkir yang tersedia, yang nantinya keluaranya berupa led sebagai indikator letak lahan parkir yang tersedia. Led indikator ini yang dihubungkan dengan menggunakan komunikasi serial ke Arduino Uno R3.


(28)

3.2 Perancangan Software

Hasil capture dari kamera 1 dan kamera 2 merupakan masukan awal untuk melanjutkan ke proses selanjutnya. Hasil dari capture ini adalah citra asli yang nantinya akan diproses untuk mendeteksi dan mengetahui berapa jumlah objek dari hasil capture tersebut. Untuk mengetahui jumlah kendaraan pada lahan parkir yang sudah disediakan dilakukan beberapa pemrosesan yaitu, konversi citra asli ke grayscale, konversi citra grayscale ke biner, pemisahan objek dengan latar menggunakan background subtraction, proses segmentasi, dan penentuan jumlah kendaraan.

3.2.1 Konversi Citra Asli ke Grayscale

Didalam tahap ini hasil capture yang merupakan citra asli akan dikonversikan ke dalam bentuk warna yang lain yaitu mode warna grayscale, yang bertujuan untuk menyederhanakan informasi warna yang terdapat pada ketiga layer matriks warna yaitu Red, Green, dan Blue (RGB) menjadi satu layer yang bernilai dari perkalian ketiga layer matriks warna tersebut dengan konstanta atau dengan cara melakukan rata-rata dari ketiga matriks.


(29)

29

Hasil capture yang berupa citra asli (gambar 3.4a) dirubah menjadi format grayscale (gambar 3.4b) dan mengalami perubahan nilai. Citra grayscale disimpan dalam format 8bit untuk setiap sample piksel, yang memungkinkan sebanyak 256 intensitas. Untuk mengubah citra berwarna yang mempunyai nilai matrik masing-masing red (R), green (G) dan blue (B) menjadi citra grayscale dengan nilai X, maka konversi dapat dilakukan dengan mengambil rata-rata dari nilai R, G dan B.

Gambar 3.5 Gambar Visualisasi 256 Aras Keabuan

3.2.2 Konversi Citra Grayscale ke Biner

Citra biner (binary image) adalah citra digital yang hanya memiliki 2 kemungkinan warna, yaitu hitam dan putih. Citra biner disebut juga dengan citra B&W (Black&White) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap piksel dari citra biner yaitu nilai 1 dan 0.

Gambar 3.6a Citra Grayscale Gambar 3.6b Citra Biner Perubahan format grayscale (Gambar 3.6a) menjadi format biner (Gambar 3.6b) mengalami perubahan nilai. Pembentukan citra biner memerlukan nilai batas keabuan yang akan digunakan sebagai nilai patokan. Piksel dengan


(30)

derajat keabuan lebih besar dari nilai batas akan diberi nilai 1 dan sebaliknya piksel dengan derajat keabuan lebih kecil dari nilai batas akan diberi nilai 0.

Gambar 3.7 Citra biner yang terdiri dari nilai 1 dan 0

3.2.3 Pemisahan Objek dengan Latar Menggunakan Metode Background Subtraction

Metode yang sering digunakan untuk segmentasi moving region secara real time adalah background subtraction yang merupakan threshold atau batas kesalahan antara gambar tanpa adanya objek yang bergerak (background) dengan gambar itu sendiri. Background image direpresentasikan sebagai scene atau adegan tanpa adanya objek yang bergerak. Background image harus selalu diperbaharui sehingga dapat beradapatasi dengan perubahan kondisi seperti perubahan pencahayaan. Perubahaan pencahayaan akan mempengaruhi proses pendeteksian objek. Pada background subtraction, gambar saat ini dibandingkan dengan gambar referensi untuk mendeteksi adanya perubahan pixel. Gambar referensi sebaiknya disesuaikan dengan kondisi pencahayaan dari suatu scene atau kejadian.


(31)

31

Gambar 3.8 Proses dari background subtraction

Dengan melakukan hal ini maka akan mempermudah untuk mendeteksi jumlah kendaraan. Hal ini dikarenakan nilai dari setiap piksel pada gambar yang sudah melalui proses ini sangatlah tegas, sehingga sulit untuk mendeteksi nilai bernilai 1 dan bernilai 0.

3.2.4 Segmentasi

Segmentasi merupakan sebuah proses untuk memisahkan sebuah objek dari background atau latar, sehingga objek tersebut dapat diproses untuk mendeteksi jumlah objek yang ada bersama background atau latar. Proses segmentasi dalam tugas akhir ini adalah hanya sebagai window atau segment untuk melihat kendaraan, dimana 1 window atau segment hanya untuk melihat 1 kendaraan. Berarti dalam 1 gambar pada kamera 1 terdapat 9 window, dan pada kamera 2 terdapat 7 window sehingga maksimum jumlah kendaraan yang terhitung ada sebanyak 16 kendaraan.


(32)

3.2.5 Pendeteksian Jumlah Kendaraan

Penentuan jumlah kendaraan ditentukan berdasarkan perbandingan background dengan hasil capture yang sudah ada objeknya dengan proses image processing.

Gambar 3.9 Background, Citra Asli, dan Hasil Deteksi

Jumlah objek yang terapat pada hasil capture sebanyak 3 buah, setelah melakukan proses segmentasi dan background subtraction maka background dibandingkan dengan hasil capture maka jumlah yang terdeteksi sebanyak 3 buah.

3.3 Rangkaian Lampu Indikator Lahan Parkir

Led berwarna hijau digunakan sebagai indikator lahan parkir yang berjumlah sebanyak 16 buah yang mewakili 16 lahan parkir. Apabila led berwana hijau pada salah satu lahan parkir mati maka lahan tersebut sudah terisi oleh kendaraan, dan apabila sebaliknya maka artinya lahan parkir tersebut kosong.


(33)

33

Masukan untuk led ini berupa data yang diterima oleh Arduino Uno dari komunikasi serial. Kondisi pada saat penyalaan led akan sesuai dengan axes yang ada pada pemrograman MATLAB.

3.4 Perancangan Perangkat Lunak

Sistem informasi lahan parker ini menggunakan aplikasi MATLAB 2012a yang terhubung dengan komunikasi serial ke Arduino untuk menyalakan output led sebagai informasi lahan parker yang tersedia dan juga sebagai informasi lokasi lahan parker tersebut. Flowchart dari sistem ini dapat dilihat pada Gambar 3.11 dibawah ini.


(34)

Pada saat program sudah berjalan yang pertama dilakukan adalah inisialisasi kedua buah kamera, lalu masing-masing kamera tersebut mengambil gambar (capture). hasil dari capture ini dirubah kedalam format grayscale, hal ini dilakukan agar mempermudah nantinya ketika dirubah kedalam format biner. Dengan format citra yang sudah dirubah kedalam format biner, dilakukan Background Subtraction untuk memisahkan benda pada latar. Background Subtraction membandingkan gambar saat ini dengan gambar referensi atau latarnya fungsinya untuk mendeteksi adanya berubahan pixel. Setelah itu dilakukan proses crop yang bertujuan untuk membagi citra menjadi frame, hal ini bertujuan untuk mempermudah penghitungan objek dan penentuan lokasi dimana lahan parkir yang tersedia dan tidak. Berikut ini adalah langkah-langkah dari proses pengolahan citra

Gambar 3.12 Langkah-langkah dari proses pengolahan citra

Setelah mendapatkan data jumlah kendaraan dan lokasi kendaraan tersebut maka akan dikirim melalui komunikasi serial yang telah terhubung ke Arduino untuk menyalakan led sebagai informasi akhirnya.


(35)

35 BAB IV

PENGUJIAN DAN ANALISA

Pada bab ini akan diuraikan tentang proses pengujian dari sistem yang akan dibuat. Pengujian sistem ini akan dilakukan dengan 2 (dua) cara, yaitu menggunakan pengujian secara parsial dan pengujian secara keseluruhan.

4.1 Pengujian Sistem Secara Parsial

Pengujian secara parsial fungsinya untuk mengetahui proses dari masing-masing sistem yang akan dibuat nantinya. Terdapat beberapa blok sistem yang akan dibuat, yaitu:

1. pemasangan kamera USB dan pengambilan gambar (capture),

2. image processing untuk mendeteksi jumlah kendaraan dan lokasinya, 3. hubungan komunikasi serial dengan Arduino dan led indikator,

4.1.1 Pemasangan Kamera USB dan Pengambilan Gambar (Capture)

Tahap merupakan awal untuk membuat pengembangan alogaritma pengolahan citra untuk sistem informasi lahan parker ini. Masing-masing kamera sudah dipasang sedemikian rupa sehingga mendapatkan sudut yang baik dimana dari sudut tersebut terlihat jelas letak dari keseluruhan lahan parker yang berjumlah 16 ini.


(36)

Gambar 4.1 Letak Kamera Pada Lahan parkir

Pengambilan gambar (capture) sangat dibutuhkan karena sebagai data awalan yang nantinya akan diolah menggunakan MATLAB.

4.1.2 Image Processing Untuk Mendeteksi Jumlah Kendaraan dan Lokasinya

Hasil akhir dari pengolahan citra ini merupakan jumlah kendaraan yang dideteksi dari hasil capture yang telah dicrop secara otomatis guna membaginya kedalam beberapa bagian agar mudah untuk mengetahui lokasi dari lahan yang terdeteksi kendaraan. Berikut hasil pendeteksian kendaraan dari masing-masing hasil capture.

Tabel 4.1 Pendeteksian dengan Jumlah Kendaraan 0

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya


(37)

37

Sangat diperlukan untuk melakukan percobaan dengan tidak menggunakan kendaraan karena posisi awal dari parkiran mulai kosong hingga terisi penuh nantinya, dan percobaan ini dengan melakukan 1 kali percobaan untuk pendeteksian dengan jumlah kendaraan 0 memiliki tingkat keberhasilan sebanyak 100% dan error yang diperoleh sebesar 0%.

Tabel 4.2 Pendeteksian dengan Jumlah Kendaraan 1

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 1 YA

2 1 YA


(38)

4 1 YA

5 1 YA

6 1 YA

7 1 YA

8 1 YA


(39)

39

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 1 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

Tabel 4.3 Pendeteksian dengan Jumlah Kendaraan 2

10 1 YA

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 2 YA

2 2 YA


(40)

4 2 YA

5 2 YA

6 2 YA

7 2 YA

8 2 YA


(41)

41

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 2 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

Tabel 4.4 Pendeteksian dengan Jumlah Kendaraan 3

10 2 YA

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 3 YA

2 3 YA


(42)

4 3 YA

5 3 YA

6 3 YA

7 3 YA

8 3 YA


(43)

43

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 3 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

Tabel 4.5 Pendeteksian dengan Jumlah Kendaraan 6

10 3 YA

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 4 YA

2 4 YA


(44)

4 4 YA

5 4 YA

6 4 YA

7 4 YA

8 4 YA


(45)

45

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 4 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

. Tabel 4.6 Pendeteksian dengan Jumlah Kendaraan 5

10 4 YA

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 5 YA

2 5 YA


(46)

4 5 YA

5 5 YA

6 5 YA

7 5 YA

8 5 YA

9 5 YA


(47)

47

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 5 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

Tabel 4.7 Pendeteksian dengan Jumlah Kendaraan 6

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 6 YA

2 6 YA

3 6 YA

4 6 YA


(48)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 6 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 6 YA

7 6 YA

8 6 YA

9 6 YA


(49)

49

Tabel 4.8 Pendeteksian dengan Jumlah Kendaraan 7

Capture Hasil Capture dan

Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 7 YA

2 7 YA

3 7 YA

4 7 YA

5 7 YA


(50)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 7 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

7 7 YA

8 7 YA

9 7 YA


(51)

51

Tabel 4.9 Pendeteksian dengan Jumlah Kendaraan 8

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 8 YA

2 8 YA

3 8 YA

4 8 YA


(52)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 8 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 8 YA

7 8 YA

8 8 YA

9 8 YA


(53)

53

Tabel 4.10 Pendeteksian dengan Jumlah Kendaraan 9

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 9 YA

2 9 YA

3 9 YA

4 9 YA


(54)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 9 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 9 YA

7 9 YA

8 9 YA

9 9 YA


(55)

55

Tabel 4.11 Pendeteksian dengan Jumlah Kendaraan 10

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB Jumlah Sebenarnya

Apakah Lokasi

Benar

1 10 YA

2 10 YA

3 10 YA

4 10 YA


(56)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 10 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 10 YA

7 10 YA

8 10 YA

9 10 YA


(57)

57

Tabel 4.12 Pendeteksian dengan Jumlah Kendaraan 11

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB Jumlah Sebenarnya

Apakah Lokasi

Benar

1 11 YA

2 11 YA

3 11 YA

4 11 YA


(58)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 11 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 11 YA

7 11 YA

8 11 YA

9 11 YA


(59)

59

Tabel 4.13 Pendeteksian dengan Jumlah Kendaraan 12

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 12 YA

2 12 YA

3 12 YA

4 12 YA


(60)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 12 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 12 YA

7 12 YA

8 12 YA

9 12 YA


(61)

61

Tabel 4.14 Pendeteksian dengan Jumlah Kendaraan 13

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 13 YA

2 13 YA

3 13 YA

4 13 YA


(62)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 13 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 13 YA

7 13 YA

8 13 YA

9 13 YA


(63)

63

Tabel 4.15 Pendeteksian dengan Jumlah Kendaraan 14

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB

Jumlah Sebenarnya

Apakah Lokasi

Benar

1 14 YA

2 14 YA

3 14 YA

4 14 YA


(64)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 14 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 14 YA

7 14 YA

8 14 YA

9 14 YA


(65)

65

Tabel 4.16 Pendeteksian dengan Jumlah Kendaraan 15

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB Jumlah Sebenarnya

Apakah Lokasi

Benar

1 15 YA

2 15 YA

3 15 YA

4 15 YA


(66)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 15 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 15 YA

7 15 YA

8 15 YA

9 15 YA


(67)

67

Tabel 4.17 Pendeteksian dengan Jumlah Kendaraan 16

Capture Hasil Capture dan Lokasi Jumlah Pada MATLAB Jumlah Sebenarnya

Apakah Lokasi

Benar

1 16 YA

2 16 YA

3 16 YA

4 16 YA


(68)

Hasil dari 10 kali percobaan untuk pendeteksian kendaraan dan lokasi dimana kendaraan tersebut berjumlah 16 buah. � % = maka tingkat keberhasilanya sebanyak 100% dan error yang diperoleh sebesar 0%.

6 16 YA

7 16 YA

8 16 YA

9 16 YA


(69)

69

Dari pengujian image processing di atas dapat dilihat bahwa seberapa baik dan akuratnya dari pendeteksian kendaraan yang dihasilkan. Dengan melakukan 10 kali percobaan dari masing-masing jumlah kendaraan dan lokasi yang berbeda-beda, maka hasil dari pengujian yang didapat juga berbeda-beda. Berikut adalah tingkat keberhasilan dan error dari hasil deteksi kendaraan.

Tabel 4.18 Tingkat Keberhasilan Deteksi Kendaraan

Jumlah Kendaraan Tingkat Keberhasilan (%) Error (%)

0 100 0

1 100 0

2 100 0

3 100 0

4 100 0

5 100 0

6 100 0

7 100 0

8 100 0

9 100 0

10 100 0

11 100 0

12 100 0

13 100 0

14 100 0

15 100 0

16 100 0

Rata-rata Tingkat Keberhasilan = 100% Error % = 0%

Dari table hasil pendeteksian di atas terlihat bahwa tingkat keakuratan dalam mendeteksi sebuah benda semuanya 100% maka tingkat error yang dihasilkan sebesar 0% apabila intensitas cahayanya stabil, posisi kendaraan yang teratur pada lahan yang sudah disediakan.


(70)

4.1.3 Hubungan Komunikasi Serial dengan Arduino dan led Indikator Tahapan ini merupakan tahapan terakhir dalam pembuatan sistem informasi lahan parker kendaraan roda empat di unikom menggunakan image processing ini. Program MATLAB 2012a yang dikirim ke Arduino Mega melalui komunikasi serial adalah berupa data dari kondisi-kondisi penyalaan led indikator pada papan pengumuman informasi parkir. Berikut data yang akan dikirim ke Arduino melalui MATLAB.

ser=serial('COM3'); %Inisialisasi komunikasi serial pada PORT3 fopen(ser);

if re (1,6)>0.1;

axes(handles.axes6) set(gca,'Color','g')

fwrite(ser,'g'); %mengirim data 'g'

else

axes(handles.axes6) set(gca,'Color','r')

fwrite(ser,'h'); %mengirim data 'h' end

fclose(ser);

Diatas adalah penggalan dari program MATLAB yang fungsinya untuk merubah warna pada axes6 menjadi warna merah apabila mendeteksi objek di


(71)

71

frame yang sudah ditentukan dan apabila tidak mendeteksi objek maka merubah warna axes6 menjadi warna hijau, dan juga dihubungkan dengan komunikasi serial untuk menyalakan led pada Arduino dengan mengirim data “h” apabila mendeteksi kendaraan dan mengirim data “g” apabila tidak mendeteksi objek. Berikut ini keterkaitan penyalaan led pada Arduino.

void setup() { Serial.begin(9600); pinMode(47, OUTPUT); }

void loop() {

if (Serial.available() > 0) { byte dataku = Serial.read(); if (dataku == 'g'){

digitalWrite(47, HIGH);} if (dataku == 'h'){ digitalWrite(47, LOW);} }}

Pin 47 adalah salah satu pin pada Arduino yang digunakan untuk indikator pada papan pengumuman informasi lahan parkir, arti dari coding diatas adalah apabila Arduino mendeteksi adanya data “g” pada komunikasi serial yang dikirim melalui MATLAB maka Arduino akan menyalakan pin 47 dengan perintah HIGH dan apabila Arduino menerima data berupa “h” maka akan memadamkan led pada pin 47 dengan perintah LOW.


(72)

4.2 Pengujian Sistem Secara Keseluruhan

Untuk mengetahui kemampuan kerja sistem secara umum maka dilakukan pengujian secara keseluruhan. Pengujian dilakukan dengan cara menyamakan indikator axes yang berada pada MATLAB dengan keluaran berupa led yang berada pada hardware sebagai indikatornya.

a. Kondisi pada saat lahan parkir sedang kosong.

Gambar 4.2 Lahan parkir pada saat kosong


(73)

73

Gambar 4.4 Kondisi papan informasi ketika lahan sedang kosong

b. Kondisi pada saat lahan parkir sedang terisi.

Gambar 4.5 Lahan parkir pada saat terisi


(74)

Gambar 4.7 Kondisi papan informasi ketika lahan sedang terisi

Dari pengujian secara keseluruhan diatas dapat dilihat bahwa nyala led pada hardware sama dengan nyala pada axes pada MATLAB.


(75)

75 BAB V KESIMPULAN

5.1 Kesimpulan

Setelah melakukan perancangan dan pembuatan sistem untuk pembangunan sistem informasi lahan parkir berbasis pengolahan citra kemudian dilakukan pengujian dan analisa, maka dapat diambil beberapa kesimpulan tentang kinerja sistem yang telah dibuat, yaitu :

1. sistem dapat mendeteksi objek yang tertangkap oleh kamera dengan baik sehingga dapat dengan mudah menghitung jumlah lahan yang sedang tersedia,

2. hardware yang berupa denah parkir sebagai output yang terdapat led sebagai indikator lahan yang tersedia dan seven segment sebagai indikator jumlah lahan yang tersedia mempermudah calon pengguna lahan parkir untuk menentukan lokasi yang tersedia,

3. dengan membagi beberapa gambar menjadi sejumlah frame dan menggunakan metode korelasi silang yang sudah tersedia pada matlab maka dapat dengan mudah menentukan lokasi dari lahan parkir yang masih tersedia,

5.2 Saran

Untuk pengembangan dan peningkatan lebih lanjut mengenai pengembangan sistem informasi lahan parkir berbasis pengolahan citra ini ada beberapa poin yang perlu diperhatikan antara lain sebagai berikut.


(76)

76

citra, agar nantinya dapat tercipta suatu lahan parkir yang bersifat otomatis. 2. Diharapkan juga sistem dapat digunakan pada area parkir yang bersifat


(77)

RANCANG BANGUN SISTEM INFORMASI LAHAN PARKIR

KENDARAAN RODA EMPAT DI UNIKOM MENGGUNAKAN

IMAGE PROCESSING

SKRIPSI

Laporan ini Disusun Untuk Memenuhi Salah Satu Syarat Kelulusan Menempuh Pendidikan Program Sarjana Program Studi Teknik Elektro

Disusun Oleh :

LEONARD SATRIO TEGAR 1.31.10.005

PROGRAM STUDI TEKNIK ELEKTRO

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

2016


(78)

Jenis Kelamin Alamat

Tempat, Tanggal Lahir Status

Agama Phone e-mail

: Laki-laki

: Kubang Utara 02 No 9 Sekeloa, Bandung : Jakarta, 18 Agustus 1992

: Belum Menikah : Islam

: 082217800363

: leonard.tegar@yahoo.co.id

: SDN Siliwangi (1998-2004)

: SMPN 1 Cigombong (2004-2007) : SMAN 1 Cigombong (2007-2010) : Universitas Komputer Indonesia Program Studi Teknik Elektro Strata 1 Konsentrasi Kendali

(1998-2004) (2004-2007) (2007-2010) (2010-2016)

2009 LBPP LIA English Course

Agustus 2014 - September 2014 PT.AQUA GOLDEN MISSISSIPPI (Kerja Praktek) Pembuatan Kemasan 240ml

(2013-2014) (2013)

: Anggota Himpunan Mahasiswa Teknik Elektro UNIKOM : Anggota divisi Roket UNIKOM

- Mengerti dan dapat mengoprasikan Microsoft Office, AutoCAD, Personal Computer - Mengerti Installasi Komputer dan Jaringan

- Ujian Hardware Komputer dengan Predikat Istimewa 2013 - Pelatihan Membuat PC Router Menggunakan ClearOS 2013

Pendidikan Formal

Pendidikan Nonformal

Pengalaman Kerja

Pengalaman Organisasi

Kemampuan

Sertifikat

Curiculum Vitae


(79)

iii DAFTAR ISI

LEMBAR PENGESAHAN

ABSTRAK

ABSTRACT

KATA PENGANTAR………...………..……i

DAFTAR ISI……….……….iii

DAFTAR GAMBAR……….………….…..vii

DAFTAR TABEL………..ix

BAB I PENDAHULUAN………...1

1.1 Latar Belakang……….1

1.2 Identifikasi Masalah……….1

1.3 Rumusan Masalah………2

1.4 Tujuan………...2

1.5 Batasan Masalah………...3

1.6 Metode Penelitian……….3

1.7 Sistematika Penulisan………...4

BAB II LANDASAN TEORI 2.1 Pengolahan Citra Digital………..5

2.1.1 Citra Kontinu………5


(80)

iv

2.2.2 Intensitas………...7

2.3 Warna pada Citra Digital………..7

2.3.1 Citra Warna (True Color)……….8

2.3.2 Citra Grayscale (Skala Keabuan)……….8

2.3.3 Citra Biner (Monokrom)………...9

2.4 Thresholding………...……….10

2.5 Cropping………...……11

2.6 Histogram………...11

2.7 Edge Detection……….…11

2.7.1 Background Subtraction………....13

2.7.2 Tahapan Proses Pendeteksi Tepi………..14

2.8 Unsur-unsur Citra Digital……….15

2.8.1 Kecerahan (Intensitas Cahaya)……….15

2.8.2 Kontras………..15

2.8.3 Kontur………...…16

2.8.4 Warna (color)………16

2.8.5 Bentuk (shape)………..16

2.8.6 Tekstur………..16

2.9 Mikrokontroller Arduino Mega………..………..17

2.9.1 Perangkat I/O………...….18

2.9.2 Catu Daya……….…...……..20


(81)

v

2.9.4 Komunikasi Data………...21

2.9.5 Programing………....22 BAB III PERANCANGAN ALAT DAN PEMBUATAN SOFTWARE 3.1 Perancangan Sistem……….23

3.2 Perancangan Software………...26

3.2.1 Konversi Citra Asli ke Grayscale………....26

3.2.2 Konversi Citra Grayscale ke Biner………..27

3.2.3 Pemisahan Objek dengan Latar Menggunakan Metode Background Subtraction……….………28

3.2.4 Segmentasi………...29

3.2.5 Pendeteksi Jumlah Kendaraan……….30

3.3 Rangkaian Lampu Indikator Lahan Parkir………...30

3.4 Perancangan Perangkat Lunak………31

BAB IV PENGUJIAN DAN ANALISA 4.1 Pengujian Sistem Secara Parsial……….34

4.1.1 Pemasangan Kamera USB dan Pengambilan Gambar (Capture)………...…34

4.1.2 Image Processing Untuk Mendeteksi Jumlah Kendaraan dan Lokasinya………...35

4.2 Pengujian Sistem Secara Keseluruhan………....74

BAB V KESIMPULAN 5.1 Kesimpulan……….77


(82)

vi

DAFTAR PUSTAKA………...…78


(83)

77

77

DAFTAR PUSTAKA

[1] N. True,. “Vacant Parking Space Detection in Static Image” 9500 Gilman Drive, La Jolla, CA 92093, University of California, San Diego.

[2] T. Sutoyo, S.Si, M.Kom., E. Mulyanto, S.Si, M.Kom., Suhartono, Dr., O. D. Nurhayati, M.T., Wijanarto, M.Kom, “Teori Pengolahan Citra Digital ”, ANDI, Yogyakarta, 2009.

[3] S. Banerjee, P. Choudekar, Prof M. K. Muju,. “Implementation Of Image Perocessing Real Time Car Prking System” , Indian Journal of Computer Science and Engineering ( IJCSE).Vol.2 No.1.ISSN : 0976- 5166

[4] Pratt, Wiliam K, Digital Image Processing, New Jersey : John Wiley & Sons, 2007.

[5] Sabas, Sitanggang. (2014). Pengembangan Alogaritma Pengolahan Citra Untuk Mengontrol Kepadatan Lalu Lintas Pada Persimpangan Dua Arah Berbasis Logika Fuzzy, Bandung : UNIKOM.


(84)

i Puji syukur penulis ucapkan ke hadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan perancangan alat dan penyusunan laporan tugas akhir dengan judul “Rancang Bangun Sistem Informasi Lahan Parkir Kendaraan Roda Empat di UNIKOM Menggunakan Image Processing”.

Adapun maksud penyusunan laporan Tugas Akhir ini adalah bertujuan untuk menyelesaikan program studi S1 dan merupakan salah satu syarat dalam menempuh ujian sarjana Jurusan Teknik Elektro Universitas Komputer Indonesia (UNIKOM) Bandung.

Dalam penulisan laporan tugas akhir ini, tentunya banyak pihak yng telah memberikan bntuan baik moril maupun materil. Oleh karena itu, dalam kesempatan ini saya ingin menyampaikan ucapan terima kasih kepada :

1. Orang tua dan keluarga yang senantiasa memberikan semangat dan doa restu.

2. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc., selaku Dekan Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia, Bandung. 3. Bapak Muhammad Aria, M.T. sebagai Ketua Program Studi Teknik

Elektro UNIKOM.

4. Ibu Tri Rahajoeningroem, M.T. sebagai Koordinator Tugas Akhir Program Studi Teknik Elektro UNIKOM.


(85)

ii 5. Bapak Jana Utama, M.T., selaku Dosen Pembimbing yang senantiasa membantu serta mendampingi penulis selama pembuatan alat dan penulisan laporan tugas akhir ini.

6. Mia Nugraha dan rekan-rekan mahasiswa Jurusan Teknik Elektro, Iqbal, Deden, Dio, Yudi, Sandra, Gilang, Ayugi, Rifqi dan yang lainnya atas kebersamaan dan persahabatan selama ini, sehingga perkuliahan menjadi semakin berwarna serta berbagai bantuan dan semangat yang senantiasa diberikan kepada penulis sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini.

7. Berbagai pihak yang tidak dapat penulis sebutkan satu persatu yang telah memberikan bantuan baik materi maupun moril sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini.

Akhir kata, dengan segala kerendahan hati, penulis memanjatkan doa kepada Allah SWT, semoga amal dan budi yang telah mereka berikan kepada penulis mendapat pahala dari-Nya. Amin.

Bandung, Januari 2016


(86)

(1)

v

2.9.4 Komunikasi Data………...21

2.9.5 Programing………....22 BAB III PERANCANGAN ALAT DAN PEMBUATAN SOFTWARE 3.1 Perancangan Sistem……….23

3.2 Perancangan Software………...26

3.2.1 Konversi Citra Asli ke Grayscale………....26

3.2.2 Konversi Citra Grayscale ke Biner………..27

3.2.3 Pemisahan Objek dengan Latar Menggunakan Metode Background Subtraction……….………28

3.2.4 Segmentasi………...29

3.2.5 Pendeteksi Jumlah Kendaraan……….30

3.3 Rangkaian Lampu Indikator Lahan Parkir………...30

3.4 Perancangan Perangkat Lunak………31

BAB IV PENGUJIAN DAN ANALISA 4.1 Pengujian Sistem Secara Parsial……….34

4.1.1 Pemasangan Kamera USB dan Pengambilan Gambar (Capture)………...…34

4.1.2 Image Processing Untuk Mendeteksi Jumlah Kendaraan dan Lokasinya………...35

4.2 Pengujian Sistem Secara Keseluruhan………....74

BAB V KESIMPULAN 5.1 Kesimpulan……….77


(2)

vi 5.2 Saran………...77

DAFTAR PUSTAKA………...…78


(3)

77

77

DAFTAR PUSTAKA

[1] N. True,. “Vacant Parking Space Detection in Static Image” 9500 Gilman Drive, La Jolla, CA 92093, University of California, San Diego.

[2] T. Sutoyo, S.Si, M.Kom., E. Mulyanto, S.Si, M.Kom., Suhartono, Dr., O. D. Nurhayati, M.T., Wijanarto, M.Kom, “Teori Pengolahan Citra Digital ”, ANDI, Yogyakarta, 2009.

[3] S. Banerjee, P. Choudekar, Prof M. K. Muju,. “Implementation Of Image Perocessing Real Time Car Prking System” , Indian Journal of Computer Science and Engineering ( IJCSE).Vol.2 No.1.ISSN : 0976- 5166

[4] Pratt, Wiliam K, Digital Image Processing, New Jersey : John Wiley & Sons, 2007.

[5] Sabas, Sitanggang. (2014). Pengembangan Alogaritma Pengolahan Citra Untuk Mengontrol Kepadatan Lalu Lintas Pada Persimpangan Dua Arah Berbasis Logika Fuzzy, Bandung : UNIKOM.


(4)

i KATA PENGANTAR

Puji syukur penulis ucapkan ke hadirat Allah SWT yang telah memberikan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan perancangan alat dan penyusunan laporan tugas akhir dengan judul “Rancang Bangun Sistem Informasi Lahan Parkir Kendaraan Roda Empat di UNIKOM Menggunakan Image Processing”. Adapun maksud penyusunan laporan Tugas Akhir ini adalah bertujuan untuk menyelesaikan program studi S1 dan merupakan salah satu syarat dalam menempuh ujian sarjana Jurusan Teknik Elektro Universitas Komputer Indonesia (UNIKOM) Bandung.

Dalam penulisan laporan tugas akhir ini, tentunya banyak pihak yng telah memberikan bntuan baik moril maupun materil. Oleh karena itu, dalam kesempatan ini saya ingin menyampaikan ucapan terima kasih kepada :

1. Orang tua dan keluarga yang senantiasa memberikan semangat dan doa restu.

2. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc., selaku Dekan Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia, Bandung. 3. Bapak Muhammad Aria, M.T. sebagai Ketua Program Studi Teknik

Elektro UNIKOM.

4. Ibu Tri Rahajoeningroem, M.T. sebagai Koordinator Tugas Akhir Program Studi Teknik Elektro UNIKOM.


(5)

ii 5. Bapak Jana Utama, M.T., selaku Dosen Pembimbing yang senantiasa membantu serta mendampingi penulis selama pembuatan alat dan penulisan laporan tugas akhir ini.

6. Mia Nugraha dan rekan-rekan mahasiswa Jurusan Teknik Elektro, Iqbal, Deden, Dio, Yudi, Sandra, Gilang, Ayugi, Rifqi dan yang lainnya atas kebersamaan dan persahabatan selama ini, sehingga perkuliahan menjadi semakin berwarna serta berbagai bantuan dan semangat yang senantiasa diberikan kepada penulis sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini.

7. Berbagai pihak yang tidak dapat penulis sebutkan satu persatu yang telah memberikan bantuan baik materi maupun moril sehingga penulis dapat menyelesaikan tugas akhir dan penulisan laporan tugas akhir ini.

Akhir kata, dengan segala kerendahan hati, penulis memanjatkan doa kepada Allah SWT, semoga amal dan budi yang telah mereka berikan kepada penulis mendapat pahala dari-Nya. Amin.

Bandung, Januari 2016


(6)