23 November 2021
Universitas Sriwijaya
Fakultas Ilmu Komputer
Jurusan Sistem Komputer
Psychology Citra Medis
Cognition and
Keamanan lalulintas
Neuroscience
Mobil Cerdas
Domain aplikasi
Pengolahan citra/video
Tekni Sipil
Audio digital
Digitizer :
- Sampling
- Quantization
video digital
Signal video analog
PAL/SECAM
- 25 frame/second
- 576 lines useful/frame
CNST
- 30 frame/second
- 483 lines useful / frame
Representasi Citra Digital
Digitizer : - Digitalisasi signal analog/continu menjadi
signal digital/diskret
- Melalui proses sampling dan quantization
(kuantisasi) yang dilakukan secara bersamaan.
Sampling : - diskretisasi koordinat signal terhadap satuan waktu
- Banyaknya sampling ditentukan oleh frekuensi
(kecepatan) sampling.
- Makin tinggi frekuensi makin banyak jumlah
sampling, makin banyak informasi yang terrekam
dan kualitas signal mendekati signal aslinya.
- Makin rendah frekuensi makin sedikit jumlah
sampling, makin sedikit informasi yang terrekam
dan kualitas signal semakin rendah
Fréquence d’échantillonnage
• Sampling :
Contoh signal :
Amplitudo
Amplitudo
Amplitudo
Amplitudo
Kuantisasi dengan 3 bit
- Variasi nilai amplitudo 23 = 8
- Jumlah data = N*8 bit
- Kualitas intensitas berkurang
0 x
Kualitas Citra :
Definisi Citra
Secara fisik : Representasi informasi pada suatu media;
kertas, film, monitor dll.
134 129
63
127
69
114
89
115
89 79 110 122 126 120 97
. 110 122
41
126
55
120
78
97
81 75 73 84 88 84 66
I (m, n) = 107 112 127 121 123 81 77 84 83 78
. 107 112 127 121 123
88 73 8973 9356 119
40 119 107
. 79 75 7173 8462 106
55 110 100 77 81 94 90 91
79 77 78 79 76
I ( M − 1,0) I ( M − 1,1) . . . I ( M − 1, N − 1) 81 77 84 83 78
79 77 78 79 76 89 93 119 119 107
81 71 91 70 69 63 69 89 89 79
81 71 91 70 69
71 84 106 110 100
41 55 78 81 75
Representasi Citra Digital
Citra gray level :
• Diperoleh dari citra berwarna,
• L = 0.299 R + 0.587 G + 0.114 B
• Citra gray level ➔ I(m,n) = L [0, 2b-1]
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 16
Oleh: Sarifuddin Madenda
KETERHUBUNGAN ANTAR PIXEL (pixel connectivity):
- Mengunakan defenisi tetangga terdekat N4(p) , ND(p) atau N8(p).
- Dua pixel saling berdekatan dan memiliki nilai intensitas sesuai dengan
spesifikasi tingkat similaritas (sama atau similar). Sebagai contoh misalnya
pixel-pixel yang nilainya ada dalam lingkup V=[99, 101].
- Disebut memiliki connectivity N4(p) bila dua pixel p dan q memiliki nilai dalam V
dan q adalah bagian dari set N4(p).
- Disebut memiliki connectivity ND(p) bila dua pixel p dan q memiliki nilai dalam V
dan q adalah bagian dari set ND(p).
- Disebut memiliki connectivity N8(p) bila dua pixel p dan q memiliki nilai dalam V
dan q adalah bagian dari set N8(p).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 17
Oleh: Sarifuddin Madenda
KETERHUBUNGAN ANTAR PIXEL (pixel connectivity):
- Misalnya nilai keterhubungan antar pixel V=[99, 101] = {99, 100, 101}.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 18
Oleh: Sarifuddin Madenda
JARAK ANTARA PIXEL:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 19
Oleh: Sarifuddin Madenda
2.2 OPERASI ARITMETIKA DAN LOGIKA
OPERASI ARITMETIKA :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 20
Oleh: Sarifuddin Madenda
CONTOH HASIL OPERASI ARITMETIKA :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 21
Oleh: Sarifuddin Madenda
OPERASI LOGIKA:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 22
Oleh: Sarifuddin Madenda
OPERASI LOGIKA: AND NAND
Y = p.q Y = p.q
p q Y p q Y
0 0 0 0 0 1
1 0 0 1 0 1
0 1 0 0 1 1
1 1 1 1 1 0
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 23
Oleh: Sarifuddin Madenda
OPERASI LOGIKA: OR NOR
Y = p+q Y = p+q
p q Y p q Y
0 0 0 0 0 1
1 0 1 1 0 0
0 1 1 0 1 0
1 1 1 1 1 0
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 24
Oleh: Sarifuddin Madenda
OPERASI LOGIKA: XOR XNOR
Y = pq Y = pq
p q Y p q Y
0 0 0 0 0 1
1 0 1 1 0 0
0 1 1 0 1 0
1 1 0 1 1 1
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 25
Oleh: Sarifuddin Madenda
2.3 OPERASI KONVOLUSI
N M ( N −1) / 2 ( M −1) / 2
C = A * B = A(n, m).B (n, m) = A(n, m).B(n, m)
n =1, m =1 n = − ( N −1) / 2 , m = − ( M −1) / 2
a = (1x0 + 1x0 + 1x0 + 1x0 + 1x164 + 1x63 + 1x0 +1x120 + 1x135) / 9 = 53,56
b = (1x0 + 1x0 + 1x0 + 1x164 + 1x63 + 1x75 + 1x120 + 1x135 + 1x55) / 9 = 68,0
..
.
y = (1x50 + 1x81 + 1x0 + 1x60 + 1x76 + 1x0 + 1x0 + 1x0 + 1x0) / 9 = 29.67
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 26
Oleh: Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 27
Oleh: Sarifuddin Madenda
2.6 MORPHOLOGI MATEMATIKA
DILASI
(DILATION)
CITRA BINER :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 28
Oleh: Sarifuddin Madenda
DILASI CITRA
GRAY LEVEL :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 29
Oleh: Sarifuddin Madenda
EROSI (EROSION) CITRA BINER :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 30
Oleh: Sarifuddin Madenda
EROSI CITRA
GRAY LEVEL :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 31
Oleh: Sarifuddin Madenda
Penutupan (Closing) dan Pembukaan (Opening) :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 32
Oleh: Sarifuddin Madenda
BAB 3.
RUANG WARNA
DAN DASAR-DASAR
PENGOLAHAN CITRA BERWARNA
Oleh:
Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 33
3.3 RUANG WARNA
Sensasi warna didefenisikan oleh CIE (Prancis : Commission internationale de
l'éclairage atau Ingris : International Commission on Illumination) berupa :
Brightness (kecerahan) yaitu sensasi visual mata dalam membedakan suatu area
yang memiliki lebih banyak intensitas cahaya atau kurang.
Hue (warna) yaitu sensasi visual mata dalam memandang satu area yang memiliki
warna yang sama atau mirip dengan area lainnya atau memiliki proporsi
perbedaan warna antara keduanya.
Colorfulness yaitu sensasi visual mata dalam membedakan suatu area yang
mengandung warna (chromatic) atau tidak (achromatic atau gray level).
Saturation (saturasi) yaitu sensasi visual mata dalam membedakan kecerahan suatu
warna terhadap kecerahan warna murninya (pure hue).
Chroma (kemurnian) yaitu sensasi visual mata dalam membedakan kecerahan
suatu warna relative pada referensi warna putih (identik dengan saturasi).
Lightness (Luminance) yaitu sensasi visual mata dalam membedakan kecerahan
suatu area relative pada referensi warna putih dalam ruang pandang mata
tersebut.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 34
Oleh: Sarifuddin Madenda
3.3.1 SISTEM WARNA MUNSELL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 35
Oleh: Sarifuddin Madenda
3.3.3 RUANG WARNA RGB
- Ruang warna standard RGB (Red, Green, Blue) didasarkan
pada hasil aquisisi frekuensi warna oleh sensor elektronik.
- Setiap komponen warna dikodekan dalam 8 bit sehingga dapat
terbentuk 224 atau 16777216 nuansa warna
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 36
Oleh: Sarifuddin Madenda
3.3.4 RUANG WARNA CMYK
- Merupakan ruang warna subtraktif yang digunakan dalam printer
- Empat warna: Cyan, Magenta (ungu), Yellow (kuning) dan Black
(hitam)
- Gabungan cyan, magenta dan yellow menghasilkan warna coklat gelap
(bukan hitam).
- Penambahan warna K (hitam) ditujukan untuk menghasilkan warna
hitam sempurnah
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 37
Oleh: Sarifuddin Madenda
3.3.4 RUANG WARNA CMYK
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 39
Oleh: Sarifuddin Madenda
3.3.5 RUANG WARNA HSL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 40
Oleh: Sarifuddin Madenda
3.3.5 RUANG WARNA HSV
- Mengacu pada hue, saturation, and value (luminance) dan
merepresentasikan nuansa warna dalam koordinat silinder 3-D
- Lebih mendekati pada intuisi dan persepsi visual manusia seperti
halnya pada sistem warna Munsell
- HSV dikembangkan untuk aplikasi komputer grafik dan
digunakan sebagai tools untuk memodifikasi warna citra dalam
perangkat lunak image editing.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 41
Oleh: Sarifuddin Madenda
3.3.5 RUANG WARNA HSV
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 42
Oleh: Sarifuddin Madenda
3.3.6 RUANG WARNA L*a*b DAN L*C*H*
- Mengacu pada luminance L, chrominance C, and hue H dan
merepresentasikan 3nuansa warna dalam koordinat silinder 3-D
- Mengacu pada sistem warna Munsell, representasi warna yang
Lebih uniform dengan persepsi warna oleh mata normal manusia
(perceptually uniform)
- Kelebihan ruang warna L*a*b* dan H*C*L* adalah tidak
bergantung pada peralatan yang digunakan (device independent).
- Digunakan sebagai Profile Connection Space (PCS) yang
berfungsi menjembatani dua ruang warna yaitu input RGB (hasil
akuisisi dari scanner atau kamera) dan output CMYK (printer).
- secara luas digunakan khususnya untuk aplikasi fotografi dengan
kualitas tinggi.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 43
Oleh: Sarifuddin Madenda
3.3.5 RUANG WARNA L*a*b* dan L*C*H*
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 44
Oleh: Sarifuddin Madenda
3.3.6 RUANG WARNA L*a*b* dan L*C*H*
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 45
Oleh: Sarifuddin Madenda
3.3.6 RUANG WARNA L*a*b* dan L*C*H*
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 46
Oleh: Sarifuddin Madenda
3.3.7 RUANG WARNA HCL
- HCL (Hue, Chroma, Luminance) dikembangkan berdasarkan
gabungan kelebihan yang ada pada ruang warna HSL, HSV dan
L*a*b* atau L*C*H*.
- Juga mengacu pada model warna Munsell dan sifat scotopic dan
photopic vision,
- Menghasilkan ruang warna yang lebih uniform terhadap persepsi
visual manusia.
Konversi
RGB➔HCL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 47
Oleh: Sarifuddin Madenda
3.3.7 RUANG WARNA HCL
Konversi
HCL ➔ RGB
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 48
Oleh: Sarifuddin Madenda
3.3.7 RUANG WARNA HCL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 49
Oleh: Sarifuddin Madenda
3.3.8 RUANG WARNA YUV dan YCbCr
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 50
Oleh: Sarifuddin Madenda
3.3.8 RUANG WARNA YUV dan YCbCr
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 51
Oleh: Sarifuddin Madenda
3.4.1 REPRESENTASI WARNA CITRA
DALAM RUANG WARNA 3D
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 52
Oleh: Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 53
Oleh: Sarifuddin Madenda
3.4.2 HISTOGRAM DAN BIN WARNA CITRA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 54
Oleh: Sarifuddin Madenda
BAB 4.
PENDETEKSIAN TEPI OBJEK
Oleh:
Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 55
- Tepi (edge) dan kontur (contour) membantu sistem visual
dalam menggambarkan atau merekonstruksi dan
mengenali sebuah objek.
- Tepi dan kontur didefenisikan secara berbeda namun
dalam prakteknya keduanya kadang diartikan sama.
- Tepi citra didefenisikan sebagai perbedaan intensitas atau
warna antara satu pixel dengan pixel tetangga
terdekatnya.
- Semakin tinggi perbedaanya semakin tampak dengan jelas
tepi tersebut.
- Tepi merupakan sebuah titik sedang kontur merupakan
titik-titik tepi yang saling terhubung dan membentuk garis
batas antara dua area yang berbeda.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 56
Oleh: Sarifuddin Madenda
- Pendeteksian tepi objek juga identik dengan
pendeteksian kontur objek dalam sebuah citra.
- Secara matematis, perbedaan intensitas antara dua
titik pada jarak spasial tertentu dikenal sebagai
turunan pertama dari suatu fungsi.
- Turunan pertama fungsi citra I(x,y) disebut gradien
citra
- Dari konsep gradien citra dikembangkan fungsi
pendeteksian tepi atau edge detector
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 57
Oleh: Sarifuddin Madenda
- Turunan parsial pertama fungsi citra I(x,y) terhadap sumbu x
dan sumbu y, diperlihatkan oleh persamaan (4.1), sedang
gradient vector dan magnitude-nya diberikan oleh persamaan
(4.2) dan (4.3) atau persamaan (4.4)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 58
Oleh: Sarifuddin Madenda
(a) (b) (c)
(d) (e)
Gambar 4.1. (a) citra asli gray-level, (b), (c) dan (d) masing-masing adalah gradien citra arah x, gradien arah y, dan gradien
total citra dengan menggunakan persamaan (4.4). (e) adalah gradien citra menggunakan fungsi yang ada di Matlab. (g) dan
(h) masing-masing adalah gradien citra kupu-kupu menggunakan persamaan (4.4) dan fungsi yang ada di Matlab.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 59
Oleh: Sarifuddin Madenda
4.2.1 OPERATOR ROBERTS
Operator Roberts atau gradien Roberts menggunakan
turunan pertama dari fungsi citra, pada arah diagonal
45̊ dan 135̊ :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 60
Oleh: Sarifuddin Madenda
4.2.1 OPERATOR ROBERTS
(d) (e)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 62
Oleh: Sarifuddin Madenda
4.2.2 OPERATOR PREWITT dan SOBEL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 63
Oleh: Sarifuddin Madenda
4.2.2 OPERATOR PREWITT dan SOBEL
(d) (e)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 65
Oleh: Sarifuddin Madenda
(a) (b) (k) (l)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 66
Oleh: Sarifuddin Madenda
4.3 OPERATOR LAPLACE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 67
Oleh: Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 68
Oleh: Sarifuddin Madenda
4.4 PENDETEKSIAN TEPI CITRA BERNOISE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 69
Oleh: Sarifuddin Madenda
CITRA BERNOISE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 71
Oleh: Sarifuddin Madenda
4.4.1.1 FILTER GAUSSIAN
- FIR dua dimensi (2D) :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 72
Oleh: Sarifuddin Madenda
HASIL FILTER GAUSSIAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 73
Oleh: Sarifuddin Madenda
4.4.1.2 FILTER TURUNAN PERTAMA GAUSSIAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 74
Oleh: Sarifuddin Madenda
HASIL FILTER TURUNAN PERTAMA GAUSSIAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 75
Oleh: Sarifuddin Madenda
4.4.1. 3 FILTER LAPLACIAN OF GAUSSIAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 76
Oleh: Sarifuddin Madenda
HASIL FILTER LoG
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 77
Oleh: Sarifuddin Madenda
4.4.1.4 FILTER DIFFERENCE OF GAUSSIAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 78
Oleh: Sarifuddin Madenda
HASIL FILTER DoG
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 79
Oleh: Sarifuddin Madenda
4.4.2 FILTER IIR
- Filter IIR (Infinite impulse response filter) memiliki sistem
feedforward (umpan maju) x(n-k) dan feedback (umpan balik)
sekaligus y(n-l).
- Keluarannya tergantung pada data sesaat dan data sebelumnya
x(n-k) serta hasil perhitungan sebelumnya y(n-l).
- Filter IIR dikembangkan untuk pendeteksian citra: tanpa noise,
bernoise, ber-blur, bernoise dan ber-blur.
- Filter IIR secara umum dapat diformulasikan :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 80
Oleh: Sarifuddin Madenda
4.4.2.1 FILTER SHEN-CASTAN
- Filter ini terdiri dari satu pasang fungsi 1 dimensi (1D)
- Fungsi h(x) berperan sebagai filter low-pass untuk memfilter
noise.
- Fungsi f(x) merupakan filter band-pass yang berperan sebagai
pendeteksi tepi citra.
- Parameter a adalah parameter pengatur tingkat eliminasi noise.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 81
Oleh: Sarifuddin Madenda
4.4.2.1 FILTER SHEN-CASTAN
- Dengan bantuan transformasi Z, kedua filter f(x) dan h(x)
ditransformasi ke dalam bentuk filter IIR:
- Filter numerik f(x) :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 82
Oleh: Sarifuddin Madenda
4.4.2.1 FILTER SHEN-CASTAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 83
Oleh: Sarifuddin Madenda
4.4.2.1 FILTER SHEN-CASTAN
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 84
Oleh: Sarifuddin Madenda
HASIL FILTER SHEN-CASTAN:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 85
Oleh: Sarifuddin Madenda
4.4.2.2 FILTER CANNY-DERICHE
- Filter Canny-Deriche mengacu pada kriteria Canny yaitu :
• Good detection : optimalisasi pendeteksian tepi yang
sebenarnya dan meminimalkan pendeteksian tepi palsu
akibat pengaruh munculnya noise disekitar tepi
(optimalisasi sinyal to noise ratio (SNR)).
• Good localization : posisi tepi yang terdeteksi oleh
operator/filter harus sesuai atau sedekatmungkin dengan
posisi tepi yang sebenarnya.
• One response to one edge : harus dapat mendeteksi
hanya satu titik untuk satu tepi dan bukan banyak titik untuk
satu tepi.
- Kombinasi dari tiga criteria diperoleh dua filter yaitu:
• Filter h(x) sebagai penghalus noise (smoothing filter)
• Filter f(x) sebagai pendeteksi tepi (derivative filter).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 86
Oleh: Sarifuddin Madenda
4.4.2.2 FILTER CANNY-DERICHE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 87
Oleh: Sarifuddin Madenda
4.4.2.2 FILTER CANNY-DERICHE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 88
Oleh: Sarifuddin Madenda
HASIL FILTER CANNY-DERICHE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 89
Oleh: Sarifuddin Madenda
4.4.2.3 FILTER MADENDA
- Asumsi bahwa sebuah citra dapat mengalami
gangguan noise dan blur secara bersamaan.
- Filter pendeteksi tepi harus dapat mendeteksi tepi baik
untuk citra tanpa gangguan maupun citra yang
memiliki gangguan noise dan blur.
- Madenda memodelkan sebuah tepi ber-noise dan ber-
blur.
- Dari model ini kemudian diturunkan dua filter:
▪ Filter penghalus noise h(x) dan
▪ Filter pendeteksi tepi citra f(x).
▪ Parameter noise a>0 parameter blur (0> b >1)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 90
Oleh: Sarifuddin Madenda
4.4.2.3 FILTER MADENDA
▪ Filter penghalus noise h(x)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 91
Oleh: Sarifuddin Madenda
4.4.2.3 FILTER MADENDA
▪ Filter penghalus noise f(x)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 92
Oleh: Sarifuddin Madenda
HASIL FILTER MADENDA:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 93
Oleh: Sarifuddin Madenda
4.5 OPERATOR MORFOLOGI MATEMATIKA
4.5.1 OPERATOR CLOSING OF OPENING (CoO):
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 94
Oleh: Sarifuddin Madenda
4.5 OPERATOR MORFOLOGI MATEMATIKA
4.5.3 OPERATOR GRADIEN MORFOLOGI
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 95
Oleh: Sarifuddin Madenda
HASIL OPERATOR GRADIEN MORFOLOGI
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 96
Oleh: Sarifuddin Madenda
BAB 5.
SEGMENTASI CITRA BERDASARKAN
WARNA DAN TEKSTUR
Oleh:
Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 97
- Mata dan sistem syaraf optik manusia dapat dengan
mudah mengenali dan memahami makna setiap objek
yang terkandung dalam subuah citra berdasarkan
informasi warna dan tekstur pembentuk permukaan
objek tersebut.
- Komputer butuh algoritma analisis dan pengenalan
untuk dapat melakukan sesuatu sebagaimana layaknya
sistem visual manusia.
- Segmentasi citra bertujuan untuk merepresentasikan
area sebuah citra menjadi sejumlah segmen sehingga
lebih bermakna dan lebih mudah untuk dianalisis.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 98
Oleh: Sarifuddin Madenda
- Sebuah segmen dapat merepresentasikan karakteristik
sebuah objek atau bagian dari sebuah objek dalam
citra.
- Pembentukan sebuah segmen mengacu pada sifat-
sifat berikut:
▪ Pixel-pixel yang saling terhubung dan memiliki nilai
intensitas warna atau pola tekstur yang sama atau
sangat mirip akan berada dalam segmen yang
sama.
▪ Pixel-pixel yang saling terhubung dan memiliki nilai
intensitas warna atau tekstur yang berbeda, akan
berada dalam dua segmen yang berbeda dan
ditandai oleh batas garis pemisah.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 99
Oleh: Sarifuddin Madenda
5.1 SEGMENTASI WARNA CITRA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 100
Oleh: Sarifuddin Madenda
5.1.1 Ruang Warna dan Peta Warna
- Ruang warna yang digunakan saat akuisisi citra dan
tampilan ke layar monitor adalah ruang warna RGB.
- Bila setiap komponen warna dikodekan dengan 8 bit,
maka akan ada 224 = 16,777 juta nuansa atau variasi
warna.
- Dua warna dimana nilai setiap komponen warna
antara keduanya sangat berdekatan, secara visual
kedua warna ini tampak sama/similar, contoh:
R=5, G=45, B=200 R=1, G=52, B=205 R=255, G=0, B=255 R=250, G=5, B=255
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 101
Oleh: Sarifuddin Madenda
Peta Warna (color map) 1-D
- Pengelompokkan sejumlah nuansa warna yang secara
visual similar menjadi satu warna tertentu
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 102
Oleh: Sarifuddin Madenda
5.1.1 Ruang Warna dan Peta Warna
Peta Warna (color map)
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 103
Oleh: Sarifuddin Madenda
Contoh hasil pembuatan peta warna RGB dan HSV 3D
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 104
Oleh: Sarifuddin Madenda
Contoh hasil peta warna RGB 3D
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 105
Oleh: Sarifuddin Madenda
Contoh hasil peta warna HSV 3D
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 106
Oleh: Sarifuddin Madenda
5.1.2 ALAT UKUR JARAK WARNA
- Dalam segmentasi warna citra, proses utama adalah
menentukan pixel mana saja yang termasuk dalam sebuah
segmen yang sama dan menentukan batas antara dua
segmen yang memiliki peta warna yang berbeda.
- Dibutuhkan alat ukur perbedaan jarak antara dua warna
- Rumus jarak warna dikembangkan mengacu pada model
koordinat ruang warna 3D yang digunakan.
- Koordinat Kartesian 3D, jarak warna antara dua pixel
dihitung dengan menggunakan rumus jarak Euclidean atau
City block distance (Manhattan distance).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 107
Oleh: Sarifuddin Madenda
- Rumus jarak Euclidean dan City block distance untuk ruang
warna RGB dan L*a*b*
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 108
Oleh: Sarifuddin Madenda
- Rumus jarak untuk ruang warna CIE L*C*H* :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 109
Oleh: Sarifuddin Madenda
- Rumus jarak CIEDE2000 untuk ruang warna L*C*H* :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 110
Oleh: Sarifuddin Madenda
- Koordinat silider 3D untuk ruang warna HSV, HSL
dan HCL, S ➔ C dan V ➔ L
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 111
Oleh: Sarifuddin Madenda
- Contoh hasil pengukuran
jarak warna
- Warna query “kuning”
pada pojok kiri-atas
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 112
Oleh: Sarifuddin Madenda
5.1.3 SEGMENTASI CITRA BERDASARKAN
KESAMAAN WARNA
- Segmentasi citra berdasarkan warna dapat dilakukan
secara global atau secara local.
- Analisis lokal: per region atau per area dan dilakukan
secara terpisah antara region satu dengan region
lainnya.
- Analisis global adalah analisis yang dilakukan langsung
dalam satu kesatuan citra.
- Model pengukuran similaritas: Pixel-based measures
dan Region-based measures.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 113
Oleh: Sarifuddin Madenda
5.1.3 SEGMENTASI CITRA BERDASARKAN
KESAMAAN WARNA
- Pixel-based measures: segmentasi berbasis pada
pengukuran jarak warna antara dua pixel bertetangga,
- Region-based measures: segmentasi berbasis pada
pengukuran kesamaan karakteristik warna antara dua
region bertetangga. Menggunakan pendekatan region
splitting dan region growing.
- Teknik segmentasi dibedakan menjadi tiga bagian:
thresholding-based segmentation, edge-based
segmentation, histogram-based segmentation.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 114
Oleh: Sarifuddin Madenda
5.1.3 SEGMENTASI CITRA BERDASARKAN
KESAMAAN WARNA
- Thresholding-based segmentation mengelompokan pixel-
pixel yang saling bertetangga dan memiliki jarak warna
lebih kecil dari nilai batas ambang (threshold) kemiripan
dua warna.
- Thresholding-based segmentation dapat diterapkan
secara bersamaan dengan segmentasi berbasis pixel atau
segmentasi berbasis histogram,
- edge-based segmentation mengacu pada pendeteksian
tepi citra.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 115
Oleh: Sarifuddin Madenda
5.1.3 SEGMENTASI CITRA BERDASARKAN
KESAMAAN WARNA
- Algoritma segmentasi kemudian terus berkembang
melalui penerapan sejumlah teori misalnya:
▪ Teori graph (graph-based image segmentation),
▪ Teori fuzzy (image segmentation based on a fuzzy
color similarity),
▪ Teori k-Mean (image segmentation based on k-
Means clustering),
▪ Neural network, dll.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 116
Oleh: Sarifuddin Madenda
5.1.3.1 SEGMENTASI BERBASIS PIXEL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 117
Oleh: Sarifuddin Madenda
- Tahap segmentasi semi-otomatis dari region of interest:
▪ Baca citra berwarna (tersimpan dalam matriks 3D RGB)
▪ Tentukan warna pixel area object of interest sebagai warna referensi untuk
segmentasi,
▪ Tentukan rentan nilai threshold jarak warna,
▪ Bila menggunakan ruang warna selain RGB, konversi warna pixel referensi
dan citra dari ruang warna RGB ke ruang warna yang digunakan untuk
segmentasi,
▪ Untuk setiap pixel dalam citra, hitung jarak warnanya terhadap warna
referensi:
• Hitung jarak antara keduanya dengan menggunakan rumus jarak sesuai
dengan ruang warna yang digunakan.
• Bila jarak warnanya lebih kecil dari nilai threshold, pixel merupakan bagian
dari area segment. Bila tidak, pixel bukan bagian dari area segmen,
hilangkan.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 118
Oleh: Sarifuddin Madenda
-Hasil segmentasi semi-
otomatis menggunakan
ruang warna RGB,HSV
dan HCL serta rumus
jarak warna Euclidean,
Dcyl dan DHCL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 119
Oleh: Sarifuddin Madenda
- Tahap segmentasi otomatis :
- Baca citra berwarna (otomatis akan tersimpan dalam matriks 3D
RGB),
- Tentukan jumlah kuantisasi setiap komponen warna dan hitung
nilai rentan antara dua palette warna sesuai dengan ruang warna
yang digunakan.
- Bentuk peta warna citra: indeks warna dan nilai intensitas palette
warna
- Tentukan batas antara dua area dan tandai dengan warna yang
berbeda (warna putih misalnya) :
• Gunakan rumus jarak warna sesuai dengan ruang warna yang digunakan,
• Gunakan nilai index warna atau nilai intensitas warna palette pada rumus
jarak tersebut,
• Bila jarak index > 0 atau jarak nilai intensitas > 0, tandai sebagai batas.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 120
Oleh: Sarifuddin Madenda
- Hasil segmentasi otomatis :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 121
Oleh: Sarifuddin Madenda
5.1.3.2 SEGMENTASI BERBASIS REGION
5.1.3.2.1 REGION GROWING
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 122
Oleh: Sarifuddin Madenda
5.1.3.2.2 REGION SPLITTING AND MERGING
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 123
Oleh: Sarifuddin Madenda
5.1.3.2.2 REGION SPLITTING AND MERGING
- Contoh Hasil segmentasi berbasis region splitting
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 124
Oleh: Sarifuddin Madenda
REGION MERGING
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 125
Oleh: Sarifuddin Madenda
5.2 SEGMENTASI TEKSTUR CITRA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 126
Oleh: Sarifuddin Madenda
5.2 SEGMENTASI TEKSTUR CITRA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 127
Oleh: Sarifuddin Madenda
5.2.1 ANALISISI STATISTIK TEKSTUR
- Analisis tekstur berdasarkan pada karakteristik statistik
adalah mengacu pada distribusi intensitas atau
histogram citra secara global dan/atau secara lokal
dalam suatu area tertentu.
- Karakteristik ini dapat diukur melalui momen ke-n
dengan bantuan histogram citra.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 128
Oleh: Sarifuddin Madenda
5.2.1 ANALISIS STATISTIK TEKSTUR
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 129
Oleh: Sarifuddin Madenda
5.2.1 ANALISIS STATISTIK TEKSTUR
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 130
Oleh: Sarifuddin Madenda
5.2.1 ANALISIS STATISTIK TEKSTUR
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 131
Oleh: Sarifuddin Madenda
5.2.1 ANALISIS STATISTIK TEKSTUR
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 132
Oleh: Sarifuddin Madenda
5.2.2 ANALISIS TEKSTUR DENGAN
MATRIKS CO-OCCURRENCE
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 134
Oleh: Sarifuddin Madenda
5.2.2.1 MATRIKS CO-OCCURRENCE
SUDUT TUNGGAL
- Tetangga pixel p(n,m) : untuk arah 0°, p(n,m+d) (d={0, d}), untuk arah
45° p(n-d,m+d) (d={-d, d}), untuk arah 90° p(n-d,m) (d={-d, 0}) dan
untuk arah 135° p(n-d,m-d) (d={-d, -d}), untuk arah 180° p(n,m-d)
(d={0, -d }), untuk arah 225° p(n+d,m-d) (d={d, -d}), untuk arah 270°
p(n+d,m) (d={d, 0}) dan untuk arah 315° p(n+d,m+d) (d={d, d}).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 135
Oleh: Sarifuddin Madenda
5.2.2.1 MATRIKS CO-OCCURRENCE
SUDUT TUNGGAL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 136
Oleh: Sarifuddin Madenda
5.2.2.1 MATRIKS CO-OCCURRENCE
SUDUT TUNGGAL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 137
Oleh: Sarifuddin Madenda
5.2.2.1 MATRIKS CO-OCCURRENCE
SUDUT TUNGGAL
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 138
Oleh: Sarifuddin Madenda
5.2.2.2 MATRIKS CO-OCCURRENCE
SUDUT GANDA
- Matriks co-occurrence sudut ganda 0°-180°, 45°-225°, 90°-270°,
dan 135°-315°.
- Tetangga pixel p(n,m) arah 0°-180° yaitu i,j = p(n,m), p(n,m+d)
dan j,i = p(n,m+d), p(n,m), arah 45°-225° yaitu i,j = p(n,m), p(n-
d,m+d) dan j,i = p(n-d,m+d), p(n,m), arah 90°-270° yaitu i,j =
p(n,m), p(n-d,m) dan j,i = p(n-d,m), p(n,m), dan arah 135°-315°
yaitu i,j = p(n,m), p(n-d,m-d) dan j,i = p(n-d,m-d), p(n,m).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 139
Oleh: Sarifuddin Madenda
5.2.2.2 MATRIKS CO-OCCURRENCE
SUDUT GANDA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 140
Oleh: Sarifuddin Madenda
5.2.2.2 MATRIKS CO-OCCURRENCE
SUDUT GANDA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 141
Oleh: Sarifuddin Madenda
5.2.2.3 KARAKTERISTIK TEKSTUR GLCM
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 142
Oleh: Sarifuddin Madenda
5.2.2.3 KARAKTERISTIK TEKSTUR GLCM
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 143
Oleh: Sarifuddin Madenda
5.2.2.3 KARAKTERISTIK TEKSTUR GLCM
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 144
Oleh: Sarifuddin Madenda
5.2.2.3 KARAKTERISTIK TEKSTUR GLCM
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 145
Oleh: Sarifuddin Madenda
BAB 6.
KOMPRESI CITRA
Oleh:
Sarifuddin Madenda
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 146
- Konten Teknologi Informasi dan Komunikasi: multimedia
(teks, audio, citra dan video)
- Kecepatan komunikasi real-time: jumlah konten
informasi = bandwidth persatuan waktu.
- Contoh, Video conference dengan resolusi video
1920×1080 pixel per citra dan 25 citra per detik, maka
data video 1920×1080×3×8×25 = 1,244 giga bit / detik.
- Video conference real-time butuh bandwidth > 1,244
Gbps.
- Bila bandwidth 100 Mbps, waktu tunggu:
1,244 Gbps / 100 Mbps = 12,44 detik
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 147
Oleh: Sarifuddin Madenda
- Untuk mencapai video conference real-time: perlu
kompresi dengan rasio kompresi 12,44
- Perekaman Video conference selama 1 jam butuh media
penyimpanan 1920×1080× 3 byte × 25 citra × 60 detik ×
60 menit = 559,872 Giga Byte.
- Butuh media penyimpanan : 66 buah DVD 8.5 GB.
- Solusi: kompresi data citra/video dengan rasio tinggi
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 148
Oleh: Sarifuddin Madenda
6.1 KERANGKAPAN DATA DAN INFORMASI
- Teori kompresi dikembangkan mengacu pada
kerangkapan data/informasi.
- Dua informasi auditif atau informasi visual yang
mengandung makna yang sama dan terbentuk oleh
data dengan nilai numerik yang sama, dinyatakan
memiliki kerangkapan informasi dan kerangkapan
data.
- Dua informasi auditif atau informasi visual yang
mengandung makna yang sama tetapi terbentuk oleh
data dengan nilai numerik yang berbeda, dinyatakan
memiliki kerangkapan informasi tanpa kerangkapan
data.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 149
Oleh: Sarifuddin Madenda
6.1 KERANGKAPAN DATA DAN INFORMASI
- Tiga buah objek pertama berwarna biru (segi tiga, R=0,
G=51, B=204), (segi empat, R=1, G=52, B=205) dan
(lingkaran, R=2, G=49, B=202).
- Tiga buah objek kedua berwarna ungu : (segi tiga,
R=255, G=0, B=255), (segi empat, R=255, G=0, B=255)
dan (lingkaran, R=255, G=0, B=255).
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 150
Oleh: Sarifuddin Madenda
6.1 KERANGKAPAN DATA DAN INFORMASI
- Secara visual, tiga buah objek pertama memberi
informasi warna biru yang sama (walau datanya
berbeda), sehingga data warna biru ketiga objek
dapat diwakilkan oleh salah satunya: (segi tiga, segi
empat, lingkaran, R=1, G=52, B=205).
- Terkompresi dengan rasio kompresi 9/3 = 3
- Secara visual, tiga objek kedua memberi informasi
warna ungu yang sama dan datanya sama: (segi tiga,
segi empat, lingkaran, R=255, G=0, B=255).
- Terkompresi dengan rasio kompresi 9/3 = 3
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 151
Oleh: Sarifuddin Madenda
- Semakin banyak data rangkap, semakin tinggi rasio
kompresi.
- Kerangkapan data dapat diperbanyak melalui proses
deferensial dan quantisasi
- Deferensial merupakan selisih antara dua data pixel
yang saling berurutan:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 152
Oleh: Sarifuddin Madenda
- Data citra I heterogen ➔ data DI homogen bernilai
“1”..
- Metode diferensial digunakan sebagai algoritma
DPCM (Differential Pulse Code Modulation) biasa
digunakan untuk kompresi citra lossless.
- Proses rekonstruksi:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 153
Oleh: Sarifuddin Madenda
- Metode kuantisasi digunakan pada teknik kompresi
data yang bersifat lossy:
IQ =round( I/Q)
- Data citra I = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), jika nilai
kuantiasi Q=5
- IQ = (0, 0, 1, 1, 1, 1, 1, 2, 2, 2)
- Proses rekonstruksi:
Q
I =round(I *Q)
- Hasil rekonstruksi: I = (0, 0, 5, 5, 5, 5, 5, 10, 10, 10).
- Hampir semua nilai data berubah, secara visual
perubahan ini tidak begitu tampak
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 154
Oleh: Sarifuddin Madenda
6.2 TEKNIK DASAR KOMPRESI DATA
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 156
Oleh: Sarifuddin Madenda
6.2.1 RUN LENGTH ENCODING
- Run length : jumlah pixel yang secara berurutan memiliki nilai
data yang sama
- Run length encoding (disingkat RLE): metode pengkodeannya
untuk kebutuhan kompresi.
- Contoh 1:
I = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) ➔ DI= (1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
RLE ➔ 10 1
- Contoh 2:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 157
Oleh: Sarifuddin Madenda
6.2.1 RUN LENGTH ENCODING
- Contoh 3:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 159
Oleh: Sarifuddin Madenda
6.2.1 HUFFMAN ENCODING
Pohon Biner (Huffman coding)
1 1 1
“ “= 7 12 20 36 “ “= 111
a=4 1 0
8 a = 101
e=4 0
e = 100
f=3 1 5 0 f = 1101
t=2 0 t = 1100
h=2 1 4 1 8 1 16 0 h = 0111
i=2 0 i = 0110
s=2 1 4 0 s = 0101
n=2 0 n = 0100
m=2 1 4 1 8 0 m = 0011
x=1 1 2
0 x = 00101
p=1 0 p = 00100
l=1 1
2
1
4
0 l = 00011
u=1 u = 00010
0
0=1 2 288 bit ➔ 135 bit o = 00001
1 0
r=1 r = 00000
0
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 160
Oleh: Sarifuddin Madenda
6.2.1 HUFFMAN ENCODING
- "this is an example of a huffman tree" dapat
dikodekan kedalam bit stream sebagai berikut:
“1100 0111 0110 0101 111 0110 0101 111 101 0100
111 100 00101 101 0011 00100 00011 100 111 00001
1101 111 101 111 0111 00010 1101 1101 0011 101
0100 111 1100 00000 100 100”
- Jumlah bit dalam bit stream di atas adalah sebanyak
135 bit dan jumlah bit data asli adalah 36x8 bit = 288
bit.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 161
Oleh: Sarifuddin Madenda
6.3. Kompresi Citra
Jenis kompresi: lossless compression dan lossy compression.
Lossless compression:
- Kompresi tanpa adanya perubahan atau kehilangan data .
- Data hasil dekompresi sama tepat dengan data aslinya.
- Proses kompresi dilakukan tanpa ada proses kuantisasi
dan/atau pembulatan nilai
Lossy compression:
- Memungkinkan adanya perubahan nilai data tanpa
mengubah makna informasi.
- Umumnya melalui proses kuantisasi dan pembulatan nilai
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 162
Oleh: Sarifuddin Madenda
6.3. Kompresi Citra
Proses Kompresi
QDCT
Transformasi Transformasi domain
Pembagian Kuantisasi RLE-Huffman
warna citra RGB Block citra spasial ke frekuensi Coding
ke YCbCr DCT/DWT
Proses Dekompresi
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 163
Oleh: Sarifuddin Madenda
6.3.1. Transformasi Warna dan Sub-Sampling
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 164
Oleh: Sarifuddin Madenda
6.3.1. Transformasi Warna dan Sub-Sampling
4:4:4 4:2:2 4:1:1 4:2:0
Cb
Cr
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 165
Oleh: Sarifuddin Madenda
a
.
Cb
Cr
Gambar 6.7. Hasil proses transformasi warna dan subsampling komponen Y, Cb dan Cr.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 166
Oleh: Sarifuddin Madenda
a
.
6.3.3. Transformasi Cosinus Diskrit
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 167
Oleh: Sarifuddin Madenda
a
.
6.3.3. Transformasi Cosinus Diskrit
Matriks Cosinus Diskrit:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 168
Oleh: Sarifuddin Madenda
a
.
6.3.3. Transformasi Cosinus Diskrit
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 169
Oleh: Sarifuddin Madenda
a
.
6.3.4. Kuantisasi dan Dekuantisasi hasil DCT
Contoh Hasil Proses DCT dan Kuantisasi serta Pembulatan:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 170
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 171
Oleh: Sarifuddin Madenda
a
.
6.3.3. Transformasi Cosinus Diskrit Invers
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 172
Oleh: Sarifuddin Madenda
a
.
6.3.3. Transformasi Cosinus Diskrit
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 173
Oleh: Sarifuddin Madenda
6.3.4. Kuantisasi dan Dekuantisasi hasil DCT
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 174
Oleh: Sarifuddin Madenda
a
.
6.3.4. Kuantisasi dan Dekuantisasi hasil DCT
Contoh Tabel Kuantisasi JPEG :
Kualitas 12 Kualitas 11 Kualitas 10
Cb
&
Cr
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 175
Oleh: Sarifuddin Madenda
a
.
6.3.5. Transformasi Cosinus Diskrit Terkuantisasi
Proses QDCT:
Proses iQDCT:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 176
Oleh: Sarifuddin Madenda
a
.
6.3.5. Transformasi Cosinus Diskrit Terkuantisasi
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 177
Oleh: Sarifuddin Madenda
a
.
6.3.5. Transformasi Cosinus Diskrit Terkuantisasi
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 178
Oleh: Sarifuddin Madenda
6.3.5. Transformasi Cosinus Diskrit Terkuantisasi
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 179
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 180
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 181
Oleh: Sarifuddin Madenda
a
.
6.3.6. Zig-Zag dan RLE- Huffman Coding
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 182
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 183
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 184
Oleh: Sarifuddin Madenda
a
.
L(n) = 1
n
dan H(n) = 0
n
✓ Komponen Wavelet :
✓ Komponen Aproksimasi :
✓ Komponen Wavelet :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 187
Oleh: Sarifuddin Madenda
a
.
✓ Komponen Wavelet :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 188
Oleh: Sarifuddin Madenda
a
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 189
Oleh: Sarifuddin Madenda
a
.
6.3.7. Transformasi Wavelet Diskrit (DWT)
❖ DWT skala 1 dari citra asli menghasilkan empat citra LL1, HL1, LH1 dan HH1 masing-
masing berukura ¼ (½ kolom * ½ baris) dari ukuran citra aslinya.
❖ DWT skala 2 menghasilkan empat citra yaitu LL2, HL2, LH2 dan HH2 masing-masing
berukura ¼ dari ukuran citra masukannya LL1.
❖ DWT skala 3 menghasilkan empat citra yaitu LL3, HL3, LH3 dan HH3 masing-masing
dengan ukura ¼ dari ukuran citra masukannya LL2.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 190
Oleh: Sarifuddin Madenda
a
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 191
Oleh: Sarifuddin Madenda
a
Rekonstruksi
Komponen
Aproksimasi
pada skala j:
Rekonstruksi
Citra pada
skala j-1:
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 192
Oleh: Sarifuddin Madenda
a
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 194
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Orthogonal :
✓ Sifat Filter Low-pass L(n) dan High-pass H(n):
n
L(n) = 1 atau n
L ( n) = 2 atau n
L ( n) = 2
n
H ( n) = 0
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 195
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Orthogonal :
✓Filter L(n) dan H(n) disusun dalam sebua matrik P
demikian sehingga: [P]*[P]T = [I] dan [P]T = [P]-1
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 196
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 197
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 198
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 199
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Biorthogonal :
✓Filter L(n) dan H(n) digunakan untuk proses kompresi
Ĺ
✓Filter Ĥ(n) dan (n) digunakan untuk proses dekompresi
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 200
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Biorthogonal :
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 201
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Biorthogonal :
✓Filter L(n) dan H(n) serta Ĥ(n) dan (n) disusun dalam Ĺ
sebua matrik P demikian sehingga: [P]*[P]T ≈ [I] dan [P]T ≈
[P]-1
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 202
Oleh: Sarifuddin Madenda
a
.
➢ Transformasi Biorthogonal :
✓Filter L(n) dan H(n) serta Ĥ(n) dan (n) disusun dalam Ĺ
sebua matrik P demikian sehingga: [P]*[P]T ≈ [I] dan [P]T ≈
[P]-1
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 203
Oleh: Sarifuddin Madenda
a
.
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 204
Oleh: Sarifuddin Madenda
a
.
I(i, j) adalah nilai pixel citra asli pada posisi (i, j),
R(i, j) adalah nilai pixel citra rekonstruksi pada posisi (i, j)
M * N ukuran citra dalam pixel
C jumlah komponen warna
MaxI adalah nilai maksim pixel dalam citra asli I
Pengolahan Citra dan Video Digital: Teori, Algoritma dan Pemrograman Matlab 205
Oleh: Sarifuddin Madenda