BAB 2 LANDASAN TEORI
2.1
Plat nomor Dalam artikel pada situs http://id.wikipedia.org/wiki/Plat_nomor, plat nomor adalah salah satu jenis identifikasi kendaraan bermotor. Plat nomor juga disebut plat registrasi kendaraan, atau di Amerika Serikat dikenal sebagai plat izin (license plate). Bentuknya berupa potongan plat logam atau plastik yang dipasang pada kendaraan bermotor sebagai identifikasi resmi. Biasanya plat nomor jumlahnya sepasang, untuk dipasang di depan dan belakang kendaraan. Namun ada jurisdiksi tertentu atau jenis kendaraan tertentu yang hanya membutuhkan satu plat nomor, biasanya untuk dipasang di bagian belakang. Plat nomor memiliki nomor seri yakni susunan huruf dan angka yang dikhususkan bagi kendaraan tersebut. Nomor ini di Indonesia disebut nomor polisi, dan biasa dipadukan dengan informasi lain mengenai kendaraan bersangkutan, seperti warna, merk, model, tahun pembuatan, nomor identifikasi kendaraan atau VIN, dan tentu saja nama dan alamat pemilikinya. Semua data ini juga tertera dalam Surat Tanda Nomor Kendaraan Bermotor atau STNK yang merupakan surat bukti bahwa nomor polisi itu memang ditetapkan bagi kendaraan tersebut. Karena wujudnya yang spesifik, plat nomor juga digunakan sebagai identifikasi kendaraan oleh banyak lembaga, seperti kepolisian, perusahaan asuransi mobil, bengkel, tempat parkir, dan juga armada kendaraan bermotor. Di beberapa wilayah jurisdiksi,
10
11 plat nomor juga dipakai sebagai bukti bahwa kendaraan tersebut sudah memiliki 'izin' untuk beroperasi di jalan raya umum, atau juga sebagai bukti pembayaran pajak kendaraan bermotor. Namun di beberapa negara, seperti Inggris misalnya, mobil selalu menggunakan plat nomor yang sama sejak saat pertama dijual hingga akhir masa operasinya, dengan pertimbangan semua informasi yang ada di plat nomor dan kendaraan bersangkutan juga tidak pernah berubah. Sementara di tempat lain, seperti Amerika Serikat, plat nomor perlu diganti secara berkala yakni saat habis masa berlakunya, atau karena dijual atau berpindah tangan. Ini yang dikenal dengan kebijakan "plate-to-owner" atau plat nomor yang terkait dengan kepemilikan. Artinya, ketika mobil dijual, penjual harus melepas plat nomornya sementara pembeli harus meminta plat nomor baru dari pihak berwenang sesuai wilayah tempat tinggalnya dan mendaftarkan kembali atas namanya (balik nama). Bila orang yang menjual mobil tersebut membeli mobil baru, ia dapat meminta agar plat nomornya yang lama dipasang di mobilnya yang baru. Bila tidak, ia harus mengembalikan
plat
nomor
ke
pihak
berwenang,
menghancurkannya,
atau
menyimpannya sebagai barang kenangan. Di banyak negara, plat nomor dikeluarkan oleh badan pemerintahan nasional, kecuali di Kanada, Mexico, Australia, Jerman, Pakistan, dan Amerika Serikat, karena plat nomor diterbitkan oleh lembaga pemerintah provinsi, wilayah, atau negara bagian.
12 Plat nomor usianya hampir sama dengan mobil, dan muncul saat periode awal transisi dari kendaraan berkuda yakni antara 1890 hingga 1910. Negara bagian New York di Amerika Serikat mengharuskan penggunaan plat nomor sejak tahun 1901. Awalnya plat nomor tidak dikeluarkan pemerintah, dan di banyak wilayah Amerika, para para pengendara diharuskan membuat plat nomor sendiri. Negara bagian Massachusetts dan West Virginia adalah yang pertama menerbitkan plat nomor pada tahun 1903. Plat nomor awal dibuat dari porselin yang dibakar menjadi besi, atau keramik biasa yang tidak dibakar, sehingga mudah pecah dan tidak praktis. Bahanbahan plat nomor yang kemudian termasuk karton, kulit, plastik, bahkan juga tembaga dan kedele. Plat nomor awal memiliki bermacam bentuk dan ukuran, sehingga kalau dipindahkan antar kendaraan harus dibuat lobang baru untuk memasukkan baut ke bumper. Standarisasi plat nomor baru dimulai tahun 1957 saat pabrik mobil sepakat dengan berbagai pemerintahan dan organisasi standar internasional. Meski masih ada variasi lokal, plat nomor umumnya mengikuti tiga standar dunia: •
pertama yang dipakai di negara-negara di belahan Barat bumi, yakni berukuran 15 x 30 cm (6 x 12 inci),
•
yang kedua memiliki standar Uni Eropa, yakni 11 x 52 cm,
•
bentuk ketiga dipakai di Australia and banyak negara Asia-Pasifik, yakni lebih panjang dibanding model negara belahan Barat bumi, namun lebih tinggi dari plat Uni Eropa.
13 2.1.1 Plat Nomor Kendaraan Bermotor di Indonesia Tanda Nomor Kendaraan Bermotor (TNKB), atau seringkali disebut plat nomor, adalah plat aluminium tanda kendaraan bermotor di Indonesia yang telah didaftarkan
pada
Kantor
Bersama
Samsat
(http://id.wikipedia.org/wiki/Tanda_Nomor_Kendaraan_Bermotor).
Gambar 2.1 Plat Nomor Kendaraan Bermotor di Indonesia
2.1.1.1 Sejarah Penggunaan Plat Nomor Kendaraan Bermotor di Indonesia Penggunaan tanda nomor kendaraan bermotor di Indonesia, terutama di Jawa, merupakan warisan sejak zaman Hindia Belanda, yang menggunakan kode wilayah berdasarkan pembagian wilayah karesidenan.
14 2.1.1.2 Spesifikasi Teknis Tanda Nomor Kendaraan Bermotor berbentuk plat aluminium dengan cetakan tulisan dua baris. Baris pertama menunjukkan: kode wilayah (huruf), nomor polisi (angka), dan kode/seri akhir wilayah (huruf) dan baris kedua menunjukkan bulan dan tahun masa berlaku. Bahan baku TNKB adalah aluminium dengan ketebalan 1 mm. Ukuran TNKB untuk kendaraan bermotor roda 2 dan roda 3 adalah 250x105 mm, sedangkan untuk kendaraan bermotor roda 4 atau lebih adalah 395x135 mm. Terdapat cetakan garis lurus pembatas lebar 5 mm diantara ruang nomor polisi dengan ruang angka masa berlaku. Pada sudut kanan atas dan sudut kiri bawah terdapat tanda khusus (security mark) cetakan lambang Polisi Lalu Lintas; sedangkan pada sisi sebelah kanan dan sisi sebelah kiri ada tanda khusus cetakan "DITLANTAS POLRI" yang merupakan hak paten pembuatan TNKB oleh Polri.
2.1.1.3 Warna Warna Tanda Nomor Kendaraan Bermotor ditetapkan sebagai berikut: •
Kendaraan bermotor bukan umum dan kendaraan bermotor sewa: Warna dasar hitam dengan tulisan berwarna putih
•
Kendaraan bermotor umum: Warna dasar kuning dengan tulisan berwarna hitam
15 •
Kendaraan bermotor milik Pemerintah: Warna dasar merah dengan tulisan berwarna putih
•
Kendaraan bermotor Corps Diplomatik Negara Asing: Warna dasar merah dengan tulisan berwarna hitam
2.1.1.4 Nomor Urut Pendaftaran Nomor urut pendaftaran kendaraan bermotor, atau disebut pula nomor polisi, diberikan sesuai dengan urutan pendaftaran kendaraan bermotor. Nomor urut tersebut terdiri dari 1-4 angka, dan ditempatkan setelah Kode Wilayah Pendaftaran. Nomor urut pendaftaran dialokasikan sesuai kelompok jenis kendaraan bermotor: •
1 - 1999, dialokasikan untuk kendaraan penumpang
•
2000 - 6999, dialokasikan untuk sepeda motor
•
7000 - 7999, dialokasikan untuk bus
•
8000 - 9999, dialokasikan untuk kendaraan beban
Apabila nomor urut pendaftaran yang telah dialokasikan habis digunakan, maka nomor urut pendaftaran berikutnya kembali ke nomor awal yang telah dialokasikan dengan diberi tanda pengenal huruf seri A - Z di belakang angka pendaftaran. Apabila huruf di belakang angka sebagai tanda pengenal kelipatan telah sampai pada huruf Z, maka penomoran dapat menggunakan 2 huruf seri di belakang angka pendaftaran.
16 Khusus untuk DKI Jakarta, dapat menggunakan hingga 3 huruf seri di belakang angka pendaftaran.
2.1.1.5 Kode Wilayah Pendaftaran Kendaraan Bermotor Kode wilayah pendaftaran kendaraan bermotor ditetapkan oleh Peraturan Kapolri Nomor Polisi 4 Tahun 2006. ¾ Sumatera •
BL = Nanggroe Aceh Darussalam
•
BK = Sumatera Utara Bagian Barat
•
BB = Sumatera Utara Bagian Timur
•
BA = Sumatera Barat
•
BM = Riau
•
BP = Kepulauan Riau
•
BG = Sumatera Selatan
•
BN = Kepulauan Bangka Belitung
•
BE = Lampung
•
BD = Bengkulu
•
BH = Jambi
17 ¾ Jawa o DKI Jakarta, Banten, Jawa Barat •
B = DKI Jakarta, Kabupaten/Kota Tangerang, Kabupaten/Kota Bekasi, Kota Depok
•
A = Banten: Kabupaten Serang, Kabupaten Pandeglang, Kota Cilegon, Kabupaten Lebak
•
D = Kabupaten/Kota Bandung
•
E = eks Karesidenan Cirebon: Kabupaten/Kota Cirebon, Kabupaten Indramayu, Kabupaten Majalengka, Kabupaten Kuningan
•
F = eks Karesidenan Bogor: Kabupaten/Kota Bogor, Kabupaten Cianjur, Kabupaten/Kota Sukabumi
•
T = Kabupaten Purwakarta, Kabupaten Karawang, Kabupaten Subang
•
Z = Kabupaten Garut, Kabupaten/Kota Tasikmalaya, Kabupaten Sumedang, Kabupaten Ciamis, Kota Banjar
o Jawa Tengah dan DI Yogyakarta •
H = eks Karesidenan Semarang: Kabupaten/Kota Semarang, Kota Salatiga, Kabupaten Kendal, Kabupaten Demak
18 •
G
=
eks
Karesidenan
Pekalongan:
Kabupaten/Kota
Pekalongan,
Kabupaten/Kota Tegal, Kabupaten Brebes, Kabupaten Batang, Kabupaten Pemalang •
K = eks Karesidenan Pati: Kabupaten Pati, Kabupaten Kudus, Kabupaten Jepara, Kabupaten Rembang, Kabupaten Blora, Kabupaten Grobogan
•
R = eks Karesidenan Banyumas: Kabupaten Banyumas, Kabupaten Cilacap, Kabupaten Purbalingga, Kabupaten Banjarnegara
•
AA = eks Karesidenan Kedu: Kabupaten/Kota Magelang, Kabupaten Purworejo, Kabupaten Kebumen, Kabupaten Temanggung, Kabupaten Wonosobo
•
AD = eks Karesidenan Surakarta: Kota Surakarta, Kabupaten Sukoharjo, Kabupaten
Boyolali,
Kabupaten
Sragen,
Kabupaten
Karanganyar,
Kabupaten Wonogiri, Kabupaten Klaten •
AB = DI Yogyakarta: Kota Yogyakarta, Kabupaten Bantul, Kabupaten Gunung Kidul, Kabupaten Sleman, Kabupaten Kulon Progo
o Jawa Timur •
L = Kota Surabaya
•
W = Kabupaten/Kota Mojokerto, Kabupaten Sidoarjo, Kabupaten Gresik[1]
•
N = eks Karesidenan Malang: Kabupaten/Kota Malang, Kabupaten/Kota Probolinggo, Kabupaten/Kota Pasuruan, Kabupaten Lumajang
19 •
P = eks Karesidenan Besuki: Kabupaten Bondowoso, Kabupaten Situbondo, Kabupaten Jember, Kabupaten Banyuwangi
•
S = eks Karesidenan Bojonegoro: Kabupaten Bojonegoro, Kabupaten Tuban, Kabupaten Lamongan, Kabupaten Jombang[2]
•
AG
=
Kabupaten/Kota
Kediri,
Kabupaten/Kota
Blitar,
Kabupaten
Tulungagung, Kabupaten Nganjuk, Kabupaten Trenggalek •
AE = Kabupaten/Kota Madiun, Kabupaten Ngawi, Kabupaten Magetan, Kabupaten Ponorogo, Kabupaten Pacitan
•
M = eks karesidenan madura: Kabupeten/Kabupaten sumenep,Kabupaten sampang,Kabupaten bangkalan
¾ Bali dan Nusa Tenggara •
DK = Bali
•
DR = NTB I (Pulau Lombok: Kota Mataram, Kabupaten Lombok Barat, Kabupaten Lombok Timur, Kabupaten Lombok Tengah)
•
EA = NTB II (Pulau Sumbawa: Kabupaten Sumbawa Barat, Kabupaten Sumbawa, Kabupaten Dompu, Kabupaten/Kota Bima)
•
DH = NTT I (Pulau Timor: Kabupaten/Kota Kupang, Kabupaten TTU, TTS, Kabupaten Rote Ndao)
•
ED = NTT II (Pulau Sumba: Kabupaten Sumba Barat, Kabupaten Sumba Timur)
20 •
EB = NTT III (Pulau Flores dan kepulauan: Kabupaten Manggarai Barat, Kabupaten Manggarai, Kabupaten Ngada, Kabupaten Ende, Kabupaten Sikka, Kabupaten Flores Timur, Kabupaten Lembata, Kabupaten Alor)
¾ Kalimantan •
KB = Kalimantan Barat
•
DA = Kalimantan Selatan
•
KH = Kalimantan Tengah
•
KT = Kalimantan Timur
¾ Sulawesi •
DB = Sulawesi Utara Daratan (Kota Manado, Kota Tomohon, Kota Bitung, Kabupaten
Bolaang
Mongondow,
Kabupaten
Minahasa,
Kabupaten
Minahasa Utara, Kabupaten Minahasa Selatan) •
DL = Sulawesi Utara Kepulauan (Kabupaten Kepulauan Sangihe, Kabupaten Kepulauan Talaud)
•
DM = Gorontalo
•
DN = Sulawesi Tengah
•
DT = Sulawesi Tenggara
•
DD = Sulawesi Selatan
•
DC = Sulawesi Barat
21 ¾ Maluku dan Papua •
DE = Maluku
•
DG = Maluku Utara
•
DS = Papua dan Irian Jaya Barat
¾ Lain-lain •
DF = Timor Timur (tidak digunakan, karena telah menjadi negara tersendiri)
¾ Khusus •
CD = Corps Diplomatique (Diplomat dari Perwakilan Luar Negeri (Kedutaan), lihat pula bagian di bawah ini.
•
CC = Corps Consulate, perwakilan luar negeri dari kantor konsulat jenderal.
•
KAA = Konferensi Asia-Afrika 2005. Khusus untuk kesempatan ini, mobilmobil para peserta konferensi memiliki kode ini.
2.1.1.5.1 Corps Diplomatique dan Corps Consulate Mobil
milik Corps
Diplomatic (Kedutaan
Besar
maupun
Organisasi
Internasional) memiliki kode khusus, yakni CD diikuti dengan angka. Untuk mendapatkan STNK dan BPKB, haruslah mendapatkan rekomendasi dari Departemen Luar Negeri. Berikut adalah daftar nomor polisi untuk Corps Diplomatic di Indonesia:
22 • CD 12: Amerika Serikat • CD 13: India • CD 14: Britania Raya • CD 15: Vatikan • CD 16: Norwegia • CD 17: Pakistan • CD 18: Myanmar • CD 19: China • CD 20: Swedia • CD 21: Arab Saudi • CD 22: Thailand • CD 23: Mesir • CD 24: Perancis • CD 25: Filipina • CD 26: Australia • CD 27: Irak • CD 28: Belgia • CD 29: Uni Emirat Arab
23 • CD 30: Italia • CD 31: Swiss • CD 32: Jerman • CD 33: Sri Lanka • CD 34: Denmark • CD 35: Kanada • CD 36: Brazil • CD 37: Rusia • CD 38: Afghanistan • CD 39: Yugoslavia (Serbia ?) • CD 40: Republik Ceko • CD 41: Finlandia • CD 42: Meksiko • CD 43: Hongaria • CD 44: Polandia • CD 45: Iran • CD 47: Malaysia • CD 48: Turki
24 • CD 49: Jepang • CD 50: Bulgaria • CD 51: Kamboja • CD 52: Argentina • CD 53: Romania • CD 54: Yunani • CD 55: Yordania • CD 56: Austria • CD 57: Suriah • CD 58: UNDP • CD 59: Selandia Baru • CD 60: Belanda • CD 61: Yaman • CD 62: UPU • CD 63: Portugal • CD 64: Aljazair • CD 65: Korea Utara • CD 66: Vietnam
25 • CD 67: Singapura • CD 68: Spanyol • CD 69: Bangladesh • CD 70: Panama • CD 71: UNICEF • CD 72: UNESCO • CD 73: FAO • CD 74: WHO • CD 75: Korea Selatan • CD 76: ADB • CD 77: Bank Dunia • CD 78: IMF • CD 79: ILO • CD 80: Papua Nugini • CD 81: Nigeria • CD 82: Chili • CD 83: UNHCR • CD 84: WFP
26 • CD 85: Venezuela • CD 86: ESCAP • CD 87: Colombia • CD 88: Brunei • CD 89: UNIC • CD 90: IFC • CD 91: UNTAET • CD 97: Palang Merah • CD 98: Maroko • CD 99: Uni Eropa • CD 100: ASEAN (Sekretariat) • CD 101: Tunisia • CD 102: Kuwait • CD 103: Laos • CD 104: Palestina • CD 105: Kuba • CD 106: AIPO • CD 107: Libya
27 • CD 108: Peru • CD 109: Slowakia • CD 110: Sudan • CD 111: ASEAN (Yayasan) • CD 112: Utusan • CD 113: CIFOR • CD 114: Bosnia-Herzegovina • CD 115: Libanon • CD 116: Afrika Selatan • CD 117: Kroasia • CD 118: Ukraina • CD 119: Mali • CD 120: Uzbekistan • CD 121: Qatar • CD 122: UNFPA • CD 123: Mozambik • CD 124: Kepulauan Marshall
28 2.2
Kendaraan Dalam artikel yang terdapat pada http://id.wikipedia.org/wiki/Kendaraan, Kendaraan atau angkutan adalah alat transportasi selain makhluk hidup. Mereka biasanya buatan manusia (mobil, motor, kereta, perahu, pesawat), tetapi bukan buatan manusia juga bisa disebut kendaraan, seperti gunung es, dan batang pohon yang mengambang. Kendaraan dapat digerak oleh hewan, seperti gerobak. Definisi Pemerintah Republik Indonesia tentang Kendaraan: Peraturan Nomor 44 Tahun 1993 ¾ Kendaraan Bermotor adalah kendaraan yang digerakkan oleh peralatan teknik yang berada pada kendaraan itu. ¾ Sepeda Motor adalah kendaraan bermotor beroda dua, atau tiga tanpa rumahrumah baik dengan atau tanpa kereta samping. ¾ Mobil Penumpang adalah setiap kendaraan bermotor yang dilengkapi sebanyakbanyaknya 8 (delapan) tempat duduk tidak termasuk tempat duduk pengemudi, baik dengan maupun tanpa perlengkapan pengangkutan bagasi. ¾ Mobil Bus adalah setiap kendaraan bermotor yang dilengkapi lebih dari 8 (delapan) tempat duduk tidak termasuk tempat duduk pengemudi, baik dengan maupun tanpa perlengkapan pengangkutan bagasi. ¾ Mobil Barang adalah setiap kendaraan bermotor selain dari yang termasuk dalam sepeda motor, mobil penumpang dan mobil bus.
29 ¾ Kendaraan Khusus adalah kendaraan bermotor selain daripada kendaraan bermotor untuk penumpang dan kendaraan bermotor untuk barang, yang penggunaannya untuk keperluan khusus atau mengangkut barang-barang khusus.
2.3
Citra Pengertian citra menurut Murni (1992, p5) adalah keluaran suatu sistem perekaman data yang dapat bersifat optik berupa foto, bersifat analog berupa sinyalsinyal video seperti gambar pada monitor televisi, atau bersifat dijital sehingga dapat disimpan langsung pada suatu pita magnetik. Sedangkan menurut Banks (1990, p150) citra diartikan sebagai representasi dua dimensi dari bentuk 3 dimensi yang nyata. Bentuknya dapat bervariasi dari foto hitam putih hingga sebuah gambar bergerak dari TV berwarna. Citra dapat dikelompokkan menjadi empat kelas berdasarkan presisi yang digunakan untuk menyatakan titik-titik koordinat dan untuk menyatakan nilai/tingkat keabuan (gray scale) atau warna suatu citra, yaitu: 1. citra kontinu-kontinu 2. citra kontinu-diskrit 3. citra diskrit-kontinu 4. citra diskrit-diskrit
30 Label pertama menyatakan presisi dari titik-titik koordinat pada bidang citra, sedangkan label kedua menyatakan tingkat keabuan atau warna. Kontinu dinyatakan dengan presisi angka tak terhingga sedangkan diskrit dinyatakan dengan presisi angka tertentu.
2.3.1 Citra Biner Citra biner (binary image) adalah sebuah gambar yang piksel-pikselnya hanya terdiri dari dua nilai saja, yaitu 0 dan 1 (Fairhust, 1988, p16).
2.3.2
Citra Dijital Citra dijital (digital image) merupakan suatu array dua dimensi atau suatu
matriks yang elemen-elemennya menyatakan tingkat keabuan dari elemen citra tersebut (Murni, 1992, p5). Untuk mengubah citra yang bersifat kontinu menjadi citra dijital, diperlukan proses pembuatan kisi-kisi arah horizontal dan vertikal, sehingga diperoleh gambar dalam bentuk array dua dimensi. Proses tersebut dikenal sebagai proses dijitasi atau sampling. Setiap elemen array tersebut dikenal sebagai elemen gambar atau piksel (pixel) yang merupakan singkatan dari picture element. Tingkat keabuan setiap piksel dinyatakan dengan suatu harga integer. Hubungan yang ada antara piksel-piksel, antara lain (Gonzales dan Woods, 1993, p40): •
Neighbours of a pixel
31 Dimisalkan piksel F terletak di koordinat (x,y), maka yang disebut delapan neighbours (neighbours of a pixel) atau N8(F) adalah piksel-piksel yang memiliki koordinat: (x+1,y),(x-1,y),(x,y+1),(x,y-1),(x+1,y+1),(x-1,y+1),(x+1,y-1), dan (x-1,y-1).
(x – 1 , y - 1)
(x , y - 1)
(x + 1 , y - 1)
(x – 1 , y)
(x , y)
(x + 1 , y)
(x – 1 , y + 1)
(x , y + 1)
(x + 1 , y + 1)
Gambar 2.2 Posisi Neighbours of a Pixel
•
Konektivitas (Connectivity) Konektivitas antara piksel yang satu dengan yang lainnya ditentukan selain oleh letaknya, juga oleh toleransi skala warna yang terdapat dalam citra.
2.3.3 Model Warna RGB Sesuai dengan namanya, RGB merupakan model warna yang menggunakan tiga warna dasar, yaitu merah (red), hijau (green), dan biru (blue), dimana masing-masing warna memiliki tingkat intensitas warna dari 0 sampai dengan 255, yang menyatakan tingkat keterangan warna mulai dari yang paling glap hingga yang paling terang.
32 Memang tidak semua warna dapat diperoleh dengan menggunakan variasi nilai dari ketiga warna tersebut, akan tetapi sebagian warna yang diperlukan sudah tercakup dalam model warna RGB ini. Banyaknya warna yang dapat dibentuk oleh model warna RGB ini adalah 256 (intensitas piksel merah) x 256 (intensitas piksel hijau) x 256 (intensitas piksel biru), hasilnya lebih kurang enam belas juta tujuh ratus ribu warna, merupakan
varian
warna
yang
sangat
banyak.
(http://proxy2.siit.tu.ac.th/bunyarit/students/carplate/halfterm_report.pdf) Sebuah citra berwarna dapat dibentuk dengan mengatur nilai dari tingkat kecerahan gambar pada setiap piksel, dengan menggunakan warna-warna dasar seperti merah, hijau, dan biru dari cahaya yang terdeteksi. Salah satu caranya dapat dilakukan dengan menggunakan sebuah kamera dijital, dimana sensornya dapat mengukur radiasi panjang gelombang dari merah, hijau, dan biru untuk semua titik dalam citra. Adapun arsitektur warna dari model warna RGB sebagai berikut: 1. Warna merah akan terbentuk jika piksel hijau dan biru bernilai 0, sedangkan piksel merah bernilai antara 1 – 254. 2. Warna hijau akan terbentuk jika piksel merah dan biru bernilai 0, sedangkan piksel hijau bernilai antara 1 – 254. 3. Warna biru akan terbentuk jika piksel merah dan hijau bernilai 0, sedangkan piksel biru bernilai antara 1 – 254. 4. Warna kuning akan terbentuk jika hanya piksel biru saja yang bernilai 0, sedangkan piksel merah dan hijau bernilai sama besar.
33 5. Warna magenta akan terbentuk jika hanya piksel hijau saja yang bernilai 0, sedangkan piksel merah dan biru bernilai sama besar. 6. Warna cyan akan terbentuk jika hanya piksel merah saja yang bernilai 0, sedangkan piksel hijau dan biru bernilai sama besar. 7. Warna keabuan akan terbentuk jika semua warna dasar RGB bernilai sama. 8. Warna hitam akan terbentuk jika semua warna dasar RGB bernilai 0. 9. Warna putih akan terbentuk jika semua warna dasar RGB bernilai 255. 10. Selain kesembilan penjelasan di atas, warna yang dibentuk merupakan varian model warna RGB. Illustrasi dan penjelasan dari model warna RGB dapat dilihat pada gambar di bawah ini:
biru
magenta
cyan
merah
hijau
kuning Gambar 2.3 Model Warna RGB
34 2.4
Computer Vision Computer vision (dapat juga disebut dengan machine vision) adalah ilmu pengetahuan yang mengembangkan teori-teori dan algoritma dimana informasi yang berguna mengenai dunia dapat secara otomatis diekstraksi dan dianalisis dari sebuah citra penelitian sekumpulan citra, atau citra yang berurutan dari sebuah komputasi yang dibuat oleh komputer (http://www.personal.umd.umich.edu/~mpastore/sights.html). Computer vision berhubungan dengan otomatisasi interpretasi citra untuk membuat berbagai pengukuran yang objektif atau untuk meningkatkan visibilitas ketelitian. Computer vision merupakan kombinasi antara pengolahan citra (image processing) dan pengenalan pola (pattern recognition). Tujuan dari computer vision adalah membuat sebuah model dari objek yang ada/nyata dari gambar. Berdasarkan pendapat Jain, Kasturi, dan Schunck (1995, p1), sistem computer vision mengambil informasi yang berguna tentang sebuah objek yang didapat dari proyeksi dua dimensi obyek tersebut. Contoh aplikasi dari computer vision adalah:
2.5
•
Robotic, sebagai kontrol dan navigasi
•
Medical Image Analysis (analisa gambar medis)
Pengolahan Citra (Image Processing) Menurut Murni (1992, p5) pengolahan citra merupakan proses pengolahan dan analisis citra yang banyak melibatkan persepsi visual. Proses ini mempunyai ciri data
35 masukan dan informasi keluaran berbentuk citra. Teknik pengolahan citra menggunakan komputer untuk mendijitasi pola bayangan dan warna dari gambar yang sudah tersedia. Informasi yang telah terdijitasi ini kemudian ditransfer ke layar dari monitor video. Pengolahan citra banyak digunakan dalam dunia fotografi (misalnya mengubah intensitas cahaya sebuah foto), dunia perfilman (animasi), dunia kedokteran (untuk membuat analisa medis), dan dunia game.
2.5.1 Penyekalaan (Scaling) Menurut Hearn dan Baker (1986, p107), penyekalaan merupakan proses pengolahan citra yang bertujuan untuk mengubah ukuran (dimensi) dari suatu citra. Perubahan citra yang terjadi akibat proses penyekalaan akan menyebabkan citra berubah menjadi citra baru yang ukurannya sesuai dengan skala perubahan yang ditetapkan, umumnya dikenal dengan sebutan faktor skala. Berikut ini adalah rumus penyekalaan menurut Hearn dan Baker (1986, p108):
(x’ y’ 1) = [x y 1]
Sx 0
0
0
0 ...................................................................... 2.1
0
Sy 0
1
keterangan : x’ : koordinat x setelah penyekalaan y’ : koordinat y setelah penyekalaan
36 x : koordinat x sebelum penyekalaan y : koordinat y sebelum penyekalaan Sx : faktor skala sumbu x Sy : faktor skala sumbu y
Ada 3 macam perubahan yang dapat terjadi akibat proses penyekalaan, yaitu: 1. Perubahan lebar citra, terjadi ketika citra hanya dikalikan oleh faktor skala dengan arah sumbu x saja. 2. Perubahan tinggi citra, terjadi ketika citra hanya dikalikan oleh faktor skala dengan arah sumbu y saja. 3. Perubahan lebar dan tinggi citra, terjadi ketika citra dikalikan oleh faktor skala, baik ke arah sumbu x, maupun ke arah sumbu y. Citra akan terskala dengan sempurna (perubahan tinggi dan lebar yang terjadi sebanding dengan tinggi dan lebar dari citra asalnya), jika faktor skala arah sumbu x bernilai sama dengan faktor skala arah sumbu y.
2.5.2
Binerisasi Binerisasi merupakan sebuah metode untuk mengubah citra keabuan menjadi
citra biner, sehingga objek yang diinginkan dalam gambar dapat terpisah dari latar belakangnya (Jain, Kasturi, dan Schunck, 1995, p29). Pengertian serupa juga
37 diungkapkan oleh Davies (1990, p79) yang mengatakan bahwa binerisasi adalah sebuah metode untuk mengubah citra keabuan menjadi citra biner dengan objek terlihat hitam sedangkan latar belakang berwarna putih. Tujuan dari binerisasi adalah untuk memisahkan piksel yang mempunyai nilai keabuan (grey level) lebih tinggi dengan yang lebih rendah. Piksel yang nilai keabuannya lebih tinggi akan diberi nilai biner 1, sedangkan piksel dengan nilai keabuan lebih rendah akan diberi nilai biner 0. Pemberian nilai biner dapat pula dibalik, disebut binerisasi terbalaik (inverse thresholding), untuk lebih memperjelas objek yang diteliti. Sebagai contoh, pada plat nomor kendaraan bermotor, bila dilakukan binerisasi terbalik, maka karakter hasil binerisasi akan terlihat hitam dan latar belakang terlihat putih. Berdasarkan penentuan nilai ambangnya, binerisasi dibedakan menjadi 2 macam, yaitu: 1. fixed threshold, nilai ambang dipilih secara independen 2. histogram derived thresholding, nilai ambang ditentukan secara otomatis berdasarkan histogram
2.5.3
Segmentasi Segmentasi menurut Ramesh Jain, Kasturi, dan Schunck (1995, p28) diartikan
sebagai sebuah metode untuk membagi sebuah gambar menjadi sub-sub gambar yang disebut area (region). Ada 2 pendekatan yang dapat digunakan untuk membagi gambargambar menjadi daerah-daerah tertentu (Jain, Kasturi, Schunck, 1995, p73 - 75):
38 1. region-based 2. boundary estimation menggunakan edge detection Pada pendekatan region-based, semua piksel yang berkorespondensi dengan sebuah objek dikelompokkan bersama dan diberikan flag yang menandakan bahwa mereka merupakan satu area. Dua prinsip yang penting dalam pendekatan ini adalah value similiarity dan spatial proximity. Dua piksel dapat dikelompokkan menjadi satu bila mempunyai karakteristik intensitas yang serupa atau bila keduanya memiliki jarak yang berdekatan. Sedangkan pada pendekatan boundary estimation menggunakan edge detection, segmentasi dilakukan dengan menemukan piksel-piksel yang terletak pada batas area. Piksel-piksel tersebut (yang disebut edges) dapat diperoleh dengan melihat piksel-piksel yang bertetangga (neighbouring pixels).
2.5.4 Pemotongan (Cropping) Dalam bahasa Inggris, istilah pemotongan, selain disebut sebagai cropping, dapat
pula
disebut
sebagai
trimming.
Definisi
(http://desktoppub.about.com/library/glossary/bldef-crop.htm)
adalah
pemotongan kegiatan
memotong bagian yang tidak perlu dari sebuah citra. Pemotongan dapat dilakukan dengan menentukan koordinat awal, lebar, dan tinggi dari citra yang ingin dipotong. Pemotongan akan menciptakan suatucitra baru yang merupakan bagian dari citra asalnya. Pemotongan juga menyebabkan ukuran dari suatu citra berubah menjadi lebih kecil, entah lebarnya saja, tingginya saja, atau bahkan keduanya.
39 2.6
Pengenalan Pola (Pattern Recognition) Pengenalan pola memiliki arti bidang studi yang melakukan proses analisis gambar yang bentuk masukannya adalah gambar itu sendiri atau dapat juga berupa citra dijital dan bentuk keluarannya adalah suatu deskripsi (Murni, 1992, p168). Tujuan dari adanya pengenalan pola ini adalah untuk meniru kemampuan manusia (otak manusia) dalam mengenali suatu objek/pola tertentu. Berdasarkan pendapat Bow (1982, p3), objek/pola yang dapat dikenali ada 2 macam: 1. abstrak Contoh bentuk abstrak antara lain adalah ide dan argumen. Pengenalan untuk bentuk semacam ini misalnya dengan conceptual recognition. 2. konkrit Bentuk konkrit contohnya karakter, simbol, gambar, tanda tangan, tulisan tanagn, gelombang suara (speech waveform), dll. Pengenalan untuk bentuk semacam ini misalnya ICR (Intelligence Charachter Recognition), OCR (Optical Character Recognition), handwriting recognition, dll. Teknik pattern recognition yang umum (Pearson, 1991, p85-91): 1. Template matching Template matching merupakan teknik pengenalan pola yang paling sederhana. Pola identifikasi dengan cara membandingkan pola masukan (input pattern)
40 dengan daftar representasi pola yang sudah disimpan. Representasi pola yang sudah disimpan tersebut disebut template. 2. Metode statistik (statistical method) Teknik pengenalan pola secara statistik (disebut juga decision-theoretic technique) menentukan masukan yang bagaimanakah yang termasuk ke dalam suatu kelas tertentu. 3. Teknik struktural atau semantic (structural or semantic technique) Prinsip dari teknik ini adalah pengamatan terhadap banyak pola yang berstruktur dan dapat diekspresikan sebagai komposisi deri sub-sub pola. Oleh karena itu, pola dapat ditentukan dengan sebuah kalimat dari pola sederhana yang primitif (misalnya garis lurus dan garis lengkung). Contoh penggunaan pengenalan pola: pengenalan huruf kanji, analisa medis, interpretasi citra suatu area/daerah.
2.7
Logika Fuzzy
Input Output
Fuzzy Processing
41 Gambar 2.4 Pemetaan input-output dalam logika fuzzy
Menurut Sri Kusumadewi & Hari Purnomo (2004, p1-31), logika fuzzy adalah suatu cara yang tepat untuk memetakan suatu ruang input ke dalam suatu ruang output. Beberapa alasan digunakannya logika fuzzy, antara lain: •
Konsep logika fuzzy mudah dimengerti. Konsep matematis yang mendasari penalaran fuzzy sangat sederhana dan mudah dimengerti.
•
Logika fuzzy sangat fleksibel.
•
Logika fuzzy memiliki toleransi terhadap data-data yang tidak tepat.
•
Logika fuzzy mampu memodelkan fungsi-fungsi non-linear yang sangat kompleks.
•
Logika fuzzy dapat membangun dan mengaplikasikan pengalaman-pengalaman para pakar secara langsung tanpa harus melalui proses pelatihan.
•
Logika fuzzy dapat bekerjasama dengan teknik-teknik kendali secara konvensional.
•
2.7.1
Logika fuzzy didasarkan pada bahasa alami.
Himpunan Fuzzy
42 Pada himpunan tegas (crisp), nilai keanggotaan suatu item x dalam suatu himpunan A memiliki dua kemungkinan, yaitu: •
Satu (1), yang berarti bahwa suatu item menjadi anggota dalam suatu himpunan, atau
•
Nol (0), yang berarti bahwa suatu item tidak menjadi anggota dalam suatu himpunan. Dari hal di atas, dapat dikatakan bahwa pemakaian himpunan crisp untuk
menyatakan nilai keanggotaan yang kontinu sangat tidak adil. Himpunan fuzzy digunakan untuk mengantisipasi hal tersebut. Seberapa besar eksistensi suatu item dalam himpunan dapat dilihat pada nilai keanggotaannya. Pada himpunan crisp, nilai keanggotaan hanya ada dua kemungkinan, yaitu 0 atau 1. Sedangkan pada himpunan fuzzy, nilai keanggotaan terletak pada rentang 0 sampai 1. Terkadang
kemiripan
antara
keanggotaan
fuzzy
dengan
probabilitas
menimbulkan kerancuan. Keduanya memiliki nilai pada interval [0,1], namun interpretasi nilainya sangat berbeda antara kedua kasus tersebut. Keanggotaan fuzzy memberikan suatu ukuran terhadap pendapat atau keputusan, sedangkan probabilitas mengindikasikan proporsi terhadap keseringan suatu hasil bernilai benar dalam jangka panjang. Misalnya, jika nilai keanggotaan suatu himpunan fuzzy adalah 0,9; maka tidak perlu dipermasalahkan seberapa seringnya nilai itu diulang secara individual untuk mengharapkan suatu hasil yang hampir pasti. Di lain pihak, nilai probabilitas 0,9; berarti 10% dari himpunan tersebut diharapkan tidak memenuhi kriteria item tersebut.
43 Himpunan fuzzy memiliki 2 atribut, yaitu: a.
Linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami, seperti: MUDA, PAROBAYA, TUA.
b.
Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel, seperti: 40, 25, 50, dan sebagainya. Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy, yaitu:
a. Variabel fuzzy Variabel fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Contoh: umur, temperatur, permintaan, dan sebagainya. b. Himpunan fuzzy Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy. c. Semesta Pembicaraan Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan himpunan bilangan real yang senantiasa naik (bertambah) dari kiri ke kanan. Nilai semesta pembicaraan dapat berupa bilangan positif maupun negatif. Adakalanya nilai semesta pembicaraai tidak dibatasi batas atasnya. d. Domain
44 Domain himpunan fuzzy adalah keseluruhan nilai yang diijinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy. Seperti halnya semesta pembicaraan, domain merupakan himpunan bilangan real yang senantiasa naik (bertambah) dari kiri ke kanan secara monoton. Nilai domain dapat berupa bilangan positif maupun negatif.
2.7.2
Fungsi Keanggotaan Fungsi keanggotaan (membership function) adalah suatu kurva yang
menunjukkan pemetaan titik-titik input ke dalam nilai keanggotaannya. Fungsi keanggotaan sering juga disebut dengan derajat keanggotaan. Fungsi keanggotaan memiliki intervel antara 0 sampai dengan 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Beberapa
fungsi
yang
bisa
digunakan
untuk
menggambarkan
fungsi
keanggotaan: a. Representasi Linear Pada representasi linear, pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang jelas.
45 Terdapat dua keadaan himpunan fuzzy yang linear. Pertama, kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol (0) bergerak ke kanan menuju nilai domain yang lebih tinggi.
1 derajat keanggotaan µ[x]
0 a
domain
Gambar 2.5 Representasi Linear Naik
Fungsi keanggotaan:
µ[x] =
0;
x≤a
(x - a) / (b - a);
a≤x≤b
1;
x≥b
b
46 Kedua, merupakan kebalikan yang pertama. Garis lurus dimulai dari nilai domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat keanggotaan lebih rendah.
derajat keanggotaan µ[x]
a
domain
b
Gambar 2.6 Representasi Linear Turun
Fungsi keanggotaan: (b - x) / (b - a);
a≤x≤b
0;
x≥b
µ[x] =
b. Representasi Kurva Segitiga Kurva Segitiga pada dasarnya merupakan gabungan antara dua garis linear.
47
derajat keanggotaan µ[x]
a
b
c
domain
Gambar 2.7 Representasi Kurva Segitiga
Fungsi keanggotaan:
µ[x] =
0;
x ≤ a atau x ≥ c
(x - a) / (b - a);
a≤x≤b
(c - x) / (c - b);
b≤x≤c
c. Representasi Kurva Trapesium Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja ada beberapa titik yang memiliki nilai keanggotaan 1.
48
derajat keanggotaan µ[x]
a
b
c
d
domain
Gambar 2.8 Representasi Kurva Trapesium
Fungsi keanggotaan: 0;
x ≤ a atau x ≥ d
(x - a) / (b - a);
a≤x≤b
1;
b≤x≤c
(d - x) / (d - c);
c≤x≤d
µ[x] =
d. Representasi Kurva Bahu Daerah
yang
terletak
di
tengah-tengah
suatu
variabel
yang
direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik
49 dan turun. Tetapi terkadang salah satu sisi dari variabel tersebut tidak mengalami perubahan.
derajat keanggotaan µ[x]
Gambar 2.9 Representasi Kurva Bahu Himpunan fuzzy ‘bahu’, bukan segitiga, digunakan untuk mengakhiri variabel suatu daerah fuzzy. Bahu kiri bergerak dari benar ke salah, bahu kanan bergerak dari salah ke benar.
e. Representasi Kurva-S Kurva-S atau sigmoid adalah kurva yang mampu merepresentasikan kenaikan dan penurunan permukaan secara tidak linear. Kurva-S naik akan bergerak dari sisi paling kiri (nilai keanggotaan = 0) ke sisi paling kanan (nilai keanggotaan = 1). Fungsi keanggotaannya akan
50 bertumpu pada 50% nilai keanggotaannya yang sering disebut dengan titik infleksi.
derajat keanggotaan µ[x]
domain
Gambar 2.10 Representasi Kurva-S Naik Kurva-S turun akan bergerak dari sisi paling kanan (nilai keanggotaan = 1) ke sisi paling kiri (nilai keanggotaan = 0).
derajat keanggotaan µ[x]
domain
Gambar 2.11 Representasi Kurva-S Turun
51 Kurva-S didefinisikan dengan menggunakan 3 parameter, yaitu: • Nilai keanggotaan nol (α), • Titik infleksi atau crossover (β), dan • Nilai keanggotaan lengkap (γ).
Fungsi keanggotaan pada kurva-S naik: 0
Æ
x≤α
2((x - α) / (γ - α))2
Æ
α≤x≤β
1 – 2((γ - x) / (γ - α))2
Æ
β≤x≤γ
1
Æ
x≥γ
1
Æ
x≤α
1 – 2((x - α) / (γ - α))2
Æ
α≤x≤β
2((γ - x) / (γ - α))2
Æ
β≤x≤γ
0
Æ
x≥γ
S(x;α,β,γ) =
Fungsi keanggotaan pada kurva-S turun:
S(x;α,β,γ) =
52 f. Representasi Kurva Bentuk Lonceng (Bell Curve) Untuk merepresentasikan bilangan fuzzy, biasanya digunakan kurva berbentuk lonceng. Kurva berbentuk lonceng ini terbagi atas 3 kelas, yaitu: • Kurva π Kurva π berbentuk lonceng dengan derajat keanggotaan 1, terletak pada pusat dengan domain (γ), dan lebar kurva (β). γ
Derajat Keanggotaan
titik
infleksi
µ[x]
Gambar 2.12 Representasi Kurva π
Fungsi keanggotaan: S (x;(γ - β),(γ – (β / 2)),γ)
Æ x≤γ
1 – S (x;γ,(γ + (β / 2)),(γ + β))
Æ x>γ
Π(x,β,γ) =
53 • Kurva BETA Seperti halnya kurva π, kurva BETA juga berbentuk lonceng, namun lebih rapat. Kurva in juga didefinisikan dengan 2 parameter, yaitu nilai pada domain yang menunjukkan pusat kurva (γ), dan setengah lebar kurva (β). Salah satu perbedaan mencolok kurva BETA bila dibandingkan dengan kurva π adalah fungsi keanggotaannya akan mendekati nol hanya jika nilai (β) sangat besar.
derajat keanggotaan µ[x]
Gambar 2.13 Representasi Kurva BETA
Fungsi keanggotaan: B(x;γ,β) = 1 / (1 + ((x – γ) / β)2)
54 • Kurva GAUSS Jika kurva π dan kurva BETA menggunakan dua parameter, yaitu (γ) dan (β), kurva GAUSS juga menggunakan (γ) untuk menunjukkan nilai domain pada pusat kurva, dan (k) yang menunjukkan lebar kurva.
derajat keanggotaan µ[x]
Gambar 2.14 Representasi Kurva GAUSS
Fungsi keanggotaan: G(x;k,γ) = e-k(γ - x)^2
55 g. Koordinat Keanggotaan Himpunan fuzzy berisi urutan pasangan berurutan yang berisi domain dan kebenaran nilai keanggotaannya dalam bentuk: Skalar(i) / Derajat(i) ‘Skalar’ adalah suatu nilai yang digambar dari domain himpunan fuzzy, sedangkan ‘Derajat’ skalar merupakan derajat keanggotaan himpunan fuzzynya.
2.7.3 Pengklusteran Data (Data Clustering) Data clustering, dapat pula disebut sebagai pengklusteran data, adalah suatu teknik umum untuk menganalisis data statistik, digunakan dalam banyak bidang, mencakup machine learning, data mining, pengenalan pola (pattern recognition), analisis citra, dan bioinformatics. Clustering atau pengklusteran adalah penggolongan objek-objek serupa ke dalam kelompok-kelompok berbeda, atau lebih tepatnya, penyekatan dari suatu set data ke dalam subset-subset (cluster-cluster), sedemikian sehingga data pada setiap subset (idealnya) berbagi beberapa ciri umum dan memiliki tingkat
kedekatan
menurut
beberapa
ukuran
jarak
(http://en.wikipedia.org/wiki/Data_clustering). Machine learning secara khas menggunakan pengklusteran data sebagai bentuk kemampuan belajar yang tidak terawasi (unsupervised learning).
56 Di samping istilah data clustering atau pengklusteran data (atau hanya clustering/pengklusteran), ada sejumlah terminologi dengan arti serupa, mencakup analisis cluster (cluster analysis), klasifikasi otomatis (automatic classification), taksonomi kuantitatif (numerical taxonomy), botriologi (botryology), dan analisis tipologis (typological analysis).
2.7.4 Tipe-tipe Pengklusteran Algoritma pengklusteran data dapat bersifat hirarkis atau partisional. Algoritma hirarkis menemukan cluster baru dengan menggunakan cluster-cluster yang telah terbentuk sebelumnya, sedangkan algoritma partitional menentukan semua cluster dengan sekali proses. Algoritma hirarkis dapat bersifat agglomerative ("dari bawah ke atas") atau divisive ("dari atas ke bawah"). Algoritma agglomerative dimulai dengan masing-masing unsur sebagai cluster terpisah, lalu menggabungkan ke dalam cluster yang lebih besar. Algoritma divisive dimulai dengan keseluruhan set data, lalu mulai membaginya ke dalam cluster baru yang lebih kecil. Clustering dua arah, co-clustering, atau bi-clustering adalah sebutan-sebutan untuk teknik-teknik pengklusteran yang tidak hanya objek-objek yang di-cluster, tetapi juga fitur-fitur dari objek-objek tersebut. Misalnya, jika data direpresentasikan dalam suatu matriks data, kolom dan baris adalah akan di-cluster secara serempak. Perbedaan signifikan yang lain adalah apakah teknik clustering menggunakan jarak yang simetris ataukah tidak simetris. Suatu properti dari ruang Euclidean adalah
57 simetris (jarak dari obyek A ke B sama dengan jarak dari B ke A). Dalam aplikasi lain (misalnya, metode sequence-alignment (Prinzie & Van den Poel (2006))), ini bukanlah permasalahannya.
2.7.4.1 Pengklusteran Secara Hierarkis Seperti yang telah dijelaskan sebelumnya, algoritma hirarkis menemukan cluster baru dengan menggunakan cluster-cluster yang telah terbentuk sebelumnya.
2.7.4.1.1 Menghitung Jarak Langkah penting dalam sebuah pengklusteran secara hirarkis adalah memilih suatu ukuran jarak. Suatu ukuran sederhana adalah jarak Manhattan, sama dengan penjumlahan perbedaan mutlak untuk masing-masing variabel. Nama tersebut datang dari fakta bahwa di dalam suatu kasus yang memiliki dua variabel, variabel-variabel dapat diplot pada grid yang dapat disamakan dengan jalan-jalan pada kota besar, dan jarak antara dua titik adalah banyaknya blok yang harus dilalui. Ukuran yang lebih umum yang biasa digunakan adalah jarak Euclidean, dihitung dengan menemukan penyiku dari jarak antara masing-masing variabel, penjumlahan penyiku, dan menemukan akar pangkat dua dari penjumlahan tersebut. Dalam kasus two-variable, jarak adalah pengertian dalam menemukan panjang hipotenusa suatu segitiga; itu adalah jarak lurus.
58 2.7.4.1.2 Menciptakan Cluster Dengan suatu ukuran jarak, unsur-unsur dapat dikombinasikan. Pengklusteran secara hirarkis membangun (agglomerative), atau pemisahan (divisive), suatu hirarki dari kluster. Penyajian tradisional dari hirarki ini adalah suatu struktur data pohon (yang disebut suatu dendrogram), dengan unsur-unsur individu di salah satu ujungnya dan sebuah kluster tunggal pada ujung lainnya. Algoritma agglomerative dimulai dari puncak pohon data, sedangkan algoritma divisive dimulai dari dasar pohon data.
2.7.4.1.3 V-Means Clustering V-Means
Clustering
menggunakan
analisis
cluster
dan
tes
statistik
nonparametric sebagai kunci para peneliti ke dalam segmen data yang boleh berisi subset homogen yang berbeda. Metodologi yang digunakan oleh V-Means Clustering banyak berbelit dari permasalahan yang secara tradisional mengepung teknik standard dalam pengelompokkan data. Pertama, sebagai pengganti ramalan analis untuk beberapa subset berbeda (K-Means Clustering), V-Means Clustering menghasilkan jumlah subset yang optimal. V-Means Clustering dikalibrasi untuk tingkatan user-defined level p, dimana algoritma membagi data dan kemudian menggabungkan kembali kelompok hasil hingga kemungkinan bahwa semua kelompok berasal dari distribusi yang sama ketika tetangga-tetangganya yang lain kurang dari p. Kedua, V-Means Clustering menggunakan iterasi dari tes nonparametric Kolmogorov-Smirnov. Metode standar dalam memisahkan data ke dalam bagian
59 utamanya sering melibatkan definisi jarak (ukuran jarak pengklusteran) atau dalam asumsi tentang kewajaran data (maksimalisasi ekspektasi pengklusteran), tetapi analisa nonparametric menarik kesimpulan dari fungsi distribusi set-set data. Ketiga, metode yang secara konseptual sederhana. Beberapa metode mengkombinasikan berbagai teknik dalam urutan untuk menghasilkan hasil yang lebih sempurna. Dari suatu sudut pandang praktis, metode ini menggabungan arti dari hasil dan sering mengarahkan pada kesimpulan yang khas dari data dredging.
2.7.4.2 Pengklusteran Partisional Seperti yang telah dijelaskan sebelumnya, algoritma partitional menentukan semua cluster dengan sekali proses. C-Means Clustering termasuk dalam pengklusteran partisional, namun akan dijelaskan pada bagian selanjutnya.
2.7.4.2.1
K-Means Clustering
Algoritma K-Means memetakan masing-masing titik pada cluster yang pusatnya (juga disebut sentroid) paling dekat. Pusat adalah rata-rata dari semua poin-poin dalam cluster, yang berarti koordinatnya adalah rata-rata aritmatik dari tiap dimensi secara terpisah dari seluruh poin-poin dalam cluster.
60 2.7.4.2.2
Algoritma QT Clustering
QT (Quality Threshold) Clustering (Heyer et al, 1999) adalah suatu metode alternatif dalam pemisahan data, diciptakan untuk pengklusteran gen. Hal ini memerlukan perhitungan power yang lebih bila dibandingkan dengan k-means, tetapi tidak memerlukan penetapan banyaknya cluster awal, dan selalu menghasilkan hasil yang sama ketika dijalankan berkali-kali.
2.8
Basis data Berdasarkan literatur http://id.wikipedia.org/wiki/Basis_data, basis data (bahasa Inggris: database), atau sering pula dieja basisdata, adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi.
2.8.1 Perangkat Lunak Basis Data Perangkat lunak basis data yang banyak digunakan dalam pemrograman dan merupakan perangkat basis data tingkat tinggi (high level): •
DB2
61 •
Microsoft SQL Server
•
Oracle
•
Sybase
•
Interbase
•
XBase
•
Teradata
•
Firebird
•
MySQL
•
PostgreSQL
•
Microsoft Access
•
dBase III
•
Paradox
•
FoxPro
•
Visual FoxPro
•
Arago
•
Force
•
Recital
•
dbFast
62 •
dbXL
•
Quicksilver
Selain perangkat lunak di atas, terdapat juga perangkat lunak pemrograman basis data tingkat rendah (low level), diantaranya:
2.9
•
Btrieve
•
Tsunami Record Manager
Pengenalan Karakter (Character Recognition) Definisi dari pengenalan karakter adalah bidang aplikasi dari pengenalan pola yang melibatkan representasi gambar garis dua dimensi dari sebuah karakter (Fairhust, 1988, p106). Pengenalan karakter adalah proses pengubahan citra, baik berupa citra yang dicetak oleh mesin atau citra berupa tulisan tangan, menjadi format yang dapat diproses oleh komputer (sebagai contoh dalam format ASCII). Isi dari sebuah citra dapat terdiri dari karakter alphabet (a, b, c,...), karakter numerik (0, 1, 2,...), karakter khusus ($, %, &,...), atau objek lain yang tidak dapat diidentifikasikan.
2.9.1
Metode Pengenalan Karakter Terdapat beberapa metode pengenalan karakter yang menggunakan berbagai
pendekatan
(http://www.tawpi.org/pdf/Priciples_of_ICR.pdf)
seperti:
pendekatan
63 statistik (statistical approach), pendekatan semantik (semantic approach), dan pendekatan gabungan statistik dan semantik (metode hibrid). Selain menggunakan pendekatan-pendekatan tersebut, pengenalan karakter juga dapat dilakukan dengan menggunakan metode jaringan saraf tiruan (artificial neural network).
2.9.1.1 Pendekatan Statistik Pendekatan statistik dilakukan dengan menghitung parameter statistik setiap karakter dan membandingkan parameter tersebut dengan parameter statistik dari karakter yang sama yang telah tersimpan dalam basis data. Karena setiap gambar gambar karakter tersebut terdiri dari nilai pixel yang diwakili oleh 0 dan 1, pendekatan ini akan menghitung banyaknya piksel hitam, atau perbandingan jumlah piksel hitam dan putihnya. Sebagai contoh, karakter angka satu (‘1’) memiliki piksel hitam lebih sedikit dari angka delapan (‘8’). Untuk lebih jelasnya dapat dilihat pada ilustrasi berikut:
Gambar 2.15 Model Angka 1 dan 8
64 Dengan pendekatan yang sama, sepintas kita perhatikan bahwa karakter angka enam (‘6’) dan nol (‘0’) memiliki rasio ketinggian yang berbeda.
Gambar 2.16 Model Angka 6 dan 0
Lebih jauh lagi adalah algoritma yang didasari pada histogram dimensi satu yang dapat diekstrak dari gambar dijital. Histogram adalah sebuah pemetaan yang menggambarkan distribusi intensitas piksel dari sebuah citra biner. Histogram sangat berguna pada banyak aplikasi. Histogram dapat digunakan untuk menemukan nilai ambang yang sesuai dalam pendeteksian objek. Selain itu, histogram juga dapat digunakan dalam normalisasi gambar (picture normalization) dengan menggunakan histogram matching (Shi-Kuo Chang, 1989, p342). Pendekatan ini menggunakan histogram yang mencerminkan secara grafik jumlah piksel hitam dalam setiap baris dan kolomnya. Dengan memproyeksikan piksel hitam yang dihitung secara horizontal dan vertikal, sangat dimungkinkan untuk membedakan banyak macam karakter yang ada.
65 Contohnya dapat terlihat pada ilustrasi berikut ini:
Gambar 2.17 Model Histogram Angka 3
Secara singkat, dengan analisa yang teliti dari histogram tersebut, sangat mungkin untuk membedakan setiap karakter yang ada.
2.9.1.2 Pendekatan Semantik Pendekatan semantik merupakan metode pengenalan karakter yang didasarkan pada identifikasi rangka (contour) yang dinyatakan dalam piksel-piksel untuk menemukan karakteristik-karakteristik khusus atau hubungan untuk setiap dijitnya. Poin penting dari pendekatan semantik yang digunakan untuk mengenali karakter antara lain:
66 •
Pertama, mengenali cara dimana rangka dari karakter direfleksikan dalam piksel yang mewakilinya.
•
Kedua, mencoba menemukan karakteristik yang mirip untuk setiap karakter. ARC UP-RIGHT DOWN
LOOP RIGHT Gambar 2.18 Model Deskripsi Semantik Angka 2
Illustrasi berikut menunjukkan contoh dari variasi angka 2. Meskipun mempunyai bentuk yang berbeda, tetapi deskripsi secara semantiknya identik.
Gambar 2.19 Variasi Bentuk Angka 2
67 Keuntungan menggunakan pendekatan semantik adalah variasi bentuk karakter yang berbeda mempunyai deskripsi semantik yang identik. Pada beberapa kasus didapat deskripsi yang sedikit berbeda, tetapi secara keseluruhan deskripsi semantik sebuah karakter dengan bentuk yang bervariasi akan tetap identik. Namun, pendekatan ini memiliki kekurangan, yaitu bila karakter tersebut rusak (misalnya: terputus), maka pendekatan semantik tidak akan dapat mengenali karakter tersebut.
2.9.1.3 Metode Hibrid Untuk mengenali sebuah karakter, baik dengan menggunakan pendekatan statistik atau pendekatan semantik, akan memiliki kelebihan dan kekurangan masingmasing. Oleh sebab itu, dikembangkan suatu algoritma baru untuk mengatasi kelemahan dari kedua pendekatan tersebut. Metode penggabungan kedua pendekatan tersebut dinamakan metode hibrid.
2.9.1.4 Jaringan Saraf Tiruan Jaringan saraf tiruan (JST) adalah sebuah sistem pemrosesan informasi yang mempunyai karakteristik kinerja tertentu yang sama dengan jaringan saraf biologis. JST telah dibangun sebagai sebuah model matematis dari sistem saraf biologis berdasarkan asumsi bahwa: a. Pemrosesan informasi terjadi pada elemen-elemen sederhana yang jumlahnya sangat banyak yang disebut neuron, unit, sel, atau, node.
68 b. Sinyal diteruskan antar neuron melalui sambungan-sambungan (koneksi). c. Setiap koneksi memilki bobot (weight) yang dikalikan dengan sinyal yang melewati sambungan tersebut. d. Setiap neuron menerapkan sebuah fungsi aktivasi (biasanya non-linear) pada hasil penjumlahan dari masukan-masukan ke neuron tersebut untuk menentukan sinyal keluarannya.
Gambar 2.20 Jaringan Saraf Tiruan
Cara pemrosesan informasi jaringan ini terinspirasi oleh cara kerja dari sel saraf (neuro) biologis, seperti yang terdapat pada otak. Elemen-elemen pemrosesan yang terdapat pada jaringan-jaringan ini saling dihubungkan satu sama lainnya oleh saluransaluran komunikasi (koneksi).
69 Elemen-elemen pemrosesan yang ada pada JST terbagi atas beberapa subkelompok, setiap sub kelompok melakukan komputasi yang mandiri dan kemudian hasil komputasinya dikirim ke sub kelompok berikutnya. Setiap elemen pemrosesan melakukan komputasi berdasarkan jumlah dari hasil perkalian antara masing-masing input dan bobotnya. Setiap sub-kelompok dari elemen-elemen pemrosesan disebut lapisan (layer). Lapisan yang pertama disebut lapsan input (input layer) dan lapisan terakhir disebut lapisan keluaran (output layer). Lapisan yang terletak antara kedua lapisan tersebut disebut lapisan tersembunyi (hidden layer), dan lapisan ini dapat terdiri dari satu atau beberapa lapisan.
2.9.1.5 Pendekatan Fuzzy C-Means (FCM) Fuzzy clustering adalah salah satu teknik untuk menentukan cluster yang optimal dalam suatu ruang vektor yang didasarkan pada bentuk normal Euclidian untuk jarak antar vektor (Sri Kusumadewi dan Hari Purnomo, 2004, p83). Fuzzy clustering sangat berguna bagi pemodelan fuzzy terutama dalam mengidentifikasi aturan-aturan fuzzy. Ada dua algoritma clustering data, yaitu Fuzzy C-Means (FCM) dan Fuzzy Substractive
Clustering.
Perbedaan
mencolok
antara
keduanya
menurut
Sri
Kusumadewi & Hari Purnomo (2004, p105) adalah Fuzzy C-Means (FCM) merupakan algoritma pengklusteran yang terawasi, sebab pada FCM kita perlu tahu lebih dahulu
70 jumlah cluster yang akan dibentuk. Apabila jumlah cluster yang akan dibentuk belum diketahui sebelumnya, maka kita harus menggunakan algoritma yang tidak terawasi. Fuzzy Substractive Clustering adalah algoritma yang tidak terawasi. Algoritma ini didasarkan atas ukuran densitas (potensi) titik-titik data dalam suatu ruang (variabel). Sedangkan algoritma selain Fuzzy Substractive Clustering adalah Fuzzy CMeans (FCM). FCM adalah suatu teknik peng-cluster-an data yang mana keberadaan tiap-tiap titik data dalam suatu cluster ditentukan oleh derajat keanggotaannya (Sri Kusumadewi & Hari Purnomo, 2004, p83). Teknik ini pertama kali diperkenalkan oleh Jim Bezdek pada tahun 1981.
Gambar 2.21 Pemetaan Anggota pada Fuzzy C-Means
71 Konsep dasar FCM, pertama kali adalah menentukan pusat cluster, yang akan menandai lokasi rata-rata untuk tiap-tiap cluster. Pada kondisi awal, pusat cluster ini masih belum akurat. Tiap-tiap titik data memiliki derajat keanggotaan untuk tiap-tiap cluster. Dengan cara memperbaiki pusat cluster dan derajat keanggotaan tiap-tiap titik data secara berulang, maka akan dapat dilihat bahwa pusat cluster akan bergerak menuju lokasi yang tepat. Perulangan ini didasarkan pada minimisasi fungsi obyektif yang menggambarkan jarak dari titik data yang diberikan ke pusat cluster yang terbobot oleh derajat keanggotaan titik data tersebut. Output dari FCM bukan merupakan fuzzy interference system, namun merupakan deretan pusat cluster dan beberapa derajat keanggotaan untuk tiap-tiap titik data. Informasi ini dapat digunakan untuk membangun suatu fuzzy interference system. Berikut algoritma FCM menurut Sri Kusumadewi & Hari Purnomo (2004, p84-85): 1. Input data yang akan dicluster X, berupa matriks berukuran n x m (n = jumlah sampel data, m = atribut setiap data). Xij = data sampel ke-i (i = 1,2,...,n), atribut ke-j (j = 1,2,...,m). 2. Tentukan jumlah cluster (c), pangkat (w), maksimum iterasi (MaxIter), error terkecil yang diharapkan (ξ), fungsi obyektif awal (P0=0), dan iterasi awal (t=1) 3. Bangkitkan bilangan random µik, i = 1,2,...,n; k = 1,2,...,c; sebagai elemenelemen matriks partisi awal U. Hitung jumlah setiap kolom (atribut): Qj = (Σ dari k=1 hingga c) µik , dengan j = 1,2,...,m. Hitung:
72 µik = µik / Qj 4. Hitung pusat cluster ke-k: Vkj, dengan k = 1,2,...,c; dan j = 1,2,...,m. 5. Hitung fungsi obyektif pada iterasi ke-t, Pt 6. Hitung perubahan matriks partisi 7. Cek kondisi berhenti: o Jika (| Pt – Pt-1 | < ξ) atau (t > MaxIter), maka berhenti; o Jika tidak, t = t + 1, ulangi langkah ke-4
2.10 Program Komputer Program komputer (sering kali disebut sebagai program) merupakan suatu aplikasi yang dibuat dengan menggunakan bahasa program tertentu dan telah ter-install di dalam komputer. Program komputer merupakan contoh perangkat lunak komputer yang menuliskan aksi komputasi yang akan dijalankan oleh komputer. Komputasi ini biasanya dilaksanakan berdasarkan suatu algoritma atau urutan perintah tertentu. Urutan perintah (atau algoritma) merupakan suatu perangkat yang sudah termasuk dalam program komputer tersebut. Tanpa algoritma tersebut, program komputer tak dapat berjalan dengan baik (http://id.wikipedia.org/wiki/Program).