具有域變換的基於網絡的視頻壓縮的製作方法
2023-07-05 08:33:41 1
專利名稱:具有域變換的基於網絡的視頻壓縮的製作方法
技術領域:
本發明揭示內容大體來說涉及數據處理,且更具體來說涉及用於執行視頻壓縮的 技術。
^狄^
視頻壓縮廣泛用f各種應用,例如數位電視、視頻廣播、視頻會議、視頻通話、
數字視頻光碟(DVD)等。視頻壓縮利用連續視頻幀之間的相似性來顯著地減少待發 送或存儲的數據的:I:。此數據減少對於其中傳輸帶寬及/或存儲空間受到限制的應用 尤其重要。
視頻壓縮通常通過將每"視頻幀分割成若干圖片元素正方形塊(像素)並處理所 述幀的每一塊而實現。對幀的塊的處理可包含識別另一幀中與正被處理的塊極為相似 的另一塊、確定所述兩個塊之間的差異及對所述差異進行編碼。所述差異還稱為預測 誤差、紋理、預測殘餘等。找到另-緊密匹配的塊(或參考塊)的過程常常被稱為運 動估計。術語"運動估計"及"運動預測"常常互換使用。對所述差異的編碼還稱為
紋理編碼,且可藉助各種編碼工具(例如,離散餘弦變換(DCT))來實現。
基於塊的運動估計可用於幾乎所有被廣泛接受的視頻壓縮標準,例如,所屬技術 領域中眾所周知的MPEG-2、 MPEG-4、 H-263及H-264。對於基於塊的運動估計,像 素塊的運動由--小組運動向量來表徵或界定。運動向量指示正被編碼的塊與參考塊之 間的垂直及水平位移。例如,當為 塊界定一個運動向量時,假定所述塊中的所有像 素均移動相同的量,且所述運動向量界定所述塊的平移運動。當一塊或子塊的運動較 小、為平移運動且跨越所述塊或了塊而均勻時,基於塊的運動估計可良好地起作用。 然而,實際的視頻常常不遵從這些條件。例如,在視頻會議期間, 一個人的面部或唇 部活動常常包含旋轉及變形以及平移運動。另外,在低位速率應用中,相鄰塊的運動 向量的非連續性可能會造成令人懊惱的阻塞影響。在許多情形下,基於塊的運動估計 不提供良好的性能。
發明內容
本文中描述用於執行具有域變換的基於網格的視頻壓縮/解壓縮的技術。所述技 術可提供優於基於塊的視頻壓縮/解壓縮的經改善性能。
在一實施例中,視頻編碼器將圖像或幀分割成若干像素網格,處理所述像素網格以獲得預測誤差塊,並將對所述預測誤差塊進行編碼以為所述圖像產生經編碼數據。 所述網格可具有任意多邊形形狀,且所述塊可具有預定形狀,例如,預定大小的正方 形。所述視頻編碼器可處邵所述像紊網格以獲得預測誤差網格,且可接著將所述預測 誤差網格變換為預測誤差塊。或者,所述視頻編碼器可將所述像素網格變換為像素塊, 且可接著處理所述像素塊以獲得所述預測誤差塊。所述視頻編碼器還可執行基於網格 的運動估計以確定用於產生預測誤差的參考網格。
在一實施例中,視頻解碼器基於圖像的經編碼數據獲得預測誤差塊,處理所述預 測誤差塊以獲得像素網格,並組合所述像素網格以重構所述圖像。所述視頻解碼器可 將預測誤差塊變換為預測誤差網格,基於運動向量導出所預測的網格,且基於預測誤 差網格及所預測的網格導出像素網格。或者,所述視頻解碼器可基於運動向量導出所 預測的塊,基於預測誤差塊及所預測的塊來導出像素塊,並將像素塊變換為像素網格。
下文將進一步詳細描述本發明揭示內容的各方面及實施例。
當結合附圖參照下文所述詳細說明時,本發明揭示內容的各方面及實施例將變得 更明顯,在所有圖式中相同的參考字符識別對應的元件。 圖1顯示具有域變換的基於網格的視頻編碼器。 圖2顯示具有域變換的築於網格的視頻解碼器。 圖3顯示已分割成若干網格的例不性圖像。 圖4A及4B圖解說明H標網格的運動估計。 圖5圖解說明兩個網格與'塊之間的域變換。 圖6顯示一幀的所有網格的域變換。
圖7顯示用於執行具有域變換的基於網格的視頻壓縮的過程。 圖8顯示用於執行具有域變換的基於網格的視頻解壓縮的過程。 圖9顯示無線裝置的方塊圖。
具體實施例方式
本文中使用的措同"例示性"意指"用作實例、例證或圖解說明"。在本文中描 述為"例示性"的任何實施例或設計未必解釋為比其它實施例或設計更優選或更有利。
本文中描述用f執行具有域變換的基於網格的視頻壓縮/解壓縮的技術。基於網 格的視頻壓縮是指其中每一幀被分割成若干網格而不是若干塊的視頻壓縮。大體來
說,所述網格可以是任何多邊形形狀(例如, -:角形、四邊形、五邊形等)。在下文
所詳細描述的實施例巾,所述網格為四邊形(QUAD),其中每一 QUAD具有四個 頂點。域變換是指將網格變換為塊,或反之亦然。塊具有預定形狀且通常為正方形, 但也可為矩形。所述技術允許使用基於網格的運動估計,此可具有優於基於塊的運動估計的經改善性能。所述域變換通過將這些網格變換為塊並使得能夠使用經設計以用 於塊的編碼工具來使得網格能夠被有效地紋理編碼。
圖1顯示具有域變換的基於網格的視頻編碼器100的實施例的方塊圖。在視頻編 碼器100內,網格創建單元110接收視頻幀並將所述幀分割成若干像素網格。術語"幀"
及"圖像"常常可互換使用。可如下文所描述來對幀中的每一像素網格進行編碼。
加法器112接收待編碼的像素網格,其被稱為目標網格m U),其中k識別所 述幀內的一特定網格。火體來說,/t可以是座標、指數等。加法器112還接收所預測 的網格a(幻,其為所述H標網格的近似。加法器iio從目標網格減去所預測的網格, 並提供預測誤差網格;(w。所述預測誤差也被稱為紋理、預測殘餘等。
如下文所描述,單元u4對預測誤差網格7^w執行網格-到-塊域變換,並提供 預測誤差塊t;(w。 "j使用用於塊的各種編碼工具來處理所述預測誤差塊。在圖1所 示實施例中,單元116對所述預測誤差塊執行dct並提供dct係數塊。量化器118 量化所述dct係數並提供量化係數c (&)。
單元122對所述量化係數執行逆dct(idct)並提供經重構的預測誤差塊iUO。 單元124對所述經重構的預測誤差塊執行塊-到-網格域變換並提供經重構的預測誤差 網格t(々)。 《("分別是U幻與7;w的近似,且含有來從各種變換及量化的可 能誤差。加法器126對所預測的網格^(Ar)與經重構的預測誤差網格求和並將經解碼網 格刷^提供給幀緩衝器128。
如下所述,運動估計單兀130估計所述目標網格的仿射運動,並提供所述目標網 格的運動向量/Wv a)。仿射運動可包括平移運動以及旋轉、剪切、按比例縮放、變 形等。所述運動向量表達所述ll標網格相對於參考網格的仿射運動。所述參考網格可 來從先前幀或將來幀。運動補償單兀b2基於所述運動向量確定所述參考網格並為加 法器112及126產生所預測的網格。所述所預測的網格具有與H標網格相同的形狀, 而所述參考網格可具' j tl標網格相間的形狀或不同的形狀。
編碼器120接收lj標網格的各種仏息,例如,來從量化器118的量化係數、來從 單元130的運動向量、來從單元iio的目標網格表示等。單元iio可提供當前幀的網 格表示信息,例如,所述幀屮所有網格的座標及指示每-…網格的頂點的指數列表。編 碼器120可對所述量化係數執行熵編碼(例如,霍夫曼(Huffman)編碼)以減少待 發送的數據量。編碼器120可計算每一塊的量化係數的範數,且可僅在所述範數超過 一閾值的情形下對所述塊進行編碼,其可指示所述目標網格與所述參考網格之間存在 充分的差異。編碼器120還可組合所述幀網格的數據及運動向量,對定吋對準、嵌入 標頭及語法等執行格式化。編碼器120產生用於傳輸及/存儲的數據包或位流。
如上文所描述,P」將目標網格與參考網格進行比較,且可對所得的預測誤差進行 編碼。還可在不與參考網格進行比較的情形下直接對目標網格進行編碼,且可將其稱 為幀內網格。通常將幀內網格發送給第一視頻幀,且還周期性地發送以防止預測誤差 的累積。
9圖1顯示具有域變換的基於網格的視頻編碼器的例示性實施例。在此實施例中, 單元IIO、 112、 126、 130及132對可為QUAD的網格進行操作,視所編碼的圖像而 定,所述QUAD司'具燈任意的形狀及大小。單元116、 118、 120及122對固定大小 的塊進行操作。單兀H4執行網格-到-塊域變換,且舉元124執行塊-到-網格域變換。 下文將詳細描述視頻編碼器100的有關單元。
在基於網格的視頻編碼器的另-^實施例中,將所述目標網格域變換為目標塊,且 還將參考網格域變換為所預測的塊。從所述目標塊減去所預測的塊以獲得預測誤差 塊,此可使用基於塊的編碼工具來處理。還可以其它方式藉助其它設計來執行基於網 格的視頻編碼。
圖2顯示具有域變換的基於網格的視頻解碼器200的實施例的方塊圖。視頻解碼 器200可用於圖1中的視頻解碼器100。在視頻解碼器200內,解碼器220從視頻編 碼器IOO接收包或經編碼數據位流並以與編碼器120所執行的編碼互補的方式來將所 述包或位流解碼。可如下文所描述將圖像的每'網格解碼。
解碼器22o為經解碼目標網格提供量化係數c a)、運動向量Mv a)及網格
表示。單元222對所述g化係數執行IDCT並提供經重構的預測誤差塊忿(W。單元224 對所述經重構的預測誤差塊執行塊-到-網格域變換,並提供經重構的預測誤差網格 t(W。加法器226對經審構的預測誤差網格與來從運動補償單元232的預測網格A(/t) 求和,並將經解碼網格&(A)提供給幀緩衝器228及網格組合單元230。運動補償單元 232基於目標網格的運動向量Mv U')來確定來從幀緩衝器228的參考網格並產生所 預測的網格A^)。單元222、 224、 226、 228及232分別以與圖1中的單元122、 124、 126、 128及132類似的方式來操作。爭元230接收並組合視頻幀的經解碼網格並提 供經解碼幀。
所述視頻編碼器可將W標網格及所預測的網格變換為塊,且可基於目標及所預測 的塊產生預測誤羌塊。在此情形F,所述視頻解碼器將對經重構的預測誤差塊與預測 塊求和以獲得經解碼塊,且將接著對經解碼塊執行塊-到-網格域變換以獲得經解碼網 格。域變換單元224將在加法器226之後移動,且運動補償單元232將提供所預測的 塊而非所預測的網格。
圖3顯示已分割成若干網格的例示性圖像或幀。大體來說,可將一幀分割成任何 數目的網格。如閣3屮所閣解說明,這些網格可為不同形狀及大小,此可由所述幀的 內容來確定。
將幀分割成若千網格的過程稱為網格創建。可以各種方式來執行網格創建。在--實施例中,用^間或空間-時間分段法、多邊形近似及三角測量法來執行網格創建, 此將在下文簡要描述。
空間分段是指基幹幀的內容將幀分段成若干區域。可使用所屬技術領域中已知的 各種算法來獲得合理的圖像分段。例如,可使用一種稱為JSEG且由鄧(Deng)等人 在1999年6月版"色彩圖像分段(Color Image Segmentation)"第二巻第446-451頁Proc.IEEE CSCC可視圖案識別(CVPR) (Proc.IEEE CSCC Visual Pattern Recognition (CVPR))屮所描述的分段算法來實現空間分段。作為另一實例,可使用 由布萊克(Black)等人在1996年版的"對多個運動的穩健估計參數及分段平滑" 63, (l)第75-104頁計算機視覺圖像理解(Comput. Vis. Image Underst.)中所描述的分
段算法來估計兩個幀之間的密光流。
可如下執行幀的空間分段。
使用JSEG來執行所述幀的初始空間分段。
計算兩個相鄰幀之間的密光流(像素運動)。
如果初始區域具有高運動向量方差,則將所述初始空間分段區域分成兩個更 小的區域。
如果所述初始空問分段的兩個K域具有類似的甲均運動向量且其聯合方差 相對低,則將所述初始區域合併成--個區域。
基於像素運動性質,使用所述分離及合併步驟來改進所述初始空間分段。 多邊形近似是指用多邊形來近似所述幀的每一區域。可將基於共用區域邊界的近 似算法用於多邊形近似。此算法如下操作。
對於每 對相鄰區域,找到其共用邊界,例如,沿其共用界限的具有端點
Pa及Pb的曲線。
最初,所述兩個端點Pa及Pb是所述兩個區域之間的曲線邊界的多邊形近似點。
確定所述曲線邊界上距連接端點Pa及Pb的直線的垂直距離最大的點Pn。如 果此距離超過閾值dmax,則在點Pn處選擇新的多邊形近似點。接著對從Pa 到Pn的曲線邊界以及從Pn到Pb的曲線邊界遞歸地應用所述過程。
如果不添加新的多邊形近似點,則從Pa到Pb的直線是這兩個端點之間曲線
邊界的勉強近似。
最初可使用大d,仿:。-n.所有邊界均已與節段近似,則可減少(例如,減
半)dmax且可重複所述過程。此可繼續進行直到dmax小到足以實現充分精確 的多邊形近似。
三角測量法是指創建-三角形且最終在每 多邊形內創建QUAD網格。可如J.R.
舒卡克(J.R. Shewchuk)在19%年5層"三角形:設計2D質量網格產生器及德勞 內三角儀 (Triangle: Engineering a 2D Quality Mesh Generator and Delaunay Triangulator)"第203-222頁的應用計算機幾何學面向幾何學引擎伺服器計算機科 學講稿 1148 (Appl. Comp. Geom.: Towards Geom. Engine, ser. Lecture Notes in Computer Science, 1148)中所描述來執行三角測量法。此文件描述了在每一多邊形內 產生德勞內(Delaunay)網格以及迫使所述多邊形的邊緣為所述網格的一部分。所述 多邊形邊界被規定為平面直線圖形內的區段,且如果可能,則所創建的三角形的所有 角均大於20度。可在三角測量法過程期間為每個四邊形添加多達四個內部節點。可接著使用合併算法來組合所述相鄰三角形以形成QUAD網格。所述三角測量法的結 果是被分割成若干網格的幀。
返回參照圖1,運動估計單元130可估計。前幀每一網格的運動參數。在一實施 例中,獨立地估計每一網格的運動,以使-一個網格的運動估計不會影響相鄰網格的運 動估計。在一實施例中,在-一兩步驟過程中執行網格的運動估計。第一步驟估計所述 網格的平移運動。第歩驟估計所述網格其它類型的運動。
圖4A圖解說明對目標網格410的平移運動的估計。將當前幀的目標網格410與 當前幀之前或之後的另 -幀中的候選網格420進行比較。候選網格420從目標網格 410平移或移位達(d/]W,其中」x表示沿水平或x方向的平移量,且」y表示沿垂 直或y方向的平移量。可通過計算目標網格410中像素的(例如,顏色或灰度)強度 及候選網格420l'對應像素的強度之間的度量來執行網格40與420之間的匹配。所 述度量可以是均方誤差(MSE)、平均絕對差或某一其它適當的度量。
可將目標網格410與當前幀之前的先前幀及/或當前幀之後的將來幀中的不同「a x^y〗平移的候選網格進行匹配。每候選網格.H有與H標網格相同的形狀。所述平 移可限定於一特定搜索K。如.卜.文針對候選網格420所描述,可計算每一候選網格的 度量。將導致最佳度量(例如,最小MSE)的移位選擇為目標網格的平移運動向量(」 ;c,,」力〗。具有最佳度量的候選網格被稱為選定網格,且具有選定網格的幀被稱為參考 幀。所述選定網格及參考幀在第二階段中使用。可將所述平移運動向量計算到整數像 素準確度。可在第二歩驟中實現子像素準確度。
在第二步驟中,使選定網格翹曲以確定是否可獲得與目標網格更好的匹配。可使
用翹曲來確定由旋轉、剪切、變形、按比例縮放等造成的運動。在一實施例中,通過 一次移動一個頂點同時保持其它三個頂點固定來翹曲選定網格-與翹曲網格的一對應的頂點相關,如下所示
目標網格的每一頂點
formula see original document page 12其中^{1, 2, 3, 4},
方程式(l)
其中z'為所述網格屮|.'[1個頂點的指數, 〖^x,,4力〗為第 -步驟中所獲得的平移運動向量, (z4力,勿,)為翹曲網格的頂點Z的額外位移, feW為目標網格的頂點Z的座標,且 (V,)V)為翹曲網格的頂點,'的座標。
對於目標網格中的每-像素或點,可如下基於8-參數雙線性變換來確定翹曲網 格中對應的像素或點formula see original document page 13
方程式(2)
其中a,、 a2、 ...、 as為八個雙線性變換係數, (x,y〗為目標網格中像素的座標,且 (x',y '〗為翹曲網格中對應像素的座標。
為確定所述雙線件.變換係數,可針對四個頂點來計算方程式(2)並可將其表達
為如下
formula see original document page 13方程式(4)
方程式(3)
目標網格及翹曲網格的四個頂點的座標(x,、乂)及&',》','〗是已知的。座標(V,力'〗包含 來自翹曲的額外位移PU,, ,l乂),如方程式(l)屮所示。
方程式(3)可以如卜—矩陣形式來農達:
x = B ,a,
其中x為翹曲網格四個頂點的座標的8X 1向量,
B為方程式(3)中等式右側的8X8矩陣,且
a為雙線性變換係數的8X1向量。
可如下獲得所述雙線性變換係數 a = B-1,x .
在第二步驟中,僅針對目標網格計算矩陣B—1 -次( 格頂點的座標,其在翹曲期間不會改變。
圖4B圖解說明第二步驟中目標網格的非平移運動的估計。選定網格430的四個 頂點中的每一頂點均可在小搜索區內移動,同時保持其它三個頂點固定。通過移動一 個頂點達(^x,, ^y,)且其它三個頂點固定,可獲得翹曲網格440。通過如下步驟將目標 網格(圖4B中未顯示)與翹曲網格440進行匹配(a)確定翹曲網格440中對應於 目標網格中的像素的像素U列如,如方程式(2)中所示);及(b)基於目標網格中 像素的強度及翹曲網格440中對應像素的強度來計算度量。所述度量可以是MSE、 平均絕對差或某一其它適^的度量。
對於既定頂點,可將f目標網格勾通過所述頂點的不同M; ^;yj位移而得到的若
方程式(5) 這是因為矩陣B含有目標網幹翹曲網格進行匹配。可為每--翹曲網格計算度量。將導致最佳度量(例如,最小 MSE)的(^x,,《W位移選作所述頂點的額外運動向量(^x,、 4乂〗。可對所述四個頂點 中的每一者執行相同的處理以獲得所述四個頂點的四個額外運動向量。
在圖4A及4B所示的實施例中,目標網格的運動向量包括平移運動向量(d;c,, /1 y及四個頂點的四個額外運動向量Mx,.其中/=1、 2、 3、 4。可組合這些運動 向量(例如(=(々,)+ ( 以獲得目標網格的四個頂點的四個仿
射運動向量(4x',,《v',),其中1、 2、 3、 4。所述仿射運動向量表達各種類型的運動。
可通過上文描述的兩步驟過程來估計目標網格的仿射運動,此可減少計算。還可 以其它方式來估計所述仿射運動。在另一實施例中,通過如上文所描述首先估計平移 運動且接著同時移動多個(例如,所有四個)頂點穿過 搜索空間來估計仿射運動。 在又一實施例中,通過在沒有首先估計所述平移運動的情形下一次移動一個頂點來估 計所述運動。在又實施例屮,通過在沒有首先佔計所述平移運動的情形下同時移動 所有四個頂點來估計仿射運動。人體來說, 一次移動一個頂點可提供足夠好的運動估 計,比同時移動所有四個項點需要更少的計算。
運動補償單元132從運動估計學-元130接收仿射運動向量並產生所述目標網格的 所預測網格。所述仿射運動向量界定所述目標網格的參考網格。所述參考網格可具有 與目標網格相同的形狀或不同的形狀。單元132可用一組雙線性變換係數對參考網格 執行網格-到-網格域變換,以獲得具有與目標網格相同形狀的所預測網格。
域變換單元U4將具有任意形狀的網格變換為具有預定形狀(例如,正方形或矩 形)的塊。可如下地使用8-係數雙線性變換將所述網格映射到單元正方形塊
formula see original document page 14 方程式(6)
其中d、 c2、 ...、 C8是網格-到-塊域變換的8個係數。
方程式(6)具有與方程式(3)相同的形式。然而,在方程式左邊的向量中,方 程式(3)中四個網格頂點的座標被方程式(6)中四個塊頂點的座標取代,因此(",,v!)=
(O,O)取代"',)V), ("2力)=(0,1)取代(^'2,/2), (V;,VjXl,l)取代(X、力〗,且(>4,"4) = (1,0)
取代&'4,力〗。此外,方程式(3)中的係數",、"2、 ...、 "s的向量被方程式(6)中的係數c"
C2、 ...、 C8的向量取代。方程式(6)使用係數C/、 Q、 ...、 Cs將目標網格映射到單元 正方形塊。方程式(6)可以如下的矩陣形式來表達
u = B *c , 方程式(7)其中U是所述塊的四個頂點的座標的8X 1向量, C是網格-到-塊域變換的係數的8Xl向量。
可如下獲得所述域變換係數C: c = B、u ,
其中在運動估計期間計算矩陣B—'。
可如下執行所述網格-到-塊域變換
少 1
方程式(8)
V
c5 c6 c7 cs
方程式(9)
方程式(9)將H標網格中座標&, ^處的像素或點映射到所述塊中座標 ,W處的 對應像素或點。可將H標網格中的像素中的每^ - 者映射到所述塊中的對應像素。所述 經映射的像素的座標可不是整數值。可對所述塊中經映射的像素執行內插以獲得整數 座標處的像素。可接箱使用基於塊的編碼工具來處理所述塊。
域變換單元124如K使用8-係數雙線性變換將單元正方形塊變換為網格
工2
一V3
人
0 0 0
0
1
0
1
0
0
0
1
0
1
0 0 0
其中flf, A、..,
方程式(10)
0 0 0 0
0
1
0 0
0 0 0 0
0
1
0
1
0 0
0
1
0
1
0 0
《
方程式(IO)
'-塊-到-網格域變換的s個係數。
具有與A程式(3)相同的形式。然而,在方程式右邊的矩陣中,
方程式(3)中四個網格頂點的座標被方程式(IO)中四個塊頂點的座標取代,因此(",v,)=
(0,0)取代(^,內),^,V2)-(0J)取代fe,力),r"J,Vj)-(l,l)取代te,力),且("4,V4)-(1,0)取
代&,y"。此外,方程式(3)中的係數",、a2、…、as的向量被方程式(10)中的係數J,、 ^、 ...、 ds的向量取代。方程式(10)使用係數c/" &、…、^將所述單元正方形塊 映射到所述網格。
方程式(10)可以如下矩陣形式來表達
y = S.d. 方程式(U) 其中y是所述網格的四個頂點的座標的8X1向量, S是方程式(10)中等式右邊的8X8矩陣,且 d是塊-到-網格域變換的係數的8X1向量。 可如下獲得所述域變換係數d:
15d = S'.x, 方程式(12)
其中矩陣S"可被計算一次且用於所有網格。 可如下執行所述塊-到-網格域變換
義
l」 方程式(13) 圖5圖解說明兩個網格與-塊之間的域變換。可基於方程式(9)將網格510映 射到塊520。可基於方程式(13)將塊520映射到網格530。可基於方程式(2)將網 格510映射到網格530。可如上文所描述來確定這些域變換的係數。
圖6顯示針對幀610的所有網格所執行的域變換。在此實例中,使用網格-到-塊 域變換分別將幀610的網格612、 614及616映射到幀620的塊622、 624及626。還 可使用塊-到-網格域變換分別將幀620的塊622、624及626映射到幀610的網格612、 614及616。
圖7顯示用於執行具有域變換的基於網格的視頻壓縮的過程700的實施例。將一 圖像分割成若干像素網格(塊710)。處理所述像素網格以獲得預測誤差塊(塊720)。 將對所述預測誤差塊進行編碼以產生所述圖像的經編碼數據(塊730)。
可處理所述像素網格以獲得預測誤差網格,可對所述預測誤差網格進行域變換以 獲得預測誤差塊。或者,可對像素網格進行域變換以獲得像素塊,可對所述像素塊進 行處理以獲得預測誤差塊。在塊720的實施例中,對像素網格執行運動估計以獲得這 些網格的運動向量〔塊722)。可通過如下歩驟來執行像素網格的運動估計(1) 估計所述像素網格的平移運動;及(2)通過在一搜索空間上 次變動一個頂點同時 保持剩餘頂點固定來估計其它類型的運動。基於具有所述運動向量所確定的頂點的參 考網格來導出所預測網格〔塊724)。基於像素網格及所預測網格導出預測誤差網格 (塊726)。對預測誤差網格進行域變換以獲得預測誤差塊(塊728)。
每一網格均可以是具有任意形狀的W邊形,且每一塊均可以是預定大小的正方 形。可根據雙線性變換將所述網格變換為塊。如(例如)方程式〔6)到(8)中所示, 可基於網格頂點來確定每一網格的一組係數。如(例如)方程式(9)中所示,可基 於所述網格的所述組係數將每一網格變換為一塊。
所述編碼可包含(a)對每一預測誤差塊執行DCT以獲得DCT係數塊;及(b) 對所述DCT係數塊執行熵編碼。可確定每--預測誤差塊的度量,且如果所述度量超 過閾值,則可對預測誤《塊進行編碼。可使用經編碼的預測誤差塊來重構預測誤差網 格,預測誤差網格乂可川來重構所述圖像。所述經重構的圖像可用於另一圖像的運動 估計。
圖8顯示用於執行貝有域變換的基於網格的視頻解壓縮的過程800的實施例。基 於圖像的經編碼數據來獲得預測誤差塊(塊SIO)。處理預測誤差塊以獲得像素網格
16(塊820)。組合所述像素網格以.重構所述圖像(塊830)。
在塊820的-實施例屮,將預測誤差塊域變換為預測誤差網格(塊822),基於 運動向量導出所預測網格(塊824),且基於預測誤差網格及所預測網格導出像素網 格(塊826)。在塊820的另 一實施例中,基於運動向量導出所預測塊,基於預測誤 差塊及所預測塊導出像素塊,且對所述像素塊進行域變換以獲得像素網格。在這兩個 實施例中,可基於所述像素網格的運動向量來確定每一像素網格的參考網格。可對所 述參考網格進行域變換以獲得所預測網格或塊。可通過以下步驟來實現塊-到-網格域 變換(1)基於對應網格的頂點來確定一塊的一組係數;及(2)基於所述組係數將 所述塊變換為對應的網格。
本文中所描述的視頻壓縮/解壓縮技術可提供改善的性能。每一視頻幀可由若干 網格來表示。可將所述視頻視為每一網格從一個幀到下-幀的連續仿射或透視變換。 仿射變換包含平移、旋轉、按比例縮放及剪切,且透視變換額外地包含透視翹曲。基 於網格的視頻壓縮的 一個優點是運動估計的靈活性及精確度。網格不再僅限制於平移 運動,而是其可具有-般及真實類型的仿射/透視運動。對於仿射變換,每一網格內 的像素運動均為網格頂點的運動向量的雙線性內插或-階近似。相反,在基於塊的方 法中,每一塊或子塊內的像素運動均為所述塊/於塊的頂點或中心處的運動的最接近 相鄰或零階近似。
基於網格的視頻H、:縮可能夠比基於塊的視頻壓縮更為精確地模擬運動。更為精確 的運動估計可減少視頻的時間兀餘。因此,在某些情形下,可不需要預測誤差(紋理) 的編碼。經編碼的位流i']"由具有幀內幀U-幀)的臨時更新的網格幀序列來支配。
基於網格的視頻壓縮的另-優點是幀間內插。可通過內插鄰近幀的網格格柵來創 建實際上無限數[J的中間幀,從而產生所謂的無幀視頻。網格格柵內插是平滑且連續 的,從而當所述網格為 -場景的精確表示時幾乎不會產生贗像。
所述域變換提供-種處理具有不規則形狀的網格的預測誤差(紋理)的有效方式。 所述域變換還允許將l-幀的網格(或幀內網格)映射到塊。可使用所屬技術領域中可 用的各種基於塊的編碼T.具來對紋理塊及幀內網格有效地進行編碼。
本文中所描述的視頻II、:縮/解壓縮技術PJ用T"通信、計算、聯網、個人電子裝置
等。下文描述無線通信技術的例示性使用。
圖9顯示無線通信系統中無線裝置900的實施例的方塊圖。無線裝置900可以是 蜂窩電話、終端、手持機、個人數字助理(PDA)或某一其它裝置。所述無線通信系 統可以是碼分多址(CDMA)系統、全球移動通信系統(GSM)或某一其它系統。
無線裝置900能夠經由接收路徑及傳輸路徑提供雙向通信。在所述接收路徑上, 基站所傳輸的信V由天線912接收並提供給接收器(RCVR) 914。接收器914調節並 數位化所接收的信號,並將樣本提供給數字區段920以進行進一步處理。在所述傳輸 路徑上,傳輸器(TMTR) 96接收待從數字區段920傳輸的數據,處理及調節所述 數據,並產生經調製信號,所述經調製信號經由天線912傳輸到基站。數字區段920包含各種處理、存儲器及接口單元,例如數據機處理器922、 應用程式處理器924、 .示器處理器926、控制器/處理器930、內部存儲器932、圖 形處理器940、視頻編碼器/解碼器950及外部總線接口 (EBI) 960。數據機處理 器922執行數據傳輸及接收的處理,例如,編碼、調製、解調及解碼。應用程式處理 器924執行諸如多路呼叫、網頁瀏覽、媒體播放器及使用者接口等各種應用程式的處 理。顯示器處理器926執行處理以促進視頻、圖形及文本在顯示單元980上的顯示。 圖形處理器940執行圖形應用的處理。視頻編碼器/解碼器950執行基於網格的視頻 壓縮及解壓縮,且可實施圖1中的視頻編碼器100以進行視頻壓縮且實施圖2中的視 頻解碼器200以進行視頻解壓縮。視頻編碼器/解碼器950可支持諸如放像攝像機、 視頻回放、視頻會議等視頻應用。
控制器/處理器930可引導數字區段920內各種處理及接口單元的操作。存儲器 932及970為處理單兀存儲程序代碼及數據。EBI 960促進數字區段920與主存儲器 970之間的數據傳送。
數字區段920可實施有--個或-個以h數位訊號處理器(DSP)、微處理器、精 簡指令集計算機〔RISC)等。數卞區段920還可製造在…個或 個以上專用集成電路 (ASIC)或某一其它類型的集成電路(IC)上。
本文中所描述的視頻壓縮/解壓縮技術可通過各種手段來實施。例如,可在硬體、 固件、軟體或其組合屮實施這些技術。對於硬體實施方案來說,用於執行視頻壓縮/ 解壓縮的處理單兀可實施在一個或 個以上ASIC、DSP、數位訊號處理裝置(DSPD)、 可編程邏輯裝置(PLD)、現場可編程門陣列(FPGA)、處理器、控制器、微控制 器、微處理器、電子裝置、其它經設計以執'行本文中所描述功能的電子單元或其組合 內。
對於固件及/或軟體實施方案來說,可用執行本文中所描述功能的模塊(例如, 程序、功能等)來實施所述技術。所述固件及/或軟體代碼可存儲在存儲器(例如, 圖9中的存儲器932及/或970)屮並由處理器(例如,處理器930)執行。所述存儲 器可實施在所述處理器內部或所述處理器外部u
提供所揭示實施例的先前說明以使所屬技術領域的技術人員能夠製作或使用本 發明揭示內容。所屬技術領域的技術人員將易知對這些實施例的各種修改,且可將本 文中所界定的一般原理應用於其它實施例,此並不違背本發明揭示內容的精神及範
圍。因此,本發明並不打貧限定於本文中所小:實施例,而是將賦予其與本文所揭示原 理及新穎特徵相 -致的最寬廣範圍。
權利要求
1、一種設備,其包括至少一個處理器,其經配置以將一圖像分割成若干像素網格,處理所述像素網格以獲得預測誤差塊,且對所述預測誤差塊進行編碼以產生所述圖像的經編碼數據;及存儲器,其耦合到所述至少一個處理器。
2、 如權利要求1所述的設備,其中每-網格均為具有任意形狀的四邊形,且其中每一塊均為預定大小的正力'形。
3、 如權利要求1所述的設備,其中所述至少一個處理器經配置以處理所述像素網格,以獲得預測誤差網格並將所述預測誤差網格變換為所述預測誤差塊。
4、 如權利要求1所述的設備,其中所述至少一個處理器經配置以將所述像素網格變換為像素塊並處理所述像素塊以獲得所述預測誤差塊。
5、 如權利要求1所述的設備,其中所述至少一個處理器經配置以根據雙線性變 換將所述網格變換為所述塊。
6、 如權利要求1所述的設備,其中所述至少一個處理器經配置以基於所述網格 的頂點為每一網格確定一組係數,且基於所述網格的所述組係數將每一網格變換為塊。
7、 如權利要求1所述的設備,其中所述至少一個處理器經配置以對所述像素網 格執行運動估計以獲得所述像素網格的運動向量。
8、 如權利要求7所述的設備,其中所述至少一個處理器經配置以基於所述運動 向量導出所預測的網格,且基於所述像素網格及所述所預測的網格確定預測誤差。
9、 如權利要求1所述的設備,其中對於每-一像素網格,所述至少一個處理器經 配置以確定具有由所述像素網格的所估計運動確定的頂點的參考網格,且基於所述像 素網格及所述參考網格導出預測誤差網格。
10、 如權利要求9所述的設備,其屮所述至少一個處理器經配置以通過估計所述 像素網格的平移運動來確定所述參考網格。
11、 如權利要求9所述的設備,其中所述至少一個處理器經配置以通過在一搜索 空間上一次變動一個頂點同時保持剩餘頂點固定來確定所述參考網格。
12、 如權利要求l所述的設備,其中對於每一預測誤差塊,所述至少一個處理器經配置以為所述預測誤差塊確定度量,且如果所述度量超過閾值,則對所述預測誤差 塊進行編碼。
13、 如權利要求l所述的設備,其中對於每一預測誤差塊,所述至少一個處理器 經配置以對所述預測誤差塊執行離散餘弦變換(DCT)以獲得DCT係數塊,並對所述 DCT係數塊執行熵編碼。
14、 如權利要求1所述的設備,其屮所述至少一個處理器經配置以基於經編碼的 預測誤差塊來重構預測誤差網格,基子所述經重構的預測誤差網格來重構所述圖像, 並將所述經重構的圖像用於運動估計。
15、 如權利要求14所述的設備,其中所述至少一個處理器經配置以基於對應的 經重構預測誤差網格的頂點為每一經編碼的預測誤差塊確定一組係數,且基於所述經 編碼塊的所述組係數將每 -經編碼的預測誤差塊變換為所述對應的經重構預測誤差網 格。
16、 如權利要求l所述的設備,其中所述至少一個處理器經配置以將第二圖像分 割成若干第二像素網格,將所述第二像素網格變換為像素塊,且對所述像素塊進行編 碼以產生所述第二圖像的經編碼數據。
17、 一種方法,其包括 將一圖像分割成若千像素網格 處理所述像素網格以獲得預測誤差塊;及 對所述預測誤差塊進行編碼以產生所述圖像的經編碼數據。
18、 如權利要求17所述的方法,其中所述處理所述像素網格包括 處理所述像素網格以獲得預測誤差網格,及 將所述預測誤差網格變換為所述預測誤差塊。
19、 如權利要求17所述的方法,其中所述處理所述像素網格包括 將所述像素網格變換為像素塊,及 處理所述像素塊以獲得所述預測誤差塊。
20、 如權利要求17所述的方法,其中所述處理所述像素網格包括基於所述網格的頂點為每-網格確定-組係數,及 基於所述網格的所述組係數將每 -網格變換為塊。
21、 一種設備,K包括用於將一圖像分割成若干像素網格的分割裝置; 用於處理所述像素網格以獲得預測誤差塊的處理裝置;及用於對所述預測誤差塊進行編碼以產生所述圖像的經編碼數據的編碼裝置。
22、 如權利要求21所述的設備,其中所述用於處理所述像素網格的裝置包括 用於處理所述像紊網格以獲得預測誤若網格的裝置,及 用於將所述預測議.《網格變換為所述預測誤^塊的裝置。
23、 如權利耍求21所述的設備,其屮所述用於處理所述像素網格的裝置包括 用於將所述像素網格變換為像素塊的裝置,及用於處理所述像素塊以獲得所述預測誤差塊的裝置。
24、 如權利要求21所述的設備,其屮所述用f處理所述像素網格的裝置包括 用於基於所述網格的頂點為每-網格確定一組係數的裝置,及 用於基於所述網格的所述組係數將每一網格變換為塊的裝置。
25、 一種設備,其包括至少一個處理器,其經配置以基於圖像的經編碼數據獲得預測誤差塊,處理所述 預測誤差塊以獲得像紊網格,且組介所述像素網格以重構所述圖像;及 存儲器,K耦合到所述,:少個處押.器。
26、 如權利要求25所述的設備,M:屮所述予;少'個處理器經配置以根據雙線性 變換將所述塊變換為所述網格。
27、 如權利要求25所述的設備,其屮所述節少"個處理器經配置以基於對應網 格的頂點為每一塊確定'組係數,且基f所述塊的所述組係數將每一塊變換為所述對 應的網格。
28、 如權利要求25所述的設備,其中所述節少-個處理器經配置以將所述預測 誤差塊變換為預測誤S網格,基f運動向覽導出所預測的網格,並基於所述預測誤差 網格及所述所預測的網格導出所述像素網格。
29、 如權利要求28所述的設備,其中所述至少-個處理器經配置以基於所述運 動向量確定參考網格並將所述參考網格變換為所述所預測的網格。
30、 如權利要求25所述的設備,其中所述至少個處理器經配置以基於運動向 量導出所預測的塊,基於所述預測誤差塊及所述所預測的塊導出像素塊,並將所述像 素塊變換為所述像素網格。
31、 一種方法,其包括 基於圖像的經編碼數據獲得預測誤差塊; 處理所述預測誤差塊以獲得像素網格;及組合所述像素網格以重構所述圖像。
32、 如權利要求31所述的方法,其中所述處理所述預測誤差塊包括基於對應網格的頂點為每- 塊確定-組係數,及 基於所述塊的所述組係數將每一塊變換為所述對應網格。
33、 如權利要求31所述的方法,其中所述處理所述預測誤差塊包括 將所述預測誤差塊變換為預測誤差網格, 基於運動向量導出所預測的網格,及基於所述預測誤差網格及所述所預測的網格導出所述像素網格。
34、 如權利要求31所述的方法,其中所述處理所述預測誤差塊包括 基於運動向量導出所預測的塊,基於所述預測誤差塊及所述所預測的塊導出像素塊,及 將所述像素塊變換為所述像素網格。
35、 一種設備,其包括用於基於圖像的經編碼數據獲得預測誤差塊的獲得裝置; 用於處理所述預測誤差塊以獲得像素網格的處理裝置;及 用於組合所述像尜網格以重構所述圖像的組合裝置。
36、 如權利要求35所述的設備,其中所述用於處理所述預測誤差塊的裝置包括 用於基於對應網格的頂點為每一塊確定一組係數的裝置,及 用於基於所述塊的所述組係數將每一塊變換為所述對應網格的裝置。
37、 如權利要求35所述的設備,其中所述用於處理所述預測誤差塊的裝置包括用於將所述預測誤差塊變換為預測誤差網格的裝置,用於基於運動向,:3出所預測的網格的裝置,及用於基於所述預測誤芳:網格及所述所預測的網格導出所述像素網格的裝置。
38、如權利要求35所述的設備,其屮所述用於處理所述預測誤差塊的裝置包括 用於基於運動向M:導出所預測的塊的裝置, 用於基於所述預測誤若塊及所述所預測的塊導出像素塊的裝置,及 用於將所述像茶'塊變換為所述像素網格的裝置。
全文摘要
本發明描述用於執行具有域變換的基於網格的視頻壓縮/解壓縮的技術。視頻編碼器將圖像分割成若干像素網格,處理所述像素網格以獲得預測誤差塊,並對所述預測誤差塊進行編碼以產生所述圖像的經編碼數據。所述網格可具有任意多邊形形狀,且所述塊可具有預定的形狀,例如正方形。所述視頻編碼器可處理所述像素網格以獲得預測誤差網格,且可接著將所述預測誤差網格變換為預測誤差塊。或者,所述視頻編碼器可將所述像素網格變換為像素塊,且可接著處理所述像素塊以獲得所述預測誤差塊。所述視頻編碼器還可執行基於網格的運動估計以確定用於產生所述預測誤差的參考網格。
文檔編號H04N7/50GK101496412SQ200780028188
公開日2009年7月29日 申請日期2007年7月31日 優先權日2006年8月3日
發明者齊英永 申請人:高通股份有限公司