pengolahan citra

44
1 PENGOLAHAN CITRA Pengampu : Idhawati Hestiningsih PENDAHULUAN / DEFINISI Citra = gambar = image Citra, menurut kamus Webster, adalah suatu representasi, kemiripan, atau imitasi dari suatu objek atau benda misal : - foto Anda mewakili entitas diri Anda sendiri di depan kamera - foto sinar-X thorax mewakili keadaan bagian dalam tubuh seseorang - data dalam suatu file BMP mewakili apa yang digambarkannya Citra, dari sudut pandang matematis, merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang 2 dimensi. Citra yang terlihat merupakan cahaya yang direfleksikan dari sebuah objek. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut dan pantulan cahaya ditangkap oleh alat-alat optik, misal mata manusia, kamera, scanner, sensor satelit, dsb, kemudian direkam. Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat : 1. optik berupa foto 2. analog berupa sinyal video seperti gambar pada monitor televisi 3. digital yang dapat langsung disimpan pada media penyimpan magnetik Citra juga dapat dikelompokkan menjadi 2 yaitu : Citra Citra tidak tampak (data foto/gambar dalam file, citra yang direpresentasikan dalam fungsi matematis) Citra tampak (foto, gambar, lukisan, apa yang nampak di layar monitor/televisi , hologram , dll) Citra digital = citra yang disimpan dalam format digital (dalam bentuk file). Hanya citra digital yang dapat diolah menggunakan komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah dulu menjadi citra digital. Pencitraan (imaging) = kegiatan mengubah informasi dari citra tampak/citra non digital menjadi citra digital. Beberapa alat yang dapat digunakan untuk pencitraan adalah : scanner, kamera digital, kamera sinar-x/sinar infra merah, dll Pengolahan Citra = kegiatan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia/mesin(komputer). Inputannya adalah citra dan keluarannya juga citra tapi dengan kualitas lebih baik daripada citra masukan misal citra warnanya kurang tajam, kabur (blurring), mengandung noise (misal bintik- bintik putih), dll sehingga perlu ada pemrosesan untuk memperbaiki citra karena citra tersebut menjadi sulit diinterpretasikan karena informasi yang disampaikan menjadi berkurang. Analisis Citra = kegiatan menganalisis citra sehingga menghasilkan informasi untuk menetapkan keputusan (biasanya didampingi bidang ilmu kecerdasan buatan/AI yaitu pengenalan pola (pattern recognition) menggunakan jaringan syaraf tiruan, logika fuzzy, dll). Analisis citra Pengolahan citra Pencitraan Citra digital Citra digital (baru) Informasi / keputusan Citra nondigital Dalam ilmu komputer sebenarnya ada 3 bidang studi yang berkaitan dengan citra, tapi tujuan ketiganya berbeda, yaitu : 1. Grafika Komputer 2. Pengolahan Citra 3. Pengenalan Pola

Upload: widdi-hermawan

Post on 30-Dec-2015

86 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Pengolahan Citra

1

PENGOLAHAN CITRA Pengampu : Idhawati Hestiningsih

PENDAHULUAN / DEFINISI • Citra = gambar = image

Citra, menurut kamus Webster, adalah suatu representasi, kemiripan, atau imitasi dari suatu objek atau benda misal :

- foto Anda mewakili entitas diri Anda sendiri di depan kamera - foto sinar-X thorax mewakili keadaan bagian dalam tubuh seseorang - data dalam suatu file BMP mewakili apa yang digambarkannya

• Citra, dari sudut pandang matematis, merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang 2 dimensi.

• Citra yang terlihat merupakan cahaya yang direfleksikan dari sebuah objek. Sumber cahaya menerangi objek, objek memantulkan kembali sebagian dari berkas cahaya tersebut dan pantulan cahaya ditangkap oleh alat-alat optik, misal mata manusia, kamera, scanner, sensor satelit, dsb, kemudian direkam.

Citra sebagai keluaran dari suatu sistem perekaman data dapat bersifat : 1. optik berupa foto 2. analog berupa sinyal video seperti gambar pada monitor televisi 3. digital yang dapat langsung disimpan pada media penyimpan magnetik

Citra juga dapat dikelompokkan menjadi 2 yaitu :

Citra

Citra tidak tampak (data foto/gambar dalam file, citra yang direpresentasikan dalam fungsi matematis)

Citra tampak (foto, gambar, lukisan, apa yang nampak di layar monitor/televisi , hologram , dll)

Citra digital = citra yang disimpan dalam format digital (dalam bentuk file). Hanya citra digital yang dapat diolah menggunakan komputer. Jenis citra lain jika akan diolah dengan komputer harus diubah dulu menjadi citra digital.

• Pencitraan (imaging) = kegiatan mengubah informasi dari citra tampak/citra non digital menjadi citra digital. Beberapa alat yang dapat digunakan untuk pencitraan adalah : scanner, kamera digital, kamera sinar-x/sinar infra merah, dll

• Pengolahan Citra

= kegiatan memperbaiki kualitas citra agar mudah diinterpretasi oleh manusia/mesin(komputer). Inputannya adalah citra dan keluarannya juga citra tapi dengan kualitas lebih baik daripada citra masukan misal citra warnanya kurang tajam, kabur (blurring), mengandung noise (misal bintik-bintik putih), dll sehingga perlu ada pemrosesan untuk memperbaiki citra karena citra tersebut menjadi sulit diinterpretasikan karena informasi yang disampaikan menjadi berkurang.

• Analisis Citra

= kegiatan menganalisis citra sehingga menghasilkan informasi untuk menetapkan keputusan (biasanya didampingi bidang ilmu kecerdasan buatan/AI yaitu pengenalan pola (pattern recognition) menggunakan jaringan syaraf tiruan, logika fuzzy, dll).

Analisis citra

Pengolahan citra

Pencitraan Citra

digital Citra digital

(baru) Informasi / keputusan

Citra nondigital

• Dalam ilmu komputer sebenarnya ada 3 bidang studi yang berkaitan dengan citra, tapi tujuan ketiganya berbeda, yaitu : 1. Grafika Komputer 2. Pengolahan Citra 3. Pengenalan Pola

Page 2: Pengolahan Citra

2

Grafika Komputer • Adalah proses untuk menciptakan suatu gambar berdasarkan deskripsi obyek maupun latar

belakang yang terkandung pada gambar tersebut. • Merupakan teknik untuk membuat gambar obyek sesuai dengan obyek tersebut di alam nyata

(realism). • Bertujuan menghasilkan gambar/citra (lebih tepat disebut grafik/picture) dengan primitif-

primitif geometri seperti garis, lingkaran, dsb. • Primitif-primitif geometri tersebut memerlukan data deskriptif untuk melukis elemen-elemen

gambar. Data deskriptif : koordinat titik, panjang garis, jari-jari lingkaran, tebal garis, warna, dsb.

• Grafika komputer berperan dalam visualisasi dan virtual reality. Pengolahan Citra

Grafika Komputer

Data deskriptif

Citra

Operasi-operasi pada pengolahan citra diterapkan pada citra bila : 1. Perbaikan atau memodifikasi citra dilakukan untuk meningkatkan kualitas penampakan

citra/menonjolkan beberapa aspek informasi yang terkandung dalam citra (image enhancement) contoh : perbaikan kontras gelap/terang, perbaikan tepian objek, penajaman, pemberian warna semu, dll

2. Adanya cacat pada citra sehingga perlu dihilangkan/diminimumkan (image restoration) contoh : penghilangan kesamaran (debluring) citra tampak kabur karena pengaturan fokus lensa tidak tepat / kamera goyang, penghilangan noise

3. Elemen dalam citra perlu dikelompokkan, dicocokan atau diukur (image segmentation) Operasi ini berkaitan erat dengan pengenalan pola.

4. Diperlukannya ekstraksi ciri-ciri tertentu yang dimiliki citra untuk membantu dalam pengidentifikasian objek (image analysis). Proses segementasi kadangkala diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya. Contoh : pendeteksian tepi objek

5. Sebagian citra perlu digabung dengan bagian citra yang lain (image reconstruction) contoh : beberapa foto rontgen digunakan untuk membentuk ulang gambar organ tubuh

6. Citra perlu dimampatkan (image compression) contoh : suatu file citra berbentuk BMP berukuran 258 KB dimampatkan dengan metode JPEG menjadi berukuran 49 KB

7. Menyembunyikan data rahasia (berupa teks/citra) pada citra sehingga keberadaan data rahasia tersebut tidak diketahui orang (steganografi & watermarking)

Pengolahan

Citra Citra

Citra Pengenalan Pola

• Adalah mengelompokkan data numerik dan simbolik (termasuk citra) secara otomatis oleh mesin (komputer).

• Tujuan pengelompokkan adalah untuk mengenali suatu objek di dalam citra. • Manusia bisa mengenali objek yang dilihatnya karena otak manusia telah belajar

mengklasifikasi objek-objek di alam sehingga mampu membedakan suatu objek dengan objek lainnya. Kemampuan sistem visual manusia yang dicoba ditiru oleh mesin.

• Komputer menerima masukan berupa citra objek yang akan diidentifikasi, memproses citra tersebut dan memberikan keluaran berupa informasi/deskripsi objek di dalam citra.

Pengenalan

Pola Citra Informasi / deskripsi objek

COMPUTER VISION

• Terminologi lain yang berkaitan erat dengan pengolahan citra adalah Computer Vision. • Computer vision = merupakan proses otomatis yang mengintegrasikan sejumlah besar proses

untuk persepsi visual, seperti akuisisi citra, pengolahan citra, pengenalan dan membuat keputusan.

Page 3: Pengolahan Citra

3

• Computer vision mencoba meniru cara kerja sistem visual manusia (human vision) yang sesungguhnya sangat kompleks.

• Manusia melihat dengan objek dengan indera penglihatan (mata), lalu citra objek diteruskan ke otak untuk diinterpretasi sehingga manusia mengerti objek apa yang tampak dalam pandangan mata. Hasil interpretasi ini digunakan untuk pengambilan keputusan (misal menghindar kalau melihat ada mobil di depan).

• Proses-proses dalam computer vision : - memperoleh atau mengakuisisi citra digital - operasi pengolahan citra - menganalisis dan menginterpretasi citra dan menggunakan hasil pemrosesan untuk

tujuan tertentu, misal memandu robot, mengontrol peralatan, dll. • Pengolahan citra merupakan proses awal pada computer vision, pengenalan pola merupakan

proses untuk menginterpretasi citra. CONTOH GRAFIKA KOMPUTER CONTOH PENGOLAHAN CITRA

Microprocessor diperbesar (zoom in) 60 x

Pendeteksian tepi objek (edge detection)

Citra ada noise diperbaiki dengan teknik noise filtering

Page 4: Pengolahan Citra

4

CONTOH PENGENALAN POLA

Image segmentation untuk memisahkan objek minyak dengan laut deteksi minyak yang tumpah dari kapal tenggelam di laut dari foto satelit

Menyisipkan informasi (watermark) ke dalam data multimedia (misal berupa citra). Watermark dianggap sebagai sidik digital (digital signature) dari pemilik yang sah atas produk multimedia = watermark yang disisipkan menjadi label hak cipta dari pemiliknya.

Deteksi penggunaan lahan dari foto satelit

salah satu teknik yang digunakan adalah image segmentation

Page 5: Pengolahan Citra

5

Deteksi / pengenalan wajah manusia secara otomatis dari suatu citra

Pengenalan pola sidik jari seseorang

Pengenalan/deteksi tanda tangan asli/palsu (tanda tangan yang dibuat oleh orang yang sama/berbeda)

Page 6: Pengolahan Citra

6

Pengenalan angka

Pengenalan huruf

Deteksi / pengenalan objek pada citra

Garasi Semak Rumput Rumah Awan Pohon1 Pohon2

Atap Dinding Atap Dinding1 Dinding2

Page 7: Pengolahan Citra

7

BAGAIMANA CITRA DIGITAL DIREKAM Sistem Perekaman Citra

• Citra yang diperoleh tergantung : - karakteristik dari obyek yang direkam - kondisi variabel dari sistem perekaman

• Citra merupakan gambaran tentang karakteristik suatu obyek menurut kondisi variabel tertentu Contoh:

- bandingkan hasil foto manusia dengan kamera / sensor optik dan dengan sensor sinar X (kondisi variabel sistem berbeda) - bandingkan hasil foto pemandangan di tepi laut dan di daerah pegunungan

(karakteristik obyek berbeda) Sensor Pasif

• Sistem sensor yang merekam data obyek tanpa mengirimkan energi, sumber energi bisa dalam bentuk sinar matahari, sinar lampu, dsb

• Contoh: sensor optik dari kamera foto, sensor optik pada sistem inderaja. Sensor Aktif

• Sistem sensor yang merekam data obyek mengirimkan dan menerima pantulan dari energi yang dikirim ke arah obyek, energi yang dikirim bisa berupa gelombang pendek, sinar X, dsb

• Contoh: sensor Rontgen untuk foto thorax, sensor gelombang pendek pada sistem radar, sensor ultrasound pada sistem USG.

MACAM KOORDINAT SISTEM Koordinat Cartesian

Y

1

2

3

(0,0) 1 2 3 4 5

(2,3)

(5,2)

X Koordinat Piksel = koordinat tampilan di layar monitor

1

2

3

(0,0)

1 2 3 4 5

(2,3) (5,2)

X Y

Page 8: Pengolahan Citra

8

Koordinat Matriks (y=baris, x=kolom) (0,0)

x

4

derajat keabuan (0,0)

1

2

3

1 2 3 4 5

(2,3)

(5,2)

Y

X

4

5 FORMAT CITRA DIGITAL Citra Digital

• Citra digital merupakan fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi tersebut pada setiap titik (x,y) merupakan tingkat kecemerlangan citra pada titik tersebut

• Citra digital adalah citra f(x,y) dimana dilakukan diskritisasi koordinat spasial (sampling) dan diskritisasi tingkat kecemerlangannya/keabuan (kwantisasi)

• Citra digital merupakan suatu matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya (yang disebut sebagai elemen gambar / piksel / pixel / picture element / pels) menyatakan tingkat keabuan pada titik tersebut

• Citra digital dinyatakan dengan matriks berukuran N x M (baris/tinggi = N, kolom/lebar = M) N = jumlah baris 0 ≤ y ≤ N – 1 M = jumlah kolom 0 ≤ x ≤ M – 1 L = maksimal warna intensitas 0 ≤ f(x,y) ≤ L – 1

(derajat keabuan / gray level)

⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−

−−

)1,1(...)1,1()0,1(

)1,1(...)1,1()0,1()1,0(...)1,0()0,0(

),( ::::MNfNfNf

MfffMfff

yxf

0 1 1 1 0

0 1 0 1 0

0 1 1 1 0

0 1 0 1 0

0 1 0 1 0

0

1

2

3

0 1 2 3 kolom/lebar = 5

baris/tinggi=5 piksel

4

y contoh : f(2,3) = 1 berdasarkan koordinat matriks, isi/data citra digital sebenarnya f(3,2) = 1 berdasarkan koordinat piksel di layar

Dimas
Highlight
Page 9: Pengolahan Citra

9

Format Citra • Citra digital biasanya berbentuk persegi panjang, secara visualisasi dimensi ukurannya

dinyatakan sebagai lebar x tinggi • Ukurannya dinyatakan dalam titik atau piksel (pixel=picture element) • Ukurannya dapat pula dinyatakan dalam satuan panjang (mm atau inci = inch) • Resolusi = banyaknya titik untuk setiap satuan panjang (dot per inch). • Makin besar resolusi makin banyak titik yang terkandung dalam citra, sehingga menjadi lebih

halus dalam visualisasinya. Resolusi Citra

• = resolusi spasial dan resolusi kecemerlangan, berpengaruh pada besarnya informasi citra yang hilang.

• Resolusi spasial = halus / kasarnya pembagian kisi-kisi baris dan kolom. Transformasi citra kontinue ke citra digital disebut digitalisasi (sampling). Misal hasil digitalisasi dengan jumlah baris 256 dan jumlah kolom 256 resolusi spasial 256 x 256.

• Resolusi kecemerlangan (intensitas / brightness) = halus / kasarnya pembagian tingkat kecemerlangan. Transformasi data analog yang bersifat kontinue ke daerah intensitas diskrit disebut kuantisasi. Bila intensitas piksel berkisar antara 0 dan 255 resolusi kecemerlangan citra adalah 256

Bagaimana sebuah citra direpresentasikan dalam file ? Pertama-tama seperti halnya jika kita ingin melukis sebuah gambar, kita harus memiliki palet dan kanvas

• Palet = kumpulan warna yang dapat membentuk citra, sama halnya seperti kita hendak melukis dengan cat warna, kita memiliki palet yang bisa kita isikan berbagai warna cat air

• Setiap warna yang berbeda dalam palet tersebut kita beri nomor (berupa angka) • Contoh untuk citra monokrom (warnanya hanya putih-abu abu-hitam), berarti kita memiliki

palet sbb: • Setelah itu kita dapat menggambar menggunakan warna-warna dalam palet tersebut di atas

sebuah kanvas • Sebuah kanvas dapat kita anggap sebagai sebuah matriks dimana setiap elemen dari matriks

tersebut bisa kita isikan dengan salah satu warna dari palet • Informasi tentang palet (korespondensi antara warna dengan angka) disimpan dalam komputer

(program pembuka citra seperti Paint, Photoshop, dll) sehingga sebuah file citra dalam komputer hanya perlu menyimpan angka-angka yang merepresentasikan sebuah warna.

• Sebuah citra direpresentasikan dalam sebuah matriks yang berisi angka-angka

Page 10: Pengolahan Citra

10

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

=

• Jika kita menyimpan gambar kucing tadi ke dalam sebuah file (kucing.bmp), maka yang

disimpan dalam file tersebut adalah angka-angka yang diperoleh dari matriks kanvas. File kucing.bmp :

Header Angka-angka dari matriks

Input

Program pembuka citra (Paint, ACDSee, Photoshop, dll)

Ditampilkan di layar

Informasi palet dan format file citra

Untuk Windows Bitmap Files (.bmp)

• 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

• Ada bermacam format representasi citra dalam file, seperti bmp, gif, tif, jpg, dan sebagainya. • Format BMP merupakan format yang kurang efisien, karena semua informasi angka dalam

baris disimpan semua. Misalkan ukuran header adalah H byte, ukuran citra 100x100 byte monokrom, maka ukuran file bmp tersebut adalah : H + data citra = H + 10000 Byte

Page 11: Pengolahan Citra

11

• Bagian data citra (10000 byte) sebenarnya bisa dikompresi agar ukuran file tidak terlalu besar. Salah satu cara kompresi adalah dengan terlebih dahulu mentransformasikan citra ke ruang yang berbeda (contoh: format file JPEG). Topik ini lebih lanjut akan dibahas tersendiri.

• Contoh : Suatu citra format BMP 8 bit berukuran 200 x 100 maka memori yang dibutuhkan untuk menyimpan data citra tersebut (tanpa header) sebesar :

Memori = 200 x 100 x 8 bit = 160000 bit = 20000 byte = 19,5 KB MACAM / TYPE CITRA BERDASARKAN FORMAT PENYIMPANAN NILAI WARNANYA A. CITRA BINER

• Setiap titik (pixel) dalam citra bernilai 0 atau 1. Warna hitam = 0, putih = 1.

Catatan : Model citra cahaya = ada cahaya (=1) maka warna putih Model citra cahaya = tidak ada cahaya (=0) maka warna hitam

Model citra tinta / cat = ada cat (=1) maka warna hitam Model citra tinta / cat = tidak ada cat (=0) maka warna putih

Setiap titik membutuhkan media penyimpanan 1 bit Contoh =

Citra Biner (hitam = 0, putih = 1) = 1 1 0 1 1 0 1 1 = 1 1 0 1 1 0 1 1 = 1 1 0 0 0 0 1 1 = 1 1 0 1 1 0 1 1 = 1 1 0 1 1 0 1 1

B. CITRA SKALA KEABUAN

• Citra skala keabuan mempunyai kemungkinan warna antara hitam (minimal) dan putih (maksimal)

• Jumlah maksimum warna sesuai dengan bit penyimpanan yang digunakan.

Contoh : skala keabuan 4 bit jumlah kemungkinan 24 = 16 warna kemungkinan warna 0 (min) sampai 15 (max) skala keabuan 8 bit jumlah kemungkinan 28 = 256 warna kemungkinan warna 0 (min) sampai 255 (max)

Skala keabuan 4 bit (hitam = 0, putih = 15) = 15 0 6 0 13 15 = 15 12 15 15 15 15 = 15 5 0 12 0 15 = 15 8 15 15 15 15 = 15 10 0 13 0 15

Page 12: Pengolahan Citra

12

C. CITRA WARNA (TRUE COLOR) • Setiap titik (pixel) pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna

dasar yaitu merah hijau biru 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

• Misal warna kuning = kombinasi warna merah dan hijau sehingga nilai RGB-nya = 255 255 0 Warna ungu muda = kombinasi warna merah dan biru sehingga nilai RGB-nya = 150 0 150 Contoh : bisa dilihat di Photoshop

• Jadi setiap titik pada citra warna membutuhkan data 3 byte • Jumlah kemungkinan kombinasi warna 224 = lebih dari 16 juta warna 24 bit disebut true

color karena dianggap mencakup semua warna yang ada. Citra warna

= 255 255 255 0 0 0 128 128 128 128 128 0 = 0 255 255 0 0 0 204 255 255 0 0 255 = 150 150 150 51 51 51 255 255 255 95 95 95 = 255 204 153 255 204 153 128 0 0 255 0 255

Catatan : Ada perbedaan warna dasar untuk cahaya (misal display di monitor komputer) & untuk cat/tinta (misal cetakan di atas kertas). Citra cahaya menggunakan warna dasar RGB = Red Green Blue Citra cat menggunakan warna dasar CMY = Cyan Magenta Yellow Dalam matakuliah ini kita menggunakan standar warna dasar cahaya (RGB)

D. CITRA WARNA BERINDEKS

• Setiap titik (pixel) 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.

= 4 0 12 = 4 4 4

Indeks R G B 0 0 0 0 1 51 52 60

…. 4 255 255 255

…. 10 250 10 240

• Setting warna display pada MS Window biasanya format 16 colors, 256 colors, high color, true color, yang merupakan citra warna berindeks dengan ukuran palet masing-masing 4 bit, 8 bit, 16 bit dan 24 bit

Page 13: Pengolahan Citra

13

HISTOGRAM TINGKAT KEABUAN (GRAY-LEVEL HISTOGRAM) • Informasi suatu citra dapat diwakili oleh histogram • Histogram = suatu fungsi yang menunjukkan jumlah titik yang ada dalam suatu citra untuk

setiap tingkat keabuan • Sumbu X (absis) menunjukkan tingkat warna

Sumbu Y (ordinat) menunjukkan frekuensi kemunculan titik • Kegunaan :

1. Penentuan parameter digitasi Dalam proses pencitraan perlu melihat apakah tingkat warna telah dipakai sesuai yang dibutuhkan. Contoh : tingkat keabuan dengan 8 bit apakah sudah memakai dari tingkat 0 sampai 256 warna tingkat keabuan.

2. Pemilihan batas ambang (threshold) Biasa digunakan untuk mengukur penonjolan objek dalam citra terhadap latar belakangnya

termasuk dalam teknik pengambangan (thresholding) 3. Pengenalan / pencocokan citra

Citra yang telah diubah/diupdate akan mempunyai histogram yang berbeda Gambar – gambar histogram

Page 14: Pengolahan Citra

14

OPERASI DASAR PENGOLAHAN CITRA • Citra digital direpresentasikan dengan matriks sehingga operasi pada citra digital pada dasarnya

memanipulasi elemen-elemen matriks. • Operasi dasar pengolahan citra antara lain : operasi titik, operasi global, operasi berbasis bingkai

(frame), operasi geometri, operasi bertetangga OPERASI TITIK • Titik pada citra memiliki 2 karakteristik yaitu :

- koordinat yang menunjukkan lokasi dari titik tersebut dalam citra - nilai yg menunjukan tingkat keabuan/warna dari titik tersebut

• Operasi titik dilakukan dengan memodifikasi nilai skala keabuan dari titik (piksel) yang ditinjau berdasarkan fungsi tertentu.

• Fungsi yang digunakan adalah fungsi transformasi skala keabuan (gray scale transformation/GST) • GST function = fungsi yang memetakan tingkat keabuan input (Ki) ke citra keabuan citra output

(Ko) Ko = f (Ki)

Untuk citra true color fungsi ini diterapkan pada ketiga elemen warna : Ro = fR (Ri) Go = fG (Gi) Bo = fB (Bi)

• Beberapa operasi pengolahan citra, terkait operasi titik : 1. Modifikasi kecemerlangan (brightness modification) 2. Peningkatan Kontras (contrast enhancement) 3. Negasi (negation) 4. Pengambangan (thresholding)

1. MODIFIKASI KECEMERLANGAN (BRIGHTNESS MODIFICATION) • Pada dasarnya merubah nilai keabuan/warna dari gelap menuju terang atau sebaliknya merubah

citra yang terlalu cemerlang/pucat menjadi gelap. • Dengan pertolongan GST fungsi, dapat ditarik formula linier :

Ko = Ki + C atau f(x,y)’ = f(x,y) + C Dimana C adalah suatu konstanta yang bernilai positif untuk meningkatkan kecemerlangan citra, bernilai negatif untuk mengurangi kecemerlangan citra. Untuk citra true color :

Ro = Ri + CR Go = Gi + CG Bo = Bi + CB

Page 15: Pengolahan Citra

15

2. PENINGKATAN KONTRAS (CONTRAST ENHANCEMENT) • Jika sebuah citra yang mempunyai nilai keabuan yang tidak terlalu berbeda untuk semua titik,

dimana titik tergelap dalam citra tidak mencapai hitam pekat dan titik paling terang dalam citra tidak berwarna putih cemerlang

• Dengan peningkatan kontras maka titik yang cenderung gelap menjadi lebih gelap dan yang cenderung terang menjadi lebih cemerlang.

• Peningkatan kontras dapat dilakukan dengan bermacam rumus, salah satunya adalah : Ko = G (Ki – P) + P G = Koefisien penguatan kontras P = Nilai skala keabuan yang dipakai sebagai pusat pengontrasan

3. NEGASI

• Operasi untuk mendapatkan citra negatif (negative image) • Meniru film negatif pada fotografi, yaitu titik yang berwarna putih pada citra mempunyai warna

hitam pada film negatifnya, demikian juga sebaliknya. • Dilakukan dengan cara mengurangi nilai intensitas piksel dari nilai keabuan maksimum.

Ko = Kmax – Ki

Misal pada citra dengan 256 derajat keabuan (8 bit) Kmax = 255 maka Ko = 255 – Ki atau f(x,y)’ =255 – f(x,y)

Page 16: Pengolahan Citra

16

4. KONVERSI CITRA TRUE COLOR MENJADI CITRA KEABUAN (GRAYSCALE) • Operasi konversi citra true color ke keabuan dengan rumus :

Ri + Gi + Bi Ko = -------------------- 3

• Bisa juga dengan memberi bobot (w) pada RGB karena mata manusia lebih sensitif pada warna hijau, kemudian merah, terakhir biru.

Ko = wr Ri + wg Gi + wb Bi Berdasarkan NTSC (National Television System Committee), dimana :

wr = 0.299 wg = 0.587 wb = 0.144 5. PENGAMBANGAN (THRESHOLDING)

• Operasi pengambangan digunakan untuk mengubah citra dengan format skala keabuan, yang mempunyai kemungkinan nilai lebih dari 2 ke citra biner yang memiliki 2 buah nilai (yaitu 0 dan 1).

• Pengambangan Tunggal Memiliki sebuah nilai batas ambang Fungsi GST-nya

0, jika Ki < ambang (0 = hitam) Ko = 1, jika Ki ≥ ambang (1 = putih) atau 0, jika Ki ≥ ambang Ko = 1, jika Ki < ambang

Contoh dengan formula/rumus 1 :

misal nilai ambang = 140

Page 17: Pengolahan Citra

17

• Pengambangan Ganda Memiliki ambang bawah dan ambang atas. Dilakukan untuk menampilkan titik-titik yang mempunyai rentang nilai skala keabuan tertentu

0, jika ambang bawah ≤ Ki ≤ ambang atas Ko = 1, lainnya.

atau 1, jika ambang bawah ≤ Ki ≤ ambang atas Ko = 0, lainnya.

Contoh dengan formula/rumus 1 :

ambang bawah = 100 ambang atas = 140

Page 18: Pengolahan Citra

18

OPERASI GEOMETRI • Operasi Geometri pada pengolahan citra ditujukan untuk memodifikasi koordinat piksel dalam

suatu citra dengan pendekatan tertentu, tetapi dalam perkembangannya dimungkinkan juga memodifikasi nilai skala keabuan.

• Operasi Geometri berhubungan dengan perubahan bentuk geometri citra, antara lain : Pencerminan (flipping) Rotasi/pemutaran (Rotating) Pemotongan (Cropping) Penskalaan (Scaling/Zooming)

1. PENCERMINAN (FLIPPING)

• Operasi pencerminan merupakan salah satu operasi geometri yang paling sederhana. • Efek pencerminan

horisontal : pencerminan pada sumbu Y vertikal : pencerminan pada sumbu X kombinasi : pencerminan pada sumbu Y dan X

• Formula/rumus yang digunakan untuk pencerminan horisontal. x’ = –x

karena koordinat asal (x) bernilai nol atau positif, maka koordinat hasil (x’) yang diperoleh dari rumus akan selalu bernilai nol atau negatif. Padahal koordinat piksel citra tidak ada (tidak boleh) negatif. Maka rumus dimodifikasi menjadi :

x’ – xc = –(x – xc) , dengan xc nilai koordinat garis tengah citra. x’ – xc = – x + xc x’ = 2xc – x w = lebar citra w – 1 xc = = (w–1)/2 2

Karena xc = (w–1)/2 Maka :

x’ = 2 ((w–1)/2) – x x’ = w – 1 – x

Garis tengah citra (xc)

Citra

• Untuk pencerminan vertikal, tinggal mengganti rumus, menjadi : y’ = –y

y’ = h – 1 – y • Untuk pencerminan kombinasi, rumus keduanya digabungkan.

Kesimpulan : Pencerminan Horisontal : x’ = w – 1 – x

y’ = y (nilai koordinat y tetap)

Pencerminan Vertical : y’ = h – 1 – y x’ = x (nilai koordinat x tetap)

Pencerminan Kombinasi : x’ = w – 1 – x y’ = h – 1 – y

pencerminan horizontal

pencerminan vertical

pencerminan kombinasi

citra asli

Page 19: Pengolahan Citra

19

2. ROTASI (ROTATING) • Operasi rotasi dengan memutar koordinat yang akan dibahas adalah rotasi ¼ putaran (900) dan

½ putaran (1800). • Rotasi ¼ putaran (900) searah jarum jam (CW/clock wise) w’ = h dan h’ = w pertukaran ukuran lebar & tinggi citra x’ = w’ – 1 – y y’ = x • Rotasi ½ putaran (1800) searah jarum jam (CW/clock wise) x’ = w’ – 1 – x y’ = h’ – 1 – y • Rotasi Bebas

Dengan asumsi berlawanan arah jarum jam (CCW/counter clock wise) x’ = x cos(θ) + y sin(θ) y’ = -x sin(θ) + y cos(θ) w’ = |w cos(θ)| + |h sin(θ)| h’ = |w sin(θ)| + |h cos(θ)|

citra asli rotasi bebas (250 CCW)

¼ putaran (900 CW) ½ putaran (1800 CW)

3. PEMOTONGAN (CROPPING) Adalah pengolahan citra dengan kegiatan memotong satu bagian dari citra. Rumus yang digunakan :

0 xL xR x’ = x – xL untuk x = xL sampai xR 0 y’ = y – yT untuk y = yT sampai yB (xL,yT) dan (xR,yB) adalah koordinat titik pojok kiri atas dan pojok kanan bawah citra yang akan di-crop Ukuran citra menjadi : w’ = xR – xL h’ = yB – YT

h’

w’

yT

yB

citra hasil cropping

citra di-crop

citra asli

Page 20: Pengolahan Citra

20

4. PENSKALAAN (SCALING) • Operasi penskalaan (scaling) dimaksudkan untuk memperbesar (zoom-in) atau memperkecil

(zoom-out) citra. > 1 , memperbesar citra asli

Nilai skala < 1 , memperkecil citra asli

Rumus yg dipakai : x’ = Sh x y’ = Sv y

Keterangan : citra asli Sh = faktor skala horisontal Sv = faktor skala vertikal

Ukuran citra juga berubah menjadi :

w’ = Sh w h’ = Sv h

• Operasi zoom in dengan faktor 2 (Sh=Sv=2) menyalin setiap piksel sebanyak 4 kali, jadi citra 2 x 2 piksel menjadi 4 x 4 piksel

Sh = 1 Sv = 2

Page 21: Pengolahan Citra

21

OPERASI BERBASIS BINGKAI (FRAME) = OPERASI MULTI IMAGE • Operasi multi image adalah operasi pengolahan terhadap lebih dari satu obyek citra dan

menghasilkan sebuah citra keluaran yang merupakan hasil operasi matematis • Operasi ini dilakukan titik per titik dengan lokasi yang bersesuaian pada citra-citra masukan • Secara umum misal akan dioperasikan citra A dan citra B sehingga menghasilkan citra C, maka

dapat diformulasikan sbb : C(x,y) = A(x,y) operator B(x,y)

Jika melibatkan lebih dari 2 citra, maka : C(x,y) = A1(x,y) operator A2(x,y) operator A3(x,y)……… • Dalam operasi yang melibatkan dua buah citra atau lebih, biasanya akan diterapkan operasi

aritmatika, sebagai contoh :

Penjumlahan C(x,y) = A(x,y) + B(x,y) Pengurangan C(x,y) = A(x,y) – B(x,y) Perkalian C(x,y) = A(x,y) * B(x,y) Pembagian C(x,y) = A(x,y) / B(x,y) • Beberapa pengolahan citra yang berkaitan dengan operasi ini adalah :

1. Penggabungan citra (image blending) 2. Deteksi gerakan (motion detection) 3. Operasi Logika (logic Operation)

1. PENGGABUNGAN CITRA (IMAGE BLENDING)

• Penggabungan citra dilakukan dengan cara menimpakan sebuah citra pada citra yang lain • Dengan kata lain dilakukan operasi penjumlahan terhadap citra yang ada dengan pemberian

bobot pada masing-masing citra

C(x,y) = wa * A(x,y) + wb * B(x,y) wa dan wb adalah bobot untuk citra A dan B, dan nilai jumlah total dari bobot adalah 1

wa + wb = 1

citra B citra hasil penggabungan

dengan wa=0.4 wb=0.6 citra A

2. DETEKSI GERAKAN

• Deteksi gerakan secara sederhana dapat dilakukan dengan mencari beda antara 2 citra yang berurutan pada hasil pencitraan menggunakan kamera video digital

• Operator yang digunakan adalah pengurangan • Dengan operasi pengurangan ini :

- bagian yang tidak bergerak akan menghasilkan nilai = 0 - bagian yang bergerak menghasilkan nilai ≠ 0

C(x,y) = A(x,y) – B(x,y) • Dengan mengevaluasi nilai selisih tersebut, dapat diketahui apakah pada citra terdapat objek

yang bergerak • Bisa juga digunakan rumus pada operasi blending dengan memberi bobot

wa = 1 dan wb = – 1

Page 22: Pengolahan Citra

22

citra hasil mendeteksi gerakan : objek paku hitam menunjukkan posisi objek mengalami perpindahan

objek paku putih menunjukkan posisi akhir dari objek tersebut

citra A citra B

3. OPERASI LOGIKA • Beberapa operasi logika dapat diterapkan pada 2 atau lebih citra, yaitu :

AND OR XOR 0 0 0 0 0 0 1 0 1 1 1 0 0 1 1 1 1 1 1 0

C(x,y) = A(x,y) AND B(x,y) C(x,y) = A(x,y) OR B(x,y) C(x,y) = A(x,y) XOR B(x,y) C(x,y) = A(x,y) SUB B(x,y) C(x,y) = NOT A(x,y)

• Operasi SUB mirip dengan operasi pengurangan, tetapi jika hasilnya negatif maka hasilnya

diganti dengan 0 A – B jika A ≥ B A SUB B =

0 jika A < B

citra A citra B A AND B

citra A citra B A OR B

citra A citra B A XOR B citra A

NOT A citra A citra B A SUB B

Page 23: Pengolahan Citra

23

OPERASI GLOBAL • Proses yang dilakukan bergantung pada karakteristik global dari citra yang hendak dimodifikasi • Karakteristik tersebut biasanya berupa sifat statistik dari citra itu sendiri yang direpresentasikan

dengan histogram tingkat keabuan = mempertimbangkan keseluruhan titik pada citra tersebut. • Salah satu operasi global adalah Ekualisasi Histogram (Histogram Equalization) EKUALISASI HISTOGRAM (Histogram Equalization)

• = adalah suatu proses perataan histogram, dimana distribusi nilai derajat keabuan pada suatu citra dibuat rata.

• Proses ekualisasi histogram secara ideal :

Histogram citra hasil yang ideal

Ekualisasi

0 255

Histogram citra asli

• Pada gambar diatas, histogram citra hasil yang ideal memiliki jumlah titik yang sama untuk setiap tingkat keabuan, jadi distribusi titik dalam citra asli harus disebarkan secara lebih merata ke seluruh nilai keabuan.

⎟⎟⎠

⎞⎜⎜⎝

⎛ −=

hwC

roundKk

io .

)12( . • Rumus yang digunakan untuk citra dengan skala keabuan k bit, misal 8 bit :

Ci = cacah/distribusi kumulatif nilai skala keabuan ke – i dari citra asli round = fungsi pembulatan ke bilangan terdekat, misal : 35,4 menjadi 35 Ko = nilai keabuan hasil histogram equalization w = lebar citra h = tinggi citra

Contoh : Misal diketahui beberapa nilai piksel/nilai skala keabuan sebagai berikut : 2 4 3 1 3 6 4 3 1 0 3 2 Maka histogram dari data diatas adalah :

3

4

1

2 0 0 1 2 3 4 5 6

Proses perhitungan cacah / distribusi kumulatif : Nilai skala keabuan Frekuensi Distribusi kumulatif

0 1 1 1 2 1+2=3 2 2 3+2 = 5 3 4 5+4 = 9 4 2 9 + 2 = 11 5 0 11 + 0 = 11 6 1 11 + 1 = 12

Page 24: Pengolahan Citra

24

Hasil Histogram Ekualization Nilai skala keabuan Distribusi

kumulatif Nilai keabuan setelah

perhitungan rumus, misal : 0 1 0 1 3 1 2 5 2 3 9 4 4 11 5 5 11 5 6 2 6

Data nilai piksel/nilai skala keabuan diatas setelah ekualisasi histogram menjadi : 2 5 4 1 4 6 5 4 1 0 4 2 Hisogramnya : 4

3

2

1 0 0 1 2 3 4 6 5 Contoh :

Page 25: Pengolahan Citra

25

OPERASI BERTETANGGA / PERSEKITARAN (Neighborhood Operation)

• Sebuah citra yang ideal, apabila mampu mencerminkan kondisi sesungguhnya dari suatu obyek.

• Mempunyai hubungan satu-satu (one to one), satu titik pada obyek dipetakan tepat satu pixel di citra digital.

Korespodensi one to one antara obyek dan citra digital • Tetapi pada kenyataannya, hubungan yang ada antara titik dalam obyek dengan titik pada citra

digital adalah hubungan satu ke banyak (one to many) dan banyak ke satu (many to one). • Ini dikarenakan :

sinyal yang dikirim oleh obyek citra mengalami penyebaran (divergensi), sehingga yang diterima oleh sensor atau detector tidak lagi berupa suatu titik, namun berupa luasan.

Atau sebaliknya satu titik pada sensor atau detector dapat menerima banyak sinyal dari beberapa bagian.

Hubungan sesungguhnya antara obyek citra dan citra digital

• Operasi citra digital yang berhubungan dengan kondisi diatas disebut operasi

persekitaran/bertetangga (neighborhood operation).

• Operasi persekitaran/bertetangga pada dasarnya adalah hubungan antara citra dengan sebuah filter (mask / kernel)

• Nilai dari filter/mask merupakan bobot kontribusi titik persekitaran terhadap operasi persekitaran.

Page 26: Pengolahan Citra

26

250 240 200 180

∑ ∑−= −=

++=M

M x

N

N y v)yu,g(x . v)f(u, y)h(x,

240 200 180 150 180 160 160 200 180 140 120 120 160 130 100 100

1 0 -1 2 1 -2 1 0 -1

Formula yang dipakai SUM OF PRODUCTS : x,y,u,v : posisi titik di dalam citra m,n : batas titik tetangga yang masih memberikan pengaruh ke titik yang sedang ditinjau untuk

arah horisontal dan vertikal. Misal dari ilustrasi diatas, nilai pixel semula 160 menjadi :

h(x,y) = 1*200 + 0*180 – 1*150 + 2*160 + 1*160 – 2*200 + 1*140 + 0*120 – 1*120 = 150

• Beberapa pengolahan citra yang berkaitan dengan operasi ini adalah :

1. Deteksi Tepi (Edge Detection) 2. Penghalusan Citra (Smoothing) 3. Penajaman Citra (Sharping) 4. Reduksi Noise 5. Efek Emboss

1. DETEKSI TEPI (Edge Detection)

• Operasi ini digunakan untuk menentukan lokasi titik-titik yang merupakan tepi obyek citra. • Secara umum, tepi suatu obyek dalam citra dinyatakan sebagai titik yang nilai warnanya

berbeda cukup besar dengan titik yang ada disebelahnya. • Ada beberapa mask yang telah dirancang untuk deteksi tepi yaitu operator gradien yang terdiri

dari : Robert

Operator Robert diagonal 1 1 0 0 – 1

Operator Robert diagonal 2

0 1 – 1 0

Prewitt

Operator Prewitt horisontal – 1 0 1 – 1 0 1 – 1 0 1

Operator Prewitt vertikal

– 1 – 1 – 1 0 0 0 1 1 1

Bobot/mask/ kernel/filter

Page 27: Pengolahan Citra

27

Sobel Operator Sobel horisontal

–1 0 1 – 2 0 2 – 1 0 1

Operator Sobel vertikal

– 1 – 2 – 1 0 0 0 1 2 1

Isotropik

Operator Isotropik horisontal

– 1 0 1 – √2 0 √2 – 1 0 1

Operator Isotropik vertikal

– 1 – √2 – 1 0 0 0 1 √2 1

Kombinasi antar kedua hasil operasi dengan mask tersebut bisa dilakukan dengan mengambil hasil penjumlahan, nilai maksimum, rerata atau rerata geometri.

K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) (1) K0(x,y) = max ( | K1(x,y) | , | K2(x,y) | ) (2) K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) / 2 (3) K0(x,y) = √ K1(x,y)* K1(x,y) + K2(x,y) * K2(x,y) (4)

Dengan K1(x,y) dan K2(x,y) adalah hasil operasi dengan mask 1 dan mask 2. Dalam praktek, formula (1) dan (2) biasanya lebih disukai dan lebih mudah dikerjakan karena mengandung jumlah operasi aritmetika yang lebih sedikit.

Operator Laplacian

Operator lain yang dapat digunakan untuk mendeteksi tepi adalah operator Laplacian. Operator ini dapat digunakan untuk horisontal dan vertikal.

0 –1 0

–1 4 –1 0 –1 0

Laplacian 5 titik

–1 –1 –1 –1 8 –1 –1 –1 –1

Laplacian 9 titik I

–2 1 –2 1 4 1

–2 1 –2 Laplacian 9 titik II

Page 28: Pengolahan Citra

28

Contoh :

f(2,2) = 160

Roberts Diagonal1 = K1(x,y) = | (1*160) + (0*150) + (0*120) + (–1*120) | = 40

atau pakai cara praktis |160 – 120 | = 40 Diagonal2 = K2(x,y) = | (0*160) + (1*150) + (–1*120) + (0*120) | = 30

atau pakai cara praktis |150 – 120 | = 30 Maka h(2,2) bila menggunakan :

K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) = 40 + 30 = 70 K0(x,y) = max ( | K1(x,y) | , | K2(x,y) | ) = 40 K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) / 2 = (40 + 30)/2 = 35 K0(x,y) = √ K1(x,y)* K1(x,y) + K2(x,y) * K2(x,y) = √ (40*40)+(30*30) = 50

Prewitt

Horisontal = K1(x,y) = | (–1*200) + (–1*160) + (–1*140) + (1*150) + (1*150) + (1*120) | = | – 80 | = 80

Vertikal = K2(x,y) = | (–1*200) + (–1*180) + (–1*150) + (1*140) + (1*120) + (1*120) | = | – 150 | = 150 Maka h(2,2) bila menggunakan :

K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) = 80 + 150 = 230 K0(x,y) = max ( | K1(x,y) | , | K2(x,y) | ) = 150 K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) / 2 = (80 + 150)/2 = 115 K0(x,y) = √ K1(x,y)* K1(x,y) + K2(x,y) * K2(x,y) = √ (80*80)+(150*150) = 170

Sobel Horisontal = K1(x,y) = | (–1*200) + (–2*160) + (–1*140) + (1*150) + (2*150) + (1*120) |

= | – 90 | = 90 Vertikal = K2(x,y) = | (–1*200) + (–2*180) + (–1*150) + (1*140) + (2*120) + (1*120) |

= | – 210 | = 210 Maka h(2,2) bila menggunakan :

K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) = 90 + 210 = 300 ≈ 255 K0(x,y) = max ( | K1(x,y) | , | K2(x,y) | ) = 210 K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) / 2 = (90 + 210)/2 = 150 K0(x,y) = √ K1(x,y)* K1(x,y) + K2(x,y) * K2(x,y) = √ (90*90)+(210*210)

= 228,4 ≈ 228

Isotropik Horisontal = K1(x,y) = |(–1*200) + (–√2*160) + (–1*140) + (1*150) + (√2*150) + (1*120)|

= | – 84 | = 84 Vertikal = K2(x,y) = |(–1*200) + (–√2*180) + (–1*150) + (1*140) + (√2*120) + (1*120)|

= | – 177 | = 177 Maka h(2,2) bila menggunakan :

K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) = 84 + 177 = 261 ≈ 255 K0(x,y) = max ( | K1(x,y) | , | K2(x,y) | ) = 177 K0(x,y) = ( | K1(x,y) | + | K2(x,y) | ) / 2 = (84 + 177)/2 = 130,5 ≈ 131 K0(x,y) = √ K1(x,y)* K1(x,y) + K2(x,y) * K2(x,y) = √ (84*84)+(177*177)

= 195,9 ≈ 196

250 240 200 200 180

240 200 180 150 150

160 180 160 150 120

180 140 120 120 100

160 130 100 80 60

Page 29: Pengolahan Citra

29

Laplacian 9 titik I K1(x,y) = | (–1*200) + (–1*180) + (–1*150) + (–1*160) + (8*160) + (–1*150) +

(–1*140) + (–1*120) + (–1*120) | = 60

Maka h(2,2) = 60 Prewitt dengan

nilai maksimum Roberts dengan nilai maksimum

citra asli

Sobel dengan nilai maksimum

Isotropik dengan nilai maksimum

Laplacian dengan 9 titik I

2. PENGHALUSAN CITRA (Smoothing)

• Penghalusan citra dilakukan dengan memberikan nilai yang sama kepada semua bobot pada mask yang digunakan.

• Mask yang dapat dipakai :

1/25 1/25 1/25 1/25 1/25

1/25 1/25 1/25 1/25 1/25

1/25 1/25 1/25 1/25 1/25

1/25 1/25 1/25 1/25 1/25

1/25 1/25 1/25 1/25 1/25

1/5

1/5 1/5 1/5

1/5

1/9

1/9 1/91/9

1/91/9

1/9

1/9

1/9

5 titik bertetangga 9 titik bertetangga (3 x 3)

25 titik bertetangga (5 x 5)

Contoh : f(2,2) = 160 Bila menggunakan mask 5 titik bertetangga maka h(2,2) = (1/5 * 180) + (1/5 * 160) + (1/5 * 160) +

(1/5 * 150) + (1/5 * 120) = 154

Bila menggunakan mask 3 x 3 maka h(2,2) = (1/9 * 200) + (1/9 * 180) + (1/9 * 150) +

(1/9 * 160) + (1/9 * 160) + (1/9 * 150) + (1/9 * 140) + (1/9 * 120) + (1/9 * 120)

= 153,3 ≈ 153

250 240 200 200 180

240 200 180 150 150

160 180 160 150 120

180 140 120 120 100

160 130 100 80 60

Page 30: Pengolahan Citra

30

3. PENAJAMAN CITRA (Sharping) • Operasi penajaman citra pada dasarnya penjumlahan atas citra tepi (hasil dari deteksi tepi)

dengan citra aslinya, sehingga bagian tepi objek terlihat lebih berbeda dengan latarnya dan citra terkesan lebih tajam

• Mask yang dapat dipakai :

citra asli citra hasil dengan mask 3 x 3

1 + 4α

– α

– α – α

– α

0 0

0

5 titik 9 titik

• Banyaknya penambahan komponen citra tepi diatur dengan suatu nilai derajat penajaman (α),

sehingga dengan mengatur nilai α maka tingkat ketajaman citra dapat disesuaikan dengan keinginan kita

f(2,2) = 160 , α = 1 Bila menggunakan mask 5 titik maka h(2,2) = (0 * 200) + (–1 * 180) + (0 * 150) +

(–1 * 160) + ((1+4(1)) * 160) + (–1 * 150) + (0 * 140) + (–1 * 120) + (0 * 120)

= 190

Bila menggunakan mask 9 titik maka h(2,2) = (–1 * 200) + (–1 * 180) + (–1 * 150) +

(–1 * 160) + ((1+8(1)) * 160) + (–1 * 150) + (–1 * 140) + (–1 * 120) + (–1 * 120)

= 220

0

1 + 8α

– α

– α – α

– α

– α – α

– α – α

250 240 200 200 180

240 200 180 150 150

180 160 160 150 120

180 140 120 120 100

160 130 100 80 60

citra asli citra hasil dengan mask 5 titik

α = 1

citra hasil dengan mask 9 titik

α = 1

Page 31: Pengolahan Citra

31

4. REDUKSI NOISE • Banyak cara untuk reduksi noise, salah satunya dengan operasi median • Nilai keabuan dari titik-titik di dalam jendela diurutkan dari nilai terkecil sampai dengan

terbesar, kemudian ditentukan mediannya • Nilai median adalah nilai yang berada paling tengah dari urutan. • Operasi median dapat menggunakan mask tanpa bobot dengan ukuran sesuai yang dikehendaki,

misal 3 x 3 , 5 x 5 , 7 x 7 , atau 1 x 5, 5 x 3, dll

f(2,2) = 160 Bila menggunakan operasi median 3 x 3 maka h(2,2) = median (120,120,140,150,150,160,160,180,200)

= 150 5. EFEK EMBOSS

• Efek emboss = kesan timbul pada objek dalam citra • Mask yang dapat digunakan :

dari arah kiri dari arah kanan atas

• Parameter β (derajat emboss) digunakan untuk mengatur seberapa banyak efek timbul akan diberikan

f(2,2) = 160 , β = 2 Bila menggunakan mask dari arah kiri maka h(2,2) = (–2 * 200) + (0 * 180) + (2 * 150) +

(–2 * 160) + (1 * 160) + (2 * 150) + (–2 * 140) + (0 * 120) + (2 * 120)

= 0

Bila menggunakan mask dari arah kanan atas maka h(2,2) = (0 * 200) + (–2 * 180) + (–2 * 150) +

(2 * 160) + (1 * 160) + (–2 * 150) + (2 * 140) + (2 * 120) + (0 * 120)

= 40

1

0

β – β

0

– β β

– β β

1

– β

– β β

β

0 – β

β 0

250 240 200 200 180

240 200 180 150 150

180 160 160 150 120

180 140 120 120 100

160 130 100 80 60

250 240 200 200 180

240 200 180 150 150

180 160 160 150 120

180 140 120 120 100

160 130 100 80 60

citra hasil dengan reduksi noise operasi median 3 x 3

citra asli ada noise

Page 32: Pengolahan Citra

32

citra hasil dengan mask dari arah kanan atas

β = 2

citra hasil dengan mask dari arah kiri

β = 2

citra asli

Page 33: Pengolahan Citra

33

PEMAMPATAN CITRA (IMAGE COMPRESSION) • Semakin besar ukuran citra, semakin besar memori yang dibutuhkan. Namun kebanyakan citra

mengandung duplikasi data, yaitu : - suatu piksel memiliki intensitas yang sama dengan dengan piksel tetangganya, sehingga

penyimpanan setiap piksel memboroskan tempat - citra banyak mengandung bagian (region) yang sama, sehingga bagian yang sama ini tidak perlu

dikodekan berulangkali karena mubazir atau redundan Contoh : citra langit biru dengan beberapa awan putih banyak intensitas piksel dan region yang

sama • Pemampatan citra / kompresi citra bertujuan meminimalkan kebutuhan memori untuk

merepresentasikan citra digital dengan mengurangi duplikasi data di dalam citra sehingga memori yang dibutuhkan menjadi lebih sedikit daripada representasi citra semula.

• Manfaat kompresi citra :

- Waktu pengiriman data pada saluran komunikasi data lebih singkat Contoh : pengiriman gambar dari fax, videoconferencing, handphone, download dari internet, pengiriman data medis, pengiriman dari satelit, dsb

- Membutuhkan ruang memori dalam storage lebih sedikit dibandingkan dengan citra yang tidak dimampatkan

• Metode kompresi yang diharapkan :

- Proses kompresi dan dekompresinya cepat Proses kompresi : citra dalam representasi tidak mampat dikodekan dengan representasi yang meminimumkan kebutuhan memori. Citra terkompresi disimpan dalam file dengan format tertentu, misal JPEG (Joint Photographic Experts Group)

proses dekompresi : citra yang sudah dimampatkan dikembalikan lagi (decoding) menjadi representasi yang tidak mampat. Diperlukan bila citra tersebut ditampilkan ke layar / disimpan dalam format tidak mampat (bentuk bitmap(BMP))

- Memori yang dibutuhkan seminimal mungkin

Ada metode yang berhasil kompresi dengan persentase besar, ada yang kecil. Ukuran memori hasil kompresi juga bergantung pada citra itu sendiri, yaitu citra yang mengandung banyak elemen duplikasi biasanya berhasil dikompresi dengan memori yang lebih sedikit. Contoh : citra langit biru tanpa awan dibandingkan dengan citra pemandangan alam (mengandung banyak objek)

- Kualitas citra hasil kompresi harus bagus (fidelity) Informasi yang hilang akibat kompresi seharusnya seminimal mungkin sehingga kualitas hasil kompresi bagus. Tetapi biasanya kualitas kompresi bagus bila proses kompresi menghasilkan pengurangan memori yang tidak begitu besar, demikian sebaliknya. Mengukur kualitas hasil kompresi dengan PSNR (peak signal – to – noise ratio)

∑∑= =

−=

⎟⎠⎞

⎜⎝⎛=

N

i

M

jijij ff

artinggixlebrms

rmsb x PSNR

1 1

2

10

)'(1

log20

b = sinyal terbesar (pada citra hitam putih, b = 255) rms = akar pangkat dua dari selisih antara citra semula dengan citra hasil kompresi f = nilai piksel citra semula f’ = nilai piksel citra kompresi PSNR memiliki satuan decibel (dB). Semakin besar PSNR, semakin bagus kualitas kompresi.

- proses transfer dan penyimpanannya mudah

Page 34: Pengolahan Citra

34

• Pendekatan yang digunakan untuk kompresi : 1. Pendekatan statistik (statistical compression) 2. Pendekatan ruang (spatial compression) 3. Pendekatan kuantisasi (quantizing compression) 4. Pendekatan fraktal (fractal compression) : tidak dibahas 5. Pendekatan transformasi wavelet (wavelet compression) : tidak dibahas

• Berdasarkan hasilnya, ada 2 kelompok besar metode kompresi :

%)100aslicitraukuran kompresi hasil citraukuran (%100 xRatio −=

1. Lossless Compression Kompresi citra dimana hasil dekompresi dari citra yang terkompresi sama dengan citra aslinya, tidak ada informasi yang hilang. Sayangnya ratio kompresi citra metode ini sangat rendah. Metode ini cocok untuk kompresi citra yang mengandung informasi penting yang tidak boleh rusak akibat kompresi, misal kompresi citra hasil diagnosa medis.

2. Lossy Compression

Kompresi citra dimana hasil dekompresi dari citra yang terkompresi tidak sama dengan citra aslinya karena ada informasi yang hilang, tetapi masih bisa ditolerir oleh persepsi mata. Mata tidak dapat membedakan perubahan kecil pada gambar. Metode ini menghasilkan ratio kompresi yang lebih tinggi daripada metode lossless.

1. STATISTICAL COMPRESSION (Metode Huffman)

• Termasuk metode lossless compression • Pengkodean citra berdasarkan pada derajat keabuan (gray level) dari piksel-piksel dalam

keseluruhan image • Nilai atau derajat keabuan yang sering muncul di dalam citra akan dikodekan dengan jumlah bit

yang lebih sedikit sedangkan nilai keabuan yang frekuensi kemunculannya sedikit dikodekan dengan jumlah bit yang lebih panjang.

• Algoritma metode Huffman : 1. Urutkan secara menaik nilai keabuan berdasarkan frekuensi kemunculannya atau peluang

kumunculan yaitu frekuensi kemunculan dibagi dengan jumlah piksel dalam citra (pk = nk/n). Setiap nilai keabuan dinyatakan sebagai pohon bersimpul tunggal dan setiap simpul diassign dengan frekuensi kemunculan nilai keabuan tersebut.

2. Gabung 2 buah pohon yang mempunyai frekuensi kemunculan paling kecil pada sebuah akar. Akar mempunyai frekuensi yang merupakan jumlah dari frekuensi 2 pohon penyusunnya. Perhatikan : frekuensi dengan nilai lebih kecil diletakkan di sisi kiri

3. Ulangi langkah 1 dan 2 sampai tersisa 1 pohon biner. 4. Beri label setiap sisi pada pohon biner, label sisi kiri = 0, label sisi kanan = 1. 5. Telusuri pohon biner dari akar ke daun. Barisan label-label sisi dari akar ke daun

menyatakan kode Huffman untuk derajat keabuan yang bersesuaian.

• Contoh : citra ukuran 64 x 64 dengan 8 derajat keabuan (k) jumlah seluruh piksel (n) = 64 x 64 = 4096

K nk P(k) = nk/n 0 790 0.19 1 1023 0.25 2 850 0.21 3 656 0.16 4 329 0.08 5 245 0.06 6 122 0.03 7 81 0.02

Langkah 1 :

0 : 0,19 2 : 0,21 1 : 0,25

7 : 0,02 6 : 0,03 5 : 0,06 4 : 0,08 3 : 0,16

Page 35: Pengolahan Citra

35

Langkah 2 :

7 : 0,02 6 : 0,03

76 : 0,05 5 : 0,06 4 : 0,08 3 : 0,16 2 : 0,21 1 : 0,250 : 0,19

Langkah 3 : Ulangi langkah 1 & 2 sampai tersisa 1 pohon biner

Ingat, frekuensi yang lebih kecil diletakkan di sisi kiri

76 : 0,05

7 : 0,02 6 : 0,03

5 : 0,06

765 : 0,11 4 : 0,08 3 : 0,16 2 : 0,21 1 : 0,25 0 : 0,19

76 : 0,05

7 : 0,02 6 : 0,03

0 : 0,19 1 : 0,25 2 : 0,213 : 0,16 4765 : 0,19

4 : 0,08 765 : 0,11

5 : 0,06

4765 : 0,19

34765 : 0,35

3 : 0,16

0 : 0,19 2 : 0,21 1 : 0,25

7 : 0,02 6 : 0,03

76 : 0,05

765 : 0,11

5 : 0,06

4 : 0,08 Dengan formasi seperti diatas, pilih 2 frekuensi terkecil, kemudian gabungkan dan urutkan secara menaik.

Page 36: Pengolahan Citra

36

76 : 0,05

7 : 0,02 6 : 0,03

5 : 0,06

765 : 0,11 4 : 0,08

4765 : 0,19 3 : 0,16

34765 : 0,35

2 : 0,21

1 : 0,25

0 : 0,19

76 : 0,05

7 : 0,02 6 : 0,03

5 : 0,06

765 : 0,11 4 : 0,08

4765 : 0,19 3 : 0,16

34765 : 0,351 : 0,25

134765 : 0,60

2 : 0,21 0 : 0,19

34765 : 0,351 : 0,25

134765 : 0,60

2 : 0,21

02 : 0,40

02134765 : 1

0 : 0,19

4765 : 0,19 3 : 0,16

4 : 0,08

76 : 0,05

765 : 0,11

5 : 0,06

02 : 0,40

02 : 0,40

7 : 0,02 6 : 0,03 Karena sudah tersisa 1 pohon, lakukan langkah 4.

Page 37: Pengolahan Citra

37

Langkah 4 : Beri label 0 untuk sisi kiri, sisi kanan label 1

10%sebanyak n dimampatka telah semula citra artinya 10%,

%)1001228811053(%100

%)100asli citraukuran kompresi hasil citraukuran (%100 kompresi Ratio

=

−=

−=

x

x

Langkah 5 : Telusuri pohon biner dari akar ke daun untuk menentukan kode Huffman yang sesuai dengan derajat keabuan.

Derajat keabuan Kode Huffman Ukuran Banyaknya piksel

0 00 2 bit 790 1 10 2 bit 1023 2 01 2 bit 850 3 110 3 bit 656 4 1110 4 bit 329 5 11111 5 bit 245 6 111101 6 bit 122 7 111100 6 bit 81

Ukuran citra setelah kompresi = (790 x 2 bit) + (1023 x 2 bit) + (850 x 2 bit) + (656 x 3 bit) +

(329 x 4 bit) + (245 x 5 bit) + (122 x 6 bit) + (81 x 6 bit) = 11053 bit

Ukuran citra sebelum kompresi = 4096 piksel x 3 bit = 12288 bit

76 : 0,05

7 : 0,02 6 : 0,03

5 : 0,06

765 : 0,11 4 : 0,08

4765 : 0,19 3 : 0,16

34765 : 0,35 1 : 0,25

134765 : 0,60

2 : 0,210 : 0,19

02 : 0,40

02134765 : 1

0

0 0

0

0

0

0

1

1 1

1

1

1

1

Tiap piksel berukuran 3 bit, diperoleh dari 2 3 = 8 derajat keabuan (nilai intensitas piksel 0 s/d 7) Misal 256 derajat keabuan berarti nilai intensitas piksel 0 s/d 255, tiap piksel berukuran 8 bit (1 byte ) diperoleh dari 2 8 = 256

Page 38: Pengolahan Citra

38

2. SPATIAL COMPRESSION (Metode Run Length Encoding / RLE) • Cocok digunakan untuk memampatkan citra yang memiliki kelompok-kelompok piksel

berderajat keabuan yang sama • Metode ini dilakukan dengan menyatakan seluruh baris citra menjadi sebuah baris run, lalu

menghitung run – length untuk setiap derajat keabuan yang berurutan • Contoh sebuah citra sebagai berikut :

1 2 1 1 1 1 1 3 4 4 4 4 1 1 3 3 3 5 1 1 1 1 3 3

- Dinyatakan dalam barisan nilai derajat keabuan :

1 2 1 1 1 1 1 3 4 4 4 4 1 1 3 3 3 5 1 1 1 1 3 3 ada 24 nilai

- Hitung run-length untuk setiap derajat keabuan yang berurutan yaitu hitung jumlah kemunculan datanya (1,1) (2,1) (1,5) (3,1) (4,4) (1,2) (3,3) (5,1) (1,4) (3,2)

- Hasil pengkodean

1 1 2 1 1 5 3 1 4 4 1 2 3 3 5 1 1 4 3 2 ada 20 nilai, jadi berkurang 4 nilai

• Metode RLE dapat dikombinasikan dengan metode Huffman untuk meningkatkan ratio kompresi. Mula-mula lakukan kompresi RLE lalu hasilnya dimampatkan lagi dengan Huffman.

3. QUANTIZING COMPRESSION

• Termasuk metode lossy compression karena mereduksi jumlah derajat keabuan yang ada pada citra sehingga banyak informasi yang hilang, misal dari 256 menjadi 16.

• Algoritma kuantisasi : 1. Misal P adalah jumlah piksel dalam citra semula, buat histogram citra semula (citra yang

akan dikompresi) 2. Identifikasi n kelompok di dalam histogram sehingga setiap kelompok mempunyai kira-kira

P/n buah piksel 3. Nyatakan setiap kelompok dengan derajat keabuan 0 sampai n-1. Setiap piksel di dalam

kelompok dikodekan kembali dengan nilai derajat keabuan yang baru. • Contoh : citra 5 x 13, 16 derajat keabuan (4 bit)

2 9 6 4 8 2 6 3 8 5 9 3 7 3 8 5 4 7 6 3 8 2 8 4 7 3 3 8 4 7 4 9 2 3 8 2 7 4 9 3 9 4 7 2 7 6 2 1 6 5 3 0 2 0 4 3 8 9 5 4 7 1 2 8 3

Langkah 1 : Banyaknya piksel citra = 65 Buat histogramnya :

Derajat keabuan Jumlah piksel 0 2 1 2 2 9 3 11 4 9 5 4 6 5 7 8 8 9 9 6

Page 39: Pengolahan Citra

39

Langkah 2 : Misal akan dikompresi dari 16 menjadi 4 derajat keabuan (2 bit) yaitu nilai keabuan 0 s/d 3, maka dibuat n buah kelompok yaitu 4. Tiap kelompok rata-rata ada 65/4 = 16,25 piksel (bisa lebih bisa kurang)

Kelompok Nilai keabuan

Jumlah piksel

Jumlah piksel dalam kelompok

1 0 2 13 1 2 2 9

2 3 11 20 4 9

3 5 4 17 6 5 7 8

4 8 9 15 9 6

Langkah 3 : Setiap piksel didalam kelompok dikodekan dengan nilai keabuan yang baru yaitu 0 s/d 3

Kelompok Nilai

keabuan lama Nilai

keabuan baru 1 0 0 1 2

2 3 1 4

3 5 2 6 7

4 8 3 9

Citra setelah kompresi :

0 3 2 1 3 0 2 1 3 2 3 1 2 1 3 2 1 2 2 1 3 0 3 1 2 1 1 3 1 2 1 3 0 1 3 0 2 1 3 1 3 1 2 0 2 2 0 0 2 2 1 0 0 0 1 1 3 3 2 1 2 0 0 3 0

50%sebanyak n dimampatka telah semula citra artinya 50%,

%)100260130(%100

%)100asli citraukuran kompresi hasil citraukuran (%100 kompresi Ratio

=

−=

−=

x

x

citra setelah kompresi dengan metode lossy, citra asli ada sedikit perubahan, lebih jelas citra asli

Page 40: Pengolahan Citra

40

SEGMENTASI • Dalam melakukan pengenalan sebuah objek di antara banyak objek dalam citra, komputer harus

melakukan proses segmentasi terlebih dahulu. • Segmentasi =

- memisahkan citra menjadi bagian-bagian yang diharapkan merupakan objek-objek tersendiri. - membagi suatu citra menjadi wilayah-wilayah yang homogen berdasarkan kriteria keserupaan

tertentu antara derajat keabuan suatu piksel dengan derajat keabuan piksel-piksel tetangganya. Citra hasil segmentasi Citra asli • Ada bermacam-macam teknik segmentasi, semuanya digolongkan dalam 2 jenis berdasarkan cara

kerjanya, yaitu : 1. Segmentasi berdasarkan intensitas warna (derajat keabuan) 2. Segmentasi berdasarkan karakteristik

1. SEGMENTASI BERDASARKAN INTENSITAS WARNA

• Berasumsi bahwa objek-objek yang akan dipisahkan cenderung memiliki intensitas warna yang berbeda-beda dan masing-masing objek memiliki warna yang hampir seragam

• Salah satu teknik segmentasi berdasarkan intensitas warna adalah mean clustering • Pada mean clustering dilakukan pembagian citra dengan membagi histogram citra • Berikut langkah-langkahnya :

1. Cari intensitas maksimum dan minimum yang digunakan dalam citra 2. Dari intensitas minimum ke maksimum dilakukan pembagian sejumlah N. N ini

menentukan jumlah objek yang diharapkan ada pada gambar. 3. Setelah dilakukan pembagian, histogram akan terbagi menjadi bagian-bagian yang disebut

cluster (kelompok). Kemudian pada citra dilakukan penelusuran untuk seluruh titik, setiap titik akan digrupkan ke cluster terdekat sehingga hasil akhir dari proses ini adalah jumlah warna pada gambar menjadi N.

4. Cari hasil rata-rata / mean dari seluruh titik pada setiap cluster, kemudian mengganti warna seluruh titik dalam cluster-cluster tersebut dengan rata-rata dari cluster masing-masing.

Min Max Cluster 1 Cluster 2 Cluster 3

Pembagian histogram citra menjadi 3 cluster (N = 3)

Hasil akhir dari proses clustering, seluruh titik pada tiap cluster diganti dengan rata-rata dari cluster sehingga menghasilkan citra dengan 3 (N) warna

Max Min Cluster 1 Cluster 2 Cluster 3

Page 41: Pengolahan Citra

41

• Kelemahannya : - Harus tahu dengan tepat berapa jumlah objek yang ada pada citra - Citra hasil kurang bagus jika pada citra terdapat beberapa objek dengan warna pada masing-

masing objeknya bervariasi atau pada setiap objek memiliki warna yang sama. 2. SEGMENTASI BERDASARKAN KARAKTERISTIK

• Cara lain yang biasa digunakan adalah berdasarkan karakteristik objek pada citra • Yaitu mengelompokkan bagian-bagian citra yang memiliki karakteristik yang sama berupa

perubahan warna antara titik yang berdekatan, nilai rata-rata dari bagian citra tersebut. • Untuk menghitung/menentukan karakteristik digunakan perhitungan statistik seperti varian,

standard deviasi, teori probabililitas, fourier transform, dll • Salah satu teknik segmentasi berdasarkan karakteristik adalah split and merge (membagi

kemudian menggabungkan) • Berikut langkah-langkahnya :

1. Bagi citra menjadi 4 bagian 2. Dari 4 bagian tersebut dilakukan perhitungan karakteristik masing-masing. 3. Bagian dari citra yang memiliki karakteristik yang sama akan digabungkan dan dianggap

satu bagian, sedangkan yang tidak, akan dibagi lagi menjadi 4 bagian dan dilakukan perhitungan karakteristik dan dilakukan lagi proses penggabungan bagian yang sama. Demikian seterusnya sehingga diperoleh hasil dari proses segmentasi

• Proses tersebut adalah proses rekursif karena pada setiap saat dilakukan proses yang sama tetapi dengan data yang selalu berubah

Daerah yang terdeteksi memiliki karakteristik yang sama adalah daerah yang diarsir.

Citra asli Saat proses split & merge

Citra hasil

Page 42: Pengolahan Citra

42

STEGANOGRAFI DAN WATERMAKING • Steganografi (steganography) = teknik menyembunyikan data rahasia di dalam media digital

sehingga keberadaan data rahasia tersebut tidak diketahui oleh orang / sulit dideteksi • Media digital sebagai wadah penampung bisa berupa citra, suara, teks, video

Data rahasia yang disembunyikan bisa berupa citra, suara, teks, video • Watermaking pada citra adalah aplikasi dari steganografi dimana citra digital diberi suatu penanda

yang menunjukkan label kepemilikan citra tersebut. • Perbedaan steganografi & watermaking

Steganografi : informasi rahasia disembunyikan dalam media digital dimana media penampung tidak berarti apa-apa Watermaking : yang dilindungi adalah media penampungnya (media digital), dilindungi kepemilikannya dengan pemberian label hak cipta (watermark)

• Sejarah steganografi & watermaking - Penguasa Yunani mengirimkan pesan rahasia menggunakan kepala budak/prajurit sebagai

media. Kepala budak/prajurit dibotaki, pesan rahasia ditulis pada kepalanya. Ketika rambut sudah tumbuh, orang tersebut diutus untuk membawa pesan rahasia di kepalanya.

- Bangsa Romawi menggunakan tinta tak tampak untuk menuliskan pesan, terbuat dari campuran sari buah, susu, dan cuka. Jika tinta digunakan untuk menulis maka tulisannya tidak tampak. Tulisan diatas kertas dapat dibaca dengan cara memanaskan kertas tersebut.

- Akhir abad 13, pabrik kertas di Italia membuat kertas yang diberi watermark (tanda air) dengan cara menekan bentuk cetakan gambar / tulisan pada kertas yang baru setengah jadi. Ketika kertas dikeringkan akan terbentuk suatu kertas yang berwatermark. Biasanya digunakan oleh seniman/sastrawan untuk menulis karya mereka. Kertas yang sudah dibubuhi tanda air tersebut dijadikan identifikasi bahwa karya seni diatasnya adalah milik mereka.

- Pengembangan watermark pada data digital tahun 1990 di Jepang dan Swiss tahun 1993.

• Kriteria penyembunyian data (steganografi) yang bagus : - Fidelity

Setelah penambahan data rahasia, mutu citra penampung tidak jauh berubah, masih terlihat dengan baik. Pengamat tidak mengetahui kalau di dalam citra tersebut terdapat data rahasia.

- Robustness Data yang disembunyikan harus tahan (robust) terhadap berbagai operasi manipulasi yang dilakukan pada citra penampung, seperti pengubahan kontras, penajaman, kompresi, zoom, cropping, dsb. Data yang disembunyikan seharusnya tidak rusak dan tetap valid jika diekstraksi kembali.

- Recovery Data yang disembunyikan harus dapat diambil kembali untuk digunakan lebih lanjut.

• Teknik penyembunyian data

- Dilakukan dengan mengganti bit-bit data di dalam segmen citra dengan bit-bit data rahasia - Banyak metode penyembunyian data diantaranya yang paling sederhana adalah metode

modifikasi LSB (Least Significant Bit Modification) - Pada susunan bit dalam 1 byte (8 bit) ada bit yang paling berarti (Most Significant Bit /

MSB) dan bit yang paling kurang berarti (Least Significant Bit / LSB) - Misal pada byte 11010010

MSB LSB

Penggantian dilakukan pada bit LSB, karena hanya mengubah nilai byte tersebut satu lebih tinggi atau satu lebih rendah dari nilai sebelumnya. Jadi perubahan 1 bit LSB tidak mengubah warna tersebut secara berarti, mata manusia tidak dapat membedakan perubahan yang kecil. Misal segmen piksel-piksel citra sebelum penambahan bit-bit watermark : 00110011 10100010 11100010 01101111 Misal data rahasia 0111, maka setiap bit dari watermark menggantikan posisi LSB dari segmen data citra menjadi :

Page 43: Pengolahan Citra

43

00110010 10100011 11100011 01101111

- Untuk memperkuat penyembunyian data, dipilih susunan byte secara acak. Misal terdapat 50

byte dan 6 bit data yang akan disembunyikan, maka byte yang diganti bit LSBnya dipilih secara acak, misal byte nomor ke 36, 5, 21, 10, 18, 49.

- Bilangan acak dibangkitkan dengan pseudo-random-number-generator (PRNG) PRNG menggunakan kunci rahasia untuk membangkitkan posisi piksel yang akan digunakan untuk menyembunyikan bit-bit. PRNG dibuat menggunakan algoritma kriptografi DES (Data Encryption Standard), algoritma hash MD5, kriptografi CFB (Chiper – Feedback Mode), dsb.

- Tujuan dari enkripsi adalah menghasilkan sekumpulan bilangan acak yang sama untuk setiap kunci enkripsi yang sama.

• Teknik pengungkapan data

- Posisi byte yang menyimpan bit data rahasia diketahui dari bilangan acak yang dibangkitkan oleh PRNG

- Digunakan kunci yang sama untuk membangkitkan bilangan acak - Bilangan acak yang dihasilkan sama dengan bilangan acak yang dipakai pada waktu

penyembunyian data, sehingga bit-bit data rahasia yang bertaburan pada citra dapat dikumpulkan kembali.

Data yang

disembunyikan dalam bentuk citra

Citra terwatermark, terlihat tidak ada perubahan yang berarti

Citra asli

Page 44: Pengolahan Citra

44

REFERENSI 1. Rafael C. Gonzalez and Richard E. Woods, “Digital Image Processing”, Addison-Wesley

Publishing, 2002 2. Ioannis Pitas, “Digital Image Processing Algorithms”, Prentice-Hall International, 1993 3. Rinaldi Munir, “Pengolahan Citra Digital dengan Pendekatan Algoritmik”, Informatika Bandung,

2004 4. Balza Achmad, Kartika Firdausy, “Teknik Pengolahan Citra Digital Menggunakan Delphi”, Ardi

Publishing, 2005 5. Agustinus Nalwan, “Pengolahan Gambar Secara Digital”, Elex Media Komputindo, 1997 6. Achmad Basuki, Jozua F. Palandi, Fatchurrochman, “Pengolahan Citra Digital Menggunakan

Visual Basic”, Graha Ilmu, 2005 7. Edy Mulyanto, “Catatan Kuliah Pengolahan Citra”, Teknik Informatika Udinus, 2007