KOMPRESI DATA - · PDF filebinary tree Riki Ruli S - 30. Shannon-Fano Algorithm ......

Post on 05-Feb-2018

233 views 0 download

Transcript of KOMPRESI DATA - · PDF filebinary tree Riki Ruli S - 30. Shannon-Fano Algorithm ......

KOMPRESI DATA

MultimediaJurusan Teknik Informatika

ruliriki@gmail.com

MultimediaJurusan Teknik Informatika

ruliriki@gmail.com

1Riki Ruli S - http://blogriki.wordpress.com

• Teknik Kompresi adalah teknik memadatkan data,sehingga data yang tadinya mempunyai kapasitasdata yang besar menjadi kapasitas data yang lebihkecil

• Kompresi data adalah proses mengkodekan informasimenggunakan bit atau information-bearing unit lainyang lebih rendah daripada representasi data yangtidak terkodekan dengan suatu sistem enkodingtertentu.

• Teknik Kompresi adalah teknik memadatkan data,sehingga data yang tadinya mempunyai kapasitasdata yang besar menjadi kapasitas data yang lebihkecil

• Kompresi data adalah proses mengkodekan informasimenggunakan bit atau information-bearing unit lainyang lebih rendah daripada representasi data yangtidak terkodekan dengan suatu sistem enkodingtertentu.

2Riki Ruli S - http://blogriki.wordpress.com

• Contoh sederhana : Menyingkat kata-kata yangsudah memiliki pengertian umum. Misal : kata “danlain-lain” disingkat “dll”, “yang” disingkat “yg”, “danseterusnya” disingkat “dst”

• Kompresi data menjadi sangat penting karenamemperkecil kebutuhan penyimpanan data,mempercepat pengiriman data, memperkecilkebutuhan bandwidth.

• Teknik kompresi bisa dilakukan terhadap data teks/biner,gambar (JPEG, PNG, TIFF), audio (MP3, AAC, RMA, WMA),dan video (MPEG, H261, H263)

• Contoh sederhana : Menyingkat kata-kata yangsudah memiliki pengertian umum. Misal : kata “danlain-lain” disingkat “dll”, “yang” disingkat “yg”, “danseterusnya” disingkat “dst”

• Kompresi data menjadi sangat penting karenamemperkecil kebutuhan penyimpanan data,mempercepat pengiriman data, memperkecilkebutuhan bandwidth.

• Teknik kompresi bisa dilakukan terhadap data teks/biner,gambar (JPEG, PNG, TIFF), audio (MP3, AAC, RMA, WMA),dan video (MPEG, H261, H263)

3Riki Ruli S - http://blogriki.wordpress.com

• Contoh sederhana : Menyingkat kata-kata yangsudah memiliki pengertian umum. Misal : kata “danlain-lain” disingkat “dll”, “yang” disingkat “yg”, “danseterusnya” disingkat “dst”

• Kompresi data menjadi sangat penting karenamemperkecil kebutuhan penyimpanan data,mempercepat pengiriman data, memperkecilkebutuhan bandwidth.

• Teknik kompresi bisa dilakukan terhadap data teks/biner,gambar (JPEG, PNG, TIFF), audio (MP3, AAC, RMA, WMA),dan video (MPEG, H261, H263)

• Contoh sederhana : Menyingkat kata-kata yangsudah memiliki pengertian umum. Misal : kata “danlain-lain” disingkat “dll”, “yang” disingkat “yg”, “danseterusnya” disingkat “dst”

• Kompresi data menjadi sangat penting karenamemperkecil kebutuhan penyimpanan data,mempercepat pengiriman data, memperkecilkebutuhan bandwidth.

• Teknik kompresi bisa dilakukan terhadap data teks/biner,gambar (JPEG, PNG, TIFF), audio (MP3, AAC, RMA, WMA),dan video (MPEG, H261, H263)

4Riki Ruli S - http://blogriki.wordpress.com

• Dialoque Mode: yaitu proses penerimaan datadimana pengirim dan penerima seakan berdialog(real time), seperti pada contoh video conference.

• Dimana kompresi data harus berada dalam bataspenglihatan dan pendengaran manusia. Waktutunda (delay) tidak boleh lebih dari 150 ms, dimana50 ms untuk proses kompresi dan dekompresi, 100ms mentransmisikan data dalam jaringan

• Dialoque Mode: yaitu proses penerimaan datadimana pengirim dan penerima seakan berdialog(real time), seperti pada contoh video conference.

• Dimana kompresi data harus berada dalam bataspenglihatan dan pendengaran manusia. Waktutunda (delay) tidak boleh lebih dari 150 ms, dimana50 ms untuk proses kompresi dan dekompresi, 100ms mentransmisikan data dalam jaringan

5Riki Ruli S - http://blogriki.wordpress.com

• Retrieval Mode: yaitu proses penerimaan data tidakdilakukan secara real time

• Dapat dilakukan fast forward dan fast rewind diclient

• Dapat dilakukan random access terhadap data dandapat bersifat interaktif

• Retrieval Mode: yaitu proses penerimaan data tidakdilakukan secara real time

• Dapat dilakukan fast forward dan fast rewind diclient

• Dapat dilakukan random access terhadap data dandapat bersifat interaktif

6Riki Ruli S - http://blogriki.wordpress.com

• Lossy:– Beberapa struktur dokumennya akan mengalami error

atau hilang dalam batasan toleransi manusia– Jangkauan kompresinya sangat tinggi– Contoh: video, gambar dan audio.

• Lossless:– Ekplositasinya hanya pada data statistik (redudancy)– Jangkauan kompresinya rendah– Struktur dokumennya tidak mengalami error atau hilang

apabila dilakukan dekompresi– contoh:program, data, medical imaging, dsb.

• Lossy:– Beberapa struktur dokumennya akan mengalami error

atau hilang dalam batasan toleransi manusia– Jangkauan kompresinya sangat tinggi– Contoh: video, gambar dan audio.

• Lossless:– Ekplositasinya hanya pada data statistik (redudancy)– Jangkauan kompresinya rendah– Struktur dokumennya tidak mengalami error atau hilang

apabila dilakukan dekompresi– contoh:program, data, medical imaging, dsb.

7Riki Ruli S - http://blogriki.wordpress.com

Lossy Compression berdasarkan output• Teknik kompresi dimana data hasil dekompresi tidak

sama dengan data sebelum kompresi namun sudah“cukup” untuk digunakan. Contoh: Mp3, streamingmedia, JPEG, MPEG, dan WMA.

• Kelebihan: ukuran file lebih kecil dibanding losslessnamun masih tetap memenuhi syarat untukdigunakan.

Lossy Compression berdasarkan output• Teknik kompresi dimana data hasil dekompresi tidak

sama dengan data sebelum kompresi namun sudah“cukup” untuk digunakan. Contoh: Mp3, streamingmedia, JPEG, MPEG, dan WMA.

• Kelebihan: ukuran file lebih kecil dibanding losslessnamun masih tetap memenuhi syarat untukdigunakan.

8Riki Ruli S - http://blogriki.wordpress.com

Lossy Compression berdasarkan output (2)• Teknik ini membuang bagian-bagian data yang

sebenarnya tidak begitu berguna, tidak begitudirasakan, tidak begitu dilihat oleh manusia sehinggamanusia masih beranggapan bahwa data tersebutmasih bisa digunakan walaupun sudah dikompresi.

• Misal terdapat image asli berukuran 12,249 bytes,kemudian dilakukan kompresi dengan JPEG kualitas30 dan berukuran 1,869 bytes berarti image tersebut85% lebih kecil dan ratio kompresi 15%

Lossy Compression berdasarkan output (2)• Teknik ini membuang bagian-bagian data yang

sebenarnya tidak begitu berguna, tidak begitudirasakan, tidak begitu dilihat oleh manusia sehinggamanusia masih beranggapan bahwa data tersebutmasih bisa digunakan walaupun sudah dikompresi.

• Misal terdapat image asli berukuran 12,249 bytes,kemudian dilakukan kompresi dengan JPEG kualitas30 dan berukuran 1,869 bytes berarti image tersebut85% lebih kecil dan ratio kompresi 15%

9Riki Ruli S - http://blogriki.wordpress.com

Loseless• Teknik kompresi dimana data hasil kompresi dapat

didekompres lagi dan hasilnya tepat sama seperti datasebelum proses kompresi. Contoh aplikasi: ZIP, RAR, GZIP,7-Zip

• Teknik ini digunakan jika dibutuhkan data setelahdikompresi harus dapat diekstrak/dekompres lagi tepatsama. Contoh pada data teks, data program/biner,beberapa image seperti GIF dan PNG

• Kadangkala ada data-data yang setelah dikompresidengan teknik ini ukurannya menjadi lebih besar atausama

Loseless• Teknik kompresi dimana data hasil kompresi dapat

didekompres lagi dan hasilnya tepat sama seperti datasebelum proses kompresi. Contoh aplikasi: ZIP, RAR, GZIP,7-Zip

• Teknik ini digunakan jika dibutuhkan data setelahdikompresi harus dapat diekstrak/dekompres lagi tepatsama. Contoh pada data teks, data program/biner,beberapa image seperti GIF dan PNG

• Kadangkala ada data-data yang setelah dikompresidengan teknik ini ukurannya menjadi lebih besar atausama

10Riki Ruli S - http://blogriki.wordpress.com

Memiliki Ciri dan sifat :• Kualitas data hasil enkoding: ukuran lebih kecil, data

tidak rusak untuk kompresi lossy.• Kecepatan, ratio, dan efisiensi proses kompresi dan

dekompresi• Ketepatan proses dekompresi data: data hasil

dekompresi tetap sama dengan data sebelumdikompres (kompresi lossless)

Memiliki Ciri dan sifat :• Kualitas data hasil enkoding: ukuran lebih kecil, data

tidak rusak untuk kompresi lossy.• Kecepatan, ratio, dan efisiensi proses kompresi dan

dekompresi• Ketepatan proses dekompresi data: data hasil

dekompresi tetap sama dengan data sebelumdikompres (kompresi lossless)

11Riki Ruli S - http://blogriki.wordpress.com

Ada 3 jenis pengkodean dalam kompresiantara lain :– Entropy coding: dimana dalam pengkodean

dan teknik kompresinya menggunakanteknik kompresi lossless

– Source coding: menggunakan teknikkompresi lossy

– Hybrid coding : gabungan dari teknikentropy dan source coding

Ada 3 jenis pengkodean dalam kompresiantara lain :– Entropy coding: dimana dalam pengkodean

dan teknik kompresinya menggunakanteknik kompresi lossless

– Source coding: menggunakan teknikkompresi lossy

– Hybrid coding : gabungan dari teknikentropy dan source coding

12Riki Ruli S - http://blogriki.wordpress.com

Entropy Encoding• Bersifat lossless• Tekniknya tidak berdasarkan media dengan

spesifikasi dan karakteristik tertentu namunberdasarkan urutan data.

• Statistical encoding, tidak memperhatikansemantik data.

• Mis: Run-length coding, Huffman coding,Arithmetic coding

Entropy Encoding• Bersifat lossless• Tekniknya tidak berdasarkan media dengan

spesifikasi dan karakteristik tertentu namunberdasarkan urutan data.

• Statistical encoding, tidak memperhatikansemantik data.

• Mis: Run-length coding, Huffman coding,Arithmetic coding

13Riki Ruli S - http://blogriki.wordpress.com

Source Coding• Bersifat lossy• Berkaitan dengan data semantik (arti

data) dan media.• Mis: Prediction (DPCM, DM),

Transformation (FFT, DCT), LayeredCoding (Bit position, subsampling, sub-band coding), Vector quantization

Source Coding• Bersifat lossy• Berkaitan dengan data semantik (arti

data) dan media.• Mis: Prediction (DPCM, DM),

Transformation (FFT, DCT), LayeredCoding (Bit position, subsampling, sub-band coding), Vector quantization

14Riki Ruli S - http://blogriki.wordpress.com

Hybrid Coding• Gabungan antara lossy + lossless• Mis: JPEG, MPEG, H.261, DVI

Hybrid Coding• Gabungan antara lossy + lossless• Mis: JPEG, MPEG, H.261, DVI

15Riki Ruli S - http://blogriki.wordpress.com

• Run-length Encoding• Repetition Suppression• Pattern Substitution• Huffman Coding

• Run-length Encoding• Repetition Suppression• Pattern Substitution• Huffman Coding

16Riki Ruli S - http://blogriki.wordpress.com

Run-Length-Encoding (RLE)• Kompresi data teks dilakukan jika ada

beberapa huruf yang sama yangditampilkan berturut-turut:

• Mis: Data: ABCCCCCCCCDEFGGGG = 17karakter

• RLE tipe 1 (min. 4 huruf sama) :ABC!8DEFG!4 = 11 karakter

Run-Length-Encoding (RLE)• Kompresi data teks dilakukan jika ada

beberapa huruf yang sama yangditampilkan berturut-turut:

• Mis: Data: ABCCCCCCCCDEFGGGG = 17karakter

• RLE tipe 1 (min. 4 huruf sama) :ABC!8DEFG!4 = 11 karakter

17Riki Ruli S - http://blogriki.wordpress.com

Run-Length-Encoding (RLE)• Beberapa elemen angka yang sama

diwakilkan dengan satu buah elemen angkayang diberikan jumlahnya

• contoh:111333322222211111 (1,3),(3,4),(2,6),(1,5)atau dengan contoh yang lain10000001 dikompresi menjadi 10!61

Run-Length-Encoding (RLE)• Beberapa elemen angka yang sama

diwakilkan dengan satu buah elemen angkayang diberikan jumlahnya

• contoh:111333322222211111 (1,3),(3,4),(2,6),(1,5)atau dengan contoh yang lain10000001 dikompresi menjadi 10!61

18Riki Ruli S - http://blogriki.wordpress.com

Run-Length-Encoding (RLE)• RLE ada yang menggunakan suatu karakter yang

tidak digunakan dalam teks tersebut sepertimisalnya “!‟ untuk menandai.

• Kelemahan? Jika ada karakter angka, manatanda mulai dan akhir?

Misal data : ABCCCCCCCCDEFGGGG = 17 karakterRLE tipe 2: -2AB8C-3DEF4G = 12 karakterMisal data : AB12CCCCDEEEF = 13 karakterRLE tipe 2: -4AB124CD3EF = 12 karakter

Run-Length-Encoding (RLE)• RLE ada yang menggunakan suatu karakter yang

tidak digunakan dalam teks tersebut sepertimisalnya “!‟ untuk menandai.

• Kelemahan? Jika ada karakter angka, manatanda mulai dan akhir?

Misal data : ABCCCCCCCCDEFGGGG = 17 karakterRLE tipe 2: -2AB8C-3DEF4G = 12 karakterMisal data : AB12CCCCDEEEF = 13 karakterRLE tipe 2: -4AB124CD3EF = 12 karakter

19Riki Ruli S - http://blogriki.wordpress.com

Run-Length-Encoding (RLE)• RLE ada yang menggunakan suatu karakter yang

tidak digunakan dalam teks tersebut sepertimisalnya “!‟ untuk menandai.

• Kelemahan? Jika ada karakter angka, manatanda mulai dan akhir?

Misal data : ABCCCCCCCCDEFGGGG = 17 karakterRLE tipe 2: -2AB8C-3DEF4G = 12 karakterMisal data : AB12CCCCDEEEF = 13 karakterRLE tipe 2: -4AB124CD3EF = 12 karakter

Run-Length-Encoding (RLE)• RLE ada yang menggunakan suatu karakter yang

tidak digunakan dalam teks tersebut sepertimisalnya “!‟ untuk menandai.

• Kelemahan? Jika ada karakter angka, manatanda mulai dan akhir?

Misal data : ABCCCCCCCCDEFGGGG = 17 karakterRLE tipe 2: -2AB8C-3DEF4G = 12 karakterMisal data : AB12CCCCDEEEF = 13 karakterRLE tipe 2: -4AB124CD3EF = 12 karakter

20Riki Ruli S - http://blogriki.wordpress.com

Run-Length-Encoding (RLE)• Best case: untuk RLE tipe 2 adalah ketika

terdapat 127 karakter yang sama sehinggaakan dikompres menjadi 2 byte saja.

• Worst case: untuk RLE tipe 2 adalah ketikaterdapat 127 karakter yang berbeda semua,maka akan terdapat 1 byte tambahansebagai tanda jumlah karakter yang tidaksama tersebut.

• Menggunakan teknik loseless

Run-Length-Encoding (RLE)• Best case: untuk RLE tipe 2 adalah ketika

terdapat 127 karakter yang sama sehinggaakan dikompres menjadi 2 byte saja.

• Worst case: untuk RLE tipe 2 adalah ketikaterdapat 127 karakter yang berbeda semua,maka akan terdapat 1 byte tambahansebagai tanda jumlah karakter yang tidaksama tersebut.

• Menggunakan teknik loseless

21Riki Ruli S - http://blogriki.wordpress.com

Repetition Suppression• Mengubah angka atau huruf yang

berulang-ulang diwakilkan dengan satuhurup dengan jumlahnya

• Example:984000000000000000000000000 = 984A24

Repetition Suppression• Mengubah angka atau huruf yang

berulang-ulang diwakilkan dengan satuhurup dengan jumlahnya

• Example:984000000000000000000000000 = 984A24

22Riki Ruli S - http://blogriki.wordpress.com

Pattern Substitution• Melakukan subtitusi kata-kata menjadi huruf

maupun simbol• contoh:

This book is an exemplary example of a book….This 1、is2、an3、of4、a5bookb*….

1b*23exemplary example45b

Pattern Substitution• Melakukan subtitusi kata-kata menjadi huruf

maupun simbol• contoh:

This book is an exemplary example of a book….This 1、is2、an3、of4、a5bookb*….

1b*23exemplary example45b

23Riki Ruli S - http://blogriki.wordpress.com

Pattern Substitution• This book is an exemplary example of a book on multimedia

and networking. Nowhere else will you find this kind ofcoverage and completeness. This is truly a one-stop-shop forall that you want to know about multimedia and networking.

(192 Karakter)• a:1, about:2, all:3, an:4, and:5, for:6, is:7, of:8, on:9, that:+,

this:&, to:=, will:#– & b o o k 7 4 e x e m p l a r y sp e x a m p l e 81 b

o o k 9 m* 5 n* . N o w h e r e sp e l s e # y o…– 129 : 193 = 0.6684 33.16% compression

Pattern Substitution• This book is an exemplary example of a book on multimedia

and networking. Nowhere else will you find this kind ofcoverage and completeness. This is truly a one-stop-shop forall that you want to know about multimedia and networking.

(192 Karakter)• a:1, about:2, all:3, an:4, and:5, for:6, is:7, of:8, on:9, that:+,

this:&, to:=, will:#– & b o o k 7 4 e x e m p l a r y sp e x a m p l e 81 b

o o k 9 m* 5 n* . N o w h e r e sp e l s e # y o…– 129 : 193 = 0.6684 33.16% compression

24Riki Ruli S - http://blogriki.wordpress.com

Static Huffman Coding (SFC)• Frekuensi karakter dari string yang akan dikompres

dianalisa terlebih dahulu. Selanjutnya dibuat pohonhuffman yang merupakan pohon biner dengan rootawal yang diberi nilai 0 (sebelah kiri) atau 1 (sebelahkanan), sedangkan selanjutnya untuk dahan kiriselalu diberi nilai 1(kiri) - 0(kanan) dan di dahankanan diberi nilai 0(kiri) – 1(kanan)

• A bottom-up approach = frekuensi terkecil dikerjakanterlebih dahulu dan diletakkan ke dalam leaf (daun).

• Kemudian leaf-leaf akan dikombinasikan dandijumlahkan probabilitasnya menjadi root diatasnya.

Static Huffman Coding (SFC)• Frekuensi karakter dari string yang akan dikompres

dianalisa terlebih dahulu. Selanjutnya dibuat pohonhuffman yang merupakan pohon biner dengan rootawal yang diberi nilai 0 (sebelah kiri) atau 1 (sebelahkanan), sedangkan selanjutnya untuk dahan kiriselalu diberi nilai 1(kiri) - 0(kanan) dan di dahankanan diberi nilai 0(kiri) – 1(kanan)

• A bottom-up approach = frekuensi terkecil dikerjakanterlebih dahulu dan diletakkan ke dalam leaf (daun).

• Kemudian leaf-leaf akan dikombinasikan dandijumlahkan probabilitasnya menjadi root diatasnya.

25Riki Ruli S - http://blogriki.wordpress.com

Static Huffman Coding• Berdasarkan frekuensi kejadian pada karakter

yang diberikan• A:13, B:4, C:7 A1, B 00, C 01

Static Huffman Coding• Berdasarkan frekuensi kejadian pada karakter

yang diberikan• A:13, B:4, C:7 A1, B 00, C 01

26Riki Ruli S - http://blogriki.wordpress.com

A B C

11

24

24

A

11 13

4 7B C

0

0

1

1

Static Huffman CodingMis: MAMA SAYA• A = 4 -> 4/8 = 0.5• M = 2 -> 2/8 = 0.25• S = 1 -> 1/8 = 0.125• Y = 1 -> 1/8 = 0.125• Total = 8 karakter

Static Huffman CodingMis: MAMA SAYA• A = 4 -> 4/8 = 0.5• M = 2 -> 2/8 = 0.25• S = 1 -> 1/8 = 0.125• Y = 1 -> 1/8 = 0.125• Total = 8 karakter

27Riki Ruli S - http://blogriki.wordpress.com

Static Huffman Coding

p(YSM)=0.5 p(A)=0.5

p(YSMA)=10 1

28Riki Ruli S - http://blogriki.wordpress.com

p(Y)=0.125 p(S)=0.125

p(YS)=0.25 p(M)=0.25

p(YSM)=0.5 p(A)=0.5

01

01

Sehingga w(A) = 1, w(M) = 00, w(S) = 010, dan w(Y) = 011

Shannon-Fano Algorithm• Dikembangkan oleh Shannon (Bell Labs) dan

Robert Fano (MIT)• Contoh : H E L L O

Shannon-Fano Algorithm• Dikembangkan oleh Shannon (Bell Labs) dan

Robert Fano (MIT)• Contoh : H E L L O

29Riki Ruli S - http://blogriki.wordpress.com

Simbol H E L O

Jumlah 1 1 2 1

Shannon-Fano Algorithm• Algoritma :

– Urutkan simbol berdasarkan frekuensi kemunculannya– Bagi simbol menjadi 2 bagian secara rekursif, dengan

jumlah yang kira-kira sama pada kedua bagian, sampaitiap bagian hanya terdiri dari 1 simbol.

• Cara yang paling tepat untukmengimplementasikan adalah dengan membuatbinary tree

Shannon-Fano Algorithm• Algoritma :

– Urutkan simbol berdasarkan frekuensi kemunculannya– Bagi simbol menjadi 2 bagian secara rekursif, dengan

jumlah yang kira-kira sama pada kedua bagian, sampaitiap bagian hanya terdiri dari 1 simbol.

• Cara yang paling tepat untukmengimplementasikan adalah dengan membuatbinary tree

30Riki Ruli S - http://blogriki.wordpress.com

Shannon-Fano Algorithm

31Riki Ruli S - http://blogriki.wordpress.com

Adaptive Huffman Coding (AHC)• Metode SHC mengharuskan diketahui terlebih

dahulu frekuensi masing-masing karaktersebelum dilakukan proses pengkodean. MetodeAHC merupakan pengembangan dari SHC dimanaproses penghitungan frekuensi karakter danpembuatan pohon Huffman dibuat secaradinamis pada saat membaca data.

• Algoritma Huffman tepat bila dipergunakan padainformasi yang bersifat statis. Sedangkan untukmultimedia application, dimana data yang akandatang belum dapat dipastikan kedatangannya(audio dan video streaming), algoritma AdaptiveHuffman dapat dipergunakan

Adaptive Huffman Coding (AHC)• Metode SHC mengharuskan diketahui terlebih

dahulu frekuensi masing-masing karaktersebelum dilakukan proses pengkodean. MetodeAHC merupakan pengembangan dari SHC dimanaproses penghitungan frekuensi karakter danpembuatan pohon Huffman dibuat secaradinamis pada saat membaca data.

• Algoritma Huffman tepat bila dipergunakan padainformasi yang bersifat statis. Sedangkan untukmultimedia application, dimana data yang akandatang belum dapat dipastikan kedatangannya(audio dan video streaming), algoritma AdaptiveHuffman dapat dipergunakan

32Riki Ruli S - http://blogriki.wordpress.com

Adaptive Huffman Coding (AHC)• Metode SHC maupun AHC merupakan

kompresi yang bersifat lossless.• Dibuat oleh David A. Huffman dari MIT tahun

1952• Huffman banyak dijadikan “back-end” pada

algoritma lain, seperti Arithmetic Coding,aplikasi PKZIP, JPEG, dan MP3.

Adaptive Huffman Coding (AHC)• Metode SHC maupun AHC merupakan

kompresi yang bersifat lossless.• Dibuat oleh David A. Huffman dari MIT tahun

1952• Huffman banyak dijadikan “back-end” pada

algoritma lain, seperti Arithmetic Coding,aplikasi PKZIP, JPEG, dan MP3.

33Riki Ruli S - http://blogriki.wordpress.com

34Riki Ruli S - http://blogriki.wordpress.com

Algoritma Lempel-Ziv-Welch (LZW)menggunakan teknik adaptif danberbasiskan “kamus” Pendahulu LZWadalah LZ77 dan LZ78 yang dikembangkanoleh Jacob Ziv dan Abraham Lempel padatahun 1977 dan 1978. Terry Welchmengembangkan teknik tersebut padatahun 1984. LZW banyak dipergunakanpada UNIX, GIF, V.42 untuk modem

Algoritma Lempel-Ziv-Welch (LZW)menggunakan teknik adaptif danberbasiskan “kamus” Pendahulu LZWadalah LZ77 dan LZ78 yang dikembangkanoleh Jacob Ziv dan Abraham Lempel padatahun 1977 dan 1978. Terry Welchmengembangkan teknik tersebut padatahun 1984. LZW banyak dipergunakanpada UNIX, GIF, V.42 untuk modem

35Riki Ruli S - http://blogriki.wordpress.com

ZIP File Format– Ditemukan oleh Phil Katz untuk program PKZIP

kemudian dikembangkan untuk WinZip, WinRAR,7-Zip.

– Berekstensi *.zip dan MIME application/zip– Dapat menggabungkan dan mengkompresi

beberapa file sekaligus menggunakan bermacam-macam algoritma, namun paling umummenggunakan Katz’s Deflate Algorithm.

ZIP File Format– Ditemukan oleh Phil Katz untuk program PKZIP

kemudian dikembangkan untuk WinZip, WinRAR,7-Zip.

– Berekstensi *.zip dan MIME application/zip– Dapat menggabungkan dan mengkompresi

beberapa file sekaligus menggunakan bermacam-macam algoritma, namun paling umummenggunakan Katz’s Deflate Algorithm.

36Riki Ruli S - http://blogriki.wordpress.com

ZIP File Format– Beberapa method Zip:

• Shrinking : merupakan metode variasi dari LZW• Reducing : merupakan metode yang

mengkombinasikan metode same byte sequence baseddan probability based encoding.

• Imploding : menggunakan metode byte sequencebased dan Shannon-Fano encoding.

• Deflate : menggunakan LZW• Bzip2, dan lain-lain

– Aplikasi: WinZip oleh Nico-Mak Comput

ZIP File Format– Beberapa method Zip:

• Shrinking : merupakan metode variasi dari LZW• Reducing : merupakan metode yang

mengkombinasikan metode same byte sequence baseddan probability based encoding.

• Imploding : menggunakan metode byte sequencebased dan Shannon-Fano encoding.

• Deflate : menggunakan LZW• Bzip2, dan lain-lain

– Aplikasi: WinZip oleh Nico-Mak Comput

37Riki Ruli S - http://blogriki.wordpress.com

– RAR File• Ditemukan oleh Eugene Roshal, sehingga RAR

merupakan singkatan dari Roshal Archive pada 10Maret 1972 di Rusia.

• Berekstensi .rar dan MIME application/x-rar-compressed

• Proses kompresi lebih lambat dari ZIP tapi ukuran filehasil kompresi lebih kecil.

• Aplikasi: WinRAR yang mampu menangani RAR dan ZIP,mendukung volume split, enkripsi AES.

– RAR File• Ditemukan oleh Eugene Roshal, sehingga RAR

merupakan singkatan dari Roshal Archive pada 10Maret 1972 di Rusia.

• Berekstensi .rar dan MIME application/x-rar-compressed

• Proses kompresi lebih lambat dari ZIP tapi ukuran filehasil kompresi lebih kecil.

• Aplikasi: WinRAR yang mampu menangani RAR dan ZIP,mendukung volume split, enkripsi AES.

38Riki Ruli S - http://blogriki.wordpress.com

– Buat Artikel tentang penjelasan Algoritma Kompresi yangada saat ini, kemudian berikan contoh, gambar dan fungsicara kerja dengan melakukan perbandingan dari setiapalgoritma yang telah dijelaskan.

– Tulis artikel ini pada blog anda. (selambat-lambatnya 2minggu)

– Sistematika ;• Pengantar Teknik Kompresi Data• Algoritma Kompresi (Penjelasan masing2 algoritma)• Perbandingan (Algortihm compare)• Kesimpulan• Referensi

– Buat Artikel tentang penjelasan Algoritma Kompresi yangada saat ini, kemudian berikan contoh, gambar dan fungsicara kerja dengan melakukan perbandingan dari setiapalgoritma yang telah dijelaskan.

– Tulis artikel ini pada blog anda. (selambat-lambatnya 2minggu)

– Sistematika ;• Pengantar Teknik Kompresi Data• Algoritma Kompresi (Penjelasan masing2 algoritma)• Perbandingan (Algortihm compare)• Kesimpulan• Referensi

39Riki Ruli S - http://blogriki.wordpress.com