




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第5章視頻編碼方法5.1視頻編碼基礎(chǔ)5.2基于塊的變換編碼5.3預(yù)測編碼5.4基于內(nèi)容的編碼5.5可分級視頻編碼5.6本章小結(jié)
5.1視頻編碼基礎(chǔ)
5.1.1編碼概述
1.編碼系統(tǒng)
視頻編碼算法的組成在很大程度上是由視頻序列建模所采用的信源模型確定的。視頻編碼器尋求用它的信源模型描述視頻序列的內(nèi)容。信源模型可做出圖像序列的像素之間在時間和空間上相關(guān)性的假設(shè),也可考慮物體的形狀和運動或照度的影響。圖5-1中,給出了一個視頻編碼系統(tǒng)的基本組成。圖5-1視頻編碼系統(tǒng)的基本組成在視頻編碼器中,首先用信源模型的參數(shù)描述數(shù)字化的視頻序列。如果使用像素統(tǒng)計獨立的信源模型,那么這種信源模型的參數(shù)就是每個像素的亮度和色度的幅度。另一方面,如果使用把一個場景描述成幾個物體的模型,那么參數(shù)就是各個物體的形狀、紋理和運動等。然后,信源模型參數(shù)被量化成有限的符號集。量化參數(shù)取決于比特率與失真之間所期望的折中。最后,用無損編碼技術(shù)把量化參數(shù)映射成二進制碼字,這種技術(shù)進一步利用了量化參數(shù)的統(tǒng)計特性。解碼器反向進行編碼器的二進制編碼和量化過程,重新得到信源模型的量化參數(shù),然后,解碼器的圖像合成算法用信源模型的量化參數(shù)計算解碼的視頻幀。
2.視頻編碼方案分類
按照是否需要對視頻圖像的內(nèi)容進行分析,可將視頻編碼技術(shù)分為基于波形的視頻編碼和基于內(nèi)容的視頻編碼,前者允許對任意視頻信號進行有效編碼而不需要分析視頻內(nèi)容,后者需要識別視頻序列中的區(qū)域和物體并對它們進行編碼。
1)基于波形的編碼
該技術(shù)試圖盡可能準(zhǔn)確地表示各個像素的顏色值,而不考慮一組像素可以表示一個物理物體這一事實。該技術(shù)建立的信源模型、編碼參數(shù)以及使用的編碼技術(shù)如表5-1所示。把像素假設(shè)為統(tǒng)計上獨立的,這樣得到的模型是最簡單的信源模型(如表5-1所示)。相關(guān)的編碼技術(shù)就稱為脈沖編碼調(diào)制(PulseCodedModulation,PCM)。圖像信號的PCM表示通常不用于視頻編碼,因為與其他信源模型相比,它的效率較低。
在大多數(shù)圖像中,鄰近像素的顏色相關(guān)性很高。為了減少比特率,可以通過變換來利用這種性質(zhì),如Karhunen-Loveve變換(KL)、離散余弦變換(DCT)或小波變換。變換旨在去除原樣點值間的相關(guān)性,并把原始信號的能量集中到幾個系數(shù)上。利用相鄰樣點間相關(guān)性的另一種方法是預(yù)測編碼,這種方法是先由前面編碼的采樣點預(yù)測要編碼的樣點值,然后對預(yù)測誤差進行量化和編碼,預(yù)測誤差與原始信號相比具有較小的相關(guān)性和較低的能量。變換編碼和預(yù)測編碼都可看作是矢量量化的一種特殊情況,矢量量化一次量化一個采樣點塊(一個矢量)。從本質(zhì)上說,它尋找出現(xiàn)在信號中的典型塊模式,并用典型模式之一來近似任何一個塊。如今的視頻編碼標(biāo)準(zhǔn)H.261、H.263、H.264、MPEG-1、MPEG-2和MPEG-4都采用基于塊的混合編碼方法,綜合了預(yù)測編碼和變換編碼。這種編碼技術(shù)把每幅圖像分成固定大小的塊。第k幀的每個塊用前面第k-1幀的一個已知位移位置處的相同尺寸的塊合成得到,這樣產(chǎn)生的圖像稱為預(yù)測圖像。編碼器把所有塊的二維運動矢量傳送到解碼器,以便解碼器能夠計算同樣的預(yù)測圖像。編碼器從原始圖像中減去這幅預(yù)測圖像,得到的就是預(yù)測誤差圖像。如果用預(yù)測圖像合成的一個塊不夠準(zhǔn)確——也就是說,如果塊的預(yù)測誤差超出某個閾值,那么編碼器就用變換編碼把這個塊的預(yù)測誤差傳送到解碼器。解碼器把預(yù)測誤差與預(yù)測圖像相加,從而合成解碼圖像。因此,基于塊的混合編碼是基于平衡的運動塊信源模型的。除了顏色信息編碼為預(yù)測誤差的變換系數(shù)外,還必須傳輸運動矢量。值得注意的是,這種編碼可切換到較簡單的像素統(tǒng)計相關(guān)的信源模型。每當(dāng)編碼不涉及前面一幀就能更有效地完成塊的編碼時就進行這種切換。
2)基于內(nèi)容的編碼
基于塊的混合編碼技術(shù)實際上是用固定大小的方塊來近似場景中物體的形狀。因此在目標(biāo)邊界上的塊中會產(chǎn)生高預(yù)測誤差。這些邊界塊包含具有不同運動的兩種物體,因此用一個運動矢量不能說明兩個不同的運動。基于內(nèi)容的編碼器認識到這樣的問題,它把視頻幀分成對應(yīng)于不同物體的區(qū)域,并分別編碼。對于每個物體,除了運動和紋理信息外,還必須傳輸形狀信息。在基于物體的分析與合成編碼中,通過物體模型描述視頻場景的每個運動物體。為了描述物體的形狀,分析與合成編碼采用分割算法。此外,還估計每個物體的運動和紋理參數(shù)。在最簡單情況下,用二維輪廓描述物體形狀,運動矢量場描述它的運動,用顏色波形描述它的紋理,其他方法用三維線框描述物體。用第k-1幀中物體的形狀、顏色以及形狀和運動的更新參數(shù)來描述第k幀中的物體。解碼器用當(dāng)前運動和形狀參數(shù)以及前一幀的顏色參數(shù)合成物體。只對那些圖像合成失敗的圖像區(qū)域,才傳輸顏色信息。在視頻序列中的物體種類已知的情況下,可采用基于知識的編碼,這種編碼使用特別設(shè)計的模型來描述已識別出的物體類型。例如,目前已經(jīng)提出了一些用預(yù)定義的模型來對人頭編碼的方法。使用預(yù)定義模型可增加編碼效率,因為它自適應(yīng)于物體的形狀。有時,也把這種技術(shù)稱為基于模型的編碼。
當(dāng)已知可能的物體類型和它們的行為時,可以用語義編碼。例如,對于一個人臉,“行為”指的是與特殊面部表情相關(guān)的一系列面部特征點的時間軌跡。人臉的可能行為包括典型面部表情,諸如高興、悲傷、生氣等。在這種情況下,估計描述物體行為的參數(shù)并傳輸給解碼器。這種編碼方法可以達到非常高的編碼效率,因為物體(如臉)可能的行為數(shù)目非常小,所以說明行為所需的比特數(shù)比用傳統(tǒng)的運動和顏色參數(shù)描述實際動作所需的比特數(shù)少得多。5.1.2信源編碼的評價指標(biāo)
1.圖像熵(Entropy)
設(shè)數(shù)字圖像像素灰度級集合為(W1,W2,…,Wk,…,WM),其對應(yīng)的概率分別為P1,P2,…,Pk,…,PM。
按信息論中信源信息熵定義,數(shù)字圖像的熵H為(5-1)由此可見,一幅圖像的熵就是這幅圖像的平均信息量,也是表示圖像中各個灰度級比特數(shù)的統(tǒng)計平均值。式(5-1)所表示的熵值是在假定圖像信源無記憶(即圖像的各個灰度級不相關(guān))的前提下獲得的,這樣的熵值常稱為無記憶信源熵值,記為H0(·)。對于有記憶信源,假如某一像素灰度級與前一像素灰度級相關(guān),那么公式(5-1)中的概率要換成條件概率P(Wi/Wi-1)和聯(lián)合概率P(Wi,Wi-1),則圖像信息熵公式變?yōu)?/p>
(5-2)式中,P(Wi,Wi-1)=P(Wi)P(Wi/Wi-1),則稱H(Wi/Wi-1)為條件熵。因為只與前面一個符號相關(guān),故稱為一階熵H1(·)。如果與前面兩個符號相關(guān),求得的熵值就稱為二階熵H2(·)。依此類推,可以得到三階和四階等高階熵,并且可以證明H0(·)>H1(·)>H2(·)>H3(·)>…
(5-3)香農(nóng)信息論已證明:信源熵是進行無失真編碼的理論極限。低于此極限的無失真編碼方法是不存在的,這是熵編碼的理論基礎(chǔ)。而且可以證明,如果考慮像素間的相關(guān)性,使用高階熵一定可以獲得更高的壓縮比。
2.性能評價
評價一種數(shù)據(jù)壓縮技術(shù)的性能優(yōu)劣主要有三個關(guān)鍵的指標(biāo):壓縮比、重現(xiàn)質(zhì)量、壓縮和解壓縮的速度。除此之外,主要考慮壓縮算法所需要的軟件和硬件環(huán)境。
1)壓縮比
壓縮性能常常用壓縮比來定義,也就是壓縮過程中輸入數(shù)據(jù)量和輸出數(shù)據(jù)量之比。壓縮比越大,說明數(shù)據(jù)壓縮的程度越高。在實際應(yīng)用中,壓縮比可以定義為比特流中每個樣點所需要的比特數(shù)。對于圖像信息,壓縮比可使用公式(5-4)計算:
(5-4)Ls為原圖像的平均碼長,LC為壓縮后圖像的平均碼長。其中,平均碼長L的計算公式為
(5-5)其中,βi為數(shù)字圖像第i個碼字的長度(二進制代數(shù)的位數(shù)),其相應(yīng)出現(xiàn)的概率為Pi。除壓縮比之外,編碼效率和冗余度也是衡量信源特性以及編解碼設(shè)備性能的重要指標(biāo),定義如下:編碼效率:(5-6)其中,H為信息熵,計算公式如(5-1)所示,L為平均碼長。冗余度:ξ=1-η
(5-7)由信源編碼理論可知,當(dāng)L≥H時,可以設(shè)計出某種無失真編碼方法。如果所設(shè)計出編碼的L遠大于H,則表示這種編碼方法所占用的比特數(shù)太多,編碼效率很低。例如,在圖像信號數(shù)字化過程中,采用PCM對每個樣本進行的編碼,其平均碼長L就遠大于圖像的熵H。因此,編碼后的平均碼長L等于或很接近H的編碼方法就是最佳編碼方案。此時并未造成信息的丟失,而且所占的比特數(shù)最少,例如熵編碼。
當(dāng)L<H時,必然會造成一定信息的丟失,從而引起圖像失真,這就是限失真條件下的編碼方案。
2)重現(xiàn)質(zhì)量
重現(xiàn)質(zhì)量是指比較重現(xiàn)時的圖像信號與原始圖像之間有多少失真,這與壓縮的類型有關(guān)。壓縮方法可以分為無損壓縮和有損壓縮。無損壓縮是指壓縮和解壓縮過程中沒有損失原始圖像的信息,所以對無損系統(tǒng)不必擔(dān)心重現(xiàn)質(zhì)量。有損壓縮雖然可獲得較大的壓縮比,但壓縮比過高,還原后的圖像質(zhì)量就可能降低。圖像質(zhì)量的評價常采用客觀評價和主觀評價兩種方法。
圖像的主觀評價采用5分制,其分值在1~5分情況下的主觀評價如表5-2所示。而客觀評價通常有以下幾種:
(1)均方誤差:(5-8)(2)信噪比:(5-9)
(3)峰值信噪比:(5-10)
3)壓縮和解壓縮的速度
壓縮與解壓縮的速度是兩項單獨的性能度量。在有些應(yīng)用中,壓縮與解壓縮都需要實時進行,這稱為對稱壓縮,如電視會議的圖像傳輸;在有些應(yīng)用中,壓縮可以用非實時壓縮,而只要解壓縮是實時的,這種壓縮稱為非對稱壓縮,如多媒體CD-ROM的節(jié)目制作。從目前開發(fā)的壓縮技術(shù)看,一般壓縮的計算量要比解壓縮要大。在靜止圖像中,壓縮速度沒有解壓縮速度要求嚴(yán)格。但對于動態(tài)視頻的壓縮與解壓縮,速度問題是至關(guān)重要的。動態(tài)視頻為保證幀間變化的連貫要求,必須有較高的幀速。對于大多數(shù)情況來說,動態(tài)視頻至少為15幀/s,而全動態(tài)視頻則要求有25幀/s或30幀/s。因此,壓縮和解壓縮速度的快慢直接影響實時圖像通信的完成。此外,還要考慮軟件和硬件的開銷。有些數(shù)據(jù)的壓縮和解壓縮可以在標(biāo)準(zhǔn)的PC硬件上用軟件實現(xiàn),有些則因為算法太復(fù)雜或者質(zhì)量要求太高而必須采用專門的硬件。這就需要在占用PC上的計算資源或者另外使用專門硬件的問題上做出選擇。5.1.3二進制編碼
二進制編碼是用二進制比特序列(稱為碼字)表示有限字母表信源中每個可能符號的過程。所有可能符號的碼字形成碼書。一個符號可以對應(yīng)一個或幾個原始的或量化后的像素值或模型參數(shù)。因為從符號到碼字的映射是一一對應(yīng)的,因此這個過程也稱為無損編碼。
對于一個有用的碼,它應(yīng)該滿足以下屬性:(1)它應(yīng)該可惟一解碼,這就意味著在碼字和符號之間有一對一映射的關(guān)系;(2)碼應(yīng)該是即時可解碼的,這意味著如果一組比特與碼字相匹配,那么可立即解碼這組比特,而不需檢查編碼序列中的后繼比特。這第二個屬性要求任何碼字的前綴都不是另一個有效的碼字,這種碼稱為前綴碼。盡管即時可解碼性是比唯一性更強的要求,而且允許快速解碼,但它不限制編碼效率。可以證明,對于同一信源,在所有唯一可解碼的碼中前綴編碼可產(chǎn)生最小比特率。所有實際編碼方法都產(chǎn)生前綴碼。很明顯,最簡單的二進制碼是所有可能符號的固定長度的二進制表示。如果符號數(shù)是L,那么比特率就是
比特/符號。由上一節(jié)知道,任何碼書的最低可能比特率是信源的熵率。除非信源是均勻分布的,否則固定長度編碼方案效率將是很低的,因為比特率比熵率高得多。為了降低比特率,需要可變長編碼(VLC),它分配一個較短的碼字給一個較高概率的符號,所以平均比特率低。因為適當(dāng)設(shè)計的可變長編碼器的比特率可接近信源的熵,所以可變長編碼也稱為熵編碼。有三種流行的可變長編碼方法。哈夫曼(Huffman)編碼把固定數(shù)目的符號轉(zhuǎn)成可變長的碼字;LZW方法把可變數(shù)目的符號轉(zhuǎn)成固定長度的碼字;而算術(shù)編碼把可變數(shù)目的符號轉(zhuǎn)成可變長度的碼字。哈夫曼和算術(shù)編碼是基于概率模型的,且都可逐漸地達到熵界限。算術(shù)編碼方法更容易達到漸進性能,且容易適應(yīng)信號統(tǒng)計特性的變化,但它比哈夫曼編碼更復(fù)雜。LZW方法不要求了解信號的統(tǒng)計特性,因此是普遍適用的,但它比其他兩種方法的效率低。哈夫曼和算術(shù)編碼已經(jīng)用于各種視頻編碼標(biāo)準(zhǔn)中。以下將重點介紹這兩種編碼方法。
1.哈夫曼編碼
哈夫曼編碼是由哈夫曼(D.S.Huffman)于1952年提出的一種不等長編碼方法,這種編碼的碼字長度的排列與符號的概率大小的排列是嚴(yán)格逆序的,理論上已經(jīng)證明其平均碼長最短,因此被稱為最佳碼。
1)編碼步驟
(1)將信源符號的概率由大到小排列;
(2)將兩個最小的概率組合相加,得到新概率;
(3)對未相加的概率及新概率重復(fù)(2),直到概率達到1.0;
(4)對每對組合概率小的指定為1,概率大的指定為0(或相反);
(5)記下由概率1.0處到每個信源符號的路徑,對每個信源符號都寫出1、0序列,得到非等長的Huffman碼。
下面以一個具體的例子來說明其編碼方法,如圖5-2所示。圖5-2哈夫曼(Huffman)編碼的示例
表5-3列出了各個信源符號的概率、哈夫曼編碼及碼長。
2)前例哈夫曼編碼的編碼效率計算
根據(jù)式(5-1)求出前例信息熵為
根據(jù)式(5-5)求出平均碼字長度為根據(jù)式(5-6)求出編碼效率為可見,哈夫曼編碼效率很高。
3)哈夫曼編碼實例使用哈夫曼編碼算法對實際圖像進行編碼,使用的圖像為Couple和lena,這兩幅圖像均為256級灰度圖像,大小為256×256像素,圖像如圖5-3所示。編碼結(jié)果如表5-4所示,限于篇幅,給出了部分結(jié)果。圖5-3圖像Couple和lena從表中可以看出,Couple圖像的色調(diào)比較暗,因此低灰度值像素較多,低灰度值像素點概率比Lena圖像相同灰度值像素的大,因此,哈夫曼編碼也相對短一些。而整個哈夫曼編碼的長度嚴(yán)格地和概率成反比。
表5-5給出了對Couple和lena兩幅圖像哈夫曼編碼后的性能指標(biāo)計算。從表中可以看出,哈夫曼的編碼效率還是很高的,但由于哈夫曼編碼是無損的編碼方法,所以壓縮比不高。從表中還發(fā)現(xiàn)Couple圖像的壓縮比較大,但是編碼效率卻較小,這主要是由于該幅圖像的信息熵較小,其冗余度較高造成的。
4)哈夫曼編碼的特點
(1)編碼不唯一,但其編碼效率是唯一的。由于在編碼過程中,分配碼字時對0、1的分配的原則可不同,而且當(dāng)出現(xiàn)相同概率時,排序不固定,因此哈夫曼編碼不唯一。但對于同一信源而言,其平均碼長不會因為上述原因改變,因此編碼效率是唯一的。
(2)編碼效率高,但是硬件實現(xiàn)復(fù)雜,抗誤碼力較差。
哈夫曼編碼是一種變長碼,因此硬件實現(xiàn)復(fù)雜,并且在存儲、傳輸過程中,一旦出現(xiàn)誤碼,易引起誤碼的連續(xù)傳播。
(3)編碼效率與信源符號概率分布相關(guān)。由于編碼效率與信源符號概率分布相關(guān),編碼前必須有信源的先驗知識,這往往限制了哈夫曼編碼的應(yīng)用。當(dāng)信源各符號出現(xiàn)的概率相等時,此時信源具有最大熵Hmax=lbn,編碼為定長碼,其編碼效率最低。當(dāng)信源各符號出現(xiàn)的概率為2-n(n為正整數(shù))時,哈夫曼編碼效率最高,可達100%。由此可知,只有當(dāng)信源各符號出現(xiàn)的概率很不均勻時,哈夫曼編碼的編碼效果才顯著。
(4)只能用近似的整數(shù)位來表示單個符號。哈夫曼編碼只能用近似的整數(shù)位來表示單個符號而不是理想的小數(shù),因此無法達到最理想的壓縮效果。
2.算術(shù)編碼
在信源概率分布比較均勻的情況下,哈夫曼編碼的效率較低,而此時算術(shù)編碼的編碼效率要高于哈夫曼編碼,同時又無需像變換編碼那樣,要求對數(shù)據(jù)進行分塊,因此在JPEG擴展系統(tǒng)中以算術(shù)編碼代替哈夫曼編碼。
算術(shù)編碼也是一種熵編碼。當(dāng)信源為二元平穩(wěn)馬爾可夫源時,可以將被編碼的信息表示成實數(shù)軸0~1之間的一個間隔,這樣,如果一個信息的符號越長,編碼表示它的間隔就越小,同時表示這一間隔所需的二進制位數(shù)也就越多。下面對此作具體分析。
1)碼區(qū)間的分割
設(shè)在傳輸任何信息之前信息的完整范圍是[0,1],算術(shù)編碼在初始化階段預(yù)置一個大概率p和一個小概率q,
p+q=1。如果信源所發(fā)出的連續(xù)符號組成序列為Sn,那么其中每個Sn對應(yīng)一個信源狀態(tài),對于二進制數(shù)據(jù)序列Sn,可以用C(S)來表示其算術(shù)編碼,可以認為它是一個二進制小數(shù)。隨著符號串中“0”、“1”的出現(xiàn),所對應(yīng)的碼區(qū)間也發(fā)生相應(yīng)的變化。
如果信源發(fā)出的符號序列的概率模型為m階馬爾可夫鏈,那么表明某個符號的出現(xiàn)只與前m個符號有關(guān),因此其所對應(yīng)的區(qū)間為[C(S),C(S)+L(S)],其中L(S)代表子區(qū)間的寬度,C(S)是該半開子區(qū)間中的最小數(shù),而算術(shù)編碼的過程實際上就是根據(jù)符號出現(xiàn)的概率進行區(qū)間分割的過程,如圖5-4所示的碼區(qū)間的分割。圖5-4碼區(qū)間的分割
2)算術(shù)編碼規(guī)則
在進行編碼的過程中,隨著信息的不斷出現(xiàn),子區(qū)間按下列規(guī)律減小:
·新子區(qū)間的左端=前子區(qū)間的左端+當(dāng)前子區(qū)間的左端×前子區(qū)間長度
·新子區(qū)間長度=前子區(qū)間長度×當(dāng)前子區(qū)間長度下面以一個具體的例子來說明算術(shù)編碼的編碼過程。
例:已知信源分布,如果要傳輸?shù)臄?shù)據(jù)序列為1011,寫出算術(shù)編碼過程。
解(1)已知小概率事件q=1/4,大概率事件為
(2)設(shè)C為子區(qū)間左端起點,L為子區(qū)間的長度。
根據(jù)題意,符號“0”的子區(qū)間為[0,1/4),因此C=0,L=1/4;符號“1”的子區(qū)間為[1/4,1),因此C=1/4,L=3/4。子區(qū)間左端起點為子區(qū)間長度為子區(qū)間右端為子區(qū)間:[0.01010101,0.0111]。編碼的結(jié)果為位于區(qū)間的頭尾之間的取值0.011。
算術(shù)編碼011占三位
原碼1011占四位
4)算術(shù)編碼效率
(1)算術(shù)編碼的模式選擇直接影響編碼效率。算術(shù)編碼的模式有固定模式和自適應(yīng)模式兩種。固定模式是基于概率分布模型的,而在自適應(yīng)模式中,其各符號的初始概率都相同,但隨著符號順序的出現(xiàn)而改變,在無法進行信源概率模型統(tǒng)計的條件下,非常適于使用自適應(yīng)模式的算術(shù)編碼。
(2)在信道符號概率分布比較均勻的情況下,算術(shù)編碼的編碼效率高于哈夫曼編碼。隨著信息碼長度的增加,間隔越小,而且每個小區(qū)間的長度等于序列中各符號的概率p(S)。算術(shù)編碼是用小區(qū)間內(nèi)的任意點來代表這些序列,設(shè)取L位,則
(5-11)其中,[X]代表取小于或等于X的最大整數(shù)。例如,在上例中,
(3)硬件實現(xiàn)時的復(fù)雜程度高。算術(shù)編碼的實際編碼過程也與上述計算過程有關(guān),需設(shè)置兩個存儲器,起始時一個為“0”,另一個為“1”,分別代表空集和整個樣本空間的積累概率。隨后每輸入一個信源符號,更新一次,同時獲得相應(yīng)的碼區(qū)間,按前述的方法求出最后的碼區(qū)間,并在此碼區(qū)間上選定L值,解碼過程也是逐位進行的,可見計算過程要比哈夫曼編碼的計算過程復(fù)雜,因而硬件實現(xiàn)電路也要復(fù)雜。
5.2基于塊的變換編碼
1)把變換看做到所選擇的基函數(shù)上的投影
可以把變換過程認為是把一個圖像塊表示為一組基本圖形(稱為變換基函數(shù))的線性組合。每個基本圖形的貢獻是對應(yīng)于那個變換基函數(shù)的變換系數(shù)。對于一個給定的圖像塊,導(dǎo)出變換系數(shù)的過程是正變換,而用變換系數(shù)重建圖像塊的過程是逆變換。
2)變換設(shè)計準(zhǔn)則
顯然,變換編碼器的性能取決于所用的基函數(shù)。一個好的變換應(yīng)該:(1)對欲量化的信號去相關(guān),以便可以對各個值有效地使用標(biāo)量量化而不會損失太多的編碼效率。(2)把原始像素塊的能量盡量壓縮到少數(shù)的幾個系數(shù)。后一個特性允許用幾個具有大幅度的系數(shù)表示原始塊。在這些準(zhǔn)則下,最好的變換是卡胡南-洛耶夫變換(KLT)。但是,因為KLT取決于信號的二階統(tǒng)計特性且難以計算,所以實際中用固定的變換來近似KLT。對于一般的圖像信號,最近似KLT的變換是離散余弦變換(DCT),因此在幾乎所有的基于變換的圖像編碼器中都用DCT。
3)變換編碼和矢量量化
通常圖像中的相鄰像素之間是相關(guān)的,因此單獨表示每個像素值效率是不高的。利用相鄰像素之間的相關(guān)性的一種方法是用矢量量化把像素塊一起量化,它用最接近原始塊的一個典型的塊圖形來代替每個圖像塊。塊越大,就越能充分利用像素之間的相關(guān)性,可以達到的壓縮增益就越高。遺憾的是,搜索最佳匹配模式的復(fù)雜度也隨塊的大小而指數(shù)增長。變換編碼是無需窮盡搜索而實現(xiàn)條件矢量量化器的一種途徑。5.2.1最佳變換設(shè)計和KLT
正如上一小節(jié)提到的,一個好的變換使用最佳標(biāo)量量化和最佳比特分配,會產(chǎn)生比較低的失真,那么自然會問到是否存在失真最小的最佳變換。如果信源是高斯分布,且信源的方差是固定的,回答是肯定的,這樣的變換就是KLT。
KLT是基于原始信號的協(xié)方差矩陣設(shè)計的,KLT產(chǎn)生的變換系數(shù)方差的幾何平均最小。因此,如果信源是高斯分布,則它使變換編碼增益最大。從而可以認為KLT是最佳變換。
KLT的另一個性質(zhì)是它在所有變換中用較少的系數(shù)得到最小的近似誤差,也就是說,KLT在所有變換中具有最高的能量緊縮能力。這是因為近似誤差與系數(shù)方差的幾何平均有直接聯(lián)系。幾何平均越低,這些方差的分布就越不均勻,因此,能夠緊縮到固定數(shù)目系數(shù)上的能量就越多。
盡管KLT在能量緊縮方面和信號去相關(guān)方面的能力是最佳的,但它僅對已知協(xié)方差矩陣的平穩(wěn)信源才是可以計算的。實際上,信源可以在時間或空間上變化,所以必須不斷更新基于前面信號采樣點的協(xié)方差矩陣并重新計算特征矢量,故計算上的需求量很大。而且,不存在從任意協(xié)方差矩陣中導(dǎo)出KLT的快速算法。而對于實際應(yīng)用系統(tǒng),希望采用獨立于信號的變換。因此,一般只將KLT作為理論上的比較標(biāo)準(zhǔn),作為一種參照物,用來對一些新方法、新結(jié)果進行分析比較,其理論價值高于實際價值。5.2.2離散余弦變換(DCT)
目前已經(jīng)證明,對于通常圖像信號的協(xié)方差矩陣,DCT非常接近KLT,因此DCT已在圖像編碼中廣泛應(yīng)用。
設(shè)f(x,y)是M×N子圖像的空域表示,則二維離散余弦變換(DCT)定義為
u=0,1,…,M-1;v=0,1,…,N-1(5-12)反余弦變換(IDCT)的公式為(5-13)x=0,1,…,M-1;y=0,1,…,N-1以上兩式中,c(u)和c(v)的定義為(5-14)二維M×N點的DCT是由一維M點DCT和N點DCT構(gòu)成的,可以先對圖像塊的每行運用對應(yīng)的一維DCT,然后再對進行變換的塊的每列應(yīng)用一維DCT。
典型的DCT編碼器有四步:圖像分塊、DCT、量化和編碼。一個圖像被分解為非重疊的塊,每個塊變換成一組系數(shù)。這些系數(shù)用標(biāo)量化器分別量化。然后用可變長編碼把量化的系數(shù)轉(zhuǎn)換成二進制比特。在解碼器中,通過逆變換由量化系數(shù)恢復(fù)圖像塊。圖5-5給出了一個典型DCT編碼器編碼及解碼的工作過程。圖5-5DCT編碼器編碼及解碼的工作過程
DCT能夠很好地適用于圖像編碼,其原因是圖像塊經(jīng)??梢杂脦讉€低頻DCT系數(shù)表示,這是因為圖像中的灰度值通常是平滑變化的,高頻部分只在邊緣附近存在??沼驁D像f(x,y)經(jīng)過式(5-12)正向離散余弦變換后得到的是一幅頻域圖像。當(dāng)f(x,y)是一幅M=N=8的子圖像時,其F(u,v)可表示為(5-15)其中,64個矩陣元素稱為f(x,y)的64個DCT系數(shù)。正向DCT變換可以看成是一個諧波分析器,它把f(x,y)分解成為64個正交的基信號,分別代表著64種不同頻率成分。第一個元素F00是直流系數(shù)(DC),其他63個都是交流系數(shù)(AC)。矩陣元素的兩個下標(biāo)之和小者(即矩陣左上角部分)代表低頻成分,大者(即矩陣右下角部分)代表高頻成分。由于大部分圖像區(qū)域中相鄰像素的變化很小,所以大部分圖像信號的能量都集中在低頻成分,高頻成分中可能有不少數(shù)值為0或接近0值。圖5-6給出了DCT變換示例圖。圖5-6(a)為原圖,將原圖分為8×8的塊進行DCT變換,圖5-6(b)為原圖DCT變換后的頻域圖,圖5-6(c)、(e)、(g)分別為舍棄少部分高頻分量、舍棄大部分高頻分量和舍棄低頻分量后的頻域圖,圖5-6(d)、(f)、(h)為對應(yīng)頻域圖反變換后的圖像。從這個示例可以看出,DCT系數(shù)的低頻分量集中了圖像中的絕大部分能量,通過舍棄DCT系數(shù)的高頻成分,可以達到壓縮圖像的目的,而且恢復(fù)出的圖像質(zhì)量是可以被接受的。圖5-6DCT變換示例圖
5.3預(yù)測編碼
5.3.1幀內(nèi)預(yù)測
幀內(nèi)預(yù)測編碼是針對一幅圖像以減少其空間上的相關(guān)性來實現(xiàn)數(shù)據(jù)壓縮的。通常采用線性預(yù)測法,也采用差分脈沖編碼調(diào)制(differentialpulsecodemodulation,DPCM)來實現(xiàn),這種方法簡單且易于硬件實現(xiàn),得到廣泛應(yīng)用。差分脈沖編碼調(diào)制的中心思想是對信號的差值而不是對信號本身進行編碼。這個差值是指信號值與預(yù)測值的差值。預(yù)測值可以由過去的采樣值進行預(yù)測,其計算公式如下所示:
(5-16)其中,y
N為當(dāng)前值yN的預(yù)測值;y1,y2,…,yN-1為當(dāng)前值前面的N-1個樣值;a1,a2,…,aN-1為預(yù)測系數(shù)。當(dāng)前值yN與預(yù)測值yN的差值表示為
e0=yN-yN
(5-17)
差分脈沖編碼調(diào)制就是將上述每個樣點的差值量化編碼,而后用于存儲或傳送。由于相鄰采樣點有較大的相關(guān)性,預(yù)測值常接近真實值,故差值一般都比較小,從而可以用較少的數(shù)據(jù)位來表示,這樣就減少了數(shù)據(jù)量。
在接收端或數(shù)據(jù)回放時,可用類似的過程重建原始數(shù)據(jù)。差分脈沖調(diào)制系統(tǒng)方框圖如圖5-7所示?!摹膱D5-7差分脈沖調(diào)制系統(tǒng)方框圖為了求出預(yù)測值yN,要先知道先前的樣值y1,y2,…,yN-1,所以預(yù)測器端要有存儲器,以存儲所需的系列樣值。只要求出預(yù)測值,用這種方法來實現(xiàn)編碼就不難了。而要準(zhǔn)確得到y(tǒng)N,關(guān)鍵是確定預(yù)測系數(shù)ai。如何求ai呢?定義ai就是使估值的均方差最小的ai。估值的均方差可由下式?jīng)Q定:∧∧(5-18)為了求得的均方差最小,就需對式(5-18)中各個ai求導(dǎo)數(shù)并使方程等于0,最后解聯(lián)立方程可以求出ai。預(yù)測系數(shù)與輸入信號特性有關(guān),也就是說,采樣點同其前面采樣點的相關(guān)性有關(guān)。只要預(yù)測系數(shù)確定,問題便可迎刃而解。通常一階預(yù)測系數(shù)ai的取值范圍為0.8~1。下面介紹一種簡單的圖像有損預(yù)測編碼方法,德爾塔調(diào)制。
其預(yù)測器為,即采用一階預(yù)測。
對預(yù)測誤差的量化器為,圖5-8給出了圖像的原圖、預(yù)測編碼結(jié)果及解碼結(jié)果。圖5-8德爾塔調(diào)制編解碼示例在圖5-8(b)所示的預(yù)測編碼圖中,誤差大于0的用白色像素點表示,誤差小于0的用黑色像素點表示,圖5-8(c)為解碼結(jié)果,與圖5-8(a)所示的原圖相比,由于預(yù)測算法簡單,整個圖像目標(biāo)邊緣模糊且產(chǎn)生紋狀表面,有一定的失真。
DPCM編碼性能的優(yōu)劣,很大程度上取決于預(yù)測器的設(shè)計,而預(yù)測器的設(shè)計主要是確定預(yù)測器的階數(shù)N,以及各個預(yù)測系數(shù)。階數(shù)N即公式(5-16)中的樣值個數(shù)。對于一般圖像,取N=4就足夠了。當(dāng)N>5時,預(yù)測效果的改善程度已不明顯。由于在預(yù)測編碼中,接收端是以所接收的前N個樣本為基準(zhǔn)來預(yù)測當(dāng)前樣本,因而在信號傳輸過程中一旦出現(xiàn)誤碼,就會影響后續(xù)像素的正確預(yù)測,從而出現(xiàn)誤碼擴散現(xiàn)象??梢姡捎妙A(yù)測編碼可以提高編碼效率,但它是以降低系統(tǒng)性能為代價的。5.3.2幀間預(yù)測
對于視頻圖像,當(dāng)圖像內(nèi)容變化或攝像機運動不劇烈時,前后幀圖像基本保持不變,相鄰幀圖像具有很強的時間相關(guān)性。如果能夠充分利用相鄰幀圖像像素進行預(yù)測,將會得到比幀內(nèi)像素預(yù)測更高的預(yù)測精度,預(yù)測誤差也更小,可以進一步提高編碼效率。這種基于時間相關(guān)性的相鄰幀預(yù)測方法就是幀間預(yù)測編碼。在采用運動補償技術(shù)后,幀間預(yù)測的準(zhǔn)確度相當(dāng)高。
1.運動估計與補償
在幀間預(yù)測編碼中,為了達到較高的壓縮比,最關(guān)鍵的就是要得到盡可能小的幀間誤差。在普通的幀間預(yù)測中,實際上僅在背景區(qū)域進行預(yù)測時可以獲得較小的幀間差。如果要對運動區(qū)域進行預(yù)測,首先要估計出運動物體的運動矢量V,然后再根據(jù)運動矢量進行補償,即找出物體在前一幀的區(qū)域位置,這樣求出的預(yù)測誤差才比較小。
這就是運動補償幀間預(yù)測編碼的基本機理。簡而言之,通過運動補償,減少幀間誤差,提高壓縮效率。理想的運動補償預(yù)測編碼應(yīng)由以下四個步驟組成:
(1)圖像劃分。將圖像劃分為靜止部分和運動部分。
(2)運動檢測與估值。即檢測運動的類型(平移、旋轉(zhuǎn)或縮放等),并對每一個運動物體進行運動估計,找出運動矢量。
(3)運動補償。利用運動矢量建立處于前后幀的同一物體的空間位置對應(yīng)關(guān)系,即用運動矢量進行運動補償預(yù)測。
(4)預(yù)測編碼。對運動補償后的預(yù)測誤差、運動矢量等信息進行編碼,作為傳送給接收端的信息。
由于實際的序列圖像內(nèi)容千差萬別,把運動物體以整體形式劃分出來是極其困難的,因此有必要采用一些簡化模型。例如,把圖像劃分為很多適當(dāng)大小的小塊,再設(shè)法區(qū)分是運動的小塊還是靜止的小塊,并估計出小塊的運動矢量,這種方法稱為塊匹配法。目前塊匹配法已經(jīng)得到廣泛應(yīng)用,在H.261、H.263、H.264、MPEG-1以及MPEG-4等國際標(biāo)準(zhǔn)中都被采用,下面進行詳細介紹。
2.塊匹配運動估計
運動估計從實現(xiàn)技術(shù)上可以分為像素遞歸法(PixelRecursiveAlgorithm,PRA)和塊匹配法(BlockMatchingMotionEstimation,BMME)。像素遞歸法的基本思想是對當(dāng)前幀的某一像素在前一幀中找到灰度值相同的像素,然后通過該像素在兩幀中的位置差求解出運動位移。塊匹配法的思想是將圖像劃分為許多互不重疊的子圖像塊,并且認為子塊內(nèi)所有像素的位移幅度都相同,這意味著每個子塊都被視為運動對象。對于第k幀圖像中的子塊,在第k-1幀圖像中尋找與其最相似的子塊,這個過程稱為尋找匹配塊,并認為該匹配塊在第k-1幀中所處的位置就是k幀子塊位移前的位置,這種位置的變化就可以用運動矢量來表示。在一個典型的塊匹配算法中,一幀圖像被分割為M×N或者是更為常用的N×N像素大小的塊。在(N+2w)×(N+2w)大小的匹配窗中,當(dāng)前塊與前一幀中對應(yīng)的塊相比較,基于匹配標(biāo)準(zhǔn),找出最佳匹配,得到當(dāng)前塊的替代位置。常用的匹配標(biāo)準(zhǔn)有平均平方誤差(MeanSquareError,MSE)和平均絕對誤差(MeanAbsoluteError,MAE),定義如下:
(5-19)(5-20)其中,
f(m,n)表示當(dāng)前塊在位置(m,n),f(m+i,n+j)表示相應(yīng)的塊在前一幀中的位置為(m+i,n+j)。全搜索算法(FullSearchAlgorithm,F(xiàn)SA)在搜索窗(N+2W)×(N+2W)內(nèi)計算所有的像素來尋找具有最小誤差的最佳匹配塊。對于當(dāng)前幀中的一個待匹配塊的運動向量的搜索要計算(2W+1)×(2W+1)次誤差值,如圖5-9所示。由于全搜索算法的計算復(fù)雜度過大,近年來,快速算法的研究得到了廣泛的關(guān)注,研究人員提出了很多快速算法。圖5-9塊匹配原理圖
3.幀間預(yù)測實例
圖5-10給出了一個常用測試序列幀間預(yù)測的結(jié)果。圖5-10(a)、(b)分別是第一幀和第二幀原圖,圖5-10(c)、(d)分別是未進行運動補償和運動補償后的幀間差分。圖5-10常用測試序列的幀間預(yù)測的結(jié)果
5.4基于內(nèi)容的編碼
5.4.1基于區(qū)域的視頻編碼
大多數(shù)圖像和視頻編碼器都為了編碼效率而做了優(yōu)化。圖像和視頻的質(zhì)量是由峰值信噪比PSNR測量的。已經(jīng)證明簡單的PSNR測度不能很好地記錄人類視覺系統(tǒng)(HumanVisionSystem,HVS)的特性。在低比特率下這變得非常明顯,此時塊失真使圖像變形,但并不能得到低的PSNR。基于區(qū)域的圖像和視頻編碼,也就是所謂的第二代圖像和視頻編碼,試圖給予HVS以特別關(guān)注,從HVS的性質(zhì)出發(fā)提出以下的基本要求,這些要求為設(shè)計選擇算法奠定了基礎(chǔ):
·邊緣和輪廓信息對于人類視覺系統(tǒng)是非常重要的,是人類的感覺所依賴的。
·紋理信息具有相對的重要性,當(dāng)與輪廓信息在一起時會影響人類的感覺。
在這些假設(shè)的基礎(chǔ)上,基于區(qū)域的視頻編碼更注重編碼輪廓而不是編碼紋理。當(dāng)確定重要的輪廓時,運動是不考慮的。
基于區(qū)域的視頻編碼器把每個圖像分割為相似紋理的區(qū)域。由于輪廓被認為是非常重要的,所以編碼器以高精度傳送區(qū)域的輪廓。區(qū)域的紋理是用原始區(qū)域的紋理的平均值近似的。圖5-11是一個被分割為區(qū)域的圖像。圖5-11圖像分割不同的分割結(jié)果取決于相似性準(zhǔn)則定義的精確程度和最小區(qū)域尺寸。與低碼率下的基于DCT的圖像編碼器比較,這種編碼器不產(chǎn)生任何塊效應(yīng)。然而,平坦的紋理表示可能會產(chǎn)生失真。在高碼率下,基于DCT的編碼明顯優(yōu)于基于區(qū)域的編碼,因為基于區(qū)域的編碼需要傳輸許多輪廓。
可以把這種概念擴展到視頻編碼。為了減少形狀編碼所需要的碼率,要從一幅圖像到另一幅圖像進行區(qū)域跟蹤。把具有類似的或相同運動的區(qū)域聚合在一起,對于這個新的圖像,編碼器傳送當(dāng)前圖像中區(qū)域的運動、形狀的變化以及新出現(xiàn)的區(qū)域,也傳送紋理值的變化。5.4.2基于物體的視頻編碼
基于物體的編碼是由Musmann等提出的,其目標(biāo)是以較低比特率傳送可視電話圖像序列。其基本思想是:把每一個圖像分成若干個運動物體,對每一物體的基于不明顯物體模型的運動Ai、形狀Mi和彩色紋理Si等三組參數(shù)集進行編碼和傳輸。其圖像編碼原理框圖如圖5-12所示?;谖矬w的編碼需要一個存儲器存儲欲編碼和傳輸?shù)奈矬w的參數(shù)。
基于物體的編碼的特點是把三維運動物體描述成模型坐標(biāo)系中的模型物體,用模型物體在二維圖像平面的投影(模型圖像)來逼近真實圖像。這里不要求物體模型與真實物體形狀嚴(yán)格一致,只要最終模型圖像與輸入圖像一致即可,這是它與基于語義的編碼的根本區(qū)別。圖5-12基于物體的圖像編碼原理框圖經(jīng)過圖像分析后,圖像的內(nèi)容被分為兩類:模型一致物體(MC物體)和模型失效物體(MF物體)。MC物體是被模型和運動參數(shù)正確描述的物體區(qū)域,可以通過只傳送運動Ai和形狀Mi的參數(shù)集以及利用存在存儲器中的彩色紋理Si的參數(shù)集重建該區(qū)域;MF物體則是被模型描述失敗的圖像區(qū)域,它是用形狀Mi和彩色紋理Si的參數(shù)集進行編碼和重建的。從目前研究比較多的頭—肩圖像的實驗結(jié)果可以看到,通常MC物體所占圖像區(qū)域的面積較大,約為圖像總面積的95%以上,而Ai和Mi參數(shù)可用很少的碼字編碼;另一方面,MF通常都是很小的區(qū)域,約占圖像總面積的4%以下?;谖矬w的編碼中的最核心的部分是物體的假設(shè)模型及相應(yīng)的圖像分析。選擇不同的源模型時,參數(shù)集的信息內(nèi)容和編碼器的輸出速率都會改變。目前已出現(xiàn)的有二維剛體模型(2DR)、二維彈性物體模型(2DF)、三維剛體模型(3DR)和三維彈性物體模型(3DF)等。在這幾種模型中,2DR模型是最簡單的一種,它只用8個映射參數(shù)來描述其模型物體的運動。但由于過于簡單,最終圖像編碼效率不是很高。相比而言,2DF是一種簡單有效的模型,它采用位移矢量場,以二維平面的形狀和平移來描述三維運動的效果,編碼效率明顯提高,與3DR相當(dāng)。3DR模型是二維模型直接發(fā)展的結(jié)果,物體以三維剛體模型描述,優(yōu)點是以旋轉(zhuǎn)和平移參數(shù)描述物體運動,物理意義明確。3DF是在3DR的基礎(chǔ)上加以改進的,它在3DR的圖像分析后,加入形變運動的估計,使最終的MF區(qū)域大為減少,但把圖像分析的復(fù)雜性和編碼效率綜合起來衡量,2DF則顯得較為優(yōu)越。5.4.3基于語義的視頻編碼
基于語義的編碼的特點是充分利用了圖像的先驗知識,編碼圖像的物體內(nèi)容是確定的。圖5-13所示為基于語義的編碼原理框圖。在編碼器中,存有事先設(shè)計好的參數(shù)模型,這個模型基本上能表示待編碼的物體。對輸入的圖像,圖像分析與參數(shù)估計功能塊利用計算機視覺的原理,分析估計出針對輸入圖像的模型參數(shù)。這些參數(shù)包括:形狀參數(shù)、運動參數(shù)、顏色參數(shù)、表情參數(shù)等。由于模型參數(shù)的數(shù)據(jù)量遠小于原圖像,故用這些參數(shù)代替原圖像編碼可實現(xiàn)很高的壓縮比。圖5-13基于語義的編碼原理框圖在解碼器中,存有一個和編碼器中完全相同的圖像模型,解碼器應(yīng)用計算機圖形學(xué)原理,用所接收到的模型參數(shù)修改原模型,并將結(jié)果投影到二維平面上,形成解碼后的圖像。
例如,在視頻會議的基于語義的編碼中,會議場景一般是固定不變的,運動變化的只是人的頭部和肩部組成的頭—肩像。根據(jù)先驗知識,可以建立頭—肩像模型,這時模型參數(shù)包括:頭與肩的大小、形狀、位置等全局形狀參數(shù),以及面部表情等局部形狀參數(shù),此外,還有運動參數(shù)、顏色參數(shù)等等。解碼器存有一個與編碼器中的模型完全一樣的模型,收到模型參數(shù)后,解碼器即可對模型作相應(yīng)的變換,將修改后的模型投影到二維平面上,形成解碼圖像?;谡Z義的編碼能實現(xiàn)以數(shù)千比特每秒的速率編碼活動圖像,其高壓縮比的特點使它成為最有發(fā)展前途的編碼方法之一。然而基于語義的編碼還很不成熟,有不少難點尚未解決,主要表現(xiàn)為模型的建立和圖像分析與參數(shù)的提取。
首先,模型必須能描述待編碼的對象。以對人臉建模表達為例,模型要能反映各種臉部表情:喜、怒、哀、樂等等,要能表現(xiàn)面部,例如口、眼的各種細小變化,顯然,這有大量的工作要做,數(shù)據(jù)量很大,有一定的難度。同時,模型的精度也很難確定。只能根據(jù)對編碼對象的了解程度和需要,建立具有不同精度的模型。先驗知識越多模型越精細,模型就越能逼真地反映待編碼的對象,但模型的適應(yīng)性就越差,所適用的對象就越少。反之,先驗知識越少,越無法建立細致的模型,模型與對象的逼近程度就越低,但適應(yīng)性反而會強一些。其次,建立了適當(dāng)?shù)哪P秃?,參?shù)估計也是一個不可低估的難點,根本原因在于計算機視覺理論本身尚有很多基本問題沒有圓滿解決,如圖像分割問題與圖像匹配問題等。而要估計模型的參數(shù),如頭部的尺寸,就需在圖像上把頭部分割出來,并與模型中的頭部相匹配;要估計臉部的表情參數(shù),需把與表情密切相關(guān)的器官如口、眼等分割出來,并與模型中的口、眼相匹配。
相比之下,圖像綜合部分難度低一些,由于計算機圖形學(xué)等已經(jīng)相當(dāng)成熟,而用常規(guī)算法計算模型表面的灰度,難以達到逼真的效果,圖像有不自然的感覺?,F(xiàn)在采用的方法是,利用計算機圖形學(xué)方法,實現(xiàn)編碼對象的尺度變換和運動變換,而用“蒙皮技術(shù)”恢復(fù)圖像的灰度?!懊善ぜ夹g(shù)”通過建立經(jīng)過尺度和運動變換后的模型上的點與原圖像上的點之間的對應(yīng)關(guān)系,求解模型表面灰度。基于語義的編碼中的失真和普通編碼中的量化噪聲性質(zhì)完全不同。例如,待編碼的對象是頭—肩像,則對頭—肩像基于語義編碼時,即使參數(shù)估計不準(zhǔn)確,結(jié)果也是頭—肩像,不會看出有什么不正確的地方。基于語義的編碼帶來的是幾何失真,人眼對幾何失真不敏感,而對方塊效應(yīng)和量化噪聲最敏感,所以不能以均方誤差作為失真的度量,而參數(shù)估計又必須有一個失真度量,以建立參數(shù)估計的目標(biāo)函數(shù),并通過對目標(biāo)函數(shù)的優(yōu)化來估計參數(shù)。找一個能反映基于語義的編碼失真的準(zhǔn)則,也是基于語義編碼的難點之一。
5.5可分級視頻編碼
在前面兩章中介紹的編碼方法包括基于波形和基于內(nèi)容的方法,目的是對于固定的比特率使編碼效率最優(yōu)化。當(dāng)許多用戶試圖通過不同的通信鏈路接入相同的視頻時,會出現(xiàn)困難。例如,可以在通過高速鏈路(例如ADSL調(diào)制解凋器)連接到服務(wù)器的終端上實時下載以1.5Mb/s編碼的MPEG-1視頻并重放。但僅有56Kb/s調(diào)制解調(diào)器連接的用戶將不能實時接收足夠的比特進行重放??煞旨壭允侵竿ㄟ^僅解碼一部分壓縮的比特流物理的恢復(fù)有意義的圖像或視頻信息的能力。如果視頻流是可分級的,那么具有高帶寬連接的用戶可以下載整個比特流以觀看全質(zhì)量的視頻,而具有56Kb/s連接的用戶將只下載流的一個子集,觀看一個低質(zhì)量的演播。可分級性編碼主要有三個特性:帶寬可分級性、對變化的信道誤差特征的適應(yīng)性、對接收終端計算能力的適應(yīng)性。對于無線通信,可分級性編碼允許調(diào)整信源碼率,并可以使用非平衡誤碼保護以適應(yīng)信道誤碼條件。對于互聯(lián)網(wǎng)傳輸,可分級性編碼可以傳輸可變比特率業(yè)務(wù),有選擇地丟棄比特,以及針對不同的調(diào)制解調(diào)器速率、變化的信道帶寬和不同的設(shè)備能力調(diào)整信源碼率。當(dāng)用戶處于無線、因特網(wǎng)和多媒體的匯合處時,可分級性對于從任何地方、由任何人、在任何時間、用任何設(shè)備和以任何形式進行豐富的多媒體訪問就變得愈發(fā)重要了。可分級編碼器可有粗間隔度(在兩層或三層內(nèi)——這些也稱為分層編碼器)或細間隔度。在細間隔度的極端情況下,比特流可以在任何點被截斷。保留的比特越多,重建圖像的質(zhì)量就越好。我們稱這樣的比特流為嵌入式的。嵌入式編碼器能進行精確的比特率控制,這在許多應(yīng)用系統(tǒng)中都是所希望的特性。例如,網(wǎng)絡(luò)濾波器可以從嵌入式比特流中選擇傳輸?shù)谋忍財?shù)以匹配可用帶寬。
可分級編碼一般是通過提供一個視頻的多種版本實現(xiàn)的,這些版本是就幅度分辨率(稱為質(zhì)量可分級性或SNR可分級性)、空間分辨率(空間可分級性)、時間分辨率(時間可分級性)、頻率分辨率(頻率可分級性,經(jīng)常稱為數(shù)據(jù)分割)或這些選項的組合而言的。可分級內(nèi)容可以在幀級或物體級進行訪問。后者是指基于物體的可分級性,如在MPEG-4標(biāo)準(zhǔn)中所定義的。在本節(jié)中,首先介紹實現(xiàn)可分級性的4個基本方案,包括質(zhì)量、空間、時間和頻率可分級性。然后描述如何在物體級實現(xiàn)可分級性。盡管類似的概念可以應(yīng)用于不同類型的編碼器,但我們將把討論集中于修正的基于塊的混合編碼器,以實現(xiàn)各種可分級性模式。最后,講述基于小波的編碼方法,由小波變換的性質(zhì),它自然導(dǎo)致細間隔度的可分級性。注意,應(yīng)付變化的信道環(huán)境和接收機能力的另一種方法是通過同時聯(lián)播,它簡單地把同一視頻編碼幾次,每次具有不同的質(zhì)量或分辨率設(shè)置。這種方法盡管簡單,但效率很低,因為一個較高質(zhì)量或分辨率的比特流實際上重復(fù)了已經(jīng)包含在較低質(zhì)量或分辨率比特流中的信息,以及一些附加信息。另一方面,為了提供可分級功能,與目前的不可分級編碼器相比較,編碼器必須犧牲一定的編碼效率。可分級編碼的設(shè)計目標(biāo)是在實現(xiàn)可分級性要求的同時使編碼效率的降低達到最小。5.5.1可分級的基本模式
1.質(zhì)量可分級性
質(zhì)量可分級性定義為具有可變的彩色模式精度的視頻序列的表示。這一般是通過以越來越精細的量化步長量化彩色值(在原始或變換域中)實現(xiàn)的。因為不同的量化精度導(dǎo)致原始的視頻與量化的視頻之間不同的PSNR,所以這類可分級性通常稱為SNR可分級性。
圖5-14給出了一個具有N層質(zhì)量可分級性的比特流。解碼第一層(也稱為基本層)提供一個低質(zhì)量的重建圖像版本。進一步解碼其余的層(也稱為增強層)導(dǎo)致重建圖像的質(zhì)量提高,直到最高質(zhì)量。第一層是通過對原始圖像或在變換域(例如DCT)中應(yīng)用一個粗糙的量化器得到的。圖5-14具有N層質(zhì)量可分級性的比特流第二層包含原始圖像與由第一層重建的圖像之間的量化差值,使用的量化器比用于產(chǎn)生第一層的量化器更精細。類似地,后面的每一層包含原始圖像與由前面一層重建的圖像之間的量化差值,量化中使用愈加精細的量化器。
圖5-15(a)畫出了一個具有兩級質(zhì)量可分級性的編碼器。對于基本級,編碼器以與典型的基于塊的混合編碼器一樣的方式工作。對于增強級,按如下方式工作:
(1)在基本級對原視頻幀(或運動補償誤差幀)進行DCT變換并量化;
(2)用反量化重建基本級DCT系數(shù);
(3)從原DCT系數(shù)中減去基本級的DCT系數(shù);
(4)用小于基本級的量化參數(shù)量化該殘差;
(5)用VLC編碼量化比特。由于增強級使用了較小的量化參數(shù),它能夠達到比基本級更好的質(zhì)量。
圖5-15(b)畫出了解碼器的工作過程。對于基本級,解碼器與不可分級視頻解碼器的工作完全一樣。對于增強級,必須接收到兩級,用可變長解碼(VLD)進行解碼,并進行反量化。
然后把基本級的DCT系數(shù)值加到增強級的精細的DCT系數(shù)上。這一步之后,對求和后的DCT系數(shù)進行DCT逆變換,產(chǎn)生增強級的解碼視頻。圖5-15一個兩級的質(zhì)量可分級編/解碼器
2.空間可分級性
空間可分級性定義為同一個視頻在不同空間分辨率或尺寸下的表示(如圖5-16的(a)和(b)所示)。
圖5-17說明了一個具有M層空間可分級性的比特流。通過解碼第一層,用戶可以顯示一個低分辨率解碼圖像的預(yù)覽版本。解碼第二層產(chǎn)生一個較大的重建圖像。進一步地,通過逐級解碼其余的層,觀看者可以增加圖像的空間分辨率,直到原始圖像的全分辨率。圖5-16視頻流的空間和時間分級圖5-17具有M層空間可分級性的比特流為了產(chǎn)生這樣一個分層比特流,首先要獲得原始圖像的多分辨率分解。直接編碼最低分辨率的圖像以產(chǎn)生第一層(即基本層)。為了產(chǎn)生第二層,先把由第一層解碼的圖像內(nèi)插到第二個最低的分辨率,并且在這個分辨率下對原始圖像與內(nèi)插圖像之間的差進行編碼。以相同方式產(chǎn)生每一個后續(xù)分辨率的比特流:首先在該分辨率下基于前面的層形成一個估計圖像,然后在該分辨率下編碼估計圖像與原始圖像之間的差。
圖5-18(a)給出了兩層的空間可分級編碼器的方框圖。對于基本層,原視頻首先進行空間下采樣,然后進行DCT變換、量化和VLC編碼。對于增強層,進行以下的工作:
(1)在基本層,對原視頻進行空間下采樣、DCT變換和量化;
(2)通過反量化和逆DCT重建基本層圖像;
(3)對基本層圖像進行空間上采樣;
(4)從原始圖像中減去上采樣的基本層圖像;
(5)對殘差進行DCT變換,并用小于基本層的量化參數(shù)進行量化;
(6)用VLC編碼量化的比特。
由于增強層使用了較小的量化參數(shù),它可以達到比基本層更高的質(zhì)量。
圖5-18(b)畫出了具有兩層可分級性的空間可分級解碼器。對于基本層,解碼器的工作與不可分級的視頻解碼器完全一樣。對于增強層,必須接收到兩層,用VLD解碼,進行反量化和逆DCT變換。然后上采樣基本層圖像。把上采樣的基本層圖像與增強層的細節(jié)相結(jié)合形成增強層解碼視頻。圖5-18兩層的空間/時間可分級編解碼器的框圖
3.時間可分級性
時間可分級性定義為同一個視頻在不同的時間分辨率或幀率下的表示(見圖5-16的(a)和(c))。時間可分級性可以對不同內(nèi)容的層使用不同的幀率。一般,以這種方法對時間可分級視頻進行有效地編碼:利用較低層的時間上采樣圖像作為較高層的預(yù)測。時間可分級編解碼器的方框圖與空間可分級編解碼器的相同(見圖5-18)。惟一的差別是空間可分級編解碼器用空間下采樣和空間上采樣,而時間可分級編解碼器用時間下采樣和時間上采樣。進行時間下采樣的最簡單方法是跳幀。例如,比率為2∶1的時間下采樣可通過每兩幀丟棄一幀來實現(xiàn)。時間上采樣可用幀復(fù)制的方法來實現(xiàn)。例如,比率為1:2的時間上采樣可通過每幀復(fù)制一個副本并在下一步傳輸這兩幀來實現(xiàn)。在這種情況下,基本層包括所有的偶數(shù)幀而增強層包括所有的奇數(shù)幀。對于運動補償,基本層的幀將僅由前面的基本層的幀來預(yù)測,而增強層的幀由基本層的幀和增強層的幀都可以預(yù)測。
4.頻率可分級性
用多個層表示視頻幀的另一種方法是通過在每一層包含不同的頻率分量,基本層包含低頻分量而其他層包含逐漸增加的較高頻率分量。在這種方法中,基本層將提供一個模糊的圖像,加上各增強層將產(chǎn)生逐漸清晰的圖像。可通過整幀變換(例如子帶分解或小波變換)或通過基于塊的變換(例如塊DCT)來實現(xiàn)這種分解。在基于塊的混合編碼器中實現(xiàn)這個思想的一種方法是:在基本層中包括模式信息、運動信息和每個宏塊的前幾個DCT系數(shù),而在增強層中包括其余的DCT系數(shù)。在MPEC-2標(biāo)準(zhǔn)中,這稱為數(shù)據(jù)分割。我們將在下一節(jié)中討論基于小波的可分級編碼器。5.5.2基于小波變換的編碼
1.小波變換
近年來,小波變換作為一種數(shù)學(xué)工具廣泛應(yīng)用于圖像紋理分析、圖像編碼、計算機視覺、模式識別、語音處理、地震信號處理、量子物理以及眾多非線性科學(xué)領(lǐng)域,被認為是近年來分析工具及方法上的重大突破。原則上講,凡是使用傅立葉分析的地方,都可以用小波分析取代。小波分析優(yōu)于傅立葉分析的地方是它在時域和頻域同時具有良好的局部化性質(zhì),而且由于對高頻成分采用逐漸精細的時域或空域(對圖像信號處理)取樣步長,從而可以聚焦到分析對象的任意細節(jié),小波分析的這一特性被譽為“數(shù)學(xué)顯微鏡”。不僅如此,小波變換還有許多優(yōu)異的性能,總結(jié)如下:
·小波變換是一個滿足能量守恒方程的線性變換,能夠?qū)⒁粋€信號分解成其對空間和時間的獨立貢獻,同時又不丟失原始信號所包含的信息。
·小波變換相當(dāng)于一個具有放大、縮小和平移等功能的數(shù)學(xué)顯微鏡,通過檢查不同放大倍數(shù)下信號的變化來研究其動態(tài)特性。
·小波函數(shù)簇(即通過基本小波函數(shù)在不同尺度下的平移和伸縮而構(gòu)成的一簇函數(shù),用以表示或逼近一個信號或一個函數(shù))的時間和頻率窗的面積較小,且在時間軸和頻率軸上都很集中,即小波變換后系數(shù)的能量較為集中。
·小波變換的時間、頻率分辨率分布的非均勻性較好地解決了時間和頻率分辨率的矛盾,即在低頻段用高的頻率分辨率和低的時間分辨率(寬的分析窗口),而在高頻段則用低的頻率分辨率和高的時間分辨率(窄的分析窗口),這種變焦特性與時變信號的特性一致。
·小波變換可以找到正交基,從而可以方便地實現(xiàn)無冗余的信號分解。
·小波變換具有基于卷積和正交鏡像濾波器組(QWF)的塔形快速算法,易于實現(xiàn)。該算法在小波變換中的地位相當(dāng)于FFT在傅立葉變換中的地位。
小波變換也可以分為連續(xù)小波變換(有的文獻中也稱為積分小波變換)和離散小波變換兩類。
(2)Hnarr小波:
(3)墨西哥帽狀小波:如果f(x)是離散的,記為f(k),則離散小波
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出售園林鋪面合同范本
- 保潔物料供貨合同范本
- 企業(yè)策劃宣傳合同范本
- 農(nóng)機割臺租售合同范本
- 出口螺桿驗貨合同范本
- 公司分期手機合同范本
- 企業(yè)職員培養(yǎng)合同范本
- 企業(yè)終止租賃合同范本
- 化糞池安裝合同范本
- 2024年深圳市南山區(qū)蓓蕾幼教集團招聘考試真題
- GB/T 22919.2-2008水產(chǎn)配合飼料第2部分:軍曹魚配合飼料
- 數(shù)字化轉(zhuǎn)型中數(shù)據(jù)底座湖倉一體化
- 典范英語8-1-刺猬女孩艾蜜
- 《教育管理學(xué)》課件
- 水平井套內(nèi)不動管柱滑套多段壓裂工藝技術(shù)全解課件
- 凈水設(shè)備技術(shù)參數(shù)要求
- 腦血管造影護理課件
- 稱呼禮儀精品課件
- 課題申報講座課件
- 系統(tǒng)科學(xué)與系統(tǒng)工程的理論基礎(chǔ)
- 思想道德與法治課件:第四章 第二節(jié) 社會主義核心價值觀的顯著特征
評論
0/150
提交評論