BAB 2 KAJIAN PUS TAKA
2.1 Kecerdasan Buatan 2.1.1 Definisi Kecerdasan Buatan Kecerdasan buatan dapat didefinisikan sebagai cabang dari ilmu komputer yang memusatkan perhatian pada otomatisasi dari karakteristik inteligensia (Luger, 1993). Kecerdasan buatan merupakan salah satu bagian ilmu komputer yang membuat agar mesin (komputer) dapat melakukan pekerjaan seperti dan sebaik yang dilakukan oleh manusia (Kusumadewi, 2003). M anusia pandai dalam menyelesaikan segala permasalahan karena manusia mempunyai pengetahuan dan pengalaman. A gar komputer dapat bertindak seperti dan sebaik manusia, maka komputer juga harus dibekali bekal pengetahuan dan mempunyai kemampuan untuk menalar. Dua bagian utama pada konsep kecerdasan buatan, yaitu: •
Basis Pengetahuan Berisi fakta, teori, pemikiran, dan hubungan suatu hal dengan hal lainnya.
•
M esin Inferensi Kemampuan menarik kesimpulan berdasarkan pengalaman.
Gambar 2.1 Konsep kecerdasan buatan pada komputer 8
9
2.1.2 Ruang Lingkup Kecerdasan Buatan M akin
pesatnya
perkembangan
teknologi
menyebabkan
adanya
perkembangan dan perluasan lingkup yang membutuhkan peran kecerdasan buatan. Kecerdasan buatan tidak hanya dominan di bidang ilmu komputer (informatika), namun juga sudah digunakan di beberapa disiplin ilmu lain. Adanya irisan penggunaan kecerdasan buatan di berbagai disiplin ilmu menyebabkan sulitnya pengklasifikasian berdasarkan disiplin ilmu. Oleh karena itu, pengklasifikasian kecerdasan buatan dibuat berdasarkan keluaran yang dihasilkan. Ruang lingkup utama dalam kecerdasan buatan adalah: •
Sistem pakar Sistem pakar dapat menyelesaikan permasalahan yang biasa diselesaikan oleh seorang pakar (Rich, 1991, p547). Komputer digunakan sebagai sarana untuk menyimpan basis pengetahuan seorang pakar sehingga komputer dapat menyelesaikan permasalahan layaknya seorang pakar.
•
Pengolahan bahasa alami Sebuah program yang mampu memahami bahasa manusia (Luger, 1993, p17). Komputer diberikan pengetahuan mengenai bahasa manusia sehingga pengguna dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari.
•
Perencanaan dan robotik Perencanaan adalah sebuah aspek yang penting dalam merancang sebuah sistem robot yang dapat menyelesaikan tugas-tugasnya dengan derajat fleksibilitas dan tanggung jawab terhadap dunia luar (Luger, 1993, p19) .
10
•
Visi komputer Visi komputer dapat dideskripsikan sebagai sebuah deduksi otomatis dari struktur atau properti dari ruang dimensi tiga baik dari satu atau beberapa citra dua dimensi dari ruang lingkup dan pengenalan objek dengan bantuan properti ini. Tujuan dari visi komputer adalah untuk menarik kesimpulan mengenai lingkungan fisik dari citra yang ambigu atau yang memiliki derau (Kulkarni, 2001, p27).
•
Permainan Konsep kecerdasan buatan dapat diterapkan pada beberapa permainan seperti catur dan dam. Permainan-permainan ini memiliki aturan main yang jelas sehingga mudah untuk dapat mengaplikasikan teknik pencarian heuristik (Luger, 1993, p14). Pencarian heuristik adalah metode pencarian yang dilakukan dengan menggunakan penalaran. Dengan pencarian heuristik, mesin dapat memunculkan beberapa kemungkinan yang dapat dilakukan dan mencari jalan yang terbaik atau mendekati hasil yang diinginkan.
2.2 Visi komputer Seperti yang telah dijelaskan pada pembahasan di atas, visi komputer dapat dideskripsikan sebagai sebuah deduksi otomatis dari struktur atau properti dari ruang dimensi tiga baik dari satu atau beberapa citra dua dimensi dari ruang lingkup dan pengenalan objek dengan bantuan properti ini. Tujuan dari visi komputer adalah untuk menarik kesimpulan mengenai lingkungan fisik dari citra yang ambigu atau yang memiliki derau (Kulkarni, 2001, p27).
11
Salah satu pendekatan untuk mengimplementasikan sistem visi komputer adalah dengan berusaha meniru sistem visi manusia. Namun, permasalahan yang ada pada pendekatan ini adalah sistem visi manusia sangat kompleks dan sulit dimengerti. Sistem penglihatan manusia bersifat terputus-putus (tidak berhubungan) dan spekulatif (tidak menentu). Oleh karena itu, tidaklah mungkin untuk dapat meniru sistem visi manusia secara sempurna. Walaupun demikian, studi terhadap sistem biologis memberikan petunjuk untuk membangun sistem visi komputer.
Gambar 2.2 Sistem visi komputer Tahap-tahap dalam sistem visi komputer secara umum digambarkan pada Gambar 2.2. Tiga tahap yang pertama adalah akuisisi citra, prapengolahan, dan ekstraksi fitur. Ketiga tahap ini disebut dengan tahap pemrosesan awal atau pemrosesan tingkat rendah karena berhubungan dengan pemrosesan citra pada retina. Sedangkan rekognisi (pengenalan) merupakan tahapan akhir atau pemrosesan tingkat tinggi karena berhubungan dengan penggunaan kognitif atas basis pengetahuan dan informasi-informasi pendukung lain yang berkaitan.
12
2.3 Citra 2.3.1 Definisi Citra Citra adalah suatu fungsi intensitas warna dua dimensi f(x,y) di mana x dan y mewakili koordinat lokasi suatu titik dan nilai fungsi yang merupakan tingkat intensitas warna atau derajat keabuan pada titik tersebut (Schalkoff, 1989, p9). Citra adalah gambar pada bidang dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses digitasi. Citra mengandung informasi mengenai objek di dalamnya.
2.3.2 Pengolahan Citra Pengolahan citra merupakan bidang yang berhubungan dengan proses transformasi citra yang bertujuan untuk mendapatkan kualitas citra yang lebih baik (Fairhust, 1988). Dalam bidang komputer ada tiga bidang studi yang berkaitan dengan data citra, tetapi masing-masing memiliki tujuan yang berbeda, yaitu: •
Komputer grafis Bidang studi yang mempelajari cara pembuatan dan memanipulasi gambar dengan menggunakan objek-objek primitif, seperti titik, garis, kotak, dan sebagainya. Contoh data deskriptif adalah koordinat titik, panjang garis, jari-jari lingkaran, warna, dan sebagainya.
•
Pengolahan citra Pemrosesan citra, khususnya dengan menggunakan komputer, menjadi citra yang
kualitasnya
lebih
baik.
Teknik-teknik
mentransformasikan citra menjadi citra lain.
pengolahan
citra
13
•
Pengenalan pola M engelompokkan data numerik dan simbolik (termasuk citra) secara otomatis yang dilakukan oleh komputer dengan tujuan untuk mengenali suatu objek di dalam citra dan hasil keluarannya berupa deskripsi objek.
Secara umum operasi pengolahan citra dapat diklasifikasikan menjadi 5 jenis pemrosesan, yaitu: •
Perbaikan kualitas citra Jenis operasi ini bertujuan untuk memperbaiki kualitas citra dengan cara memanipulasi parameter-parameter pada citra. Dengan operasi ini ciri-ciri khusus yang terdapat pada citra lebih ditonjolkan. Yang termasuk dalam klasifikasi ini antara lain: 1. Perbaikan kontras 2. Perbaikan tepian objek 3. Penajaman 4. Pemberian warna semu 5. Pemfilteran derau
•
Pemulihan citra Operasi ini bertujuan
untuk
menghilangkan
atau
meminimumkan
kekurangan-kekurangan yang ada pada citra. Tujuan pemulihan citra hampir sama dengan perbaikan citra, yaitu untuk memperbaiki kualitas citra. Yang termasuk dalam klasifikasi ini antara lain: 1. Penghilangan kesamaran 2. Penghilangan derau
14
•
Pengkompresian citra Operasi ini bertujuan untuk memampatkan ukuran citra sehingga memori yang dibutuhkan untuk menyimpan citra lebih kecil, tetapi hasil citra yang telah dimampatkan tetap memiliki kualitas gambar yang bagus. Contohnya adalah metode JPEG.
•
Segmentasi citra Operasi ini bertujuan untuk memecah atau membagi suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Jenis operasi ini erat kaitannya dengan pengenalan pola.
•
Analisis citra Operasi ini bertujuan untuk menghitung besaran kuantitatif citra untuk menghasilkan deskripsinya. Teknik analisis citra mengekstrak ciri-ciri tertentu yang membantu dalam identifikasi objek. Proses segmentasi terkadang diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya. Yang termasuk dalam klasifikasi ini antara lain: 1. Pendeteksian tepian 2. Ekstraksi batas 3. Representasi daerah
•
Rekonstruksi citra Operasi ini bertujuan untuk membentuk ulang objek dari beberapa citra hasil proyeksi. Operasi rekonstruksi citra banyak digunakan dalam bidang medis. Contohnya adalah foto ronsen dengan sinar X.
15
2.4 Perangkat Analisis Dari segi etimologi, perangkat analisis berarti sebuah perangkat atau program aplikasi yang dikhususkan untuk tujuan menganalisis data masukan yang diterimanya menjadi data keluaran yang diharapkan. Perangkat analisis yang akan dibahas di sini adalah perangkat analisis yang mengolah citra. Agar dapat memperoleh hasil yang maksimal, tentu saja citra masukan yang akan dianalisis harus diolah terlebih dahulu agar proses analisis dapat dilakukan secara maksimal. Oleh karena itu, proses ini dilakukan melalui tiga tahapan, yaitu prapengolahan, pengolahan, dan analisis.
2.4.1 Prapengolahan Tahap prapengolahan atau pemrosesan awal berkaitan dengan visi awal pemrosesan citra. Tujuan utama dari pemrosesan awal adalah untuk mengembangkan deskripsi bentuk dan permukaan pada citra yang diberikan (Kulkarni, 2001, p153). Tahap pemrosesan awal mengimplementasikan berbagai teknik dalam pengolahan citra untuk meningkatkan kualitas gambar agar mudah diolah oleh tahap berikutnya. Tahap pemrosesan awal termasuk dalam tahap pengolahan tingkat rendah, artinya tahap ini dapat dilakukan tanpa memerlukan penalaran ataupun basis pengetahuan. Pada tahap pemrosesan awal, kita cukup mengkaji metode atau pendekatan fungsi yang tepat untuk melakukan pemrosesan citra. Banyak fungsi atau fitur yang terdapat pada tahap pemrosesan awal, tetapi fitur yang dibahas di sini terbatas pada ruang lingkup citra bioinformatik saja. Fitur-fitur yang terdapat pada tahap pemrosesan awal, yaitu: kecerahan, kontras, skala abu, dan ambang batas.
16
2.4.1.1 Kecerahan Kecerahan didefinisikan sebagai sebuah atribut dari sensasi visual yang sesuai dengan rangsangan visual yang ada untuk intensitas yang lebih banyak atau sedikit (Bezryadin, 2007). Kecerahan digunakan untuk memberikan efek cahaya pada citra yang mempunyai intensitas cahaya yang minim sehingga citra yang gelap terlihat lebih terang. Di ruang warna RGB (merah, hijau, biru), kecerahan dapat dianggap sebagai rata-rata aritmetik μ dari koordinat warna merah, hijau, dan biru (walaupun beberapa dari tiga komponen tersebut membuat cahaya terlihat terang daripada yang lain). Perubahan kecerahan (kecerahan) yang paling sering digunakan adalah dengan rata-rata aritmetik yang dirumuskan dengan: R G B
2.1
Luminance merupakan kuantitas terukur yang paling mendekati kecerahan sehingga sering digunakan sebagai sinonim kecerahan. Tetapi pada dasarnya ukuran kecerahan dan terang berbeda jauh. Karena perhitungan terang menurut ITU-R BT.601 (himpunan standar yang mendefinisikan aturan-aturan untuk mengkonversi sinyal analog televisi (PAL atau NTSC) menjadi sinyal digital atau sebaliknya) kecerahannya dapat dihitung dengan rumus:
Y’ = 0,299 R + 0,587 G + 0,114 B
2.2
Sehingga kecerahan dan terang memiliki perbedaan hasil walaupun diberikan masukan nilai yang sama.
17
2.4.1.2 Kontras Kontras adalah perbedaan antara nilai kecerahan relatif antara sebuah benda dengan objek di sekelilingnya pada citra. •
Ekualisasi histogram M etode ekualiasasi histogram ini biasanya meningkatkan kontras global dari citra, terutama saat citra direpresentasikan dengan nilai kontras yang berdekatan. M elalui penyesuaian ini, intensitas citra dapat terdistribusi dengan lebih baik. Ekualisasi histogram dicapai dengan menyebarkan nilai intensitas yang paling sering muncul.
Gambar 2.3 Citra tanpa ekualiasi histogram
Gambar 2.4 Citra dengan ekualisasi histogram Ekualisasi histogram ini dapat diimplementasikan dengan algoritma. Dengan menganggap citra yang sudah dibuat hitam putih sebagai x, dan ni adalah angka yang menunjukkan seberapa seringnya derajat keabuan I muncul, maka dapat diperoleh notasi:
18
P x(i) = p (x = I ) =
, 0 ≤ I
2.3
Di mana L adalah total angka dari derajat keabuan dalam citra, n adalah jumlah total pixel pada citra, dan px adalah nilai dari histogram citra tersebut, yang sudah dinormalisasi ke [0,1]. Kita juga harus mendefinisikan fungsi distribusi kumulatif cdf yang berkorespondensi ke px .
Cdf y(i) = iK
2.4
Yang juga berupa histogram ternormalisasi yang telah diakumulasi dari citra tersebut. Kita juga ingin menciptakan transformasi dari y = T(x) untuk menciptakan citra baru y, kemudian cdf yang ada dilineariasi dengan fungsi yang dinotasikan dengan:
Y’ y . (max {x} – min{x}) + min {x}
2.5
Untuk memetakan kembali nilai-nilai tersebut ke sebarannya yang normal, diperlukan transformasi sederhana yang dapat diperoleh dari fungsi yang dinotasikan dengan: 2.6 •
Peregangan Kontras Peregangan kontras adalah teknik yang digunakan untuk mendapatkan citra keluaran dengan kontras (perbedaan tingkat intensitas warna pada gambar) yang lebih baik dari citra
19
masukannya. Citra yang memiliki kontras yang rendah dapat terjadi karena kurangnya pencahayaan, atau kurangnya bidang dinamika dari sensor citra. Ide dasar dari perbaikan kontras adalah meningkatkan bidang dinamika derajat keabuan pada citra yang akan diproses. Proses perbaikan kontras termasuk proses perbaikan yang bersifat pemrosesan titik, yang artinya proses ini hanya bergantung dari nilai intensitas derajat keabuan sebuah piksel dan tidak tergantung pada piksel lain yang ada di sekitarnya. Sebelum melakukan perbaikan kita perlu menspesifikasikan nilai batas atas dan batas bawah piksel dari citra yang ingin dinormalisasi. Sebagai contoh untuk citra hitam putih 8-bit nilai batas bawahnya 0 dan batas atasnya 255. Sebut saja nilai batas bawah sebagai a dan nilai batas atas sebagai b. Cara termudah untuk melakukan normalisasi adalah dengan menemukan nilai terendah dan tertinggi nilai piksel dari citra tersebut, misalnya kita anggap sebagai c dan d. Kemudian setiap piksel P dihitung dengan menggunakan fungsi:
Pout = (Pm – c)
+a
2.7
Di mana nilai di bawah 0 ditentukan sebagai 0 dan nilai di atas 255 ditentukan menjadi 255.
20
2.4.1.3 Skala abu Dalam fotografi dan komputerisasi, citra skala abu adalah sebuah citra di mana nilai dari setiap piksel adalah sebuah sampel tunggal, dalam arti, citra itu hanya membawa informasi intensitas. Citra jenis ini, juga dikenal sebagai citra hitam putih, dibentuk secara eksklusif dari derajat warna abu, bervariasi dari hitam pada intensitas terendah ke putih pada intensitas tertinggi. Citra skala abu berbeda dari citra hitam putih 1 bit, di mana pada konteks pencitraan komputer adalah citra dengan hanya 2 warna, hitam dan putih (disebut juga citra bilevel atau citra biner). Citra skala abu mempunyai sejumlah nilai derajat keabuan di dalamnya (disebut juga citra monokromatik, yaitu citra yang mengindikasikan tidak adanya variasi kromatik di dalamnya). Citra skala abu dapat disintesis dari citra yang berwarna (citra kromatik). Jika setiap piksel pada citra kromatik direpresentasikan oleh intensitas R, G, dan B yang masing-masing mewakili nilai untuk warna merah, hijau, dan biru, ada 3 metode perata-rataan sederhana yang dapat diimplementasikan untuk mengkonversi citra kromatik menjadi citra skala abu: •
Lightness M etode lightness bekerja dengan merata-ratakan nilai piksel warna yang paling menonjol dan yang paling tidak menonjol. Nilai piksel skala abu dapat dihitung dengan rumus:
21
Pg = •
, ,
, ,
2.8
Average M etode average merata-ratakan dengan sederhana. M etode ini memberikan nilai yang sama pada tiap piksel warna. Nilai piksel skala abu dapat dihitung dengan rumus:
Pg = •
2.9
Luminosity M etode luminosity juga bekerja dengan cara merata-ratakan nilai, tetapi metode ini membentuk rata-rata dengan bobot tertentu berdasarkan persepsi mata manusia. M ata kita lebih sensitif dengan warna hijau, oleh karena itu warna hijau diberi bobot yang lebih besar daripada yang lainnya. Formula untuk metode luminosity:
Pg = 0,299 R + 0,587 G + 0,114 B
2.10
Gambar 2.5 Perbandingan citra keluaran metode lightness, average, dan luminosity
22
Berdasarkan
perbandingan
keluaran
citra
di
atas,
dapat
disimpulkan bahwa metode lightness cenderung mengurangi kontras, sedangkan metode luminosity yang bekerja menggunakan persepsi mata manusia menghasilkan citra yang paling baik dari ketiga metode di atas. Akan tetapi, terkadang ketiga metode tersebut menghasilkan citra keluaran yang sangat mirip.
2.4.1.4 Ambang batas Ambang batas adalah teknik segmentasi yang sederhana untuk citra yang mengandung objek yang solid pada latar belakang dengan kecerahan berbeda tetapi masih terdapat keseragaman di dalamnya (Dougherty, 2009). Setiap piksel dibandingkan dengan nilai ambang batas. Jika nilai piksel lebih besar, maka piksel tersebut dianggap sebagai latar depan dan ditempatkan sebagai warna putih. Jika nilainya lebih kecil atau sama dengan nilai ambang batas, maka piksel tersebut dianggap sebagai latar belakang dan ditempatkan sebagai warna hitam.
Gambar 2.6 Citra hasil ambang batas
23
Pada umumnya, derajat keabuan pada histogram terdiri dari dua distribusi yang terpisah (histogram bimodal) yang masing-masing merepresentasikan latar depan dan latar belakang yang tidak saling tumpang tindih, dan sebuah ambang batas global T dapat diambil di manapun di daerah lembah yang memisahkan kedua distribusi tersebut (di antara T1 dan T2).
Gambar 2.7 Histogram bimodal Penentuan ambang batas tidak selalu sama terhadap semua citra. M asing-masing citra dengan kondisi yang berbeda-beda memerlukan pendekatan atau metode yang berbeda-beda pula. Berikut merupakan beberapa metode yang dapat digunakan untuk menentukan ambang batas citra. •
Ambang Batas Optimal Ambang batas optimal menganggap histogram dari sebuah citra sebagai jumlah terbobot dari dua (atau lebih) probabilitas kepadatan. Ambang batas kemudian ditempatkan sebagai derajat keabuan yang menghasilkan piksel yang mengalami salah pengklasifikasian dalam jumlah yang terkecil, misalnya piksel latar
24
belakang diklasifikasikan sebagai latar depan, dan sebaliknya. Letak ambang batas tersebut mengarah kepada irisan dari kedua distribusi normal, dan tidak identik dengan bagian terdasar dari lembah di antara
dua
puncak
(metode
konvensional).
M etode yang
menggunakan prinsip ini, yaitu metode Otsu, isodata, kesimetrisan latar belakang, dan algoritma segi tiga. -
Histogram dengan metode Otsu M etode
Otsu
mendeskripsikan
histogram
tingkat
keabuan dari sebuah citra sebagai sebuah distribusi probabilitas, sehingga:
pi = ni / N
2.11
Di mana ni adalah jumlah piksel dengan nilai keabuan i, N adalah jumlah total piksel pada citra, dan pi adalah probabilitas dari piksel yang memiliki nilai keabuan i. Jika kita melakukan ambang batas pada level k, kita dapat mendefinisikan: 2.12
μ
2.13
Di mana L adalah jumlah dari derajat keabuan (misalnya 256 untuk citra 8 bit). Dengan definisi: μ
1
2.14
25
Kita bermaksud akan menemukan k untuk memaksimalisasi perbedaan antara ω(k) dan µ(k). Hal ini dapat dilakukan pertama-tama dengan mendefinisikan rata-rata nilai derajat keabuan citra dengan: μ
2.15
Dan kemudian menemukan nilai k maksimal: μ
μ
.16
μ
Yang memaksimalisasi varians antar kelas (atau meminimalisasi varians di dalam kelas). Nilai k tersebut dipilih untuk memaksimalisasi pemisahan antar dua kelas (latar depan dan latar
belakang),
atau
secara
alternatif
meminimalisasi
penyebarannya, sehingga tumpang tindah di antaranya menjadi minimal. -
Isodata M etode
isodata
(Iterative
Self-Organizing
Data
Analyzing Technique Algorithm) merupakan metode yang bekerja dengan cara membandingkan nilai rata-rata dari kedua distribusi secara iteratif hingga konvergensi terpenuhi. M etode ini bekerja secara berulang terus menerus hingga syarat yang ditentukan terpenuhi. Algoritma yang digunakan adalah sebagai berikut:
26
1. Tentukan ambang batas citra dengan menggunakan rata-rata dari dua puncak atau rata-rata dari nilai piksel, T0. 2. Hitung nilai rata-rata piksel di bawah ambang batas, µ1, dan nilai rata-rata piksel di atas ambang batas, µ2. 3. Ganti nilai ambang batas lama dengan nilai ambang batas baru, Ti = (µ1+ µ2)/2. 4. Ulangi langkah 2 dan 3 hingga T1 – Ti-1 < Δ (di mana perubahan Δ dapat didefinisikan dengan beberapa cara, baik dengan cara mengukur perubahan relatif pada nilai ambang batas atau dengan persentase dari piksel yang berubah posisi selama iterasi). -
Kesimetrisan latar belakang M etode kesimetrisan latar belakang mengasumsikan bahwa latar belakang membentuk sebuah puncak yang simetris (bentuk sisi kiri sama dengan sisi kanan dari lembah hingga puncak) dan dominan pada histogram. Puncak maksimum maxp diperoleh dengan mencari nilai maksimum pada histogram. M etode ini dapat dilakukan dengan algoritma sebagai berikut: 1. Lakukan penghalusan terhadap citra. 2. Tentukan nilai maksimum global dari histogram maxp. 3. Lakukan pencarian dari sebelah kanan (sisi yang berlawanan dengan objek) untuk titik yang bersesuaian dengan p% dari histogram (misalnya 95%)
27
4. Dengan mengasumsikan bahwa puncak dari latar belakang adalah simetris, gunakan rumus:
θ = maxp – (p% - maxp )
2.17
M etode ini dapat diadaptasi dengan mudah untuk kasus di mana kita memiliki objek terang pada latar belakang yang gelap. -
Algoritma segi tiga M etode algoritma segi tiga adalah metode yang mencari nilai ambang batas berdasarkan histogram dari citra. M etode ini mencari lembah yang berjarak paling jauh dari garis diagonal yang terbentuk dari titik puncak histogram pada sebuah distribusi dan titik terendah histogram dari distribusi lainnya. M etode ini bekerja dengan algoritma sebagai berikut: 1. Tarik garis antara nilai maksimum dari histogram bmax dan nilai minimum bmin pada citra. 2. Hitung jarak dari garis tersebut ke histogram h(b) untuk setiap nilai b (dari bmin hingga bmax ). 3. Tentukan nilai derajat keabuan b0 di mana jarak antara h(b0) dan garis tersebut bernilai maksimal. Nilai b0 tersebut merupakan nilai ambang batas yang diperoleh (T = b0). M etode ini dapat bekerja dengan efektif ketika piksel dari objek menghasilkan puncak yang lemah pada histogram.
28
•
Ambang Batas Adaptif Terkadang tidaklah mungkin untuk membagi sebuah citra dengan sebuah ambang batas global. Hal ini dapat terjadi pada sebuah citra dengan latar belakang yang bervariasi. Penentuan ambang batas disebut juga ambang batas adaptif ketika ambang batas yang berbeda digunakan untuk daerah yang berbeda pada citra. M etode ini dikenal juga sebagai ambang batas lokal atau dinamis (Shapiro, 2001, p89).
Gambar 2.8 (i) Sebuah citra dan (ii) penampang citra Pada gambar 2.8, penampang citra yang diambil sepanjang garis hitam pada citra menunjukkan tingkat keabuan tiap-tiap piksel yang dilaluinya. Tidak ada ambang batas global yang tepat (baik T1 maupun T2) yang dapat memisahkan objek (latar depan) dari latar belakang. Satu cara yang dapat menyelesaikan permasalahan ini adalah mengurangi atau membagi citra dengan citra dari latar belakang itu sendiri, baik mendapatkannya secara independen maupun dari citra itu sendiri dengan menyamarkannya.
29
Tidak seperti metode ambang batas lainnya, ambang batas adaptif mengubah nilai ambang batas secara dinamis sepanjang penelusuran citra. Setiap piksel dianggap memiliki n × n piksel bersebelahan
di sekelilingnya di mana nilai-nilai tersebut
merupakan sumber perhitungan dari nilai ambang batas lokal (dari rata-rata atau nilai tengah dari nilai-nilai tersebut). Piksel ditetapkan menjadi putih atau hitam berdasarkan perbandingan letak nilainya dari ambang batas lokal TL. Besarnya nilai n harus cukup untuk meliputi piksel latar depan dan latar belakang tertentu sehingga efek dari derau dapat diminimalisasi, dan juga tidak terlalu besar hingga menyebabkan pencahayaan yang tidak merata dapat terlihat di dalam piksel yang bersebelahan. Seringkali metode ini dapat lebih berhasil jika ambang batas lokal TL dipilih dengan cara:
TL = {mean atau median} – C
2 .18
Di mana nilai C adalah sebuah konstanta.
•
Metode Berbasis Daerah M etode berbasis daerah bekerja dengan cara menemukan daerah-daerah yang berhubungan berdasarkan beberapa kesamaan antar piksel di antaranya (Dougherty, 2009, p321). Tujuannya adalah untuk menghasilkan daerah-daerah yang berhubungan yang seluas mungkin, dengan fleksibilitas tertentu. Jika kita menetapkan similaritas yang terlalu tinggi terhadap piksel pada daerah tertentu,
30
kita akan membagi citra secara berlebihan, sebaliknya, jika kita memberikan fleksibilitas yang terlalu besar, mungkin kita akan menggabungkan beberapa daerah yang seharusnya merupakan objek-objek yang terpisah. Pengembangan wilayah bekerja dari piksel awal yang ditentukan. Daerah diperluas dengan menambahkan piksel-piksel yang bersebelahan yang memiliki kesamaan karakteristik (misalnya kecerahan, warna, tekstur, karakteristik geometri, dan sebagainya) dengan 4- atau 8-konektivitas. Kita dapat menentukan sebuah varians sebagai karakteristik. Pengembangan daerah berakhir ketika menemukan piksel yang berada di luar varians.
Gambar 2.9 (i) Citra dan (ii)-(v) hasil pengembangan daerah citra Gambar 2.9 menunjukkan hasil ambang batas terhadap citra (i) dengan metode pengembangan daerah. Gambar tersebut masingmasing menunjukkan hasil ambang batas dengan nilai jangkauan piksel sebesar 50 pada gambar (ii), 100 pada gambar (iii), 150 pada gambar (iv), dan 200 pada gambar (v).
31
•
Metode Berbasis Batas M etode berbasis batas bekerja dengan cara menemukan perbedaan piksel daripada kesamaannya. Tujuannya adalah untuk menentukan batas yang tertutup sehingga objek (latar depan) dan latar belakang dapat didefinisikan. -
Deteksi dan koneksi sisi Sisi pada sebuah citra dideteksi dengan menggunakan operator
gradien,
misalnya operator
Sobel.
Selanjutnya,
dilakukan penentuan ambang batas terhadap besarnya citra yang bergradien. Sisi yang tegas akan tampak jelas, sedangkan beberapa sisi yang lebih lemah akan tampak terputus. Citra yang memiliki derau juga ikut menambahkan permasalahan yang ada, menghasilkan sisi-sisi yang tidak nyata. Beberapa koneksi pada sisi untuk membentuk batas yang terhubung dibutuhkan pada kasus ini. Piksel sisi yang bersebelahan dapat dihubungkan jika piksel-piksel tersebut memiliki karakteristik yang hampir sama, misalnya besar gradien dan orientasi yang sama berdasarkan hasil Sobel. Pada saat hubungan antar sisi ditetapkan, sisi-sisi yang terhubung tersebut menjadi batas pinggir. Piksel-piksel yang terhubung masih harus dipersempit, misalnya melakukan pemindaian sepanjang baris dan kolom. Pengkoneksian sisi biasanya diikuti dengan pemrosesan akhir untuk menemukan
32
sekumpulan piksel-piksel yang terhubung yang dipisahkan oleh celah kecil yang dapat diisi. -
Penelusuran batas Penelusuran batas dapat diaplikasikan pada citra yang bergradien atau citra lain yang hanya mengandung informasi mengenai batasan-batasan. Pada saat sebuah titik pada batasan tersebut diidentifikasi, hanya dengan menentukan sebuah nilai maksimum derajat keabuan, penelusuran berjalan dengan mengikuti batasan, mengasumsikan bahwa penelusuran itu akan berakhir membentuk suatu rangkaian tertutup menghasilkan sebuah batasan objek. M etode yang sederhana ini dapat mengalami kegagalan jika citra memiliki derau yang tinggi. Batasan akan terlihat acak dan berubah arah secara mendadak sehingga sulit untuk melakukan penelusuran. Solusi yang dapat dilakukan adalah dengan mereduksi derau pada citra terlebih dahulu.
Gambar 2.10 Teknik penelusuran batas
33
Gambar 2.10 menunjukkan simulasi yang dilakukan dengan menggunakan metode penelusuran batas. Tetapkan piksel 1 sebagai piksel awal di daerah batasan objek. Lakukan pencarian dengan menggunakan 8-konektivitas untuk mencari piksel selanjutnya (misalnya piksel 2). Lakukan langkah tersebut secara iteratif hingga membentuk suatu rangkaian tertutup.
2.4.1.5 Pembalikan (Invert) Pembalikan merupakan suatu cara yang digunakan untuk mengubah atau membalikkan piksel yang ada pada citra biner dari 1 menjadi 0 atau sebaliknya. Proses pembalikan dilakukan dengan menggunakan logika “tidak”. Fitur ini diperlukan jika objek yang ada pada citra lebih gelap daripada latar belakangnya sehingga setelah tahap binerisasi objek yang dihasilkan akan berwarna hitam. Oleh karena fitur-fitur yang ada mengenal objek dengan warna putih, maka objek yang berwarna hitam perlu dibalikkan. I
O
0
1
1
0 NOT
34
2.4.2 Pengolahan Tahap pengolahan merupakan bentuk dari pemrosesan sinyal di mana masukannya adalah berupa citra dan ditransformasikan menjadi citra lain sebagai keluarannya dengan teknik tertentu. Tujuannya adalah meningkatkan kualitas gambar berdasarkan persepsi manusia dan interpretasi komputer. Pengolahan dilakukan agar citra dapat diinterpretasi oleh sistem penglihatan manusia dengan cara melakukan manipulasi terhadap citra. Banyak fitur yang terdapat pada tahap pengolahan, tetapi fitur yang dibahas di sini terbatas pada ruang lingkup citra bioinformatik saja. Fitur-fitur yang terdapat pada tahap pengolahan, yaitu: morfologi, reduksi derau, dan deteksi sisi.
2.4.2.1 Morfologi Pengolahan
citra
secara
morfologi
adalah
alat
untuk
mengekstrak atau memodifikasi informasi pada bentuk dan struktur dari objek di dalam citra (Dougherty, 2009). Operator morfologi yang umum digunakan adalah erosi dan dilasi, sedangkan operator lainnya merupakan pengembangan dari keduanya.
2.4.2.1.1 Erosi Erosi
adalah
salah
satu
operasi
dasar
dalam
pemrosesan citra secara morfologi. Erosi adalah sebuah operasi yang meningkatkan ukuran dari latar belakang (dan mengikis objek latar depan) pada citra biner (Dougherty, 2009).
35
Dengan memisalkan A sebagai objek pada citra masukan, B sebagai elemen terstruktur, dan C sebagai objek pada citra keluaran hasil erosi, maka proses erosi dapat dinotasikan dengan:
C=(A ӨB)
2.19
Erosi dilakukan dengan bantuan elemen terstruktur. Elemen terstruktur membantu menentukan piksel tetangga yang akan ditelusuri dengan proses erosi. Elemen terstruktur yang umum digunakan adalah 4-konektivitas dan 8-konektivitas.
Gambar 2.11 Elemen terstruktur 4- dan 8-konektivitas Erosi memiliki karakteristik: -
Erosi pada umumnya memperkecil ukuran dari objek dan menghilangkan
elemen
atau
anomali kecil dengan
mengurangi objek dengan sebuah radius yang lebih kecil dari ukuran elemen terstruktur. -
Dengan citra biner, erosi menghilangkan objek yang lebih kecil dari elemen terstruktur dan mengeliminasi piksel parameter dari objek citra yang lebih besar.
36
Algoritma yang dilakukan pada dilasi adalah sebagai berikut: 1. Posisikan elemen terstruktur di bagian atas (menutupi) tiap-tiap piksel dari citra masukan hingga titik pusat dari elemen
terstruktur
bertepatan
dengan
posisi piksel
masukan. 2. Jika paling sedikit satu piksel pada elemen terstruktur bertemu dengan piksel latar belakang di bawahnya (yang ditutupinya), maka tetapkan piksel keluaran pada citra baru ke nilai latar belakang. Begitu juga jika bertemu dengan piksel latar belakang, maka tetapkan piksel keluaran pada citra baru ke nilai latar depan.
Gambar 2.12 Erosi dengan menggunakan elemen terstruktur 8-konektivitas Dengan begitu, piksel latar belakang pada citra masukan akan menjadi latar belakang pada citra keluaran dan juga piksel latar depan pada citra masukan akan menjadi latar belakang pada citra keluaran.
37
2.4.2.1.2 Dilasi Dilasi adalah salah satu operasi dasar dalam morfologi matematika. Pada citra biner, dilasi adalah sebuah operasi yang mengekspansi atau memperbesar ukuran dari objek latar depan
(Dougherty,
2009).
Biasanya objek pada citra
dilambangkan dengan piksel putih, walaupun untuk beberapa implementasi objek pada citra dilambangkan dengan piksel hitam. Konektivitas antar piksel pusat dengan tetangganya dibuat berdasarkan elemen terstruktur yang terdefinisi. Dengan memisalkan A sebagai objek pada citra masukan, B sebagai elemen terstrukstur, dan C sebagai objek pada citra keluaran hasil dilasi, maka proses dilasi dapat dinotasikan dengan:
C=(A
B)
2.20
Dilasi memiliki karakteristik: -
Dilasi pada umumnya memperbesar ukuran dari objek, mengisi lubang dan area yang rusak, dan menghubungkan area yang dipisahkan oleh jarak yang lebih kecil dari ukuran elemen terstruktur.
-
Dengan citra biner, dilasi menghubungkan area yang dipisahkan oleh jarak yang lebih kecil dari elemen terstruktur dan menambahkan piksel ke parameter dari setiap objek citra.
38
Algoritma yang dilakukan pada dilasi adalah sebagai berikut: 1. Posisikan elemen terstruktur di bagian atas (menutupi) tiap-tiap piksel dari citra masukan hingga titik pusat dari elemen
terstruktur
bertepatan
dengan
posisi piksel
masukan. 2. Jika paling sedikit satu piksel pada elemen terstruktur bertemu dengan piksel latar depan di bawahnya (yang ditutupinya), maka tetapkan piksel keluaran pada citra baru ke nilai latar depan. Begitu juga jika bertemu dengan piksel latar belakang, maka tetapkan piksel keluaran pada citra baru ke nilai latar depan. Dengan begitu, piksel latar depan pada citra masukan akan menjadi latar depan pada citra keluaran dan juga piksel latar belakang pada citra masukan akan menjadi latar depan pada citra keluaran.
Gambar 2.13 Dilasi dengan menggunakan elemen terstruktur 8-konektivitas
39
Operator erosi dan dilasi merupakan operator dasar yang ada pada pengolahan citra secara morfologi. Operator-operator morfologi lainnya, seperti opening, closing, thinning, dan skeletonizing muncul berdasarkan hasil pengembangan dari kedua metode ini.
2.4.2.1.3 Opening Opening didefinisikan sebagai proses erosi yang diikuti oleh proses dilasi dengan menggunakan elemen terstruktur yang sama untuk kedua operasi (Dougherty, 2009). Proses erosi yang merupakan bagian dari proses ini menghilangkan piksel latar depan dari tepi daerah piksel latar depan tersebut, kemudian proses dilasi mengembalikan ukuran dari piksel yang tersisa ke ukuran semula. Pada umumnya, opening digunakan untuk mengeliminasi noise yang terlihat sebagai latar depan.
Gambar 2.14 Proses opening
40
2.4.2.1.4 Closing Closing didefinisikan sebagai proses dilasi yang diikuti oleh proses erosi dengan menggunakan elemen terstruktur yang sama untuk kedua operasi (Dougherty, 2009). Proses piksel-piksel
dilasi memperbesar latar
depan,
dan
kemudian
menghubungkan proses
erosi
mengembalikan ukurannya ke ukuran semula. Proses closing berfungsi untuk menghaluskan kontur dari objek latar depan. Operator ini menghubungkan celah sempit dan mengeliminasi lubang-lubang kecil yang ada pada objek.
Gambar 2.15 Proses closing
2.4.2.1.5 Pengerangkaan Pengerangkaan (lebih dikenal sebagai skeletonizing) adalah hasil dari proses thinning yang dilakukan terhadap citra secara iteratif. Thinning adalah operasi morfologi yang mengerosi piksel objek dari batas tepi pada citra biner dengan menjaga titik akhir dari garis ruas objek (Dougherty, 2009).
41
Gambar 2.16 Proses pengerangkaan
2.4.2.2 Reduksi Derau Derau adalah fluktuasi atau perubahan nilai dari piksel suatu citra yang tidak diinginkan. Derau menyebabkan penurunan kualitas dari suatu citra (Dougherty, 2009, p247). Terdapat berbagai jenis derau, yang bisa disebabkan oleh beberapa hal, misalnya perbedaan kecepatan penerimaan paparan cahaya pada alat pencitraan digital, yang menyebabkan derau secara acak karena kedatangan foton yang tidak bersamaan, atau bahkan berasal dari hasil pengkompresian citra digital. Karena itu terdapat bermacam-macam jenis derau, antara lain: -
Derau putih Derau putih adalah derau yang sama sekali tidak berhubungan, yaitu nilai dari setiap piksel tersebut sama sekali tidak berhubungan dengan nilai piksel yang menjadi tetangganya. Hal ini menunjukkan bahwa fungsi autokorelasinya adalah 0.
42
-
Derau berwarna Derau berwarna adalah derau yang memiliki warna.
-
Derau “Salt and pepper” Derau “Salt and pepper” adalah derau yang terjadi karena kesalahan saat transmisi data. Jika ada piksel yang rusak, maka nilainya akan diubah menjadi maksimum atau 0, sehingga tampak seperti “salt and pepper”. Piksel yang tidak bermasalah tidak akan mengalami perubahan.
-
Derau kuantisasi Derau kuantisasi adalah derau yang timbul karena kesalahan pada proses pengubahan data dari analog ke digital, saat nilai sampel dianggap memiliki jumlah level yang terbatas.
2.4.2.2.1 Penyaringan Nilai Rata-Rata Penyaringan
nilai
rata-rata
merupakan
teknik
penerapan matriks yang termasuk dalam kategori penyaringan nonlinear. Teknik ini sering digunakan untuk menghilangkan derau pada gambar. Nilai piksel keluaran ditentukan oleh nilai rata-rata dari lingkungan matriks yang ditentukan. M atriks yang digunakan pada penyaringan ini: 1/9 1/9 1/9 w(k,l) = 1/9 1/9 1/9 1/9 1/9 1/9
43
Sebuah gambar bernoise ai(m,n) dapat diformulasikan dengan:
A i (m,n) = f(m,n) + di (m,n)
2.21
Di mana f(m,n) mewakili citra bebas derau, dan di(m,n) adalah derau tambahan pada gambar tersebut. Jika total dari Q gambar tersedia, maka rata-rata citra adalah: ,
1
,
2.22
Untuk melakukan penyaringan dengan nilai rata-rata, kita harus menentukan piksel yang akan diganti nilai pusatnya.
Gambar 2.17 M atriks penyaringan pada citra Dengan menggunakan citra di atas, diambil 3x3 matriks penyaringan. Setelah dilakukan penghitungan, nilai rata-rata yang diperoleh adalah 125. Nilai rata-rata ini digunakan untuk menggantikan nilai pusat matriks, sehingga nilai 150 akan diganti dengan 125. Spesifiknya, penyaringan nilai rata-rata mengganti sebuah piksel dengan rata-rata dari semua piksel pada tetangganya.
44
2.4.2.2.2 Penyaringan Nilai Tengah Penyaringan nilai tengah merupakan teknik penerapan matriks yang termasuk dalam kategori penyaringan nonlinear. Teknik ini sering digunakan untuk menghilangkan derau yang ada pada citra. Inti
dari
proses
ini
adalah
nilai
piksel
keluaran ditentukan oleh nilai pusat dari lingkungan matriks yang ditentukan. Nilai pusat
dicari dengan
melakukan
pengurutan terhadap nilai piksel dari matriks yang sudah ditentukan, kemudian dicari nilai tengahnya.
Gambar 2.18 M atriks penyaringan pada citra Dengan menggunakan citra di atas, diambil sebuat piksel pusat yang akan diubah nilainya beserta kedelapan tetangga di sekelilingnya. Penyaringan dilakukan dengan menggunakan matriks 3x3. Nilai masing-masing piksel yang bertetanggaan setelah diurutkan adalah sebagai berikut: 115, 119, 120, 123, 124, 125, 126, 127, 150
45
Hasil pengurutan tersebut mendapatkan nilai median 124. Nilai nilai tengah ini digunakan untuk menggantikan nilai pusat matriks, sehingga nilai 150 akan diganti dengan 124. Spesifiknya, nilai tengah filter mengganti sebuah piksel dengan median dari semua piksel pada tetangganya:
Y (n) = med ( xn − k , xn − k ,..., xn ,...xn + k )
2.23
Mask adalah matriks kecil yang nilainya disebut bobot. Setiap matriks memiliki nilai asli yang biasanya memiliki satu posisi. Nilai aslinya terdapat pada pusat piksel.
Gambar 2.19 M acam-macam matriks dengan bobot yang berbeda-beda Biasanya mask digunakan untuk melakukan penyaringan citra dari derau. M atriks ini diletakkan di atas piksel citra masukan sehingga citra tertutup oleh matriks. Nilai dari piksel di bawah matriks dikalkulasikan dengan bobot mask yang ada di atasnya kemudian seluruh jumlah yang ada dirata-ratakan. Nilai piksel pusat akan digantikan dengan nilai rata-rata tersebut.
46
2.4.2.2.3 Gaussian Blur Operator Gaussian blur dua dimensi digunakan dalam banyak aplikasi pengolahan citra. Sesuai dengan namanya, penyamaran Gaussian blur memiliki efek penghalusan pada citra. Citra akan diproses dengan menggunakan operator Gaussian di mana nilai koefisien dari operatornya diambil berdasarkan konsep segi tiga Pascal (koefisien binomial).
n 0
1
1
1
2
1
3
1
4
1
5 6
2n
koefisien
1 1
6
1 2
3 4
5
1 1 3
6 10
15
2 1
8
4 10
20
4 1 5
16 1
15
6
32 1
64
Gambar 2.20 Segi tiga Pascal
Biasanya, 1 3x3 2 1
opererator
Gaussian
berupa
operator
2 1 4 2 . Operator ini diimplementasikan pada citra 2 1
masukan untuk mengganti nilai pusat citra dengan mengalikan nilai piksel pusat dan tetangganya dengan bobot yang ada pada operator Gaussian tersebut kemudian dibagi dengan
47
jumlah seluruh bobot operator. Nilai yang dihasilkan akan menjadi nilai pusat baru. Waktu eksekusi yang diperlukan dapat menjadi lama jika terdapat banyak piksel pada sebuah citra. Penggunaan dari karakteristik Gaussian blur dapat membantu mengatasi permasalahan ini: -
Piksel yang banyak dapat didekomposisi menjadi deretan pemrosesan piksel dalam jumlah yang lebih sedikit
-
Gaussian blur dapat dibagi menjadi operator baris dan kolom. Sebagai contoh: 1 2 2 4 1 2 1
1 2 1
M empunyai
nilai
yang
sama
dengan
1 2 1 yang diikuti 2 . 1
(http://www.personal.engin.umd.umich.edu/~jwvm/ece581/21 _GBlur.pdf)
2.4.2.3 Deteksi sisi Deteksi sisi (deteksi tepi) merupakan salah satu prosedur yang digunakan untuk menentukan batas tepi dari objek dengan sekitarnya yang terdapat pada citra. Dengan adanya deteksi tepi, proses pengenalan objek dapat menjadi lebih mudah untuk dilakukan. M etode yang biasa digunakan untuk melakukan deteksi sisi pada citra adalah Sobel dan Canny.
48
2.4.2.3.1 S obel Operator sobel menggunakan sepasang matriks 3x3 seperti yang ditunjukkan pada gambar 2.19. Sebuah matrik G x ditentukan berdasarkan pengembangan dari metode Prewitt dan matriks Gy merupakan hasil rotasi 90° dari matriks Gx.
Gambar 2.21 M atriks konvolusi Sobel M atriks ini disusun untuk respon maksimal untuk sisi vertikal maupun horisontal yang bergantung pada grid piksel. M atriks dapat diterima secara terpisah pada citra masukan, untuk membuat perkiraan ukuran dari gradien komponen pada suatu orientasi (Gx dan Gy). Hasilnya kemudian dapat digabungkan bersama untuk menemukan besaran mutlak dari gradien pada suatu poin dan orientasi dari gradien itu. Besaran gradien diberikan oleh persamaan:
|G| =
2.24
Besarannya dapat dihitung dengan:
|G| = |Gx| + |Gy|
2.25
49
Orientasi dari tepi diberikan oleh gradien spasial (tergantung pada orientasi piksel grid) diberikan oleh persamaan:
θ = arctan (Gy/Gx)
2.26
Pada kasus ini, orientasi 0 diambil untuk rata-rata yang ditunjuk pada kontras maksimum dari hitam atau putih dari kiri ke kanan gambar, dari sisi lain berlawanan arah jarum jam Sering kali, besaran mutlak hanya gambar keluaran yang dilihat pengguna, dua komponen dari gradien dihitung dan ditambahkan pada suatu perhitungan
gambar masukan
menggunakan operator pseudo-convolution yang ditunjukkan pada Figure 2.
Gambar 2.22 Operator pseudo-convolution Dengan menggunakan matriks ini, kita dapat menghitung besarannya diberikan oleh persamaan:
|G| = |(P 1 + 2 x P2 + P 3) – (P 7 + 2 x P8 + P9 )| + |(P 3 + 2 x P 6 + P9 ) – (P 1 + 2 x P 4 + P7 )| 2.27
50
2.4.2.3.2 Canny Operator deteksi sisi Canny dikembangkan oleh John F. Canny pada tahun 1986. Deteksi sisi dengan metode Canny merupakan salah satu teknik deteksi sisi yang cukup populer penggunaannya dalam pengolahan citra. Salah satu alasannya adalah ketebalan
sisi yang bernilai satu piksel yang
dimaksudkan untuk melokalisasi posisi sisi pada citra secara sepresisi mungkin. Tujuan dari deteksi sisi Canny adalah untuk menemukan algoritma deteksi sisi yang optimal, dalam arti: -
Deteksi yang baik Algoritma yang dilakukan harus dapat menandai sisi-sisi yang nyata pada citra sebanyak mungkin.
-
Lokalisasi yang baik Sisi yang ditandai harus sedekat mungkin dengan sisi yang ada pada citra yang sebenarnya.
-
Responsi minimal Sisi yang ada pada citra hanya ditandai sebanyak satu kali (satu piksel) dan derau pada citra tidak membuat deteksi sisi yang salah.
Untuk memaksimalkan fungsinya, deteksi sisi Canny bekerja sesuai dengan tahapan-tahapan berikut:
51
1. Reduksi derau Reduksi derau digunakan untuk meminimalisasi kesalahan deteksi yang diakibatkan oleh derau pada citra. M etode yang biasa digunakan adalah penyaringan Gaussian 5x5.
B=
2 4 4 9 5 12 4 9 2 4
5 4 12 9 15 12 12 9 5 4
2 4 5 *A (2.28) 4 2
2. M enentukan gradien Setelah melakukan pereduksian terhadap derau, langkah selanjutnya adalah menentukan gradien. Operator yang umum digunakan adalah operator sobel dengan matriks konvolusi 3x3 Gx dan Gy . Operator sobel dapat dilihat pada gambar 2.19 dan besarannya dapat diperoleh dengan menggunakan persamaan 2.24 dan 2.25. 3. M enentukan arah Setelah mendapatkan gradien, langkah selanjutnya adalah menentukan dan mengelompokkan arahnya. Arah dari gradien dapat diperoleh dengan melakukan invers tangen dari besaran yang telah didapatkan dengan persamaan 2.26. Arah yang telah diperoleh ini kemudian dikelompokkan ke dalam 4 arah secara garis besar.
52
Gambar 2.23 Empat arah pengelompokan Berdasarkan gambar di atas: -
Jika arah yang didapatkan berada pada daerah kuning (0° - 22,5° dan 157,5° - 180°), maka arah sisi diubah menjadi 0°.
-
Jika arah yang didapatkan berada pada daerah hijau (22,5° - 67,5°), maka arah sisi diubah menjadi 45°.
-
Jika arah yang didapatkan berada pada daerah biru (67,5° - 112,5°), maka arah sisi diubah menjadi 90°.
-
Jika arah yang didapatkan berada pada daerah merah (112,5° - 157,5°), maka arah sisi diubah menjadi 135°.
4. Supresi nonmaksimal Setelah arah sisi telah diketahui, langkah selanjutnya yang harus dilakukan adalah mengimplementasikan supresi nonmaksimum. Supresi nonmaksimum adalah proses pengeliminasian terhadap nilai-nilai yang tidak maksimum sehingga akan dihasilkan sebuah garis yang tipis pada citra keluaran.
53
5. Ambang batas hysteresis Langkah terakhir adalah menentukan ambang batas atau klasifikasi tiap
piksel.
Pada tahap
ini bisa saja
menggunakan ambang batas yang berdasarkan pada satu nilai tertentu. Namun pemilihan ambang batas yang hanya menggunakan satu nilai ini memiliki keterbatasan yaitu adanya
kemungkinan
piksel
yang
hilang
padahal
sebetulnya meruapakan piksel sisi ataupun dimasukkannya piksel yang sebetulnya merupakan derau sebagai piksel sisi (http://en.wikipedia.org/wiki/Canny_edge_detector). Oleh karena itulah digunakan dua buah threshold T1 dan T2. Suatu piksel dianggap sebagai sisi jika nilainya lebih besar daripada T1 dan akan dianggap bukan sebagai sisi jika nilainya lebih kecil daripada T2. Jika nilai piksel berada di antara T1 dan T2: -
Piksel tersebut akan dianggap sebagai sisi jika piksel tersebut berhubungan dengan piksel lain yang dianggap sebagai sisi.
-
Piksel tersebut akan dianggap bukan sebagai sis i jika piksel tersebut tidak berhubungan dengan piksel lain yang dianggap sebagai sisi. (http://www.pages.drexel.edu/~weg22/can_tut.html)
54
2.4.3 Analisis Tahap analisis adalah proses untuk mengekstraksi sebanyak mungkin informasi diagnostik dari sebuah citra (Dougherty, 2009, p3). Tahap analisis termasuk dalam tahap pengolahan tingkat tinggi, yaitu tahap yang bertujuan untuk merekognisi, merepresentasikan, dan mengklasifikasikan pola pada citra. Tahap analisis merupakan tahap terakhir dalam pengolahan citra, di mana pada tahap ini informasi spesifik mengenai objek dan hubungannya akan diidentifikasi. Tahap ini akan melibatkan kajian tentang teknik-teknik pada kecerdasan buatan. Contoh proses yang dilakukan pada tahap analisis adalah: -
M encocokkan data yang diekstrak dari citra dengan model data yang ada.
-
M engestimasikan parameter-parameter objek pada citra, misalnya posisi objek atau ukuran objek pada citra.
-
M engklasifikasikan objek kedalam kategori-kategori yang dibuat.
Banyak fungsi atau fitur yang dapat digunakan pada tahap analisis, tetapi fitur yang dibahas di sini terbatas pada ruang lingkup citra bioinformatik saja. Fiturfitur yang digunakan adalah penomoran, perhitungan, dan pengklasifikasian.
2.4.3.1 Penomoran Penomoran (pemberian label) adalah sebuah prosedur untuk memberikan label yang unik pada setiap objek (kumpulan dari komponen-komponen yang berhubungan) pada sebuah citra. Labellabel ini adalah kunci dari tahap analisis selanjutnya dan digunakan untuk membedakan serta mereferensikan objek-objek tersebut. Proses pemberian label dilakukan dengan prosedur yang bernama Connected
55
Component Labeling (CCL). Hal ini membuat CCL menjadi bagian yang tidak terpisahkan dalam hampir semua aplikasi pengenalan pola dan visi komputer (Kesheng, 2008). Pada skripsi ini, digunakan CCL untuk memproses dan menganalisis citra biner yang disimpan dalam format array 2 dimensi. Citra-citra ini umumnya adalah berupa keluaran dari langkah-langkah proses citra sebelumya, misalnya segmentasi citra. Setiap piksel dalam citra biner umumnya disebut piksel objek atau piksel latar belakang. Terdapat 2 cara umum yang digunakan untuk mendefinisikan konektivitas dalam citra 2 dimensi, yaitu 4-konektivitas dan 8konektivitas. Piksel-piksel 4-konektivitas merupakan tetangga dari setiap piksel yang menyentuh salah satu dari sisi mereka. Piksel-piksel ini terhubung secara horizontal dan vertikal. Dalam koordinat piksel, setiap piksel yang memiliki koordinat (x ± 1, y) atau (x, y ± 1) terhubung dengan piksel yang berada dikoordinat (x, y).
Gambar 2.24 4-konektivitas
56
Gambar 2.25 Contoh pola dari 4-konektivitas Piksel-piksel 8-konektivitas merupakan tetangga dari setiap piksel yang menyentuh atau bersebelahan dengan salah satu sisi atau sudut mereka sehingga ada 8 tetangga pada sebuah piksel yang tidak berada di pinggir. Piksel-piksel ini terhubung secara horizontal, vertikal, dan diagonal. Dalam koordinat piksel, piksel-piksel dengan koordinat (x+1,y+1) terhubung dengan piksel yang berada di koordinat (x, y). Contoh pola dari 8-konektivitas:
Gambar 2.26 Contoh pola 8-konektivitas
57
M etode-metode CCL antara lain: -
Algoritma One-pass Algoritma ini melakukan pemindaian terhadap citra untuk menemukan piksel objek yang belum diberi label, kemudian memberikan label yang sama pada semua piksel objek yang berhubungan. Algoritma ini hanya melakukan pemindaian pada citra sebanyak satu kali, biasanya dengan pola penelusuran yang acak. Sebagai contohnya, setiap kali sebuah piksel objek yang belum diberi label ditemukan, maka algoritma ini akan menelusuri batasan dari komponen-komponen objek yang saling berhubungan tersebut hingga kembali ke posisi awalnya.
Gambar 2.27 Contoh algoritma One-pass -
Algoritma Two-pass Algoritma Two-pass sebenarnya adalah pengembangan dari algoritma One-pass, hanya saja pada algoritma ini dilakukan pemindaian citra sebanyak 2 kali. Algoritma Two-pass ini bekerja dalam 3 fase, yaitu:
58
1. Fase pemindaian Dalam fase ini, dilakukan satu kali pemindaian terhadap citra untuk memberikan label sementara pada semua piksel objek, dan untuk menyimpan informasi kesamaan mengenai label sementaranya. 2. Fase analisis Fase ini menganalisis kesamaan informasi label pada tiap piksel untuk menentukan label akhir piksel untuk setiap label sementara. 3. Fase penomoran Fase ketiga ini berfungsi untuk memberikan label akhir pada semua piksel objek dengan melakukan pemindaian kedua pada citra.
2.4.3.2 Penghitungan Penghitungan melakukan
merupakan
penganalisisan
fitur
terhadap
yang
digunakan
citra yang dibuat
untuk dengan
menggunakan dasar teori yang sama dengan proses pemberian label, hanya saja setiap kali sebuah objek diberi label, maka objek itu dianggap sebagai objek yang berbeda dengan objek yang berlainan labelnya, sehingga dapat diperoleh informasi berupa jumlah objek yang terdapat dalam citra tersebut sebagai hasil akhir.
59
2.4.3.3 Pengklasifikasian Pengklasifikasian merupakan fitur analisis yang dibuat dengan menggunakan dasar teori yang sama dengan penomoran, karena pada proses penomoran sebenarnya sudah menyimpan data berupa bentuk dan ukuran dari objek yang diberi label. Sehingga kita cukup memunculkan data tersebut. Proses pengklasifikasian dilakukan berdasarkan paramaeter ukuran dari objek.