數字視訊編碼技術論文

  數字視訊編碼技術指通過特定的壓縮技術,將某個視訊格式的檔案轉換成另一種視訊格式檔案的方式。下面是小編整理的,希望你能從中得到感悟!

  篇一

  數字視訊編碼技術的研究綜述

  摘要:隨著流媒體技術、微電子技術、多媒體技術以及多媒體技術的快速發展,已經出現很多智慧終端。數字視訊編解碼演算法在智慧終端系統中起著核心的作用。該文對數字視訊壓縮標準的發展及現狀進行了闡述,然後對視訊編碼的基本原理進行必要的闡述,最後對可伸縮編碼技術進行詳細的闡述。

  關鍵詞:視訊編碼;視訊壓縮;可伸縮編碼

  中圖分類號:TP37 文獻標識碼:A 文章編號:1009-3044***2013***24-5528-04

  在過去的20年間,多媒體通訊的發展是迅猛的。因為視訊是多媒體通訊的核心,所以很多數字視訊壓縮演算法不斷的推出,這使得視訊傳輸以及視訊儲存的效率也越來越高。新的視訊編碼標準也隨著音視訊壓縮技術的不斷髮展而相繼產生。現在數字電視越來越普及,人們對視訊的質量要求也越來越高。為了滿足人們對視訊的多樣化、高質量的需求,ITU-T/VCEG與ISO/MPEG共同制訂了一系列的視訊壓縮編碼國際標準。這些標準在日常生活的應用又推動了視訊服務業務的發展。

  1 視訊編碼的發展及現狀

  數字視訊解析度的提高使得原始資料量不斷增多,為了提高視訊編碼的壓縮效率,新的視訊編碼標準不斷推出。1984年CCITT第15研究組釋出了數字基準電視會議編碼標準H.120建議。在1988年的時候,CCITT通過了視訊編碼標準H.261建議。H.261是視訊壓縮編碼的一個里程碑。從這以後,ISO及ITU-T等釋出的基於波形的編碼標準中的編碼方法很多都是基於H.261的混合編碼。在1986年,聯合影象專家組成立,對連續色調靜止影象壓縮演算法的國際標準進行研究,在1992年通過了JPEG標準。

  在1988年,活動影象專家組成立。並在1991年MPEG-2編碼標準,主要在VCD的視訊壓縮中進行應用。在1994年公佈的MPEG-2編碼標準,不同的位元速率分別在不同檔次、不同級別的視訊壓縮中應用。MPEG-2已經支援高清晰度視訊,但是要實現全面高清化還需要更高效的編碼技術。

  在1995年,ITU-T又推出了H.263編碼標準。主要用於可視會議和多媒體通訊等低位元速率視訊的傳輸。

  在1999年,ISO/IEC通過了MPEG-4編碼標準,此標準強調了多媒體通訊的靈活性和互動性。

  在2003年,ISO/IEC和ITU-T公佈H.264視訊壓縮標準,這個標準明顯提高了視訊壓縮效率,而且網路親和性也很不錯,對誤碼及丟包的處理進行了加強。H.264增加了1/4精度預測、整數DCT變換等技術。

  在2007年,作為H.264/AVC標準可伸縮性擴充套件檔次的可伸縮性編碼SVC推出,根據要求將視訊分割成一個基本層和多個增強層。

  在2013年,HEVC成為國際標準,可以提供更好的視覺效果。HEVC對預測模型、變換技術等進行了擴充套件。

  2 視訊編解碼技術基礎

  在通用的視訊編碼框器中,一般使用一個編碼框架,但是使用多種壓縮編碼方法。不同壓縮編碼方法的原理也是不同的。這些編碼方法是視訊編碼的基本工具。本節主要對預測編碼,變換編碼及熵編碼的原理進行詳細介紹。

  2.1 預測編碼

  預測編碼是比較基本的編碼工具,常用的預測編碼方法有幀內預測和幀間預測編碼。幀間預測是用於消除時間冗餘,幀內預測用於消除空間冗餘。因為時間冗餘遠遠大於時間冗餘,下面主要對幀間預測進行闡述。

  2.1.1 預測編碼的基本概念

  預測編碼通過利用已知的資訊對未知的資訊進行猜測,對實際值和預測值之間的差值進行編碼。通過預測得到一個預測值,實際值減去預測值得到一個殘差:

  如果預測方法比較好,殘差值就會比較小,對殘差進行編碼的碼流也會比較小。在解碼端對殘差進行解碼,使用與編碼端相同的預測方法得到預測值,進而重構出原始影象:

  通常情況下,可以利用若干已經編碼影象畫素的線性組合來得到預測值。考慮影象的特點,預測一般以塊為單位進行。需要將影象按照規則分割成具有規則的塊。按照順序對每個塊分別進行預測編碼。

  2.1.2 幀間預測編碼

  幀間預測的目的是去除時域的冗餘資訊,就是使用已經編碼的影象對現在要編碼的影象進行預測。預測方法的合理性關係到殘差的大小。

  幀間預測中比較重要的兩個概念是運動估計和運動補償。運動估計就是尋找當前編碼的塊在已編碼影象的最佳對應塊。並計算出對應塊之間的偏移即運動向量。如果當前幀是P,參考幀是Pr ,當前編碼塊是B,在Pr中找到與B塊相減之後殘差最小的塊Br ,Br就是B的最佳匹配塊。這個過程稱為運動估計。運動向量也需要採用合適的方法編碼到碼流中,這樣在解碼端才能解碼出原影象。

  運動補償是由運動向量及幀間預測方法得到當前幀的估計值的過程。它是對當前影象的描述,說明當前影象的每一塊怎麼由其他參考影象的畫素塊得到。

  運動估計和運動補償都是消除時間冗餘的重要方法。這兩者直接影響到重建影象質量及壓縮比。運動估計是動態過程,而運動補償只是一個靜態的描述。

  2.1.3 運動估計

  運動估計有兩種模型:非引數模型和引數模型。

  非引數模型是一種把非引數的平滑度約束條件附加到二維運動場得到的運動估計模型。根據約束條件的種類可以分為確定性模型和隨機性模型。常見的有貝葉斯法、塊匹配法等。實際中的很多運動估計演算法都是基於非引數模型。

  引數模型主要對三維運動物體在影象平面上的正交或透視投影進行描述。引數模型只對三維剛體的運動估計適用。

  2.2 變換編碼

  變換編碼的編碼效率要比預測編碼高。K-L變換、傅立葉變換等演算法出現比較早,壓縮效率高,但因高複雜度沒有得到廣泛應用。離散餘弦變換是首個廣泛應用的變換編碼演算法。因為離散餘弦變換不需要求解特徵向量,大大降低了複雜度。   2.2.1變換編碼基本原理

  變換編碼對訊號的樣本值進行某種形式的函式變換,從一種空間變換到另一種空間,後根據訊號在一個空間域的特徵對訊號進編碼壓縮。變換系統有三個步驟:預處理,變換及量化編碼。變換本身並不壓縮資料,只是把訊號變換到另一個域,變換之後的訊號更獨立,更有序,比較容易壓縮。變換編碼中,輸入函式和輸出函式不同是因為量化誤差形成的。量化編碼在變換編碼系統中是不可缺少的,量化使資料得以壓縮。為了使量化失真最小化可以針對不同的分量使用不一樣的量化方式。

  2.3熵編碼

  熵編碼的思想是對出現概率大的符號取較短的碼長,出現概率小的符號取較大的碼長。熵編碼的基本定理對平均碼長的極限進行了描述。

  熵編碼基本定理是在對信源進行二進位制編碼時,假使aj的編碼長度是Lj,在Lj=-log2Pj時,平均碼長取最小值H***X***,H***X***是信源的熵。基本定理用以下公式表示:

  L=∑PjLj≥H***X***

  熵編碼在實際的壓縮編碼中很難達到熵值,越接近熵值,壓縮效果就越好,壓縮比越高。

  3 可伸縮編碼技術

  3.1 可伸縮編碼的發展及含義

  可伸縮編碼技術已經有20年的歷史,早起出現的H.262/MPEG-2,H.263,MPEG-4有若干工具能夠滿足一些比較重要的可伸縮性需求,但是因為解碼器的複雜度過高,在實現空間,質量可伸縮時的編碼效率低下,編碼質量存在階躍性突變等問題,故以上可伸縮編碼技術沒有獲得廣泛的應用。

  SVC技術因為可以節省傳輸頻寬,能夠自適應解碼顯示,所以具有廣闊的發展前景。以下介紹主要針對SVC。

  在實際的視訊應用中,傳輸的頻寬是在不斷髮生變化的,各種終端的需求也不同,為了滿足實際需求,可伸縮編碼就產生了。可伸縮性編碼將輸入的視訊序列編碼為一個基本層,多個增強層。基本層的視訊質量比較低,增強層的視訊質量比較高。伺服器可以根據需求傳送對應的資料。接收端根據接受到的資料解碼出對應質量視訊。

  3.2 可伸縮編碼的分來

  實現可伸縮視訊編碼的方法比較常見的有三種:時間可伸縮,空間可伸縮以及質量可伸縮。這三種編碼方法的實現原理是不同的,所以編碼方法的效能也是不同的。這三種方法的效能一般和特定的引數是緊密相關的。時間可伸縮中GOP的作用是至關重要的,空間可伸縮的層間預測則較為重要。時間可伸縮以幀率角度進行編碼,空間可伸縮以解析度角度進行編碼,質量可伸縮以量化步長的角度進行編碼。下面對這三種比較常見的壓縮編碼方法進行闡述。

  3.2.1時間可伸縮編碼

  時域可伸縮根據人眼對聯絡性影象的響應時間,在基本幀率和最高幀率之間提供幀率可伸縮。如果網路頻寬比較窄,則接受基本幀率的視訊;如果網路頻寬比較大,則同時接受基本幀率和高幀率視訊,解碼出的視訊比只接受基本幀率的視訊的質量要好。時間可伸縮是通過等級B影象,運動補償時域濾波編碼實現的。不同層量化引數的選擇對等級B影象的編碼效率影響是非常大的。基本層是由關鍵幀組成的,所以要選擇最小的量化引數;增強層對別層的影響較基本層要小,可以選擇稍大的量化引數。等級越高,量化引數對應的就越大。

  3.2.2空間可伸縮編碼

  空間可伸縮編碼將輸入的原始視訊序列進行下采樣,從而得到低解析度的視訊。不同的空間解析度形成不同的編碼層。在空間解析度的基礎上可進而實現時間可伸縮和質量可伸縮。每層的編碼時互相獨立的,編碼引數壓實相互獨立的,比如說運動資訊,量化引數及變換引數等。空間可伸縮編碼有三種預測方式:層間幀內預測,層間運動預測及層間殘差預測。

  3.2.2.1層間幀內預測

  在對增強層的巨集塊進行編碼時,首先需要確定當前巨集塊是否存在與之對應的基本層巨集塊;如果存在基本層巨集塊,再繼續判斷是否使用幀內預測。如果使用幀內預測,則對基本層巨集塊進行上取樣之後,作為增強層巨集塊的預測塊。

  3.2.2.2層間運動預測

  層間運動預測分為基本層模式,1/4畫素修正模式。在基本層模式中,增強層的運動向量,巨集塊分割等資訊是由相對應基本層巨集塊提供的。基本層巨集塊的運動資訊放大後可以直接應用在增強層巨集塊。在使用1/4畫素修正模式時,基本層運動向量資訊要在增強層的1/4精度內進行適當的調整。層間預測的使用可以大量減少層內運動估計,模式判斷。

  3.2.2.3層間殘差預測

  層間殘差預測使用基本層的預測殘差資訊對增強層的殘差資訊進行預測,對兩者之間的差值進行編碼。只有在基本層和增強層的運動向量資訊相似或相等的情況下,兩層之間的殘差的相關性才會比較大,使用層間殘差預測才會比較合適。如果兩層運動向量的差異性比較大,則不適合使用層間殘差預測,此時,很有可能會降低編碼效率。

  3.2.3質量可伸縮編碼

  質量可伸縮編碼有兩種:精細可伸縮編碼和粗粒可伸縮編碼。兩者的思想,架構都是相同的。

  精細可伸縮編碼***FGS,Fine Granular Scalable***的核心思想是通過使用增強層的影象作預測參考幀,從而提高編碼效率。FGS將原始視訊壓縮為基本層碼流,增強層碼流兩個碼流。基本層採用的是傳統的非可伸縮編碼。增強層採用的是位平面編碼技術,解碼端根據接受到增強層資料解碼質量不同的視訊序列。FGS的核心演算法是基於DCT係數的位平面編碼。

  粗粒可伸縮編碼***CGS,Coarse Grain Scalability***的編碼結構和空間可伸縮式非常相似的。但是CGS的增強層的空間解析度是相同的,而且增強層的量化係數一般比基本層的要小,因此食品質量伴著層級的遞增就越來越好。編碼框架如下所述:對原始影象進行DCT變換之後進行量化引數比較大的粗量化,然後進行熵編碼,熵編碼後形成基本層資料。然後把粗量化的資料進行反量化,原始影象DCT與之作差。然後對差值進行量化引數比較小的細量化,進行熵編碼之後形成增強層的資料。量化引數大,解碼出來的視訊質量比較差;量化引數小,解碼出來的影象的質量比較好。   3.3 SVC在數字電視的應用

  現在數字電視採用的編碼標準大部分是MPEG-2,SVC還沒有在數字電視中推廣起來,因為SVC不被老式機頂盒所支援,所以這種不相容性也在一定程度上造成了新標準使用的延遲。

  4 結束語

  隨著視訊編碼的不斷髮展,可分級視訊編碼是近幾年來的研究熱點,它是解決現代視訊傳輸和儲存系統中異構問題的非常重要的手段。該文首先對視訊編碼的發展及現狀進行詳細的說明,然後對視訊編碼的基本原理進行必要的說明。最後對可伸縮編碼分類及每個類別進行詳細的闡述。

  視訊編碼技術不斷髮展,新的編碼標準也在不斷的推出。現在,視訊編碼也在面臨新的挑戰。

  1*** 網路視訊應用對視訊編碼碼流的“友好性”提出了更高層次的要求。

  2*** 高清晰度、高質量視訊的推廣和普及對視訊編碼壓縮效率提出了更高層次的要求。

  綜上所述,這兩個挑戰,將是當前和未來視訊編碼技術的研究中需要解決的比較重要的課題。

  參考文獻:

  [1] 李德識,李薇.無線感測器網路中覆蓋問題的研究[J].微電子學與計算機,2005,22***8***:150-152.

  [2] 畢厚傑. 新一代視訊壓縮編碼標準H.264[M].北京:人民郵電出版社,2004.

  [3] 吳俊峰. H_264SVC可伸縮視訊編碼及轉碼技術研究[D].天津大學,2008.

  [4] JVT. ISO/ETC 14496-10:2010 Information Technology — Coding of Audio-Visual Objects — Part 10: Advanced Video Coding. 2010

  [5] 陳靖,劉京,曹喜信.深入理解視訊編解碼技術[M].北京:北京航空航天大學出版社,2012.

  [6] JVT-X202. Joint Scalable Video Model JSVM-11. 2012

  [7] 鍾玉琢,王琪,趙黎,楊小勤.MPEG-2運動影象壓縮編碼國際標準及MPEG的新發展[M].北京:清華大學出版社,2002.

  [8] 柳輝.可伸縮性視訊編碼的轉碼及其應用[D].中國科技大學,2009.

  [9] 王偉超.基於MPEG_2的多視點視訊可分級實時解碼器研究[D].天津大學,2009.

  [10] ITU-T and ISO/IEC JTC1.Joint Scalable Video Model JSVM-9.19,2011.

點選下頁還有更多>>>