專利名稱:適應性濾波器的制作方法
適應性濾波器相關申請交叉引用本申請案主張2009年3月16日申請的第12/405,216號美國專利申請案的優先權,該申請案的全文以引用的方式并入到本文中。本申請案還主張2008年9月25日申請的第61/099,981號美國專利申請案的優先權,該申請案的全文以引用的方式并入到本文中。
背景技術:
現今的視頻編碼方法運用了相當多元的技術,例如使用移動估測(motion estimation)、移云力補償(motion compensation)、去區塊(deblocking)、濾波處理 (filtering)等技術于視頻壓縮中,傳統的編碼方法使用了差分編碼回路(differential coding loop),其中一視頻畫面會被分割成不同區塊,接著經過預測編碼(prediction coding)而被重建(reconstruction),并做為下一個畫面經過預測編碼時的參考畫面。近來編碼技術已發展至利用內嵌式Wiener濾波器以進一步改善編碼畫面的品質,Wiener濾波器能夠減少原始信號與受到雜訊干擾的信號(因編碼過程而造成一蘊含誤差的信號)之間的誤差,Wiener濾波器首先使用一個自相關矩陣與多個互相關向量來估測濾波器參數,此估測通常在去區塊步驟之后進行,請參考圖1,圖1系為一個包含一適應性回路濾波器(adaptive loop filter)于差分編碼回路中的傳統視頻編碼器的簡化方塊示意圖,該視頻編碼器100包含有一移動估測/移動補償(motion estimation/ motion compensation,ME/MC)單元 110、一個畫面內預測(intra prediction)單元 105、一巨集區塊模式決策(macroblock mode decision)的單元155、一變換/量化(transform/ quantization, T/Q)單 ju 140、 一反變換 / 反量化(inverse transform/inverse quantization, IT/IQ) ^-jt 145> —(reconstruction unit) 135> — ^ g ^ Jp. 元130、一熵編碼(entropy coding)單元150、一濾波器參數估測器(filter parameter estimator) 125、一適應性回路濾波器(adaptive loop filter) 120以及一參考畫面緩沖器(reference picture buffer) 115,濾波器參數估測器125會建構復數個Wiener-Hopf 方程式并求出其解以估測復數個濾波器參數,此方程式系由存取一原始畫面(從輸入端) 與一去區塊畫面(從去區塊單元130)而建構,用于計算該去區塊信號(即一個待濾信號) 的自相關性以及該原始信號(從輸入端)與該去區塊信號的互相關性,其中該兩種存取為同時完成,這是所謂的第一階段(first pass),該Wiener濾波器參數接著會被應用至該去區塊畫面以產生一誤差較小的信號,這是所謂的第二階段(second pass),該產生信號接著會被寫入參考畫面緩沖器120,其儲存了供復數個后續畫面參考的復數個重建畫面,圖2說明了這些程序,由該圖可知,對于單一畫素,此傳統的二段式(two-pass)程序需要三次讀取操作以及一次寫入操作,由于這些程序需要頻繁地存取動態隨機存取存儲器(dynamic random access memory, DRAM),因此將增力口編碼延遲(encoding latency)。圖11系為一個包含一適應性回路濾波器于差分編碼回路中的傳統視頻解碼器的簡化方塊示意圖,此視頻解碼器1100包含有一移動補償單元1120、一畫面內預測單元1115、一反變換/反量化單元1110、一重建單元1135、一去區塊單元1140、一熵解碼(entropy decoding)單元1105、一適應性回路濾波器1130以及一參考畫面緩沖器1125。Wiener濾波法亦可應用于畫面間預測(inter prediction)步驟,請參考圖3,圖 3系為一個包含一適應性插補濾波器(adaptive interpolation filter)于差分編碼回路中的傳統視頻編碼器的簡化方塊示意圖,此視頻編碼器300包含有一移動估測/移動補償單元310、一畫面內預測單元305、一巨集區塊模式決策的單元355、一變換/量化單元340、 一反變換/反量化單元;345、一重建單元335、一去區塊單元330、一熵編碼單元350、一濾波器參數估測器325、一適應性插補濾波器320以及一參考畫面緩沖器315,該濾波器參數估測器可計算出復數個最佳濾波器參數,而該適應性插補濾波器則減少一個原始信號與一個預測信號之間的誤差,對于一個目前畫面(current picture)來說,其復數個最佳濾波器參數在初始時是未知的,該濾波器參數估測器藉由計算該預測信號(即一個待濾信號)的自相關性以及該原始信號(從輸入端)與該預測信號(從巨集區塊模式決策的輸出端)的互相關性來建構復數個Wiener-Hopf方程式,其中該預測信號系由輔以事先定義的判定標準六閥濾波器系數(predefined standard 6-tap filter coefficients)插補復數個參考畫面而取得,然后該濾波器參數估測器解出該復數個方程式并得到復數個最佳濾波器參數, 這是所謂的第一階段,接著會再度輔以該復數個最佳濾波器參數來插補及對該目前畫面的該復數個參考畫面進行濾波處理以供移動估測/移動補償,這是所謂的第二階段,該第二階段可以重復進行直到最佳濾波器參數收斂為止,圖4說明了這些程序,由圖4所示的流程圖可知,該傳統多階段程序需要執行移動估測/移動補償兩次以上,編碼延遲與復雜度 (complexity)都會大幅增加。圖12系為一個包含一適應性插補濾波器于差分編碼回路中的傳統視頻解碼器的簡化方塊示意圖,此視頻解碼器1200包含有一移動補償單元1220、一畫面內預測單元 1215、一反變換/反量化單元1210、一重建單元1235、一去區塊單元1M0、一熵解碼單元 1205、一適應性插補濾波器1225 ;以及一個參考畫面緩沖器1230。
發明內容
因此,本發明的一目的在于提供一種視頻編碼裝置及方法,以減少每個像素存取動態隨機存取存儲器的數量,減少編碼延遲與計算復雜度。利用適應性回路濾波操作來將視頻數據編碼的視頻編碼器,包含有一預測單元, 用于依據至少一原始視頻數據與至少一重建視頻數據來進行預測以產生復數個預測取樣值;一重建單元,耦接于該預測單元,并且用于重建該復數個預測取樣值來形成該重建視頻數據;一參考畫面緩沖器,用于儲存該重建視頻數據與相對應的復數個濾波器參數來作為一參考視頻數據;一濾波器參數估測器,耦接于該重建單元與參考畫面緩沖器之間,并且用于依據一目前畫面之該原始視頻數據與該目前畫面之該重建視頻數據來估測復數個濾波器參數;以及一適應性回路濾波器,耦接于該參考畫面緩沖器與該預測單元之間,并且用于依據對應于復數個參考畫面之已儲存的該復數個濾波器參數來對該復數個參考畫面進行濾波處理。視頻數據編碼方法,包含有依據至少一原始視頻數據與至少一重建視頻數據來進行預測以產生復數個預測取樣值;重建該復數個預測取樣值來形成該重建視頻數據;依據一目前畫面之該原始視頻數據與該目前畫面之該重建視頻數據取樣值來估測復數個濾波器參數;從一參考畫面緩沖器中讀取一先前畫面之該重建視頻數據,以對一編碼序列中儲存的該先前畫面之該重建視頻數據進行濾波處理,并且對于該目前畫面之該原始視頻數據與該編碼序列中儲存的該先前畫面中已經被濾波處理過的該重建視頻數據之間進行一移動估測操作;以及利用該編碼序列中儲存的該先前畫面的該復數個估測的濾波器參數來對該編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,其中該編碼序列中儲存的該先前畫面的已經被濾波處理過的該重建視頻數據系用于該移動估測操作。將該已編碼的視頻數據解碼的視頻解碼器,包含有一熵解碼單元,用于解析一編碼位流;一預測單元,用于依據該熵解碼單元來進行復數次預測操作;一重建單元,耦接于該預測單元,并且用于重建復數個預測取樣值來形成一重建視頻數據;一參考畫面緩沖器, 用于儲存該重建視頻數據與該熵解碼單元提供的相對應的已解碼的復數個濾波器參數來作為一參考視頻數據;以及一適應性回路濾波器,耦接于該參考畫面緩沖器與該預測單元之間,并且用于依據相對應的復數個參考畫面的已儲存的該復數個濾波器參數來對復數個參考畫面進行濾波處理。視頻數據解碼方法,包含有對一位流進行熵解碼處理以產生復數個熵解碼結果; 依據該復數個熵解碼結果來進行復數次預測操作;重建復數個預測取樣值來形成一重建視頻數據;從一參考畫面緩沖器中讀取一先前畫面的該重建視頻數據,以對一編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,并且對于一目前畫面的該原始視頻數據與該編碼序列中儲存的該先前畫面中已經被濾波處理過的該重建視頻數據之間進行一移動估測操作;以及利用該編碼序列中儲存的該先前畫面的該復數個估測的濾波器參數來對該編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,其中該編碼序列中儲存的該先前畫面的已經被濾波處理過的該重建視頻數據系在不寫入一存儲器的狀態下用于該移動估測操作。本領域技術人員閱讀完下述在不同圖形和繪圖中展示的較佳實施例的詳細說明后,將非常容易理解本發明的上述目的和其他目的。
圖1系為傳統的適應性回路濾波操作的視頻編碼器的簡化方塊示意圖。圖2系為圖1中所示的視頻編碼器存取動態隨機存取存儲器的簡化方塊示意圖。圖3系為習知適應性插補濾波操作的視頻編碼器的簡化方塊示意圖。圖4系為圖3中所示的視頻編碼器處理流程示意圖。圖5系為本發明的視頻編碼器的一第一實施例的簡化方塊示意圖。圖6系為圖5中所示的視頻編碼器存取動態隨機存取存儲器的簡化方塊示意圖。圖7系為本發明的視頻編碼器的一第二實施例的簡化方塊示意圖。圖8系為圖7中所示的視頻編碼器存取動態隨機存取存儲器的簡化方塊示意圖。圖9系為本發明的視頻編碼器的一第三實施例的簡化方塊示意圖。圖10系為圖9中所示的視頻編碼器處理流程示意圖。圖11系為圖1中所示的習知適應性回路濾波操作的視頻解碼器的簡化方塊示意圖。圖12系為圖3中所示的習知適應性插補濾波操作的視頻解碼器的簡化方塊示意圖。圖13系為本發明的視頻解碼器的一第四實施例的簡化方塊示意圖。圖14系為本發明的視頻解碼器的一第五實施例的簡化方塊示意圖。圖15系為本發明的視頻解碼器的一第六實施例的簡化方塊示意圖。
具體實施例方式本發明目的在于提供一種在視頻編碼中,存取動態隨機存取存儲器的次數少于傳統的兩段式濾波程序的適應性濾波器。本發明另提供多種可減少編碼延遲與計算復雜度的視頻數據編碼方法。請參考圖5,圖5系為本發明的一第一實施例中包含一適應性濾波器的一視頻編碼器500的簡化方塊示意圖,視頻編碼器500包含有一移動估測/移動補償單元510、一畫面內預測單元505、一巨集區塊模式決策的單元555、一參考畫面緩沖器520、一適應性回路濾波器515、一濾波器參數估測器525、一重建單元535、一去區塊單元530、一變換/量化單元M0、一反變換/反量化單元M5以及一個熵編碼單元550,由該圖可知,該適應性濾波器可分為兩部分第一部分為濾波器參數估測器525,其耦接于去區塊單元530與參考畫面緩沖器520之間;第二部分為適應性回路濾波器515,其耦接于參考畫面緩沖器520與移動估測/移動補償單元510之間,由于欲移動估測/移動補償的像素數據是暫存在芯片上,所以當一動態隨機存取存儲器存取時,可以同時執行移動估測/移動補償。濾波器參數估測器525存取一去區塊畫面與一原始畫面后,解復數個 Wiener-Hopf方程式,接著將所得的復數個濾波器參數寫入畫面緩沖器520,雖然該參考畫面緩沖器通常以一動態隨機存取存儲器來實現,也可用一內部存儲器來儲存該復數個濾波器參數,例如一快取存儲器(cache)、一靜態隨機存取存儲器(static random access memory, SRAM)或是復數個寄存器(register)。用于復數個一維(one-dimension, 1-D)或二維(two—dimension, 2—D)有限脈沖響應(finite pulse response, FIR)濾波器的Wiener-Hopf方程式,可以利用先產生具有復數個區塊像素(亦即一待濾信號)的一自相關矩陣以及在該復數個原始像素與該復數個去區塊像素之間的一互相關向量來求解,該復數個濾波器參數系由解出該復數個 Wiener-Hopf方程式而算出,而此時該去區塊畫面也已經被寫入至參考畫面緩沖器520,并且該復數個濾波器參數連同其對應畫面也會被儲存于參考畫面緩沖器520中,在一實施例中,一旦一參考畫面由參考畫面緩沖器520移除時,該參考畫面所對應的復數個濾波系數也會被移除,濾波系數估測器525接著會對去區塊單元530中一下一畫面執行相同程序,適應性回路濾波器515同時存取一編碼序列中的一先前畫面及參考畫面緩沖器中該先前畫面所對應的復數個濾波器參數,并且在該先前畫面傳送至移動估測/移動補償之前,先將該復數個濾波系數應用至該先前畫面,如此一來,對于每一個像素來說,該去區塊畫面及參考畫面緩沖器520僅需要被存取一次,畫面濾波處理會在適應性回路濾波器515中進行,然后該已經被濾波處理過的畫面會立即被傳送至移動估測/移動補償單元510,在一部分實施例中,適應性回路濾波器515可以與移動估測/移動補償中的插補程序結合,相較于習知技術,該已經被濾波處理過的畫面不需要被寫入至參考畫面緩沖器520,再者,由于參考畫面緩沖器無論如何都需要被讀取以決定移動估測/移動補償的數據,例如關于搜尋范圍的數據,因此相較于習知技術,利用適應性回路濾波器515來讀取該參考畫面可以節省一個讀取以及一個寫入的動作,并且由于移動估測/移動補償的數據一般都暫存于芯片上,當移動估測/移動補償執行的同時,濾波器參數估測器525存取動態隨機存取存儲器的動作不會造成動態隨機存取存儲器延遲,因此,一種一段式(one-pass)適應性回路濾波的演算法就得以實現,請參考圖6的說明。另外,該一段式演算法可藉由評估采取該適應性方法的效能來決定是否被啟動或關閉,舉例來說,利用復數個成本函數(cost function)/信號率失真判定標準以決定于某一像素上執行某一程序的成效,一信號率失真判定標準可表示為AJ= Δ D+λ AR其中Δ R =參數位,以及 Δ D = Dfilter。n_Dfilter off若Δ J < 0,則應啟動該濾波器,反之,則不需要啟動該濾波器。以圖5所示的電路為例,對于一第一個畫面,該信號率失真判定標準可以決定進行適應性濾波操作,并且成本函數中該項Dfiltw。η可以被正確地估測而不用實際對該去區塊畫面進行濾波處理,然而,為了要估算Dfiltw。η及接著估測AD,仍然必須算出該自相關矩陣與該互相關向量,另外,為了估測△! ,亦須計算出該復數個濾波器參數,該一段式演算法的使用大為減少計算該信號率失真判斷的復雜度,在一實施例中,該濾波器參數估測器可以包含有一 Wiener濾波器參數產生單元,用于計算該復數個Wiener濾波器參數;以及一信號率失真判斷單元,用于執行一信號率失真判定標準來決定是否啟動該適應性回路濾波器,其中該適應性回路濾波器依據已產生的該復數個濾波器參數以執行濾波處理操作。另外,并不需要在一整個畫面判斷是否進行濾波處理操作,因為有可能在一畫面中僅有某些區域需要進行濾波處理,因此該一段式演算法相當適用于一區域導向(region based)的信號率失真判斷,該區域導向的信號率失真判斷可表示為AJm= Δ Dm+λ ARm其中ARm =復數個參數位,以及 ADm = Dm,filter。n_Dm,filter。ff若Δ Jm < 0,則應啟動該濾波器,反之,則對于區域m不需要啟動該濾波器。由于該一段式適應性濾波器指出對于判別一信號率失真并不用實際濾波處理,所以并不需要提供一暫態畫面存儲器(temporal picture memory)以供儲存濾波處理結果。傳統的編碼方法通常包含有一插補濾波器以提升該編碼程序的準確性,由于該插補濾波器通常為一線性濾波器,所以該插補濾波器可與適應性回路濾波器515合并而不會造成該動態隨機存取存儲器額外的存取,當該適應性回路濾波器與該插補濾波器合并為兩個串接式的功能方塊時,由于該適應性回路濾波器會先對復數個整數像素進行處理,所以插補濾波操作會對已被濾波處理的該復數個整數像素進行處理,鑒于插補濾波與適應性回路濾波皆為線性程序,亦可進一步合并該兩種濾波操作至一多功能區塊以共用乘法器來執行乘法運算,盡管上述兩種合并方式皆僅存取該動態隨機存取存儲器一次,該兩種合并方式皆可確保該重建畫面的品質有所提升。此外,本發明提供許多減少動態隨機存取存儲器存取延遲的方法,第一個方法是假設兩個連續畫面之間的改變并不明顯,因此將一先前畫面的復數個濾波器參數做為一目前畫面之用,如此一來,估測復數個濾波器參數與對一畫面進行濾波處理得以同時操作,因而不須藉由該參考畫面緩沖器以分隔該濾波器參數估測器與該適應性回路濾波器即可達到一段式畫面數據的存取,上述一段式結構或是區域導向的濾波法亦適用于此概念,值得注意的是該上述改進方式并不需要兩個適應性回路濾波器,此因同時操作估測復數個濾波器參數及對一畫面進行濾波處理,故一單一適應性回路濾波器僅使用一段式演算法,請參考圖7,圖7系為本發明的一第二實施例中一視頻編碼器700的簡化方塊示意圖,視頻編碼器700包含有一移動估測/移動補償單元710、一畫面內預測單元705、一巨集區塊模式決策的單元755、一參考畫面緩沖器715、一適應性回路濾波器720、一濾波器參數估測器725、 一重建單元735、一去區塊單元730、一變換/量化單元740、一反變換/反量化單元745以及一個熵編碼單元750,由該圖可知,該適應性濾波器可分為兩部分第一部分為濾波器參數估測器725,其耦接于去區塊單元730與適應性回路濾波器720之間;第二部分為適應性回路濾波器720,其耦接于去區塊單元730與參考畫面緩沖器715之間,當去區塊單元730 輸出一目前畫面,濾波器參數估測器725將會估算該目前畫面的復數個濾波器參數,而此時適應性回路濾波器720將會依據先前已估測的復數個濾波器參數來對該目前畫面進行濾波處理,這僅需要存取一動態隨機存取存儲器一次,因此一段式濾波法得以實現,圖8系為該動態隨機存取存儲器存取的復數個必要條件的說明,值得注意的是,該方法的復數個變形,例如該復數個先前畫面所對應的任一復數個濾波器參數以及任何復數個事先定義的濾波器參數的應用,皆符合本發明的發明精神,其中列舉該復數個先前畫面的例子如下當 k = 1時所對應于一編碼序列中的該t-Ι畫面及k = 2時所對應于一編碼序列中的該t-2 畫面等,此種考量一編碼序列中的一先前畫面所對應的復數個濾波器參數的適應性回路濾波器,其被稱為時間延遲式(time-delayed)適應性回路濾波器。另應該注意的是,如果允許該目前畫面所對應的一組濾波器參數與其他復數組濾波器參數競爭以獲取一組最佳濾波器參數,對于一段式結構來說,將該濾波器參數估測器與該適應性回路濾波器分離的使用方式(即圖5所示的裝置)仍是需要的,一個用于選擇或關閉一適應性回路濾波器的成本函數亦可求得,而且如果該適應性回路濾波器所對應的成本為該復數個成本中最小者,該適應性回路濾波器將被關閉,此種同時考量該復數個目前畫面與該復數個先前畫面所對應的該復數個濾波器參數的適應性回路濾波器,其被稱為時間共享式(time-sharing)或時間多工式(time-multiplexed)適應性回路濾波器設計, 并且使用一個一段式(例如圖5)或二段式結構(例如圖1)皆可實現該設計,可儲存濾波器參數的組數的限制依設計者考量而定,上述的區域導向濾波法亦適用于此概念。如上文所述,復數個信號率失真判定標準可被運用于判別執行適應性回路濾波法的成效,若復數個畫面所對應的復數個濾波器參數分別儲存于一存儲器中,所有的濾波器參數可被評比以決定出一組最佳濾波器參數為所用,在部分實施例中,關閉一適應性回路濾波器的成本也會與關閉其他復數個適應性回路濾波器相評比,如果該適應性回路濾波器所對應的成本為該復數個成本中最小者,該適應性回路濾波器將被關閉。該時間延遲式或該時間共享式適應性回路濾波器會提供一個濾波器索引給一熵編碼單元以插入該濾波器索引至該視頻編碼器所產生的一位流中,插入至該位流的該濾波器索引,其可為該視頻解碼器在選擇視頻編碼器所使用的該組濾波器參數時的指引,舉例來說,如果該時間共享式適應性回路濾波器選擇了一畫面所對應的一組最佳濾波器參數, 其中該畫面為一編碼序列中一目前畫面的前一畫面,則該位流中所插入的該濾波器索引會指引該視頻解碼器選擇相對于該目前畫面的一 t-i畫面(于該編碼序列中該目前畫面的前
10一畫面)其所對應的該組濾波器參數。圖9系為本發明的一第三實施例中一視頻編碼器900的簡化方塊示意圖,此實施方法是假設如果該復數個連續畫面的場景并無改變,則該復數個連續畫面之間的差異不大,因此一目前畫面可將該復數個先前畫面所對應的該復數個插補濾波器參數應用至一參考畫面供移動估測/移動補償之用,如此一來,估測濾波器參數與對該復數個參考畫面進行濾波處理可同時操作,故不需要執行兩次或兩次以上的編碼回路即可實現一段式編碼方式,視頻編碼器900包含有一移動估測/移動補償單元910、一畫面內預測單元905、一巨集區塊模式決策的單元955、一參考畫面緩沖器915、一適應性插補濾波器920、一濾波器參數估測器925、一重建單元935、一變換/量化單元940、一反變換/反量化單元945以及一熵編碼單元950,如圖9所示,適應性內插濾波器具有兩個部分第一部分為濾波器參數估測器925,其耦接于巨集區塊模式決策的單元955與適應性插補濾波器920之間;而第二部分為適應性插補濾波器920,其耦接于參考畫面緩沖器915與移動估測/移動補償單元910 之間。當一目前畫面進行該編碼程序時,濾波器參數估測器925會收集位于巨集區塊階層的數據,該數據會用于計算復數個適應性插補濾波器參數,特別是在進行巨集區塊模式決策之后,可以得到一目前巨集區塊的區塊分割與該巨集區塊的復數個移動向量,而這些信息將會用于產生一復數個參考像素(即一待濾信號)的自相關矩陣與一復數個原始像素與該復數個參考像素之間的互相關向量,該自相關矩陣與該互相關向量可由一巨集區塊接續一巨集區塊的方式來不斷累積,當所有的巨集區塊皆編碼完成后,該濾波器參數估測器會針對每一個次像素(sub-pixel)的位置來解出復數個Wiener-Hopf方程式,并且求得可使一目前畫面的復數個像素與復數個預測像素之間的預測誤差降到最低的復數個插補濾波器參數,該計算得出的復數個濾波器參數會用于一編碼序列中復數個后續畫面,這被稱為時間延遲式適應性插補濾波器設計,該適應性插補濾波器920會依據先前已估測的復數個插補濾波器參數來插補該參考畫面,如此一來,該完整編碼回路僅需運作一次,故實現了一段式編碼,該流程說明請參考圖10。一目前畫面的復數個濾波器參數可依據不同應用環境而被寫入于一編碼序列中該目前畫面或復數個后續畫面的一位流,在第一種情形之下,復數個先前畫面的一時間延遲參數會被預定義,因此該復數個濾波器參數會被寫入至該目前畫面的該位流。舉例來說, 當一時間延遲常數k被設定為2,一 t-2畫面的復數個濾波常數會被配于一 t畫面,然后與該t畫面的一位流一起被傳送。在第二種情形之下,該目前畫面可以適應性地決定去使用該編碼序列中該復數個先前畫面的任一個畫面所對應的該復數個濾波器參數,因此該復數個濾波器參數可被傳送而不會發生時間延遲。舉例來說,該t-2畫面的該復數個濾波器參數會被配于該t畫面,但不會與該t-2畫面的一位流一同被傳送,在此情形之下,一濾波器索引會被熵編碼以及被插入至該熵編碼單元中的一位流,并且該濾波器索引系用于作為讓該視頻編碼器選擇在該視頻編碼器中所使用的該組參數的指引。值得注意的是,由一目前畫面及該目前畫面所對應的一參考畫面而獲得的一編碼序列中t時刻的復數個濾波器參數會與該編碼序列中t_k時刻的復數個濾波器參數競爭, 而這被稱為時間共享式適應性插補濾波器設計,在此情形下,該完整的編碼系統仍然需要一多重階段的畫面編碼結構,一個最簡單的實施方法是應用不同編碼階段中不同時刻下所對應的每一組候選濾波器參數,然后在評估編碼效能完成之后選擇一組最佳濾波器參數, 一成本函數/信號率失真判定標準是用來在圖框階層(frame level)中決定出應用編碼階段中每一組濾波參數所得到的編碼效能的效益。該時間共享式程序亦提供一種以減少計算復雜度與數據存取次數而簡化的二段式編碼方法,特別是在進行一第一編碼階段之后,可以利用一快速信號率失真判定標準來估測該組候選濾波器參數的編碼效能,而不需要實際執行該編碼程序,該快速信號率失真判定標準估測僅利用該第一編碼階段與該復數組候選濾波器參數即可評估該復數個編碼位與失真情形。以下為本方法的一個例子,該視頻編碼器以復數個固定的標準插補濾波器參數 (standard interpolation filter parameters)來執行該第一編碼階段,之后便可取得編碼信息,例如復數個模式與復數個移動向量,該信息接著會與不同的復數組濾波器參數一起以執行一移動補償程序來計算編碼失真情形,雖然該復數組濾波器參數與該編碼信息之間存有差異,計算復雜度可藉由此手段大為降低,在選取具最小失真的該組濾波器參數之后,可運用該組濾波器參數來執行第二階段。另外,前述的區域導向濾波法亦可應用于該上述復數個方法,關于該區域導向濾波法的競爭,其中一個例子為巨集區塊階層中一段式時間延遲濾波法,在此情形下,濾波器參數的競爭于巨集區塊階層中進行,并由于欲完成一段式編碼,僅使用復數個先前畫面的復數個濾波器參數,當開始將一目前巨集區塊編碼時,先前已計算的該復數個濾波器參數的任一組合都可以利用信號率失真的效能評估來進行巨集區塊模式決策,包含既有的標準插補濾波器參數,在此之后,具最佳效能的一組濾波器參數會被選為該目前巨集區塊,每一巨集區塊的一濾波器索引也會被熵編碼,并插入至一位流以指明哪一組濾波器參數為所用,在將該濾波器索引編碼時,會應用一預測式編碼程序,值得注意的是,該復數組候選濾波器參數可包含由其他復數個方法所得的復數個濾波器參數組,例如由相同畫面所得到的相異的復數組濾波器參數,該方法的復數個變形,例如該復數組候選濾波器參數的擴充與以該區域導向濾波器索引所對應的復數個不同區域分割方式,皆符合本發明的發明精神。該復數個適應性回路濾波器參數或該復數個適應性插補濾波器參數的總和通常會趨近于一特定值,此特性可應用于將復數個濾波器參數編碼以節省最后傳送該復數個濾波器參數所需的復數個位,舉例來說,為了避免增加或減少該平均像素強度,該復數個濾波器參數的總和可被假設為1.0,而該位流中的最后一個濾波器參數可被預測為1.0減去其他復數個濾波器參數的總和。圖13系為本發明的一第四實施例中一視頻解碼器1300的簡化方塊示意圖,這是一種將圖5所示的視頻編碼器所產生的該已編碼位流解碼的視頻解碼器,包含有一個熵解碼單元1305,用于解析已編碼位流;一反變換/反量化單元1310,用來將該殘留信號 (residual signal)以正確的比例由頻率定義域轉換至空間定義域;一畫面內預測單元 1215,用以產生復數個畫面內預測取樣值;一移動補償單元1320,用于產生該復數個畫面間預測取樣值;一重建單元1335,用于產生一目前畫面的該復數個重建取樣值;一去區塊單元1340,用于減少該重建畫面的復數個區塊效應(blocky artifacts);一參考畫面緩沖器1330,用于將該去區塊畫面儲存為復數個后續畫面的一參考畫面;以及一個適應性回路濾波器1325,耦接于參考畫面緩沖器1330與移動補償單元1320之間,并且用于藉由儲存于該參考畫面緩沖器的復數個參考畫面所對應的該復數個濾波器參數來對該復數個參考畫面進行濾波處理以產生復數個取樣值供移動補償之用,請注意鑒于該移動補償的插補法與該適應性回路濾波法皆為線性程序,上述兩者可被合并為兩串接功能區塊或是一多功能區塊,既然圖5中的視頻編碼器于邏輯上與圖1中的視頻編碼器是等效的(即上述兩視頻編碼器在適當設定下可產生一相同位流),圖5中的視頻編碼器所產生的一位流可由圖11中的視頻解碼器正確地解碼,同樣地,圖1中的視頻編碼器所產生的一位流可由圖13中的視頻解碼器正確地解碼。圖14系為本發明的一第五實施例中一視頻解碼器1400的簡化方塊示意圖,這是一種將圖7的視頻編碼器所產生的該已編碼位流解碼的視頻解碼器,包含有一個熵解碼單元1405,用于解析已編碼位流;一反變換/反量化單元1410,用來將該殘留信號以正確的比例由頻率定義域轉換至空間定義域;一畫面內預測單元1415,用于產生該復數個畫面內預測取樣值;一移動補償單元1420,用于產生該復數個畫面間預測取樣值;一重建單元 1435,用于產生一目前畫面的該復數個重建取樣值;一去區塊單元1440,用于減少該重建畫面的復數個區塊效應;一參考畫面緩沖器1425,耦接于適應性回路濾波器1430與移動補償單元1420之間,并且用于將已經被濾波處理過的該畫面儲存為復數個后續畫面的一參考畫面;以及一個適應性回路濾波器1430,耦接于去區塊單元1440與參考畫面緩沖器1425 之間,并且用于藉由先前已解碼的復數個濾波器參數來對復數個去區塊畫面進行濾波處理以產生復數個參考畫面,適應性回路濾波器1430具一存儲器以儲存由復數個先前畫面的一位流中已解碼的該復數個濾波器參數,這被稱為時間延遲式適應性回路濾波法,請注意若一編碼序列中t時刻的該復數個濾波器參數可與該編碼序列中t-k時刻的復數個先前畫面的復數個濾波器參數相競爭時,其中上述該法即為時間共享式適應性回路濾波法,適應性回路濾波器1430將會選擇該編碼序列中較新解碼的該復數個t時刻濾波器參數或是該編碼序列中已儲存的該復數個t-k時刻濾波器參數。圖15系為本發明的一第六實施例中一視頻解碼器1500的簡化方塊示意圖,這是一種將圖9的視頻編碼器所產生的該已編碼位流解碼的視頻解碼器,包含有一個熵解碼單元1505,用于解析已編碼位流;一反變換/反量化單元1510,用于將該殘留信號以正確的比例由頻率定義域轉換至空間定義域;一畫面內預測單元1515,用于產生該復數個畫面內預測取樣值;一移動補償單元1520,用于產生該復數個畫面間預測取樣值;一重建單元 1535,用于產生一目前畫面的該復數個重建取樣值;一去區塊單元1540,用于減少該重建畫面的復數個區塊效應;一參考畫面緩沖器1530,用于將該已去區塊畫面儲存為復數個后續畫面的一參考畫面;以及一個適應性插補濾波器1525,耦接于參考畫面緩沖器1530與移動補償單元1520之間,并且用于藉由復數個先前已解碼的濾波器參數來插補與對該復數個參考畫面進行濾波處理以產生復數個取樣值供移動補償之用,適應性插補濾波器1525 具一存儲器以儲存由復數個先前畫面的位流中已解碼的該復數個濾波器參數,這被稱為時間延遲式適應性回路濾波法,請注意若一編碼序列中t時刻的該復數個濾波器參數可與該編碼序列中t-k時刻的復數個先前畫面的復數個濾波器參數相競爭時,其中上述該法即為時間共享式適應性回路濾波法,適應性插補濾波器1530將會選擇該編碼序列中較新解碼的該復數個t時刻濾波器參數或是該編碼序列中已儲存的該復數個t-k時刻濾波器參數。綜上所述,本發明提供許多種裝置與方法來實現僅需較少的動態隨機存取存儲器的存取次數與計算工作的數據濾波處理操作,此外,該一段式結構使信號率失真決策的計算效能大為提升,并且該區域導向濾波法、該時間延遲式適應性濾波法,以及該時間共享式適應性濾波法提供了更多種彈性選擇,而該多種彈性選擇即意味著濾波處理程序將會更有效率。 本領域技術人員,對本發明的裝置及方法的所做的均等變化與修飾,皆應屬本發明的涵蓋范圍。因此,本發明的保護范圍當以權利要求所界定的為準。
權利要求
1.一種利用適應性回路濾波操作來將視頻數據編碼的視頻編碼器,包含有一預測單元,用于依據至少一原始視頻數據與至少一重建視頻數據來進行預測以產生復數個預測取樣值;一重建單元,耦接于該預測單元,用于重建該復數個預測取樣值來形成該重建視頻數據;一參考畫面緩沖器,用于儲存該重建視頻數據與相對應的復數個濾波器參數來作為一參考視頻數據;一濾波器參數估測器,耦接于該重建單元與參考畫面緩沖器之間,用于依據一目前畫面的該原始視頻數據與該目前畫面的該重建視頻數據來估測復數個濾波器參數;以及一適應性回路濾波器,耦接于該參考畫面緩沖器與該預測單元之間,用于依據對應于復數個參考畫面的已儲存的該復數個濾波器參數來對該復數個參考畫面進行濾波處理。
2.如權利要求1所述的視頻編碼器,其中該濾波器參數估測器包含有一信號率失真判斷單元,其用于利用一信號率失真判定標準來判斷是否要利用該適應性回路濾波器來依據一待濾信號的自相關性、一原始信號與該待濾信號之間的互相關性以及該復數個估測的濾波器參數來進行濾波處理。
3.如權利要求2所述的視頻編碼器,其中該信號率失真判斷單元系對于每一組估測濾波器參數執行該信號率失真判定標準,以決定一組濾波器參數來讓該適應性回路濾波器利用。
4.如權利要求2所述的視頻編碼器,其中該信號率失真判斷單元系對于由該編碼序列中復數個先前畫面所對應的復數個濾波器參數中的每一組估測濾波器參數執行該信號率失真判定標準,以決定一組濾波器參數來讓該適應性回路濾波器利用。
5.如權利要求2所述的視頻編碼器,其中該信號率失真判定標準系針對該目前畫面的一特定區域來被決定。
6.如權利要求1所述的視頻編碼器,其中該濾波器參數估測器系提供一濾波器索引, 并使該濾波器索引被插入至一位流以指明哪一組濾波器參數系用來對該目前畫面進行濾波處理。
7.如權利要求1所述的視頻編碼器,其中該適應性回路濾波器另以一線性組合方式來對該重建視頻數據進行一插補濾波操作,以共用一乘法器的資源來執行乘法運算。
8.如權利要求1所述的視頻編碼器,其中該濾波器參數估測器另利用該復數個濾波器參數的總和來進行一濾波器參數預測操作以減少該復數個濾波器參數的位率。
9.一種視頻數據編碼方法,包含有依據至少一原始視頻數據與至少一重建視頻數據來進行預測以產生復數個預測取樣值;重建該復數個預測取樣值來形成該重建視頻數據;依據一目前畫面的該原始視頻數據與該目前畫面的該重建視頻數據取樣值來估測復數個濾波器參數;從一參考畫面緩沖器中讀取一先前畫面的該重建視頻數據,以對一編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,并且對于該目前畫面的該原始視頻數據與該編碼序列中儲存的該先前畫面中已經被濾波處理過的該重建視頻數據之間進行一移動估測操作;以及利用該編碼序列中儲存的該先前畫面的該復數個估測的濾波器參數來對該編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,其中該編碼序列中儲存的該先前畫面的已經被濾波處理過的該重建視頻數據系用于該移動估測操作。
10.如權利要求9所述的視頻數據編碼方法,其中該估測復數個濾波器參數的步驟另包含有利用一信號率失真判定標準來判斷是否要利用該適應性回路濾波器來依據一待濾信號的自相關性、一原始信號與該待濾信號之間的互相關性以及該復數個估測的濾波器參數來進行濾波處理。
11.如權利要求10所述的視頻數據編碼方法,其中該信號率失真判定標準系針對該目前畫面的一特定區域來被決定。
12.如權利要求9所述的視頻數據編碼方法,其中估測該復數個濾波器參數的步驟另包含有儲存復數個估測濾波器參數;以及對復數個濾波器參數中的每一組估測濾波器參數執行一信號率失真判定標準,以決定一組濾波器參數來被使用。
13.如權利要求9所述的視頻數據編碼方法,另包含有將一濾波器索引插入至一位流以指明即將被使用的一組濾波器參數。
14.如權利要求9所述的視頻數據編碼方法,其中利用該復數個估測的濾波器參數來對該重建視頻數據進行濾波處理的步驟系結合一插補操作以共用一乘法器來執行乘法運笪弁。
15.如權利要求9所述的視頻數據編碼方法,其中估測該復數個濾波器參數的步驟另包含有利用該復數個濾波器參數的總和來進行一濾波器參數預測操作以減少該復數個濾波器參數的位率。
16.一種將該已編碼的視頻數據解碼的視頻解碼器,包含有 一熵解碼單元,用于解析一編碼位流;一預測單元,用于依據該熵解碼單元來進行復數次預測操作;一重建單元,耦接于該預測單元,用于重建復數個預測取樣值來形成一重建視頻數據;一參考畫面緩沖器,用于儲存該重建視頻數據與該熵解碼單元提供的相對應的已解碼的復數個濾波器參數來作為一參考視頻數據;以及一適應性回路濾波器,耦接于該參考畫面緩沖器與該預測單元之間,用于依據相對應的復數個參考畫面的已儲存的該復數個濾波器參數來對復數個參考畫面進行濾波處理。
17.—種視頻數據解碼方法,包含有對一位流進行熵解碼處理以產生復數個熵解碼結果; 依據該復數個熵解碼結果來進行復數次預測操作; 重建復數個預測取樣值來形成一重建視頻數據;從一參考畫面緩沖器中讀取一先前畫面的該重建視頻數據,以對一編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,并且對于一目前畫面的該原始視頻數據與該編碼序列中儲存的該先前畫面中已經被濾波處理過的該重建視頻數據的間進行一移動估測操作;以及利用該編碼序列中儲存的該先前畫面的該復數個估測的濾波器參數來對該編碼序列中儲存的該先前畫面的該重建視頻數據進行濾波處理,其中該編碼序列中儲存的該先前畫面的已經被濾波處理過的該重建視頻數據系在不寫入一存儲器的狀態下用于該移動估測操作。
全文摘要
利用適應性回路濾波操作來將視頻數據編碼的視頻編碼器,包含有一預測單元,用于依據至少一原始視頻數據與至少一重建視頻數據來進行預測以產生復數個預測取樣值;一重建單元,用于重建該復數個預測取樣值來形成該重建視頻數據;一參考畫面緩沖器,用于儲存該重建視頻數據;一濾波器參數估測器,用于依據該原始視頻數據與該重建視頻數據來估測復數個濾波器參數;以及一適應性回路濾波器,用于依據儲存的該復數個濾波器參數來對重建視頻數據進行濾波處理。
文檔編號H04N7/44GK102165780SQ200980137755
公開日2011年8月24日 申請日期2009年6月9日 優先權日2008年9月25日
發明者傅智銘, 郭峋, 雷少民, 黃毓文 申請人:聯發科技股份有限公司