dokumen-dokumen yang mirip
KOMPRESI FILE MENGGUNAKAN ALGORITMA HUFFMAN KANONIK

Penggunaan Pohon Huffman Sebagai Sarana Kompresi Lossless Data

BAB 2 LANDASAN TEORI

KOMPRESI TEKS MENGGUNAKAN ALGORITMA DAN POHON HUFFMAN. Nama : Irfan Hanif NIM :

KOMPRESI TEKS dengan MENGGUNAKAN ALGORITMA HUFFMAN

Kode Huffman dan Penggunaannya dalam Kompresi SMS

PEMAMPATAN TATA TEKS BERBAHASA INDONESIA DENGAN METODE HUFFMAN MENGGUNAKAN PANJANG SIMBOL BERVARIASI

METODE POHON BINER HUFFMAN UNTUK KOMPRESI DATA STRING KARAKTER

PENINGKATAN EFISIENSI KODE HUFFMAN (HUFFMAN CODE) DENGAN MENGGUNAKAN KODE HUFFMAN KANONIK (CANONICAL HUFFMAN CODE)

KOMPRESI CITRA. Pertemuan 12 Mata Pengolahan Citra

APLIKASI GREEDY PADA ALGORITMA HUFFMAN UNTUK KOMPRESI TEKS

Algoritma Huffman dan Kompresi Data

BAB IV HASIL DAN UJI COBA

Teknik Pembangkitan Kode Huffman

Penyandian (Encoding) dan Penguraian Sandi (Decoding) Menggunakan Huffman Coding

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer Fakultas Matematika dan

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III METODE KOMPRESI HUFFMAN DAN DYNAMIC MARKOV COMPRESSION. Kompresi ialah proses pengubahan sekumpulan data menjadi suatu bentuk kode

ANALISA KODE HUFFMAN UNTUK KOMPRESI DATA TEKS ABSTRAK

Penerapan Pengkodean Huffman dalam Pemampatan Data

Kompleksitas Algoritma dari Algoritma Pembentukan pohon Huffman Code Sederhana

PERBANDINGAN ALGORITMA HUFFMAN DENGAN ALGORITMA SHANNON-FANO

PEMAMPATAN DATA DENGAN KODE HUFFMAN (APLIKASI POHON BINER)

[TTG4J3] KODING DAN KOMPRESI. Oleh : Ledya Novamizanti Astri Novianty. Prodi S1 Teknik Telekomunikasi Fakultas Teknik Elektro Universitas Telkom

Pemampatan Citra. Esther Wibowo Erick Kurniawan

N, 1 q N-1. A mn cos 2M , 2N. cos. 0 p M-1, 0 q N-1 Dengan: 1 M, p=0 2 M, 1 p M-1. 1 N, q=0 2. α p =

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Sebuah pewarnaan dari graph G adalah sebuah pemetaan warna-warna ke simpulsimpul dari G sedemikian hingga simpul relasinya mempunyai warna warna yang

BAB 1 PENDAHULUAN 1.1 LATAR BELAKANG

Aplikasi Penggambar Pohon Biner Huffman Untuk Data Teks

Pemampatan Citra Pemampatan Citra versus Pengkodean Citra

BAB 2 LANDASAN TEORI

8/29/2014. Kode MK/ Nama MK. Matematika Diskrit 2 8/29/2014

Penerapan Pohon Biner Huffman Pada Kompresi Citra

Konstruksi Kode dengan Redundansi Minimum Menggunakan Huffman Coding dan Range Coding

[TTG4J3] KODING DAN KOMPRESI. Oleh : Ledya Novamizanti Astri Novianty. Prodi S1 Teknik Telekomunikasi Fakultas Teknik Elektro Universitas Telkom

SATUAN ACARA PERKULIAHAN ( SAP )

PERBANDINGAN ALGORITMA HUFFMAN DAN ALGORITMA SHANNON-FANO PADA PROSES KOMPRESI BERBAGAI TIPE FILE. Irwan Munandar

Definisi. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon

JURNAL IT STMIK HANDAYANI

Penggunaan Kode Huffman dan Kode Aritmatik pada Entropy Coding

Pemampatan dengan Menggunakan Algoritma Huffman Dinamik : Algoritma FGK dan Algoritma Vitter

BAB 2 LANDASAN TEORI

[TTG4J3] KODING DAN KOMPRESI. Oleh : Ledya Novamizanti Astri Novianty. Prodi S1 Teknik Telekomunikasi Fakultas Teknik Elektro Universitas Telkom

Algoritma Greedy (lanjutan)

Kode Huffman. Arya Tri Prabawa Program Studi Teknik Informatika ITB, Bandung 40116,

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

PENERAPAN METODE HUFFMAN DALAM PEMAMPATAN CITRA DIGITAL

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2

IMPLEMENTASI TEKNIK STEGANOGRAFI LEAST SIGNIFICANT BIT (LSB) DAN KOMPRESI UNTUK PENGAMANAN DATA PENGIRIMAN SURAT ELEKTRONIK

BAB 2 LANDASAN TEORI

Pemampatan Data Sebagai Bagian Dari Kriptografi

Pemampatan Data dengan Kode Huffman pada Perangkat Lunak WinZip

BAB II LANDASAN TEORI. Kompresi data atau pemampatan data adalah suatu proses pengubahan

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1

Kompresi Data dengan Algoritma Huffman dan Perbandingannya dengan Algoritma LZW dan DMC

Perbandingan Algoritma Kompresi Terhadap Objek Citra Menggunakan JAVA

Penggunaan Pohon Huffman pada Algoritma Deflate

MULTIMEDIA system. Roni Andarsyah, ST., M.Kom Lecture Series

BAB I PENDAHULUAN I-1

Analisa Perbandingan Rasio Kecepatan Kompresi Algoritma Dynamic Markov Compression Dan Huffman

BAB 2 TINJAUAN PUSTAKA

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

TERAPAN POHON BINER 1

BAB I PENDAHULUAN. Saat ini perkembangan teknologi berkembang sangat cepat. Penyimpanan

Perbandingan Kompresi Data Menggunakan Algoritma Huffman dan Algoritma DMC

Implementasi Metode HUFFMAN Sebagai Teknik Kompresi Citra

Kata kunci: pohon biner, metode Huffman, metode Kanonik Huffman, encoding, decoding.

BAB III METODOLOGI PENELITIAN

APLIKASI KOMPRESI TEKS SMS PADA MOBILE DEVICE BERBASIS ANDROID DENGAN MENGGUNAKAN ALGORITMA HUFFMAN KANONIK

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung)

PEMAMPATAN CITRA (IMA

IMPLEMENTASI METODE HUFFMAN UNTUK KOMPRESI UKURAN FILE CITRA BITMAP 8 BIT MENGGUNAKAN BORLAND DELPHI 6.0

Termilogi Pada Pohon Berakar 10 Pohon Berakar Terurut

DIGITAL IMAGE CODING. Go green Aldi Burhan H Chandra Mula Fitradi Mardiyah

TEKNIK PENGOLAHAN CITRA. Kuliah 13 Kompresi Citra. Indah Susilawati, S.T., M.Eng.

TUGAS AKHIR IMPLEMENTASI ALGORITMA METODE HUFFMAN PADA KOMPRESI CITRA

BAB 2 TINJAUAN PUSTAKA

Optimasi Enkripsi Teks Menggunakan AES dengan Algoritma Kompresi Huffman

BAB 2 TINJAUAN PUSTAKA

Perbandingan Kompresi Data Dengan Algoritma Huffman Statik dan Adaptif

KINERJA DAN PERFORMA ALGORITMA KOMPRESSI LOSSLESS TERHADAP OBJEK CITRA DIGITAL

BAB 3 METODOLOGI PENELITIAN. kepustakaan dan studi laboratorium, di mana penulis mempelajari teori-teori teknik

Pemanfaatan Pohon Biner dalam Pencarian Nama Pengguna pada Situs Jejaring Sosial

Contoh kebutuhan data selama 1 detik pada layar resolusi 640 x 480 : 640 x 480 = 4800 karakter 8 x 8

Teknik Kompresi Citra Menggunakan Metode Huffman

KOMPRESI STRING MENGGUNAKAN ALGORITMA LZW DAN HUFFMAN

PENGENALAN BINARY INDEXED TREE DAN APLIKASINYA

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

RANCANG BANGUN SISTEM KOMPRESI DAN DEKOMPRESI DATA TEKS PADA SISTEM TELEPON SELULER BERBASIS HUFFMAN CODING

BAB 2 LANDASAN TEORI

PENGANTAR KOMPRESI DATA

BAB 2 TINJAUAN PUSTAKA

Transkripsi:

BAB 2. LANDASAN TEORI 2.1. Algoritma Huffman Algortima Huffman adalah algoritma yang dikembangkan oleh David A. Huffman pada jurnal yang ditulisnya sebagai prasyarat kelulusannya di MIT. Konsep dasar dari metode Huffman adalah dengan membangun sebuah skema atau tabel yang berisikan frekuensi kemunculan masing-masing simbol. Dari tabel tersebut kemudian dibangun suatu kode-kode unik untuk mengidentifikasikan masing-masing simbol. Kode Huffman salah satu algoritma dasar untuk kompresi data, yang bertujuan untuk mengurangi jumlah Bit yang diperlukan untuk merepresentasikan informasi/pesan. Algoritma huffman merupakan algoritma yang paling terkenal untuk mengompres teks. Terdapat tiga fase dalam menggunakan algoritma Huffman untuk mengompres sebuah data, pertama adalah fase pembentukan pohon Huffman, kedua fase encoding dan ketiga fase decoding. Prinsip yang digunakan oleh algoritma Huffman adalah karakter yang sering muncul di -encoding dengan rangkaian bit yang pendek dan karakter yang jarang muncul di-encoding dengan rangkaian bit yang lebih panjang. Teknik kompresi algoritma Huffman mampu memberikan penghematan pemakaian memori sampai 30%. Algoritma Huffman mempunyai kompleksitas O(n log n) untuk himpunan dengan n karakter (Agung, 2013). 2.1.1 Pembentukan Pohon Huffman Kode Huffman pada dasarnya merupakan kode prefiks (prefix code). Kode prefiks adalah himpunan yang berisi sekumpulan kode biner, dimana pada kode prefik ini tidak ada kode biner yang menjadi awal bagi kode biner yang lain. Kode prefiks biasanya direpresentasikan sebagai pohon biner yang diberikan nilai atau label. Untuk cabang kiri pada pohon biner diberi label 0, sedangkan pada cabang kanan pada pohon biner diberi label 1. Rangkaian bit yang terbentuk pada setiap lintasan dari akar ke daun merupakan kode prefiks untuk karakter yang berpadanan. Pohon biner ini biasa disebut pohon Huffman (Agung, 2013). Langkah-langkah pembentukan pohon Huffman adalah sebagai berikut : 1. Baca semua karakter di dalam teks untuk menghitung frekuensi kemunculan setiap karakter. Setiap karakter penyusun teks dinyatakan sebagai pohon 2-1

bersimpul tunggal. Setiap simpul di-assign dengan frekuensi kemunculan karakter tersebut. 2. Terapkan strategi algoritma sebagai berikut, gabungkan dua buah pohon yang mempunyai frekuensi terkecil pada sebuah akar. Setelah digabungkan, akar tersebut akan mempunyai frekuensi yang merupakan jumlah dua buah pohonpohon penyusunnya. 3. Ulangi langkah 2 sampai hanya tersisa satu buah pohon Huffman. Agar pemilihan dua pohon yang akan digabungkan berlangsung cepat, maka semua pohon yang ada selalu terurut menaik berdasarkan frekuensi. Sebagai contoh, dalam kode ASCII string 10 huruf MERCUBUANA membutuhkan representasi 10 x 8 bit = 80 bit (10 byte), dengan rincian sebagai berikut: M = 01001101 E = 01000101 R = 01010010 C = 01000011 U = 01010101 B = 01000010 U = 01010101 A = 01000001 N = 01001110 A = 01000001 2-2

2.1.2 Proses Encoding Encoding adalah cara menyusun string biner dari teks yang ada. Proses encoding untuk satu karakter dimulai dengan membuat pohon Huffman terlebih dahulu. Setelah itu, kode untuk satu karakter dibuat dengan menyusun nama string biner yang dibaca dari akar sampai ke daun pohon Huffman. Urutan langkah proses untuk encode algoritma ini sebagai berikut : 1. Urutkan nilai-nilai grayscale berdasarkan frekuensi kemunculannya. 2. Gabung 2 buah pohon yang mempunyai frekuensi kemunculan terkecil dan urutkan kembali. 3. Ulangi langkah 2 sampai tersisa satu pohon biner. 4. Beri label pohon biner tersebut dengan cara sisi kiri pohon diberi label 0 dan sisi kanan pohon diberi label 1. 5. Telusuri pohon biner dari akar ke daun. Barisan label-label sisi dari akar kedaun adalah kode huffman. Bila dikodekan menggunakan kode Huffman, langkahnya adalah sebagai berikut : 1. Buat daftar frekuensi kemunculan tiap-tiap karakter dan urutkan dari yang terkecil hingga terbesar. Gambar 2.1 Frekuensi kemunculan 2-3

Gambar 2.2 Kode Huffman untuk karakter AUBCEMNR Penulusuran dari akar ke daun (dari atas ke bawah) menghasilkan kode Huffman berikut : 2-4

Gambar 2.3 Jumlah kemunculan bit Ukuran string sebelum pemampatan (dalam kode ASCII) adalah: = 10 x 8 bit = 80 bit Ukuran string setelah pemampatan (dalam kode Huffman) adalah: = 2 x 1 bit + 2 x 2 bit + 1 x 3 bit + 1 x 4 bit + 1 x 5 bit + 1 x 6 bit + 1 x 7 bit + 1 x 8 bit = 39 bit Rasio Pemampatan = (100% - 39/80 x 100%) = 51,25% Artinya 51,25% dari string semula telah berhasil dimampatkan. 2.1.3 Proses Decoding Decoding merupakan kebalikan dari sebuah encoding. ecoding berarti menyusun kembali data yang tersandi menjadi data aslinya. Langkahlangkah decoding suatu data yang tersandi menggunakan pohon Huffman adalah sebagai berikut : Langkah-langkah men -decoding suatu string biner dengan menggunakan pohon Huffman adalah sebagai berikut : 1. Baca sebuah bit dari string biner. 2. Mulai dari akar 3. Untuk setiap bit pada langkah 1, lakukan penelusuran pada cabang yang bersesuaian. 2-5

4. Ulangi langkah 1, 2 dan 3 sampai bertemu daun. Kodekan rangkaian bit yang telah dibaca dengan karakter di daun. 5. Ulangi dari langkah 1 sampai semua bit di dalam string habis. Sebagai contoh kita akan men-decoding string biner yang bernilai 1111111 Setelah kita telusuri dari akar, maka kita akan menemukan bahwa string yang mempunyai kode Huffman 1111111 adalah karakter R. 2.1.4 Kompleksitas Algoritma Huffman Algoritma Huffman mempunyai kompleksitas waktu O(n log n), karena dalam melakukan sekali proses itersi pada saat penggabungan dua buah pohon yang mempunyai frekuensi terkecil pada sebuah akar membutuhkan waktu O(log n), dan proses itu dilakukan berkali-kali sampai hanya tersisa satu buah pohon Huffman itu berarti dilakukan sebanyak n kali (Agung, 2013). 2-6