Vous êtes sur la page 1sur 163

By Yusron Rijal 2010

Pengolahan Citra Digital Pengolahan Citra Digital


Transformasi Itensitas Citra =====:::
Transformasi intensistas citra dilakukan untuk proses perbaikan citra,
seperti :
1. Gray Scale, yaitu pengubahan citra warna RGB dengan cara
menghitung nilai rata-ratanya dari warna RGB tersebut.
2. Brightness (kecerahan), digunakan untuk memberikan level
(peningkatan) kecerahan pada suatu citra yang kurang
pencahayaan
3. Contras (kontras), adalah tingkat penyebaran piksel-piksel ke
dalam intensitas warna.
4. Invers (negasi), operasi yang digunakan untuk mendapatkan
citra negatif, seperti film (negatif) dalam dunia cetak foto.
5. Threshold (pengambangan), operasi pemetaan suatu nilai piksel
berdasarkan syarat nilai ambang menjadi nilai baru yang
dikehendaki
Transformasi Itensitas Citra =====:::
Gray Scale
Gray Scale, yaitu pengubahan citra warna RGB dengan cara
menghitung nilai rata-ratanya dari warna RGB tersebut. Secara
sederhana rumusan fungsinya didefinisikan sebagai berikut.
|
|
.
|

\
| + +
=
3
)) , ( ) , ( ) , ( (
) , (
j i f j i f j i f
j i Gray
BLUE GREEN RED
Fungsi RGB2Gray
Transformasi Itensitas Citra =====:::
Brightness
Brightness (kecerahan), digunakan untuk memberikan level
(peningkatan) kecerahan pada suatu citra yang kurang pencahayaan.
Rumusan fungsinya didefinisikan sebagai berikut :
Fungsi Brightness
Px
New
= (Px
Lama
+ Level)
P
RED
= (P
RED
+ Level)
P
GREEN
= (P
GREEN
+ Level)
P
BLUE
= (P
BLUE
+ Level), atau
P
Gray
= (P
Gray
+ Level)
Transformasi Itensitas Citra =====:::
Contrass
Contras (kontras), adalah tingkat penyebaran piksel-piksel ke dalam
intensitas warna. Salah satu rumusan fungsinya didefinisikan sebagai
berikut :
Px
New
= (PK * (Px
Lama
- P)) + P

Dimana,
KP : Koefisian Penguatan
P = Nilai gray yang digunakan sebgai pusat pengontrasan (untuk
menyederhanakan kedinamisan P, maka P=nilai rata-rata gray
f(x,y) = Intensitas pixel citra
Contoh :
P
Gray
= (PK * (P
Gray
P)) + P
Transformasi Itensitas Citra =====:::
Contrass
Penentuan angka 50 diambil
dari nilai rata-rata
Transformasi Itensitas Citra =====:::
Invers
Invers (negasi), operasi yang digunakan untuk mendapatkan citra
negatif, seperti film (negatif) dalam dunia cetak foto. Shg untuk
mencari nilai negatifnya harus dikurangkan dengan nilai
maksimumnya, baik true colol dan gray level :
f(x,y) = f
Maksimum

f(x,y)
Dimana,
f
Maksimum
: bila citra true color = 255, bila gray level = 128
Transformasi Itensitas Citra =====:::
Invers
Invers (negasi), operasi yang digunakan untuk mendapatkan citra
negatif, seperti film (negatif) dalam dunia cetak foto. Shg untuk
mencari nilai negatifnya harus dikurangkan dengan nilai
maksimumnya, baik true colol dan gray level :
f(x,y) = f
Maksimum

f(x,y)
Dimana,
f
Maksimum
: bila citra true color = 255, bila gray level = 128
Transformasi Itensitas Citra =====:::
Thresholding
Threshold (pengambangan), operasi pemetaan suatu nilai piksel
berdasarkan syarat nilai ambang menjadi nilai baru yang dikehendaki.
Sehingga secara metematis dapat dirumuskan sbb :
X
1
, f(x,y) syarat_1
X
2
, f(x,y) syarat_2
X
3
, f(x,y) syarat_3
X
4
, f(x,y) syarat_4
.., .
.., .
X
n
, f(x,y) syarat_n
Transformasi Itensitas Citra =====:::
Thresholding
Color Thresholding Dinamik
Dengan Rata-Rata Acuan
Thresholding
Dinamik
Thresholding
Static
Transformasi Itensitas Citra =====:::
Thresholding
Color Thresholding Dinamik
Dengan Rata-Rata Acuan
Tranformasi Geometri =====:::
Pengolahan yang mengubah bentuk geometri citra baik dari segi posisi
titik, ukuran maupun orientasinya. Seperti :
1. Translasi (pergeseran), operasi yang melakukan penggeseran
posisi f(x,y) sesuai sumbu X (sebesar x1) atau sesuai sumbu Y
(sebesar y1)
2. Flipping (refleksi/pencerminan), operasi yang mencerminkan
posisi f(x,y) pada sumbu x, maupun sumbu y
3. Rotasi (pemutaran), merupakan operasi yang memutar posisi
f(x,y) sesuai pada bidang koordinat pada titik tertentu.
4. Scalling (Penskalaan), operasi yang digunakan untuk
melakukan pembesaran citra berdasarkan faktor skala k.
5. Croping (pemotongan), Operasi yang melakukan pemotongan
suatu bidang citra, dengan lebar W dan dengan tinggi H.
Translasi
Translasi (pergeseran), operasi yang melakukan penggeseran posisi f(x,y)
sesuai sumbu X (sebesar x1) atau sesuai sumbu Y (sebesar y1) atau
Proses Translasi Adalah Pergeseran Titik Yang Satu (x,y) Ke Titik Yang
Lain (x,y) sbb :
(x,y)
(x-m,y+n)
X = X + m
Y = Y + n
m dan n, adalah besar pergeseran
arah X dan arah Y
Berikut ini adalah ilustrasi pergeseran titik (x,y) sejauh -m dan +n.
Tranformasi Geometri =====:::
Flipping
Flipping (refleksi/pencerminan), operasi yang mencerminkan posisi
f(x,y) pada sumbu x, maupun sumbu y :
Berikut ini adalah ilustrasi pencerminan sejauh m=5
(x,y)
(x,y)
X=m=
5
Definisi Rumus :
X = (2 * m) X
Y = (2 * n) Y
Tranformasi Geometri =====:::
Flipping
Definisi Rumus :
X = (2 * m) X + 2
Y = (2 * n) Y + 2
?
Rotasi
Rotasi (pemutaran), merupakan operasi yang memutar posisi f(x,y) sesuai pada
bidang koordinat pada titik tertentu
Rumus Umum Rotasi pada citra dengan sumbu pusat di (0,0) dan dengan arah
berlawanan jarum jam.
x = x*Cos(u) + y*Sin(u) y = -x*Sin(u) + y*Cos(u)
Pada gambar di atas, nampak bahwa gambar tergeser 10
0
dengan pusat (0,0). Sehingga
secara matematis kita perlu menggeser pusat (0,0) ke titik tengah berwarna hijau
dengan pusat (x-C,y-C).
(x,y)
(x,y)
sehingga
10
0

Width (W)
H
e
i
g
h
t

(
H
)

w/2
h/2
x- (w/2) = [(x-(w/2)) * Cos(u)] + [y-(h/2))*Sin(u)]
x = { [(x-(w/2)) * Cos(u)] + [y-(h/2))*Sin(u)] } + w/2
y- (h/2) = [-(x-(w/2)) * Sin(u)] + [(y-(h/2))*Cos(u)]
y = { [-(x-(w/2)) * Sin(u)] + [y-(h/2))*Cos(u)] } + h/2
Tranformasi Geometri =====:::
Rotasi
Width (W)
H
e
i
g
h
t

(
H
)

w/2
h/2
x = { [(x-(w/2)) * Cos(u)] + [y-(h/2))*Sin(u)] } + w/2
y = { [-(x-(w/2)) * Sin(u)] + [y-(h/2))*Cos(u)] } + h/2
x = { [(x-(w/2)) * Cos(u)] - [y-(h/2))*Sin(u)] } + w/2
y = { [(x-(w/2)) * Sin(u)] + [y-(h/2))*Cos(u)] } + h/2
Atau
Berlawanan Arah
Jarum Jam.
Se-Arah Dengan
Jarum Jam.
45
0

Jika hasil nilai pixel posisi (x,y)
R=45, G=45, B=158 maka
diberikan juga nilai pada
neighboor-nya yang posisinya
sama dengan nilai posisi (x,y)
(Interpolasi)
Tranformasi Geometri =====:::
Scalling
Scalling (Penskalaan), operasi yang digunakan untuk melakukan
pembesaran citra berdasarkan faktor skala k. Mari kita perhatikan
ilustrasi sbb :
Pembesaran sebesar 2x
pada sumbu X
Pembesaran sebesar 2x
pada sumbu Y
Pembesaran sebesar 2x
Pada sumbu X dan sumbu Y
Tranformasi Geometri =====:::
Scalling
Operasi pembesaran/pengecilan dilakukan dengan cara mengkalikan skalar
(s_x,s_y) baik posisi x dan posisi y dengan interval nilai (1,2,3 . N)
Tranformasi Geometri =====:::
Scalling
Pengecilan Ukuran Citra
Operasi pengecilan dilakukan dengan cara mengkalikan skalar (s_x,s_y) baik posisi
x dan posisi y dengan interval nilai (0.01,0.02,0.03.1)
Misalkan, Nilai Pixel posisi (5,5) memiliki R=6, G=6, B=6. Jika diskalakan s_x=0.6 dan s_y=0.8,
maka interpolasi neighboor-nya :
Pixel (5-1,5-1) R=6, G=6, B=6
Pixel (5,5-1) R=6, G=6, B=6
Pixel (5+1,5-1) R=6, G=6, B=6
Pixel (5-1,5) R=6, G=6, B=6
Pixel (5,5) R=6, G=6, B=6
Pixel (5+1,5) R=6, G=6, B=6
Pixel (5-1,5+1) R=6, G=6, B=6
Pixel (5,5+1) R=6, G=6, B=6
Pixel (5+1,5+1) R=6, G=6, B=6
Ilustrasi Interpolasi Neighboor
Tranformasi Geometri =====:::
Scalling
Pembesaran Ukuran Citra
Operasi pembesaran dilakukan dengan cara mengkalikan skalar (s_x,s_y) baik
posisi x dan posisi y dengan interval nilai (1,2,3 . N)
Misalkan, Nilai Pixel posisi (5,5) memiliki R=6, G=6, B=6. Jika diskalakan s_x=2 dan s_y=1.5,
maka interpolasi neighboor-nya :
Pixel (5-1,5-1) R=6, G=6, B=6
Pixel (5,5-1) R=6, G=6, B=6
Pixel (5+1,5-1) R=6, G=6, B=6
Pixel (5-1,5) R=6, G=6, B=6
Pixel (5,5) R=6, G=6, B=6
Pixel (5+1,5) R=6, G=6, B=6
Pixel (5-1,5+1) R=6, G=6, B=6
Pixel (5,5+1) R=6, G=6, B=6
Pixel (5+1,5+1) R=6, G=6, B=6
Ilustrasi Interpolasi Neighboor
Tranformasi Geometri =====:::
Scalling
Pembesaran Ukuran Citra
Operasi pembesaran dilakukan dengan cara mengkalikan skalar (s_x,s_y) baik
posisi x dan posisi y dengan interval nilai (1,2,3 . N)
Misalkan, Nilai Pixel posisi (5,5) memiliki R=6, G=6, B=6. Jika diskalakan s_x=2 dan s_y=1.5,
maka interpolasi neighboor-nya :
Pixel (5-1,5-1) R=6, G=6, B=6
Pixel (5,5-1) R=6, G=6, B=6
Pixel (5+1,5-1) R=6, G=6, B=6
Pixel (5-1,5) R=6, G=6, B=6
Pixel (5,5) R=6, G=6, B=6
Pixel (5+1,5) R=6, G=6, B=6
Pixel (5-1,5+1) R=6, G=6, B=6
Pixel (5,5+1) R=6, G=6, B=6
Pixel (5+1,5+1) R=6, G=6, B=6
Ilustrasi Interpolasi Neighboor
Tranformasi Geometri =====:::
Croping
Croping (pemotongan), Operasi yang melakukan pemotongan suatu
bidang citra, dengan lebar W dan dengan tinggi H. Mari kita perhatikan
ilustrasi sbb :
X
Y
X1
X2
Y1
Y2
(0,0)
width
height
(X1,Y1)
(X2,Y2)
Y2-Y1
X
Y
X1-X1
X2-X1
Y1-Y1
(X1,Y1)
(X2,Y2)
height
width
Tranformasi Geometri =====:::
Croping
Contoh :
Y2-Y1
X
Y
X1-X1
X2-X1
Y1-Y1
(X1,Y1)
(X2,Y2)
height
width
X
Y
X1
X2
Y1
Y2
(0,0)
width
height
(X1,Y1)
(X2,Y2)
Tranformasi Geometri =====:::
Biasanya segmentasi citra merupakan langkah awal
dan penting dalam serangkaian proses yang bertujuan
untuk memahami keseluruhan gambar
Aplikasi segmentasi citra seperti,
Identifikasi obyek dalam citra-bergerak untuk menganalisa
bentuk dan ukuran
Identifikasi objek dalam sebuah Video obyek (MPEG4)
Penelusuran jumlah mobil dalam citra-bergerak
Segmentasi =====:::
Pengantar Segmentasi Citra
Example 1
Segmentasi citra dalam grayscale
Kemudahan segmntasi dalam mode grayscale, akan
mengakibatkan ketidak-akuratan dalam memberikan label pada
obyek tersegmentasi
Segmentasi =====:::
Pengantar Segmentasi Citra
Example 2
Segmentasi citra berbasis pada teksture
Enables object surfaces with varying patterns of grey to be
segmented
Mengaktifkan permukaan objek dengan berbagai pola abu-abu akan
tersegmentasi
Segmentasi =====:::
Pengantar Segmentasi Citra
Example 3
Segmentation berbasis gerakan
Kesulitan utama dalam segmentasi adalah langkah tepat yang
bagiamanakah yang dibutuhkan untuk mengestimasi/memperkirakan
area-area yang akan diproses
Segmentasi harus berdasar pada perkiraan-perkiraan, secara
menyeluruh, dan alur flow yang benar
Segmentasi =====:::
Pengantar Segmentasi Citra


Segmentasi adalah pembagian citra menjadi
beberapa bagian/daerah (bagian yang
bermakna)
2 pendekatan utama yang digunakan adalah
Segmentasi berbasis histogram
Segmentasi koherensi (daya tarik) ruang (ciri
warna, kedalaman, arah)
Segmentasi adalah implementasi proses
pengambangan (Thresholding)
Segmentasi =====:::
Teknik Segmentasi Citra
Segmentasi =====:::
Teknik Segmentasi Citra
Thresholding / Pengambangan
Alasan dilakukannya Thresholding :
1. Untuk mengidentifikasi daerah obyek, yang direpresentasikan
dalam bentuk wilayah dalam citra. Seperti memisahkan obyek
dengan latar belakangnya, pixel-pixel obyek diberikan nilai 1
dan pixel-pixel latar belakang diberikan nilai 0.
2. Untuk menganilsis bentuk geometri/morfologi obyek (bentuk
lebih penting dari pixelnya) guna pengambilan keputusan.
3. Untuk mengubah citra resolusi tinggi menjadi biner.
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
P-Tile
Mode Method
Double Threshold
Iterative
Lokal Transformasi Warna
RGB
HSI
YCbCr
TSL
Sudut Pandang Keseluruhan Citra Sudut Pandang Bagian Lokal Citra
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
P-Tile, proses threshold ini dilakukan berdasarkan :
- Asumsi bahwa sebuah obyek adalah memiliki sebuah ukuran tertentu,
misal ukurannya adalah P
- P adalah total ukuran citra dalam bentuk histogram
- Pilihlah nilai ambang dalam .%P, yang menggambarkan ilustrasi
sebagian citra
Sudut Pandang Keseluruhan Citra
Segmentasi =====:::
Teknik Segmentasi Citra
Contoh Hasil P-Tile
25% P 45% P
65% P
Citra Sumber
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
Mode Method, Threshold didasarkan nilai lembah dari sebuah histogram
- Cari puncak dan lembah dari sebuah histogram
- Set sesuai pada nilai lembah histogram tersebut






Mencari Lembah dalam histogram bukanlah hal sepele.
- Tetapi logika pencariannya adalah mencari titik tertinggi (puncak),
lalu carilah lembahnya.
- Carilah nilai lembah tertinggi dari histogram untuk dijadikan
sebagai nilai threshold
Sudut Pandang Keseluruhan Citra
Segmentasi =====:::
Teknik Segmentasi Citra
Contoh Hasil Mode Threshold
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
Sudut Pandang Keseluruhan Citra
Double Thresholding, Threshold seperti pada mode threshold.
- Cari puncak dan lembah dari sebuah histogram
- Set sesuai pada nilai lembah histogram tersebut






Mencari 2 Lembah dalam histogram bukanlah hal sepele.
- Tetapi logika pencariannya adalah mencari titik tertinggi (puncak),
lalu carilah lembahnya.
- Carilah nilai lembah tertinggi dari histogram untuk dijadikan
sebagai nilai threshold
Segmentasi =====:::
Teknik Segmentasi Citra
Contoh Hasil Double Threshold
Citra Sumber
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
Sudut Pandang Keseluruhan Citra
- Ambil Sembarang nilai threshold
- Cari dan bagi rata-rata total nilai pixel dalam 2 kategori (u
1
,u
2
).
Batasan pembagian kategori tersebut adalah threshold.
- Perbaiki nilai threshold tersebut secara iteratif (sebanyak total
matrik citra)
- Update nilai threshold dengan (u
1
+u
2
) /2
Iteratif Thresholding, Threshold yang didasarakan pada rata2 nilai gray
secara iteratif.
Segmentasi =====:::
Teknik Segmentasi Citra
Contoh Hasil Iterativ Threshold
Citra Sumber Citra Hasil
Segmentasi =====:::
Teknik Segmentasi Citra
Jenis Proses Thresholding
Lokal Transformasi Warna (TW), Jenis threshold yang didasarkan pada
transformasi warna RGB, HIS, YCbCr, TSL dan sebagainya.
Sudut Pandang Bagian Lokal Citra
Threshold (pengambangan), operasi pemetaan suatu nilai piksel
berdasarkan syarat nilai ambang menjadi nilai baru yang dikehendaki.
Sehingga secara metematis dapat dirumuskan sbb :
X
1
, f(x,y) TW_1
X
2
, f(x,y) TW_2
X
3
, f(x,y) TW_3
X
4
, .
.., .
X
n
, f(x,y) TW_n
Segmentasi =====:::
Teknik Segmentasi Citra
Contoh Hasil Lokal Transformasi Warna
Citra Sumber
Citra Hasil
Threshold HSI
Transformasi Warna =====:::
- Warna-warna yang dapat ditangkap oleh mata manusia merupakan
kombinasi cahaya dengan panjang berbeda. Kombinasi yang
memberikan rentang warna paling lebar adalah red (R), green(G)dan
blue (B)
- Warna merupakan sesuatu yang
ditimbulkan atas pantulan cahaya terhadap
objek-objek dengan intensitas tertentu
- Warna adalah persepsi yang dirasakan oleh
sistem visual manusia terhadap panjang
gelombang cahaya yang dipantulkan oleh
objek.
Warna ???
Koq Tanya Warna ?
Memang artinya Apa
?
Dibakukan tahun 1931.
Mendefinisikan model-model
warna.
RGB
XYZ
CMY
Disahkan tahun 1941
Mendifinisikan model-model
warna seperti di bawah.
RGB
YIQ / HSV / HSI
CIE
(Commission International de lEclairage)
NTSC
(National Television Systems Committee)
Adapun konversi warna-warna tersebut adalah, sebagaimana di
bawah :
1. NTSC_RGB To YIQ
(
(
(

(
(
(

=
(
(
(

i
i
i
i
i
i
B
G
R
Q
I
Y
312 . 0 523 . 0 211 . 0
322 . 0 274 . 0 596 . 0
114 . 0 857 . 0 299 . 0
Transformasi Warna =====:::
Jenis Warna
2. YIQ To NTSC_RGB
Transformasi Warna =====:::
Jenis Warna
(
(
(

(
(
(

=
(
(
(

i
i
i
i
i
i
Q
I
Y
B
G
R
701 . 1 104 . 1 000 . 1
647 . 0 273 . 0 000 . 1
621 . 0 956 . 0 000 . 1
3. NTSC_RGB To CIE_RGB
(
(
(
(

(
(
(


=
(
(
(

i B
i G
i
R
B
G
R
NTSC
NTSC
NTSC
i
i
i
_
_
_
128 . 1 059 . 0 001 . 0
159 . 0 753 . 0 114 . 0
151 . 0 146 . 0 167 . 1
4. NSTS_RGB To CIY_XYZ
(
(
(

(
(
(

=
(
(
(

i B
i G
i R
Z
Y
X
NTSC
NTSC
NTSC
i
i
i
_
_
_
117 . 1 066 . 0 000 . 0
159 . 0 587 . 0 299 . 0
201 . 0 174 . 0 607 . 0
5. CIY_XYZ To NTSC_RGB
(
(
(

(
(
(



=
(
(
(

i
i
i
NTSC
NTSC
NTSC
Z
Y
X
i B
i G
i R
896 . 0 118 . 0 058 . 0
028 . 0 000 . 2 985 . 0
288 . 0 533 . 0 910 . 1
_
_
_
Transformasi Warna =====:::
Pemodelan Warna
RGB To CMYK
CMYK Pada dasarnya warna cyan, magenta dan yellow adalah warna
komplementer terhadap red, green dan blue.
Artinya, jika dua buah warna dicampur dengan perbandingan yang tepat dapat
menghasilkan warna putih. Misalnya magneta dicampur dengan perbandingan yang
tepat dengan green akan menghasilkan warna putih, oleh karena itu magenta
disebut komplemen dari green.
C = 1 R
M = 1 G
Y = 1 B
K = Min(C,M,Y)
C = C K
M = M K
Y = Y K
Model CMY digunakan untuk mencetak tinta berwarna, tetapi warna CMY tidak dapat
menghasilkan warna hitam dengan baik. Oleh karena itu terdapat penyempurnaan
menjadi warna CMYK dengan K perhitungan ke empat dengan bentuk :
Transformasi Warna =====:::
Pemodelan Warna
RGB To HSI / HSV
Pada dasarnya RGB bagus untuk menampilkan informasi warna. Akan tetapi untuk
kasus segmentasi atau pun identifikasi obyek RGB tidak cocok untuk
mempresentasikan sebuah obyek.
I (itensitas) Atribut yang menyatakan banyaknya cahaya yang diterima oleh mata
dan mengabaikan jernis warna (warnanya hanya diantara gelap dan putih)
H (hue) Menyatakan warna sebenarnya, seperti merah, violet, dan kuning. Hue
bisa menentukan warna yang seperti kemerah-merahan (warna kulit), kehijauan, dsb
dari sumber cahaya.. Hue juga berasosiasi dengan panjang gelombang, shg nilainya
dapat diklasifikasikan
S (saturasi) Menyatakan kemurnian warna cahaya, yaitu mengindikasikan
seberapa banyak warna putih diberikan pada jenis warna tertentu.
H
S
G R
B
( ) B G R I + + =
3
1
) , , (
) (
3
1 B G R Min
B G R
S
+ +
=
) )( ( ) ( 2
2
2
1
B G B R G R
B G R
Cos H
+

=

Catt :Cos
-1
= Cos hiperbolik
Transformasi Warna =====:::
Pemodelan Warna
RGB To HSI / HSV
Transformasi RGB Ke HIS juga memiliki alternatif fungsi yang lain sebagaimana
berikut :
RGB To HSI
HIS To RGB
Transformasi Warna =====:::
Pemodelan Warna
RGB To TSL
Jenis warna ini mirip dengan HIS,
- Tint = kadar warna asli
- Saturation = pencahayaan yang diterima dalam bidang
- Lightness = kecerahan atau itensitas
B G R L
G
g
g r
g
g r
T
g r
S
114 . 0 587 . 0 299 . 0
0 , 0
0 ,
4
3
2
) / arctan(
0 ,
4
1
2
) / arctan(
) ( 5
9
2
1
2 2
+ + =

=
< +
> +
=
(

+
=
t
t
Dimana:
3
1
3
1

+ +
=

+ +
=
B G R
G
g
B G R
R
r
Transformasi Warna =====:::
Pemodelan Warna
RGB To YCbCr
- Model warna YCbCr ini terdiri dari komponen luminasi (Y) dan dua
komponen kromatisasi terhadap biru (Cb) dan merah (Cr)
- Model warna ini banyak digunakan dalam siaran gelombang televisi
- Bukanlah suatu model warna absolut dan merupakan model cara
pengkodean dari model warna RGB
) * 07 . 0 ( ) * 707 . 0 ( ) * 222 . 0 ( B G R Y + + =
) * 05 . 0 ( ) * 332 . 0 ( ) * 159 . 0 ( B G R Cb + + =
) * 081 . 0 ( )) * 419 . 0 ( * ) * 5 . 0 (( B G R Cr + =
Transformasi Warna =====:::
Pemodelan Warna
Contoh CMY :
Transformasi Warna =====:::
Pemodelan Warna
Contoh HSI:
Transformasi Warna =====:::
Pemodelan Warna
Contoh TSL :
Transformasi Warna =====:::
Pemodelan Warna
Contoh YCbCr :
Jenis-Jenis Warna yang
lainnya, diekplorasi dan
didalami sendiri
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
Filtering merupakan suatu proses yang mengambil sinyal frekuensi tertentu dan
membuang sinyal pada frekuensi lain

Filtering pada citra menggunakan prinsip yang sama, yaitu mengambil fungsi
citra pada frekuensi-frekuensi tertentu dan membuang fungsi citra pada
frekuensi lain

Operasi pemfilteran ini dilakukan dengan cara memeriksa citra per-blog bagian
dengan ukurang tertentu. Misal dengan ukuran 3 x3 pixel

Operasi Filter/Mask secara statistik ada beberapa macam, seperti :
- Minimum Filter
- Maksimum Filter
- Median Filter
- Median Filter, dll
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
Ilustrasi Pemfilteran dengan memeriksa per-blog bagian dalam ukuran
3x3 pixel.
Pixel matrik (3x3) citra di atas
diambil secara acak dan diberikan
operasi filter statistik, caranya
adalah dengan melakukan proses
SORTING
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
Ilustrasi Pemfilteran dengan memeriksa per-blog bagian dalam ukuran
3x3 pixel.
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
Contoh Pemfilteran dengan memeriksa per-blog bagian dalam ukuran 3x3 Px
1. Median Filter
4. Mean / Average Filter
2. Minimum Filter
3. Maximum Filter
- Menghilangkan impulse noise
(bedakan dengan Gaussian Noise yang
dapat dihilangkan dengan Low-pass
filter)
- Impulse noise has a number of pixels
that have conspicuosly wrong
intensities like 0 or 255
- Mengganti nilai piksel fokus dengan
nilai piksel minimum piksel sekitar
- Mengganti nilai piksel fokus dengan
nilai piksel maksimum piksel sekitar
- Mengganti nilai piksel fokus dengan
rata-rata jumlah piksel dalam window
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
Contoh Pemfilteran dengan memeriksa per-blog bagian dalam ukuran 3x3 Px
1. Median Filter
4. Mean / Average Filter
2. Minimum Filter
3. Maximum Filter
8 9 10 10 10 10 10 12 35
8 9 10 10 10 10 10 12 35
8 9 10 10 10 10 10 12 35
8 9 10 10 10 10 10 12 35
Filtering (Operasi Pemfilteran)=====:::
Filtering / Masking - Statistik
1. Median Filter
2. Minimum Filter
3. Maximum Filter
4. Mean / Average Filter
Sumber Citra
Restorasi Citra
Reduksi Noise & Filtering (Masking) =====:::
Noise (efek degradasi citra) adalah setiap gangguan (kotorang/bintik-bintik) pada
citra, baik yang disebabkan karena faktor teknis maupun faktor alat.
Untuk membersihkan citra dari noise, diperlukan teknik restorasi citra.
Salah satu beda restorasi citra dan perbaikan kualitas citra. Restorasi citra memiliki
model bagi proses degradasi, sehingga usaha restorasi diorientasikan pada inverse
proses ini. Sedangkan perbaikan kualitas citra yang mengalami penurunan kualitas kualitas
selama pembentukan citra.
Hampir semua citra mengalami
degradasi dalam akuisisinya
Degradasi bisa disebabkan oleh: kamera
yang tidak `fokus, gerakan kamera atau
objek saat pemotretan, noise yang
dihasilkan oleh sensor (scanner, CCD)
dsb.
Noise
Apakah Ini Yang Disebut Noise yah ??
Reduksi Noise & Filtering (Masking) =====:::
Noise
Beberapa noise dapat dimodelkan dengan menggunakan berbagai
probability density function (PDF)
Asumsinya adalah: noise di dunia nyata mirip dengan noise yang
dimodelkan, sehingga restorasi citra lebih mudah dilakukan
Image Asli Histogram Image Asli
Reduksi Noise & Filtering (Masking) =====:::
Noise
Noise Model (Uniform Noise)
PDF untuk Uniform Noise adalah:
Reduksi Noise & Filtering (Masking) =====:::
Noise
Noise Model (Gaussian Noise)
PDF untuk Gaussian Noise adalah:
z: graylevel
: mean
o: standar deviasi
Reduksi Noise & Filtering (Masking) =====:::
Noise
Noise Model (Salt-n-Pepper Noise)
PDF untuk Salt-n-Pepper (Impulse) noise adalah:
Reduksi Noise & Filtering (Masking) =====:::
Contoh Noise
Reduksi Noise & Filtering (Masking) =====:::
Reduksi Noise Dgn Filtering
Pada pertemuan sebelumnya untuk perbaikan citra dilakukan secara independent,
dimana suatu pixel diolah tanpa memperhatikan keadaan warna dari pixel
tetangganya.
Restorasi citra adalah suatu mekanisme untuk memperbaiki suatu citra yang
disebabkan oleh gangguan-gangguan (noise).
5 5 4
7 7 6
1 4 1
Reduksi Noise & Filtering (Masking) =====:::
Maksimum Filter
Maksimum filter digunakan untuk memfilter pixel dengan intensitas rendah dan
melewatkan titik dengan intensitas tinggi. Intensitas warna pengganti dipilih dari
titik tetangga terdekat yang mempunyai intensitas yang paling tinggi .
Jadi, Seluruh citra diperiksa per-blok bagian dengan ukuran blok 3x3 pixel (bisa
lebih ukurannya).
1, 1, 7, 4, 4, 5, 5, 6, 7
5 5 4
7 2 6
1 4 1
1, 1, 2, 4, 4, 5, 5, 6, 7
Reduksi Noise & Filtering (Masking) =====:::
Minimum Filter
5 5 4
7 1 6
1 4 1
Maksimum filter digunakan untuk memfilter pixel dengan intensitas rendah dan
melewatkan titik dengan intensitas tinggi. Intensitas warna pengganti dipilih dari
titik tetangga terdekat yang mempunyai intensitas yang paling tinggi .
Jadi, Seluruh citra diperiksa per-blok bagian dengan ukuran blok 3x3 pixel (bisa
lebih ukurannya).
1, 1, 1, 4, 4, 5, 5, 6, 7
5 5 4
7 2 6
1 4 1
1, 1, 2, 4, 4, 5, 6, 7
Reduksi Noise & Filtering (Masking) =====:::
Median Filter
5 5 4
7 4 6
1 4 1
Median filter digunakan untuk memfilter pixel dengan intensitas rendah dan
tinggi dengan melewatkan titik dengan intensitas menengah. Intensitas warna
pengganti dipilih dari titik tetangga terdekat yang mempunyai intensitas
menengah .
Jadi, Seluruh citra diperiksa per-blok bagian dengan ukuran blok 3x3 pixel (bisa
lebih ukurannya).
1, 1, 4, 4, 4, 5, 5, 6, 7
5 5 4
7 2 6
1 4 1
1, 1, 2, 4, 4, 5, 5, 6, 7
Reduksi Noise & Filtering (Masking) =====:::
Mean Filter
5 5 4
7 4 6
1 4 1
Filter mean merupakan filter rata-rata dari penjumlahan rata-rata titik-titik
tetangga. Saetiap pixel tetangga memberikan kontribusi sebanyak 1/9 dari
keseluruhan warna. Filter ini biasa disebut filter blur.
Jadi, Seluruh citra diperiksa per-blok bagian dengan ukuran blok 3x3 pixel (bisa
lebih ukurannya).
1, 1, 4, 4, 4, 5, 5, 6, 7
5 5 4
7 2 6
1 4 1
1, 1, 2, 4, 4, 5, 5, 6, 7
Average(1, 1, 4, 4, 4, 5, 5, 6, 7) = 4
Convolution =====:::
Convolution
Konvolusi diskrit banyak digunakan dalam pengolahan citra untuk
image smoothing, edge detection dan efek-efek lainnya
Konvolusi dilakukan berdasarkan jumlah bobot dari piksel-piksel
tetangga
Bobot ditentukan berdasarkan ukuran window berupa matriks
Window atau disebut juga sliding window bergerak sepanjang piksel
yang ada pada citra berukuran kecil yang biasa disebut convolution
mask atau convolution kernel
Orde matriks biasanya ganjil sehingga hasil konvolusi tepat berada di
tengah-tengah
Semakin besar ukuran window, beban komputasi akan semakin
meningkat


Convolution =====:::
Convolution
Untuk fungsi diskrit, Konvolusi didefinisaikan sabagai :



Pada operasi konvolusi di atas, g(x) disebut kernel konvolusi atau filter
Kernel g(x) merupakan suatu jendela yang dioperasikan secara
bergeser pada sinyal masukan f(x), yang dalam hal ini, jumlah
perkalian kedua fungsi setiap titik merupakan hasil konvolusi yang
dinyatakan dengan keluaran h(x)
Secara teknis operasi membutuhkan algoritma untuk mendeteksi
pixel ketetanggannya seperti ilustrasi gambar di bawah.

=
= =
a b
b y a x g b a f y x g y x f y x h ) , ( ) , ( ) , ( * ) , ( ) , (

=
= =
a b
b y a x g b a f y x g y x f y x h ) , ( ) , ( ) , ( * ) , ( ) , (
Convolution =====:::
Convolution
Ilustrasi Operasi Konvolusi didefinisikan sebagai berikut :
f(i,j)
Kernel / Masking Citra Awal Citra Baru
Ilustrasi
f(i,j) , disimpan pada posisi matrik citra sama dengan pada posisi P5
f(i,j) = (A*P1) + (B*P2) + (C*P3) + (D*P4) + (E*P5) + (F*P6) + (G*P7) + (H*P8) + (I*P9)
Catatan :
Operasi konvolusi dilakukan dengan mengeser kernel konvolusi pixel per pixel
Hasil konvolusi disimpan dalam matrik yang baru

Convolution =====:::
Convolution
H =
Kernel
X =
Citra
Informasi Pergeseran Kernel


Konvolusi
Convolution =====:::
Convolution
Citra Awal Kernel
Proses
.
.
.
1 2 3 9
Convolution =====:::
Convolution
Operasi konvolusi dilakukan dengan cara mengeser kernel konvolusi
dari pixel ke pixel
Hasil konvolusi disimpan dalam matrik yang baru
Misalkan f(x,y) adalah citra gray level, sedangkan g(x,y) adalah kernel
matrik

4 4 3 5 4
6 6 5 5 2
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
f(x,y) = g(x,y) =
0 -1 0
-1 4 -1
0 -1 0
Citra 5 x 5
Kernel 3 x 3
Tanda menyatakan posisi (0,0) dari kernel
Convolution =====:::
Convolution
Tempatkan kernel pada sudut kiri atas, kemudian hitung nilai pixel
pada posisi (0,0) dari kernel
4 4 3 5 4
6 6 5 5 2 3
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Hasil konvolusi =3. Nilai ini dihitung dengan cara berikut :
(0 x 4) + ( -1 x 4) + (0 x 3) + (-1 x 6) + (-1 x 5) + (0 x 5) + (-1 x 6)
+(0 x 6) = 3
Convolution =====:::
Convolution
Geser kernel satu pixel ke kanan, kemudian hitung nilai pixel pada
posisi (0,0) dari kernel
Hasil konvolusi =0. Nilai ini dihitung dengan cara berikut :
(0 x 4) + ( -1 x 3) + (0 x 5) + (-1 x 6) + (4 x 5) + (-1 x 5) + (-1 x 6) +(0 x 6) +
(-1 x 6) + (0 x 6) =0
4 4 3 5 4
6 6 5 5 2 3 0
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Convolution =====:::
Convolution
Geser kernel satu pixel ke kanan, kemudian hitung nilai pixel pada
posisi (0,0) dari kernel
Hasil konvolusi =2. Nilai ini dihitung dengan cara berikut :
(0 x 3) + ( -1 x 5) + (0 x 4) + (-1 x 5) + (4 x 5) + (-1 x 2) + (0 x 6) + (-1 x 6)
+ (0 x 2) = 2
4 4 3 5 4
6 6 5 5 2 3 0 2
5 6 6 6 2
6 7 5 5 3
3 5 2 4 4
Convolution =====:::
Convolution
Selanjutnya, Geser Kernel Satu Pixel ke bawah, lalu mulai lagi
melakukan Konvolusi dari sisi kiri citra. Setiap kali Konvolusi, Geser
Kernel Satu Pixel Ke Kanan:
Hasil konvolusi =0. Nilai ini dihitung dengan cara berikut :
(0 x 6) + ( -1 x 6) + (0 x 5) + (-1 x 5) + (4 x 6) + (-1 x 6) + (0 x 6) +
(-1 x 7) + (0 x 5) = 0
4 4 3 5 4
6 6 5 5 2 3 0 2
5 6 6 6 2 0
6 7 5 5 3
3 5 2 4 4
(i)
Convolution =====:::
Convolution
Hasil konvolusi =2. Nilai ini dihitung dengan cara berikut :
(0 x 6) + ( -1 x 5) + (0 x 5) + (-1 x 6) + (4 x 6) + (-1 x 6) + (0 x 7) + (-1 x 5)
+ (0 x 5 ) =2
(ii)
4 4 3 5 4
6 6 5 5 2 4 0 8
5 6 6 6 2 0 2
6 7 5 5 3
3 5 2 4 4
Convolution =====:::
Convolution
Hasil konvolusi =6. Nilai ini dihitung dengan cara berikut :
(0 x 5) + ( -1 x 5) + (0 x 2) + (-1 x 6) + (4 x 6) + (-1 x 2) + (0 x 5) + (-1 x 5)
+ (0 x 3 ) =6
(iii)
4 4 3 5 4
6 6 5 5 2 4 0 8
5 6 6 6 2 0 2 6
6 7 5 5 3
3 5 2 4 4
Convolution =====:::
Convolution
Dengan cara yang sama seperti tadi , maka pixel pixel pada
baris ke tiga dikonvolusi sehingga menghasilkan :
Sebagai catatan, Jika hasil Konvolusi menghasilkan nilai Pixel
negatif, maka nilai tersebut di jadikan 0 (nol), sebaliknya jika hasil
Konvolusi menghasilkan nilai pixel lebih besar dari nilai keabuan
maksimum, maka nilai tersebut dijadikan nilai keabuan maksimum

4 0 8
0 2 6
6 0 2

Convolution =====:::
Convolution
Masalah muncul bila Pixel yang di konvolusi adalah Pixel
pinggir (border), karena beberapa Koefisien Konvolusi tidak dapat
di Posisikan pada Pixel pixel Citra ( Efek Menggantung ), seperti
contoh di bawah ini:
4 4 3 5 4 ?
6 6 5 5 2 ?
5 6 6 6 2 ?
6 7 5 5 3
3 5 2 4 4
Masalah Menggantung Seperti ini Selalu Terjadi pada
Pixel pixel pinggir kiri, kanan, atas, dan bawah.
Convolution =====:::
Convolution
1. Pixel pixel pinggir di abaikan, tidak diKonvolusi. Solusi ini banyak di
pakai di dalam pustaka fungsi fungsi pengolahan citra. Dengan cara
seperti ini, maka pixel pixel pinggir nilainya sama seperti citra asal..
2. Dupliaksi elemen citra, misalnya elemen kolom pertama disalin ke
kolom M+1, begitu juga sebaliknya, lalu konvolusi pixel pixel pinggir
tersebut.
3. Elemen yang di tandai dengan ? diasumsikan bernilai 0 atau
Konstanta yang lain, Sehingga pixel pixel pinggir dapat di lakukan .
Cara Mengatasi Pixel-Pixel Pinggir Saat Proses Konvolusi :
4 4 3 5 4
6 4 0 8 2
5 0 2 6 2
6 6 0 2 3
3 5 2 4 4
Hasil Operasi Konvolusi
Convolution =====:::
Kernel/Masking Convolution
Beberapa prinsip dalam pemfilteran, yaitu :

1. Bila ingin mempertahankan gradiasi atau banyaknya level warna pada
suatu citra, maka yg dipertahankan adalah frekuensi rendah dan
frekuensi tinggi dapat dibuang atau dinamakan dengan Low Pass Filter
*) Banyak digunakan untuk reduksi noise dan proses blur

2. Bila ingin mendapatkan threshold atau citra biner yg menunjukkan
bentuk suatu gambar maka frekuensi tinggi dipertahankan dan frekuensi
rendah dibuang atau dinamakan dengan High Pass Filter
*) Banyak digunakan untuk menentukan garis tepi (edge) atau sketsa dari
citra

3. Bila ingin mempertahankan gradiasi dan bentuk, dengan tetap
mengurangi nyaknya bidang frekuensi (bandwidth) dan membuang sinyal
yg tdk perlu maka frekuensi rendah dan frekuensi tingi dipertahankan,
sedangkan frekuensi tengahan dibuang ata dinamakan dengan Band Stop
Filter
*)Dikembagkan dengan menggunakan wavelet transform untuk proses
kompresi, restorasi dan denoising
Convolution =====:::
Convolution
Keterangan :
X H Y =
Operasi Konvolusi
Kernel Citra
Filter kernel H adalah suatu matrik yang menyatakan model filter (dalam
spacial) yang menjadi operator dalam proses filter pada gambar.
Bentuk atau komposisi nilai yang ada di dalam filter kernel
menunjukkan jenis filter yang digunakan.
(
(
(

=
1 1 1
1 4 1
1 1 1
12
1
H
(
(
(

=
1 0 3
3 0 1
1 0 1
H
(
(
(



=
1 1 1
1 5 . 0 1
1 1 1
H
LOW PASS FILTER HIGH PASS FILTER BAND STOP FILTER
Convolution =====:::
Convolution
Ciri Low Pass Filter:
LPF digunakan untuk melakukan proses efek blur dan reduksi noise.
Ciri-ciri kernel dari LPF adalah semua nilainya positif dan jumlah dari
semua nilainya sama dengan satu
0 ) , ( > y x H 1 ) , ( =

xy
y x H
dan
Ciri High Pass Filter:
HPF digunakan untuk melakukan proses deteksi tepi.
Ciri-ciri kernel dari HPF adalah nilai-nilainya terdiri positif, nol dan negatif,
dan jumlah dari semua nilainya sama dengan nol
0 ) , ( =

xy
y x H
Ciri Band Pass Filter:
Band Pass Filter (BPF) adalah suatu bentuk filter yang mengambil frekwensi
tinggi dan rendah dengan batasan tertentu.
BPF digunakan untuk melakukan proses efek sharpeness.
Ciri-ciri kernel dari BPF adalah nilai-nilainya terdiri positif, nol dan negatif,
dan jumlah dari semua nilainya tidak sama dengan nol
0 ) , ( =

xy
y x H
Convolution =====:::
Kernel/Masking Convolution
- Mask sering juga disebut filter.
- Filtering/Masking pada citra adalah suatu proses dimana diambil
sebagian sinyal dari frekuensi tertentu dan membuang sinyal
pada frekuensi yg lain.


Contoh bentuk filter/maks/kernel antara lain :

1. Emboss 4. Laplacian

2. Blur 5. Band Stop Filter

3. Sharpening 6. Dll
Convolution =====:::
Kernel/Masking Convolution
Embossing
1 0 0
0 0 0
0 0 1

Blurrings
Sharpening
1 1 1
16 8 16
1 1 1
8 4 8
1 1 1
16 8 16
W=9a-1
Band Stop
1 -1 1
-1 0.5 -1
1 -1 1
1 1 1
9 9 9
0 1 0 1 1 1 1 2 1
1 1
1 5 1 1 9 1 2 5 2
9 9 9
0 1 0 1 1 1 1 2 1
1 1 1
9 9 9
W





Convolution =====:::
Kernel/Masking Convolution
Citra Sumber
Laplacian Sharpening Bluring
High Pass Filter Band Stop Filter
Contoh Hasil :
Deteksi Tepi =====:::
Edge Detection
Deteksi tepi adalah suatu proses yang menghasilkan tepi-tepi dari
objek gambar.
Titik(x,y) dikatakan tepi (edge) Bila titik tersebut mempunyai
perbedaan gradien (itensitas) warna yang tinggi dengan tetangga.
Berdasarkan prinsip-prinsip filter pada citra maka tepi suatu gambar
dapat diperoleh menggunakan High Pass Filter (HPF).
Operasi yang digunakan untuk menyelesaikan deteksi tepi adalah
menggunakan proses konvolusi (seperti materi sebelumnya)
Ada beberapa operator digunakan untuk deteksi tepi :
Sobel Operator
Roberts Operator
Prewitt Operator
Kirsh Compass Mask
Robinson Compass Mask
Sobel Operator
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
Deteksi tepi sobel menggunakan duabuah matriks mask. Kedua mtriks
tersebut digunakan untuk mendeteksi perbedaan gradien pada arah
sumbu X dan Sumbu Y
Matriks MX gradien pada
sumbu X
Matriks MY gradien pada
sumbu Y
Gradien (G) didapat dari akar dari penjumlahan kuadrat (Magnitude)
dari Gx dan Gy, seperti sbb :
2 2
Mx My Magnitude Edge + =
|
.
|

\
|
=

Mx
My
Tan Direction Edge
1
Robert Operator
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
- Operator srobert menggunakan dua buah matriks mask untuk
mendeteksi gradien pada arah diagonal .
- Hanya menandai titik tepi
- Baik untuk mencari image biner
Matriks M2 gradien
diagonal kanan atas ke kiri bawah
Matriks M1 gradien
diagonal kiri atas ke kanan bawah
2 2
2 1 M M Magnitude Edge + =
Prewit Operator
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
MIRIP Dengan Operator SOBEL
Kirsch Compass Mask
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
Robinson Compass Mask
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
Deteksi Tepi (Edge Detection) =====:::
Edge Detection
Robinson_Compass_Mask Kirsch_Compass_Mask










R-0
R-1
R-2
R-3
R-4
R-5
R-6
R-7
R-0
R-1
R-2
R-3
R-4
R-5
R-6
R-7
Representasi Wilayah Chain Code =====:::
Operasi Chain Code
Chain Code, adalah suatu cara untuk merepresentasikan batas area yang
berbentuk garis berurutan (sequence). Hal ini dilakukan untuk
memisahkan antara obyek wilayah kajian dengan latar belakang.
Chain code selalu digunakan untuk mendiskripsikan batas objek, atau luas
beberapa piksel yang bernilai 1 pada citra biner .
Chain code mendiskripsikan sebuah objek dengan segmen garis yang
berurutan berdasarkan arah penelusuran yang diberikan
Chain code, merupakan representasi yang dilakukan dengan 8 segmen seperti
ilustrasi di bawah.
Model Arah Chain code, bisa kita modifikasi krn yang terpenting dalam
impelmentasi adalah konspe chain code, seperti di bawah ini.

0
1
2
3
4
5
6
7
2
1
0
7
6
5
4
3
Representasi Wilayah Chain Code =====:::
Operasi Chain Code
Representasi Wilayah Chain Code =====:::
Operasi Chain Code
Misalkan, Ada sebuah citra berukuran 7x6 pixel berbentuk biner, yang akan
mengilustrasikan proses chain code.
Chain
Code
2
1
0
7
6
5
4
3
Representasi Wilayah Chain Code =====:::
Operasi Chain Code
Contoh Implementasi
Representasi Wilayah Chain Code =====:::
Operasi Chain Code
Contoh Implementasi
Image Sumber Biner Thresholding Chain Code Result
Hitung Luasan Chain Code =====:::
Menghitung Luasan
Hitung Luasan, Pada dasarnya adalah implementasi algoritma Chain-Code.
Luasan yang dimaksudkan, adalah banyaknya jumlah piksel pada suatu area .
Chain code mendiskripsikan sebuah objek dengan segmen garis yang
berurutan berdasarkan arah penelusuran yang diberikan
0
1
2
3
4
5
6
7
2
1
0
7
6
5
4
3
Hitung Luasan Chain Code =====:::
Menghitung Luasan
1. Titik hitam diujung kanan atas adalah pointer di titik awal proses perhitungan luas. Dari
sini akan didapatkan nilai luas sementara adalah 1 px .






2. Selanjutnya adalah mencari kemana arah selanjutnya. Berdasarkan chain code, pencarian
selalu dimulai dari arah kanan. Jika sebelah kanan dari pointer sekarang berwarna putih,
maka pointer akan digeser ke kanan
Langkah-Langkah :
Hitung Luasan Chain Code =====:::
Menghitung Luasan
3. Setelah pointer digeser ke kanan, piksel yang ditinggalkan akan diberi warna merah sebagai
penanda bahwa piksel ini sudah dihitung. Dan luas sementara bernilai sama dengan 2 px
4. Selain menghitung, proses ini juga menyimpan arah pointer selanjutnya. Jadi pada pos.isi ini
disimpan nilai 1 karena pointer bergerak ke kanan (prioritas chain code) .
5. Dari posisi pointer sekarang, dicari lagi arah selanjutnya berdasarkan chain code seterusnya
sampai menemui jalan buntu , seperti ilustrasi proses-proses di bawah.
Langkah-Langkah :
Hitung Luasan Chain Code =====:::
Menghitung Luasan
6. Pada posisi pointer terjepit dan tidak terdapat piksel berwarna putih pada kedelapan arah.
Padahal masih terdapat 1 piksel yang berwarna putih. Disinilah fungsi dari penyimpanan
arah pointer
7. Pada keadaan seperti ini, posisi pointer akan dimundurkan ke arah dari mana pointer itu
datang. Tetapi kali ini nilai luas tidak ikut dihitung, hingga bertemu titik yang putih. Sehingga
kelanjutan prosesnya adalah sebagai berikut :





8. Setelah dimundurkan, dari posisi itu dilakukan lagi pencarian warna putih. Ternyata
disebelah kiri pointer masih terdapat warna putih sehingga pointer digeser ke kiri. Nilai
sementara luas adalah 16 .
Langkah-Langkah :
Hitung Luasan Chain Code =====:::
Menghitung Luasan
9. Masih berupa nilai sementara karena proses belum berakhir. Setelah mencapai ujung,
dilakukan proses pengecekan lagi secara mundur . Menggunakan informasi arah yang telah
disimpan, pointer akan berjalan mundur sampai pada posisi awal semula (awal).
10. Pengecekan mundur dilakukan untuk mengantisipasi apabila ada warna putih yang tertinggal
sebagaimana terjadi pada langkah ke-12. Proses ini dilakukan berulang-ulang bergantung
kepada banyaknya area warna putih yang terdapat pada citra.
11. Kemudian dari posisi pointer yang sekarang, dicari lagi arah mundur selanjutnya
berdasarkan arah chain code yang telah ditentukan. Sebagai penanda bahwa piksel ini sudah
dihitung mundur maka piksel yang ditinggalkan akan diberi warna biru, ilustrasi proses
penghitungan luas secara mundur adalah sebagai berikut.
Langkah-Langkah :
Hitung Luasan Chain Code =====:::
Menghitung Luasan
Contoh Hasil :
Motion Detection Deteksi Gerakan =====:::
Mendeteksi Gerakan
1. Deteksi Gerakan, adalah teknik yang menggunakn pengurangan
himpunan image (image subtraction).
2. Proses image subtraction ini bertujuan untuk mendeteksi gerakan yang
terjadi antara dua (2) buah citra masukan .
3. Sesuai dengan nama dari proses, yang dilakukan pada proses ini
adalah membandingkan 2 buah citra dengan cara saling
mengurangkannya.
4. Secara logika apabila hasil dari pengurangan tersebut adalah 0,
berarti pada titik/piksel tersebut tidak terjadi perubahan,
5. Sebaliknya bila hasil pengurangan tersebut bernilai lebih dari 0, maka
berarti pixel di posisi tersebut terjadi perubahan.
Motion Detection Deteksi Gerakan =====:::
Mendeteksi Gerakan
Langkah-Langkah :
-
Motion Detection Deteksi Gerakan =====:::
Mendeteksi Gerakan
Langkah-Langkah :
-
Operasi Morfologi =====:::
Operasi Morfologi
- Operasi Morfologi, merupakan pemrosesan mencari kerangka bentuk
dari suatu obyek.
- Bentuk kerangka obyek dapat berupa huruf, angka, sel, akar, bintang
dan lain sebagainya, mari Kita Perhatikan Ilustrasi di bawah :
Operasi Morfologi =====:::
Operasi Morfologi
- Citra dalam materi sebelumnya, dipandang sebagai fungsi itensitas
f(x,y). Sedangkan dalam sudut pandag morfologi, Citra dipandang
sebagai himpunan.
- Untuk pemahaman yang lebih sederhana, maka pemrosesan citra
morfologi dilakukan secara biner. Meskipun pada dasarnya morfologi,
bisa dilakukan dalam bentuk level keabuan.
- Citra biner adalah citra yang hanya memiliki 2 macam nilai intensitas,
0 dan 1, 0 dan 255 dan lain sebagainya.
Proses Morfologis :
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
Himpunan (set) adalah kumpulan objek-objek yang berbeda.
Objek di dalam himpunan disebut elemen, unsur, atau anggota.
Contoh himpunan adalah seperti sebuah himpunan mahasiswa
matematika, himpunan karyawan, himpunan citra huruf dll, seperti
contoh himpunan aneka jenis huruf di bawah ini.
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
1. Irisan (intersection)

- Notasi : A B = { x , x e A dan x e B }

Contoh 14.
(i) Jika A = {2, 4, 6, 8, 10} dan B = {4, 10, 14, 18}, maka A B = {4, 10}
(ii) Jika A = { 3, 5, 9 } dan B = { -2, 6 }, maka A B = C. Artinya: A // B


=
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
2. Gabungan (union)

- Notasi : A B = { x , x e A atau x e B }

Contoh 15.
(i) Jika A = { 2, 5, 8 } dan B = { 7, 5, 22 }, maka A B =
{ 2, 5, 7, 8, 22 }
(ii) A C = A

=
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
3. Komplemen ( complement )

-
Notasi : A = { x
,
x
e
U , x
e
A }



Contoh 16.
Misalkan U = { 1, 2, 3, ..., 9 },
(i) jika A = {1, 3, 7, 9}, maka A = {2, 4, 6, 8}
(ii) jika A = { x | x /2
e
P , x < 9 }, maka A = { 1, 3, 5, 7, 9 }
=
=
Komplemen
Komplemen
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
4. Selisih ( difference )

-
Notasi : A B = { x
,
x
e
A dan x
e
B } = A

B



Contoh 18.
(i) Jika A = { 1, 2, 3, ..., 10 } dan B = { 2, 4, 6, 8, 10 }, maka A B
= { 1, 3, 5, 7, 9 } dan B A =
C

(ii) {1, 3, 5} {1, 2, 3} = {5}, tetapi {1, 2, 3} {1, 3, 5} = {2}
-
=
Operasi Morfologi =====:::
Operasi Morfologi
Operasi Morfologi, dipandang Sebagai Operasi Himpunan.
5. Beda Setangkup ( Symmetric Difference )

-
Notasi: A

B = ( A

B ) ( A

B ) = ( A B )

( B A )







Contoh 19.
Jika A = { 2, 4, 6 } dan B = { 2, 3, 5 }, maka A

B = { 3, 4, 5, 6 }
(
( )
)
= -
Operasi Morfologi =====:::
Operasi Morfologi
Citra Masukan
S A
A =
{(0,0),(0,1),(0,2),
(1,0),(1,1),(1,2),
(2,0),(2,1),(2,2)}

Misalkan citra dipandang sebagai himpunan Objek S dan Objek A
dapat direpresentasikan sebagai bentuk himpunan dari posisi-
posisi (x,y) yang bernilai 1 (1=hitam/keabuan, 0 = putih)
S =
{(0,0),(0,1),(1,0)}

Operasi Morfologi =====:::
Operasi Morfologi
Citra Masukan
x
x
Contoh 1 Contoh 2
Contoh 3
- Proses teknis operasi morfologi mirip dengan proses konvolusi.
Namun morfologi dilakukan dengan cara passing mask/kernel
(struktur elemen) pada sebuah citra.
- Mask/kernel (struktur elemen) dapat berukuran sebarang
ordo.
- Mask/kernel (struktur elemen) juga memiliki poros. Akan tetapi
titik poros/titik origin/titik acuan.
Operasi Morfologi =====:::
Operasi Morfologi
Beberapa Operasi Dasar Morfologi
- DILASI, pada sebuah citra.
- EROSI dapat berukuran sebarang ordo.
- OPENING juga memiliki poros.
- CLOSING, pada sebuah citra.
- HIT Or MISS dapat berukuran sebarang ordo.
- THINNING-SKELETON juga memiliki poros.
- BOUNDARY EXTRACTION, pada sebuah citra.
Operasi Morfologi =====:::
Operasi Morfologi
DILASI
Merupakan proses penggabungan titik-titik latar (0) menjadi
bagian dari objek (1), berdasarkan structuring element S
yang digunakan.
Teknis dilasi adalah:
Untuk setiap titik pada A, lakukan hal berikut:
- Letakkan titik poros S pada titik A tersebut
- Beri angka 1 untuk semua titik (x,y) yang terkena /
tertimpa oleh struktur S pada posis tersebut.
Operasi Morfologi =====:::
Operasi Morfologi

S A D
Posisi poros
( (x,y) A )
S
xy
(0,0) {(0,0),(1,0),(0,1)}
(0,1) {(0,1),(1,1),(0,2)}
(0,2) {(0,2),(1,2),(0,3)}
..... ......
(2,2) {(2,2),(2,3),(3,2)}
S = {(0,0),(0,1),(1,0)}
= {poros,(+0,+1),(+1,+0)}

A = {(0,0),(0,1),(0,2),
(1,0),(1,1),(1,2),
(2,0),(2,1),(2,2)}
D
Capture proses pada
saat posisi poros S ada di (2,2)
Operasi Morfologi =====:::
Operasi Morfologi
Contoh DILASI
Operasi Morfologi =====:::
Operasi Morfologi
EROSI
Erosi merupakan proses penghapusan titik-titik objek (1) menjadi
bagian dari latar (0), berdasarkan structuring element S yang
digunakan.

Teknik erosi adalah:
- Untuk setiap titik pada A, lakukan hal berikut:
- letakkan titik poros S pada titik A tersebut
- jika ada bagian dari S yang berada di luar A, maka titik
Poros dihapus / dijadikan latar.
S A S A E = ) , (
S A E
Posisi poros
( (x,y) A )
S
xy
Ko
de
(0,0) {(0,0),(1,0),(0,1)}
1
(0,1) {(0,1),(1,1),(0,2)} 1
(0,2) {(0,2),(1,2),(0,3)} 0
..... ......
(2,2) {(2,2),(2,3),(3,2)} 0
S = {(0,0),(0,1),(1,0)}
= {poros,(+0,+1),(+1,+0)}

A = {(0,0),(0,1),(0,2),
(1,0),(1,1),(1,2),
(2,0),(2,1),(2,2)}
D
Capture proses pada
saat posisi poros S ada di (2,2).
Titik (2,2) akan dihapus karena ada
bagian dari S yang berada di luar A
Operasi Morfologi =====:::
Operasi Morfologi
EROSI
Operasi Morfologi =====:::
Operasi Morfologi
Contoh EROSI
Operasi Morfologi =====:::
Operasi Morfologi
OPENING
Opening adalah proses erosi yang diikuti dengan dilasi.

Efek yang dihasilkan adalah menghilangnya objek-objek
kecil dan kurus, memecah objek pada titik-titik yang kurus

Umum men-smooth-kan batas dari objek besar tanpa
mengubah area objek secara signifikan

Persamaannya adalah:
S S A S A = ) (
Operasi Morfologi =====:::
Operasi Morfologi
OPENING
A S
A ( A S ) S
S
Operasi Morfologi =====:::
Operasi Morfologi
Contoh OPENING
Operasi Morfologi =====:::
Operasi Morfologi
CLOSING
Closing adalah proses dilasi yang diikuti dengan erosi.

Efek yang dihasilkan adalah mengisi lubang kecil pada
objek, menggabungkan objek-objek yang berdekatan.

Secara umum men-smooth-kan batas dari objek besar
tanpa mengubah area objek secara signifikan

Persamaannya adalah:
S S A S A = - ) (
Operasi Morfologi =====:::
Operasi Morfologi

A
A S ( A S ) S
S
Operasi Morfologi =====:::
Operasi Morfologi
Contoh CLOSING
Operasi Morfologi =====:::
Operasi Morfologi

- Suatu structuring element S dapat direpresentasikan dalam
bentuk (S1,S2) dimana S1 adalah kumpulan titik-titik objek
(hitam) dan S2 adalah kumpulan titik-titik latar (putih)

- Hit-and-misss transform A*S adalah kumpulan titik-titik
dimana S1 menemukan match di A dan pada saat yang
bersamaan S2 juga menemukan match di luar A
Contoh:
S1= {b,e,h}
S2={a,d,g,c,f,i}
a b c
d e f
g h i
Operasi Morfologi =====:::
Operasi Morfologi

A*S
Yang match dipertahankan
Yang tidak match dihapus
Operasi Morfologi =====:::
Operasi Morfologi
Contoh HIT or MISS
Operasi Morfologi =====:::
Operasi Morfologi
THINNING
Tujuan: me-remove piksel tertentu -
pada objek sehingga tebal objek -
tersebut menjadi hanya satu piksel.
Thinning tidak boleh:
- Menghilangkan end-point
- Memutus koneksi yang ada
- Mengakibatkan excessive erosi
Salah satu kegunaan thinning adalah pada proses
pengenalan karakter/huruf
Ada banyak cara mengimplementasikan thinning, salah
satu diantaranya adalah dengan hit-or-miss transform
Operasi Morfologi =====:::
Operasi Morfologi
THINNING
Thinning dapat didefinisikan sebagai:
Thinning(A,{B}) = A (A * {B})
= A ((...(A*B1)*B2)..Bn)
Dengan B1, B2, B3..Bn adalah Structuring element.

Note:
A-(A*B) berarti kebalikan dari A*B
Yang match dihapus
Yang tidak match dipertahankan
Operasi Morfologi =====:::
Operasi Morfologi
THINNING
Operasi Morfologi =====:::
Operasi Morfologi
THINNING
Operasi Morfologi =====:::
Operasi Morfologi
Contoh THINNING
Thinning
Operasi Morfologi =====:::
Operasi Morfologi
Contoh THINNING
Operasi Morfologi =====:::
Operasi Morfologi
Boundary Detection
Merupakan proses penggabungan bila stucture element S
semuanya sama dengan titik-titik latar.
Teknis Boundary Detection adalah:
Untuk setiap titik pada A, lakukan hal berikut:
- Letakkan titik poros S pada titik A tersebut
- Beri angka 1 untuk titik poros (x,y) bila semua A terkena /
tertimpa oleh struktur S pada posis tersebut.
Operasi Morfologi =====:::
Operasi Morfologi
Contoh THINNING
Histogram Citra =====:::
Gambaran penyebaran nilai-nilai pixel (R,G,B,Gray) dari suatu bagian citra.
Histogram juga dapat menggambarkan frekwensi kemunculan setiap nilai
intensitas warna (realtif), kadar kecerahan, kadar kontras dari sebuah
gambar. Jadi Secara Matematis Histogram Dapat Dihitung Dengan Rumus :
H
i
= (n
i
/ n), dimana i = 1,2,3..N-1
n
i
= jumlah pixel (R,G,B, / Gray)
n = jumlah keseluruhan Citra
Misalkan, Terdapat Matrik dengan ukuran (8 x 8) Px seperti gambar di
bawah, dengan nilai keabuan antara 0-15, maka perhitungan histogramnnya
adalah seperti halaman selanjutnya :
Histogram Citra =====:::
Matrik Keabuan
Ordo 8 x 8
Perhitungan histogramnnya adalah :

Vous aimerez peut-être aussi