Anda di halaman 1dari 93

VIDEO CODING LANJUTAN (H.

264)
Kelompok ahli pengkodean video ITU-T, telah berhasil menyelesaikan H.263
video codec mereka pada tahun 1995, mulai bekerja pada proyek video coding lanjutan (AVC).
Tujuan jangka panjang mereka adalah untuk merekomendasikan video codec untuk setidaknya
dua kali lebih baik dari video codec yang ada, seperti H.263. Proyek ini awalnya disebut
H.26L, dengan L berdiri untuk tujuan jangka panjang [1]. Namun, H.263 berada di bawah
peningkatan konstan. Versi terbaik H.263+ diselesaikan pada tahun 1997, dan pada tahun 2000,
spesifikasi H.263++ disahkan, di mana masing-masing + merupakan indikasi perbaikan besar.
Sebagian besar inovasi di H.263+ dalam bentuk pilihan atau lampiran juga diberikan kepada
H.26L. ITU-T disampaikan H.26L ke MPEG panggilan untuk proposal pada tahun 2001. MPEG4 ahli kelompok ISO / IEC, yang tidak sangat bahagia dengan video codec berbasis konten
mereka (karena kompleksitas tinggi codec tidak bisa menjadi dipasarkan), dan rekan berbasisframe memiliki kinerja yang mirip dengan H.263, menunjukkan minat dalam codec baru ini.
Mereka bergabung dengan proyek AVC dan bekerja sama dengan tim ITU-T. Nama proyek
kemudian berubah ke video bersama Tim (JVT).
Tugas akhir H.264 direkomendasikan oleh ITU-T H.264 pada tahun 2003.
Codec ini di ISO dikenal sebagai 14496-10 atau MPEG-4 bagian 10. Karena proyek
dimulai sebagai AVC, itu informal dikenal sebagai AVC. Akhirnya, karena tim gabungan
karya

ITU-T

dan

ISO,

juga

dikenal

sebagai

JVT.

Namun,

menghilangkan

kebingungan dengan semua nama-nama serta MPEG-4 berbasis konten (visual) codec
Bab 10, dalam bab ini, kita lihat codec ini terutama sebagai H.264 / AVC, atau
hanya H.264.
Codec H.264, sejak diperkenalkan resmi pada tahun 2003, telah terbukti menjadi
penerima secara universal video codec untuk semua jenis aplikasi. Sekarang pada tahun 2010, itu
adalah codec untuk semua layanan video baru. Untuk telekomunikasi, telah menggantikan H.263
dan kompresor video de facto untuk kedua siaran terestrial dan satelit definisi tinggi digital (HD)
TV. Meskipun siaran terestrial dan satelit TV digital di Eropa adalah pada MPEG-2, karena
ketika layanan ini diluncurkan pada 1998, H.264 tidak tersedia, sekarang negara-negara yang
ingin memulai penyiaran digital SD TV serius berpikir untuk menggunakan H.264. Hal ini

terutama disebabkan oleh setidaknya dua kali kinerja kompresi yang lebih baik dari H.264 lebih
MPEG-2, yang memungkinkan untuk melipat gandakan jumlah program TV di transponder
satelit dan terestrial saluran UHF. Kecenderungan itu juga terlihat dalam penyimpanan video
berkualitas tinggi pada Blu-ray, untuk meningkatkan kualitas dan efisiensi penyimpanan.
akhirnya, untuk video baru.
Menjelang akhir bab ini, kita akan membandingkan efisiensi kompresi H.264 dengan
codec standar lainnya. Namun, awal simulasi dengan inti codec ini, H.26L, telah menunjukkan
keunggulan substansial paling optimal H.263 dan bingkai berbasis codec MPEG-4 (visual atau
bagian 2). Sebagian besar fitur utama dari ini codec baru adalah sebagai berikut:

Hingga 50 persen dalam sedikit tingkat penyimpanan: Dibandingkan dengan H.263+


(H.263V2) atau MPEG-4 profil sederhana (MPEG-4 visual atau bagian 2, lihat Bab 10),
codec yang baru mencapai pengurangan rata-rata bit rate hingga 50 persen untuk gelar yang
sama optimasi encoder paling bit rate. Ini berarti bahwa H.264 menawarkan kualitas tinggi
secara konsisten di semua tingkat bit termasuk bit rate rendah di atas standar sebelumnya.

Adaptasi untuk menunda kendala: H.264 / AVC dapat beroperasi dalam-delay rendah
modus untuk beradaptasi dengan aplikasi telekomunikasi (misalnya H.264 untuk video
conferencing), sementara memungkinkan penundaan pengolahan yang lebih tinggi dalam
aplikasi tanpa penundaan kendala seperti penyimpanan video dan aplikasi video streaming
berbasis server (MPEG-4 bagian 10).

Kesalahan tahanan: H.264 menyediakan alat yang diperlukan untuk menangani packet loss
dalam paket jaringan dan kesalahan bit dalam jaringan nirkabel rawan kesalahan.

Jaringan ramah: codec ini memiliki fitur yang secara konseptual memisahkan
lapisan

pengkodean

video

(VCL)

dari

lapisan

jaringan

abstraksi

(NAL).

Mantan memberikan representasi kompresi tinggi inti dari gambar video yang
konten,

dan

mendukung

kedua

pengiriman

atas

berbagai

jenis

jaringan.

ini

memfasilitasi paketisasi dengan mudah dan kontrol prioritas informasi yang lebih baik.
NAL juga dapat menyediakan data video terkompresi dalam dua format, untuk berbasis
aliran-protokol seperti H.320, H.324 atau MPEG-2 dan untuk protokol berbasis paket seperti
RTP / IP dan TCP / IP. Untuk protokol berbasis aliran, data yang disediakan dengan
mulai kode sehingga lapisan transportasi dan decoder dapat dengan mudah mengidentifikasi

struktur bitstream. Untuk protokol berbasis paket, struktur bit diidentifikasi oleh header paket
[5].
Sebelum masuk ke rincian tentang bagaimana codec ini bekerja, mari kita lihat beberapa fiturfiturnya, yang berbeda dari pendahulunya.

Dua skema pengkodean entropi, context-adaptive variable length coding (CAVLC) dan
context-adaptive binary arithmetic coding (CABAC).

Beberapa gambar referensi kompensasi gerak serta memungkinkan B-iris untuk digunakan
sebagai referensi, bahkan untuk P-iris.

Blok variabel estimasi ukuran gerak dari 4 x 4 sampai 16 x 16 piksel.

Quarter-pixel gerak presisi kompensasi dengan meningkatkan akurasi prediksi dan


kompleksitas interpolasi yang lebih rendah.

Prediksi spasial terarah pada intra macroblocks code (MB) untuk efisien kompresi.

The discrete cosine transform (DCT) diganti dengan bilangan bulat reversibel transformasi
menghindari invers transformasi ketidakcocokan.

Variabel ukuran blok bilangan bulat mengubah dari 8 x 8 dan 4 x 4.

Deblocking penyaringan untuk menghilangkan artefak yang disebabkan oleh gerakan


kompensasi dan kuantisasi.

Parameter set yang digunakan antara encoder dan decoder untuk sintaks sinkronisasi.

Ketahanan lebih error melalui pengaturan fleksibel MB dan irisan.

Data partitioning (DP) dan paketisasi irisan video ke tiga prioritas tingkatan untuk
memberikan perlindungan transmisi.

Transmisi Redundant beberapa daerah untuk meningkatkan ketahanan kehilangan data.

Sinkronisasi / beralih gambar untuk video streaming yang kuat.

Terlepas dari perbedaan yang disebutkan di atas, H.264 memiliki akar dalam standar codec
lainnya, terutama dalam standar H.263. Oleh karena itu, dalam menggambarkan codec dengan
tujuan

menangani

perubahan

tertentu,

diasumsikan

bahwa

pembaca

tidak

hanya

akrab dengan prinsip-prinsip kompresi video, diberikan dalam bab-bab sebelumnya,


tetapi juga telah membaca Bab 9 pada H.263. Namun, untuk membuat bab ini cukup berisi,
beberapa konsep penting dari standar sebelumnya ditinjau kembali.

11.1 Format Gambar


Standar H.264 mendukung video interlaced dan progresif. Sejak fungsinya distribusi video,
format gambar adalah 4 : 2 : 0, meskipun untuk kontribusi di mana warna-kualitas yang lebih
tinggi diperlukan, 4 : 2 : 2 juga dapat digunakan, serta 4 : Format 4 untuk tinggi 4 : 4 : 4 : 4
profil. Seperti standar codec lain, MB 16 : 16 pixel adalah unit dasar dari kompresi, yang, ketika
coding 4 : 2 : 0 sampel video, terdiri dari 16 : 16 luminance (luma) piksel dan 8 : 8 piksel untuk
setiap Cb dan Cr komponen warna chrominance (chroma). Setiap MB dapat opsional
dibagi lagi menjadi blok yang lebih kecil, yang disebut sub-MB, untuk memberikan
kemungkinan keuntungan kompresi yang lebih baik. Partisi selanjutnya adalah hasil dari tradeoff antara kompensasi gerak yang efisien dengan blok yang lebih kecil dan jumlah data yang
dibutuhkan untuk mewakili motion vector (MV) overhead. Berbagai partisi MB dibahas
di bagian estimasi gerak (bagian 11.3.1).

11.1.1 Irisan
Sekelompok MB merupakan potongan gambar, atau hanya sepotong. Dalam standar ini, irisan
struktur adalah bentuk sewenang-wenang, yang berbeda dari standar lainnya, seperti yang
ditunjukkan pada Gambar 11.1a. Untuk video interlaced, saat-MB adaptif bingkai / lapangan
(MB-AFF) decoding digunakan, gambar dipartisi menjadi irisan yang berisi jumlah integer MB
pasangan, seperti yang ditunjukkan pada Gambar 11.1b.

Gambar 11.1 (a) Sub-bagian gambar potong dan MB. (b) Irisans dengan
MB pasangan

Perbedaan jumlah MBs biasanya raster scan dari kiri ke kanan dan atas ke bawah untuk
membentuk sepotong. Bentuk lain dari struktur irisan, seperti flexible macroblock ordering
(FMO), juga tersedia yang dibahas dalam ketahanan kesalahan (Bagian 11.8.2). Tidak ada
kendala pada ukuran sepotong, ukurannya berkisar dari satu MB per irisan untuk gambar seluruh
per irisan.
Seperti biasa, irisan adalah kelompok mandiri MB, di mana mereka dapat dikodekan
dan diterjemahkan independen satu sama lain. Oleh karena itu, unsur-unsur sintaks setiap irisan
dapat diuraikan dari bit stream, dan bagian dari gambar dapat diterjemahkan independen
irisan lain. Hal ini tentu saja akan mengurangi keuntungan kompresi encoder, tetapi mencegah
propagasi error, yang penting untuk transmisi video. Namun, pada batas irisan informasi dari
irisan yang berdekatan digunakan dalam penyaringan deblocking.
Setiap potongan memiliki header yang mendefinisikan jenis irisan dan gambar yang
memiliki irisan. Data sepotong terdiri dari serangkaian kode dan / atau informasi tentang non
kode (dilewati) blok. Irisan melibatkan kepala tergantung pada bit rate, gambar konten, aktivitas
gerak, interlacing, iris berlebihan, dll Overhead maksimum per irisan bisa setinggi 54 byte, yang
merupakan angka yang sangat signifikan untuk bit rate rendah aplikasi. Berbagai bentuk irisan
dalam hal jumlah MB adalah sebagai berikut:

Satu irisan per gambar: Ini adalah potongan gambar sederhana di mana seluruh gambar
dikodekan sebagai salah satu irisan. Hal ini dapat menyebabkan ukuran paket yang lebih
besar dari apa komunikasi protokol (misalnya lapisan IP) dapat menangani, dan karena data
dapat terpecah-pecah selama transmisi.

Nomor tetap anggota parlemen per irisan: Gambar dibagi menjadi irisan, dengan jumlah MB
sama per irisan. Hal ini menyebabkan paket dengan panjang yang berbeda dalam bytes.

Nomor tetap byte per irisan: Gambar dibagi menjadi irisan yang memiliki hampir panjang
byte yang sama tetapi nomor yang berbeda dari MB per irisan. Dalam hal ini, biasanya
ukuran paket maksimum yang ditentukan, dan jika potongan lebih besar dari ukuran paket
maksimum yang ditetapkan, sisa byte masuk ke dalam paket kecil.

Irisan dapat dikelompokkan lebih salah ketahanan coding. Hal ini dibahas dalam bagian
ketahanan error (bagian 11.8.2).

11.1.2 Jenis Irisan


Tidak seperti standar lain di mana alat-alat coding yang ditetapkan untuk jenis gambar, di H.264
mereka ditetapkan untuk jenis irisan. H.264 mendefinisikan lima jenis irisan, yang sebagai
berikut:

I-irisan: Sepotong dimana semua MB yang kode intra.

P-irisan: Selain intra kode MB, beberapa MB bisa saling diprediksi dengan paling banyak
satu sinyal prediksi gerak-kompensasi per blok.

B-irisan: Selain coding tersedia untuk P-irisan, beberapa MB bisa saling diprediksi dengan
dua prediksi gerak-kompensasi.

Switching prediktif (SP)-irisan: Sebuah irisan / gambar yang digunakan untuk efisien beralih
antara dua referensi untuk mencegah gambar melayang.

Switching intra (SI)-irisan: Digunakan untuk akses acak untuk bit stream serta untuk
pemulihan kesalahan.

Pada bagian berikut, kami menjelaskan bagaimana I-, P- dan B-irisan dikodekan, dan
Bagian 11.8.7 pada video coding yang kuat, SP dan SI-irisan dijelaskan.
Perlu menekankan bahwa dalam H.264, tidak ada kepala gambar tradisional, meskipun
ada pembatas gambar opsional. Hal ini opsional disisipkan di antara kode gambar untuk
menunjukkan awal dari sebuah gambar baru dan untuk menunjukkan jenis irisan yang
dikandungnya. Semua irisan mewakili gambar tidak perlu menjadi sama jenis, sehingga gambar
bisa terdiri dari campuran I-, P- dan B-irisan. Selain itu, Struktur irisan dapat berbeda dari satu
gambar yang lain. Meskipun demikian, untuk kesederhanaan deskripsi, dan sejalan dengan
kebanyakan implementasi, seseorang dapat mempertimbangkan bahwa semua jenis potongan
gambar yang sama dan, karena menentukan gambar tertentu. Oleh karena itu, kita juga dapat
mendefinisikan kelompok gambar (GOP) untuk H.264 untuk menyorot keberadaan anchor (key)
gambar. Hal ini dibahas dalam bagian 11.12 di scalable coding video.

11.1.3 Sebuah gambaran dari encoder


Sebelum menjelaskan bagaimana kode irisan ini, perlu dicatat bahwa H.264 menggunakan
encoder generik Gambar 3.19, dijelaskan dalam Bab 3. Artinya, MB dibagi ke blok yang lebih
kecil (di sini 4 x 4), maka baik intra maupun antar kode. Itu piksel sisa yang dihasilkan dari
prediksi (intra atau inter) diubah, zigzag scan dan quantised, dan bersama dengan parameter

pengkodean lainnya, seperti penanganan, MV adalah entropi kode untuk lebih lanjut
pengurangan bit rate. Salinan terkompresi MB direkonstruksi akan digunakan untuk prediksi MB
yang akan datang. Itu decoding loop encoder juga berisi penyaringan deblocking serta beberapa
toko gambar untuk prediksi gambar referensi beberapa, yang dibahas dalam rincian nanti.
Struktur seperti ini mirip dengan codec H.263 Gambar 9.21.
Tidak ada elemen tunggal dalam encoder ini yang dapat mengklaim perbaikan
keseluruhan dalam coding efisiensi, tetapi itu adalah kombinasi dari perbaikan kecil yang
menambahkan hingga untuk seluruh keuntungan dalam kompresi. Pada bagian yang tersisa,
masing-masing elemen dijelaskan secara rinci.

11.1.4 Progresif dan kode salinan


Dalam coding video interlaced, untuk efisiensi kompresi yang lebih tinggi, desain H.264
memungkinkan encoders untuk kode gambar baik dalam bingkai atau dalam mode lapangan.
dalam frame modus, setiap MB yang terdiri dari 16 x 16 luma piksel dari dua bidang dikodekan
bersama-sama. Dalam modus lapangan, gambar pertama dibagi menjadi dua bidang, dan
kemudian 16 x 16 piksel luma dari masing-masing bidang mewakili MB. Pilihan ini ditandai
pada gambar parameter set (PPS) dan disebut bingkai / lapangan (PAFF) mode gambar-adaptif.
lapangan A MB adalah kode yang mirip dengan frame MB, tetapi referensi MV harus berasal
dari lapangan gambar, dan pemindaian zigzag berbeda. Juga, deblocking penyaringan yang kuat
tidak boleh digunakan dalam tepi horisontal untuk blok lapangan, karena baris lapangan secara
spasial dua kali terpisah sejauh baris frame dan panjang penyaringan sehingga mencakup
wilayah spasial yang lebih besar. Gambar 11.2 menunjukkan kerangka dan lapangan zigzag scan.

Gambar 11.2 scan Zigzag: (a) kerangka memindai dan (b) bidang pemindaian

Bingkai coding yang lebih baik untuk konten progresif serta rinci bergerak lambat konten
interlaced. Di sisi lain, bidang coding yang lebih baik untuk konten bergerak cepat. Namun, jika
konten adalah campuran dari kedua jenis, yang terbaik adalah kode jika bingkai lokal / adaptasi
lapangan dapat dibuat. Untuk alasan ini, H.264 mendefinisikan tipe blok baru dibuat naik dari
pasangan vertikal berdekatan MB (Gambar 11.1). Ketika mode ini dipilih, pasangan MB ini
kemudian dibagi menjadi dua 16 x 16 MB baik bingkai atau lapangan, seperti ditunjukkan pada
Gambar 11.3. Ini modus blok-by-blok adaptasi disebut macroblock adaptif bingkai / lapangan
MB-AFF modus. Kehadiran MB-AFF dapat menandakan di set parameter urutan, seperti yang
biasanya diterapkan pada gambar seluruh secara berurutan dan tidak berubah dari gambar ke
gambar. Frame dan lapangan MB dikodekan mirip dengan MB masing-masing PAFF, seperti
yang dibahas di atas. Ini harus mencatat bahwa seluruh bab ini, gambar yang digunakan sebagai
istilah umum untuk kedua bingkai dan lapangan, dan jika bingkai atau lapangan secara khusus
dimaksudkan, mereka secara eksplisit disebutkan.

Gambar frame mode / lapangan 11.3 MB-adaptif: (a) 16 x 32 blok pasangan, (b) dua
bingkai pasangan MB dan (c) dua pasangan MB lapangan

11.1.5 Macroblock elemen sintaks


Sejak MB adalah unit encoding dasar dari setiap video codec standar, untuk decoding yang tepat
gambar, decoder perlu tahu bagaimana MB diberi kode. Informasi ini dikenal sebagai sintaks
MB, dan unsur-unsurnya meliputi MB tipe (mb_type), yang menentukan intra, antar dan dua
arah prediksi sifatnya (I, P dan B), mode, di mana untuk intra dan inter-MB apa prediksi mereka
telah menggunakan serta daftar (lihat Bagian 11.3). MV ditangani secara berbeda, dan prediksi

sub_mb mendefinisikan bagaimana partisi dari MB diperkirakan. delta mb_qd menunjukkan


perubahan Parameter quantiser (QP), dan offset menunjukkan QP relatif kroma untuk luma. Pola
blok kode (CBP), seperti standar lainnya, mendefinisikan yang blok dari MB adalah tidak
dikodekan, bagaimana mereka ditangani dan akhirnya, di mana transformasi koefisien.

11.2 Prediksi Intra


MB kode Intra digunakan dalam semua jenis irisan, dan untuk kompresi efisien, mereka secara
spasial prediksi kode. Prediksi spasial yang dibuat dari decode blok pixel ke kiri dan / atau di
atas blok arus dari gambar yang sama. ini adalah perbedaan besar dalam coding intra antara
H.264 dan standar sebelumnya, seperti sebagai H.263+ dan MPEG-4 visual, yang menggunakan
prediksi dalam mengubah domain (lihat Bagian 9.6.4).
Prediksi spasial didasarkan pada gagasan bahwa MB yang berdekatan cenderung
memiliki serupa tekstur, meningkatkan kualitas sinyal diprediksi. Karena blok yang berdekatan
mungkin

antar

kode, untuk mencegah kesalahan propagasi, kendala prediksi intra dapat dikenakan prediksi
seperti yang seharusnya hanya datang dari daerah intra kode.
Ada tiga jenis mode pengkodean intra untuk luma dikenal sebagai intra 4 x 4, intra 16 x
16 dan saya _PCM, meskipun intra 8 x 8 tidak juga ada, yang menggunakan sejenis Pola prediksi
untuk intra 4 x 4 (lihat nanti dalam bagian ini). Dalam intra 4 x 4 Modus, sebuah MB dibagi
menjadi 16 blok ukuran 4 x 4 piksel dan masing-masing memiliki independen Modus prediksi
yang ditentukan; ini paling cocok untuk daerah gambar dengan signifikan detail. Dalam intra 16
x 16 modus, semua piksel dari MB menggunakan mode prediksi yang sama. Di PCM, prediksi
dan transformasi yang dilewati, dan baku nilai-nilai piksel (PCM) akan dikirim tanpa melakukan
prediksi apapun dan mengubah coding; mode ini terutama ditujukan untuk mencegah perluasan
data saat encoding pada kualitas yang sangat tinggi.

11.2.1 Intra 4 x 4
Dalam intra 4? 4 Modus, masing-masing 4? 4 blok diproyeksikan spasial dari tetangga
dikodekan dan direkonstruksi blok. Ada total sembilan mode prediksi di mana delapan terarah
dan satu DC. Dalam Gambar 11.4a, pixel dari 4? 4 blok untuk diprediksi diberi label a-p. Pixel
prediksi adalah piksel perbatasan A-H di baris horisontal atas dan M-L di barisan vertikal kiri

blok saat yang berasal dari blok direkonstruksi masa lalu sebagai blok referensi. Delapan
directional prediksi ditunjukkan pada Gambar 11.4b berlabel 0-8 dan dikenal sebagai modus 0
(vertikal), modus 1 (horizontal), modus 3 (diagonal ke bawah kiri), mode 4 (diagonal bawah
kanan), modus 5 (vertikal kanan), modus 6 (horizontal bawah), modus 7 (vertikal kiri), modus 8
(horizontal up) dan mode DC non directional 2. Gambar 11.5 menunjukkan arah dari berbagai
modus diterapkan pada pixel dari blok saat ini. Prediksi untuk mode 0 dan 1 masing-masing
adalah, bagian atas dan piksel perbatasan kiri. Dalam mode 2, prediksi adalah rata-rata empat
dan empat piksel perbatasan kiri. Untuk enam lainnya mode, berbagai kombinasi piksel
perbatasan, bahkan dalam mode, digunakan. Untuk Misalnya, dalam mode 3 (diagonal ke bawah
kiri), prediksi untuk sampel
a: (A + 2B + C + 2) >> 2
b dan c: (B + 2C + D + 2) >> 2
c, f dan i: (C + 2D + E + 2) >> 2
tapi prediksi dengan contoh p: (G + 3H + 2) >> 2

(11:1)

Pembaca harus berkonsultasi rancangan rekomendasi untuk rincian [3], seperti untuk beberapa
mode, karena ketersediaan piksel perbatasan dan prediksi arah, kompleks campuran piksel
perbatasan yang digunakan.
Hal ini jelas bahwa jika tekstur blok di setiap arah ini, prediksi kesalahan akan minimal,
sehingga pengurangan bit rate. Modus DC melakukan hal yang sama jika blok polos tanpa detail
yang signifikan. Perhatikan bahwa setiap 4 x 4 blok dapat menggunakan Modus prediksi yang
berbeda.

Gambar 11.4 Intra 4 x 4 prediksi: (a) sampel prediksi dan (b) prediksi
arah

Gambar 11.5 Intra 4 x 4 mode prediksi

Dalam kasus sampel prediksi E-H tidak tersedia untuk mode 3 dan 7, mereka diganti
dengan sampel D.

11.2.2 Intra 16 x 16
Dalam intra 16 x 16, MB diperlakukan secara keseluruhan, tetapi dengan hanya empat prediksi
mode. Mereka adalah mode 0 (vertikal), modus 1 (horizontal), mode 2 (DC) dan modus 3
(pesawat) seperti yang ditunjukkan pada Gambar 11.6. Mode ini mirip dengan yang sesuai mode
di intra 4 x 4, dengan perbedaan dalam ukuran blok. Prediksi pesawat menggunakan prediksi
linier antara piksel tetangga ke kiri dan atas untuk memprediksi pixel saat ini.

Gambar 11.6 Intra 16 x 16 mode prediksi

Intra 16 x 16 efisien di daerah rinci halus dan rendah, karena memiliki banyak overhead yang
lebih rendah dari intra 4 x 4. entropi overhead per MB untuk mantan 2 bit (4 mode), dan untuk
yang kedua, nilai ini adalah 16 x log2(9) ~ 51 bit! Di Sebaliknya, intra 4 x 4 dengan sembilan
prediktor arah dan ukuran blok kecil (piksel sangat dekat dengan prediksi) mengakibatkan residu
kecil, mengurangi transformasi bit koefisien. Untuk mengurangi biaya overhead dan, pada saat

yang sama, untuk bersenang-senang prediktor, standar juga mendefinisikan intra 8 x 8. Dalam
mode ini, masing-masing 8 x 8 blok juga menggunakan sembilan prediksi arah, mirip dengan
intra 4 x 4, dan karenanya, overhead hanya 4 x log2(9) ~ 13 bit. Namun, karena piksel dalam
blok 8 x 8 yang jauh jauh dari prediksi mereka daripada 4 x 4 blok, residu yang lebih besar,
mengurangi gain kompresi.

11.2.3 Prediksi Chroma


Karena kroma biasanya halus di daerah yang luas, prediksi intra yang mirip dengan sampel luma
intra 16 x 16. Namun, modus penomoran berbeda, dan prediksi yang dilakukan pada 8 x 8
sampel dari setiap kroma MB. Dalam kroma intra, mode prediksi didefinisikan sebagai modus 0
(DC), modus 1 (horizontal), modus 2 (vertikal) dan modus 3 (pesawat).

11.2.4 I_PCM
Akhirnya, saya PCM adalah modus coding intra lain, tetapi seperti yang dinyatakan sebelumnya,
encoder melewati prediksi dan transformasi dan data dikirim dalam PCM mentah Format. Modus
I_PCM membantu secara akurat mewakili nilai-nilai yang Isi gambar anomali tanpa ekspansi
data yang signifikan. Hal ini juga menempatkan keras membatasi pada jumlah bit per MB
decoder harus menangani tanpa mengorbankan efisiensi coding.

11.3 Inter prediksi


IFS predictive coding mengacu pengkodean perbedaan antara piksel dari gambar saat ini dan
yang diperkirakan dari referensi gambar. Gambar-gambar referensi adalah gambar dikodekan
sebelumnya, dan kedua encoder dan decoder mempertahankan daftar foto-foto ini dalam buffer
gambar decode (DPB). gambar yang digunakan untuk prediksi blok di P-iris disebut dalam daftar
0, dan untuk B-iris, yang referensi gambar dibagi menjadi dua daftar: daftar 0 dan 1. Kedua
daftar daftar dapat berisi gambar sebelumnya dan masa depan, dan karenanya, di H.264, blok di
P-iris juga bisa diprediksi dari gambar masa depan.
Dalam prediksi multipicture, selama encoding, itu ditentukan apakah sebelumnya gambar
didekode akan digunakan sebagai gambar referensi di masa mendatang dan, jika itu adalah
gambar referensi, apakah harus milik jangka pendek referensi atau panjang Istilah. Sebuah
gambar referensi jangka pendek biasanya yang terbaru, dan jangka panjang gambar referensi

adalah salah satu yang paling mungkin untuk digunakan untuk prediksi banyak gambar yang
akan datang. Keputusan ini dilakukan oleh gambar referensi sistem manajemen. Sistem ini juga
menggunakan jendela geser, dengan ukuran menentukan jumlah maksimum referensi gambar
jangka pendek dan jangka panjang, sehingga ketika gambar referensi baru-baru ini ditambahkan
ke dalam daftar, sebuah foto lama dihapus dari daftar. Sistem ini juga memutuskan apakah
gambar referensi baik pendek atau panjang istilah untuk B-iris harus milik daftar 0 atau daftar 1.
Karena IFS coding melibatkan prediksi gerak-kompensasi, dalam hal estimasi gerak,
antar bingkai coding di H.264 memiliki tiga perbedaan yang jelas dari standar sebelumnya, yaitu
1. blok variabel estimasi ukuran gerak, Presisi
2. perempat pixel MVC dan
3. beberapa gambar referensi kompensasi gerak.

11.3.1 blok Variabel estimasi ukuran gerak


Dalam standar sebelumnya, estimasi gerak / kompensasi dilakukan pada tetap Ukuran blok 16 x
16 piksel (8 x 8 juga dalam H.263). Blok besar tidak cocok untuk estimasi gerak ketika ukuran
blok sebanding atau lebih besar dari ukuran obyek bergerak. Hal ini terutama terjadi untuk
gambar QCIF, di mana blok besar mungkin mengandung gerakan di beberapa arah. Tentunya,
kompensasi gerak blok tersebut tidak masuk akal. Juga, untuk format gambar-ukuran yang lebih
besar, seperti SD dan HD, gerak benda di perbatasan mereka dapat lebih dikompensasikan
dengan ukuran blok yang lebih kecil. Di Sebaliknya, ukuran blok yang lebih kecil membutuhkan
biaya overhead yang besar. Untuk mengatasi masalah ini, H.264 telah memperkenalkan blok
variabel kompensasi ukuran gerak, yang memungkinkan MB untuk dibagi menjadi tujuh blok
ukuran yang berbeda seperti yang diilustrasikan pada Gambar 11.7.

Gambar 11.7 Jenis partisi blok

Dalam gambar, seorang luma MB 16 x 16 dapat dibagi menjadi 16 x 8, 8 x 16 dan 8 x 8


pixel sub-MB. Jika 8 x 8 sub-MB dipilih, maka dapat dibagi lagi menjadi blok-blok yang lebih
kecil dari 8? 4, 4 x 8 dan 4 x 4 piksel. Ini partisi MBs menjadi gerak-kompensasi sub-MB
kadang-kadang disebut gerak pohon-terstruktur kompensasi.
Partisi dari MB ke blok yang lebih kecil dilakukan bahwa biaya seperti coding dari MB
diminimalkan. Di daerah dataran, ukuran blok yang lebih besar memiliki lebih sedikit MV
overhead. Di sisi lain, ukuran blok yang lebih kecil di daerah rinci, walaupun memiliki lebih
besar MV biaya overhead, telah jauh berkurang kesalahan gerak-kompensasi, dan keseluruhan
bit rate berkurang. Beberapa blok gerak-kompensasi dengan baik tidak perlu mengubah kode dan
hanya diwakili oleh MV mereka (misalnya dilewati MB), dimana MV sendiri tidak perlu dikirim
sama sekali.
Ini mungkin tampak bahwa estimasi beberapa ukuran blok gerak meningkatkan gerak
estimasi kompleksitas dengan faktor tujuh. Tentu saja, dengan implementasi yang tepat, Volume
besar ini kompleksitas dapat disederhanakan. Dalam prakteknya, untuk setiap MB, gerak hanya
diperkirakan selama enam belas 4 x 4 ukuran blok, dan untuk setiap pencarian posisi, gerakankompensasi error (MCE) dalam bentuk jumlah perbedaan absolut (SAD) disimpan dalam buffer
tambahan. Untuk menurunkan MV untuk 4 x 8 blok, pertama, untuk setiap posisi (x, y), SAD
dari dua 4 x 4 blok konstituen diambil dari buffer. Jika bit diperkirakan terkait dengan jumlah
dua SD ditambah entropi dari MV baru kurang dari jumlah dua individu 4 x 4 blok bit
(diperkirakan bit mereka SAD ditambah bit MV mereka), kemudian 4 x 8 (atau 8 x 4) dapat
menggantikan dua 4 x 4 blok. Perhatikan bahwa untuk blok dua 4 x 8 (atau 8 x 4) untuk
menggantikan empat.
Juga, bagaimana mencari posisi terbaik (x, y) dalam buffer tambahan adalah soal masalah
pelaksanaan (standar tidak memiliki rekomendasi untuk setiap bagian encoder serta untuk
estimasi gerak), tetapi akal sehat mengatakan bahwa posisi pencarian (x, y) harus di sekitar dari
MV dari dua berpartisipasi 4 x 4 subblocks.
Dengan prosedur yang sama, dapat diuji jika empat 4 x 4 sub blok dapat diwakili oleh
satu 8 x 8 blok, serta penggabungan 8? 8 blok untuk lebih besar 8 x 16, 16 x 8 dan 16 x 16 blok.
Oleh karena itu, kompleksitas tambahan atas individu 16 pencarian gerak 4 x 4 sub blok
termasuk buffer tambahan, gerakan kecil perbaikan ditambah satu set rate distortion (RD)
optimisations. Bagian terakhir ini ditangani dengan beberapa rincian dalam bagian 11.7.

Sepanjang bab ini, kita melihat bahwa RD optimasi terlibat dalam hampir semua bagian
pengambilan keputusan H.264 encoder.
Posisi dari MV turunan predictively kode, dengan median kiri, atas dan kanan atas MV,
mirip dengan yang digunakan dalam H.263 (bagian 9.1.2). itu prediksi untuk MV dari sub blok
berasal dari MV tetangga dari blok matahari dalam MB.

11.3.2 Estimasi Gerak


11.3.2.1 estimasi gerak cepat di H.264
Sepanjang buku, pentingnya gerak kompensasi pengurangan bit rate telah menegaskan beberapa
kali. Kita telah melihat bahwa tidak ada codec baru dan bahwa strategi estimasi gerak belum
diperbaiki. Selain itu, karena gerak estimasi mengkonsumsi kekuatan pemrosesan utama encoder
(bisa mencapai 70 persen, terutama dengan beberapa gambar referensi), upaya untuk mengurangi
gerak kompleksitas estimasi telah lama hidup dengan perkembangan codec. Pada bagian 3.3,
beberapa algoritma estimasi gerak cepat diperkenalkan, di mana, melalui pencarian langkah
logaritmik, minima lokal berada. Sayangnya, ini metode bekerja dengan baik ketika area
pencarian kecil, dan mereka gagal ketika dinamis rentang gerak yang besar. Kabar buruknya
adalah bahwa ketika beberapa gambar referensi kompensasi gerak yang digunakan, rentang
pencarian dikalikan dengan gambar terjauh jarak, yang bisa setinggi 16 gambar (bisa lebih lama tergantung pada bagaimana yang DPB dikelola). Dalam seperti berbagai macam, penggunaan
langsung gerak cepat sebelumnya algoritma estimasi seperti TSS, TDA, CSA dan OSA semua
gagal.
Mengingat standar yang tidak merekomendasikan metode khusus untuk gerak estimasi
dan selama sintaks MV yang berasal sesuai dengan decoder persyaratan, encoders bebas untuk
memperkirakan sebagai yang terbaik yang mereka bisa. Dari beberapa proposal untuk estimasi
gerak cepat dalam dekade terakhir, metode yang mengeksploitasi korelasi spatio-temporal antara
MV spasial dan temporal yang berdekatan muncul untuk melakukan yang terbaik. Algoritma
pencarian zonal seperti lapangan MV prediksi pencarian adaptif Teknik (PMV CEPAT) dan
ditingkatkan pencarian zonal prediksi (EPZ) milik keluarga-keluarga yang memiliki kinerja RD
hampir sama dengan metode pencarian penuh (FSM), dan diklaim memiliki 1/200 dari
kompleksitas komputasi yang [6].

Metode pencarian zonal didasarkan pada tiga prinsip: memprediksi awal point untuk
pencarian, terminasi dini pencarian jika resultan gerak-kompensasi error kurang dari ambang
batas dan, akhirnya, penyempurnaan dari pencarian jika gerakan kompensasi error masih belum
memuaskan. Pada bagian berikut, metode ini yang dijelaskan secara singkat.

11.3.2.2 Seleksi Prediksi


Biaya pencarian berkurang secara signifikan jika titik awal pencarian adalah sebagai dekat
dengan posisi perpindahan akhir mungkin. EPZ menunjukkan empat himpunan bagian dari
prediktor untuk titik awal. Prediktor ini dipilih dalam urutan berikut prioritas mereka:

Subset 1: Median dari kiri, atas dan kanan atas (atau top-kiri) MV dari blok saat ini adalah
pilihan pertama untuk titik awal. Ini adalah posisi yang ideal, karena jika final MV ditemukan di
sekitar titik ini, yang mana MV predictively dikodekan dengan Prediksi itu nilai median, maka
overhead MV diminimalkan.

Subset 2: The MV dari blok collocated pada gambar sebelumnya, bersama dengan empat MV
kiri, atas-kiri, atas dan kanan atas blok saat ini juga yang (0,0) MV (Total enam), diuji. Salah
satu yang memberikan gerak-kompensasi kesalahan paling dipilih.

Subset 3: Penggunaan MV berdekatan atau collocated di subset 1 dan 2 berguna jika gerak
masing-masing homogen atau konstan. Ketika gerakan antara gambar bervariasi, menambahkan
akselerasi / deselerasi dengan gambar-gambar MV sebelumnya meningkatkan prediksi
kehandalan. Dalam hal ini, misalnya, perbedaan antara MV gambar n - 2 dan n - 3, MVn 2 MVn - 3 dapat ditambahkan ke collocated gambar MVAt n - 1, mvn - 1 untuk membuat prediksi
untuk blok saat ini. Pada tahap ini, delapan sekitarnya MV blok colocated juga dapat diimbangi
dengan akselerator ini / decelerator dan digunakan sebagai calon. Tampaknya bahwa di antara
delapan kandidat, blok diagonal yang tidak sangat berguna, dan untuk menghemat biaya
komputasi, mereka dapat diabaikan, dan MV blok colocated ditambah empat kiri, kanan, atas,
dan bawah blok, setelah offset, menjadi lima kandidat di bagian 3.

Subset 4: Meskipun prediksi subset sebelumnya memberikan hasil yang hampir baik, ada
kalanya gerakan tidak dapat diprediksi, dan dalam hal ini, diatur sebelumnya posisi pencarian
tetap mungkin lebih disukai. Posisi ini dapat spasi baik sama atau logaritmis sekitar pusat utama
(0,0) atau bahkan di sekitar yang terbaik prediktor bagian manapun. Kepadatan dan jumlah posisi
ini mendefinisikan kompleksitas dan kualitas pencarian, posisi sebagai spasi erat sama dengan
penuh pencarian. Gambar 11.8 menunjukkan grid posisi sama spasi untuk berbagai pencarian 16
piksel.

Gambar 11.8 Tambahan prediktor jaringan tetap untuk kisaran pencarian 16

11.3.2.3 Terminasi dini


Dalam mencari prediktor yang baik dalam bagian manapun, jika resultan gerak-kompensasi
kesalahan memuaskan, yaitu, itu adalah kurang dari ambang batas, pencarian dapat dihentikan.
Untuk menemukan ambang batas yang tepat, seseorang mungkin menganggap bahwa kesalahan
gerak kompensasi blok yang berdekatan, mirip dengan MV itu sendiri, cenderung sangat
berkorelasi. Oleh karena itu, ukuran kesalahan gerak-kompensasi masa lalu dapat digunakan
sebagai ambang batas. Nilai ambang batas dapat bervariasi dari bagian subset dan dapat
bergantung pada blok ketik serta jarak temporal gambar referensi ke gambar saat ini. Meskipun
menetapkan ambang batas yang sesuai terlihat sederhana, itu harus dilakukan dengan hati-hati.
Nilai terlalu kecil ambang tidak dapat menyebabkan pemutusan awal, dan karenanya, pencarian

prediktor terbaik yang terbuang. Nilai terlalu besar dapat menyebabkan terminasi dini,
menghasilkan MV palsu, mengganggu gerak kompensasi efisiensi.

11.3.2.4 Gerak vektor perbaikan


Dengan nilai ambang batas yang tepat, jika terminasi dini tidak terjadi, itu berarti bahwa estimasi
MV, sejauh ini, tidak diinginkan dan penyempurnaan lebih lanjut diperlukan. Itu pencari
tambahan sekitar yang terbaik diprediksi MV dari empat subset mungkin memiliki berbagai pola
dan rentang. Gambar 11.9 menunjukkan beberapa pola, seperti berlian kecil, pola berlian persegi
dan besar [6].
Semua ini dapat berulang digunakan untuk memperbaiki MV. Iterasi berarti bahwa pada
akhir pencarian semua poin, posisi dengan distorsi paling menjadi pusat baru dan pencarian
diulang, seperti yang ditunjukkan pada Gambar 11.10. itu Pencarian dapat dihentikan di kedua
pertemuan nilai ambang batas atau mencapai maksimum rentang pencarian.

Gambar 11.9 Pola Cari: (a) diamond kecil, (b) persegi dan (c) berlian besar

Gambar 11.10 Iterasi pencarian untuk (a) diamond kecil dan (b) berlian besar

11.3.3 Presisi pecahan vektor gerak


Sama pentingnya dengan blok variabel ukuran kompensasi gerak adalah sedikit pecahan
representasi dari MV. Pada bagian 9.4.3, itu menunjukkan bahwa presisi setengah-pixel
kompensasi gerak dapat meningkatkan gain kompresi encoder oleh hampir 2 dB. Dalam H.264,
ketepatan perkiraan gerak untuk luma dan chroma sampel dapat sampai seperempat dan satu per
delapan pixel, masing-masing, baik horisontal dan arah vertikal. Untuk memperkirakan gerak
dengan presisi pecahan-pixel, estimasi MV menunjuk ke lokasi sampel integer bagian
sebelumnya menjalani putaran perbaikan. Dalam babak ini, blok saat ini kontras terhadap pixel
interpolasi dari blok referensi dari posisi integer. Selama setengah sampel presisi, interpolasi
dilakukan oleh enam tap penyaringan FIR vertikal dan horizontal. Untuk kuartal-pixel gerak
kompensasi, interpolasi dilakukan dengan rata-rata sampel pada posisi setengah-pixel sudah
ditemukan atau posisi bilangan bulat mereka, sebagai perlu [7].
Gambar 11.11 menunjukkan interpolasi pada posisi sampel pecahan untuk luma yang
Sampel a-s di dalam kotak. Dalam gambar, sampel bilangan bulat ditemukan di putaran pertama
pencarian akan ditampilkan dalam blok berbayang dengan huruf besar. Sampel diinterpolasi

Gambar 11.11 Posisi integer setengah dan seperempat-pixel

dengan seperempat sampel presisi ditunjukkan pada blok unshaded dengan huruf kecil surat. Untuk
setengah-sampel interpolasi seperti itu pada posisi b dan h, enam-tap menyaring dengan koefisien (1, - 5,
20, 20, - 5, 1) digunakan dalam operasi dua langkah. Pertama, nilai-nilai antara b1 dan h1 berasal dengan

menerapkan penyaringan horizontal dan vertikal, masing-masing, pada posisi bilangan bulat A, C, E,. . .
dari angka sebagai

Nilai akhir b dan h dihitung dengan pembulatan dan kliping di atas nilai-nilai dalam kisaran 0 255:

Nilai setengah sampel di pusat j, berasal dengan cara yang sama dan dapat dilakukan dengan dua
cara:

dan bulat dan dipotong dalam kisaran 0-255.

Tersisa setengah sampel nilai dan m dihitung sama dengan b dan h, dengan
nilai akhir

Nilai setengah-sampel ini digunakan untuk menurunkan perempat sampel luma nilai a, c, d, n, f,
i, k dan q. Mereka diperoleh dengan rata-rata dan pembulatan hingga sampel terdekat di bilangan
bulat dan setengah sampel posisi. Sebagai contoh, nilai diinterpolasi untuk di Gambar 11.11
adalah

Posisi yang tersisa seperempat sampel berlabel, misalnya, p dan r, berasal dengan rata-rata dan
mengumpulkan setengah sampel terdekat pada posisi diagonal. Untuk Misalnya, diinterpolasi
nilai e pada Gambar 11.11 adalah

11.3.3.1 Interpolasi Chroma

Sebagai sistem visual manusia lebih sensitif terhadap kecerahan dari warna, gerak estimasi
biasanya dilakukan pada luma tersebut. Untuk 4 : 2 : 0 format gambar, perkiraan MV yang
diperkecil dengan faktor 2 dan digunakan untuk mengkompensasi kroma. Kedua sampel chroma
(Cb dan Cr) dipartisi mirip dengan MB luma, dengan Perbedaan bahwa resolusi horisontal dan
vertikal dibelah dua dan MV mereka memiliki maksimum presisi seperdelapan-pixel. Partisi
chroma MB (lihat Gambar 11.12) mirip dengan partisi luma Gambar 11.7, dengan pengecualian
bahwa ukuran blok terbesar adalah 8 x 8 dan ukuran terkecil 2 x 2.

Gambar 11.12 partisi Chroma

Prediksi komponen chroma pada posisi sampel seperdelapan adalah diperoleh dengan
interpolasi bilinear posisi bilangan bulat seperti yang ditunjukkan pada Gambar 11.13, tanpa
penyaringan tambahan. Posisi bilangan bulat chroma Ini adalah tetangga untuk setengah
pencahayaan panjang MV dipotong, dan sisanya dari divisi mendefinisikan posisi seperdelapan
dari sampel yang akan diinterpolasi. Sebagai contoh, sampel label diinterpolasi sebagai

Gambar 11.13 Interpolasi dari kroma dengan posisi sampel seperdelapan

Dengan nilai yang diberikan dari dx = 2 dan dy = 3 pada Gambar 11.13, yang diinterpolasi
Nilai dari menjadi

11.3.4 Kompensasi gerak dan jenis irisan


11.3.4.1 P-skip
Daerah gambar tanpa perubahan dan efisien hasil kompensasi gerak di kecil sinyal error IFS
dengan hampir tidak ada koefisien transformasi yang signifikan (residu). Jika daerah ini juga
mengandung gerakan konstan seperti panning lambat, maka diferensial MV mungkin juga nol.
Dalam kasus ketika semua residu adalah nol, diferensial yang MV adalah nol, dan gambar
referensi memiliki indeks 0 dalam daftar 0, ada informasi tambahan tentang residual atau MV
dan gambar referensi indeks dituntut untuk ditransmisikan. Seperti blok P-iris disebut P-skip, dan
blok dibangun dari gambar referensi dengan indeks 0 dalam buffer. Metode ini berlaku sama
untuk semua panjang blok, 4 x 4 sampai 16 x 16.

11.3.4.2 Gerak kompensasi B-iris


Dalam H.264, konsep B-gambar yang umum dan berbeda dari yang di standar sebelumnya.
Dalam codec baru ini, B-iris diperbolehkan untuk digunakan sebagai referensi selama B-irisan,
sedangkan pada standar sebelumnya, B-gambar tidak dapat digunakan sebagai referensi. Hal ini
menciptakan hirarki B-gambar, dan juga dikenal dengan ini Nama. Karena dalam hirarki ini, Bgambar bisa dekat dengan referensi mereka (yang lain B-picture), jumlah mereka bisa sangat
panjang, meningkatkan efisiensi kompresi. Perhatikan bahwa dalam standar lain yang tidak
menggunakan B-gambar untuk prediksi, meningkatkan jumlah B-gambar di luar beberapa
gambar mengurangi efisiensi kompresi, daripada memperbaikinya. Rincian lebih lanjut dari
hirarki B-gambar yang diberikan di bagian skalabilitas sementara 11.12.
Dalam H.264, B-gambar mendukung dua daftar referensi gambar, daftar 0 dan daftar 1,
dan menggunakan empat jenis prediksi:
1. daftar 0 prediksi
2. daftar 1 prediksi
3. prediksi
4. prediksi langsung

Dalam daftar yang menyertakan gambar referensi adalah keputusan yang diambil oleh
multireference yang Kontrol penyangga gambar. Biasanya, referensi gambar dalam daftar 0 dan
daftar 1 disusun sebagai berikut:
Daftar 0: Indeks dimulai dari gambar terakhir temporal terdekat, diikuti oleh sisa gambar
masa lalu dan kemudian gambar masa depan.
Daftar 1: Hal ini nomor mulai dari gambaran masa mendatang temporal terdekat, diikuti
dengan masa depan yang tersisa dan kemudian melewati gambar.
Dalam modus prediksi, rata-rata tertimbang dari prediksi gerak-kompensasi sinyal dari daftar 0
dan daftar 1 diambil sebagai:

di mana P (i, j) adalah contoh prediksi dan P0 (i, j) dan P1 (i, j) adalah prediksi Sinyal yang
berasal dari daftar 0 dan 1. daftar Prediksi ini kemudian dikurangkan dari MB sinyal dari gambar
saat di lokasi.
Dalam modus langsung, tidak ada MV ditransmisikan, dan pada decoder, mereka
disimpulkan dari daftar 0 dan 1 daftar MV, mengetahui vektor kode sebelumnya. Secara umum,
meskipun tidak memiliki MV, blok mungkin berisi koefisien transformasi. Jika transformasi
koefisien juga nol, maka, seperti modus P-skip, blok ini disebut B-skip. Namun, B-skip
didefinisikan di tingkat MB, namun modus langsung secara umum didefinisikan di tingkat subMB. Dengan demikian, selain untuk memblokir perbedaan ukuran, unsur utama Modus
diskriminasi langsung dari modus skip bahwa mantan berisi beberapa koefisien transformasi,
tetapi yang terakhir telah ada.

11.3.4.3 Beberapa referensi film kompensasi


Sintaks H.264 mendukung beberapa gambar referensi kompensasi gerak kontras dengan standar
sebelumnya, di mana hanya satu gambar referensi yang digunakan dalam P-gambar dan paling
banyak dua gambar referensi di B-gambar. beberapa referensi film kompensasi meningkatkan
efisiensi kompresi dengan membiarkan encoder untuk memilih dari sejumlah referensi gambar.
Baik encoder dan decoder harus memiliki gambar yang sama diterjemahkan dalam buffer. Setiap
bagian dari sub-MB bisa merujuk ke gambar yang berbeda, tetapi sub partisi dari 8 x 8 blok
menggunakan yang sama gambar referensi (indeks) untuk semua sub blok di 8 x 8 wilayah.
referensi A indeks untuk setiap referensi gambar digunakan ditransmisikan. Gambar 11.14

menunjukkan bagaimana berbagai partisi dari MB saat ini dari B-irisan menggunakan prediksi
gerak-kompensasi mereka dari berbagai referensi. Dalam gambar ini, sebagai contoh, atas-kiri 8
x 8 blok dalam gambar n menggunakan dua gambar referensi, salah satu dari gambar n + 1 dan
yang lain dari gambar n - 3 (prediksi dua arah). Empat 4 x 4 blok dari bagian kanan 8 x 8 partisi
menggunakan gambar referensi yang sama n - 2. Kedua 4 x 8 blok dari bawah-kiri 8 - 8 juga
menggunakan gambar referensi n yang sama? 1. Akhirnya, bagian bawah memblokir kanan 8 x 8
menggunakan prediksi dari gambar n - 1. Perhatikan bahwa dua bagian yang berbeda dari MB
dapat menunjuk gambar referensi yang sama, meskipun di lokasi yang berbeda.

Gambar 11.14 Multipicture gerak kompensasi prediksi

Menggunakan sejumlah besar referensi gambar berpotensi dapat meningkatkan gerakan


Efisiensi kompensasi karena penggunaan yang lebih beragam dan temporal jauh daftar gambar.
Standar H.264 memungkinkan hingga 16 gambar referensi untuk gerakan estimasi. Foto-foto ini
diselenggarakan dalam dua daftar yang berbeda. Tergantung pada MB jenis, P atau B, setiap
blok dapat diprediksi menggunakan satu atau dua daftar referensi gambar. Untuk P MB, setiap
partisi memilih prediksi dari satu gambar dalam daftar 0, tetapi partisi MB B dapat menggunakan
dua prediksi, salah seorang dari daftar 0 dan satu lagi 1 dari daftar.

11.3.4.4 Beberapa referensi gambar tertimbang prediksi


Prediksi tertimbang digunakan untuk skala efek relatif dari MV dari berbagai referensi gambar.
Dalam standar sebelumnya, prediksi tertimbang tidak digunakan dalam MBs P, dan di B MB, itu
adalah rata-rata sederhana dari dua prediksi sinyal, yaitu, (P0 + P1) / 2. Dalam H.264, konsep
prediksi tertimbang tidak hanya diberikan kepada P MB tetapi juga dengan faktor bobot yang
berbeda.

Gambar 11.14 juga dapat digunakan untuk menggambarkan konsep referensi beberapa
gambar prediksi tertimbang, dimana prediksi dipilih dari berbagai referensi yang benar berbobot
dan digunakan sebagai prediksi bingkai antar akhir untuk saat ini block. Ada dua mode untuk
pembobotan kompensasi gerak gambar. Dalam modus eksplisit, faktor pembobotan untuk setiap
prediksi yang digunakan untuk kedua P dan B-iris dikirim ke decoder. Dalam modus implisit,
yang diterapkan B-iris, faktor bobot ditentukan oleh jarak temporal referensi gambar dari gambar
saat ini. Dekat gambar referensi ke gambar saat ini, yang lebih besar adalah faktor bobot dan
sebaliknya.

11.4 Transformasi dan kuantisasi


11.4.1 Transformasi
Serupa dengan standar sebelumnya, residu pixel (intra atau inter) yang transformasi kode ke
menyingkat rinci residu spasial ke dalam beberapa koefisien transformasi. Transformasi
koefisien kemudian quantised untuk pengurangan redundansi dan entropi kode untuk bit rate
reduksi. Namun, H.264 menggunakan ukuran blok yang lebih kecil dari 4 x 4 Mengubah integer
bukan 8 x 8 DCT. Ini termasuk semua 16 luma dan 4 masing-masing blok chroma dalam MB.
Transformasi Matriks mendekati 4 x 4 DCT dengan nilai integer, mengingat dengan

Ini mengubah, selain kesederhanaannya, yang dapat diwujudkan melalui pergeseran dan
menambahkan operasi pada 16-bit bilangan bulat, memiliki transformasi invers yang tepat, dan
karenanya, ada ada ketidakcocokan transformasi. Hal ini sangat berguna untuk lossless
pengkodean video yang konvensional DCT tidak dapat menyediakan.
Agar perkiraan matriks transformasi untuk menjadi ortonormal, yang dua dimensi
mengubah koefisien (setelah transformasi horisontal dan vertikal kemudian) adalah posting
dikalikan dengan matriks maju-skala Ef:

Artinya, dimensi dua koefisien transformasi TC blok piksel P diberikan oleh

dimana T adalah singkatan dari transpos dari matriks dan unsur-by-elemen (Kronecker) produk.
Dengan demikian, final dua dimensi koefisien transformasi menjadi Artinya, dimensi dua
koefisien transformasi TC blok piksel P adalah diberikan oleh

Juga, matriks transformasi inverse didefinisikan sebagai

Karena orthonormality, the-dimensi dua koefisien transformasi sebelum invers transformasi yang
berbobot dengan skala matriks kebalikan dari Ei:

Dan karenanya, blok pixel P direkonstruksi dari koefisien transformasi TC menjadi

Dimana a = and b =

. Perhatikan posisi matriks dialihkan dala maju dan terbalik

transformasi, serta posisi produk Kronecker.


Untuk intra 16 x 16, sejak empat prediksi spasial tidak dapat menghapus semua redudansi
spasial, nilai-nilai DC dari semua enam belas 4 x 4 blok melakukan acara korelasi yang tinggi.
Untuk menguranginya, standar mendefinisikan kedua mengubah, tipe 4 x 4 Hadamard, seperti

untuk diterapkan pada nilai-nilai DC dari 4 x 4 bilangan bulat koefisien transformasi.


Demikian pula, nilai-nilai chroma DC, karena arah prediksi miskin, menjalani 2 x 2 Hadamard
Transformasi

Hal ini menciptakan hirarki Kode intra mengubah koefisien, dan transmisi mereka order
ditunjukkan pada Gambar 11.15. Jika MB adalah tipe intra 16 x 16, blok dengan label - 1
ditransmisikan. Blok ini berisi semua koefisien DC dari luma yang 4 x 4 blok. Hal ini diikuti
oleh koefisien dalam blok 0-25, di mana blok 0-15 berisi koefisien luma AC dan blok 16 dan 17
berisi koefisien DC dari kroma tersebut. AC koefisien mereka berada di blok 18-25. Perhatikan
bahwa untuk non intra 16x16, tidak ada label blok - 1, dan blok 0-15 berisi semua koefisien
luma, termasuk yang DC.

Gambar 11.15 urutan Transmisi koefisien MB

Untuk profil tinggi H.264, matriks transformasi di horisontal dan vertikal arah bisa menjadi 8 x 8
mengubah integer. Ini adalah perkiraan 8 x 8 DCT dan didefinisikan sebagai

Dengan demikian, dengan H.264, blok 4 x 8, 8 x 4 dan 8 x 8 juga dapat dikodekan, tetapi standar
hanya merekomendasikan 4 x 4 atau 8 x 8. Ketika 8 x 8 transform digunakan, koefisien
transformasi di-scan dalam dua bentuk, yang dikenal sebagai frame dan lapangan scan, seperti
ditunjukkan pada Gambar 11.16.

Gambar 11.16 8 x 8 koefisien transformasi memindai: (a) kerangka memindai dan (b) bidang pemindaian

11.4.2 Kuantisasi
Transform koefisien quantised dengan semilogaritma ukuran langkah quantiser. Langkah
terendah Ukuran Qstep adalah 0,625 dan ukuran langkah terbesar adalah 224. ukuran langkah ini
ditangani dengan QP mulai dari 0 sampai 51. Hubungan antara QP dan Q Langkah ini
ditunjukkan pada Tabel 11.1. Seperti yang terlihat, Qstep dua kali lipat setiap enam kenaikan di
QP. Dengan demikian, peningkatan satu unit QP menghasilkan sekitar 12,5 persen peningkatan
yang Qstep. Hubungan yang tepat antara Qstep dan QP dapat diturunkan dari enam pertama QP dan
ukuran langkah mereka, diberikan oleh

Tabel 11.1 Tabel Qstep dalam hal QP

Pos dikalikan koefisien transformasi dari eqn. 11.13 TC kemudian dibagi dengan ukuran
quantiser langkah, Qstep, untuk memberikan quantised mengubah indeks Qc.

The quantised mengubah indeks-scan dalam bingkai atau lapangan urutan scan, dan 2 x 2
mengubah koefisien komponen chroma-scan dalam raster (yang sama seperti zigzag) order dan
kemudian entropi kode.
Quantised mengubah indeks sebelum terbalik mengubah dikalikan dengan kuantisasi
ukuran langkah untuk mendapatkan kembali nilai-nilai mereka didekati.

Residu pixel direkonstruksi akhir kemudian diperoleh transformasi inverse matriks eqn. 11.16
dan kliping nilai dalam kisaran 0-255.
Perlu dicatat bahwa pada QP lebih besar (misalnya QP > 30), ukuran quantiser langkah
menjadi sangat besar. Ini cocok untuk luma transformasi koefisien tetapi terlalu besar untuk
chroma koefisien transformasi, yang biasanya memiliki spasial yang lebih rendah resolusi
(detail) dari luma, sehingga nilai-nilai yang lebih rendah dari residu chroma. Itu standar
merekomendasikan bahwa ukuran chroma quantiser langkah untuk QP > 30 harus kurang
dibandingkan dengan ukuran luma langkah. Seorang pengguna-didefinisikan offset antara QstepY
dan QstepC mungkin mengisyaratkan pada set parameter gambar (PPS). Tabel 11.2 menunjukkan
nominal hubungan antara kroma dan luma quantiser parameter QPC dan QP, masing-masing.
Dalam tabel ini, untuk QP < 30, sama ukuran quantiser langkah luma digunakan untuk chroma,
tetapi pada QP lebih tinggi, ukuran quantiser langkah kroma berasal dari QP lebih rendah
daripada yang digunakan untuk luma.

Tabel 11.2 Spesifikasi APC sebagai fungsi dari QP

Hal ini juga diperhatikan bahwa untuk profil tinggi di mana 10 dan 12 bit / pixel yang
digunakan, QP untuk setiap bit bertambah 6. Misalnya, pada 10 bit gambar / masukan pixel,
kisaran QP adalah 0-63.

11.5 Deblocking penyaring


Prinsip deblocking penyaringan codec berbasis blok seperti H.263 dipelajari dalam bagian 9.4.4,
tapi karena penyaringan ini adalah elemen inti dari codec H.264, yang model uji memiliki
beberapa rekomendasi untuk karakteristik dan penggunaan. Perhatikan bahwa karena deblocking
penyaringan digunakan pada decoder serta dalam lingkaran decoder encoder, mengikuti
rekomendasi untuk kompatibilitas decoding sangat penting. Sekarang direkomendasikan
penyaringan yang harus diterapkan di tingkat MB untuk masing-masing 4 x 4 subpartitions
pertama horisontal dan kemudian ke arah vertikal. Kedua penyaringan Operasi selesai sebelum
pindah ke MB berikutnya dalam urutan raster scan. Itu Prosedur yang sama diterapkan pada
sampel chroma. Prosedur penyaringan perubahan adaptif pada irisan, blok tepi dan tingkat
sampel [8]. Keseluruhan penyaringaning operasi ditentukan dalam tiga langkah.
1. Kekuatan penyaringan
2. Keputusan penyaringan
3. Pelaksanaan penyaringan

11.5.1 Kekuatan Batas


Kekuatan penyaringan, atau paling sering, kekuatan batas (BS), adalah jumlah penyaringan
diberikan kepada piksel. BS dibuat tergantung pada inter / prediksi intra keputusan, gerak dan
gambar referensi perbedaan dan kehadiran residu dalam dua blok yang berpartisipasi. Tabel 11.3
merangkum nilai-nilai BS di kisaran 0-4, yang berasal dari setiap dua 4? 4 subpartitions dari
luma piksel. nilai 0 berarti tidak ada penyaringan, dan 4 sesuai dengan operasi penyaringan
terberat.

Tabel 11.3 Kekuatan Boundary

Dengan demikian, pada daerah-daerah di mana ada lebih distorsi, nilai yang lebih tinggi
dari BS yang dipilih, seperti batas intra kode MB atau batas antara blok yang koefisien
mengandung kode (residu).

11.5.2 Keputusan penyaringan


Salah satu keputusan yang paling penting pada operasi penyaringan adalah untuk membedakan
antara tepi buatan yang diciptakan oleh gambar blockiness dan kontekstual alami tepi gambar,
seperti penyaringan tepi alam dapat menyebabkan gambar kabur. Satu cara tepi kontekstual
diskriminatif dari batas blok buatan adalah untuk menganalisis hubungan antara piksel dari dua
blok yang berpartisipasi. Mari kita nama blok peserta p dan q, dan empat sampel mereka
sepanjang garis, baik dalam arah horisontal atau vertikal, oleh p3, p2, p1 dan p0, dan q0, q1, q2
dan q3 di kedua sisi garis batas, seperti yang ditunjukkan pada Gambar 11.17. Gradien piksel
pada memblokir batas, | p0 - q0 | bisa menjadi indikasi blok tepi. Perbedaan piksel pada kedua
sisi tepi, seperti | p2 - p0 | untuk blok p, dapat digunakan sebagai indikasi tekstur (detail) di blok
itu. Oleh karena itu, membandingkan mereka, salah satu mungkin bisa menentukan jika gradien |
p0 - q0 | adalah karena alam atau tepi buatan. Namun, karena blockiness adalah karena kuantisasi
kasar, gradien harus kontras terhadap beberapa ambang, dan yang nilainya berubah dengan
parameter kuantisasi QP.

Gambar 11.17 Representasi satu-dimensi pixel dari dua blok yang berdekatan

dan peningkatan dan penurunan dengan QP rata-rata dua blok p dan q. Idenya adalah bahwa
jika perbedaan antara sampel dekat blok tepi begitu besar yang tidak dapat dijelaskan dengan
kekasaran QP, dapat diambil sebagai ujung benar dalam gambar. Jika tidak, itu diambil sebagai
memblokir artefak dan diperlukan untuk menjadi merapikan. Nilai-nilai dari (QP) dan (QP)
yang diberikan oleh [8]

Nilai-nilai yang sebenarnya dapat bervariasi berdasarkan tes empiris untuk menghasilkan visual
menyenangkan hasil untuk berbagai konten.

11.5.3 Pelaksanaan Penyaringan


Mengetahui kekuatan batas (BS) dan berbagai gradien pixel, satu kaleng memutuskan baik tidak
untuk menyaring pixel atau menyaringnya dengan berbagai tingkat, yang ditunjukkan oleh
panjang filter. Tabel 11.4 merangkum ketentuan yang ditetapkan pada gradien pixel bersama
dengan BS untuk menyaring piksel batas. Di bawah kondisi yang ditetapkan dalam tabel ini,
piksel di setiap sisinya dan setiap baris (vertikal, horisontal) yang disaring dengan tiga sampai
lima filter keran serta tidak disaring sama sekali. Di meja, nilai-nilai yang disaring piksel
diidentifikasi oleh (`) dan piksel yang tersisa tidak disaring.
Percobaan menunjukkan bahwa Deblocking filter dapat mengurangi artefak memblokir
tanpa merugikan terutama ketajaman tepi benar. Untuk gambar moderat detail, dapat mengurangi
tingkat sedikit demi 6-9 persen untuk kualitas tujuan yang sama, dan peningkatan kualitas
subjektif bahkan lebih baik [9].

Tabel 11.4 Kondisi ditetapkan untuk filter deblocking

11.6 Entropi coding


Entropi coding adalah langkah terakhir dalam pengurangan redundansi. Dalam Lampiran E dari
H.263, coding aritmatika diperkenalkan untuk meningkatkan efisiensi coding. Hasilnya
tidak menjanjikan seperti yang diharapkan untuk beberapa alasan. Pertama, pengkodean
aritmatika adalah sama diterapkan untuk semua simbol, alamat, jenis blok, MV dan mengubah
residu koefisien sama, tetapi ini sintaks coding memiliki karakteristik mereka sendiri. kedua,
Model itu tidak adaptif, dan ketiga, itu adalah coding aritmatika m-ary, yang tidak hanya
membuat kompleks tetapi adaptasi juga hampir mustahil. Dalam H.264, itu berpikir bahwa

melalui binarisasi dan adaptasi dari model simbol, seseorang dapat meningkatkan efisiensi
kompresi. Ini, tentu saja, meningkat coding kompleksitas, seperti ada banyak simbol masing
masing memerlukan model tersendiri. Untuk alasan ini, H.264 memiliki

11.6.1 Exp-Golomb
Kode Exp-Golomb adalah kode yang universal dengan struktur konstruksi biasa yang bisa
disesuaikan untuk simbol apapun tanpa perlu melihat-up meja [11]. dihasilkan mereka kata kode
juga dikenal sebagai universal kode variabel-panjang kode kata dapat dibangun dengan
gabungan dari awalan dan akhiran, seperti
code word = [M]1[info]

(11:24)

di mana M nol mewakili awalan diikuti oleh 1 dan kemudian akhiran disebut info, yang
merupakan representasi biner dari simbol sumber. Nilai M, info dan panjang kata kode simbol x
untuk k-order Exp-Golomb (EGK) diberikan oleh

Info adalah representasi biner dari ekspresi di atas dalam k + M signifikan bit. Oleh karena itu,
panjang kata kode menjadi

The EGK digunakan dalam CABAC, namun versi orde nol, EG0, digunakan dalam CAVLC
untuk coding dari semua simbol kecuali koefisien transformasi. Codeword EG0 kemudian
memiliki panjang hanya 2M + 1 bit, awalan M dan akhiran info menjadi

Tabel 11.5 daftar kode Exp-Golomb selama sembilan bilangan bulat positif, yang dihasilkan dari
persamaan di atas.

Tabel 11.5 Exp-Golomb kode untuk sembilan bilangan bulat positif

Parameter pengkodean (kecuali mengubah koefisien) pertama dipetakan ke simbol, dan


simbol adalah Exp-Golomb kode. Tergantung pada sintaks dari parameter, pemetaan dilakukan
dengan salah satu dari tiga cara berikut:
1. Pemetaan tidak langsung: Simbol x diambil sebagai parameter itu sendiri. Contoh semacam ini
termasuk MB jenis dan indeks gambar referensi.
2. Menandatangani pemetaan langsung: Parameter yang dapat bersifat positif atau negatif, seperti
perbedaan MV atau perbedaan QP, dipetakan ke simbol x oleh

3. Simbol dipetakan: Parameter selain dua di atas dipetakan ke simbol melalui beberapa meja
untuk pemetaan yang disediakan oleh standar. Tabel dirancang simbol yang parameter yang
terjadi paling sering memiliki lebih pendek seperti panjang x untuk menghasilkan kata-kata
kode pendek. Pola blok kode (CBP) merupakan salah satu contoh.

11.6.2 CAVLC encoding data residual


CAVLC digunakan sebagai entropi coder yang kompleks lebih rendah dari koefisien
transformasi dalam profil dasar dari H.264. Seperti disebutkan, semua parameter pengkodean
kecuali mengubah koefisien Exp-Golomb kode. Transformasi koefisien Huffman diturunkan
panjang variabel kode, dan didasarkan pada beberapa adaptasi konteks Tabel VLC sesuai dipilih
dari satu set 11. Untuk membuat VLC efisien, masing-masing Tabel dirancang untuk distribusi
tertentu mengubah nilai koefisien. Seleksi dari salah satu tabel ini didasarkan pada nilai dari
beberapa kode sebelumnya koefisien.
Koefisien transformasi setelah kuantisasi dan pemindaian zigzag memiliki beberapa sifat
yang dapat dimanfaatkan untuk coding yang lebih efisien. Ini adalah sebagai berikut:

Mereka biasanya jarang, mengandung sejumlah besar nol koefisien. Kereta ini dari nol dapat
dengan mudah menjalankan panjang kode.

Sebagian besar non zero koefisien urutan? 1s dengan probabilitas yang sama. Urutan ini
harus diwakili secara kompak.

Koefisien nol dari blok yang berdekatan sangat berkorelasi. Oleh karena itu, jumlah koefisien
nol dari blok tetangga dapat digunakan sebagai konteks pemilihan adaptif dari tabel look-up.

Besarnya koefisien nol cenderung menurun dari awal pemindaian menjelang akhir. Hal ini
dapat dimanfaatkan untuk pilihan besarnya (tingkat) parameter.

Dengan sifat di atas dari quantised mengubah koefisien, CAVLC mereka coding (setelah
pemindaian zigzag) adalah sebagai berikut.

11.6.2.1 Jumlah encode koefisien dan trailing 1s (T1)


Pertama, jumlah koefisien nol dan jumlah membuntuti 1s dikodekan. Untuk blok 4 x 4 pixel,
jumlah koefisien bisa apa saja 0-16, namun jumlah membuntuti 1s diasumsikan antara 0 dan 3.
Jika nomor 1s lebih besar dari tiga, maka 1s tersisa diperlakukan seperti biasa
koefisien. Kedua jumlah koefisien nol dan jumlah membuntuti 1s adalah variabel panjang kode
dari pilihan empat meja melihat-up. Tiga dari tabel ini tabel kode variabel-panjang, dan satu
meja kode panjang tetap. Pilihan tabel tergantung pada jumlah koefisien nol di blok atas dan ke
kiri blok saat ini. Sebagai contoh, jika jumlah koefisien nol kurang dari dua, meja VLC pertama,
yang dikenal sebagai num-VLC0, dipilih.

11.6.2.2 Tanda encode setiap T1


1s trailing hanya perlu menandatangani informasi sebagai nilai-nilai mereka diketahui 1. A bit
tunggal 1 atau 0 merupakan tanda-tanda positif dan negatif, masing-masing. mereka adalah
dikodekan dalam urutan terbalik dari frekuensi tertinggi T1 menuju terendah.

11.6.2.3 tingkat Encode koefisien nol


Besarnya (level) dari masing-masing koefisien nol dikodekan dengan tabel-up. Ada tujuh tabel
look-up untuk memilih dari, dan seleksi dilakukan secara adaptif tergantung pada encoding
setiap tingkat sebelumnya. Tingkat masing-masing koefisien nol dikodekan dalam urutan
terbalik dari sering terjadinya nilai koefisien, yaitu, frekuensi tertinggi pertama dan kemudian
bergerak kembali menuju koefisien DC. Tabel sehingga tabel 0 bias terhadap besaran yang lebih
rendah dan meja 1 bias terhadap besaran sedikit lebih tinggi dan sebagainya. Seleksi adaptif dari
melihat-up meja dicapai melalui:

Tabel ini dijalankan ke terendah tabel look-up 0. lain meja melihat-up adalah dipilih hanya jika ada
lebih dari sepuluh koefisien nol dan kurang dari tiga T1s, dalam hal ini, tabel awal adalah melihat-up
table 1.

The-frekuensi tertinggi koefisien nol dikodekan terlebih dahulu.

Jika besarnya koefisien saat ini lebih besar dari ambang batas yang telah ditetapkan, maka nomor
meja melihat-up bertambah dengan 1.

11.6.2.4 Encode masing-masing berjalan nol


Jumlah angka nol sebelumnya masing-masing koefisien nol dikodekan secara terbalik order. Nilai ini
tidak dikodekan jika dua kondisi berikut ditemui:

1. Jika tidak ada lagi angka nol yang akan dikodekan.


2. Hal ini tidak diperlukan untuk mengkodekan jumlah angka nol sebelum non nol terakhir koefisien.
Jumlah angka nol dikodekan sebelum koefisien nol tergantung pada jumlah nol tersisa untuk dikodekan.

11.6.3 CABAC: Konteks-adaptif aritmatika biner coding


Dalam CAVLC dari coder dasar, meskipun tabel adaptif dipilih, setiap kode itu sendiri sebenarnya adalah
kode Huffman, dengan minimal 1 bit. Hal ini tidak efisien untuk simbol dengan probabilitas kejadian
yang lebih besar dari 0,5, dan kami memiliki terlihat dalam bab-bab sebelumnya bahwa aritmatika coding
simbol-simbol ini lebih efisien. Untuk membuat pengkodean aritmatika praktis dan, pada saat yang sama,
konteks adaptif, H.264 telah memilih konteks adaptif aritmatika biner pengkodean (CABAC) strategi.
blok A diagram encoder ini ditunjukkan pada Gambar 11.18, dengan tiga blok bangunan utama. Efisien
untuk simbol dengan probabilitas kejadian yang lebih besar dari 0,5, dan kami memiliki terlihat dalam
bab-bab sebelumnya bahwa aritmatika coding simbol-simbol ini lebih efisien. Untuk membuat
pengkodean aritmatika praktis dan, pada saat yang sama, konteks adaptif, H.264 telah memilih konteks
adaptif aritmatika biner pengkodean (CABAC) strategi. blok A diagram encoder ini ditunjukkan pada
Gambar 11.18, dengan tiga blok bangunan utama.
1. Binarisasi
2. Konteks pemodelan
3. Aritmatika biner coding

Gambar 11.18 Diagram blok CABAC

Pada gambar, simbol masuk, yang disebut elemen sintaks, unik dipetakan untuk urutan
biner, yang disebut bin tali. Dalam modus biasa, sebelum coding aritmatika, model probabilitas
ditugaskan baik untuk bin atau sintaks elemen. Model probabilitas yang dipilih tergantung pada
dikodekan sebelumnya sampah atau elemen. Setelah menetapkan model konteks, nilai bin dan
yang terkait model yang dilewatkan ke aritmatika biasa coding mesin. Atau, bypass pengkodean
mesin dapat dipilih, di mana sampah yang aritmatika kode tanpa model tertentu. Mode ini cocok
untuk simbol dengan seragam hampir distribusi.
Berikut ini, tiga blok bangunan fundamental ini dijelaskan dalam umum, dan untuk
informasi lebih lanjut, kita harus merujuk pada [10].

11.6.3.1 Binarisasi
Sebelum aritmatika coding dan konteks pemodelan, elemen sintaks dikonversi dari kode m-ary
untuk string biner. Alasan binarisasi adalah biner yang coding aritmatika jauh lebih sederhana
daripada m-ary pengkodean aritmatika untuk melaksanakan, dan adaptasi konteks dapat bahkan
dilakukan di tingkat bin. Untuk alasan yang terakhir, binarisasi bukanlah representasi biner
sederhana dari sebuah m-ary, tetapi merupakan jenis Huffman coding. Dalam pohon Huffman,
tingkat terakhir dari node anak akan mewakili kata kode biner untuk elemen sintaks, dan
probabilitas bin di setiap node dapat berhubungan dengan semua probabilitas sampah di pohon
ke akar. Ini adalah properti yang menarik yang dapat digunakan untuk memperkirakan dan
mengadaptasi model probabilitas berdasarkan konteks.

Untuk binarisasi, CABAC tidak menggunakan Huffman dirancang tabel VLC, karena hal
ini membutuhkan beberapa meja untuk disimpan. Sebaliknya, empat metode pengkodean yang
digunakan, yang lebih sederhana untuk menghitung dengan cepat:
1. kode unary
2. terpotong kode unary
3. Kode EGK
4. kode panjang tetap

Unary dan dipotong binarisasi unary


Dalam binarisasi unary, masing-masing unsigned nilai integer simbol x 0 diwakili oleh x jumlah
1 bit diikuti oleh terminating 0 bit. Dalam unary dipotong, di mana nilai x terpotong untuk
maksimal S, 0 x S, untuk x <S, kode unary digunakan, namun untuk x = S, kata kode hanya
terdiri dari x jumlah 1s tanpa mengakhiri 0 bit.

Kode EGK
Hal ini mirip dengan skema coding EG0 digunakan dalam CAVLC, yang terdiri dari awalan M
nol dan info akhiran, seperti yang dijelaskan pada bagian 11.6.1. Dalam rangka k dari EGK,
panjang kode yang diberikan oleh K + 2M + 1.

Fixed-length binarisasi
Dalam skema coding ini, simbol x dalam ukuran terbatas S diwakili oleh bit-nya representasi
panjang tetap (FL), dengan l panjang = [log2S] bit. Semacam ini binarisasi biasanya diterapkan
pada elemen sintaks dengan distribusi cukup seragam, di mana setiap bit dalam representasi
biner FL merupakan keputusan coding tertentu. Contohnya termasuk bagian dari kode simbol
blok-pola yang berhubungan dengan luma yang Data residual.
Selain di atas empat skema binarisasi, tiga skema tambahan didefinisikan oleh Rangkaian
mereka. Salah satunya adalah gabungan dari panjang tetap dan unary terpotong, yang digunakan
untuk binarisasi pola blok kode. yang lain keduanya berasal dari gabungan dari dipotong unary
dan EGK, yang digunakan untuk perbedaan MV dan nilai-nilai absolut dari koefisien
transformasi tingkat. Sebagai contoh, untuk MV perbedaan dengan presisi seperempat-pixel, 2
tambahan sampel yang diperlukan, yang dipenuhi oleh EGK k = 3 [10].

11.6.3.2 Konteks pemodelan


Pemodelan konteks adalah proses memilih model probabilitas untuk satu atau lebih sampah dari simbol
biner. Pilihan model tergantung pada statistik dari Baru-baru ini kode elemen sintaks atau sampah.
Dengan demikian, melalui adaptasi konteks, sebuah model probabilitas yang tepat ditugaskan untuk nilai
biner 0 dan 1. Kompresi dicapai oleh coder aritmatika sangat tergantung pada cocok dari
Model yang digunakan. Idealnya, model harus mencari dependensi statistik maksimum mencapai
kompresi maksimum. Mengingat bahwa pelatihan model untuk adaptasi mahal dan kenaikan biaya secara
eksponensial dengan jumlah probabilitas untuk menjadi model, orang mungkin berpikir bahwa tidak
semua simbol perlu pemodelan konteks. Hanya simbol dengan frekuensi tinggi dari kejadian yang
memiliki kontribusi besar terhadap bit rate yang dihasilkan harus dimodelkan, maka penurunan biaya
modeling.

CABAC menggunakan empat jenis konteks model [10]. Model pertama adalah
diterapkan pada elemen sintaks berdasarkan pemodelan nilai bin terkait elemen tetangga, yang
terletak ke atas dan kiri elemen sintaks saat ini.
Dengan demikian, adaptasi konteks dilakukan pada tingkat elemen sintaks. Model kedua
digunakan untuk pemodelan MB tipe (tipe m) dan sub-MB Jenis (sub tipe). Dalam jenis model,
nilai-nilai sampah kode sebelumnya digunakan sebagai pilihan model untuk bin saat ini dengan i
indeks. Dengan demikian, adaptasi konteks dilakukan di tingkat bin.
Jenis ketiga dan keempat digunakan untuk pengkodean sisa mengubah koefisien saja.
Pada tipe ketiga, coding didasarkan pada posisi sampah di jalur scanning. Posisi ini disediakan
oleh peta signifikansi. Jenis keempat adalah berdasarkan informasi tingkat sebelum dikodekan
(decode) sampah untuk memperbaiki tingkat Informasi dari bin saat akan dikodekan (decode).
Alasan kedua jenis pemodelan konteks untuk data residual adalah cara mengubah
koefisien dalam CABAC dikodekan. Idenya telah dipinjam dari coding citra wavelet, di mana
signifikansi koefisien dicatat dan, mengetahui karakteristik koefisien (tercantum dalam bagian
11.6.2), kehadiran mereka dan nilai-nilai dikodekan. Di sini, untuk setiap blok dengan setidaknya
satu nol quantised mengubah koefisien, urutan bendera signifikansi biner, menunjukkan posisi
yang signifikan (yaitu nol) koefisien dalam jalur scanning, adalah dihasilkan. Bendera
signifikansi ini disisipkan dengan urutan lain disebut bendera terakhir (satu untuk setiap tingkat
koefisien signifikan) untuk menandakan posisi tingkat signifikan terakhir dalam jalur scanning.
Ini disebut signifikansi Informasi ditransmisikan sebagai Pembukaan dihormati mengubah blok

diikuti oleh besarnya dan menandatangani informasi dari tingkat nol di sebaliknya Agar
scanning. Konteks pemodelan besaran binarised tingkat didasarkan pada jumlah tingkat
ditransmisikan sebelumnya besaran lebih besar atau sama dengan 1 dalam jalur scanning
sebaliknya, yang dimotivasi oleh pengamatan bahwa tingkat dengan besarnya sama dengan 1
secara statistik dominan di ujung jalan scanning. Untuk coding berbasis konteks informasi
penting, setiap makna / bendera terakhir adalah dikondisikan pada posisinya dalam jalur
scanning, yang dapat diartikan sebagai tergantung pada frekuensi pemodelan konteks.
Selanjutnya, untuk masing-masing yang berbeda transformasi (integer, 4 x 4 dan 2 x 2
Hadamard) di H.264 serta untuk luma dan komponen chroma, yang berbeda dari konteks
dilambangkan sebagai kategori konteks adalah dipekerjakan. Hal ini memungkinkan diskriminasi
sumber statistik yang berbeda, dengan hasil dari adaptasi secara signifikan lebih baik dengan
karakteristik statistik individu.
Model konteks diakses melalui parameter y indeks, yaitu ditentukan oleh dua nilai: satu
adalah negara probabilitas 6-bit (64 probabilitas negara) Indeks dan lain adalah yang paling
mungkin simbol (MPS) b. Rentang indeks konteks dari 0 sampai 398. Indeks 0-72 terkait dengan
elemen sintaks MB jenis, Jenis sub-MB, mode prediksi jenis spasial dan temporal dan irisan- dan
informasi kontrol MB berbasis [10]. Indeks konteks yang tersisa semua digunakan untuk
mewakili sisa koefisien transformasi.
Indeks konteks kisaran 0-72 diberikan oleh

dimana rs adalah indeks konteks offset dan Xs adalah kenaikan indeks konteks untuk
elemen sintaks yang diberikan S. Its nilai kisaran 73-398 diberikan oleh

di mana ctxcat adalah kategori konteks tergantung offset. Salah satu faktor penting
tentang
pemodelan konteks adalah bahwa nilai-nilai hanya masa lalu kode dari potongan saat ini
dianggap
untuk coding dari elemen sintaks saat ini.

11.6.3.3 Aritmatika biner coding

Dalam bab-bab sebelumnya, aritmatika biner coding yang dijelaskan secara rinci. Sekarang
Bahwa adaptasi model untuk CABAC diketahui, aritmatika kode biner yang mudah diikuti.
Seperti yang kita lihat, biner coding aritmatika dilakukan oleh rekursif membagi sebuah Interval
sesuai dengan probabilitas simbol. Jika simbol biner paling mungkin (LPS) 0 atau 1 memiliki
probabilitas RLPS <0,5, dan interval memiliki L batas bawah dan yang lebar atau rentang R,
maka

interval

dibagi

menjadi

dua

subinterval

dengan

terkait dengan LPS, dan selang dual RPMS = R - RLPS, ditugaskan untuk paling kemungkinan
simbol biner (MPS), memiliki probabilitas pelengkap dari 1 - LPS. Tergantung pada apakah LPS
atau MPS dikodekan, kisaran baru R diatur baik RMPS atau RLPS. Nilai biner menunjuk ke
interval yang mewakili urutan keputusan biner diproses sejauh ini, dan berbagai interval yang
sesuai dengan produk dari probabilitas simbol-simbol biner [11].
Untuk adaptasi, masih memperkirakan probabilitas paling mungkin simbol, LPS.
CABAC mendefinisikan 64 nilai probabilitas perwakilan, LPS, dalam kisaran ,01875-,5 Untuk
LPS, dengan persamaan rekursif berikut:

Kedua faktor skala ~ 0,95 dan kardinalitas N = 64 dipilih untuk mewakili kompromi yang baik
untuk adaptasi cepat dan estimasi yang akurat. Dengan demikian, setiap konteks Model di
CABAC dapat sepenuhnya ditentukan oleh dua parameter: saat ini perkiraan probabilitas LS,
yang pada gilirannya ditandai dengan indeks antara 0 dan 63 dan nilainya dari MPS menjadi 0
atau 1.
Fitur lain yang menarik diadopsi oleh skema CABAC adalah penggunaan disederhanakan
memotong modus coding seperti yang ditunjukkan pada Gambar 11.18. Jika elemen sintaks yang
ditemukan merata, maka proses komputasi secara intensif pemodelan konteks dapat dilewati, dan
unsur-unsur sintaks secara langsung deret hitung dikodekan dengan probabilitas tetap.

11.7 Tingkat optimasi distorsi


Dalam H.264, mirip dengan standar lainnya, hanya sintaks bitstream dan decoding Prosedur
yang ditentukan, dan encoder yang fleksibel untuk memiliki implementasi. Ini berarti bahwa
encoder bebas untuk mengkodekan MB dengan cara apapun ia lebih suka dan maka untuk

menghabiskan anggaran bit rate yang selama bitstream dihasilkan decodable. Ide di balik distorsi
tingkat (RD) optimasi untuk mendistribusikan bit antara bagian dari elemen encoding MB,
seperti coding mode, prediksi, MV, QP dan Data sisa dari beberapa pilihan seperti bahwa
pengurangan besar dalam distorsi dicapai untuk minimal menghabiskan bit. Untuk yang baik dan
efisien RD Optimizer, seleksi ini rentang besar pilihan hanya dapat dicapai melalui pencarian
yang lengkap. Untuk mempermudah pencarian, seseorang dapat berasumsi model analisis terkait
tingkat dan distorsi dan melalui optimasi Lagrangian untuk mencapai efisiensi RD.

1.7.1 Teknik optimasi Lagrangian


Teknik Lagrangian didasarkan pada mengubah masalah optimasi kendala ke yang tak terbatas
[12]. Dalam eqn. 11.33, tugas ini adalah untuk meminimalkan distorsi, D, dengan kendala bahwa
tingkat R harus kurang dari nilai target Rc:

Eqn yang dibatasi. 11.33 dapat diselesaikan dengan mengubahnya menjadi tak terbatas
persamaan, melalui Lagrangian fungsi biaya J, dengan parameter l. Dalam hal ini, Tugas menjadi
untuk meminimalkan fungsi biaya J, yang memiliki persamaan yang jelas, diberikan oleh

Encoding setiap MB di gambar menghasilkan tingkat r dan distorsi d, dan jumlah nilai-nilai ini
lebih sepotong atau gambar hasil R dan D. Dengan asumsi bahwa r dan d dari MB hanya
tergantung pada parameter pengkodean MB sendiri dan bukan lain, optimalisasi eqn. 11.34
disederhanakan untuk meminimalkan biaya coding masing-masing secara terpisah MB:

11.7.2 Proses Optimisation


Sebuah MB dapat dikodekan dalam berbagai bentuk, seperti SKIP, antar 16 x 16, inter 16 x 8,
inter 8 x 16, inter 8 x 8 serta intra 16 x 16 dan intra 4 x 4. Inter 8 x 8 sendiri dapat dibagi menjadi
8 antar? 4, antar 4 x 8 atau antar 4 x 4. Karena bingkai antar coding adalah lebih umum daripada
mode lainnya, biaya pertama diperkirakan. Lagrangian yang Optimizer dimulai dengan mencari
MV optimal antar MB kode dan optimal modus untuk setiap blok. Di sini melalui optimasi
Lagrangian, biaya coding MVs dalam bit, dan distorsi gerak-kompensasi dalam bentuk jumlah
distorsi mutlak (SADMV) pixel gerak-kompensasi dalam MB berasal.

di mana MV adalah parameter Lagrangian dari MV. Setelah menentukan optimum MVs untuk
mode lain, optimasi Lagrangian digunakan lagi untuk memilih Modus yang optimal dengan
meminimalkan biaya Lagrangian keseluruhan masing-masing (intra dan inter) dan modus
melompat (jmode).

di mana RMODE mencakup semua bit yang diperlukan untuk kode mode MB dan SSDMODE adalah
jumlah perbedaan kuadrat (SSD) antara asli dan pixel direkonstruksi. Itu Modus yang memiliki
jmode terkecil di antara semua orang lain yang dipilih sebagai modus optimal. Perhatikan bahwa di
iris intra, hanya mode intra diperbolehkan dan dicari, tetapi antar iris, kedua jenis diperiksa.
11.7.3 Pemilihan l
Dalam optimisations atas, nilai-nilai yang secara empiris ditemukan [13]

Hubungan ini antara parameter dapat diverifikasi secara eksperimental. Untuk masing-masing
MB, dengan memvariasikan , QP yang menghasilkan bit rate setidaknya dicatat. rata-rata nilai
QP untuk diberikan membangun hubungan ini. Misalnya, Gambar 11.19 menunjukkan hasil
percobaan untuk urutan uji mandor. Meneliti encoder berbagai nilai QP serta MB mode dan
memilih QP yang memiliki paling Biaya Lagrangian. Angka tersebut menunjukkan bahwa nilainilai QP yang memiliki diberikan sesuai untuk eqn. 11.38 rata-rata yang paling sering dipilih
QP untuk bit optimal Tingkat [14]. Oleh karena itu, hubungan antara dan QP diberikan dalam
persamaan. 11.38 terlihat sangat masuk akal.
Perlu disebutkan bahwa untuk kompresi yang lebih tinggi, biasanya B-iris adalah
quantised kasar dari I- dan P-iris. Dalam MPEG-1, kita melihat bahwa langkah quantiser ukuran
B-gambar adalah 1,4 kali lebih besar dari I- dan P-gambar. dalam beberapa versi perangkat lunak
JM H.264, diketahui bahwa modus B-iris ditetapkan pada empat kali lipat dari I- dan P-iris.
Rasio ini, menurut eqn. 11.38, berarti QPB = QPP Th 6. Karena selisih enam tingkat di QP ganda
ukuran langkah nya, quantiser yang Ukuran langkah B-iris akan dua kali lipat dari I- dan Q-iris,
yaitu Qstep B = 2Qstep. Seperti quantise ukuran langkah yang sangat tinggi untuk B-iris terutama

karena gerakan yang sangat efisien kompensasi irisan tersebut, sehingga pasukan ukuran yang
lebih besar quantiser langkah banyak mereka MB yang akan dilewati, mengurangi bit rate secara
signifikan tanpa gambar terlihat degradasi.

Gambar 11.19 Rata-rata terjadinya QP untuk berbagai nilai

Diskusi di atas menyiratkan bahwa hasil optimasi sangat bergantung di QP, baik sebagai
mode dan MV adalah QP tergantung. Hal ini menciptakan ayam dan telur dilema, sebagai
tujuan utama optimasi adalah untuk menemukan QP paling cocok, tapi kita lihat bahwa hasil
optimasi QP tergantung. Dalam prakteknya, pemilihan QP datang pertama. Dalam variabel bit
rate (VBR) coding, untuk kualitas video yang diberikan, QP tetap adalah dipilih. Dalam
kecepatan bit konstan (CBR) coding, untuk anggaran bit rate yang diberikan, melalui strategi
pengendalian tingkat, sebuah QP tepat ditentukan, meskipun mungkin berubah dari mengiris
untuk mengiris. Dengan demikian, meskipun kita mulai dengan QP diberikan, hasil optimasi
mungkin menunjukkan bahwa QP yang lebih baik harus dipilih. Oleh karena itu, QP baru dapat
dipilih, tetapi harus dipastikan untuk CBR bahwa anggaran bit rate tidak terlampaui.
Optimasi RD secara luas digunakan dalam berbagai bagian encoder H.264, dan itu terdiri
dari sebagian besar kompleksitas encoding, mungkin sebanding estimasi gerak (lihat bagian
11.11.1). Bahkan sebagian kecil dari estimasi gerak kompleksitas ini disebabkan penggunaan
optimasi RD, seperti penggabungan antar 4 x 4 MV untuk yang lebih besar blok dilakukan
melalui keputusan RD, seperti yang dibahas dalam bagian 11.3.1. spasial yang mode prediksi
intra 4 x 4 / intra 16 x 16 juga ditentukan melalui RD, dan satu dengan biaya paling dipilih.
Bahkan, dalam encoder, tidak ada keputusan, seperti intra / inter / melewatkan keputusan, dibuat

tanpa mengacu pada optimasi RD, dan ini mengapa optimasi RD mengkonsumsi sebagian besar
dari kompleksitas encoder.

11.8 Kesalahan coding tangguh


Meskipun standar H.264 melalui jaringan lapisan abstraksi (NAL) mencoba untuk melindungi
lapisan pengkodean video (VCL) bitstream terhadap transportasi yang mendasari ketidakpastian
saluran, beberapa derajat ketahanan kesalahan dalam aliran VCL sendiri juga telah
dipertimbangkan. Sebagian besar teknik ini seperti partisi data, penyembunyian error, pemilihan
gambar referensi baik dipinjam dari sebelumnya standar atau versi mereka meningkat diadopsi.
Standar baru ini juga memiliki beberapa sendiri, seperti yang fleksibel pemesanan macroblock
(FMO), iris berlebihan, parameter pengaturan dan beralih gambar, yang telah dikembangkan
secara khusus untuk ini codec. Dalam berikut, beberapa teknik ketahanan kesalahan yang paling
penting digunakan dalam H.264 dijelaskan.

11.8.1 Deteksi Kesalahan


Elemen-elemen sintaks untuk decoder standar, seperti alamat, nomor gambar, MVs dan
mengubah koefisien semua didefinisikan dalam format dan jangkauan. Mereka harus diterima
dalam urutan yang benar dan bentuk menjadi decodable. Pelanggaran dalam sintaks elemen
karena kesalahan channel dapat menyebabkan nilai ilegal dari unsur-unsur, dan maka, decoder
dapat meninggalkan decoding sampai sinkronisasi berikutnya diterima. Karena sifat coding
prediksi codec, satu kesalahan dapat menyebabkan semua elemen dalam sepotong tidak akan
decodable. Kesalahan sintaks mungkin termasuk [3]
Nilai ilegal elemen sintaks
Lebih dari 16 koefisien transformasi
Nomor salah isian bit
Ketika bagian dari sepotong tidak decodable, mungkin disalin dari posisi yang sama dari gambar
sebelumnya. Hal ini secara informal dikenal sebagai bingkai copy. Bergantian, yang daerah yang
hilang dapat disembunyikan dengan menyalin piksel berkorelasi dari bagian lain dari gambar
sendiri atau gambar sebelumnya. Standar ini mendefinisikan dua bingkai intra dan inter
kesalahan teknik penyembunyian, yang dijelaskan secara rinci dalam bagian 11.9. IFS
penyembunyian error yang sehari-hari dikenal sebagai gerak copy.

11.8.2 Fleksibel macroblock memesan


Meskipun gambar mengiris dapat mencegah kesalahan propagasi luar sepotong, tepat susunan
MBs dalam membentuk sepotong dapat meningkatkan kualitas irisan terdegradasi. Untuk
Misalnya, jika MBs disusun dalam pola kotak-kotak, kesalahan penyembunyian bisa tampil lebih
baik pada irisan hilang, di mana masing-masing kehilangan MB dikelilingi oleh beberapa aman
yang diterima. Hasil akhir tentu saja sangat tergantung pada seberapa efisien algoritma
penyembunyian error diimplementasikan.
Untuk transmisi yang kuat, standar memungkinkan MBs berbagai bagian gambar yang
akan dikelompokkan dalam cara yang fleksibel, yang disebut fleksibel macroblock pemesanan
(FMO). Dalam teknik ini, MB dikelompokkan bersama-sama sesuai dengan yang ditetapkan
pengguna- bentuk dikenal sebagai irisan pengelompokan. Setiap kelompok irisan adalah
seperangkat MB didefinisikan oleh MB untuk irisan peta kelompok, ditentukan pada set
parameter gambar (PPS) dan beberapa informasi di header irisan. Peta ini terdiri dari nomor
identifikasi kelompok irisan untuk masing-masing MB pada gambar, yang menentukan mana
kelompok irisan itu milik. untuk mengurangi menangani informasi, serta mencegah data yang
fragmentasi, masing-masing kelompok irisan dibagi menjadi satu atau lebih irisan, sehingga
sepotong adalah urutan MBs dalam Kelompok irisan yang sama, yang diproses dalam raster
urutan scan [3].
Irisan pengelompokan dan pemesanan MB dalam irisan tergantung pada aplikasi.
Gambar 11.20a menunjukkan dua kelompok irisan latar # 0 dan # 1 dan sepotong latar belakang
Kelompok # 2, dan pada Gambar 11.20b, dua kelompok irisan # 0 dan # 1 yang disisipkan dalam
pola kotak-kotak. Sedangkan metode pertama dapat digunakan untuk pengkodean wilayah bunga
(atau kepentingan), dalam metode kedua, ketika sepotong hilang, dapat dengan mudah
tersembunyi dari MB tetangga potongan lainnya. Oleh karena itu, metode ini berguna untuk
beberapa deskripsi coding, di mana masing-masing irisan dapat dikirim melalui saluran yang
berbeda, seperti yang satu mencakup hilangnya lainnya.

Gambar 11.20 Subbagian gambar QCIF dalam kelompok irisan: (a) latar depan /
latar belakang dan (b) pola kotak-kotak

H.264 mendefinisikan enam jenis implisit pola klasifikasi MB, yang dikenal dari jenis 0
untuk mengetik 5, ditambah pola eksplisit, di mana peta MB adalah pengguna didefinisikan
(total tujuh pola). Gambar 11.21 menunjukkan enam pola implisit FMO selama dua irisan
kelompok # 0 dan # 1. Jenis ini didefinisikan sebagai: tipe 0 disisipkan, tipe 1 adalah kotak-kotak
(atau tersebar), tipe 2 adalah foreground dan background, tipe 3 adalah kotak

Gambar 11.21 Berbagai jenis FMO

keluar, tipe 4 adalah raster memindai dan tipe 5 adalah menghapus. Dalam kasus eksplisit,
parameter irisan_group_id ditularkan untuk setiap MB dalam gambar menentukan kelompok
irisan yang itu milik.
Pengaturan yang tepat dari MBs dalam beberapa kelompok irisan meningkatkan
ketahanan kesalahan bitstream. Misalnya, MB dengan tekstur yang tinggi dan gerak, yang
biasanya menciptakan transformasi yang kuat residu koefisien, dapat dikelompokkan dan lebih

terlindungi terhadap kesalahan saluran. Selain itu, dengan menyebarkan MBs dalam kelompok
yang berbeda dalam bentuk interleaved atau kotak-kotak (tersebar), seseorang dapat
menyembunyikan kehilangan MBs di potongan yang hilang oleh orang-orang dengan aman
diterima. Percobaan menunjukkan bahwa untuk video conferencing Aplikasi (aktivitas rendah),
tanpa perlindungan kesalahan yang tidak sama, kerugian tingkat 10 persen dapat dengan mudah
disembunyikan tanpa menunjukkan artefak menjengkelkan. Jika kelompok irisan mengandung
MB penting sangat dilindungi terhadap saluran kesalahan, bitstream bahkan bisa berdiri tingkat
kesalahan jauh lebih tinggi dari 10 persen.
Namun, penataan kembali posisi MB mengurangi korelasi antara tetangga MB, merusak
efisiensi kompresi encoder. Terbesar hukuman adalah bahwa dari kotak-kotak (tersebar) pola, di
mana prediksi dari blok tetangga ditinggalkan untuk mencegah kesalahan propagasi. Ini diikuti
dengan interleaving irisan, terutama ketika mereka baris demi baris disisipkan. Itu penalti bit rate
di lingkungan bebas dari kesalahan adalah baik konten dan bit rate (QP) tergantung, dan dapat
bervariasi dari 5 sampai bahkan 20 persen dari no-kesalahan ketahanan bit Tingkat [3]. Namun
dalam lingkungan rawan kesalahan, di mana kesalahan maju mengoreksi (FEC) kode diperlukan,
kekurangan kompresi mode FMO dapat diimbangi dengan overhead yang FEC yang diperlukan.
Figure 11.22 shows the error resilience of six forms of implicit FMO without any
external FEC. Here the side effects of lost MBs at the decoder are concealed, and hence, the
superiority of one method over the other indicates how an FMO pattern has a better loss
concealment property. The ultimate video quality depends on how efficiently the error
concealment algorithm is implemented. In this figure, the foreman test sequence with QCIF@15
frame/s was coded at 64 kbyte/s for all modes, and each picture was divided into two irisans. The
erroneous pictures were then decoded by a JM decoder with the motion copy facility for loss
concealment. As seen, the checkerboard (dispersed) followed by the interleave modes produces
better quality than the other modes.
Hal ini juga diperhatikan bahwa sebagai irisan dapat diterjemahkan secara independen,
ini menimbulkan konsep irisan pemesanan sewenang-wenang (ASO). Dalam hal ini, irisan
gambar dapat dalam urutan bitstream, dan ini dapat mengurangi delay decoding dalam kasus outof-order pengiriman unit NAL.

11.8.3 data partisi


Pentingnya data partisi (DP) dalam membuat video stream yang lebih kuat untuk kesalahan
ditujukan pada bagian 9.7.3. Ada itu dibahas bahwa jika lebih parameter pengkodean penting
seperti pengalamatan dan MV dikirim sebelum kurang data penting, seperti sisa koefisien
transformasi, maka dampak kesalahan pada kualitas video diminimalkan. Namun, kita masih bisa
meningkatkan video yang dirasakan

Gambar 11.22 Kesalahan kinerja ketahanan berbagai model HMO

kualitas dengan diskriminasi dan lebih baik melindungi parameter pengkodean penting atas yang
nonimportant. Strategi seperti disebut perlindungan kesalahan yang tidak sama adalah pilihan
untuk H.263, tapi sekarang, karena pentingnya, telah menjadi bagian penting dari H.264. H.264
memiliki bahkan beberapa rekomendasi untuk perlindungan yang lebih baik dari bitstream
terhadap kesalahan. Standar ini partisi bitstream ke dalam tiga kelas yang berbeda disebut DP_A,
DP_B dan DP_C dalam urutan menurun penting. Setiap bagian adalah dikemas menjadi sebuah
unit terpisah dari NAL untuk transmisi, diuraikan dalam bagian 11.13. Data yang dipartisi di
H.264 didefinisikan sebagai berikut:

Partisi data A (DP_A) berisi informasi header, MB jenis, alamat, parameter kuantisasi dan
MV. Ini adalah informasi yang paling penting, dan jika data ini hilang, partisi lain tidak dapat
diterjemahkan.

Partisi data B (DP_MB) adalah partisi kedua yang paling penting, yang terdiri dari koefisien
intra dan intra-CBP. Karena pentingnya Kode intra Informasi dalam mencegah kesalahan
propagasi, hilangnya partisi ini sangat menurunkan kualitas gambar yang akan datang dan
dapat mengakibatkan sinkronisasi loss. Untuk memecahkan kode partisi B, partisi A dari
potongan yang sama harus tersedia.

Partisi data C (DPC) adalah data yang paling tidak penting dan hanya antar CBP dan residu
antar kode. Biasanya terdiri dari bagian terbesar dari kode irisan. Kerugiannya dapat
menyebabkan beberapa artefak gambar, tetapi tidak mengganggu sinkronisasi encoder /
decoder.

Karena bagian A dan B yang penting, mereka bisa lebih berat dilindungi dengan maju Kesalahan
kode koreksi (FEC) kode dibandingkan data dari bagian C. Untuk gambar normal pada bit rate
nominal, ini tidak memaksakan peningkatan yang signifikan dalam kecepatan bit. Meskipun
perlindungan ini, beberapa partisi ini mungkin tidak tersedia di decoder. Hal ini dapat
disebabkan oleh kondisi kanal yang parah sehingga FEC digunakan tidak cukup untuk mereka
decoding yang benar, atau dalam lingkungan jaringan paket, karena kepadatan jaringan, mereka
hilang. Namun, untuk memecahkan kode gambar sepenuhnya, semua partisi harus tersedia; jika
beberapa partisi yang hilang, yang lain masih dapat digunakan untuk menyembunyikan efek
buruk dari partisi yang hilang dalam urutan berikut:
1. Jika partisi C yang hilang, itu dapat disembunyikan dengan MV dari partisi A dan
tekstur dari partisi BY menggunakan intra bingkai penyembunyian.
2. Jika hanya partisi B yang hilang, itu dapat disembunyikan dengan MV dari partisi A
dan informasi antar dari partisi C.
3. Jika partisi B dan C yang hilang, MV partisi A digunakan untuk penyembunyian.
4. Jika partisi A hilang dan B dan / atau C tersedia, MVC spasial di atas MB baris untuk setiap
MB yang hilang digunakan.

11.8.4 Intra-MB / IDR


Gambar intra atau irisan intra digunakan untuk membatasi gambar melayang kesalahan dan
mencegah propagasi mereka menjadi sebagai berikut gambar / irisan. H.264 mendukung dua
jenis irisan intra, decoding seketika menyegarkan (IDR) irisan dan intra irisan. Selain itu,
beberapa MB dalam irisan antar kode dapat intra dikodekan untuk mencegah kesalahan
propagasi, atau mereka dipilih karena bit rate mereka mungkin kurang dibandingkan dengan
yang lain kode (misalnya ketika gerakan tidak dapat diprediksi).
Baik intra dan Rupiah ini intra kode irisan / gambar tanpa mengacu setiap gambar
lainnya. Perbedaan antara keduanya adalah bahwa gambar IDR membatalkan semua gambar
referensi dalam buffer sebelum dirinya sendiri dan dengan demikian dapat sepenuhnya

membatasi kesalahan drifting yang disebabkan oleh gambar sebelumnya. Irisan intra, pada
Sebaliknya, tidak membatalkan gambar referensi dalam buffer dan dengan demikian dapat
membatasi kesalahan hanyut di posisi gambar saja. Jika gambar masa depan mengacu pada
gambar lebih tua dari gambar intra, kesalahan pergeseran dapat terjadi lagi. Keputusan untuk
antar / intra coding dilakukan sesuai dengan optimasi RD tersebut bahwa modus coding yang
sesuai dipilih meminimalkan fungsi biaya Lagrangian.
Dalam optimasi RD, tingkat blok intra kode adalah bahwa blok koefisien, tapi antar blok
kode, tingkat adalah jumlah koefisien blok dan MV tarif. Untuk mencegah gambar melayang
akibat kesalahan / kehilangan, beberapa MBs di setiap irisan mungkin dipaksa untuk dikodekan
intra. Pengaturan untuk coding intra adalah sedemikian rupa sehingga seluruh gambar diperbarui
setelah beberapa frame.
Untuk alasan ini, metode ini juga disebut memaksa pembaruan intra. Paksa memperbarui
intra dapat dilakukan baik secara acak atau dalam Pola pembaruan tertentu. Misalnya, deretan
MBs di setiap frame pada gilirannya intra kode.
Gambar 11.22 membandingkan ketahanan kesalahan FMO (kotak-kotak / tersebar),
partisi data (DP), update intra dan memperbarui intra dikombinasikan dengan FMO melawan ada
kesalahan coding tangguh. Untuk tes ini, urutan mandor di CIF @ 30 Hz dengan IPP. . .
Kelompok Pictures (GOP) diberi kode dengan software JM pada tingkat bit target 1 Mbit / s
dalam semua kondisi encoding. Bitstream Compressed dari masing-masing metode adalah
packetised ke dalam paket 1-kbyte, dan paket secara acak turun. Setiap titik di sosok itu adalah
kualitas video rata-rata lebih dari 20 berjalan. Untuk pembaruan intra, pada masing-masing
gambar, deretan MB (22 MB di CIF) pada gilirannya secara paksa intra kode. Untuk DP, partisi
B dan C masing-masing irisan yang tunduk pada kerugian, tetapi tidak partisi A. Untuk FMO
ditambah pembaruan intra, pertama-tama, satu baris MBs di setiap gambar itu intra kode, dan
maka MBs seluruh gambar dikelompokkan menjadi dua set dan disusun ulang di pola kotakkotak. Bahkan, dalam hal ini, dipaksa MB intra kode tersebar ke baris lebih dari MB, yang harus
menciptakan kondisi yang lebih baik untuk menurunkan penyembunyian.
Intra Update karena coding tidak efisien intra atas coding inter memiliki lebih rendah
kualitas video tanpa atau tingkat kerugian yang sangat rendah. Meningkatkan tingkat kerugia
pembaruan intra karena kemampuannya untuk mencegah kesalahan propagasi menghasilkan
hasil terbaik dari semua kesalahan tangguh skema (lihat Gambar 11.23). Ketika ini

dikombinasikan dengan FOR, yang berkualitas baik gambar update intra dengan kerugian yang
lebih baik lingkungan penyembunyian yang disediakan oleh FMO memberikan hasil terbaik.

Gambar 11.23 Kinerja berbagai kesalahan mode tangguh

Kualitas video data-dipartisi tanpa kehilangan lebih baik daripada pembaruan intra (IR di
Gambar), tetapi dengan meningkatnya tingkat kerugian, akumulasi kerugian residual mengubah
koefisien bagian B dan C membuatnya lebih miskin dari pembaruan intra (DP penurunan SM, di
gambar). Namun, pada tingkat kerugian yang tinggi, karena kehilangan penyembunyian yang
lebih baik, itu menyusul Update intra. Perhatikan bahwa di DP dengan dilindungi bagian A,
kehilangan penyembunyian dilakukan dengan MV yang tepat, menghasilkan kualitas gambar
yang lebih baik daripada bingkai kerugian antar penyembunyian, yang memperkirakan MV
hilang. Namun demikian, masih kalah dengan intra ditambah FMO. Perlu dicatat bahwa
menambahkan FMO ke DP mungkin tidak meningkatkan kinerjanya seperti yang dilakukan
dengan pembaruan intra; hal ini karena, sebagaimana disebutkan di atas, kehilangan
penyembunyian adalah dilakukan dengan MV yang tepat dan tidak perlu perkiraan yang baik.
Namun, FMO karena isolasi MBs tetangga mencegah propagasi spasial kesalahan, meningkatkan
kualitas gambar dalam hal apapun.
Akhirnya, FMO memberikan kinerja terburuk, karena harus hanya mengandalkan
kerugian penyembunyian. Ini, tentu saja, tergantung pada seberapa baik penyembunyian

kerugian telah diimplementasikan, dan dapat ditingkatkan dengan kehilangan strategi


penyembunyian yang lebih baik. Namun demikian, itu selalu lebih buruk dari DP, yang
menggunakan MV tepat; salah satu harus dicatat bahwa dalam DP, perlindungan bagian A
mengerahkan overhead ekstra. Semua metode mengungguli ada kesalahan coding tangguh
(Tidak Merah di gambar).

11.8.5 Beberapa gambar referensi


Gambar referensi beberapa, selain kompensasi gerak yang efisien untuk meningkatkan gain
kompresi encoder, juga dapat digunakan dalam bentuk yang berbeda untuk ketahanan kesalahan
dalam lingkungan rawan kesalahan. Pada bagian 9.7.2, kita bahas bahwa jika salah satu referensi
bebas dari kesalahan dipilih, maka propagasi error dapat dicegah. Dalam H.263, ini adalah
pilihan untuk encoder, tetapi dalam H.264, memainkan peran penting, dan standar
merekomendasikan beberapa panduan untuk penggunaan yang lebih baik, harus didefinisikan
segera. Prosedur ini dapat digunakan dengan dan tanpa saluran kembali. Dalam sistem dengan
kembali channel seperti aplikasi percakapan dua arah, decoder dapat memulai pemilihan
referensi gambar menggunakan salah satu mode berikut [15]:
Modus ACK: The decoder mengakui penerimaan aman pesan, dan encoder menandai irisan
diterima dengan benar untuk referensi di masa depan.
Modus NACK: decoder mengirimkan pengakuan negatif untuk setiap hilang / slice rusak
(misalnya melalui pengecekan referensi waktu slice atau menerima slice keliru). Ketika
encoder menerima pijat KEMBALI, gambar yang tidak digunakan untuk referensi di masa
mendatang, dan gambar referensi yang dipilih dari gambar sebelum gambar KEMBALI.
Modus ACKNACK: Dalam hal ini, switch encoder antara kedua atas mode sesuai dengan
pesan dari decoder.
Modus ACK menimbulkan terlalu banyak overhead pada saluran kembali, tapi encoder adalah
memastikan bahwa referensi gambar yang digunakan adalah bebas dari kesalahan dan kesalahan
propagasi terbatas. Efek samping lainnya adalah dalam rute yang panjang, di mana kesenjangan
yang besar antara saat ini gambar yang akan dikodekan dan gambar referensi bebas dari
kesalahan mengurangi kompresi mendapatkan. Di sisi lain, modus NACK tidak memiliki beban
saluran kembali yang signifikan untuk hubungan komunikasi berkualitas baik, tetapi jika karena
alasan apapun sinyal NACK tidak diterima oleh encoder, kesalahan akan terus-menerus dan

menyebar melalui gambar. Bahkan penerimaan masa depan NACK tidak dapat mencegah
propagasi kesalahan ini. Namun, modus NACK memiliki coding gain yang tinggi, karena setiap
gambar yang dipilih dapat digunakan sebagai referensi, kecuali itu tidak diakui.
Kombinasi ACKNACK mungkin adalah solusi terbaik untuk kompresi efisiensi dan
ketahanan kesalahan channel. Untuk meminimalkan sinyal saluran kembali beban, encoder
memulai komunikasi dengan modus NACK. Setelah menerima sinyal NACK N berturut-turut,
yang merupakan indikasi dari saluran yang buruk, encoder beralih ke modus ACK. Encoder
dapat beralih kembali ke modus NACK, ketika M sinyal ACK berturut-turut diterima. Dengan
demikian, ACKNACK memiliki sumber Properti optimasi saluran, sehingga dalam kondisi
saluran yang baik, menggunakan NACK modus, dan karenanya, gambar referensi lebih dekat
digunakan untuk kompresi yang lebih tinggi, dan saluran yang buruk, melalui ACK, maka
dipastikan bahwa referensi gambar yang digunakan adalah kesalahan bebas dan kesalahan tidak
disebarkan. Dalam lingkungan yang salah, kesalahan ketahanan adalah lebih diinginkan daripada
yang lebih tinggi gain kompresi bebas dari kesalahan.
Dalam sistem tanpa saluran kembali, seperti multicasting, redundansi Video coding
(VRC) Teknik yang digunakan sebagai pengganti [16]. Di VRC, video masukan dipisahkan
menjadi dua atau lebih benang, dan gambar di setiap thread menggunakan prediksi mereka
sendiri. Untuk Misalnya, gambar aneh bisa masuk ke satu thread dan bahkan gambar ke yang
lain. Bitstream di setiap thread dimulai dan diakhiri dengan gambar sync, dan sync gambar juga
dapat dimasukkan pada interval tertentu. Sync gambar mungkin menjadi I-gambar atau SIgambar. Contoh sederhana ditunjukkan pada Gambar 11.24, dengan dua sungai memiliki gambar
aneh-dan genap di benang yang berbeda. Ketika gambar hilang dari satu aliran, aliran lain
diterjemahkan utuh, dan temporal Resolusi gambar dibuka akan temporal berkurang. Jika
tampilan frame rate yang lebih tinggi adalah diinginkan, gambar decode dari rute yang aman
dapat diulang. Bergantian, yang rusak / hilang gambar dari rute yang salah direkonstruksi dari
foto-foto aliran lain yang memiliki jarak lebih pendek sementara (yaitu kehilangan
penyembunyian),

dan

sisa

gambar

yang

diterjemahkan

menyembunyikan hilang (kualitas gambar dapat sedikit rusak).

gambar

berikut

referensi

Gambar 11.24 Skema VRC dengan dua benang dan empat gambar per thread

Teknik ini juga disebut beberapa deskripsi coding, dan wireless komunikasi, dapat
dikombinasikan dengan teknik diversitas ruang untuk memastikan bahwa setidaknya salah satu
saluran tidak terpengaruh oleh memudar. Data yang hilang kemudian diinterpolasi dari data
saluran aman diterima. Untuk kerugian yang lebih baik penyembunyian, slice dan MB
pemesanan, ASO dan FMO dapat digunakan di masing-masing ganjil dan genap gambar.

11.8.6 Irisan redudansi


Untuk meningkatkan ketahanan kesalahan dalam H.264, encoder dapat mengirim duplikat
salinan beberapa atau semua irisan gambar. Untuk meminimalkan bit ekstra transmisi berlebihan,
irisan ini dikodekan dengan QP kasar dari potongan utama. Jika kedua representasi dari potongan
yang sama diterima oleh decoder, maka potongan berlebihan dibuang dan potongan utama
diterjemahkan. Dalam hal slice utama hilang, maka berlebihan representasi diterjemahkan. Irisan
berlebihan telah diperkenalkan untuk ponsel aplikasi tetapi dapat digunakan secara efisien dalam
komunikasi berbasis IP.

11.8.7 Streaming beralih

Dalam H.264, dua jenis baru yang disebut slice beralih prediktif (SP) - dan beralih intra (SI) slices sudah ditetapkan. Karena gambar yang mengandung irisan ini memiliki spesifik aplikasi
seperti beralih aliran, splicing, random access, maju cepat, cepat mundur dan kesalahan
ketahanan / recovery, semua irisan dalam gambar adalah dari jenis yang sama, dan akhirat, kita
merujuk kepada mereka sebagai SP / SI-gambar [18]. Untuk ketahanan error, ide belakang
gambar switching untuk mendapatkan kembali kehilangan sinkronisasi antara encoder dan
decoder, yang mungkin timbul akibat menyalurkan kesalahan. Dalam hal ini, encoder

mengirimkan gambar beralih direferensikan ke gambar yang diterima dengan benar, dan decoder
dapat mengikuti melayang bebas decoding dengan mengacu pada gambar beralih ini.
Ada banyak aplikasi lain untuk gambar beralih. Sebagai contoh, kapasitas saluran
lingkungan yang berbeda-beda, video dapat dikodekan di dua berbeda tarif. Pada tingkat saluran
yang rendah, pengguna melakukan streaming video berkualitas rendah, dan ketika kapasitas
saluran meningkat, mereka dapat beralih ke video berkualitas tinggi. Atau, dalam tetap
berkapasitas channel, video tarif yang lebih rendah dapat lebih terlindungi oleh kode FEC lebih
berat dari tinggi tingkat (kualitas) video. Ketika kondisi kanal buruk, video berkualitas lebih
rendah mengalir, dan ketika kondisi membaik, itu beralih ke aliran-kualitas yang lebih tinggi.
Maju / mundur beralih mungkin terjadi sebanyak yang dibutuhkan.
Switching gambar yang baik prediksi kode (SP) atau intra kode (IS). itu
gambar prediktif (SP) sendiri terdiri dari dua jenis: primary (PSP) dan sekunder
(SSP) beralih gambar, yang dijelaskan dalam bagian berikut.

11.8.7.1 PSP-Gambar
Gambar-gambar beralih primer (PSP) adalah gambar prediksi gerak-kompensasi dan kode seperti
P-gambar. Perbedaan utama mereka adalah kuantisasi tambahan dikenakan pada PSP-gambar
untuk memastikan bahwa kualitasnya sama dengan yang dari gambar sekunder, SSP (lihat di
bawah). Dengan demikian, PSP-gambar menghasilkan sedikit lebih bit dari P-gambar yang
normal. Mereka dimasukkan ke dalam bitstream untuk menandai posisi di mana switching dapat
terjadi. Ketika beralih terjadi, sekunder beralih gambar digunakan sebagai gantinya. Meskipun
bit rate switching sekunder gambar mungkin tinggi, karena mereka hanya digunakan sekali dan
sering ditularkan PSP-gambar memiliki tingkat yang lebih rendah daripada I-gambar, beralih
gambar yang digunakan dalam video streaming bukan I-gambar.

11.8.7.2 SSP-Gambar
Sebuah gambar beralih sekunder (SSP) adalah, pada kenyataannya, gambar digunakan untuk beralih
tujuan. Decoder dapat decode bitstream dengan mengacu pada gambar ini terlepas dari apa gambar
referensi dikodekan nya adalah. Foto-foto ini hanya dikirimkan pada kasus switching atau untuk
mendapatkan kembali sinkronisasi antara encoder dan decoder, yang mungkin timbul akibat menyalurkan
kesalahan.
11.8.7.3 SI-Gambar

SI-gambar adalah representasi kode intra dari SSP-gambar. Meskipun gambar dapat digunakan
untuk switching, mereka biasanya digunakan untuk mengakses bitstream, karena mereka
bertindak seperti I-gambar, seperti yang ditunjukkan pada Gambar 11.25.

11.8.7.4 Peralihan antara dua aliran


Untuk melihat bagaimana beralih gambar bertindak dan bagaimana mereka harus dikodekan, mari kita
lihat beralih antara dua aliran, seperti yang ditunjukkan pada Gambar 11.24. Setiap aliran adalah
penduduk dengan PSP-gambar di lokasi tertentu untuk menandai lokasi yang mungkin untuk beralih.
Setiap PSP-gambar memiliki mitra SSP disimpan di server, namun SSP hanya ditularkan ketika beralih
menjadi perlu. Dalam gambar, dua bitstreams, beralih-dari dan beralih ke, ditunjukkan dengan
dimasukkan secara berkala PSP-gambar. Panah padat pada gambar menunjukkan jalur transmisi. Sebagai
contoh, dimulai dengan mengirimkan semua gambar dari beralih-dari sungai hingga gambar PSP, yang
menuntut

switching.

Dalam

hal

ini,

seorang

SSP-gambar

ditransmisikan

bukan PSP dan diikuti oleh gambar dari beralih ke streaming. Gambar adalah mitra dari PSP-gambar
beralih ke bitstream (kedua PSP pada gambar) dikodekan dengan mengacu pada gambar sebelumnya
beralih-dari bitstream. Panah putus-putus menunjukkan gambar-gambar yang dikodekan tetapi tidak
menular. PSP-gambar dapat disisipkan di setiap tempat, namun saat ini, hanya implementasi periodik
tersedia dalam encoder software JM.

Gambar 11.25 Bitstream peralihan dengan SSP-gambar

Switching dengan SI-gambar yang ditunjukkan pada Gambar 11.26. Satu-satunya


perbedaan adalah bahwa SI-gambar adalah representasi intra dari SSP-gambar tanpa referensi
untuk setiap gambar sebelumnya. Meskipun SI-gambar juga dapat digunakan sebagai pengganti
SSP-gambar, tapi karena mereka menghasilkan harga sedikit lebih tinggi daripada SSP-gambar,

yang terakhir ini lebih disukai (catatan: jika beralih jarang terjadi, bit ditambahkan dapat
diabaikan). Namun, Penggunaan utama dari SI-gambar akan akses acak sungai.

Gambar 11.26 Bitstream peralihan dengan SI-gambar

11.8.7.5 Pemulihan kesalahan


Sebagai contoh lain, Gambar 11.27 menunjukkan beralih gambar yang digunakan untuk pemulihan
kesalahan. Dalam gambar ini, SSP-gambar dikodekan dengan mengacu pada gambar yang memastikan
bahwa penerima memiliki salinan bebas dari kesalahan itu. Ketika kesalahan terjadi, klien sinyal gambar
kerugian, yang server merespon dengan mengirimkan SSP-gambar di tempat berikutnya PSP-gambar.
Gambar segera setelah PSP-gambar switch prediksi nya dengan SSP-gambar, dan decoding terus, seperti
yang ditunjukkan pada gambar. Perlu mencatat bahwa semakin lama link komunikasi, lebih jauh adalah
SSP-gambar dari prediksi, meningkatkan bit rate-nya.

Gambar 11.27 Gambar peralihan dalam pemulihan kesalahan

11.8.7.6 Pengkodean peralihan gambar


Pengkodean PSP-gambar
Gambaran beralih utama, PSP, adalah prediktif kode seperti P-gambar, dengan Perbedaan utama
bahwa itu ganda quantised. Artinya, itu adalah gerakan pertama kompensasi, transformasi kode
dan quantised dengan sendiri aliran quantiser parameter QSP, seperti ditunjukkan pada Gambar
11.28. Hal ini kemudian dequantised dan requantised dengan quantiser yang parameter gambar
beralih sekunder, QSSP dari aliran lain. Itu gambar direkonstruksi dengan quantiser kedua adalah
prediktor untuk coding berikutnya P-gambar. Quantisation gambar diprediksi sebelum
perhitungan residu opsional, tetapi meningkatkan kualitas gambar diaktifkan oleh hampir 0,4 dB
[19].

Gambar 11.28 PSP-gambar encoder

Pengkodean SSP-gambar
Gambar 11.29 menunjukkan encoding dari SSP-gambar dengan parameter quantiser QSSP.
Sejak setelah beralih, gambar prediksi pertama beralih ke streaming, PST, akan diprediksi dari
SSP, bukan dari PSP-gambar sendiri, SSP diperlukan untuk memiliki kualitas yang sama dengan
PSPst. Namun, menurut Gambar 11.25, SSP adalah dikodekan dengan mengacu pada P-gambar
dari Psf beralih-dari sungai,. Dengan demikian, untuk menghasilkan SSP-gambar, pertama
gambar beralih utama beralih ke streaming PSPst adalah gerak kompensasi dengan mengacu Psf,
transformasi kode dan quantised dengan QSSP. Ini menghasilkan ketidaksesuaian antara PSPst

dan gambar yang tersimpan dari aliran sebelumnya di buffer penerima. Residu mismatch
kemudian dikurangkan dari koefisien transformasi dari PSPst, ditampilkan sebagai

Gambar 11.29 SSP-gambar encoder

PSPTC pada gambar untuk menghasilkan sinyal kesalahan untuk SSP. Sinyal kesalahan yang
dihasilkan residu SSPerr, menjadi entropi kode dan ditransmisikan. Keseluruhan operasi
dirangkum oleh

Pengkodean SI-gambar
SI-gambar adalah kode gambar intra dengan kualitas PSP-gambar. Ini, PSP-gambar dikodekan
sebagai bingkai intra, dan perbedaan antara intra dan bingkai antar ditambahkan ke prediksi kode
PSP-gambar.

11.9 Kesalahan penyembunyian


Meskipun SEMUA Prosedur kekokohan Kesalahan dipertimbangkan UNTUK codec, beberapa
Bagian bitstream Baik TIDAK DAPAT diterima Diposkan decoder (data Hilang) ATAU Parah
Rusak, Yang TIDAK decodable Dan pasti dibuang Diposkan oleh decoder. ITU Terbaik decoder
dilakukan Adalah UNTUK menyembunyikan ATAU menyembunyikan Efek sakit Dari data
yang Yang Hilang. PADA Bagian 9.7.5, ide Umum UNTUK Kehilangan / Kesalahan
penyembunyian diperkenalkan. Namun, Kerugian / Kesalahan penyembunyian Bukan
merupakan Bagian Dari standar apapun, Dan karenanya, Bukan ITU fitur normatif berada hearts
Ruang lingkup standar H.264. Meskipun demikian, model yang uji standar menyediakan Tingkat
Dasar

Kesalahan

penyembunyian

UNTUK

decoder

penyembunyian uji hearts didefinisikan modus H.264:

[4].

doa

Kesalahan

algoritma

1. Nilai pixel tertimbang rata-rata untuk intra bingkai penyembunyian


2. MV cocok batas berbasis IFS penyembunyian

11.9.1 Tertimbang nilai pixel rata-rata


Tertimbang nilai pixel rata-rata digunakan untuk intra bingkai penyembunyian, di mana piksel
dari MB yang hilang yang diinterpolasi dari nilai rata-rata tertimbang dari pixel perbatasan
dari MB intra tetangga. Jika MB hilang hanya memiliki dua MB diterjemahkan dengan benar,
mereka digunakan dalam proses interpolasi; jika tidak, MBs tersembunyi sebelumnya adalah
digunakan. Prosedur ini pictorially ditunjukkan pada Gambar 11.30, dan nilai interpolasi
dari pixel hilang p0 diberikan oleh

di mana pi adalah nilai-nilai dari empat piksel di kiri, kanan, atas dan batas bawah piksel dari
blok sekitarnya dengan pixel yang hilang dan di adalah jarak dari piksel dpi dari pixel p0.

11.9.2 Batas pencocokan vektor gerak berdasarkan


Dalam penyembunyian error IFS, piksel dari gambar referensi tapi gerak kompensasi dengan
perkiraan MV digunakan untuk merekonstruksi piksel hilang. Dalam diusulkan metode
kehilangan penyembunyian model referensi, MBs keseluruhan

Gambar 11.30 Ruang penyembunyian 16 x 16 blok

gambar dianggap bersama-sama dalam dua langkah. Kegiatan gerak dengan benar irisan yang
diterima dianggap pertama. Jika panjang rata-rata MV di slice adalah kurang dari ambang batas
(misalnya seperempat atau setengah pixel), semua irisan hilang disalin dari referensi gambar
collocated (frame copy). Jika tidak, gerak-kompensasi penyembunyian error dengan MV
estimasi untuk MB yang hilang digunakan (motion copy). Untuk estimasi yang lebih baik dari
MV, seluruh gambar dipindai kolom MB bijaksana dari kiri dan kanan tepi menuju pusat
gambar. MBs hilang berturut-turut dalam kolom yang tersembunyi mulai dari atas dan bawah
dari daerah terhadap pusat.
Setiap 8 x 8 blok luminance dari MB ditangani secara terpisah. Hanya MV dan referensi gambar
dari blok yang diterima dengan benar spasial berdekatan digunakan untuk penyembunyian. Jika semua
MV dari blok tetangga yang hilang, mereka tersembunyi MV yang digunakan sebagai pengganti. Selain
itu, collocated blok dari sebelumnya gambar selalu salah satu kandidat.
Pada bagian 9.7.5, kami menunjukkan bagaimana di antara beberapa kandidat MVS, satu yang
memberikan sedikit batas blok diskontinuitas dapat dipilih. Sebagai contoh, ini ditunjukkan pada Gambar
11.31, di mana kehilangan 8 x 8 blok memiliki dua 4 x 4 blok MVtop1 dan Mtop2 di bagian atas dan tiga 8 x
8 blok MVkiri, MVkanan dan MVbot di sebelah kiri, kanan dan bawah, masing-masing. Perbedaan antara
piksel perbatasan dari blok yang hilang, ditampilkan sebagai piksel luar pada gambar dan gerak
kompensasi piksel batin dengan vektor gerak tetangga atas, bawah, kiri, kanan dan co-terletak blok pada
gilirannya diuji sesuai dengan eqn. 11.41

mana ^Y dan Y mewakili nilai-nilai pixel dari gerak-kompensasi dan tetangga blok di
perbatasan,

masing-masing.

Salah

satu

yang

menyebabkan

(diskontinuitas) yang dipilih.

Gambar 11.31 Memperkirakan MV untuk prediksi

perbatasan

paling

beda

11.10 Profil dan tingkat


Sebagaimana dibahas dalam bab-bab sebelumnya, karena heterogenitas komunikasi sistem dan
layanan video, codec standar yang diperlukan untuk mendukung interoperabilitas antara berbagai
skenario. Ini bahkan lebih ketat untuk H.264 yang harus mencakup berbagai layanan video dari
perusahaan telekomunikasi, IPTV dan penyimpanan untuk siaran. Untuk mengatasi beragam ini
kondisi aplikasi, H.264 standar mendefinisikan beberapa profil dan tingkat untuk menyesuaikan
codec untuk tertentu aplikasi. Jika tidak, codec akan sangat kompleks dan mahal. Sesuai dengan
codec untuk aplikasi tertentu ditentukan dengan profil dan tingkat.
Profil Dan Tingkat menentukan pembatasan bitstream Dan karenanya kemampuan
diperlukan UNTUK memecahkan Kode mereka. Profil mendefinisikan Bagian Dari coding alat
hearts bitstream ditentukan standar Diposkan, misalnya, JIKA encoder mendukung B-iris,
Kesalahan Ketahanan Dan DP. Dalam kemampuan Yang ditetapkan UNTUK profil Tertentu,
Masih Mungkin UNTUK BERBAGAI memiliki Pertunjukan, bit rate seperti, gambar Resolusi
Dan frame rate. Suami Adalah kendala Yang pda DIKENAKAN Nilai-Nilai sintaks elemen
Dalam bitstream Dan didefinisikan di Bawah Tingkat.
Versi pertama dari standar menetapkan tiga profil: baseline, utama dan profil
diperpanjang, semua dengan 4 : 2 : 0 format gambar pada 8-bit kedalaman. aplikasi utama profil
dasar termasuk video telephony, videoconference dan komunikasi nirkabel. Profil utama adalah
untuk penyiaran televisi dan penyimpanan video. Profil diperpanjang terutama ditetapkan untuk
aplikasi media streaming. Fitur dari H.264 bahwa setiap profil dapat mendukung dirangkum
dalam Gambar 11.32.

Gambar 11.32 Profil untuk H.264

Profil dasar adalah profil yang paling sederhana dari H.264 dan didefinisikan untuk
progresif video. Mendukung sebagian besar fitur standar kecuali untuk B-iris, prediksi
tertimbang, CABAC, interlaced video, SP / SI-iris dan DP. Ini menekankan coding efisiensi dan
ketahanan dengan kompleksitas komputasi yang rendah.
Profil utama berisi semua fitur standar dengan pengecualian kesalahan alat ketahanan
FMO, ASO, iris berlebihan, partisi data dan SP / SIslice. Dengan demikian, hanya sebagian
video urutan yang kode yang decodable oleh Profil dasar decoder dapat diterjemahkan oleh
profil decoder utama. Ini adalah utama keberangkatan dari profil sebelumnya yang ditetapkan
dalam standar sebelumnya. Pada standar, profil biasanya bagian dari satu sama lain, dan profil
lapisan yang lebih tinggi dapat decode bawah lapisan satu.
Profil diperpanjang menekankan pada ketahanan dan fleksibilitas dengan coding tinggi
efisiensi dan mendukung semua fitur H.264 termasuk beralih gambar dan DP, kecuali CABAC.
Standar

nanti

memperkenalkan

ekstensi

rentang

profesional

atau

kesetiaan

(Frex) profil untuk aplikasi kualitas yang sangat tinggi, terutama dikenal sebagai profil tinggi. itu
adalah superset dari profil utama dengan meningkatkan kedalaman bit dan resolusi kroma.
Ekstensi Kisaran fidelity (tinggi) profil memiliki dua alat tambahan opsional 8? 8
mengubah
matriks

gerak-kompensasi
kuantisasi

ke

profil

blok

sisa

utama.

Faktor

dan

scaling

skala

diturunkan

berbasis

persepsi

berdasarkan

pada

respon frekuensi spasial dari sistem visual manusia. Artinya, lebih tinggi mengubah
koefisien yang mewakili frekuensi spasial yang lebih tinggi quantised kasar dari yang lebih
rendah, seperti yang dibahas dalam bagian 7.5. Profil ini sendiri didefinisikan dalam hal empat
profil tinggi.
Profil tinggi = 4 : 2 : 0, 8 bit
Tinggi 10 profil = 4 : 2 : 0, 8-10 bit
Tinggi 4: 2: 2 profil = 4 : 2 : 2, 8-10 bit
Tinggi 4: 4: 4 profil = 4 : 4 : 4, 8-12 bit

Profil tinggi adalah superset sederhana dari profil utama, memiliki kroma yang sama kedalaman
bit dan resolusi untuk aplikasi yang sama. Oleh karena itu, diharapkan untuk menggantikan
profil utama dalam aplikasi masa depan yang diharapkan akan digunakan. -Order yang lebih
tinggi profil meningkat baik kedalaman kroma bit atau resolusi atau keduanya. Pada ekstrem
profil tinggi, berdiri tinggi 4: profil dengan resolusi 8 sampai 12-bit 4: 4. dalam hal ini profil,

warna memiliki resolusi yang sama dari pencahayaan, dan transformasi dan kuantisasi encoder
yang dilewati, dan data residual secara langsung entropi kode. Perbedaan antara alat encoding
didukung oleh berbagai profil ditabulasikan dalam Tabel 11.6. Alat encoding tersisa, seperti
filter deblocking, CAVLC, IN iris, ukuran blok variabel dan estimasi gerak perempat sampel,
dan prediksi intra, yang tidak tercantum dalam tabel ini, yang umum untuk semua.
Various applications of these profiles, compared to the MPEG-4 visual profiles, are
summarised in Table 11.7.
Standar ini juga mendefinisikan 16 tingkat dengan menetapkan batasan pada pengkodean
parameter ukuran gambar, bit rate, penyangga, dll Tabel 11.8 merangkum tingkat parameter yang
ditetapkan untuk berbagai resolusi gambar dan bit rate dari QCIF ke 4K video sinema digital.

Tabel 11.6 alat Coding didukung oleh berbagai profil

Tabel 11.7 Aplikasi berbagai profil

Tabel 11.8 Tingkat ditetapkan untuk H.264

11.11 Compression gain and complexity of H.264


11.11.1 Kompresi Gain
Perubahan diperkenalkan ke encoder H.264 seluruh bagian 11,3-11,7 masing-masing dapat
meningkatkan gain kompresi H.264 lebih pendahulunya. Sekarang sulit untuk menentukan
dengan tepat berapa banyak setiap bagian memberikan kontribusi untuk coding keseluruhan
mendapatkan, sebagai jumlah perbaikan adalah konten gambar (tekstur) tergantung, bisa
bervariasi dengan sifat gerak dan juga tergantung pada tingkat bit dan bingkai. Selain itu, sangat
sering kombinasi alat encoding membuat mereka lebih efisien. Sebagai contoh, prediksi spasial
intra-MB atau blok variabel gerak panjang estimasi tanpa optimasi RD mungkin tidak
menunjukkan manfaat sejati mereka, karena kinerja tergantung pada seberapa bijaksana modus
yang dipilih. Akhirnya, manipulasi unsur dikompresi, atau yang disebut coding trik, dapat
memiliki peran penting dalam mengurangi bit rate. Tepat pengalamatan MV, MB mode,
melewatkan MB, QP perubahan, yang dipilih tabel-up, dll semua mempengaruhi tingkat bit.
Meskipun jumlah kontribusi dari masing-masing coding trik mungkin kecil, dampak kolektif
mereka dapat signifikan.
Meskipun argumen ini, melalui pengalaman dan eksperimen, satu kasar bisa
memperkirakan kontribusi yang masing-masing bagian dapat membuat keuntungan coding
secara keseluruhan. Untuk Misalnya, dalam video normal pada tingkat bit nominal, kontribusi
rata-rata untuk coding Keuntungan yang [20]: block estimasi ukuran gerak variabel 4 x 4 sampai
16 x 16, dapat memberikan sekitar 15 persen peningkatan selama dua ukuran blok 8 x 8 dan 16 x
16 dari H.263, dimana ini sendiri memberikan 5-8 persen peningkatan melebihi ukuran blok
tetap dari 16? 16 MPEG-2. Resolusi perempat pixel dari MV memberikan perbaikan persen 1020 per atas resolusi setengah-pixel, dan itu sendiri memberikan tingkat yang sama perbaikan atas
resolusi bilangan bulat pixel. Keuntungan coding karena gambar referensi beberapa kompensasi
gerak adalah sekitar 10-15 persen tergantung pada model gerak dan jumlah referensi gambar.
The CABAC coder entropi adalah sekitar 5-15 persen lebih efisien daripada CAVLC, dan
CAVLC sendiri adalah 10-20 persen lebih efisien daripada konvensional tidak adaptif Huffman
coding, yang digunakan dalam standar sebelumnya. Itu deblocking filter dapat memberikan
kontribusi sekitar 5-8 persen pada tujuan (PSNR) kualitas video, dan peningkatan kualitas
subjektif yang bahkan lebih mengesankan. Akhirnya, RD Optimizer menambah satu lagi 5-8
persen dalam pengurangan bit rate, meskipun manfaat sebenarnya melalui pengambilan

keputusan di bagian coding lain jauh lebih besar. Bahkan, tidak ada coding baru elemen
sebanyak RD Optimizer terlibat dalam berbagai kegiatan coding, dan untuk Oleh karena itu, itu
adalah salah satu operasi yang lebih mahal dari encoder.
Ini semua dengan mudah menambahkan hingga sekitar 100 persen, membuat codec untuk
dua kali lebih baik daripada mengatakan H.263 dan jauh lebih baik daripada MPEG-2.
Tampaknya H.264 memiliki mencapai tujuan yang ditetapkan pada awal bab ini. Namun, itu
harus diingat bahwa selama pengembangan H.264, pelajaran juga telah dimanfaatkan dalam
standar yang lebih tua, meningkatkan kinerja kompresi mereka dari waktu ke waktu, karena
encoders bebas untuk kode MB dengan cara yang mereka inginkan, tentu saja, untuk sejauh
sintaks coding tidak dilanggar. Misalnya, optimasi RD dapat dengan mudah digunakan dalam
codec apapun tanpa mempengaruhi sintaks standar.
Gambar 11.33 membandingkan kinerja kompresi empat codec, MPEG-2, H.263, MPEG4 visual dan H.264, untuk berbagai tingkat bit uji standar mandor urutan CIF @ resolusi 10 Hz.
Peningkatan kualitas sangat terlihat.
Di atas relatif coding gain dari codec hanya untuk satu urutan, dan kinerja relatif dapat
bervariasi dengan konten video. Menimbang bahwa H.264 memiliki sudah diganti H.263 /
MPEG-4 visual, itu sangat penting untuk mengetahui yang relatif keunggulan atas MPEG-2. Hal
ini karena saat ini, beberapa organisasi penyiaran di seluruh dunia yang sedang dalam proses
menuju digital TV terestrial ingin tahu berapa banyak manfaat nyata yang bisa dapatkan dari
H.264 lebih MPEG-2. Apakah keuntungan kompresi membenarkan kompleksitas ekstra?

Gambar 11.33 Perbandingan MPEG2, MPEG4, H.263 dan H.264

Untuk menjawab pertanyaan ini, mari kita lihat kinerja relatif H.264 atas MPEG-2
berasal dari codec hardware produsen untuk rentang yang sangat luas dari konten video di
berbagai tingkat bit, yang ditunjukkan pada Gambar 11.34 [21]. Setiap titik pada diagram pencar
menunjukkan hasil coding dari satu konten video. Setiap video dikodekan dengan MPEG-2
encoder pada tingkat bit tertentu, dan itu juga dikodekan dengan H.264, menargetkan untuk
kualitas subjektif yang sama diproduksi di bawah MPEG-2. Itu pengurangan bit H.264 dihitung
sebagai jumlah bit yang disimpan selama MPEG-2 pada saat itu kualitas dan bit rate.

Gambar 11.34 Bit penghematan tingkat H.264 lebih MPEG-2 pada tingkat bit yang sama
(Sumber: [21])

Angka ini menunjukkan bahwa tabungan dalam bit tergantung konten video dan juga
bervariasi dengan bit rate. Untuk beberapa video, penghematan sedikit lebih dari 70 persen, yang
berarti bahwa H.264 membutuhkan kurang dari 30 persen dari MPEG-2 bit rate atau bahwa lebih
dari tiga kali kompresi efisien daripada MPEG-2. Di sisi lain, orang dapat menemukan video
yang menghemat hampir 10 persen suku bit, atau membutuhkan 90 persen dari MPEG-2 bit rate.
Untuk siaran hiburan TV, di mana kualitas program yang diharapkan berada di konten terbaik
dan yang video terduga, mungkin salah satu harus konservatif dan mencari minimum disimpan
bit rate. Dalam hal ini, seperti yang terlihat, tidak terlalu banyak.
Namun, jika ada beberapa video yang akan ditampung di saluran tertentu dan menyimpan
bit pada setiap dicapai sesuai dengan angka ini, kemudian melalui multiplexing statistik, ratarata, tabungan dalam bit dapat menjadi signifikan. Semakin besar jumlah saluran, semakin besar
kemungkinan adalah rata-rata nilai-nilai ini yang akan dicapai. Ini lebih kemungkinan akan
dirilis pada satelit dari siaran terestrial, sebagai mantan dengan bandwidth dari 36 MHz dapat
menampung saluran TV lebih dari yang terakhir dengan 8 MHz.

11.11.2 Kompleksitas
Keuntungan kompresi H.264 atas pendahulunya dicapai pada biaya tambahan encoding dan
decoding kompleksitas. Mirip dengan gain kompresi, sulit untuk memberikan angka
kompleksitas fungsi encoding. Selain itu, kompleksitas hardware dari satu elemen atas yang lain
tidak sesuai rasio kompleksitas perangkat lunak. Misalnya, dalam hal perangkat keras, CABAC
jauh lebih kompleks daripada gerak estimasi, estimasi gerak pencarian terutama penuh sederhana
dalam perangkat keras, tetapi dalam hal perangkat lunak, estimasi gerak memerlukan terlalu
banyak operasi CPU dan siklus. Jika kita resor untuk kompleksitas perangkat lunak, yang lebih
mudah untuk mengukur pada waktu CPU, pengujian kami dengan berbagai video di berbagai
tingkat bit menunjukkan bahwa dua yang paling mahal operasi encoding adalah estimasi gerak
dan optimasi RD. Estimasi gerak kompleksitas terutama dipengaruhi oleh ukuran jendela
pencarian. Dengan EPZ dan pencarian maksimum 16 piksel, itu terdiri dari sekitar 65 persen dari
pengkodean waktu, turun ke 25 persen untuk area pencarian dari empat piksel. Nilai-nilai ini
masing-masing menjadi sekitar 8 persen lebih rendah untuk QP kecil. Alasannya adalah bahwa
pada QP lebih besar, karena untuk terminasi dini dan lebih dari MB yang akan dilewati, operasi
encoding lain disita dan sebagian besar dari waktu CPU pergi ke estimasi gerak. Di Sebaliknya,
waktu optimasi RD tergantung isi gambar lebih dan bervariasi dengan parameter kuantisasi (bit
rate encoding). Dalam gambar bertekstur dengan QP lebih rendah, RD waktu eksekusi secara
signifikan lebih tinggi daripada dalam gambar yang lebih lembut, dan gerak kisaran estimasi
tidak mempengaruhi kompleksitas ini terlalu banyak. Namun, dalam hal sebagian waktu
encoding, ketika gerakan estimator menggunakan sedikit waktu, sebagian RD adalah meningkat.
Sebagai contoh, pada berkualitas tinggi rinci gambar dengan pencarian empat piksel, di mana
estimasi gerak hanya 17 persen dari waktu encoding, bagian ini untuk RD adalah sekitar 70
persen! Ketika QP meningkat, porsi RD adalah sekitar 60 per persen, dan gerak estimasi
meningkat menjadi 27 persen. Meskipun sebenarnya waktu estimasi gerak tidak meningkat, itu
hanya proporsi yang berubah. Di sisi lain dari kompleksitas, untuk pencarian gerak besar 16
piksel, dengan bit rate yang tinggi (QP rendah) coding, bagian RD waktu CPU adalah sekitar 27
persen dan dari estimasi gerak adalah 57 persen, tetapi pada kualitas yang lebih rendah, nilainilai ini menjadi, masing-masing, 28 dan 66 persen. Argumen ini menyiratkan bahwa jika estimasi
gerak memiliki titik awal yang tepat dalam jendela pencarian sehingga hanya jendela pencarian kecil
cukup, biaya RD akan lebih tinggi dibanding estimasi gerak.

Dengan demikian, seseorang dapat menyimpulkan bahwa jumlah estimasi gerak dan
optimasi RD kompleksitas dapat berkontribusi lebih dari 85 persen dari encoding waktu, dan
karenanya, bagian pengkodean lainnya berkontribusi kurang dari 15 persen. Sekarang, jika kita
membandingkan encoder dan decoder kompleksitas, ada banyak operasi di encoder
yang tidak diperlukan di decoder. Ini termasuk estimasi gerak, optimasi RD, entropi coding,
transformasi dan berbagai keputusan MB encoding. Dengan demikian, dapat dilihat bahwa
kompleksitas decoder bisa kurang dari 10 persen dari encoder, atau encoder adalah sepuluh kali
lebih kompleks daripada decoder. Dalam decoder sendiri, operasi yang paling mahal akan filter
deblocking, diikuti oleh invers transformasi, meskipun ini terdiri dari sebagian kecil pengkodean
kompleksitas.

11.12 Scalable video coding

Tiga bentuk skalabilitas, temporal, spasial dan kualitas, untuk MPEG-2, H.263 dan MPEG-4
visual yang dipelajari secara rinci dalam bab yang bersangkutan. H.264, yang merupakan
ekstensi untuk H.263, sangat kuat mendukung fitur ini. Hal ini terutama karena berbagai
perusahaan aplikasi, mulai dari distribusi video di berbagai kualitas dan resolusi (scalabilities)
perlindungan terhadap video transmisi kerugian dan kesalahan (layering).
Pada tahap awal desain, untuk melakukan skalabilitas temporal, ITU / ISO kelompok
yang berpikir untuk menggunakan filter kernel wavelet pendek ke arah temporal. Hal ini disebut
gerak-kompensasi sementara filtering (MCTF), dimana melalui kompensasi gerak, gambar
selaras temporal, dan melalui diad penyaring (Transform Haar), hirarki gambar temporal disaring
dihasilkan [22]. Namun, percobaan telah menunjukkan bahwa hirarki B-gambar yang sudah
didukung di H.264 kompresi lebih efisien daripada gambar MCTF. Oleh karena itu, kelompok
memilih untuk hirarkis B-gambar sebagai gantinya. Foto-foto ini sangat efisien kode bahwa
mereka bahkan mengubah bentuk struktur skalabilitas spasial dan SNR, yang didefinisikan
sebagai berikut [23]. Artinya, tata ruang dan SNR skalabilitas lakukan selalu termasuk
skalabilitas sementara untuk mengimbangi kekurangan kompresi mereka karena layering. Model
perangkat lunak laboratorium untuk coder ini disebut Model Video scalable bersama (JSVM)
[24].

11.12.1 skalabilitas Temporal


Dalam codec standar, skalabilitas temporal diwujudkan dalam bentuk B-gambar. Karena AVC
memungkinkan B-gambar yang akan digunakan sebagai referensi untuk diri mereka sendiri,
meningkatkan jumlah B-gambar dalam hirarki (hingga 32 frame) dapat meningkatkan gain
kompresi, tentu saja dengan mengorbankan coding lagi penundaan. Perhatikan bahwa dalam
standar lainnya, B-gambar hanya mengacu pada jangkar gambar I dan P, dan karenanya, terlalu
banyak B-gambar berturut-turut tidak efisien kode. Beberapa gambar yang sangat jauh dari
referensi mereka, dan orang-orang yang dekat cenderung untuk mendapatkan mereka prediksi
hanya dari satu referensi (lihat Gambar 11.35), meniadakan konsep prediksi dua arah. Oleh
karena itu, secara keseluruhan, efisiensi kompresi yang satu mengharapkan dari prediksi dua arah
tidak terwujud.

Gambar 11.35 Prediksi Gambar-B Klasik

Gambar 11.36 mengilustrasikan konsep hirarki B-gambar, dimana diad lapisan tambahan
temporal, karena kedekatannya dengan referensi mereka gambar, dapat secara efisien kode. Di
sini gambar referensi dalam daftar 0 dan 1 adalah dibatasi untuk sementara sebelumnya dan
berhasil referensi gambar, masing-masing. Pada gambar, lapisan dasar gambar, biasanya P atau
I-gambar, adalah diidentifikasi oleh temporal identifier lapisan T0, disebut gambar kunci. Jarak
antara dua gambar kunci mendefinisikan panjang GOP. Pengenal dari lapisan tambahan
sementara di urutan pentingnya mereka di tingkat hirarki juga ditampilkan. Setiap set lapisan
sementara {T0, T1,. . . , Tk} dapat diekstrak dan diterjemahkan secara independen dari semua

lapisan dengan identifier sementara T > K. Urutan transmisi / decoding dari gambar di GOP
berikut mereka Agar lapisan sementara Ti.

Gambar 11.36 hirarkis Gambar-B dengan empat tingkat diad (GOP dari 8)

Gambar 11.37 Non diad hirarkis B-gambar

Mengingat bahwa beberapa gambar referensi juga dapat digunakan dalam H.264, yang
daftar gambar referensi dapat direkonstruksi dari lebih dari satu gambar referensi, dan foto-foto
ini dapat dari tingkat duniawi yang sama yang diprediksi. Selain itu, hirarki prediksi mungkin
tidak diad, dan berbagai set gambar dapat diterjemahkan. Sebagai contoh, pada Gambar 11.37,
dua subsequences independen satu-sembilan dan satu-sepertiga dari frame rate penuh dapat
diterjemahkan. Oleh karena itu, dengan mengubah struktur prediksi dan jumlah referensi gambar,
berbagai skalabilitas sementara dapat dihasilkan. Ini semua mempengaruhi efisiensi kompresi
skalabilitas temporal dan, pada saat yang sama, ketergantungan dari gambar didekode.

Akhirnya, hubungan antara ukuran quantiser langkah dari lapisan mempengaruhi efisiensi
kompresi. Dalam MPEG-2, kita melihat bahwa B-gambar, karena prediksi yang lebih baik, dapat
dikodekan kasar dari P-gambar. Di sini juga, kita bisa membuat quantiser ukuran langkah gambar
diprediksi erat menjadi kasar daripada yang lebih jauh dari referensi mereka. The JSVM
merekomendasikan bahwa untuk QP0 parameter quantiser di lapisan dasar, QP pada lapisan tertentu T
temporal [24]

Meskipun strategi ini membuat kualitas gambar dalam hal SNR berfluktuasi, Namun demikian,
gambar direkonstruksi terlihat halus, dan dampaknya terhadap keseluruhan bit penurunan tarif
sangat signifikan, terutama pada ukuran GOP tinggi.

11.12.2 Skalabilitas Tata Ruang


Skalabilitas spasial di H.264 / scalable video coding (SVC) mengikuti prinsip yang sama
digunakan dalam codec standar lainnya dari MPEG-2, H.263 dan MPEG-4 visual. Bahwa adalah,
video dikodekan sedemikian rupa sehingga gambar berbagai resolusi spasial dari bitstream
tunggal dapat diekstraksi. Perbedaan utama antara H.264 / SVC dan codec scalable sebelumnya
adalah cara informasi interlayer dimanfaatkan. Dalam standar sebelumnya, sinyal prediksi untuk
lapisan tambahan dibentuk oleh , referensi direkonstruksi upsampled gerak-kompensasi pixel
dari lapisan yang sama lapisan atau rata-rata keduanya. Masalah utama dengan strategi ini adalah
bahwa dalam sangat daerah bertekstur, gambar upsampled terkontaminasi oleh berat aliasing
kebisingan dan tidak prediktor yang baik untuk lapisan tambahan. Dalam kondisi seperti ini,
encoder lebih memilih untuk menggunakan prediksi gerak-kompensasi dari lapisan sendiri, dan
referensi lapisan data tidak akan ada gunanya. Dengan demikian, untuk dua lapisan skalabilitas,
ada dua encoders independen, dan dibandingkan dengan single-layer encoder, itu kode, pertamatama, 25 persen piksel lebih (lapisan dasar). Kedua, karena piksel ini kurang berkorelasi daripada
single-layer pixel, bit rate keseluruhan akan jauh lebih tinggi. Oleh karena itu, tidak
mengejutkan, jika kita lihat dalam bagian 8.5.7 bahwa skalabilitas spasial menghasilkan lebih
dari 30 bit persen atas lapisan tunggal.
Untuk mengatasi masalah ini, H.264 / SVC mencoba untuk menggunakan informasi
interlayer lebih efisien daripada standar sebelumnya. Pertama-tama, melalui analisis lokal
karakteristik sinyal, encoder memutuskan untuk menggunakan interlayer atau interlayer prediksi.

Beralih antara dua dapat terjadi pada MB dengan dasar MB. Dalam prediksi antar lapisan,
lapisan tambahan secara independen kode dari basis lapisan, dan MBs naannya baik intra kode
atau gerak kompensasi antar kode dari gambar lapisan tambahan. Untuk interlayer coding, tipe
MB yang baru didefinisikan, yang ditandai dengan menetapkan modus bendera dasar [23]. Bila
modus ini diatur, dua jenis prediksi yang dibuat. Ini didefinisikan dalam bagian berikut.

11.12.2.1 Prediksi mode macroblock


Ketika bendera modus dasar diatur, informasi dari setiap 8 x 8 piksel lapisan bawah, seperti
modus, indeks acuan dan MV, ditransfer ke collocated MB di lapisan atas. Dalam hal ini, jika
lapisan referensi antar kode, maka tambahan tersebut Lapisan ini juga memberi syafaat. Di sini,
MB partisi dari lapisan dasar di bidang 8 x 8 dari lapisan referensi upsampled dan dibawa ke
dalam lapisan tambahan (masing-masin empat blok di lapisan tambahan menggunakan satu
mode layer referensi). Terkait MV kemudian diturunkan dengan upscaling para MV lapisan
referensi dengan faktor 2. Sekarang, lapisan tambahan menggunakan semua data tersebut untuk
kode residu gerak-kompensasi yang, tanpa biaya overhead apapun.
Selain ini tipe MB baru, MV dari lapisan referensi juga dapat digunakan sebagai
prediktor untuk coding yang efisien dari MV lapisan tambahan. Jadi, di sini Lapisan tambahan
mengirimkan perbaikan untuk MV lapisan referensi. Ini digunakan jika biaya tambahan MV
pada lapisan tambahan membenarkan mengurangi gerak kompensasi kesalahan pada lapisan ini.

11.12.2.2 Prediksi residu


Informasi dari lapisan referensi juga dapat digunakan sebagai prediksi untuk pengkodean residu
lapisan tambahan. Hal ini sama berlaku untuk apakah lapisan tambahan MB adalah jenis baru
(yaitu bendera modus dasar diatur) atau tipe konvensional. ini adalah ditandai dengan bendera
prediksi sisa. Dalam hal ini, sinyal residu dari sesuai 8 x 8 subblock di lapisan referensi blokbijaksana upsampled dan digunakan sebagai prediktor untuk kode residual dari lapisan
tambahan. Dengan demikian, hanya sinyal perbedaan yang sesuai harus dikodekan pada lapisan
tambahan. Itu upsampling dari residual lapisan referensi lebih baik untuk dilakukan dalam
transformasi domain. Hal ini memastikan tidak ada penyaringan akan dilakukan oleh filter
deblocking di blok batas.

Gambar 11.38 Dua spatio-temporal lapisan skalabilitas dengan GOP ukuran 4 untuk
QCIF dan 8 untuk CIF

11.12.3 Mutu (SNR) skalabilitas

Secara kualitas (SNR) skalabilitas, gambar dengan ukuran yang sama tapi kualitas yang berbeda
kode. Seperti yang telah dibahas dalam MPEG-2 dan H.263, dalam bentuk skalabilitas, yang
peningkatan kode lapisan distorsi kuantisasi sisa lapisan dasar. Di sana, kami juga mencatat
bahwa jenis skalabilitas, seperti tata ruang, menghasilkan lebih banyak bit dari lapisan tunggal
(sekitar 30 persen). Untuk memerangi terhadap bit yang berlebihan, standar juga
menggabungkan skalabilitas ini dengan satu sementara untuk mendapatkan dari prediksi dua
arah. Namun, prediksi sementara dapat diterapkan dalam berbagai suatu cara, di mana beberapa
dasar atau perangkat tambahan lapisan yang lebih baik untuk menggunakan prediksi mereka dari
satu sama lain untuk efisiensi kompresi lebih. Tentu saja, ini meningkatkan ketergantungan antar
mereka dan dapat membuat gambar melayang. Dalam MPEG-2, kita bahas peran termasuk
gambar tambahan pada prediksi lapisan dasar loop untuk meningkatkan kompresi, tapi dengan
mengorbankan gambar melayang. Hal ini menyatakan bahwa semacam ini skalabilitas memiliki
sekitar 10 persen lebih bit atas lapisan tunggal [23].
H.264 / SVC mendefinisikan dua jenis skalabilitas kualitas, skalabilitas butiran kasar
(CGS) dan skalabilitas butir menengah (MGS). Ini didefinisikan dengan sama Tujuan dari
skalabilitas granular halus yang ditetapkan untuk MPEG-4 visual. The CGS adalah mirip dengan
skalabilitas SNR dari H.263 didefinisikan dalam bagian 9.8.2. Dalam CGS, yang parameter
quantiser lapisan tambahan kurang dari itu dari lapisan dasar, Q1 <Q0, kode distorsi kuantisasi
residu. Gambar 11.39 menunjukkan CGS untuk kelompok empat gambar. Karena semua lapisan

CGS adalah ukuran yang sama, interlayer upsampling prediksi tidak digunakan. CGS
memungkinkan sejumlah poin tingkat sama dengan jumlah lapisan, yaitu, satu set dasar dan
lapisan peningkatan gambar yang memberikan bit rate sasaran.

Gambar 11.39 SNR dengan CGS skalabilitas

Untuk meningkatkan efisiensi coding dan jumlah didukung poin tingkat, MGS didefinisikan.
Dalam MGS, blok peningkatan koefisien transformasi dapat dibagi menjadi beberapa lapisan,
mirip dengan teknik layering dengan frekuensi partisi data yang selektif diperkenalkan di
MPEG-2 (lihat bagian 8.5.2). istirahat poin di scan zigzag menentukan kualitas gambar di
berbagai lapisan. karena blok ukuran 4 x 4, secara teoritis, hingga 16 MGS lapisan dapat
didefinisikan. Dengan demikian, MGS dapat memberikan degradasi anggun antara lapisan
kualitas dengan beralih antara berbagai Lapisan MGS dalam unit akses. Untuk membatasi
propagasi melayang, gambar utama digunakan sebagai poin sinkronisasi antara encoder dan
decoder. MGS menyediakan fleksibilitas untuk adaptasi bitstream and error ketahanan. Adaptasi
Bitstream disediakan di tingkat paket (unit NAL).
Gambar 11.40 menunjukkan lapisan MGS dengan transformasi koefisien dipartisi lebih
tiga lapisan kualitas MGS.
Gambar 11.41 menunjukkan contoh bagaimana mengubah blok tambahan koefisien dapat
dibagi menjadi tiga set koefisien yang dapat memberikan peningkatan gambar pada Gambar
11.40, diidentifikasi oleh lapisan kualitas Q1-Q3.

Gambar 11.40 SNR dengan skalabilitas MGS

Gambar 11.41 (a) Asli blok, dan bagian dari blok untuk kualitas lapisan (b) Q1,
(c) Q2 dan (d) Q3

11.12.4 Skalabilitas gabungan


Hal ini dimungkinkan untuk menggabungkan konsep skalabilitas tata ruang, SNR dan
sementara untuk menghasilkan bitstream yang mendukung berbagai tingkat laju tata ruang,
kualitas dan temporal. Gambar 11.42 menunjukkan contoh skalabilitas spatio-SNR-temporal
dengan GOP empat gambar. Dalam gambar ini, lapisan peningkatan coder scalable tata ruang
dikodekan pada dua lapisan kualitas, Q0 dan Q1 (SNR skalabilitas), menghasilkan meningkatkan
1 dan meningkatkan 2 bitstream. Skalabilitas temporal, seperti biasa, hadir, di mana lapisan
dasar, dengan resolusi gambar spatio-temporal yang rendah, memiliki tingkat yang lebih rendah
gambar dan gambar yang lebih kecil daripada lapisan tambahan, menghasilkan lapisan dasar
bitstream.

Dalam gambar ini, skalabilitas tata ruang menggunakan prediksi interlayer tambahan
dasar, tetapi dalam skalabilitas SNR, prediksi antara meningkatkan 1 andenhance 2 adalah baik
interlayer dan intralayer. Resolusi Kualitas spatio-temporal di berbagai titik lebih baik
divisualisasikan pada plot tiga dimensi, seperti yang ditunjukkan pada Gambar 11.43. Angka ini
menunjukkan berbagai titik ekstraksi yang sesuai gabungan video yang terukur dari Gambar
11.42. Untuk urutan input video CIF @ 30 Hz, CIF @ 30 Hz dan Q1 adalah titik angka tertinggi,
dan QCIF@7.5 Hz, Q0 adalah titik tingkat diekstrak terendah.

11.12.5 Profil SVC


Untuk perpanjangan

SVC H.264, standar menetapkan tiga profil, dikenal dengan

H.264 / SVC sebagai profil dasar berskala, profil tinggi berskala dan profil tinggi intra berskala.
11.12.5.1 Profil dasar berskala
Profil ini terutama ditujukan untuk video conferencing, mobile broadcasting dan pengawasan
aplikasi dengan kemampuan pemrosesan yang terbatas. Profil tersebut dibangun di atas versi
dibatasi profil dasar H.264 yang lapisan dasar aliran berskala harus sesuai. Dalam profil ini, rasio
resolusi tata ruang antara lapisan berturut-turut terbatas pada 1,5 dan 2 di kedua arah horisontal
dan vertikal. Selain itu, coding interlaced tidak termasuk dalam profil ini. Profil mendukung Biris di lapisan tambahan.
11.12.5.2 Profil tinggi berskala
Profil ini dibangun di atas profil tinggi H.264 dan terutama dirancang untuk siaran, streaming
dan penyimpanan aplikasi. Keterbatasan profil dasar berskala belum ditemukan. Lapisan dasar
high-profile bitstream berskala harus sesuai dengan profil tinggi H.264.
11.12.5.3 Profil intra tinggi berskala
Profil
sesuai

ini

terutama

dengan

menargetkan

profil

ini

aplikasi
berupa

profesional.
gambar

Semua

IDR.

gambar

Semua

bitstreams

alat

untuk

profil tinggi berskala didukung di profil ini.


11.13 Jaringan lapisan abstraksi
Salah satu keberangkatan yang berbeda dari H.264 dari pendahulunya adalah yang arsitektur
dua-lapisan untuk memisahkan metodologi kompresi video dari transportasi yang melalui
jaringan. Lapisan pertama disebut pengkodean video lapisan (VCL), seperti codec standar

lainnya, mendefinisikan metodologi yang digunakan untuk kompresi video yang telah kami
jelaskan sejauh ini. Lapisan kedua, yang disebut jaringan abstraksi lapisan (NAL), memfasilitasi
pengiriman data VCL serta data tambahan (non-VCL) ke protokol yang mendasari seperti RTP /
UDP / IP, H.32X atau MPEG-2 transportasi streaming.
Unit VCL NAL berisi data yang mewakili video yang gambar dalam bentuk partisi slice atau
data, sedangkan unit non-VCL NAL mengandung informasi tambahan lainnya seperti set
parameter, informasi waktu dan data tambahan lainnya.
Gambar 11.44 menunjukkan tampilan dasar interfacing VCL dan non-VCL data ke lapisan
jaringan transport melalui NAL. Setiap unit NAL dapat dianggap sebagai paket yang berisi
integer jumlah byte termasuk header dan payload. Header menentukan NAL jenis unit, dan
payload berisi data terkait.

Idealnya, VCL seharusnya tidak menghasilkan NAL unit yang lebih besar dari unit transfer
menengah (MTU) ukuran untuk menghindari IP-lapisan fragmentasi. Hal ini dapat dengan
mudah dicapai dengan kemasan data setiap irisan ke dalam satu unit NAL. Namun, selama unit
NAL lebih kecil dari 64 kbytes, IP melakukan fragmentasi dan rekombinasi paket terfragmentasi.
Oleh karena itu, bahkan oleh paketisasi sederhana, paling rekaman satuan aliran NAL dapat
disampaikan.
11.13.1 NAL Format Header
Unit NAL menentukan format generik untuk mengirim data video melalui berorientasi baik
paket (misalnya protokol Internet / sistem RTP) dan sistem transportasi bitstream berorientasi
(misalnya H.320 dan MPEG-2 / H.222.0 sistem). Pada yang terakhir, data yang ditransmisikan
dalam paket dengan identifikasi batas-batas unit NAL untuk sistem yang membutuhkan
pengiriman seluruh atau sebagian Unit aliran NAL sebagai aliran memerintahkan byte atau bit.
Setiap unit NAL terdiri dari header 1-byte dan muatan variabel jumlah byte yang berisi simbol
kode. Header menunjukkan jenis unit NAL dan apakah unit VCL NAL adalah bagian dari

referensi atau nonreference. Selain itu, juga bisa menandakan kepentingan relatif dari unit NAL
dan pelanggaran sintaks. Format header NAL ditunjukkan pada Gambar 11.45.

Yang pertama bitFis sedikit terlarang, biasanya diatur ke nol pada sumbernya. Elemen jaringan
dapat menggunakannya untuk indikasi kesalahan dan set ke 1 di hadapan kesalahan dalam unit
NAL. Hal ini juga dapat digunakan dalam lingkungan jaringan yang heterogen, seperti garis
kabel gabungan dan lingkungan nirkabel, di mana beberapa decoder dapat dibuat untuk
beroperasi pada unit NAL mengandung kesalahan bit dan yang lainnya tidak. Dua bit fieldNRI
(nal_ref_idc) dapat digunakan untuk menunjukkan pentingnya unit NAL untuk proses
rekonstruksi. Semakin tinggi nilai ini, semakin pentingnya unit NAL. Misalnya, nol
menunjukkan bahwa unit NAL tidak digunakan sebagai acuan oleh unit lain dan karenanya dapat
dibuang oleh decoder atau elemen jaringan tanpa risiko gambar melayang. TheTYPEis bidang 5bit, yang mencirikan unit NAL sebagai salah satu dari 32 jenis yang berbeda, dari yang pertama
12 saat didefinisikan oleh H.264. Jenis 24- 31 yang dibuat tersedia untuk penggunaan di luar
H.264. RTP payload menentukan beberapa nilai-nilai untuk signaling, agregasi dan fragmentasi
paket. Semua nilai-nilai lain yang disediakan untuk penggunaan masa depan dengan H.264.
Dalam format aliran byte, unit NAL diawali dengan 3-byte kode start awalan. Batas-batas unit
NAL kemudian dapat diidentifikasi dengan mencari data kode untuk pola awalan kode awal
yang unik. Untuk mencegah timbulnya kecelakaan kode awalan start dalam data payload,
payload adalah disisipkan dengan 'pencegahan emulasi' byte.
11.13.2 Parameter set
Untuk decoding bitstream yang tepat, decoder harus menyinkronkan diri dengan encoder, serta
dengan sintaks. Decoder perlu tahu bagaimana irisan dikodekan. Beberapa informasi yang dapat
berubah dari slice untuk mengiris, seperti jenis slice, dapat dikirim dalam header slice. Ada
parameter pengkodean lainnya, seperti format gambar, ukuran gambar, jenis entropi encoder, bit
rate dan MV resolution, yang tidak terlalu sering berubah selama sesi video, dan karenanya,
mereka tidak perlu berulang kali dikirimkan. Berbagai kombinasi parameter ini, disebut
parameter set, dapat disimpan dalam tabel baik oleh encoder dan decoder [17]. Jika diperlukan,
encoder mengirimkan indeks meja dan penerima mendapat semua parameter yang digunakan

dari meja kembarannya. Ada dua set parameter dari data VCL. Satu set disebut set parameter
gambar (PPS) yang berisi informasi tentang semua irisan dari satu atau lebih gambar. Set
lainnya, yang disebut set parameter urutan (SPS), berisi informasi tentang urutan. Setiap unit
VCL NAL berisi pengidentifikasi untuk PPS, dan PPS memiliki pengidentifikasi untuk SPS yang
relevan.
Set parameter bukanlah alat ketahanan kesalahan, tapi karena decouples transmisi sering berubah
contoh video encoded dari informasi jarang berubah, penggunaan yang tepat dapat meningkatkan
baik ketahanan kesalahan dan efisiensi kompresi. Harus dipastikan bahwa PPS dan SPS tiba di
decoder dalam waktu. Oleh karena itu, mereka dapat ditularkan out-of-band menggunakan
protokol kontrol yang handal atau dapat dikirim dalam-band dengan perlindungan lapisan
aplikasi yang sesuai. Gambar 11.46 mengilustrasikan contoh komunikasi pada parameter yang
ditetapkan.

Dalam gambar, encoder hanya mengirimkan tabel indeks # 2 untuk menginformasikan decoder
tentang dimensi gambar, MVand entropi jenis coding, dan decoder mengambil data tersebut dari
tabel sendiri pada indeks 2 #. Bit yang diperlukan untuk mengirim indeks jauh lebih sedikit
kemudian mengirimkan semua parameter set satu per satu, meningkatkan efisiensi kompresi.
Mereka dapat dikirim sesering diperlukan untuk meningkatkan ketahanan kesalahan. Sampai
dengan 32 SPS dapat didefinisikan, tetapi hanya satu set dikirim sampai Rp berikutnya. Set ini
mendefinisikan profil dan tingkat, ukuran gambar, format krom dan kedalaman bit, matriks
skala, gambar jumlah order, dll PPS bisa sampai 256, tetapi hanya satu set yang digunakan untuk
setiap gambar. Mereka mendefinisikan entropi coder (CAVLC atau CABAC), parameter

kelompok slice, jumlah referensi gambar dalam daftar 0 dan daftar 1, matriks skala, initialQP,
dll. Selain set parameter dari lapisan pengkodean video (VCL), beberapa-VCL non informasi
tambahan tambahan (SEI) yang membantu decoding dan proses tampilan juga dikirim. SEI berisi
sejumlah fitur yang dapat meningkatkan kegunaan data video decode tanpa memerlukan
perubahan proses decoding. Misalnya, parameter untuk menyegarkan decoder bertahap dapat
menandakan dalam SEI. Demikian pula, decoding dan waktu presentasi perangko untuk gambar
yang ditransmisikan sebagai SEI. Fungsi pendukung lainnya dari SEI termasuk parameter
penyangga dan informasi waktu, yang tidak mempengaruhi nilai piksel dan dapat dibuang oleh
decoder.
11.13.3 Unit Akses
Satu set unit NAL yang terdiri hanya satu gambar lengkap diterjemahkan disebut Unit anaccess.
Selain itu, unit akses mungkin berisi satu atau lebih berlebihan kode irisan / gambar atau unit
NAL lainnya informasi tambahan. Sebagai contoh, dapat berisi SEI untuk menunjukkan jenis
irisan hadir dalam gambar kode utama dan menentukan deteksi batas antara unit akses. Semua
unit NAL dalam sebuah unit akses memiliki identifierT sementara yang sama. Unit akses
pertama setiap urutan video unit akses IDR, dan unit berikutnya adalah jenis non-Rp. Unit akses
yang berhubungan dengan periode penyangga pesan SEI yang Menginisialisasi buffer gambar
kode (CPB) disebut mengakses unit 0. Nilai pengenal bertambah dengan 1 untuk setiap unit
akses

berikutnya

dalam

rangka

decoding.

Di SVC, mirip dengan identifier temporal AVC, seseorang dapat menentukan identifier lapisan.
Identifier ini, selain waktu identifier T, juga mendefinisikan lapisan ketergantungan pengenal D,
yang menunjukkan bagaimana pembangunan gambar pada setiap lapisan tergantung pada satu
sama lain. Setiap lapisan ketergantungan berisi satu atau lebih lapisan kualitas diidentifikasi oleh
identifierQ kualitas. Dengan demikian, lapisan SVC diidentifikasi oleh tiga ID: temporal ID (T),
ID ketergantungan (D) dan kualitas (yaitu SNR) ID (Q), yang ditulis sebagai triplet (D, T, Q).
Sebagai contoh, lapisan dasar NAL unit resolusi terendah temporal dan SNR skalabilitas
diidentifikasi

sebagai

(0,0,0).

Dalam setiap unit akses, lapisan dikodekan dalam meningkatkan urutan identifier lapisan
mereka. Untuk coding layer, sudah dikirimkan data lapisan lain dengan identifier lapisan kecil
dapat digunakan. Lapisan untuk memprediksi dari dapat dipilih secara unit akses dan disebut
sebagai lapisan referensi. Lapisan dasar memiliki pengenal lapisan sama dengan nol dan

dikodekan

dalam

kesesuaian

dengan

salah

satu

profil

H.264.

Skalabilitas temporal dicapai dengan partisi unit akses ke basis temporal dan satu atau lebih
sementara lapisan tambahan. Dengan demikian, lapisan dipisahkan oleh sementara ID mereka,
seperti telah kita lihat, misalnya, Gambar 11.36, dan diterjemahkan dalam urutan ID duniawi
mereka, Ti.
Pada setiap waktu yang ditetapkan oleh sementara ID, unit akses skalabilitas tata ruang dan SNR
didefinisikan berdasarkan ketergantungan dan kualitas mereka ID. Untuk skalabilitas tata ruang,
biasanya mendasarkan dan lapisan peningkatan memiliki ID kualitas yang sama, tapi ID
ketergantungan mereka berbeda. Untuk SNR skalabilitas, terutama MGS, ada kualitas dan
ketergantungan berbagai lapisan. Beralih di antara lapisan perbaikan kualitas dilakukan pada
semua unit akses, saat beralih antara lapisan ketergantungan yang berbeda hanya mungkin
sebesar Rp akses unit. Menggunakan lapisan kualitas perbaikan dalam lapisan ketergantungan
yang sama, adalah mungkin untuk menentukan skalabilitas berbasis paket seperti decoder tidak
dapat mendeteksi jika sebuah paket terjatuh atau telah sengaja dibuang.
11.13.4 Jenis NAL
Tabel 11.9 merangkum daftar 32 Unit jenis NAL, diidentifikasi dalam 5-bit NAL sundulan. Unit
NAL 1-5 berisi data VCL yang berbeda, yang dijelaskan kemudian. Unit NAL 6-12 unit nonVCL berisi informasi tambahan seperti parameter set dan informasi tambahan. Parameter set
sundulan data yang tidak berubah di sejumlah unit NAL dan kemudian dikirim untuk mencegah
pengulangan mereka. Informasi tambahan adalah waktu atau menangani data lain yang
meningkatkan kegunaan decoder tetapi tidak penting dalam decoding gambar. Unit NAL 12-23
dicadangkan untuk penggunaan masa depan ekstensi H.264, dan jenis 24-31 tersedia untuk
digunakan oleh berbagai aplikasi. Dari lima jenis unit NAL membawa data VCL, irisan dari Rp
atau I-gambar (yaitu gambar dengan semua irisan intra) terletak di tipe 5 Unit NAL, sementara
mereka yang termasuk non-IDR atau non-I- foto (P atau B-gambar) yang dikemas dalam unit
NAL tipe 1, dan tipe 2-4 ketika DP digunakan. Namun, dalam H.264, ketika DP diaktifkan,
setiap slice dibagi menjadi tiga partisi yang terpisah dan masing-masing partisi terletak di tipe 2,
tipe 3 atau tipe 4 Unit NAL.

Sebuah unit NAL tipe 2, juga dikenal sebagai partisi A, terdiri dari informasi yang paling penting
dari bitstream video terkompresi untuk P dan B-iris, termasuk alamat MB, MV dan header
penting. Jika ada MBs di iris ini intra kode, pola blok mereka kode dan transformasi koefisien
yang dikemas ke dalam sebuah unit tipe 3 NAL, juga dikenal sebagai partisi B. Tipe 4 NAL, juga
dikenal sebagai partisi C, membawa koefisien transformasi dari gerakan-kompensasi gambar
antar dan inter kode blok-pola MB.
11.13.4.1 NAL untuk SVC
Meskipun spesifikasi lengkap dari SVC belum selesai belum, ada saran untuk paketisasi mereka.
Proposal yang diajukan ke gugus tugas rekayasa Internet (IETF) menunjukkan 3-byte
diperpanjang sundulan ke 1-byte NAL Unit sundulan [25]. Unit NAL baru untuk aliran SVC
ditunjukkan pada Gambar 11.47 dengan beberapa penjelasan singkat dari masing-masing
bendera.

R: 1-bit reserved_one_bit. Reserved bit for future extension. R must be equal to 1.


I: 1-bit idr_flag. This component specifies whether the represented layer is an (IDR) information.
PRID: 6-bit priority_id. This flag specifies a priority identifier for the NAL unit. A lower value
of prid indicates a higher priority.
N: 1-bit no_inter_layer_pred_flag. This flag specifies whether interlayer prediction may be used
for decoding the coded slice.
DID: 3-bit dependency_id. This component indicates the interlayer coding dependency level of a
layer. At any access unit, a layer representation with a given dependency_id may be used for

interlayer prediction of a layer with a higher dependency_id but cannot not be used for interlayer
prediction of a lower dependency_id.
QID: 4-bit quality_id. This component indicates the quality level of an MGS layer
representation. At any access unit and for identical dependency_id values, a layer with quality_id
equal to Qiuses a layer of quality_idQi

1 for interlayer prediction.

TID: 3-bit temporal_id. This component indicates the temporal level of a layer representation.
The temporal_id is associated with the frame rate, with lower values of temporal_id
corresponding to lower frame rates. A layer representation at a given temporal_id typically
depends on layer representations with lower temporal_id values, but it never depends on layer
representations with higher temporal_id values.
U: 1-bit use_ref_base_pic_flag. A value of 1 indicates that only reference base pictures are used
during the inter prediction process, and a value of 0 means that they are not used.
D: 1-bit discardable_flag. A value of 1 indicates that the current NAL unit is not used for
decoding NAL units with values of dependency_id higher than the one of the current NAL unit
in the current and all subsequent access units. Such NAL units can be discarded without risking
the integrity of layers with higher dependency_id values. discardable_flag equal to 0 indicates
that the decoding of the NAL unit is required to maintain the integrity of layers with higher
dependency_id.
O: 1-bit output_flag. Affects the decoded picture output process.
RR: 2-bit reserved_three_2bits. Reserved bits for future extension. RR must be equal to 11 (in
binary form).

11.14 Problems
1. Pixels ad of Figure 11.48 belong to a 4x4 block with the given neighbouring border pixels as
shown. Find their prediction values if they are intra 4x4 coded with the following modes:
a. 0
b. 1
c. 2

2. Show that for the integer transforms of length 4 to be orthonormal, the DC and the second AC
coefficients should be divided by 2, but the first and the third AC coefficients should be divided
by

. Determine the inverse transformation matrix, and show that it is an orthonormal matrix.

3. A block of 4x4 pixels given by

are two-dimensionally transformed by 4x4 integer transform of problem 2. Show that the
resultant two-dimensional transform coefficients would be the same as used in eqn. 11.13.
4. In problem 3, find the reconstructed pixel block for the following QP:
a. QP=4
b. QP=36
5. Find the quantiser step sizes for the following luma QP:
a. QP=8
b. QP=26
c. QP=48
d. QP=51
6. Find the quantiser step size for chroma of problem 5.
7. Find the zero-order Exp-Golomb of parameter p with signed direct mapping if
a. p=5
b. p=-5

8. Find the mode and motion Lagrangian parameters for QP=36

References
1. WIEGAND, T.: H.26L Test Model Long-Term Number 9 (TML-9) draft0,
VCEG-N83 d1, Germany, December 2001
2. ITU-T recommendation H.264: Advanced video coding for generic audio
visual services, March 2005
3. WIEGAND, T. and SULLIVAN, G.: Draft ITU-T recommendation and final
draft international standard of joint video specification (ITU-T Rec. H.264 |
ISO/IEC 14496-10 AVC), March 2003
4. TOURAPIS, A.M., LEONTARIS, A., SUHRING, K. and SULLIVAN, G.:
H.264/14496-10AVC reference software manual, Joint Video Team (JVT)
of ISO/IEC MPEG&ITU-T VCEG, 31st meeting, London, UK, 28 June
3 July 2009
5. KUMAR, S., XU, L., MANDAL, M.K. and PANCHANATHAN, S.: Error
resiliency schemes in H.264/AVC standard,J. Vis. Commun. Image Representation, special
issue on emerging H.264/AVC video coding standard,
17:2, April 2006, pp. 425450
6. TOURAPIS, H.Y.C., TOURAPIS, A.M. and TOPIWALA, P.: Fast motion
estimation within the JVT codec, Joint Video Team (JVT) of ISO/IEC
MPEG&ITU VCEG, 917 October 2002, Document JVT-E023
7. WIEGAND, T., SULLIVAN, G.J., BJONTEGARD, G. and LUTHRA, A.:
Overview of the H.264/AVC video coding standard, IEEE Trans. Circuits
Syst. Video Technol., 2003, 13:7, pp. 560576
8. LISM, P., JOCH, A., LAINEMA, J., BJONTEGRAD, G. and KARCZEWICZ, M.: Adaptive
deblocking filter,IEEE Trans. Circuits Syst. Video
Technol., 2003, 13:7, pp. 614619
9. OSTERMAN, J., BORMANS, J., LIST, P., MARPE, D., NORROSCHKE, M.,
PEREIRA, F., STOCKHAMMER, T. and WIEGAND, T.: Video coding with
H.264/AVC: tools, performance and complexity,IEEE Trans. Circuits Syst.
Magazine, 2004, pp. 728
10. MARPE, D., SCHWARZ, H. and WIEGAND, T.: Context-based adaptive
binary arithmetic coding in the H.264/AVC video compression standard,

IEEE Trans. Circuits Syst. Video Technol., 2003, 13:7, pp. 620636
11. DESAI, D.: Study and evaluation of the H.264 coding standard, March 2008
12. ORTEGA, A. and RAMCHANDRAN, K.: Rate-distortion methods for
image and video compression,IEEE Signal Process. Mag., 1998,15, pp. 2350
13. WIEGAND, T., SCHWARZ, H., JOCH, A., KOSSENTINI, F. and
SULLIVAN, G.J.: Rate-constrained coder control and comparison of video
coding standards, IEEE Trans. Circuits Syst. Video Technol. 2003,13:7,
pp. 688703
14. GHANDI, M.M. and GHANBARI, M.: A Lagrangian optimised rate control
algorithm for the H.264/AVC encoder, Proc. IEEE Int. Conf. on Image
Process. (ICIP04), 2427 October 2004, Singapore
15. STOCKHAMMER, T., HANNUKSELA, M.M. and WIEGAND, T.: H.264/
AVC in wireless environment,IEEE Trans. Circuits Syst. Video Technol.,
2003,13:7, pp. 657673
16. WENGER, S., KNORR, G.D., OTT, J. and KOSSENTINIS, F.: Error resilience support in
H.263,IEEE Trans. Circuits Syst. Video Technol., 1998,
8, pp. 867877
17. WENGER, S.: H.264/AVC over IP, IEEE Trans. Circuits Syst. Video
Technol., 2003, 13:7, pp. 645656
18. KARCZEWICZ, M. and KURCEREN, R.: The SP- and SI-frames design for
H.264/AVC,IEEE Trans. Circuits Syst. Video Technol., 2003, 13:7,
pp. 637644
19. SETTON, E. and GIROD, B.: Rate-distortion analysis and streaming of SP
and SI frames, IEEE Trans. Circuits Syst. Video Technol., 2006, 16:6,
pp. 733743
20. GHANBARI, M., CRAWFORD, D., FLEURY, M., KHAN, E., WOODS, J.,
LU, H.,et al.: Future performance of video codecs, Research report for
Office of Communications (Ofcom), London, November, 2006
21. MITCHINSON, D.: Tandberg television SMPTE presentation, http://www.
atlanta-smpte.org
22. OHM, J.: Three-dimensional subband coding with motion compensation,

IEEE Trans. Image Process., 1994, 3:5, pp. 559571


23. SCHWARZ, H., MARPE, D. and WIEGAND, T.: Overview of the scalable
extension of the H.264/MPEG-4 AVC video coding standard,IEEE Trans.
Circuits Syst. Video Technol., September 2007
24. REICHEL, J., SCHWARZ, H. and WEIN, M.: Joint scalable video model 11
(JSVM 11), Joint Video Team, Doc. JVT-X202, 2007
25. WANG, Y.K. and SCHIERL, T.: RTP payload format for SVC video, draftietf-avt-rtp-svc21.txt, 26 April 2010

Anda mungkin juga menyukai