Archive for Oktober 2013
Digital Image Coding
Digital Image Coding
Kompresi gambar adalah aplikasi dari teknik kompresi data ke gambar
digital dua dimensi I(x,y).
1.
Pengkodean entropi
Pengkodean entropi adalah skema pengkodean
yang menugaskan kode ke symbol agar panjang kode cocok dengan probabilitas
symbol. Dua dari pengkodean entropi yang popular adalah :
-
Kode Huffman
Pengkodean Huffman adalah algoritma
pengkodean entropi yang digunakan untuk kompresi lossless data. Pengkodean ini
menggunakan tabel kode biner dengan panjang variable untuk pengkoean satu set
symbol sumber. Tabel kode panjang variable berasal dari probabilitas perkiraan
kemunculan dari setiap nilai yang mungkin dari tiap symbol.
Beberapa property yang berhubungan dengan
kode Huffman :
Ø
Block code
Ø
Instantaneous (prefix-free)
code
Ø
Uniquely decodable
Ø
Close to entropy
-
Kode aritmatik
Kode aritmatik adalah generalisasi dari kode
Huffman. Pengkodean aritmatik melibatkan kode nonblok tanpa korespondensi satu
ke satu antara symbol sumber dan kata kode pada kode Huffman. Sebuah urutan seluruh
simbol sumber dengan panjang terbatas diberikan sebuah kata kode aritmatika
tunggal yang mendefinisikan interval bilangan real antara 0 dan 1. Bila jumlah
simbol dalam urutan meningkat, maka interval yang digunakan untuk mewakili
menjadi lebih kecil. Prinsip pengkodean didasarkan pada asumsi bahwa setiap urutan
simbol dapat membantu mengurangi ukuran interval sesuai dengan probabilitas.
-
Context-adaptive binary
arithmetic coding (cabac)
Cabac adalah teknik efisien untuk pengkodean
entropi kondisional. Umumnya, sebuah kumpulan (array) dari variable konteks
pada CABAC, masing-masing dengan hitungan yang terasosiasi, didefinisikan untuk
merepresentasikan distribusi probabilitas yang berbeda.
Gambar 1 Contoh CABAC
-
Run-Length Coding (RLC)
Run-length coding mengkodekan urutan simbol
biner dengan runs of data (yaitu, urutan di mana nilai data yang sama terjadi
pada banyak elemen data yang berurutan). Run-length coding dapat berfungsi
sebagai metode pengkodean lossless yang mencatat run sebagai nilai data tunggal
dan menghitung bukan sebagai run asli.
2.
lossy image compression
Pendekatan kompresi lossy menenalkan distorsi
melalui proses kuantisasi sinyal.
3.
Joint Photographic Experts
Group (JPEG)
Standar pengkodean gambar yang popular. Tiga
mode pengkodean pada JPEG antara lain :
-
Lossy baseline mode
-
Extended coding mode
-
Lossless coding mode
Gambar 2 kode stream JPEG
4.
JPEG2000
JPEG2000 adalah standar kompresi gambar
berbasis wavelet. Kelebihan JPEG2000 dibandingkan JPEG adalah :
-
Performa kompresi yang superior
-
Representasi resolusi berlipat
-
Transmisi progresif berdasarkan
pixel dan akurasi resolusi
-
Kompresi lossless dan lossy
-
Akses dan pengolahan kode
stream secara acak
-
Kemampuan membangun secara
sekuensial
-
Format file yang fleksible
Senin, 28 Oktober 2013
Posted by Kuroneko Book Club
Digital Audio Coding
Digital Audio Coding
Penerimaan suara pada manusia diproses secara fisiologis dan psikologis. Efek psikologis penerimaan suara dipelajari dalam psikoakustik. Tiga aspek pada psikoakustik antara lain :
- Sensitivitas pendengaran
Koklea telinga manusia dapat melakukan analisa frekuensi pada jarak antara 20 Hz hingga 20 kHz. Semakin besar frekuensi, semakin kecil resolusi frekuensi telinga kita. Maka, kita dapat menentukan batas absolut pendengaran yang menggambarkan jumlah energi yang dibutuhkan dalam nada murni agar bisa dideteksi pendengar pada lingkungan yang bising. Batas ini dirumuskan sebagai :
Hal ini dapat menjadi dasar untuk kuantisasi sampel audio. Satu alternatif adalah dengan membagi jarak frekuensi yang dapat didengar menjadi beberapa band. Lalu sampel audio pada band yang berbeda dapat dikuantisasi dengan jumlah bit yang berbeda untuk mengakomodasi level toleransi dari kuantisasi suara. Pengukuran frekuensi yang seragam disebut sebagai critical bands. Bark adalah unit frekuensi untuk satu critical band. Untuk tiap frekuensi f, nomor bark dapat dirumuskan sebagai :
- Frekuensi masking
Pada pendengaran manusia, saluran frekuensi yang berbeda dapat berinterferensi satu sama lain. Suara yang lebih kuat akan membelokkan batas absolut pendengaran dan menyebabkan suara yang lebih lemah menjadi tidak terdengar. Efek ini disebut sebagai frekuensi masking. Hal ini dapat digunakan untuk pemampatan kuantisasi sampel audio.
- Temporal masking
Suara lemah yang dikeluarkan segera setelah akhir dari suara yang lebih kuat akan ditutup oleh suara yang lebih kuat. Suara lemah yang dikeluarkan sebelum suara yang lebih kuat pun dapat ditutup oleh suara yang lebih kuat. Dua efek ini disebut sebagai post dan pre-temporal masking.
Representasi audio terbaik adalah dengan representasi domain frekuensi. Hal ini didapatkan menggunakan subband atau transform filter band. Analisa masking dan perhitungan bitrate harus disiapkan dan diproses dalam frames dari panjang yang sudah ditentukan dari sinyal audio. Tiap frame audio yang sudah dikode sebagian besar berisi audio yang sudah dikode denggan tambahan level puncak dari tiap subband frekuensi, level masking dari tiap subband, dan jumlah bit tiap sampel pada tiap subband. Contoh pengkodean audio dengan format MPEG :
• MPEG-1 audio layers
Kompresi audio MPEG-1 menerima audio dengan sampling rate sebesar 32, 44.1, atau 48 kHz. Bitstream yang terkompresi mampu mendukung satu atau dua saluran audio dan memiliki satu atau beberapa bitrate tetap yang telah ditentukan berkisar antara 32 hingga 224 kbps per saluran. MPEG-1 menawarkan tiga lapisan kompresi antara lain :
a. Layer 1 memiliki kompleksitas terendah dan bitrate tertinggi, berkisar antara 32-224 kbps per saluran dengan bitrate target 192 kbps per saluran. Hanya menggunakan sensitivitas pendengaran dan frekuensi masking. Tiap frame berisi 384 sampel yang diolah menggunakan 32 subband dengan lebar sama. Tiap subband mengandung 12 sampel
b. Layer 2 memiliki kompleksitas sedang dan ditarget untuk bitrate sekitar 128 kbps per saluran. Layer ini menggunakan teknik frekuensi dan temporal masking. Tiap frame berisi 1152 sampel yang diolah menggunakan 32 subband dengan lebar sama. Tiap subband mengandung 36 sampel.
c. Layer 3 memiliki kompleksitas tertinggi dan menawarkan kualitas audio terbaik, terutama untuk audio dengan bitrate sekitar 64 kbps per saluran. Data yang dikompresi pada layer ini disebut sebagai format mp3. Tiap frame berisi 1152 sampel yang diolah menggunakan 32 subband dengan lebar sama. Tiap subband mengandung 36 sampel.
Algoritma kompresi audio MPEG-1 mendukung dua tipe pengkodean redudansi stereo yaitu pengkodean intensitas stereo (intensity stereo coding) dan pengkodean tengah/sisi stereo (middle/side stereo coding). Ketiga layer mendukung pengkodean intensitas stereo. MP3 juga mendukung pengkodean MS stereo.
• Dolby AC3 audio codec
Pengkodean audio AC3 menggunakan fitur psikoakustik untuk menutupi (masking) sinyal audio yang tidak dapat didengar. AC3 mengirim enam saluran suara secara terpisah. Susunan saluran 5.1 untuk AC3 dapat dilihat pada gambar di bawah.
• MPEG-2 Advanced Audio Coding (AAC)
Format AAC mampu mendukung hingga 48 saluran frekuensi suara dan 16 saluran peningkatan berfrekuensi rendah. AAC juga mendukung sampling rate hingga 96 kHz. AAC menggunakan pendekatan modular yang dapat dirangkum menjadi :
a. filter bank
b. Temporal Noise Shaping (TNS)
c. prediksi
d. MS stereo
e. kuantisasi
f. pengkodean Huffman
g. format bitstream
• MPEG-4 AAC (HE-AAC)
HE-AAC adalah standar pengkodean audio yang paling efisien hingga saat ini. Teknik ini ditargetkan untuk pengkodean dengan kualitas sedang pada bitrate 24 kbps per saluran dan yang lebih tinggi dari itu. HE-AAC ditingkatkan menjadi HE-AAC v2.
Rabu, 16 Oktober 2013
Posted by Kuroneko Book Club