BAB 1
PENDAHULUAN
1.1 Latar Belakang
Peningkatan teknologi komputer memberikan banyak manfaat bagi manusia di berbagai aspek kehidupan, salah satu manfaatnya yaitu untuk menyimpan data, baik data berupa teks ataupun data digital lain seperti gambar, suara dan video. Kecepatan pengiriman informasi secara real-time akan menjadi bagian utama dalam proses pertukaran informasi di masa yang akan datang. Hingga saat ini pengiriman informasi secara real-time masih mengalami kendala, diantaranya adalah besarnya jumlah data yang harus dikirim melampaui kecepatan transmisi yang dimiliki oleh perangkat keras, sehingga masih terdapat delay time yang relatif besar (Madenda et al, 2004: 1).
Pada umumnya, representasi citra digital membutuhkan kapasitas ruang penyimpanan yang besar. Citra RGB merupakan citra true color yang mendefinisikan warna merah, hijau dan biru untuk setiap pikselnya, walaupun belum ada standar yang ditetapkan secara universal untuk citra RGB, tetapi TV dan industri video memiliki versi standar warna RGB yang mengikuti rekomendasi ITU-R BT.709 untuk High Definition TV (HDTV), monitor juga dibangun dengan mengikuti rekomendasi tersebut. Dalam model RGB, warna pada setiap piksel ditentukan dari kombinasi warna primer merah, hijau dan biru. Format file citra menyimpan citra RGB menggunakan 1 byte (8 bit) untuk menampilkan warna primer, yang memiliki rentang [0, 255] atau [1, 256], jadi warna RGB memiliki 3 byte (24 bit) untuk tiap-tiap piksel, dengan demikian terdapat
2563 = 16.777.216 warna berbeda yang
bisa
direpresentasikan pada citra RGB. Semakin besar ukuran citra RGB maka akan semakin besar kapasitas yang dibutuhkan untuk menyimpan citra tersebut, dan semakin meningkat biaya dan waktu yang dibutuhkan untuk proses pengiriman citra pada saluran komunikasi (Mengyi Pu, 2006: 217).
Universitas Sumatera Utara
Salah satu solusi untuk mengatasi masalah di atas adalah dengan melakukan kompresi citra. Kompresi citra terdiri dari dua proses utama yaitu kompresi dan dekompresi citra. Jika file citra dikompresi, maka file tersebut harus dapat dibaca kembali setelah file tersebut dikompresi. Ide kompresi citra adalah apabila frekuensi kemunculan warna pada tiap piksel diketahui, terdapat suatu cara untuk mengodekan warna tersebut sehingga dibutuhkan ruang yang lebih kecil untuk menyimpan citra. Metode kompresi yang diharapkan dari kompresi citra adalah proses kompresi dan dekompresinya cepat, meminimalkan pemakaian memori, kualitas citra bagus dan proses transfer yang mudah (Hestiningsih, 2008: 33).
Metode yang pertama muncul untuk proses kompresi diperkenalkan oleh Shannon-Fano, yang dikenal dengan Shannon-Fano coding. Shannon dan Fano (1948) mengembangkan algoritma yang didasarkan pada variable-length code yang berarti beberapa karakter pada data yang akan dikodekan direpresentasikan dengan kode yang lebih pendek dari karakter yang ada pada data. Jika frekuensi kemunculan karakter semakin tinggi, maka kode semakin pendek, sebaliknya jika frekuensi kemunculan karakter rendah, maka kode semakin panjang, dengan demikian kode yang dihasilkan tidak sama panjang, sehingga kode tersebut bersifat unik. Pada prinsipnya algoritma ini menggunakan pendekatan top-down dalam penyusunan binary tree. Pada tahun 1952 David Huffman memperkenalkan algoritma kompresi yang dinamakan Huffman coding. Metode ini memakai hampir semua karakteristik dari Shannon-Fano coding. Pada prinsipnya Huffman coding menggunakan pendekatan buttom-up dalam penyusunan binary tree. Thomas H. Cormen et al (dalam Hasibuan, 2008: 5).
Saat ini terdapat banyak algoritma kompresi citra, antara lain Dynamic Markov Compression (DMC), Run Length Encoding (RLE), Lempel Ziv Welch (LZW), Arithmetic coding dan lain-lain. Menurut Linawati et al (2004: 1) “Algoritma Huffman menghasilkan rasio kompresi yang rendah dibandingkan dengan algoritma DMC dan LZW dan kecepatan kompresinya berada diantara DMC dan LZW”. Dalam Tugas Akhir ini digunakan algoritma Shannon-Fano dan Huffman, karena kedua algoritma ini memiliki beberapa kemiripan karakteristik dan termasuk dalam metode kompresi yang sejenis yaitu metode lossless.
Universitas Sumatera Utara
1.2 Rumusan Masalah
Permasalahan yang akan diteliti dan diuraikan dalam Tugas Akhir ini adalah: 1. Menentukan rasio kompresi yang dihasilkan oleh algoritma Shannon-Fano dan Huffman. 2. Apakah algoritma Shannon-Fano dan Huffman dapat merekonstruksikan kembali (dekompresi) data citra sesuai dengan data aslinya. 3. Algoritma mana yang lebih baik digunakan untuk kompresi citra ditinjau dari rasio kompresi yang dihasilkan, ukuran file hasil kompresi, kecepatan proses kompresi dan dekompresi, dan kualitas citra hasil dekompresi (PSNR).
1.3 Batasan Masalah
Ruang lingkup penelitian ini dibatasi pada: 1. File citra yang dikompresi merupakan file citra warna RGB format BMP ukuran 256 x 256 piksel. 2. Studi perbandingan ini akan ditinjau dari rasio kompresi yang dihasilkan kedua algoritma. 3. Studi perbandingan ini akan ditinjau dari ukuran file citra dan kebutuhan memori citra terkompresi yang dihasilkan. 4. Studi perbandingan ini akan ditinjau dari kecepatan proses kompresi dan dekompresi dari masing-masing algoritma yang digunakan. 5. Studi perbandingan ini akan mengukur kualitas citra hasil dekompresi dengan menggunakan metode PSNR (Peak Signal to Noise Ratio). 6. Menggunakan aplikasi kompresi Shannon-Fano dan Huffman yang telah ada untuk proses analisis dan perbandingan kinerja algoritma kompresi.
1.4 Tujuan Penelitian
Tujuan dari penulisan Tugas Akhir ini adalah melakukan analisis statistik untuk mengukur kinerja masing-masing algoritma ditinjau dari kecepatan proses kompresi dan dekompresinya, memori yang dibutuhkan (rasio/ ukuran file hasil kompresi terhadap file asli) dan kualitas citra hasil kompresi yang dihasilkan, sehingga dapat
Universitas Sumatera Utara
diambil kesimpulan algoritma mana yang tepat digunakan dalam proses kompresi citra digital.
1.5 Manfaat Penelitian
Manfaat penelitian ini adalah memutuskan algoritma yang tepat dalam proses kompresi citra digital sehingga dihasilkan citra mampat yang dapat meminimalkan pemakaian memori (storage device) serta dapat meminimalkan waktu pengiriman data pada saluran komunikasi.
1.6 Metode Penelitian
Tahapan yang diambil dalam penelitian ini yaitu: 1. Studi literatur Penulisan ini dimulai dengan studi kepustakaan yaitu mengumpulkan bahan-bahan referensi baik dari buku, artikel, paper, jurnal, makalah, maupun situs internet mengenai proses kompresi data digital terutama kompresi citra, algoritma Shannon-Fano dan Huffman serta beberapa referensi lainnya untuk menunjang pencapaian tujuan Tugas Akhir. 2. Analisis algoritma Pada tahap ini akan dilakukan proses analisis algoritma kompresi Huffman dan Shannon-Fano meliputi karakteristik masing-masing algoritma. 3. Implementasi sistem Sistem diimplementasikan dalam bentuk perangkat lunak yang siap pakai menggunakan bahasa pemrograman Borland Delphi 7.0. 4. Pengujian dan analisis sistem Pada tahap ini akan dilakukan analisis terhadap fokus permasalahan penelitian, yaitu apakah proses kompresi berhasil atau tidak serta perbaikan bila terdapat kesalahan. 5. Dokumentasi sistem Pembuatan laporan Tugas Akhir lengkap dengan analisis yang didapatkan.
Universitas Sumatera Utara
1.7 Tinjauan Pustaka
Rinaldi Munir dalam buku yang berjudul Pengolahan Citra Digital dengan Pendekatan Algoritmik, memberikan penjelasan mengenai klasifikasi dan metode kompresi. Kompresi bertujuan untuk meminimalkan kebutuhan memori. Prinsip umum yang digunakan pada proses kompresi, misalnya kompresi citra adalah mengurangi duplikasi data di dalam citra digital sehingga memori yang dibutuhkan untuk merepresentasikan citra menjadi lebih sedikit daripada representasi citra semula.
Ida Mengyi Pu dalam bukunya yang berjudul Fundamental Data Compression, menjelaskan tentang kompresi data. Buku ini mengedepankan materi yang dapat dipelajari dengan mudah, dengan topik-topik yang sangat berguna dalam teknik kompresi teks, suara, gambar, video, dan standar internasional. Buku ini juga dilengkapi dengan berbagai contoh dan ilustrasi yang dapat meningkatkan proses belajar.
Sarifuddin Madenda, Hayet L. dan I. Bayu dalam makalahnya yang berjudul
Kompresi Citra Berwarna Menggunakan Metode Pohon Biner Huffman menjelaskan tentang algoritma kompresi citra dengan menggunakan metode pohon biner Huffman. Metode ini biasanya digunakan untuk mengkompres file teks dikembangkan menjadi algoritma untuk mengkompres citra berwarna. Hasil yang diperoleh menunjukan bahwa algoritma ini memiliki nilai rasio kompresi di atas satu jika jumlah warna yang terdapat dalam citra tidak lebih dari 100 warna. Sedang kualitas citra hasil dekompresinya memiliki kualitas yang sama dengan citra aslinya.
David Salomon dalam bukunya yang berjudul Variable-Length Codes for Data Compression menjelaskan tentang penggunaan variable-length code dalam kompresi data digital. Buku ini memberikan pemahaman kepada pembaca yang memiliki pengetahuan dasar tentang kompresi data, dan penggunaan kode spesifik yang diimplementasikan dengan berbagai macam algoritma, salah satunya yaitu Algoritma Huffman.
Universitas Sumatera Utara
1.8 Skema Penelitian
Skema/ alur proses kerja dari studi perbandingan kinerja kedua algoritma kompresi secara umum adalah sebagai berikut:
File citra
Algoritma Kompresi
Shannon-Fano
Pengurutan frekuensi kemunculan simbol secara menurun (top-down) Pembentukan pohon biner dengan pembagian frekuensi kemunculan simbol secara rekursif
Pembentukan Kode Shannon-Fano
Huffman
Pengurutan frekuensi kemunculan simbol secara menaik (buttom-up)
Pembentukan pohon biner dengan penggabungan frekuensi kemunculan simbol terkecil Pembentukan kode Huffman
Implementasi kedalam program komputer Kompresi dan Dekompresi citra dengan kedua algoritma File hasil kompresi dan dekompresi beserta informasinya Analisis dan bandingkan informasi hasil kompresi dan dekompresi
Gambar 1.1 Skema Penelitian
Universitas Sumatera Utara
1.8.1 Diagram Algoritma Shannon-Fano Alur kerja pada algoritma Shannon-Fano secara umum dapat dilihat pada Gambar 1.2 di bawah ini.
Start
Input file citra
Hitung frekuensi kemunculan simbol pada tiap-tiap piksel citra
Urutkan warna secara menurun (descending order)
Pembentukan pohon Shannon-Fano dengan membagi dua dengan frekuensi mendekati/sama secara rekursif
Pembentukan kode Shannon-Fano, sisi pohon biner kiri dilabeli 0 dan sisi kanan =1
Kode Shannon-Fano output
Stop
Gambar 1.2 Diagram Algoritma Shannon-Fano
Universitas Sumatera Utara
1.8.2 Diagram Algoritma Huffman Alur kerja pada algoritma Huffman secara umum dapat dilihat pada Gambar 1.3 di bawah ini.
Start
Input file citra
Hitung frekuensi kemunculan simbol pada tiap-tiap piksel citra
Urutkan simbol secara menaik (ascending order)
Pembentukan pohon Huffman dengan menggabung dua frekuensi terkecil, hingga tersisa 1 pohon biner
Pembentukan kode Huffman, sisi pohon biner kiri dilabeli 0 dan sisi kanan =1
Kode Huffman output
Stop
Gambar 1.3 Diagram Algoritma Huffman
Universitas Sumatera Utara
1.9 Sistematika Penulisan
Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai berikut: BAB 1:
PENDAHULUAN Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Studi Perbandingan Kinerja Algoritma Kompresi ShannonFano dan Huffman pada Citra Digital”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, tinjauan pustaka, sistematika penulisan dan skema penelitian.
BAB 2:
LANDASAN TEORI Bab ini akan membahas teori-teori yang berkaitan dengan kompresi data dalam hal ini citra digital serta beberapa prinsip yang melandasi pembuatan Tugas Akhir ini.
BAB 3:
ANALISIS KOMPLEKSITAS ALGORITMA Bab ini berisi tentang uraian kompleksitas algoritma Huffman dan Shannon-Fano. Nilai kompleksitas dinyatakan dengan notasi Big-O notation.
BAB 4:
IMPLEMENTASI SISTEM Bab ini berisikan penjelasan tentang aplikasi yang digunakan untuk menguji performansi algoritma Shannon-Fano dan Huffman dalam proses kompresi file citra.
BAB 5:
PENGUJIAN DAN ANALISIS SISTEM Bab ini berisikan pengujian terhadap algoritma Shannon-Fano dan Huffman dengan menggunakan aplikasi kompresi yang sudah ada beserta analisis yang didapatkan dari hasil pengujian yang telah dilakukan.
Universitas Sumatera Utara
BAB 6:
KESIMPULAN DAN SARAN Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian dari bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya.
Universitas Sumatera Utara