6 BAB II KAJIAN PUSTAKA 2.1 PENGOLAHAN CITRA (IMAGE PROCESSING) Data atau informasi tidak hanya disajikan dalam bentuk teks, tetapi juga dapat berupa citra, audio (bunyi, suara, musik), dan video. Keempat macam data atau informasi ini sering disebut multimedia. Era teknologi informasi saat ini tidak dapat dipisahkan dari multimedia. Situs web (website) di Internet dibuat semenarik mungkin dengan menyertakan visualisasi berupa citra atau video yang dapat diputar. Beberapa waktu lalu istilah SMS begitu populer diantara pengguna telepon genggam (handphone). Tetapi, saat ini orang tidak hanya dapat mengirim pesan dalam bentuk teks tapi juga dalam bentuk citra maupun video yang dikenal dalam layanan MMS (Multimedia Message Service). Citra (image) adalah istilah lain untuk citra sebagai salah satu komponen multimedia memegang peranan sangat penting sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya dengan informasi. Maksudnya sebuah citra dapat memberikan informasi lebih banyak daripada informasi tersebut disajikan dalam bentuk tekstual. Pengolahan citra digital atau Digital Image Processing adalah bidang yang berkembang sangat pesat sejalan dengan kemajuan teknologi pada industri saat ini. Fungsi utama dari Digital Image Processing adalah untuk memperbaiki kualitas dari citra sehingga citra dapat dilihat lebih jelas tanpa ada ketegangan pada mata, karena informasi penting diekstrak dari citra yang dihasilkan harus jelas sehingga didapatkan hasil yang terbaik. Selain itu DIP digunakan untuk memproses data yang diperoleh dalam persepsi mesin, yaitu prosedur–prosedur yang digunakan untuk mengekstraksi informasi dari citra informasi dalam bentuk yang cocok untuk proses komputer. Proses
7 dalam persepsi mesin, yaitu prosedur–prosedur yang digunakan untuk mengekstraksi informasi dari citra informasi dalam bentuk yang cocok untuk proses komputer. Proses pengolahan citra digital dengan menggunakan komputer digital terlebih dahulu mentransformasikan citra ke dalam bentuk besaran-besaran diskrit dari nilai tingkat keabuan pada titik-titik elemen citra. Bentuk citra ini disebut citra digital. Elemen-elemen citra digital apabila ditampilkan dalam layar monitor akan menempati sebuah ruang yang disebut dengan pixel (picture elemen/pixel). Teknik dan proses untuk mengurangi atau menghilangkan efek degradasi pada citra digital meliputi perbaikan citra (image enhancement), restorasi citra (image restoration), dan transformasi spasial (spatial transformation). Subyek lain dari pengolahan citra digital diantaranya adalah pengkodean citra (image coding), segmentasi citra (image segmentation), representasi dan diskripsi citra (image representation and description ). Pengolahan citra digital memiliki banyak aplikasi seperti pada bidang penginderaan jarak jauh, robotik, pemetaan, biomedis, dan sebagainya. Perlengkapan pengolahan citra digital minimal terdiri atas alat pemasukan data citra berupa digitizer atau scanner, computer digital, alat penyimpanan data dengan kapasitas yang besar. Citra (image) –istilah lain untuk citra– sebagai salah satu komponen multimedia memegang peranan sangat penting sebagai bentuk informasi visual. Citra mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu citra kaya dengan informasi. Ada sebuah peribahasa yang berbunyi “sebuah citra bermakna lebih dari seribu kata” (a picture is more than a thousand words). Maksudnya tentu sebuah citra dapat memberikan informasi yang lebih banyak daripada informasi tersebut disajikan dalam bentuk kata-kata (tekstual).
8 Bab ini berisi pembahasan mengenai citra dan pengolahannya. Selain itu, di dalam bab ini dipaparkan pula bidang-bidang yang berkaitan dengan pengolahan citra, seperti grafika komputer dan pengenalan pola. Secara harafiah, citra (image) adalah citra pada bidang dwimatra (dua dimensi). Gambar 2.1 adalah citra seorang gadis model yang bernama Lena, dan citra di sebelah kanannya adalah citra kapal di sebuah pelabuhan. Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut. Pantulan cahaya ini ditangkap oleh oleh alat-alat optik, misalnya mata pada manusia, kamera, pemindai (scanner), dan sebagainya, sehingga bayangan objek yang disebut citra tersebut terekam. Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat: 1. Optik berupa foto, 2. Analog berupa sinyal video seperti citra pada monitor televisi, 3. Digital yang dapat langsung disimpan pada suatu pita magnetik. Citra yang dimaksudkan di dalam keseluruhan isi buku ini adalah “citra diam” (still images). Citra diam adalah citra tunggal yang tidak bergerak. Gambar 2.1 adalah dua buah citra diam. Untuk selanjutnya, citra diam kita sebut citra saja.
9
a. Wanita
b. Kapal
Gambar 2.1 Citra Wanita dan Kapal
Citra bergerak (moving images) adalah rangkaian citra diam yang ditampilkan secara beruntun (sekuensial) sehingga memberi kesan pada mata kita sebagai citra yang bergerak. Setiap citra di dalam rangkaian itu disebut frame. Citra-citra yang tampak pada film layar lebar atau televisi pada hakikatnya terdiri atas ratusan sampai ribuan frame. Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja citra semacam ini menjadi lebih sulit diinterpretasi karena informasi yang disampaikan oleh citra tersebut menjadi berkurang. Agar citra yang mengalami gangguan mudah diinterpretasi (baik oleh manusia maupun mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya lebih baik. Bidang studi yang menyangkut hal ini adalah pengolahan citra (image processing).
10 Pengolahan citra adalah pemrosesan citra, khususnya dengan menggunakan komputer, menjadi citra yang kualitasnya lebih baik. Sebagai contoh, citra burung nuri pada Gambar 2.2 (a) tampak agak gelap, lalu dengan operasi pengolahan citra kontrasnya diperbaiki sehingga menjadi lebih terang dan tajam (b). Umumnya, operasi-operasi pada pengolahan citra diterapkan pada citra bila : 1. Perbaikan atau memodifikasi citra perlu dilakukan untuk meningkatkan kualitas penampakan atau untuk menonjolkan beberapa aspek informasi yang terkandung di dalam citra, 2. Elemen di dalam citra perlu dikelompokkan, dicocokkan, atau diukur. 3. Sebagian citra perlu digabung dengan bagian citra yang lain.
a
b
Gambar 2.2. (a) Citra burung nuri yang agak gelap, (b) Citra burung yang telah diperbaiki kontrasnya sehingga terlihat jelas dan tajam
11 Di dalam bidang komputer, sebenarnya ada tiga bidang studi yang berkaitan dengan data citra, namun tujuan ketiganya berbeda, yaitu: 1. Grafika Komputer (computer graphics). 2. Pengolahan Citra (image processing). 3. Pengenalan Pola (pattern recognition/image interpretation). Hubungan antara ketiga bidang (grafika komputer, pengolahan citra, pengenalan pola) ditunjukkan pada Gambar 2.3.
Gambar 2.3. Tiga bidang studi yang berkaitan dengan citra
Grafika Komputer bertujuan menghasilkan citra (lebih tepat disebut grafik atau picture) dengan primitif-primitif geometri seperti garis, lingkaran, dan sebagainya. Primitif-primitif geometri tersebut memerlukan data deskriptif untuk melukis elemenelemen citra. Contoh data deskriptif adalah koordinat titik, panjang garis, jari-jari lingkaran, tebal garis, warna, dan sebagainya. Grafika komputer memainkan peranan penting dalam visualisasi dan virtual reality.
12
Gambar 2.4 Proses Grafik Komputer
Contoh grafika komputer misalnya mengcitra sebuah ‘rumah’ yang dibentuk oleh garis-garis lurus, dengan data masukan berupa koordinat awal dan koordinat ujung garis (Gambar 2.5).
Gambar 2.5. (a) Program Grafika Komputer untuk membuat citra ‘rumah (b) Hasil citra rumah
Pengolahan Citra bertujuan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia atau mesin (dalam hal ini komputer). Teknik-teknik pengolahan citra mentransformasikan citra menjadi citra lain. Jadi, masukannya adalah citra dan keluarannya juga citra, namun citra keluaran mempunyai kualitas lebih baik
13 daripada citra masukan. Termasuk ke dalam bidang ini juga adalah pemampatan citra (image compression).
Gambar 2.6 Proses Pengolahan Citra
Pengubahan kontras citra seperti pada Gambar 2.6 adalah contoh operasi pengolahan citra. Contoh operasi pengolahan citra lainnya adalah penghilangan derau (noise) pada citra wanita (Gambar 2.7). Citra wanita yang di sebelah kiri mengandung derau berupa bintik-bintik putih (derau). Dengan operasi penapisan (filtering), derau pada citra masukan ini dapat dikurangi sehingga dihasilkan citra wanita yang kualitasnya lebih baik.
14
(a)
(b)
Gambar 2.7. (a) Citra Wanita yang mengandung derau, (b) hasil dari operasi penapisan derau.
Pengenalan Pola mengelompokkan data sistem dan simbolik (termasuk citra) secara otomatis oleh mesin. Tujuan pengelompokan adalah untuk mengenali suatu objek di dalam citra. Manusia mengenali objek yang dilihatnya karena otak manusia telah belajar mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual manusia inilah yang dicoba ditiru oleh mesin. Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut, dan memberikan keluaran berupa deskripsi obyek di dalam citra.
15
Gambar 2.8 Proses Pengenalan Pola
Contoh pengenalan pola misalnya citra pada Gambar 2.8 adalah tulisan tangan yang digunakan sebagai data masukan untuk mengenali karakter ‘A’. Dengan menggunakan suatu algoritma pengenalan pola, diharapkan komputer dapat mengenali bahwa karakter tersebut adalah ‘A’.
Citra 2.9. Citra karakter ‘A’ yang digunakan sebagai masukan untuk pengenalan huruf.
2.2 COMPUTER VISION DAN HUBUNGANNYA DENGAN PENGOLAHAN CITRA Terminologi lain yang berkaitan erat dengan pengolahan citra adalah computer vision atau machine vision. Pada hakikatnya, computer vision mencoba meniru cara kerja sistem visual manusia (human vision). Human vision sesungguhnya sangat
16 kompleks. Manusia melihat objek dengan indera penglihatan (mata), lalu citra objek diteruskan ke otak untuk diinterpretasi sehingga manusia mengerti objek apa yang tampak dalam pandangan matanya. Hasil interpretasi ini mungkin digunakan untuk pengambilan keputusan (misalnya menghindar kalau melihat mobil melaju di depan). Computer vision merupakan proses otomatis yang mengintegrasikan sejumlah besar proses untuk persepsi visual, seperti akuisisi citra, pengolahan citra, klasifikasi, pengenalan (recognition), dan membuat keputusan. Computer vision terdiri dari teknik-teknik untuk mengestimasi ciri-ciri objek di dalam
citra,
pengukuran
ciri
yang
berkaitan
dengan
geometri
objek,
dan
menginterpretasi informasi geometri tersebut. Mungkin berguna bagi anda untuk mengingat persamaan berikut: Vision = Geometry + Measurement + Interpretation (2.1) Proses-proses di dalam computer vision dapat dibagi menjadi tiga aktivitas: 1. Memperoleh atau mengakuisisi citra digital. 2. Melakukan teknik komputasi untuk memperoses atau memodifikasi data citra (operasi-operasi pengolahan citra). 3. Menganalisis dan menginterpretasi citra dan menggunakan hasil pemrosesan untuk tujuan tertentu, misalnya memandu robot, mengontrol peralatan, memantau proses manufaktur, dan lain -lain. Mengklasifikasikan proses-proses di dalam computer vision dalam hirarkhi sebagai berikut :
17
Gambar 2.10 Hirarki Computer Vision
Dari penjelasan di atas, dapat kita lihat bahwa pengolahan citra dan pengenalan pola merupakan bagian dari computer vision. Pengolahan citra merupakan proses awal (preprocessing) pada computer vision, sedangkan pengenalan pola merupakan proses untuk menginterpretasi citra. Teknik-teknik di dalam pengenalan pola memainkan peranan penting dalam computer vision untuk mengenali objek. Jika dihubungkan dengan grafika komputer, maka computer vision merupakan kebalikannya. Grafika komputer membentuk (sintesis) citra, sedangkan computer vision mengoraknya (analisis). Pada masa awal kedua bidang ini, tidak ada hubungan antara keduanya, tetapi beberapa tahun belakangan kedua bidang tersebut berkembang semakin dekat. Computer vision menggunakan representasi kurva dan permukaan dan beberapa teknik lain dari grafika komputer, sedangkan grafika komputer menggunakan teknik teknik di dalam computer vision untukmemuat citra realistik (virtual reality).
18 Operasi-operasi yang dilakukan di dalam pengolahan citra banyak ragamnya. Namun, secara umum, operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis sebagai berikut: 1. Perbaikan kualitas citra (image enhancement). Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter citra. Dengan operasi ini, ciri-ciri khusus yang terdapat di dalam citra lebih ditonjolkan. Contoh-contoh operasi perbaikan citra: a. perbaikan kontras gelap/terang b. perbaikan tepian objek (edge enhancement) c. penajaman (sharpening) d. pembrian warna semu (pseudocoloring) e. penapisan derau (noise filtering)
Gambar 2.11 adalah contoh operasi penajaman. Operasi ini menerima masukan sebuah citra yang citranya hendak dibuat tampak lebih tajam. Bagian citra yang ditajamkan adalah tepi-tepi objek.
19
(a)
(b)
Gambar 2.11 (a) Citra Wanita asli, (b) Citra Wanita setelah ditajamkan
2. Pemugaran citra (image restoration). Operasi ini bertujuan menghilangkan/meminimumkan cacat pada citra. Tujuan pemugaran citra hampir sama dengan operasi perbaikan citra. Bedanya, pada pemugaran citra penyebab degradasi citra diketahui. Contoh-contoh operasi pemugaran citra: a. Penghilangan kesamaran (deblurring). b. Penghilangan derau (noise) Gambar 2.12 adalah contoh operasi penghilangan kesamaran. Citra masukan adalah citra yang tampak kabur (blur). Kekaburan citra mungkin disebabkan pengaturan fokus lensa yang tidak tepat atau kamera bergoyang pada pengambilan citra. Melalui operasi deblurring, kualitas citra masukan dapat diperbaiki sehingga tampak lebih baik. Dan blur merupakan proses yang terdapat dalam filtering.
20
(a)
(b)
Gambar 2.12 Kiri: Citra Wanita yang kabur (blur), kanan: citra Wanita setelah deblurring
3. Pemampatan citra (image compression). Jenis operasi ini dilakukan agar citra dapat direpresentasikan dalam bentuk yang lebih kompak sehingga memerlukan memori yang lebih sedikit. Hal penting yang harus diperhatikan dalam pemampatan adalah citra yang telah dimampatkan harus tetap mempunyai kualitas citra yang bagus. Contoh metode pemampatan citra adalah metode JPEG. Perhatikan Gambar 2.13. Citra sebelah kiri adalah citra kapal yang berukuran 258 KB. Hasil pemampatan citra dengan metode JPEG dapat mereduksi ukuran citra semula sehingga menjadi 49 KB saja.
21
(a)
(b)
Gambar 2.13. (a) Citra boat.bmp (258 KB) sebelum dimampatkan, (b) citra boat.jpg (49 KB) sesudah dimampatkan.
4. Segmentasi citra (image segmentation). Jenis operasi ini bertujuan untuk memecah suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Jenis operasi ini berkaitan erat dengan pengenalan pola. 5. Pengolahan citra (image analysis) Jenis operasi ini bertujuan menghitung besaran kuantitif dari citra untuk menghasilkan deskripsinya. Teknik pengorakan citra mengekstraksi ciriciritertentu yang membantu dalam identifikasi objek. Proses segmentasi kadangkala diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya. Contoh-contoh operasi pengorakan citra: a. Pendeteksian tepi objek (edge detection)
22 b. Ekstraksi batas (boundary) c. Representasi daerah (region)
Gambar 2.14 adalah
contoh
operasi pendeteksian tepi pada citra Camera.
Operasi ini menghasilkan semua tepi (edge) di dalam citra.
(a)
(b)
Gambar 2.14. (a) Citra camera, (b) citra hasil pendeteksian seluruh tepi
6.
Rekonstruksi citra (image reconstruction) Jenis operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekonstruksi citra banyak digunakan dalam bidang medis. Misalnya beberapa foto rontgen dengan sinar X digunakan untuk membentuk ulang citra organ tubuh.
23 2.3 CBIR (Content Based Image Retrieval) Perkembangan teknologi sistem informasi telah merubah cara hidup manusia terutama dalam mencari, menyimpan dan memanfaatkan informasi yang besar, cepat dan global. Informasi yang mengalir antar pemakai tidak hanya terbatas dalam bentuk teks atau suara (audio) namun juga citra (image) dan video. Perkembangan kamera dan video digital yang semakin canggih dan murah memicu makin berkembangnya data berbentuk image dan video. Diketahui bersama bahwa data image dan video membutuhkan ruang simpanan yang lebih besar dari data teks. Hal ini yang memicu juga perkembangan memori dan media simpanan data. Media simpanan data seperti harddisk saat ini untuk PC sudah ada yang berkapasitas 400 Gbyte produk dari Fujitsu. Hal ini tentunya merupakan berita yang menggembirakan namun disatu sisi juga merupakan suatu tantangan bagi pengelola dan pendisain database. Bagaimana mendesain sebuah database yang dapat menampung data sedemikian besar namun mudah dan cepat dalam mengambil kembali data tersebut. Banyak penelitian yang berhubungan dengan database terutama database multimedia telah dilakukan dan saat ini masih terus berlangsung dan masih akan terus berkembang sampai masa yang akan datang. Membuat database multimedia tidak seperti membangun database tradisional, banyak masalah yang ada diantaranya besarnya data yang akan berpengaruh pada mahalnya proses analisis content. Hal ini mengakibatkan proses pendahuluan merupakan proses yang sangat penting. Data multimedia tidak selalu lengkap karena adanya sensory gap (data tidak dapat mengcitrakan seluruh keadaan yang sebenarnya) yang diakibatkan oleh keterbatasan alat capture data. Proses klasifikasi data bersifat subyektif setiap orang memiliki intepretasi yang tidak selalu sama untuk sebuah image. Bahkan image yang
24 sama tetapi waktu, tempat atau suasana hati yang berbeda akan memberikan intepretasi yang berbeda pula (semantic gap), diperlukan suatu cara untuk dapat memanggil kembali data yang besar dan sesuai dengan keinginan user dengan keterbatasan atau adanya sensory gap dan semantic gap. Cara pengambilan image juga akan mempengaruhi hasil yang berbeda misalnya sudut pengambilan citra yang berbeda untuk obyek yang sama dapat menimbulkan intepretasi yang berbeda juga. Dari masalah-masalah yang ada tersebut memicu peneliti untuk terus mencari pemecahannya. Bagaimana perkembangan penelitian mengenai hal tersebut saat ini? Penelitian tentang multimedia database terutama untuk Indexing dan retrieval data sudah memasuki proses produksi software yang sudah dikomersilkan dipasar diantaranya: QBIC produk IBM, Virage produk Virage Inc, Escalibur produk Excalibur Technologies, Informedia produk Informedia Technologie, Surfimage produc European CBIR Technology, Netra produk, Synapse. Produk-produk tersebut di atas pada umumnya menggunakan retrieval berdasarkan katagori content dan warna. Dimana user mendeskripsikan image apa yang akan dicari dengan cara memilih kategori misalnya jenis image, Negara, tahun pembuatan, pembuat dsb atau dengan mendeskripsikan warna atau bentuk. Penerapan CBIR antara lain untuk pencegahan kejahatan, militer, hak milik intelektual, arsitektural dan disain rancang-bangun, fashion and interior disain, iklan dan jurnalistik, diagnosa medis, Informasi geografis dan sistem remote sensing, pusaka budaya, pendidikan dan latihan, hiburan, web searching. Sampai saat ini sensory gap dan semantic gap masih belum dapat dipecahkan secara sempurna. Sehingga penelitian untuk bidang Content Base Retrival citra masih
25 terbuka lebar terutama pada proses ektraksi citra, penyusunan index dan metode pemanggilan kembali untuk mendapatkan image yang sesuai dengan keinginan user. [A. W. M. Smeulders, M. Worring,, S. Santini, A. Gupta, R. Jain, “Content-Based Image Retrieval at the End of the Early Years,” IEEE Transactions on Pattren Analysis and Machine Intelligence, vol 22, no.12, pp. 1349-1380, Dec 2000]
2.3.1 Tinjauan Umum Retrival Citra Berbasis Konten (RCBK) CBIR adalah salah satu metodologi untuk pemanggilan kembali data citra berdasarkan content sebuah citra. Teknik CBIR yang banyak digunakan adalah teknik warna, teknik tekstur, teknik bentuk (perceptual Atribut). Menjadi suatu object penelitian yang cukup menantang untuk atribut interpretive dan reaktif. Gambar 1.15 memperlihatkan bentuk umum system Content Base Retrival citra . Pada citra ini terlihat ada dua lajur utama, Query dan database pada kedua lajur ini terdapat visual content description (adanya ekstraksi informasi image) yang akan digunakan untuk proses similarity
26
Gambar 2.15 Bentuk Umum CBIR
Standart yang digunakan untuk CBIR saat ini meliputi standart Network protokol (TCP/IP), format penyimpanan (TIFF, JPEG), compresi (JPEG, MPEG-2), Database command (SQL), Metadata (RDF). Gambar 1.16 menggambarkan framework CBIR yang disusun berdasarkan hasil diskusi yang membahas tentang jurnal dan artikel tentang CBIR sepuluh tahun terakhir.
27
Gambar 2.16 Framework CBIR sepuluh tahun terakhir
28 Pada framework CBIR terdapat empat modul yakni : Modul Interaksi Pemakai, Modul Knowledge, Modul Simpanan Data, Modul Observasi. Penelitian yang penulis akan lakukan menitik beratkan pada tiga modul pertama yakni modul interaksi pemakai, knowledge dan simpanan data.
Gambar 2.17 Indexing dan retrieval pada content-based retrieval Database multimedia
29 Secara umum metode indexing dapat dibagi dalam dua bagian yakni : 1
Indexing berdasarkan image content (warna, bentuk, arah, tekstur, relasi spasial
dsb). 2
Indexing berdasarkan deskripsi teks (Caption indexing, keyword , standart
subyek heading, klasifikasi dsb)
Gambar 2.18. Skema sistem penyimpanan dan pemanggilan kembali citra berdasarkan deskripsi teks
30
Gambar 2.19. Skema sistem penyimpanan dan pemanggilan kembali citra berdasarkan image content Untuk pemanggilan kembali data image dengan index berdasarkan teks digunakan textual Query sedangkan untuk pemanggilan kembali data image dengan index berdasarkan image content digunakan visual query. Kedua metode di atas memiliki keterbatasan, diantaranya untuk metode textual query karena dilakukan oleh manusia dalam mendeskripsikan citra yang akan di simpan mengakibatkan ketergantungan pada manusia sebagai pendeskripsi image sangat tinggi. Hal ini akan menyebabkan biaya tinggi. Disamping itu, jika data dalam ukuran besar (jumlah) dalam pendeskripsian data dapat terjadi pendeskripsian yang tidak konsisten, meluas dan sangat tergantung pada pemahaman dan penafsiran manusia terhadap image yang dilihat. Di dalam textual query, kata-kata digunakan untuk mendapatkan kembali citra, sedangkan dalam query visual (perolehan kembali berdasarkan content-based) image didapat kembali berdasarkan karakteristik visual seperti warna, tekstur, bentuk atau
31 sample. Retrieval berdasarkan content based memiliki masalah pada penafsiran citra secara efisien dan benar berdasarkan formulasi tertentu. Hal ini terjadi karena proses dilakukan oleh komputer yang memiliki keterbatasan dalam menilai rasa, suasana, keindahan. Hal ini disebabkan karena adanya dua gap yang ada : 1. Sensory Gap, adanya keterbatasan komputer sebagai alat bantu dalam menangkap semua informasi yang ada dalam sebuah citra 2. Semantic Gap, adanya perbedaan intepretasi karakteristik sebuah citra yang dilakukan oleh user pada waktu dan suasana yang berbeda
32 2.3.2 Desain Content Based Image Information Retrieval Ada tiga bagian desain utama yang ada pada content based image information retrieval yakni : ekstraksi karakteristik dan pengindeksan, ekstraksi karakteristik dan retrieval serta aplikasi untuk menampilkan hasil query.
2.3.2.1 Ekstrasi Karakteristik dan Pengindeksan Proses ekstraksi dan pengindexan adalah proses ekstraksi image yang akan digunakan sebagai dasar indexing dan pengembangan metode index. Tahap ini mencakup penentuan proses smoothing sebagai bagian dari pra proses, proses ektraksi, proses pembuatan index untuk image yang akan disimpan dalam database multimedia (gambar 1.19)
33
Gambar 2.20 Tahapan proses ekstrasi dan pengindexan citra
Ada tiga proses ekstraksi yang dilakukan yakni ekstraksi kata kunci, ekstraksi karakteristik global dan ekstraksi karakteristik detail. -
Ekstraksi kata kunci, Ekstraksi ini dilakukan secara manual berdasarkan intepretasi dari user terhadap suatu image. Ekstraksi yang dilakukan ditekankan pada karakteristik abstrak seperti suasana, perasaan dan selain itu pada tahap ini diharapkan juga mendapatkan informasi tentang pemilik citra, tanggal pembuatan, tanggal pengeditan, metode pengambilan citra, lokasi dsb. Proses ini
34 tidak memerlukan praproses karena dilakukan secara manual. -
Ekstraksi karakteristik global, ekstraksi ini merupakan ekstraksi berdasarkan karakteristik warna, shape dan tekstur .
-
Ekstraksi karakteristik detail,
ekstraksi ini merupakan ekstaksi dalam
histogram warna, histogram shape dan tekstur. Sebelum dilakukan proses ekstraksi karakteristik global atau proses ekstraksi
arakteristik detail perlu
dilakukan praproses yakni proses smoothing untuk menghilangkan noise yang ada. Proses ini dilakukan untuk mendapatkan image dengan kualitas yang lebih baik agar proses ekstraksi dapat berjalan dengan baik sebagai contoh untuk mendeteksi shape diperlukan proses edge detection. Pada proses ini memerlukan 3 tahapan proses : pertama noise smoothing (Mean Gaussian distribution), edge enhancement (filtering), Edge localization (menetukan edge/shape). Disini terlihat bahwa proses smoothing diperlukan agar proses ekstraksi akan mendapat hasil
yang
benar-benar
mencerminkan
karakteristik
dari
image
yang
bersangkutan.
Hasil Ekstraksi kata kunci dan ekstraksi karakteristik global akan digunakan untuk penyusunan/pembuatan index. Sedangkan hasil ekstraksi karakteristik global digunakan sebagai pembanding/filter pada saat retrieval data. Jadi hasil retrieval yang sudah diperoleh berdasarkan index yang ada akan di filter kembali dengan hasil karakteristik detailnya sehingga diharapkan didapat image yang paling sesuai dengan criteria atau karakteristik yang diminta /ditentukan oleh user. Database multimedia. Tabel index dan karakteristik detail akan disimpan dalam database multimedia. Sedangkan image tidak disimpan dalam database tersebut (secara
35 fisik) namun image tetap tersimpan dalam bentuk satuan file yang diletakkan pada sebuah direktori yang sudah ditetapkan. Jadi secara fisik database multimedia tidak menyimpan file image namun menyimpan table index dan karakteristik detail. Hal ini sengaja di desain seperti ini dengan harapan proses retrieval yang nanti akan dilakukan tidak langsung membandingkan criteria pencarian (baik deskripsi teks maupun contoh image) pada image, namun cukup melakukan pencarian dan pencocokan pada index yang telah ada. Hal ini diharapkan akan mempercepat proses karena tidak diperlukan kerja prosesor dan alokasi memori yang besar jika langsung dilakukan pembandingan dan pencarian pada image secara langsung.
2.3.2.2 Ekstrasi Karakteristik dan Retrival Ektraksi Karakteristik dan Retrieval adalah proses penentuan index dan retrieval berdasarkan karakteristik index (Query teks) serta ekstraksi karakteristik Global untuk penentuan index. Sedangkan untuk proses query image dilakukan proses praproses, proses ektraksi karakteristik global untuk penentuan index yang akan digunakan untuk retrieval berdasarkan karakteristik index. Proses karakteristik detail yang akan digunakan untuk retrieval berdasarkan karakteristik detail dari hasil retrival citra berdasarkan karakteristik index. Query berdasarkan teks tidak memerlukan proses ekstraksi namun langsung pada penentuan indeks dan retrieval data sesuai dengan karakteristik index
yang
bersangkutan. Proses ini awali dengan penentuan diskrisi secara teks oleh user kemudian system akan mencari/menentukan index yang sesuai, kemudian berdasarkan table index yang sudah ada dilakukan pencocokan karakteristik. Dari proses ini diperoleh image
36 yang sesuai dengan yang dicari.
2.3.3 Fitur Citra Fitur merupakan suatu tanda yang khas, yang membedakan antara satu dengan yang lain. Tidak berbeda dengan sebuah citra, citra juga memiliki fitur yang dapat membedakannya dengan citra yang lain. Masing-masing fitur citra didapatkan dari proses ekstraksi fitur. Fitur-fitur dasar dari citra: a. Warna - Fitur warna suatu citra dapat dinyatakan dalam bentuk histogram dari citra tersebut yang dituliskan dengan: H(r,g,b), dimana H(r,g,b) adalah jumlah munculnya pasangan warna r (red), g (green) dan b (blue) tertentu. b. Bentuk - Fitur bentuk suatu citra dapat ditentukan oleh tepi (sketsa), atau besaran moment dari suatu citra. Pemakaian besaran moment pada fitur bentuk ini banyak digunakan orang dengan memanfaatkan nilai-nilai transformasi fourier dari citra. - Proses yang dapat digunakan untuk menentukan fitur bentuk adalah deteksi tepi, threshold, segmentasi dan perhitungan moment seperti (mean, median dan standard deviasi dari setiap lokal citra). c. Tekstur - Fitur tekstur dari suatu citra dapat ditentukan dengan menggunakan filter gabor.
37 - Fitur tekstur ini sangat handal dalam menentukan informasi suatu citra bila digabungkan dengan fitur warna citra. Dari ketiga fitur diatas, dalam tugas akhir ini hanya menggunakan cirri warna dan siri bentuk.
2.3.3.1 Konsep Warna Warna pokok dalam pengelolaan citra terdiri dari 3 (tiga) unsur, yaitu merah (R), hijau (H), dan biru (B). Jika warna-warna pokok tersebut digabungkan, maka akan menghasilkan warna lain. Penggabungan warna tersebut bergantung pada warna pokok dimana tiap-tiap warna memiliki nilai 256 (8 bit).
Gambar 2.21 Contoh warna dan nilai RGB-nya
Konsep ruang warna adalah setiap pixel mempunyai warna yang dinyatakan dalam RGB, sehingga merupakan gabungan nilai R, nilai G, dan nilai B yang tidak bisa dipisahkan satu dengan lainnya. Hal ini dapat dituliskan dengan P(r,g,b).
38
Gambar 2.22 Konsep warna ruang
Warna yang dideskripsikan dengan RGB adalah pemetaan yang mengacu pada panjang gelombang dari RGB. Pemetaan menghasilkan nuansa warna untuk masingmasing R, G, dan B. Masing-masing R, G, dan B didiskritkan dalam skala 256, sehingga RGB akan memiliki indeks antara 0 sampai 255. Jika dilihat dari pemetaan model warna RGB yang berbentuk cube ( kubus ) seperti citra dibawah ini.
39
Gambar 2.23 Model warna RGB berbentuk kubus
Dengan pemetaan RGB 24-bit color cube maka 3 warna dasar dapat dicampurkan sehingga mendapatkan warna yang baru.
40
Gambar 2.24 Pemetaan RGB yang dicampurkan
2.3.3.1.1 Segmentasi Segmentasi adalah suatu proses yang digunakan untuk mengelompokkan citra sesuai dengan obyek citranya. Segmentasi dapat dilakukan dengan pendekatan region merging dan splitting.
41 2.3.3.1.2 Histogram Color histrogram merupakan hubungan dari intensitas tiga macam warna. Dimana setiap citra mempunyai distribusi warna tertentu. Distribusi warna ini dimodelkan dengan color histogram. Color histogram tersebut didefinisikan sebagai berikut : HR,G,B[r,g,b] = N.Prob { R=r, G=g, B=b } (2.2) dimana R,G,B merupakan tiga macam warna dan N adalah jumlah pixel pada citra. Color histogram dihitung dengan cara mendiskretkan warna dalam citra, dan menghitung jumlah dari tiap-tiap pixel pada citra. Karena jumlah dari tiap-tiap warna terbatas, maka untuk lebih tepatnya dengan cara menstransform 3 histogram ke dalam single variable histogram. Misalkan pada citra RGB, salah satu transformnya didefinisikan sebagai berikut : m =Nr+Ng+Nb
(2.3)
dimana Nr, Ng, dan Nb merupakan jumlah nilai biner dari warna merah ,biri, dan hijau secara berturut-turut. Untuk mendapatkan Color histogram menggunakan persamaan sebagai berikut : , ,
, ,
|
,
,
Keterangan : R = warna merah G = warna hijau B = warna biru Hr,g,b = Data untuk menampung nilai probabilitas warna RGB
(2.4)
42
Gambar 2.25 Contoh jumlah warna dalam satu citra
Gambar di atas menjelaskan bahwa warna merah mempunyai jumlah 5, Kuning = 2, Hijau = 3, Biru = 1, Abu-abu = 1, Pink = 2 danPutih = 2. Dari jumlah tersebut maka akan ditampilkan dalam bentuk histogram seperti citra dibawah ini.
Gambar 2.26 Histogram warna
43
Keterangan : P(r,g,b) = nilai histogram probabilitas H(r,g,b) = nilai histogram warna Nimage = jumlah pixel dari image Gambar 2.27 Histogram Probability Density Function
(2.5) Keterangan : P(r,g,b) = nilai histogram probabilitas H(r,g,b) = nilai histogram warna Max(H(r,g,b)) = nilai maksimum dari histogram warna
44 Histogram interseksi melakukan perhitungan jarak dengan membandingkan dua histogram h1 dan h2 dan terhadap n bin dengan mengambil nilai interseksi dari kedua histogram tersebut. (h1,h2)=1Keterangan :
∑
, ∑
(2.6)
= Nilai jarak antar dua histogram
h1 = Nilai histogram 1 h2 = Nilai histogram 2 Normalisasi diperlukan karena pada saat menggunakan image dengan ukuran yang berbeda, fungsi jarak ini bukanlah sebuah matrik yang seharusnya DH(g,h)≠DH(g,h). Supaya manjadi sebuah matrik yang valid, pada histogram diperlukan : 1
(2.7)
∑
Untuk histogram yang ternormalisasi (jumlah total sama dengan 1), interseksi histogram adalah : 1 , 2 Keterangan :
1
∑
| 1
2 | (2.8)
= Nilai jarak antar dua histogram yang ternormalisasi 1 = Nilai histogram 1 ternormalisasi 2 = Nilai histogram 2 ternormalisasi
Persamaan diatas adalah model matriks jarak Minkowski dengan k=1. Sifat interseksi histogram dapat menghilangkan bagian tertentu (occlusion), dimana apabila sebuah objek dalam suatu image dihilangkan pada bagian tersebut, bagian yang kelihatan masih mempunyai kontribusi untuk kesamaan atau similaritas.
45 2.3.3.2 Konsep Bentuk 2.3.3.2.1 Grayscale Proses awal yang banyak dilakukan dalam image processing adalah mengubah citra berwarna menjadi citra gray-scale, hal ini digunakan untuk menyederhanakan model citra. Pada awalnya citra terdiri dari 3 layer matrik yaitu R-layer, G-layer dan Blayer. Sehingga untuk melakukan proses-proses selanjutnya tetap diperhatikan tiga layer di atas. Bila setiap proses perhitungan dilakukan menggunakan tiga layer, berarti dilakukan tiga perhitungan yang sama. Sehingga konsep itu diubah dengan mengubah 3 layer di atas menjadi 1 layer matrik grayscale dan hasilnya adalah citra gray-scale. Dalam citra ini tidak ada lagi warna, yang ada adalah derajat keabuan. Untuk mengubah citra berwarna yang mempunyai nilai matrik masing-masing r, g dan b menjadi citra gray scale dengan nilai s, maka konversi dapat dilakukan dengan mengambil rata-rata dari nilai r, g dan b sehingga dapat dituliskan menjadi: s=
(2.9)
Keterangan : s = Nilai derajat keabuan r = Nilai Red pada suatu nilai RGB g = Nilai Green pada suatu nilai RGB b = Nilai Blue pada suatu nilai RGB Pada penjelasan di atas pengubahan citra berwarna menjadi gray-scale dilakukan dengan menggunakan rata-rata nilai gray-scale dari setiap layer R, G, dan B. Hal ini bukanlah suatu keharusan. Meskipun hasilnya sudah cukup bagus, pemakaian nilai rata-rata masih belum optimal untuk menunujukkan citra gray-scale sehingga dilakukan pengubahan komposisi sebagai berikut:
46 Grayscale = αR + βG + δB / (α + β + δ) (2.10) Dengan nilai α=0.35, β=0.25 dan δ=0.4 sehingga nilai α+β+δ =1 Fungsi dari format warna gray ini adalah untuk memudahkan proses selanjutnya karena kita akan kesulitan apabila kita menjalankan proses selanjutnya dengan menggunakan format citra berwarna karena nilai r, g, dan b yang dihasilkan dengan format citra itu akan bervariasi. Dengan format warna gray ini maka dihasilkan nilai R=G=B.
2.3.3.2.2 Filter Gaussian Filter rata-rata adalah filter dengan nilai pada setiap elemen kernelnya berbentuk fungsi Gaussian dan sebagai LPF maka jumlah dari semua nilai kernelnya adalah 1 (satu). Dengan rumus : F(x,y)=
√
exp
(2.11)
Keterangan : x = jarak dari titik di sumbu horizontal y = adalah jarak dari titik di sumbu vertical σ = standar deviasi dari distribusi Gaussian Filter rata-rata termasuk dalam linier filter dengan menggunakan kernel berupa matrik. 2.3.3.2.3 Edge Detection Bentuk merupakan atribut dari suatu citra. Fitur bentuk suatu citra dapat dilakukan dengan deteksi tepi, threshold, segmentasi dan perhitungan moment seperti mean, median, dan standart dari setiap local citra. Deteksi tepi adalah proses yang penting pada preprosessing citra, karena hasil daripada deteksi tepi ini adalah tepi dari citra saja yang menunjukkan bentuk spesifik citra. Proses deteksi tepi ini dilakukan pada
47 citra biner .
Ada beberapa metode yang digunakan untuk mendeteksi tepi salah satu
diantaranya adalah metode sobel yang menggunakan filter High-Pass-Filter yang diberi satu angka nol penyangga. Kelebihan dari metode sobel ini adalah kemampuan untuk mengurangi noise sebelum melakukan perhitungan deteksi tepi dan mempunyai kemampuan untuksmoothing. Kernel filter yang digunakan dalam metode Sobel ini adalah: Persamaan untuk kernel y (horizontal)
(2.12)
Persamaan untuk kernel x (vertical)
(2.13)
2.3.3.2.4 Integral Proyeksi Integral Proyeksi adalah suatu teknik yang menjumlahkan nilai setiap kolom atau setiap baris. Integral proyeksi didefinisikan dengan : h(j) = ∑
,
h(i) = ∑
,
48
Gambar 2.28 Rumus integral proyeksi
Gambar 2.29 Proses perhitungan integral proyeksi
2.3.3.2.5 Resampling dan Normalisasi Resampling adalah suatu metode yang digunakan untuk pengenalan suatu citra dengan cara mengambil sampel yang tepat. Sampling pada image adalah resolusi dari image itu sendiri, atau menyatakan banyaknya pixel yang digunakan untuk dapat menyajikan citra. Semakin besar samplingnya maka semakin besar resolusi sehingga citra yang diperoleh menjadi lebih halus.
49
Gambar 2.30 Contoh resampling
Menyatakan 3 sampling (64x64, 32x32 dan 16x16) yang berbeda untuk menyatakan suatu image. Proses normalisasi dilakukan untuk mengecilkan data yaitu antara nol sampai dengan satu. Hal ini sangat diperlukan, karena bila terjadi matching citra yang berlainan ukuran, maka otomatis data dari citra yang dimatching tersebut selalu antara nol sampai dengan satu. Untuk setiap pixel ke-k pada vektor kolom dinormalisasi dengan rumus : |
|= | |
(2.14)
Sedangkan untuk mencari nilai standar deviasi menggunakan rumus: ∑
(2.15)
2.3.4 K-means Setelah proses normalisasi kami menggunakan metode k-means agar dapat dilakukan clustering sehingga data dapat dijadikkan beberapa kelas. Pembagian kelas ini dilakukan agar proses retrieval citra menjadi lebih efisien dan lebih cepat.
50 Dem monstrasi untuuk algoritmaa sederhana dari K-meanns dapat dilihhat pada gam mbar 2.31
Gamb bar 2.31 dem monstrasi allgoritma daari k-means K Kelebihan metode m k-means dengan metode m pem mbagian kelass lainnya adaalah metode ini s sederhana daan cepat sehhingga memuungkinkan metode m ini unntuk dijalankkan pada k kumpulan daata besar.
2 2.3.5 Imagee Matching Imag ge matchingg adalah meetode yang digunakan dalam TugaasAkhir ini yang b bertujuan un ntuk mengettahui kemiriipan dua buuah citra. Peertama, citraa query dann citra d database dittentukan. Ciitra query disebut d juga dengan citrra acuan ataau citra tem mplate a adalah suatu u citra yangg dijadikan acuan inforrmasi (conteent) dalam proses p pencaarian. S Sedangkan citra c databasse atau kumppulan citra target adalahh sekumpulann citra yangg akan d digunakan sebagai s dataabase citra. Kemudian kedua citraa tersebut dilakukan d p proses e ekstraksi cirrri warna deengan mengggunakan hisstogram warna dengan menghitung m jarak d dari nilai histogram h R RGB pada masing-masi m ing citra. Dari D jumlah histogram yang
51 mempunyai R, G, dan B yang sama akan dicari jarak antara citra database dan citra query. citra yang mempunyai jarak yang minimal adalah citra yang paling mirip dengan citra template. Proses matching ini kami lakukan pada ekstraksi hasil segmentasi warna baik pada citra database maupun pada citra query. Persamaan yang digunakan untuk menghitung jarak diatas adalah sebagai berikut : |
|
(2.18)
Keterangan : d = jarak V = vector dari gambar database dan gambar kueri. Sedangkan untuk menghitung nilai kemiripan data dapat dirumuskan sebagai berikut : S=1–d
(2.19)
S adalah nilai kemiripan dan d adalah nilai image matching.