BAB II
LANDASAN TEORI
2.1.
Citra Digital
Istilah citra biasanya digunakan dalam bidang pengolahan citra yang berarti gambar. , di mana
Suatu citra dapat didefinisikan sebagai fungsi dua dimensi adalah koordinat spasial, dan amplitudo dari
dan
pada sembarang pasangan koordinat
disebut intensitas (Prasetyo, 2011). Ketika ,
dan nilai intensitas dari
adalah
semua terbatas, maka citra tersebut disebut sebagai citra digital. Citra digital direpresentasikan sebagai citra yang memiliki ukuran dan
dimana
sebagai baris
sebagai kolom. Sistem koordinat pada citra digital dapat dilihat seperti pada
Gambar 2.1.
Gambar 2.1. Sistem koordinat pada citra digital (Gonzalez, Woods & Eddins, 2009)
Universitas Sumatera Utara
7
Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (Kadir & Susanto, 2012). Piksel (pixel atau “picture element”) merupakan elemen terkecil dari sebuah citra dimana satu titik pada citra mewakili satu piksel. Pada Gambar 2.2, sebuah kotak kecil 5 x 5 piksel diambil dari sebuah citra berukuran 128 x 128 piksel. Angka-angka pada Gambar 2.2 menunjukkan besar intensitas pada masing-masing piksel tersebut.
129 65 26 101 67
69 118 21 25 37
120 65 89 28 94
148 70 62 99 145
72 136 134 90 74
Gambar 2.2. Citra digital
Citra digital juga dapat direpresentasikan sebagai matriks
dan setiap
elemen dalam matriks disebut sebagai piksel seperti pada Gambar 2.3.
Gambar 2.3. Matriks citra (Gonzalez, Woods & Eddins, 2009)
Semakin banyak jumlah piksel dan variasi nilai piksel dari suatu citra, maka semakin tinggi nilai resolusinya. Resolusi merupakan ukuran dari banyaknya titik untuk setiap satuan panjang. Resolusi citra menggambarkan kedetailan dari sebuah citra. Citra dengan resolusi rendah (low resolution) adalah citra dengan jumlah piksel dan variasi nilai piksel rendah dan citra resolusi tinggi (high resolution) adalah citra dengan jumlah piksel dan variasi nilai piksel tinggi (Abdi, Aisyah & Arnia, 2011).
Universitas Sumatera Utara
8
2.1.1. Jenis-Jenis Citra Digital 1. Citra Biner (Monokrom) Citra biner direpresentasikan dengan 2 kondisi derajat keabuan yaitu hitam dan putih dimana warna hitam bernilai 0 dan warna putih bernilai 1. Citra biner memiliki kedalaman warna 1 bit (McAndrew, 2004).
0
1
Gambar 2.4. Gradasi warna pada citra biner
Berdasarkan Gambar 2.4, maka implementasi citra biner tampak seperti pada Gambar 2.5.
1 0 0 0 0
1 0 0 0 0
0 1 1 0 0
0 0 0 1 1
0 0 0 0 1
Gambar 2.5. Citra biner
2. Citra Skala Keabuan (Grayscale) Citra grayscale adalah citra digital yang hanya memiliki satu nilai kanal pada setiap pikselnya, dengan kata lain bagian red = green = blue. Nilai tersebut digunakan untuk menunjukan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan, dan putih. Tingkat keabuan yang dimaksud merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih. Citra grayscale memiliki kedalaman warna 8 bit (256 kombinasi warna keabuan) (McAndrew, 2004). Citra grayscale dapat dilihat seperti Gambar 2.6.
Universitas Sumatera Utara
9
230 237 255 99 222
229 236 255 90 152
232 236 255 67 255
234 234 251 37 129
235 233 230 94 129
Gambar 2.6. Citra grayscale Untuk menghitung nilai piksel grayscale dari citra RGB adalah nilai RGB perpiksel dikonversi ke nilai grayscale dengan cara mencari nilai ratarata per piksel.
.............................................. (1)
dengan: fR adalah nilai komponen red fG adalah nilai komponen green fB adalah nilai komponen blue Berdasarkan persamaan 1, maka dapat diambil contoh perhitungan nilai grayscale:
f(1,1) = (255, 240, 240) = (255 + 240 + 240) / 3 = 198
3. Citra Warna (True Color) Jika 2 tipe representasi citra sebelumnya yaitu citra biner dan citra grayscale menggunakan matriks 2D, maka representasi RGB atau yang disebut juga citra true color, menggunakan matriks 3D dengan 3 buah layer. Layer 1 untuk warna merah (red), layer 2 untuk warna hijau (green), dan layer 3 untuk warna biru (blue). Pemetaan warna RGB pada ruang berdimensi tiga dapat dilihat seperti pada Gambar 2.7.
Universitas Sumatera Utara
10
B
255
Cyan
Biru
Magenta
Putih
255
0 Hitam
Hijau
G
255 Merah
Kuning
R
Gambar 2.7. Warna RGB pada ruang berdimensi tiga (Kadir & Susanto, 2012)
Dari Gambar 2.7 terdapat warna-warna lain selain dari ketiga warna layer. Warna-warna tersebut diperoleh dari perpaduan nilai elemen dari ketiga layer. Elemen pada masing-masing layer memiliki range 0-255 dan masingmasing elemen memiliki kedalaman warna 8 bit. Karena terdapat 3 buah layer pada citra RGB sehingga total kombinasi warna yang dapat dihasilkan oleh citra RGB adalah 256 x 256 x 256 = 16.777.216 kombinasi warna. Citra grayscale tampak dapat dilihat seperti Gambar 2.8.
Universitas Sumatera Utara
11
49 58 58 83 88
55 60 54 78 91
56 60 53 72 91
57 58 55 69 84
52 55 56 68 83
64 76 82 57 58 60 60 58 111 94 73 55 105 80 78 64 96 103 108 107
83 83 91 94 92 135 128 126 112 107 141 129 129 117 115 95 99 109 108 112 84 93 107 101 105
58 55 56 78 93
Gambar 2.8. Citra true color
2.2.
Citra Digital Berformat JPEG (Joint Photographic Experts Group)
JPG atau JPEG merupakan standar universal untuk format file citra. Hampir setiap kamera digital dan sistem pencitraan dengan menggunakan komputer mampu membaca dan menggunakan format file ini dalam menghasilkan gambar. JPEG mendukung kedalaman warna 24 bit (pada citra RGB terdapat 3 buah layer dimana kedalaman warna masing-masing layer adalah 8 bit). Format file JPEG menghasilkan ukuran file kecil, namun memiliki kualitas gambar yang kurang baik disebabkan oleh algoritma kompresi lossy. Kompresi Lossy adalah metode memperkecil ukuran file citra dengan membuang beberapa data (McAndrew, 2004).
Universitas Sumatera Utara
12
2.3.
Noise/Derau
Noise/derau merupakan informasi tidak diinginkan yang mencemari suatu citra. Dalam citra digital, noise juga disebut sebagai piksel-piksel berintensitas berbeda yang mengganggu kualitas citra (Montabone, 2010). Dalam praktiknya, kehadiran derau tidak dapat dihindari. Noise/derau dapat timbul biasanya pada saat akuisisi citra, misalnya dari kamera saat memotret dan pada scanner saat proses scan.
2.3.1. Uniform Noise Noise Uniform dapat dibangkitkan dengan cara menggunakan pembangkit bilangan acak [0,1] dengan distribusi uniform. Lalu, untuk titik-titik yang terkena noise, nilai fungsi citra ditambahkan dengan nilai noise yang ada.
2.3.2. Speckle Noise Noise ini muncul pada saat pengambilan citra tidak sempurna karena alasan cuaca, perangkat pengambil citra dan sebagainya. Sifat noise ini mulipikatif, artinya semakin besar intensitas citra atau semakin cerah citra, semakin jelas juga noise yang tampak (Murinto, Aribowo & Syazali, 2007). Speckle Noise merupakan noise yang memberikan titik berwarna hitam pada citra digital. Titik-titik hitam tersebut dapat dibangkitkan dengan cara membangkitkan bilangan 0 pada titik-titik yang secara probabilitas lebih kecil dari nilai probabilitas noise.
2.3.3. Salt & Pepper Noise Sama seperti namanya, noise ini merupakan model noise yang memiliki warna hitam yang tampak seperti taburan merica/pepper dan warna putih yang tampak seperti taburan garam/salt pada titik yang terkena noise. Jika pada Speckle Noise, yang berupa titik-titik hitam dibangkitkan dengan cara membangkitkan bilangan 0 pada titik-titik yang secara probabilitas lebih kecil dari nilai probabilitas noise, maka pada Salt & Pepper Noise, akan membangkitkan titik-titik berwarna putih dengan membangkitkan bilangan 255 pada titik-titik yang secara probabilitas lebih kecil dari nilai probabilitas noise.
Universitas Sumatera Utara
13
Citra yang terdegradasi oleh uniform noise, speckle noise dan salt & pepper noise dapat dilihat pada Gambar 2.9.
(a)
(b)
(c)
(d)
Gambar 2.9. (a) Citra grayscale (b) Citra yang terdegradasi uniform noise (c) Citra yang terdegradasi speckle noise (d) Citra yang terdegradasi salt & pepper noise
Universitas Sumatera Utara
14
2.4.
Pengolahan Citra Digital
Pengolahan citra digital adalah pemrosesan citra yang secara khusus menggunakan komputer dengan tujuan (McAndrew, 2004): 1. Meningkatkan kualitas informasi dari sebuah citra (gambar) yang digunakan untuk kepentingan interpretasi manusia. 2. Mengubah citra dari sebuah gambar yang digunakan untuk mempermudah pemrosesan persepsi mesin autonomous agar lebih mudah dalam mengambil keputusan.
2.4.1. Teknik-Teknik Pengolahan Citra Teknik pada pengolahan citra dapat dibagi menjadi (McAndrew, 2004):
1. Perbaikan kualitas citra (image enhancement) dari aspek radiometrik (kontras, penajaman, pewarnaan semu) dan aspek geometrik (rotasi, translasi, skala, transformasi geometrik). Penajaman citra pada aspek radiometrik dapat dilihat pada Gambar 2.10.
(a) citra blurring
(b) citra sharping
Gambar 2.10. Penajaman/sharping pada image enhancement
2. Pemugaran citra (image restoration) berupaya untuk merekonstruksi (reconstruct) atau mendapatkan kembali (recover) suatu citra yang telah mengalami penurunan kualitas (degraded). Gambar 2.11 menunjukkan proses restorasi citra pada suatu citra yang terdegradasi.
Universitas Sumatera Utara
15
Gambar 2.11. Proses restorasi citra (Gonzalez, Woods & Eddins, 2009)
Salah satu cara restorasi pada citra yang terkena noise adalah dengan cara filtering yang tampak pada Gambar 2.12.
(a) citra dengan noise
(b) citra hasil filtering
Gambar 2.12. Restorasi citra dengan reduksi noise
3. Segmentasi citra (image segmentation) merupakan teknik membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan keserupaan intensitas atau kesamaan kriteria yang telah didefinisikan (Gonzalez, Woods & Eddins, 2009). Salah satu contoh segementasi citra adalah deteksi tepi citra yang dapat dilihat seperti pada Gambar 2.13.
Universitas Sumatera Utara
16
(a) citra asli
(b) citra segmentasi
Gambar 2.13. Segmentasi citra
2.5. Filtering Filtering merupakan suatu proses pengambilan sebagian sinyal dari frekuensi tertentu, dan menempatkan sinyal tersebut pada frekuensi yang lain. Filtering pada citra juga menggunakan prinsip yang sama, yaitu mengambil fungsi citra pada piksel- piksel tertentu dan mengantikan fungsi citra tersebut pada piksel-piksel tertentu. Teknikteknik filtering pada umumnya bertujuan untuk menghilangkan noise yang terdapat dalam citra dan juga untuk menghaluskan citra.
2.6. Order-Statistic Filters Order-statistic filter adalah filter spasial non-linier yang didasarkan pada pengurutan / perankingan piksel sebuah gambar dan kemudian mengganti nilai pusat piksel dengan nilai hasil yang ditentukan dari proses perankingan (Gonzalez, Woods & Eddins, 2009). Filter ini bekerja dengan menggunakan konsep sliding window yaitu sebuah window berupa matriks m x n yang akan bergeser posisi dengan tujuan mengganti nilai pusat piksel pada window dengan nilai piksel hasil perangkingan. Gambar 2.14 menunjukkan sebuah matriks citra berukuran 6 x 6.
Universitas Sumatera Utara
17
=
5
3
3
7
1
4
4
2
1
6
5
5
6
3
0
1
0
6
2
4
5
7
6
8
3
7
0
5
3
2
4
5
3
3
7
1
Gambar 2.14. Matriks citra ukuran 6 x 6
Dari Gambar 2.14 dapat diambil matriks citra 3 x 3 dari pojok kiri atas. Bagian citra 3 x 3 dari matriks citra 6 x 6 tersebut dapat dilihat seperti pada Gambar 2.15.
5
3
3
4
2
1
6
3
0
Gambar 2.15. Matriks citra 3 x 3 dari matriks citra 6 x 6
Piksel-piksel tersebut diurutkan secara ascending, sehingga diperoleh hasil pengurutan nilai pikselnya adalah 0, 1, 2, 3, 3, 3, 4, 5, 6.
2.6.1. Alpha-Trimmed Mean Filter (ATMF) Alpha-trimmed mean filter pada prinsipnya adalah menghilangkan
/2 buah piksel
dengan nilai gray-level terendah dan /2 buah piksel dengan nilai gray-level tertinggi dari g (s,t) dalam
. Range nilai d berada di antara 0 sampai
. Ketika
, maka alpha-trimmed mean filter menjadi arithmetic mean filter, dan jika , maka alpha-trimmed mean filter menjadi median filter. Formula yang digunakan (Prasetyo, 2011):
̂
∑
.................................... (2)
Universitas Sumatera Utara
18
dengan: ̂
: hasil filtering
mn
: ukuran panjang dan lebar window
g (s,t)
: sub-image : window daerah yang diliputi oleh filter
Gambar 2.16. Kalkulasi pada metode ATMF (http://www.librow.com/content/common/images/articles/article-7/fig-1.gif)
Contoh: Matriks citra 3 x 3 pada Gambar 2.16 yang telah diurutkan, akan di filter dengan d = 4.
[0 1 2 3 3 3 4 5 6]
Kemudian nilai piksel dengan nilai gray-level terendah dan nilai piksel dengan nilai gray-level tertinggi dihapus sehingga menjadi:
[1233345]
Kemudian lakukan perhitungan dengan menggunakan Persamaan 2, sehingga diperoleh nilai pusat seperti pada Gambar 2.17.
Universitas Sumatera Utara
19
5
3
3
5
3
3
4
2
1
4
4
1
6
3
0
6
3
0
̂
[
]
Gambar 2.17. Proses ATMF dengan matriks 3 x 3
(a)
(b)
Gambar 2.18. (a) Citra terdegradasi dengan Salt and Pepper Noise (b) ATMF 3 x 3, trimmed size = 4
2.7.
Adaptive Median Filter (AMF)
Adaptive Median Filter yang termasuk didalam adaptive filter merupakan pengembangan dari Median Filter. Median filter adalah salah satu filtering non-linear yang mengurutkan nilai intensitas sekelompok piksel kemudian mengganti nilai piksel yang diproses dengan nilai tengahnya. Namun dalam pengaplikasiannya, Median Filter dinilai kurang efektif di dalam mereduksi noise terutama noise dengan persentase yang tinggi. Perbedaan mendasar dalam diantara Median Filter dan AMF adalah AMF bekerja dengan
ukuran window yang dapat berubah menyesuaikan
dengan batasan maksimum. Variasi ukuran window ini tergantung pada median dari piksel dalam window tersebut. Jika nilai rata-rata adalah noise, maka ukuran jendela akan diperluas. Adaptive median filter mengklasifikasikan piksel sebagai noise dengan membandingkan setiap piksel pada gambar dengan piksel tetangga disekitarnya
Universitas Sumatera Utara
20
dengan piksel pusat dari jendela (window) dievaluasi untuk memverifikasi apakah itu suatu noise atau bukan. Sebuah piksel yang berbeda dari mayoritas tetangganya, maupun yang tidak selaras secara struktural dengan piksel mereka yang sama, akan ditandai sebagai noise (Listiyani, 2013). Tujuan dari algoritma AMF ini adalah mengidentifikasi kandidat noise kemudian mengganti setiap
dengan nilai tengah dari piksel yang ada pada window
. Algoritma AMF bekerja pada dua bagian, bagian A dan bagian B sebagaimana terlihat pada persamaan 3 dan persamaan 4 (Prasetyo, 2011):
Bagian A: 𝐴 = 𝑍𝑚𝑒𝑑 𝐴 =𝑍𝑚𝑒𝑑
Jika
AND
𝑍𝑚𝑖𝑛 ..................................................................................... (3) 𝑍𝑚𝑎𝑥
, pindah ke bagian B
ELSE naikkan ukuran window IF ukuran window
, ulangi bagian A
ELSE keluarkan Bagian B:
Jika
𝐵 = 𝑍𝑥𝑦
𝑍𝑚𝑖𝑛
𝐵 = 𝑍𝑥𝑦
𝑍𝑚𝑎𝑥
AND
............................................................................. (4)
, keluarkan
ELSE keluarkan
Penjelasan untuk algoritma AMF adalah sebagai berikut (Thivakaran & Chandrasekaran, 2010): Untuk setiap piksel pada lokasi
:
Langkah 1. Inisialisasi S = 3. Langkah 2. Hitung
,
, dan
yang merupakan nilai minimum, median,
dan maksimum dari piksel-piksel di dalam window
.
Universitas Sumatera Utara
21
Langkah 3. Lakukan perhitungan pada persamaan 3 yang berfungsi untuk melihat apakah
. Jika hasilnya bernilai true, dilanjutkan ke langkah 5.
Jika tidak, atur ukuran
hingga mencapai ukuran maksimum dari
Langkah 4. Jika
, ulangi langkah 2. Selain itu, ubah
dengan
. .
Langkah 5. Lakukan perhitungan pada persamaan 4 yang berfungsi untuk melihat apakah min
. Jika hasilnya bernilai true, maka tidak perlu diubah, selain itu, ubah nilai
sehingga nilai
bukan noise
dengan nilai
.
dengan, : filtering window : nilai piksel pusat pada window : nilai minimum pada window : nilai tengah pada window : nilai maksimum pada window : ukuran maksimal window
Contoh: Pada sebuah matriks citra 6 x 6, inisialisasi window
sehingga
membentuk sebuah filtering window 3 x 3.
̂
̂
=
=
5
3
3
7
1
4
4
2
1
6
5
5
6
3
0
1
0
6
2
4
5
7
6
8
3
7
0
5
3
2
4
5
3
3
7
1
5
3
3
4
2
1
6
3
0
𝑍𝑥𝑦
Pada filtering window, dilakukan proses order-statistic untuk mendapatkan nilai minimum, nilai tengah dan nilai maksimum:
Universitas Sumatera Utara
22
[012333456]
Berdasarkan contoh matriks, diperoleh:
= 2;
= 0;
= 3;
=6
Maka, periksa apakah
=
(true).
Maka, periksa apakah
=
(true).
Dari perhitungan di atas terlihat bahwa ̂
bukan merupakan noise, sehingga nilai
tetap.
(a)
(b)
Gambar 2.19 (a) Citra terdegradasi dengan salt and pepper noise (b) Citra hasil Adaptive Median Filtering (Thivakaran & Chandrasekaran, 2010)
Universitas Sumatera Utara
23
2.8.
Penilaian Kualitas Citra
2.8.1. Mean Square Error (MSE) MSE adalah rata-rata kuadrat nilai kesalahan antara citra asli dengan citra hasil pengolahan. Semakin kecil nilai MSE, maka semakin bagus kualitas citra hasil filter. Secara matematis, MSE dapat dirumuskan dengan persamaan 5 (Prasetyo, 2011):
∑
∑
.................... (5)
dengan: M
: lebar citra dalam piksel
N
: tinggi citra dalam piksel : citra sebelum reduksi noise : citra setelah reduksi noise
2.8.2. Peak Signal to Noise Ratio (PSNR) PSNR adalah perbandingan antara nilai maksimum warna pada citra hasil filtering dengan kuantitas derau/noise. Semakin besar nilai PSNR citra hasil, maka citra tersebut akan semakin mendekati citra asli. PSNR dapat dihitung dengan menggunakan persamaan 6:
(
2.8.3.
) ............................................. (6)
Runtime (Waktu Eksekusi)
Runtime adalah lamanya waktu yang dibutuhkan untuk menjalankan perintah dalam sebuah proses. Waktu yang dibutuhkan dalam melakukan eksekusi dapat dihitungan dengan melakukan pengurangan waktu akhir eksekusi dengan waktu awal eksekusi.
Universitas Sumatera Utara