Anda di halaman 1dari 7

Tugas Akhir - 2010

KOMPRESI CITRA MENGGUNAKAN MODIFIKASI JPEG IMAGE COMPRESSION


DENGAN ADAPTIVE HUFFMAN CODING

Rudy La Idji Herman¹, Adiwijawa², Tjokorda Agung Budi Wirayuda³

¹Teknik Informatika, Fakultas Teknik Informatika, Universitas Telkom

Abstrak
Di era teknologi saat ini, penggunaan citra digital sudah berkembang dengan pesat. Namun
ukuran citra digital yang semakin besar menimbulkan beberapa masalah yang berkaitan dengan
penyimpanan (storage) dan pengiriman (transmission) citra digital. Dibutuhkan kapasitas
memory dan bandwith yang cukup besar untuk menyimpan dan mengirim citra digital tersebut.
Salah satu solusi dari permasalahan tersebut adalah dengan melakukan kompresi terhadap citra
digital.
Adaptive Huffman merupakan salah satu teknik lossless coding di mana teknik ini menentukan
mapping dari pesan sumber menjadi codeword didasari pada perkiraan probabilitas pesan
sumber. Kode bersifat adaptif, berganti sesuai dengan perkiraan optimalnya pada saat itu. Teknik
coding ini kemudian diterapkan pada bagian entropy coding dari metode kompresi citra JPEG.
Kemudian dapat dibuktikan bahwa Adaptive Huffman coding dapat digunakan sebagai alternatif
entropy coding pada metode kompresi JPEG. Faktor yang mempengaruhi rasio dan waktu
kompresi adalah lebar data kuantisasi. Sedangkan nilai PSNR citra dipengaruhi oleh proses DCT
dan Kuantisasi.
Rasio kompresi citra yang dihasilkan oleh sistem ini bergantung pada lebar data yang dihasilkan
oleh proses kuantisasi. Jika lebar dan jumlah data terlalu besar maka kode tetap yang dihasilkan
oleh Adaptive Huffman akan menjadi panjang dan codeword yang dihasilkan akan semakin
banyak sehingga rasio kompresi yang dihasilkan juga menjadi kecil dan waktu mengcoding akan
menjadi lama. Sebaliknya jika lebar dan jumlah data kecil, maka panjang kode tetap yang
dihasilkan oleh Adaptive Huffman akan menjadi pendek dan jumlah codeword yang dihasilkan
juga menjadi sedikit sehingga rasio kompresi pun menjadi tinggi dan waktu kompresi juga
menjadi lebih pendek. Nilai rasio kompresi dari file yang dihasilkan oleh sistem secara umum
sedikit lebih baik daripada JPEG standar.

Kata Kunci : Compression, JPEG, Adaptive Huffman

Abstract
In this technology era, the using of digital image has developed rapidly. But, in the other hand,
the size of digital image which is more and more bigger cause some problems which related to
storage and transmitting. It needs large capacity of memory and bandwidth to store and transmit
the digital image. One of the solutions is doing the digital image compression.
Adaptive Huffman is one of lossless coding method where this method define mapping from
source message to codeword which based on estimation probability of source message. Code is
adaptive, changed according to optimal estimation at the time. Then this method is implemented
as entropy coding from JPEG image compression.
Then it is proved that Adaptive Huffman coding can be uses as an alternative of entropy coding in
JPEG compression. Factor which affect compression ratio and time is data range result of
Quantization. Whereas the PSNR value is affected by DCT and Quantization.
Image compression ratio which is resulted by this system depend on data range resulted by
Quantization. If data range and amount of data is too big, then the length of fixed code resulted
by Adaptive Huffman coding will be more long and the amount of codeword will be more large so
the compression ratio will be low and the compression time will be more long. Otherwise, if data
range and the amount of data is small, then the length of fixed code will be more short and the
amount of codeword resulted will be more small so the compression ratio resulted will be high
and the compression time will be short. Generally, compression ratio from the file resulted by the
system is a little better compared to JPEG Compression Standard method.

Keywords : Compression, JPEG, Adaptive Huffman

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Powered by TCPDF (www.tcpdf.org)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

1. Pendahuluan

1.1 Latar belakang


Di zaman modern ini, informasi menjadi semakin banyak dan cenderung
berkembang ke arah digitalisasi. Selain itu informasi menjadi sangat penting sehingga
semua orang berlomba-lomba mengumpulkan informasi sebanyak-banyaknya.
Revolusi teknologi komunikasi, perkembangan internet, teknologi jaringan, dan
perkembangan teknologi yang sangat pesat membuat semua orang di seluruh dunia
dapat bertukar data dan informasi yang dimiliki secara mudah.

Namun ada masalah yang harus dihadapi. Ukuran media penyimpanan


berkembang lambat dan mahal dibandingkan pertumbuhan jumlah data. Misalnya
hard disk. Harga hard disk yang berkapasitas besar sangatlah mahal. Contoh lain
memori telepon genggam yang sangat terbatas. Selain itu perluasan jaringan tidak
diikuti serta merta oleh peningkatan kecepatan dan stabilitas pengiriman data. Solusi
yang terpikirkan yaitu memperkecil ukuran data, namun diusahakan agar data bisa
dibaca kembali secara utuh. Inilah yang disebut kompresi.

Citra merupakan jenis file dengan ukuran terbesar kedua setelah video. Karena
itu untuk menghemat kapasitas memori dan mengurangi biaya pada saat kita ingin
mengirimkan file citra tersebut, maka perlu dilakukan kompresi untuk mengurangi
ukuran file tersebut. Kompresi citra merepresentasikan citra ke suatu bentuk kode
yang lebih efisien atau berukuran lebih kecil dari ukuran aslinya, tanpa
menghilangkan makna penting dari isi citra aslinya. Dalam teknik kompresi citra,
redudansi citra menjadi masalah utama. Kompresi citra ditujukan untuk mereduksi
penyimpanan citra yang redundan atau merepresentasikan kembali kumpulan citra
tersebut kedalam bentuk yang lebih efisien dalam segi kapasitas. Adapun teknik
kompresi citra dibedakan menjadi dua teknik dasar yaitu lossy compression dan
lossless compression. Salah satu teknik yang dapat digunakan untuk mengkompres
citra adalah JPEG image compression.

JPEG image compression merupakan suatu algoritma kompresi yang bersifat


lossy. JPEG adalah teknik kompresi grafis high color bit-mapped. Merupakan teknik
dan standar universal untuk kompresi dan dekompresi citra tidak bergerak untuk
digunakan pada kamera digital dan sistem pencitraan menggunakan komputer yang
dikembangkan oleh Joint Photographic Experts Group. Umumnya digunakan untuk
kompresi citra berwarna maupun gray scale.

Huffman Coding merupakan entropy encoding yang digunakan pada kompresi


JPEG. Dalam Huffman Coding, panjang blok dari keluaran sumber dipetakan dalam
blok biner berdasarkan pajang variable. Cara seperti ini disebut sebagai fixed to
variable-length coding. Ide dasar dari cara Huffman ini adalah memetakan mulai
simbol yang paling banyak terdapat pada sebuah urutan sumber sampai dengan yang
jarang muncul menjadi urutan biner.

Sementara itu algoritma Adaptive Huffman merupakan skema define-word tabf


menentukan mapping dari pesan sumber menjadi codeword didasari pada perkiraan

12

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

probabilitas pesan sumber. Kode bersifat adaptive, berganti sesuai dengan perkiraan
optimalnya pada saat itu. Dalam hal ini, Adaptive Huffman code merespon lokalitas.
Dalam pengertian, encoder mempelajari karakteristik dari sumber. Dekoder harus
mempelajari bersamaan dengan encoder dengan selalu memperbaharui Huffman tree
sehingga selalu sinkron dengan encoder. Keuntungan lain dari sistem ini adalah
kebutuhan akan lewatnya data, data akan lewat hanya sekali. Tentu saja, metode one-
pass tidak akan menarik apabila jumlah bit yang ditransmisikan lebih besar dari
metoda twopass. Namun, performa dari metode ini, dalam ruang lingkup jumlah bit
yang ditransmisikan, dapat lebih baik daripada Static Huffman coding.

Pada Tugas Akhir ini akan dilakukan kompresi citra menggunakan JPEG
image compression di mana pada entropy encoding yang menggunakan Static
Huffman akan digantikan dengan Adaptive Huffman. Beberapa alasan penggantian ini
yaitu:
1. Adaptive Huffman memiliki sifat yang sama dengan Static Huffman yaitu
bersifat lossless karena itu Adaptive Huffman juga bisa digunakan sebagai
entropy encoding pada kompresi JPEG.
2. Menurut beberapa referensi algoritma Adaptive Huffman mampu
menghasilkan panjang bit yang lebih pendek daripada Static Huffman. Karena
itu penulis ingin melihat apakah rasio kompresi dari citra yang dihasilkan jika
diimplementasikan pada kompresi JPEG lebih besar daripada kompresi JPEG
Standar yang menggunakan Static Huffman.

Metode JPEG image compression yang dimodifikasi dengan Adaptive Huffman


Coding diharapkan dapat menghasilkan rasio kompresi citra yang tinggi terhadap data
citra bertipe *.bmp, kualitas kompresi yang bagus bila dibandingkan dengan data citra
asli (PSNR yang tinggi), dan kompleksitas waktu yang rendah.

1.2 Perumusan masalah


Dengan latar-belakang tersebut maka diperoleh beberapa permasalahan:
a) Bagaimana mengimplementasikan kompresi citra menggunakan metode JPEG
image compression yang dimodifikasi dengan Adaptive Huffman Coding?
b) Bagaimana performansi metode JPEG yang dimodifikasi oleh Adaptive
Huffman dalam mengompresi citra?
c) Bagaimana performansi metode di atas jika dibandingkan dengan JPEG
Standar?

Pada penelitian Tugas Akhir ini, permasalahan dibatasi oleh beberapa hal, antara lain:
a) Tipe file yang akan dikompres adalah *.bmp.
b) Ukuran file yang akan dikompres maksimal 800x600 pixel.
c) Bahasa pemrogaraman yang akan digunakan dalam pemgimplementasian
tugas akhir ini adalah Java.
d) Aplikasi yang akan digunakan untuk melakukan kompresi JPEG Standar
adalah Adobe Photoshop CS.

13

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

1.3 Tujuan
Tujuan dari penyusunan tugas akhir ini adalah :
a) Menganalisis dan mengimplementasikan Adaptive Huffman Coding pada
JPEG image compression.
b) Menganalis performansi hasil kompresi berdasarkan rasio kompresi, waktu
kompresi, dan kualitas kompresi jika dibandingkan dengan citra asli
berdasarkan PSNR (peak signal to noise ratio).
c) Membandingkan performa sistem yang dibangun menggunakan Adaptive
Huffman dengan JPEG Standar yang menggunakan Static Huffman.

1.4 Metodologi penyelesaian masalah


Dalam menyelesaikan Tugas Akhir ini, ada beberapa tahapan metoda yang
akan dilakukan, yaitu :
a) Studi Literatur
Studi literatur bertujuan untuk meningkatkan pemahaman terhadap metode-
metode yang akan digunakan dalam Tugas Akhir, yaitu JPEG image
compression dan Adaptive Huffman Coding, dengan cara mencari referensi
yang berkaitan dengan metode-metode tersebut dan kemudian mendalami
materinya.

b) Analisis dan Perancangan Sistem


Pada tahap ini akan dilakukan analisis terhadap sistem yang diperlukan dalam
membangun implementasi kompresi data, baik berupa bahasa pemrograman
yang akan digunakan sampai pada algoritma dan struktur data yang
digunakan. Berikut ini merupakan bagan dari sistem kompresi yang akan
dibangun :

Image yang dipecah Forward


ke dalam blok (bisa RGB to Discrete
juga berupa YCbCr Cosine Quantisasi
downsampling) transform Transform

Adaptive
Encoded JPEG RLE
Huffman
Image Encoding
Coding

Gambar 1.1 : Alur Sistem Kompresi Citra JPEG Image Compression

Keterangan:
a. Transformasi DCT bertujuan mengubah menghitung frekuensi-frekuensi
pembentuk dari citra dalam bentuk blok dan memisahkan frekuensi rendah dan
frekuensi tinggi dari hasil tranformasi DCT.

14

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

b. Proses Kuantisasi bertujuan untuk menghilangkan nilai-nilai yang tidak


penting (dalam hal ini nilai-nilai yang berada pada daerah frekuensi tinggi)
pada matrix hasil dari Transformasi DCT.
c. Adaptive Huffman Coding bertujuan untuk mengkompresi matrix hasil
kuantisasi.

Selain mengkompres citra, perlu juga dilakukan dekompresi citra hasil


kompresi untuk membandingkan citra sebelum dan sesudah kompresi. Berikut ini
merupakan bagan dari sistem dekompresi yang akan dibangun :

Decoded Image Reverse


yang dikumpulkan YCbCr to Discrete
kembali dari blok RGB Cosine Dequantisasi
transform
Transform

Encoded JPEG Adaptive RLE


Image Huffman Decoding
Decoding

Gambar 1.2 : Alur Sistem Dekompresi Citra

c) Implementasi
Hasil perancangan pada tahap sebelumnya akan menjadi dasar dalam tahap
implementasi ini. Pada tahap ini akan dilakukan pengkodean berdasarkan hasil
rancangan di atas menggunakan bahasa Java.

d) Pengujian
Di tahap ini, akan dilakukan pengujian terhadap hasil implementasi guna
menemukan dan menghilangkan error/bug yang mungkin masih ada.

e) Analisis Hasil Pengujian


Analisis hasil pengujian dilakukan dengan menghitung kompleksitas algoritma
kompresi, rasio kompresi, dan kualitas kompresi jika dibandingkan dengan
citra asli berdasarkan PSNR.

f) Pembuatan Buku Tugas Akhir.


Pada tahap akhir, akan dilakukan pembuatan dokumentasi yang berupa buku
Tugas Akhir.

15

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Powered by TCPDF (www.tcpdf.org)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

5. Kesimpulan dan Saran

5.1 Kesimpulan
Berdasarkan uji kinerja dan analisis sistem kompresi citra digital dengan
menerapkan metode JPEG yang dimodifikasi dengan Adaptive Huffman yang telah
dilakukan pada bab IV dengan 24 citra uji dapat diambil kesimpulan sebagai berikut:
1. Faktor-faktor yang mempengaruhi kualitas hasil kompresi atau PSNR sistem
adalah : data citra input, proses DCT, dan proses Kuantisasi. PSNR yang
dihasilkan citra input yang hanya terdiri dari satu atau beberapa warna dengan
sebaran sama lebih tinggi daripada PSNR citra input yang terdiri dari warna
kompleks dengan sebaran acak dan merata di setiap pixel.
2. Rasio kompresi yang dihasilkan sistem bergantung pada data citra input dan
parameter Quality kuantisasi. Rasio kompresi yang dihasilkan citra input yang
hanya terdiri dari satu atau beberapa warna dengan sebaran sama lebih tinggi
daripada rasio kompresi citra input yang terdiri dari warna kompleks dengan
sebaran acak dan merata di setiap pixel. Selain itu makin tinggi nilai parameter
Quality, maka semakin rendah persentase rasio kompresi citra yang dihasilkan.
3. Waktu kompresi dan dekompresi bergantung pada data citra input dan
parameter Quality kuantisasi. Semakin kompleks warna suatu citra dan
semakin merata sebarannya di setiap pixel, semakin lama waktu yang
dibutuhkan sistem untuk mengkompres citra tersebut. Selain itu semakin tinggi
nilai parameter Quality, maka semakin lama waktu yang diperlukan untuk
mengkompresi citra.
4. Untuk citra berwarna kompleks dengan sebaran merata, rasio kompresi citra
yang dihasilkan sistem masih kalah jika dibandingkan dengan kompresi JPEG
standar.

5.2 Saran.
Saran yang dapat diberikan setelah penulis melakukan penelitian Tugas Akhir
ini adalah:
1. Untuk pengembangan ke depan, diharapkan dikembangkan sistem kompresi
JPEG menggunakan gabungan beberapa metode lossless lainnya sehingga
didapatkan rasio waktu kompresi yang lebih baik.
2. Dilakukan pengembangan sistem transfer data multimedia dengan
menggunakan metode Adaptive Huffman karena menurut beberapa referensi
metode Adaptive Huffman mampu melakukan transfer data dengan optimal.

47

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Powered by TCPDF (www.tcpdf.org)
Generated by Foxit PDF Creator © Foxit Software
http://www.foxitsoftware.com For evaluation only.
Tugas Akhir - 2010

Daftar pustaka

[1] Cuturicu, Cristi. 2009. JPEG. http://opennet.ru/docs/formats/jpeg.txt. 2


Februari 2009.
[2] Chrismanto, Antonius Rachmat. Kompresi dan Teks.
http://lecturer.ukdw.ac.id/anton/download/multimedia6.pdf. 2 Februari
2009.
[3] Fauzi, Rahmad. 2003. Analisis Beberapa Teknik Coding. http://library.
usu.ac.id/download/ft/elekro-rahmad%20fauzi.pdf. 2 Februari 2009.
[4] Hendrawan. 2009. Huffman Coding. http://telecom.ee.itb.ac.id/~hend
/ET5014/HuffmanCoding_07.ppt. 2 Februari 2009.
[5] Kingsbury, Nick. JPEG Entropy Coding. http://cnx.org/content/m11096/
latest. 16 April 2009.
[6] Mahastama, Aditya Wikan. 2009. Pengantar Kompresi Data:
http://www.mahastama.com/kompresi/090203_kompresi02_rev01.pdf. 2
Februari 2009.
[7] Pennebaker, William B., Mitchell, Joan L. . 2009. Jpeg: Still Image Data
Standar. http://books.google.co.id/books?id=AepB_PZWMkC&printsec
=frontcover&dq=JPEG&ei=7YKOS_GKFo7YkQSqy63dDQ&cd=1#v=o
nepage&q=&f=false. 2 Februari 2009.
[8] Restyandito. 2009. Pengantar Kompresi Data.
http://www2.ukdw.ac.id/kuliah/info/TP4113/HO02-PengantarKompresiD
ata.pdf pada tanggal: 2 Februari 2009.
[9] Sayood, Khalid. 2009. Introduction to Data Compression.
http://books.google.co.id/books?id=ChSOjgiY84YC&printsec=frontcove
r&dq=data+compression&ei=H62OS9rPFYrelQTkr-W4DQ&cd=2#v=on
epage&q=&f=false. 2 Februari 2009.
[10] Tamayo, Gerald R. 2009. Dynamic Huffman Coding – Algorithm FGK.
http://sites.google.com/site/compgt/fgk. 2 Februari 2009.
[11] Tamayo, Gerald R. 2009. Dynamic Huffman Coding 2 – Algorithm
Vitter. http://sites.google.com/site/compgt/vitter . 2 Februari 2009.

48

Fakultas Teknik Informatika Program Studi S1 Teknik Informatika


Powered by TCPDF (www.tcpdf.org)

Anda mungkin juga menyukai