TWI445411B - 在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置 - Google Patents

在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置 Download PDF

Info

Publication number
TWI445411B
TWI445411B TW100112709A TW100112709A TWI445411B TW I445411 B TWI445411 B TW I445411B TW 100112709 A TW100112709 A TW 100112709A TW 100112709 A TW100112709 A TW 100112709A TW I445411 B TWI445411 B TW I445411B
Authority
TW
Taiwan
Prior art keywords
decoding
sub
decoding unit
motion vector
unit
Prior art date
Application number
TW100112709A
Other languages
English (en)
Other versions
TW201143462A (en
Inventor
Jian Liang Lin
Yu Pao Tsai
Shaw Min Lei
Original Assignee
Mediatek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mediatek Inc filed Critical Mediatek Inc
Publication of TW201143462A publication Critical patent/TW201143462A/zh
Application granted granted Critical
Publication of TWI445411B publication Critical patent/TWI445411B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置
本發明係與視頻處理之運動補償相關,更準確地,本發明係與一譯碼單元(coding unit)之視頻譯碼中執行局部運動向量推導之方法以及執行上述方法之裝置有關。
運動向量補償係視頻壓縮中對視頻資料進行編碼與解碼所使用之技術。藉由運動補償的幫助,一當前圖像能夠以一或多個參考圖像之某些部分來描繪,其中上述參考圖像可為時間上提前或者延後。典型地,圖像可藉由運動補償而由先前所傳輸/儲存的圖像來準確地合成,並且可提升壓縮效率。隨著編碼技術的進步,關於新標準的設計被引進以更增進壓縮效率。
因此,本發明目的之一係提供一種在譯碼單元之視頻譯碼過程中執行局部運動向量推導之方法,並且提供執行上述方法之相關裝置,以增進視頻處理之壓縮效率。
本發明之一實施例提供了一種在一譯碼單元之視頻譯碼中執行局部運動向量推導之方法,上述方法包含:將譯碼單元分割為多個子譯碼單元進行處理;對每一子譯碼單元執行運動向量預測。更具體來說,其中對每一子譯碼單元執行運動向量預 測之步驟包含:藉由利用至少一其他子譯碼/譯碼單元之至少一運動向量,獲得一特定子譯碼單元之一運動向量;以及藉由利用不同於獲得特定子譯碼單元之運動向量所使用之運動向量的至少一運動向量,獲得譯碼單元之另一子譯碼單元之一運動向量。此外,上述方法包含依據特定子譯碼單元之運動向量,對特定子譯碼單元執行運動補償。
本發明之另一實施例提供了一種對一譯碼單元視頻譯碼執行局部運動向量推導之裝置,上述裝置包含:處理電路,執行上述譯碼單元之視頻譯碼。處理電路包含:預處理模組與至少一譯碼模組。其中上述預處理模組將譯碼單元分割為多個子譯碼單元進行處理,並且對每一子譯碼單元執行運動向量預測,其中預處理模組藉由利用至少一其他子譯碼/譯碼單元之至少一運動向量,獲得特定子譯碼單元之運動向量,以及依據特定子譯碼單元之運動向量對特定子譯碼單元執行運動補償,其中預處理模組藉由利用不同於獲得特定子譯碼單元之運動向量所使用的運動向量的至少一運動向量,獲得譯碼單元中另一子譯碼單元之一運動向量。並且上述至少一譯碼模組依據預處理模組執行之運動補償來對譯碼單元執行視頻譯碼。
本發明之又一實施例提供了一種在譯碼單元之視頻譯碼中執行局部運動向量推導之方法,上述方法包含:接收譯碼單元,其中譯碼單元包含多個子譯碼單元;解析譯碼單元之資 料;以及依據一預定準則指定譯碼單元之特定子譯碼單元之一參考運動向量,其中上述參考運動向量係用來供給至少一其他子譯碼/譯碼單元參考,並且並非使用上述參考運動向量來進行特定子譯碼單元之運動向量預測。
本發明之優勢在於編碼器與解碼器可適當地執行局部運動向量推導。藉由利用本發明之方法與相應裝置,運動向量預測操作與運動補償操作可提高編碼效率。
在說明書及後續的申請專利範圍當中使用了某些辭彙來指稱特定的元件。所屬領域中具有通常知識者應可理解,製造商可能會用不同的名詞來稱呼同樣的元件。本說明書及後續的申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的基準。在通篇說明書及後續的請求項當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於」。另外,「耦接」一詞在此係包含任何直接及間接的電氣連接手段。因此,若文中描述第一裝置耦接於第二裝置,則代表第一裝置可直接電氣連接於第二裝置,或透過其他裝置或連接手段間接地電氣連接至第二裝置。
請參考第1A圖,第1A圖舉例說明了依據本發明第一實施例之在一譯碼單元之視頻譯碼中執行局部運動向量推導之裝置100之簡單示意圖。裝置100包含一幀間/幀內預測模組 (inter/intra prediction module)110,一計算單元120,一轉換以及量化模組(transform and quantization module)130,一熵譯碼電路(entropy coding circuit)140,一反轉換以及反量化模組(inversed transform and inversed quantization module)150,一重建電路(reconstruction circuit)160,一解塊濾波器(deblocking filter)170,一幀緩衝器(frame buffer)180。裝置100能夠對一初始信號109執行視頻譯碼,以產生一攜帶編碼結果之輸出信號,例如攜帶熵譯碼電路140之輸出之輸出信號。舉例來說,初始信號109可代表具有譯碼單元資料之輸入視頻,並且熵譯碼電路140之輸出可為一位流(bitstream)輸出。
依據第一實施例,幀間/幀內預測模組110係用來執行幀間/幀內預測,以產生一預測信號119。如第1A圖所示,計算單元120係用來執行初始信號109與幀間/幀內預測模組110所產生的預測信號119之間的算術計算,例如減法計算。此外,轉換與量化模組130、熵譯碼電路、反轉換以及反量化模組150、重建電路160係用來分別執行轉換與量化,熵編碼,反轉化與反量化以及重建操作。因此,重建電路160產生一攜帶重建操作之重建結果之重建信號169。另外,解塊濾波器170係用來對重建信號169執行解塊操作,以獲得一攜帶了解塊視頻資料的解塊信號179,以暫時儲存在幀緩衝器180中,並且幀間/幀內預測模組110能夠藉由一恢復信號(restored signal)189 自幀緩衝器180中存取解塊視頻資料。上述說明僅僅用來舉例,而並非為本發明之限制。依據第一實施例之一些變型,可省略解塊濾波器170以及其解塊操作,重建信號169所攜帶之重建結果可暫時儲存在幀緩衝器180中,並且幀間/幀內預測模組110能夠藉由恢復信號189存取上述重建結果。
具體來說,至少一部分(例如一部分或者全部)裝置100可由硬體電路(hardware circuit)來實現。舉例來說,裝置100可由一針對譯碼單元執行視頻譯碼之一處理電路(processing circuit)來實現,其中上述處理電路可包含一預處理模組(preprocessing module)與至少一譯碼模組(coding module),上述預處理模組包含幀間/幀內預測模組110,上述譯碼模組包含計算單元120,轉換以及量化模組130,熵譯碼電路140,反轉換以及反量化模組150,重建電路160,解塊濾波器170。具體來說,裝置100之一或多個元件可由數字信號處理技術來實現。上述說明僅僅用來舉例說明,而並非為本發明之限制。依據第一實施例之一些變型,裝置100之至少一部分可藉由一程序模組(program module)來實現。舉例來說,處理電路可為執行多個程序模組之處理器,其中執行一第一部分程序模組之處理器可執行上述預處理模組相同或者相似的操作,並且執行一第二部分程序模組之處理器可執行上述譯碼模組之相同或者相似的操作。
無論裝置100之至少一部分(例如一部分或者全部)係由硬體電路還是程序模組來實現,裝置100皆可執行譯碼單元之視頻譯碼。舉例來說,譯碼單元可為16x16之宏區塊(MBs,macroblocks)。在另外的例子中,譯碼單元可具有特定的尺寸,其中上述特定尺寸可提前設定,並且不需要與宏區塊一致。在處理至少一圖像之一譯碼單元(例如上述譯碼單元)的過程中,需要預測一或者多個運動向量。依據本發明之實施例,上述預處理模組能夠分割上述譯碼單元為多個子譯碼單元(sub-coding unit),例如,上述譯碼單元之多種分區(例如正方或非正方分區),並且能夠針對每一子譯碼單元執行運動向量預測。更準確地說,預處理模組可利用至少一其他已編碼的子譯碼/譯碼單元之至少一運動向量來獲得多個子譯碼單元中的一特定子譯碼單元(specific sub-coding unit)之一運動向量,並且依據上述特定子譯碼單元之運動向量來對上述特定子譯碼單元執行運動補償。此外,上述譯碼模組可依據上述預處理模組所執行之運動補償來對上述譯碼單元執行視頻譯碼。
第1B圖舉例說明了本發明之第1A圖所示之實施例中的幀間/幀內預測模組110之預測操作。在此實施例中,記號F(t0-3)、F(t0-2)、F(t0-1)、以及F(t0)可用來代表多個後續幀{F(t)}中的一部分,其中F(t0)為當前幀。當前幀F(t0)可包含多個譯碼單元{CU(t0)},並且譯碼單元CU(t0)可包含多個子譯碼單元{SCU(t0)},其中記號v可代表特定子譯碼單元之運動向量,例 如第1B圖所示之子譯碼單元SCU(t0)之運動向量。因此,上述預處理模組可利用如上所述的至少一運動向量來獲得運動向量v,例如利用當前幀F(t0)中的其他譯碼單元之子譯碼單元A與B之運動向量vA與vB以及先前幀F(t0-1)之譯碼單元CU(t0-1)之一子譯碼單元T之運動向量vT來獲得運動向量v。具體來說,上述其他譯碼單元(或子譯碼單元)為已編碼的譯碼單元(或子譯碼單元)。舉例來說,在上述譯碼單元為區塊(block)的情況下,譯碼單元CU(t0-1)可配置為譯碼單元CU(t0)的同位置塊(collocated block)。通常來說,子譯碼單元SCU(t0)之運動向量v可表示如下: 其中指數k在集合K中變化,記號vk與wk(i)分別代表其他子譯碼/譯碼單元(更具體來說,一些已編碼的子譯碼/譯碼單元)之運動向量與其相關的加權參數。舉例來說,當變量k等於1時,則僅僅使用一個其他子譯碼/譯碼單元之一個運動向量vk來獲得運動向量v,更準確地說,上述加權參數wk(i)簡單地等於1。在其他例子中,當變量k大於1時,上述至少一其他子譯碼單元/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一運動向量包含多個其他子譯碼/譯碼單元(更具體來說,一些已編碼的子譯碼/譯碼單元)之多個運動向量{vk},特別地,上述加權參數{wk(i)}之總和等於1。上述操作之細節請參考第2圖。
第2圖為依據本發明之一實施例之在譯碼單元之視頻譯碼中執行局部運動向量推導之方法910之流程圖。方法910可應用於第1A圖所示之裝置100,特別地,可應用在上述處理電路上。上述方法詳述如下:
在步驟912中,上述預處理模組處理譯碼單元CU(t0)(例如,當前譯碼單元)為多個子譯碼單元,例如多個子譯碼單元{SCU(t0)},並且對多個子譯碼單元{SCU(t0)}中的每一個執行運動向量預測。舉例來說,上述預處理單元可接收包含多個子譯碼{SCU(t0)}之譯碼單元CU(t0),並且解析(parse)上述譯碼單元CU(t0)之資料。特別地,預處理模組利用上述至少一子譯碼/譯碼單元之至少一運動向量(例如上述運動向量{vk})來獲得多個子譯碼單元{SCU(t0)}中的特定子譯碼單元SCU(t0)之運動向量v。預處理模組可進一步使用至少一與獲得特定子譯碼單元SCU(t0)之運動向量所使用的運動向量不同的運動向量來獲得譯碼單元CU(t0)中的另一子譯碼單元之運動向量。當僅使用一個運動向量來獲得另一子譯碼單元(亦即,上述提及的譯碼單元CU(t0)中的另一子譯碼單元)之運動向量時,獲得上述另一子譯碼單元之運動向量所使用之運動向量與獲得特定子譯碼單元SCU(t0)之運動向量所使用之任何運動向量不同。當使用多個運動向量來獲得上述另一子譯碼單元之運動向量時,獲得上述另一子譯碼單元之運動向量所使用之運動向量與 獲得特定子譯碼單元SCU(t0)之運動向量所使用之運動向量不完全相同。舉例來說,獲得上述另一子譯碼單元之運動向量所使用之運動向量可為一第一運動向量集合{va,vb,vc},而獲得上述特定子譯碼單元之運動向量所使用之運動向量可為一第二運動向量集合{va,vb,vd}。上述特定子譯碼單元與上述另一子譯碼單元為同一譯碼單元中的任意兩個子譯碼單元。
依據本發明之一實施例,例如第3圖所示,譯碼單元CU(t0)可為一當前處理區塊,並且子譯碼單元SCU(t0)可為一子區塊(sub-block)SB,其中第3圖所示之陰影部分可代表至少一部分已編碼區塊集合{CB}。參見第3圖,上述已編碼區塊集合{CB}可包含一已編碼左區塊CBL,一已編碼左上區塊CBUL,一已編碼上區塊CBU,以及一已編碼右上區塊CBUR。並且運動向量集合{vk}可包含至少一部分(例如,部分或者全部)已編碼區塊{CB}之運動向量,例如一或多個已編碼區塊CBL、CBUL、CBU與CBUR之運動向量。
在步驟914,上述預處理模組依據特定子譯碼單元SCU(t0)之運動向量v對特定子譯碼單元SCU(t0)進行運動補償。舉例來說,每一譯碼單元(例如,譯碼單元CU(t0))可為一區塊,更具體來說,可為一包含像素陣列之區塊,例如一擴展宏區塊、一宏區塊、或者一部分宏區塊。因此,一子譯碼單元可為一子區塊。依據本發明之一實施例,如第3圖所示,上述預處 理模組可如上所述般依據運動向量v對處理中區塊進行運動補償,其中上述運動向量v可為多個已編碼區塊{CB}之至少一部分(例如一或多個已編碼區塊CBL、CBUL、CBU以及CBUR)之運動向量之加權總和。在本實施例中,上述多個已編碼區塊{CB}可為運動補償區塊。
第4圖係依據本發明之第2圖所示之實施例之方法910之相關細節圖。依據本實施例,上述預處理模組利用多個運動向量之加權總和(例如)作為上述特定子譯碼單元之運動向量v。為了獲得更好的補償效果,已編碼區塊CBL、CBUL、CBU以及CBUR可與第3圖所示相同。舉例來說,上述多個其他子譯碼/譯碼單元可包含已編碼區塊CBL、CBUL、CBU以及CBUR中的一或多個,並且上述多個運動向量可包含已編碼區塊CBL、CBUL、CBU以及CBUR所對應的運動向量vL、vUL、vU以及vUR中的一或多個。
更具體來說,對於上述第4圖所示之每一子區塊,例如第i個子區塊bi,可依據已編碼區塊{CB}之多個運動向量來獲得子區塊bi之運動向量v(i),或稱為運動向量預測子(motion vector predictor),如下式所示: 其中參數k在集合K中變化,並且記號vk與wk(i)分別代表第k個參考運動向量以及相關的加權參數。舉例來說,bi Bm, 並且記號Bm代表處理中區塊之子區塊集合。如第4圖所示,運動向量集合{vk}中的運動向量vk在已編碼區塊CBU中,說明在此情況下,運動向量集合{vk}包含已編碼區塊CBU之運動向量集合{vU}。
在一實施例中,例如第4圖所示之實施例之變型中,上述預處理模組可利用多個運動向量{vk}之最佳維納濾波(optimum Wiener filtering)來決定運動向量集合{vk}中的每一個對應的加權參數之集合{wk(i)},以產生上述加權總和(在此變型中即為)。舉例來說,上述預處理模組可利用最佳維納濾波來依據下式獲得加權參數集合{wk(i)}: 上述算式表示加權參數集合{wk(i)}可藉由搜尋在上述預處理模組所執行之最佳維納濾波中之最小值所對應集合(w0 *,...,wK *)。上述說明僅僅用來舉例,而並非為本發明之限制。依據本發明之第4圖所示之實施例之變型,上述預處理模組可依據至少一臨近(neighboring)譯碼單元之內容來決定運動向量集合{vk}中的每一個所分別對應之加權參數之集合{wk(i)},例如依據已編碼區塊CBL、CBUL、CBU與CBUR中的一或多個之內容(content)來產生加權總和(此變型中為)。依據本發明之第4圖所示之實施例之另一變型,上述預處理模組可依據多個其他子譯碼/譯碼單元之內容來決定運動向量集合{vk}中的每一個所分別對應之 加權參數之集合{wk(i)},以產生加權總和(此變型中為(wk(i)vk))。
在其他實施例中,例如本發明之第4圖所示之實施例之一些變型中,上述預處理模組可藉由離線訓練(offline training)或者即時線上訓練(online training)來決定上述運動向量集合{vk}中的每一個所對應加權參數之集合{wk(i)},以產生加權總和(此變型中即為)。依據本發明之第4圖所示之實施例之另一些變型中,上述預處理模組可利用多個運動向量{vk}之平均值為上述特定子譯碼單元之運動向量v,這也代表了上述加權參數中集合{wk(i)}中的任意兩個相等。更確切地說,在此變型中,上述加權參數{wk(i)}中每一個等於1/n(K),其中n(K)代表集合K中的變量k的可能值。
第5A-5D圖係依據本發明之第2圖所示之方法910之不同實施例的相關細節圖。在這些實施例中,在k之可能值之數量大於1的情況下,上述至少一其他子譯碼單元/譯碼單元依然包含多個其他子譯碼/譯碼單元,並且上述至少一運動向量依然包含上述多個其他子譯碼/譯碼單元之運動向量{vk}。然而,上述預處理模組並不需要利用如上所述的加權總和(例如(wk(i)vk))來作為特定子譯碼單元之運動向量。依據上述實施例,上述預處理模組可預處理多個運動向量{vk}來獲得特定子譯碼單元之運動向量v。舉例來說,上述預處理模組可計算多 個運動向量之中值(median),濾波多個運動向量,計算上述多個運動向量之一加權總和,或者執行計算多個運動向量之中值,濾波多個運動向量,計算上述多個運動向量之一加權總和之任意組合。
具體來說,運動向量集合{vk}可包含至少一子譯碼單元之至少一運動向量。舉例來說,運動向量集合{vk}可包含同一譯碼單元CU(t0)中的至少一其他子譯碼單元(亦即為處理中的子譯碼單元SCU(t0)之外的子譯碼單元)之至少一運動向量,例如第5D圖所示之子譯碼單元A、B、C以及D之運動向量vA、vB、vC以及vD中的一或多個。在另一舉例說明中,運動向量集合{vk}可包含其他譯碼單元中的至少一子譯碼單元之至少一運動向量,例如第5A-5C圖所示之子譯碼單元A、B、C以及D之運動向量vA、vB、vC以及vD中的一或多個。在另一舉例說明中,運動向量集合{vk}可包含至少一自時序(temporal direction)所獲得之運動向量,例如自時序上前一幀所包含之子譯碼單元獲得。具體來說,當譯碼單元為區塊時,第5A-5D圖所示之子譯碼單元A、B、C以及D可視為子區塊。
依據第5A圖所示之實施例,子譯碼單元A、B、C以及D分別屬於已編碼區塊CBL、CBU、CBUR以及CBUL。此外,已編碼區塊CBL、CBU、CBUR以及CBUL分別為當前處理區塊之已編碼左區塊,已編碼上區塊,已編碼右上區塊,以及已編碼 左上區塊。更具體來說,針對第5A圖所示之第i個子區塊bi來說,在已編碼左區塊CBL中選擇子譯碼單元A,在已編碼上區塊CBU中選擇子譯碼單元B,在已編碼右上區塊CBUR中選擇子譯碼單元C,在已編碼左上區塊CBUL中選擇子譯碼單元D。此外,上述預處理模組預處理第5A圖所示之子譯碼單元A、B以及C之運動向量vA、vB以及vC來計算特定子譯碼單元(例如第i個子區塊bi)之運動向量v。本實施例中的運動向量v可藉由計算運動向量A、vB以及vC之中值(median)來獲得,表示如下:v=Median(vA,vB,vC);其中記號Median代表括號中的向量/值之中值。如果無法獲得運動向量vC,可用運動向量vD代替運動向量vC以計算運動向量v。在其他實施例中,可向子譯碼單元A、B以及C之運動向量vA、vB以及vC指定不同的加權參數。舉例來說,加權參數可依據特定子譯碼單元(例如bi)與子譯碼單元A、B以及C之間的距離來決定。較短的距離可對應較大的加權參數。在另一實施例中,預處理模組可過濾預先決定的已編碼子譯碼單元之運動向量來獲得運動向量v。
上述預處理模組可決定上述特定子譯碼單元(例如第i個子譯碼區塊bi)之尺寸為譯碼單元之視頻譯碼之一變換尺寸(transform size),並且用來獲得特定子譯碼單元(例如第i個子譯碼區塊bi)之運動向量v之子譯碼單元之尺寸可與變換 尺寸相同(例如,4乘4,8乘8,16乘16等等)。
依據第5B圖所示之實施例,子譯碼單元A屬於已編碼左區塊CBL,並且子譯碼單元B、C以及D屬於已編碼上區塊CBU。更具體來說,針對第5B圖所示之第i個子區塊bi來說,在已編碼左區塊CBL中選擇子譯碼單元A,在已編碼上區塊CBU中選擇子譯碼單元B。此外,針對子譯碼單元B而言,子譯碼單元C為已編碼上區塊CBU中右臨近子譯碼單元(如果存在),並且子譯碼單元D為已編碼上區塊CBU中左臨近子譯碼單元(如果存在)。因此,針對第5B圖所示之第i個子區塊bi來說,在已編碼上區塊CBU中選擇三個子譯碼單元B、C以及D。在其他實施例中,當預處理模組處理當前區塊之第一行(column)子譯碼單元時,子譯碼單元D可屬於已編碼左上區塊CBUL,子譯碼單元C可屬於已編碼右上區塊CBUR。此外,上述預處理模組可利用第5B圖所示之子譯碼單元A、B、C以及D之運動向量vA、vB、vC以及vD中的一或多個來計算運動向量v。舉例來說,計算上述預先決定的四個子譯碼單元之運動向量之中值,來作為特定子譯碼單元(例如第i個子區塊bi)之運動向量v。表示如下:v=Median(vA,vB,vC,vD).
上述預處理模組可決定上述特定子譯碼單元之尺寸為譯碼單元之視頻譯碼之一變換尺寸,並且第5B圖所示之子譯碼單元之尺寸可與變換尺寸相同(例如,4乘4,8乘8,16乘 16等等)。依據其他實施例,例如第5B圖所示之實施例以及一些變型,當利用中值函數Median(‧)來計算運動向量v時所使用的運動向量(例如第5B圖所示之實施例中的運動向量vA、vB、vC以及vD)數目為偶數時,中值函數的定義可變化。利用中值函數來計算運動向量v所使用之運動向量儲存結果可依照順序寫成如下形式v1,v2,...,v2N。亦即,假設vn與v(n+1)代表所儲存結果v1,v2,...,v2N中的兩個臨近運動向量,則運動向量vn小於運動向量v(n+1)(亦即|vn|<|v(n+1)|)。在一些實施例中,中值函數Median(‧)可定義為vN、v(N+1)或(vN+v(N+1))/2。舉例來說,上述多個運動向量的數目為4(亦即2N=4),並且上述多個運動向量可寫為v1、v2、v3與v4,則中值可為(v2+v3)/2,即代表了運動向量v等於(v2+v3)/2。在其他實施例中,上述多個運動向量之數目等於4,並且上述多個運動向量可寫為v1、v2、v3與v4,並且中值可為v2,即代表了運動向量v等於v2。在另一實施例中,上述多個運動向量之數目等於4,並且上述多個運動向量可寫為v1、v2、v3與v4,並且中值可為v3,即代表了運動向量v等於v3
依據第5C圖所示之實施例,子譯碼單元A屬於已編碼左區塊CBL,子譯碼單元B以及C屬於已編碼上區塊CBU,子譯碼單元D屬於已編碼左上區塊CBUL。更具體來說,針對第5C圖所示之第i個子區塊bi來說,在已編碼左區塊CBL中選擇子譯碼單元A,在已編碼上區塊CBU中選擇子譯碼單元 B,在已編碼左上區塊CBUL中選擇子譯碼單元D。此外,針對子譯碼單元B而言,子譯碼單元C為已編碼上區塊CBU中右臨近子譯碼單元(如果存在)。此外,上述預處理模組可利用第5C圖所示之子譯碼單元A、B、C以及D之運動向量vA、vB、vC以及vD中的一或多個來計算運動向量v。舉例來說,計算運動向量vA、vB、vC以及vD之中值,來作為特定子譯碼單元(例如第i個子區塊bi)之運動向量v,或者如果無法獲得運動向量vC,則計算運動向量vA、vB以及vD之中值,來作為特定子譯碼單元(例如第i個子區塊bi)之運動向量v。表示如下:v=Median(vA,vB,vC).
上述預處理模組可決定上述特定子譯碼單元之尺寸為譯碼單元之視頻譯碼之一變換尺寸,並且第5C圖所示之子譯碼單元之尺寸可與變換尺寸相同(例如,4乘4,8乘8,16乘16等等)。
依據第5B-5C圖所示之實施例之變型,上述預處理模組可利用或多或少的子譯碼單元之運動向量來獲得運動向量v。屬於一或多個子譯碼單元之運動向量之多種組合可用來推導特定子譯碼單元之運動向量v。其精神在於特定子譯碼單元之運動向量係從一組運動向量來局部導出,並且該組運動向量可與獲得當前處理區塊中的另一子譯碼單元之運動向量所使用之一組運動向量不同。
依據第5D圖所示之實施例,上述預處理模組可利用步驟912中提及的多個子譯碼單元之一部分運動向量來獲得相同譯碼單元中另一子譯碼單元之運動向量。參見第5D圖,子譯碼單元A、B、C以及D屬於當前處理區塊,其中子譯碼單元A、B、C以及D為步驟912中提及的多個子譯碼單元之一部分。更具體來說,針對第5D圖所示之第i個子區塊bi來說,子譯碼單元A為左臨近子譯碼單元,子譯碼單元B為上臨近子譯碼單元,子譯碼單元C為右上臨近子譯碼單元,子譯碼單元D為左上臨近子譯碼單元。在本實施例中,上述預處理模組可利用第5D圖所示之子譯碼單元A、B以及C之運動向量vA、vB以及vC之中值來作為特定子譯碼單元(例如第i個子區塊bi)之運動向量v。表示如下:v=Median(vA,vB,vC).
如果無法獲得子譯碼單元C,上述預處理模組則利用第5D圖所示之子譯碼單元A、B以及D之運動向量vA、vB以及vD之中值,來作為特定子譯碼單元之運動向量v。
上述預處理模組可決定上述特定子譯碼單元之尺寸為譯碼單元之視頻譯碼之一變換尺寸,並且第5D圖所示之子譯碼單元之尺寸可與變換尺寸相同(例如,4乘4,8乘8,16乘16等等)。
依據另一實施例,例如第5D圖所示之實施例之一變型, 上述預處理模組可利用第5D圖所示之子譯碼單元A、B、C以及D之運動向量vA、vB、vC以及vD之中值來作為特定子譯碼單元(例如第i個子區塊bi)之運動向量v,並且表示如下:v=Median(vA,vB,vC,vD).
本實施例之細節在此不再贅述。依據本發明之一些實施例以及其變型,當利用中值函數Median(‧)來計算運動向量v時所使用的運動向量數目為偶數時,中值函數的定義可變化。相似地,利用中值函數Median(‧)來計算運動向量v所使用之運動向量儲存結果可依照順序寫成如下形式v1、v2、...、v2N,中值函數Median(‧)可定義為vN、v(N+1)或(vN+v(N+1))/2。相似的細節在此不再贅述。
依據第5A-5D圖所示之實施例之變型,上述預處理模組可在不同的模式下(例如模式1、2、3與4)選擇性操作,其中模式1、2、3與4之操作分別與第5A-5D圖所示之實施例相同或的相似。舉例來說,在模式1中,上述預處理模組可依據第5A圖所示之實施例之相同方法來操作,而在其他模式中,例如模式2、3與4中,上述預處理模組可分別依據第5B-5D圖所示之實施例之相同方法來操作。
依據第5A-5D圖所示之任意實施例之一變型,在步驟912中,上述預處理模組可依據至少一臨近譯碼單元之至少一模式來分割譯碼單元為多個子譯碼單元,例如依據已譯碼單元CBL、CBU、CBUR以及CBUL中的一或多個之模式1、2、3以 及/或者4來分割譯碼單元為多個子譯碼單元。依據第5A-5D圖所示之任意實施例之另一變型,在步驟912中,上述預處理模組可依據至少一臨近譯碼單元之內容來分割譯碼單元為多個子譯碼單元,例如依據已譯碼單元CBL、CBU、CBUR以及CBUL中一或多個之內容來分割譯碼單元為多個子譯碼單元。
依據上述任意實施例之變型,無論上述預處理單元是否利用加權總和(例如)或者利用中值(例如Median(vA,vB,vC)或Median(vA,vB,vC,vD))作為上述特定子譯碼單元之運動向量v,上述提及的至少一其他子譯碼/譯碼單元為一已編碼的子譯碼/譯碼單元。舉例來說,在一部分實施例變型中,上述提及的至少一其他子譯碼/譯碼單元包含至少一空間(spatially)已編碼的子譯碼/譯碼單元,以及/或者至少一時間(temporally)已編碼的子譯碼/譯碼單元。在另一實施例中,上述提及的至少一其他子譯碼單元可為運動補償子譯碼/譯碼單元。
第6圖係本發明之第2圖所示之實施例之方法910所涉及之細節圖。依據本實施例,上述預處理模組依然分割譯碼單元CU(t0)(例如當前處理譯碼單元)為多個子譯碼單元(例如子譯碼單元{SCU(t0)}),並且在步驟912中對每一子譯碼單元{SCU(t0)}執行運動向量預測。然而,當上述預處理模組利用多個運動向量,例如如上所述的運動向量{vk},來獲得特定子譯 碼單元SCU(t0)之運動向量v時,對每一子譯碼單元須指定一運動向量(例如一參考運動向量),從而可提供給其他子譯碼/譯碼單元後續參考。在編碼器與解碼器相互匹配的條件下,上述指定運動向量的準則可任意運用。在一些制定運動向量之預定規則中,包含H.264中定義的運動向量預測子,H.264中定義之運動向量預測具有運動向量縮放(scaling),自左區塊填充(padding),自上區塊填充以及自左上區塊填充。依據一自左區塊與上區塊填充之實施例,上述預處理模組獲得上述特定子譯碼單元SCU(t0)之運動向量v,並且利用另一譯碼單元(當前處理譯碼單元CU(t0)之外的譯碼單元)之一子譯碼單元之運動向量來指定一運動向量,舉例來說,利用譯碼單元CU(t0)之臨近譯碼單元CUADJ(t0)之一已編碼的子譯碼單元。更具體來說,對於特定子譯碼單元SCU(t0)而言,其他譯碼單元(例如譯碼單元CUADJ(t0))之一子譯碼單元為上述其他譯碼單元中最接近的子譯碼單元,並且上述預處理模組可利用其他譯碼單元(例如譯碼單元CUADJ(t0))中的最接近子譯碼單元之運動向量來作為特定子譯碼單元SCU(t0)之指定的運動向量。上述指定一譯碼單元或者一子譯碼單元之運動向量主要用來作為其他譯碼單元或者子譯碼單元之一參考運動向量,而並非一定用來運動預測。
如第6圖所示,對於譯碼單元CU(t0)(例如當前處理區塊)而言,本實施例中的臨近譯碼單元{CUADJ(t0)}可包含至少一部 分的已編碼左區塊CBL、已編碼上區塊CBU、已編碼右上區塊CBUR、以及已編碼左上區塊CBUL,其中上述已編碼區塊CBL、CBU、CBUR以及CBUL中的子譯碼單元可視為子區塊。為了獲得更好的補償效果,已編碼左區塊CBL中的最右行的子譯碼單元之運動向量y1、y2、y3、y4、y5、y6、y7以及y8分別標示在最右行的子譯碼單元中。相似地,已編碼上區塊CBU中的最低列的子譯碼單元之運動向量x1、x2、x3、x4、x5、x6、x7以及x8分別標示在最低列的子譯碼單元中。此外,已編碼右上區塊CBUR之右底子譯碼單元之運動向量d以及已編碼左上區塊CBUL之左底子譯碼單元之運動向量x9分別標示其中。
依據本實施例,上述預處理模組接收包含多個子譯碼單元{SCU(t0)}之譯碼單元CU(t0),並且解析譯碼單元CU(t0)之資料,以及依據一預先決定準則指定多個子譯碼單元{SCU(t0)}中的特定子譯碼單元SCU(t0)之一參考運動向量,其中上述參考運動量係用來被至少一其他子譯碼單元參考,而並非用於特定子譯碼單元SCU(t0)之運動向量預測。藉由參考運動向量,上述預處理模組可快速操作,而不需要等待特定子譯碼單元SCU(t0)之實際運動向量之複雜的計算。具體來說,上述預處理模組可指定上述參考運動向量為一臨近譯碼單元之至少一部分之運動向量。更確切地說,上述臨近譯碼單元之至少一部分可為上述臨近譯碼單元中的最接近特定子譯碼單元的一部分。
舉例來說,假設上述特定子譯碼單元SCU(t0)代表當前處理區塊中某一列(row)子譯碼區塊之第j個子譯碼區塊,其中j在1至8之間變化。在第一指定準則(例如垂直指定)中,上述預處理模組可利用已編碼上區塊CBU中的最接近子譯碼單元之運動向量xj來作為特定子譯碼單元SCU(t0)之參考運動向量。
在另一實施例中,假設上述特定子譯碼單元SCU(t0)代表當前處理區塊中某一行子譯碼區塊之第j個子譯碼區塊,其中j在1至8之間變化。在第二指定準則(例如水平指定)中,上述預處理模組可利用已編碼左區塊CBL中的最接近子譯碼單元之運動向量yj來作為特定子譯碼單元SCU(t0)之參考運動向量。
在另一實施例中,可選擇一混合指定(hybrid designation)準則來決定上述參考運動向量。假設上述特定子譯碼單元SCU(t0)代表當前處理區塊中第4/8列子譯碼區塊之第j個子譯碼區塊,其中j在1至8之間變化。參見第6圖中箭頭所指向之第4/8列子譯碼區塊之第j個子譯碼區塊,上述預處理模組可利用已編碼上區塊CBU中的最接近子譯碼單元之運動向量xj來作為特定子譯碼單元SCU(t0)之參考運動向量。此外,假設上述特定子譯碼單元SCU(t0)代表當前處理區塊中第4/8行子譯碼區塊之第j個子譯碼區塊,其中j在1至7之間變化。 參見第6圖中箭頭所指向之第4/8行子譯碼區塊之第j個子譯碼區塊,上述預處理模組可利用已編碼左區塊CBL中的最接近子譯碼單元之運動向量yj來作為特定子譯碼單元SCU(t0)之參考運動向量。在此實施例中,譯碼單元CU(t0)中的剩餘子譯碼單元之參考運動向量可利用上述任意實施例之相同或者相似方法來獲得。在此不再贅述。
需注意的是,在上述實施例的一些變型中,上述預處理模組可利用一旗標(flag)來控制上述操作,更準確地說,可利用明確地發出一旗標來控制上述操作。舉例來說,依據一或多個實施例所實施之編碼器可發出一指示上述指定準則為“垂直指定”還是“水平指定”(甚至為“混合指定”)的旗標,從而藉由接收攜帶上述旗標之位流(bitstream),相應地解碼器可了解所應用的指定準則。
此外,在一些實施例中,上述多種運動向量指定方法(例如“垂直指定”、“水平指定”以及“混合指定”)可用來執行局部運動向量推導。舉例來說,當應用“垂直指定”時,每一列子譯碼單元之運動向量可由已編碼上譯碼單元CBU之相應位置(例如已編碼上譯碼單元CBU中的最接近子譯碼單元)來分別獲得。
本發明之優勢在於編碼器與解碼器可適當地執行局部運動向量推導,更準確地說,本發明可藉由一預先決定準則自多個 子譯碼單元之多個運動向量中選擇一個運動向量來獲得較好的壓縮性能。藉由利用本發明之方法與相應裝置,運動向量預測操作與運動補償操作可不引入相關的困擾(例如較低的編碼效率)。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
110‧‧‧幀間/幀內預測模組
120‧‧‧計算單元
130‧‧‧轉換以及量化模組
140‧‧‧熵譯碼電路
150‧‧‧反轉換以及反量化模組
160‧‧‧重建電路
170‧‧‧解塊濾波器
180‧‧‧幀緩衝器
109‧‧‧初始信號
119‧‧‧預測信號
169‧‧‧重建信號
179‧‧‧解塊信號
189‧‧‧恢復信號
910‧‧‧方法
912-914‧‧‧步驟
第1A圖舉例說明了依據本發明第一實施例之在一譯碼單元之視頻譯碼中執行局部運動向量推導之裝置100之簡單示意圖。
第1B圖舉例說明了本發明之第1A圖所示之實施例中的幀間/幀內預測模組110之預測操作。
第2圖為依據本發明之一實施例之在譯碼單元之視頻譯碼中執行局部運動向量推導之方法910之流程圖。
第3-6圖係依據本發明之第2圖所示之實施例之方法910之不同實施例的相關細節圖。
910‧‧‧方法
912、914‧‧‧步驟

Claims (36)

  1. 一種在一譯碼單元之視頻譯碼中執行局部運動向量推導之方法,上述方法包含:將上述譯碼單元分割為多個子譯碼單元進行處理;對每一上述子譯碼單元執行運動向量預測,其中上述對每一上述子譯碼單元執行運動向量預測之步驟包含:藉由利用至少一其他子譯碼/譯碼單元之至少一運動向量,獲得一特定子譯碼單元之一運動向量,其中用於上述特定子譯碼單元之上述至少一運動向量對應於空間上與上述特定子譯碼單元不相鄰之至少一子譯碼/譯碼單元;以及藉由利用不同於獲得上述特定子譯碼單元之上述運動向量所使用之運動向量的至少一運動向量,獲得上述譯碼單元之另一子譯碼單元之一運動向量;以及依據上述特定子譯碼單元之上述運動向量,對上述特定子譯碼單元執行運動補償。
  2. 如申請專利範圍第1項所述之方法,其中上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述對每一子譯碼單元執行運動向量預測之步驟更包含:計算上述多個運動向量之一加權總和,以獲得上述特定子譯碼單元之上述運動向量。
  3. 如申請專利範圍第2項所述之方法,其中上述對每一子譯碼單元執行運動向量預測之步驟更包含:對上述多個運動向量執行最佳維納濾波,以決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  4. 如申請專利範圍第2項所述之方法,其中上述對每一子譯碼單元執行運動向量預測之步驟更包含:依據至少一臨近譯碼單元之內容來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  5. 如申請專利範圍第2項所述之方法,其中上述對每一子譯碼單元執行運動向量預測之步驟更包含:依據上述多個其他子譯碼/譯碼單元之內容來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  6. 如申請專利範圍第2項所述之方法,其中上述對每一子譯碼單元執行運動向量預測之步驟更包含:藉由即時線上訓練來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  7. 如申請專利範圍第2項所述之方法,其中上述對每一子譯碼單元執行運動向量預測之步驟更包含: 藉由離線訓練來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  8. 如申請專利範圍第1項所述之方法,其中上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述對每一子譯碼單元執行運動向量預測之步驟更包含:計算上述多個運動向量之一平均值,以獲得上述特定子譯碼單元之上述運動向量。
  9. 如申請專利範圍第1項所述之方法,上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述對每一子譯碼單元執行運動向量預測之步驟更包含:計算上述多個運動向量之一中值,以獲得上述特定子譯碼單元之上述運動向量。
  10. 如申請專利範圍第1項所述之方法,其中上述不同於獲得上述特定子譯碼單元之上述運動向量所使用之運動向量的至少一運動向量包含上述多個子譯碼單元中的一部分子譯碼單元之多個運動向量,並且上述對每一子譯碼單元執行運動向量預測之步驟更包含: 計算上述多個運動向量之一中值,以獲得上述另一子譯碼單元之運動向量。
  11. 如申請專利範圍第1項所述之方法,其中上述將該譯碼單元處理為多個子譯碼單元之步驟更包含:決定上述特定子譯碼單元之一尺寸,作為上述譯碼單元之視頻譯碼之一變換尺寸。
  12. 如申請專利範圍第1項所述之方法,其中上述將該譯碼單元處理為多個子譯碼單元之步驟更包含:依據至少一臨近譯碼單元之至少一模式,分割上述譯碼單元為上述多個子譯碼單元。
  13. 如申請專利範圍第1項所述之方法,其中上述將該譯碼單元處理為多個子譯碼單元之步驟更包含:依據至少一臨近譯碼單元之內容,分割上述譯碼單元為上述多個子譯碼單元。
  14. 如申請專利範圍第1項所述之方法,其中上述至少一其他子譯碼/譯碼單元中的每一個係一已編碼的子譯碼/譯碼單元。
  15. 如申請專利範圍第14項所述之方法,其中上述至少一其他子譯碼/譯碼單元包含至少一空間編碼的子譯碼/譯碼單元以及/或者至少一時間編碼的子譯碼/譯碼單元。
  16. 如申請專利範圍第14項所述之方法,其中上述至少一其他子譯碼/譯碼單元中的每一個係一運動補償子譯碼/譯碼單元。
  17. 一種對一譯碼單元視頻譯碼執行局部運動向量推導之裝置,上述裝置包含:一處理電路,執行上述譯碼單元之視頻譯碼,其中上述處理電路包含:一預處理模組,將上述譯碼單元分割為多個子譯碼單元進行處理,並且對每一上述子譯碼單元執行運動向量預測,其中上述預處理模組藉由利用至少一其他子譯碼/譯碼單元之至少一運動向量,獲得一特定子譯碼單元之一運動向量,以及依據上述特定子譯碼單元之上述運動向量對上述特定子譯碼單元執行運動補償,其中用於上述特定子譯碼單元之上述至少一運動向量對應於空間上與上述特定子譯碼單元不相鄰之至少一子譯碼/譯碼單元,且上述預處理模組藉由利用不同於獲得上述特定子譯碼單元之上述運動向量所使用的運動向量的至少一運動向量,獲得上述譯碼單元中另一子譯碼單元之一運動向量;以及至少一譯碼模組,依據上述預處理模組執行之上述運動補償來對上述譯碼單元執行視頻譯碼。
  18. 如申請專利範圍第17項所述之裝置,其中上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述預處理模組計算上述多個運動向量之一加權總和,以獲得上述特定子譯碼單元之上述運動向量。
  19. 如申請專利範圍第18項所述之裝置,其中上述預處理模組對上述多個運動向量執行最佳維納濾波,以決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  20. 如申請專利範圍第18項所述之裝置,其中上述預處理模組依據至少一臨近譯碼單元之內容來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  21. 如申請專利範圍第18項所述之裝置,其中上述预处理模组依據上述多個其他子譯碼/譯碼單元之內容來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  22. 如申請專利範圍第18項所述之裝置,其中上述预处理模组藉由離線訓練來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  23. 如申請專利範圍第18項所述之裝置,其中上述预处理模组藉由即時線上訓練來決定上述多個運動向量所分別對應之多個加權參數,以獲得上述加權總和。
  24. 如申請專利範圍第17項所述之裝置,其中上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述預處理模組計算上述多個運動向量之一平均值,以獲得上述特定子譯碼單元之上述運動向量。
  25. 如申請專利範圍第17項所述之裝置,其中上述至少一其他子譯碼/譯碼單元包含多個其他子譯碼/譯碼單元,並且上述至少一其他子譯碼/譯碼單元之上述至少一運動向量包含上述多個其他子譯碼/譯碼單元之多個運動向量;並且上述預處理模組計算上述多個運動向量之一中值,以獲得上述特定子譯碼單元之上述運動向量。
  26. 如申請專利範圍第17項所述之裝置,其中上述不同於獲得上述特定子譯碼單元之上述運動向量所使用之運動向量的至少一運動向量包含上述多個子譯碼單元中的一部分子譯碼單元之多個運動向量,並且上述預處理模組計算上述多個運動向量之一中值,以獲得上述另一子譯碼單元之運動向量。
  27. 如申請專利範圍第17項所述之裝置,其中上述預處理模組決定上述特定子譯碼單元之一尺寸,作為上述譯碼單元之視頻譯碼之一變換尺寸。
  28. 如申請專利範圍第17項所述之裝置,其中上述預處理模組依據至少一臨近譯碼單元之至少一模式,分割上述譯碼單元為上述多個子譯碼單元。
  29. 如申請專利範圍第17項所述之裝置,其中上述預處理模組依據至少一臨近譯碼單元之內容,分割上述譯碼單元為上述多個子譯碼單元。
  30. 如申請專利範圍第17項所述之裝置,其中上述至少一其他子譯碼/譯碼單元中的每一個係一已編碼的子譯碼/譯碼單元。
  31. 如申請專利範圍第30項所述之裝置,其中上述至少一其他子譯碼/譯碼單元包含至少一空間編碼的子譯碼/譯碼單元以及/或者至少一時間編碼的子譯碼/譯碼單元。
  32. 如申請專利範圍第30項所述之裝置,其中上述至少一其他子譯碼/譯碼單元中的每一個係一運動補償子譯碼/譯碼單元。
  33. 一種在一譯碼單元之視頻譯碼中執行局部運動向量推導之方法,上述方法包含:接收上述譯碼單元,其中上述譯碼單元包含多個子譯碼單元;解析上述譯碼單元之資料;以及依據一預定準則指定上述譯碼單元之一特定子譯碼單元之一參考運動向量,其中上述參考運動向量係用來供給至少一其他子譯碼/譯碼單元參考,並且並非使用上述參考運動向量來進行上述特定子譯碼單元之運動向量預測。
  34. 如申請專利範圍第33項之方法,其中上述依據一預定準則指定上述譯碼單元之一特定子譯碼單元之一參考運動向量之步驟更包含:指定上述參考運動向量為一臨近譯碼單元之至少一部分之一運動向量。
  35. 如申請專利範圍第34項之方法,其中上述臨近譯碼單元之上述至少一部分係在上述臨近譯碼單元中最接近上述特定子譯碼單元之部分。
  36. 如申請專利範圍第33項之方法,其中上述依據一預定準則指定上述譯碼單元之一特定子譯碼單元之一參考運動向量之步驟更包含:指定上述參考運動向量為定義在H.264標準中的一運動向 量預測子。
TW100112709A 2010-04-14 2011-04-12 在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置 TWI445411B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US32394810P 2010-04-14 2010-04-14
US12/987,170 US8837592B2 (en) 2010-04-14 2011-01-10 Method for performing local motion vector derivation during video coding of a coding unit, and associated apparatus

Publications (2)

Publication Number Publication Date
TW201143462A TW201143462A (en) 2011-12-01
TWI445411B true TWI445411B (zh) 2014-07-11

Family

ID=44788180

Family Applications (4)

Application Number Title Priority Date Filing Date
TW103141276A TWI520586B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置
TW100111824A TWI469645B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置
TW103141274A TWI514855B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置
TW100112709A TWI445411B (zh) 2010-04-14 2011-04-12 在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置

Family Applications Before (3)

Application Number Title Priority Date Filing Date
TW103141276A TWI520586B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置
TW100111824A TWI469645B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置
TW103141274A TWI514855B (zh) 2010-04-14 2011-04-06 用於編碼單元的視訊編碼的局部多重假設預測的執行方法及裝置

Country Status (11)

Country Link
US (3) US8837592B2 (zh)
EP (2) EP2559250B1 (zh)
JP (1) JP5211263B2 (zh)
KR (1) KR101452921B1 (zh)
CN (5) CN107071472A (zh)
AU (1) AU2011240486B2 (zh)
BR (1) BR112012025275B8 (zh)
IL (2) IL222337A (zh)
RU (1) RU2530318C2 (zh)
TW (4) TWI520586B (zh)
WO (1) WO2011127828A1 (zh)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9118929B2 (en) 2010-04-14 2015-08-25 Mediatek Inc. Method for performing hybrid multihypothesis prediction during video coding of a coding unit, and associated apparatus
US8971400B2 (en) * 2010-04-14 2015-03-03 Mediatek Inc. Method for performing hybrid multihypothesis prediction during video coding of a coding unit, and associated apparatus
WO2012081895A1 (ko) * 2010-12-13 2012-06-21 한국전자통신연구원 인트라 예측 방법 및 그 장치
KR102086145B1 (ko) * 2010-12-13 2020-03-09 한국전자통신연구원 인트라 예측 방법 및 그 장치
EP2661080A4 (en) * 2010-12-31 2016-06-29 Korea Electronics Telecomm METHOD FOR CODING VIDEO INFORMATION AND METHOD FOR DECODING VIDEO INFORMATION AND DEVICE THEREFOR
MX2013008119A (es) 2011-01-12 2013-08-12 Mitsubishi Electric Corp Dispositivo de codificacion de imagen, dispositivo de decodificacion de imagen, metodo de codificacion de imagen y metodo de decodificacion de imagen.
CN103748877B (zh) * 2011-08-17 2017-05-10 联发科技(新加坡)私人有限公司 帧内预测方法和装置
US9736489B2 (en) * 2011-09-17 2017-08-15 Qualcomm Incorporated Motion vector determination for video coding
US9386305B2 (en) * 2011-11-28 2016-07-05 Qualcomm Incorporated Largest coding unit (LCU) or partition-based syntax for adaptive loop filter and sample adaptive offset in video coding
US20130332701A1 (en) * 2011-12-23 2013-12-12 Jayashankar Bharadwaj Apparatus and method for selecting elements of a vector computation
WO2013107028A1 (en) * 2012-01-19 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of amvp simplification
EP2805511B1 (en) 2012-01-20 2019-03-06 Sun Patent Trust Methods and apparatus for encoding and decoding video using temporal motion vector prediction
MX2013008942A (es) 2012-02-03 2013-09-12 Panasonic Corp Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
EP2824920A4 (en) 2012-03-06 2016-02-17 Panasonic Ip Corp America VIDEO CODING METHOD, VIDEO CODING METHOD, VIDEO COORDING DEVICE, VIDEO CODING DEVICE AND VIDEO CODING / DECODING DEVICE
US9544612B2 (en) * 2012-10-04 2017-01-10 Intel Corporation Prediction parameter inheritance for 3D video coding
EP3033886B1 (en) * 2013-11-27 2021-01-06 HFI Innovation Inc. Method of video coding using prediction based on intra picture block copy
CN104717512B (zh) * 2013-12-16 2019-07-23 浙江大学 一种前向双假设编码图像块的编解码方法和装置
KR101789954B1 (ko) * 2013-12-27 2017-10-25 인텔 코포레이션 차세대 비디오 코딩을 위한 콘텐츠 적응적 이득 보상된 예측
JP6482191B2 (ja) * 2014-06-12 2019-03-13 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
GB2531001B (en) * 2014-10-06 2019-06-05 Canon Kk Method and apparatus for vector encoding in video coding and decoding
US11330284B2 (en) * 2015-03-27 2022-05-10 Qualcomm Incorporated Deriving motion information for sub-blocks in video coding
TWI610558B (zh) * 2016-05-26 2018-01-01 晨星半導體股份有限公司 位元分配方法及視訊編碼裝置
KR102328179B1 (ko) * 2016-11-28 2021-11-18 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
WO2018128345A2 (ko) * 2017-01-04 2018-07-12 삼성전자 주식회사 복호화 방법 및 그 장치
WO2019152283A1 (en) 2018-02-02 2019-08-08 Apple Inc. Techniques of multi-hypothesis motion compensation
US11924440B2 (en) 2018-02-05 2024-03-05 Apple Inc. Techniques of multi-hypothesis motion compensation
WO2019192491A1 (en) 2018-04-02 2019-10-10 Mediatek Inc. Video processing methods and apparatuses for sub-block motion compensation in video coding systems
US10986343B2 (en) * 2018-04-15 2021-04-20 Arris Enterprises Llc Reducing overhead for multiple-hypothesis temporal prediction
US11343541B2 (en) * 2018-04-30 2022-05-24 Hfi Innovation Inc. Signaling for illumination compensation
WO2019229683A1 (en) * 2018-05-31 2019-12-05 Beijing Bytedance Network Technology Co., Ltd. Concept of interweaved prediction
TWI706670B (zh) 2018-06-19 2020-10-01 大陸商北京字節跳動網絡技術有限公司 廣義運動向量差解析度
TWI734133B (zh) * 2018-07-02 2021-07-21 大陸商北京字節跳動網絡技術有限公司 更新查找表的規則
CN110602493B (zh) * 2018-09-19 2022-06-10 北京达佳互联信息技术有限公司 一种仿射运动补偿的交织预测的方法及设备
EP4325859A3 (en) 2018-09-19 2024-05-15 Beijing Bytedance Network Technology Co., Ltd. Syntax reuse for affine mode with adaptive motion vector resolution
CN116527889A (zh) * 2018-09-25 2023-08-01 华为技术有限公司 一种图像预测方法和设备
CN111050164B (zh) * 2018-10-15 2022-05-17 华为技术有限公司 一种编解码的方法和装置
EP3881552A4 (en) * 2018-11-15 2022-07-20 Telefonaktiebolaget Lm Ericsson (Publ) DEBLOCKING ON A VIDEO ENCODER AND/OR VIDEO DECODER
WO2020140951A1 (en) 2019-01-02 2020-07-09 Beijing Bytedance Network Technology Co., Ltd. Motion vector derivation between color components
CN118118659A (zh) 2019-01-31 2024-05-31 北京字节跳动网络技术有限公司 记录仿射模式自适应运动矢量分辨率的上下文
EP3918804A4 (en) 2019-03-14 2023-02-08 HFI Innovation Inc. METHODS AND APPARATUS FOR VIDEO PROCESSING USING MOTION DECOMPOSITION AND SUB-PARTITION BASE FILLING
CN110852500B (zh) * 2019-11-01 2023-04-07 聊城大学 一种资源受限混合流水车间优化方法

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2231751B (en) 1989-04-27 1993-09-22 Sony Corp Motion dependent video signal processing
EP0421526B1 (en) 1989-10-06 1996-07-31 Koninklijke Philips Electronics N.V. Adaptive ghost cancellation circuit
US5134475A (en) 1990-12-11 1992-07-28 At&T Bell Laboratories Adaptive leak hdtv encoder
KR970002964B1 (ko) 1993-12-24 1997-03-13 대우전자 주식회사 영상신호의 시간축 내삽필터
EP1274254B1 (en) * 1995-08-29 2011-07-06 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
JP2000512091A (ja) 1996-05-24 2000-09-12 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ 動作ベクトル処理
JP3633159B2 (ja) * 1996-12-18 2005-03-30 ソニー株式会社 動画像信号符号化方法及び装置、並びに動画像信号伝送方法
US6807231B1 (en) * 1997-09-12 2004-10-19 8×8, Inc. Multi-hypothesis motion-compensated video image predictor
US6532265B1 (en) 1999-03-25 2003-03-11 Imec Vzw Method and system for video compression
JP2000299864A (ja) * 1999-04-12 2000-10-24 Canon Inc 動画像処理方法
US6633677B1 (en) 1999-12-30 2003-10-14 Stmicroelectronics, Inc. Method and apparatus for processing an image in an image compression/decompression system that uses hierachical coding
US6438168B2 (en) 2000-06-27 2002-08-20 Bamboo Media Casting, Inc. Bandwidth scaling of a compressed video stream
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US20040141555A1 (en) * 2003-01-16 2004-07-22 Rault Patrick M. Method of motion vector prediction and system thereof
US7184602B2 (en) 2003-05-02 2007-02-27 Microsoft Corp. System and method for low bandwidth video streaming for face-to-face teleconferencing
HUP0301368A3 (en) * 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
US9210441B2 (en) 2003-06-25 2015-12-08 Thomson Licensing Fast mode-decision encoding for interframes
JP2007503775A (ja) 2003-08-26 2007-02-22 トムソン ライセンシング ハイブリッド・イントラ・インター符号化ブロックを符号化する方法及び装置
US7599438B2 (en) 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
JP3880985B2 (ja) * 2004-08-05 2007-02-14 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
US7447337B2 (en) 2004-10-25 2008-11-04 Hewlett-Packard Development Company, L.P. Video content understanding through real time video motion analysis
RU2368095C1 (ru) * 2005-07-22 2009-09-20 Мицубиси Электрик Корпорейшн Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения
JP2007142521A (ja) 2005-11-15 2007-06-07 Sharp Corp 動きベクトル算出装置および動きベクトル算出方法
JP4763549B2 (ja) * 2006-08-18 2011-08-31 富士通セミコンダクター株式会社 フレーム間予測処理装置、画像符号化装置、及び画像復号化装置
CN101222627A (zh) * 2007-01-09 2008-07-16 华为技术有限公司 一种多视点视频编解码***以及预测向量的方法和装置
KR101366241B1 (ko) * 2007-03-28 2014-02-21 삼성전자주식회사 영상 부호화, 복호화 방법 및 장치
JP4325708B2 (ja) * 2007-07-05 2009-09-02 ソニー株式会社 データ処理装置、データ処理方法およびデータ処理プログラム、符号化装置、符号化方法および符号化プログラム、ならびに、復号装置、復号方法および復号プログラム
JP4786612B2 (ja) * 2007-08-14 2011-10-05 Kddi株式会社 動画像符号化装置の予測動きベクトル生成装置
US8000411B2 (en) * 2008-01-04 2011-08-16 Qualcomm Incorporated Decoding scheme using multiple hypotheses about transmitted messages
JP4990927B2 (ja) 2008-03-28 2012-08-01 三星電子株式会社 動きベクトル情報の符号化/復号化方法及び装置
US8195001B2 (en) 2008-04-09 2012-06-05 Intel Corporation In-loop adaptive wiener filter for video coding and decoding
JP5452584B2 (ja) 2008-04-11 2014-03-26 トムソン ライセンシング ビデオ符号化及び復号化におけるテンプレート・マッチング予測(tmp)のための方法及び装置
US8908763B2 (en) * 2008-06-25 2014-12-09 Qualcomm Incorporated Fragmented reference in temporal compression for video coding
CN102160384A (zh) 2008-09-24 2011-08-17 索尼公司 图像处理设备和方法
US8660176B2 (en) * 2008-09-26 2014-02-25 Qualcomm Incorporated Resolving geometric relationships among video data units
US8634457B2 (en) * 2008-09-26 2014-01-21 Qualcomm Incorporated Determining availability of video data units
US8724697B2 (en) * 2008-09-26 2014-05-13 Qualcomm Incorporated Locating motion vectors for video data units
KR101279573B1 (ko) * 2008-10-31 2013-06-27 에스케이텔레콤 주식회사 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
JP4957780B2 (ja) 2009-11-20 2012-06-20 カシオ計算機株式会社 動き補償予測符号化装置、動き補償予測符号化方法及びプログラム

Also Published As

Publication number Publication date
EP2559250A4 (en) 2016-01-06
TWI514855B (zh) 2015-12-21
US8891608B2 (en) 2014-11-18
IL245480B (en) 2018-01-31
US8879620B2 (en) 2014-11-04
CN107071472A (zh) 2017-08-18
IL222337A (en) 2016-05-31
TW201511525A (zh) 2015-03-16
BR112012025275A2 (pt) 2016-06-21
US20120027097A1 (en) 2012-02-02
CN105791858B (zh) 2019-11-15
AU2011240486A1 (en) 2012-10-11
US8837592B2 (en) 2014-09-16
BR112012025275B1 (pt) 2021-08-03
CN102223542A (zh) 2011-10-19
EP2559250B1 (en) 2020-07-08
RU2530318C2 (ru) 2014-10-10
US20110255598A1 (en) 2011-10-20
US20110255600A1 (en) 2011-10-20
TW201143462A (en) 2011-12-01
JP5211263B2 (ja) 2013-06-12
RU2012141233A (ru) 2014-06-10
TWI469645B (zh) 2015-01-11
CN105872558B (zh) 2019-06-07
JP2012513179A (ja) 2012-06-07
EP3220646A1 (en) 2017-09-20
TW201218776A (en) 2012-05-01
BR112012025275B8 (pt) 2021-08-24
KR101452921B1 (ko) 2014-10-23
WO2011127828A1 (en) 2011-10-20
IL245480A0 (en) 2016-06-30
IL222337A0 (en) 2012-12-31
EP2559250A1 (en) 2013-02-20
TW201511524A (zh) 2015-03-16
TWI520586B (zh) 2016-02-01
CN102907095B (zh) 2016-10-12
CN102907095A (zh) 2013-01-30
KR20120126115A (ko) 2012-11-20
AU2011240486B2 (en) 2014-02-13
CN105791858A (zh) 2016-07-20
CN105872558A (zh) 2016-08-17

Similar Documents

Publication Publication Date Title
TWI445411B (zh) 在譯碼單元之視頻譯碼中執行局部運動向量推導之方法與相應裝置
US8644384B2 (en) Video coding reference picture prediction using information available at a decoder
CN104854866B (zh) 下一代视频的内容自适应、特性补偿预测
TWI688257B (zh) 視訊編解碼之方法及裝置
US11336915B2 (en) Global motion vector video encoding systems and methods
WO2010078212A1 (en) Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors
JP7330243B2 (ja) 低減されたメモリアクセスを用いてfrucモードでビデオデータを符号化又は復号する方法及び装置
CN103503457A (zh) 运动图像编码装置、运动图像解码装置、运动图像编码方法以及运动图像解码方法
CN107046645A (zh) 图像编解码方法及装置
CN105245896A (zh) Hevc并行运动补偿方法及装置
KR101663235B1 (ko) 화면 내 예측 부호화/복호화 방법 및 장치
CN110149512A (zh) 帧间预测加速方法、控制装置、电子装置、计算机存储介质及设备
CN102595137B (zh) 基于图像像素块行/列流水线的快速模式判决装置和方法
US11006143B2 (en) Motion vector candidate pruning systems and methods
CN109168000B (zh) 一种基于rc预测的hevc帧内预测快速算法
CN104995917A (zh) 一种自适应运动估计方法和模块
CN114422803B (zh) 一种视频处理方法、装置及设备
TWI821108B (zh) 用於視訊編碼系統中幾何分割模式之移動向量分配的方法和裝置
US20230096682A1 (en) Systems and Methods for Low Resolution Motion Estimation Searches