Hasil kompresi yaitu: 53 1 64 1 121 1 73 1 30 1
65 1 149 1 193 1 173 1 72 1 115 1 208 1 104 1 197 1 107 1
74 1 198 1 222 1 177 1 42 1 39 1 62 1 111 1 54 1 32 1
Dari hasil kompresi algoritma Run-Length Encoding di atas dapat dihitung dengan parameter perbandingan, yaitu:
Ukuran citra sebelum dikompres = 1120 bit. Ukuran citra setelah dikompres = 88 bit
Compression Ratio =
88 1120
X 100 = 7.866 Ratio of Compression =
1120 88
= 12.73 Redundancy Data = 100 - 7.59 = 6.86
4.1.2 Implementasi Algoritma Elias Delta Code
Berikut ini adalah contoh proses kompresi citra dengan algoritma Elias Delta Code pada gambar 4.1
Tabel 4.2 Proses Pengkodean Algoritma Elias Delta Code
PIXEL KETERANGAN
KODE DELTA 53
1 1
64 2 = 10
2
2 bit, Hapus angka 1 paling kiri dan tambahkan 2 = 10 2 bit, sehingga menjadi 10
| 0. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 0100.
0100
121 3 = 11
2
2 bit, Hapus angka 1 paling kiri dan tambahkan 2 = 10 2 bit, sehingga menjadi 10
| 1. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 0101.
0101
73 4 = 100
2
3 bit, Hapus angka 1 paling kiri dan tambahkan 3 = 11 2 bit, sehingga menjadi 11
01100
Universitas Sumatera Utara
| 00. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 01100.
30 5 = 101
2
3 bit, Hapus angka 1 paling kiri dan tambahkan 3 = 11 2 bit, sehingga menjadi 11
| 01. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 01101.
01101
65 6 = 110
2
3 bit, Hapus angka 1 paling kiri dan tambahkan 3 = 11 2 bit, sehingga menjadi 11
| 10. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 01110.
01110
149 7 = 111
2
3 bit, Hapus angka 1 paling kiri dan tambahkan 3 = 11 2 bit, sehingga menjadi 11
| 11. 2 bit dikurang dengan 1 sama dengan 1. Tambahkan 1 nol paling kiri menjadi 01111.
01111
193 8 = 1000
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga menjadi
100 | 000. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100000. 00100000
173 9 = 1001
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga menjadi
100 | 001. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100001. 00100001
72 10 = 1010
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 010. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100010. 00100010
Universitas Sumatera Utara
115 11 = 1011
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 011. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100011. 00100011
208 12 = 1100
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 100. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100100. 00100100
104 13 = 1101
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 101. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100101. 00100101
197 14 = 1110
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 110. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100110. 00100110
107 15 = 1111
3
4 bit, hapus angka 1 paling kiri dan tambahkan 4 = 100 3 bit, sehingga
menjadi 100 | 111. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 00100111. 00100011
74 16 = 10000
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0000. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010000. 001010000
Universitas Sumatera Utara
198 17 = 10001
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0001. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010001. 001010001
222 18 = 10010
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0010. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010010. 001010010
177 19 = 10011
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0011. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010011. 001010011
42 20 = 10100
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0100. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010100. 001010100
39 21 = 10101
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0101. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010101. 001010101
62 22 = 10110
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0110. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010110. 001010110
Universitas Sumatera Utara
111 23 = 10111
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 0111. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001010111. 001010111
54 24 = 11000
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 1000. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001011000. 001011000
32 25 = 11001
3
5 bit, hapus angka 1 paling kiri dan tambahkan 5 = 101 3 bit, sehingga
menjadi 101 | 1001. 3 bit dikurang dengan 1 sama dengan 2. Tambahkan 2 nol paling kiri
menjadi 001011001. 001011001
Proses kompresi untuk algoritma Elias Delta Code dapat dilihat pada tabel 4.3.
Tabel 4.3 Citra Yang Terkompresi Dengan Algoritma Elias Delta Code
PIXEL FREKUENSI
KODE DELTA BIT
FREQ X BIT 53
1 1
1 1
64 1
0100 4
4 121
1 0101
4 4
73 1
01100 5
5 30
1 01101
5 5
65 1
01110 5
5 149
1 01111
5 5
193 1
00100000 8
8 173
1 00100001
8 8
72 1
00100010 8
8 155
1 00100011
8 8
208 1
00100100 8
8
Universitas Sumatera Utara
104 1
00100101 8
8 197
1 00100110
8 8
107 1
00100111 8
8 74
1 001010000
9 9
198 1
001010001 9
9 222
1 001010010
9 9
177 1
001010011 9
9 42
1 001010100
9 9
39 1
001010101 9
9 62
1 001010110
9 9
111 1
001010111 9
9 54
1 001011000
9 9
32 1
001011001 9
9 JUMLAH BIT
183
Sebelum ditulis ke file hasil kompresi, maka dilakukan penambahan padding bit dan flag bit di akhir string bit. Bit tersebut dihasilkan dari panjang string bit itu sendiri
apakah habis dibagi 8 dan berapa sisanya jika dibagi 8. Karena jumlah string bit 192 tidak habis dibagi 8 dan sisanya adalah 1. Maka dibuatlah padding bit-nya adalah
“0” dan
flag bit-
nya adalah
“00000001” menjadi
“10100010101100011010111001111001000000010000100100010001000110010010 000100101001001100010011100101000000101000100101001000101001100101010
0001010101001010110001010111001011000001011001000000001 ”, sehingga total
bit keseluruhannya adalah 50 bit. Dengan uraian hasil kompresi sebagai berikut:
10100010 10110001 10101110 01111001 00000001 00001001 00010001 00011001 162 177 174 121 1 9 17 25
00100001 00101001 00110001 00111001 01000000 10100010 01010010 00101001 33 41 49 57 64 162 82 41
Universitas Sumatera Utara
10010101 00001010 10100101 01100010 10111001 01100000 1011001 00000001
149 10 165 98 185 96 178 1
Hasil kompresi yaitu: 162, 177, 174 ,121, 1, 9, 17, 25, 33, 41, 49, 57, 64, 162, 82, 41, 149, 10, 165, 98, 185,
132, 96, 178, 1
Dari hasil kompresi algoritma Elias Delta Code di atas dapat dihitung dengan parameter perbandingan, yaitu:
Ukuran citra sebelum dikompres = 1120 bit. Ukuran citra setelah dikompres = 54 bit.
Compression Ratio =
54 1120
X 100 = 4.82 Ratio of Compression =
1120 54
= 20.74 Redundancy Data = 100 - 4.82 = 3.82
Dari hasil perhitungan antara kedua algoritma tersebut, dapat diketahui bahwa algoritma Elias Delta Code lebih baik dibandingkan dengan Run-Length Encoding.
Dilihat dari hasil R
c
dan R
d
dari Elias Delta Code lebih kecil dibandingkan dengan Run-Length Encoding.
4.2 Implementasi Sistem