• Tidak ada hasil yang ditemukan

TUGAS AKHIR - Pengenalan angka secara real time menggunakan webcam berbasis ekstraksi ciri FFT - USD Repository

N/A
N/A
Protected

Academic year: 2019

Membagikan "TUGAS AKHIR - Pengenalan angka secara real time menggunakan webcam berbasis ekstraksi ciri FFT - USD Repository"

Copied!
85
0
0

Teks penuh

(1)

i

PENGENALAN ANGKA SECARA REAL TIME

MENGGUNAKAN WEBCAM

BERBASIS EKSTRASI CIRI FFT

Diajukan Untuk Memenuhi Salah SatuSyarat

Memperoleh Gelar Sarjana Teknik

Program Studi Teknik Elektro

Oleh :

HONGRIKA SIMBOLON

NIM : 095114028

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

ii

REALTIMENUMBERRECOGNITION USINGWEBCAM

BASEDON FFT FEATUREEXTRACTION

Presented as Partial Fullfillment of The Requirements To Obtain Sarjana Teknik Degree

In Electrical Engineering Study Program

By:

HONGRIKA SIMBOLON

NIM : 095114028

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

(3)

iii

TUGAS AKHIR

PENGENALAN ANGKA SECARA REAL TIME

MENGGUNAKAN WEBCAM

BERBASIS EKSTRASI CIRI FFT

(REALTIMENUMBERRECOGNITION USING WEBCAM

BASEDON FFT FEATUREEXTRACTION )

Oleh:

HONGRIKA SIMBOLON NIM : 095114028

telah disetujui oleh :

(4)
(5)

v

Saya menyatakan dengan sesungguhnya bahwa tugas akhir yang saya tulis ini tidak

memuat karya ataupun bagian dari karya orang lain, kecuali yang telah disebutkan dalam

kutipan dan daftar pustaka sebagaimana layaknya karya ilmiah.

Yogyakarta,21 Januari 2014

Penulis

(6)

vi

MOTTO :

Segala sesuatunya indah pada waktunya.

Persembahan

K arya sederhana ini kupersembahkan untukY esus

yang selalu setia membimbingku.

K ongregasiku yang telah memberi kesempatan,

membimbingku dengan penuh kasih

dan mendukungkudalam berbagai hal.

K edua orang tua, saudara-saudara

(7)

vii

KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Hongrika Simbolon

Nomor Mahasiswa : 095114028

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan

Universitas Sanata Dharma karya ilmiah saya yang berjudul:

PENGENALAN ANGKA SECARA REAL TIME

MENGGUNAKAN WEBCAM BERBASIS EKSTRASI CIRI FFT

beserta perangkat yang diperlukan (bila ada).

Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak

untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk

pangkalan data, mendistribusikan secara terbatas dan mempublikasikannya pada media lain

untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama masih

mencatumkan nama saya sebagai penulis.

Demikian pernyataan ini saya buat dengan sebenarnya.

Yogyakarta,

Pada Tanggal:21 Januari 2014

(8)

viii

Perkembangan dunia teknologi sangat berpengaruh bagi kehidupan manusia. Perkembangan teknologi dapat mempermudah kinerja manusia, meningkatkan efisien tenaga dan waktu, untuk mendukung proses operasional suatu usaha. Salah satunya adalah sistem pencatatan plat nomor kendaraan yang digunakan di area parkir. Sistem pencatatan plat nomor kendaraan masih banyak dilakukan secara manual. Hal ini dirasa kurang efisien dan memerlukan waktu yang lama. Berdasarkan hal tersebut, dibutuhkan adanya sistem yang dapat mengenali plat nomor kendaraan secara otomatis.Pada penelitian ini, penulis melakukan sebagian dari pengenalan plat nomor kendaraan yaitu mengenali bagian angka dari plat nomor kendaraan sepeda motor secara otomatis.

Sistem pengenalan angka pada plat nomor yang akan dibuat menggunakan webcam dan komputer.Webcam berfungsi untuk merekam dan mengambil citra angka dari kepingan plat nomor, dan komputer untuk mengoperasikannya. Sistem ini akan secara otomatis mengenali citra angka yang telah direkammelalui webcam. Secara garis besar, sistem pengenalan angka yang dibuat adalah secara real time,dan dapat dideskripsikan berdasarkan urutan berikut: citra angka dari kepingan plat nomor kendaraan direkam melaluiwebcam, grayscaling, cropping, resizing, ekstraksi ciri dengan FFT2D (Fast Fourier Transformation), dan menggunakan jarak euclidean.

Sistem pengenalan angka secara real time, menggunakan webcam berbasis ekstraksi ciri FFT dapat bekerja dengan baik. Berdasarkan hasil pengujian, bahwa dengan variasi FFT32x32 dan variasi FFT64x64, sistem pengenalan angka yang dibuat secara real time, mampu menghasilkan tingkat pengenalan hingga 100%.

(9)

ix

The development of the technology very influential for human life. Technology development to simplify the human performance, increase efficient of time and energy, to support the process of operational a business. One is the recording system used vehicle license plates in the parking area. Vehicle number plate registration system is still done manually. It is considered less efficient and requires a long time. As such, the required presence of a system that can recognize the license plates of vehicles automatically. In this study, the authors did most of the introduction of the vehicle license plates recognize the part number from the motorcycle vehicle number plates automatically.

Number recognition of system on the license plate number to be made use of the webcam and actually computers. Webcam serves for recording and taken imagery points from the little bit of a license plate, and computers to operate. This system will be automatically recognize the image of the numbers that has been recorded through webcam. Generally, numeric recognition systems is made in real time, and can be described based on the following order: image number of pieces recorded vehicle license plates through webcam, grayscaling, cropping, resizing, extracting the characteristics of 2D FFT (Fast Fourier Transformation), and using the euclidean distance.

Number recognition system in real time, using a webcam-based extraction characteristics of FFT can work successfully.Based on the results of testing, number recognition systems are made in real time, capable of producing the level of introduction of up to 100% with a variation of the FFT32x32 and with a variation of the FFT64x64.

(10)

x

KATA PENGANTAR

Puji dan Syukur penulis panjatkan kepada Tuhan Yang Maha Esaatas segala berkat dan

rahmat-Nya, sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik. Penulis

menyadari bahwa banyak pihak yang telah memberikan doa, dukungan, perhatian serta

bantuan kepada penulis sehingga dapat menyelesaikan tugas akhir ini. Oleh karena itu,

penulis mengucapkan terima kasih yang sebesar-besarnya kepada:

1. Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

2. Rm. Wiryono Priyotamtama SJ, Rektor Universitas Sanata Dharma.

3. Petrus Setyo Prabowo, S.T.,M.T., Ketua Program Studi Teknik Elektro Universitas

Sanata Dharma Yogyakarta.

4. Petrus Setyo Prabowo, S.T.,M.T., selaku dosen pembimbing akademik yang telah

mendampingi dan membimbing penulis selama perkuliahan.

5. Dr. Linggo Sumarno, dosen pembimbing yang dengan penuh pengertian, sabar dan

ketulusan hati memberi bimbingan, kritik, saran, serta motivasi dalam penulisan

tugas akhir ini.

6. IbuWiwien Widyastuti S.T.,M.T.dan Ibu B. Wuri Harini S.T.,M.T. dosen penguji

yang telah bersedia memberikan masukan, bimbingan, dan saran dalam

memperbaiki tugas akhir ini.

7. Bapak/ Ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh

pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi,

Universitas Sanata Dharma.

8. Pemimpin Umum Kongregasi beserta dewannya yang telah memberikan

kesempatan untuk belajar serta para suster Fransiskus Charitas yang selalu

mendoakan dan mendukung saya selama proses belajar sehingga pada akhirnya

dapat menyelesaikan tugas belajar ini.

9. Kedua orang tua tercinta, atas kasih sayang, dukungan dan doa yang tiada henti.

10. Kakak-kakak, abang , keponakan-keponakan tercinta yang selalu mendukung dan

mendoakan saya, sehingga dapat menyelesaikan tugas belajar dengan baik.

(11)

xi untuk kelancaran tugas-tugas perkuliahan.

13. Teman-teman seperjuangan angkatan 2009 Teknik Elektro yang selalu mendukung

dan menyemangati saya dalam menyelesaikan tugas akhir ini.

14. Semua pihak yang tidak dapat disebutkan satu persatu atas semua dukungan yang

telah diberikan dalam penyelesaian tugas akhir ini.

Penulis menyadari bahwa dalam penulisan tugas akhir ini masih banyak kekurangan,

kelemahan dan jauh dari sempurna. Oleh sebab itu, dengan segala kerendahan hati, penulis

mengharapkan kritik dan saran yang membangun untuk penyempurnaan tugas akhir ini.

Dan semoga tugas akhir ini dapat bermanfaat sebagaimana mestinya.

(12)

xii

DAFTAR ISI

HALAMAN JUDUL

... i

HALAMAN PERSETUJUAN

... iii

HALAMAN PENGESAHAN

... iv

PERNYATAAN KEASLIAN KARYA

... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP

... vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA

ILMIAH UNTUK KEPENTINGAN AKADEMIK

... vii

INTISARI

... viii

1.2 Tujuan dan Manfaat ... 2

1.3 Batasan Masalah ... 2

1.4 Metodologi Penelitian ... 3

BAB II DASAR TEORI

2.3Fast Fourier Transfirmation (FFT) ... 7

(13)

xiii

2.6 Plat Nomor Kendaraan bemotor di Indonesia ... 12

BAB III PERANCANGAN PENELITIAN

3.3Proses Pembentukan database angka ... 25

3.4 Proses Pembuatan Perangkat Lunak ... 26

3.5 Angka Uji ... 27

3.6 Perancangan GUI Matlab ... 28

BAB IV HASIL DAN PEMBAHASAN

4.1Pengujian Program Pengenalan AngkaSecara Real Time

... 29

4.2Penentuan Nilai Parameter ... 39

4.2.1 Pengujian Parameter Pengaturan Pengenalan Angka ...39

4.2.2 Pengujian untuk menentukan batasan nilai jarak yang optimal ... 48

4.2.3 Pengujian Dengan Karakter Angka Kepingan Plat Nomor Mobil Dan Karakter Huruf Kepingan Plat Nomor Kendaraan Beroda Dua ...51

4.3 Pengujian Nilai Parameter ... 56

4.4Keterbatasan Metodologi...56

BAB V KESIMPULAN DAN SARAN

5.1Kesimpulan dan Saran ... 57

DAFTAR PUSTAKA

... 58

(14)

xiv

DAFTAR GAMBAR

Gambar 2.1. Contoh matriks citra digital (x,y) ...4

Gambar 2.2. Citra skala keabuan ...5

Gambar 2.3. Transformasi Spasial ... 6

Gambar 2.4. Algoritma kupu-kupu FFT DIT dua dimensi untuk DFT 8-titik ... 9

Gambar 2.5. Cara melakukan transformasi FFT ...11

Gambar 2.6. Proses transformasi FFT... 11

Gambar 2.7. WebcamLogitech HD 720 ... 12

Gambar 2.8. Contoh plat nomor kendaraan beroda dua ... 13

Gambar 3.1. Gambaran umum perancangan sistem ... 14

Gambar 3.2Contoh gambar dengan beberapa ukuran ... 15

Gambar 3.3. Contoh citra angka kepingan plat ... 15

Gambar 3.9Diagram alir pemrosesan citra ... 21

Gambar 3.10. Diagram blok program ekstraksi ciri ... 22

Gambar 3.11. Diagram blok program fungsi jarak ... 24

Gambar 3.12. Diagram alir penentuan keluaran ... 25

Gambar 3.13. Diagram alir pembentukan database ... 26

Gambar 3.14. Tampilan awal dari matlab yang digunakan ... 27

Gambar 3.15. Tampilan Utama Program Pengenalan Angka ... 28

Gambar 4.1. Icon Matlab 7.0.4 ... 29

Gambar 4.2. Tampilan awal Matlab ... 30

Gambar 4.3. Tampilan Jendela Pengenalan2 ... 30

Gambar 4.4. Tampilan Utama Program Pengenalan Angka Secara Real Time ... 31

Gambar 4.5. Tampilan setelah tombol “ON” ditekan ... 32

Gambar 4.6. Tampilan setelah tombol “Tombol Ambil Gambar” ditekan ... 33

Gambar 4.7. Tampilan setelah tombol “Proses” ditekan... 38

(15)

xv

……… ... 44

Gambar 4.10. Jarak antara dua buah angka ... 47

(16)

xvi

DAFTAR TABEL

Tabel 2.1. Jenis-jenis Transformasi Affine ... 7

Tabel 2.2. Pembalikan Bit ... 7

Tabel 3.1. Spesifikasi Webcam Logitech c 270h ... 16

Tabel 3.2 Contoh citra dengan beberapa Variasi FFT. ... 23

Tabel 3.3. Keterangan Tampilan Utama Program ... 28

Tabel 4.1. Data hasil pengujian sebelum dinormalisasi ... 40

Tabel 4.2. Data hasil pengujian untuk setiap variasi FFT setelah dinormalisasi... 42

Tabel 4.3. Hasil persentase tingkat pengenalan ...44

Tabel 4.4. Gambar salah satu citra angka setiap cariasi FFT ... 45

Tabel 4.5. Hasil perhitungan jarak ... 46

Tabel 4.6. Data hasil pengujian ... 49

Tabel 4.7. Data hasil pengujian dengan karakter angka kepingan plat mobil ... 52

(17)

1

BAB I

PENDAHULUAN

1.1.

Latar Belakang

Perkembangan dunia teknologi sangat berpengaruh bagi kehidupan masyarakat

Perkembangan teknologi dapat mempermudah kinerja manusia, meningkatkan efisiensi

tenaga dan waktu dalam mendukung proses operasional suatu usaha. Salah satunya adalah

sistem pengenalan plat nomor kendaraan yang digunakan di area parkir, yang merupakan

salah satu fasilitas suatu tempat usaha atau instansi,yang dibutuhkan oleh masyarakat.

Pencatatan plat nomor pada suatu area parkir menjadi suatu hal yang wajib dilakukan

sebagai salah satu syarat menjaga keamanan dan kenyamanan seseorang yang

menggunakan jasa area suatu tempat parkir.

Sistem pengenalan plat nomor kendaraan dibanyak tempat, masih banyak yang

dilakukan secara manual. Proses pencatatan secara manual memerlukan waktu yang lama,

sehingga dirasa kurang efisien, dan dapat menyebabkan rasa bosan bagi para pengendara,

khususnya pada saat-saat tertentu. Kemungkinan lainnya yang dapat terjadi adalah

kesalahan atau kekeliruan dalam pencatatan (human error)karena rasajenuh dan lelah. Hal ini dapat mengganggu keamanan dan kenyamanan baik bagi para pemilik kendaraan

maupun petugas.

Berdasarkan permasalahan yang ada, dibutuhkan adanya sistem pengenalan plat

nomor kendaraan bermotor secara otomatis. Pada penelitian ini, penulis melakukan

sebagian penelitian dari pengenalan plat nomor kendaraan yaitu mengenali bagian angka

dari plat nomor kendaraan bermotor secara otomatis. Penelitian mengenai pengenalan

karakter angka pernah dilakukan oleh Thiang, Suharyanto[1] yaitu menggunakan metode

Fuzzy Clustering secara offline. Contoh lainnya adalah penelitian mengenai sistem identifikasi plat nomor kendaraan secara offline dengan menggunakan metode pengolahan citra dan Jaringan Syaraf Tiruan oleh Helmy[2].

Sistem yang akan dibuat dalam penulisan ini meliputi beberapa proses, antara lain

pengambilan citra angka menggunakan webcam, pengolahan citra dan pengenalan pola dengan ekstraksi ciri FFT. Penelitian ini merupakan salah satu alternatif yang digunakan

(18)

Selanjutnya citra akan diolah dengan menggunakan perangkat lunak Matlab 7.0.4. Hasil keluaran adalah dalam bentuk teks pada layar monitor. Salah satu fasilitas Matlab yang tersedia adalah GUI (Graphical User Interface) yang dapat digunakan untuk membuat suatu antarmuka yang nantinya dapat mempermudah pengguna dalam pemakaian sistem

yang akan dibuat. Dari hal ini, penulis dapat mengembangkan salah satu perkembangan

teknologi berupa “pengenalan angka menggunakan webcam secara real time dengan ekstraksi ciri FFT”, dengan maksud dapat mempermudah kinerja manusia dalam hal pencatatan plat nomor kendaraan.

1.2 Tujuan dan Manfaat

Tujuan dari penulisan tugas akhir ini adalah menghasilkan suatu sistem pengenalan

angka secara real time. Dalam hal ini, angka mirip dengan plat nomor kendaraan bermotor. Manfaat penulisan tugas akhir ini adalah sebagai penelitian awal dari otomatisasi sistem

pencatatan angka plat nomor kendaraan bermotor roda dua.

1.3 Batasan Masalah

Dalam pembuatan sistem pengenalan plat nomor ini, ada beberapa batasan masalah

yang perlu diperhatikan. Batasan-batasan masalah tersebut adalah sebagai berikut:

a. Pengenalan angka ini dibuat menggunakan perangkat lunak matlab dengan

ekstraksi ciri FFT dan fungsi jarak Euclidean. b. Pengambilan citra menggunakan webcam.

c. Data masukan adalah berupa citra angka dari kepingan plat nomor kendaraan

bermotor khususnya kendaraan bermotor beroda dua yaitu dari angka 0 sampai

dengan 9.

d. Kepingan plat hanya memuat satu karakter angka.

e. Posisi angka kepingan plat nomor tetap dan intensitas cahaya menggunakan

pencahayaan yang ada di laboratorium TA.

f. Ukuran kepingan plat yang digunakan sesuai dengan ukuran angka pada plat nomor

kendaraan standar kepolisian dengan panjang 6cm dan lebar 5cm, latar belakang

kepingan plat warna hitam dan tulisan angka warna putih.

g. Posisi webcam tegak lurus dengan citra kepingan plat.

h. Sistem pengenalan angka yang akan dibuat bersifat real time. i. Program hanya dapat mengenali satu karakter dari citra masukan.

(19)

1.4 Metode Penelitian

Langkah – langkah yang dilakukan pada pengerjaan tugas akhir ini adalah sebagai berikut:

a. Studi Pustaka.

Melakukan studi pustaka yaitu untuk membaca dan mempelajari buku-buku,

jurnal dan mencari bahan-bahan melalui situs-situs internet dan media-media lain

yang berkaitan dengan topik yang diambil.

b. Pembuatan subsistem software.

Pembuatan program dilakukan dengan menggunakan pemrograman Matlab dalam pembuatan sistem pengenalan angka yang akan dibuat.

c. Perancangan subsistem software.

Sistem akan bekerja apabila pengguna menekan tombol push button yang telah disediakan dalam software. Pengguna memberikan perintah untuk melakukan pengambilan citra. Setelah proses pengambilan citra, sistem melakukan pre-processing yaitu proses pengubahan citra ke bentuk grayscale, pemotongan (cropping) citra dan (resizing) merubah ukuran citra yang diinginkan. Kemudian masuk ke tahap berikutnya yaitu proses pengenalan angka, penentuan keluaran dan

menampilkan hasil keluaran pada layar monitor berupa teks.

d. Analisis dan penyimpulan.

Analisa data dilakukan dengan menyelidiki pengaruh variasi ukuran FFT

dengan 30 kali percobaan (3 x 10 karakter angka) untuk masing-masing variasi FFT

yang akan digunakan. Percobaan yang dilakukan adalah sebanyak 120 kali untuk

semua variasi. Hal ini bertujuan untuk mencari variasi yang akan dievaluasi pada

tingkat pengenalan. Kemudian melakukan percobaan sebanyak 5 kali terhadap

masing-masing karakter angka dengan variasi FFT yang akan dievaluasi terhadap

tingkat pengenalan. Pada penulisan ini juga dilakukan pengujian untuk angka plat

nomor mobil sebanyak 3 angka. Penyimpulan hasil percobaan dilakukan dengan

mencari ukuran FFT yang menghasilkan tingkat pengenalan yang tertinggi.

(20)

4

BAB II

DASAR TEORI

2.1.

Pengolahan Citra

2.1.1 Pengertian Citra

Citra adalah gambar pada bidang dua dimensi.Suatu citra juga dapat didefinisikan

sebagai fungsi dua dimensi f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah

koordinat spasial, dan amplitudo f di titik koordinat (x,y), disebut intensitas atau tingkat

keabuan dari citra pada titik tersebut. Ketika nilai x, y, dan nilai amplitudo f semua

berhingga dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalah citra

digital. Sebuah citra digital dapat direpresentasikan sebagai sebuah matriks, dimana indeks

baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya

menyatakan tingkat kecerahan pada titik tersebut.Elemen-elemen ini disebut picture elements, image elements, pels dan pixels. Piksel adalah istilah yang digunakan secara luas untuk menyatakan elemen citra digital[3]. Gambar 2.1menunjukkan contoh koordinat dari

citra digital.

(21)

Citra yang digunakan dalam pengolahan citra oleh komputer adalah citra dalam

bentuk digital. Citra digital dapat didefinisikan sebagai suatu larik (array) piksel berukuran 2 dimensi. Piksel merupakan komponen dari larik sebuah citra digital yang menunjukkan

nilai kecerahan tertentu seperti pada gambar 2.1. Citra mempunyai 10 x 10 piksel, berarti

jumlah piksel vetikal adalah 10 piksel, sedangkan jumlah piksel horizontal adalah 10

piksel, sehingga jumlah piksel keseluruhan yang terdapat dalam citra tersebut adalah 100

piksel[3].

2.1.2 Citra Grayscale

Proses awal yang dilakukan dalam pengolahan citra adalah mengubah citra

berwarna menjadi bentuk grayscaleatau warna keabuan. Citra grayscale merupakan citra digital yang hanya memiliki suatu nilai kanal pada setiap piksel. Warna yang dimiliki

adalah keabuan, hitam dan putih.Citra hitam putih mempunyai nilai kuantisasi derajat

keabuan sampai tingkatan ke 256 artinya mempunyai skala abu dari 0 sampai 255 atau

selang [0 255]. Citra ini membutuhkan 1 byte (8 bit) untuk representasi setiap pikselnya

(256 =28) [3]. Gambar 2.2 menunjukkan contoh citra skala keabuan.

Gambar 2.2. Citra skala keabuan

2.1.3 Cropping

Cropping citra merupakan salah satu langkah dalam pengolahan citra yang dilakukan untuk memotong satu bagian dari citra tertentu untuk memperoleh bagian yang

diinginkan untuk diolah. Hal ini dilakukan untuk mendapatkan data yang tepat sehingga

memudahkan dalam proses pengolahan data.

2.1.4 Resizing

Rezisingcitra adalah mengubah besar kecilnya ukuran citra dalam piksel. Tampilan citra tidak ada yang berubah hanya ukuran pixel dan matriksnya yang dirubah.

(22)

menurut jumlah aturan yang sudah didefinisikan. Transformasi geometris ini digunakan

untuk melakukan image registration, yaitu sebuah proses yang mengambil dua citra dari scene yang sama dan mengaturnya sehingga dapat digabung untuk visualisasi, atau perbandingan kuantitatif [5].

Transformasi Geometris Spasial

Jika citra f didefinisikan pada sistem koordinat a(w,z), mengalami distorsi gemotris

yang menghasilkan citra g dengan sistem koordinat (x,y) maka transformasi dapat

dinyatakan dengan (x,y) = T{(w,z)}.

Contoh dalam trasnformasi spasial sebagai berikut :

Jika (x,y) =T{(w,z)} = (w/2, z/2), distrosi adalah penyusutan f dengan setengah dimensi

spasial seperti ditunjukkan pada gambar 2.3.

Gambar 2.3 Transformasi Spasial[4]

Bentuk umum yang digunakan pada transformasi spasial adalah affine transform (Wolberg [1990] ). Transformasi affine dapat ditulis dalam bentuk matrik :

1 = .

1

(2.1)

(23)

Tabel 2.1 Jenis-jenis Transformasi Affine

2.2.

Pengenalan Pola

Pengenalan pola merupakan proses pengenalan suatu objek dengan menggunakan

berbagai metode. Pengenalan pola dapat dikatakan sebagai kemampuan manusia untuk

mengenali objek-objek berdasarkan ciri-ciri dan pengetahuan yang pernah diamatinya dari

objek-objek tersebut. Tujuan pengenalan pola ini adalah meniru kemampuan otak manusia

dalam mengenali suatu objek atau pola tertentu. Pola adalah suatu entitas yang terdefenisi

dan dapat didefinisikan serta diberi nama. Pola bisa merupakan kumpulan hasil

pengukuran dan bisa dinyatakan dalam notasi vektor atau matriks [3].

2.3Fast Fourier Transformation (FFT)

Fast Fourier Transform adalah suatu algoritma yang digunakan untuk merepresentasikan sinyal dalam domain waktu diskrit dan domain frekuensi. DFT

merupakan metode transformasi matematis untuk sinyal waktu diskrit ke dalam domain

frekuensi. Secara sederhana dapat dikatakan bahwa DFT merupakan metode transformasi

matematis sinyal waktu diskrit, sementara FFT adalah algoritma yang digunakan untuk

melakukan transformasi DFT. DFT dua dimensi mempunyai masukan berupa matriks dan

(24)

Secara umum, persamaan matematis DFTadalah:

( ) = ( ) ( 2.1)

dengan n= 0, 1, ..., N-1, = / , = 0, 1, 2,3, …. −1

( ) adalah keluaran dalam domain frekuensi, x adalah masukan dalam domain waktu dan N adalah banyaknya piksel citra.

e = natural number( 2.718281828459045…) k = indeks dalam domain frekuensi = 0, 1, ...,N-1 n = indeks dalam domain waktu = 0, 1, ...,N-1, j = konstanta fourier( √-1)

= 180

Prinsip dasar FFT adalah menguraikan penghitungan N-titik DFT menjadipenghitungan DFT dengan ukuran yang lebih kecil dan memanfaatkan periodisitas

dansimetri dari bilangan kompleks . [7].

Dimana: nk= nilai indeks waktu, N = nilai piksel

Ada dua jenis algoritma FFT yaitu algoritma Fast Fourier Transform Decimation In Time ( FFT DIT) dan algoritma Fast Fourier Transform Decimation In Frekuensi ( FFT DIF). Pada penulisan ini, algoritma FFT yang digunakan adalah radiks dua dengan metode decimation in time. Pada DIT, masukan disusun/dikelompokkan menjadi kelompok ganjil dan kelompok genap. Runtun bernomor genap adalah x(0), x(2), x(4)…..x(N-2) dan runtun

bernomor ganjul adalah x(1), x(3), x(5)…x(N-1). Kedua runtun berisi N/2-titik. Runtun

genap ditandakan x(2k) dengan x=0 sampai k=N/2-1, sedangkan runtun ganjil menjadi

x(2k-1). Persamaan (2.1) dapat dinyatakan sebagai penjumlahan untuk n ganjil dan genap.

( ) = x( 2 ) + ( 2 + 1) ( ) ( 2.2)

Selanjutnya dengan menggantikan = / , maka persamaan (2.2) menjadi

( ) = x( 2 ) / 2 + x( 2 + 1) / 2 ( 2.3)

(25)

Algoritma decimation in time mengharuskan masukan disusun ulang sedemikian rupa sehingga hasil perhitungan akhir mempunyai urutan yang sesuai. Tabel 2.2

menunjukkan bagaimana suatu masukan disusun ulang untuk tujuan tersebut. [8]

Tabel 2.2. Pembalikan bit.

(26)

Komputasi flowgrap pada gambar 2.4

Keterangan : a, b, c, d, e, f, g, h adalah keluaran dari tahap pertama

: I, j, k, l ,m ,n o, p adalah keluaran tahap ke-dua.

: X(0), X(1), X(3), X(4), X(5), X(6), X(7) adalah keluaran tahap ke 3.

Gambar 2.4 merupakan ilustrasi algoritma Sande-Tukey FFT untuk N=23= 8.[9]

Berdasarkan persamaan (2.1) perhitungan DFT memerlukan N2 perkalian kompleks dan N (N -1) penjumlahan kompleks. Namun, ada suatu metode yang dikembangkan untuk mengurangi kompleksitasalgoritma yaituN log2N. Teknik tersebut disebut algoritma FFT.

Misalnya untuk N = 64, DFT akan membutuhkan komputasi N2= (64)2= 4096, algoritma

FFT membutuhkan kompleksitas N Log2 N = 64 Log2(64) = 64 x 6 = 384. [3].

Dalam dua dimensi, FFT mempunya masukan berupa matriks dan akan

menghasilkan keluaran berupa matriks dengan ukuran yang sama. Jika masukan adalah

f(x,y) maka keluarannya dapat dinyatakan dengan F(u,v). Matriks F(u,v) disebut

transformasi Fourier dari f(x,y). Definisi FFT untuk 2 dimensi mirip dengan satu dimensi.

Dengan masukan f(x,y) berukuran M x N ( sehingga x = 0, 1, 2, 3…m-1 dan y=0, 1, 2,

3…N-1) maka :

( , ) = ( , ) − 2 + ( 2.4)

Untuk melakukan transformasi Fourier, data yang diproses adalah data citra. Data

citra merupakan data matriks 2D, maka transformasi Fourier yang diperlukan juga

transformasi Fourier 2D. Berdasarkan sifat separabilitas transformasi Fourier, maka

(27)

beruntun dari satu sumbu dimensi ke sumbu dimensi yang lain. Dalam penerapannya,

transformasiFourier 2Dterhadap suatu matriks 2Ddapat dilaksanakan dengan menggunakan

transformasi Fourier 1Ddengan cara melakukan transformasi 1Dke setiap baris terlebih

dahulu, kemudian dilanjutkan transformasi 1Dke setiap kolom, seperti yang ditunjukkan

pada gambar 2.5. Gambar 2.6 menunjukkan hasil transformasi FFT . [7]

Gambar 2.5. Cara melakukan transformasi FFT.

(a) Contoh citra asli (b). FFT dari setiap baris (c). FFT dari setiap kolom

Gambar 2.6. Proses transformasi FFT.

Contoh transformasi FFT. (a) citra keluaran resizing 64x64 piksel. (b)hasil transformasi FFT2D dengan variasi FFT64x64. (c).hasil ekstraksi ciri FFT64x64

2.4

Jarak

Euclidean

Dalam matematika, Jarak Euclidean adalah jarak antara dua titik yaiu dari titik satu ke titik yang lain dalam satu ruang.Secara umum, yang dimaksud antara dua titik adalah

garis terpendek diantara semua garis yang menghubungkan kedua titik tersebut. Dalam

ruang Euclidian , jarak antara ke dua titik P dan Qdapat dirumuskan sebagai berikut :

= ( , , …. . ) dan= ( , , …… )[5]. maka jarak Euclidean P ke Q adalah:

(28)

2.5

Webcam

Webcam adalah sebuah kamera video digital kecil yang dihubungkan ke komputer

melalui port USB ataupun port COM. Webcamdigunakan sebagai sarana untuk

menangkapcitra yang akan diolah. Pada umumnya resolusi yang didukung bisa mencapai

240x320piksel atau 640x480piksel.Webcam tidak membutuhkan kaset atau tempat penyimpanan data, data hasil perekaman yang didapat langsung ditransfer ke komputer.

Salah satu contoh webcam ditunjukkan pada gambar 2.7

Gambar 2.7. Webcam Logitech HD 720P

2.6

Plat nomor kendaraan di Indonesia

Tanda Nomor Kendaraan Bermotor (TNKB) yaitu tanda regristasi kendaraan

bermotor yang biasa disebut dengan plat nomor polisi. TNKB ini berfungsi sebagai bukti

legitimasi pengoperasian kendaraan bermotor.Bentuk TKNB ini berupa pelat atau

berbahan lain dengan spesifikasi tertentu yang diterbitkan Polri dan berisikan kode

wilayah, nomor regristrasi, serta masa berlaku dan dipasang pada kendaraan bermotor [6].

Plat nomor memiliki nomor seri yakni susunan huruf dan angka yang dikhususkan

bagi kendaraan. Plat nomor kendaraan di Indonesia disebut nomor polisi. Biasanya

dipadukan dengan informasi lain mengenai kendaraan bersangkutan, seperti warna, merek,

model, tahun pembuatan, nama dan alamat pemiliknya. Semua data ini tertera di dalam

Surat Tanda Kendaraan Bermotor (STNK) yang merupakan surat bukti bahwa nomor

polisi tersebut memang ditetapkan untuk kendaraan tersebut.

Tanda Nomor Kendaraan bermotor berbentuk aluminium dengan cetakan tulisan

dua baris. Baris pertama menunjukkan kode wilayah (huruf), nomor polisi (angka)

dankode atau seri akhir wilayah (huruf) dan baris kedua menunjukkan bulan dan tahun

(29)

Pada sudut kanan atas dan sudut kiri bawah terdapat tanda khusus (security mark) cetakanlambang Polisi Lalu Lintas, sedangkan pada sisi sebelah kanan dan sisi sebelah kiri

ada tanda khusus cetakan "DITLANTAS POLRI" (Direktorat Lalu Lintas Kepolisian RI)

yang merupakan hak paten pembuatan TNKB oleh Polri dan TNI.

Plat TNKB yang terbaru memiliki lis putih di sekeliling plat. Antara nomor TNKB

dengan masa berlaku TNKB, tidak diberi pembatas lis putih seperti pada gambar 2.8. Pada

plat ada 2 baris yakni baris pertama yang menunjukkan kode wilayah kendaraan, nomor

polisi dan kode seri akhir wilayah. Baris kedua menunjukkan masa berlaku pelat nomor.

Ukuran TNKB untuk kendaraan roda 2 dan 3 sekarang menjadi 275 mm dengan lebar 110

mm, sedangkan untuk kendaraan roda 4 atau lebih adalah panjang 430 mm dengan lebar

135 mm.

Gambar2.8. Contoh plat nomor kendaraan beroda dua.

Nomor polisi biasanya diberikan sesuai dengan urutan pendaftaran kendaraan

bermotor. Nomor urut tersebut terdiri dari satu sampai empat angka dan ditempatkan

setelah kode wilayah pendaftaran. Nomor urut pendaftaran dialokasikan sesuai kelompok

jenis kendaraan bermotor. Sebagai contoh untuk wilayah DKI Jakarta: 3000–6999 dialokasikan untuk sepeda motor.

Penomoran plat nomor kendaraan pribadi mempunyai aturan. Sebuah plat nomor

pribadi memiliki warna dasar hitam dengan karakter berwarna putih. Pola karakter di

dalamnya memiliki kesamaan dengan pola kendaraan umum, dengan pola sebagai berikut:

NP : Nomor Plat mobil berupa angka, minimum 1 digit dan maksimum 4

digit.Misalnya 1, 2509, 2054 dan lain-lain.

KA : Kode area mobil tersebut berupa huruf, minimum 1 digit dan maksimum 2

(30)

14

BAB III

PERANCANGAN PENELITIAN

Perancangan sistem merupakan tahap pengidentifikasian semua kebutuhan sistem

yang menunjukkan gambaran mengenai sistem yang akan dibuat oleh penulis. Kebutuhan

sistem tersebut adalah diagram blok, data masukan serta perancangan antarmuka yang akan

digunakan.

3.1

Perancangan Sistem

Perancangan yang akan dibuat adalah suatu sistem yang dapat mengenali citra

angka secara otomatis. Gambar 3.1 menunjukkan gambaran umum perancangan sistem

Gambar 3.1.Gambaran umum perancangan sistem

Sistem pengenalan karakter angka terdiri dari perangkat keras dan perangkat lunak

yang ada pada komputer. Perangkat keras yang digunakan adalah kepingan plat, fixture, komputer, dan perangkat lunak menggunakan pemrograman Matlab 7.04. Pengambilan citra menggunakan webcam yang dihubungkan dengan komputer.

3.1.1. Fixture

Fixture digunakan sebagai tempat dudukan webcam dan keping plat. Fixture yang digunakan terbuat dari kayu. Posisi webcam tetap dan tegak lurus dengan posisi keping plat. Jarak antara webcam dengan dengan posisi plat ±32 cm. Pada studi awal telah dilakukan penagmbilan gambar dengan beberapa variasi ukuran, yaitu dari ketinggian 5 cm

sampai dengan 50 cm. Dari gambar yang diperoleh, pada ketinggian 47cm, gambar

terlihat kecil. Semakin pendek jarak antara objek dengan webcam, gambar semakin terlihat jelas. Maka dari gambar yang diperoleh, jarak yang digunakan adalah jarak yang paling

+ 32 cm

webcam

8

(31)

pada gambar 3.2.

47cm

42cm

37cm

32cm

Gambar 3.2. Contoh gambar dengan beberapa variasi ukuran.

3.1.2. Kepingan Plat

Kepingan plat yang digunakan mirip dengan kepingan plat nomor resmi pada

kendaraan bermotor. Satu keping plat hanya memuat satu karakter angka. Kepingan plat

yang digunakan mempunyai dimensi panjang 6cm dan lebar 5cm dapat dilihat pada

(32)

Gambar 3.3. Contoh citra angka kepingan plat.

3.1.3. Webcam

Webcam yang digunakan adalah webcam merk Logitech seri c 270h. Spesifikasi webcam dapat dilihat pada tabel 3.1.

Tabel 3.1. Spesifikasi Webcam Logitech c 270h

High definition video (HD) HD 270p

Photo Quality 3 Megapixel

Video Quality Good

Focus Type Always Focused

Auto Light Correction Standart

3.2 Proses Kerja Sistem

Proses kerja sistem adalah sebagai berikut:

(33)

preprocessing, pengenalan dan keluaran seperti yang ditunjukkan pada gambar 3.4. Citra masukan berupa keping plat nomor kendaraan bermotor roda dua khusus bagian angka.

Citra angka akan dikonversi ke bentuk grayscale atau warna keabuan. Citra yang telah dikonversi ke bentuk grayscale akan dicropping (dipotong) sebesar citra kepingan plat. Setelah citra dicropping, kemudian diresizing sesuai dengan ukuran yang diinginkan. Citra yang telah diresizing menjadi masukan ke tahap selanjutnya yaitu tahap pengenalan.

Pada tahap pengenalan, citra ditransformasi dengan menggunakan fft2 dan fftshift untuk mengambil bagian yang akan digunakan sebagai ekstraksi ciri dari citra tersebut.

Proses selanjutnya adalah melakukan penghitungan jarak dari hasil ekstraksi ciri data uji

dengan hasil ekstraksi ciri dari database menggunakan fungsi jarak Euclidean. Jarak minimum yang diperoleh akan dijadikan sebagai penentuan hasil keluaran. Hasil keluaran

adalah angka dalam bentuk teks. Sistem yang akan dibuat hanya dapat mengenali satu

angka. Bila dikembangkan maka sistem ini dimaksudkan dapat mempermudah dan

mempercepat petugas parkir dalam pencatatan nomor pada plat kendaraan.

3.2.1 Pengambilan Citra.

Pengambilan citra dilakukan menggunakan webcam. Webcam terhubung ke komputer. Citra masukan berupa keping plat. Setiap keping plat terdiri dari satu karakter.

Posisi webcam tetap dan tegak lurus dengan keping plat.

Pada proses pengambilan citra, menginisialisasi webcam terlebih dahulu di dalam program dengan fungsi imaqhwinfo. Fungsi imaqhwinfo bertujuan untuk mengetahui nama adaptor dan device info dalam webcam tersebut.

Imaqhwinfo;

DefaultFormat: 'RGB24_640x480'

DeviceName: 'Logitech HD Webcam C270'

DeviceID: 1

ObjectConstructor: 'videoinput('winvideo',1)'

Kemudian nama adaptornya diinisialisasi sesuai dengan webcam yang digunakan yaitu ‘winvideo’ dengan resolusi kamera yang digunakan adalah 640x480. Resolusi 640x480

digunakan karena ukuran ini merupakan spesifikasi ukuran sedang (medium) yang terdapat pada adaptor webcam yang digunakan. Ukuran resolusi ini juga telah digunakan pada

peneliti sebelumnya. Selanjutnya perintah untuk mengambil citra menggunakan

(34)

gmbr = getsnapshoot(vid);

preview(vid)

Pengambilan citra melalui beberapa proses seperti yang ditunjukkan pada gambar 3.5.

Gambar 3.5. Diagram alir pengambilan citra.

Proses pengambilan citra adalah sebagai berikut :

1. Masukan adalah sebuah citra keping plat angka

2. Inisialisasi webcam dalam program menggunakan imaqhwinfo. 3. Pengambilan citra menggunakan getsnapshoot.

4. Keluarannya adalah citra angka

3.2.2 Tahap Preprocessing

Tahap preprocessing dilakukan untuk mempersiapkan citra sebelum dilakukan tahap ekstraksi ciri. Tahap preprocessing terdiri dari tiga tahap yaitu mengkonversi citra ke bentuk grayscale, melakukan cropping (pemotongan) dan resizing (mengubah ukuran). Pengubahan citra ke grayscale adalah untuk mempermudah pemrosesan citra. Selanjutnya akan dilakukan proses cropping (pemotongan) yang bertujuan untuk mengambil bagian citra yang diinginkan. Kemudian melakukan resizing dengan tujuan untuk menyeragamkan

Masukan

Citra angka kepingan plat

Webcam On

Pengambilan Citra

Keluaran Citra angka

(35)

proses selanjutnya yaitu tahap pengenalan.

1. Grayscale

Proses grayscale bertujuan untuk mengubah citra berwarna menjadi warna keabuan seperti yang ditunjukkan pada gambar 3.6, sehingga dapat mempermudah dalam mengenali

angka pada proses selanjutnya. Contoh kode yang dapat digunakan adalah:

I = imread(filename);

gmbr = rgb2gray(I);

imshow(gmbr)

Gambar 3.6.Konversi citra berwarna ke grayscale 2. Cropping

Proses cropping dilakukan adalah untuk memotong bagian tertentu dari suatu citra untuk memperoleh bagian yang diinginkan untuk diolah. Hal ini dilakukan untuk

mendapatkan data yang diinginkan, sehingga memudahkan pengolahan data untuk proses

selanjutnya. Perintah program cropping (pemotongan) adalah dengan syntax imcrop

(I,[x y Δx Δy]). Nilai x dan y adalah koordinat pada sumbu x dan y kiri atas, Δx adalah selisih antara sumbu x kanan atas dengan sumbu x kiri atas, Δy adalah selisih antara sumbu y kiri dengan sumbu y kiri atas. Contoh hasil cropping dapat dilihat pada gambar 3.7. Fungsi yang digunakan pada sistem ini adalah :

I = imread('data8.bmp');

(36)

Gambar 3.7. Contoh gambar hasil cropping.

3. Resizing

Proses resizing bertujuan untuk mengubah ukuran citra yang telah dicropping, sehingga citra yang akan diproses selanjutnya memiliki ukuran yang sama. Selanjutnya proses

resizing, yaitu mengalikan koordinat posisi citra dengan scalling. Proses resizing dengan menggunakan rumus:

1

= 0 0

0 0

0 0 1

. 1

Proses resizing citra pada matlab menggunakan syntaks imresize. Hasil citra yang direzising akan menjadi masukan untuk proses pengenalan angka. Contoh citra hasil resizing dapat dilihat pada gambar 3.8. Contoh fungsi yang digunakan pada proses resizing adalah :

I = imread('data8.bmp');

L = imresize(I,[nfft, nfft]);

(a) (b)

(37)

Gambar 3.9. Diagram alir pemrosesan citra.

Tahap pemrosesan citra seperti yang ditunjukkan pada gambar 3.9, masukan pada

pemrosesan citra adalah citra angka. Citra angka dikonversi ke grayscale yang bertujuan untuk membuat warna keabuan pada citra. Perintah yang digunakan adalah rgb2gray. Kemudian masuk ke tahap cropping atau pemotongan dengan menggunakan perintah imcrop (I,[x y Δx Δy]). Selanjutnya proses resizing dengan menggunakan perintah

imresize(I,[nfft, nfft]); nfft adalah nilai variasi FFT yang akan digunakan.

Keluaran dari proses pemrosesan adalah citra preprocessing.

3.2.3 Tahap Pengenalan

Tahap pengenalan angka adalah proses pengenalan angka melalui proses ekstraksi

(38)

Gambar 3.10. Diagram alir ekstraksi ciri

Gambar 3.10 menunjukkan diagram alir ekstraksi ciri. Masukan adalah citra angka

dari hasil processing (grayscale, cropping dan resizing). Resizing menyesuaikan variasi FFT yang akan digunakan. Citra akan ditransformasi dengan FFT2D: persamaan

( , ) = ∑ ∑ ( , ) − 2 + , kemudian dihitung untuk mencari nilai absolutnya. Selanjutnya menengahkan frekuensi rendah ke bagian tengah dengan

fftshift. Kemudian mengambil bagian tengahnya sebanyak seperempat dari hasil transformasi yang diperoleh, yang nantinya akan menjadi hasil ekstraksi ciri dari objek

(39)

Uukuran FFT 64x64piksel, ekstraksinya adalah 32x32 piksel. Ukuran FFT 32x32piksel,

ekstraksi cirinya adalah 16x16piksel. Ukuran FFT 8x8piksel, ekstraksi cirinya adalah

ukuran FFT 8x8piksel, ekstraksi cirinya adalah 4x4piksel. Variasi ukuran FFT dapat dilihat

pada tabel 3.2.

Tabel 3.2. Contoh citra dan hasil ekstraksi ciri dengan beberapa Variasi FFT.

Hasil resizing Hasil transformasi FFT Hasil ekstraksi ciri

64 x64 piksel 32 x32 piksel

32x32 piksel 16 x 16 piksel

16 x 16 piksel 8 x 8 piksel

8 x 8 piksel

4 x 4 piksel

(40)

1. Fungsi Jarak

Proses fungsi jarak adalah membandingkan karakter dari citra masukan dengan

database angka dengan menggunakan fungsi jarak Euclidean. Jarak Euclidean adalah mencari selisih dari data yang dibandingkan. Jarak minimum yang didapat akan digunakan dalam proses selanjutnya yaitu penetuan keluaran.

Gambar 3.11. Diagram alir perhitungan jarak.

Gambar 3.11 menunjukkan diagram alir perhitungan jarak. Pada proses perhitungan

jarak, masukannya adalah hasil perhitungan ekstraksi ciri berupa matriks. Nilai ekstraksi

ciri yang diperoleh dari citra masukan dibandingkan dengan nilai ekstraksi ciri pada

database dengan menggunakan rumus:

= ( 0 − ) + ( 0 − ) + ( 0 − ) …. + ( 0 − ) , a adalah ekstraksi ciri database berupa matriks, y adalah ekstraksi ciri citra masukan berupa matriks; r adalah perhitungan jarak antara ekstraksi ciri data masukan dengan ekstraksi ciri database. Kemudian akan menampilkan hasil perhitungan jarak.

Masukan:

Hasil Ekstraksi ciri citra masukan, Hasil ektraksi ciri database

penghitungan jarak: ekstrasksi ciri data masukan dengan ekstrasksi ciri

database

Keluaran: hasil perhitungan jarak

Mulai

(41)

Proses penentuan keluaran adalah subproses terakhir dari proses pengenalan angka.

Hasil pengenalan angka ditentukan berdasarkan jarak minimum yang diperoleh setelah

proses penghitungan jarak.

Gambar 3.12 Diagram alir penentuan keluaran.

Dari gampar 3.12, masukannya adalah hasil perhitungan jarak berupa matriks.

Masing-masing matriks diinisialisasi dari angka (1, 2, 3, 4, 5, 6, 7, 8, 9, 0). Setelah proses

inisialisasi, kemudian mencari nilai jarak paling minimum dengan menggunakan rumus:

citra keluaran = min(r); min (r)=nilai jarak minimum. Program memanggil nilai jarak yang

paling minimum, kemudian nilai yang paling minimum tampil sesuai dengan inisialisasi

yang telah diberikan. Inisialisasi tersebut adalah sebagai hasil akhir dari proses pengenalan

angka.. Nilai minimum ini adalah nilai hasil perhitungan jarak dari ektraksi ciri database dengan ekstraksi ciri data uji, kemudian diambil nilai maksimum(j_m) dari nilai jarak

minimum yang diperoleh. Untuk mendapatkan nilai maksimum ini, akan dilakukan

percobaan sebanyak 5 kali terhadap masing-masing karakter, yaitu karakter angka 0

sampai dengan angka 9. Dari 5 kali percobaan, nilai maksimum dari setiap karakter

tersebut akan diambil dan digunakan sebagai batas maksimum. Batas maksimum yang

(42)

lain. Nilai maksimum tersebut dinamai dengan j_max. Jika nilai minimum lebih besar dari

nilai maksimum, maka “tidak dikenali”. Selanjutnya proses penentuan keluaran dan proses

selesai. Gambar 3.12 menunjukkan diagram alir program penentuan hasil pengenalan.

3.3 Proses pembentukan Database Angka

Penentuan pengenalan angka membutuhkan database angka yang digunakan sebagai acuan dalam pengenalan angka. Pembentukan database pada penelitian yang akan dilakukan terdiri dari 4 set database; 4 set tersebut adalah: 64x64, 32x32, 16x16, 8x8. Masing-masing set terdiri dari 10 angka yaitu 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, sehingga semuanya

berjumlah 40. Diagram alir pembentukan database ditunjukkan kan pada gambar 3.12.

Gambar 3.13. Diagram alir pembentukan database

Diagram alir pembentukan database seperti yang ditunjukkan pada gambar 3.13,

masukan adalah citra angka preprocessing (grayscale, cropping dan resizing). Ukuran rezising citra angka menyesuaikan dengan ukuran FFT yang digunakan. Citra karakter tersebut diekstraksi menggunakan FFT2D dan menghitung nilai absolut dari FFT,

kemudian mengatur frekuensi rendah diletakkan di bagian tengah. Seperempat bagian

(43)

3.4 Proses Pembuatan Perangkat Lunak.

Sistem pengenalan karakter angka pada keping plat menggunakan matlab yang

berfungsi sebagai antarmuka pengguna dalam proses pengenalan. Perangakat lunak yang

digunakan adalah Matlab 7.04. Tampilan matlab dapat dilihat pada gambar 3.13

Gambar 3.14. Tampilan awal dari matlab yang digunakan.

3.5 Angka Uji

Angka uji diambil setelah pengguna menekan tombol “Ambil Gambar”. Hasil citra

atau sampel diambil dengan posisi keping plat sudah tetap dan menggunakan pencahayaan

yang di laboratoium Tugas Akhir. Proses tersebut melalui tahap preprocessing dan ekstraksi ciri FFT. Hasil proses tersebut disimpan dalam bentuk variabel dan kemudian

diproses kembali untuk mendapatkan hasil pengenalan angka keping plat.

(44)

Tampilan antarmuka pada perancangan ini menggunakan GUI Matlab. Tampilan ini

digunakan untuk mempermudah dalam menggunakan sistem yang dibuat. Tampilan GUI

sistem pembacaan angka plat nomor yang akan dibuat dapat dilihat pada gambar 3.15.

Gambar 3.15. Tampilan Utama Program Pengenalan Angka

Tabel 3.3 Keterangan Tampilan Utama Program

Nama Bagian Deskripsi

Tombol ON Tombol ON digunakan untuk meng- ON -kan webcam Tombol Ambil Gambar Tombol ambil gambar digunakan untuk mencuplik citra Axes 1 pada panel Video

webcam

Untuk menampilkan citra yang diambil dengan menggunakan webcam.

Axes 2 pada panel

Preprocessing Untuk menampilkan citra hasil cropping Axes 3 pada panel

Preprocessing Untuk menampilkan citra hasil resizing Axes 4 pada panel

pengenalan Untuk menampilkan citra hasil transformasi FFT Axes 5 pada panel

pengenalan Untuk menampilkan citra hasil ekstraksi ciri Pop menu Untuk memilih variasi FFT yang digunakan.

Tombol Proses Tombol proses digunakan untuk proses pengenalan citra kepingan plat.

Panel Keluaran Untuk menampilkan hasil keluaran dalam bentuk teks Tombol Reset Tombol reset digunakan untuk me- reset program untuk

melakukan pengenalan baru.

(45)

29

BAB IV

HASIL DAN PEMBAHASAN

Hasil dan pembahasan merupakan tahap penulisan dan pembahasan pengujian sistem

program yang sudah dirancang. Pengujian yang dilakukan pada penulisan ini

menggunakan 10 buah citra angka kepingan plat nomor kendaraan beroda dua, 3 buah citra

angka kepingan plat mobil dan citra huruf kepingan plat nomor beroda dua. Pengujian

sistem perlu dilakukan untuk mengetahui suatu sistem dapat bekerja dengan baik sesuai

dengan perancangan.

4.1

Pengujian Program Pengenalan Angka Secara

Real Time

.

Pengujian program bertujuan untuk memastikan apakah program yang telah dibuat

dapat bekerja sesuai dengan perancangan. Pengujian program menggunakan perangkat

keras dan perangkat lunak sebagai berikut :

a. Processor Intel® CoreTM B940 2.0GHz.

b. RAM 1 GB

c. Matlab 7.0.4.

Program pengenalan dapat dijalankan dengan langkah-langkah di bawah ini :

1. Mengklik dua kali icon Matlab seperti gambar 4.1

Gambar 4.1. Icon Matlab 7.0.4.

(46)

Gambar 4.2 Tampilan awal Matlab

3. Mengganti Current Directory dengan Directory yang dipakai untuk menyimpan program yang digunakan. Kemudian ketik guide pengenalan2 pada command window, pada layar akan muncul tampilan jendela pengenalan2 seperti yang ditunjukkan pada

gambar 4.3, kemudian klik run untuk menjalankan program.

(47)

4. Setelah di-run, maka akan muncul tampilan utama program seperti pada gambar 4.4.

Gambar 4.4 Tampilan Utama Program Pengenalan Angka Secara Real Time 5. Selanjutnya adalah tekan tombol pushbutton yang ada pada tampilan sesuai dengan

fungsinya masing-masing.

Tampilan utama program ada 5 tombol pushbutton.

a. tombol pushbutton 1 adalah sebagai tombol ON, berfungsi untuk meng–ON-kan video webcam.

b. tombol pushbutton 2 adalah sebagai tombol Ambil Gambar, berfungsi untuk mencuplik video.

c. tombol pushbutton 3 adalah sebagai tombol proses, berfungsi untuk menjalankan perintah program cropping, resizing, transformasi FFT, ekstraksi ciri dan penentuan keluaran pengenalan angka.

d. tombol pushbutton 4 adalah sebagai tombol reset, berfungsi untuk me-reset jika pengguna akan melakukan pengenalan baru.

e. tombol pushbutton 5 adalah sebagai tombol keluar, berfungsi untuk keluar dari program.

1 2

4

3

(48)

Cara mengoperasikan tampilan utama program pengenalan angka adalah sebagai

berikut:

a. Tekan tombol ON untuk meng-ON-kan video webcam, sehingga video citra yang akan dicuplik muncul pada axes 1 seperti pada gambar 4.5.

Gambar 4.5 Tampilan setelah tombol ON Tombol ON menjalankan program sebagai berikut :

imaqhwinfo;

vid=videoinput('winvideo',1,'RGB24_640X480');%ukuran resolusi yang

digunakan

vidRes = get(vid, 'VideoResolution');

imWidth = 640 ;

imHeight = 480;

nBands = get(vid, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1);

preview(vid, hImage) % menampilkan video pada saat video on

(49)

b. Tekan tombol “Ambil Gambar” digunakan untuk mencuplik citra yang telah

direkam. Tampilan adalah warna keabu-abuan, karena citra yang akan digunakan

untuk proses selanjutnya adalah citra warna keabu-abuan. Contoh tampilan

diperlihatkan pada gambar 4.6.

Gambar 4.6 Tampilan setelah tombol “Ambil Gambar”.

TombolAmbil Gambaryang digunakan untuk mencuplik citra berisi perintah program berikut ini :

imaqhwinfo;

vid=videoinput('winvideo',1,'RGB24_640X480');

vid.FramesPerTrigger = 1 ;

vid.ReturnedColorspace = 'gray';

triggerconfig(vid, 'manual');

vidRes = get(vid, 'VideoResolution');

imWidth = 640;

imHeight = 480;

nBands = get(vid, 'NumberOfBands');

hImage = image(zeros(imHeight, imWidth, nBands), 'parent',handles.axes1);

start(vid);

trigger(vid);

stoppreview(vid);

Perintah program pada tombol Ambil Gambar hampir sama dengan perintah program

(50)

Perintah program getdata adalah untuk mencuplik citra pada saat webcam dalam

Citra yang telah dicuplik akan diinisialisasi dengan menggunakan handles dan ditampilkan pada axes1. Handles adalah sebuah inisialisasi yang digunakan agar dapat dipanggil dalam file figure maupun file .m .

Setelah mencuplik citra, klikukuran variasi FFT pada pop-up menu yang digunakan untuk pengenalan citra kepingan plat nomor yang akan dikenali.

Indeks baris pertama pada pop-up menu adalah nfft= 0, indeks baris ke dua adalah nfft=64, indeks baris ke tiga adalah nfft=32, indeks baris ke empat adalah nfft=16, indeks

baris ke adalah nfft=8. Nfft adalah nilai ukuran variasi FFT. Perintah program untuk indeks

ukuran variasi FFT yang akan digunakan adalah sebagai berikut:

indeks=get(handles.popupmenu1,'Value');

berisi program cropping, resizing, transformasi FFT, ekstraksi ciri, jarak euclidean dan dan hasilnya akan ditampilkan pada GUI yang ada. Tombol proses dapat

melakukan proses setelah memilih variasi FFT yang diinginkan. Perintah program

(51)

pengenalan. Cropping dilakukan secara manual yaitu dengan mencari koordinat x dan y, kemudian nilainya dimasukkan ke dalam program. Pada percobaan yang

dilakukan, batasan cropping tidak bisa fix. Hal ini dikarenakan keterbatasan dari program. Program cropping adalah sebagai berikut:

%Proses cropping

Perintah program imresize adalah untuk mengeksekusi ukuran resizing yang akan digunakan. Ukuran resizing citra yang digunakan, menyesuaikan dengan ukuran variasi FFT yang dipakai. Jika ukuran variasi FFT = 64x64, maka ukuran resizing adalah 64x64. Jika ukuran variasi FFT = 32x32 maka ukuran resizingnya adalah 32x32. Jika ukuran variasi FFT = 16x16 maka ukuran resizingnya adalah 16x16, dan jika ukuran variasi FFT= 8x8, maka ukuran resizingnya adalah 8x8 piksel. Hasil resizing dinormalisasi dengan cara membagi hasil resizing dengan 255 (nilai maksimum dari citra grayscale). Citra yang dicuplik adalah citra grayscale yang bernilai 0 sampai 255, sehingga pada normalisasi dibagi dengan nilai maksimum yaitu 255. Hasil resizing yang diperoleh menjadi nilai masukan untuk proses berikutnya. Apabila pengguna sudah memilih ukuran variasi FFT

yang akan digunakan, sistem akan menjalankan program berikut untuk melanjutkan proses

(52)

im=imresize(C,[nfft nfft])

im=im/255; %hasil resizing dibagi dengan nilai maksimum dari ctra

grayscale yaitu 255.

Untuk citra masukan sebelum proses pengenalan, ada perubahan minor dari

perancangan, yaitu menambah normalisasi terhadap citra hasil resizing sebelum tahap proses pengenalan. Hal ini bertujuan untuk mendapatkan hasil yang lebih baik.

Selanjutnya program menjalankan inisialisasi variabel yang digunakan dalam proses

ekstraksi ciri.

% Proses Pengenalan

%============================= Transformasi FFT2========================

F=fft2(im); %melalukan FFT2D terhadap citra

F=abs(F); %menghitung nilai absolut terhadap hasil FFT2D

F=fftshift(F);%melalukan pergeseran terhadap hasil FFT2D

mF=max(F(:));

F1=F/mF;

F1=F1*2; %tampilan F1 dikali dengan dua, karena gambar terlalu kecil.

h=('Hasil Transformasi'); set(handles.text6,'string',h);

axes(handles.axes4)

imshow(F1);

axis on

%=============== mengambil bagian tengah sebagai ekstraksi =============

Out=F(((nfft/4)+1):(3*nfft/4),((nfft/4)+1):(3*nfft/4));

my=max(Out(:)); % normalisasi

Out1=Out/my;

Out1=Out1*2; %tampilan Out1 dikali dengan dua,karena gambar terlalu

kecil.

E=('Ekstraksi Ciri'); set(handles.text7,'string',E);

axes(handles.axes6) imshow(Out1);

axis on

y=Out(:);

Program diatas adalah perintah untuk menjalankan proses ektraksi ciri. Citra

(53)

ditransformasikan menggunakan FFT2 yang diberi nama dengan F. Hasil transformasi

ditampilkan dengan handles.axes pada axes4. Selanjutnya melakukan pergeseran frekwensi rendah ke bagian tengah dengan menggunakan fftshift. Kemudian bagian tengah dari hasil transformasi diambil sebagai hasil ekstraksi ciri dan ditampilkan dengan imshow yang terlebih dahulu diinisialisasi melalui handles.axes, ditampilkan pada axes6.

Perintah program diatas adalah untuk mengeluarkan database yang akan dibandingkan dalam perhitungan jarak. Pengeluaran database pembanding menyesuaikan dengan pemilihan variasi FFT pada pop – up menu.

Perintah program untuk menghitung jarak antara citra masukan dengan citra

database adalah sebagai berikut: for n=1:10

r(n)=fjarak(y,a(:,n));

end

Perintah program untuk mencari nilai minimum dari perhitungan jarak Euclidean adalah sebagai berikut:

b1=find(min(r)==r);

%============Deskripsi string inisialisasi 10 nilai ==================

x1={'0';'1';'2';'3';'4';'5';'6';'7';'8';'9'};

%========== penentuan keluaran nilai minimum ==========================

(54)

Variabel x1 adalah inisialisasi 10 nilai, mulai dari angka 0 sampai dengan angka 9. Nilai

yang paling minimum akan dipanggil sesuai nama inisialisasi dan kemudian ditampilkan

ke dalam file figure dengan menggunakan perintah set. Gambar 4.7 menampilkan hasil pengenalan salah satu citra angka kepingan plat nomor setelah mengklik tombol proses

pada GUI. Dari hasil pengujian, tombol-tombol sudah bekerja sesuai dengan yang

diharapkan.

Gambar 4.7. Tampilan setelah program diproses.

d. Tombol reset

Tekan tombol reset untuk melakukan pengenalan baru. Perintah program pada tombol reset adalah sebagai berikut :

delete(figure(pengenalan2));

figure(pengenalan2));

e. Tombol Keluar

Tekan tombol keluar apabila pengguna ingin keluar dari program pengenalan

angka. Perintah program pada tombol keluar adalah sebagai berikut :

delete(figure(pengenalan2));

Berdasarkan pengujian program pengenalan angka secara real time, tombol yang ada pada tampilan utama program dapat bekerja sesuai dengan perancangan. Dengan

demikian, program pengenalan angka dapat digunakan untuk mencari dan menetukan nilai

(55)

4.2

Penenetuan Nilai Parameter

Penentuan nilai parameter dapat dilakukan setelah melakukan pengujian program

dan sudah bekerja sesuai dengan yang diinginkan. Pada program pengenalan angka ini ada

3 tahap pengujian program yang dilakukan. Tahapan pertama adalah pengujian parameter

pengaturan pengenalan angka dengan variasi FFT yang digunakan dalam proses

pengenalan. Pengujian parameter ini bertujuan untuk mencari nilai dari setiap parameter

yang menghasilkan tingkat pengenalan yang terbaik. Tahapan pengujian kedua adalah

mencari batasan jarak optimal yang dapat digunakan oleh sistem, sehingga sistem tidak

akan mengenali karakter lain selain karakter angka (0,1, 2, 3, 4, 5, 6, 7, 8, 9). Tahapan

ketiga adalah pengujian dengan karakter angka kepingan plat nomor mobil dan huruf

kepingan plat nomor kendaraan beroda dua terhadap variasi FFT yang terbaik.

4.2.1 Pengujian Parameter Pengaturan Pengenalan Angka

Pengujian ini dilakukan untuk melihat seberapa besar tingkat pengenalan yang

dapat mengenali citra masukan dari masing-masing parameter yang digunakan dalam

proses pengenalan. Untuk menentukan nilai parameter yang akan digunakan adalah

melakukan percobaan sebanyak 3 kali dengan variasi FFT yang berbeda-beda, yaitu variasi

FFT8x8piksel, 16x16piksel, 32x32piksel, dan 64x64piksel terhadap 10 karakter angka

kepingan plat nomor kendaraan sesuai dengan perancangan. Nilai parameter yang akan

digunakan adalah variasi FFT yang mempunyai tingkat pengenalan angka sebesar 100%.

Pada perancangan, variasi FFT yang dievaluasi adalah variasi FFT64x64. Pada

pembahasan ini ada perubahan minor yaitu ukuran variasi FFT yang dievaluasi. Dengan

menambahkan normalisasi sebelum tahap proses pengenalan, sistem sudah dapat

mengenali citra angka pada variasi FFT32x32 dan variasi FFT64x64. Oleh sebab itu,

(56)
(57)

c. Variasi FFT 16 x 16 piksel

Keluaran Jarak keluaran Jarak keluaran Jarak

(58)

e. Presentase tingkat pengenalan sebelum dinormalisasi

Gambar 4.8 Grafik tingkat penegenalan sebelum dinormalisasi.

Dari data hasil pengujian sebelum normalisasi, seperti yang ditunjukkan pada tabel

4.1(e) dan gambar 4.8, diperoleh tingkat pengenalan maksimal sebesar 20%.

Tabel 4.2. Data hasil percobaan untuk setiap variasi FFT setelah dinormalisasi dengan

intensitas cahaya 148-168Candela.

keluaran Jarak keluaran Jarak keluaran Jarak

0 0 4,95 0 2,8 0 4,2

(59)

Tingkat pengenalan = ∑ 100% = 100% = 50 % (4.1) Keterangan : ∑ = jumlah angka kepingan plat yang dikenali dan benar.

b. Variasi FFT 16 x 16

Karakter

angka

Percobaan

1 2 3

keluaran Jarak keluaran Jarak keluaran Jarak

0 0 25,30 0 24,32 0 21,4

Tingkat pengenalan = 27

30 100% = 90 %

keluaran Jarak keluaran Jarak keluaran Jarak

0 0 28,42 0 21,15 0 46,05

Tingkat pengenalan = 30

(60)

d. Variasi FFT 64 x 64

Karakter

angka

Percobaan

1 2 3

keluaran Jarak keluaran Jarak keluaran Jarak

0 0 92,94 0 90,93 0 184,91

Berdasarkan data hasil percobaan pada tabel 4.2, persentase tingkat pengenalan dapat

dilihat pada tabel 4.3.

Tabel 4.3 Hasil persentase tingkat pengenalan

Persentase Tingkat Pengenalan Variasi FFT Tingkat Pengenalan (%)

8 x 8 50

16 x 16 90

32 x 32 100

64 x 64 100

Gambar 4.9. Pengaruh variasi FFT terhadap tingkat pengenalan

0

(61)

Tabel 4.3 memperlihatkan bahwa sistem sudah dapat mengenali 100% pada variasi

FFT32x32 dan variasi FFT64x64. Dari tabel 4.3, dapat digambarkan grafik variasi FFT

dengan tingkat pengenalan seperti pada gambar 4.9. Grafik pada gambar 4.9 menunjukkan

bahwa, semakin kecil ukuran variasi FFT, maka tingkat pengenalan semakin rendah. Hal

ini disebabkan karena semakin kecil ukuran variasi FFT, citra semakin terlihat tidak

berbentuk citra masukan, sehingga tingkat pengenalannya juga akan semakin rendah.

Semakin besar ukuran variasi FFT, tingkat pengenalannya semakin tinggi.

Data sebelum dinormalisasi menunjukkan tingkat pengenalan maksimal 20%, dan

data setelah dinormalisasi menunjukkan tingkat pengenalan hingga 100% seperti yang

ditunjukkan pada gambar 4.8 dan gambar 4.9. Dapat disimpulkan bahwa dengan

menambahkan dinormalisasi sebelum tahap proses pengenalan, tingkat pengenalan

menjadi lebih baik.

Tabel 4.4 Gambar salah satu citra angka setiap variasi FFT.

(a) Variasi FFT

(b) Resizing

(c) Hasil Transformasi

(d) Ekstraksi Ciri

8x8

16 x 16

32 x 32

Gambar

Gambar 4.1.   Tingkat Pengenalan menggunakan cahaya lampu fokus ……… ......... 55
Gambar 2.1. Contoh koordinat citra digital
Gambar 2.2. Citra skala keabuan
Gambar 2.3 Transformasi Spasial[4]
+7

Referensi

Dokumen terkait

Berdasarkan hasil analisis dengan menggunakan uji Kruskal-Wallis diperoleh tidak terdapat perbedaan kepadatan telur di dalam rumah berdasarkan warna ovitrap pada ketinggian

Metode penelitian ini meliputi penentuan rendemen dan berat jenis ekstrak air perasan daun mimba, analisis skrining fitokimia senyawa metabolit sekunder, dan uji

Agar pelaksanaan ketentuan Pasal 114 KUHAP dapat berjalan maksimal dan memiliki suatu kepastian hukum maka perlu diatur dalam suatu peraturan perundang-undangan yang

Tajam penglihatan akhir pada kasus trauma mata dipengaruhi oleh multifaktor, antara lain : penyebab trauma, akibat langsung pada jaringan ikat bola mata yang terkena, ada

Setelah mengetahui BESARAN MASALAH ISPA BALITA DI INDONESIA dan mampu menjelaskan beda DEFINISI penyakit ISPA dan Pneumonia, maka tenaga kesehatan akan mempelajari

Keuntungan (kerugian) dari perubahan nilai aset keuangan dalam kelompok tersedia untuk dijual.. Utang atas surat berharga yang dijual dengan janji dibeli kembali (

PLP2K-BK, pengisian kuesioner dan pelengkapan data pendukung. Melakukan evaluasi dan verifikasi dokumen usulan yang disampaikan oleh pemerintah Kota/Kabupaten di wilayahnya

Penawaran umum saham ditawarkan kepada para investor secara keseluruhan, sedangkan pada penawaran umum terbatas saham yang ditawarkan perusahaan kepada pemegang