專利名稱:為編碼圖像中的誤差掩蔽定義內插濾波器的制作方法
技術領域:
本發明涉及一種用于為編碼視頻流中的誤差掩蔽(error concealment)定義定向內插濾波器的技術。
背景技術:
在許多情況中,視頻流經受壓縮(編碼)以有利于存儲和傳輸。當前,存在多種編碼方案,包括諸如所提出的ISO/ITU H.2.64編碼技術的基于塊的編碼方案。并非偶然地,這樣編碼的視頻流導致在傳輸期間因為信道誤差和/或網絡擁塞而使得數據丟失或被損壞。在解碼時,數據的丟失/損壞使其自身顯示為引起圖像人工因素的丟失/損壞像素值。為了減少所述人工因素,解碼器將通過估計來自相同圖像的其他宏塊或來自其他圖像的所述丟失/損壞像素值來“掩蔽”這樣的丟失/損壞像素值。術語掩蔽稍稍有些用詞不當,因為解碼器不是實際地隱藏丟失/損壞的像素值。
空間掩蔽試圖依賴于空間域中相鄰區域之間的相似性、通過使用來自同一圖像中其他區域的像素值得出丟失/損壞的像素值。典型地,在相同的復雜程度時,空間掩蔽技術比依賴于來自其他發送的圖片信息的時間誤差掩蔽技術的性能要低。誤差掩蔽算法應當僅在不能得到時間選擇,即當丟失影響內部編碼的圖片、內部刷新的圖片或當不能得到時間信息的那些情況中調用空間內插。使用掩蔽圖像作為參考的、將來的相互編碼的幀的質量將依賴于空間掩蔽的質量。當空間掩蔽產生相對較差的內部編碼的圖片時,每個作為結果的相互編碼的圖片將同樣具有較差的質量。
存在各種用于完成空間誤差掩蔽的技術。這些技術包括(a)塊復制(BC),(b)像素域內插(PDI),(c)多定向內插(MDI),(d)最大平滑恢復(MSR)和(e)凸集投影(POCS)。此外,現在存在一種建議,即根據用于誤差掩蔽的H.264技術使用為4×4像素塊計算的內部預測模式。根據這一建議,提供從相鄰塊估計編碼值的方向的相同內部預測模式還可以提供用于估計誤差掩蔽的丟失/損壞像素值的方向。已經建立使用相同的內部預測模式來提供誤差掩蔽的方向作為編碼預測的愿望,存在當以內部預測模式定義的方向進行處理時定義適當的機制來得出用于掩蔽的估計的像素值的需要。
發明內容
簡單的說,根據本發明的原理,通過首先識別圖像中具有丟失/損壞像素值的宏塊來開始掩蔽在包括宏塊陣列的編碼圖像中的誤差。對于每個識別的宏塊,從相鄰的宏塊中得出至少一種內部預測模式。當根據ISO/ITU H.264編碼技術編碼圖像時,為了編碼的目的,內部編碼的宏塊可以預測為整個16×16像素塊,或多個4×4像素塊。對于整個16×16像素塊,存在一種內部預測模式。相反,對于宏塊中每個4×4像素的子宏塊,存在一種內部預測模式。與得出的內部預測模式相關,選擇內插濾波器以定義根據相鄰塊估計像素值的方法,所述像素塊是通過在由識別的內部預測模式規定的方向上進行處理而選擇的。使用根據選擇的內插濾波器估計的像素值來掩蔽具有丟失/損壞的像素值的宏塊。當根據H.264編碼技術編碼圖像中的宏塊并且掩蔽順序與解碼順序相同時,為了掩蔽的目的而建立的內插濾波器構成在H.264編碼技術中為內部4×4預測規定的濾波器。由于存在不同的掩蔽順序,因此當相鄰的左側和上方像素不可用時,在H.264編碼技術中定義的內插濾波器的鏡向版本用來適配可用的樣本。
圖1描述了劃分成宏塊的編碼圖像,每個宏塊被劃分成塊,并且每個塊被劃分成像素;圖2圖示說明了在所提出的H.264編碼技術中描述的內部_4×4預測模式;圖3A-3F每一個描述了如為對應于圖2中圖示說明的內部_4×4預測模式的內插濾波器定義的參考像素集(A,B,C,D和I,J,K,L)的位置;和圖4A-4F每一個描述了如為對應于圖2中圖示說明的內部_4×4預測模式的第一組鏡向內插濾波器定義的參考像素集(A’,B’,C’,D’和I’,J’,K’,L’)的位置。
圖5C、5E-5F每一個描述了如為對應于圖2中圖示說明的內部_4×4預測模式的第二組鏡向內插濾波器定義的參考像素集(A’,B’,C’,D’和I’,J’,K’,L’)的位置。
圖6C描述了如為對應于圖2中圖示說明的內部_4×4預測模式的第三組鏡向內插濾波器定義的參考像素集(A’,B’,C’,D’和I’,J’,K’,L’)的位置。
具體實施例方式
諸如嵌入在所提議的ISO/ITU H.264編碼技術中的基于塊的視頻壓縮技術通過將圖片劃分成片斷來工作,每個片斷包括一組宏塊或宏塊對,且每個宏塊根據編碼技術而被編碼。宏塊通常包括一個16×16像素的正方形區域。為了編碼的目的,宏塊可被進一步劃分成子宏塊,所述子宏塊并不必須是正方形。當編碼宏塊時,每個子宏塊可以具有不同的編碼模式。為了易于說明,將一個塊稱為4×4像素的子宏塊。圖1描述了將編碼圖片100劃分成宏塊110,將每個宏塊110劃分成塊120,并且將每個塊劃分成像素130。注意,圖片中宏塊的數目取決于圖片的大小而變化,而宏塊中塊的數目保持恒定。
為了減少單獨編碼被劃分的圖像100中每個宏塊110的開銷,來自已發送的宏塊的信息可以產生編碼單個宏塊的預測。在這一情形中,僅預測誤差和預測模式需要發送。用來編碼圖片100的視頻編碼技術將規定用于得出預測像素值的處理,以便確保編碼器(未示出)和解碼器(未示出)兩者獲得相同的估計。根據ISO/ITU H.264編碼技術,單個宏塊可以被內部預測為單個16×16像素的部分(內部_16×16類型編碼)或16塊4×4像素的部分(內部_4×4類型編碼)。
對于內部_16×16類型編碼,ISO/ITU H.264編碼技術規定四種內部預測模式模式0,垂直預測;模式1,水平預測;模式2,DC預測;模式3,平面預測。對于內部_4×4類型編碼,ISO/ITU H.264編碼技術規定九種內部預測模式模式0,垂直預測;模式1,水平預測;模式2,DC預測;模式3,斜向左下預測;模式4,斜向右下預測;模式5,垂直向右預測;模式6,水平向下預測;模式7,垂直向左預測;和模式8,水平向上預測。圖2以列表方式描述了每一個內部_4×4編碼類型的預測模式,以及指示內部預測模式0-8中的每一種的方向的向量顯示。(注意,對應于DC模式的模式2不具有方向,因為其統一地預測同類區域中的塊的內容)。其他模式0-1和3-8沿著八個量化方向中單獨的一個方向來預測宏塊的內容。
所提出的H.264編碼技術規定每個內部預測模式具有相關聯的內插濾波器,其指示當以通過內部預測模式定義的方向進行處理時如何獲得預測的編碼值。根據本發明原理,由H.264定義的內插濾波器還可以為誤差掩蔽目的提供一種估計像素值的機制。如下面更詳細的描述,當以解碼順序進行誤差掩蔽時,H.264內插濾波器可以以它們原來的形式用于誤差掩蔽。或者,當以不同的順序進行誤差掩蔽時,不得不考慮H.264內插濾波器的鏡向版本。
圖3A-3F中的每一個描述了用于對應于圖2中圖示說明的內部4×4預測模式的內插濾波器的參考像素集(A,B,C,D和I,J,K,L)的位置。(注意,在一些情況中,與兩個不同的內部預測模式相關的兩個不同的內插濾波器可以使用相同的參考像素集)。在圖3A-3F的每一個中,顯示了子宏塊200,其具有需要使用根據在相鄰行和/或列中的像素值估計的值來掩蔽的丟失/損壞像素。對于每種內部預測模式,存在一個內插濾波器,其明確規定如何根據相鄰像素值獲得對于子宏塊200中的每個丟失/損壞像素的估計。
為了更好地理解每個所述內插濾波器的特性,參考圖3A,其描述了使用通過H.264編碼技術對于模式0規定的內插濾波器對該模式的誤差掩蔽。通常,通過H.264編碼技術規定的內插濾波器定義用于獲得編碼預測值的機制。根據本發明的原理,通過H.264編碼技術規定的內插濾波器還提供了一種用于獲得誤差掩蔽值的機制。如圖3A所示,4×4像素子宏塊200包含像素a-p,所述像素a-p的每一個都需要掩蔽。位于子宏塊200中的上部像素a-d行之上的相鄰像素行210中的像素A-D的值提供一些值,根據這些值、使用與模式0相關的H.264編碼技術內插濾波器來估計像素a-p中的每一個的掩蔽值。對于模式0(垂直),根據由H.264編碼技術為模式0規定的內插濾波器,行210中的像素A的值提供用于子宏塊200的第一(最左側)列中的每一個像素a,e,i和m的掩蔽估計。同樣,行210中的像素B提供用于第二列中的每個像素b,f,j和n的掩蔽估計。以類似的方式,行210中的像素C和D每一個分別提供用于子宏塊200中的第三和第四列中的像素的估計。
在一些情況中,行210的像素A-D中的一個或多個可能具有丟失的值,因而對于在子宏塊200中的像素a-p提供較差的估計。根據本發明原理的另一個方面,用于模式1的“鏡向”內插濾波器用來規定用于獲得所述像素掩蔽值的方式。與如圖3所示使用頂部相鄰行210來提供掩蔽值的模式1H.264編碼技術內插濾波器相反,本發明原理的鏡向內插濾波器使用像素A’,B’,C’和D’的底部相鄰行200用于誤差掩蔽的目的,如圖4A所示。因此,代替使用在行210中像素A的值來估計每個像素a,e,i和m,鏡向內插濾波器利用行220中的像素A’。同樣,對于模式0,行220’中的像素B’,C’和D’分別提供對于子宏塊200中的第二、第三和第四列中像素的掩蔽值的估計。
表1總結了對于模式0,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表1模式0(垂直)
圖3B描述了使用通過H.264編碼技術規定的模式1內插濾波器用于模式1的誤差掩蔽。子宏塊200的左側的相鄰列210’的每一行中的像素I-L中的每一個對于在子宏塊的對應行中的每一個像素提供誤差掩蔽估計。因此,例如,列210的第一(上部)行中的像素I對于在子宏塊200的第一(最上部)行中的每個像素a,b,c和d提供掩蔽估計。同樣,列210’中的像素J’對于在子宏塊200的第二行中的像素e,f,g和h提供掩蔽估計。類似的,像素K和J分別對于在子宏塊200的第三和第四行中的像素提供掩蔽估計。
圖4B描述了使用鏡向內插濾波器對于模式1的誤差掩蔽。用于模式1的鏡向內插濾波器使用右側的相鄰列220’中的像素I’,J’,K’和L’分別對于在子宏塊200的第一(頂部)、第二、第三、和第四行中的像素提供掩蔽值估計,而不是使用在左側的列210’中的像素I,J,K和L。
表2總結了對于模式1,用于估計掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表2模式1(水平)
圖3C描述了對于DC內部預測模式的誤差掩蔽。如在H.264編碼技術中定義的,當所有這些樣本可用時,用于編碼預測的DC模式內插濾波器計算像素的平均值(A+B+C+D+I+J+K+L+4)/8,其中像素A,B,C和D位于在子宏塊200的上方的相鄰行210中,像素I,J,K和L位于在子宏塊左側的相鄰列210’中。換句話說,為了編碼的目的,用對應于分別在子宏塊的左側和上方的列和行中的相鄰像素值的平均值的相同的值預測子宏塊200中的所有像素a-p。圖4C,5C和6C描述了在圖3C中所示的參考像素集的鏡向版本。當在丟失塊左側和/或上方的塊也被損壞時,這些鏡向版本可以用于誤差掩蔽的目的。
表3總結了對于模式2,用于估計掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表3模式2(DC)
但是,與其他內部預測模式不同,由H.264編碼技術規定的DC內部預測模式內插濾波器不為誤差掩蔽的目的提供好的預測。為DC模式指定的H.264編碼技術內插濾波器提供非常粗略的預測,其造成掩蔽圖像中的平坦(flat)區域。為此,推薦僅對于允許低質量結果的應用將其用于誤差掩蔽目的。對于其他應用,其他類型的內插濾波器——通常所說的加權內插,可以用來對誤差掩蔽值提供較好的預測。當這一技術應用至DC模式時,獨立地獲得子宏塊200中每個像素的估計值,作為來自分別在垂直和水平方向上的相鄰列和相鄰行的、已經正確接收到或已經被掩蔽的最接近像素值的加權和。
傳統的,下面的關系規定了在(i,j)位置的像素值的加權內插像素(i,j)=W0×像素(i0-1,j)+W1×像素(i0,j0-1)其中W0和W1對用作參考的像素值的影響進行加權。通常,W0和W1每一個表示在丟失像素及其參考之間的距離。在示例的實施例中,W0=(i-i0)和W1=(j-j0)。使用與用來描述由H.264編碼技術定義的其他內插濾波器相同的符號,表3A-D描述了取決于哪個行/列的相鄰像素被用作參考而定義的DC內部預測模式的加權內插濾波器。
表3A模式2(DC)圖3C中的加權內插
表3B模式2(DC)圖4C中的加權內插
表3C模式2(DC)圖5C中的加權內插
表3D模式2(DC)圖6C中的加權內插
圖3D描述了使用H.264編碼技術內插濾波器、用于模式3(斜向左下)和模式7(垂直向左)兩者的誤差掩蔽的參考像素集的位置。對于模式3和7中的每一個,由H.264編碼技術規定的相應內插濾波器利用在子宏塊200上方的相鄰行210中的像素A,B,C,D,E,F和G的單獨加權平均值。類似地,圖4D描述了使用鏡向內插濾波器、用于模式3(斜向左下)和模式7(垂直向左)兩者的誤差掩蔽的參考像素集的位置。對于模式3和7中的每一個,相應的鏡向內插濾波器利用位于子宏塊200下方的擴展相鄰行210’中的像素H’,G’,F’,E’,D’,C’,B’和A’的單獨加權平均值。
表4總結了對于模式3,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表4模式3(斜向左下)
例如,由用于預測編碼值的H.264編碼技術規定、并且根據本發明原理來使用以便估計誤差掩蔽值的內插濾波器,規定可以利用關系(A+2B+C+2)/4、根據像素A,B和C的值來估計子宏塊200中的像素a,其中像素A,B和C每一個位于在子宏塊200上方的相鄰行210中。類似地,用于模式3的鏡向濾波器按照關系(G’+3H’+2)/4、根據像素G’和H’的值來提供用于子宏塊200中的像素a的誤差掩蔽估計。對于誤差掩蔽的目的,剩余像素b-p同樣可以按照在表4中列出的關系來估計。
表5總結了對于模式7,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表5模式7(垂直向左)
圖3E描述了使用由H.264編碼技術規定的內插濾波器,用于模式4(斜向右下)、模式5(垂直向右)和模式6(垂直向下)的誤差掩蔽的參考像素集的位置。由于這些內插濾波器被定義為在左側相鄰列和上方相鄰列都需要參考像素,因而對于DC模式,它們為了誤差掩蔽目的的鏡向映射將會需要四種不同情況的定義。為了減少所述情況的數目,我們提議一種可選的定義,避免使用來自左側的列的參考像素。圖4E描述了使用先前內插濾波器的鏡向版本,用于模式4、5和6的誤差掩蔽的參考像素集的位置。圖4E中的濾波器是對于如通過H.264視頻壓縮標準定義的圖3E中的濾波器的替換物。需要圖5E中的其他鏡向內插濾波器,以允許不按照解碼的順序來進行誤差掩蔽。盡管可以考慮不同的鏡向映射過程,但該實施例中提出的一種過程將所有的參考像素僅定位在一個相鄰行中或僅定位在一個相鄰列中。這樣的鏡向映射具有兩個主要的優點第一,其有利于存儲器訪問;第二,其減少了必須為濾波器規定的情況的數目。〔注意這應用到在本發明中定義的所有鏡向內插濾波器〕表6總結了對于模式4,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表6
模式4(斜向右下)
表7總結了對于模式5,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表7模式5垂直向右
表8總結了對于模式6,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表8
模式6水平向下
圖3F描述了使用由H.264編碼技術規定的內插濾波器、對于模式8(水平向上)的誤差掩蔽。圖4E和5E描述了使用兩個鏡向內插濾波器、對于模式8(水平向上)的誤差掩蔽。對于模式4,5和6,提出圖4F中鏡向濾波器的定義,作為具有先前提到的優點的H.264內插濾波器的替換物。
表9總結了對于模式8,用于提供誤差掩蔽值的H.264編碼技術內插濾波器和鏡向內插濾波器。
表9模式8(水平向上)
以上描述了一種用于定義定向內插濾波器的技術,該技術建立一種通過其來掩蔽編碼視頻流中的誤差的機制。
權利要求
1.一種用于掩蔽由宏塊陣列形成的編碼圖像中的誤差的方法,包括步驟識別所述陣列中具有丟失/損壞像素值的宏塊;對于每個識別的宏塊得出至少一種內部預測模式,以定義掩蔽方向,所述至少一種內部預測模式是根據編碼圖像而得出的;對于所識別的內部預測模式建立內插濾波器,以便沿著所述掩蔽方向估計每個識別宏塊的掩蔽值;和根據估計的掩蔽值來掩蔽所識別的宏塊。
2.如權利要求1所述的方法,其中所述圖像是根據H.264編碼技術來編碼的,并且其中得到至少一種內部預測模式的步驟還包括步驟得到通過H.264編碼技術規定的內部_4×4預測模式。
3.如權利要求2所述的方法,其中建立內插濾波器的步驟還包括對于得出的內部_4×4預測模式選擇通過H.264編碼技術規定的內插濾波器。
4.如權利要求2所述的方法,其中建立內插濾波器的步驟還包括步驟對于得出的內部_4×4預測模式,得出鏡向映射通過H.264編碼技術規定的內插濾波器的內插濾波器。
6.如權利要求2所述的方法,其中得出的內部_4×4預測模式包括模式0(垂直),并且其中得出的內插濾波器包括由H.264編碼技術為模式0規定的內插濾波器。
7.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式1(水平),并且其中得出的內插濾波器包括由H.264編碼技術為模式1規定的內插濾波器。
8.如權利要求2所述的方法,其中得出的內部_4×4預測模式包括模式2(DC),并且其中建立內插濾波器的步驟還包括步驟獨立地加權來自分別在垂直方向和水平方向上的相鄰列和相鄰行的像素值的和。
9.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式3(斜向左下),并且其中得出的內插濾波器包括由H.264編碼技術為模式3規定的內插濾波器。
10.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式7(垂直向左),并且其中得出的內插濾波器包括由H.264編碼技術為模式7規定的內插濾波器。
11.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式4(斜向右下),并且其中得出的內插濾波器包括由H.264編碼技術為模式4規定的內插濾波器。
12.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式5(垂直向右),并且其中得出的內插濾波器包括由H.264編碼技術為模式5規定的內插濾波器。
13.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式6(水平向下),并且其中得出的內插濾波器包括由H.264編碼技術為模式6規定的內插濾波器。
14.如權利要求4所述的方法,其中得出的內部_4×4預測模式包括模式8(水平向上),并且其中得出的內插濾波器包括由H.264編碼技術為模式8規定的內插濾波器。
15.一種用于掩蔽由宏塊陣列組成的編碼圖像中的誤差的方法,所述圖像根據H.264編碼技術進行編碼,該方法包括步驟識別所述陣列中具有丟失/損壞像素值的宏塊;對于每個識別的宏塊,根據H.264編碼技術得出至少一種內部_4×4預測模式,以定義掩蔽方向;對于所識別的內部預測模式建立內插濾波器,以便沿著所述掩蔽方向估計每個識別宏塊的掩蔽值;和根據估計的掩蔽值來掩蔽所識別的宏塊。
16.如權利要求15所述的方法,其中建立內插濾波器的步驟還包括對于得出的內部_4×4預測模式選擇通過H.264編碼技術規定的內插濾波器。
17.如權利要求15所述的方法,其中建立內插濾波器的步驟還包括步驟對于得出的內部_4×4預測模式,得出鏡向映射通過H.264編碼技術規定的內插濾波器的內插濾波器。
18.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式1(水平),并且其中得出的內插濾波器包括由H.264編碼技術為模式1規定的內插濾波器。
19.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式3(斜向左下),并且其中得出的內插濾波器包括由H.264編碼技術為模式3規定的內插濾波器。
20.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式7(垂直向左),并且其中得出的內插濾波器包括由H.264編碼技術為模式7規定的內插濾波器。
21.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式4(斜向右下),并且其中得出的內插濾波器包括由H.264編碼技術為模式4規定的內插濾波器。
22.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式5(垂直向右),并且其中得出的內插濾波器包括由H.264編碼技術為模式5規定的內插濾波器。
23.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式6(水平向下),并且其中得出的內插濾波器包括由H.264編碼技術為模式6規定的內插濾波器。
24.如權利要求15所述的方法,其中得出的內部_4×4預測模式包括模式8(水平向上),并且其中得出的內插濾波器包括由H.264編碼技術為模式8規定的內插濾波器。
全文摘要
一種根據圖像編碼首先選擇內部預測模式來掩蔽在編碼圖像(100)中出現的誤差的方法。所選擇的內部預測模式在通常用于規定獲得編碼預測值的方向的同時,還用于規定獲得誤差掩蔽的估計值的方向。內插濾波器定義沿著由內部預測模式規定的方向獲得估計的像素值的方式。與內部預測模式相同,根據圖像的編碼得出內插濾波器。使用以通過內插濾波器規定的方式獲得的估計值來實現圖像的掩蔽。
文檔編號H04N7/68GK1720747SQ03825775
公開日2006年1月11日 申請日期2003年7月10日 優先權日2003年1月10日
發明者克里斯蒂娜·戈米拉 申請人:湯姆森特許公司