SlideShare a Scribd company logo
BAB 2
Pengenalan Dasar
Citra
Setelah bab ini berakhir, diharapkan pembaca memahami
hal-hal berikut beserta contoh penerapannya.
 Representasi citra digital
 Kuantisasi citra
 Kualitas citra
 Cara membaca citra
 Cara mendapatkan ukuran citra
 Cara menampilkan citra
 Pemahaman jenis citra
 Konversi jenis citra
12 Pengolahan Citra, Teori dan Aplikasi
2.1 Representasi Citra Digital
Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (pixel atau
“picture element”). Setiap piksel digambarkan sebagai satu kotak kecil. Setiap
piksel mempunyai koordinat posisi. Sistem koordinat yang dipakai untuk
menyatakan citra digital ditunjukkan pada Gambar 2.1.
0 N-1
M-1
0
x
y
Posisi sebuah piksel
Gambar 2.1 Sistem koordinat citra berukuran M x N
(M baris dan N kolom)
Dengan sistem koordinat yang mengikuti asas pemindaian pada layar TV
standar itu, sebuah piksel mempunyai koordinat berupa
(x, y)
Dalam hal ini,
 x menyatakan posisi kolom;
 y menyatakan posisi baris;
Mengenal Dasar Citra 13
 piksel pojok kiri-atas mempunyai koordinat (0, 0) dan piksel pada pojok
kanan-bawah mempunyai koordinat (N-1, M-1).
Dalam praktik, penggunaan koordinat pada sistem tertentu
mempunyai sedikit perbedaan. Misalnya, pada Octave dan
MATLAB, piksel pojok kanan-atas tidak mempunyai koordinat (0,
0) melainkan (1, 1). Selain itu, setiap piksel pada Octave dan
MATLAB diakses melalui notasi (baris, kolom). Mengingat buku ini
menggunakan contoh dengan Octave dan MATLAB, maka notasi
yang digunakan disesuaikan dengan Octave dan MATLAB. Sebagai
contoh, koordinat piksel akan ditulis dengan (y, x) dan koordinat
pojok kanan-atas akan dinyatakan dengan (1, 1).
Dengan menggunakan notasi pada Octave dan MATLAB, citra dinyatakan
dengan
f(y, x)
Sebagai contoh, citra yang berukuran 12x12 yang terdapat pada Gambar 2.2(a)
memiliki susunan data seperti terlihat pada Gambar 2.2(b). Adapun Gambar 2.3
menunjukkan contoh penotasian f(y,x). Berdasarkan gambar tersebut maka:
 f(2,1) bernilai 6
 f(4,7) bernilai 237
Pada citra berskala keabuan, nilai seperti 6 atau 237 dinamakan sebagai intensitas.
14 Pengolahan Citra, Teori dan Aplikasi
(a) Citra berukuran 12 x 12
6 6 6 6 6 6 6 89 237 237 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 6 6 6 6 6 89 237 237 237 237
6 6 6 6 6 6 89 237 237 237 237 237
6 6 89 237 237 6 6 89 237 237 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 237 6 6 89 237
(b) Data penyusun citra 12 x 12
Gambar 2.2 Citra dan nilai penyusun piksel
f(4,7) = 237
6 6 6 6 6 6 6 89 237 237 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 6 6 6 6 6 89 237 237 237 237
6 6 6 6 6 6 89 237 237 237 237 237
6 6 89 237 237 6 6 89 237 237 237 237
6 6 89 237 237 237 6 6 89 237 237 237
6 6 89 237 237 237 237 6 6 89 237 237
6 6 89 237 237 237 237 237 6 6 89 237
1 2 3 4 5 6 7 8 9 10 11 12
1
2
3
4
5
6
7
8
9
10
11
12
f(2,1) = 6
Gambar 2.3 Notasi piksel dalam citra
Mengenal Dasar Citra 15
2.2 Kuantisasi Citra
Citra digital sesungguhnya dibentuk melalui pendekatan yang dinamakan
kuantisasi. Kuantisasi adalah prosedur yang dipakai untuk membuat suatu isyarat
yang bersifat kontinu ke dalam bentuk diskret. Untuk mempermudah pemahaman
konsep ini, lihatlah Gambar 2.4. Gambar 2.4(a) menyatakan isyarat analog
menurut perjalanan waktu t, sedangkan Gambar 2.4(b) menyatakan isyarat diskret.
(a) Isyarat analog (b)Isyarat diskret
t t
Gambar 2.4 Perbandingan isyarat analog dan isyarat diskret
Pada isyarat digital, nilai intensitas citra dibuat diskret atau terkuantisasi
dalam sejumlah nilai bulat. Gambar 2.5(a) menunjukkan contoh citra biner dua
nilai intensitas berupa 0 (hitam) dan 1 (putih). Selanjutnya, gambar tersebut
ditumpangkan pada grid 8x8 seperti yang diperlihatkan pada Gambar 2.5(b).
Bagian gambar yang jatuh pada kotak kecil dengan luas lebih kecil dibanding
warna putih latarbelakang, seluruh isi kotak dibuat putih. Sebaliknya, jika
mayoritas hitam, isi kotak seluruhnya dibuat hitam. Hasil pengubahan ke citra
digital tampak pada Gambar 2.5(c). Adapun Gambar 2.5(d) memperlihatkan
bilangan yang mewakili warna hitam (0) dan putih (1). Dengan demikian, citra
digital akan lebih baik (lebih sesuai aslinya) apabila ukuran piksel diperkecil atau
jumlah piksel diperbanyak.
16 Pengolahan Citra, Teori dan Aplikasi
(a) Citra yang akan dinyatakan
dalam isyarat digital
(b)Citra ditumpangkan pada grid
1 1 1 1 1 0 1 1
1 1 1 1 0 1 1 1
1 0 0 0 0 0 1 1
1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 0 0 0 0 0 0 1
1 1 1 1 0 1 1 1
(c) Hasil kuantisasi (d) Representasi dalam bentuk
angkaGambar 2.5 Digitalisasi citra biner 8x8 piksel
untuk memperlihatkan bentuk piksel ideal
Bagaimana halnya kalau gambar mengandung unsur warna (tidak sekadar
hitam dan putih)? Prinsipnya sama saja, tetapi sebagai pengecualian, warna hitam
diberikan tiga unsur warna dasar, yaitu merah (R = red), hijau (G = green), dan
biru (B = blue). Seperti halnya pada citra monokrom (hitam-putih) standar,
dengan variasi intensitas dari 0 hingga 255, pada citra berwarna terdapat
16.777.216 variasi warna apabila setiap komponen R, G, dan B mengandung 256
aras intensitas. Namun, kepekaan mata manusia untuk membedakan macam
warna sangat terbatas, yakni jauh di bawah enam belas juta lebih tersebut.
Untuk beberapa keperluan tertentu, jumlah gradasi intensitas saling berbeda.
Tabel 2.1 memberikan lima contoh untuk citra beraras keabuan dan Tabel 2.2
menunjukkan empat contoh penggunaan citra berwarna (RGB). Perhatikan bahwa
Mengenal Dasar Citra 17
jumlah gradasi juga bisa dinyatakan dalam jumlah digit biner atau bit 0 dan 1
sebagai sandi digital per piksel.
Tabel 2.1 Jangkauan nilai pada citra keabuan
Komponen
warna
Bit per
Piksel
Jangkauan Penggunaan
1 1 0-1 Citra biner: dokumen
faksimili
8 0-255 Umum: foto dan hasil
pemindai
12 0-4095 Kualitas tinggi: foto dan
hasil pemindai
14 0-16383 Kualitas profesional: foto
dan hasil pemindai
16 0-65535 Kualitas tertinggi: citra
kedokteran dan astronomi
Tabel 2.2 Jangkauan nilai pada citra berwarna
Komponen
Warna
Bit per
Piksel
Jangkauan Penggunaan
3 24 0-1 RGB umum
36 0-4095 RGB kualitas tinggi
42 0-16383 RGB kualitas profesional
4 32 0-255 CMYK (cetakan digital)
Dalam pengolahan citra, kuantisasi aras intensitas menentukan kecermatan
hasilnya. Dalam praktik, jumlah aras intensitas piksel dapat dinyatakan dengan
kurang dari 8 bit. Contoh pada Gambar 2.6 menunjukkan citra yang dikuantisasi
dengan menggunakan 8, 5, 4, 3, 2, dan 1 bit.
18 Pengolahan Citra, Teori dan Aplikasi
(a) 8 bit (b) 5 bit (c) 4 bit
(d) 3 bit (e) 2 bit (f) 1 bit
Gambar 2.6 Kuantisasi citra dengan menggunakan berbagai bit
Pada kuantisasi dengan 1 bit, jumlah level sebanyak 2 (21
). Oleh karena
itu, warna yang muncul berupa hitam dan putih saja. Perlu diketahui, penurunan
jumlah aras pada tingkat tertentu membuat mata manusia masih bisa menerima
citra dengan baik. Sebagai contoh, citra dengan 4 bit (Gambar 2.6(c)) dan citra
dengan 8 bit (Gambar 2.6(a)) praktis terlihat sama. Hal seperti itulah yang
mendasari gagasan pemampatan data citra, mengingat citra dengan jumlah bit
lebih rendah tentu akan membutuhkan tempat dan transmisi yang lebih hemat.
2.3 Kualitas Citra
Di samping cacah intensitas kecerahan, jumlah piksel yang digunakan untuk
menyusun suatu citra mempengaruhi kualitas citra. Istilah resolusi citra biasa
dinyatakan jumlah piksel pada arah lebar dan tinggi. Resolusi piksel biasa
dinyatakan dengan notasi m x n, dengan m menyatakan tinggi dan n menyatakan
Mengenal Dasar Citra 19
lebar dalam jumlah piksel. Contoh pada Gambar 2.5 menunjukkan bahwa kalau
gambar apel hanya dinyatakan dalam 8 x 8 piksel, citra yang terbentuk sangat
berbeda dengan aslinya. Seandainya jumlah piksel yang digunakan lebih banyak,
tentu akan lebih mendekati dengan gambar aslinya. Contoh pada Gambar 2.6
memperlihatkan efek resolusi piksel untuk menampilkan gambar yang sama.
(a) Citra berukuran 512 x 512
piksel
(b)Citra berukuran 256 x 256
piksel
(c) Citra berukuran 128 x 128 piksel (d) Citra berukuran 64 x 64 piksel
Gambar 2.7 Efek resolusi berdasar jumlah piksel pada citra
ketika gambar disajikan dengan ukuran yang sama
Terlihat bahwa pada resolusi tertentu citra menjadi kabur kalau dinyatakan dengan
jumlah piksel yang makin sedikit.
20 Pengolahan Citra, Teori dan Aplikasi
Resolusi spasial ditentukan oleh jumlah piksel per satuan panjang. Istilah
seperti dpi (dot per inch) menyatakan jumlah piksel per inci. Misalnya, citra 300
dpi menyatakan bahwa citra akan dicetak dengan jumlah piksel sebanyak 300
sepanjang satu inci. Berdasarkan hal itu, maka citra dengan resolusi ruang spasial
sebesar 300 dpi dicetak di kertas dengan ukuran lebih kecil daripada yang
mempunyai resolusi ruang sebesar 150 dpi, meskipun kedua gambar memiliki
resolusi piksel yang sama.
2.4 Membaca Citra
Untuk kepentingan memudahkan dalam memahami hasil proses pengolahan
citra, Anda perlu mengenal perintah yang berguna untuk membaca citra yang
tersimpan dalam bentuk file. Octave menyediakan fungsi bernama imread.
Bentuk pemanggilannya:
Img = imread(nama_file_citra)
Dalam hal ini, nama_file_citra menyatakan nama file citra yang hendak dibaca
dan Img menyatakan larik (array) yang menampung data citra yang dibaca. Perlu
diketahui, format-format gambar yang bisa dibaca oleh imread ditunjukkan pada
Tabel 2.3.
Tabel 2.3 Daftar format file gambar yang bisa dibaca oleh imread
Format
Gambar
Ekstensi Keterangan
TIFF .tif, .tiff Tagged Image File Format
merupakan format citra yang
mula-mula dibuat boleh Aldus.
Kemudian, dikembangkan oleh
Microsoft dan terakhir oleh
Adobe.
JPEG .jpg, .jpeg Joint Photographics Expert
Group adalah format citra yang
dirancang agar bisa
memampatkan data dengan rasio
Mengenal Dasar Citra 21
Format
Gambar
Ekstensi Keterangan
1:16.
GIF .gif Graphics Interface Format
merupakan format yang
memungkinkan pemampatan data
hingga 50%. Cocok untuk citra
yang memiliki area yang cukup
besar dengan warna yang sama.
BMP .bmp Windows Bitmap merupakan
format bitmap pada Windows.
PNG .png Portable Network Graphics biasa
dibaca „ping‟. Asal mulanya
dikembangkan sebagai pengganti
format GIF karena adanya
penerapan lisensi GIF.
Mendukung pemampatan data
tanpa menghilangkan informasi
aslinya.
XWD .xwd XWindow Dump
 Daftar file citra pada Tabel 2.3 berlaku untuk
MATLAB.
 Saat buku ini ditulis, Octave hanya mampu
membaca file citra berformat PNG. Format lain
hanya bisa dibaca dengan melibatkan utilitas lain
seperti ImageMagick. Itulah sebabnya, seluruh
contoh file citra dalam buku ini menggunakan
format PNG.
22 Pengolahan Citra, Teori dan Aplikasi
Contoh berikut digunakan untuk membaca file citra bernama mandrill.png
yang terdapat pada folder C:Image.
>> Img = imread(’C:Imagemandrill.png’);
>>
 Dengan cara seperti itu, data citra pada file mandrill.png
disimpan di Img. Dalam hal ini, Img berupa larik yang
mengandung M baris dan N baris. Mengingat file tersebut
berisi data citra berskala keabuan, maka nilai pada setiap
elemen dalam matriks menyatakan intensitas piksel. Nilai
intensitas itu berupa bilangan bulat antara 0 sampai dengan
255.
 Berbagai jenis citra (antara lain yang berskala keabuan) akan
segera dibahas.
 imread juga mendukung pembacaan citra 16 bit. Namun,
pembahasan di buku ini menggunakan semua file citra
berukuran 8 bit (tipe uint8).
2.5 Mengetahui Ukuran Citra
Secara umum, ukuran matriks Img adalah M x N. Untuk mengetahui nilai M
dan N yang sesungguhnya, dapat digunakan fungsi pada Octave yang bernama
size. Contoh untuk mengetahui dimensi pada matriks Img:
>> Ukuran = size(Img) 
Ukuran =
512 512
>>
Dengan cara seperti itu, terlihat bahwa Img berisi 512 baris dan 512 kolom piksel.
Untuk mendapatkan jumlah baris dan jumlah kolom secara tersendiri, perlu
diberikan perintah seperti berikut:
Mengenal Dasar Citra 23
>> jum_baris = Ukuran(1); 
>> jum_kolom = Ukuran(2); 
>>
Angka 1 dan 2 pada ukuran menyatakan indeks. Dengan cara seperti itu,
jum_baris berisi jumlah baris pada larik Img dan jum_kolom berisi jumlah
kolom pada larik Img.
Sebagai alternatif, dapat ditulis perintah seperti berikut:
>> [jum_baris, jum_kolom] = size(Img); 
Dengan cara seperti itu, jum_baris berisi jumlah baris pada larik Img dan
jum_kolom berisi jumlah kolom pada larik Img.
2.6 Menampilkan Citra
Citra dapat ditampilkan dengan mudah melalui fungsi imshow. Contoh
berikut digunakan untuk menampilkan citra yang terdapat di Img:
>> imshow(Img); 
>>
Hasilnya berupa jendela yang menampilkan citra pada Img, seperti terlihat pada
Gambar 2.8.
24 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.8 Contoh penampilan gambar pada Img
Apabila dikehendaki untuk menampilkan dua citra di dua jendela masing-
masing, fungsi figure perlu dipanggil terlebih dulu sebelum memanggil imshow.
Contoh:
>> Sungai = imread('C:Imageinnsbruck.png'); 
>> Bangunan = imread('C:Imagealtstadt.png'); 
>> figure(1); imshow(Sungai); 
>> figure(2); imshow(Bangunan); 
Hasilnya, gambar sungai ditampilkan di jendela 1 dan gambar bangunan
diletakkan di jendela 2. Gambar 2.9 memperlihatkan keadaan pada kedua jendela,
yaitu kebetulan sebagian jendela 2 menutup jendela 1.
Mengenal Dasar Citra 25
Gambar 2.9 Menampilkan dua citra di jendela masing-masing
Octave menyediakan fasilitas yang memungkinkan dua buah citra diletakkan
dalam satu jendela. Berdasarkan larik Sungai dan Bangunan di depan, dapat
dicoba untuk memberikan perintah berikut:
>> close all; 
>> subplot(1,2,1); imshow(Sungai); 
>> subplot(1,2,2); imshow(Bangunan); 
Hasilnya dapat dilihat pada Gambar 2.10.
26 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.10 Contoh pemakaian subplot
Perintah close all digunakan untuk menutup semua jendela. Adapun pada
subplot, argumen pertama menyatakan jumlah baris citra dan argumen kedua
menyatakan jumlah kolom citra dalam jendela. Argumen ketiga menyatakan
indeks citra dalam jendela yang bernilai antara 1 sampai dengan jumlah baris x
jumlah kolom.
2.7 Mengenal Jenis Citra
Ada tiga jenis citra yang umum digunakan dalam pemrosesan citra. Ketiga
jenis citra tersebut yaitu citra berwarna, citra berskala keabuan, dan citra biner.
2.7.1 Citra Berwarna
Citra berwarna, atau biasa dinamakan citra RGB, merupakan jenis citra yang
menyajikan warna dalam bentuk komponen R (merah), G (hijau), dan B (biru).
Setiap komponen warna menggunakan 8 bit (nilainya berkisar antara 0 sampai
dengan 255). Dengan demikian, kemungkinan warna yang bisa disajikan
Mengenal Dasar Citra 27
mencapai 255 x 255 x 255 atau 16.581.375 warna. Tabel 2.4 menunjukkan contoh
warna dan nilai R,G, dan B.
Tabel 2.4 Warna dan nilai penyusun warna
Warna R G B
Merah 255 0 0
Hijau 0 255 0
Biru 0 0 255
Hitam 0 0 0
Putih 255 255 255
Kuning 0 255 255
Gambar 2.12 menunjukkan pemetaan warna dalam ruang tiga dimensi. Adapun
Gambar 2.13 menunjukkan keadaan suatu citra dan representasi warnanya.
R
B
G
0
Putih
CyanBiru
255
255
255
Hitam
Merah Kuning
Hijau
Magenta
Gambar 2.12 Warna RGB dalam ruang berdimensi tiga
28 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.13 Citra berwarna dan representasi warnanya.
Setiap piksel dinyatakan dengan nilai R, G, dan B
Perlu diketahui, sebuah warna tidak hanya dinyatakan dengan
komposisi R, G, dan B tunggal. Pada Tabel 2.4 terlihat bahwa
warna merah mempunyai R=255, G=0, dan B=0. Namun,
komposisi R=254, G=1, B=1 juga berwarna merah.
Citra berwarna pun dibaca melalui imread. Contoh:
>> Kota = imread('C:Imageinnsbruckcity.png'); 
Nah, sekarang dapat dicoba untuk mengenakan size pada Kota:
>> size(Kota) 
ans =
747 500 3
Mengenal Dasar Citra 29
>>
Hasilnya menunjukkan bahwa Kota berupa larik berdimensi tiga, dengan dimensi
ketiga berisi tiga buah nilai. Hal inilah yang membedakan dengan citra berskala
keabuan. Secara umum, larik hasil pembacaan citra berwarna dapat digambarkan
seperti berikut.
1
M
1 N
1
2
3 Komponen B
Komponen G
Komponen R
2
2
M-1
N-1
Gambar 2.14 Hasil pembacaan citra berwarna
Dimensi ketiga menyatakan komponen R, G, B. Indeks pertama menyatakan
komponen R, indeks kedua menyatakan komponen G, dan indeks ketiga
menyatakan komponen B.
Berikut adalah cara untuk mendapatkan komponen R, G, dan B pada larik
Kota di depan:
>> R = Kota(:,:,1); 
>> G = Kota(:,:,2); 
>> B = Kota(:,:,3); 
30 Pengolahan Citra, Teori dan Aplikasi
Untuk menampilkan gambar berwarna, imshow bisa digunakan seperti kalau
mau menampilkan gambar berskala keabuan. Contoh:
>> figure(1); 
>> imshow(Kota); 
Hasilnya seperti berikut.
Gambar 2.15 Citra berwarna
2.7.2 Citra Berskala Keabuan
Sesuai dengan nama yang melekat, citra jenis ini menangani gradasi warna
hitam dan putih, yang tentu saja menghasilkan efek warna abu-abu. Pada jenis
gambar ini, warna dinyatakan dengan intensitas. Dalam hal ini, intensitas berkisar
Mengenal Dasar Citra 31
antara 0 sampai dengan 255. Nilai 0 menyatakan hitam dan nilai 255 menyatakan
putih. Contoh citra berskala keabuan telah dibahas pada Subbab 2.5.
2.7.3 Citra Biner
Citra biner adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah
nilai dari dua buah kemungkinan (yaitu nilai 0 dan 1). Nilai 0 menyatakan warna
hitam dan nilai 1 menyatakan warna putih. Citra jenis ini banyak dipakai dalam
pemrosesan citra, misalnya untuk kepentingan memperoleh tepi bentuk suatu
objek. Sebagai contoh, perhatikan Gambar 2.16. Bagian kiri menyatakan citra
beraras keabuan, sedangkan bagian kanan adalah hasil konversi ke citra biner.
(a) Citra daun berskala keabuan (b) Citra biner
Gambar 2.16 Citra di kanan menyatakan bentuk citra di kiri
dengan mengabaikan komposisi warna
Contoh berikut menunjukkan cara membaca dan menampilkan citra biner.
>> Img = imread('c:Imagedaun_bin.png'); 
>> imshow(Img); 
>>
Hasilnya seperti berikut.
32 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.17 Tampilan citra biner
2.8 Mengonversi Jenis Citra
Dalam praktik, seringkali diperlukan utuk mengonversi citra berwarna ke
dalam bentuk citra berskala keabuan mengingat banyak pemrosesan citra yang
bekerja pada skala keabuan. Namun, terkadang citra berskala keabuan pun perlu
dikonversikan ke citra biner, mengingat beberapa operasi dalam pemrosesan citra
berjalan pada citra biner.
Bagaimana cara mengubah citra berwarna ke dalam citra berskala keabuan?
Secara umum citra berwarna dapat dikonversikan ke citra berskala keabuan
melalui rumus:
𝐼 = 𝑎 𝑥 𝑅 + 𝑏 𝑥 𝐺 + 𝑐 𝑥 𝐵, 𝑎 + 𝑏 + 𝑐 = 1 (2.1)
dengan R menyatakan nilai komponen merah, G menyatakan nilai komponen
hijau, dan B menyatakan nilai komponen biru. Misalnya, sebuah piksel
mempunyai komponen R, G, B sebagai berikut:
Mengenal Dasar Citra 33
R = 50
G = 70
B = 61
Jika a, b, dan c pada Persamaan 2.1 dibuat sama, akan diperoleh hasil seperti
berikut:
I = (50 + 70 + 60) / 3 = 60
Salah satu contoh rumus yang biasa dipakai untuk mengubah ke skala
keabuan yaitu:
𝐼 = 0,2989 𝑥 𝑅 + 0,5870 𝑥 𝐺 + 0,1141 𝑥 𝐵 (2.2)
Contoh berikut menunjukkan cara melakukan konversi dari citra berwarna ke citra
biner.
>> Img = imread('C:Imageinnsbruckcity.png'); 
>> Abu = uint8(0.2989 * double(Img(:,:,1)) + ... 
0.5870*double(Img(:,:,2)) + ... 
0.1141 * double(Img(:,:,3))); 
>> imshow(Abu); 
 Tanda … menyatakan bahwa perintah pada baris
tersebut masih mempunyai lanjutan pada baris
berikutnya.
 Tanda : berarti semua nilai.
 double dipakai untuk melakukan konversi dari
tipe bilangan bulat 8 bit (uint8) ke tipe double
(yang memungkinkan pemrosesan bilangan real
berpresisi ganda).
 uint8 berguna untuk mengonversi dari tipe
double ke uint8 (tipe bilangan bulat 8 bit).
Hasilnya ditunjukkan pada Gambar 2.18.
34 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.18 Hasil konversi citra berwarna
ke citra berskala keabuan
Bagaimana halnya kalau dikehendaki untuk mengonversikan citra berskala
keabuan ke citra biner? Strategi yang dipakai yaitu dengan menerapkan suatu nilai
yang dikenal sebagai nilai ambang (threshold). Nilai tersebut dipakai untuk
menentukan suatu intensitas akan dikonversikan menjadi 0 atau menjadi 1. Secara
matematis, konversi dinyatakan dengan rumus:
𝑏(𝑖) = {
0, 𝑖 ≥ 𝑎
1, 𝑖 < 𝑎
(2.3)
Contoh berikut menunjukkan cara melakukan konversi dari citra berskala
keabuan ke dalam citra biner.
Program : kebiner.m
% KEBINER Digunakan untuk mengonversi file
Mengenal Dasar Citra 35
% daun_gray.png ke citra biner
Img = imread('c:Imagedaun_gray.png');
[tinggi, lebar] = size(Img);
ambang = 210; % Nilai ini bisa diubah-ubah
biner = zeros(tinggi, lebar);
for baris=1 : tinggi
for kolom=1 : lebar
if Img(baris, kolom) >= ambang
Biner(baris, kolom) = 0;
else
Biner(baris, kolom) = 1;
end
end
end
imshow(Biner);
Akhir Program
Sebelum mencoba program di atas, akan dibahas dulu kode yang mendasari
program. Tanda % mengawali komentar. Semua tulisan dimulai dari tanda
tersebut hingga akhir baris tidak dianggap sebagai perintah, melainkan sebagai
penjelas bagi pembaca program. Kode
Img = imread('c:Imagedaun_gray.png');
merupakan perintah untuk membaca citra daun_gray.png. Hasilnya disimpan di
Img. Lalu,
[tinggi, lebar] = size(Img);
berguna untuk mendapatkan lebar dan tinggi citra.
Pernyataan
ambang = 210;
digunakan untuk menentukan nilai ambang bagi penentuan konversi suatu piksel
menjadi 0 atau 1. Nilai ambang berkisar antara 0 sampai dengan 255.
Pernyataan
for baris=1 : tinggi
for kolom=1 : lebar
36 Pengolahan Citra, Teori dan Aplikasi
if Img(baris, kolom) >= ambang
Biner(baris, kolom) = 0;
else
Biner(baris, kolom) = 1;
end
end
end
menangani penentuan nilai 0 atau 1 pada citra biner untuk semua piksel dalam
citra (ditangani dengan dua buah for). Penentuan dilakukan melalui pernyataan if.
Dalam hal ini,
Img(baris, kolom)
menyatakan nilai intensitas piksel pada (baris, kolom).
Setelah
for baris=1 : tinggi
berakhir, maka Biner berisi citra biner. Selanjutnya, citra ditampilkan melalui
imshow(Biner);
Untuk menjalankan program di depan, berikan perintah
>> kebiner; 
Hasilnya seperti berikut.
Mengenal Dasar Citra 37
Gambar 2.19 Hasil konversi daun_gray.png ke bentuk biner
Gambar 2.20 memperlihatkan berbagai bentuk hasil konversi citra dengan
menggunakan berbagai nilai ambang.
38 Pengolahan Citra, Teori dan Aplikasi
Ambang = 210 Ambang = 160 Ambang = 130
Ambang = 110 Ambang = 100 Ambang = 70
Gambar 2.20 Hasil konversi ke citra biner
dengan berbagai nilai ambang
Contoh-contoh yang telah dibahas memberikan gambaran tentang cara
mewujudkan sendiri konversi antarjenis citra. Hal tersebut tentu saja penting
untuk dipahami agar memudahkan di dalam mewujudkan sendiri penulisan
program seandainya menggunakan bahasa pemrograman yang lain. Namun,
sebagai penambah wawasan, sesungguhnya Octave menyediakan beberapa fungsi
untuk kepentingan konversi citra. Tabel 2.5 memperlihatkan dua fungsi penting
yang terkait dengan konversi citra.
Mengenal Dasar Citra 39
Tabel 2.5 Fungsi yang disediakan Octave
untuk kepentingan konversi ke aras keabuan
Fungsi Kegunaan
im2bw(I, level)
im2bw(RGB, level)
Berguna untuk mengonversikan citra berskala
keabuan (I) ataupun berwarna (RGB) ke
dalam citra biner dengan menggunakan level
sebagai ambang konversi. Di MATLAB, jika
argumen kedua (yaitu level) tidak disertakan,
nilai 0,5 secara bawaan digunakan sebagai
ambang konversi. Pada Octave, argumen
kedua harus disertakan. Nilai balik fungsi ini
berupa citra biner
rgb2gray(RGB) Berguna untuk mengonversi citra berwarna
(RGB) ke citra berskala keabuan. Nilai balik
fungsi ini berupa citra berskala keabuan
Pada beberapa contoh yang akan dibahas pada bab-bab selanjutnya, dua fungsi
pada Tabel 2.5 akan digunakan dengan tujuan untuk menyederhanakan
permasalahan dalam menuliskan kode.
Agar terbiasa dengan kedua fungsi tersebut, berikut disajikan contoh
penggunaannya. Contoh pertama:
>> Img = imread('C:Imagedaun_gray.png'); 
>> BW = im2bw(Img, 0.6); 
>> imshow(BW); 
Hasilnya seperti berikut.
40 Pengolahan Citra, Teori dan Aplikasi
Gambar 2.21 Hasil pembentukan citra biner melalui im2bw
Adapun contoh pemakaian rgb2gray:
>> RGB = imread('C:Imageinnsbruckcity.png'); 
>> Abu = rgb2gray(RGB); 
>> imshow(Abu); 
Hasilnya seperti berikut.
Mengenal Dasar Citra 41
Gambar 2.22 Hasil pembentukan citra berskala keabuan
melalui rgb2gray
2.9 Menyimpan Citra
Untuk kepentingan menyimpan citra ke dalam file, fungsi imwrite pada
Octave dapat digunakan. Pemakaiannya:
imwrite(A, nama_file)
A dapat berupa larik dua dimensi (citra berskala keabuan) ataupun larik
berdimensi tiga (citra RGB).
Contoh:
>> Img = imread('C:Imagedaun_gray.png'); 
>> X = 255 – Img; 
>> imwrite(X, ’negatif_daun.png’); 
42 Pengolahan Citra, Teori dan Aplikasi
Perlu diketahui,
X = 255 – Img;
digunakan untuk memperoleh citra negatif dari citra daun_gray.png. Setelah
imwrite dieksekusi, akan terbentuk negatif_daun.png pada folder kerja. Hasilnya
diperlihatkan pada Gambar 2.23.
Gambar 2.23 Hasil penyimpanan citra negatif_daun.png
1. Jelaskan mengenai koordinat citra.
2. Apa yang dimaksud dengan kuantisasi citra?
3. Jelaskan hubungan jumlah bit dalam kuantisasi citra dengan kompresi
data.
4. Jelaskan makna kualitas citra.
5. Jelaskan pengertian :
a) citra berwarna
 Latihan
Mengenal Dasar Citra 43
b) citra berskala keabuan
c) citra biner
6. Jelaskan mekanisme untuk mengubah citra berwarna ke dalam citra
berskala keabuan.
7. Bagaimana prinsip untuk mengubah citra berskala keabuan ke citra biner?
8. Ubahlah innsbruckcity.png ke citra berskala keabuan dan kemudian
simpan dengan nama inns_gray.png.
9. Buatlah program untuk memproses citra daun_gray.png agar diperoleh
hasil seperti berikut.
10. Gunakanlah fungsi im2bw untuk mengonversikan citra innsbruckcity.png
ke dalam bentuk citra biner dengan menggunakan level sebesar 0,7, 0,5,
dan 0,3. Bagaimana kesan Anda mengenai hasil-hasil yang diperoleh?
11. Buatlah program untuk menguantisasi citra daun_gray.png dengan 2 bit.
Tampilkan hasilnya. Apakah hasilnya masih terlihat seperti aslinya? Bila
tidak, dengan menggunakan berapa bit agar gambar tersebut terlihat sesuai
dengan aslinya?

More Related Content

What's hot

Forward Difference, Backward Difference, dan Central
Forward Difference, Backward Difference, dan CentralForward Difference, Backward Difference, dan Central
Forward Difference, Backward Difference, dan Central
Ferdhika Yudira
 
Fungsi invers-trigonometri
Fungsi invers-trigonometriFungsi invers-trigonometri
Fungsi invers-trigonometri
Pangeran Khodock
 
Statistik sosial novi catur m
Statistik sosial novi catur mStatistik sosial novi catur m
Statistik sosial novi catur m
Universitas Islam Balitar
 
Makalah Algoritma kruskal
Makalah Algoritma kruskalMakalah Algoritma kruskal
Makalah Algoritma kruskal
zaenal mustofa
 
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra DigitalPertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
ahmad haidaroh
 
Pengolahan citra digital
Pengolahan citra digitalPengolahan citra digital
Pengolahan citra digitalDin Afriansyah
 
Bab 15 pengenalan pola
Bab 15 pengenalan polaBab 15 pengenalan pola
Bab 15 pengenalan pola
Syafrizal
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendek
Laili Wahyunita
 
3.8 perhitungan debit rencana
3.8 perhitungan debit rencana3.8 perhitungan debit rencana
3.8 perhitungan debit rencana
vieta_ressang
 
Ilmu Ukur Tanah by Yuli Kusumawati
Ilmu Ukur Tanah by Yuli KusumawatiIlmu Ukur Tanah by Yuli Kusumawati
Ilmu Ukur Tanah by Yuli Kusumawati
yulika usman
 
Estimasi mean
Estimasi meanEstimasi mean
Estimasi meanWindii
 
Antropometri
AntropometriAntropometri
Antropometri
sri wida
 
Analisis Regresi Linier Sederhana
Analisis Regresi Linier SederhanaAnalisis Regresi Linier Sederhana
Analisis Regresi Linier Sederhana
Dwi Mardianti
 
Bnp.01.uji tanda (sign test)
Bnp.01.uji tanda (sign test)Bnp.01.uji tanda (sign test)
Bnp.01.uji tanda (sign test)raysa hasdi
 
ERGONOMI: PERANCANGAN DISPLAY & KONTROL
ERGONOMI: PERANCANGAN DISPLAY & KONTROL ERGONOMI: PERANCANGAN DISPLAY & KONTROL
ERGONOMI: PERANCANGAN DISPLAY & KONTROL
Universitas Qomaruddin, Gresik, Indonesia
 
Alinemen vertikal-teks1
Alinemen vertikal-teks1Alinemen vertikal-teks1
Alinemen vertikal-teks1
WSKT
 
Slide minggu 6 (citra digital)
Slide minggu 6 (citra digital)Slide minggu 6 (citra digital)
Slide minggu 6 (citra digital)
Setia Juli Irzal Ismail
 
Ekonomi teknik annual worth
Ekonomi teknik annual worthEkonomi teknik annual worth
Ekonomi teknik annual worthTika Rahmawati
 

What's hot (20)

Forward Difference, Backward Difference, dan Central
Forward Difference, Backward Difference, dan CentralForward Difference, Backward Difference, dan Central
Forward Difference, Backward Difference, dan Central
 
Fungsi invers-trigonometri
Fungsi invers-trigonometriFungsi invers-trigonometri
Fungsi invers-trigonometri
 
Tabel uji-wilcoxon
Tabel uji-wilcoxonTabel uji-wilcoxon
Tabel uji-wilcoxon
 
Statistik sosial novi catur m
Statistik sosial novi catur mStatistik sosial novi catur m
Statistik sosial novi catur m
 
Makalah Algoritma kruskal
Makalah Algoritma kruskalMakalah Algoritma kruskal
Makalah Algoritma kruskal
 
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra DigitalPertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
Pertemuan 2 - Digital Image Processing - Image Enhancement - Citra Digital
 
Pengolahan citra digital
Pengolahan citra digitalPengolahan citra digital
Pengolahan citra digital
 
Bab 15 pengenalan pola
Bab 15 pengenalan polaBab 15 pengenalan pola
Bab 15 pengenalan pola
 
Algoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendekAlgoritma pencarian lintasan jalur terpendek
Algoritma pencarian lintasan jalur terpendek
 
3.8 perhitungan debit rencana
3.8 perhitungan debit rencana3.8 perhitungan debit rencana
3.8 perhitungan debit rencana
 
Ilmu Ukur Tanah by Yuli Kusumawati
Ilmu Ukur Tanah by Yuli KusumawatiIlmu Ukur Tanah by Yuli Kusumawati
Ilmu Ukur Tanah by Yuli Kusumawati
 
Estimasi mean
Estimasi meanEstimasi mean
Estimasi mean
 
Antropometri
AntropometriAntropometri
Antropometri
 
Analisis Regresi Linier Sederhana
Analisis Regresi Linier SederhanaAnalisis Regresi Linier Sederhana
Analisis Regresi Linier Sederhana
 
Bnp.01.uji tanda (sign test)
Bnp.01.uji tanda (sign test)Bnp.01.uji tanda (sign test)
Bnp.01.uji tanda (sign test)
 
ERGONOMI: PERANCANGAN DISPLAY & KONTROL
ERGONOMI: PERANCANGAN DISPLAY & KONTROL ERGONOMI: PERANCANGAN DISPLAY & KONTROL
ERGONOMI: PERANCANGAN DISPLAY & KONTROL
 
Alinemen vertikal-teks1
Alinemen vertikal-teks1Alinemen vertikal-teks1
Alinemen vertikal-teks1
 
Slide minggu 6 (citra digital)
Slide minggu 6 (citra digital)Slide minggu 6 (citra digital)
Slide minggu 6 (citra digital)
 
Tugas Besar Geometrik Jalan
Tugas Besar Geometrik JalanTugas Besar Geometrik Jalan
Tugas Besar Geometrik Jalan
 
Ekonomi teknik annual worth
Ekonomi teknik annual worthEkonomi teknik annual worth
Ekonomi teknik annual worth
 

Similar to Pcd 2

jurnal pengolahan citra
jurnal pengolahan citrajurnal pengolahan citra
jurnal pengolahan citraOvie Poenya
 
04-Digitalisasi-citra.pptx
04-Digitalisasi-citra.pptx04-Digitalisasi-citra.pptx
04-Digitalisasi-citra.pptx
nyomans1
 
pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)khaerul azmi
 
pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)khaerul azmi
 
Bab 07a
Bab 07aBab 07a
Bab 07a
Syafrizal
 
Pengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLABPengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLAB
Simesterious TheMaster
 
Pengolahan Citra Diskusi Pertemuan Ke-7.pdf
Pengolahan Citra Diskusi Pertemuan Ke-7.pdfPengolahan Citra Diskusi Pertemuan Ke-7.pdf
Pengolahan Citra Diskusi Pertemuan Ke-7.pdf
HendroGunawan8
 
12. jaka putra implementasi histogram equalization untuk perbaikan noise pad...
12. jaka putra  implementasi histogram equalization untuk perbaikan noise pad...12. jaka putra  implementasi histogram equalization untuk perbaikan noise pad...
12. jaka putra implementasi histogram equalization untuk perbaikan noise pad...
ym.ygrex@comp
 
9 pengolahan citra
9   pengolahan citra9   pengolahan citra
9 pengolahan citra
yuliani indah
 
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
GabrielChristian14
 
Pengolahan Citra Diskusi Pertemuan Ke-2.pdf
Pengolahan Citra Diskusi Pertemuan Ke-2.pdfPengolahan Citra Diskusi Pertemuan Ke-2.pdf
Pengolahan Citra Diskusi Pertemuan Ke-2.pdf
HendroGunawan8
 
Slide Pengolahan Citra 4
Slide Pengolahan Citra 4Slide Pengolahan Citra 4
Slide Pengolahan Citra 4
Sita Anggraeni
 
Pcd 9
Pcd 9Pcd 9
Pcd 9
dedidarwis
 
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
nyomans1
 
Multimedia 2 image
Multimedia 2   imageMultimedia 2   image
Multimedia 2 image
Nani Wulan
 
Peningkatan Kualitas Citra Spasial.pdf
Peningkatan Kualitas Citra Spasial.pdfPeningkatan Kualitas Citra Spasial.pdf
Peningkatan Kualitas Citra Spasial.pdf
Adam Superman
 
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
nyomans1
 
Bab 2 pembentukan citra
Bab 2 pembentukan citraBab 2 pembentukan citra
Bab 2 pembentukan citra
Syafrizal
 
Bab 6 histogram citra
Bab 6 histogram citraBab 6 histogram citra
Bab 6 histogram citra
Syafrizal
 

Similar to Pcd 2 (20)

jurnal pengolahan citra
jurnal pengolahan citrajurnal pengolahan citra
jurnal pengolahan citra
 
04-Digitalisasi-citra.pptx
04-Digitalisasi-citra.pptx04-Digitalisasi-citra.pptx
04-Digitalisasi-citra.pptx
 
pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)
 
pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)pembentukan citra (pengolahan citra digital)
pembentukan citra (pengolahan citra digital)
 
Laporan pcd 01
Laporan pcd 01Laporan pcd 01
Laporan pcd 01
 
Bab 07a
Bab 07aBab 07a
Bab 07a
 
Pengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLABPengolahan Citra Digital Dengan Menggunakan MATLAB
Pengolahan Citra Digital Dengan Menggunakan MATLAB
 
Pengolahan Citra Diskusi Pertemuan Ke-7.pdf
Pengolahan Citra Diskusi Pertemuan Ke-7.pdfPengolahan Citra Diskusi Pertemuan Ke-7.pdf
Pengolahan Citra Diskusi Pertemuan Ke-7.pdf
 
12. jaka putra implementasi histogram equalization untuk perbaikan noise pad...
12. jaka putra  implementasi histogram equalization untuk perbaikan noise pad...12. jaka putra  implementasi histogram equalization untuk perbaikan noise pad...
12. jaka putra implementasi histogram equalization untuk perbaikan noise pad...
 
9 pengolahan citra
9   pengolahan citra9   pengolahan citra
9 pengolahan citra
 
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
01-Pengantar-Pengolahan-Citra-Bag1-2021.pptx
 
Pengolahan Citra Diskusi Pertemuan Ke-2.pdf
Pengolahan Citra Diskusi Pertemuan Ke-2.pdfPengolahan Citra Diskusi Pertemuan Ke-2.pdf
Pengolahan Citra Diskusi Pertemuan Ke-2.pdf
 
Slide Pengolahan Citra 4
Slide Pengolahan Citra 4Slide Pengolahan Citra 4
Slide Pengolahan Citra 4
 
Pcd 9
Pcd 9Pcd 9
Pcd 9
 
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
03-Pembentukan-Citra-dan-Digitalisasi-Citra.pptx
 
Multimedia 2 image
Multimedia 2   imageMultimedia 2   image
Multimedia 2 image
 
Peningkatan Kualitas Citra Spasial.pdf
Peningkatan Kualitas Citra Spasial.pdfPeningkatan Kualitas Citra Spasial.pdf
Peningkatan Kualitas Citra Spasial.pdf
 
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
05-Operasi-dasar-pengolahan-citra-2021 (1).pptx
 
Bab 2 pembentukan citra
Bab 2 pembentukan citraBab 2 pembentukan citra
Bab 2 pembentukan citra
 
Bab 6 histogram citra
Bab 6 histogram citraBab 6 histogram citra
Bab 6 histogram citra
 

More from dedidarwis

Cv dedi darwis
Cv dedi darwisCv dedi darwis
Cv dedi darwis
dedidarwis
 
Manajemen pengetahuan
Manajemen pengetahuanManajemen pengetahuan
Manajemen pengetahuan
dedidarwis
 
Metadata pada Data Warehouse
Metadata pada Data WarehouseMetadata pada Data Warehouse
Metadata pada Data Warehouse
dedidarwis
 
Siklus Pendapatan
Siklus PendapatanSiklus Pendapatan
Siklus Pendapatan
dedidarwis
 
Pengendalian SIA Berbasis Komputer
Pengendalian SIA Berbasis KomputerPengendalian SIA Berbasis Komputer
Pengendalian SIA Berbasis Komputer
dedidarwis
 
Sistem Pengendalian Internal
Sistem Pengendalian InternalSistem Pengendalian Internal
Sistem Pengendalian Internal
dedidarwis
 
Model data dan desain database
Model data dan desain databaseModel data dan desain database
Model data dan desain database
dedidarwis
 
Pengantar e-business
Pengantar e-businessPengantar e-business
Pengantar e-business
dedidarwis
 
Siklus sistem informasi akuntansi
Siklus sistem informasi akuntansiSiklus sistem informasi akuntansi
Siklus sistem informasi akuntansi
dedidarwis
 
Konsep Dasar Sistem Informasi Akuntansi
Konsep Dasar Sistem Informasi AkuntansiKonsep Dasar Sistem Informasi Akuntansi
Konsep Dasar Sistem Informasi Akuntansi
dedidarwis
 
Pert 14 publikasi hasil penelitian
Pert 14 publikasi hasil penelitianPert 14 publikasi hasil penelitian
Pert 14 publikasi hasil penelitian
dedidarwis
 
Pert 13 pengujian hasil penelitian
Pert 13  pengujian hasil penelitianPert 13  pengujian hasil penelitian
Pert 13 pengujian hasil penelitian
dedidarwis
 
Pert 13 pengujian hasil penelitian
Pert 13  pengujian hasil penelitianPert 13  pengujian hasil penelitian
Pert 13 pengujian hasil penelitian
dedidarwis
 
Pert 12 metode eksperimen
Pert 12   metode eksperimenPert 12   metode eksperimen
Pert 12 metode eksperimen
dedidarwis
 
Pert 11 kesalahan penelitian
Pert 11  kesalahan penelitianPert 11  kesalahan penelitian
Pert 11 kesalahan penelitian
dedidarwis
 
Slide trik skripsi ftik s1
Slide trik skripsi ftik s1Slide trik skripsi ftik s1
Slide trik skripsi ftik s1
dedidarwis
 
Pert 9 proposal penelitian
Pert 9 proposal penelitianPert 9 proposal penelitian
Pert 9 proposal penelitian
dedidarwis
 
Pert 6 literatur review
Pert 6 literatur reviewPert 6 literatur review
Pert 6 literatur review
dedidarwis
 
Pert 5 pengolahan data
Pert 5 pengolahan dataPert 5 pengolahan data
Pert 5 pengolahan data
dedidarwis
 
Pert 5 pengumpulan-data
Pert 5 pengumpulan-dataPert 5 pengumpulan-data
Pert 5 pengumpulan-data
dedidarwis
 

More from dedidarwis (20)

Cv dedi darwis
Cv dedi darwisCv dedi darwis
Cv dedi darwis
 
Manajemen pengetahuan
Manajemen pengetahuanManajemen pengetahuan
Manajemen pengetahuan
 
Metadata pada Data Warehouse
Metadata pada Data WarehouseMetadata pada Data Warehouse
Metadata pada Data Warehouse
 
Siklus Pendapatan
Siklus PendapatanSiklus Pendapatan
Siklus Pendapatan
 
Pengendalian SIA Berbasis Komputer
Pengendalian SIA Berbasis KomputerPengendalian SIA Berbasis Komputer
Pengendalian SIA Berbasis Komputer
 
Sistem Pengendalian Internal
Sistem Pengendalian InternalSistem Pengendalian Internal
Sistem Pengendalian Internal
 
Model data dan desain database
Model data dan desain databaseModel data dan desain database
Model data dan desain database
 
Pengantar e-business
Pengantar e-businessPengantar e-business
Pengantar e-business
 
Siklus sistem informasi akuntansi
Siklus sistem informasi akuntansiSiklus sistem informasi akuntansi
Siklus sistem informasi akuntansi
 
Konsep Dasar Sistem Informasi Akuntansi
Konsep Dasar Sistem Informasi AkuntansiKonsep Dasar Sistem Informasi Akuntansi
Konsep Dasar Sistem Informasi Akuntansi
 
Pert 14 publikasi hasil penelitian
Pert 14 publikasi hasil penelitianPert 14 publikasi hasil penelitian
Pert 14 publikasi hasil penelitian
 
Pert 13 pengujian hasil penelitian
Pert 13  pengujian hasil penelitianPert 13  pengujian hasil penelitian
Pert 13 pengujian hasil penelitian
 
Pert 13 pengujian hasil penelitian
Pert 13  pengujian hasil penelitianPert 13  pengujian hasil penelitian
Pert 13 pengujian hasil penelitian
 
Pert 12 metode eksperimen
Pert 12   metode eksperimenPert 12   metode eksperimen
Pert 12 metode eksperimen
 
Pert 11 kesalahan penelitian
Pert 11  kesalahan penelitianPert 11  kesalahan penelitian
Pert 11 kesalahan penelitian
 
Slide trik skripsi ftik s1
Slide trik skripsi ftik s1Slide trik skripsi ftik s1
Slide trik skripsi ftik s1
 
Pert 9 proposal penelitian
Pert 9 proposal penelitianPert 9 proposal penelitian
Pert 9 proposal penelitian
 
Pert 6 literatur review
Pert 6 literatur reviewPert 6 literatur review
Pert 6 literatur review
 
Pert 5 pengolahan data
Pert 5 pengolahan dataPert 5 pengolahan data
Pert 5 pengolahan data
 
Pert 5 pengumpulan-data
Pert 5 pengumpulan-dataPert 5 pengumpulan-data
Pert 5 pengumpulan-data
 

Recently uploaded

RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptxRANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
muhammadiswahyudi12
 
COOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong dCOOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong d
delphijean1
 
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdfDaftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Tsabitpattipeilohy
 
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptxNADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
nadiafebianti2
 
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdfTUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
jayakartalumajang1
 
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptxMetode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
ssuser2537c0
 
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
AdityaWahyuDewangga1
 
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptxTUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
indahrosantiTeknikSi
 
436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt
rhamset
 
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
HADIANNAS
 
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASASURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
AnandhaAdkhaM1
 

Recently uploaded (11)

RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptxRANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
RANGKAIAN LISTRIK MATERI 7 ANALISIS MESH.pptx
 
COOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong dCOOLING TOWER petrokimia gresik okdong d
COOLING TOWER petrokimia gresik okdong d
 
Daftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdfDaftar Lembaga Penyedia Jasa Linkungan.pdf
Daftar Lembaga Penyedia Jasa Linkungan.pdf
 
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptxNADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
NADIA FEBIANTI TUGAS PPT(GAMMA APP).pptx
 
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdfTUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
TUGAS pelaksana pekerjaan jalan jenjang empat 4 .pptx -.pdf
 
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptxMetode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
Metode Clayperon (Persamaan Tiga Momen) untuk balok menerus.pptx
 
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
1. Paparan Penjelasan Permen PUPR 08 Tahun 2023.pdf
 
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptxTUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
TUGAS UJI KOMPETENSI-INDAH ROSANTI-AHLI UTAMA MANAJEMEN KONSTRUKSI.pptx
 
436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt436102098-0-K3-Elevator-Dan-Eskalator.ppt
436102098-0-K3-Elevator-Dan-Eskalator.ppt
 
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
Power Point TEMA 7 SUB TEMA 3 Pembelajaran 2
 
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASASURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
SURVEY REKAYASA SURVEY REKAYASA SURVEY REKAYASA
 

Pcd 2

  • 1. BAB 2 Pengenalan Dasar Citra Setelah bab ini berakhir, diharapkan pembaca memahami hal-hal berikut beserta contoh penerapannya.  Representasi citra digital  Kuantisasi citra  Kualitas citra  Cara membaca citra  Cara mendapatkan ukuran citra  Cara menampilkan citra  Pemahaman jenis citra  Konversi jenis citra
  • 2. 12 Pengolahan Citra, Teori dan Aplikasi 2.1 Representasi Citra Digital Citra digital dibentuk oleh kumpulan titik yang dinamakan piksel (pixel atau “picture element”). Setiap piksel digambarkan sebagai satu kotak kecil. Setiap piksel mempunyai koordinat posisi. Sistem koordinat yang dipakai untuk menyatakan citra digital ditunjukkan pada Gambar 2.1. 0 N-1 M-1 0 x y Posisi sebuah piksel Gambar 2.1 Sistem koordinat citra berukuran M x N (M baris dan N kolom) Dengan sistem koordinat yang mengikuti asas pemindaian pada layar TV standar itu, sebuah piksel mempunyai koordinat berupa (x, y) Dalam hal ini,  x menyatakan posisi kolom;  y menyatakan posisi baris;
  • 3. Mengenal Dasar Citra 13  piksel pojok kiri-atas mempunyai koordinat (0, 0) dan piksel pada pojok kanan-bawah mempunyai koordinat (N-1, M-1). Dalam praktik, penggunaan koordinat pada sistem tertentu mempunyai sedikit perbedaan. Misalnya, pada Octave dan MATLAB, piksel pojok kanan-atas tidak mempunyai koordinat (0, 0) melainkan (1, 1). Selain itu, setiap piksel pada Octave dan MATLAB diakses melalui notasi (baris, kolom). Mengingat buku ini menggunakan contoh dengan Octave dan MATLAB, maka notasi yang digunakan disesuaikan dengan Octave dan MATLAB. Sebagai contoh, koordinat piksel akan ditulis dengan (y, x) dan koordinat pojok kanan-atas akan dinyatakan dengan (1, 1). Dengan menggunakan notasi pada Octave dan MATLAB, citra dinyatakan dengan f(y, x) Sebagai contoh, citra yang berukuran 12x12 yang terdapat pada Gambar 2.2(a) memiliki susunan data seperti terlihat pada Gambar 2.2(b). Adapun Gambar 2.3 menunjukkan contoh penotasian f(y,x). Berdasarkan gambar tersebut maka:  f(2,1) bernilai 6  f(4,7) bernilai 237 Pada citra berskala keabuan, nilai seperti 6 atau 237 dinamakan sebagai intensitas.
  • 4. 14 Pengolahan Citra, Teori dan Aplikasi (a) Citra berukuran 12 x 12 6 6 6 6 6 6 6 89 237 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 6 6 6 6 6 89 237 237 237 237 6 6 6 6 6 6 89 237 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 237 6 6 89 237 (b) Data penyusun citra 12 x 12 Gambar 2.2 Citra dan nilai penyusun piksel f(4,7) = 237 6 6 6 6 6 6 6 89 237 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 6 6 6 6 6 89 237 237 237 237 6 6 6 6 6 6 89 237 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 6 6 89 237 237 237 237 6 6 89 237 237 6 6 89 237 237 237 237 237 6 6 89 237 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12 f(2,1) = 6 Gambar 2.3 Notasi piksel dalam citra
  • 5. Mengenal Dasar Citra 15 2.2 Kuantisasi Citra Citra digital sesungguhnya dibentuk melalui pendekatan yang dinamakan kuantisasi. Kuantisasi adalah prosedur yang dipakai untuk membuat suatu isyarat yang bersifat kontinu ke dalam bentuk diskret. Untuk mempermudah pemahaman konsep ini, lihatlah Gambar 2.4. Gambar 2.4(a) menyatakan isyarat analog menurut perjalanan waktu t, sedangkan Gambar 2.4(b) menyatakan isyarat diskret. (a) Isyarat analog (b)Isyarat diskret t t Gambar 2.4 Perbandingan isyarat analog dan isyarat diskret Pada isyarat digital, nilai intensitas citra dibuat diskret atau terkuantisasi dalam sejumlah nilai bulat. Gambar 2.5(a) menunjukkan contoh citra biner dua nilai intensitas berupa 0 (hitam) dan 1 (putih). Selanjutnya, gambar tersebut ditumpangkan pada grid 8x8 seperti yang diperlihatkan pada Gambar 2.5(b). Bagian gambar yang jatuh pada kotak kecil dengan luas lebih kecil dibanding warna putih latarbelakang, seluruh isi kotak dibuat putih. Sebaliknya, jika mayoritas hitam, isi kotak seluruhnya dibuat hitam. Hasil pengubahan ke citra digital tampak pada Gambar 2.5(c). Adapun Gambar 2.5(d) memperlihatkan bilangan yang mewakili warna hitam (0) dan putih (1). Dengan demikian, citra digital akan lebih baik (lebih sesuai aslinya) apabila ukuran piksel diperkecil atau jumlah piksel diperbanyak.
  • 6. 16 Pengolahan Citra, Teori dan Aplikasi (a) Citra yang akan dinyatakan dalam isyarat digital (b)Citra ditumpangkan pada grid 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 (c) Hasil kuantisasi (d) Representasi dalam bentuk angkaGambar 2.5 Digitalisasi citra biner 8x8 piksel untuk memperlihatkan bentuk piksel ideal Bagaimana halnya kalau gambar mengandung unsur warna (tidak sekadar hitam dan putih)? Prinsipnya sama saja, tetapi sebagai pengecualian, warna hitam diberikan tiga unsur warna dasar, yaitu merah (R = red), hijau (G = green), dan biru (B = blue). Seperti halnya pada citra monokrom (hitam-putih) standar, dengan variasi intensitas dari 0 hingga 255, pada citra berwarna terdapat 16.777.216 variasi warna apabila setiap komponen R, G, dan B mengandung 256 aras intensitas. Namun, kepekaan mata manusia untuk membedakan macam warna sangat terbatas, yakni jauh di bawah enam belas juta lebih tersebut. Untuk beberapa keperluan tertentu, jumlah gradasi intensitas saling berbeda. Tabel 2.1 memberikan lima contoh untuk citra beraras keabuan dan Tabel 2.2 menunjukkan empat contoh penggunaan citra berwarna (RGB). Perhatikan bahwa
  • 7. Mengenal Dasar Citra 17 jumlah gradasi juga bisa dinyatakan dalam jumlah digit biner atau bit 0 dan 1 sebagai sandi digital per piksel. Tabel 2.1 Jangkauan nilai pada citra keabuan Komponen warna Bit per Piksel Jangkauan Penggunaan 1 1 0-1 Citra biner: dokumen faksimili 8 0-255 Umum: foto dan hasil pemindai 12 0-4095 Kualitas tinggi: foto dan hasil pemindai 14 0-16383 Kualitas profesional: foto dan hasil pemindai 16 0-65535 Kualitas tertinggi: citra kedokteran dan astronomi Tabel 2.2 Jangkauan nilai pada citra berwarna Komponen Warna Bit per Piksel Jangkauan Penggunaan 3 24 0-1 RGB umum 36 0-4095 RGB kualitas tinggi 42 0-16383 RGB kualitas profesional 4 32 0-255 CMYK (cetakan digital) Dalam pengolahan citra, kuantisasi aras intensitas menentukan kecermatan hasilnya. Dalam praktik, jumlah aras intensitas piksel dapat dinyatakan dengan kurang dari 8 bit. Contoh pada Gambar 2.6 menunjukkan citra yang dikuantisasi dengan menggunakan 8, 5, 4, 3, 2, dan 1 bit.
  • 8. 18 Pengolahan Citra, Teori dan Aplikasi (a) 8 bit (b) 5 bit (c) 4 bit (d) 3 bit (e) 2 bit (f) 1 bit Gambar 2.6 Kuantisasi citra dengan menggunakan berbagai bit Pada kuantisasi dengan 1 bit, jumlah level sebanyak 2 (21 ). Oleh karena itu, warna yang muncul berupa hitam dan putih saja. Perlu diketahui, penurunan jumlah aras pada tingkat tertentu membuat mata manusia masih bisa menerima citra dengan baik. Sebagai contoh, citra dengan 4 bit (Gambar 2.6(c)) dan citra dengan 8 bit (Gambar 2.6(a)) praktis terlihat sama. Hal seperti itulah yang mendasari gagasan pemampatan data citra, mengingat citra dengan jumlah bit lebih rendah tentu akan membutuhkan tempat dan transmisi yang lebih hemat. 2.3 Kualitas Citra Di samping cacah intensitas kecerahan, jumlah piksel yang digunakan untuk menyusun suatu citra mempengaruhi kualitas citra. Istilah resolusi citra biasa dinyatakan jumlah piksel pada arah lebar dan tinggi. Resolusi piksel biasa dinyatakan dengan notasi m x n, dengan m menyatakan tinggi dan n menyatakan
  • 9. Mengenal Dasar Citra 19 lebar dalam jumlah piksel. Contoh pada Gambar 2.5 menunjukkan bahwa kalau gambar apel hanya dinyatakan dalam 8 x 8 piksel, citra yang terbentuk sangat berbeda dengan aslinya. Seandainya jumlah piksel yang digunakan lebih banyak, tentu akan lebih mendekati dengan gambar aslinya. Contoh pada Gambar 2.6 memperlihatkan efek resolusi piksel untuk menampilkan gambar yang sama. (a) Citra berukuran 512 x 512 piksel (b)Citra berukuran 256 x 256 piksel (c) Citra berukuran 128 x 128 piksel (d) Citra berukuran 64 x 64 piksel Gambar 2.7 Efek resolusi berdasar jumlah piksel pada citra ketika gambar disajikan dengan ukuran yang sama Terlihat bahwa pada resolusi tertentu citra menjadi kabur kalau dinyatakan dengan jumlah piksel yang makin sedikit.
  • 10. 20 Pengolahan Citra, Teori dan Aplikasi Resolusi spasial ditentukan oleh jumlah piksel per satuan panjang. Istilah seperti dpi (dot per inch) menyatakan jumlah piksel per inci. Misalnya, citra 300 dpi menyatakan bahwa citra akan dicetak dengan jumlah piksel sebanyak 300 sepanjang satu inci. Berdasarkan hal itu, maka citra dengan resolusi ruang spasial sebesar 300 dpi dicetak di kertas dengan ukuran lebih kecil daripada yang mempunyai resolusi ruang sebesar 150 dpi, meskipun kedua gambar memiliki resolusi piksel yang sama. 2.4 Membaca Citra Untuk kepentingan memudahkan dalam memahami hasil proses pengolahan citra, Anda perlu mengenal perintah yang berguna untuk membaca citra yang tersimpan dalam bentuk file. Octave menyediakan fungsi bernama imread. Bentuk pemanggilannya: Img = imread(nama_file_citra) Dalam hal ini, nama_file_citra menyatakan nama file citra yang hendak dibaca dan Img menyatakan larik (array) yang menampung data citra yang dibaca. Perlu diketahui, format-format gambar yang bisa dibaca oleh imread ditunjukkan pada Tabel 2.3. Tabel 2.3 Daftar format file gambar yang bisa dibaca oleh imread Format Gambar Ekstensi Keterangan TIFF .tif, .tiff Tagged Image File Format merupakan format citra yang mula-mula dibuat boleh Aldus. Kemudian, dikembangkan oleh Microsoft dan terakhir oleh Adobe. JPEG .jpg, .jpeg Joint Photographics Expert Group adalah format citra yang dirancang agar bisa memampatkan data dengan rasio
  • 11. Mengenal Dasar Citra 21 Format Gambar Ekstensi Keterangan 1:16. GIF .gif Graphics Interface Format merupakan format yang memungkinkan pemampatan data hingga 50%. Cocok untuk citra yang memiliki area yang cukup besar dengan warna yang sama. BMP .bmp Windows Bitmap merupakan format bitmap pada Windows. PNG .png Portable Network Graphics biasa dibaca „ping‟. Asal mulanya dikembangkan sebagai pengganti format GIF karena adanya penerapan lisensi GIF. Mendukung pemampatan data tanpa menghilangkan informasi aslinya. XWD .xwd XWindow Dump  Daftar file citra pada Tabel 2.3 berlaku untuk MATLAB.  Saat buku ini ditulis, Octave hanya mampu membaca file citra berformat PNG. Format lain hanya bisa dibaca dengan melibatkan utilitas lain seperti ImageMagick. Itulah sebabnya, seluruh contoh file citra dalam buku ini menggunakan format PNG.
  • 12. 22 Pengolahan Citra, Teori dan Aplikasi Contoh berikut digunakan untuk membaca file citra bernama mandrill.png yang terdapat pada folder C:Image. >> Img = imread(’C:Imagemandrill.png’); >>  Dengan cara seperti itu, data citra pada file mandrill.png disimpan di Img. Dalam hal ini, Img berupa larik yang mengandung M baris dan N baris. Mengingat file tersebut berisi data citra berskala keabuan, maka nilai pada setiap elemen dalam matriks menyatakan intensitas piksel. Nilai intensitas itu berupa bilangan bulat antara 0 sampai dengan 255.  Berbagai jenis citra (antara lain yang berskala keabuan) akan segera dibahas.  imread juga mendukung pembacaan citra 16 bit. Namun, pembahasan di buku ini menggunakan semua file citra berukuran 8 bit (tipe uint8). 2.5 Mengetahui Ukuran Citra Secara umum, ukuran matriks Img adalah M x N. Untuk mengetahui nilai M dan N yang sesungguhnya, dapat digunakan fungsi pada Octave yang bernama size. Contoh untuk mengetahui dimensi pada matriks Img: >> Ukuran = size(Img)  Ukuran = 512 512 >> Dengan cara seperti itu, terlihat bahwa Img berisi 512 baris dan 512 kolom piksel. Untuk mendapatkan jumlah baris dan jumlah kolom secara tersendiri, perlu diberikan perintah seperti berikut:
  • 13. Mengenal Dasar Citra 23 >> jum_baris = Ukuran(1);  >> jum_kolom = Ukuran(2);  >> Angka 1 dan 2 pada ukuran menyatakan indeks. Dengan cara seperti itu, jum_baris berisi jumlah baris pada larik Img dan jum_kolom berisi jumlah kolom pada larik Img. Sebagai alternatif, dapat ditulis perintah seperti berikut: >> [jum_baris, jum_kolom] = size(Img);  Dengan cara seperti itu, jum_baris berisi jumlah baris pada larik Img dan jum_kolom berisi jumlah kolom pada larik Img. 2.6 Menampilkan Citra Citra dapat ditampilkan dengan mudah melalui fungsi imshow. Contoh berikut digunakan untuk menampilkan citra yang terdapat di Img: >> imshow(Img);  >> Hasilnya berupa jendela yang menampilkan citra pada Img, seperti terlihat pada Gambar 2.8.
  • 14. 24 Pengolahan Citra, Teori dan Aplikasi Gambar 2.8 Contoh penampilan gambar pada Img Apabila dikehendaki untuk menampilkan dua citra di dua jendela masing- masing, fungsi figure perlu dipanggil terlebih dulu sebelum memanggil imshow. Contoh: >> Sungai = imread('C:Imageinnsbruck.png');  >> Bangunan = imread('C:Imagealtstadt.png');  >> figure(1); imshow(Sungai);  >> figure(2); imshow(Bangunan);  Hasilnya, gambar sungai ditampilkan di jendela 1 dan gambar bangunan diletakkan di jendela 2. Gambar 2.9 memperlihatkan keadaan pada kedua jendela, yaitu kebetulan sebagian jendela 2 menutup jendela 1.
  • 15. Mengenal Dasar Citra 25 Gambar 2.9 Menampilkan dua citra di jendela masing-masing Octave menyediakan fasilitas yang memungkinkan dua buah citra diletakkan dalam satu jendela. Berdasarkan larik Sungai dan Bangunan di depan, dapat dicoba untuk memberikan perintah berikut: >> close all;  >> subplot(1,2,1); imshow(Sungai);  >> subplot(1,2,2); imshow(Bangunan);  Hasilnya dapat dilihat pada Gambar 2.10.
  • 16. 26 Pengolahan Citra, Teori dan Aplikasi Gambar 2.10 Contoh pemakaian subplot Perintah close all digunakan untuk menutup semua jendela. Adapun pada subplot, argumen pertama menyatakan jumlah baris citra dan argumen kedua menyatakan jumlah kolom citra dalam jendela. Argumen ketiga menyatakan indeks citra dalam jendela yang bernilai antara 1 sampai dengan jumlah baris x jumlah kolom. 2.7 Mengenal Jenis Citra Ada tiga jenis citra yang umum digunakan dalam pemrosesan citra. Ketiga jenis citra tersebut yaitu citra berwarna, citra berskala keabuan, dan citra biner. 2.7.1 Citra Berwarna Citra berwarna, atau biasa dinamakan citra RGB, merupakan jenis citra yang menyajikan warna dalam bentuk komponen R (merah), G (hijau), dan B (biru). Setiap komponen warna menggunakan 8 bit (nilainya berkisar antara 0 sampai dengan 255). Dengan demikian, kemungkinan warna yang bisa disajikan
  • 17. Mengenal Dasar Citra 27 mencapai 255 x 255 x 255 atau 16.581.375 warna. Tabel 2.4 menunjukkan contoh warna dan nilai R,G, dan B. Tabel 2.4 Warna dan nilai penyusun warna Warna R G B Merah 255 0 0 Hijau 0 255 0 Biru 0 0 255 Hitam 0 0 0 Putih 255 255 255 Kuning 0 255 255 Gambar 2.12 menunjukkan pemetaan warna dalam ruang tiga dimensi. Adapun Gambar 2.13 menunjukkan keadaan suatu citra dan representasi warnanya. R B G 0 Putih CyanBiru 255 255 255 Hitam Merah Kuning Hijau Magenta Gambar 2.12 Warna RGB dalam ruang berdimensi tiga
  • 18. 28 Pengolahan Citra, Teori dan Aplikasi Gambar 2.13 Citra berwarna dan representasi warnanya. Setiap piksel dinyatakan dengan nilai R, G, dan B Perlu diketahui, sebuah warna tidak hanya dinyatakan dengan komposisi R, G, dan B tunggal. Pada Tabel 2.4 terlihat bahwa warna merah mempunyai R=255, G=0, dan B=0. Namun, komposisi R=254, G=1, B=1 juga berwarna merah. Citra berwarna pun dibaca melalui imread. Contoh: >> Kota = imread('C:Imageinnsbruckcity.png');  Nah, sekarang dapat dicoba untuk mengenakan size pada Kota: >> size(Kota)  ans = 747 500 3
  • 19. Mengenal Dasar Citra 29 >> Hasilnya menunjukkan bahwa Kota berupa larik berdimensi tiga, dengan dimensi ketiga berisi tiga buah nilai. Hal inilah yang membedakan dengan citra berskala keabuan. Secara umum, larik hasil pembacaan citra berwarna dapat digambarkan seperti berikut. 1 M 1 N 1 2 3 Komponen B Komponen G Komponen R 2 2 M-1 N-1 Gambar 2.14 Hasil pembacaan citra berwarna Dimensi ketiga menyatakan komponen R, G, B. Indeks pertama menyatakan komponen R, indeks kedua menyatakan komponen G, dan indeks ketiga menyatakan komponen B. Berikut adalah cara untuk mendapatkan komponen R, G, dan B pada larik Kota di depan: >> R = Kota(:,:,1);  >> G = Kota(:,:,2);  >> B = Kota(:,:,3); 
  • 20. 30 Pengolahan Citra, Teori dan Aplikasi Untuk menampilkan gambar berwarna, imshow bisa digunakan seperti kalau mau menampilkan gambar berskala keabuan. Contoh: >> figure(1);  >> imshow(Kota);  Hasilnya seperti berikut. Gambar 2.15 Citra berwarna 2.7.2 Citra Berskala Keabuan Sesuai dengan nama yang melekat, citra jenis ini menangani gradasi warna hitam dan putih, yang tentu saja menghasilkan efek warna abu-abu. Pada jenis gambar ini, warna dinyatakan dengan intensitas. Dalam hal ini, intensitas berkisar
  • 21. Mengenal Dasar Citra 31 antara 0 sampai dengan 255. Nilai 0 menyatakan hitam dan nilai 255 menyatakan putih. Contoh citra berskala keabuan telah dibahas pada Subbab 2.5. 2.7.3 Citra Biner Citra biner adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah nilai dari dua buah kemungkinan (yaitu nilai 0 dan 1). Nilai 0 menyatakan warna hitam dan nilai 1 menyatakan warna putih. Citra jenis ini banyak dipakai dalam pemrosesan citra, misalnya untuk kepentingan memperoleh tepi bentuk suatu objek. Sebagai contoh, perhatikan Gambar 2.16. Bagian kiri menyatakan citra beraras keabuan, sedangkan bagian kanan adalah hasil konversi ke citra biner. (a) Citra daun berskala keabuan (b) Citra biner Gambar 2.16 Citra di kanan menyatakan bentuk citra di kiri dengan mengabaikan komposisi warna Contoh berikut menunjukkan cara membaca dan menampilkan citra biner. >> Img = imread('c:Imagedaun_bin.png');  >> imshow(Img);  >> Hasilnya seperti berikut.
  • 22. 32 Pengolahan Citra, Teori dan Aplikasi Gambar 2.17 Tampilan citra biner 2.8 Mengonversi Jenis Citra Dalam praktik, seringkali diperlukan utuk mengonversi citra berwarna ke dalam bentuk citra berskala keabuan mengingat banyak pemrosesan citra yang bekerja pada skala keabuan. Namun, terkadang citra berskala keabuan pun perlu dikonversikan ke citra biner, mengingat beberapa operasi dalam pemrosesan citra berjalan pada citra biner. Bagaimana cara mengubah citra berwarna ke dalam citra berskala keabuan? Secara umum citra berwarna dapat dikonversikan ke citra berskala keabuan melalui rumus: 𝐼 = 𝑎 𝑥 𝑅 + 𝑏 𝑥 𝐺 + 𝑐 𝑥 𝐵, 𝑎 + 𝑏 + 𝑐 = 1 (2.1) dengan R menyatakan nilai komponen merah, G menyatakan nilai komponen hijau, dan B menyatakan nilai komponen biru. Misalnya, sebuah piksel mempunyai komponen R, G, B sebagai berikut:
  • 23. Mengenal Dasar Citra 33 R = 50 G = 70 B = 61 Jika a, b, dan c pada Persamaan 2.1 dibuat sama, akan diperoleh hasil seperti berikut: I = (50 + 70 + 60) / 3 = 60 Salah satu contoh rumus yang biasa dipakai untuk mengubah ke skala keabuan yaitu: 𝐼 = 0,2989 𝑥 𝑅 + 0,5870 𝑥 𝐺 + 0,1141 𝑥 𝐵 (2.2) Contoh berikut menunjukkan cara melakukan konversi dari citra berwarna ke citra biner. >> Img = imread('C:Imageinnsbruckcity.png');  >> Abu = uint8(0.2989 * double(Img(:,:,1)) + ...  0.5870*double(Img(:,:,2)) + ...  0.1141 * double(Img(:,:,3)));  >> imshow(Abu);   Tanda … menyatakan bahwa perintah pada baris tersebut masih mempunyai lanjutan pada baris berikutnya.  Tanda : berarti semua nilai.  double dipakai untuk melakukan konversi dari tipe bilangan bulat 8 bit (uint8) ke tipe double (yang memungkinkan pemrosesan bilangan real berpresisi ganda).  uint8 berguna untuk mengonversi dari tipe double ke uint8 (tipe bilangan bulat 8 bit). Hasilnya ditunjukkan pada Gambar 2.18.
  • 24. 34 Pengolahan Citra, Teori dan Aplikasi Gambar 2.18 Hasil konversi citra berwarna ke citra berskala keabuan Bagaimana halnya kalau dikehendaki untuk mengonversikan citra berskala keabuan ke citra biner? Strategi yang dipakai yaitu dengan menerapkan suatu nilai yang dikenal sebagai nilai ambang (threshold). Nilai tersebut dipakai untuk menentukan suatu intensitas akan dikonversikan menjadi 0 atau menjadi 1. Secara matematis, konversi dinyatakan dengan rumus: 𝑏(𝑖) = { 0, 𝑖 ≥ 𝑎 1, 𝑖 < 𝑎 (2.3) Contoh berikut menunjukkan cara melakukan konversi dari citra berskala keabuan ke dalam citra biner. Program : kebiner.m % KEBINER Digunakan untuk mengonversi file
  • 25. Mengenal Dasar Citra 35 % daun_gray.png ke citra biner Img = imread('c:Imagedaun_gray.png'); [tinggi, lebar] = size(Img); ambang = 210; % Nilai ini bisa diubah-ubah biner = zeros(tinggi, lebar); for baris=1 : tinggi for kolom=1 : lebar if Img(baris, kolom) >= ambang Biner(baris, kolom) = 0; else Biner(baris, kolom) = 1; end end end imshow(Biner); Akhir Program Sebelum mencoba program di atas, akan dibahas dulu kode yang mendasari program. Tanda % mengawali komentar. Semua tulisan dimulai dari tanda tersebut hingga akhir baris tidak dianggap sebagai perintah, melainkan sebagai penjelas bagi pembaca program. Kode Img = imread('c:Imagedaun_gray.png'); merupakan perintah untuk membaca citra daun_gray.png. Hasilnya disimpan di Img. Lalu, [tinggi, lebar] = size(Img); berguna untuk mendapatkan lebar dan tinggi citra. Pernyataan ambang = 210; digunakan untuk menentukan nilai ambang bagi penentuan konversi suatu piksel menjadi 0 atau 1. Nilai ambang berkisar antara 0 sampai dengan 255. Pernyataan for baris=1 : tinggi for kolom=1 : lebar
  • 26. 36 Pengolahan Citra, Teori dan Aplikasi if Img(baris, kolom) >= ambang Biner(baris, kolom) = 0; else Biner(baris, kolom) = 1; end end end menangani penentuan nilai 0 atau 1 pada citra biner untuk semua piksel dalam citra (ditangani dengan dua buah for). Penentuan dilakukan melalui pernyataan if. Dalam hal ini, Img(baris, kolom) menyatakan nilai intensitas piksel pada (baris, kolom). Setelah for baris=1 : tinggi berakhir, maka Biner berisi citra biner. Selanjutnya, citra ditampilkan melalui imshow(Biner); Untuk menjalankan program di depan, berikan perintah >> kebiner;  Hasilnya seperti berikut.
  • 27. Mengenal Dasar Citra 37 Gambar 2.19 Hasil konversi daun_gray.png ke bentuk biner Gambar 2.20 memperlihatkan berbagai bentuk hasil konversi citra dengan menggunakan berbagai nilai ambang.
  • 28. 38 Pengolahan Citra, Teori dan Aplikasi Ambang = 210 Ambang = 160 Ambang = 130 Ambang = 110 Ambang = 100 Ambang = 70 Gambar 2.20 Hasil konversi ke citra biner dengan berbagai nilai ambang Contoh-contoh yang telah dibahas memberikan gambaran tentang cara mewujudkan sendiri konversi antarjenis citra. Hal tersebut tentu saja penting untuk dipahami agar memudahkan di dalam mewujudkan sendiri penulisan program seandainya menggunakan bahasa pemrograman yang lain. Namun, sebagai penambah wawasan, sesungguhnya Octave menyediakan beberapa fungsi untuk kepentingan konversi citra. Tabel 2.5 memperlihatkan dua fungsi penting yang terkait dengan konversi citra.
  • 29. Mengenal Dasar Citra 39 Tabel 2.5 Fungsi yang disediakan Octave untuk kepentingan konversi ke aras keabuan Fungsi Kegunaan im2bw(I, level) im2bw(RGB, level) Berguna untuk mengonversikan citra berskala keabuan (I) ataupun berwarna (RGB) ke dalam citra biner dengan menggunakan level sebagai ambang konversi. Di MATLAB, jika argumen kedua (yaitu level) tidak disertakan, nilai 0,5 secara bawaan digunakan sebagai ambang konversi. Pada Octave, argumen kedua harus disertakan. Nilai balik fungsi ini berupa citra biner rgb2gray(RGB) Berguna untuk mengonversi citra berwarna (RGB) ke citra berskala keabuan. Nilai balik fungsi ini berupa citra berskala keabuan Pada beberapa contoh yang akan dibahas pada bab-bab selanjutnya, dua fungsi pada Tabel 2.5 akan digunakan dengan tujuan untuk menyederhanakan permasalahan dalam menuliskan kode. Agar terbiasa dengan kedua fungsi tersebut, berikut disajikan contoh penggunaannya. Contoh pertama: >> Img = imread('C:Imagedaun_gray.png');  >> BW = im2bw(Img, 0.6);  >> imshow(BW);  Hasilnya seperti berikut.
  • 30. 40 Pengolahan Citra, Teori dan Aplikasi Gambar 2.21 Hasil pembentukan citra biner melalui im2bw Adapun contoh pemakaian rgb2gray: >> RGB = imread('C:Imageinnsbruckcity.png');  >> Abu = rgb2gray(RGB);  >> imshow(Abu);  Hasilnya seperti berikut.
  • 31. Mengenal Dasar Citra 41 Gambar 2.22 Hasil pembentukan citra berskala keabuan melalui rgb2gray 2.9 Menyimpan Citra Untuk kepentingan menyimpan citra ke dalam file, fungsi imwrite pada Octave dapat digunakan. Pemakaiannya: imwrite(A, nama_file) A dapat berupa larik dua dimensi (citra berskala keabuan) ataupun larik berdimensi tiga (citra RGB). Contoh: >> Img = imread('C:Imagedaun_gray.png');  >> X = 255 – Img;  >> imwrite(X, ’negatif_daun.png’); 
  • 32. 42 Pengolahan Citra, Teori dan Aplikasi Perlu diketahui, X = 255 – Img; digunakan untuk memperoleh citra negatif dari citra daun_gray.png. Setelah imwrite dieksekusi, akan terbentuk negatif_daun.png pada folder kerja. Hasilnya diperlihatkan pada Gambar 2.23. Gambar 2.23 Hasil penyimpanan citra negatif_daun.png 1. Jelaskan mengenai koordinat citra. 2. Apa yang dimaksud dengan kuantisasi citra? 3. Jelaskan hubungan jumlah bit dalam kuantisasi citra dengan kompresi data. 4. Jelaskan makna kualitas citra. 5. Jelaskan pengertian : a) citra berwarna  Latihan
  • 33. Mengenal Dasar Citra 43 b) citra berskala keabuan c) citra biner 6. Jelaskan mekanisme untuk mengubah citra berwarna ke dalam citra berskala keabuan. 7. Bagaimana prinsip untuk mengubah citra berskala keabuan ke citra biner? 8. Ubahlah innsbruckcity.png ke citra berskala keabuan dan kemudian simpan dengan nama inns_gray.png. 9. Buatlah program untuk memproses citra daun_gray.png agar diperoleh hasil seperti berikut. 10. Gunakanlah fungsi im2bw untuk mengonversikan citra innsbruckcity.png ke dalam bentuk citra biner dengan menggunakan level sebesar 0,7, 0,5, dan 0,3. Bagaimana kesan Anda mengenai hasil-hasil yang diperoleh? 11. Buatlah program untuk menguantisasi citra daun_gray.png dengan 2 bit. Tampilkan hasilnya. Apakah hasilnya masih terlihat seperti aslinya? Bila tidak, dengan menggunakan berapa bit agar gambar tersebut terlihat sesuai dengan aslinya?