Algoritma Shannon-Fano Studi Perbandingan Kinerja Algoritma Kompresi Shannon-Fano Dan Huffman Pada Citra Digital .

Maka dari pohon Huffman di atas diperoleh kode Huffman sebagai berikut: Tabel 2.3 Codebook Huffman simbol frekuensi Kode 120 3 000 50 6 001 180 6 010 25 7 011 255 14 1 Dari tabel di atas dapat dilihat bahwa simbol yang sering muncul dikodekan dengan kode yang lebih pendek, demikian juga sebaliknya. Setelah itu dilakukan substitusi dari simbol-simbol potongan citra digital pada Gambar 2.5 dengan kode Huffman yang terdapat pada Tabel 2.3, sehingga diperoleh data biner sebagai berikut: 101000110110110110010010100100100010010001 1011000000001110111101001111110111101001111 Gambar 2.9 Data biner hasil substitusi kode Huffman Data biner hasil substitusi kode Huffman memiliki ukuran 85 bit setara 10,625 byte, sedangkan tanpa kompresi dibutuhkan 36 bytes, diperoleh dari total frekuensi kemunculan simbol dikalikan dengan 1 byte. Sehingga Algoritma Huffman dapat mereduksi penggunaan memori sebanyak 25,375 bytes. Dengan rasio kompresinya yaitu 100 – 10,62536 x 100 = 70,486 .

2.9 Algoritma Shannon-Fano

Algoritma Shannon-Fano merupakan algoritma pertama yang diperkenalkan untuk kompresi sinyal digital pada papernya yang berjudul “A Mathematical Theory of Communication” pada tahun 1948. Shannon dan Fano terus menerus mengembangkan algoritma ini yang menghasilkan kode biner binary codeword untuk setiap karakter yang terdapat pada data dengan redudansi minimum. Universitas Sumatera Utara Algoritma Shannon-Fano didasarkan pada variable-length code yang berarti beberapa karakter pada data yang akan dikodekan direpresentasikan dengan kode codeword yang lebih pendek dari karakter yang ada pada data. Jika frekuensi kemunculan karakter semakin tinggi, maka kode semakin pendek, dengan demikian kode yang dihasilkan tidak sama panjang, sehingga kode tersebut bersifat unik. Algoritma Shannon-Fano merupakan salah satu algoritma kompresi yang sangat baik dalam pengkompresian teks. Pada prinsipnya algoritma ini menggunakan pendekatan top down dalam penyusunan binary tree . Metode ini sangat efisien untuk mengkompresi file text yang berukuran besar. Algoritma Kompresi Shannon-Fano pada citra adalah sebagai berikut: 1. Hitung frekuensi kemunculan masing-masing simbol pada citra. 2. Urutkan frekuensi kemunculan simbol dari simbol yang terbesar ke yang terkecil, masing-masing simbol dapat direpresentasikan sebagai sebuah node. 3. Bagi menjadi dua buah node dengan jumlah frekuensi kemunculan simbol yang sama atau hampir sama. Beri label pada setiap sisi pohon biner, sisi kiri dilabeli dengan 0 dan sisi kanan dilabeli dengan 1. 4. Lakukan langkah 3 sampai node tidak dapat dibagi lagi. 5. Telusuri pohon biner dari akar ke daun. Barisan label-label pada sisi pohon dari akar ke daun menyatakan kode Shannon-Fano untuk simbol yang bersesuaian. Langkah-langkah pembentukan pohon Shannon-Fano: 1. Hitung frekuensi kemunculan masing-masing simbol pada citra. Tabel 2.4 Tabel distribusi frekuensi Shannon-Fano Simbol Frekuensi Total bit 255 14 14 x 1 byte = 14 25 7 7 x 1 byte = 7 180 6 6 x 1 byte = 6 50 6 6 x 1 byte = 6 120 3 3x 1 byte = 3 Total 36 byte Universitas Sumatera Utara 2. Urutkan frekuensi kemunculan simbol dari simbol yang terbesar ke yang terkecil. 3. Jumlahkan seluruh frekuensi kemunculan simbol dan masukkan dalam sebuah node. 4. Bagi menjadi dua buah node dengan jumlah frekuensi kemunculan simbol yang sama besar atau hampir sama. Beri label pada setiap sisi pohon biner, sisi kiri dilabeli dengan 0 dan sisi kanan dilabeli dengan 1. 5. Lakukan langkah 3 sampai node tidak dapat dibagi lagi. 21 15 36 1 14 7 6 6 3 36 Universitas Sumatera Utara 6. Telusuri pohon biner dari akar ke daun. Barisan label-label pada sisi pohon dari akar ke daun menyatakan kode Shannon-Fano untuk simbol yang bersesuaian Dari pohon Shannon-Fano di atas diperoleh kode Shannon-Fano sebagai berikut: Tabel 2.5 Codebook Shannon-Fano simbol frekuensi kode 255 14 00 25 7 01 180 6 10 50 6 110 120 3 111 Dari tabel di atas dapat dilihat bahwa simbol yang sering muncul dikodekan dengan kode yang lebih pendek, demikian juga sebaliknya. Setelah itu dilakukan substitusi dari simbol-simbol potongan citra digital pada Gambar 2.5 dengan kode Shannon-Fano yang terdapat pada Tabel 2.5, sehingga diperoleh data biner sebagai berikut: 0010110000101011101101010110110111000001 111111110000001000010010000000010010000 Gambar 2.10 Data biner hasil substitusi kode Shannon-Fano 14 21 7 15 6 36 9 6 3 1 1 1 1 Universitas Sumatera Utara Data biner hasil substitusi kode Shannon-Fano memiliki ukuran 79 bit setara 9,875 byte, sedangkan tanpa kompresi dibutuhkan 36 bytes, sehingga Algoritma Shannon-Fano dapat mereduksi penggunaan memori sebanyak 26,125 byte. Sehingga rasio kompresinya adalah 100 – 9,87536 x 100 = 72,569 .

2.10 Kompleksitas Algoritma