Upload
tranduong
View
230
Download
1
Embed Size (px)
Citation preview
[TTG4J3] KODING DAN KOMPRESI
Prodi S1 Teknik TelekomunikasiFakultas Teknik Elektro
Universitas Telkom
Oleh :Ledya Novamizanti
Astri Novianty
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Terjadi transformasi atau revolusi dalam cara kita
berkomunikasi dalam kurun waktu 20 tahun terakhir
Perkembangan internet, komunikasi mobile yang
berkembang sangat cepat, dan komunikasi multimedia
Salah satu teknologi pemicu revolusi multimedia
adalah teknologi kompresi data
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Data compression is the art of science of
representing information in a compact form.
Kompresi data adalah cara untuk
merepresentasikan informasi menjadi bentuk
kompak.
Tujuan kompresi untuk memperkecil ukuran
sebuah data
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Sebagian besar informasi yang kita pakai
atau pun kita hasilkan kini direpresentasikan
dalam bentuk digital dan jumlahnya terus
meningkat dari waktu ke waktu.
Jumlah byte pada data multimedia bisa
sangat besar tanpa dikompresi
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Di antara dampak teknologi kompresi data:
Memungkinkan penggunaan gambar, audio, dan video
pada website
Berkembangnya TV digital,
dll
Awalnya kompresi data hanya domain sekelompok
kecil engineer dan scientist, tapi sekarang menjadi
ubiquitous
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Merepresentasikan atau mengubah data ke dalam
bentuk kode tertentu sedemikian rupa sehingga kode
yang dihasilkan dapat memenuhi tujuan tertentu
Di antara tujuan pengkodean:
1. Error detecting dan error correcting pada transmisi data
2. Mengamankan data (enkripsi data)
3. Kompresi data
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Beberapa algoritma pengkodean hanya
dapat digunakan untuk 1 tujuan saja,
beberapa dapat multifungsi
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Algoritma pengkodean selalu mencakup dua
proses dasar:
1. Encoding
2. Decoding
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Di dalam komputer data teks disimpan dalam bentuk representasi data ASCII
Setiap simbol karakter direpresentasikan ke dalam 8 bit data
Contoh: Message “ini kompresi” tersimpan dalam
bentuk representsi ASCII sebanyak 12 x 8 bit = 96 bit
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
pixel
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Pixel
H (horizontal number of pixel)
Satuan terkecil image
adalah piksel
Total jumlah piksel
pada image adalah
(banyaknya piksel
horisontal) x
(banyaknya piksel
vertikal)
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Di dalam komputer, setiap piksel dapat
direpresentasikan oleh:
1 bit data (BW)
1 byte data (grayscale)
1 byte data (256 warna)
2 byte data (64K warna)
3 byte data (16M warna)
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data 14
Greyscale
Black and White
Color
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Setiap piksel pada BW image direppresentasikan dalam 1 bit data
Hanya ada 2 variasi warna: hitam dan putih
15
Black & White
8 pixels= 1 byte
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Setiap piksel pada Grayscale image direpresentasikan dalam 1 Byte data
Ada 256 variasi warna abu-abu
16
Greyscale
1 pixels= 1 byte
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Grayscale Image 500 x 400 pixel
Ukuran file?
17
Pixel-1
Pixel-2 Pixel-n= 1 byte
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data18
Image 400 x 500 pixel
Ukuran file?
Pixel-1 Pixel-2 Pixel-n= 1 byte
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data 19
Signal
Conditioner
Analog to
Digital
Converter
Computer
System
Microphone
Computer
Storage
Computer Sound Board
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
1. Sampling
Sinyal audio berupa sinyal analog disampling dengan sampling
rate tertentu (dalam satuan Hz, atau samples per second)
2. Kuantifikasi
Setelah sinyal disampling, dilakukan kuantifikasi untuk
menentukan representasi bit setiap hasil sampling.
3. Koding
Setiap hasil sampling direpresentasikan ke dalam bentuk data
bit-bit.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data 21
1000
1001
1010
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
0101
0110
0111
Quantizatio
n
Error
1010
10
11
10
11
10
11
1001
1010
1001
Digital Data Stream : 1010 1011 1011 1011 1001 ...
Sampling
Period
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Sampling rate untuk standar audio pada CD
adalah 44.1 kHz, pada Digital Audio Tape
adalah 48 kHz.
Data audio standar umumnya disimpan
dalam 16 bit data per sample.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Berapa ukuran file audio berdurasi 2 menit
menggunakan standar CD-Audio?
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Berapa ukuran file audio berdurasi 5 menit
menggunakan standar CD-Audio?
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Terdiri atas rangkaian frame yang
ditampilkan dengan sangat cepat
Frame pada dasarnya adalah sebuah citra
(image)
Banyaknya frame yang ditampilkan dalam 1
detik diistilahkan frame per second (fps)
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data 26
frame
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Dua jenis standar video yang banyak digunakan:
a. NTSC (National Television Standards Committee)
mentrasfer 30 fps
resolusi per frame = 352 x 240 pixel = 84.480 pixel
1 pixel menggunakan RGB 3 Byte
b. PAL (Phase Alternating Line)
mentrasfer 25 fps
resolusi per frame = 352 x 288 pixel = 101.376 pixel
1 pixel menggunakan RGB 3 Byte
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data 28
frame
NTSC = 30 fps, PAL = 25 fps
10 minutes NTSC video
consist of 10 x 60 x 30 = 18.000 frames
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Berapa ukuran file video NTSC VCD berdurasi
10 menit tanpa kompresi?
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Berapa ukuran file video PAL VCD berdurasi 2
jam?
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Misalkan kita akan mentransfer video “live” melaluiinternet. Spesifikasi video streamnya adalah sebagaiberikut:
512× 512 pixel per frame,
25 frames per second
full colour RGB, 3 bytes per pixel
durasi video 30 menit
Berapa kebutuhan bandwidth jika mata kita masih dapat menikmati video dengan minimal 20 fps?
Jika menggunakan koneksi Ethernet 10 Mbps, hitung berapa besar data yang harus direduksi agar video dapat dinikmati oleh penerima streaming dengan kualitas 20 fps?
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Berapa kebutuhan bandwidth jika mata kita masih dapat menikmati video dengan minimal 20 fps?
32
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Jika menggunakan koneksi Ethernet 10 Mbps, hitung berapa besar data yang harus direduksi agar video dapat dinikmati oleh penerima streaming dengan kualitas 20 fps?
33
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
1. Menghemat storage space (kapasitas
penyimpanan)
2. Mengurangi waktu transmisi
3. Proses transmisi dapat lebih progresif
4. Mengurangi komputasi
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Mencakup 2 algoritma dasar:
1. Algoritma kompresi
Mengubah data awal menjadi data terkompresi
2. Algoritma dekompresi/rekonstruksi
Mengubah data terkompresi menjadi data awal
kembali (sesuai dengan asliya)
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Misalkan:x = data original,
sebelum dikompresixc = data hasil kompresiy = data hasil
rekonstruksi/dekompresi
αβγδεζηθλμνρος
σφψωПαβγδεζηθ
λμνροςσφψωПα
βγδεζηθλμνροςσ
φψωПαβγδεζηθλ
μνροςσφψωПαβ
γδεζηθλμνροςσφ
ψωП
αβγδεζηθλμνρος
σφψωПαβγδεζηθ
λμνροςσφψωПα
βγδεζηθλμνροςσ
φψωПαβγδεζηθλ
μνροςσφψωПαβ
γδεζηθλμνροςσφ
ψωП
Αβγδεζηθ
λμνροψωПαβγδ
εζ νροςσφψ
ωПαβγδε ψωП
αβγδεПαβγ
δεζηθλμ
νροςσφ ψωП
Kompre
si
Dekompresi/
Rekonstruksi
Original Hasil Rekonstruksi
x
xc
y
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
1. Lossless Compression
2. Lossy Compression
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Tidak ada informasi yang hilang
Data hasil rekonstruksi = data original
Reversible
Cocok untuk data diskrit (teks, bit string, dll)
Digunakan ketika aplikasi tidak dapat mentolerir perubahan data
atau hilangnya sebagian data.
Contoh:
Pada teks, contoh: “do not send money” menjadi “do now send
money”
Pada data yang akan di”enhanced” oleh analisis lebih lanjut.
Dikhawatirkan analisis tersebut akan memperbesar error. Contoh
pada image radiologi.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Contoh kompresi teks: winzip pada Windows atau gzip pada UNIX.
Algoritma Lossless Compression:
Huffman Code
Golomb Code
Rice Code
Tunstall Code
Arithmetics Code
Dictionary Code
Run-Length Code
Burrows-Wheeler Transform
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Ada informasi yang hilang
Data hasil rekonstruksi data original
Irreversible
Cocok untuk data kontinu (image, sound, dll)
Digunakan ketika aplikasi masih dapat mentolerir
perubahan data atau hilangnya sebagian data selama
perubahan data tersebut tidak mengganggu.
Data hasil rekonstruksi hanya perlu “mirip” dengan data
aslinya. Misalnya pada data image, audio dan video.
Menghasilkan rasio kompresi yang lebih besar.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
1. Kompleksitas relatif algoritma yang dipakai
2. Besar memori yang diperlukan utuk
mengimplementasikan algortima kompresi yang
dipakai
3. Kecepatan algoritma bekerja pada mesin tertentu
4. Besar kompresi
5. Seberapa dekat/mirip antara hasil rekonstruksi
dengan data asli yang dikompresi.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Untuk Lossless Compression, biasanya yang
dijadikan acuan performansi adalah besar
kompresi
Untuk Lossy Compression, parameter
performansi yang umum dipakai selain rasio
kompresi adalah seberapa mirip antara hasil
rekonstruksi dengan data asli yang dikompresi.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Perbandingan antara jumlah data sebelum
dikompresi dengan data setelah dikompresi.
Contoh:
sebuah image beresolusi 256x256 pixel dengan warna
1 byte,
jumlah data yang tersimpan sebelum dikompresi
adalah 65.536 Bytes.
Jika setelah dikompresi ukuran data menjadi 16.384
Bytes, maka rasio kompresinya adalah 4:1.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Adalah prosentase jumlah data yang berhasil
direduksi di dalam kompresi dibandingkan
data awalnya.
Untuk contoh kasus yang sama di atas, maka
rasio kompresinya adalah 75%.
[TTG4J3] Koding dan Kompresi Pengantar Kompresi Data
Perbedaan antara data original dengan data hasil
rekonstruksi
Semakin besar distorsi, rasio kompresi yang diperoleh
semakin besar
Tetapi distorsi yang besar akan menyebabkan
penerima data akan merasa “terganggu” dengan data
hasil rekonstruksi
Pada akhirnya yang menilai kualitas kompresi Lossy
adalah manusia