7
BAB 2 LANDASAN TEORI
2.1
Citra Digital
Citra digital merupakan sebuah fungsi intensitas cahaya
, dimana harga x
dan y merupakan koordinat spasial dan harga fungsi f tersebut pada setiap titik merupakan tingkat kecemerlangan atau intensitas cahaya citra pada titik tersebut. Citra digital adalah suatu matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya yang disebut sebagai elemen gambar atau piksel menyatakan tingkat keabuan pada titik tersebut. Indeks baris dan kolom
dari sebuah piksel dinyatakan dalam
bilangan bulat (integer). Sebuah piksel merupakan sampel dari pemandangan yang mengandung intensitas citra yang dinyatakan dalam bilangan bulat. Untuk menunjukkan lokasi suatu piksel, koordinat dalam bidang citra, dan koordinat bawah dalam citra berukuran
digunakan untuk posisi kiri atas digunakan untuk posisi kanan
piksel dimana m adalah kolom dan n adalah
baris. Pengolahan citra digital adalah teknologi yang menerapkan sejumlah algoritma komputer untuk memproses gambar digital. Pengolahan citra digital secara langsung berkaitan dengan gambar, yang terdiri dari titik-titik gambar. Titik-titik gambar ini disebut dengan piksel, yang merupakan koordinat spasial yang menunjukkan posisi titik dalam gambar dan nilai intensitas (level keabuan) (Zhou & Zhang, 2010). Untuk menunjukkan tingkat pencahayaan suatu piksel, seringkali digunakan bilangan bulat yang besarnya delapan bit dengan lebar selang nilai
8
dimana 0 untuk warna hitam, 255 untuk warna putih dan tingkat abu-abu berada di antara nilai 0 dan 255 (Usman, 2005). 2.2
Jenis - Jenis Citra Digital
Nilai suatu piksel memiliki nilai dalam rentang tertentu, dari nilai minimum sampai nilai maksimum. Jangkauan yang digunakan berbeda-beda tergantung dari jenis warnanya, namun secara umum jangkauan adalah 0-255. Citra dengan penggambaran seperti ini digolongkan ke dalam citra integer. Berikut adalah jenis-jenis citra berdasarkan pikselnya (Song, 2006). 2.2.1
Citra Biner (Monokrom)
Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel yaitu hitam dan putih. Citra biner juga disebut sebagai citra Black and White (B&W) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap piksel dari citra biner. Citra biner sering kali muncul sebagai hasil dari proses pengolahan seperti segmentasi, pengambangan, morfologi, ataupun dithering (Putra, 2010). Contoh gambar citra biner dapat ditunjukkan pada Gambar 2.1 berikut ini.
Gambar 2.1 Contoh Citra Biner
9
2.2.2
Citra Grayscale (Skala Keabuan)
Citra grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pikselnya, dengan kata lain warna yang terbentuk dari tiga gabungan warna utama dengan jumlah yang sama. Nilai tersebut digunakan untuk menunjukkan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkatan keabuan di sini merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih (Putra, 2010). Contoh gambar citra grayscale dapat ditunjukkan pada Gambar 2.2 berikut ini.
Gambar 2.2 Contoh Citra Grayscale 2.2.3
Citra Warna (True Color)
Setiap piksel pada citra warna yang merupakan kombinasi dari tiga warna dasar (RGB = Red, Green, Blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna mempunyai gradasi sebanyak 255 warna. Format ini dinamakan true color karena mempunyai jumlah warna yang cukup besar sehingga bisa dikatakan hampir mencakup semua warna di alam (Sutoyo & Mulyanto, 2009). Contoh gambar citra warna dapat ditunjukkan pada Gambar 2.3 berikut ini.
10
Gambar 2.3 Contoh Citra Warna 2.3
Format File Citra Digital
Format file citra standar yang digunakan saat ini terdiri dari beberapa jenis. Format ini sering digunakan dalam menyimpan citra pada sebuah file. Setiap format file citra memiliki karakteristik masing-masing (Putra, 2010). 2.3.1
Format File Bitmap (*.bmp)
Bitmap sering disebut juga dengan citra raster. Bitmap menyimpan data kode citra secara digital dan lengkap (cara penyimpanannya adalah per piksel). Bitmap dipresentasikan dalam bentuk matriks atau dipetakan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini memiliki kelebihan untuk memanipulasi warna, tetapi untuk mengubah objek sulit. Tampilan bitmap mampu menunjukan 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. Bitmap biasanya diperoleh dengan cara Scanner, Camera Digital, Video Capture, dan lain-lain (Sutoyo & Mulyanto, 2009). Berikut merupakan contoh citra yang berformat bitmap yang dapat dilihat pada Gambar 2.4 di bawah ini.
11
Gambar 2.4 Citra Bitmap (.bmp) 2.4
Pengolahan Citra Digital
Pengolahan citra mendapat perhatian yang signifikan di beberapa tahun terakhir karena dapat membantu beberapa aplikasi di berbagai bidang termasuk dalam bidang astronomi, obat-obatan, robot atau satelit(Marques, Oge. 2011). Image processing atau sering disebut pengolahan citra digital merupakan suatu proses filter gambar asli menjadi gambar lain sesuai dengan keinginan kita. Misalnya, kita mendapatkan suatu gambar yang terlalu gelap. Dengan image processing, kita dapat memprosesnya agar mendapatkan gambar yang jelas (Sigit, 2005). Secara garis besar, dapat dilihat pada Gambar 2.5 blok diagram pengolahan citra. Gambar Asli
Proses Pengolahan Citra
Gambar Hasil
Gambar 2.5 Blok Diagram Pengolahan Citra Umumnya, operasi-operasi pada pengolahan citra diterapkan pada citra bila (Jain, 1995) : 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.
12
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 titik-titik 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.5
Derau (Noise)
Noise pada citra tidak hanya terjadi karena ketidaksempurnaan dalam proses capturing, tetapi bisa juga disebabkan oleh kotoran-kotoran yang terjadi pada citra. Noise muncul biasanya sebagai akibat dari pembelokan piksel yang tidak baik. Gangguan tersebut umumnya berupa variasi intensitas suatu piksel yang tidak berkorelasi dengan piksel-piksel tetangganya. Secara visual, gangguan mudah dilihat oleh mata karena tampak berbeda dengan piksel tetangganya. Piksel yang mengalami gangguan umumnya memiliki frekuensi tinggi. Komponen citra yang berfrekuensi rendah umumnya mempunyai nilai piksel konstan atau berubah sangat lambat (Marques, 2011).
Beberapa jenis noise, yaitu Gaussian Noise dan Salt-Pepper Noise: 1. Gaussian Noise merupakan model noise yang mengikuti distribusi normal standar dengan rata-rata 0 (nol) dan standar deviasi 1 (satu). Efek dari noise ini pada adalah munculnya titik-titik berwarna yang
13
jumlahnya sama dengan presentase noise. Contoh Gaussian Noise dapat dilihat pada Gambar 2.6 dibawah ini.
Gambar 2.6 Contoh Citra dengan Gaussian Noise 2. Salt-Pepper Noise adalah bentuk noise yang biasanya terlihat titik-titik hitam dan putih pada citra seperti tebaran garam dan merica. Noise ini disebabkan karena terjadinya error bit dalam pengiriman data, pikselpiksel yang tidak berfungsi dan kerusakan pada lokasi memori. Contoh Salt-Pepper Noise dapat dilihat pada Gambar 2.7 dibawah ini.
Gambar 2.7 Contoh Citra dengan Salt-Pepper Noise 2.6
Perbaikan Citra (Image Restoration)
Yang dimaksud dengan perbaikan kualitas citra adalah proses mendapatkan citra yang lebih mudah diinterpretasikan oleh mata manusia. Pada proses ini, ciri-ciri tertentu yang terdapat di dalam citra lebih diperjelas kemunculannya (Dulimarta,
14
1997). Perbaikan kualitas citra merupakan salah satu operasi pada pengolahan citra digital yang bertujuan untuk memperbaiki kualitas citra dengan berbagai cara agar didapatkan hasil sesuai dengan kebutuhan. Biasanya perbaikan kualitas citra ini bertujuan untuk memproses suatu citra sehingga dihasilkan citra yang lebih baik dari citra aslinya untuk aplikasi tertentu. Adapun cara-cara yang dapat dilakukan untuk memperbaiki kualitas citra digital yaitu dengan fungsi transformasi, operasi matematis, pemfilteran dan lain-lain. 2.7
Mean Filter
Mean filter adalah intensitas pada beberapa piksel lokal di mana setiap piksel akan digantikan nilainya dengan rata-rata dari nilai intensitas piksel tersebut dengan piksel-piksel tetangganya dan jumlah piksel tetangga yang dilibatkan tergantung pada filter yang dirancang. Filter ini digunakan untuk menghaluskan gambar yang terlalu kasar. Jika filter ini dilakukan pada gambar yang halus, maka hasil gambar tersebut akan semakin kabur. Contoh yang termasuk metode ini adalah Geometric Mean Filter. Geometric Mean Filter adalah proses menghitung rata-rata dari citra yang rusak
pada sebuah blok area citra yang didefinisikan oleh
citra
yang diperbaiki pada tiap titik
. Nilai dari
hanya dihitung dengan
menggunakan piksel dalam daerah yang didefinisikan oleh
. Secara sistematis,
hal ini dapat dinyatakan dengan persamaan 2.1.
.............................(2.1)
Dengan,
= jumlah baris dari sebuah matriks = jumlah kolom dari sebuah matriks = koordinat citra Sxy
= blok area citra yang berada pada titik tengah matriks
Di sini setiap piksel yang diperbaiki oleh hasil kali masing-masing piksel dalam subimage window, kemudian dipangkatkan dengan
. Pada contoh
15
dibawah ini matriks yang akan digunakan berukuran untuk memperlihatkan matriks
dari matriks original yang kemudian
dioperasikan dengan rumus Geometric Mean Filter.
5
5
4
7
2
6
1
4
1
5
5
4
7
3
6
1
4
1
Maka hasil filternya :
= =
Maka matriks
2.8
hasil filter adalah
Pendeteksian Tepi
. Matriks ini gunanya
16
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. Tepian citra adalah posisi di mana intensitas piksel dari citra berubah dari nilai rendah ke nilai tinggi atau sebaliknya. Deteksi tepi umumnya adalah langkah awal melakukan segmentasi citra (Putra, 2010). 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 dan sebagainya (Sutoyo & Mulyanto, 2009). Secara umum tepi dapat didefinisikan sebagai batas antara dua region (dua piksel yang saling berdekatan) yang memiliki perbedaan intensitas yang tajam atau tinggi (Febriani, 2008). Tepi dapat diorientasikan dengan suatu arah dan arah ini berbeda-beda, tergantung pada perubahan intensitas. Untuk lebih memahami defenisi tepi, Gambar 2.8 memperlihatkan model tepi dalam ruang satu dimensi (Taurisna, 2009).
Gambar 2.8 Model Tepi Satu Dimensi
Ada tiga macam tepi yang terdapat didalam citra digital. Ketiganya adalah (Taurisna, 2009) :
17
1.
Tepi curam Tepi dengan perubahan intensitas yang tajam. Arah tepi berkisar 90°.
2.
Tepi landai Disebut juga tepi lebar, yaitu tepi dengan sudut arah yang kecil. Tepi landai dapat dianggap terdiri dari sejumlah tepi-tepi lokal yang lokasinya berdekatan.
3.
Tepi yang mengandung derau (noise) Umumnya tepi yang terdapat pada aplikasi computer vision mengandung derau. Operasi peningkatan kualitas citra (image enhancement) dapat dilakukan terlebih dahulu sebelum pendeteksian tepi. Untuk lebih memahami dari jenis-jenis tepi, Gambar 2.9 memperlihatkan
jenis-jenis tepi.
Gambar 2.9 Jenis Jenis Tepi Deteksi tepi merupakan langkah pertama untuk melingkupi informasi didalam citra. Tepi mencirikan batas-batas objek dan karena itu tepi berguna untuk proses segmentasi dan identifikasi objek didalam citra. Deteksi tepi pada suatu citra memiliki tujuan sebagai berikut (Taurisna, 2009): 1.
Menandai bagian yang menjadi detil citra.
2.
Memperbaiki detil citra yang kabur karena error atau efek proses akuisisi.
18
Untuk lebih jelas, kita dapat melihat Gambar 2.10 yang menunjukan proses dari deteksi tepi.
Gambar 2.10 Proses Deteksi Tepi 2.8.1
Operator Sobel
Operator Sobel adalah satu cara untuk menghindari gradient yang dihitung pada titik interpolasi dan piksel-piksel yang terlibat dengan cara menghaluskan citra digital. Proses penghalusan yang digunakan merupakan proses konvolusi dari jendela yang ditetapkan terhadap citra yang dideteksi dengan menggunakan jendela
untuk perhitungan gradient, sehingga perkiraan gradient berada
tepat di tengah jendela.
Besar gradient yang dihitung menggunakan operator Sobel pada persamaan 2.2 : ..................................(2.2) Dengan ,
G
= besar gradient operator Sobel
19
Gx
= gradient Sobel arah vertical
Gy
= gradient Sobel arah horizontal
Di mana G adalah besar gradient di titik tengah kernel dan turunan parsial dihitung menggunakan persamaan 2.3 dan 2.4 : ...................(2.3) ...................(2.4) Di mana c adalah konstanta yang bernilai 2. Gx dan Gy diimplementasikan menjadi kernel berikut :
Contoh penerapan metode deteksi tepi dengan tepi Sobel
dapat dilihat pada
Gambar 2.11.
Gambar 2.11 Contoh Deteksi Tepi Sobel Berikut ini merupakan contoh penggunaan metode deteksi tepi Sobel. Dimisalkan sebuah matriks citra sebagai berikut:
20
3
4
2
2
1
6
3
5
7
(3)(1) (2)(2) (3)(1) (2)(1) (6)(2) (7)(1) 11
(3)(1) (4)(2) (2)(1) (3)(1) (5)(2) (7)(1) 7
112 (7) 2 Gx G y 11 7 18 Maka matriks citra hasil pendeteksian tepi adalah
*
*
*
*
18
*
*
*
*
21
2.8.2
Operator Prewitt
Algoritma Prewitt adalah satu dari jenis operator gradient ortogonal (sebidang) yang menggunakan dua matriks dengan ukuran
(kernel), yang mana
menghitung gradient dalam arah x dan gradient dalam arah y. Matriks tersebut beroperasi di atas citra dengan memanipulasi persegi piksel. Prewitt menghitung gradient intensitas citra pada setiap titik dan kemudian memberikan perintah untuk meningkatkan intensitas citra pada setiap titik dari terang ke gelap. Daerah tepi merupakan kontras intensitas kuat yang gelap atau terang. Kernel filter yang digunakan dalam metode Prewitt dalam matriks
adalah:
dan
Kernel ini dirancang untuk merespon secara maksmal untuk tepi yang berjalan secara vertical dan horizontal relatif terhadap grid piksel, satu kernel untuk masing-masing dua orientasi tegak lurus. Kernel dapat diterapkan secara terpisah dari komponen gradient pada setiap orientasi (Sx dan Sy) yang kemudian dapat dikombinasikan bersama untuk menemukan besar absolut dari gradient pada setiap titik dan orientasi dari gradientnya. Besar gradient diberikan dalam persamaan 2.5 (Harahap, 2014) : .......................(2.5)
Dengan ,
G
= besar gradient operator Prewitt
Gx
= gradient Prewitt arah vertical
Gy
= gradient Prewitt arah horizontal
. Secara sisematis, pendekatan gradient dihitung menggunakan rumus pada persamaan 2.6 : ...........................(2.6)
22
Dua Komponen dari gradient sangat mudah dihitung dan ditambahkan diatas citra masukan menggunakan operator konvolusi (kernel) berikut :
Kernel digunakan untuk menghitung gradient, yaitu pada persamaan 2.7 :
...................(2.7) Contoh penerapan metode deteksi tepi dengan operator Prewitt dapat dilihat pada Gambar 2.12.
Gambar 2.12 Contoh Deteksi Tepi Prewitt Berikut ini merupakan contoh penggunaan metode deteksi tepi Prewitt. Dimisalkan sebuah matriks citra sebagai berikut:
3
4
2
2
1
6
3
5
7
23
(3)(1) (2)(1) (3)(1) (2)(1) (6)(1) (7)(1) 7
(3)(1) (4)(1) (2)(1) (3)(1) (5)(1) (7)(1) 6
7 2 (6) 2 Gx G y 7 6 13 Maka matriks citra hasil pendeteksian tepi adalah
2.8.3
*
*
*
*
13
*
*
*
*
Operator Robert
Operator Robert merupakan suatu teknik deteksi tepi sederhana dan memiliki tingkat komputasi yang cepat dan umumnya digunakan untuk citra grayscale (Putra, 2010). Pada umumnya operator ini berbasis gradient yang menggunakan kernel ukuran
piksel serta digunakan untuk citra grayscale. Kernel filter
yang digunakan dalam metode Prewitt dalam matriks
.
Perhitungan gradient dalam operator Robert dalam persamaan 2.8: ............(2.8)
24
Dengan,
G
= gradient
f(x,y) = fungsi terhadap titik x dan titik y
Operator Robert dalam bentuk mask konvolusi adalah sebagai berikut: dan Kedua matriks diatas dapat diterapkan pada citra secara terpisah, baik untuk mendapatkan tepian horizontal maupun tepian vertical. Berdasarkan konvolusi dengan kedua mask tersebut, kemudian menghitung kekuatan tepi yang merupakan magnitude dari gradient dengan rumus yang dinyatakan dalam persamaan 2.9 : ............................(2.9) Dengan,
G
= gradient magnitude
Gx
= gradient terhadap titik x
Gy
= gradient terhadap titik y
Karena menghitung akar adalah persoalan yang rumit, akan dalam praktek kekuatan tepi biasanya disederhanakan perhitungannya dengan menggunakan rumus pada persamaan 2.10 : ...........................(2.10) Sehingga perhitungan Gradient Magnitude (besar kemiringan garis) pada persamaan 2.11: .....................(2.11)
Contoh penerapan metode deteksi tepi dengan operator Robert dapat dilihat pada Gambar 2.13.
25
Gambar 2.13 Contoh Deteksi Tepi Robert Berikut ini merupakan contoh penggunaan metode deteksi tepi Robert. Dilakukan proses deteksi dengan menggunakan kernel nilai f’(x,y), dimisalkan sebuah matriks citra sebagai berikut:
3
4
2
2
1
6
3
5
7
. Untuk menghitung
26
Maka matriks citra hasil pendeteksian tepi adalah
2.9
4
3
*
5
7
*
*
*
*
Mean Square Error (MSE), Peak Signal to Noise Ratio (PSNR) dan
Running Time 2.9.1
Mean Square Error (MSE)
MSE merupakan ukuran yang baik untuk mengukur kesamaan dua buah citra yang dinyatakan pada persamaan 2.12.
...............(2.12) Dengan,
m,n
= ukuran panjang dan lebar citra
fₐ(i,j) = intensitas citra di titik (i,j) sebelum terkena noise fb(i,j) = intensitas citra di titik (i,j) setelah noise dihilangkan Semakin kecil nilai MSE, semakin bagus perbaikan citra yang digunakan. 2.9.2
Peak Signal to Noise Ratio (PSNR)
PSNR merupakan nilai perbandingan antara harga maksimum warna pada citra hasil filtering dengan kuantitas gangguan (noise) yang dinyatakan dalam satuan decibel (dB), noise yang dimaksud adalah akar rata-rata kuadrat nilai kesalahan (
MSE ). Secara Matematis, nilai PSNR dapat dinyatakan pada persamaan 2.13.
PSNR 20 * Log10(
255 MSE
)
........................(2.13)
27
Tidak seperti MSE, nilai PSNR yang lebih besar mengindikasikan bahwa kualitas tersebut lebih baik. 2.9.3
Running Time
Running Time adalah waktu dari awal proses dimulai hingga akhir proses. Waktu mulai dan waktu akhir bekerja secara bersamaan untuk menghitung total waktu yang diperlukan yang ditampilkan dalam satuan detik. Semakin kecil nilai Running Time semakin cepat waktu yang digunakan untuk proses, dan semakin besar nilai Running Time semakin lama waktu yang digunakan untuk proses (Yuwono, 2010).