Anda di halaman 1dari 111

STUDI PERBANDINGAN KOMPRESI

MENGGUNAKAN METODE
DESCRETE COSINE TRANSFORM (DCT)
DAN DESCRETE WAVELET TRANSFORM (DWT)
PADA CITRA DIGITAL

SKRIPSI

Oleh

SHOFIYAH
NIM. 05550008

JURUSAN TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
MAULANA MALIK IBRAHIM MALANG
2010
STUDI PERBANDINGAN KOMPRESI
MENGGUNAKAN METODE
DESCRETE COSINE TRANSFORM (DCT)
DAN DESCRETE WAVELET TRANSFORM (DWT)
PADA CITRA DIGITAL

SKRIPSI

Diajukan Kepada:
Dekan Fakultas Sains dan Teknologi
Universitas Islam Negeri Maulana Malik Ibrahim Malang
untuk Memenuhi Salah Satu Persyaratan dalam
Memperoleh Gelar Sarjana Komputer (S.Kom)

Oleh

SHOFIYAH
NIM. 05550008

JURUSAN TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
MAULANA MALIK IBRAHIM MALANG
2010
STUDI PERBANDINGAN KOMPRESI
MENGGUNAKAN METODE
DESCRETE COSINE TRANSFORM (DCT)
DAN DESCRETE WAVELET TRANSFORM (DWT)
PADA CITRA DIGITAL

Oleh

SHOFIYAH
NIM. 05550008

Telah Disetujui untuk Diuji


Malang, 26 Juli 2010

Dosen Pembimbing I, Dosen Pembimbing II,

Ririen Kusumawati, M. Kom. Zainal Abidin, M.Kom


NIP. 197203092005012002 NIP. 197606132005011001

Mengetahui,
Ketua Jurusan Teknik Informatika

Ririen Kusumawati, M. Kom.


NIP. 197203092005012002
LEMBAR PENGESAHAN

STUDI PERBANDINGAN KOMPRESI


MENGGUNAKAN METODE
DESCRETE COSINE TRANSFORM (DCT)
DAN DESCRETE WAVELET TRANSFORM (DWT)
PADA CITRA DIGITAL

SKRIPSI

Oleh:

SHOFIYAH
NIM. 05550008

Diajukan Kepada:
Dekan Fakultas Sains dan Teknologi
Universitas Islam Negeri Maulana Malik Ibrahim Malang
untuk Memenuhi Salah Satu Persyaratan dalam
Memperoleh Gelar Sarjana Komputer (S.Kom)
Tanggal: 26 Juli 2010

Susunan Dewan Penguji: Tanda Tangan


1. Penguji Utama : M. Ainul Yaqin, M.Kom ( )
NIP. 197610132006041004

2. Ketua : Syahiduz Zaman, M.Kom ( )


NIP. 197005022005011005

3. Sekretaris : Ririen Kusumawati, M. Kom ( )


NIP. 197203092005012002

4. Anggota : Zainal Abidin, M.Kom ( )


NIP. 197606132005011001

Mengetahui dan Mengesahkan,


Ketua Jurusan Teknik informatika

Ririen Kusumawati, M. Kom.


NIP. 197203092005012002
LEMBAR PERNYATAAN
Saya yang bertanda tangan dibawah ini :

Nama : Shofiyah
NIM : 05550008
Jurusan : Teknik Informatika
Judul Skripsi : STUDI PERBANDINGAN KOMPRESI MENGGUNAKAN
METODE DCTDAN DWTPADA CITRA DIGITAL.

Dengan ini menyatakan bahwa :

1. Isi dari skripsi yang saya buat adalah benar-benar karya sendiri dan tidak
menjiplak karya orang lain, selain nama-nama termaktub di isi dan tertulis
di daftar pustaka dalam skripsi ini.
2. Apabila di kemudian hari ternyata skripsi saya tulis terbukti hasil jiplakan,
maka saya akan bersedia menanggung segala resiko yang akan saya terima.

Demikian pernyataan ini dibuat dengan segala kesadaran.

Malang, 26 Juli 2010


Yang menyatakan,

Shofiyah
NIM. 05550008
Lembar Persembahan

Yang utama dari segalanya...


Sembah sujud serta syukur kepada Allah SWT. Taburan cinta kasih dan sayang-Mu telah
memberikanku kekuatan, membekaliku dengan ilmu serta memperkenalkanku dengan
cinta. Atas Karunia serta kemudahan yang Engkau berikan akhirnya skripsi yang
sederhana ini dapat terselesaikan. Sholawat dan salam selalu terlimpahkan keharibaan
Rasulullah Muhammad SAW.

Kupersembahkan karya sederhana ini kepada orang yang sangat kukasihi dan kusayangi.

Umi’q
Sebagai tanda bakti, hormat, pengorbanan, dan rasa terima kasih yang tiada terhingga q
haturkan kepada Umi’ yang telah memberikan kasih sayang , segala dukungan, dan
cinta kasih yang tiada terhingga yang tiada mungkin dapat q balas hanya dengan
selembar kertas yang bertuliskan kata cinta dan persembahan.

dan

Semoga ini langkah awal untuk membuat umi’ bahagia karna q sadar, selama ini q
belum bisa berbuat yang lebih. Untuk umi’q yang selalu membuatku menjadi sosok yang
kuat mejalani hidup, untuk umi’q yang selalu membuat ku termotivasi, untuk umi’q yang
selalu menjadi inspirasiku, untuk umi’q yang selalu menyirami kasih dan menjadi
persinggahanku saat suka ataupun dukaku. ”Semoga Allah Selalu Menjaganya dan
memberikan kekuatan untuknya”.

Keluarga Besarq
Yang memiliki rasa kasih dan sayang yang begitu besar untuk mbah wedok (almarhuma)
dan mbah lanang yang telah membesarkan q....,Kel. Pakde Satumar, Kel. Bu’de Saodah,
Kel. Paman Jumal, Kel. Paman Juli, Kel. Cak Mat.

My Roommate aT Ibnu Sina 10


Ika (makasih dagh mau jadi tempat keluh kesahq), B’kang (q kangen dijaraki lho…..!!!),
Sano (q belajar banyak hal dari kamu….maksih ya!!!), Nelly (Ambil hikma dari
permasalahan yang telah terjadi,), Ristin (Ma’af sering tak godain...).
Sahabatq Kontrakan Ss 5A
Oya’ (Makasih q dianterin riwa-riwi dan betah sekamar ma q…oya’ is the best
poko’e.!!), ika (Kangen dinasehati q...), Linda (Ayo dulinan setan-setanan ..), Saprol
(Ma’af ya ..q kalo ngomong kasar,karna q peduli ma kamu !!),Iwax (Makasih…jadi
kenal Ayank deh q) Risa (nyebelin tapi ngangenin), Sano (Ayo ke kampung inggris
lagi...), Gembos (g kangen dimarahi mbak ma’ ta??)Ka’ Nieta, Anis, Idunk, Chandra,
(Ayo... kapan ngumpul-ngumpul... kangen q!!!), Uniel n Rokhme (Ma’af q sering ngutang
pulsa...), Tika (q kangen masakane lho...!!) Luluk (kamu lucu banget.)

My heroes
Mas Alpi (Makasih telah meluangkan waktu dan mau tak repoti teru, semoga Allah
membalas dengan kebaikan yang lebih),Ayangq (Makasih...yang selalu memberiq
semangat) Agoeng (Makasih ...di kenalkan ma p.Ali,..), Pusy (makasih...dikenalin ma bu
Rini), Cu’uz (Makasih ..nganterin q konsultasi ke p.jay...jadi ikut-ikutan konsultasi deh..),
Hanik (Makasih...di kenalkan dengan p.Fah), Mh (Makasih....memberiq pengetahuan
yang lain, semoga Allah membalas dengan kebaikan yang lebih), Ali (Makasih...yang
dulu-dulu yach)

The Best Person


Boo n Sinyo (Ayo marekno skripsine...jo pacaran ae...n makasih dipinjemi leptop), Riesna
(Kangen ngecemese q….), Presto (ayo semangat….lulus dulu baru nikah!), Susi (Ayo
lulus disek…jo ngajar ae), Faiz (semangat!!!…pasti ada jalan), Miggers Pasuruan
“Saturiean, b4nditz_st,wong_g0kil, I_vira_cut3, t4l1_p0c0ng, giant_ciek ”
monogami_desersi dan pingin (Makasih jadi teman baikq dalam dunia maya…dan
semoga juga di dunia nyata)
MOTTO

” Berjuang untuk mendapatkan sesuatu bukan menunggu untuk


mendapatkannya”

”Jadikanlah sabar dan sholat sebagai penolongmu. Dan sesungguhnya yang


demikian itu sungguh berat, kecuali bagi orang-orang
orang orang yang khusu’ yaitu orang
orang-
orang yang mengetahui bahwa mereka akan menemui Tuhannya dan bahwa
mereka akan kembali kepada
kepada-Nya.”

(Qs. Al-Baqarah : 45-46)

8
KATA PENGANTAR

Maha Suci Allah, atas kasih sayang dan karunia-Nya sehingga peneliti bisa

menyelesaikan skripsi berjudul :

STUDI PERBANDINGAN KOMPRESI


MENGGUNAKAN METODE DESCRETE COSINE TRANSFORM (DCT)
DAN DESCRETE WAVELET TRANSFORM (DWT) PADA CITRA
DIGITAL

Peneliti berkeyakinan bahwa pengerjaan skripsi ini tak lepas dari bantuan

berbagai pihak. Pada kesempatan ini peneliti menyampaikan terima kasih kepada

semua pihak, khususnya pada :

1. Prof. Dr. Imam Suprayogo, selaku Rektor Universitas Islam Negeri (UIN)

Maulana Malik Ibrahim Malang

2. Prof. Dr. Sutiman Bambang Sumitro, S.U., D. Sc selaku Dekan Fakultas

Sains dan Teknologi Universitas Islam Negeri (UIN) Maulana Malik

Ibrahim Malang.

3. Ririen Kusumawati, M.Kom selaku dosen pembimbing dan kajur yang telah

memotivasi, membantu dan memberikan peneliti arahan yang baik dan benar

dalam menyelesaikan penelitian skripsi ini .

4. Zainal Abidin, M.Kom selaku dosen pembimbing agama yang bersedia

meluangkan waktu untuk memberikan masukan dan arahan terhadap

permasalahan integrasi dalam skripsi ini


5. Suhartono, M.Kom selaku dosen wali yang telah memberi masukan dan

arahan terhadap kartu rencana studi setiap semester, sehingga peneliti dapat

menyelesaikan kuliah pada tahap skripsi.

6. Segenap staf dan dosen pengajar Teknik Informatika (UIN) Maulana Malik

Ibrahim Malang.

Peneliti menyadari sepenuhnya bahwa sebagai manusia biasa tentunya tidak

luput dari kekurangan dan keterbatasan. Maka dengan segenap kerendahan hati,

peneliti mengharapkan saran dan kritik yang dapat menyempurnakan penelitian

ini sehingga dapat bermanfaat dan berguna untuk pengembangan ilmu

pengetahuan.

Malang, Juli 2010

Peneliti
DAFTAR ISI

HALAMAN JUDUL ..................................................................................................i


LEMBAR PENGAJUAN...........................................................................................ii
LEMBAR PERSETUJUAN ......................................................................................iii
LEMBAR PENGESAHAN ........................................................................................iv
LEMBAR PERNYATAAN .......................................................................................v
PERSEMBAHAN ......................................................................................................vi
MOTTO .....................................................................................................................viii
KATA PENGANTAR ................................................................................................ix
DAFTAR ISI ..............................................................................................................xi
DAFTAR GAMBAR..................................................................................................xiv
DAFTAR TABEL ......................................................................................................xv
DAFTAR ABSTRAK.................................................................................................xvi

BAB I PENDAHULUAN

1.1 Latar Belakang ......................................................................................................1


1.2 Rumusan Masalah .................................................................................................2
1.3 Batasan Masalah ...................................................................................................2
1.4 Tujuan ..................................................................................................................4
1.5 Metode Penelitian ..................................................................................................4
1.6 Sistematika Penelitian ...........................................................................................5

BAB II TINJAUAN PUSTAKA

2.1 Definisi Kompresi .................................................................................................7


2.2 Teknik Kompresi ..................................................................................................9
2.3 Hal-hal Penting dalam Kompresi Citra ..................................................................10
2.4 Kompresi Bersifat Lossy .......................................................................................11
2.4.1 1-D DCT .....................................................................................................12
2.4.2 2-D DCT ......................................................................................................13
2.4.3 Kuantisasi.....................................................................................................17
2.5 Kompresi Bersifat Loseless ...................................................................................20
2.5.1 DWT ............................................................................................................20
2.5.2 Huffman .......................................................................................................30
2.5.3 RLE..............................................................................................................33
2.6 Citra Digital ..........................................................................................................34
2.6.1 Matriks Bitmap.............................................................................................35
2.6.2 Pixel .............................................................................................................37
2.6.3 Dimensi dan Resolusi ...................................................................................39
2.6.4 Citra Grayscale ............................................................................................39
BAB III DESAIN DAN IMPLEMENTASI

3.1 Deskripsi Sistem ...................................................................................................41


3.2 Desain Sistem .......................................................................................................42
3.3 Desain Data...........................................................................................................43
3.3.1. Data Masukan.............................................................................................43
3.3.2. Data Selama Proses ....................................................................................44
3.3.3. Data Keluaran.............................................................................................44
3.3 Desain Proses ........................................................................................................45
3.3.1. Proses metode DCT keseluruhan ................................................................45
3.3.2. Proses Perhitungan Metode DCT ................................................................46
3.3.3. Proses Perhitungan Matriks Transform .......................................................47
3.3.4. Proses Perhitungan Matriks Transpose........................................................48
3.3.5. Proses Perhitungan Nilai Koefisien DCT ....................................................50
3.3.6. Proses Perhitungan Nilai Koefisien DWT ...................................................51
3.3.7. Proses Perhitungan Matriks High-pas Filter ................................................52
3.3.8. Proses Perhitungan Nilai Koefisien LL .......................................................53
3.3.9. Proses Perhitungan Nilai Koefisien LH.......................................................54
3.3.10.Proses Perhitungan Nilai Koefisien HL.......................................................55
3.3.11.Proses Perhitungan Nilai Koefisien HH ......................................................56
3.4 Implementasi.........................................................................................................57
3.4.1. Proses Perhitungan Koefisien DCT..............................................................57
3.4.2. Proses Perhitungan Koefisien IDCT ............................................................58
3.4.3. Proses Perhitungan Koefisien DWT.............................................................59

BAB IV HASIL DAN PEMBAHASAN

4.1 Lingkungan Uji Coba ..............................................................................................61


4.1.1. Ruang lingkup Perangkat Keras ....................................................................61
4.1.2. Ruang Lingkup Perangkat Lunak ..................................................................61
4.1.3. Desain Interface............................................................................................62
4.2 Data Uji Coba .......................................................................................................66
4.3 Hasil Uji Coba .......................................................................................................67
4.3.1. Contoh Perhitungan Metode Discrete Cosine Transform (DCT) ................... 67
4.3.2. Contoh Perhitungan metode Discrete Wavelet Transform (DWT)................. 83
4.3.3. Data Hasil Uji Coba ......................................................................................95

BAB V KESIMPULAN DAN SARAN

5.1 Kesimpulan ............................................................................................................99


5.2 Saran......................................................................................................................100

DAFTAR PUSTAKA .................................................................................................101


DAFTAR GAMBAR

Gambar 2.1 :Delapan basis vektor untuk DCT dengan n = 8....................... 12


Gambar 2.2 :64 basis fungsi dari 2-D DCT matriks 8 x 8 ........................... 14
Gambar 2.3 :Diagram encoding berbasis DCT. .......................................... 16
Gambar 2.4 :Persiapan kuantisasi koefisien DCT bagi prosedur entropy
encoding. (i) Pengkodean beda nilai koefisien DC, dan (ii)
Pengurutan zig-zag. ............................................................... 16
Gambar 2.5 :Diagram decoding berbasis DCT ...................................................... 17
Gambar 2.6 :Transformasi Wavelet dua dimensi......................................... 21
Gambar 2.7 :EBCOT pada Code Block yang diuraikan menjadi Bitplane ... 24
Gambar 2.8 :Pola perhitungan koefisien bit dalam Code block ................... 24
Gambar 2.9 :Skema EBCOT Tier 1 ............................................................ 25
Gambar 2.10 :Perhitungan context vector ..................................................... 25
Gambar 2.11 :Skema entropy coding ........................................................... 26
Gambar 2.12 :Pembagian interval pada MQ-Coder ...................................... 27
Gambar 2.13 :Organisasi code stream .......................................................... 29
Gambar 2.14 :Pembentukan pohon Hufman ................................................. 31
Gambar 2.15 :Representasi citra digital ........................................................ 35
Gambar 2.16 :Bitmap dengan nilai matriksnya ............................................. 36
Gambar 2.17 :Perbedaan ketepatan warna bitmap ........................................ 37
Gambar 2.18 :Perbedaan letak titik origin pada citra .................................... 38
Gambar 3.1 :Diagram alir sistem kompresi keseluruhan ............................. 42
Gambar 3.2 :Diagram alir proses kompresi keseluruhan ............................. 45
Gambar 3.3 :Diagram alir metode DCTkeseluruhan ................................... 46
Gambar 3.4 :Diagram alir koefisien DCT ................................................... 47
Gambar 3.5 :Diagram alir nilai matriks transform ..................................... 48
Gambar 3.6 :Diagram alir nilai matriks transpose ....................................... 49
Gambar 3.7 :Diagram alir nilai koefisien IDCT .......................................... 50
Gambar 3.8 :Diagram alir nilai koefisien DWT .......................................... 52
Gambar 3.9 :Diagram alir nilai matriks High-pas filter ............................... 53
Gambar 3.10 :Diagram alir nilai koefisien LL .............................................. 54
Gambar 3.11 :Diagram alir nilai koefisien LH .............................................. 55
Gambar 3.12 :Diagram alir nilai koefisien HL.............................................. 56
Gambar 3.13 :Diagram alir nilai koefisien HH ............................................. 57
Gambar 4.1 :Tampilan program kompresi .................................................. 62
Gambar 4.2 :Tampilan program kompresi menggunakan metode DCT....... 64
Gambar 4.3 :Tampilan program kompresi menggunakan metode DWT...... 65
Gambar 4.4 :Data yang digunakan dalam uji coba ...................................... 66
Gambar 4.5 :Data hasil uji coba ................................................................. 95
DAFTAR TABEL

Tabel 3.1 : Data citra inputan system ........................................................... 43


Tabel 4.1 : Hasil uji coba koefisien DCT dan DWT ..................................... 96
Tabel 4.1 : Hasil uji coba kompresi menggunakan metode DCT................... 97
Tabel 4.1 : Hasil uji coba kompresi menggunakan metode DWT ................. 98
ABSTRAK

Shofiyah. 2010. Studi Perbandingan Kompresi Menggunakan Metode


DCTdan DWTpada Citra Digital. Skripsi, Jurusan Teknik
Informatika, Fakultas Sains dan Teknologi, Universitas Islam Negeri
(UIN) Maulana Malik Ibrahim Malang. Ririen Kusumawati, M. Kom

Kata Kunci : Discrete Cosine Transform, Discrete Wavelet Transform, bitmap,


koefisien, Lossy, Loseless.

Kompresi citra digital merupakan upaya untuk melakukan transformasi


terhadap data atau simbol penyusun citra digital menjadi data atau simbol lain,
tanpa menimbulkan perubahan yang signifikan atas citra digital tersebut bagi mata
manusia yang mengamatinya. Kompresi harus dilakukan secara efektif, sehingga
citra digital yang dihasilkan setelah proses kompresi mempunyai ukuran yang
lebih kecil dibandingkan sebelum proses kompresi.
Dalam penelitian ini dilakukan dilakukan proses kompresi menggunakan
dua metode yaitu DCT dan DWT pada citra digital yang dibatasi pada gambar
bitmap, dan tujuannya yaitu untuk membandingkan nilai koefisien dan prosentase
tingkat kompresi. Proses kompresi mengunakan metode DCT menghasilkan nilai
koefisien Dc dan Ac, dan proses kompresi menggunakan metode DWT
menghasilkan empat nilai kuadran koefisien yaitu Low-low filter (LL), High-low
filter (HL), Low-hig filter (HL) dan High-high filter (HH), dan rasio prosentase
kompresi menggunakan metode DCT nilainya lebih kecil dari pada menggunakan
metode DWT, karena metode DWT bersifat loseless sedangkan metode DCT
bersifat lossy
BAB I

PENDAHULUAN

1.1 Latar Belakang

Berkaitan dengan pencitraan maka manusia adalah citra terbaik yang telah

diciptakan oleh Allah swt. Hal ini sebagaimana dinyatakan oleh Allah swt di

dalam Al Qur’anNya pada Surah At


At-Tiin Ayat 4, sebagaimana berikut:

Artinya: Sesungguhnya Kami telah menciptakan manusia dalam bentuk yang


sebaik-baiknya.
baiknya. (QS. At-Tin: 4)

Imam Muslim meriwayatkan hadits yang artinya “Sesungguhnya Allah

Maha Indah dan mencintai keindahan” (Ahmad Umar, 2004:185). Disebutkan

dalam ayat al-Qur’an


Qur’an bahwa manusia diciptakan dari citra Yang Maha Mencipta,

yaitu Allah swt. Jika dirujukkan lebih dalam pada hadits seperti disebutk
disebutkan di

atas, Allah Maha indah, tentunya ciptaan-Nya


ciptaan Nya pun adalah kreasi yang sangat

indah. Atas keindahan


keindahan-Nya
Nya itulah, Allah juga menyukai keindahan, dengan

pengertian lain adalah keindahan di atas bentuk yang sebaik-baiknya.


sebaik

Misalkan foto atau gambar lainnya, bagi sebagian orang adalah kenangan

yang membawa beribu makna. Seperti disebutkan dalam sebuah kata bijak, satu

kata hanya berarti satu kata tetapi sebuah gambar mewakili beribu makna. Meski

saat sekarang, posisi gambar telah digeser oleh gambar bergerak seperti video,
hanya saja penggunaan gambar sebagai media penyimpan sebuah peristiwa tetap

berada pada posisi yang strategis.

Berbagai teknologi pengolahan citra digital telah banyak berkembang,

salah satunya teknologi kompresi. Teknik pengompresian citra digital semakin

berkembang, seiring dengan dibutuhkannya kemampuan melakukan kompresi

dengan performansi tinggi untuk diterapkan pada berbagai bidang. Kompresi citra

digital merupakan upaya untuk melakukan transformasi terhadap data atau simbol

penyusun citra digital menjadi data atau simbol lain, tanpa menimbulkan

perubahan yang signifikan atas citra digital tersebut bagi mata manusia yang

mengamatinya. Kompresi harus dilakukan secara efektif, sehingga citra digital

yang dihasilkan setelah proses kompresi mempunyai ukuran yang lebih kecil

dibandingkan sebelum proses kompresi.

Dalam bidang teknologi informasi, komunikasi data sering dilakukan.

Komunikasi data ini berhubungan erat dengan pengiriman data menggunakan

sistem transmisi elektronik dari satu terminal komputer ke terminal komputer

yang lain. Besarnya ukuran data terkadang menjadi kendala dalam proses

pengiriman. Data dengan ukuran besar akan memakan waktu transfer yang lebih

lama dibandingkan dengan data yang memiliki ukuran lebih kecil, terkadang ada

resiko tidak dapat tertampung pada media penyimpanan dan tidak

tersampaikannya, sehingga akan memperkecil kapasitas kosong dalam memori

media penyimpanan. Oleh karena itu, manusia selalu berusaha untuk menemukan

suatu cara alterntif untuk menangani permasalahan tersebut, salah satunya dengan

cara kompresi.
Salah satu kegunaan kompresi adalah untuk memperkecil kapasitas kosong

dalam memori media penyimpanan, agar tidak terlalu boros menggunakan media

penyimpanan tersebut. Kompresi data berarti suatu teknik untuk memampatkan

data agar diperoleh data dengan ukuran yang lebih kecil daripada ukuran aslinya

sehingga lebih efisien dalam menyimpannya serta mempersingkat waktu

pertukaran data tersebut.

Dua metode yang digunakan dalam penelitian ini adalah DCT dan DWT.

kedua metode ini yaitu mentransformasi data dari tempat spatial (spatial domain)

ke tempat frekuensi (frequency domain). DCT bersifat lossy dan DWT loseless,

dicari metode terbaik dalam melakukan proses kompresi terhadap citra bmp.

Maka berdasarkan latar belakang yang telah dikemukakan di atas, judul

yang diambil dalam skripsi ini adalah “Studi Perbandingan Kompresi

Menggunakan Metode Discrete Cosine Transform (DCT) Dan Discrete

Wavelet Transform (DWT) Pada Citra Digital”.

1.2 Rumusan Masalah

Rumusan masalah dari skripsi ini adalah:

Bagaimana melakukan perbandingan kompresi menggunakan metode

DCT dan DWT pada citra digital.

1.3 Batasan Masalah

Batasan masalah pada skripsi ini antara lain:

1. Menggunakan gambar berformat bitmap

2. Menggunakan bahasa pemrograman Delphi


1.4 Tujuan Penelitian

Tujuan dari penelitian ini antara lain:

1. Membandingkan rasio kompresi menggunakan metode DCT dan DWT.

2. Mencari nilai koefisien dari metode DCT dan DWT

3. Mencari metode terbaik untuk melakukan kompresi.

1.5 Metode Penelitian

Dalam mengembangkan aplikasi ini digunakan metode yang digunakan

adalah:

1. Fase Analisis

a. Studi pustaka yaitu mempelajari dan memahami landasan teori yang

terkait dengan masalah yang akan dibahas, serta konsultasi bimbingan

dengan dosen pembimbing dan dosen lainnya.

b. Konsultasi dan bimbingan, yaitu setelah mempelajari teori berdasarkan

literatur lalu juga konsultasi dengan dosen pembimbing dan dosen

lainnya.

2. Fase Pembuatan Program

Eksperimental yaitu berksperimen membuat program, berdasarkan

materi dan algoritma yang telah dipelajari. Fase ini dilakukan secara

otodidak (belajar sendiri). Baik itu coding programnya maupun layout

program.

2. Fase Uji Coba Program

Dari fase uji coba ini didapat beberapa level untuk proses

pengujian diantaranya:
a. Uji metode yaitu menguji apakah program yang telah di bangun sesuai

dengan metode DCT dan DWT, Dan membandingkan hasilnya

b. Uji kompresi yaitu menguji berapa rasio perbandingan prosentase data

yang dikompresi

c. Uji kelayakan yaitu dengan mendemonstrasikan program didepan para

dosen dan teman-teman programmer.

3. Revisi Program

Setelah fase diatas, tahap ini adalah memperbaiki kesalahan-

kesalahan dalam listing program maupun menambah kekurangan dari

program yang dikerjakan.

4. Dokumentasi dan penyusunan Laporan

Dokumentasi dilakukan untuk jangka waktu sekarang dan yang

akan datang agar memudahkan maintenance jika terjadi kesalahan

program lagi akibat ketidak stabilan perangkat atau karena gangguan

teknis lainnya. Penyusunan laporan adalah tahap dimana melaporkan

semua hal dan data-data yang sudah dikerjakan selama penelitian.

1.6 Sistematika Penulisan

Tugas akhir ini disusun berdasarkan sistematika penulisan sebagai berikut:

1. BAB I PENDAHULUAN

Berisi latar belakang masalah, perumusan masalah, batasan

masalah, tujuan penelitian, manfaat penelitian, metodologi pemecahan

masalah, dan sistematika penulisan.


2. BAB II TINJAUAN PUSTAKA

Menguraikan teori-teori yang berhubungan dengan kompresi

menggunakan metode DCT dan DWT pada citra digital

3. BAB III METODOLOGI DAN PERANCANGAN SISTEM

Pada bab ini akan dijelaskan mengenai metode-metode yang

digunakan dalam pembuatan program kompresi menggunakan metode

DCT dan DWT.

4. BAB IV IMPLEMENTASI DAN UJI COBA SISTEM

Pada bab ini akan dilakukan implementasi program, pengujian dan

analisa sistem perangkat lunak yang dibangun, yaitu apakah sesuai dengan

metode DCT dan DWT.

5. BAB V KESIMPULAN DAN SARAN

Berisi kesimpulan dari seluruh rangkaian penelitian serta saran

kemungkinan pengembangannya.
BAB II

TINJAUAN PUSTAKA

Dalam skripsi ini diperlukan beberapa landasan teori untuk

memahami proses kompresi data. Kajian pustaka ini akan menjelaskan tentang :

2.1. Definisi Kompresi

Kompresi citra adalah aplikasi kompresi data yang dilakukan terhadap

citra digital dengan tujuan untuk mengurangi redundansi dari data-data yang

terdapat dalam citra sehingga dapat disimpan atau ditransmisikan secara efisien.

Informasi yang dirasakan redundan dapat dikompresi untuk meminimalisasi

redundansi tersebut. Hal ini dapat pula dilakukan pada citra dijital yang beragam

tipenya, dengan menerapkan berbagai metode kompresi yang ada.

Tujuan utama dari kompresi pada citra dijital adalah untuk mengurangi

penggunaan memori, sehingga akan memudahkan penyimpanan, pengolahan serta

pengiriman citra dijital tersebut. Dapat disimpulkan bahwa kompresi merupakan

proses untuk menghilangkan berbagai kerumitan yang tidak penting (redundansi)

dari suatu informasi, dengan memaksimalkan kesederhanaannya dan tetap

menjaga kualitas penggambaran dari informasi tersebut

Berkaitan dengan kompresi sesuai dengan firman Allah SWT Surat Al-

An’am/6:67 Allah berfirman:


∩∉∠∪ tβθßϑn=÷ès? t∃ôθy™uρ 4 @s)tGó¡•Β :*t7tΡ Èe≅ä3Ïj9
Artinya:
”Untuk setiap berita (yang dibawa oleh rasul-rasul) ada (waktu) terjadinya dan
kelak kamu akan Mengetahui”.(Qs. Al-An’am/6: 67).

Likulli nabaim mustaqarrun maksud maknanya adalah untuk setiap berita

ada wujudnya, baik di dunia maupun di akhirat, wa saufa ta’lamuun maksud

maknanya adalah apa yang ada di dunia akan kalian lihat, apa yang ada di akhirat

akan nampak untuk kalian.

Kejadian-kejadian yang terjadi di akhirat dan kejadian-kajadian di dunia

semua ada beritanya, seperti berita dari zaman Rasullullah SAW sampai berita-

berita yang ada di zaman modern sekarang semua terwujud atau nyata. Pada ayat

diatas kata Mustaqarrun dapat diartikan dengan berita yang tersimpan. Seperti

kejadian-kejadian yang terjadi di akhirat dan berita-berita pada zaman Rasullullah

SAW tersimpan dalam Al-Qur’an dan Hadits, contohnya berita tentang Isra’

Mi’raj Nabi Muhammad SAW waktu menerima wahyu dari Allah SWT melalui

Malaikat Jibril itu tersimpan dalam Al-Qur’an dan Hadits. Dengan tersimpannya

berita-berita pada zaman Rasullullah SAW dalam Al-Qur’an dan Hadits, maka

berita-berita tersebut dapat dilihat dan dibaca kembali sampai kapanpun.

Dari penjelasan ayat diatas, maka kata Mustaqarrun dapat juga diartikan

dengan penyimpanan data. Penyimpanan data dilakukan untuk mencegah

terjadinya kerusakan atau kehilangan data dan mempermudah membawa data-data

tersebut ke manapun dan kapanpun dibutuhkan. Penyimpanan data pada komputer

hanya dibatasi dengan kapasitas tertentu, sehingga dengan banyaknya data,


memungkinkan tidak cukupnya perangkat keras penyimpan data untuk

menyimpan semua data-data yang ada.

2.2. Teknik Kompresi Citra

Teknik kompresi pada citra tetap sama:

2.2.1. Kompresi Lossy

1. Ukuran file citra menjadi lebih kecil dengan menghilangkan beberapa

informasi dalam citra asli.

2. Teknik ini mengubah detail dan warna pada file citra menjadi lebih

sederhana tanpa terlihat perbedaan yang mencolok dalam pandangan

manusia, sehingga ukurannya menjadi lebih kecil.

3. Biasanya digunakan pada citra foto atau image lain yang tidak terlalu

memerlukan detail citra, dimana kehilangan bit rate foto tidak berpengaruh

pada citra.

2.2.2. Kompresi Loseless

1. Teknik kompresi citra dimana tidak ada satupun informasi citra yang

dihilangkan.

2. Biasa digunakan pada citra medis.

3. Metode loseless: Run Length Encoding (RLE), Entropy Encoding

(Huffman, Aritmatik), dan Adaptive Dictionary Based (LZW)


2.3. Hal-Hal Penting Dalam Kompresi Citra

2.3.1. Scalability/Progressive Coding/Embedded Bitstream

1. Adalah kualitas dari hasil proses pengkompresian citra karena manipulasi

bitstream tanpa adanya dekompresi atau rekompresi.

2. Biasanya dikenal pada loseless codec.

3. Contohnya pada saat preview image sementara image tersebut didownload.

Semakin baik scalability, makin bagus preview image.

4. Tipe scalability:

a. Quality progressive: dimana image dikompres secara perlahan-

lahan dengan penurunan kualitasnya

b. Resolution progressive: dimana image dikompresi dengan

mengenkode resolusi image yang lebih rendah terlebih dahulu baru

kemudian ke resolusi yang lebih tinggi.

c. Component progressive: dimana image dikompresi berdasarkan

komponennya, pertama mengenkode komponen gray baru

kemudian komponen warnanya.

2.3.2. Region of Interest Coding

Daerah-daerah tertentu dienkode dengan kualitas yang lebih tinggi

daripada yang lain.


2.3.3. Meta Information

image yang dikompres juga dapat memiliki meta information seperti

statistik warna, tekstur, small preview image, dan author atau copyright

information

2.4. Kompresi Bersifat Lossy

2.4.1. Discrete Cosine Transform Dimensi Satu ( 1-D DCT)

Discrete Cosine Transform (DCT) digunakan untuk mengubah sebuah

sinyal menjadi komponen frekuensi. Discrete Cosine Transform dari sederet

n bilangan real s(x), x = 0, ... ,n-1, dirumuskan sebagai:

n −1
 (2 x + 1) uµ 
S (U ) = 2 C (u )∑ S ( x) cos 
n x =0  2n 
2.1

Keterangan:

U = 0,............n-1

Dimana C (u) = 2-½ untuk u = 0

1 untuk lainnya

Setiap element hasil transformasi S(u) merupakan hasil dot product atau

inner product dari masukan s(x) dan basis vektor. Faktor konstanta

dipilih sehingga basis vektornya orthogonal dan ternormalisasi. DCT juga

diperoleh dari produk vektor (masukan) dan n x n matriks orthogonal yang setiap

barisnya merupakan basis vektor. Delapan basis vektor untuk n = 8 t dilihat pada
gambar di bawah. Setiap basis vektor berkorespondensi dengan kurva sinusoid

frekuency tertentu.

Gambar 2.1 Delapan basis vektor untuk DCT dengan n = 8

(Sumber : MATLAB Image Processing Toolbox, The MathWorks Inc)

Barisan s(x) diperoleh lagi dari hasil transformasinya S(u) dengan

menggunakan Invers Discrete Cosine Transform (IDCT), dirumuskan

sebagai berikut :

n −1
 (2 x + 1) uµ 
n∑
S(X ) = 2 S (u )C (u ) cos 
x=0  2n 
2.2

Keterangan:

U = 0,............n-1

Dimana C (u) = 2-½ untuk u = 0 dan 1 untuk lainnya.

Persamaan diatas menyatakan s sebagai kombinasi linier dari basis vektor.

Koefisien adalah elemen transformasi S, yang mencerminkan banyaknya

setiap frekuensi didalam masukan s.


2.4.2. Discrete Cosine Transform Dimensi Dua ( 2-D DCT)

DCT dimensi satu untuk mengolah sinyal-sinyal dimensi satu

seperti bentuk gelombang suara. Sedangkan untuk citra sinyal dua dimensi,

diperlukan versi dua dimensi dari DCT. Sebuah matriks n x m, 2-D DCT

dihitung dengan cara: 1-D DCT diterapkan pada setiap baris dari s dan hasilnya

dihitung DCT setiap kolomnya.

Rumus transformasi 2-D DCT untuk s adalah:

n −1 n −1
 (2 x + 1) uµ 
S (u , v ) = 2 C (u )C (v)∑ ∑ S ( x, y ) cos 
nm y =0 x =0  2n 
2.3

keterangan : u=0,.....n-1;

v=0,.....n-1;

Rumus 2-D DCT diatas sering juga disebut sebagai Forward Discrete

Cosine Transform (FDCT). 2-D DCT dihitung dengan menerapkan transformasi

1-D secara terpisah pada baris dan kolomnya, sehingga dapat dikatakan bahwa 2-

D DCT sparable dalam dua dimensi. Seperti kasus satu-dimensi, setiap elemen

S(u,v) dari transformasi merupakan inner product dari masukan dan basis

fungsinya, dalam kasus ini, basis fungsinya adalah matriks n x m. Setiap dua-

dimensi basis matriks merupakan outer product dua basis vektor satu-dimensinya.
Gambar 2.2 64 basis fungsi dari 2-D DCT matriks 8 x 8

(Sumber : MATLAB Image Processing Toolbox, The MathWorks Inc)

Setiap basis matriks dikarakterisasikan frekuensi spasial horizontal dan

vertikal. Frekuensi horizontal meningkat dari kiri ke kanan, dan dari atas ke

bawah secara vertikal. Ini menunjukkan tingkat signifikansi secara perseptual,

artinya basis fungsi dengan frekuensi rendah memiliki sumbangan lebih besar

bagi perubahan penampakan citra dibandingkan basis fungsi yang

memiliki frekuensi tinggi. Nilai konstanta basis fungsi terletak di bagian kiri atas

sering disebut sebagai basis fungsi DC, dan DCT koefisien yang bersesuaian

disebut koefisien DC (DC coefficient).

Invers Discrete Cosine Transform dimensi dua (2-D IDCT)

diperoleh

dengan rumus berikut ini :


n −1 n −1
(2 x + 1) uµ (2 y + 1) vµ
∑∑ S (u, v )C (u )C (v ) cos
2
S ( x, y ) = cos
nm y =0 x =0 2n 2n

2.4

keterangan : x=0,.....n-1; dan y=0,.....n-1;

Proses Encoding dan Decoding

Didalam proses encoding, sampel-sampel dari komponen citra masukan

dikelompokkan kedalam blok 8 x 8, dan setiap bloknya ditransformasikan dengan

forward Discrete Cosine Transform DCT (FDCT) ke dalam sebuah himpunan

64 nilai yang biasa disebut dengan koefisien DCT. Salah satu anggota dari

himpunan ini sering disebut sebagai koefisien DC dan sisanya 63 disebut dengan

koefisien AC. Selanjutnya setiap 64 koefisien ini, dilakukan proses kuantisasi

menggunakan 64 nilai yang bersesuaian pada tabel kuantisasinya. Setelah proses

kuantisasi, koefisien DC dan 63 koefisien AC disiapkan untuk entropy coding,

seperti terlihat pada gambar di bawah. Nilai koefisien DC yang telah dikuantisasi

sebelumnya digunakan untuk memprediksi nilai koefisien DC terkuantisasi

sekarang dan perbedaan nilainya juga dikodekan. Kemudian 63 koefisien AC ini

dikodekan seperti pada koefisien DC tetapi sebelumnya diurutkan secara zig-zag

seperti pada gambar di bawah. Koefisien yang telah dikuantisasi ini selanjutnya

dilewatkan pada prosedur entropy encoding yang bertugas mengkompresi data.


Gambar 2.3 Diagram encoding berbasis DCT.
Sumber : CCITT (1993).

Pada gambar di bawah dapat dilihat diagram proses decoding berbasis

DCT. Langkah langkah pada proses decoding pada dasarnya merupakan kebalikan

dari proses encoding diatas. Entropy decoder melakukan decoding pada

koefisienkoefisien DCT terkuantisasi yang telah terurut secara zig-zag, setelah

proses ini DCT koefisien ditransformasikan kedalam 8 x 8 blok sampelnya

menggunakan invers DCT (IDCT), kemudian citra baru dibentuk dari blok-blok

sampelnya tersebut.

Gambar 2.4 Persiapan kuantisasi koefisien DCT bagi prosedur entropy encoding.
(i)
Pengkodean beda nilai koefisien DC, dan (ii) Pengurutan zig-zag.
Sumber : CCITT (1993).
Gambar 2.5 Diagram decoding berbasis DCT
Sumber : CCITT (1993).

2.4.3. Kuantisasi

Kompresi berbasis kuantisasi menggunakan metode pengurangan jumlah

intensitas warna, sehingga dapat mengurangi jumlah bit yang digunakan untuk

merepresentasikan citra. Kompresi ini bersifat lossy, karena intensitas warna

berkurang, sehingga kualitas gambar hasil kompresi menjadi kurang baik. Secara

algoritma teknik kompresi ini diberikan sebagai berikut:

1. Buat histogram citra asal

Histogram citra adalah grafik yang menunjukkan distribusi dari intensitas

citra. Histogram citra menyatakan frekuensi kemunculan berbagai derajat

keabuan dalam citra. Teknik pemodelan histogram mengubah citra hingga

memiliki histogram sesuai keinginan. Untuk meningkatkan kualitas citra salah

satunya dapat dilakukan dengan ekualisasi histogram. Dengan ekualisasi

histogram dapat diperoleh histogram citra dengan distribusi seragam.


Contoh: Diketahui citra array berukuran 6x6 piksel (8 derajat keabuan, 3

bit) sebagai berikut :

1 1 3 7 1 2

4 4 6 1 2 2

7 7 7 5 5 1

6 4 4 4 2 2

5 5 2 2 2 1

2 3 3 3 0 0

2. Tentukan jumlah kelompok dalam histogram. Jumlah tersebut menunjukkan

tingkat intensitas warna citra kompresi.

3. Buat kelompok intensitas warna baru dengan menghitung jumlah

piksel/jumlah kelompok.

K Nk

0 2

1 6

2 10

3 3

4 5

5 4

6 2

7 4
4. Atur pengelompokan.

K Nk Nb Kb

0 2

1 6 8 0

2 10 10 1

3 3

4 5 8 2

5 4

6 2 10 3

7 4

5. Lakukan kuantisasi.

0 0 2 3 0 1

2 2 3 0 1 1

3 3 3 3 3 0

3 2 2 2 1 1

3 3 1 1 1 0

1 1 2 2 0 0

6. Kodekan nilai intensitas warna hasil kuantisasi ke dalam citra kompresi.


 ukuran citra hasil pemampa tan 
Nisbah = 100% −   x100%
 ukuran citra semula 

2.5

Ukuran citra sebelum kompresi = 36 piksel x 3 bit = 108 bit

Ukuran citra setelah kompresi = 36 piksel x 2 bit = 72 bit

Nisbah pemampatan = 100%-(72/108)=33.33%, yang artinya 33% dari citra telah

dimampatkan.

2.5. Kompresi Bersifat Losless

2.5.1. Discrete Wavelet Transform (DWT)

Pada transformasi wavelet, dilakukan penyaringan data menjadi low pass

dan high pass. Low pass merepresentasikan bagian penting data dalam resolusi

rendah, sedangkan high pass menyatakan detail data yang ditransformasikan.

Pada JPEG, dilakukan DWT dua dimensi, yaitu DWT terhadap baris (horizontal),

dan terhadap kolom (vertikal).

Tahapan DWT dua dimensi menghasilkan empat buah kuadran, yaitu:

LL: sub-kelompok low dari hasil transformasi pada baris dan kolom.

HL: sub-kelompok high dari hasil transformasi baris, dan sub-kelompok low

dari transformasi kolomnya.

LH: sub-kelompok low dari hasil transformasi baris, dan sub-kelompok high

dari transformasi kolomnya.

HH: sub-kelompok high dari hasil transformasi baris dan kolom.


Gambar 2.6 Transformasi Wavelet dua dimensi

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

Salah satu metode transformasi wavelet yang sederhana dengan

menggunakan pendekatan lifting. Dengan metode ini, konstanta wavelet filter

seperti konstanta filter Daubechies yang digunakan, difaktorkan menjadi

konstanta lainnya yang menyatakan lifting steps. Berikut beberapa konstanta

digunakan untuk perhitungan dengan pendekatan lifting ini:

a = -1.586, b = -0.052, c = 0.883, d = 0.444

2.6

a. Quantization

Quantization proses membulatkan koefisien yang dihasilkan dari proses

transformasi. Operasi ini bersifat lossy, kecuali jika nilai pembulatannya 1 dan

koefisien hasil transformasi bilangan bulat, hasil yang diperoleh dari Reversible
Component Transformation (RCT). Masing-masing koefisien dari hasil

transformasi yaitu ab(u,v), dari sub kelompok b, dibulatkan dan menghasilkan

qb(u,v), berdasarkan rumus berikut:

qb (u, v ) = sign(ab(u, v )) ab (u, v )


 ∆b 

2.7

Keterangan: b menyatakan ukuran dari pembulatan yang dilakukan terhadap

koefisien, sign(ab(u,v)) menyatakan tanda koefisien (ab(u,v)), dan operasi + X +

untuk mendapatkan bilangan bulat terbesar yang kurang dari atau sama dengan x.

b. Entropy Coding

Metode yang digunakan dalam melakukan Entropy Coding adalah

Embedded Block Coding with Optimised Truncation, atau yang disingkat sebagai

EBCOT. EBCOT terdiri atas dua tahapan (Tier). Tier 1 bertanggung jawab dalam

pemodelan data yang dikompresi, serta entropy coding dilakukan untuk

membentuk bit stream, sedangkan Tier 2 mengatur data keluarannya membentuk

paket-paket bit stream hasil kompresi.

Dalam EBCOT, dilakukan pengelompokan koefisien yang diperoleh dari

transformasi Wavelet menjadi persegi dengan ukuran yang kecil, untuk dikodekan

secara independen. Standar ukuran yang digunakan 2n, tetapi tidak boleh kurang

dari 4x4. EBCOT dilakukan pada masing-masing lapisan bit penyusun citra

dijital yang disebut sebagai bitplane, dengan perhitungan dimulai dari lapisan bit

yang paling signifikan ( Most Significant Bit) atau MSB, ke bit yang kurang
signifikan (Least Significant Bit) atau LSB. Lapisan MSB dipilih sebagai bitplane

pertama yang dikode, setidaknya harus mengandung sebuah bit 1.

Proses perhitungan pada masing-masing code block, dilakukan dengan

urutan perhitungan yang khusus. Dimulai dari pojok kiri code block, dengan

melakukan perhitungan terhadap empat baris koefisien kolom pertama, diikuti

perhitungan empat baris data pertama di kolom kedua, dilakukan hingga mencapai

kolom yang paling kanan. Proses tersebut kemudian diulangi untuk empat baris

data yang kedua, dari kolom paling kiri sampai paling kanan. Proses tersebut

dilakukan hingga mencapai bagian bawah code block.

Gambar 2.7 EBCOT pada code block yang diuraikan menjadi bitplane

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

Pola perhitungan tersebut dapat dilihat pada Gambar di bawah ini:


Gambar 2.8 Pola perhitungan koefisien bit dalam Code block

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

1. Tier 1

Skema Tier 1 pada EBCOT dapat dilihat pada Gambar di bawah ini:

Gambar 2.9 Skema EBCOT Tier 1

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

i). Context Formation

Context vector menyatakan significance state kedelapan koefisien bit yang

menjadi tetangga dari sebuah bit seperti tampak pada Gambar di bawah. Jika
koefisien dari masing-masing tetangga tersebut signifikan, maka tetangga-

tetangga tersebut akan bernilai 1, tetapi jika sebaliknya akan bernilai 0.

D0 V0 D1

H0 X H1

D2 V1 D3

Gambar 2.10 Bit-bit dalam perhitungan context vector

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

Terdapat empat pengkodean yang dilakukan dalam entropy coding, yaitu

significant coding, sign coding, magnitude refinement, dan cleanup coding.

Keempat pengkodean tersebut dilakukan dalam tiga buah tahapan, yaitu:

1. Significance dan sign coding dalam significance propagation pass.

2. Magnitude refinement coding dalam magnitude refinement pass.

3. Cleanup dan sign coding dalam cleanup pass.

Masing-masing koefisien bit dikodekan dengan salah satu dari ketiga

tahapan tersebut, berdasarkan kondisi bit yang sesuai dengan salah satu tahapan.

Skema dari ketiga tahapan tersebut dapat dilihat pada Gambar berikut :
Gambar 2.11 Skema entropy coding

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

ii). Arithmatic Coding

Pengkodean yang digunakan dalam arithmatic coding adalah MQ-Coder.

MQ-Coder tidak hanya menggunakan simbol bit masukan, tetapi lebih

mengindikasikan jenis bit yang diolah, apakah bit tersebut termasuk bit yang

kemungkinan munculnya lebih sering (Most Probable Symbol), disingkat dengan

MPS; atau sebaliknya, yaitu lebih jarang muncul ( Less Probable Symbol), disebut

sebagai LPS. Masing-masing kemungkinan mempunyai nilai terbatas dalam

sebuah interval, yang terbagi menjadi dua buah sub interval . Dalam interval

tersebut, MPS berada bagian atas dari LPS, dengan prosentase lebih besar.

Penggambaran, serta pembagian dari interval tersebut dapat dilihat di bawah ini:
Gambar 2.12 Pembagian interval pada MQ-Coder

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

Gambar di atas, A menyatakan panjang interval, dan Qe menyatakan

perkiraan probabilitas dari LPS, sedangkan basis, atau batas bawah interval

dinyatakan dengan C. Panjang interval dibatasi dalam jangkauan 0.75 = A <

1.5. Jika nilai A berada di bawah batasan minimum, maka A akan digandakan,

hingga berada dalam batasan yang seharusnya. Proses ini dinamakan dengan

renormalization. Jika nilai A berubah, maka C juga harus diubah dengan proses

sama. Karena nilai A selalu berada dalam batasan tersebut, maka nilai A akan

selalu dianggap sebanding dengan 1 ( A ª 1). Kondisi dimana sub interval MPS

kurang dari LPS dapat terjadi jika Qe mendekati 0.5 dengan nilai A yang kecil.

Apabila kondisi tersebut terjadi, maka harus dilakukan pembalikan nilai antara

MPS dengan LPS, yang disebut sebagai Conditional exchange.

2. Tier 2

MQ Coder dilakukan pada masing-masing code block, seperti yang telah

dijelaskan di atas, akan menghasilkan bit stream, berupa byte-byte data mentah

terkompresi. Pada Tier 2 dalam tahapan EBCOT, dilakukan pengaturan terhadap

bit stream tersebut, sehingga representasi akhir dari citra dijital yang dikompresi

dapat lebih terstruktur, yaitu dengan membentuk layer.


Layer menyatakan kumpulan dari urutan tahapan pengkodean yang

dilakukan code block yang terdapat dalam subband dan juga komponen.

Kontribusi dari masing-masing code block terhadap layer berubah-ubah,

tergantung bit plane yang diperhitungkan dalam coding pass. Setiap pertambahan

layer, akan menambah kualitas citra dijital hasil kompresi yang dihasilkan.

3. Rate Control

Rate Control merupakan proses pengaturan code stream, dalam rangka

pencapaian bit rate yang diiginkan ( target bit rate). Dalam penentuan target bit

rate, dilakukan perhitungan terhadap titik-titik potong optimal dari bit stream

yang telah dihasilkan.

4. Bit Stream Organization

Dalam tahapan ini, dilakukan pengelompokan bit stream hasil kompresi,

menjadi paket-paket data. Paket-paket tersebut, dihasilkan dari code block-code

block pada subband dalam level resolusi yang sama. Masing-masing paket yang

terbentuk akan memiliki paket header, antara lain berisi informasi mengenai

layer, resolusi, komponen, serta posisi .

Pengorganisasian dari bit stream dapat dilihat pada Gamba berikut:


Gambar 2.13 Organisasi code stream

(Sumber: Huang W.B., The Embedded Block Coding with Optimized Truncation)

2.5.2. Huffman

Metode Huffman merupakan salah satu teknik kompresi dengan cara

melakukan pengkodean dalam bentuk bit untuk mewakili data karakter. Cara kerja

atau algoritma metode ini adalah sebagai berikut :

1. Menghitung banyaknya jenis karakter dan jumlah dari masing-masing

karakter yang terdapat dalam sebuah file.

2. Menyusun setiap jenis karakter dengan urutan jenis karakter yang

jumlahnya paling sedikit ke yang jumlahnya paling banyak.

3. Membuat pohon biner berdasarkan urutan karakter dari yang jumlahnya

terkecil ke yang terbesar, dan memberi kode untuk tiap karakter.

4. Mengganti data yang ada dengan kode bit berdasarkan pohon biner.
5. Menyimpan jumlah bit untuk kode bit yang terbesar, jenis karakter yang

diurutkan dari frekuensi keluarnya terbesar ke terkecil beserta data yang

sudah berubah menjadi kode bit sebagai data hasil kompresi.

a. Encode Huffman

Contoh teknik kompresi dengan menggunakan metode Huffman pada file

teks. Misalkan sebuah file teks yang isinya “AAAABBBCCCCCD”. File ini

memiliki ukuran 13 byte atau satu karakter sama dengan 1 byte. Berdasarkan pada

cara kerja di atas, dapat dilakukan kompresi sebagai berikut :

1. Mencatat karakter yang ada dan jumlah tiap karakter. A = 4, B = 3, C = 12,

D=1

2. Mengurutkan karakter dari yang jumlahnya paling sedikit ke yang paling

banyak yaitu : D, B, A, C

3. Membuat pohon biner berdasarkan urutan karakter yang memiliki

frekuensi terkecil hingga yang paling besar.

Gambar 2.14 Pembentukan Pohon Hufman

(Sumber: Munir Rinaldi 2004)


4. Mengganti data yang ada dengan kode bit berdasarkan pohon biner yang

dibuat. Penggantian karakter menjadi kode biner, dilihat dari node yang

paling atas atau disebut node akar : A = 01, B = 001, C = 1, D = 000.

Selanjutnya berdasarkan pada kode biner masing-masing karakter

ini, semua karakter dalam file dapat diganti menjadi :

01010101001001001111110001111111 Karena angka 0 dan angka 1

mewakili 1 bit, sehingga data bit di atas terdiri dari 32 bit atau 4 byte (1

byte = 8 bit)

5. Menyimpan kode bit dari karakter yang frekuensinya terbesar, jenis

karakter yang terdapat di dalam file dan data file teks yang sudah

dikodekan. Cara menyimpan data jenis karakter adalah dengan

mengurutkan data jenis karakter dari yang frekuensinya paling banyak

sampai ke yang paling sedikit, menjadi : [C,A,B,D] File teks di atas,

setelah mengalami kompresi, memiliki ukuran sebesar 1 + 4 + 4 = 9 byte.

Jumlah ini terdiri dari 1 byte kode karakter yang memiliki frekuensi

terendah, 4 jenis karakter = 4 byte dan 4 byte data kode semua karakter.

b. Decode Huffman

Setiap data yang telah mengalami kompresi, tentu harus dapat

merekonstruksi kembali data tersebut sesuai dengan aslinya. Merekonstruksi data

lebih dikenal sebagai metode dekompresi data. Metode dekompresi Huffman

dapat digunakan untuk mengembalikan data kode biner menjadi file teks. Metode

atau algoritma untuk mengembalikan data hasil kompresi menjadi data semula

sebagai berikut:
1. Membaca data pertama yang merupakan kode bit dari data karakter

terakhir. Data pertama ini memiliki jumlah bit yang bervariasi (dalam

contoh di atas data ini sama dengan 1 byte) dan digunakan sebagai

pembanding untuk mengetahui apakah data karakter yang direkonstruksi

merupakan data karakter terakhir atau bukan. Data ini selalu memiliki nilai

sama dengan nol.

2. Membaca data kode biner bit per bit hasil kompresi, bila nilai bit pertama

sama dengan “0” maka dilanjutkan pada bit kedua. Bila bit kedua juga

memilik nilai “0”, maka terus dilakukan pembacaan bit hingga ditemukan

nilai bit sama dengan “1”. Setelah ditemukan nilai bit “1”, berarti semua

bit yang terbaca adalah merupakan kode sebuah karakter.

3. Mengubah kode biner menjadi sebuah karakter dengan cara menghitung

banyaknya bit dalam kode tersebut. Misalkan banyaknya bit tersebut

adalah n, maka kode biner di atas mewakili karakter pada urutan ke n

dalam listing karakter.

4. Ulangi langkah b dan c hingga kode bit biner terakhir. Untuk menentukan

apakah kode biner yang sedang dibaca mewakili karakter yang paling

akhir dalam listing karakter atau tidak adalah dengan cara membandingkan

semua bit “0” yang terbaca dengan kode biner dari karakter yang terakhir.

c. Run-Length Encoding (RLE)

Cocok digunakan untuk memampatkan citra yang memiliki kelompok-

kelompok piksel berderajat keabuan yang sama. Metode ini dilakukan dengan

menyatakan seluruh baris citra menjadi sebuah baris run, lalu menghitung run–
length untuk setiap derajat keabuan yang berurutan. Metode RLE dapat

dikombinasikan dengan metode Huffman untuk meningkatkan ratio kompresi.

Mula-mula lakukan kompresi RLE lalu hasilnya dimampatkan lagi dengan

Huffman. Contoh sebuah citra sebagai berikut :

1 2 1 1 1 1

1 3 4 4 4 4

1 1 3 3 3 5

1 1 1 1 3 3

Selanjutnya nyatakan barisan nilai derajat keabuan

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

Hitung run-length untuk setiap derajat keabuan yang berurutan yaitu

hitung jumlah kemunculan datanya (1,1) (2,1) (1,5) (3,1) (4,4) (1,2) (3,3) (5,1)

(1,4) (3,2)

Hasil pengkodean 1 1 2 1 1 5 3 1 4 4 1 2 3 3 5 1 1 4 3 2 >ada 20 nilai, jadi

berkurang 4 nilai

2.6. Citra Digital

Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua

dimensi yang continue menjadi gambar diskrit melalui proses sampling. Gambar

analog dibagi menjadi N baris dan M kolom sehingga menjadi gambar diskrit.
Dimana setiap pasangan indeks baris dan kolom menyatakan suatu titik pada citra.

Nilai matriksnya menyatakan nilai kecerahan titik tersebut. Titik-titik tersebut

dinamakan sebagai elemen citra, atau pixel (picture elemen). Dalam kamus

komputer, gambar atau foto diistilahkan sebagai citra digital yang mempunyai

representasi matematis berupa matriks Cm×n = (cij).

Gambar 2.15 Representasi citra digital


(Sumber: Munir, Rinaldi 2004).

Gonzales and Woods (1992:2) mendefinisikan citra digital sebagai fungsi

intensitas cahaya dua-dimensi f(x,y) dimana x dan y menunjukkan koordinat

spasial, dan nilai f pada suatu titik (x,y) sebanding dengan brightness (gray level)

dari citra di titik tersebut.

2.6.1. Matriks bitmap

Citra bitmap adalah susunan bit-bit warna untuk tiap pixel yang

membentuk pola tertentu. Pola-pola warna ini menyajikan informasi yang dapat

dipahami sesuai dengan persepsi indera penglihatan manusia. Format file ini

merupakan format grafis yang fleksibel untuk platform Windows sehingga dapat
dibaca oleh program grafis manapun. Format ini mampu menyimpan informasi

dengan kualitas tingkat 1 bit samapi 24 bit. (http://slametriyanto.web.id).

Pada gambar 2.1 ditunjukkan gambar bitmap beserta nilai matrisnya.

(a) bitmap 15×10 pixel (b) Matriks bitmap

Gambar 2.16 Bitmap dengan nilai matriksnya


(Sumber: Munir, Rinaldi 2004).

Citra bitmap didefinisikan sebagai fungsi f (x,y) dengan x dan y adalah

koordinat bidang. Besaran f untuk tiap koordinat (x,y) disebut intensitas atau

derajat keabuan citra pada titik tersebut

Dari definisi di atas yang diperjelas oleh gambar 1.1, bitmap dimodelkan

dalam bentuk matriks. Nilai pixel atau entri-entri dari matriks ini mewakili warna

yang ditampilkan dimana ordo matriks merupakan dimensi panjang dan lebar dari

bitmap.

Nilai-nilai warna ditentukan berdasarkan intensitas cahaya yang masuk.

Dalam komputer, derajat intensitas cahaya diwakili oleh bilangan cacah. Nilai 0

menerangkan tidak adanya cahaya sedangkan nilai yang lain menerangkan adanya

cahaya dengan intensitas tertentu. Nilai-nilai ini bisa didapatkan melalui fungsi-
fungsi yang disediakan oleh bahasa pemrograman berdasarkan input berupa lokasi

entri-entri matriks yang hendak dicari.

2.6.2. Pixel

Pixel (Picture Elements) adalah nilai tiap-tiap entri matriks pada bitmap.

Rentang nilai-nilai pixel ini dipengaruhi oleh banyaknya warna yang dapat

ditampilkan. Jika suatu bitmap dapat menampilkan 256 warna maka nilai-nilai

pixelnya dibatasi dari 0 hingga 255. Suatu bitmap dianggap mempunyai ketepatan

yang tinggi jika dapat menampilkan lebih banyak warna. Prinsip ini dapat dilihat

dari contoh pada gambar 2.3 yang memberikan contoh dua buah bitmap dapat

memiliki perbedaan dalam menangani transisi warna putih ke warna hitam.

Gambar 2.17 Perbedaan ketepatan warna bitmap


(Sumber: Munir, Rinaldi 2004).

Perbedaan ketepatan warna bitmap pada gambar 2 menjelaskan bahwa

bitmap sebelah atas memberikan nilai untuk warna lebih sedikit daripada bitmap

dibawahnya. Untuk bitmap dengan pola yang lebih kompleks dan dimensi yang

lebih besar, perbedaan keakuratan dalam memberikan nilai warna akan terlihat

lebih jelas.

Menurut Usman Ahmad (2005:14) sebuah pixel adalah sampel dari

pemandangan yang mengandung intensitas citra yang dinyatakan dalam bilangan


bulat. Sebuah citra adalah kumpulan pixel-pixel yang disusun dalm larik dua

dimensi. Indeks baris dan kolom (x,y) dari sebuah pixel dinyatakan dalam

bilangan bulat. Pixel (0,0) terletak pada sudut kiri atas pada citra, indeks x

begerak ke kanan dan indeks y bergerak ke bawah. Konvensi ini dipakai merujuk

pada cara penulisan larik yang digunakan dalam pemrograman komputer. Letak

titik origin pada koordinat grafik citra dan koordinat pada grafik matematika

terdapat perbedaan. Hal yang berlawanan untuk arah vertikal berlaku pada

kenyataan dan juga pada sistem grafik dalam matematika yang sudah lebih dulu

dikenal. Gambar berikut memperlihatkan perbedaan kedua sistem ini.

Titik origin (0,0)


y
y Titik origin (0,0)

(a) koordinat pada grafik matematika (b) koordinat pada citra


Gambar 2.18 Perbedaan letak titik origin pada koordinat grafik dan pada citra

(Sumber: Munir, Rinaldi 2004).

2.6.3. Dimensi dan Resolusi

Dimensi bitmap adalah ukuran bitmap yang dinotasikan dengan menulis

lebar × tinggi bitmap. Satuan ukur dimensi bitmap dapat berupa satuan ukur

metris maupun pixel. Dimensi yang digunakan oleh bitmap mewakili ordo matriks
citra itu sendiri. Contoh pada gambar 2.1 menunjukkan sebuah bitmap berdimensi

15×10 pixel yang diwakili oleh matriks C10×15. Model matriks untuk bitmap

dipengaruhi oleh kerapatan pixel atau resolusi. Kerapatan pixel ini digunakan

bitmap dalam mendekati kekontinyuan. Semakin besar resolusi suatu bitmap,

obyek yang ditampilkan citra tersebut semakin akurat.

Kerapatan titik-titik pada citra dinamakan resolusi, yang menunjukkan

seberapa tajam gambar ini ditampilkan yang ditunjukkan dengan jumlah baris dan

kolom. Resolusi merupakan ukuran kuantitas bukan kualitas. Pixel merupakan

satuan ukuran terhadap jumlah area photo-receptor pada sensor gambar kamera,

yang menentukan seberapa banyak data yang dapat ditangkap.

Resolusi digunakan untuk pendataan (sampling) citra dari sensor. Sensor

mengubah citra dari fungsi kontinu ke fungsi diskrit sehingga semakin besar

resolusi citra maka informasi yang dihasilkan akan semakin baik, sebab data yang

diperoleh menjadi lebih banyak.

2.6.4. Citra Grayscale

Grayscale (skala keabuan) merupakan suatu istilah untuk menyebutkan

satu citra yang memiliki warna putih, abu-abu dan hitam. Format citra ini disebut

skala keabuan karena pada umumnya warna yang dipakai adalah antara hitam

sebagai warna minimal dan warna putih sebagai warna maksimalnya, sehingga

warna antaranya adalah abu-abu.

Pada citra digital banyaknya kemungkinan nilai dan nilai maksimumnya

bergantung pada jumlah bit yang digunakan. Misalnya pada citra skala keabuan 4

bit, maka jumlah kemungkinan nilainya adalah 2 4 = 16 dan nilai maksimumnya


adalah 2 4 -1 = 15. Sedangkan untuk skala keabuan 8 bit, maka jumlah

kemungkinan nilainya adalah 2 8 = 256, dan nilai maksimumnya adalah 2 8 -1 =

255. Sehingga Makin besar angka grayscale, citra yang terbentuk makin

mendekati kenyataan. (Balza dan Kartika, 2005:9)


BAB III

DESAIN DAN IMPLEMENTASI

Bab ini membahas tentang desain, implementasi desain dan metode output

dalam kompresi. Desain dan implementasi ini meliputi deskripsi sistem, desain

data, desain proses dan implementai desain.

3.1. Deskripsi Sistem

Subbab ini akan membahas mengenai deskripsi sistem yang dikerjakan

pada skripsi ini. Tujuan pembuatan sistem untuk membandingkan prosentase dan

koefisien citra setelah dikompresi menggunakanan DCT dan DWT, Pada awalnya

pengguna memasukkan input data berupa citra., citra masukan untuk proses

kompresi adalah citra bmp, output dari DCT dan DWT adalah nilai koefisien dan

rasio kompresi.

Dilakukan proses buka citra, inputkan citra (akan terbaca pixel citra

tersebut), dilakukan proses pilih DCT dan DWT, dihasilkan output citra

(didalamnya sudah mengandung koefisien DCT dan DWT), dan rasio

kompresinya selanjutnya dilakukan proses simpan.

Flowchart berikut merupakan implementasi dari program keseluruhan.


Gambar 3.1 Diagram alir sistem kompresi keseluruhan

3.2. Desain Sistem

Pada subbab ini akan dijelaskan mengenai desain aplikasi sistem untuk

implementasi metode output. Desain aplikasi ini meliputi desain data, algoritma

yang digunakan dalam sistem yang digambarkan dengan flowchart dan desain

proses. Desain data berisikan penjelasan data yang diperlukan untuk dapat

menerapkan proses kompresi menggunakan DCT dan DWT. Desain data meliputi

data masukan, data selama proses dan data keluaran. Desain proses kompresi

antara lain menjelaskan tentang proses metode DCT, IDCT dan DWT.
3.3. Desain Data

Data yang digunakan untuk implementasi perangkat lunak ini dibagi

menjadi tiga bagian utama, yaitu data masukan, data yang digunakan selama

proses kompresi dan data keluaran.

3.3.1. Data Masukan

Data masukan yang pertama dari pengguna adalah arsip citra yang dipilih

oleh pengguna. Pada sistem ini citra yang dimasukkan berupa arsip citra bitmap

dengan ukuran yang berbeda-beda. Daftar data masukan (daftar citra yang

digunakan) pada sistem ini adalah sebagai berkut.

Tabel 3.1 Data citra inputan system

No Format Ukuran Keterangan


(Bitmap)
1 Jungle 49 Data Inputan
2 Mountain 193 Data Inputan
3 Valley 769 Data Inputan
4 Upin-ipin 3.841 Data Inputan
5 Three-idiot 550 Data Inputan
6 Assasians 3.601 Data Inputan
7 Teratai 858 Data Inputan
8 Black 2.301 Data Inputan
9 Tulip 653 Data Inputan
3.3.1. Data Selama Proses

Pada tahap proses kompresi adalah untuk memperkecil ukuran citra,

pemilihan metode, DCT dan DWT untuk pembentukan output prosentase citra

terkompresi dan koefisien citra. Proses pengkompresan menggunakan metode

DCT adalah penghitungan matriks transform, matriks transpose, dan juga proses

Inverse IDCT, sedangkan proses pengkompresan menggunakan metode adalah

penghitungan matriks low-low filter, matriks high-low filte, matriks low-high filter

dan matriks high-high filter.

3.3.3. Data Keluaran

Data keluaran yang dihasilkan sistem pada proses kompresi menggunakan

metode DCT dan DWT adalah prosentase citra terkompresi dan koefisien citra.

Metode DCT menghasilkan output koefisien DCT (koefisien Ac dan Dc) koefisien

Dc adalah di pojok kiri atas dan metode DWT menghasilkan output koefisien LL,

LH, HL dan HH. Output yang lain adalah perhitungan nilai prosentase kormpresi

masing-masing metode yang di hitung terkomputerisasi.

3.4. Desain Proses

Desain proses digunakan untuk mengetahui proses apa saja yang

berlangsung pada sistem. Desain proses untuk aplikasi ini menggunakan diagram

alir flowchart. Tools yang akan digunakan untuk pembuatan diagram alir adalah

Microsoft Visio 2003.

Diagram alir menunjukkan hubungan antar proses, data masukan, data

selama proses dan data keluaran yang terlibat dalam sistem. Secara garis besar,
jalannya sistem ini adalah pengguna memasukkan citra bitmap, kemudian sistem

akan melakukan kompresi menggunakan DCT dan DWT.

Gambar 3.2 Diagram alir proses kompresi keseuruhan

3.4.1. Proses Metode DCT keseluruhan

Dilakukan proses buka citra, dan diinputkan citra (akan terbaca pixel citra

tersebut), dilakukan proses kompresi menggunakan metode DCT dan dihasilkan

output koefisien (Dc dan Ac) dan rasio kompresi ,selanjutnya dilakukan proses

simpan.
Gambar 3.3 Diagram alir metode DCT keseluruhan

3.4.2. Proses Perhitungan Metode DCT

Proses perhitungan koefisien DCT yaitu matriks A (matriks transform)

dikalikan dengan X (matriks citra original), langkah pertama yaitu matriks A

(matriks transform) baris ke-nol kolom ke-nol di kalikan dengan matriks ke-nol

kolom ke-nol pada matriks X (matriks citra original), dilakukan penjumlahan

antara A (matriks transform) terhadap matriks X (matriks citra original) dari

matriks kolom ke-nol dan pada baris ke-nol, sampai A baris ke N-1 dan X kolom
ke N-1, di mana N adalah banyaknya pixel citra. Sehingga perkalian matriks A

(matriks transform) terhadap X (matriks citra original) di hasilkan nilai Y’ dari

baris ke N-1 sampai M-1.

Gambar 3.4 Diagram alir koefisien DCT

3.4.3. Proses Perhitungan Matriks Transform

Dilakukan input citra, selanjutnya pixel citra akan terbaca dimasukkan

( 2 j + 1)iπ 1 2
rumus Aij =Ci*cos* , Dimana Ci= (i = 0) , Ci= (i > 0) untuk
2N N N

proses perhitungan matriks A (matriks transform), yaitu pixel citra original

dimasukkan ke dalam rumus Aij, dihitung mulai dari baris ke-nol kolom ke-nol

sampai dengan baris N-1 dan kolom M-1. dan µ dibaca radian nilanya 180 derajat.
Gambar 3.5 Diagram alir nilai matriks transform

3.4.4. Proses Perhitungan Matriks Transpose

Proses perhitungan koefisien DCT selanjutnya yaitu hasil matriks Y’ di

kalikan matriks A’ (matriks transpose), langkah pertama yaitu matriks Y’ baris

ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol pada matriks

A’ (matriks tranpose), dilakukan penjumlahan antara Y’ terhadap matriks A’

(matriks tranpose) dari matriks kolom ke-nol dan pada baris ke-nol, sampai Y’

baris ke N-1 dan A’ (matriks tranpose) kolom ke N-1, di mana N adalah

banyaknya pixel citra. Sehingga perkalian matriks Y’ terhadap A’ (matriks


transpose) di hasilkan nilai Y dari baris ke N-1 sampai M-1, Y adalah koefisien

DCT di dalamnya terdapat dua koefisien yaitu Ac dan Dc, koefisien Dc (di pojok

kiri atas) dan Ac nilai selain yang di pojok kiri atas.

Gambar 3.6 Diagram alir nilai matriks transpose

3.4.5. Proses Perhitungan Nilai Koefisien DCT

Proses perhitungan koefisien IDCT yaitu matriks A’ (matriks transpose)

dikalikan dengan Y (matriks koefisien DCT), langkah pertama yaitu matriks A’

(matriks transpose) baris ke-nol kolom ke-nol di kalikan dengan matriks ke-nol

kolom ke-nol pada matriks Y (matriks koefisien DCT), dilakukan penjumlahan

antara A’ (matriks transpose) terhadap matriks Y (matriks koefisien DCT) dari

matriks kolom ke-nol dan pada baris ke-nol, sampai A’ baris ke N-1 dan Y

kolom ke N-1, di mana N adalah banyaknya pixel citra. Sehingga perkalian


matriks A’ (matriks transpose) terhadap Y (matriks koefisien DCT) di hasilkan

nilai X’ dari baris ke N-1 sampai M-1.

Gambar 3.7 Diagram alir nilai koefisien IDCT

Proses perhitungan koefisien IDCT selanjutnya yaitu hasil matriks X’ di

kalikan matriks A (matriks transform), langkah pertama yaitu matriks X’ baris

ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol pada matriks

matriks A (matriks transform), dilakukan penjumlahan antara X’ terhadap matriks

A (matriks transform) dari matriks kolom ke-nol dan pada baris ke-nol, sampai

X’ baris ke N-1 dan A (matriks transform) kolom ke N-1, di mana N adalah

banyaknya pixel citra. Sehingga perkalian matriks X’ terhadap A (matriks

transform) di hasilkan nilai X dari baris ke N-1 sampai M-1, X adalah koefisien

IDCT.

3.4.6. Proses Perhitungan Nilai Koefisien DWT


Dilakukan proses buka citra, inputkan citra (akan terbaca pixel citra

tersebut), dilakukan proses kompresi menggunakan metode DWT dan dihasilkan

output koefisien Low-low filter (LL), High-low filter (HL), Low-high filter (LH)

dan High-high filter (HH) dan rasio kompresi, selanjutnya dilakukan proses

simpan

Gambar 3.8 Diagram alir nilai koefisien DWT

3.4.7. Proses Perhitungan Matriks High-pas Filter


X adalah matriks sebuah citra low-pas filter dari baris ke-nol sampai

kolom ke-nol (dari kolom N-1 dan baris M-1), di mana N adalah pixel citra.

Dilakukan perkalian dua untuk menghasilkan matriks Y (matriks citra high-pas

filter) dari baris ke-nol sampai kolom ke-nol.

Gambar 3.9 Diagram alir nilai matriks High-pas filter

3.4.8. Proses Perhitungan Nilai Koefisien LL

Proses perhitungan koefisien LL yaitu matriks X (low-pas filter) dikalikan

dengan X (low-pas filter), langkah pertama yaitu matriks X (low-pas filter) baris

ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol pada matriks

X (low-pas filter), dilakukan penjumlahan antara X (low-pas filter) terhadap X

(low-pas filter) dari matriks kolom ke-nol dan pada baris ke-nol, sampai X baris

ke N-1 dan X kolom ke N-1, di mana N adalah banyaknya pixel citra. Sehingga
perkalian matriks X (low-pas filter) terhadap X (low-pas filter) di hasilkan nilai

LL dari baris ke N-1 sampai M-1.

Start

Input matriks X

LL = X*X

Koefisien LL

End

Gambar 3.10 Diagram alir nilai koefisien LL

3.4.9. Proses Perhitungan Nilai Koefisien LH

Proses perhitungan koefisien LH yaitu matriks X (low-pas filter) dikalikan

dengan Y (high-pas filter), langkah pertama yaitu matriks X (low-pas filter) baris

ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol pada matriks

Y (high-pas filter), dilakukan penjumlahan antara X (low-pas filter) terhadap Y

(high-pas filter) dari matriks kolom ke-nol dan pada baris ke-nol, sampai X baris

ke N-1 dan Y kolom ke N-1, di mana N adalah banyaknya pixel citra. Sehingga
perkalian matriks X (low-pas filter) terhadap Y (high-pas filter) di hasilkan nilai

LH dari baris ke N-1 sampai M-1.

Start

Input matriks X dan Y

LH= X*Y

Koefisien LH

End

Gambar 3.11 Diagram alir nilai koefisien LH

3.4.10. Proses Perhitungan Nilai Koefisien HL

Proses perhitungan koefisien HL yaitu matriks Y (high-pas filter)

dikalikan dengan X (low-pas filter), langkah pertama yaitu matriks Y (high-pas

filter) baris ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol

pada matriks X (low-pas filter), dilakukan penjumlahan antara Y (high-pas filter)

terhadap X (low-pas filter) dari matriks kolom ke-nol dan pada baris ke-nol,

sampai Y baris ke N-1 dan X kolom ke N-1, di mana N adalah banyaknya pixel

citra. Sehingga perkalian matriks Y (high-pas filter) terhadap X (low-pas filter) di

hasilkan nilai HL dari baris ke N-1 sampai M-1.


Start

Input matriks X dan Y

HL = Y*X

Koefisien HL

End

Gambar 3.12 Diagram alir nilai koefisien HL

3.4.11. Proses Perhitungan Nilai Koefisien HH

Proses perhitungan koefisien HH yaitu matriks Y (high-pas filter)

dikalikan dengan Y (high-pas filter), langkah pertama yaitu matriks Y (high-pas

filter) baris ke-nol kolom ke-nol di kalikan dengan matriks ke-nol kolom ke-nol

pada matriks Y (high-pas filter), dilakukan penjumlahan antara Y (high-pas filter)

terhadap Y (high-pas filter) dari matriks kolom ke-nol dan pada baris ke-nol,

sampai Y baris ke N-1 dan Y kolom ke N-1, di mana N adalah banyaknya pixel

citra. Sehingga perkalian matriks Y (high-pas filter) terhadap Y (high-pas filter)

di hasilkan nilai HH dari baris ke N-1 sampai M-1.


Start

Input matriks X dan Y

HH = Y*Y

Koefisien HH

End

Gambar 3.13 Diagram alir nilai koefisien HH

3.4 Implementasi

3.4.1. Proses Perhitungan Koefisien DCT

Proses perhitungan koefisien DCT adalah untuk memperoleh nilai

koefisien DCT (koefisien Ac dan dc), cara perhitungannya secara cosines.

Potongan kode programnya seperti di bawah ini:

begin
Ss4.RowCount:= Ss1.RowCount;
Ss4.ColCount:= Ss1.ColCount;

n:=Ss4.Rowcount-1;
For I:= 1 To n do
Begin
Tot:=0;
H:=1;
For J:= 1 To n do
Begin
Tot:=
StrToFLoat(Ss3.cells[1,J])*StrToFLoat(Ss2a.cells[I,1])+
StrToFLoat(Ss3.cells[2,J])*StrToFLoat(Ss2a.cells[I,2])+
StrToFLoat(Ss3.cells[3,J])*StrToFLoat(Ss2a.cells[I,3])+
StrToFLoat(Ss3.cells[4,J])*StrToFLoat(Ss2a.cells[I,4]);

Ss4.Cells[I,J] :=Formatfloat('0.000',Tot);
H:=H+1;
ENd;
ENd;

3.4.2. Proses Perhitungan Koefisien IDCT

Proses perhitungan Koefisien IDCT adalah kebalikan dari koefisien DCT,

nilainya akan kembali ke citra original yang dijadikan masukan. Potongan kode

programnya seperti di bawah ini:

begin
Ss6.RowCount:= Ss1.RowCount;
Ss6.ColCount:= Ss1.ColCount;

n:=Ss6.Rowcount-1;
For I:= 1 To n do
Begin
Tot:=0;
H:=1;
For J:= 1 To n do

Begin
Tot:=
StrToFLoat(Ss5.cells[1,J])*StrToFLoat(Ss2.cells[I,1])+
StrToFLoat(Ss5.cells[2,J])*StrToFLoat(Ss2.cells[I,2])+
StrToFLoat(Ss5.cells[3,J])*StrToFLoat(Ss2.cells[I,3])+
StrToFLoat(Ss5.cells[4,J])*StrToFLoat(Ss2.cells[I,4]);

Ss6.Cells[I,J] :=Formatfloat('0.000',Tot);
H:=H+1;
ENd;
ENd;

3.4.3. Proses Perhitungan Koefisien DWT


Proses perhitungan koefisien DWT adalah untuk menghasilkan 4 nilai

kuadran (Low-low filter, High-low filter, Low-high filter dan High-high filter).

Potongan kode programnya seperti di bawah ini:

Begin
S1.Cells[1,1]:='5';
S1.Cells[2,1]:='11';
S1.Cells[3,1]:='8';
S1.Cells[4,1]:='10';

S1.Cells[1,2]:='9';
S1.Cells[2,2]:='8';
S1.Cells[3,2]:='4';
S1.Cells[4,2]:='12';

S1.Cells[1,3]:='1';
S1.Cells[2,3]:='10';
S1.Cells[3,3]:='11';
S1.Cells[4,3]:='4';

S1.Cells[1,4]:='19';
S1.Cells[2,4]:='6';
S1.Cells[3,4]:='15';
S1.Cells[4,4]:='7';

end;

Var
I, J,n : Integer;
Ci : Double;

begin
n:=S1.Rowcount-2;
S2.RowCount:= S1.RowCount;
S2.ColCount:= S1.ColCount;

For I:= 0 To n do
Begin
Ci:=0;
For J:= 0 To n do
Begin
If i=0 then
Ci:= Sqrt(1/(n+1));
If i>0 then
Ci:= Sqrt(2/(n+1));
S2.Cells[J+1,I+1]
:=INTTOSTR(strtoint(S1.Cells[J+1,I+1])*2);

ENd;
ENd;
BAB IV

HASIL DAN PEMBAHASAN

Dalam bab ini dibahas mengenai hasil uji coba sistem yang telah dirancang

dan dibuat. Uji coba dilakukan untuk mengetahui apakah sistem dapat berjalan

sebagaimana mestinya dengan lingkungan uji coba yang telah ditentukan sesuai

dengan skenario uji coba.

4.1 Lingkungan Uji Coba

4.1.1. Ruang lingkup Perangkat Keras

Perangkat keras yang digunakan dalam pengembangan aplikasi

kompresi file ini adalah sebagai berikut.

a. Prossesor Intel Celeron 1.5 GHz

b. RAM 256 MB

c. Hardisk Dengan Kapasistas 40 GB

d. Monitor 15”

e. Keyboard

f. Mouse PS2

4.1.2. Ruang Lingkup Perangkat Lunak

Perangkat lunak yang digunakan antara lain :

a. Sistem Operasi Windows XP Pack 2

b. Delphi 0.7

4.1.3 Desain Interface


a. Tampilan kompresi keseluruhan

1 3 6

8 7

9 11
2
10

12
4
5
13
14

Gambar 4.1 Tampilan program kompresi

Keterangan gambar:

Nomor 1 : Tombol buka gambar

Nomor 2 : Menampilkan citra yang di buka

Nomor 3 : Tombol untuk menghapus gambar

Nomor 4 : Menampilkan nama citra yang dibuka

Nomor 5 : Menampilkan direktori file citra yang dibuka

Nomor 6 : Menampilkan ukuran gambar yang akan dikompres

Nomor 7 : Menampilkan metode yang akan dipilih

Nomor 8 : Tombol untuk menjalankan proses kompresi

Nomor 9 : Menampilkan progres citra keseluruhan

Nomor 10 : Menampilkan progres citra perbagian


Nomor 11 : Menampilkan rasio kompresi

Nomor 12 : Menampilkan Coefisien DCT

Nomor 13 : Menampilkan Coefisien DWT

Nomor 14 : Menampilkan direktori file citra yang disimpan

b. Tampilan kompresi Menggunakan Merode DCT

Keterangan gambar 4.2 di bawah adalah sebagai berikut:

Nomor 1 : Tombol buka gambar yaitu user memilih gambar yang akan dikompresi

Nomor 2 : Sistem menampilkan citra yang di buka user

Nomor 3 : Sistem menampilkan nama file citra yang di buka user

Nomor 4 : Sistem menampilkan lebar dan tinggi file citra yang di buka user

Nomor 5 : User menilih metode DCT yang digunakan untuk proses kompresi

Nomor 6 : Tombol kompresi yaitu sistem menjalankan proses kompresi

Nomor 7 : Sistem menampilkan jalannya progres keseluruhan

Nomor 8 : Sistem menampilkan jalannya progres perbagian

Nomor 9 : Sistem menampilkan rasio citra yang terkompresi

Nomor 10 :Sistem menampilkan output koefisien DCT


1 4

6 5

7 9
2
8

10
3

Gambar 4.2 Tampilan program kompresi menggunakan metode DCT

c. Tampilan kompresi Menggunakan Merode DWT

Keterangan gambar 4.3 di bawah adalah sebagai berikut:

Nomor 1 : Tombol buka gambar yaitu user memilih gambar yang akan dikompresi

Nomor 2 : Sistem menampilkan citra yang di buka user

Nomor 3 : Sistem menampilkan nama file citra yang di buka user

Nomor 4 : Sistem menampilkan lebar dan tinggi file citra yang di buka user

Nomor 5 : User menilih metode DWT yang digunakan untuk proses kompresi

Nomor 6 : Tombol kompresi yaitu sistem menjalankan proses kompresi

Nomor 7 : Sistem menampilkan jalannya progres keseluruhan

Nomor 8 : Sistem menampilkan jalannya progres perbagian

Nomor 9 : Sistem menampilkan rasio citra yang terkompresi


Nomor 10 : Sistem menampilkan output koefisien DWT yaitu koefisen Low-

low filter (LL), Low-high filter(LH), High-low filter (HL), High-

high filter (HH)

1 4

6 5

7 9
2
8

11 10

Gambar 4.3 Tampilan program kompresi menggunakan metode DWT

4.2. Data Uji Coba

Proses yang akan dilakukan dalam penelitian ini, yaitu proses kompresi

terhadap citra masukan bitmap, menggunakan metode DCT dan DWT dihitung

terkomputerisasi. Dan gambar yang akan dijadikan data uji coba ada 9 citra

dengan ukuran yang berbeda-beda. Di bawah ini adalah data citra uji coba:
(C) Valley.bmp
(a) Jungle.bmp (b) Mountain.bmp

(d) Upin-Ipin.bmp (e) Three-Idiot.bmp (f)) Assasians


Assasians.bmp

(g) Teratai.bmp (j) Black.bmp (i) Tulip.


Tulip.bmp

Gambar 4.4 Data yang digunakan dalam uji coba

4.3. Hasil Uji Coba

Berikut ini adalah seluruh hasil uji coba yang menunjukkan kinerja dari

proses kompresi . Hasil uji cob


coba kompresi akan menunjukkan prosentase citra
terkompresi dan coefisien dari citra tersebut menggunakan metode DCT dan

DWT. Hasil dari uji coba ini akan digunakan untuk menarik kesimpulan pada

skripsi ini.

4.3.1. Contoh Perhitungan Metode Discrete Cosine Transform (DCT)

a. Perhitungan Matriks Transform

 5 11 8 10
 9 8 4 12
X=  
 1 10 11 4 
 
19 6 15 7 

X adalah blok 4 x 4 contoh matrik sebuah image, A adalah N x N matrik


transform

(2 j + 1)iπ 1 2
Aij =Ci cos , Dimana Ci= (i = 0) , Ci= (i > 0)
2N N N
(4.1)

1 (2 * 0 + 1)0π
A00= cos
4 2*4

1 1 1
= cos 0 = *1 =
4 2 2

1 (2 *1 + 1)0π
A02= cos
4 2*4

1 1 1
= cos 0 = * 1 =
4 2 2

1 (2 * 2 + 1)0π
A02= cos
4 2*4
1 1 1
= cos 0 = * 1 =
4 2 2

1 (2 * 3 + 1)0π
A03= cos
4 2*4

1 1 1
= cos 0 = * 1 =
4 2 2

2 (2 * 0 + 1)1π
A10= cos
4 2*4

2 π  1 π 
= cos  = cos 
4  
8 2 8

2 (2 *1 + 1)1π
A11= cos
4 2*4

2  3π  1  3π 
= cos  = cos 
4  8  2  8 

2 (2 * 2 + 1)1π
A12= cos
4 2*4

2  5π  1  5π 
= cos  = cos 
4  8  2  8 

2 (2 * 3 + 1)1π
A13= cos
4 2*4

2  7π  1  7π 
= cos  = cos 
4  8  2  8 

2 (2 * 0 + 1)2π
A20= cos
4 2*4
2  2π  1  2π 
= cos  = cos 
4  8  2  8 

2 (2 *1 + 1)2π
A21= cos
4 2*4

2  6π  1  6π 
= cos  = cos 
4  8  2  8 

2 (2 * 2 + 1)2π
A22= cos
4 2*4

2  10π  1  10π 
= cos   = cos 
4  8  2  8 

2 (2 * 3 + 1)2π
A23= cos
4 2*4

2  14π  1  14π 
= cos  = cos 
4  8  2  8 

2 (2 * 0 + 1)3π
A30= cos
4 2*4

2  3π  1  3π 
= cos  = cos 
4  8  2  8 

2 (2 *1 + 1)3π
A31= cos
4 2*4

2  9π  1  9π 
= cos  = cos 
4  8  2  8 

2 (2 * 2 + 1)3π
A32= cos
4 2*4
2  15π  1  15π 
= cos  = cos 
4  8  2  8 

2 (2 * 3 + 1)3π
A33= cos
4 2*4

2  21π  1  21π 
= cos  = cos 
4  8  2  8 

Fungsi Cosine adalah simetri dan pengulangan setelah 2π radian dan karena itu
A dapat di sederhanakan menjadi

 1 1 1 1 
 2 2 2 2 
 
 1 π  1  3π  1  3π  1  π 
 cos  cos  − cos  − cos  
2 8 2  8  2  8  2  8 
A= 
 1 1 1 1 
 − − 
2 2 2 2
 
 1  3π  1 π  1 π  1  3π  
 cos  − cos  cos  − cos  
 2  8  2 8 2 8 2  8 

1 1 π  1  3π 
dimana a= =0.5, b= cos  =0.653, c= cos  =0.271
2 2 8 2  8 

b. Perhitungan Matriks Tranpose

 0.5 0. 5 0.5 0. 5  0.5 0.653 0.5 0.271 


0.653 0.271 − 0.271 − 0.653 0.5 0.271 - 0.5 - 0.653 
A=   , A’= 
 0.5 − 0. 5 − 0.5 0. 5  0.5 - 0.271 - 0.5 0.653 
   
 0.271 − 0.653 0.653 − 0.271 0.5 - 0.653 0.5 - 0.271 

A’ (matrik transpose) yaitu perubahan kolom menjadi baris dan baris menjadi kolom.

Forward DCT dari X diperoleh Y=A*X*A’, A*X=Y’, Y=Y’*A’ dan X=A’*Y*A


Y’=A*X
(4.2)
 0.5 0. 5 0.5 0.5   5 11 8 10
0.653 0.271 − 0.271 − 0.653  9 8 4 12
Y’=  * 
 0.5 − 0. 5 − 0.5 0.5   1 10 11 4 
   
 0.271 − 0.653 0.653 − 0.271 19 6 15 7 

Y’00=A00X00+A01X10+A02X20+A03X30
= (0.5 * 5) + (0.5 * 9) + (0.5 *1) + (0.5 *19)

= (2.5) + (4.5) + (0.5) + (9.5) = 17.0

Y’01=A00X01+A01X11+A02X21+A03X31
= (0.5 *11) + (0.5 * 8) + (0.5 *10) + (0.5 * 6)

= (5.5) + (4) + (5) + (3) = 17.5


Y’02=A00X02+A01X12+A02X22+A03X32
= (0.5 * 8) + (0.5 * 4) + (0.5 *11) + (0.5 *15)

= (4) + (2) + (5.5) + (7.5) = 19

Y’03=A00X03+A01X13+A02X23+A03X33
= (0.5 *10) + (0.5 *12) + (0.5 * 4) + (0.5 * 7 )

= (5) + (6) + (2.5) + (3.5) = 16.5

Y’10=A10X00+A11X01+A12X02+A13X30
= (0.653 * 5) + (0.271* 9) + (− 0.271*1) + (− 0.653 *19)

= (3.265) + (2.439) + (− 0.271) + (− 12.407) = −6.974

Y’11=A10X01+A01X11+A12X21+A03X31
= (0.653 *11) + (0.271* 8) + (− 0.271*10) + (− 0.653 * 6)

= (7.183) + (2.168) + (− 2.71) + (− 3.918) = 2.723


Y’12=A10X02+A01X12+A12X22+A03X32
= (0.653 * 8) + (0.271* 4) + (− 0.271*11) + (− 0.653 *15)

= (5.224) + (1.084) + (− 2.981) + (− 9.795) = −6.468

Y’13=A10X03+A01X13+A12X23+A03X33
= (0.653 *10) + (0.271*12) + (0.271* 4) + (− 0.653 * 7 )

= (6.530) + (3.252) + (− 1.084) + (− 4.571) = 4.127

Y’20=A20X00+A21X01+A22X02+A23X30
= (0.5 * 5) + (− 0.5 * 9) + (− 0.5 *1) + (0.5 *19)

= (2.5) + (− 4.5) + (− 0.5) + (9.5) = 7


Y’21=A20X01+A21X11+A02X21+A23X31
= (0.5 *11) + (− 0.5 * 8) + (− 0.5 *10) + (0.5 * 6)

= (5.5) + (− 4) + (− 5) + (3) = −0.5

Y’22=A20X02+A21X12+A02X22+A23X32
= (0.5 * 8) + (− 0.5 * 4) + (− 0.5 *11) + (0.5 *15)

= (4) + (− 2) + (− 5.5) + (7.5) = 4

Y’23=A20X03+A21X13+A02X23+A23X3
= (0.5 *10) + (− 0.5 *12) + (− 0.5 * 4) + (0.5 * 7 )

= (5) + (− 6) + (− 2) + (3.5) = 0.5

Y’30=A30X00+A31X01+A32X02+A33X30
= (0.271* 5) + (− 0.653 * 9) + (0.653 *1) + (− 0.271*19)

= (1.355) + (− 5.877) + (0.653) + (− 5.149) = −9.018

Y’31=A30X01+A31X11+A32X21+A33X31
= (0.271*11) + (− 0.653 * 8) + (0.653 *10) + (− 0.271* 6)

= (2.981) + (− 5.224) + (6.530) + (− 1.626) = 2.661


Y’32=A30X02+A31X12+A32X22+A33X32
= (0.271* 8) + (− 0.653 * 4) + (0.653 *11) + (− 0.271*15)

= (2.168) + (− 2.612) + (7.183) + (− 4.065) = 2.674

Y’33=A30X03+A31X13+A32X23+A33X33
= (0.271*10) + (− 0.653 *12) + (0.653 * 4) + (− 0.271* 7 )

= (2.710) + (− 7.836) + (2.612) + (− 1.897) = −4.411

 17 17.5 19 16.5 
 - 6.974 2.723 - 6.468 4.127 
Y’= 
 7 - 0.5 4 0.5 
 
- 9.018 2.661 2.674 - 4.411

c. Perhitungan Koefisien DCT

Y=Y’*A’
(4.3)
 17 17.5 19 16.5  0.5 0.653 0.5 0.271 
 - 6.974 2.723 - 6.468 4.127  0.5 0.271 - 0.5 - 0.653 
Y=  *
 7 - 0.5 4 0.5  0.5 - 0.271 - 0.5 0.653 
   
- 9.018 2.661 2.674 - 4.411 0.5 - 0.653 0.5 - 0.271 

Y00=Y’00A’00+Y’01A’10+Y’02A’20+Y’03A’30
= (17 * 0.5) + (17.5 * 0.5) + (19 * 0.5) + (16.5 * 0.5)

= (8.5) + (8.75) + (9.5) + (8.25) = 35

Y01=Y’00A’01+Y’01A’11+Y’02A’21+Y’03A’31 =
(17 * 0.653) + (17.5 * 0.271) + (19 * −0.271) + (16.5 * −0.653)
= (11.1) + (4.742) + (− 5.149) + (− 10.774) = −0.08

Y02= Y’00 A’02+ Y’01 A’12+ Y’02 A’22+ Y’03 A’32


= (17 * 0.5) + (17.5 * −0.5) + (19 * −0.5) + (16.5 * 0.5)

= (8.5) + (− 8.75) + (− 9.5) + (8.25) = −1.5

Y03= Y’00 A’03+ Y’01 A’13+ Y’02 A’23+ Y’03 A’33


= (17 * 0.271) + (17.5 * −0.653) + (19 * 0.653) + (16.5 * −0.271)

= (4.607) + (− 11.427) + (12.407) + (− 4.471) = 1.115

Y10= Y’10 A’00+ Y’11 A’01+ Y’12 A’02+ Y’13 A’30


= (- 6.974 * 0.5) + (2.723 * 0.5) + (- 6.468 * 0.5) + (4.127 * 0.5)

= (− 3.478) + (1.361) + (− 3.234) + (2.063) = -3.296

Y11= Y’10 A’01+ Y’01 A’11+ Y’12 A’21+ Y’03 A’31


= (- 6.974 * 0.653) + ( 2.723 * 0.271) + (- 6.468 * - 0.271 ) + (4.127 * −0.653)

= (− 4.554) + (0.737) + (1.752) + (− 2.694) = −4.758

Y12= Y’10 A’02+ Y’01 A’12+ Y’12 A’22+ Y’03 A’32


= (- 6.974 * 0.5) + ( 2.723 * −0.5) + (- 6.468 * −0.5) + (4.127 * 0.5)

= (− 3.487) + (− 1.361) + (3.234) + (2.063) = 0.449

Y13= Y’10 A’03+ Y’01 A’13+ Y’12 A’23+ Y’03 A’33


= (- 6.974 * 0.271 ) + ( 2.723 * -0.653) + (- 6.468 * 0.653) + (4.127 * - 0.271 )

= (− 1.889) + (− 1.778) + (− 4.223) + (− 1.118) = −9.010

Y20= Y’20 A’00+ Y’21 A’01+ Y’22 A’02+ Y’23 A’30


= (7.0 * 0.5) + (− 0.5 * 0.5) + (4.0 * 0.5) + (0.5 * 0.5)

= (3.5) + (− 0.25) + (2) + (0.25) = 5.5

Y21= Y’20 A’01+ Y’21 A’11+ Y’02 A’21+ Y’23 A’31


= (7.0 * 0.653 ) + (− 0.5 * 0.271 ) + (4.0 * - 0.271 ) + (0.5 * −0.653)

= (4.571) + (− 0.135) + (− 1.084) + (− 0.326) = 3.025


Y22=Y’20 A’02+ Y’21 A’12+ Y’02 A’22+ Y’23 A’32
= (7.0 * 0.5) + (− 0.5 * −0.5) + (4.0 * −0.5) + (0.5 * 0.5)

= (3.5) + (0.25) + (− 2) + (0.25) = 2

Y23= Y’20 A’03+ Y’21 A’13+ Y’02 A’23+ Y’23 A’33


= (7.0 * 0.271) + (− 0.5 * −0.653) + (4.0 * 0.653) + (0.5 * −0.271)

= (1.897) + (0.326) + (2.61) + (− 0.1355) = 4.7

Y30= Y’30 A’00+ Y’31 A’01+ Y’32 A’02+ Y’33 A’30


= (- 9.018 * 0.5) + (2.661* 0.5) + (2.674 * 0.5) + (- 4.411 * 0.5)

= (− 4.509) + (1.33) + (1.337) + (− 2.205) = −4.047

Y31= Y’30 A’01+ Y’31 A’11+ Y’32 A’21+ Y’33 A’31


= (- 9.018 * 0.653) + (2.661* 0.271) + (2.674 * −0.271) + (- 4.411 * −0.653)

= (− 5.888) + (0.721) + (− 0.724) + (2.88) = −3.011

Y32= Y’30 A’02+ Y’31 A’12+ Y’32 A’22+ Y’33 A’32


= (- 9.018 * 0.5) + (2.661* −0.5) + (2.674 * −0.5) + (- 4.411 * 0.5)

= (− 4.509) + (− 1.33) + (− 1.337) + (− 2.205) = −9.381

Y33= Y’30 A’03+ Y’31 A’13+ Y’32 A’23+ Y’33 A’33


= (- 9.018 * 0.271) + (2.661* -0.653) + (2.674 * 0.653) + (- 4.411 * −0.271)

= (− 2.443) + (− 1.737) + (1.746) + (1.195) = −1.24

 35 17.5 19 16.5 
 - 6.974 2.723 - 6.468 4.127 
Y= 
 7 - 0.5 4 0.5 
 
- 9.018 2.661 2.674 - 4.411
d. Perhitungan Coefisien IDCT

0.5 0.653 0.5 0.271   35 - 0.08 - 1.5 1.115


0.5 0.271 - 0.5 
- 0.653   - 3.296 - 4.758 0.449 - 9.01
A’=  , Y= 
0.5 - 0.271 - 0.5 0.653   5.5 3.025 2 4.7 
   
0.5 - 0.653 0.5 - 0.271  - 4.047 - 3.011 - 9.382 - 1.24

 0.5 0. 5 0.5 0. 5 
0.653 0.271 − 0.271 − 0.653
A=  
 0.5 − 0. 5 − 0.5 0. 5 
 
 0.271 − 0.653 0.653 − 0.271

X’=A’*Y
(4.4)
0.5 0.653 0.5 0.271   35 - 0.08 - 1.5 1.115
0.5 0.271 - 0.5  
- 0.653   - 3.296 - 4.758 0.449 - 9.01
X’=  *
0.5 - 0.271 - 0.5 0.653   5.5 3.025 2 4.7 
   
0.5 - 0.653 0.5 - 0.271  - 4.047 - 3.011 - 9.382 - 1.24

X’00=A’00Y00+A’01Y10+A’02Y20+A’03Y30
= (0.5 * 35) + (0.653 * −3.296) + (0.5 * 5.5) + (0.271 * −4.047)

= (17.5) + (− 2.152) + (2.75) + (− 1.105) = 17

X’01=A’00Y01+A’01Y11+A’02Y21+A’03Y31
= (0.5 * −0.88) + (0.653 * −4.758) + (0.5 * 3.025) + (0.271 * −3.011)

= (− 0.44) + (− 3.106) + (1.512) + (− 0..815) = −2.45

X’02=A’0 Y 002+A’01 Y 12+A’02 Y 22+A’03 Y 32


= (0.5 * −1.5) + (0.653 * 0.449) + (0.5 * 2) + (0.271 * −9.382)

= (− 0.75) + (0.293) + (1) + (2.54) = −1.99


X’03=A’00 Y 03+A’01 Y 13+A’02 Y 23+A’03 Y 33
= (0.5 *1.115) + (0.653 * −9.01) + (0.5 * 4.7 ) + (0.271* −1.24)

= (0.557) + (− 5.883) + (2.35) + (− 0.336) = −3.312

X’10=A’10 Y 00+A’11 Y 01+A’12 Y 02+A’13 Y 30


= (0.5 * 35) + (0.271* −3.296) + (− 0.5 * −0.5) + (− 0.653 * −4.047)

= (17.5) + (− 0..893) + (0.25) + 2.264 = 16.999

X’11=A’10 Y 01+A’01 Y 11+A’12 Y 21+A’03 Y 31


= (0.5 * −0.88) + (0.271* −4.758) + (− 0.5 * 3.025) + (− 0.653 * −3.011)

= (− 0.44) + (− 1.289) + (− 1.512) + (1.96) = −0.875

X’12=A’10 Y 02+A’01 Y 12+A’12 Y 22+A’03 Y 32


= (0.5 * −1.5) + (0.271* 0.449) + (− 0.5 * 2) + (− 0.653 * −9.382)

= (− 0.75) + (0.121) + (1) + (6.126) = 4.498

X’13=A’10 Y 03+A’01 Y 13+A’12 Y 23+A’03 Y 33


= (0.5 *1.115) + (0.271* −9.01) + (− 0.5 * 4.7 ) + (− 0.653 * −1.24)

= (0.557) + (− 2.44) + (− 2.35) + (0.809) = −3.424

X’20=A’20 Y 00+A’21 Y 01+’A22 Y 02+A’23 Y 30


= (0.5 * 35) + (− 0.271* −3.296) + (− 0.5 * 5.5) + (0.653 * −4.047)

= (17.5) + (0.893) + (− 2.75) + (− 2.642) = 13

X’21=A’20 Y 01+A’21 Y 11+A’02 Y 21+A’23 Y 31


=
(0 . 5 * − 0 . 88 ) + (− 0 . 271 * − 4 .758 ) + (− 0 . 5 * 3 . 025 ) + (0 .653 * − 3 . 011 )
= (− 0.44) + (1.289) + (− 1.512) + (− 1.966) = −2.229

X’22=A’20 Y 02+A’21 Y 12+A’02 Y 22+A’23 Y 32


= (0.5 * −1.5) + (− 0.271* 0.449) + (− 0.5 * 2) + (0.653 * −9.382)

= (− 0.75) + (− 0.121) + (− 1) + (− 6.126) = −7.998

X’23=A’20 Y 03+A’21 Y 13+A02 Y 23+A’23 Y 33


= (0.5 *1.115) + (− 0.271* −9.01) + (− 0.5 * 4.7 ) + (0.653 * −1.24)

= (0.557) + (2.44) + (− 2.35) + (− 0.809) = -0.16

X’30=A’30 Y 00+A’31 Y 01+A’32 Y 02+A’33 Y 30


= (0.5 * 35) + (− 0.653 * −3.296) + (0.653 * 0.5) + (− 0.271 * −4.047)

= (17.5) + (5.877) + (0.326) + (1.096) = 23.49

X’31=A’30 Y 01+A’3 Y 11+A’32 Y 21+A’33 Y 31


= (0.5 * −0.88) + (− 0.653 * −4.758) + (0.5 * 3.025) + (− 0.271 * −3.011)

= (− 0.44) + (3.106) + (1.512) + (0.815) = 5.395

X’32=A’30 Y 02+A’31 Y 12+A’32 Y 22+A’33 Y 32


= (0.5 * −1.5) + (− 0.653 * 0.449) + (0.5 * 2) + (− 0.271 * −9.382)

= (− 0.75) + (− −0.293) + (1) + (2.542) = 2.499

X’ 33=A’30 Y 03+A’31 Y 13+A’32 Y 23+A’33 Y 33


= (0.5 * 1.115) + (− 0.653 * −9.01) + (0.5 * 4.7 ) + (− 0.271 * −1.24)

= (0.557) + (5.88) + (2.35) + (0.33) = 9.127

 17 - 2.45 - 3.31
- 1.99
16.99 - 0.87 4.49 - 3.42
X’= 
 13 - 2.22 - 7.99 - 0.16
 
23.49 5.39 2.49 9.127 

X=X’*A
(4.5)
 17 - 2.45 - 3.31  0.5
- 1.99 0. 5 0.5 0. 5 
16.99 - 0.87 4.49 - 3.42 0.653 0.271 − 0.271 − 0.653
 
X=  *
 13 - 2.22 - 7.99 - 0.16  0.5 − 0. 5 − 0.5 0. 5 
   
23.49 5.39 2.49 9.127   0.271 − 0.653 0.653 − 0.271

X00= X’00 A 00+ X’01 A 10+ X’02 A 20+ X’03 A 30


= (17 * 0.5) + (− 2.45 * 0.653) + (− 1.99 * 0.5) + (− 3.31* 0.271)

= (8.5) + (− 1.55) + (− 0.995) + (− 0.897) = 5

X01= X’00 A 01+ X’01 A 11+ X’02 A 21+ X’03 A 31


= (17 * 0.5) + (− 2.45 * 0.271) + (− 1.99 * −0.5) + (− 3.31 * −0.653) =

= (− 8.5) + (− 0.6639) + (0.995) + (2.16) = 10.99

X02= X’0 A 002+ X’01 A 12+ X’02 A 22+ X’03 A 32


= (17 * 0.5) + (− 2.45 * −0.653) + (− 1.99 * 0.5) + (− 3.31 * −0.271)

= (8.5) + (0.6639) + (0.995) + (− 2.16) = 7.99

X03= X’00 A 03+ X’01 A 13+ X’02 A 23+ X’03 A 33


= (17 * 0.5) + (− 2.45 * −0.653) + (− 1.99 * 0.5) + (− 3.31* −0.271)

= (8.5) + (1.559) + (− 0.995) + (0.897) = 9.998

X10= X’10 A 00+ X’11 A 01+ X’12 A 02+ X’13 A 30


= (16.49 * 0.5) + (− 0.87 * 0.653) + (4.49 * 0.5) + (− 3.42 * 0.271)

= (8.245) + (− 0.568) + (2.245) + (−0.926) = 8.99

X11= X’10 A 01+ X’01 A 11+ X’12 A 21+ X’03 A 31


= (16.49 * 0.5) + (− 0.87 * 0.271) + (4.49 * −0.5) + (− 3.42 * −0.653)

= (8.245) + (− 0.235) + (− 2.245) + (2.33) = 7.99

X12= X’10 A 02+ X’01 A 12+ X’12 A 22+ X’03 A 32


= (16.49 * 0.5) + (− 0.87 * −0.271) + (4.49 * −0.5) + (− 3.42 * 0.653)

= (8.245) + (0.235) + (− 2.245) + (−2.33) = 3.9

X13= X’10 A 03+ X’01 A 13+ X’12 A 23+ X’03 A 33


= (16.49 * 0.5) + (− 0.87 * −0.653) + (4.49 * 0.5) + (− 3.42 * −0.271)

= (8.245) + (0.568) + (2.245) + (0.926) = 11.98

X20= X’20 A 00+ X’21 A 01+’ X 22 A 02+ X’23 A 30


= (13 * 0.5) + (− 2.229 * 0.653) + (− 7.998 * 0.5) + (− 0.16 * 0.271)

= (6.5) + (− 1.45) + (− 3.99) + (− 0.043) = 1.017

X21= X’20 A 01+ X’21 A 11+ X’02 A 21+ X’23 A 31


= (13 * 0.5) + (− 2.229 * 0.271) + (− 7.998 * −0.5) + (− 0.16 * −0.653)

= (6.5) + (0.604) + (3.99) + (0.104) = 9.99

X22= X’20 A 02+A’21 A 12+A’02 A 22+A’23 A 32


= (13 * 0.5) + (− 2.229 * −0.271) + (− 7.998 * −0.5) + (− 0.16 * 0.653)

= (6.5) + (0.604) + (3.999) + (− 0.104) = 10.99

X23= X’20 A 03+ X’21 A 13+ X ‘02 A 23+ X’23 A 33


= (13 * 0.5) + (− 2.229 * −0.653) + (− 7.998 * 0.5) + (− 0.16 * −0.271)

= (6.5) + (1.45) + (− 3.999) + (0.043) = 3.99

X30= X’30 A 00+ X’31 A 01+ X’32 A 02+ X’33 A 30


= (23.499 * 0.5) + (5.395 * 0.653) + (2.49 * 0.5) + (9.12 * 0.271)

= (11.749) + (− 3.522) + (1.245) + (2.47 ) = 18.9

X31= X’30 A 01+ X’3 A 11+ X’32 Y 21+ X’33 A 31


= (23.499 * 0.5) + (5.395 * 0.271) + (2.49 * −0.5) + (9.12 * −0.653)

= (11.749) + (1.462) + (− 1.245) + (− 5.955) = 6


X32= X’30 A 02+ X’31 A 12+ X’32 A 22+ X’33 A 32
= (23.499 * 0.5) + (5.395 * −0.271) + (2.49 * −0.5) + (9.12 * 0.653)

= (11.749) + (− 1.462) + (− 1.245) + (5.995) = 15

X33= X’30 A 03+ X’31 A 13+ X’32 A 23+ X’33 A 33


= (23.499 * 0.5) + (5.395 * −0.653) + (2.49 * 0.5) + (9.12 * −0.271)

= (11.749) + (− 3.522) + (1.245) + (− 2.47) = 7

 5 10.99 7.99 9.998


8.99 7.99 3.9 11.98 
X= 
8.99 9.99 10.99 3.99 
 
18.9 6 15 7 

4.3.2. Contoh Perhitungan metode Discrete Wavelet Transform (DWT)

 5 11 8 10
 9 8 4 12
X=  
 1 10 11 4 
 
19 6 15 7 

Y= 2*X

 5 11 8 10 10 22 16 20


 9 8 4 12 18 16 4 24
=2*  =
 1 10 11 4   2 20 22 8 
   
19 6 15 7  36 12 30 14 

X= Citra low-pass filter, Y= Citra high-pass filter


a. Perhitungan Citra Low-low Filter

LL= Low-pass filter x Low-pass filter

= X*X
(4.6)
 5 11 8 10  5 11 8 10
 9 8 4 12  9 8 4 12
LL=  * 
 1 10 11 4   1 10 11 4 
   
19 6 15 7  19 6 15 7 

LL00=X00X00+X01X10+X02X20+X03X30
= (5 * 5) + (11 * 9) + (8 * 1) + (10 * 19)

= (2.5) + (99) + (8) + (190) = 322

LL01=X00X01+X01X11+X02X21+X03X31
= (5 *11) + (11* 8) + (8 *10) + (10 * 6)

= (55) + (8) + (80) + (60) = 283

LL02=X00X02+X01X12+X02X22+X03X32
= (5 * 8) + (11* 4) + (8 *11) + (10 *15)

= (40) + (44) + (88) + (150) = 322


LL03=X00X03+X01X13+X02X23+X03X33
= (5 *10) + (11*12) + (8 * 4) + (10 * 7 )

= (5) + (6) + (2.5) + (3.5) = 284

LL10=X10X00+X11X01+X12X02+X13X30
= (9 * 5) + (8 * 9) + (4 *1) + (12 *19)

= (45) + (72) + (4) + (228) = 349

LL11=X10X01+X01X11+X12X21+X03X31
= (9 *11) + (8 * 8) + (4 *10) + (12 * 6)

= (99) + (64) + (40) + (72) = 275

LL12=X10X02+X01X12+X12X22+X03X32
= (9 * 8) + (8 * 4) + (4 *11) + (12 *15)

= (72) + (32) + (44) + (180) = 328

LL13=X10X03+X01X13+X12X23+X03X33
= (9 *10) + (8 *12) + (4 * 4) + (12 * 7 )

= (90) + (96) + (16) + (84) = 286

LL20=X20X00+X21X01+X22X02+X23X30
= (1 * 5) + (10 * 9) + (11 *1) + (4 *19)

= (5) + (90) + (11) + (76) = 182

LL21=X20X01+X21X11+X02X21+X23X31
= (1 *11) + (10 * 8) + (11 *10) + (4 * 6)

= (11) + (80) + (110) + (24) = 225

LL22=X20X02+X21X12+X02X22+X23X32
= (1 * 8) + (10 * 4) + (11*11) + (4 *15)

= (8) + (40) + (121) + (60) = 229

LL23=X20X03+X21X13+X02X23+X23X33
= (1 *10) + (10 *12) + (11* 4) + (4 * 7 )

= (10) + (120) + (44) + (28) = 202

LL30=X30X00+X31X01+X32X02+X33X30
= (19 * 5) + (6 * 9) + (15 *1) + (7 *19)

= (95) + (54) + (15) + (133) = 297


LL31=X30X01+X31X11+X32X21+X33X31
= (19 *11) + (6 * 8) + (15 *10) + (7 * 6)

= (209) + (54) + (150) + (42) = 449

LL32=X30X02+X31X12+X32X22+X33X32s
= (19 * 8) + (6 * 4) + (15 *11) + (7 *15)

= (152) + (24) + (165) + (105) = 446

LL33=X30X03+X31X13+X32X23+X33X33
= (19 *10) + (6 *12) + (15 * 4) + (7 * 7 )

= (190) + (72) + (60) + (49) = 371

322 283 322 284


394 275 328 286
LL= 
182 225 229 202
 
297 449 446 371

b. Perhitungan Citra High-low Filter

HL = High-pass Filter x Low-pass Filter

= Y*X
(4.7)
10 22 16 20  5 11 8 10
18 16 4 24  9 8 4 12
HL=  *
2 20 22 8   1 10 11 4 
   
36 12 30 14  19 6 15 7 

HL00=Y00X00+Y01X10+Y02X20+Y03X30
= (10 * 5) + (22 * 9) + (16 *1) + (20 *19)

= (50) + (198) + (16) + (380) = 644


HL01=Y00X01+Y01X11+Y02X21+Y03X31
= (10 *11) + (22 * 8) + (16 *10) + (20 * 6)

= (110) + (176) + (160) + (120) = 566

HL02=Y00X02+Y01X12+Y02X22+Y03X32
= (10 * 8) + (22 * 4) + (16 *11) + (20 *15)

= (80) + (88) + (176) + (300) = 644

HL03=Y00X03+Y01X13+Y02X23+Y03X33
= (10 *10) + (22 *12) + (16 * 4) + (20 * 7 )

= (100) + (264) + (64) + (140) = 568

HL10=Y10X00+A11X01+Y12X02+Y13X30
= (18 * 5) + (16 * 9) + (8 *1) + (24 *19)

= (90) + (144) + (8) + (456) = 698

HL11=Y10X01+Y01X11+Y12X21+Y03X31
= (18 *11) + (16 * 8) + (8 *10) + (24 * 6)

= (88) + (128) + (80) + (144) = 550

HL12=Y10X02+Y01X12+Y12X22+Y03X32
= (18 * 8) + (16 * 4) + (8 *11) + (24 *15)

= (144) + (64) + (88) + (360) = 656

HL13=Y10X03+Y01X13+Y12X23+Y03X33
= (18 *10) + (16 *12) + (8 * 4) + (24 * 7 )

= (180) + (192) + (32) + (168) = 572

HL20=Y20X00+Y21X01+Y22X02+Y23X30
= (2 * 5) + (20 * 9) + (22 *1) + (8 *19)

= (10) + (180) + (22) + (152) = 364

HL21=Y20X01+Y21X11+Y02X21+Y23X31
= (2 *11) + (20 * 8) + (22 *10) + (8 * 6)

= (22) + (160) + (220) + (48) = 450

HL22=Y20X02+Y21X12+Y02X22+Y23X32
= (2 * 8) + (20 * 4) + (22 *11) + (8 *15)

= (16) + (80) + (242) + (120) = 458

HL23=Y20X03+Y21X13+Y02X23+Y23X33
= (2 *10) + (20 *12) + (22 * 4) + (8 * 7 )

= (20) + (240) + (88) + (56) = 404

HL30=Y30X00+Y31X01+Y32X02+Y33X30
= (36 * 5) + (12 * 9) + (30 *1) + (14 *19)

= (180) + (108) + (30) + (266) = 584

HL31=Y30X01+Y31X11+Y32X21+Y33X31
= (36 *11) + (12 * 8) + (30 *10) + (14 * 6)

= (396) + (96) + (300) + (84) = 876

HL32=Y30X02+Y31X12+Y32X22+Y33X32s
= (36 * 8) + (12 * 4) + (30 *11) + (14 *15)

= (288) + (48) + (330) + (210) = 876

HL33=Y30X03+Y31X13+Y32X23+Y33X33
= (36 *10) + (12 *12) + (30 * 4) + (14 * 7 )

= (360) + (144) + (120) + (98) = 722


644 566 644 568
698 550 565 572 
HL= 
364 450 458 404
 
584 876 876 722

c. Perhitungan Citra Low-high Filter

LH= Low-pass Filter x high-pass filter

X*Y
(4.8)
 5 11 8 10 10 22 16 20
 9 8 4 12 18 16 4 24
LH=  *
 1 10 11 4   2 20 22 8 
   
19 6 15 7  36 12 30 14 

LH00=X00Y00+X01Y10+X02Y20+X03Y30
= (5 *10) + (11*18) + (8 * 2) + (10 * 36)

= (50) + (198) + (16) + (360) = 624

LH01=X00Y01+X01Y11+X02Y21+X03Y31
= (5 * 22) + (11 *16) + (8 * 20) + (10 *12)

= (110) + (176) + (160) + (120) = 566

LH02=X00Y02+X01Y12+X02Y22
= (5 *16) + (11 * 8) + (8 * 22) + (10 * 30)

= (80) + (88) + (176) + (300) = 644

LH03=X00Y03+X01Y13+X02Y23+X03Y33
= (5 * 20) + (11* 24) + (8 * 8) + (10 *14)

= (100) + (264) + (64) + (140) = 568


LH10=X10Y00+X11Y01+X12Y02+X13Y30
= (9 *10) + (8 *18) + (4 * 2) + (12 * 36)

= (90) + (144) + (8) + (432) = 674

LH11=X10Y01+X01Y11+X12Y21+X03Y31
= (9 * 22) + (8 *16) + (4 * 20) + (12 *12)

= (88) + (128) + (80) + (144) = 550

LH12=X10Y02+X01Y12+X12Y22+X03Y32
= (9 *16) + (8 * 8) + (4 * 22) + (12 * 30)

= (144) + (64) + (88) + (360) = 656

LH13=X10Y03+X01Y13+X12Y23+X03Y33
= (9 * 20) + (8 * 24) + (4 * 8) + (12 *14)

= (180) + (192) + (32) + (168) = 572

LH20=X20Y00+X21Y01+X22Y02+X23Y30
= (1 *10) + (10 *18) + (11 * 2) + (4 * 36)

= (10) + (180) + (22) + (144) = 356

LH21=X20Y01+X21Y11+X02Y21+X23Y31
= (1 * 22) + (10 *16) + (11* 20) + (4 *12)

= (22) + (160) + (220) + (48) = 450

LH22=X20Y02+X21Y12+X02Y22+X23Y32
= (1 *16) + (10 * 8) + (11 * 22) + (4 * 30)

= (16) + (80) + (242) + (120) = 458

LH23=X20Y03+X21Y13+X02Y23+X23Y33
= (1 * 20) + (10 * 24) + (11 * 8) + (4 *14)

= (20) + (240) + (88) + (56) = 404

LH30=X30Y00+X31Y01+X32Y02+X33Y30
= (19 *10) + (6 *18) + (15 * 2) + (7 * 36)

= (190) + (108) + (30) + (252) = 580

LH31=X30Y01+X31Y11+X32Y21+X33Y3
= (19 * 22) + (6 *16) + (15 * 20) + (7 *12)

= (418) + (96) + (300) + (84) = 898

LH32=X30Y02+X31Y12+X32Y22+X33Y32s
= (19 *16) + (6 * 8) + (15 * 22) + (7 * 30)

= (304) + (48) + (330) + (210) = 892

LH33=X30Y03+X31Y13+X32Y23+X33Y33
= (19 * 20) + (6 * 24) + (15 * 8) + (7 *14)

= (380) + (144) + (120) + (98) = 742

624 566 644 568


674 550 565 572 
LH= 
364 450 458 404
 
580 898 892 742

d. Perhitungan Citra High-high Filter

HH= High-pass Filter x High-pass Filter

Y*Y
(4.9)
10 22 16 20 10 22 16 20
18 16 4 24 18 16 4 24
HH=  *
2 20 22 8   2 20 22 8 
   
36 12 30 14  36 12 30 14 

HH00=Y00Y00+Y01Y10+Y02Y20+Y03Y30
= (10 * 10) + (22 * 18) + (16 * 2) + (20 * 36)

= (100) + (396) + (32) + (720) = 1284

HH01=Y00Y01+Y01Y11+Y02Y21+Y03Y31
= (10 * 22) + (22 *16) + (16 * 20) + (20 *12)

= (220) + (352) + (320) + (240) = 1132

HH02=Y00Y02+Y01Y12+Y02Y22+Y03Y32
= (10 *16) + (22 * 8) + (16 * 22) + (20 * 30)

= (160) + (176) + (352) + (600) = 1288

HH03=Y00Y03+Y01Y13+Y02Y23+Y03Y33
= (10 * 20) + (22 * 24) + (16 * 8) + (20 *14)

= (200) + (528) + (128) + (280) = 1136

HH10=Y10Y00+Y11Y01+Y12Y02+Y13Y30
= (18 *10) + (16 *18) + (8 * 2) + (24 * 36)

= (180) + (288) + (16) + (864) = 1348

HH11=Y10Y01+Y01Y11+Y12Y21+Y03Y31
= (18 * 22) + (16 *16) + (8 * 20) + (24 *12)

= (396) + (256) + (160) + (288) = 1100

HH12=Y10Y02+Y01Y12+Y12Y22+Y03Y32
= (18 *16) + (16 * 8) + (8 * 22) + (24 * 30)

= (288) + (128) + (176) + (720) = 1312

HH 13=Y10Y03+Y01Y13+Y12Y23+Y03Y33
= (18 * 20) + (16 * 24) + (8 * 8) + (24 *14)

= (360) + (384) + (64) + (336) = 1144

HH20=Y20Y00+Y21Y01+Y22Y02+Y23Y30
= (2 *10) + (20 *18) + (22 * 2) + (8 * 36)

= (20) + (360) + (44) + (288) = 712

HH 21=Y20Y01+Y21Y11+Y02Y21+Y23Y31
= (2 * 22) + (20 *16) + (22 * 20) + (8 *12)

= (44) + (320) + (440) + (96) = 900

HH22=Y20Y02+Y21Y12+Y02Y22+Y23Y32
= (2 *16) + (20 * 8) + (22 * 22) + (8 * 30)

= (32) + (160) + (484) + (240) = 916

HH23=Y20Y03+Y21Y13+Y02Y23+Y23Y33
= (2 * 20) + (20 * 24) + (22 * 8) + (8 *14)

= (40) + (480) + (176) + (112) = 808

HH30=Y30Y00+Y31Y01+Y32Y02+Y33Y30
= (36 *10) + (12 *18) + (30 * 2) + (14 * 36)

= (360) + (216) + (60) + (504) = 1140

HH31=Y30Y01+Y31Y11+Y32Y21+Y33Y31
= (36 * 22) + (12 *16) + (30 * 20) + (14 *12)

= (792) + (192) + (600) + (168) = 1752


HH32=Y30Y02+Y31Y12+Y32Y22+Y33Y32s
= (36 *16) + (12 * 8) + (30 * 22) + (14 * 30)

= (576) + (96) + (660) + (420) = 1752

HH33=Y30Y03+Y31Y13+Y32Y23+Y33Y33
= (36 * 20) + (12 * 24) + (30 * 8) + (14 *14)

= (720) + (288) + (240) + (196) = 1444

1248 1132 1288 1136


1348 1100 1312 1144
HH=  
 712 900 916 808 
 
1140 1752 1752 1444

4.3.3. Data Hasil Uji Coba

a. Output Citra

(c) Valley.bmp
(a) Jungle.bmp (b) Mountain.bmp
(d) Upin-Ipin.bm (e) Three-Idiot.bmp (f) Assasians.bmp

(g) Teratai.bmp (j) Black.bmp (i) Tulip.bmp

Gambar 4.5 Data hasil uji coba

b. Nilai Koefisien DCT dan DWT

Tabel 4.1 Hasil uji coba koefisien DCT dan DWT

Citra masukan Koefisien


No (Bmp) DCT DWT
Dc HH HL LH LL
1 Jungle 7,883 136,0 321,0 1.774 2164
2 Mountain 8,728 142,0 700,0 2.408 9.484
3 Valley 7,899 510,0 520,0 1.061 2.164
4 Upin-ipin 2,612 286,0 1.526 1.645 1.860
5 Three-idiot 7,349 320,0 2.031 2.693 3.376
6 Assasians 2,783 510,0 520,0 1.061 2.164
7 Teratai 5,504 112,0 244,0 1.050 4.771
8 Black 3,523 6,000 72,00 512,0 1.728
9 Tulip 5,751 4,000 32,00 414,0 819,0
Citra yang dihasilkan setelah kompresi menggunakan metode DCT dan

DWT secara kasat mata tidak mengalami perubahan, akan tetapi secara tak kasat

mata yaitu menghasilkan nilai koefisien yang berbeda, nilai koefisien yang

menggunakan metode DCT menghasilkan koefisien Ac dan Dc (koefisien Dc

yaitu koefisien pada pixel baris ke-nol dan kolom ke-nol atau nilai yang berada di

pojok kiri atas, sedangkan nilai yang lainnya adalah koefisien Ac), sedangkan

metode DWT menghasilkan 4 kuadran nilai koefisien yaitu low-low filter, high-

low filter, low-high filter dan high-high filter. Masing-masing nilai koefisien

ditunjukkan pada tabel 4.1.

c. Rasio Kompresi Metode DCT

Tabel 4.2 Hasil uji coba kompresi menggunakan metode DCT

Ukuran (Kb)
Citra masukan Citra Citra Rasio
No asli terkompresi Kompresi
1 Jungle 49 31 36,73
2 Mountain 193 70 63,73
3 Valley 769 149 80,63
4 Upin-ipin 3.841 471 87,74
5 Three-idiot 550 175 80,92
6 Assasians 3.601 385 94,31
7 Teratai 858 95 88,86
8 Black 2.301 585 74,61
9 Tulip 653 261 60,04

Hasil uji coba terhadap sistem untuk proses kompresi menggunakan

metode DCT pada file yang mempunyai tipe *.bmp ditunjukkan pada tabel 4.2.
rasio rata-rata yang dicapai oleh system untuk file bertipe *.bmp adalah sebesar

74.61%. Tingkat rasio kompresi untuk sebuah file sangat dipengaruhi oleh

komposisi data yang bersangkutan.

d. Rasio Kompresi Metode DWT


Tabel 4.3 Hasil uji coba kompresi menggunakan metode DWT

Ukuran (Kb)
Citra masukan Citra Citra Rasio
No asli terkompresi Kompresi
1 Jungle 49 43 12,25
2 Mountain 193 155 19,69
3 Valley 769 256 66,71
4 Upin-ipin 3.841 991 74,20
5 Three-idiot 550 175 68,18
6 Assasians 3.601 385 89,31
7 Teratai 858 141 75,90
8 Black 2.301 742 67,75
9 Tulip 653 461 29,40
Hasil uji coba terhadap sistem untuk proses kompresi menggunakan

metode (DWT) pada file yang mempunyai tipe *.bmp ditunjukkan pada tabel 4.3.

rasio rata-rata yang dicapai oleh system untuk file bertipe *.bmp adalah sebesar

55.93%. Tingkat rasio kompresi untuk sebuah file sangat dipengaruhi oleh

komposisi data yang bersangkutan.

Rasio kompresi yang dihasilkan metode DWT lebih kecil dari pada rasio

kompresi yang dihasilkan menggunakan metode DCT, karena metode DWT

bersifat losseles dan sebaliknya DCT bersifat losy.


BAB V

KESIMPULAN DAN SARAN

Pada bab terakhir ini dijelaskan mengenai kesimpulan yang didapat dari

pengerjaan skripsi ini, beserta saran-saran yang perlu diperhatikan untuk

pengembangan selanjutnya.

5.1 Kesimpulan

Berdasarkan aplikasi yang telah dibuat beserta ujicoba yang telah

dilakukan, maka dapat ditarik kesimpulan sebagai berikut :

1. Pemilihan ukuran pixel citra merupakan kunci utama untuk menghitung

setiap blok.

2. Metode DCT menghasilkan koefisien Dc dan Ac

3. Fungsi basis nilai kostant pada kiri atas yaitu fungsi basis DC, disebut

koefisien DC.

4. Matriks transform adalah matriks real orthonormal, maka matriks invers

sama dengan matriks transposnya.

5. Nilai matriks invers sama dengan matriks aslinya.

6. Metode DWT dimenghasilkan 4 kuadran koefisien yaitu low-low filter,

high-low filter, low-high filter, dan high-high filter.


7. Rasio prosentase hasil kompresi pada metode DWT lebih kecil dari pada

metode DCT.

8. DCT bersifat lossy dan DWT bersifat loseless (sedikit koefisien yang

dihilangkan).

9. DCT menggunakan pemampatan kuantisasi.

10. DWT pemampatannya misalnya menggunakan Huffman, Run-Length

Encoding (RLE) dan Adaptif Dictionary Based (LZW).

5.2 Saran

Saran yang hendak disampaikan terkait dengan pengerjaan skripsi ini

adalah:

1. Menggunakan gabungan metode DCT dan DWT untuk melakukan proses

kompresi.

2. uji coba diterapkan pada semua format citra.


DAFTAR PUSTAKA

Ahmad, Usman. 2005. Pengolahan Citra Digital dan Teknik Pemrogramannya.


Yogyakarta: Graha Ilmu.

Hadrian, Obbie. 2009. Perbandingan Kinerja Berbgaia Algoritma Kompresi pada


Berbagai Tipe File. Jurusan Teknik Informatika. ITB Bandung.

Handayani, Dewi. 2001. Sistem Berkas. Yogyakarta: J&J Learning

Linawati dan Henry Panggabean. 2004. Perbandingan Algoritma Kompresi pada


Berbagai Tipe File. FMIPA. Universitas Katolik Parahyangan Bandung.

Jando, Emanuel. 2005. Pengantar Arsitektur dan Sistem Operasi Komputer.


Fakultas Ilmu Komputer. Universitas Indonesia.

Munir, Rinaldi. 2004. Pengolahan Citra Digital Dengan Pendekatan Algoritmik. Bandung:
Informatika

Prayogo. 2008. Daftar ekstensi file.


http://prayogo.wordpress.com/2008/08/29/daftr-ekstensi-file/
Tanggal akses: 15 Oktober 2009

R.C. Gonzalez, R.E. Woods, 1992, Digital Image Processing, USA : Addison-Wesley
Publishing Company.
Restyandito. Metode Statistik Kompresi Data.
http://www.ukdw.ac.id/kuliah/info/TP4113/HO03-MetodeStatistik.pdf
Tanggal akses: 15 Oktober 2009

Robi’in, Bambang. 2004. Pemrograman Grafis Multimedia Menggunakan Delphi.


Yogyakarta: Andi.

Shihab, M. Quraish. 2005. Tafsir al-Misbah. Pesan, Kesan dan Keserasian Al-
Qur’an Volume 3. Jakarta: Lentara Hati.

Shihab, M. Quraish. 2004. Wawasan Al-Qur’an Tafsir Maudhu’I atas Pelbagai


Persoalan Umat. Bandung: PT Mizan Pustaka.

Wijaya, Marvin.ch dan Agus, Prijono. 2007. Pengolahan Citra Digital


Menggunakan Matlab. Bandung: Informatika.

Anda mungkin juga menyukai