BAB II LANDASAN TEORI 2.1. Citra Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dan suatu obyek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan[14]. Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial, dan amplitudo f di titik koordinat (x,y) dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila (x,y) dan nilai ampiltudo f secara keseluruhan berhingga (finite) dan bernilai diskrit maka dapat dikatakan bahwa citra tersebut adalah citra digital[12]. Dalam dunia sehari-hari dapat banyak dijumpai berbagai macam bentuk citra, baik itu citra analog ataupun citra digital. Citra analog yaitu seperti foto yang tercetak di kertas foto, gambar sebuah lukisan di kanvas atau ketas, dan lain sebagainya. Citra analog adalah citra yang bersifat kontinu, seperti gambar pada monitor televisi, foto sinar-x, foto yang tercetak di kertas foto, lukisan, pemnadangan alam, hasil CT scan, gambar-gambar yang terekam pada pita kaset, dan lain sebagainya. Citra analog tidak dapat direpresentasikan dalam komputer sehingga tidak bisa diproses di komputer secara langsung. Sedangkan Citra Digital adalah citra yang dapat diolah oleh komputer yang memiliki jenis dan ukuran file dari citra tersebut. Citra digital merupakan citra yang tersusun dalam bentuk raster (grid / kisi). Setiap kotak (tile) yang terbentuk disebut pixel (picture element) dan memiliki koordinat (x,y). Sumbu x (horizontal) : kolom (column), sample Sumbu y (vertikal) : baris (row,line).
6 Setiap pixel memiliki nilai (value atau number) yang menunjukkan intensitas keabuan pada pixel tersebut. Derajat keabuan merepresentasikann grey level atau kode warna. Kisaran n nilai ditentukan oleh bit yang dipakai dan akan menunjukkan resolusi aras abu-abu (grey level resolution). 1 bit 2 warna: [0,1] 4 bit 16 warna: [0,15] 8 bit 256 warna: [0,255] 24 bit 16.777.216 warna (true color) Kanal Merah -Red (R): [0,255] Kanal Hijau - Green (G):( [0,255]] Kanal Biru - Blue (B): [0,255] Gambar 2.1 Pixel Matriks Nilai Digital dan banyak bit : M = banyak pixel perr baris (panjang) N = banyak pixel per kolom (lebar) b = banyak / besar bitt pada suatuu citra Contoh dari citra digitall yaitu foto telepon genggam. yang tersimpan dalamm komputerr atau Berdasarkan format f penyimpanan nilai warnanya, citra terdiri atas empat jenis, yaitu[15]:
7 1. Citra biner atau monokrom Pada citra jenis ini, setiap titik atau piksel hanya bernilai 0 atau 1.Dimana setiap titik membutuhkan media penyimpana sebesar 1 bit. Gambar 2.2 merupakan contoh citra biner. Gambar 2.2 Citra Biner 2. Citra skala keabuan Citra skala keabuan mempunyai kemungkinan warna antara hitam (minimal) dan putih (maksimal). Jumlah maksimum warna sesuai dengan bit penyimpanan yang digunakan. Misal: Suatu citra dengan skala keabuan 4 bit, memiliki jumlah kemungkinan warna 2 4 = 16 warna. Gambar 2.3 memperlihatkan citra skala keabuan 4 bit. Gambar 2.3 Citra Skala Keabuan 3. Citra warna (true color) Setiap titik (piksel) pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar yaitu merah, hijau dan biru yang dikenal
8 sebagai citra RGB (Red, Green, Blue). Setiap warna dasar mempunyai intensitas sendiri dengan nilai maksimum 255 (8 bit). Red = warna minimal putih, warna maksimal merah Green = warna minimal putih, warna maksimal hijau Blue = warna minimal putih, warna maksimal biru Setiap titik pada citra warna membutuhkan data 3 byte Jumlah kemungkinan kombinasi warna untuk citra warna adalah 2 24 = lebih dari 16 juta warna, disebut true color karena dianggap mencakup semua warna yang ada. Gambar 2.4 memperlihatkan contoh citra warna. Gambar 2.4 Citra Warna (True Color) 4. Citra warna berindeks Setiap titik (piksel) pada citra warna berindeks mewakili indeks dari suatu tabel warna yang tersedia (biasanya disebut palet warna). Keuntungan pemakaian palet warna adalah kita dapat dengan cepat memanipulasi warna tanpa harus mengubah informasi pada setiap titik dalam citra. Keuntungan yang lain, penyimpanan lebih kecil. Contoh citra warna berindeks diperlihatkan pada Gambar 2.5. Gambar 2.5 Citra Warna Berindeks
9 2.2.1. Pengolahan Citra Pengolahan citra (image processing) merupakan proses untuk mengolah pixelpixel dalam citra digital untuk tujuan tertentu. Beberapa alasan dilakukan pengolahan citra digital adalah sebagai berikut : 1. Untuk mendapatkan citra asli dari citra yang sudah rusak karena pengaruh noise yang bercampur dengan cira asli dalam suatu proses tertentu. Poses pengolahan citra bertujuan untuk mendapatkan citra yang mendekati citra asli. 2. Untuk mendapatkan citra dengan karakteristik tertentu dan cocok secara visual yang dibutuhkan dalam proses lanjut dalam pemrosesan analisis citra. Operasi pengolahan citra dapat diklasifikasikan dalam beberapa jenis sebagai berikut: 1. Image Enhancement (Perbaikan kualitas citra) 2. Image Restoration (Pemugaran Citra) 3. Image Compression (Pemampatan Citra) 4. Image Segmentation 5. Image Analysis 6. Image Recontruction (Rekontruksi Citra) Operasi-operasi tersebut bertujuan untuk membentuk objek dari beberapa citra hasil proyeksi. Pada citra digital, dengan tipe bitmap tipe warna pada titiktitik piksel dibentuk dari sebuah data numerik. Tinggi dan rendahnya keabuan piksel dinyatakan dalam bentuk intensitas atau derajat keabuan. Satuan lebar intensitas merupakan lebar memori (bit) citra yang disebut dengan format piksel. 2.2.2. BMP Citra bitmap sering disebut juga dengan citra raster. Citra bitmap menyimpan data kode citra secara digital dan lengkap (cara penyimpanannya adalah per piksel). Citra bitmap direpresentasikan dalam bentuk matriks dan dipetakan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini memiliki
10 kelebihan untuk memanipulasi warna, tetapi untuk mengubah objek lebih sulit. Tampilan bitmap mampu menunjukkan kehalusan gradasi bayangan dan warna dari sebuah gambar. Oleh karena itu, bitmap merupakan media elektronik yang paling tepat untuk gambar-gambar dengan perpaduan gradasi warna yang rumit, seperti foto dan lukisan digital. Citra bitmap biasanya diperoleh dengan cara scanner, kamera digital, video capture, dan lain-lain[14]. Contoh gambar dengan format.bmp sebagai berikut: Gambar 2.6 mangga.bmp 2.2. Noise Noise merupakan gangguan yang disebabkan oleh menyimpangnya data digital yang diterima oleh alat penerima data gambar yang mana dapat menggangu kualitas citra. Derau (noise) dapat disebabkan oleh gangguan fisis (optik) pada alat penangkap citra misalnya kotoran debu yang menempel pada lensa foto maupun akibat proses pengolahan yang tidak sesuai. Berikut merupakan beberapa jenis noise[13]. 2.2.1. Gaussian Noise Gaussian Noise atau juga dapat disebut Gaussian White Noise. Noise ini memiliki intensitas yang sesuai dengan distribusi normal yang memiliki rerata (mean) dan varian tertentu[16]. Gaussian noise merupakan model noise yang mengikuti distribusi normal standart dengan rata-rata = 0 dan standar deviasi = 1. Efek dari gaussian noise ini pada gambar adalah munculnya titik-titik berwarna yang jumlahnya sama dengan persentase noise[13].
11 Untuk menambahkan noise ini pada MatLab memerlukan input tambahan berupa rata-rata dan variansi. Rata-rata dan variansi merupakan suatu konstanta real. Nilainya bisa positif maupun negatif. Makin besar rata-rata dan variansinya maka citra akan semakin kabur, sebaliknya makin kecil konstantanya efek pada citra makin tidak terlihat. Nilai default adalah 0 untuk rata-rata dan 0.01 untuk variansi. Disebut white noise karena pada saat nilai rata-rata dan variansinya besar maka citra seolah-olah hanya terlihat seperti citra putih saja[7]. Berikut merupakan rumusan dari gaussian noise: f(i,j) = g(i,j) +p.a (1) Keterangan : f (i,j) = nilai citra terkena noise g (i,j) = nilai citra sebelum terkena noise a = nilai bilangan acak berdistribusi gaussian p = persentase noise Berikut merupakan contoh citra tanpa dan dengan gaussian noise: Gambar 2.7 Citra tanpa noise Gambar 2.8 Citra dengan gaussian noise 2.2.2. Speckle Noise Speckle Noise merupakan model noise yang memberikan tanda berwarna hitam pada bagian yang berupa titik yang terkena noise. Noise ini muncul pada saat pengambilan citra tidak sempurna karena alasan cuaca, perangkat pengambil citra
12 dan sebagainya. Sifat noise ini mutlipikatif, artinya semakin besar intensitas citra atau semakin cerah citra, semakin jelas juga noise[16]. Pada beberapa pengolahan citra, terkadang untuk menguji suatu algoritma untuk dapat mereduksi noise, maka noise dapat dihasilkan dari proses pembangkitan noise yang sering disebut sebagai noise generator. Untuk membangkitkan noise pada umumnya dibangkitkan dengan cara mengambil suatu bilangan acak yang kemudian ditempatkan pada citra secara acak pula[13]. Berikut merupakan rumusan dari noise speckle: v(x,y) = u(x,y)s(x,y) (2) Keterangan : v (x,y) = nilai citra terkena noise u (x,y) = nilai citra sebelum terkena noise s (x,y) = intensitas dari speckle noise [2] Berikut merupakan contoh citra tanpa dan dengan speckle noise: Gambar 2.9 Citra tanpa noise Gambar 2.10 Citra dengan speckle noise 2.3. Deteksi Tepi Tepian dari suatu citra mengandung informasi penting dari citra bersangkutan. Tepian citra dapat merepresentasikan objek-objek yang terkandung dalam citra tersebut, bentuk, dan ukurannya serta terkadang juga informasi tentang teksturnya.
13 Tepian citra adalah posisi dimana intensitas piksel dari citra berubah dari nilai rendah ke nilai tinggi atau sebaliknya. Deteksi tepi umumnya adalah langkah awal melakukan segmentasi citra[12]. Deteksi tepi adalah proses untuk menemukan perubahan intensitas yang berbeda nyata dalam sebuah bidang citra. Sebuah operator deteksi tepi merupakan operasi bertetangga, yaitu sebuah operasi yang memodifikasi nilai keabuan sebuah titik berdasarkan nilai-nilai keabuaan dari titik-titik yang ada di sekitarnya (tetangganya) yang masing-masing mempunyai bobot tersendiri. Bobot-bobot tersebut nilainya tergantung pada operasi yang akan dilakukan, sedangkan banyaknya titik tetangga yang terlibat biasanya adalah 2x2, 3x3, 3x4, 7x7, dan sebagainya[14]. Secara umum tepi dapat didefinisikan sebagai batas antara dua region (dua piksel yang saling berdekatan) yang memiliki perbedaan intensitas yang tajam atau tinggi. Tepi dapat diorientasikan dengan suatu arah, dan arah ini berbedabeda, tergantung pada perubahan intensitas. Untuk lebih memahami defenisi tepi, Gambar 2.11 memperlihatkan model tepi dalam ruang satu dimensi[15]. jarak α = arah tepi α perubahan intensitas Gambar 2.11 Model Tepi Satu Dimensi Ada tiga macam tepi yang terdapat di dalam citra digital, yaitu[15]: 1. Tepi curam Jenis tepi ini terbentuk karena perubahan intensitas yang tajam, berkisar 90 0.
14 2. Tepi landai Tepi lebar, sudut arah kecil. Terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan. 3. Tepi yang mengandung noise Untuk mendeteksi tepi jenis ini, biasanya dilakukan operator image enhancement terlebih dahulu. Misalnya Operator Gaussian yang berfungsi untuk menghaluskan citra. Perbedaan ketiga macam tepi tersebut, diperlihatkan pada Gambar 2.12. Gambar 2.12 Jenis-jenis Tepi Deteksi tepi merupakan langkah pertama untuk melingkupi informasi di dalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek di dalam citra. Deteksi tepi pada suatu citra memiliki tujuan sebagai berikut[15]: 1. Menandai bagian yang menjadi detil citra. 2. Memperbaiki detil citra yang kabur karena error atau efek proses akuisisi.
15 Gambar 2.13 memperlihatkan bagaimana tepi dari suatu citra dapat diperoleh dengan operasi pendeteksian tepi. Gambar 2.13 Proses Deteksi Tepi Citra 2.3.1 Operator The Marr-Hildreth Metode The Marr-Hildreth atau yang biasa disebut Canny edge detector ditemukan oleh Marr dan Hildreth yang meneliti pemodelan persepsi visual manusia. Dalam memodelkan pendeteksi tepi, dia menggunakan ideal step edge, yang direpresentasikan dengan fungsi sign satu dimensi. Pendekatan algoritma canny dilakukan dengan konvolusi fungsi image dengan operator gaussian dan turunan-turunannya[3]. Metode The Marr-Hildreth ini memiliki banyak kesamaan dengan metode canny, tetapi ada sedikit perbedaan antara kedua metode ini yaitu jika metode The Marr-Hildreth menggunakan turunan pertama untuk melakukan deteksi tepi, sedangkan metode canny menggunakan turunan kedua untuk melakukan proses deteksi tepi. Gambar 2.14 adalah contoh penerapan metode deteksi tepi dengan operator Marr-Hildreth.
16 Gambar 2.14 Proses Deteksi Tepi Metode The Marr-Hildreth 2.3.2 Operator Laplacian Of Gaussian Operator laplacian sangat sensitif terhadap noise yang terletak pada titik-titikk tepi. Jadi, sebelum deteksi tepi dilakukan, filter yang dapat melemahkan noise diperlukan. Operator laplacian of Gaussian merupakan kombinasi dari operator gaussian dan operator laplacian.. Cara kerja operator ini adalah sebagai berikut : pertama, citra dikonvolusi dengan operator gaussian bertujuan untuk mengaburkan dam melemahkan noise. Namun, pengaburan ini mengakibatkan pelebaran tepi objek. Kemudian, operator laplacian diterapkan untuk menemukan titik potong dengan sumbuu x dalam fungsi f turunan kedua yang bersesuaiann dengan puncak dalam fungsi turunan pertama. Kemudian, lokasi tepi diperolehh dari resolusi subpiksel menggunakan interpolasi linier[14]. Metode ini mendeteksi tepi lebih akurat khususnya pada tepi yang curam. Pada tepi yang curam, turunann keduanya memiliki zero-crossing (persilangan nol), yaitu titik dimana terdapatt pergantiann tanda nilai turunan kedua, sedangkan pada tepi yang landaii tidak terdapat persilangan nol (Gonzalez et al, 2005). Berikut ini fungsi LoG 2-D yang berpusat padaa titik 0 dann dengan deviasi standard Gaussian : : (3)
17 Representasi turunan kedua dalam bentuk kernel operator Laplacian diperlihatkan pada Gambar 2.15. 0 1 0 1 4 1 0 1 0 Gambar 2.15 Kernel Konvolusi Laplacian Gambar 2.16 menunjukkan contoh penerapan metode deteksi tepi dengan operator Laplacian of Gaussian (LOG). Gambar 2.16 Proses deteksi tepi metode LOG [8] 2.3.3 Operator Prewitt Operator Prewitt digunakan dalam pengolahan gambar, terutama dalam deteksi tepi algoritma. Secara teknis, itu adalah operator diferensial diskrit, menghitung perkiraan dari gradien dari fungsi intensitas citra. Operator ini lebih sensitif terhadap tepian horisontal dan vertikal dari pada tepian diagonal. Metode Prewitt merupakan pengembangan metode Robert dengan menggunakan filter HPF (High Pass Filter) yang diberi satu angka nol penyangga. Metode ini mengambil prinsip dari fungsi laplacian yang dikenal sebagai fungsi untuk membangkitkan HPF (High Pass Filter).
18 Berikut adalah kernel filter yang digunakan dalam metode Prewitt dalam matriks 3 x 3.[12] 1 1 1 0 0 0 1 1 1 1 0 1 atau 1 0 1 1 0 1 Gambar 2.17 adalah contoh penerapan metode deteksi tepi dengan operator Prewitt. Gambar 2.17 Proses Deteksi Tepi Metode Prewitt 2.4. Konvolusi Deteksi tepi merupakan salah satu proses pengolahan citra yang menggunakan filter atau penapis. Selain pada proses pendeteksian tepi, proses lain pada pengolahan citra yang juga menggunakan filter atau penapis adalah perbaikan kualitas citra (image enhancement), penghilangan derau (noise reduction), mengurangi erotan, penghalusan atau pelembutan citra (image smoothing), dan lain-lain. Untuk mengaplikasikan penapis pada citra, digunakan metode konvolusi. Konvolusi bisa dinyatakan dalam matriks, dimana setiap elemen matriks penapis tersebut dinamakan koefisien konvolusi. Operasi konvolusi bekerja dengan menggeser kernel piksel per piksel, yang hasilnya kemudian disimpan dalam matriks baru. Konvolusi 2 fungsi f(x) dan g (x) diperlihatkan dengan rumus berikut ini:
19 Atau fungsi diskritnya: Dimana α = peubah bantu. (4) (5) Pada konvolusi 2D, fungsi malarnya dapat dihitung dengan persamaan: (6) Sedangkan fungsi diskritnya dihitung dengan persamaan: (7) g(x) merupakan convolution mask / filter / kernel atau template. Gambar 2.18 memperlihatkan ilustrasi terjadinya konvolusi. Gambar 2.18 Proses Konvolusi Dimana: (8) Untuk lebih jelasnya, berikut contoh konvolusi yang terjadi antara citra f(x,y) berukuran 5x5 dengan sebuah kernel berukuran 3x3 yang diperlihatkan pada Gambar 2.19.
20 Gambar 2.19 Matriks Citra dan Kernel Sebelum Konvolusi Tanda menunjukkan posisi (0,0) dari kernel Tahapan untuk mendapatkan hasil konvolusi yang terjadi antara citra dan kernel diatas dapat dilihat pada Gambar 2.20. (i) (ii)... dan seterusnya (iii) Gambar 2.20 Tahapan Proses Pembentukan Konvolusi
21 Sehingga diperoleh hasil akhir dari proses konvolusi tersebut, yang ditunjukkan pada Gambar 2.21. Gambar 2.21 Hasil Konvolusi Citra dan Kernel Dalam konvolusi terdapat dua kemungkinan yang jika ditemukan, diselesaikan dengan cara berikut, yaitu: 1. Untuk hasil konvolusi dengan nilai negatif, nilainya dijadikan nol (0). 2. Jika hasil konvolusi lebih besar (>) derajat keabuan maksimum, maka nilai diubah menjadi derajat keabuan maksimum. 2.5. MSE dan PSNR 2.5.1 Mean Square Error Mean Square Error (MSE) adalah kesalahan kuadrat rata-rata. Nilai MSE didapat dengan membandingkan nilai selisih pixel-pixel citra asal dengan citra hasil pada posisi pixel yang sama. Semakin besar nilai MSE, maka tampilan pada citra hasil akan semakin buruk. Sebaliknya, semakin kecil nilai MSE, maka tampilan pada citra hasil akan semakin baik. Satuan nilai dari MSE adalah db (decibell) Perhitungan MSE dilakukan dengan menggunakan rumus[9]: MSE MN 1 M 1 N 1 (( x[ i, j] y[ i, j]) 2 i 0 j 0 ) (9) Keterangan : M dan N adalah ukuran panjang dan lebar citra x[i,j] = adalah citra asal dengan dimensi M x N
22 y[i,j] = adalah citra hasil yang telah mengalami proses. Untuk menghitung nilai MSE dari citra yang memiliki noise: x[i,j] adalah citra asli, dan y[i,j] adalah citra yang telah mengalami proses pembangkitan noise. 2.5.2 Peak Signal to Noise Ratio Peak Signal to Noise Ratio (PSNR) adalah sebuah perhitungan yang menentukan nilai dari sebuah citra yang dihasilkan. PSNR adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya noise yang berpengaruh pada sinyal tersebut. PSNR biasanya diukur dalam satuan desibel. Nilai PSNR ditentukan oleh besar atau kecilnya nilai MSE yang terjadi pada citra. Semakin besar nilai PSNR, semakin baik pula hasil yang diperoleh pada tampilan citra hasil. Sebaliknya, semakin kecil nilai PSNR, maka akan semakin buruk pula hasil yang diperoleh pada tampilan citra hasil. Satuan nilai dari PSNR sama seperti MSE, yaitu db (decibell). Jadi hubungan antara nilai PSNR dengan nilai MSE adalah semakin besar nilai PSNR, maka akan semakin kecil nilai MSE-nya. Perhitungan PSNR dilakukan dengan menggunakan rumus[9]: 2 255 PSNR 10log (10) MSE Keterangan : M dan N adalah ukuran panjang dan lebar citra x[i,j] = adalah citra asal dengan dimensi M x N y[i,j] = adalah citra hasil yang telah mengalami proses.