Selasa, 28 Mei 2013

PEMAMPATAN DATA

Pengertian Pemampatan / Kompresi data
            Dalam ilmu komputer, pemampatan data atau kompresi data adalah sebuah cara untuk memadatkan data sehingga hanya memerlukan ruangan penyimpanan lebih kecil sehingga lebih efisien dalam menyimpannya atau mempersingkat waktu pertukaran data tersebut. Ada terdapat dua jenis pemampatan data, yaitu pemampatan tanpa kehilangan (lossless data compression) dan pemampatan berkehilangan (lossy data compression).
Tujuan Pemampatan / Kompresi Data
·         Memperkecil penyimpanan data
·         Mempercepat pengiriman data
·         Memperkecil kebutuhan bandwidth
 Teknik kompresi bisa dilakukan :
·         Data teks
·         Gambar (JPEG, PNG, TIFF),
·         Audio (MP3, AAC, RMA, WMA)
·         Video (MPEG,H261, H263)
Jenis Kompresi Data Berdasarkan Output           
1.      Lossy Compression
            Teknik yang mengakibatkan data semula tidak dapat direkonstruksi kembali (ada data       yang hilang)
·         Teknik kompresi dimana data hasil tidak sama dengan data sebelum kompresi.
·         Batasan : kualitas yang diinginkan dan waktu (pemrosesan dan pengiriman)
            Contoh: data lagu, data film, video conference.
·         MPEG (Motion Picture Expert Group) untuk video
·         MP3 untuk lagu dan audio
·         JPEG (Joint Picture Expert Group) untuk gambar
            Kelebihan:
·         Ukuran file lebih kecil dibanding loseless tetapi masih memenuhi syarat untuk digunakan.
·         Biasanya teknik ini membuang bagian-bagian data yang sebenarnya tidak begitu berguna dan tidak dirasakan oleh kita sehingga kita masih beranggapan bahwa data tersebut masih bisa digunakan walaupun sudah dikompresi.

2.      Loseless Compression
·         Teknik kompresi yang tidak menyebabkan kehilangan data. Hasilnya sama seperti data sebelum proses kompresi.
            Contoh : ZIP, RAR, GZIP
·         Teknik ini digunakan jika dibutuhkan data setelah dikompresi harus dapat diekstrak/dekompres lagi tepat sama.
·         Biasanya digunakan jika akurasi data sangat penting
·         contoh: data teks/biner, data program, image (PNG, GIF)
·         Kadang ada data-data yang setelah dikompresi dengan teknik ini ukurannya sama atau lebih besar.

Ø  Klasifikasi Teknik Kompresi 1 (Entropy Encoding)
·         Bersifat loseless
·         Tekniknya tidak berdasarkan media karakteristik tertentu tetapi berdasarkan urutan data.
            Contoh: Run-length coding, Huffman coding, Arithmetic coding
Ø  Klasifikasi Teknik Kompresi 2 (Source Coding)
·         Bersifat lossy
·         Berkaitan dengan data semantik (arti data) dan media.
            Contoh: Prediction (DPCM, DM), Transformation (FFT,DCT), Layered Coding (Bit         position, subsampling, sub-band coding), Vector Quantization

Ø  Klasifikasi Teknik Kompresi 3 (Hybrid Coding)
·         Gabungan antara lossy + loseless
            Contoh: JPEG, MPEG, H.261, DVI
Ø  Pendekatan yang digunakan pada kompresi data
1.      Pendekatan statistik
            Kompresi didasarkan pada frekuensi kemunculan derajat keabuan pixel didalam    seluruh bagian. Contoh metode : Huffman Coding.
2.      Pendekatan ruang
            Kompresi didasarkan pada hubungan spasial antara pixel-pixel di dalam suatu        kelompok yang memiliki derajat keabuan yang sama dalam suatu daerah gambar atau             data. Contoh metode : Run-Length Encoding.
3.      Pendekatan kuantisasi
            Kompresi dilakukan dengan mengurangi jumlah derajat keabuan yang tersedia.      Contoh metode : kompresi kuantisasi (CS-&Q).
4.      Pendekatan fraktal
            Kompresi dilakukan pada kenyataan bahwa kemiripan bagian-bagian didalam data            atau citra atau gambar dapat dieksploitasi dengan suatu matriks transformasi. Contoh        metode : Fractal Image Compression.
Ø  Jenis Kompresi Data Berdasarkan Mode Penerimaan Data oleh Manusia
1.      Dialoque Mode
·         proses penerimaan data dimana pengirim dan penerima seakan berdialog (real time) Contohnya : video conference
·         Dimana kompresi data harus berada dalam batas penglihatan dan pendengaran manusia.
·         Waktu tunda (delay) tidak boleh > 150 ms, dimana 50 ms untuk proses kompresi dan dekompresi, 100 ms mentransmisikan data dalam jaringan.

2.      Retrieval Mode
·         proses penerimaan data tidak dilakukan secara real time
·         Dapat dilakukan fast forward dan fast rewind di client
·         Dapat dilakukan random access terhadap data dan dapat bersifat interaktif

Ø  Tipe sistem kompresi (Encoder)
1.      Transformer
            Melakukan transformasi pemetaan one-to-one pada gambar masukan.
·         Keluaran transformer adalah representasi gambar yang lebih efisien untuk dikompresi.
·         contoh: Discrete Cosine Transform (DCT).
·         DCT mengumpulkan energi sinyal gambar di tempat koefisien yang kecil. Tahapan ini tidak mengakibatkan kehilangan data.

2.      Quantizer
            Menghasilkan simbol-simbol yang digunakan untuk merepresentasikan gambar yang          terkompresi.
·         Tahapan ini mengakibatkan kehilangan data karena terjadi pembulatan pada data. Bersifat reversible.
·         Proses : scalar quantizer dan vector quantizer.
·         Scalar quantizer melakukan proses kuantisasi pada elemen per elemen.
·         Vector quantizer melakukan proses kuantisasi pada blok data.

3.      Coder
            Mengubah keluaran Quantizer, berupa bit stream, menjadi kode-kode tertentu yang           mewakilinya.
·         Coder dapat menggunakan kode variable-length (VLC)
·         Keluaran Coder adalah bit stream yang dapat ditransmisikan lewat jaringan.
·         Bit stream dikirimkan pada penerima yang memiliki Decoder untuk menata kembali gambar yang dikompresi.
·         Karena proses kuantisasi yang bersifat reversibel maka gambar yang direkonstruksi tidak sama dengan gambar semula, meskipun bagi penglihatan manusia tidak terlalu berpengaruh (tergantung rasio kompresi yang digunakan).

Ø  LOSSY Vs LOSSLESS
Keuntungan metode lossy
·         Menghasilkan file kompresi yang lebih kecil dibandingkan dengan metode lossless
·         Metode lossy sering digunakan untuk mengkompresi suara, gambar dan video.
·         Lossy akan mengalami generation loss pada data sedangkan pada lossless tidak terjadi karena data yang hasil dekompresi sama dengan data asli.
·         Sedangkan lossless digunakan untuk mengkompresi data untuk diterima ditujuan dalam kondisi asli seperti dokumen teks.

Ø  APLIKASI KOMPRESI
a.      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
·         Aplikasi: WinZip oleh Nico-Mak Computing
Ø  Beberapa method Zip:
·         Shrinking : metode variasi dari LZW
·         Reducing : metode yang mengkombinasikan metodesame byte sequence based dan probability based encoding.
·         Imploding : menggunakan metode byte sequence based dan Shannon-Fano encoding.
·         Deflate : menggunakan LZW, Bzip2

b.      RAR File
·         Ditemukan oleh Eugene Roshal, sehingga RAR (singkatan dari Roshal Archive pada 10 Maret 1972 di Rusia).
·         Berekstensi .rar dan MIME application/x-rar-compressed
·         Proses kompresi lebih lambat dari ZIP tapi ukuran file hasil kompresi lebih kecil.

·         Aplikasi: WinRAR yang mampu menangani RAR dan ZIP