對視頻進行穩定化的方法和包括後處理電路的視頻解碼器的製造方法
2023-06-22 19:51:21 3
對視頻進行穩定化的方法和包括後處理電路的視頻解碼器的製造方法
【專利摘要】提供一種對視頻進行穩定化的方法和包括後處理電路的視頻解碼器。為了對視頻(圖像序列)進行穩定化,從解碼電路以宏塊為單位接收視頻幀的重建的塊數據和解碼信息。基於重建的塊數據和解碼信息來確定並提供全局仿射參數,並且該全局仿射參數表示幀的仿射變換。通過補償重建的塊數據的與仿射變換相應的仿射運動,提供基於全局仿射參數的穩定化的塊數據。
【專利說明】對視頻進行穩定化的方法和包括後處理電路的視頻解碼器
[0001]本申請要求於2013年3月15日在韓國知識產權局(KIPO)提交的第10-2013-0028249號韓國專利申請的優先權,該韓國專利申請通過弓I用整體合併於此。
【技術領域】
[0002]示例性實施例總體上涉及視頻數據的處理,更具體地講,涉及對視頻進行穩定的方法、後處理電路以及去除手抖動噪聲的視頻解碼器。
【背景技術】
[0003]IS0/IEC (國際標準化組織/國際電工委員會)下的MPEG (運動圖像專家組)和ITU-T (國際電信聯盟電信)下的VCEG (視頻編碼專家組)是視頻編碼的重要標準。MPEG和VCEG組織了 JVT (聯合視頻小組),並且該小組已經完成了視頻編碼的國家標準H.264/AVC(先進視頻編碼)。與諸如MPEG-2、MPEG-4、H.261、H.263等的之前的視頻編解碼器標準相比,H.264/AVC在壓縮視頻數據時通過弓I入諸如可變塊尺寸運動估計、四分之一像素運動矢量解析度、多參考畫面運動估計等功能提供了改進的性能。
[0004]編碼器的複雜性以及編碼數據的流大小由於所添加的功能而增加。在以更高的頻率操作傳統編碼器的更大的開支的情況下,可提高在採用H.264標準的視頻解碼器中處理數據的速度。
[0005]當使用圖像捕捉裝置捕捉視頻(即,相同場景的圖像或幀的序列)時,由於手抖動(即,由於用戶的運動而引起的噪聲)會導致圖像質量降低。在某些傳統方案中,在對捕獲的視頻數據進行壓縮之前,通過預處理來補償手抖動噪聲。但是,這些方案會增加處理數據的量和所需硬體的複雜性,因此會降低視頻解碼器的處理速度。在另一種傳統方案中,可以通過分析全局運動矢量來補償手抖動噪聲。但是,這些方案僅可檢測到與平移運動相應的噪聲分量,因此無法去除各種類型的手抖動噪聲。
【發明內容】
[0006]本發明構思的一個方面提供一種能夠有效檢測並補償手抖動噪聲的對視頻進行穩定化的方法。
[0007]本發明構思的一個方面提供一種能夠使用解碼的結果來有效檢測並補償手抖動噪聲的後處理電路。
[0008]本發明構思的一個方面提供一種能夠有效檢測並補償手抖動噪聲的視頻解碼器。
[0009]本發明構思的一個方面提供一種對視頻進行穩定化的方法,所述方法包括下列步驟:從解碼電路以宏塊為單位接收視頻幀的重建的塊數據和解碼信息;基於重建的塊數據和解碼信息來提供全局仿射參數,其中,所述全局仿射參數表示幀(圖像)的仿射變換;以及通過補償重建的塊數據的與仿射變換相應的仿射運動補償,提供基於全局仿射參數的穩定化的塊數據。
[0010]全局仿射參數可以表示包括所有的幀(圖像)的平移、旋轉和縮放改變的仿射變換。
[0011]提供全局仿射參數的步驟可包括:基於重建的塊數據和解碼信息來計算特徵點的點運動矢量,其中,所述特徵點表示在巾貞(圖像)中包括的物體的邊緣或拐角;以及基於點運動矢量以幀為單位確定全局仿射參數。
[0012]可通過根據光柵掃描順序分析每個幀中的多個宏塊的重建的塊數據來計算點運動矢量。
[0013]計算點運動矢量的步驟可包括:通過分析重建的塊數據來檢測特徵點;以及基於宏塊的塊運動矢量來計算特徵點的點運動矢量,其中,所述塊運動矢量被包括在來自解碼電路的解碼信息中。
[0014]檢測特徵點的步驟可包括基於每個宏塊的編碼模式針對每個宏塊確定是否執行特徵點的檢測。
[0015]確定是否執行特徵點的檢測的步驟可包括省略針對編碼是幀內模式的宏塊執行特徵點的檢測的過程。
[0016]確定是否執行特徵點的檢測的步驟可包括:計算編碼模式是幀間模式的每個宏塊的殘差塊數據的幅值,其中,所述殘差塊數據被包括在解碼信息中;以及當宏塊的殘差塊數據的幅值大於參考值,則省略針對所述宏塊的特徵點的檢測。
[0017]計算殘差塊數據的幅值的步驟可包括:計算每個宏塊的殘差塊數據中的像素數據的絕對值;以及計算所述絕對值的和,以將該和確定為每個宏塊的殘差塊數據的幅值。
[0018]噹噹前幀與幀內幀相應時,可省略計算點運動矢量的過程。
[0019]計算特徵點的點運動矢量的步驟可包括:針對包括在當前宏塊中的每個特徵點,提取當前宏塊和鄰近當前宏塊的相鄰宏塊的塊運動矢量;計算表示在每個特徵點與提取的塊運動矢量之間的空間相關性的空間權重值;以及使用空間權重值來計算提取的塊運動矢量的加權平均值,以將所述加權平均值確定為每個特徵點的點運動矢量。
[0020]空間權重值可被計算為在每個特徵點與參考宏塊的中心點以及相鄰宏塊的中心點之間的距離的倒數值。
[0021]計算特徵點的點運動矢量的步驟可包括:針對包括在當前宏塊中的每個特徵點,提取當前宏塊的塊運動矢量和鄰近當前宏塊的相鄰宏塊的塊運動矢量;計算表示在每個特徵點和相鄰宏塊的塊運動矢量之間的時間相關性的時間權重值;以及通過使用時間權重值來調整提取的塊運動矢量以計算被縮放的塊運動矢量;計算表示在每個特徵點與提取的塊運動矢量之間的空間相關性的空間權重值;以及使用空間權重值來計算被縮放的塊運動矢量的加權平均值,以將所述加權平均值確定為每個特徵點的點運動矢量。
[0022]時間權重值可被計算為在包括當前宏塊的當前幀的幀編號與包括相鄰宏塊的其它幀的幀編號之間的差的倒數值。
[0023]以幀為單位確定全局仿射參數的步驟可包括:將當前幀中的特徵點分組到多個點群組中;基於特徵點的點運動矢量,在點群組中確定參考點群組;以及基於在參考點群組中包括的特徵點的點運動矢量來計算當前幀的仿射參數。
[0024]確定參考點群組的步驟可包括:計算這些點群組的分布值,其中,每個分布值都表示在每個點群組中的特徵點的點運動矢量的方向和幅值分布;將分布值與參考值進行比較;以及當點群組的分布值小於參考值時,將所述點群組確定為參考點群組。
[0025]以幀為單位確定全局仿射參數的步驟還可包括:將計算的當前幀的仿射參數提供作為用於補償後續幀的重建的塊數據的全局仿射參數。
[0026]以幀為單位確定全局仿射參數的步驟還可包括:基於計算的當前幀和至少一個先前幀的仿射參數來估計仿射參數;以及將估計的仿射參數提供作為用於補償後續幀的重建的塊數據的全局仿射參數。
[0027]提供穩定化的塊數據的步驟可包括:基於全局仿射參數來計算補償仿射參數,其中,所述補償仿射參數表示由全局仿射參數表示的仿射變換的逆變換;以及基於補償仿射參數和重建的塊數據來計算穩定化的塊數據。
[0028]計算穩定化的塊數據的步驟可包括:基於補償仿射參數來將像素的像素坐標變換為像素的補償坐標;以及基於被映射到補償坐標的重建的塊數據來計算被映射到像素坐標的穩定化的塊數據的每個像素數據。
[0029]計算穩定化的塊數據的每個像素數據的步驟可包括:設置鄰近每個像素的相鄰像素的補償群組;計算與在每個像素的像素坐標與在補償群組中的相鄰像素的補償坐標之間的差的倒數值相應的權重值;以及計算被映射到補償組中的相鄰像素的補償坐標的重建的塊數據的加權平均值,以將所述加權平均值確定為被映射到像素坐標的穩定化的塊數據的每個像素數據。
[0030]本發明構思的一個方面提供一種視頻解碼器,所述視頻解碼器包括:解碼電路,被配置為以宏塊為單位提供重建的塊數據和解碼信息;以及後處理電路,被配置為基於重建的塊數據和解碼信息來確定全局仿射參數,其中,所述全局仿射參數表示幀(圖像)的仿射變換;並且,所述後處理電路被配置為通過補償重建的塊數據的與仿射變換相應的仿射運動,以提供基於全局仿射參數來提供穩定化的塊數據。
[0031]所述後處理電路可包括:仿射運動估計塊,被配置為基於重建的塊數據和解碼信息來提供全局仿射參數;以及運動補償塊,被配置為基於全局仿射參數來提供穩定化的塊數據。
[0032]仿射運動估計塊可以巾貞為單位來更新(upgrade)全局仿射參數。
[0033]來自解碼電路的重建的塊數據的提供以及來自運動補償塊的穩定化的塊數據的提供被執行為以宏塊為單位的流水線處理。
[0034]本發明構思的一個方面提供一種視頻解碼器的後處理單元,所述後處理單元包括:特徵點檢測單元,被配置為基於從解碼電路以宏塊為單位提供的重建的塊數據和解碼信息來檢測特徵點,其中,所述特徵點表示在幀(圖像)中包括的物體的邊緣或拐點;點矢量計算單元,被配置為基於宏塊的塊運動矢量來計算特徵點的點運動矢量,其中,所述塊運動矢量被包括在解碼信息中;仿射參數計算單元,被配置為基於點運動矢量來以幀為單位計算仿射參數;軌跡(trajectory)單元,被配置為基於針對至少一個巾貞(圖像)的計算的仿射參數來估計全局仿射參數,其中,所述全局仿射參數表示幀的仿射變換;以及仿射運動補償單元,被配置為通過補償重建的塊數據的與仿射變換相應的仿射運動,來提供基於全局仿射參數的穩定化的塊數據。
[0035]在下文中,將參考附圖對各種示例性實施例進行更全面的描述,其中,在附圖中示出了一些示例性實施例。但是,本發明構思可以以許多不同的形式來實施,並且不應該被解釋為局限於本文中所闡述的示例性實施例。確切地說,這些示例性實施例被提供,使得本公開將是徹底和完整的,並且,將向本領域技術人員全面地傳達本發明構思的範圍。在附圖中,為了清楚起見,可以誇大層和區域的尺寸和相對尺寸。相同的附圖標號始終表示相同的元件。
[0036]應當理解的是,雖然在本文中可以使用術語「第一」、「第二」、「第三」等來描述各種元件,但是這些元件不應當受這些術語的限制。這些術語用來將一個元件與另一個元件區分開。因此,在不脫離本發明構思的教導的情況下,在下文中討論的第一元件可被表示為第二元件。如本文中使用的,術語「和/或」包括相關所列項中的一個或更多個的任何組合和所有組合。
[0037]應當理解的是,當一個元件被稱為與另一個元件「連接」或「耦接」時,它可以與另一個元件直接連接或耦接,或者,可以存在中間元件。與此形成對照的是,當一個元件被稱為與另一個元件「直接連接」或「直接耦接」時,不存在中間元件。
[0038]本文中使用的術語僅僅出於描述特定的示例性實施例的目的,並不意圖限制本發明構思。如本文中使用的,除非上下文另有明確指示,否則單數形式也意圖包括複數形式。
[0039]還應該注意,在一些可替換的實施方式中,在框中指出的功能/動作可能會不以在流程圖中指出的順序發生。例如,根據涉及的功能/動作,連續地示出的兩個塊事實上可以基本上被同時執行,或者這些塊有時可以按照相反的順序被執行。
[0040]除非另有定義,否則本文中使用的所有的術語(包括技術術語和科學技術)具有與本發明構思所屬【技術領域】的普通技術人員所通常理解的含義相同的含義。將會進一步理解,諸如常用詞典中定義的術語的術語應該被解釋為具有與其在相關領域的背景中的含義一致的含義,並且將不會被解釋為理想化的或過於正式的意義,除非本文中明確地定義。
【專利附圖】
【附圖說明】
[0041]通過結合附圖進行的以下詳細描述,本發明構思的示例性實施例將被更清晰的理解,其中:
[0042]圖1是示出根據本發明構思的示例性實施例的對視頻進行穩定的方法的流程圖;
[0043]圖2是示出根據本發明構思的示例性實施例的視頻解碼器的框圖;
[0044]圖3是示出根據本發明構思的示例性實施例的確定全局仿射參數GAP的方法的流程圖;
[0045]圖4、圖5和圖6是根據本發明構思的示例性實施例的用於描述基於光柵掃描的方案的視頻幀的部分的示圖,該基於光柵掃描的方案用於檢測特徵點和/或用於計算點運動矢量;
[0046]圖7是示出根據本發明構思的示例性實施例的確定是否執行特徵點的檢測的方法的流程圖;
[0047]圖8是示出根據本發明構思的示例性實施例的用於描述決定的對檢測特徵點的省略的示圖;
[0048]圖9是示出根據本發明構思的示例性實施例的使用空間權重值來計算特徵點運動矢量的方法的流程圖;
[0049]圖10是用於描述在圖9的方法中使用的空間權重值的示例的示圖;
[0050]圖11是示出根據本發明構思的示例性實施例的使用時間權重值和空間權重值來計算點運動矢量的方法的流程圖;
[0051]圖12是示出有規律地設置的畫面群組(GOP)的示例的示圖;
[0052]圖13和圖14是用於描述在圖11的方法中使用的時間權重值的示例的示圖;
[0053]圖15是示出根據本發明構思的示例性實施例的計算全局仿射參數的方法的流程圖;
[0054]圖16是根據本發明構思的示例性實施例的用於描述通過特徵點的分組來計算全局仿射參數的方法的在視頻幀中分組的運動矢量的示圖;
[0055]圖17是示出根據本發明構思的示例性實施例的提供穩定化的塊數據的方法的流程圖;
[0056]圖18是示出仿射變換的示例的示圖;
[0057]圖19是示出根據本發明構思的示例性實施例的計算穩定化的塊數據中的每一個像素數據的方法的流程圖;
[0058]圖20是用於描述通過圖19的方法進行的像素數據的補償的示圖;
[0059]圖21是根據本發明構思的示例性實施例的包括視頻解碼器的通信系統的框圖;
[0060]圖22是根據本發明構思的示例性實施例的包括視頻解碼器的計算機系統的框圖;
[0061]圖23是根據本發明構思的示例性實施例的圖22的計算機系統中可採用的接口的框圖。
【具體實施方式】
[0062]圖1是示出根據本發明構思的示例性實施例的對視頻幀進行穩定的方法的流程圖,圖2是示出被構造為執行根據本發明構思的示例性實施例的方法的視頻解碼器的框圖。
[0063]參考圖2,本發明構思的示例性實施例的視頻解碼器10包括解碼電路20和後處理電路30。
[0064]後處理電路30包括運動補償塊500和仿射運動估計塊100。
[0065]參考圖1和圖2,視頻解碼器10中的後處理電路30以宏塊尺寸為單位從視頻解碼器10中的解碼電路20接收視頻幀的重建的塊數據MBi和解碼信息DINF (S200)。在本公開中,宏塊並不限定於由特定標準指定的宏塊,並且宏塊可指示解碼的數據的任意單位,並且優選地是彼此相鄰或鄰近的像素的方形或近似於方形的矩形陣列。
[0066]後處理電路30中的仿射運動估計塊100基於重建的塊數據MBi和解碼信息DINF來提供全局仿射參數GAP (S400),其中,全局仿射參數GAP表示視頻幀(圖像)的仿射變換。
[0067]通過補償重建的塊數據Mbi的與仿射變換相應的仿射運動,後處理電路30中的運動補償塊500提供基於全局仿射參數GAP的穩定化的塊數據SBi (S600)。
[0068]如圖2所示,解碼電路20包括:熵解碼單元EDU、反量化單元IQU、逆變換單元ITU、運動補償單元MCU和環路濾波器LP。
[0069]熵解碼單元EDU解析輸入視頻流VIN以分離解碼信息DINF和圖像信息。例如,熵解碼單元EDU可包括可變長度解碼器(VLD)。解碼信息DINF被提供給根據本發明構思的示例性實施例的後處理電路30。解碼信息DINF可至少包括指示幀的序列號(從I到N的索引號)的畫面順序計數POC (參見,例如圖12)、指示選擇的幀的編碼模式的幀類型FT (參見,例如圖12和圖13中的1、B、P)、每個宏塊和殘差塊數據RBi的運動矢量Vi。反量化單元IQU和逆變換單元ITU被用於對有損編碼數據進行反向解碼,以恢復重建的圖片。反量化單元IQU對由編碼裝置量化的數據進行反量化。逆變換單元ITU對反量化單元IQU的輸出執行逆變換。運動補償單元MCU基於另外的信息並基於存儲在幀存儲器中的參考幀來補償當前幀畫面,以輸出運動補償後的數據。環路濾波器LP對運動補償後的數據進行濾波,以輸出重建的數據。同樣地,對宏塊尺寸的幀的各部分執行這樣的解碼處理,並且解碼電路20以宏塊為單位提供重建的塊數據MBi和解碼信息DINF。可針對整個幀的每個單位,提供解碼信息DINF的一部分。
[0070]後處理電路30包括仿射運動估計塊100和運動補償單元500。仿射運動估計塊100基於重建的塊數據MBi和解碼信息DINF來確定和提供全局仿射參數GAP。通過補償重建的塊數據Mbi的與確定的仿射變換相應的仿射運動,運動補償塊500提供基於全局仿射參數GAP的穩定化的塊數據SBi。
[0071]運動補償塊100包括:特徵點檢測單元(FPDU) 110、點矢量計算單元(PV⑶)120、仿射參數計算單元(APQJ) 130和軌跡(trajectory)單元(TU) 140。
[0072]特徵點檢測單元110基於從解碼電路20以宏塊為單位提供的重建的塊數據MBi和解碼信息DINF來檢測特徵點FP,其中,特徵點FP表示在幀(圖像)中包括的物體的邊緣或拐角。點矢量計算單元120可基於宏塊的塊運動矢量MVi來計算特徵點FP的點運動矢量PMV,其中,塊運動矢量MVi被包括在解碼信息DINF中。仿射參數計算單元130基於點運動矢量PMV以一個整個巾貞為單位來計算仿射參數AP。軌跡單元140基於針對至少一個巾貞的計算的仿射參數AP來估計全局仿射參數GAP,其中,全局仿射參數GAP表示幀(圖像)的仿射變換。
[0073]運動補償塊500包括仿射運動補償單元(AMCU)510和幀緩存器(FBUF)520。通過補償重建的塊數據MBi的與由全局仿射參數GAP表示的仿射變換相應的仿射運動,仿射運動補償單元510提供基於全局仿射參數GAP的穩定化的塊數據SBi。穩定化的塊數據SBi可被存儲在幀緩存器520中,以作為穩定化的圖像數據SIMG被輸出。
[0074]全局仿射參數GAP表示包括所有的幀(圖像)的平移、旋轉和縮放改變的仿射變換。由此,通過檢測特徵點FP並確定全局仿射參數GAP來補償檢測到的抖動運動,視頻圖像的質量可被提聞。
[0075]圖3是示出根據本發明構思的示例性實施例的確定全局仿射參數GAP的方法的流程圖。
[0076]參考圖2和圖3,特徵點檢測單元110和點矢量計算單元120基於重建的塊數據MBi和解碼信息DINF來計算特徵點FP的點運動矢量PMV,其中,特徵點FP表示在幀(圖像)中包括的物體的邊緣和拐角。特徵點檢測單元110通過分析重建的塊數據MBi來檢測特徵點FP (S410)。並且,點矢量計算單元120基於宏塊的塊運動矢量MVi來計算特徵點FP的點運動矢量PMV (S430),其中,塊運動矢量MVi被包括在來自解碼電路20的解碼信息DINF中。在示例性實施例中,特徵點FP的檢測和點運動矢量PMV的計算可以以宏塊為單位被一起執行。在另一個示例性實施例中,特徵點FP的檢測可貫穿一個整個幀來執行,然後,可針對在該一個幀中的特徵點FP依次計算點運動矢量PMV。特徵點FP的檢測和點運動矢量PMV的計算可按照光柵掃描順序來執行,將參考圖4、圖5和圖6對此進行描述。
[0077]仿射參數計算單元130和軌跡單元140可基於點運動矢量PMV以整個幀為單位來確定全局仿射參數GAP (S450)。
[0078]圖4、圖5和圖6是根據本發明構思的示例性實施例的用於描述基於光柵掃描的方案的視頻幀的部分的示圖,該基於光柵掃描的方案用於檢測特徵點和/或計算點運動矢量。
[0079]圖4示出針對幀(包括mXn個宏塊的幀,其中,m和η都是大於I的整數)的第一行中的宏塊MB (0,0)到MB (O, η)的特徵點FP的檢測。圖5示出針對幀的第二行中的宏塊MB (1,0)到MB (1,η)的特徵點FP的檢測。圖6示出針對幀的最後一行中的宏塊MB Cm,O)到MB (m, η)的特徵點FP的檢測。
[0080]如圖4、圖5和圖6所示,可通過按照光柵掃描順序來分析每個幀中的mXn個宏塊的重建的塊數據MBi,以執行特徵點FP的檢測以及檢測到的特徵點FP的點運動矢量PMV的計算。按照光柵掃描順序,可從第一行到最後一行,在每一行中從左向右,從第一宏塊MB(0,O)到最後一個宏塊MB (m,n),來掃描和分析這些宏塊。可使用各種常規的邊緣和拐角檢測方法來執行特徵點FP的檢測。將參考圖10來進一步描述點運動矢量PMV的計算。
[0081]特徵點FP的檢測可部分地基於相鄰點或相鄰宏塊的像素數據來執行。因此,如圖4的底部的關鍵處中所指示的,可設置預定尺寸WXW的窗口。尺寸W大於宏塊的邊尺寸。即使當前宏塊的所有重建的塊數據被接收到,FP可檢測面積仍可被限於當前宏塊的一部分,並且可延遲對當前宏塊的其他部分的分析,直到接收到下一個相鄰宏塊的數據為止。
[0082]圖7是示出根據本發明構思的示例性實施例的確定是否執行特徵點的檢測的方法的流程圖。
[0083]圖7示出針對一個幀來確定是否執行特徵點的檢測的方法。可針對被依次解碼的多個幀中的每一個來依次執行相同的處理。
[0084]參考圖2和圖7,點檢測單元110從解碼電路20接收(S210)指示本幀或者當前幀的編碼模式的幀類型FT。每個幀都可通過幀類型FT被認定為幀內幀(I幀)類型、預測幀(P幀)類型和雙向預測幀(B幀)類型中的一種。每個幀內(I)幀在不參考其它幀的情況下被編碼和解碼,每個P幀參考先前幀中的至少一個幀被編碼和解碼,每個B幀參考先前幀和後續幀中的至少一個幀被編碼和解碼。
[0085]點檢測單元110基於幀類型FT來確定本幀是否是I幀。如果本幀是I幀(Sll:是),則可省略特徵點的檢測(S415)和點運動矢量的計算。如果本幀不是I幀(S411:否)(即,當本幀是P幀或B幀時),則點檢測單元110接收本宏塊的重建的塊數據MB1、塊類型BTi和殘差塊數據RBi (S220)。點檢測單元110接下來基於塊類型BTi來確定本宏塊的編碼模式是否是幀間模式(S412)。如果本宏塊的編碼模式是幀內模式(S412:是),則可省略特徵點的檢測(S415)和點運動矢量的計算。如果本宏塊的編碼模式不是幀內模式(S412:否)(即,當本宏塊的編碼模式是幀間模式時),則點檢測單元110計算本宏塊的殘差塊數據RBi的幅值RSDi。例如,點檢測單元110可計算本宏塊的殘差塊數據中的像素數據的絕對值,並計算這些絕對值的和,以將該和確定為本宏塊的殘差塊數據的幅值。
[0086]點檢測單元110將殘差塊數據RBi的幅值RSDi與參考值TH進行比較(S414)。如果本宏塊的殘差塊數據RBi的幅值RSDi大於參考值TH (S414:是),則可省略特徵點的檢測和點運動矢量的計算。如果本宏塊的殘差塊數據RBi的幅值RSDi等於或小於參考值TH(S414:否),則點檢測單元110執行如上所述的特徵點的檢測和點運動矢量的計算。對下一個宏塊重複以上處理(S417),直到本幀中的所有宏塊都已被分析(S416:是)。
[0087]由此,可基於指示本幀的編碼模式的幀類型FT並基於指示本宏塊的編碼模式的塊類型BTi,來選擇性地執行特徵點的檢測和/或運動矢量的計算,其中,幀類型FT和塊類型BTi被包含在來自解碼電路20的解碼信息DINF中。
[0088]圖8是示出根據本發明構思的示例性實施例的用於描述決定的對檢測特徵點的省略的示圖。
[0089]當圖8中的宏塊MB (1,1)是幀內塊時或者當宏塊MB (1,I)是具有相對大的殘差塊數據的幅值RDSi的幀間塊時,特徵點運動矢量PMV的計算的值可不被信任。在這種情況中,如參考圖7所述,針對宏塊MB (1,1),可省略特徵點FP的檢測和點運動矢量PMV的計算。由此,通過省略針對I幀、幀內宏塊和某些幀間宏塊的特徵點FP的檢測和運動矢量PMV的計算,可減少處理的數據的計算量,從而提高後處理電路和包括該後處理電路的視頻解碼器的運算速度。
[0090]圖9是示出根據本發明構思的示例性實施例的使用空間權重值來計算特徵點運動矢量的方法的流程圖,並且圖10是用於描述在圖9的方法中使用的空間權重值的示例的示圖。
[0091]參考圖2、圖9和圖10,針對包括在本宏塊MBe中的每個特徵點FP,矢量計算單元120提取本宏塊MBe以及鄰近本宏塊MBe的相鄰宏塊MBa、MBb, MBc和MBd的塊運動矢量Mve、MVa、MVb、MVc和MVd (S432)。相鄰宏塊MBa、MBb、MBc和MBd的集合是與參考圖4、圖5和圖6所述的光柵掃描方案兼容的示例。相鄰宏塊的集合可根據用於檢測特徵點的掃描方案而變化。
[0092]塊運動矢量MVi可以以預測運動矢量(PMVi)和運動矢量差MVDi的形式來提供。跳過模式的宏塊滿足MVi=PMVi,並且幀間模式的宏塊滿足MVi=MVDi+PMVi。
[0093]矢量計算單元120計算表示每個特徵點FP與提取的塊運動矢量MVa、MVb、MVc,MVd和MVe之間的空間相關性的空間權重值Wa、Wb、Wc、Wd和We (S434 )。例如,空間權重值Wa、Wb、Wc、Wd和We可被計算為在每個特徵點FP與參考宏塊的中心點以及相鄰宏塊的中心點之間的距離 Da、Db、Dc、Dd 和 De 的倒數值 Wa=l/Da、Wb=l/Db、Wc=l/Dc、Wd=l/Dc 和 We=I/De0
[0094]矢量計算單元120使用空間權重值Wa、Wb、Wc, Wd和We來計算提取的塊運動矢量 MVa、MVb、MVc、MVd 和 MVe 的加權平均值(Wa*MVa+Wb*MVb+Wc*MVc+Wd*MVd+We*MVe) /(ffa+ffb+ffc+ffd+ffe),以將該加權平均值確定為每個特徵點的點運動矢量PMV (S436)。
[0095]圖11是示出根據本發明構思的示例性實施例的使用時間權重值和空間權重值來計算點運動矢量的方法的流程圖,圖12是示出有規律地設置的畫面的群組(GOP)的示例的示圖,圖13和圖14是用於描述在圖11的方法中使用的時間權重值的示例的示圖。
[0096]首先,參照圖11來描述幀類型的設置。雖然圖11示出了通過有規律地分配I畫面的具有正常大小N的GOP的有規律的設置,但是也可無規律地設置GOP的大小和結構。在本公開中,畫面可與逐行掃描方案中的幀或隔行掃描方案中的場相應。
[0097]GOP的大小可通過分配的I畫面的間隔來確定,並且,GOP的結構可通過分配的P畫面和/或B畫面的排列來確定。可通過P和/或B圖片的恰當的排列來減少編碼後的數據的比特數。因此,通過限制GOP的大小(即,通過有規律地或無規律地分配在不需要參考其它畫面的情況下被編碼的I畫面)可防止參考其它畫面被編碼的幀間畫面以及通過連續的幀間畫面的誤差傳播。
[0098]圖12中的畫面順序計數POC表示顯示順序,並且根據GOP的結構,該顯示順序可不與編碼順序不同。第一畫面(被分配為I畫面)到第N個畫面形成第一畫面群組G0P1。並且,第N+1畫面(被分配為下一個I畫面)到第2N個畫面形成第二畫面群組G0P2。以相同的方式,從第2N+1個畫面開始的N個畫面形成第三畫面群組G0P3。
[0099]因為參考畫面根據畫面類型而不同,因此該顯示順序可以與編碼順序不同。例如,P型的第四畫面必須在B型的第二畫面和第三畫面之前被解碼,然後,第二畫面和第三畫面可參考解碼後的第四畫面來解碼。
[0100]根據H.264標準,宏塊的可用的編碼模式和解碼模式可被主要地分成幀間模式和幀內模式。幀間模式可包括五個運動補償模式:跳過、16X16、8X16、16X8和8X8。並且,8X8運動補償模式可包括針對每個8X8子塊的三個子模式:8X4、4X8和4X4。幀內模式可包括四個16X 16幀內預測模式和九個4X4幀內預測模式。
[0101]參考圖2、圖10到圖14,針對在本宏塊MBe中包括的每個特徵點FP,矢量計算單元120提取本宏塊MBe以及鄰近本宏塊MBe的相鄰宏塊MBa、MBb、MBc和MBd的塊運動矢量Mve、MVa、MVb、M Vc 和 MVd (S441)。
[0102]矢量計算單元120計算表示每個特徵點FP與相鄰宏塊的塊運動矢量MVa、MVb、MVc和MVd之間的時間相關性的時間權重值Ta、Tb、Tc和Td (S442 )。例如,時間權重值Ta、Tb、Tc和Td可被計算為包括本宏塊的本幀的幀編號與包括相鄰宏塊的其它幀的幀編號之間的差的倒數值。如果如圖13所示特徵點FP位於P0C=h的P幀中並且被參考的宏塊RMB位於P0C=k的先前的I或P幀中,則時間權重可被設置為幀編號h與k之間的差(h-k)的倒數值I/ (h-k)。如果如圖14所示特徵點FP位於P0C=r的B幀中並且被參考的宏塊RMBl位於POC=S的先前的I或P幀中,則時間權重可被設置為幀編號r與s之間的差(r-s)的倒數值I/ (r-s)。以相同方式,如果如圖14所示特徵點FP位於P0C=r的B幀中並且被參考的宏塊RMB2位於P0C=q的後續的I或P幀中,則時間權重可被設置為幀編號q與r之間的差(q-r)的倒數值I/ (q-r)0本宏塊MBe的塊運動矢量MVe的時間權重值Te可被設置為
O
[0103]矢量計算單元120通過使用時間權重值來調整提取的塊運動矢量以計算被縮放的塊運動矢量 SMVa=Ta*MVa、SMVb=Tb*MVb, SMVc=Tc*MVc、SMVd=Td*MVd 和 SMVe=l*MVe
(5443)。
[0104]如參考圖10所述,矢量計算單元120還計算表示在每個特徵點FP與提取的塊運動矢量MVa、MVb、MVc, MVd和MVe之間的空間相關性的空間權重值Wa、Wb、Wc、Wd和We
(5444)。
[0105]矢量計算單元120使用空間權重值Wa、Wb、Wc、Wd和We來計算(S445)被縮放的塊運動矢量 SMVa、SMVb、SMVc、SMVd 和 SMVe 的加權平均值(Wa*SMVa+Wb*SMVb+Wc*SMVc+Wd*SMVd+ffe*SMVe) / (ffa+ffb+ffc+ffd+ffe),以將該加權平均值確定為每個特徵點的點運動矢量PMV。
[0106]可使用參考圖9到圖14描述的空間權重值Wa、Wb、Wc、Wd和We和/或時間權重值Ta、Tb、Tc、Td和Te來準確地確定點運動矢量PMV。
[0107]圖15是示出根據本發明構思的示例性實施例的計算全局仿射參數GAP的方法的流程圖,圖16是根據本發明構思的示例性實施例的用於描述通過特徵點的分組來計算全局仿射參數的方法的示圖。
[0108]參考圖2、圖15和圖16,仿射參數計算單元130將本幀中的特徵點分組到多個點群組中(S451)。圖16示出第一點群組PGl和第二點群組PG2中的作為箭頭的點運動矢量的分布的非限制性示例。可不同地確定點群組的數量和形狀。
[0109]仿射參數計算單元130基於特徵點的點運動矢量在點群組(例如,PGl和PG2)中選擇參考點群組(S453),從而使得被選擇的參考點群組與幀(圖像)中的背景相應。例如,仿射參數計算單元130計算點群組的分布值,從而使得每個分布值都表示在每個點群組中的特徵點的點運動矢量的方向和幅值分布,並將分布值與參考值進行比較。當點群組的分布值小於參考值時,仿射參數計算單元130將該點群組確定(選擇)為參考點群組。在圖16的示例中,可將具有較小分布值的第一點群組PGl確定為參考點群組。隨著分布值減小,點群組與背景相應的可能性增加。相反,隨著分布值減小,點群組與在背景中移動的物體相應的可能性增加。
[0110]仿射參數計算單元130基於在參考點群組中包括的特徵點的點運動矢量來計算本幀的仿射參數AP (S455)。因此,通過選擇背景並且排除移動的物體,可準確地計算仿射參數AP。
[0111]在示例性實施例中,軌跡單元140基於計算的本幀和至少一個先前幀的仿射參數AP來估計仿射參數(S457)。軌跡單元140可將估計的仿射參數提供作為用於補償後續幀的重建的塊數據的全局仿射參數GAP (S459)。
[0112]在另一個示例性實施例中,軌跡單元140可被省略。在這種情況中,計算的本幀的仿射參數AP可被提供作為用於補償後續幀的重建的塊數據的全局仿射參數GAP。
[0113]圖17是示出根據本發明構思的示例性實施例的提供穩定化的塊數據的方法的流程圖,圖18是示出仿射變換的示例的示圖。
[0114]參考圖2、圖17和圖18,仿射運動補償單元510基於全局仿射參數GAP來計算補償仿射參數CAP (S610),其中,補償仿射參數CAP表示由全局仿射參數GAP表示的仿射變換的逆變換。通常,仿射變換可被表示為2X2矩陣,並且全局仿射參數可為該矩陣的分量。在這種情況中,該逆變換可被表示為該2X2矩陣的逆矩陣,並且補償仿射參數CAP可為該逆矩陣的分量。
[0115]可基於補償仿射參數CAP和重建的塊數據MBi來計算穩定化的塊數據SBi。
[0116]例如,仿射運動補償單元510可基於補償仿射參數CAP來將像素的像素坐標變換為像素的補償坐標(S630)。在圖18中,Pl到P8和Pc指示像素坐標,並且Ρi到P8』和Pc』指示Pl至P8和Pc的相應的補償坐標。使用補償仿射參數CAP,手抖動噪聲可被補償,其中,在圖18中,手抖動噪聲由平移TR和旋轉RT來表示。儘管這種改變未在圖18中按比例表示,但是示出的全局仿射參數GAP代表包括所有的幀(圖像)的平移、旋轉和縮放改變的仿射變換。
[0117]如進一步參考圖19和圖20所描述的,仿射運動補償單元510基於被映射到補償坐標Ρi到P8』和Pc』的重建的塊數據MBi來計算被映射到像素坐標Pl到P8和Pc的穩定化的塊數據SBi中的每一個像素數據(S650)。
[0118]圖19是示出根據本發明構思的示例性實施例的計算穩定化的塊數據中的每一個像素數據的方法的流程圖,圖20是用於描述通過圖19的方法進行的像素數據的補償的示圖。
[0119]參考圖2、圖19和圖20,仿射運動補償單元510設置鄰近(例如,圍繞)每個當前像素P的相鄰像素的補償群組。圖20示出在該補償群組中的九個相鄰像素的非限制性示例,並且相鄰像素的數量可被不同地選擇。在圖20中,P指示一個像素的當前像素坐標,Pa、Pb、Pc、Pd、Pe、Pf、Pg、Ph和Pi指示相鄰像素的補償坐標。例如,可基於像素坐標與補償坐標之間的距離來設置補償群組。
[0120]仿射運動補償單元510計算與每個當前像素的像素坐標P與在其補償組中的相鄰像素的補償坐標Pa、Pb、Pc、Pd、Pe、Pf、Pg、Ph和Pi之間的差a、b、C、d、e、f、g、h和i的倒數值 l/a、l/b、l/c、l/d、l/e、l/f、l/g、l/h 和 1/i 相應的權重值 Wa=l/a、Wb=l/b、Wc=l/c、Wd=I/d、ffe=l/e> Wf=I/f > Wg=I/g、Wh=I/h 和 Wi=l/i (S654)。
[0121]仿射運動補償單元510計算被映射到補償群組中的補償坐標Pa、Pb、Pc、Pd、Pe、Pf、Pg、Ph 和 Pi 的重建的塊數據 D (Pa),D (Pb),D (Pc),D (Pd),D (Pe),D (Pf),D (Pg)、D (Ph)和 D (Pi)的加權平均值 SUM[Wk*D (Pk) ]/SUM[ffk] (k=a, b, c, d, e, f, g, h, i)(S656),以將該加權平均值確定為被映射到像素坐標P的穩定化的塊數據的每個像素數據D (P)。
[0122]圖21是根據本發明構思的示例性實施例的包括視頻解碼器的通信系統的框圖。
[0123]參考圖21,通信系統900包括發送器910、接收器920和信道930,其中發送器910包括編碼器911,接收器920包括解碼器921,並且信道930在發送器910和接收器920之間。
[0124]發送器910將由編碼器911根據諸如H.264的預定標準編碼的發送比特流TBS輸出到信道930。接收器920從信道930接收與發送比特流TBS相應的接收比特流RBS,並且解碼器921對接收比特流RBS執行解碼處理。
[0125]解碼器911包括根據本發明構思的示例性實施例的圖像穩定化後處理器(ISPP)921。如上所述,後處理器921基於重建的塊數據MBi和解碼信息DINF來確定全局仿射參數GAP,並通過補償重建的塊數據MBi的與仿射變換相應的仿射運動,來提供基於全局仿射參數GAP的穩定化的塊數據SBi,其中,全局仿射參數GAP表示幀(圖像)的仿射變換。
[0126]信道930可以是具有有限帶寬的無線介質。在無線信道的情況中,發送比特流TBS被轉換為適用於無線通信的格式,並且可由接收器920基於接收比特流RBS來恢復原始比特流TBS。在任一情況中,在發送比特流TBS與接收比特流RBS之間都會存在數據丟失(例如,比特誤差)。根據H.264的靈活宏塊排序(FM0),宏塊以預定的條帶群組順序被發送以增強丟失的數據的恢復。解碼器921可使用在一個條帶群組中的宏塊來恢復另一個條帶群組或宏塊的丟失。
[0127]圖22是示出根據本發明構思的示例性實施例的包括視頻解碼器的計算機系統的框圖。
[0128]參考圖22,計算機系統1000包括:處理器1010、存儲器裝置1020、存貯器裝置1030、輸入/輸出裝置1040、電源1050和圖像傳感器1060。儘管未在圖22中示出,但是計算機系統1000還可包括與顯卡、音效卡、存儲器卡、通用串行總線(USB)裝置和/或其它電子裝置通信的已知類型的埠。
[0129]處理器1010可執行各種計算和任務。處理器1010包括視頻編碼器/解碼器(編解碼器)1011。編解碼器1011可包括視頻解碼器和/或用於執行根據參考圖1到圖20描述的示例性實施例的方法的可執行代碼。另外,編解碼器1011可包括用於對被提供到視頻解碼器的數據進行編碼的視頻編碼器。在示例性實施例中,視頻編碼器和視頻解碼器可被合併在同一半導體集成電路和/或相應的軟體中。根據各實施例,處理器1010可以是微處理器或中央處理單元(CPU)。處理器1010經由地址總線、控制總線和/或數據總線與存儲器裝置1020、存貯器裝置1030以及輸入/輸出裝置1040進行通信。在某些示例性實施例中,處理器1010可被連接到外部總線,諸如外圍組件互連(PCI)總線。存儲器裝置1020存儲用於操作計算機系統1000的數據。例如,存儲器裝置1020可使用動態隨機存取存儲器(DRAM)裝置、移動DRAM裝置、靜態隨機存取存儲器(SRAM)裝置、相變隨機存取存儲器(PRAM)裝置、鐵電隨機存取存儲器(FRAM)裝置、阻變式隨機存取存儲器(RRAM)裝置和/或磁性隨機存取存儲器(MRAM)裝置來實現。存儲裝置可包括:固態驅動器(SSD)、硬碟驅動器(HDD)、緻密盤只讀存儲器(⑶-ROM)等。輸入/輸出裝置1040可包括人類用戶輸入裝置(例如,鍵盤、鍵區、滑鼠等)和輸出裝置(例如,印表機、顯示裝置等)。電源1050供應用於操作計算機系統1000的電壓。
[0130]圖像傳感器1060經由總線或其它通信鏈路與處理器1010進行通信。圖像傳感器1060可與處理器1010集成到一個半導體晶片中,或者圖像傳感器1060和處理器1010可以被實現為獨立的晶片。
[0131]計算機系統1000可按各種形式封裝,諸如,層疊封裝件(PoP)、球柵陣列(BGA)、晶片級封裝件(CSP)、塑料引線晶片載體(PLCC)、塑料雙列直插式封裝(PDIP)、裸片格柵封裝件(Die in Waffle Pack)、裸片級晶片形式(Die in Wafer Form)、板上晶片(COB)、陶瓷雙列直插式封裝件(CERDIP)、塑料方形扁平封裝(公制)(MQPF)、薄型方形扁平封裝(TQFP)、小外型集成電路(SOIC)、窄間隔小外型封裝件(SSOP)、薄型小外型封裝件(TSOP)、封裝件中系統(SIP)、多晶片封裝件(MCP)、晶片級製造封裝件(WFP)或晶片級加工的堆疊式封裝件(WSP)。
[0132]計算機系統1000可以是使用三維圖像傳感器的任意計算機系統。計算機系統1000可包括:數字相機、行動電話、智慧型電話、可攜式多媒體播放器(PMP)、個人數字助理(PDA)等。
[0133]圖23示出根據本發明構思的示例性實施例的圖22的計算機系統中可採用的接口的框圖。
[0134]參考圖23,計算機系統1100可由使用或支持移動行業處理器接口(MIPI?)接口的數據處理裝置來實現。計算機系統1100可包括:應用處理器1110、三維圖像傳感器1140、顯示裝置1150等。應用處理器1110的相機串行接口(CSI)主機1112經由相機串行接口(CSI)與三維圖像傳感器1140的CSI裝置1141進行串行通信。CSI主機1112包括串並轉換器(DES),並且CSI裝置1141包括串行器(SER)。應用處理器1110的顯示串行接口(DSI)主機1111經由顯示串行接口(DSI)與顯示裝置1150的DSI裝置1151執行串行通信。
[0135]DSI主機1111包括串行器(SER),並且DSI裝置1151包括串並轉換器(DES)。計算機系統1100還可包括執行與應用處理器1110的通信的射頻(RF)晶片1160。計算機系統1100的物理層(PHY) 1113和RF晶片1160的物理層(PHY) 1161可基於MIPI? DigRFSM來執行數據通信。應用處理器1110還可包括控制PHY1161的數據通信的DigRFSM主裝置1114。
[0136]計算機系統1100還可包括:全球定位系統(GPS)1120、存貯器1170、MIC1180、DRAM裝置1185和揚聲器1190。另外,計算機系統1100可使用超寬帶(UWB) 1210、無線區域網(WLAN) 1220、微波接入全球互操作性(WIMAX) 1230等來執行通信。但是,計算機系統1100的結構和接口並不限於此。
[0137]正如本領域技術人員將認識到的,本發明的實施例可被實現為專用硬體系統或晶片、方法、電腦程式產品或者在一個或更多個計算機可讀介質中實現的電腦程式產品,其中,所述一個或更多個計算機可讀介質具有被實現在其上的計算機可讀程序代碼。該計算機可讀程序代碼可被提供給通用計算機、專用計算機或其它可編程數據處理設備的處理器。該計算機可讀介質可以是計算機可讀信號介質或計算機可讀存儲介質。該計算機可讀存儲介質可以是任何有形介質,該有形介質可包含或存儲由指令執行系統、設備或裝置使用的或與結合的程序。
[0138]本發明構思的某些示例性實施例可被應用於對視頻數據進行編碼和解碼的任意裝置和/或系統。本發明構思的某些特定的示例性實施例可被應用於可與諸如MPEG、H.261、H.262,H.263和H.264的標準兼容的視頻解碼器。本發明構思的某些示例性實施例可適用於某些【技術領域】,諸如=CATV (光網絡、銅線等上的有線電視)、DBS (直播衛星視頻業務)、DSL (數字用戶線路視頻服務)、DTTB (數字地面電視廣播)、ISM (交互式存儲介質(光碟等))、MMM (多媒體郵件)、MSPN (通過分組網絡進行的多媒體業務)、RTC (實時會話業務(視頻會議、可視電話等))、RVS (遠程視頻監控)、SSM (串行存儲介質(數字VTR等))。
[0139]上文是對本發明構思的示例性實施例的說明,不可被理解為對本發明的限制。儘管已經描述了一些示例性實施例,但是本領域技術人員將會容易地認識到,在不實質性地脫離本發明構思的新穎教導和優點的情況下,對所述示例性實施例的許多修改都是可能的。因此,所有這些修改都意圖被包括在由權利要求規定的本發明構思的範圍內。因此,應當理解,上文是各種示例性實施例的說明,並且本發明構思不被理解為受限於公開的特定示例性實施例,並且,對公開的示例性實施例以及其它示例性實施例的修改意圖被包括在權利要求的範圍內。
【權利要求】
1.一種對視頻進行穩定化的方法,包括: 從解碼電路以宏塊為單位接收視頻幀的重建的塊數據和解碼信息; 基於重建的塊數據和解碼信息來提供全局仿射參數,其中,所述全局仿射參數表示一個幀的仿射變換;以及 通過補償重建的塊數據的與仿射變換相應的仿射運動,提供基於全局仿射參數的穩定化的塊數據。
2.如權利要求1所述的方法,其中,全局仿射參數表示包括所有的幀的平移、旋轉和縮放改變的仿射變換。
3.如權利要求1所述的方法,其中,提供全局仿射參數的步驟包括: 基於重建的塊數據和解碼信息來計算特徵點的運動矢量,其中,所述特徵點表示在幀中包括的物體的邊緣或拐角;以及 基於特徵點運動矢量以幀為單位確定全局仿射參數。
4.如權利要求3所述的方法,其中,通過基於光柵掃描順序分析每個幀中的多個宏塊的重建的塊數據,來計算特徵點運動矢量。
5.如權利要求3所述的方法,其中,計算特徵點運動矢量的步驟包括: 通過分析重建的 塊數據來檢測特徵點;以及 基於宏塊的塊運動矢量來計算特徵點的運動矢量,其中,塊運動矢量被包括在來自解碼電路的解碼信息中。
6.如權利要求5所述的方法,其中,檢測特徵點的步驟包括: 基於宏塊的編碼模式針對每個宏塊確定是否執行特徵點的檢測。
7.如權利要求6所述的方法,其中,確定是否執行特徵點的檢測的步驟包括: 省略針對編碼是幀內模式的宏塊執行特徵點的檢測的過程。
8.如權利要求6所述的方法,其中,確定是否執行特徵點的檢測的步驟包括: 計算編碼模式是幀間模式的每個宏塊的殘差塊數據的幅值,其中,所述殘差塊數據被包括在解碼信息中;以及 如果宏塊的殘差塊數據的幅值大於參考值,則省略針對所述宏塊執行特徵點的檢測的過程。
9.如權利要求8所述的方法,其中,計算殘差塊數據的幅值的步驟包括: 計算每個宏塊的殘差塊數據中的像素數據的絕對值;以及 計算所述絕對值的和,以將該和用作每個宏塊的殘差塊數據的幅值。
10.如權利要求3所述的方法,其中,如果當前幀是幀內幀,則省略計算特徵點運動矢量的過程。
11.如權利要求5所述的方法,其中,計算特徵點的運動矢量的步驟包括: 針對包括在當前宏塊中的每個特徵點,提取當前宏塊和鄰近當前宏塊的相鄰宏塊的塊運動矢量; 計算表示在每個特徵點與提取的塊運動矢量之間的空間相關性的空間權重值;以及使用空間權重值來計算提取的塊運動矢量的加權平均值,以將所述加權平均值確定為每個特徵點的運動矢量。
12.如權利要求11所述的方法,其中,空間權重值被計算為在每個特徵點與參考宏塊的中心點以及相鄰宏塊的中心點之間的距離的倒數值。
13.如權利要求5所述的方法,其中,計算特徵點的運動矢量的步驟包括: 針對包括在當前宏塊中的每個特徵點,提取當前宏塊的塊運動矢量和鄰近當前宏塊的相鄰宏塊的塊運動矢量; 計算表示在每個特徵點和相鄰宏塊的塊運動矢量之間的時間相關性的時間權重值;以及 通過使用時間權重值來調整提取的塊運動矢量以計算被縮放的塊運動矢量; 計算表示在每個特徵點與提取的塊運動矢量之間的空間相關性的空間權重值;以及使用空間權重值來計算被縮放的塊運動矢量的加權平均值,以將所述加權平均值確定為每個特徵點的點運動矢量。
14.如權利要求13所述的方法,其中,時間權重值被計算為在包括當前宏塊的當前幀的幀編號與包括相鄰宏塊的其它幀的幀編號之間的差的倒數值。
15.如權利要求3所述的方法,其中,以幀為單位確定全局仿射參數的步驟包括: 將當前幀中的特徵點分組到多個點群組中; 基於特徵點的點運動矢量,在點群組中選擇參考點群組;以及 基於在參考點群組包括中的特徵點的點運動矢量來計算當前幀的仿射參數。
16.如權利要求15所述的方法,其中,確定參考點群組的步驟包括: 計算點群組的分布值,其中,每個分布值都表示在每個點群組中的特徵點的點運動矢量的方向和幅值分布; 將分布值與參考值進行比較;以及 當點群組的分布值小於參考值時,將所述點群組確定為參考點群組。
17.如權利要求15所述的方法,其中,以幀為單位確定全局仿射參數的步驟還包括: 將計算的當前幀的仿射參數提供作為用於補償後續幀的重建的塊數據的全局仿射參數。
18.如權利要求15所述的方法,其中,以幀為單位確定全局仿射參數的步驟還包括: 基於計算的當前幀和至少一個先前幀的仿射參數來估計仿射參數;以及 將估計的仿射參數提供作為用於補償後續幀的重建的塊數據的全局仿射參數。
19.如權利要求1所述的方法,其中,提供穩定化的塊數據的步驟包括: 基於全局仿射參數來計算補償仿射參數,其中,所述補償仿射參數表示由全局仿射參數表示的仿射變換的逆變換;以及 基於補償仿射參數和重建的塊數據來計算穩定化的塊數據。
20.如權利要求19所述的方法,其中,計算穩定化的塊數據的步驟包括: 基於補償仿射參數來將像素的像素坐標變換為像素的補償坐標;以及 基於被映射到補償坐標的重建的塊數據來計算被映射到像素坐標的穩定化的塊數據中的每個像素數據。
21.如權利要求20所述的方法,其中,計算穩定化的塊數據中的每個像素數據的步驟包括: 設置鄰近每個像素的相鄰像素的補償群組; 計算與在每個像素的像素坐標與在補償群組中的相鄰像素的補償坐標之間的差的倒數值相應的權重值;以及 計算被映射到補償組中的相鄰像素的補償坐標的重建的塊數據的加權平均值,以將所述加權平均值確定為被映射到像素坐標的穩定化的塊數據中的每個像素數據。
22.一種視頻解碼器,包括: 解碼電路,被配置為以宏塊為單位提供重建的塊數據和解碼信息;以及後處理電路,被配置為: 基於重建的塊數據和解碼信息來確定全局仿射參數,其中,所述全局仿射參數表不中貞的仿射變換; 通過補償重建的塊數據的與仿射變換相應的仿射運動,提供基於全局仿射參數的穩定化的塊數據。
23.如權利要求22所述的視頻解碼器,其中,後處理電路包括: 仿射運動估計塊,被配置為基於重建的塊數據和解碼信息來提供全局仿射參數;以及 運動補償塊,被配置為提供基於全局仿射參數的穩定化的塊數據。
24.如權利要 求23所述的視頻解碼器,其中,仿射運動估計塊被被配置為以幀為單位更新全局仿射參數。
25.如權利要求23所述的視頻解碼器,其中,來自解碼電路的重建的塊數據的提供以及來自運動補償塊的穩定化的塊數據的提供被執行為以宏塊為單位的流水線處理。
26.一種視頻解碼器的後處理單元,包括: 特徵點檢測單元,被配置為基於從解碼電路以宏塊為單位提供的重建的塊數據和解碼信息來檢測特徵點,其中,所述特徵點表示在幀中包括的物體的邊緣或拐角; 點矢量計算單元,被配置為基於宏塊的塊運動矢量來計算特徵點的點運動矢量,其中,所述塊運動矢量被包括在解碼信息中; 仿射參數計算單元,被配置為基於點運動矢量以幀為單位計算仿射參數; 軌跡單元,被配置為基於針對至少一個幀的計算的仿射參數來估計全局仿射參數,其中,所述全局仿射參數表示幀的仿射變換;以及 仿射運動補償單元,被配置為通過補償重建的塊數據的與仿射變換相應的仿射運動,提供基於全局仿射參數的穩定化的塊數據。
27.—種對視頻進行穩定化的方法,包括: 從解碼電路以宏塊為單位接收視頻幀的重建的塊數據和解碼信息; 基於重建的塊數據和解碼信息來計算特徵點的運動矢量,其中,所述特徵點表示在幀中包括的邊緣或拐點,其中,通過以光柵掃描順序分析幀中的多個宏塊的重建的塊數據,來計算特徵點運動矢量。
28.根據權利要求27所述的方法,還包括: 基於特徵點運動矢量以幀為單位來確定全局仿射參數,其中,所述全局仿射參數表示幀的仿射變換。
【文檔編號】H04N19/114GK104053001SQ201410099194
【公開日】2014年9月17日 申請日期:2014年3月17日 優先權日:2013年3月15日
【發明者】權寧圭, 鄭憿湲, 山內英樹, 李雄熙, 鄭詠凡 申請人:三星電子株式會社