BAB 2 Dasar Citra Digital
Pembentukan Citra Sumber cahaya i(x,y) f(x,y) Alat optik (mata, kamera) i(x,y) : jumlah pancaran cahaya yang diterima objek f(x,y) : intensitas cahaya yang ditangkap alat optik i(x,y) f(x,y)
Digitalisasi Intensitas Citra Kontinyu Digital Digitalisasi Digitalisasi Spasial Digitalisasi Intensitas
a. digitalisasi spasial (sampling) Citra kontinyu di sampling pada grid-grid berbentuk bujur sangkar/matriks. Tiap elemen menyatakan rata-rata intensitas pada area citra. Contoh : Suatu citra biner berukuran 10x10 inchi akan disampling ke dalam matriks berukuran 5x4. Maka tiap elemen matriks diisi rata-rata intensitas pada area gambar 2 x 2,5 inchi. b. digitalisasi intensitas (quantization) Membagi skala keabuan (0,L) menjadi G buah level yang dinyatakan dengan suatu harga bilangan bulat. G = 2m Dimana: G : derajat keabuan m : bilangan bulat positif (menyatakan jumlah bit yang diperlukan untuk menyimpan nilai derajat keabuan)
sebuah citra direpresentasikan dalam sebuah matriks yang berisi angka-angka 201 188 181 185 180 147 140 149 155 138 144 144 145 199 200 201 188 139 132 147 150 143 123 112 102 117 207 221 222 136 90 111 125 145 140 138 122 104 97 231 219 200 90 65 84 84 107 95 92 92 99 89 227 223 181 74 72 89 92 86 77 63 50 55 65 217 211 166 85 47 75 82 83 75 42 42 39 40 208 195 179 131 54 68 66 72 46 21 15 24 19 198 187 181 141 53 54 55 59 37 21 37 66 90 195 184 170 134 52 38 42 45 35 43 98 152 172 186 175 171 169 100 34 34 27 44 85 139 170 184 167 156 142 144 112 48 32 46 84 133 166 172 186 142 139 131 120 108 67 30 76 102 123 153 171 178 145 134 128 125 117 70 38 91 101 105 125 146 157 =
Citra Digital Citra digital adalah citra yang didefinisikan sebagai fungsi f(x,y) dimana x dan y menyatakan koordinat dan f menyatakan nilai derajat keabuan dari citra. Tiap elemen pada citra digital disebut pixel.
Diasumsikan bahwa suatu citra f(x,y) di-sampling sehingga menghasilkan citra digital berukuran M baris dan N kolom. Gambar disamping adalah aturan koordinat yang digunakan untuk merepresentasikan citra digital.
Bitmap Files (.bmp) Ada header berisi informasi jumlah baris dan kolom dalam citra, informasi palet, dll Header langsung diikuti dengan angka-angka dalam matriks, disusun perbaris Baris pertama langsung diikuti baris kedua, dst Bagaimana mengetahui awal suatu baris? (misal untuk membedakan citra berukuran 100x200 dengan 200x100) lihat informasi jumlah baris dan jumlah kolom di header Header Baris 1 ….. Baris terakhir
Macam Citra Citra biner : Derajat keabuan/intensitas bernilai hitam dan putih. Citra hitam putih : Derajat keabuan bergerak dari hitam ke putih Citra berwarna : Terdiri dari 3 komponen warna, yaitu red, green dan blue. Intensitas warna 1 titik/pixel diperoleh dari kombinasi 3 derajat keabuan tersebut. Indexed image : terdiri dari data matrix (X) dan colormap matrix (M). Tiap baris M terdiri dari nilai red, green dan blue. Warna tiap pixel diperoleh dari nilai X sebagai index ke colormap.
Tetangga Piksel Suatu piksel p pada koordinat (x,y) memiliki empat tetangga horisontal dan vertikal dengan koordinat sebagai berikut: (x+1,y),(x-1,y),(x,y+1),(x,y-1) Himpunan piksel tetangga disebut tetangga-4 dari p dan dinyatakan dengan N4(p).
Tetangga Piksel Empat tetangga diagonal dari p memiliki koordinat sebagai berikut : (x+1,y+1),(x+1,y-1),(x-1,y+1),(x-1,y-1) Dan dinyatakan dengan ND(p). ND(p) bersama-sama dengan N4(p) disebut tetangga-8 dari p, dan dinyatakan dengan N8(p).
Adjacency Misal V adalah himpunan tingkat keabuan yang digunakan untuk mendefinisikan adjacency. Terdapat tiga tipe adjacency : 4-adjacency. Dua piksel p dan q yang memiliki tingkat keabuan V adalah 4-adjacency jika q adalah anggota himpunan N4(p). 8-adjacency. Dua piksel p dan q yang memiliki tingkat keabuan V adalah 8-adjacency jika q adalah anggota himpunan N8(p). m-adjacency (mixed adjacency). Dua piksel p dan q yang memiliki tingkat keabuan V adalah m-adjacency jika q adalah anggota himpunan N4(p), atau q adalah anggota himpunan ND(p) dan himpunan N4(p) N4(q) tidak memiliki piksel yang memiliki tingkat keabuan V.
Adjacency Mixed adjacency merupakan modifikasi dari 8-adjacency. Mixed-adjacency digunakan untuk mengeliminasi kebingungan yang sering muncul ketika digunakan 8-adjacency. 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 0 1 1 0 1 0 0 0 1 Piksel-piksel Piksel-piksel yang 8-adjacent Piksel-piksel yang m-adjacent
Adjacency Dua subhimpunan citra S1 dan S2 adalah adjacent jika ada piksel dalam S1 ber-adjacent dengan piksel dalam S2.
Path Path dari piksel p dengan koordinat (x,y) ke piksel q dengan koordinat (s,t) adalah serangkaian piksel dengan koordinat : (x0,y0),(x1,y1),…,(xn,yn) dengan (x0,y0)=(x,y), (xn,yn) =(s,t), serta piksel (xi,yi) dan (xi-1,yi-1) adalah adjacent untuk 1 < i < n. Dalam kasus ini, n adalah panjang path. Jika (x0,y0) = (xn,yn), maka path adalah path tertutup. 4-, 8-, atau m-path, definisinya tergantung pada jenis adjacency yang digunakan.
Connected Component Jika S adalah subset dari suatu citra. Dua piksel p dan q dikatakan connected dalam S, jika terdapat path yang menghubungkan p dan q melalui piksel-piksel di dalam S. Untuk sembarang piksel p di dalam S, himpunan piksel yang connected dengan p di dalam S disebut connected component dari S. Jika hanya terdapat satu buah connected component, maka S disebut connected set.
Region Misalkan R adalah subset dari sebuah citra, maka R disebut sebuah region jika R adalah connected set. Boundary (border, contour) dari region R adalah himpunan piksel di dalam region R yang memiliki satu atau lebih tetangga yang bukan R. Jika R adalah keseluruhan citra, maka boundary-nya didefinisikan sebagai himpunan piksel pada baris pertama dan terakhir serta kolom pertama dan terakhir. Boundary membentuk path tertutup, tetapi edge tidak selalu.
Jarak Piksel Untuk piksel p, q, dan z dengan koordinat (x,y), (s,t), dan (v,w). D adalah fungsi jarak jika : D(p,q) ≥ 0 (D(p,q)=0 iff p=q) D(p,q) = D(q,p), dan D(p,z) ≤ D(p,q) + D(q,z) Fungsi jarak D antara p dan q yang bisa digunakan : Jarak Euclidean : Jarak city-block : Jarak chessboard :
1) S1 dan S2 adalah subset dari sebuah citra 1) S1 dan S2 adalah subset dari sebuah citra. Jika V={1}, tunjukkan bahwa kedua subset S1 dan S2 beradjacent. Gunakan 4-adjacent, 8-adjacent, m-adjacent S1 S2 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 2) a. Jika V={0,1}. Hitung panjang lintasan terpendek dari p ke q dengan menggunakan 4-path, 8-path, m-path. b. Hitung jarak antara piksel p dan q dengan ketiga metode jarak 3 1 2 1(q) 2 2 0 2 1 2 1 1 1(p) 0 1 2
Operator Linear dan Nonlinear Misalkan H adalah operator yang input dan ouputnya adalah citra. H adalah operator linier jika memenuhi persamaan berikut: H(af+bg)=aH(f)+bH(g) Contoh : Operator yang fungsinya menghitung jumlah dari K citra adalah operator linier. Operator yang fungsinya menghitung nilai absolut dari beda dua citra adalah operator nonlinier. Operasi nonlinier kadang-kadang memiliki performance yang lebih baik, meskipun tidak selalu dapat diprediksi dan tidak didasarkan pada hasil perumusan teoritis yang terdefinisi dengan baik.
Pemrosesan Histogram Histogram dari suatu citra digital dengan range tingkat [0…L-1] adalah sebuah fungsi diskrit h(rk)=nk, dengan rk adalah tingkat keabuan ke-k dan nk adalah jumlah piksel dalam citra yang memiliki tingkat keabuan rk. Normalisasi histrogram dilakukan dengan membagi setiap nilai nk dengan total jumlah piksel dalam citra, yang dinyatakan dengan n. Histogram yang sudah dinormalisasi dinyatakan dengan p(rk)= nk/n, untuk k=0,1,…,L-1. p(rk) menyatakan estimasi probabilitas kemunculan tingkat keabuan rk. Jumlah dari semua komponen “normalized histogram” sama dengan 1.
Pemrosesan Histogram Empat tipe citra: gelap, terang, kekontrasan rendah dan kekontrasan tinggi, beserta histogramnya.
Pemrosesan Histogram Sumbu horisontal dari histogram menyatakan nilai tingkat keabuan rk. Sumbu vertikal menyatakan nilai dari h(rk)=nk atau p(rk) = nk/n (jika nilainya dinormalisasi). Histogram adalah dasar dari sejumlah teknik pemrosesan citra pada domain spasial, seperti perbaikan, kompresi dan segmentasi citra.
rk nk P(rk)=nk/n (n=64) 8 0.125 1 4 0.0625 2 5 0.078125 3 0.03125 0.046875 6 0.015625 7 0.0156875 0.09375 9 10 0.109375 11 12 13 14 15
Transformasi Citra Domain Spasial Frekuensi Transformasi Transformasi diperlukan bila kita ingin mengetahui suatu informasi tertentu yang tidak tersedia sebelumnya Contoh : jika ingin mengetahui informasi frekuensi kita memerlukan transformasi Fourier Jika ingin mengetahui informasi tentang kombinasi skala dan frekuensi kita memerlukan transformasi wavelet
Tugas Buat program di MATLAB yang mampu : Membaca file gambar dan menampilkannya Menampilkan histogram dari citra Gambar yang digunakan adalah gambar biner, gambar hitam putih, gambar berwarna Dikumpulkan di e-learning dengan format .doc dan nama file tugas1_NPM.doc