Anda di halaman 1dari 13

KOMPRESI DAN TEKS

KOMPRESI DATA
- Kompresi berarti memampatkan/mengecilkan ukuran - Kompresi data adalah proses mengkodekan informasi menggunakan bit atau information-bearing unit yang lain yang lebih rendah daripada representasi data yang tidak terkodekan dengan suatu sistem enkoding tertentu. - Contoh kompresi sederhana yang biasa kita lakukan misalnya adalah menyingkat kata-kata yang sering digunakan tapi sudah memiliki konvensi umum. Misalnya: kata yang dikompres men adi kata yg. - !engiriman data hasil kompresi dapat dilakukan yang sama dalam hal kompresi data. - !ihak pengirim harus menggunakan algoritma kompresi data yang sudah baku dan pihak penerima uga menggunakan teknik dekompresi data yang sama dengan pengirim sehingga data yang diterima dapat dibaca/di-dekode kembali dengan benar. - Kompresi data men adi sangat penting karena memperkecil kebutuhan penyimpanan data" mempercepat pengiriman data" memperkecil kebutuhan band#idth. ika pihak pengirim/yang melakukan kompresi dan pihak penerima memiliki aturan

- $eknik kompresi bisa dilakukan terhadap data teks/biner" gambar %&!'(" !)(" $*++," audio %M!-" ..C" /M." 0M.," dan video %M!'(" 1234" 123-,. Contoh kebutuhan data selama 4 detik pada layar resolusi 356 7 586: 9ata $eks o 4 karakter : 2 bytes %termasuk karakter .;C** '7tended, o ;etiap karakter ditampilkan dalam 878 pi7els o &umlah karakter yang dapat ditampilkan per halaman : 356 7 586 : 5866 karakter 878 Kebutuhan tempat penyimpanan per halaman : 5.866<2 byte : =.366 byte : =.->? Kbyte - 9ata (rafik @ektor o 4 still image membutuhkan ?66 baris o ;etiap 4 baris direpresentasikan dalam posisi horisontal" vertikal" dan field atribut sebesar 8-bit o sumbu 1oriAontal direpresentasikan dengan log2 356 : 46 bits o sumbu @ertical direpresentasikan dengan log2 586 : = bits o Bits per line : =bits C 46bits C 8bits : 2>bits o ;torage reDuired per screen page : ?66 < 2> : 438>"? byte : 4"3? Kbyte 8 - Color 9isplay o &enis : 2?3" 5.6=3" 43.-85" 3?.?-3" 43.>>>.243 #arna o Masing-masing #arna pi7el memakan tempat 4 byte o Misal 356 7 586 7 2?3 #arna 7 4 byte : -6>.266 byte : -66 KByte Kebutuhan tempat penyimpanan untuk media kontinyu untuk playback: 4 detik

- ;inyal audio tidak terkompres dengan kualitas suara telepon dengan sample 8 k1A dan dikuantisasi 8 bit per sample" pada band#idth 35 Kbits/s" membutuhkan storage:

- ;inyal audio C9 disample 55"4 k1A" dikuantisasi 43 bits per sample" ;torage : 55"4 k1A 7 43 bits : >6?"3 7 46- bits : 88.266 bytes untuk menyimpan 4 detik playback - Kebutuhan sistem !.E standar o 32? baris dan 2? frame/detik o - bytes/pi7el %luminance" red chrom" blue chrom, o Euminance F menggunakan sample rate 4-"? M1A o Chrominance %/-F dan B-F, menggunakan sample rate 3.>? M1A o &ika menggunakan 8 bit/sample" maka

Jenis Kompresi Data Berdasarkan Mode Penerimaan Data oleh Manusia


- Dialoque Mode: yaitu proses penerimaan data dimana pengirim dan penerima seakan berdialog %real time," seperti pada contoh !on"eren!e. o 9imana kompresi data harus berada dalam batas penglihatan dan pendengaran manusia. 0aktu tunda %delay, tidak boleh lebih dari 4?6 ms" dimana ?6 ms untuk proses kompresi dan dekompresi" 466 ms mentransmisikan data dalam aringan. - Retrie al Mode: yaitu proses penerimaan data tidak dilakukan secara real time ideo

o 9apat dilakukan "ast "or#ard dan "ast re#ind di client o 9apat dilakukan random access terhadap data dan dapat bersifat interaktif

Jenis Kompresi Data Berdasarkan Output


- $oss% &ompression o $eknik kompresi dimana data hasil dekompresi tidak sama dengan data sebelum kompresi namun sudah cukup untuk digunakan. Contoh: Mp-" streaming media" &!'(" M!'(" dan 0M.. o Kelebihan: ukuran file lebih kecil dibanding loseless namun masih tetap memenuhi syarat untuk digunakan. o Biasanya teknik ini membuang bagian-bagian data yang sebenarnya tidak begitu berguna" tidak begitu dirasakan" tidak begitu dilihat oleh manusia sehingga manusia masih beranggapan bah#a data tersebut masih bisa digunakan #alaupun sudah dikompresi. o Misal terdapat image asli berukuran 4"83= bytes berarti image tersebut kompresi 4?G. - $oseless o $eknik kompresi dimana data hasil kompresi dapat didekompres lagi dan hasilnya tepat sama seperti data sebelum proses kompresi. Contoh aplikasi: H*!" /./" (H*!" >-Hip o $eknik ini digunakan ika dibutuhkan data setelah dikompresi harus dapat diekstrak/dekompres lagi tepat sama. Contoh pada data teks" data program/biner" beberapa image seperti (*+ dan !)(. 42"25= bytes, kemudian -6 dan berukuran 8?G lebih kecil dan ratio dilakukan kompresi dengan &!'( kualitas

o Kadangkala ada data-data yang setelah dikompresi dengan teknik ini ukurannya men adi lebih besar atau sama.

Kriteria Al'oritma dan Aplikasi Kompresi Data


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 sebelum dikompres %kompresi loseless,

Klasi"ikasi Teknik Kompresi


'ntropy 'ncoding - Bersifat loseless $ekniknya tidak berdasarkan media dengan spesifikasi dan karakteristik tertentu namun berdasarkan urutan data. - ;tatistical encoding" tidak memperhatikan semantik data. - Mis: /un-length coding" 1uffman coding" .rithmetic coding ;ource Coding - Bersifat lossy - Berkaitan dengan data semantik %arti data, dan media. - Mis: !rediction %9!CM" 9M," $ransformation %++$" 9C$," Eayered Coding 1ybrid Coding (abungan antara lossy C loseless mis: &!'(" M!'(" 1.234" 9@* %Bit position" subsampling" sub-band coding," @ector DuantiAation

&ontoh(!ontoh Teknik Kompresi Teks


/un-Eength-'ncoding %/E', Kompresi data teks dilakukan ika ada beberapa huruf yang sama yang ditampilkan berturut-turut: Mis: 9ata: .BCCCCCCCC9'+(((( : 4> karakter /E' tipe 4 %min. 5 huruf sama, : .BCI89'+(I5 : 44 karakter - /E' ada yang menggunakan suatu karakter yang tidak digunakan dalam teks tersebut seperti misalnya JIK untuk menandai. - KelemahanL &ika ada karakter angka" mana tanda mulai dan akhirL Misal data : .BCCCCCCCC9'+(((( : 4> karakter /E' tipe 2: -2.B8C--9'+5( : 42 karakter Misal data : .B42CCCC9'''+ : 4- karakter /E' tipe 2: -5.B425C9-'+ : 42 karakter /E' ada yang menggunakan flag bilangan negatif untuk menandai batas sebanyak umlah karakter tersebut. - Berguna untuk data yang banyak memiliki kesamaan" misal teks ataupun grafik seperti icon atau gambar garis-garis yang banyak memiliki kesamaan pola. Best case: untuk /E' tipe 2 adalah ketika terdapat 42> karakter yang sama sehingga akan dikompres men adi 2 byte sa a. - 0orst case: untuk /E' tipe 2 adalah ketika terdapat 42> karakter yang berbeda semua" maka akan terdapat 4 byte tambahan sebagai tanda umlah karakter yang tidak sama tersebut. - Menggunakan teknik loseless - Contoh untuk data image:

Mriginal siAe: 46666 bytes Compressed siAe: ?>4- bytes /atio: 4.>?

Mriginal siAe: 46666 bytes Compressed siAe: 46466 /atio: 6.==

Mriginal siAe: 46666 bytes Compressed siAe: 266 /atio: ?6

;tatic 1uffman Coding - +rekuensi karakter dari string yang akan dikompres dianalisa terlebih dahulu. ;elan utnya dibuat pohon huffman yang merupakan pohon biner dengan root a#al yang diberi nilai 6 %sebelah kiri, atau 4 %sebelah kanan," sedangkan selan utnya untuk dahan kiri selalu diberi nilai 4%kiri, - 6 %kanan, dan di dahan kanan diberi nilai 6%kiri, - 4%kanan, - . bottom-up approach : frekuensi terkecil diker akan terlebih dahulu dan diletakkan ke dalam leaf%daun,. Kemudian leaf-leaf akan dikombinasikan dan di umlahkan probabilitasnya men adi root diatasnya. Mis: M.M. ;.F. . : 5 -N 5/8 : 6.? M : 2 -N 2/8 : 6.2? ; : 4 -N 4/8 : 6.42? F : 4 -N 4/8 : 6.42? $otal : 8 karakter

)u""man Tree:
p(YSMA)=0.5
0 1

p(YSM)=0.5
1 0

p(A)=0.5

p(YS)=0.25
1 0

p(M)=0.25

p(Y)=0.125

p(S)=0.125

;ehingga #%., : 4" #%M, : 66" #%;, : 646" dan #%F, : 644 &ontoh lain* &ika terdapat p%., : 6.43" p%B, : 6.?4" p%C, : 6.6=" p%9, : 6.4-" dan p%', : 6.44" buatlah 1uffman $ree-nya dan #eight masing-masing karakterI

Shannon(+ano Al'orithm
9ikembangkan oleh ;hannon %Bell Eabs, dan /obert +ano %M*$, Contoh : 1'EEM ;imbol 1 ' E &umlah 4 .lgoritma : 4. Orutkan simbol berdasarkan frekuensi kemunculannya 2. Bagi simbol men adi 2 bagian secara rekursif" dengan umlah yang kira-kira sama pada kedua bagian" sampai tiap bagian hanya terdiri dari 4 simbol. Cara yang paling tepat untuk mengimplementasikan adalah dengan membuat binary tree. 4 2 M 4

Adapti e )u""man &odin'


Metode ;1C mengharuskan kita mengetahui terlebih dahulu frekuensi masing-masing karakter sebelum dilakukan proses pengkodean. Metode .1C merupakan pengembangan dari ;1C dimana proses penghitungan frekuensi karakter dan pembuatan pohon 1uffman dibuat secara dinamis pada saat membaca data. .lgoritma 1uffman tepat bila dipergunakan pada informasi yang bersifat statis. ;edangkan untuk multimedia application" dimana data yang akan datang belum dapat dipastikan kedatangannya %audio dan video streaming," algoritma .daptive 1uffman dapat dipergunakan. Metode ;1C maupun .1C merupakan kompresi yang bersifat loseless. 9ibuat oleh 9avid .. 1uffman dari M*$ tahun 4=?2 1uffman banyak di adikan back-end pada algoritma lain" seperti .rithmetic Coding" aplikasi !KH*!" &!'(" dan M!-.

DI&TIONAR,(BASED &ODIN.lgoritma Eempel-Hiv-0elch %EH0, menggunakan teknik adaptif dan berbasiskan kamus !endahulu EH0 adalah EH>> dan EH>8 yang dikembangkan oleh &acob Hiv dan .braham Eempel pada tahun 4=>> dan 4=>8. $erry 0elch mengembangkan teknik tersebut pada tahun 4=85. EH0 banyak dipergunakan pada O)*P" (*+" @.52 untuk modem. .lgoritma Kompresi:
BEGIN S = next input character; While not EOF { C = next input character; If s + c exists in the diactionar S = s + c Else { Output the code for s; !dd strin" s + c to the dictionar = c; $ $ EN%

#ith a ne# code S

.lgoritma 9ekompresi: BEGIN S = N&''; #hile not EOF{ ( = NE)* IN+&* CO%E; Entr = dictionar entr for (; Ouput entr ; if,s -= N&''. add strin" s + entr /01 to dictionar = Entr ; $ EN% Contoh 9ekompresi *nput : 4 2 5 ? 2 - 5 3 4 S Entr%.output &ode 4 2 )OEE 4 . . 2 B 5 B 5 .B ? .B ? B. 3 B. 2 B > B C 8 C 5 .B = .B 3 .BB 46 .BB 4 . 44 . 'M+ 1asil 9ekode: ABABBAB&ABABBA K Strin' . B C .B B. .BB B.B BC C. .B. .BB.

#ith ne# code S

Aplikasi Kompresi
- H*! +ile +ormat o 9itemukan oleh !hil KatA untuk program !KH*! kemudian dikembangkan untuk 0inHip" 0in/./" >-Hip. o Berekstensi Q.Aip dan M*M' application/Aip o 9apat menggabungkan dan mengkompresi beberapa file sekaligus menggunakan bermacam-macam algoritma" namun paling umum menggunakan KatAKs 9eflate .lgorithm. o Beberapa method Hip: ;hrinking : merupakan metode variasi dari EH0

/educing : merupakan metode yang mengkombinasikan metode same byte seDuence based dan probability based encoding. *mploding : menggunakan metode byte seDuence based dan ;hannon-+ano encoding. 9eflate : menggunakan EH0 BAip2" dan lain-lain o .plikasi: 0inHip oleh )ico-Mak Computing /./ +ile o 9itemukan oleh 'ugene /oshal" sehingga /./ merupakan singkatan dari Roshal Archive pada 46 Maret 4=>2 di /usia. o Berekstensi .rar dan M*M' application/7-rar-compressed o !roses kompresi lebih lambat dari H*! tapi ukuran file hasil kompresi lebih kecil. o .plikasi: 0in/./ yang mampu menangani /./ dan H*!" mendukung volume split" enkripsi .';.

Anda mungkin juga menyukai