10/11/2014 CIG4E3 / Pengolahan Citra Digital BAB 3. Pembentukan Citra Digital Digitalisasi Citra Intelligent Computing and Multimedia (ICM) C IG4E3 / P engolahan C itra D igital Proses utama konversi analog ke digital 2 – N & M dot per inch (dpi) – q color depth (jumlah warna yang mungkin untuk tiap pixel) Resolusi: the degree of discernible detail – Semakin besar nilai N, M, dan q, citra digital yang dihasilkan akan semakin mendekati citra aslinya C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 Kuantisasi 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital Jumlah bit yang diperlukan (b): b=NxMxq –digitalisasi koordinat spatial –Nilai-nilai dalam citra kontinyu f(x,y) didekati dengan nilai-nilai diskrit dalam array N x M; biasanya N = 2n & M = 2m –Tiap elemen array picture element (pixel) 3 1 0 /11/2014 Yang dipengaruhi N,M, & q Sampling –digitalisasi amplitudo –Jumlah gray level yang diperbolehkan untuk tiap elemen array = G = 2q berjarak sama pada rentang [0,L] Citra digital 12-CRS-0106 REVISED 8 FEB 2013 1 0 /11/2014 Citra analog / objek / scene Sampling sinyal 1D 4 C IG4E3 / P engolahan C itra D igital 1 0 /11/2014 12-CRS-0106 REVISED 8 FEB 2013 1 12-CRS-0106 REVISED 8 FEB 2013 Digitalisasi Sampling citra (2D) 16 14 Sinyal analog (kontinyu) 12 10 8 Hasil sampling (diskrit) 6 4 16 2 8 6 1 0 /11/2014 12 15 18 6 Y 0 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 C IG4E3 / P engolahan C itra D igital X 9 0 1 0 /11/2014 12-CRS-0106 REVISED 8 FEB 2013 5 3 0 1 10/11/2014 Sinyal analog (kontinyu) 1 Kuantisasi sinyal 1D Contoh sampling: Hasil sampling (diskrit) Level kuantisasi = 2 (q=1) 0 Sinyal analog (kontinyu) 3 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 7 Contoh kuantisasi 1 0 8 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 Hasil sampling (diskrit) Level kuantisasi = 4 (q=2) 2 Ukuran citra digital Scanning 300 dpi 24 bit colors Foto 3R (3.5 inch x 5 inch) 1 0 /11/2014 4-bit 1-bit C IG4E3 / P engolahan C itra D igital • • • 10 Ukuran citra digital (bit) = jml dot (pixel) x jml bit / pixel jml pixel = (3.5 x 300) x (5 x 300) = 1.575.000 bit / pixel 24 bit / pixel Ukuran citra digital = 37.800.000 bit ≈ 4.5 MB C IG4E3 / P engolahan C itra D igital 1 0 /11/2014 12-CRS-0106 REVISED 8 FEB 2013 9 8-bit 12-CRS-0106 REVISED 8 FEB 2013 24-bit Proses Penentuan Warna Ke Layar Untuk file 24 bit Informasi intensitas RGB sudah dapat langsung diketahui dari bitmap data, sedangkan untuk file 1,4,8 bit informasi RGB diperoleh dari Color Map 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital B 0 8 2 0 00001010 00001000 00000010 12 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 11 G Pengubahan menjadi biner lalu cari nilainya dalam decimal (itulah warna dari pixel) 12-CRS-0106 REVISED 8 FEB 2013 SEKILAS FORMAT FILE CITRA BITMAP R 10 2 10/11/2014 Color map Proses Pembacaan Citra 8 bit Citra 1, 4, dan 8 bit per pixel butuh color map Entri dalam color map (palette) biasanya 2, 16, atau 256 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital Proses Pengambilan Warna dari Color MapB G R 0 B G R 0 0 15 R G B 0 56 5 9 1 5 34 67 15 5 34 67 1 15 19 7 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital Menentukan Ukuran File dari Bitmap Yang membedakan antara citra 1,4,8,24 bit adalah ukuran storage yang digunakan untuk menyimpan warna dari 1 buah pixel Misalkan: citra A :200 x 200 pixel 8 15 45 – Hitung berapa minimum byte dari file bitmap yang dihasilkan bila: citra A disimpan dalam 24 bit dan 8 bit • Berarti untuk pixel 1 intensitas RGB : 56 5 9 • Berarti untuk pixel 2 intensitas RGB : 5 34 67 • Berarti untuk pixel 16 intensitas RGB : 5 34 67 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 200 x 200 x 3 + 54 byte = 120054 byte 200 x 200 x 1 + 54 + 256*3 = 40822 byte 12-CRS-0106 REVISED 8 FEB 2013 COLORMAP 14 16 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 13 12-CRS-0106 REVISED 8 FEB 2013 –Bisa lebih sedikit jika citra tidak membutuhkan semua warna yang tersedia 12-CRS-0106 REVISED 8 FEB 2013 Analogi Color Map adalah mengindex warna yang ada kedalam tabel sehingga bitmap data tidak lagi berisi data intensitas RGB namun mengandung index warna Untuk mengetahui warna pixel(x) maka kita mengakses color map dengan index sesuai dengan nilai yang tersimpan pada bitmap data Halftoning 17 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 18 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 HALFTONING & DITHERING 12-CRS-0106 REVISED 8 FEB 2013 Metode untuk ‘mencetak’ sejumlah [besar] warna dengan rentang warna perangkat yang terbatas Saat melihat daerah sempit yang memuat sejumlah pixel, mata akan cenderung merataratakan warna Contoh penggunaan: printer monokrom atau rentang warna yang sangat terbatas 3 10/11/2014 Contoh halftones Grey scale: Halftoned Grey scale: 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital Black & white halftone 20 CMYK halftone 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 19 12-CRS-0106 REVISED 8 FEB 2013 Dot shapes: Grid 2 x 2 pixel, sistem bilevel 5 level intensitas Digital halftoning Pendekatan halftoning dengan pola pixel-grid (rektangular) Jumlah intensitas yang dapat ditampilkan tergantung dari C IG4E3 / P engolahan C itra D igital Grid 3 x 3 pixel, sistem bilevel 10 level intensitas 0 0≤ I <0.1 1 0.1≤ I <0.2 2 0.2≤ I <0.3 3 0.3≤ I <0.4 4 0.4≤ I <0.5 5 0.5≤ I <0.6 6 0.6≤ I <0.7 7 0.7≤ I <0.8 8 0.8≤ I <0.9 10 0.9≤ I ≤1 1 0 /11/2014 2 3 4 0.4≤ I <0.6 0.6≤ I <0.8 0.8≤ I ≤1 C IG4E3 / P engolahan C itra D igital 1 0 /11/2014 Pola pixel grid C IG4E3 / P engolahan C itra D igital Minimasi efek konturing level k+1 evolusi dari level k; sebisa mungkin mulai dari posisi tengah grid Minimasi efek visual lain yang tidak ada di citra asli menghindari pola simetris Contoh: 12-CRS-0106 REVISED 8 FEB 2013 23 22 1 0.2≤ I <0.4 þ 24 1 0 /11/2014 ý ý ý C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 1 0 /11/2014 12-CRS-0106 REVISED 8 FEB 2013 21 0 0≤ I <0.2 12-CRS-0106 REVISED 8 FEB 2013 – Jumlah pixel yang menyusun tiap grid – Jumlah level intensitas yang didukung oleh perangkat Dengan n x n pixel pada sistem bilevel, jumlah intensitas yang bisa didapat = n2+1 4 10/11/2014 Grid 2 x 2 pixel, RGB 3 bit / pixel 125 warna Pola pixel grid 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital Konsekuensi halftoning 26 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 25 12 titik 3 warna Ukuran grid 2 x 2 n=2, 5 level pola Jumlah warna yang bisa dihasilkan = 53 = 125 12-CRS-0106 REVISED 8 FEB 2013 Minimasi efek konturing = mencegah efek efek kontur yang tidak ada dalam citra asli. Pola pixel grid yang simetris akan menyulitkan dalam menghasilkan gradasi warna. Penetuan pola pixel grid merupakan bawaan dari perangkat ( printer dot matrik lebih mahal dibandingkan dengan printer inkjet ). Dithering Penggunaan grid n x n meningkatkan jumlah intensitas yang bisa ditampilkan menurunkan resolusi citra setara 1/n sepanjang sumbu x maupun y. Mengapa ?? Contoh: area tampilan 512 x 512 pixel Teknik untuk melakukan pendekatan halftoning dengan meminimalkan penurunan resolusi – Grid 2 x 2 256 x 256 titik intensitas C IG4E3 / P engolahan C itra D igital Beberapa teknik Dithering C IG4E3 / P engolahan C itra D igital C IG4E3 / P engolahan C itra D igital Citra asli matriks M Citra yang akan ditampilkan matriks I Scan tiap baris pada M: kiri ke kanan, atas ke bawah Tentukan level intensitas yang tersedia yang paling dekat untuk tiap elemen M Perbedaan antara nilai asli pada M dengan nilai yang bisa ditampilkan untuk tiap pixel didistribusikan ke elemen tetangga di M 12-CRS-0106 REVISED 8 FEB 2013 1 0 /11/2014 1 0 /11/2014 Error Diffusion Average dithering: memilih warna pixel yang paling dekat dengan rata-rata warna Ordered dithering: serupa dengan teknik yang digunakan pada halftoning (pixel-grid) Dither noise (random dithering): menambahkan noise (random) ke seluruh pixel untuk memperhalus batas antar intensitas Error diffusion: error antara intensitas input dengan intensitas pixel yang ditampilkan disebar (difusi) ke pixel-pixel di sebelah kanan dan bawahnya untuk mendapatkan tampilan yang lebih mendekati citra aslinya 29 28 12-CRS-0106 REVISED 8 FEB 2013 1 0 /11/2014 30 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 27 12-CRS-0106 REVISED 8 FEB 2013 Dengan hanya dua warna (Red & Blue), jika ukuran pixel cukup kecil, maka akan tampak seperti warna Magenta 5 10/11/2014 Algoritma error diffusion (disederhanakan) α,β,γ,δ 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 7/16 3/16 32 1 0 /11/2014 5/16 1/16 baris i baris i+1 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 31 Nilai-nilai α,β,γ,δ bisa dipilih berapapun asal memenuhi α+β+γ+δ ≤ 1 Salah satu pilihan (α,β,γ,δ ) = (7/16, 3/16, 5/16, 1/16) kolom j 12-CRS-0106 REVISED 8 FEB 2013 for i:=1 to m do for j:= 1 to n do begin {Tentukan intensitas tersedia Ik} {yang terdekat dengan nilai Mi,j} Ii,j:= Ik; err:=Mi,j-Ii,j; Mi,j+1:=Mi,j+1+α.err; Mi+1,j-1:=Mi+1,j-1+β.err; Mi+1,j:=Mi+1,j+γ.err; Mi+1,j+1:=Mi+1,j+1+δ.err; end Contoh Dithering 16 warna, tanpa dithering 33 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital THANK YOU 34 1 0 /11/2014 C IG4E3 / P engolahan C itra D igital 12-CRS-0106 REVISED 8 FEB 2013 16 warna, dengan dithering (error diffusion) 12-CRS-0106 REVISED 8 FEB 2013 Citra asli 6