19
diterapkan pada keluaran proses DCT. Kuantisasi dilakukan dengan membagi keluaran proses DCT dengan suatu nilai yang ditetapkan dalam matriks kuantisasi
atau disebut quantum. Kuantisasi uniform secara umum dapat dirumuskan dengan [7]:
Z = round 2.8
dimana: Z= Nilai terkuantisasi
Y= Nilai DCT Q= table kuantisasi
2.7 Entropy Coder
Entropy encoder mengkonversi serangkaian simbol yang mewakili unsur urutan video menjadi bitstream terkompresi yang cocok untuk transmisi atau
penyimpanan. Beberapa teknik entropy coder antara lain Huffman coding dan context adaptive binary arithmetic coding:
2.7.1 Huffman Coding
Kode Huffman pada dasarnya merupakan kode prefiks prefix code. Kode prefiks adalah himpunan yang berisi sekumpulan kode biner, dimana pada kode
prefik ini tidak ada kode biner yang menjadi awal bagi kode biner yang lain. Kode prefiks biasanya direpresentasikan sebagai pohon biner yang diberikan nilai atau
label. Untuk cabang kiri pada pohon biner diberi label 0, sedangkan pada cabang kanan pada pohon biner diberi label 1.
Universitas Sumatera Utara
20
Rangkaian bit yang terbentuk pada setiap lintasan dari akar ke daun merupakan kode prefiks untuk karakter yang berpadanan. Pohon biner ini biasa
disebut pohon Huffman. Langkah-langkah pembentukan pohon Huffman adalah sebagai berikut [11] :
1. Baca semua karakter di dalam teks untuk menghitung frekuensi kemunculan setiap karakter. Setiap karakter penyusun teks dinyatakan sebagai pohon
bersimpul tunggal. Setiap simpul di-assign dengan frekuensi kemunculan karakter tersebut.
2. Terapkan strategi algoritma greedy sebagai berikut : Gabungkan dua buah pohon yang mempunyai frekuensi terkecil pada sebuah akar. Setelah
digabungkan akar tersebut akan mempunyai frekuensi yang merupakan jumlah dari frekuensi dua buah pohon-pohon penyusunnya.
3. Ulangi langkah 2 sampai hanya tersisa satu buah pohon Huffman. Agar pemilihan dua pohon yang akan digabungkan berlangsung cepat, maka
semua yang ada selalu terurut menaik berdasarkan frekuensi.
2.7.2 Context Adaptive Binary Arithmetic Coding CABAC
CODEC H.261 dan CODEC H.263 menggunakan Huffman Coding untuk pembentukan bitstream. Sedangkan context-based adaptive binary aritmethic
coding CABAC digunakan pada CODEC H.265 dan CODEC H.264. CABAC adalah suatu bentuk coding untuk membentuk bit-bit tertentu
untuk selanjutnya di salurkan ke jaringan berdasarkan prinsip aritmethic coding. Untuk lebih jelasnya, prinsip kerja CABAC ditunjukkan pada Gambar 2.15.
Universitas Sumatera Utara
21
Gambar 2.15 Blok Diagram CABAC [1]
CABAC terdiri atas 3 bagian coding yaitu binarization, context modeling, binary aritmethic [1].
1. Binarization Pengurangan alphabet dilakukan oleh binarization untuk tiap non binary element menghasilkan suatu intemediate unik codeword biner
untuk unsur sintaksis yang ditentukan yang disebut bin string. 2. Context modeling digunakan untuk membersihkan interface antara
modeling dan model. Setiap distribusi model akan diberi simbol yang kemudian didalam langkah coding selanjutnya, memandu coding engine to
generate suatu urutan bit sebagai code pada simbol menurut distribusi
model.
3. Binary Arimethic Coding adalah berdasarkan pada prinsip pengulangan interval [lower, upper yang melibatkan operasi perkalian dasar dan juga
berdasar pada arithmethic coding.
Universitas Sumatera Utara
22
2.8 Bitrate Video