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