Tabel 3.4 Proses Decoding untuk Gambar 3.4
No ES Simbol
Low High CR 1 0,03429730078125
0,0 0,17 0,17
2 0,201748828125 255 0,17 0,67 0,5 3 0,06349765625 0
0,0 0,17 0,17 4 0,373515625 255 0,17
0,67 0,5 5 0,40703125 255
0,17 0,67
0,5 6 0,4740625 255
0,17 0,67
0,5 7 0,608125 255
0,17 0,67
0,5 8 0,87625 239
0,67 0,92
0,25 9 0,825 239
0,67 0,92
0,25 10 0,62 255
0,17 0,67
0,5 11 0,9 239
0,67 0,92
0,25 12 0,92 213
0,92 1,00
0,08 13
0,0 Selesai
- - - - Maka, diperoleh ES = 0,03429730078125 bersesuaian dengan citra pada gambar 3.4
3.2 Analisis Kinerja Algoritma Shannon-Fano
Model pertama yang muncul untuk kompresi sinyal digital adalah Shannon Fano. Ditemukan Shannon dan Fano pada tahun 1948, kemudian mengembangkan algoritma
ini yang menghasilkan codeword biner untuk setiap simbol unik yang terdapat pada data file.
Teknik coding Shannon-Fano merupakan salah satu algoritma pertama yang tujuannya adalah membuat codeword dengan redudansi minimum. Algoritma
Shannon-Fano tergantung pada probabilitas dari setiap simbol yang hadir pada suatu
data. Berdasarkan probabilitas tersebut kemungkinan dibentuk daftar kode untuk setiap simbol dengan ketentuan sebagai berikut.
1. Setiap simbol berbeda memiliki kode berbeda.
2. Simbol dengan probabilitas kehadiran yang lebih rendah memiliki kode
jumlah bit yang lebih panjang dan simbol dengan probabilitas yang lebih tinggi memiliki jumlah bit yang lebih pendek.
3. Meskipun memiliki panjang kode yang berbeda, simbol tetap dapat
didekode secara unik.
Langkah-langkah kompresi menggunakan algoritma Shannon-Fano. 1.
Buatlah daftar peluang atau frekuensi kehadiran setiap simbol dari data yang akan dikodekan.
2. Urutkanlah daftar tersebut menurut frekuensi kehadiran simbol secara
menurun dari simbol yang frekuensi kemunculan paling banyak sampai simbol dengan frekuensi kemunculan paling sedikit.
3. Bagilah daftar tersebut menjadi dua bagian dengan pembagian didasari
pada jumlah total frekuensi suatu bagian disebut bagian atas sedekat mungkin dengan jumlah total frekuensi dengan bagian yang lain disebut
bagian bawah. 4.
Daftar bagian atas dinyatakan dengan digit 0 dan bagian bawah dinyatakan dengan digit 1. Hal tersebut berarti kode untuk simbol-simbol pada bagian
atas akan dimulai dengan 0 dan kode untuk simbol-simbol pada bagian bawah akan dimulai dengan 1.
5. Lakukanlah proses secara rekursif langkah 3 dan 4 pada bagian atas dan
bawah. Bagilah menjadi kelompok-kelompok dan tambahkan bit-bit pada kode sampai setiap simbol mempunyai kode yang bersesuaian pada proses
tersebut. Langkah-langkah dekompresi menggunakan algoritma Shannon-Fano.
1. Baca bit pertama dari serangkaian kode yang dihasilkan
2. Jika bit tersebut ada dalam SF Code, maka bit tersebut diterjemahkan
menjadi simbol yang sesuai dengan bit tersebut. 3.
Jika bit tersebut tidak ada dalam SF Code, gabungkan bit tersebut dengan bit selanjutya dalam rangkaian kode, cocokkan dengan tabel hasil
pengkodean. 4.
Lakukan langkah 3 sampai ada rangkaian bit yang cocok dengan SF Code, terjemahkan rangkaian bit tersebut menjadi simbol yang sesuai.
5. Baca bit selanjutnya dan ulangi langkah 2, 3, dan 4 sampai rangkaian kode
habis.