TWI449432B - 解碼端移動向量導出方法 - Google Patents
解碼端移動向量導出方法 Download PDFInfo
- Publication number
- TWI449432B TWI449432B TW099142062A TW99142062A TWI449432B TW I449432 B TWI449432 B TW I449432B TW 099142062 A TW099142062 A TW 099142062A TW 99142062 A TW99142062 A TW 99142062A TW I449432 B TWI449432 B TW I449432B
- Authority
- TW
- Taiwan
- Prior art keywords
- motion vector
- decoding end
- flag
- vector derivation
- dmvd
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本發明係有關於一種資料編碼/解碼方法,且特別有關於一種解碼端移動向量導出(Decoder-side Motion Vector Derivation,以下簡稱為DMVD)方法。
於視訊編碼中,可利用圖像序列中發現之時序(temporal)與空間(spatial)相關來減少位元率/提升編碼效率。通常而言,移動補償畫框間預測(motion compensated inter-frame prediction)很大程度地影響最終之壓縮效率。諸如移動向量(Motion Vector,以下簡稱為MV)資料與參考圖像索引之移動資訊係於編碼端獲得並編碼於位元流中,因此解碼器可基於已解碼之移動資訊而簡單地執行移動補償預測。然而,移動資訊之編碼需要很高之位元率。因此,提出一種DMVD機制。
於編碼端與解碼端可利用模板匹配(Template Matching,以下簡稱為TM)演算法來決定移動資訊。此外,對於預測(prediction,以下簡稱為P)圖像之不同宏區塊(MacroBlock,以下簡稱為MB)類型,編碼額外之旗標以標示DMVD之使用。第1圖係P圖像之傳統TM機制的示意圖。通常而言,傳統TM機制係利用鄰近於預測目標區塊之區塊的像素以及於重建(already reconstructed)參考圖像中之像素之間的相關。如第1圖所示,當前圖像中之DMVD目標區塊102具有N×
N像素之區塊大小,且為MB 106之一部分;此外,自DMVD目標區塊102之上方與左側擴充M個像素來定義反轉L型模板104。此處,反轉L型係指L型相對於水平軸之鏡像。應注意,反轉L型模板104僅覆蓋重建像素。為清楚起見,當前圖像中之重建像素係以斜線表示。隨後,於每一參考圖像中定義以候選MV為中心之小搜尋範圍。於一個或多個重建參考圖像(於時間上早於當前圖像)中之至少一個置換模板區域(displaced template region),係藉由最小化當前圖像中之反轉L型模板104以及重建參考圖像中之一置換模板之間的失真值(例如,絕對差值和(Sum of Absolute Difference,以下簡稱為SAD))而決定。如第1圖所示,由反轉L型模板104與置換模板108之間的最小失真值可找出置換模板108。以此方式,藉由TM機制可成功地決定DMVD目標區塊102之最終MV 110。
阿亨工業大學(RWTH Aachen University)首先提出可用於VCEG-AG16與VCEG-AH15r1中之DMVD。其支援之MB類型包含P_SKIP MB、P_L0_16x16 MB、P_L0_L0_16x8 MB、P_L0_L0_8x16 MB、以及具有四個P_L0_8x8子宏區塊(Sub-MacroBlock,以下簡稱為SubMB)之P_8x8 MB。對於省略模式(skip mode)中之MB(亦即,P_SKIP MB),N等於16,M等於4,且利用單一參考圖像來尋找DMVD目標區塊102之最終MV 110。此外,當SKIP_MV不等於TM_MV時,其中SKIP_MV為藉由H.264標準定義之MV而TM_MV為藉由上述TM機制找出之最終MV,每一MB即發送一旗標tm_skip_active_flag,上述旗標設定當前16x16 MB是否使用DMVD編
碼或傳統MV編碼。因此,當解碼器解碼一MB時,解碼器必須執行TM操作以決定TM_MV,並隨後比較TM_MV與SKIP_MV以判斷自編碼器產生之位元流中是否編碼旗標tm_skip_active_flag。對於非省略模式中之MB(亦即,P_L0_16x16 MB、P_L0_L0_16x8 MB、P_L0_L0_8x16 MB、以及具有四個P_L0_8x8 SubMB之P_8x8 MB),可利用多個參考圖像來尋找DMVD目標區塊102之最終MV 110。對於P_L0_16x16 MB,N等於16,M等於4,且每16x16 MB即發送一旗標tm_active_flag,上述旗標設定當前16x16 MB是否使用DMVD編碼或傳統MV編碼。對於P_L0_L0_16x8 MB,N等於8,M等於4,且每16x8 MB即發送一旗標tm_active_flag,上述旗標設定當前16x8 MB分區是否使用DMVD編碼或傳統MV編碼。對於P_L0_L0_8x16 MB,N等於8,M等於4,且每8x16 MB即發送一旗標tm_active_flag,上述旗標設定當前8x16 MB分區是否使用DMVD編碼或傳統MV編碼。對於P_L0_8x8 SubMB,N等於4,M等於4,且每8x8 SubMB即發送一旗標tm_active_flag,上述旗標設定當前8x8 SubMB分區是否使用DMVD編碼或傳統MV編碼;此外,由於N小於8,故不允許8x8變換。由此可見,對於TM機制支援之全部區塊類型,傳統反轉L型模板之模板大小M皆相等(亦即,M=4)。
於TM階段中,計算反轉L型模板104之失真值(例如,SAD)以作為於搜尋範圍中找出之每一候選MV之成本(cost)。於多假設(multi-hypothesis)預測情況下,可為DMVD目標區塊102以最低成本決定一組最後MV,而不是於單假設(single-hypothesis)預測情況
下以最低成本僅識別一個最後MV。隨後,依據傳統設計,利用簡單平均操作(average operation)來決定最終預測區塊。
簡言之,對於省略模式中之MB,可利用單一參考圖像以及單一假設,並依據以一候選MV為中心之搜尋範圍執行整體像素全搜尋(integer-pel full search)來檢查多個候選MV。此外,子像素細化(sub-pei refinement)可應用於已偵測之整體MV。對於非省略模式中之MB,可利用多個參考圖像以及多個假設,並依據多個參考圖像以及多個假設來執行整體像素全搜尋。此外,子像素細化可應用於每一已偵測之整體MV,且可藉由對子像素MV預測執行簡單平均計算來獲得最終預測區塊。
為進一步減少搜尋位置數,亦提出了一種基於候選之搜尋機制。第2圖係依據先前基於候選之搜尋機制之利用鄰近重建區塊之MV作為DMVD目標區塊202之候選MV的示意圖。如第2圖所示,利用鄰近重建區塊A與C(若右上角重建區塊C可用)或A與C’(若右上角重建區塊C不可用)之MV作為候選MV來搜尋DMVD目標區塊202之最終MV。換言之,相較於上述TM全搜尋機制,基於候選之搜尋機制將每一參考圖像之搜尋位置數減少至2。此外,子像素細化亦可省略或適用於利用基於候選之搜尋機制找出之每一整體MV。
如上所述,當於編碼端發現SKIP_MV等於TM_MV時,P_SKIP MB之旗標tm_skip_active_flag並未編碼於位元流中。當分析由編碼器產生之位元流時,解碼器必須執行TM操作以決定TM_MV並隨後檢
查SKIP_MV是否等於TM_MV。當SKIP_MV等於TM_MV時,解碼器知道於位元流中並未編碼P_SKIP MB之旗標tm_skip_active_flag。然而,當參考圖像中具有一個錯誤參考像素時,獲得之TM_MV可能不正確。當旗標tm_skip_active_flag已編碼於位元流中但由於錯誤參考像素而發現SKIP__MV等於TM_MV時,解碼器將錯誤地認為並未發送P_SKIP MB之旗標tm_skip_active_flag。因此,解碼器可能無法分析當前圖像之剩餘部分,且若於圖像之開始並無重同步標記(resynchronization marker),甚至無法分析後續之圖像。若修改先前之DMVD設計以使一直發送每一P_SKIP MB之旗標tm_skip_active_flag來解決上述分析問題,由於一直發送每一支援MB類型之旗標tm_skip_active_flag/tm_active_flag,編碼效率可被很大程度地降低。
先前之DMVD設計僅支援P部分畫面(slice)(圖像);此外,先前之DMVD設計缺乏靈活性。舉例而言,TM全搜尋機制中所用之模板僅限制於具有固定模板大小之反轉L型模板,幾乎全部之支援MB類型皆需要編碼於位元流中之旗標,MV之最高精準度限制為1/4像素之精準度,且基於候選之搜尋機制僅利用左邊區塊以及右上角區塊(或左上角區塊)之MV。
有鑑於此,特提供以下技術方案:
本發明實施例提供一種解碼端移動向量導出方法,包含:檢查將
被編碼之當前區塊之區塊大小並相應地產生檢查結果;以及利用解碼端移動向量導出模組參考檢查結果來控制第一解碼端移動向量導出控制資訊之傳輸,第一解碼端移動向量導出控制資訊係用以指示解碼端移動向量導出編碼操作是否被使用以編碼當前區塊,其中當檢查結果指示已滿足預定準則時,於位元流中發送第一解碼端移動向量導出控制資訊;否則,不發送第一解碼端移動向量導出控制資訊。
本發明實施例另提供一種解碼端移動向量導出方法,包含:藉由參考當前區塊之變換區塊大小,利用解碼端移動向量導出模組設置解碼端移動向量導出目標區塊之解碼端移動向量導出目標區塊大小,其中解碼端移動向量導出目標區塊大小與變換區塊大小一致;以及決定當前區塊內之解碼端移動向量導出目標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:藉由解碼端移動向量導出模組設置解碼端移動向量導出移動向量精準度,包含:致能特定移動向量精準度作為解碼端移動向量導出移動向量精準度,其中特定移動向量精準度與非解碼端移動向量導出移動向量精準度不同;以及依據解碼端移動向量導出移動向量精準度決定解碼端移動向量導出目標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:利用解碼端移動向量導出模組為解碼端移動向量導出目標區塊選擇多個編碼區塊之多個移動向量;處理多個編碼區塊之多個移動向量以計算候選移動向量;以及至少依據候選移動向量決定解碼端移動向量導出目
標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:利用解碼端移動向量導出模組選擇至少一個區塊之一移動向量作為解碼端移動向量導出目標區塊之候選移動向量,其中至少一個區塊與解碼端移動向量導出目標區塊位於不同圖像中;以及至少依據候選移動向量決定解碼端移動向量導出目標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:利用解碼端移動向量導出模組為解碼端移動向量導出目標區塊選擇一模板,其中模板與解碼端移動向量導出目標區塊位於相同圖像中,且模板包含藉由自解碼端移動向量導出目標區塊之上方擴充M個像素來定義之矩形模板;以及依據模板藉由執行模板匹配操作搜尋至少一個參考圖像來決定解碼端移動向量導出目標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:依據多假設預測搜尋至少一個參考圖像來決定解碼端移動向量導出目標區塊之多個最終移動向量;藉由參考分別對應於多個最終移動向量之多個失真值,利用解碼端移動向量導出模組來計算多個最終移動向量之權重因子;以及依據已計算之權重因子藉由混合多個最終移動向量之多個預測區塊來決定最終預測區塊。
本發明實施例另提供一種解碼端移動向量導出方法,包含:依據多假設預測搜尋至少一個參考圖像來決定解碼端移動向量導出目標區
塊之多個候選移動向量;利用解碼端移動向量導出模組自多個候選移動向量選擇多個最終移動向量,依據預定義權重因子混合多個最終移動向量之多個模板以產生混合模板,以及計算當前圖像之模板以及至少一個參考圖像之混合模板之間的失真值;以及藉由混合多個最終移動向量之多個預測區塊來決定最終預測區塊。
本發明實施例另提供一種解碼端移動向量導出方法,包含:依據至少一個原始參考圖像利用解碼端移動向量導出模組產生至少一個虛擬參考圖像;以及搜尋至少一個原始參考圖像以及至少一個虛擬參考圖像來決定解碼端移動向量導出目標區塊之最終移動向量。
本發明實施例另提供一種解碼端移動向量導出方法,包含:於編碼器上執行解碼端移動向量導出編碼操作;以及將自編碼器上執行之解碼端移動向量導出編碼操作中獲得之搜尋控制資訊發送至解碼器,以使編碼器與解碼器之間具有非對稱之解碼端移動向量導出搜尋複雜度。
本發明實施例另提供一種解碼端移動向量導出方法,包含:依據第一特性利用解碼端移動向量導出模組決定第一解碼端移動向量導出目標區塊之移動向量;以及依據不同於第一特性之第二特性利用解碼端移動向量導出模組決定第二解碼端移動向量導出目標區塊之移動向量。
以上所述的解碼端移動向量導出方法,能夠藉由解碼端移動向量
導出模組提升編碼效率、減少解碼端移動向量導出搜尋複雜度、以及提高解碼端移動向量導出方法之靈活性。
於說明書及後續的申請專利範圍當中使用了某些詞彙來指稱特定的元件。所屬領域中具有通常知識者應可理解,硬體製造商可能會用不同的名詞來稱呼同樣的元件。本說明書及後續的申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的準則。於通篇說明書及後續的請求項當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於」。另外,「耦接」一詞在此係包含任何直接及間接的電氣連接手段。因此,若文中描述一第一裝置耦接於一第二裝置,則代表該第一裝置可直接電氣連接於該第二裝置,或透過其他裝置或連接手段間接地電氣連接至該第二裝置。
本發明提供一種DMVD設計之範例,以解決先前之DMVD設計所遇到之上述分析以及靈活性問題。第3圖係依本發明實施例之資料處理系統300之範例的示意圖。資料處理系統300包含編碼器302與解碼器312,其中自編碼器302產生之位元流係經由傳送裝置301傳送至解碼器312。舉例而言,傳送裝置301可為儲存媒體或有線/無線網路。編碼器302包含DMVD模組304以及耦接於DMVD模組304之其他模組306,其中DMVD模組304可用於執行本發明之DMVD方法範例以產生每一DMVD目標區塊之最終移動向量MV_1,而其他
模組306接收每一DMVD目標區塊之最終移動向量MV_1並產生位元流。舉例而言,其他模組306之功能可包含變換、量化(quantization)、反量化、反變換、熵編碼(entropy encoding)等等。解碼器312包含DMVD模組314以及耦接於編碼器302之其他模組316,其中DMVD模組314可用於執行本發明之DMVD方法範例以產生每一DMVD目標區塊之最終移動向量MV_2,而其他模組316接收每一DMVD目標區塊之最終移動向量MV_2並產生重建圖像。舉例而言,其他模組316之功能可包含反變換、反量化、熵解碼等等。請注意,每一模組可藉由軟體、硬體、或軟體與硬體之組合實現。理想而言,編碼器302對於特定DMVD目標區塊找出之最終移動向量MV_1應等於解碼器312對於同一特定DMVD目標區塊找出之最終移動向量MV_2。下文中將詳細描述本發明之DMVD方法範例。
請結合第10圖來參考第3圖,第10圖係依本發明實施例之DMVD方法之範例的流程圖。首先,DMVD模組304檢查將被編碼之當前區塊之區塊大小並相應地產生檢查結果(步驟S1002)。實際上,可藉由偵測區塊大小或MB類型來檢查區塊大小,因此可藉由比較區塊大小與預定區塊大小或比較MB類型或預定MB類型來產生檢查結果。隨後,DMVD模組304參考檢查結果來控制DMVD控制資訊之傳輸(步驟S1004),DMVD控制資訊係用以指示DMVD編碼操作是否被用於編碼當前區塊(步驟S1006)。其中當檢查結果指示已滿足預定準則時,舉例而言,當發現區塊大小或MB類型等於預定區塊大小或預定MB類型時,於位元流中發送當前區塊之DMVD控制資訊(步驟
S1008);否則,不發送DMVD控制資訊(步驟S1010)。其中,預定區塊大小為選擇自8x8、16x16、32x32、64x64、128x128之編碼單元大小。舉例而言,DMVD控制資訊為旗標tm_active_flag,且預定準則設置預定區塊大小為16x16。因此,當允許使用DMVD且當前區塊之區塊大小為16x16時,藉由編碼器302發送旗標tm_active_flag(亦即,將旗標tm_active_flag編碼於位元流中)。若DMVD機制被使用,旗標tm_active_flag被設為“1”。因此,無須發送參考圖像索引以及MV資料,預測方向可藉由MB類型碼字(codeword)指示。於某些實施例中,DMVD目標區塊N×N之區塊大小被設置為等於變換區塊大小(例如,4×4或8×8)。然而,若使用傳統MV編碼機制,旗標tm_active_flag設為“0”。應注意,DMVD設計之範例支援前向預測(或列表0)、後向預測(或列表1)、以及雙向預測。因此,可獨立地獲得前向預測結果或後向預測結果。當選擇雙向預測,可自前向預測結果以及後向預測結果而簡單地獲得雙向預測結果(具有較低複雜度),或同時考慮前向預測以及後向預測而獲得雙向預測結果(具有較高編碼效率)。
僅當檢查結果指示已滿足預定準則時,於位元流中發送旗標tm_active_flag,舉例而言,當區塊大小為16x16時。因此,當對於其他區塊大小並未選擇DMVD時,由於對於其他區塊大小並未發送旗標tm_active_flag,編碼效率可被提升。此外,當分析由編碼器302產生之位元流時,解碼器312無須執行TM操作來首先找出最終MV並隨後檢查是否發送旗標tm_active_flag。以此方式,當遺失或損壞參考圖
像之任一部分時,不會產生分析問題。因此,可解決先前之DMVD設計所遇到之上述分析問題。
應注意,DMVD方法範例亦支援擴充MB(每一擴充MB大於16x16 MB)。舉例而言,擴充MB具有64x64像素或32x32像素之區塊大小。
對於DMVD省略區塊(其除了發送旗標tm_active_flag作為DMVD控制資訊之外,並未發送任何其他資訊),編碼器302可發送另一DMVD控制資訊來指示是否使用DMVD省略模式。舉例而言,當旗標tm_active_flag指示DMVD編碼操作被使用時(亦即,tm_active_flag==1),發送旗標tm_skip_active_flag。當利用DMVD編碼機制時,若區塊為DMVD省略區塊則將旗標tm_skip_active_flag設為“1”,若區塊為DMVD非省略區塊則將旗標tm_skip_active_flag設為“0”。對於16x16 DMVD省略區塊,DMVD目標區塊大小設為16x16像素;對於16x16 DMVD非省略區塊,DMVD目標區塊大小設為與變換區塊大小一致。藉由旗標tm_active_flag以及tm_skip_active_flag之傳輸,編碼效率可被進一步提升。
相較於先前之DMVD設計(其最高MV精準度限制為1/4像素MV精準度),本發明提出之DMVD設計範例可支援較高之MV精準度,例如1/8像素MV精準度。於另一可選設計中,可支援最高MV精準度為1/4像素MV精準度(對於非DMVD區塊)或1/8像素MV精準度(對於DMVD區塊)。因此,除了於位元流中發送DMVD控制
資訊(例如,旗標tm_active_flag)及/或另一DMVD控制資訊(例如,旗標tm_skip_active_flag),編碼器302可發送又一DMVD控制資訊(例如,旗標tm_mv_res_flag)來指示是否致能不同於非DMVD MV精準度之特定MV精準度(例如,1/8像素MV精準度)。舉例而言,當旗標tm_active_flag指示DMVD編碼操作被使用時(亦即,tm_active_flag==1),以部分畫面級別(slice level)或序列級別(sequence level)發送旗標tm_mv_res_flag來指示DMVD MV之MV精準度。於重建DMVD模式中,允許DMVD MV精準度較非DMVD MV精準度高;於用於後續MV預測之儲存DMVD模式中,DMVD MV可截斷(truncate)為與非DMVD MV相等之精準度(例如,1/4像素)。
如上所述,當將被編碼之當前區塊之區塊大小或MB類型與預定區塊大小或預定MB類型(例如,16x16/32x32/64x64)相同時,於位元流中發送DMVD控制資訊(例如,旗標tm_active_flag)。DMVD控制資訊係藉由編碼器302之其他模組306內之熵編碼模組(未繪示)編碼於位元流中。舉例而言,編碼器302中之熵編碼模組可執行內容適應性(context-adaptive)熵編碼操作,例如內容適應性二位元算術編碼(Context-based Adaptive Binary Arithmetic Coding,以下簡稱為CABAC)。本發明實施例之範例提出一種改進之內容設計,用於提升編碼效率且並未很大程度地增加計算複雜度。第4圖係當前區塊BLK_C以及多個鄰近區塊BLK_A以及BLK_B之示意圖。區塊BLK_A、BLK_B以及BLK_C中之每一者之區塊大小等於預定區塊大小。因此,產生旗標Flag_A、Flag_B、以及Flag_C(每一者皆作為上
述旗標tm_active_flag以指示DMVD編碼操作是否被使用)並隨後將其編碼於位元流中。以旗標Flag_C之編碼為例,可依據鄰近區塊BLK_A與BLK_B之旗標Flag_A與Flag_B來決定當前區塊BLK_C之內容,其中鄰近區塊BLK_A與BLK_B於處理時間上早於當前區塊BLK_C。舉例而言,可依據下列等式計算內容Context_C。
Context_C=Flag_A+Flag_B (1)
若旗標Flag_A與Flag_B皆為0,則將當前區塊BLK_C之內容設為0。若旗標Flag_A與Flag_B皆為1,則將當前區塊BLK_C之內容設為2。若旗標Flag_A與Flag_B中之一者為1而旗標Flag_A與Flag_B中之另一者為0(亦即,Flag_A=1且Flag_B=0,或Flag_A=0且Flag_B=1),則將當前區塊BLK_C之內容設為1。為區分旗標Flag_A與Flag_B中何者為1,可依據下列等式中之一者計算內容Context_C。
Context_C=Flag_A+Flag_B*2 (2)
Context_C=Flag_A*2+Flag_B (3)
於使用等式(2)情況中,若旗標Flag_A為1且另一旗標Flag_B為0,將當前區塊BLK_C之內容設為1,以及若旗標Flag_A為0且另一旗標Flag_B為1,將當前區塊BLK_C之內容設為2。於使用等式(3)之另一情況中,若旗標Flag_A為0且另一旗標Flag_B為1,將當前區塊BLK_C之內容設為1,以及若旗標Flag_A為1且另一旗標Flag_B為0,將當前區塊BLK_C之內容設為2。
簡單而言,當發現當前區塊之區塊大小等於預定區塊大小時,可
依據多個先前編碼(previously coded)區塊之DMVD控制資訊對當前區塊之DMVD控制資訊執行內容適應性熵編碼操作,其中每一先前編碼區塊具有等於預定區塊大小之區塊大小。
如上所述,當DMVD編碼時被使用,可發送額外之DMVD控制資訊(例如,tm_skip_active_flag或tm_mv_res_flag)。假設上述旗標Flag_A、Flag_B、以及Flag_C中之每一者皆為旗標tm_skip_active_flag,可依據上述等式(1)、(2)及(3)中之一者類似地計算內容Context_C。此外,假設上述旗標Flag_A、Flag_B、以及Flag_C中之每一者皆為旗標tm_mv_res_flag,可依據上述等式(1)、(2)及(3)中之一者類似地計算內容Context_C。
對於藉由DMVD模組304/314執行之TM操作範例,整體像素全搜尋可應用於每一參考圖像中之搜尋範圍,其中搜尋範圍係以H.264移動向量預測器(MV Predictor,以下簡稱為MVP)為中心且非整體像素MV精準度(例如,1/4像素MV精準度)被截斷為整體像素MV精準度。此外,子像素細化,例如1/2像素細化或1/4像素細化,可應用於利用整體像素全搜尋找出之整體MV。應注意,藉由參考當前區塊(例如,16x16/32x32/64x64 MB)之變換區塊大小,DMVD模組304/314可設置DMVD目標區塊之DMVD目標區塊大小,其中DMVD目標區塊大小與變換區塊大小一致(例如,2x2、4x4、或8x8)。隨後,DMVD模組304/314決定當前圖像中之DMVD目標區塊之最終MV。由於此時DMVD目標區塊大小確保與變換區塊大小一致,整體變換操
作可利用任一可用變換區塊大小,包含4x4與8x8。
如上所述,依據實際設計考量,可採用定位(localized)(基於MB)適應性MV精準度。然而,應注意,適應性MV精準度可以部分畫面級別或序列級別控制而無須MB級別之額外語法改變。舉例而言,對於每一訊框/圖像,當藉由DMVD方法決定MV時,可採用1/8像素MV精準度來找出每一DMVD目標區塊之最終MV;然而,當藉由傳統之非DMVD方法決定MV時,採用1/4像素MV精準度。
簡單而言,DMVD模組304/314可藉由致能特定MV精準度(例如,l/8像素MV精準度)作為DMVD MV精準度來設置DMVD MV精準度,其中特定MV精準度(例如,1/8像素MV精準度)不同於非DMVD MV精準度(例如,整體像素MV精準度、1/2像素MV精準度、或1/4像素MV精準度),以及依據DMVD MV精準度決定DMVD目標區塊之最終MV。因此,任一利用特定MV精準度(不同於非DMVD MV精準度)之DMVD應用皆遵從本發明之精神,應涵蓋於後附之申請專利範圍內。
藉由具有特定MV精準度之DMVD找出之最終MV可用於決定下一區塊(可為非DMVD區塊)之候選MV。為再用H.264中MVP之定義,DMVD模組304/314可藉由將特定MV精準度(例如,1/8像素MV精準度)截斷至非DMVD MV精準度(例如,1/4像素MV精準度)來調節具有特定MV精準度之最終MV,以及隨後儲存具有非DMVD MV精準度之已調節MV。然而,其僅用於說明目的,並非
作為本發明之限定。舉例而言,若利用整體像素全搜尋找出下一區塊(為DMVD區塊)之候選MV,由於依據整體像素全搜尋需求,具有特定MV精準度之最終MV被調節將較高之MV精準度截斷至整體MV精準度,當前DMVD區塊(具有諸如1/8像素MV精準度之特定MV精準度)之最終MV無須將較高之MV精準度截斷至非DMVD MV精準度。
通常而言,DMVD利用自鄰近於DMVD目標區塊之重建像素獲得之資訊來找出DMVD目標區塊之最終MV,其中DMVD目標區塊具有非重建像素。因此,DMVD目標區塊之非重建像素與鄰近重建像素之間的相似性決定DMVD目標區塊之最終MV之發現準確性。亦即,利用較高MV精準度(例如,1/8像素MV精準度)發現之MV可能不確保較利用較低MV精準度(例如,1/4像素MV精準度)發現之MV準確。基於試驗結果,發現對於低解析度視訊,利用1/8像素MV精準度易於具有較佳編碼效率。因此,DMVD模組304/314可依據輸入視訊之解析度來設置適當之DMVD MV精準度。舉例而言,可致能不同於任何非DMVD MV精準度之特定MV精準度作為用於具有第一解析度(例如,CIF/WVGA/SVGA)之輸入視訊的DMVD MV精準度,而致能非DMVD MV精準度作為用於具有第二解析度(例如,720P/1080P)(較第一解析度高)之輸入視訊的DMVD MV精準度。
上述整體像素全搜尋必須檢查依據每一參考圖像中之搜尋範圍而
發現之多個候選MV。舉例而言,假設,搜尋範圍係藉由具有H.264MVP所指之中心之[-S,+S]x[-S,+S]範圍定義,必須檢查R*(2S+1)2個候選像素來找出至少一個具有較低失真值之MV,其中失真值係利用平方差值和(Sum of Squared Difference,以下簡稱為SSD)或SAD估測,其中R代表參考圖像之數目。若使用子像素細化以及多假設預測中之至少一者,則需檢查更多侯選像素。為減少搜尋負擔並增加DMVD模組304/314之搜尋靈活性,本發明提出一種快速搜尋機制,其可嘗試自當前圖像(DMVD目標區塊位於當前圖像中)中之編碼區塊及/或一個或多個參考圖像中之編碼區塊獲得之多個候選MV。
於快速搜尋機制之一實施範例中,DMVD模組304/314選擇DMVD目標區塊之至少一個鄰近區塊之MV作為DMVD目標區塊之候選MV,其中上述至少一個鄰近區塊以及DMVD目標區塊位於同一圖像中,且上述至少一個鄰近區塊包含直接位於DMVD目標區塊正上方之頂部區塊。舉例而言,如第5圖所示,第5圖係依本發明快速搜尋機制範例之被選為DMVD目標區塊502之候選MV的鄰近區塊之MV的示意圖,若右上角區塊C可用,則選擇區塊A、B、以及C之移動向量MV_A、MV_B、以及MV_C作為DMVD目標區塊502之候選MV。若右上角區塊C不可用,則選擇區塊A、B、以及D之移動向量MV_A、MV_B、以及MV_D作為DMVD目標區塊502之候選MV。隨後,DMVD模組304/314依據候選MV決定DMVD目標區塊502之最終MV。應注意,子像素細化,例如1/2像素細化、1/4像素細化、或1/8像素細化,可應用於單假設預測中之單一整體像素MV
或多假設預測中之多個整體像素MV。
於快速搜尋機制之另一實施範例中,DMVD模組304/314嘗試多個候選MV,其中包含DMVD目標區塊之至少一個已處理或已計算MV。首先,DMVD模組304/314為DMVD目標區塊選擇編碼區塊之MV。上述編碼區塊可與DMVD目標區塊位於同一圖像中,或編碼區塊可位於一個或多個參考圖像中。於某些其他實施例中,多個編碼區塊中之至少一者位於同一圖像中,且多個編碼區塊中之至少一者位於參考圖像中。隨後,DMVD模組304/314處理編碼區塊之MV來計算候選MV。舉例而言,候選MV為編碼區塊之MV之中數(median)。舉例而言,若右上角區塊C可用,則選擇區塊A、B、以及C之移動向量MV_A、MV_B、以及MV_C,且計算移動向量MV_A、MV_B、以及MV_C之中數來作為一個候選MV。若右上角區塊C不可用,則選擇區塊A、B、以及D之移動向量MV_A、MV_B、以及MV_D,且計算移動向量MV_A、MV_B、以及MV_D之中數來作為一個候選MV。依據自編碼區塊之已處理或已計算MV獲得之至少一個候選MV,DMVD模組304/314決定DMVD目標區塊502之最終MV。應注意,子像素細化,例如1/2像素細化、1/4像素細化、或1/8像素細化,可應用於單假設預測中之單一整體像素MV或多假設預測中之多個整體像素MV。
於快速搜尋機制之又一實施範例中,DMVD模組304/314選擇至少一個區塊之MV作為DMVD目標區塊之候選MV,其中上述至少一
個區塊以及DMVD目標區塊位於不同圖像中。請結合第5圖來參考第6圖,第6圖係依本發明又一快速搜尋機制範例之被選為DMVD目標區塊之候選MV的參考圖像中區塊的MV的示意圖。請注意,如第6圖所示,其僅用於給出範例,並非作為本發明之限定,區塊a-j之移動向量MV_a-MV_j被選為當前圖像中之DMVD目標區塊502(第6圖中未繪示)之候選MV,其中區塊e位於參考圖像中之並列DMVD目標區塊602內,且區塊a-d以及f-j鄰近於並列DMVD目標區塊602。隨後,DMVD模組304/314依據候選MV決定當前圖像中之DMVD目標區塊502之最終MV。應注意,子像素細化,例如1/2像素細化、1/4像素細化、或1/8像素細化,可應用於單假設預測中之單一整體像素MV或多假設預測中之多個整體像素MV。
請注意,可利用上述快速搜尋機制之實施範例之任一組合來選擇MV作為DMVD目標區塊之候選MV。舉例而言,當前圖像中之區塊A、B、以及C之移動向量MV_A、MV_B、以及MV_C,移動向量MV_A、MV_B、以及MV_C之中數,參考圖像中之區塊a-j之移動向量MV_a-MV_j皆可被選為候選MV以獲得當前圖像中之DMVD目標區塊502之最終MV。
如第1圖所示,TM操作中所用模版僅限於具有固定模板大小M之反轉L型模板104。然而,上述模板設計約束了DMVD操作之靈活性。於本發明之一設計範例中,DMVD模組304/314可為DMVD目標區塊選擇一模板,其中模板與DMVD目標區塊位於同一圖像中,且
上述模板並非具有固定模板大小之反轉L型模板。隨後,藉由依據特定設計之模板來執行TM操作,DMVD模組304/314搜尋至少一個參考圖像來發現DMVD目標區塊之最終MV。第7圖係依本發明實施例之模板設計之第一範例的示意圖。第8圖係依本發明實施例之模板設計之第二範例的示意圖。如第7圖所示,模板範例為反轉L型模板702,但其模板大小並非固定圍繞DMVD目標區塊。亦即,自DMVD目標區塊704之上方擴充M1個像素以形成矩形模板,並自DMVD目標區塊704之左側以及DMVD目標區塊704上方之矩形模板擴充M2個像素來定義反轉L型模板702,其中M1不等於M2(M1≠M2)。如第8圖所示,模板範例為具有模板大小M之矩形模板802。亦即,自DMVD目標區塊804之上方擴充M個像素來定義矩形模板802。請注意,上述兩個範例僅用於說明目的,並非作為本發明之限定。舉例而言,任一並非具有固定模板大小之傳統反轉L型模板之模板皆應涵蓋於後附之申請專利範圍內。
對於於多假設預測中以最低代價決定之DMVD目標區塊之一組最終MV,可使用權重混合操作(weighted blending operation)來決定最終預測區塊。舉例而言,DMVD模組304/314依據多假設預測搜尋至少一個參考圖像來決定DMVD目標區塊之多個最終MV,藉由參考分別對應於多個最終MV之多個失真值(例如,SAD或SSD)來計算多個最終MV之權重因子,以及依據已計算之權重因子藉由混合多個最終MV之多個預測區塊來決定最終預測區塊。失真值係自當前圖像之模板以及分別對應於最終MV之置換模板獲得。於一設計範例中,
最終MV之權重因子與最終MV各自之失真值成反比。換言之,最終MV之失真值較低,則賦予上述最終MV之權重因子較大。
於另一實施例中,於多假設預測中,允許搜尋DMVD目標區塊之一組候選MV,且可使用用於模板失真值計算之權重混合操作來決定最終預測區塊。舉例而言,當考慮N假設預測時,DMVD模組304/314自候選MV選擇N個最終MV,依據預定義權重因子混合N個最終MV之N個模板以產生混合模板,以及計算當前圖像之模板與至少一個參考圖像之混合模板之間的失真值。最終預測區塊係混合自N個最終MV之N個預測區塊。DMVD模組304/314可選擇至少兩個不同組合之N個最終MV來產生多個混合模板,以及計算分別對應於多個混合模板之多個失真值。隨後找到最小失真值以及藉由混合對應於N個最終MV之具有最小失真值之預測區塊來決定最終預測區塊。
為提升移動估測準確性,本發明更提出利用較多參考訊框/圖像。舉例而言,DMVD模組304/314依據至少一個原始參考圖像產生至少一個虛擬參考圖像,以及搜尋至少一個原始參考圖像以及至少一個虛擬參考圖像來決定DMVD目標區塊之最終MV。第9圖係依本發明實施例之多個虛擬參考圖像F’1-F’4以及多個原始參考圖像F1-F4之範例的示意圖。應注意,可依據實際設計考量來調節創建虛擬參考圖像之數目。虛擬參考圖像F’1-F’4中之每一者可依據一個或多個原始參考圖像來創建。請注意,下文僅用於給出範例,並非作為本發明之限定,可藉由對一個原始參考圖像執行特定濾波操作來創建虛擬參考圖像
F’1,可藉由對一個原始參考圖像內之每一像素施加像素值偏移來創建虛擬參考圖像F’2,可藉由對一個原始參考圖像執行縮放(scaling)操作來創建虛擬參考圖像F’3,以及可藉由旋轉一個原始參考圖像來創建虛擬參考圖像F’4。由於於移動估測中利用較多參考圖像,從而可獲得較高準確性之MV。因此,以此方式可提升編碼效率。
通常而言,編碼器302之DMVD模組304以及解碼器312之DMVD模組314幾乎具有相同之DMVD搜尋負擔來決定DMVD目標區塊之MV。於一實施範例中,編碼器302可幫助解碼器312來減少DMVD搜尋複雜度。舉例而言,DMVD編碼操作係於編碼器302執行,自於編碼器302執行之DMVD編碼操作獲得之搜尋控制資訊被送至解碼器312,以使編碼器302與解碼器312之間存在非對稱之DMVD搜尋複雜度。搜尋控制資訊可指示包含待搜尋參考圖像之搜尋空間。或者,搜尋控制資訊可指示包含待搜尋參考圖像、待搜尋有效參考圖像、可省略搜尋之無效參考圖像之搜尋範圍,或者搜尋控制資訊可指示用於可省略之DMVD目標區塊之MV細化操作。由於編碼器302提供資訊來指示解碼器312如何執行DMVD操作,DMVD搜尋複雜度(例如,模板匹配複雜度)可被有效地降低。
本發明亦提出一種藉由DMVD模組304/314使用之適應性DMVD方法,因此很大程度地提升了DMVD靈活性。舉例而言,於DMVD操作中,可適應性地選擇諸如匹配準則(例如,SAD以及SSD)、搜尋位置模式(例如,全搜尋、各類快速搜尋機制、以及增強預測區域
搜尋(Enhanced Predictive Zonal Search,以下簡稱為EPZS))、MV精準度(例如,整體像素MV精準度、1/2像素MV精準度、1/4像素MV精準度、以及1/8像素MV精準度)、假設數目(例如,2以及4)、模板形狀、混合方法、以及虛擬參考訊框數目之特性。下文將給出某些可行之方案範例。
對於第一可行方案,DMVD模組304/314依據第一匹配準則決定第一DMVD目標區塊之MV,以及依據不同於第一匹配準則之第二匹配準則決定第二DMVD目標區塊之MV,其中第一匹配準則與第二匹配準則之間的切換係於序列級別、圖像組(Group Of Picture,以下簡稱為GOP)級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第二可行方案,DMVD模組304/314依據第一搜尋位置模式決定第一DMVD目標區塊之MV,以及依據不同於第一搜尋位置模式之第二搜尋位置模式決定第二DMVD目標區塊之MV,其中第一搜尋位置模式與第二搜尋位置模式之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第三可行方案,DMVD模組304/314依據第一MV精準度模式決定第一DMVD目標區塊之MV,以及依據不同於第一MV精準度
之第二MV精準度決定第二DMVD目標區塊之MV,其中第一MV精準度與第二MV精準度之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第四可行方案,DMVD模組304/314依據第一假設數目決定第一DMVD目標區塊之MV,以及依據不同於第一假設數目之第二假設數目決定第二DMVD目標區塊之MV,其中第一假設數目與第二假設數目之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第五可行方案,DMVD模組304/314藉由執行利用第一模板之TM操作來決定第一DMVD目標區塊之MV,以及藉由執行利用第二模板之TM操作來決定第二DMVD目標區塊之MV,其中第二模板之模板形狀不同於第一模板之模板形狀,且其中第一模板與第二模板之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第六可行方案,DMVD模組304/314藉由於多假設預測中對第一DMVD目標區塊之多個最終MV執行第一混合方法來決定第一DMVD目標區塊之MV,以及於多假設預測中對第二DMVD目標區
塊之多個最終MV執行第二混合方法來決定第二DMVD目標區塊之MV,其中第一混合方法與第二混合方法利用不同之混合機制,且其中第一混合方法與第二混合方法之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
對於第七可行方案,DMVD模組304/314依據一個或多個第一參考圖像產生至少一個第一虛擬參考圖像,搜尋第一參考圖像以及第一虛擬參考圖像來決定第一DMVD目標區塊之MV,依據一個或多個第二參考圖像產生至少一個第二虛擬參考圖像,搜尋第二參考圖像以及第二虛擬參考圖像來決定第二DMVD目標區塊之MV,其中第一虛擬參考圖像數目不同於第二虛擬參考圖像數目,且其中第一虛擬參考圖像數目與第二虛擬參考圖像數目之間的切換係於序列級別、GOP級別、訊框級別、圖像級別、部分畫面級別、編碼單元(MB或擴充MB)級別、預測單元(MB分配或擴充MB分配)級別、以及變換單元級別中之一者上控制。
以上所述僅為本發明之較佳實施例,舉凡熟悉本案之人士援依本發明之精神所做之等效變化與修飾,皆應涵蓋於後附之申請專利範圍內。
102、202、502、602、704、804‧‧‧DMVD目標區塊
104、702‧‧‧反轉L型模板
106‧‧‧MB
108‧‧‧置換模板
110‧‧‧MV
300‧‧‧資料處理系統
301‧‧‧傳送裝置
302‧‧‧編碼器
304、314‧‧‧DMVD模組
306、316‧‧‧其他模組
312‧‧‧解碼器
802‧‧‧矩形模板
S1002~S1010‧‧‧步驟
第1圖係P圖像之傳統TM機制的示意圖。
第2圖係依據先前基於候選之搜尋機制之利用鄰近重建區塊之MV作為DMVD目標區塊之候選MV的示意圖。
第3圖係依本發明實施例之資料處理系統之範例的示意圖。
第4圖係當前區塊以及多個鄰近區塊之示意圖,其中鄰近區塊中之DMVD控制資訊係被參考用於決定如何編碼當前區塊之DMVD控制資訊。
第5圖係依本發明快速搜尋機制範例之被選為DMVD目標區塊之候選MV的鄰近區塊之MV的示意圖。
第6圖係依本發明另一快速搜尋機制範例之被選為DMVD目標區塊之候選MV的參考圖像中區塊的MV的示意圖。
第7圖係依本發明實施例之模板設計之第一範例的示意圖。
第8圖係依本發明實施例之模板設計之第二範例的示意圖。
第9圖係依本發明實施例之多個虛擬參考圖像以及多個原始參考圖像之範例的示意圖。
第10圖係依本發明實施例之DMVD方法之範例的流程圖。
S1002~S1010‧‧‧步驟
Claims (28)
- 一種解碼端移動向量導出方法,包含:檢查將被編碼之一當前區塊之一區塊大小並相應地產生一檢查結果;以及利用一解碼端移動向量導出模組參考該檢查結果來控制一第一解碼端移動向量導出控制資訊之傳輸,該第一解碼端移動向量導出控制資訊係用以指示一解碼端移動向量導出編碼操作是否被使用以編碼該當前區塊,其中當該檢查結果指示已滿足一預定準則時,於一位元流中發送該第一解碼端移動向量導出控制資訊;否則,不發送該第一解碼端移動向量導出控制資訊。
- 如申請專利範圍第1項所述之解碼端移動向量導出方法,其中當發現該區塊大小等於一預定區塊大小時,該預定準則已滿足,以及該預定區塊大小為選擇自8x8、16x16、32x32、64x64、或128x128之一編碼單元大小。
- 如申請專利範圍第1項所述之解碼端移動向量導出方法,更包含:當該檢查結果指示已滿足該預定準則時,依據多個先前編碼區塊之一第一解碼端移動向量導出控制資訊對該當前區塊之該第一解碼端移動向量導出控制資訊執行一內容適應性熵編碼操作。
- 如申請專利範圍第3項所述之解碼端移動向量導出方法,其中 該內容適應性熵編碼操作決定該當前區塊之一內容如下:Context_C=Flag_A+Flag_B;或Context_C=Flag_A+Flag_B*2;或Context_C=Flag_A*2+Flag_B,其中Context_C代表該當前區塊之該內容,以及Flag_A與Flag_B分別代表該多個先前編碼區塊中之一者之該第一解碼端移動向量導出控制資訊。
- 如申請專利範圍第1項所述之解碼端移動向量導出方法,更包含:當該第一解碼端移動向量導出控制資訊指示該解碼端移動向量導出編碼操作被使用時,於該位元流中發送一第二解碼端移動向量導出控制資訊,其中該第二解碼端移動向量導出控制資訊用於指示一解碼端移動向量導出省略模式是否被使用。
- 如申請專利範圍第5項所述之解碼端移動向量導出方法,更包含:當該第一解碼端移動向量導出控制資訊指示該解碼端移動向量導出編碼操作被使用時,依據多個先前編碼區塊之一第二解碼端移動向量導出控制資訊對該當前區塊之該第二解碼端移動向量導出控制資訊執行一內容適應性熵編碼操作。
- 如申請專利範圍第6項所述之解碼端移動向量導出方法,其中該內容適應性熵編碼操作決定該當前區塊之一內容如下:Context_C=Flag_A+Flag_B;或 Context_C=Flag_A+Flag_B*2;或Context_C=Flag_A*2+Flag_B,其中Context_C代表該當前區塊之該內容,以及Flag_A與Flag_B分別代表該多個先前編碼區塊中之一者之該第二解碼端移動向量導出控制資訊。
- 如申請專利範圍第1項所述之解碼端移動向量導出方法,更包含:當該第一解碼端移動向量導出控制資訊指示該解碼端移動向量導出編碼操作被使用時,於該位元流中發送一第二解碼端移動向量導出控制資訊,其中該第二解碼端移動向量導出控制資訊用於指示是否致能不同於一非解碼端移動向量導出移動向量精準度之一特定移動向量精準度。
- 如申請專利範圍第8項所述之解碼端移動向量導出方法,更包含:當該第一解碼端移動向量導出控制資訊指示該解碼端移動向量導出編碼操作被使用時,依據多個先前編碼區塊之一第二解碼端移動向量導出控制資訊對該當前區塊之該第二解碼端移動向量導出控制資訊執行一內容適應性熵編碼操作。
- 如申請專利範圍第9項所述之解碼端移動向量導出方法,其中該內容適應性熵編碼操作決定該當前區塊之一內容如下:Cottext_C=Flag_A+Flag_B;或Context_C=Flag_A+Flag_B*2;或 Context_C=Flag_A*2+Flag_B,其中Context_C代表該當前區塊之該內容,以及Flag_A與Flag_B分別代表該多個先前編碼區塊之該第二解碼端移動向量導出控制資訊。
- 一種解碼端移動向量導出方法,包含:依據一多假設預測搜尋至少一個參考圖像來決定一解碼端移動向量導出目標區塊之多個最終移動向量;藉由參考分別對應於該多個最終移動向量之多個失真值,利用一解碼端移動向量導出模組來計算該多個最終移動向量之多個權重因子;以及依據該已計算之多個權重因子藉由混合該多個最終移動向量之多個預測區塊來決定一最終預測區塊。
- 如申請專利範圍第11項所述之解碼端移動向量導出方法,其中該多個失真值係自一當前圖像之一模板以及分別對應於該多個最終移動向量之多個置換模板獲得。
- 一種解碼端移動向量導出方法,包含:依據一多假設預測搜尋至少一個參考圖像來決定一解碼端移動向量導出目標區塊之多個候選移動向量;利用一解碼端移動向量導出模組自該多個候選移動向量選擇多個最終移動向量,依據多個預定義權重因子混合該多個最終移動向量之多個模板以產生一混合模板,以及計算一當前圖像之一模板以及該至少一個參考圖像之該混合模板之間的一失真值;以及 藉由混合該多個最終移動向量之多個預測區塊來決定一最終預測區塊。
- 如申請專利範圍第13項所述之解碼端移動向量導出方法,其中該解碼端移動向量導出模組藉由選擇該多個最終移動向量之不同組合來產生多個混合模板以及計算多個失真值,以及藉由混合該多個預測區塊來決定該最終預測區塊,該多個預測區塊對應於具有一最小失真值之該多個最終移動向量。
- 一種解碼端移動向量導出方法,包含:依據至少一個原始參考圖像利用一解碼端移動向量導出模組來產生至少一個虛擬參考圖像;以及搜尋該至少一個原始參考圖像以及該至少一個虛擬參考圖像來決定一解碼端移動向量導出目標區塊之一最終移動向量。
- 如申請專利範圍第15項所述之解碼端移動向量導出方法,其中該多個虛擬參考圖像係藉由對該至少一個原始參考圖像執行一特定濾波操作、對該至少一個原始參考圖像內之每一像素施加一像素值偏移、對該至少一個原始參考圖像執行縮放操作、或旋轉該至少一個原始參考圖像而創建。
- 一種解碼端移動向量導出方法,包含:於一編碼器上執行一解碼端移動向量導出編碼操作;以及將自該編碼器上執行之該解碼端移動向量導出編碼操作中獲得之 一搜尋控制資訊發送至一解碼器,以使該編碼器與該解碼器之間具有非對稱之解碼端移動向量導出搜尋複雜度。
- 如申請專利範圍第17項所述之解碼端移動向量導出方法,其中該搜尋控制資訊指示包含待搜尋參考圖像之一搜尋空間或一搜尋範圍。
- 如申請專利範圍第17項所述之解碼端移動向量導出方法,其中該搜尋控制資訊指示用於一解碼端移動向量導出目標區塊之一省略移動向量細化操作。
- 一種解碼端移動向量導出方法,包含:依據一第一特性利用一解碼端移動向量導出模組決定一第一解碼端移動向量導出目標區塊之一移動向量;以及依據不同於該第一特性之一第二特性利用該解碼端移動向量導出模組決定一第二解碼端移動向量導出目標區塊之一移動向量。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性之間的一切換係於一序列級別、一圖像組級別、一訊框級別、一圖像級別、一部分畫面級別、一編碼單元級別、一預測單元級別、以及一變換單元級別中之一者上控制。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為不同之匹配準則。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為不同之搜尋位置模式。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為不同之移動向量精準度。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為不同之假設數目。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為用於一模板匹配操作之不同模板形狀。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為用於一多假設預測之不同混合機制。
- 如申請專利範圍第20項所述之解碼端移動向量導出方法,其中該第一特性與該第二特性為不同之虛擬參考圖像數目。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29522710P | 2010-01-15 | 2010-01-15 | |
US30660810P | 2010-02-22 | 2010-02-22 | |
US12/826,693 US20110176611A1 (en) | 2010-01-15 | 2010-06-30 | Methods for decoder-side motion vector derivation |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201125369A TW201125369A (en) | 2011-07-16 |
TWI449432B true TWI449432B (zh) | 2014-08-11 |
Family
ID=44277570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099142062A TWI449432B (zh) | 2010-01-15 | 2010-12-03 | 解碼端移動向量導出方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20110176611A1 (zh) |
CN (2) | CN102970543A (zh) |
TW (1) | TWI449432B (zh) |
Families Citing this family (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557514B (zh) * | 2008-04-11 | 2011-02-09 | 华为技术有限公司 | 一种帧间预测编解码方法、装置及系统 |
CN101686393B (zh) * | 2008-09-28 | 2012-10-17 | 华为技术有限公司 | 应用于模板匹配的快速运动搜索方法及装置 |
KR101836981B1 (ko) * | 2010-07-09 | 2018-03-09 | 한국전자통신연구원 | 템플릿 매칭을 이용한 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치 |
US9509995B2 (en) * | 2010-12-21 | 2016-11-29 | Intel Corporation | System and method for enhanced DMVD processing |
CN107071464A (zh) * | 2011-01-19 | 2017-08-18 | 寰发股份有限公司 | 为当前块的运动矢量导出运动矢量预测子的方法及装置 |
CN102685504B (zh) * | 2011-03-10 | 2015-08-19 | 华为技术有限公司 | 视频图像的编解码方法、编码装置、解码装置及其系统 |
US9392301B2 (en) * | 2011-07-01 | 2016-07-12 | Qualcomm Incorporated | Context adaptive entropy coding for non-square blocks in video coding |
TW201306568A (zh) | 2011-07-20 | 2013-02-01 | Novatek Microelectronics Corp | 移動估測方法 |
US9264717B2 (en) * | 2011-10-31 | 2016-02-16 | Qualcomm Incorporated | Random access with advanced decoded picture buffer (DPB) management in video coding |
TWI523497B (zh) * | 2011-11-10 | 2016-02-21 | Sony Corp | Image processing apparatus and method |
ES2728146T3 (es) | 2012-01-20 | 2019-10-22 | Sun Patent Trust | Procedimientos y aparato de codificación y decodificación de vídeo utilizando predicción temporal de vector de movimiento |
WO2013114860A1 (ja) | 2012-02-03 | 2013-08-08 | パナソニック株式会社 | 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置及び画像符号化復号装置 |
WO2013132792A1 (ja) | 2012-03-06 | 2013-09-12 | パナソニック株式会社 | 動画像符号化方法、動画像復号方法、動画像符号化装置、動画像復号装置、及び動画像符号化復号装置 |
US20140002594A1 (en) * | 2012-06-29 | 2014-01-02 | Hong Kong Applied Science and Technology Research Institute Company Limited | Hybrid skip mode for depth map coding and decoding |
CN102761742B (zh) * | 2012-07-03 | 2017-06-06 | 华为技术有限公司 | 变换块划分方法,变换块划分参数的编码方法及解码方法 |
US9635356B2 (en) * | 2012-08-07 | 2017-04-25 | Qualcomm Incorporated | Multi-hypothesis motion compensation for scalable video coding and 3D video coding |
PL400344A1 (pl) | 2012-08-13 | 2014-02-17 | Politechnika Poznanska | Sposób wyznaczania predyktora wektora ruchu |
US9749642B2 (en) | 2014-01-08 | 2017-08-29 | Microsoft Technology Licensing, Llc | Selection of motion vector precision |
US9774881B2 (en) * | 2014-01-08 | 2017-09-26 | Microsoft Technology Licensing, Llc | Representing motion vectors in an encoded bitstream |
US10958927B2 (en) * | 2015-03-27 | 2021-03-23 | Qualcomm Incorporated | Motion information derivation mode determination in video coding |
US10887597B2 (en) | 2015-06-09 | 2021-01-05 | Qualcomm Incorporated | Systems and methods of determining illumination compensation parameters for video coding |
US10356416B2 (en) * | 2015-06-09 | 2019-07-16 | Qualcomm Incorporated | Systems and methods of determining illumination compensation status for video coding |
WO2017030260A1 (ko) * | 2015-08-19 | 2017-02-23 | 엘지전자(주) | 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
US10200715B2 (en) | 2016-02-17 | 2019-02-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and devices for encoding and decoding video pictures |
US10390038B2 (en) | 2016-02-17 | 2019-08-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods and devices for encoding and decoding video pictures using a denoised reference picture |
EP3264768A1 (en) * | 2016-06-30 | 2018-01-03 | Thomson Licensing | Method and apparatus for video coding with adaptive motion information refinement |
US11638027B2 (en) | 2016-08-08 | 2023-04-25 | Hfi Innovation, Inc. | Pattern-based motion vector derivation for video coding |
WO2018054269A1 (en) * | 2016-09-22 | 2018-03-29 | Mediatek Inc. | Method and apparatus for video coding using decoder side intra prediction derivation |
CN110140355B (zh) * | 2016-12-27 | 2022-03-08 | 联发科技股份有限公司 | 用于视频编解码的双向模板运动向量微调的方法及装置 |
US12063387B2 (en) | 2017-01-05 | 2024-08-13 | Hfi Innovation Inc. | Decoder-side motion vector restoration for video coding |
US10491917B2 (en) * | 2017-03-22 | 2019-11-26 | Qualcomm Incorporated | Decoder-side motion vector derivation |
WO2018174618A1 (ko) * | 2017-03-22 | 2018-09-27 | 한국전자통신연구원 | 참조 블록을 사용하는 예측 방법 및 장치 |
US10477237B2 (en) * | 2017-06-28 | 2019-11-12 | Futurewei Technologies, Inc. | Decoder side motion vector refinement in video coding |
EP4300967A3 (en) * | 2017-06-30 | 2024-04-10 | Huawei Technologies Co., Ltd. | Error resilience and parallel processing for decoder side motion vector derivation |
GB2563943B (en) * | 2017-06-30 | 2021-02-24 | Canon Kk | Method and apparatus for encoding or decoding video data in FRUC mode with reduced memory accesses |
GB2564133B (en) * | 2017-07-04 | 2021-03-17 | Canon Kk | Method and apparatus for encoding or decoding video data with sub-pixel motion vector refinement |
CN110832859B (zh) * | 2017-07-11 | 2022-02-25 | 华为技术有限公司 | 一种基于模板匹配的解码方法及装置 |
WO2019072368A1 (en) * | 2017-10-09 | 2019-04-18 | Huawei Technologies Co., Ltd. | LIMITED MEMORY ACCESS WINDOW FOR MOTION VECTOR REFINEMENT |
US11750832B2 (en) * | 2017-11-02 | 2023-09-05 | Hfi Innovation Inc. | Method and apparatus for video coding |
US11234016B2 (en) | 2018-01-16 | 2022-01-25 | Samsung Electronics Co., Ltd. | Method and device for video decoding, and method and device for video encoding |
US11575925B2 (en) * | 2018-03-30 | 2023-02-07 | Electronics And Telecommunications Research Institute | Image encoding/decoding method and device, and recording medium in which bitstream is stored |
WO2019225932A1 (ko) * | 2018-05-21 | 2019-11-28 | 엘지전자 주식회사 | 영상 코딩 시스템에서 dmvr을 사용하는 영상 디코딩 방법 및 그 장치 |
US10469869B1 (en) * | 2018-06-01 | 2019-11-05 | Tencent America LLC | Method and apparatus for video coding |
WO2019234669A1 (en) | 2018-06-07 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Signaled mv precision |
CN116347099A (zh) | 2018-06-19 | 2023-06-27 | 北京字节跳动网络技术有限公司 | 没有运动矢量预测截断的选择的运动矢量差精度 |
KR20210021971A (ko) | 2018-06-22 | 2021-03-02 | 소니 주식회사 | 화상 처리 장치 및 방법 |
KR102606778B1 (ko) * | 2018-06-28 | 2023-11-29 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 모션 벡터 리파인먼트 및 모션 보상을 위한 메모리 액세스 윈도우 및 패딩 |
TWI719519B (zh) * | 2018-07-02 | 2021-02-21 | 大陸商北京字節跳動網絡技術有限公司 | 對於dmvr的塊尺寸限制 |
US10911751B2 (en) * | 2018-09-14 | 2021-02-02 | Tencent America LLC | Method and apparatus for video coding |
EP3841751B1 (en) | 2018-09-19 | 2024-04-17 | Huawei Technologies Co., Ltd. | Method for skipping refinement based on patch similarity in bilinear interpolation based decoder-side motion vector refinement |
KR20240005178A (ko) * | 2018-09-19 | 2024-01-11 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 적응적 움직임 벡터 해상도를 가지는 어파인 모드에 대한 구문 재사용 |
CN111083484B (zh) | 2018-10-22 | 2024-06-28 | 北京字节跳动网络技术有限公司 | 基于子块的预测 |
CN111083489B (zh) | 2018-10-22 | 2024-05-14 | 北京字节跳动网络技术有限公司 | 多次迭代运动矢量细化 |
WO2020098643A1 (en) | 2018-11-12 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Simplification of combined inter-intra prediction |
CN113170093B (zh) | 2018-11-20 | 2023-05-02 | 北京字节跳动网络技术有限公司 | 视频处理中的细化帧间预测 |
CN117319644A (zh) | 2018-11-20 | 2023-12-29 | 北京字节跳动网络技术有限公司 | 基于部分位置的差计算 |
CN113366851A (zh) | 2019-01-31 | 2021-09-07 | 北京字节跳动网络技术有限公司 | 对称运动矢量差编解码模式的快速算法 |
CN118118659A (zh) | 2019-01-31 | 2024-05-31 | 北京字节跳动网络技术有限公司 | 记录仿射模式自适应运动矢量分辨率的上下文 |
WO2020156538A1 (en) | 2019-02-03 | 2020-08-06 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between mv precisions and mv difference coding |
CN113424535A (zh) | 2019-02-13 | 2021-09-21 | 北京字节跳动网络技术有限公司 | 基于运动矢量预测表的历史更新 |
CN113424533B (zh) | 2019-02-14 | 2024-09-10 | 北京字节跳动网络技术有限公司 | 复杂度降低的解码器侧运动推导 |
WO2020177756A1 (en) | 2019-03-06 | 2020-09-10 | Beijing Bytedance Network Technology Co., Ltd. | Size dependent inter coding |
CN115190317A (zh) | 2019-04-02 | 2022-10-14 | 抖音视界有限公司 | 解码器侧运动矢量推导 |
CN115314708B (zh) * | 2019-05-15 | 2023-05-12 | 华为技术有限公司 | 视频码流的解码方法及对应的设备及介质 |
ES2968830T3 (es) * | 2019-06-04 | 2024-05-14 | Huawei Tech Co Ltd | Intercodificación en codificación de vídeo con soporte de múltiples capas |
EP3993423A4 (en) * | 2019-07-08 | 2023-02-22 | Hyundai Motor Company | METHOD AND DEVICE FOR ENCODING AND DECODING VIDEO USING INTERPREDICTION |
US11736720B2 (en) * | 2019-09-03 | 2023-08-22 | Tencent America LLC | Motion vector refinement methods for video encoding |
CN111586420B (zh) * | 2020-04-30 | 2022-09-20 | 中山大学 | 镜像模板匹配帧内预测方法、装置及视频解码方法、装置 |
US11653001B2 (en) | 2020-09-11 | 2023-05-16 | Ofinno, Llc | Intra block copy |
US11968356B2 (en) * | 2022-03-16 | 2024-04-23 | Qualcomm Incorporated | Decoder-side motion vector refinement (DMVR) inter prediction using shared interpolation filters and reference pixels |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200949824A (en) * | 2004-04-28 | 2009-12-01 | Panasonic Corp | Apparatus and method for moving picture stream generation, apparatus and method for moving picture decoding, recording method for recording a moving picture stream onto a recording medium, and moving picture decoding system |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07250328A (ja) * | 1994-01-21 | 1995-09-26 | Mitsubishi Electric Corp | 動きベクトル検出装置 |
JP3351705B2 (ja) * | 1997-04-25 | 2002-12-03 | 日本ビクター株式会社 | 動き補償符号化装置、動き補償符号化方法、及び記録媒体への記録方法 |
KR100931750B1 (ko) * | 2002-04-19 | 2009-12-14 | 파나소닉 주식회사 | 움직임 벡터 계산방법 |
KR100906473B1 (ko) * | 2002-07-18 | 2009-07-08 | 삼성전자주식회사 | 개선된 움직임 벡터 부호화 및 복호화 방법과 그 장치 |
US8009731B2 (en) * | 2002-11-25 | 2011-08-30 | Panasonic Corporation | Motion compensation method, picture coding method and picture decoding method |
US7724827B2 (en) * | 2003-09-07 | 2010-05-25 | Microsoft Corporation | Multi-layer run level encoding and decoding |
KR100846780B1 (ko) * | 2003-11-10 | 2008-07-16 | 삼성전자주식회사 | 움직임 벡터 추정 방법 및 장치 |
US8160143B2 (en) * | 2004-02-03 | 2012-04-17 | Panasonic Corporation | Decoding device, encoding device, interpolation frame creating system, integrated circuit device, decoding program, and encoding program |
WO2008108566A1 (en) * | 2007-03-02 | 2008-09-12 | Lg Electronics Inc. | A method and an apparatus for decoding/encoding a video signal |
CN101415122B (zh) * | 2007-10-15 | 2011-11-16 | 华为技术有限公司 | 一种帧间预测编解码方法及装置 |
KR20090094595A (ko) * | 2008-03-03 | 2009-09-08 | 삼성전자주식회사 | 복수 참조에 의한 움직임 예측을 이용한 부호화 방법 및장치, 그리고 복수 참조에 의한 움직임 예측을 이용한복호화 방법 및 장치 |
EP2266318B1 (en) * | 2008-03-19 | 2020-04-22 | Nokia Technologies Oy | Combined motion vector and reference index prediction for video coding |
-
2010
- 2010-06-30 US US12/826,693 patent/US20110176611A1/en not_active Abandoned
- 2010-12-03 TW TW099142062A patent/TWI449432B/zh not_active IP Right Cessation
- 2010-12-14 CN CN201210515074XA patent/CN102970543A/zh active Pending
- 2010-12-14 CN CN201510936875.7A patent/CN105530516A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200949824A (en) * | 2004-04-28 | 2009-12-01 | Panasonic Corp | Apparatus and method for moving picture stream generation, apparatus and method for moving picture decoding, recording method for recording a moving picture stream onto a recording medium, and moving picture decoding system |
Non-Patent Citations (3)
Title |
---|
Steffen Kamp, "DECODER SIDE MOTION VECTOR DERIVATION FOR INTER FRAME VIDEO CODING", ICIP, 2008 * |
Steffen Kamp, "FAST DECODER SIDE MOTION VECTOR DERIVATION FOR INTER FRAME VIDEO CODING", Picture Coding Symposium, 2009 * |
Suk-Ju Kang, "Design and Implementation of Median Filter based Adaptive Motion Vector Smoothing for Motion Compensated Frame Rate Up-Conversion", The 13th IEEE International Symposium on Consumer Electronics (I) * |
Also Published As
Publication number | Publication date |
---|---|
TW201125369A (en) | 2011-07-16 |
CN105530516A (zh) | 2016-04-27 |
US20110176611A1 (en) | 2011-07-21 |
CN102970543A (zh) | 2013-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI449432B (zh) | 解碼端移動向量導出方法 | |
CN113196772B (zh) | 块内拷贝模式和基于子块的运动矢量预测模式之间的交互 | |
JP6553691B2 (ja) | 候補リスト共有方法及びこのような方法を使用する装置 | |
US9693075B2 (en) | Picture encoding device, picture encoding method, picture encoding program, picture decoding device, picture decoding method, and picture decoding program | |
JP5081305B2 (ja) | フレーム間予測符号化の方法および装置 | |
CA2933341C (en) | Predictive encoding method, predictive encoding device, and predictive encoding program of motion vector, and, predictive decoding method, predictive decoding device, and predictive decoding program of motion vector | |
WO2020084511A1 (en) | Simplified entropy coding for sub-block based motion information list | |
CN110832862B (zh) | 解码端运动矢量导出的容错与并行处理 | |
CN102131091B (zh) | 解码端运动向量导出方法 | |
JP2015019420A (ja) | 映像復号化方法 | |
US9749657B2 (en) | Buffer compression for motion vector competition | |
JP2023017760A (ja) | ビデオデータインター予測方法及び装置 | |
KR20220049018A (ko) | Prof를 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법 | |
WO2020003262A1 (en) | Symmetric bi-prediction mode for video coding | |
WO2020089822A1 (en) | Overlapped block motion compensation with derived motion information from neighbors | |
TW202025763A (zh) | 視訊編碼系統中結合多重預測子用於區塊預測之方法和裝置 | |
KR20160072836A (ko) | 인터 예측 방법 및 그 장치 | |
PH12016501594B1 (en) | Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block | |
EP3977739A1 (en) | Merge candidate reorder based on global motion vector cross-reference to related applications | |
CN115348443A (zh) | 一种运动信息确定方法、装置及其设备 | |
WO2015008339A1 (ja) | 動画像符号化装置、動画像符号化方法及び動画像復号装置ならびに動画像復号方法 | |
CN113709499B (zh) | 一种编解码方法、装置及其设备 | |
KR20130065673A (ko) | 움직임 벡터를 복호화하는 장치 | |
AU2018267557A1 (en) | Predictive encoding method, predictive encoding device, and predictive encoding program of motion vector, and, predictive decoding method, predictive decoding device, and predictive decoding program of motion vector |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |