TW201640894A - 用於視訊寫碼之重疊運動補償 - Google Patents

用於視訊寫碼之重疊運動補償 Download PDF

Info

Publication number
TW201640894A
TW201640894A TW105102384A TW105102384A TW201640894A TW 201640894 A TW201640894 A TW 201640894A TW 105102384 A TW105102384 A TW 105102384A TW 105102384 A TW105102384 A TW 105102384A TW 201640894 A TW201640894 A TW 201640894A
Authority
TW
Taiwan
Prior art keywords
block
video
blocks
video data
prediction
Prior art date
Application number
TW105102384A
Other languages
English (en)
Other versions
TWI688262B (zh
Inventor
劉鴻彬
陳盈
陳建樂
李想
馬塔 卡茲維克茲
Original Assignee
高通公司
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 高通公司 filed Critical 高通公司
Publication of TW201640894A publication Critical patent/TW201640894A/zh
Application granted granted Critical
Publication of TWI688262B publication Critical patent/TWI688262B/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/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/583Motion compensation with overlapping blocks
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Abstract

在實例中,一種解碼視訊資料之方法可包括接收視訊資料之一第一區塊。視訊資料之該第一區塊可為一預測單元之一子區塊。該方法可包括接收鄰近視訊資料之該第一區塊的視訊資料之一或多個區塊。該方法可包括判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的運動資訊。該方法可包括至少部分地基於鄰近視訊資料之該第一區塊的該一或多個區塊中之該至少一者的該運動資訊,使用重疊區塊運動補償解碼視訊資料之該第一區塊。

Description

用於視訊寫碼之重疊運動補償
本申請案主張2015年1月26申請之美國臨時專利申請案第62/107,964號及2015年2月16申請之美國臨時專利申請案第62/116,631號之權利,以上申請案中之每一者特此以全文引用之方式併入本文中。
本發明係關於視訊寫碼;及更特定言之,係關於基於區塊之視訊寫碼之運動補償。
數位視訊能力可併入至廣泛範圍之器件中,包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型或桌上型電腦、平板電腦、電子書閱讀器、數位攝影機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲控制台、蜂巢式或衛星無線電電話(所謂的「智慧型電話」)、視訊電話會議器件、視訊串流器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4、進階視訊寫碼(AVC)第10部分、ITU-T H.265、高效率視訊寫碼(HEVC)所定義的標準及此等標準之擴展中所描述的彼等技術。視訊器件可藉由實施此類視訊壓縮技術而更高效地傳輸、接收、編碼、解碼及/或儲存數位視訊資訊。
視訊壓縮技術執行空間(框內圖像)預測及/或時間(框間圖像)預測來減少或移除視訊序列中固有的冗餘。對於基於區塊之視訊寫碼,可將視訊片段(亦即,視訊圖框或視訊圖框之一部分)分割成視訊區塊。使用相對於同一圖像中之相鄰區塊中之參考樣本的空間預測來編碼圖像之經框內寫碼(I)片段中之視訊區塊。圖像之經框間寫碼(P或B)片段中之視訊區塊可使用相對於同一圖像中之鄰近區塊中之參考樣本的空間預測或其他參考圖像中之參考樣本的時間預測。圖像可被稱作圖框,且參考圖像可被稱作參考圖框。
空間或時間預測產生用於待寫碼之區塊的預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。經框間寫碼區塊係根據指向形成預測性區塊之參考樣本之區塊的運動向量來編碼,且殘餘資料指示經寫碼區塊與預測性區塊之間的差。經框內寫碼區塊係根據框內寫碼模式與殘餘資料來編碼。為進一步壓縮,可將殘餘資料自像素域變換至變換域,從而產生可接著經量化之殘餘係數。可掃描最初按二維陣列配置的經量化之係數以便產生係數之一維向量,且可應用熵寫碼以達成甚至更多壓縮。
本發明之技術係關於基於區塊之視訊寫碼。舉例而言,本發明中所描述之技術可包括用於使用重疊區塊運動補償(OBMC)編碼或解碼視訊資料之區塊之一或多個技術。
在一個實例中,本發明描述一種解碼視訊資料之方法,該方法包含:接收視訊資料之第一區塊,其中視訊資料之第一區塊為預測單元之子區塊;接收鄰近視訊資料之第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者的運動資訊,使用重疊區塊運動補償解碼視 訊資料之第一區塊。
在另一實例中,本發明描述一種用於寫碼視訊資料之器件,該器件包含:記憶體,其經組態以儲存視訊資料;及視訊寫碼器,其與記憶體通信,其中視訊寫碼器經組態以進行以下操作:儲存記憶體中之視訊資料之第一區塊,其中視訊資料之第一區塊為預測單元之子區塊;儲存鄰近記憶體中之視訊資料之第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之運動資訊,使用重疊區塊運動補償寫碼視訊資料之第一區塊。
在另一實例中,本發明描述一種用於寫碼視訊資料之裝置,該裝置包含:用於接收視訊資料之第一區塊之構件,其中視訊資料之第一區塊為預測單元之子區塊;用於接收鄰近視訊資料之第一區塊的視訊資料之一或多個區塊之構件;用於判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊之構件;及用於至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之運動資訊,使用重疊區塊運動補償寫碼視訊資料之第一區塊之構件。
在另一實例中,本發明描述一種非暫時性電腦可讀儲存媒體,其具有儲存於其上之指令,當執行該等指令時,使一或多個處理器儲存記憶體中之視訊資料之第一區塊,其中視訊資料之第一區塊為預測單元之子區塊;儲存鄰近記憶體中之視訊資料之第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之運動資訊,使用重疊區塊運動補償寫碼視訊資料之第一區塊。
在附圖及以下描述中闡明本發明之一或多個實例的細節。本發明之其他特徵、目標及優勢將自描述及圖式及申請專利範圍顯而易見。
10‧‧‧視訊寫碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧頻道
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
26‧‧‧儲存器件
28‧‧‧輸入介面
30‧‧‧視訊解碼器
32‧‧‧顯示器件
33‧‧‧視訊資料記憶體
35‧‧‧分割單元
41‧‧‧預測處理單元
42‧‧‧運動估計單元
44‧‧‧運動補償單元
46‧‧‧框內預測單元
50‧‧‧求和器
52‧‧‧變換處理單元
54‧‧‧量化單元
56‧‧‧熵編碼單元
58‧‧‧反量化單元
60‧‧‧反變換處理單元
62‧‧‧求和器
64‧‧‧濾波器單元
66‧‧‧經解碼圖像緩衝器
78‧‧‧視訊資料記憶體
80‧‧‧熵解碼單元
81‧‧‧預測處理單元
82‧‧‧運動補償單元
84‧‧‧框內預測單元
86‧‧‧反量化單元
88‧‧‧反變換處理單元
90‧‧‧求和器
92‧‧‧濾波器單元
94‧‧‧經解碼圖像緩衝器
200‧‧‧區塊
202‧‧‧區塊
204‧‧‧區塊
206‧‧‧區塊
220‧‧‧區塊
222‧‧‧區塊
224‧‧‧區塊
226‧‧‧區塊
圖1為說明可利用本發明中所描述之技術之實例視訊編碼及解碼系統的方塊圖。
圖2展示用於框間預測模式視訊寫碼之分割模式。
圖3A及圖3B分別展示用於合併及進階運動向量預測(AMVP)視訊寫碼模式之空間鄰近運動向量(MV)候選者。
圖4A展示時間運動向量預測(TMVP)候選者之實例。
圖4B展示運動向量尺度之實例。
圖5展示(如用於)TU-TH.263視訊寫碼標準中之重疊區塊運動補償(OBMC)之實例。
圖6A及圖6B展示可用於HEVC或其他視訊寫碼標準中之基於預測單元(PU)之OBMC的實例。
圖7A至圖7C展示PU中之子PU及子區塊。
圖8A至圖8B展示其中可應用OBMC之子區塊。
圖9為說明可實施本發明中所描述之OBMC技術之實例視訊編碼器的方塊圖。
圖10為說明可實施本發明中所描述之OBMC技術之實例視訊解碼器的方塊圖。
圖11為說明符合用於本發明之OMBC視訊寫碼之技術之用於解碼視訊資料的實例程序之流程圖。
圖12為說明符合用於本發明之OMBC視訊寫碼之技術的用於編碼視訊資料之實例程序之流程圖。
本發明之技術大體上係關於基於視訊寫碼之區塊之運動補償。本發明之技術可應用至現有視訊編解碼器或視訊寫碼標準(例如,ITU-TH.265、HEVC),或可應用於未來視訊編解碼器或視訊寫碼標準中。
如本文所使用,術語「內容」之個例可改變為術語「視訊」,且術語「視訊」之個例可改變為術語「內容」。無論術語「內容」或「視訊」是被用作形容詞、名詞抑或詞類之其他部分,此為成立。舉例而言,對「內容寫碼器」之參考亦包括對「視訊寫碼器」之參考,且對「視訊寫碼器」之參考亦包括對「內容寫碼器」之參考。類似地,對「內容」之參考亦包括對「視訊」之參考,且對「視訊」之參考亦包括對「內容」之參考。
如本文所使用,「內容」係指任何類型之內容。舉例而言,「內容」可指視訊、畫面內容、影像、任何圖形內容、任何可顯示內容或與其對應之任何資料(例如,視訊資料、畫面內容資料、影像資料、圖形內容資料、可顯示內容資料及類似者)。
如本文中所使用,術語「視訊」可指畫面內容、可移動內容、可以序列呈現之複數個影像或與其對應之任何資料(例如,畫面內容資料、可移動內容資料、視訊資料、影像資料及類似者)。
如本文中所使用,術語「影像」可指單一影像、一或多個影像、對應於視訊之複數個影像當中之一或多個影像、不對應於視訊之複數個影像當中之一或多個影像、對應於視訊之複數個影像(例如,對應於視訊之影像中之全部或小於對應於視訊之影像中之全部)、單一影像之子部分、單一影像之複數個子部分、對應於複數個影像之複數個子部分、一或多個圖形基元、影像資料、圖形資料及類似者。
如本文所使用,「運動資訊」可指或另外包括運動向量資訊,或更簡言之,運動向量。在其他實例中,「運動資訊」可指或另外包括 不同於運動向量資訊之運動資訊。在又其他實例中,「運動資訊」可指一或多個運動向量及任何其他運動相關資訊,諸如識別待使用之一或多個參考圖像清單之預測方向及識別參考圖像清單中之一或多個參考圖像之一或多個參考索引。如本文所使用,「運動資訊之集合」或類似者可指「運動資訊」。類似地,「運動資訊」可指「運動資訊之集合」或類似者。
如本文所使用,「鄰近者」、「鄰近之區塊」、「鄰近區塊」及類似者係指鄰近至少一個邊/邊界上之視訊資料之另一區塊的視訊之區塊。舉例而言,視訊資料之當前區塊可具有四個邊:左、右、頂及底。視訊資料之當前區塊的視訊資料之鄰近之區塊可包括毗鄰視訊之當前區塊之左、右、頂或底邊界的視訊資料之任何區塊。作為另一實例,鄰近第二區塊之第一區塊共用第二區塊之邊界(例如,左邊界、右邊界、頂邊界或底邊界)。
圖1為說明可利用本發明之技術之實例視訊寫碼系統10之方塊圖。如本文所使用,術語「視訊寫碼器」大體上係指視訊編碼器及視訊解碼器兩者。在本發明中,術語「視訊寫碼」或「寫碼」可大體上係指視訊編碼或視訊解碼。視訊寫碼系統10之視訊編碼器20及視訊解碼器30表示可經組態以執行根據本發明中所描述之各種實例之用於使用重疊區塊運動補償編碼或解碼視訊資料之區塊的技術之器件的實例。
視訊編碼器20及/或視訊解碼器30可經組態以根據本發明中描述之技術來操作。視訊解碼器30可經組態以執行與本文中所描述之視訊編碼器20之彼程序大體上互逆的程序。類似地,視訊編碼器20可經組態以執行與本文中描述之視訊解碼器30之彼程序大體上互逆的程序。
如圖1中所展示,視訊寫碼系統10包括源器件12及目的地器件14。源器件12產生經編碼視訊資料。因此,源器件12可被稱作視訊編 碼器件或視訊編碼裝置。目的地器件14可解碼由源器件12產生之經編碼視訊資料。因此,目的地器件14可被稱作視訊解碼器件或視訊解碼裝置。源器件12及目的地器件14可為視訊寫碼器件或視訊寫碼裝置之實例。
源器件12及目的地器件14可包括廣泛範圍之器件,包括桌上型電腦、行動計算器件、筆記型(例如,膝上型)電腦、平板電腦、機上盒、電話手機(諸如所謂的「智慧型」電話)、電視、攝影機、顯示器件、數位媒體播放器、視訊遊戲控制台、車載電腦或類似者。
目的地器件14可經由頻道16自源器件12接收經編碼視訊資料。頻道16可包含能夠將經編碼視訊資料自源器件12移動至目的地器件14之任何類型之媒體及/或一或多個媒體或器件。在一項實例中,頻道16可包含使得源器件12能夠即時將經編碼視訊資料直接傳輸至目的地器件14的一或多個通信媒體。在此實例中,源器件12可根據諸如無線通信協定之通信標準來調變經編碼視訊資料,且可將經調變視訊資料傳輸至目的地器件14。一或多個通信媒體可包括無線及/或有線通信媒體,諸如射頻(RF)頻譜或一或多個實體傳輸線。一或多個通信媒體可形成基於封包之網路(諸如區域網路、廣域網路或全球網路(例如,網際網路))的部分。一或多個通信媒體可包括路由器、交換器、基地台,或促進自源裝置12至目的地裝置14之通信的其他設備。
在一些實例中,經編碼資料可自輸出介面22輸出至儲存器件26,該儲存器件可經組態以儲存由源器件12產生之經編碼視訊資料。儘管描繪為與頻道16分離,應理解,在其他實例中頻道16可通信耦接至儲存器件26。在此實例中,目的地器件14可存取儲存於儲存器件26上之經編碼視訊資料。舉例而言,經編碼視訊資料可藉由輸入介面28自儲存器件26而訪問。
儲存器件26可包括各種分散式或本端存取之資料儲存媒體中之 任一者,諸如,硬碟機、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體,或用於儲存經編碼視訊資料之任何其他適合之數位儲存媒體。在一些實例中,儲存器件26可對應於儲存由源器件12產生之經編碼視訊資料的檔案伺服器或另一中間儲存器件。在此等實例中,檔案伺服器可為能夠儲存經編碼視訊資料及將經編碼視訊資料傳輸至目的地器件14的任何類型之伺服器。實例檔案伺服器包括(例如)網頁伺服器(例如,用於網站)、檔案傳送協定(FTP)伺服器、網路附接儲存(NAS)器件,及本端磁碟驅動機。
目的地器件14可經由任何資料連接(例如,任何標準資料連接或其他)存取經編碼視訊資料,該等資料連接包括(例如)網際網路連接。實例類型之資料連接可包括適合於存取儲存於儲存器件26(例如,檔案伺服器)上之經編碼視訊資料之無線頻道(例如,Wi-Fi連接)、有線頻道(例如,DSL、纜線數據機等),或兩者之任何組合。經編碼視訊資料自儲存器件26之傳輸可為串流傳輸、下載傳輸或兩者之組合。
本發明之技術並不限於無線應用或設定。本發明之技術可應用於支援多種多媒體應用中之任一者的視訊寫碼,該等應用諸如,空中電視廣播、有線電視傳輸、衛星電視傳輸、(例如)經由網際網路之串流視訊傳輸、用於儲存於資料儲存媒體上之數位視訊的編碼、儲存於資料儲存媒體上之經編碼視訊資料的解碼或其他應用。在一些實例中,視訊寫碼系統10可經組態以支援單向或雙向視訊傳輸,從而支援諸如視訊串流、視訊播放、視訊廣播及/或視訊電話之應用。
圖1中所說明之視訊寫碼系統10僅為實例,且本發明之技術可適用於未必包括編碼器件與解碼器件之間的任何資料通信的視訊寫碼設定(例如,視訊編碼或視訊解碼)。在其他實例中,自經由網路或類似者而串流傳輸之本端記憶體擷取資料。視訊編碼器件可編碼資料及將資料儲存至記憶體,及/或視訊解碼器件可自記憶體擷取資料及解碼 資料。在許多實例中,由並不彼此通信,但簡單地將資料編碼至記憶體及/或自記憶體擷取資料並解碼資料之器件來執行編碼及解碼。
在圖1之實例中,源器件12包括視訊源18、視訊編碼器20及輸出介面22。在一些實例中,輸出介面22可包括調變器/解調器(數據機)及/或傳輸器。視訊源18可包括例如視訊攝影機之視訊捕獲器件、含有先前所捕獲之視訊資料的視訊封存檔、自視訊內容提供者處接收視訊資料的視訊饋入介面、及/或用於產生視訊資料的電腦圖形系統或視訊資料之此等源的組合。
視訊編碼器20可經組態以編碼來自視訊源18之視訊資料。舉例而言,視訊編碼器20可經組態以編碼經捕獲、經預先捕獲或電腦產生之視訊資料(或任何其他資料)。在一些實例中,源器件12經由輸出介面22將經編碼視訊資料直接傳輸至目的地器件14。在其他實例中,經編碼視訊資料還可儲存至儲存媒體(例如,儲存器件26)上以由目的地器件14稍後存取以進行解碼及/或播放。
在圖1之實例中,目的地器件14包括輸入介面28、視訊解碼器30及顯示器件32。在一些實例中,輸入介面28包括接收器及/或數據機。輸入介面28可經由頻道16接收經編碼視訊資料。經由頻道16傳達或由儲存器件26提供之經編碼視訊資料可包括由視訊編碼器20產生以供由視訊解碼器(諸如視訊解碼器30)用於解碼視訊資料的多種語法元素。此等語法元素可與在通信媒體上傳輸、儲存於儲存媒體上或儲存於檔案伺服器上之經編碼視訊資料包括在一起。
顯示器件32可與目的地器件14整合或可在目的地器件14外部。在一些實例中,目的地器件14可包括整合顯示器件,且亦經組態以與外部顯示器件介接。在其他實例中,目的地器件14可為顯示器件。通常,顯示器件32顯示經解碼視訊資料。顯示器件32可包含各種顯示器件中之任一者,該等顯示器件諸如液晶顯示器(LCD)、電漿顯示器、 有機發光二極體(OLED)顯示器或另一類型之顯示器件。
本發明之技術可利用HEVC術語或其他視訊標準術語以易於解釋。然而,應理解,本發明之技術不受限於HEVC或其他視訊標準。無論在過去、現在抑或將來,除其他視訊標準之外,本發明之技術亦可實施於HEVC之後續標準及其擴展中。
儘管圖1中未展示,但在一些態樣中,視訊編碼器20及視訊解碼器30可各自與音訊編碼器及解碼器整合,且可包括適當之MUX-DEMUX單元或其他硬體及軟體,以處置共同資料串流或單獨資料串流中之音訊及視訊兩者之編碼。若適用,則在一些實例中,MUX-DEMUX單元可遵守ITU H.223多工器協定或其他協定(諸如,使用者資料報協定(UDP))。
本發明通常可指代視訊編碼器20「傳信」或「傳輸」某些資訊至另一器件,諸如,視訊解碼器30。術語「傳信」或「傳輸」可大體上指代用於解碼經壓縮視訊資料之語法元素及/或其他資料的通信。此通信可即時地或近即時地發生。替代地,可歷時時間跨度發生此通信,諸如可在當編碼時在經編碼位元串流中將語法元素儲存至電腦可讀儲存媒體時發生,接著,在儲存至此媒體之後可由解碼器件在任何時間擷取該等語法元素。因此,雖然視訊解碼器30可被稱作「接收」某些資訊,但資訊之接收未必即時或近乎即時地發生且可在儲存之後在某一時間處自媒體擷取。
視訊編碼器20及視訊解碼器30各自可實施為多種合適電路中之任一者,諸如一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、硬體或其任何組合。若部分地以軟體來實施技術,則裝置可將用於軟體之指令儲存於合適的非暫時性電腦可讀儲存媒體中,且可在硬體中使用一或多個處理器來執行該等指令以執行本發明之技術。可將前述各者(包 括硬體、軟體、硬體與軟體之組合等)中之任一者視為一或多個處理器。視訊編碼器20及視訊解碼器30中之每一者可包括在一或多個編碼器或解碼器中,編碼器或解碼器中之任一者可整合為各別器件中的組合式編碼器/解碼器(編解碼器)之部分。
在HEVC及其他視訊寫碼標準中,視訊序列通常包括一系列圖像。圖像亦可被稱作「圖框」。在一些實例中,視訊編碼器20可經組態以使用圖像次數計數(POC)來識別相對於複數個圖像(例如,一序列圖像)圖像之顯示次序。在此等實例中,視訊編碼器20可經組態以將POC值指派至圖像。在其中多個經寫碼視訊序列存在於位元串流中之實例中,具有相同POC值之圖像就解碼次序而言可更接近於彼此。圖像之POC值可用於參考圖像清單構造、如同(例如)HEVC中之參考圖像集之導出及運動向量調整。
在一些實例中,圖像可包括三個樣本陣列。在此等實例中,圖像可包括表示為SL、SCb及SCr之三個樣本陣列。在此等實例中,SL為明度樣本之二維陣列(例如,區塊),SCb為Cb色度樣本之二維陣列(例如,區塊)且SCr為Cr色度樣本之二維陣列(例如,區塊)。色度(Chrominance)樣本亦可在本文中被稱作「色度(chroma)」樣本。在其他情況下,圖像可係單色的,且可僅包括明度樣本陣列。
為產生圖像之經編碼表示,視訊編碼器20可產生一組寫碼樹型單元(CTU)。該組CTU可包括明度樣本之寫碼樹型區塊、色度樣本之兩個對應的寫碼樹型區塊及用以寫碼寫碼樹型區塊之樣本的語法結構。寫碼樹型區塊可為樣本之N×N區塊。CTU亦可被稱作「樹型區塊」或「最大寫碼單元」(LCU)。HEVC之CTU可廣泛地類似於,諸如H.264/AVC之其他標準的巨集區塊。然而,CTU未必限於特定大小且可包括一或多個寫碼單元(CU)。視訊圖框或圖像可分割成一或多個片段。片段可包括在光柵掃描中連續定序之整數數目個CTU。經寫碼 片段可包含片段標頭及片段資料。片段之片段標頭可為包括提供關於片段之資訊之語法元素的語法結構。片段資料可包括片段之經寫碼CTU。
在一些實例中,CU可包括寫碼節點及與寫碼節點相關聯之一或多個預測單元(PU)及/或變換單元(TU)。CU之大小可對應於寫碼節點之大小且可為正方形形狀。CU之大小可介於(例如)8×8像素達至具有最大64×64像素或更多像素之樹型區塊之大小的範圍內。每一CU可含有一或多個PU及一或多個TU。與CU相關聯之語法資訊可描述例如將CU分割成一或多個PU。分割模式可在CU經跳過或直接模式編碼、框內預測模式編碼還是框間預測模式編碼之間有區別。PU之形狀可分割成正方形或非正方形。與CU相關聯之語法資料亦可描述(例如)根據四分樹將CU分割成一或多個TU。TU之形狀可為正方形或非正方形。
大體而言,PU可包括關於預測程序之資料。舉例而言,當PU經框內模式編碼時,PU可包括描述用於PU之框內預測模式之資料。作為另一實例,當PU時經框間模式編碼,PU可包括定義用於PU之運動向量之資料。定義用於PU之運動向量的資料可描述(例如)運動向量之水平分量、運動向量之垂直分量、用於運動向量的解析度(例如,四分之一像素精度或八分之一像素精度)、運動向量所指向之參考圖像及/或用於運動向量的參考圖像清單(例如,清單0、清單1或清單C)。
一般而言,TU可用於變換及量化程序。具有一或多個PU之給定CU亦可包括一或多個變換單元(TU)。在預測之後,視訊編碼器20可計算對應於PU之殘餘值。殘餘值可包含可變換成變換係數、經量化且使用TU掃描之像素差值,以產生用於熵譯碼之串列化變換係數。
本發明可使用術語「視訊單元」、「視訊區塊」、「寫碼區塊」或「區塊」指代一或多個樣本區塊及用於寫碼樣本之一或多個區塊之樣本的語法結構。實例類型之視訊單元或區塊可包括寫碼樹單元 (CTU)、寫碼單元(CU)、預測單元(PU)、子PU、變換單元(TU)、巨集區塊(MB)、巨集區塊分區、子區塊等。在一些實例中,子區塊可為CTU之子區塊、CU之子區塊、PU之子區塊、TU之子區塊、巨集區塊之子區塊或子區塊之子區塊。舉例而言,子區塊可含有一群子PU。在此等實例中,子區塊可小於CTU、CU、PU、TU或巨集區塊。在一些實例中,子PU可指小於PU之區塊。在此實例中,若PU為8×4,則子PU可為4×4。
在一些實例中,一組運動資訊可供用於視訊資料之每一區塊。該組運動資訊可包括用於前向及後向預測之運動資訊。前向及後向預測可為雙向預測模式之兩個預測方向。前向及後向預測方向可為單向預測模式之兩個預測方向中的一者。術語「前向」及「後向」不必具有幾何意義,而是其對應於(例如)當前圖像之參考圖像清單0(RefPicList0)及參考圖像清單1(RefPicList1)。當僅僅一個參考圖像清單可供用於時,僅僅RefPicList0可為可用的,且該圖像或片段之每一區塊之運動資訊可為前向的。
對於每一預測方向(例如,前向或後向),運動資訊可含有預測方向、參考索引及運動向量。在一些實例中,為簡單起見,可以假定運動向量自身具有相關聯參考索引的方式參考該運動向量。參考索引用以識別當前參考圖像清單中之參考圖像(例如,RefPicList0或RefPicList1)。運動向量可具有水平分量及垂直分量。
本文中所描述之視訊區塊可具有固定或變化的大小,且根據所指定之寫碼標準可在大小上不同。作為一實例,特定CU之大小可為2N×2N。在此實例中,視訊編碼器20可經組態以執行具有大小2N×2N或N×N之PU的框內預測,且可經組態以執行具有大小2N×2N、2N×N、N×2N或N×N之PU的框間預測。在其他實例中,PU之可用大小可相同或不同。
在本發明中,「N×N」與「N乘N」可互換地使用以指代視訊區塊在垂直尺寸與水平尺寸方面之像素尺寸,例如,16×16像素或16乘16像素。一般而言,16×16區塊在垂直方向上將具有16個像素(y=16)且在水平方向上將具有16個像素(x=16)。同樣地,N×N區塊通常在垂直方向上具有N個像素且在水平方向上具有N個像素,其中N表示正整數值。可按列及行來配置區塊中之像素。此外,區塊未必需要在水平方向上與垂直方向上具有相同數目個像素。舉例而言,區塊可包含N×M個像素,其中M等於N或不等於N,且其中M為正整數值。
在一些實例中,本文中所揭示之CU之結構可指如視訊寫碼標準(諸如H.265/HEVC)中所闡述之CU之結構。在HEVC中,片段中之最大寫碼單元稱為寫碼樹型區塊(CTB)。CTB含有四分樹,該四分樹之結點為寫碼單元。CTB範圍之大小在HEVC主設定檔中自16×16至64×64;以及,在一些實例中,亦支援8×8 CTB大小。CU可與CTB大小相同且可小至8×8。每一CU藉由一個模式而寫碼。當CU經框間預測模式寫碼時,CU可進一步分割成2或4個預測單元(PU)或在並未應用進一步分割時變為僅一個PU(例如,圖2中所展示之PART_2Nx2N)。當兩個PU存在於一個CU中時,它們可為二分之一大小之矩形(例如,圖2中所展示之PART_2NxN或PART_Nx2N)或具有一個四分之一大小及其他四分之三大小之兩個矩形(例如,圖2中所展示之PART_2NxnU、PART_2NxnD、PART_nLx2N或PART_nRx2N)。存在用於藉由框間預測模式寫碼之八分割模式,如圖2中所展示:PART_2Nx2N、PART_2NxN、PART_Nx2N、PART_NxN、PART_2NxnU、PART_2NxnD、PART_nLx2N及PART_nRx2N。當CU經框間寫碼時,針對每一PU提供一組運動資訊。另外,每一PU藉由獨特框間預測模式寫碼以導出該組運動資訊。
參考(例如)ITU-T H.264/AVC或其他標準中之巨集區塊,每一框 間巨集區塊(MB)可根據一個實例以四個不同方式分割:一個16×16 MB分區、兩個16×8 MB分區、兩個8×16 MB分區或四個8×8 MB分區。一個MB中之不同MB分區每一方向可具有不同參考索引值(RefPicList0或RefPicList1)。在其中MB未分割成四個8×8 MB分區之實例中,MB可在每一方向上具有每一MB分區之僅一個運動向量。在其中MB分割成四個8×8 MB分區之實例中,每一8×8 MB分區可進一步分割成子區塊,該等子區塊中之每一者可在每一方向上具有不同運動向量。在此實例中,8×8 MB分區可以四種不同方式分割成一或多個子區塊:一個8×8子區塊、兩個8×4子區塊、兩個4×8子區塊或四個4×4子區塊。每一子區塊可在每一方向上具有不同運動向量。在此實例中,每一運動向量可存在於等於高於子區塊之層級中。
在一些實例中,本文中所揭示之MB之結構可指如視訊寫碼標準(諸如ITU-T H.264/AVC)中所闡述之MB之結構。在此等實例中,視訊編碼器20及視訊解碼器30可經組態以在B片段中之用於跳過或直接模式之MB或MB分區層級處使用時間直接模式寫碼視訊資料。對於每一MB分區,與當前區塊之RefPicList1[0]中之當前MB分區共置的區塊之運動向量可用於導出運動向量。共置區塊中之每一運動向量可基於POC距離按比例調整。H.264/AVC亦包括空間直接模式,此可用於預測來自空間相鄰者之運動資訊。
參考圖1,為產生經寫碼CTU,視訊編碼器20可對CTU之寫碼樹型區塊遞迴地執行四分樹分割,以將寫碼樹型區塊劃分成寫碼區塊,因此命名「寫碼樹單元」。寫碼區塊可為樣本之N×N(或N×M)區塊。CU可為圖像的明度樣本之寫碼區塊及色度樣本之兩個對應寫碼區塊,該圖像具有明度樣本陣列、Cb樣本陣列及Cr樣本陣列,以及用以寫碼寫碼區塊之樣本的語法結構。視訊編碼器20可將CU之寫碼區塊分割成一或多個PU。PU可為得以應用相同預測技術的正方形或非 正方形樣本區塊。CU之PU可為圖像之明度樣本的預測區塊、圖像之色度樣本的兩個對應預測區塊,及用以預測該等預測區塊樣本之語法結構。視訊編碼器20可產生CU之每一PU之明度、Cb,及Cr預測區塊的預測性明度、Cb及Cr區塊。
視訊編碼器20可使用框內預測或框間預測以產生PU之預測性區塊。若視訊編碼器20使用框內預測以產生PU之預測性區塊,則視訊編碼器20可基於與PU相關聯之圖像之經解碼樣本而產生PU之預測性區塊。
若視訊編碼器20使用框間預測以產生PU之預測性區塊,則視訊編碼器20可基於除與PU相關聯之圖像以外的一或多個圖像之經解碼樣本而產生PU之預測性區塊。視訊編碼器20可使用單向預測或雙向預測以產生PU之預測性區塊。當視訊編碼器20使用單向預測來產生PU之預測性區塊時,PU可具有單一運動向量(MV)。當視訊編碼器20使用雙向預測來產生PU之預測性區塊時,PU可具有兩個MV。
在視訊編碼器20產生CU之一或多個PU之預測性區塊(例如,預測性明度、Cb及Cr區塊)之後,視訊編碼器20可產生CU之殘餘區塊。CU之殘餘區塊中之每一樣本可指示CU之PU之預測性區塊中的樣本與CU之寫碼區塊中的對應樣本之間的差異。舉例而言,視訊編碼器20可產生CU之明度殘餘區塊。CU之明度殘餘區塊中的每一樣本指示CU之預測性明度區塊中之一者中的明度樣本與CU之原始明度寫碼區塊中的對應樣本之間的差異。另外,視訊編碼器20可產生CU之Cb殘餘區塊。CU之Cb殘餘區塊中的每一樣本可指示CU之預測性Cb區塊中之中一者中的Cb樣本與CU之原始Cb寫碼區塊中之對應樣本之間的差異。視訊編碼器20亦可產生CU之Cr殘餘區塊。CU之Cr殘餘區塊中之每一樣本可指示CU之預測性Cr區塊中之一者中的Cr樣本與CU之原始Cr寫碼區塊中之對應樣本之間的差異。
視訊編碼器20可使用四分樹分割將CU之殘餘區塊(例如,明度、Cb及Cr殘餘區塊)分解成一或多個變換區塊(例如,明度、Cb及Cr變換區塊)。變換區塊可為對其應用相同變換的樣本之區塊。CU之變換單元(TU)可為明度樣本之變換區塊、色度樣本之兩個對應變換區塊及用於變換變換區塊樣本之語法結構。因此,CU之每一TU可與明度變換區塊、Cb變換區塊,及Cr變換區塊相關。與TU相關聯之明度變換區塊可為CU之明度殘餘區塊之子區塊。Cb變換區塊可為CU之殘餘區塊之子區塊。Cr變換區塊可為CU之Cr殘餘區塊之子區塊。
視訊編碼器20可將一或多個變換應用至變換區塊以產生TU之係數區塊。係數區塊可為變換係數之二維陣列。變換係數可為純量。舉例而言,視訊編碼器20可將一或多個變換應用至TU之明度變換區塊,以產生TU之明度係數區塊。視訊編碼器20可將一或多個變換應用至TU之Cb變換區塊以產生TU之Cb係數區塊。視訊編碼器20可將一或多個變換應用至TU之Cr變換區塊以產生TU之Cr係數區塊。
在一些實例中,在使用CU之PU之框內預測性或框間預測性寫碼之後,視訊編碼器20可計算CU之TU的殘餘資料。PU可包含空間域(亦被稱作像素域)中之像素資料,且TU可包含在將變換(例如,離散餘弦變換(DCT)、整數變換、小波變換或概念上類似的變換)應用於殘餘視訊資料之後的變換域中之係數。殘餘資料可對應於未經編碼之圖像之像素與對應於PU之預測值之間的像素差。視訊編碼器20可形成包括CU之殘餘資料的TU,且隨後變換該等TU以產生CU之變換係數。
在產生係數區塊(例如,明度係數區塊、Cb係數區塊或Cr係數區塊)之後,視訊編碼器20可量化該區塊中之係數。量化大體指變換係數經量化以可能減少用以表示變換係數的資料之量從而提供進一步壓縮之過程。在視訊編碼器20量化係數區塊之後,視訊編碼器20可經組 態以熵編碼指示經量化變換係數之語法元素。舉例而言,視訊編碼器20可對指示經量化變換係數之語法元素執行上下文自適應性二進位算術寫碼(CABAC)。
在一些實例中,視訊編碼器20可利用預定義掃描次序(例如,水平、垂直或任何其他掃描次序)掃描經量化變換係數以產生可經熵編碼之串列化向量。在其他實例中,視訊編碼器20可執行自適應性掃描。在掃描經量化變換係數以形成一維向量之後,視訊編碼器20可(例如)根據上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率區間分割熵(PIPE)寫碼或另一熵編碼方法來對一維向量進行熵編碼。視訊編碼器20亦可熵編碼與經編碼之視訊資料相關聯的供由視訊解碼器30用於解碼視訊資料之語法元素。
為執行CABAC,視訊編碼器20可將上下文模型內之上下文指派至待傳輸之符號。該上下文可係關於(例如)符號之鄰近值是否為非零。為執行CAVLC,視訊編碼器20可選擇用於待傳輸之符號的可變長度碼。可將VLC中之碼字建構成使得相對較短碼對應於更有可能的符號,而較長碼對應於較不可能的符號。以此方式,相對於(例如)針對待傳輸之每一符號使用相等長度碼字,使用VLC可達成位元節省。機率判定可基於經指派至符號之上下文而進行。
視訊解碼器30可接收由視訊編碼器20產生之位元串流。另外,視訊解碼器30可剖析位元串流以解碼來自位元串流之語法元素。視訊解碼器30可至少部分基於自位元串流解碼之語法元素重建構視訊資料之圖像。重建構視訊資料之程序可大體上與由視訊編碼器20執行之程序互逆。舉例而言,視訊解碼器30可使用PU之MV來判定當前CU之經框間預測PU的預測性區塊。同樣,視訊解碼器30可產生當前CU之PU的經框內預測區塊。另外,視訊解碼器30可將與當前CU之TU相關 聯的變換係數區塊反量化。視訊解碼器30可對變換係數區塊執行逆變換,以重構與當前CU之TU相關聯的變換區塊。視訊解碼器30可藉由將當前CU之PU的預測性區塊之樣本添加至自當前CU之TU之變換區塊的逆量化及逆變換所獲得的對應殘餘值,來重建構當前CU之寫碼區塊。藉由重建構圖像之每一CU的寫碼區塊,視訊解碼器30可重建構圖像。
視訊編碼器20及/或視訊解碼器30可經組態以根據本發明中描述之技術來操作。一般而言,視訊編碼器20及/或視訊解碼器30可經組態以執行本文中以任何組合描述之一或多種技術。
本文中介紹或另外描述關於區塊分區之某些設計態樣及關於AVC及HEVC之運動預測,因為如本文所闡述,本發明之一或多個技術可與視訊標準(例如,AVC及/或HEVC)一起使用或者增強視訊標準、其擴展、處於開發中之視訊標準或未來視訊標準及類似者。
現將論述HEVC中之運動預測之態樣。在HEVC標準中,存在可用於PU之兩個框間預測模式:合併模式(將跳過視為合併之特定情況)及進階運動向量預測(AMVP)。在AMVP合併模式中,為多個運動向量預測符維持運動向量(MV)候選者清單。當前PU之運動向量(以及合併模式中之參考索引)藉由自MV候選者清單獲取一個候選者而產生。MV候選者清單含有用於合併模式之至多5個候選者且僅兩個候選者用於AMVP模式。合併候選者可含有一組運動資訊,例如對應於兩個參考圖像清單(清單0及清單1)之運動向量及參考索引。若由合併索引來識別合併候選者,則參考圖像用於當前區塊之預測,以及判定相關聯之運動向量。然而,在針對自清單0或清單1的每一潛在預測方向的AMVP模式下,需要明確地將參考索引連同MVP索引傳信至MV候選者清單,因為AMVP候選者僅含有運動向量。在AMVP模式中,可進一步改進經預測運動向量。如上文已描述,HEVC中之合併候選者對 應於一完整組運動資訊,而HEVC中之AMVP候選者僅含有一個特定預測方向之運動向量及參考索引。合併模式及AMVP模式兩者之候選者類似地自相同空間及時間鄰近區塊導出。
圖3A及圖3B分別展示用於合併及AMVP模式之空間鄰近MV候選者。空間MV候選者自圖3A及圖3B中所展示之鄰近區塊導出以用於特定PU(所展示之實例中之PU0)。如下文將更詳細地描述,候選者自鄰近區塊產生因合併模式及AMVP模式而不同。
在合併模式中,至多四個空間MV候選者可按圖3A中所展示之次序導出:左側(0)、上方(1)、右側上方(2)、左側下方(3)及左側上方(4)。在AMVP模式中,鄰近區塊劃分成兩個群:由區塊0及1組成之左側群,及由區塊2、3及4組成之上方群,如圖3B中所展示。對於每一群,參考與由經傳信之參考索引指示之相同參考圖像的鄰近區塊中之潛在候選者具有待選擇之最高優先權以形成該群之最終候選者。有可能所有相鄰區塊均不含指向相同參考圖像的運動向量。因此,若無法發現此類候選者,則將按比例調整第一可用候選者以形成最終候選者,因此可補償時間距離差異。
時間運動向量預測符(TMVP)候選者(若啟用且可用)在空間運動向量候選者之後添加至MV候選者清單中。用於TMVP候選者之運動向量導出之程序對於合併及AMVP模式兩者相同,合併模式中之TMVP候選者之目標參考索引始終設定為0。用於TMVP候選者導出之主要區塊位置為共置PU底部右側區塊外部(在圖4A中展示為區塊「T」)以補償用於產生空間鄰近候選者之上方及左側區塊的偏差。然而,若區塊位於當前CTB列之外部或運動資訊不可用,則區塊被PU之中央區塊取代。
如圖4B中所展示,TMVP候選者之運動向量自共置圖像之共置PU導出,指示於片段層級中。類似於AVC中之時間直接模式,TMVP 候選者之運動向量可具有經執行以補償距離差異之運動向量調整。
現將描述HEVC中之運動預測之其他態樣。一個此態樣為運動向量調整。假定在呈現時間上運動向量之值與圖像之距離成比例。運動向量相關聯兩個圖像,參考圖像及含有運動向量之圖像(即含有圖像)。當利用運動向量預測其他運動向量時,含有圖像及參考圖像之距離基於圖像次數計數(POC)值而計算。
對於待預測之運動向量,其相關聯之含有圖像及參考圖像可不同。因此,計算新距離(基於POC)。且運動向量基於此等兩個POC距離按比例調整。對於空間鄰近候選者,用於兩個運動向量之含有圖像相同,而參考圖像不同。在HEVC中,運動向量調整適用於空間及時間鄰近候選者之TMVP及AMVP兩者。
HEVC中之運動預測之另一態樣為人造運動向量候選者產生。若運動向量候選者清單不完整,則人造運動向量候選者產生且插入在清單末端,直至其將具有全部候選者。在合併模式中,存在兩個類型之人造MV候選者:僅針對B-片段導出之合併候選者及僅針對AMVP使用之零候選者,若第一類型並未提供足夠人造候選者。對於已在候選者清單中且具有必需運動資訊之每一對候選者,雙向合併運動向量候選者藉由參考清單0中之圖像之第一候選者的運動向量與參考清單1中之圖像之第二候選者的運動向量之組合導出。
HEVC中之運動預測之另一態樣為用於候選者插入之精簡程序。來自不同區塊之候選者可恰巧相同,此降低合併模式或AMVP模式候選者清單之效率。精簡程序比較當前候選者清單中之一個候選者與其他,以避免插入相同候選者。
現將介紹重疊區塊運動補償(OBMC)之通用概念。OBMC涵蓋於較早視訊標準中。重疊區塊運動補償(OBMC)提出於H.263(Video Coding for Low Bitrate Communication,document Rec.H.263,ITU-T, Apr.1995)之開發中。可對當前16×16巨集區塊之當前8×8區塊執行OBMC,且兩個連接鄰近8×8區塊之運動向量可用於如圖5中所展示之當前8×8區塊。舉例而言,對於當前巨集區塊中之第一8×8區塊(例如,藉由圖5中之編號「1」識別之區塊),除使用其自身運動向量產生之預測區塊之外,亦應用上方及左側鄰近運動向量產生兩個額外預測區塊。以此方式,當前8×8區塊中之每一像素具有三個預測值,且此等三個預測值之加權平均值用作當前8×8區塊中之每一像素的最終預測值。作為另一實例,對於當前巨集區塊中之第二8×8區塊(例如,藉由圖5中之編號「2」識別之區塊),除使用其自身運動向量產生之預測區塊之外,亦可應用上方及右側鄰近運動向量產生兩個額外預測區塊。以此方式,當前8×8區塊中之每一像素具有三個預測值,且此等三個預測值之加權平均值用作當前8×8區塊中之每一像素的最終預測值。
圖5展示OBMC如何實施於H.263中之實例。當鄰近區塊未經寫碼或經寫碼為框內(亦即,鄰近區塊並不具有可用運動向量)時,當前8×8區塊之運動向量用作鄰近運動向量。現參考當前巨集區塊之第三及第四8×8區塊(例如,各自地藉由圖5中之編號「3」及「4」識別之區塊),下方鄰近區塊始終不使用(亦即,視為不可用)。換言之,對於當前巨集區塊,來自當前巨集區塊下方之巨集區塊之運動資訊在OBMC期間不將用於重建構當前巨集區塊之像素。而是,對於區塊3,來自左側相鄰者之運動資訊可用於OBMC,且對於區塊4來自右側相鄰者之運動資訊可用於OBMC,但區塊3及4下方之區塊假設未經寫碼且並不用於OBMC。
OBMC針對HEVC而提出。在HEVC中,OBMC亦經提出以使PU邊界平滑。圖6A及圖6B中展示所提出之HEVC中之OBMC的方法之實例。在圖6A及圖6B中,基於PU之OBMC使用白色區域說明以表示第 一PU(例如,PU0),且陰影區域表示第二PU(例如,PU1)。如針對HEVC所提出,當CU含有兩個或兩個以上PU時,靠近PU邊界之列或行藉由OBMC而平滑。對於第一PU及第二PU中之藉由「A」或「B」標記之像素,兩個預測值藉由分別應用第一PU(PU0)及第二PU(PU1)之運動向量而產生。如針對HEVC所提出,兩個預測值之加權平均將用作最終預測。
在HEVC中,每一PU含有僅一組運動資訊。然而,當基於子PU之運動預測/導出應用時,PU可劃分成子PU,其中每一子PU含有一組運動資訊。當PU拆分成多個子PU時,每一子PU可分別得到運動補償。舉例而言,子PU程序可適用於時間運動向量預測且其被稱為進階時間運動向量預測(ATMVP)。
現將論述子區塊之態樣。在後濾波程序(諸如解區塊)中,解碼程序可以並未完全遵循PU之結構但待處理之最小區塊之大小之方式應用。此類最小處理區塊被稱為子區塊。子區塊可具有正方形或非正方形形狀。子區塊通常屬於PU且因此子區塊大小小於或等於最小PU之大小。
圖7A至圖7C中說明實例以展示子PU與子區塊之間的關係。如可所見,子區塊大小可小於(圖7A)、等於(圖7B)或大於(圖7C)子PU大小。
先前所提出之及當前技術可具有一些限制。作為一個實例,用於HEVC之現有OBMC方法主要對PU、巨集區塊或子巨集區塊邊界執行。作為另一實例,不清楚如何使用其他CU之運動資訊來預測OBMC中之當前PU。作為另一實例,在當前PU含有子PU時,基於PU之OBMC方法可能不有效起作用。為潛在地解決上文所識別之問題及限制,本發明引入若干技術。本發明之技術可單獨地應用,或替代地,其任何組合可應用。如本文所使用,在本發明中參考資訊可被視 為運動資訊的一部分。
下文所描述之技術用於重疊區塊運動補償(OBMC)。在一些實例中,如本文所描述,OBMC可指涉及使用來自鄰近當前區塊之一或多個區塊之運動資訊及執行加權平均以產生當前區塊之預測區塊的任何程序。在此等實例中,可對邊界、區塊之一部分、區塊之片段或整個區塊執行OBMC。在其他實例中,如本文所描述,OBMC可指涉使用基於來自鄰近當前區塊之一或多個區塊之運動資訊的(i)一或多個預測區塊及基於當前區塊之運動資訊的(ii)預測區塊之加權平均的任何程序。在此等實例中,可對邊界、區塊之一部分、區塊之片段或整個區塊執行OBMC。在其他實例中,如本文所描述之,OBMC可指利用當前區塊及一或多個鄰近區塊產生多個運動向量,且針對當前區塊將其合併(例如,求平均值)。
本發明之第一技術為基於子區塊之OBMC。在此第一技術之下,視訊編碼器20及/或視訊解碼器30可經組態以為PU或CU(例如,當前PU或CU)內之每一子區塊執行OBMC。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以為PU或CU內之每一子區塊執行OBMC,而非經組態以僅執行OBMC,從而使PU邊界平滑。如上文所描述,在一些實例中,子區塊可指PU之子區塊;且,在此等實例中,子區塊大小可小於或等於最小PU之大小。在其他實例中,子區塊可指不同於PU之子區塊之某物。舉例而言,子區塊可指CU之子區塊。下文更詳細地論述子區塊之大小。根據此第一技術及根據一些實例,視訊編碼器20及/或視訊解碼器30可經組態以藉由使用臨近經編碼及/或經解碼之當前子區塊的子區塊之運動資訊而執行OBMC。
根據此第一技術及其他實例,視訊編碼器20及/或視訊解碼器30可經組態以判定鄰近當前子區塊之一或多個子區塊屬於未經解碼CU。在一些實例中,「未經解碼」CU可指在當前子區塊正在由視訊 編碼器20及/或視訊解碼器30解碼時,尚未由視訊編碼器20及/或視訊解碼器30解碼之CU。在此等實例中,由視訊解碼器30接收之尚未由視訊解碼器30解碼之CU可被稱作「未經解碼」CU。舉例而言,視訊解碼器30可經組態以根據掃描次序解碼複數個區塊,且未經解碼CU可以掃描次序定位使得未經解碼CU將在當前子區塊之後的某時經解碼。基於判定一或多個鄰近子區塊屬於未經解碼CU,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼CU之一或多個鄰近子區塊對於基於子區塊之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近子區塊之運動資訊而為當前子區塊執行OBMC。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定鄰近當前子區塊之一或多個子區塊屬於未經解碼LCU。在一些實例中,「未經解碼」LCU可指在當前子區塊正在由視訊編碼器20及/或視訊解碼器30解碼時,尚未由視訊編碼器20及/或視訊解碼器30解碼之LCU。在此等實例中,由視訊解碼器30接收之尚未由視訊解碼器30解碼之LCU可被稱作「未經解碼」LCU。舉例而言,視訊解碼器30可經組態以根據掃描次序解碼複數個區塊,且未經解碼LCU可以掃描次序定位使得未經解碼LCU將在當前子區塊之後的某時經解碼。基於判定一或多個鄰近子區塊屬於未經解碼LCU,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼LCU之一或多個鄰近子區塊對於基於子區塊之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近子區塊之運動資訊而為當前子區塊執行OBMC。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定鄰近當前子區塊之一或多個子區塊屬於未經解碼PU。在一些實例中,「未經解碼」PU可指在當前子區塊正在由視訊編碼器20及/或視訊 解碼器30解碼時,尚未由視訊編碼器20及/或視訊解碼器30解碼之PU。在此等實例中,由視訊解碼器30接收之尚未由視訊解碼器30解碼之PU可被稱作「未經解碼」PU。舉例而言,視訊解碼器30可經組態以根據掃描次序解碼複數個區塊,且未經解碼PU可以掃描次序定位使得未經解碼PU將在當前子區塊之後的某時經解碼。基於判定一或多個鄰近子區塊屬於未經解碼PU,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼PU之一或多個鄰近子區塊對於基於子區塊之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近子區塊之運動資訊而為當前子區塊執行OBMC。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定鄰近當前子區塊之一或多個子區塊屬於未經解碼子區塊。在一些實例中,「未經解碼」子區塊可指在當前子區塊正在由視訊編碼器20及/或視訊解碼器30解碼時尚未由視訊編碼器20及/或視訊解碼器30解碼之子區塊。在此等實例中,由視訊解碼器30接收之尚未由視訊解碼器30解碼之子區塊可被稱作「未經解碼」子區塊。舉例而言,視訊解碼器30可經組態以根據掃描次序解碼複數個區塊,且未經解碼子區塊可以掃描次序定位使得未經解碼子區塊將在當前子區塊之後的某時經解碼。基於判定一或多個鄰近子區塊屬於未經解碼子區塊,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼子區塊之一或多個鄰近子區塊對於基於子區塊之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近子區塊之運動資訊而為當前子區塊執行OBMC。
根據此第一技術,子區塊之大小可等於CU之最小PU大小。在其他實例中,子區塊可具有小於最小PU大小之大小。舉例而言,N×N 可表示最小運動區塊大小,且子區塊大小(例如,子PU大小)可相同N×N,其中N為正整數。在此實例中,若最小PU大小為8×4或4×8,則子區塊大小可等於4×4。在另一實例中,N×M可表示最小運動區塊大小,且子區塊大小(例如,子PU大小)可設定為N×M,其中M及N為正整數且可或可不等於彼此。在此實例中,若最小PU大小為8×8,則子區塊大小可等於4×4、8×4或4×8。
在另一實例中,子區塊之大小亦可為任何預定義值。預定義子區塊大小可(例如)大於最小PU大小。在另一實例中,子區塊之大小可經傳信於參數集中。在另一實例中,子區塊之大小可取決於當前PU或CU(亦即,當前子區塊屬於之當前PU或CU)大小。在另一實例中,子區塊之大小可取決於視訊編碼器20及/或視訊解碼器30經組構以對其執行OBMC之區塊大小。在另一實例中,子區塊之大小可取決於當前PU或CU(亦即,當前子區塊屬於之當前PU或CU)大小以及一或多個鄰近PU或CU(亦即,鄰近當前子區塊屬於之PU或CU之一或多個PU或CU)之大小。
本發明之第二技術為基於子PU之OBMC。在此第二技術之下,視訊編碼器20及/或視訊解碼器30可經組態以為PU或CU內之藉由子PU(例如,當前PU或CU)寫碼之每一子PU執行OBMC。每一子PU可含有其自身組運動資訊,例如,包括運動向量及參考圖像清單索引。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用PU或CU內之一或多個鄰近子PU之運動資訊為當前PU或CU內之一或多個子PU執行OBMC。在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用當前PU或CU內之一或多個鄰近子PU之運動資訊連同當前PU或CU外部之一或多個鄰近區塊之運動資訊為當前PU或CU內之一或多個子PU執行OBMC。
根據此第二技術及一些實例,對於每一子PU,其鄰近區塊可為 同一PU或CU(例如,當前PU或CU)內之鄰近子PU及當前PU或CU(亦即,當前PU或當前CU)外部之鄰近區塊。在其他實例中,若鄰近區塊與當前子PU具有相同大小,則視訊編碼器20及/或視訊解碼器30可經組態以使用當前PU或CU外部(亦即,當前PU外部或當前CU外部)之鄰近區塊來對當前PU或CU之當前子PU執行OBMC。在此等實例中,即使當前PU或CU之鄰近區塊含有一組以上運動資訊,視訊編碼器20及/或視訊解碼器30亦可經組態以利用鄰近區塊之僅一組運動資訊。亦在此等實例中,若當前PU或CU外部之鄰近區塊具有不同於當前子PU之大小的大小,則視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定具有不同於當前子之大小的大小之一或多個鄰近區塊之運動資訊而為當前子PU執行OBMC。
在其他實例中,若鄰近區塊小於當前子PU之大小,則視訊編碼器20及/或視訊解碼器30可經組態以使用當前PU或CU外部之鄰近區塊來對當前PU或CU之當前子PU執行OBMC。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由使用當前子PU之一或多個子區塊為當前子PU執行OBMC。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以將PU之任何邊界子PU劃分至子區塊中。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以為每一子區塊執行OBMC。
在其他實例中,與當前PU或CU外部之任何像素不鄰接之子PU可僅使用鄰近子PU而預測。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定當前子PU不與當前PU或CU外部之任何像素鄰接,且可經組態以僅使用鄰近子PU為當前子PU執行OBMC。
亦根據本發明之第二技術及在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定當前子PU之一或多個鄰近區塊屬於未經解碼CU。基於判定一或多個鄰近區塊屬於未經解碼CU,視訊編碼 器20及/或視訊解碼器30可經組態以判定屬於未經解碼CU之一或多個鄰近區塊對於基於子PU之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近區塊之運動資訊而為當前子PU執行OBMC。
亦根據本發明之第二技術且在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定當前子PU之一或多個鄰近區塊屬於未經解碼LCU。基於判定一或多個鄰近區塊屬於未經解碼LCU,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼LCU之一或多個鄰近區塊對於基於子PU之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近區塊之運動資訊而為當前子PU執行OBMC。
亦根據本發明之第二技術且在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定當前子PU之一或多個鄰近區塊屬於未經解碼PU(例如,經編碼PU)。基於判定一或多個鄰近區塊屬於未經解碼PU,視訊編碼器20及/或視訊解碼器30可經組態以判定屬於未經解碼PU之一或多個鄰近區塊對於基於子PU之OBMC不可用。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由不使用(例如,排除)判定為不可用之一或多個鄰近區塊之運動資訊而為當前子PU執行OBMC。
本發明之第三技術為基於CU邊界之OBMC。在此第三技術下,視訊編碼器20及/或視訊解碼器30可經組態以為一或多個CU邊界執行OBMC。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以亦為一或多個PU邊界執行OBMC。
參考當前CU之頂部及左側邊界,視訊編碼器20及/或視訊解碼器30可經組態以使用不屬於當前CU但毗鄰當前CU之頂部及/或左側邊界(例如,邊)之一或多個鄰近區塊的運動資訊來以類似於本文中關於第 一技術所描述之方式產生額外預測符。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以藉由使用來自當前CU之左側之鄰近區塊(例如,鄰近CU)及/或當前CU之頂部之鄰近區塊(例如,鄰近CU)的CU邊界(例如,當前CU之頂部及/或左側邊界)上之區塊之運動資訊中的全部或一些為CU邊界(例如,當前CU邊界)執行OBMC。
在此實例中,視訊編碼器20及/或視訊解碼器30可經組態以按以下方式為CU邊界執行OBMC:對於位於頂部CU邊界上之當前CU之每一最小區塊,視訊編碼器20及/或視訊解碼器30可經組態以使用用於頂部CU邊界之OBMC的每一最小區塊之頂部鄰近區塊之運動資訊,且額外預測符用於形成具有CU之當前區塊之最終預測信號。對於位於左側CU邊界上之當前CU之每一最小區塊,視訊編碼器20及/或視訊解碼器30可經組態以使用用於左側CU邊界之OBMC的每一最小區塊之左側鄰近區塊之運動資訊,且額外預測符用於形成當前區塊之最終預測信號。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以僅對左側CU及/或頂部CU邊界執行OBMC。在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以對左側CU、頂部CU、右側CU及/或底部CU邊界執行OBMC。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以以如上文關於左側及頂部CU邊界所描述之類似方式對右側CU及/或底部CU邊界執行OBMC。舉例而言,對於位於右側CU邊界上之當前CU之每一最小區塊,視訊編碼器20及/或視訊解碼器30可經組態以使用用於右側CU邊界之OBMC的每一最小區塊之頂部鄰近區塊之運動資訊,且額外預測符用於形成具有CU之當前區塊之最終預測信號。對於位於底部CU邊界上之當前CU之每一最小區塊,視訊編碼器20及/或視訊解碼器30可經組態以使用用於底部CU邊界之OBMC的每一最小區塊之底部鄰近區塊之運動資訊,且額外預測器用 於形成具有CU之當前區塊之最終預測信號。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以次取樣或壓縮來自鄰近CU之運動資訊。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用鄰近CU之經次取樣或經壓縮運動資訊來產生當前CU之一或多個額外預測符。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以基於子區塊而非最小區塊大小來次取樣或壓縮鄰近CU之運動資訊,意謂若鄰近CU具有具有個別MV'之多個子區塊(例如,PU'),則視訊編碼器20及/或視訊解碼器30可經組態以將單一MV用於一群(例如,組)PU'且將另一單一MV用於另一群PU'。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以停用與本發明之第三技術及/或本發明之另一技術相關之OBMC。舉例而言,若(例如,當以下情況時)當前CU之大小小於子區塊大小,則視訊編碼器20及/或視訊解碼器30可經組態以為當前CU內之PU停用OBMC。在此實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定當前CU之大小且比較所判定之當前CU之大小與子區塊之大小,以判定當前CU之大小是否小於子區塊大小。基於判定當前CU之大小小於子區塊大小,視訊編碼器20及/或視訊解碼器30可經組態以為當前CU內之PU停用OBMC。
作為另一實例,若(例如,當以下情況時)PU邊界並非子區塊邊界(例如,不含有任何子區塊之邊界),則視訊編碼器20及/或視訊解碼器30可經組態以為PU邊界停用OBMC。在此實例中,子區塊大於PU,且PU邊界可位於子區塊內部。PU邊界可或可不為子區塊邊界。因此,視訊編碼器20及/或視訊解碼器30可經組態以沿著PU邊界停用(例如,跳過)OBMC,從而降低編碼及/或解碼複雜度。作為另一實例,視訊編碼器20及/或視訊解碼器30可經組態以為右側CU及/或底部 CU邊界停用OBMC。
本發明之第四技術包括以上三個所描述之第一、第二及第三OBMC技術之共同態樣。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用鄰近子區塊、鄰近子PU或鄰近區塊之運動向量來各自地產生當前子區塊、當前子PU或當前區塊之額外預測符。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用額外預測符來各自地形成當前子區塊、當前子PU或當前區塊之最終預測信號。
根據此第四技術及其他實例,視訊編碼器20及/或視訊解碼器30可經組態以使用當前子區塊、當前子PU或當前區塊之至多預定義數目相鄰者以用於OBMC。在此等實例中,預定義數目可為八或不同於八之數目。根據一個實例,視訊編碼器20及/或視訊解碼器30可經組態以使用四個連接相鄰者區塊(例如,上方、下方、左側及右側鄰近子區塊)之運動資訊(例如,運動向量)以用於OBMC。如本文所使用,參考「以用於OBMC」可指「以執行OBMC」。
在一些實例中,若(例如,當以下情況時)鄰近子區塊、鄰近子PU或鄰近區塊含有多組運動資訊,則視訊編碼器20及/或視訊解碼器30可經組態以選擇僅一組運動資訊。舉例而言,若子區塊大小為8×8且運動資訊基於4×4儲存,則視訊編碼器20及/或視訊解碼器30可經組態以僅選擇對應於此特定實例中之8×8子區塊的一組運動資訊。
視訊編碼器20及/或視訊解碼器30可經組態以根據一或多個技術選擇單一組運動資訊。在一個實例中,視訊編碼器20及/或視訊解碼器30可經組態以基於子區塊、子PU或區塊之中央像素選擇該組運動資訊。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以選擇包括子區塊、子PU或區塊之中央像素之子區塊、子PU或區塊的該組運動資訊。因此,若存在PU之多組運動資訊,則含有中央像素之區 塊之單一組運動資訊可用於當前區塊之OBMC。在另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以基於屬於鄰近於當前子區塊、子PU或區塊之最小運動區塊的一組運動資訊選擇該組運動資訊。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以選擇屬於鄰近於當前子區塊、子PU或區塊之最小運動區塊的該組運動資訊。若存在複數個此類運動區塊,則視訊編碼器20及/或視訊解碼器30可經組態以按(例如)光柵掃描次序選擇多者中之最早(或第一經解碼)運動區塊。
在另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以比較鄰近子區塊之全部運動資訊與當前PU、CU或區塊之運動資訊。根據此比較,視訊編碼器20及/或視訊解碼器30可經組態以選擇最類似於當前PU、CU或區塊之運動資訊的運動資訊。根據此比較,視訊編碼器20及/或視訊解碼器30可經組態以選擇最不同於當前PU、CU或區塊之運動資訊的運動資訊。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用任何連接鄰近子區塊、子PU或區塊之子組之運動資訊以用於OBMC。在實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用當前區塊之僅左側及右側相鄰者以執行OBMC。在另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用當前區塊之僅上方及下方相鄰者以執行OBMC。在另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用當前區塊之上方或下方相鄰者中之僅一者及左側或右側相鄰者中之一者以執行OBMC。在另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以使用當前區塊之四個連接相鄰者中之僅一者以執行OBMC。在又另一實例中,視訊編碼器20及/或視訊解碼器30可經組態以基於當前PU或CU內之子區塊之相對定位選擇鄰近區塊之子組。
視訊編碼器20及/或視訊解碼器30可經組態以根據本文中所描述之一或多個技術判定鄰近子區塊、子PU或區塊不可用。舉例而言,框內區塊可視為不可用、當前片段或影像塊外部(或部分外部)之區塊可視為不可用、在使用波前時視為不可用之區塊可視為不可用、尚未經解碼(例如,至少其運動向量尚未經解碼)之區塊可視為不可用,及/或在鄰近區塊或子區塊不屬於當前CTU時鄰近區塊或子區塊可視為不可用。
根據本發明之第五技術,視訊編碼器20及/或視訊解碼器30可經組態以每一可用鄰近子區塊之使用運動資訊(例如,運動向量)為當前子區塊執行OBMC,從而產生預測區塊。在一些實例中,預測區塊可表示為P N ,其中N指示鄰近當前子區塊之鄰近區塊的下標/標誌(例如,等於上方下方左側右側)。視訊編碼器20及/或視訊解碼器30可經組態以使用一或多個鄰近區塊之一或多個預測區塊來更新當前子區塊之預測區塊,該預測區塊可表示為P C 。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以產生當前區塊之最終預測區塊(亦即,當前子區塊之經更新預測區塊),該最終預測區塊可為基於來自鄰近當前區塊之一或多個區塊之運動資訊的(i)一或多個預測區塊與基於當前子區塊之運動資訊之(ii)預測區塊的加權平均。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定若(例如,當以下情況時)當前區塊之一或多個鄰近子區塊含有一個以上子PU,哪一者可指示多組運動資訊。在此等實例中,基於判定當前子區塊之一或多個鄰近子區塊含有一個以上子PU,視訊編碼器20及/或視訊解碼器30可經組態以使用鄰近當前子區塊之此等子PU中之一或多者的運動資訊來對當前子區塊執行OBMC。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以不使用或另外排除來自不鄰近當前子區塊之子PU的運動資訊。在其他實例中,視訊編碼器20及/ 或視訊解碼器30可經組態以使用當前子區塊之鄰近區塊之任何子PU的運動資訊來對當前子區塊執行OBMC,無論鄰近區塊之任何子PU是否鄰近當前子區塊。
根據本發明之第六技術,視訊編碼器20及/或視訊解碼器30可經組態以對具有正方形或非正方形尺寸(例如,矩形)之任何區塊(例如,PU或CU)執行OBMC。在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以對具有特定類型或大小之區塊(例如,CU或PU)(例如,預定義類型或大小,藉由合併模式以HEVC寫碼之PU、藉由類似於合併模式之模式以不同於HEVC之寫碼標準寫碼之PU或大於32×32之PU)執行OBMC。
根據本發明之第七技術,視訊編碼器20及/或視訊解碼器30可經組態以使用每一可用鄰近子區塊、子PU或區塊之運動資訊(例如,運動向量)為當前子區塊、子PU或區塊執行OBMC,從而產生預測區塊。在一些實例中,預測區塊可表示為P N ,其中N指示鄰近當前子區塊、子PU或區塊之鄰近區塊的下標/標誌(例如,等於上方下方左側右側)。視訊編碼器20及/或視訊解碼器30可經組態以使用一或多個鄰近區塊之一或多個預測區塊來更新當前區塊(例如,子區塊、子PU或區塊之預測區塊,該預測區塊可表示為P C
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均以更新P C 。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以執行來自鄰近區塊之運動資訊(例如,一或多個運動向量)的預測區塊P N 之(i)一或多個K列或行與當前預測區塊P C 之(ii)對應一或多個列或列之加權平均,以更新P C 。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以將不同權重指派至不同位置(例如,不同列或行)。在一些實例中,K可設定等於1、2、3或4之值。一或多個K列或行為最接近如由N所指示之鄰近區塊的彼等。舉例而 言,若鄰近區塊為當前區塊之左側鄰近區塊或右側鄰近區塊,則視訊編碼器20及/或視訊解碼器30可經組態以執行來自鄰近區塊之運動資訊(例如,一或多個運動向量)之預測區塊P N 的(i)一或多個K行與當前預測區塊P C 之(ii)一或多個對應行之加權平均,以更新P C 。作為另一實例,若鄰近區塊為當前區塊之頂部鄰近區塊或底部鄰近區塊,則視訊編碼器20及/或視訊解碼器30可經組態以執行來自鄰近區塊之運動資訊(例如,一或多個運動向量)之預測區塊P N 的(i)一或多個K列與當前預測區塊P C 之(ii)一或多個對應列之加權平均,以更新P C
參考下方表1,x及y可表示相對於當前子區塊、子PU或區塊之左上方像素之垂直及水平座標。P C (x,y)及P N (x,y)之權重各自地表示為w1(x,y)及w2(x,y)。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均來更新P C ,使得經更新P C (x,y)等於w1(x,y)×P C (x,y)+w2(x,y)×P N (x,y)。當前子區塊、子PU或區塊之寬度及高度可各自地表示為W及H。舉例而言,W-1可指當前子區塊、子PU或區塊之最後一行(例如,離右側最遠之行)。作為另一實例,H-1可指當前子區塊、子PU或區塊之最後一列(例如,最底部列)。作為另一實例,H-2可指當前子區塊、子PU或區塊之倒數第二列(例如,第二最底部列,其可描述為最後一列上方之第一列)。N之值可指本文中所描述之預測區塊P N 之N。權重w1及w2之一個實例經指定於下方表1中。
在一些實例中,當N等於上方時,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均使得P C 之頂部四列藉由P N 更新。類似地,當N等於下方時,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均使得P C 之底部四列藉由P N 更新。作為另一實例,當N等於左側時,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均使得P C 之左側四行藉由P N 更新。類似地,當N等於右側時,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均使得P C 之右側四行藉由P N 更新。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 更新P C 之一列或行。位置及權重根據此等實例[歸類]於上方表1中。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 更新P C 之兩列或行。根據此等實例之兩列或行之位置及權重在上方表1中[加括號]且加單下劃線(例如,每一N值之前/頂部兩列)。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 更新P C 之三列或行。根據此等實例之三列或行之權重及位置在上方表1中[加括號]、加單下劃線且加雙下劃線(例如,每一N值之前/頂部三列)。
在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以基 於當前子區塊、子PU或區塊之大小選擇列(例如,一或多個列)之數目或行(例如,一或多個行)之數目。舉例而言,若當前子區塊、子PU或區塊具有第一大小,則視訊編碼器20及/或視訊解碼器30可經組態以選擇更多列或行;且若當前子區塊、子PU或區塊具有第二大小,則選擇較少列或行。舉例而言,在當前PU大小等於8×4或4×8及/或當前PU藉由子PU模式寫碼時(例如,意謂當前PU包括一或多個子PU),視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 僅僅更新P C 之兩列或行。作為另一實例,在當前PU大小大於8×4或4×8時,視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 更新P C 之四列或行。
在又其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由P N 之對應像素更新P C 之每個像素。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以藉由使用一或多個新增及移位操作而實施用於任何加權平均之權重。在此等實例或其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以實施權重(例如,表1中所展示之權重或不同於表1中所展示之權重之權重),使得w1(x,y)+w2(x,y)等於1。
在一些實例中,藉由P N 更新之P C 的列或行數目可取決於(例如,基於)當前預測區塊之大小。在此等實例中,當前預測區塊之大小可對應於子區塊、子PU、PU或CU之大小。在一些實例中,藉由P N 更新之P C 之列數目可取決於W。舉例而言,當H較大(例如,具有第一值)時,視訊編碼器20及/或視訊解碼器30可經組態以更新更多列。作為另一實例,當H較小(例如,具有小於第一值之第二值)時,視訊編碼器20及/或視訊解碼器30可經組態以更新較少列。作為另一實例,當W較大(例如,具有第一值)時,視訊編碼器20及/或視訊解碼器30可經組態以更新行列。作為另一實例,當W較小(例如,具有小於第一值之第二值)時,視訊編碼器20及/或視訊解碼器30可經組態以更新較少 行。
根據本發明之第八技術,當多個相鄰者提供其中每一者表示為P N 之多個預測符時,預測符P N 與當前預測符P C 之組成可以次序逐個地完成。此處,預測符可意謂預測區塊,該預測區塊可由使用由鄰近區塊之運動資訊之框間預測判定的像素值之區塊構成。舉例而言,在每一組成之後,當前預測符P C 可更新且在組成之前與當前預測符保持同一位元深度,該位元深度可為每一色彩分量之內部處理位元深度。在每一組成期間,用於每一像素之加權程序可包括捨入值r,使得加權程序經改變為(a1(x,y)×P C (x,y)+a2(x,y)×P N (x,y)+r)/S,其中a1/S及a2/S分別等於w1及w2。在一些實例中,r可設定為0或S/2。在此實例中,a1為w1之經量化值、a2為w2之經量化值且S為歸一化因數。
在一些實例中,次序在四個預測符可用時可為上方左側底部右側。在其他實例中,次序在四個預測符可用時可為左側上方底部右側。在其他實例中,次序在四個預測符可用時可為不同於上方兩個實例之任何次序。
在一些實例中,若(例如,當以下情況時)鄰近區塊並未含有運動資訊(因為此可指示P N 不可用),則視訊編碼器20及/或視訊解碼器30可經組態以跳過組成程序。在其他實例中,視訊編碼器20及/或視訊解碼器30可經組態以收集全部預測符(例如,全部P N )且執行使用全部預測符之聯合加權預測程序。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定一或多個P N 不可用,且可經組態以將判定為不可用之一或多個P N 設定為等於P C
在一些實例中,在每一組成期間(例如,當為一或多個預測區塊P N 之每一組成執行加權平均程序時),視訊編碼器20及/或視訊解碼器30可經組態以藉由位元深度增大更新當前預測符P C 。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以在處理下一組成之前在不執 行去調整操作的情況下更新當前預測符P C 。視訊編碼器20及/或視訊解碼器30可經組態以在已經處理全部組成之後執行去調整操作。去調整係關於藉由上述標準化因數S劃分,此可將加權組成值帶至每一輸入預測之同一層級。藉由在已經處理全部組成之後去調整,視訊解碼器30可經組態以藉由依次處理組成及使用聯合加權預測程序獲得相同最終預測結果。此等設計可在多個邊界OBMC應用至同一預測區塊時提供實施之靈活性。
根據本發明之第九技術,視訊編碼器20及/或視訊解碼器30可經組態自適應性地啟用或停用(例如,接通或斷開)CU、PU或任何其他區塊層級處之OBMC。舉例而言,當為特定區塊層級啟用OBMC時,視訊編碼器20及/或視訊解碼器30可經組態以為彼特定區塊層級執行使用本文中所描述之一或多個技術的OBMC。作為另一實例,當為特定區塊層級停用OBMC時視訊編碼器20及/或視訊解碼器30可經組態以不為彼特定區塊層級執行使用本文中所描述之一或多個技術的OBMC。
在一些實例中,視訊編碼器20可經組態以藉由傳信OBMC旗標而自適應性地啟用或停用(例如,接通或斷開)CU、PU或任何其他區塊層級處之OBMC。在一些實例中,視訊編碼器20可經組態以傳信,且視訊解碼器30可經組態以接收OBMC語法元素,諸如具有指示是否為特定區塊啟用或停用OBMC之值的OBMC旗標。舉例而言,視訊編碼器20可經組態以傳信用於每一經框間寫碼CU、PU或區塊之OBMC旗標。在一些實例中,OBMC旗標可為二進位且具有兩個值中之一者。OBMC旗標第一值第一值可指示OBMC經啟用,且OBMC旗標之第二值可指示OBMC經停用。舉例而言,當OBMC旗標為真(例如,具有對應於第一值之值)時,OBMC為當前CU、PU或區塊應用(例如,經啟用)。作為另一實例,當OBMC旗標為假(例如,具有對應於第二值之 值)時,OBMC不為當前CU、PU或區塊應用(例如,經停用)。
類似地,視訊解碼器30可經組態以接收OBMC旗標且判定OBMC旗標之值。舉例而言,視訊解碼器30可經組態以自視訊編碼器20接收由視訊編碼器20產生之位元串流中的OBMC旗標。在一些實例中,對應於OBMC旗標之值指示是否為正在經解碼之視訊資料之區塊(例如,CU、PU或其他區塊)啟用或停用OBMC。在此等實例中,視訊解碼器30可經組態以接收OBMC旗標,該OBMC旗標具有指示是否為特定區塊啟用或停用OBMC之值。舉例而言,視訊解碼器30可經組態以接收用於每一經框間寫碼CU、PU或區塊之OBMC旗標。OBMC旗標第一值第一值可指示OBMC經啟用,且OBMC旗標之第二值可指示OBMC經停用。舉例而言,當OBMC旗標為真(例如,具有對應於第一值之值)時,視訊解碼器30可經組態以判定OBMC為當前CU、PU或區塊應用(例如,經啟用)。作為另一實例,當OBMC旗標為假(例如,具有對應於第二值之值)時,視訊解碼器30可經組態以判定OBMC不為當前CU、PU或區塊應用(例如,經停用)。
在一些實例中,視訊編碼器20可經組態以基於用於CU、PU或區塊之一或多個分割類型,用於CU、PU或區塊之預測模式(例如,合併模式或AMVP模式)或CU、PU或區塊之大小而傳信僅用於CU、PU或區塊之OBMC旗標。在此等實例中,視訊編碼器20可經組態以判定對應於CU、PU或區塊之分割類型、預測模式及/或大小,且基於以下中之一或多者之判定傳信OBMC旗標:對應於CU、PU或區塊之分割類型、預測模式及/或大小。
在一個實例中,僅當CU、PU或區塊不藉由2N×2N合併模式寫碼且CU、PU或區塊之大小小於或等於16×16時,視訊編碼器20才可經組態以傳信用於CU、PU或區塊之OBMC旗標。在此實例中,視訊編碼器20可經組態以判定CU、PU或區塊是否藉由2N×2N合併模式寫碼 及CU、PU或區塊之大小,且基於其中之一或多個判定傳信OBMC旗標。
在一些實例中,視訊編碼器20可經組態以不傳信用於CU、PU或區塊之OBMC旗標。在此等實例中,視訊解碼器30可經組態以基於其他經傳信之資訊(例如,如隨後四個段落中作為含有多個實例之本發明之僅一個實例所描述)隱式地導出對應於OBMC旗標之值。舉例而言,視訊解碼器30可經組態以隱式地導出指示OBMC為CU、PU或區塊應用(例如,經啟用)的OBMC旗標之值。作為另一實例,視訊解碼器30可經組態以隱式地導出指示OBMC不為CU、PU或區塊應用(例如,經停用)的OBMC旗標之值。
根據本發明之第十技術,視訊編碼器20及/或視訊解碼器30可經組態以自適應性地啟用或停用(例如,接通或斷開)CU、PU、子區塊或區塊邊界處之OBMC。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以隱式地基於一或多個(例如,兩個)鄰近區塊之運動資訊(例如,運動向量)之特性及/或基於一或多個(例如,兩個)鄰近區塊之運動資訊(例如,運動向量)的預測樣本值之特性,自適應性地啟用或停用(例如,接通或斷開)CU、PU、子區塊或區塊邊界處之OBMC。
在一些實例中,是否為區塊邊界(例如,CU、PU、子區塊或區塊邊界)應用(例如,啟用)OBMC可基於與當前區塊共用邊界之一或多個(例如,兩個)鄰近區塊之運動向量之間的運動向量差。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定與當前區塊共用邊界之一或多個(例如,兩個)鄰近區塊之運動向量之間的運動向量差。當運動向量差高於臨限值(例如,16像素或任何其他臨限值)時,OBMC可不為一或多個邊界應用(例如,可停用);或者,OBMC可為一或多個邊界應用(例如,啟用)。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以比較所判定之運動向量差與預定義臨 限值,且基於比較為一或多個邊界啟用或停用OBMC。在一些實例中,臨限值可為預定義值,且可或可不經傳信於經編碼視訊位元串流中。
在其中視訊編碼器20及/或視訊解碼器30可經組態以判定兩個鄰近區塊之運動向量之間的運動向量差的實例中,若(例如,當以下情況時)兩個運動向量各自指向不同參考圖框,或若(例如,當以下情況時)至少一個運動向量不可用,則視訊編碼器20及/或視訊解碼器30可經組態以不應用(例如,停用)OBMC。在其中視訊編碼器20及/或視訊解碼器30可經組態以判定兩個或兩個以上鄰近區塊之運動向量之間的運動向量差的另一實例中,若(例如,當以下情況時)兩個或兩個以上運動向量各自指向不同參考圖框,或若(例如,當以下情況時)至少一個運動向量不可用,則視訊編碼器20及/或視訊解碼器30可經組態以不應用(例如,停用)OBMC。
在其他實例中,是否為區塊邊界(例如,CU、PU、子區塊或區塊邊界)應用(例如,啟用)OBMC可基於與當前區塊共用邊界之兩個鄰近區塊之兩個運動向量(例如,兩個鄰近區塊中的每一者之一個運動向量)是否均指向整數像素位置。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以判定與當前區塊共用邊界之兩個鄰近區塊之兩個運動向量(例如,兩個鄰近區塊中的每一者之一個運動向量)是否均指向整數像素位置。在一些實例中,若兩個運動向量指向整數像素位置,則視訊編碼器20及/或視訊解碼器30可經組態以不為邊界應用(例如,停用)OBMC。在其他實例中,若兩個運動向量不指向整數像素位置,則視訊編碼器20及/或視訊解碼器30可經組態以為邊界應用(例如,啟用)OBMC。
在其他實例中,是否為區塊邊界(例如,CU、PU、子區塊或區塊邊界)應用(例如,啟用)OBMC可基於自與當前區塊共用邊界之兩個 鄰近區塊之兩個運動向量導出的兩個預測區塊之樣本值差。舉例而言,當兩個預測區塊之平均絕對差高於某一臨限值(例如,諸如80)時,視訊編碼器20及/或視訊解碼器30可經組態以不為邊界應用(例如,停用)OBMC。作為另一實例,當兩個預測區塊之樣本之間的最大絕對差高於某一臨限值(例如,諸如80、88或96)時,視訊編碼器20及/或視訊解碼器30可經組態以不為邊界應用(例如,停用)OBMC。作為另一實例,當兩個預測區塊之樣本之間的最大絕對差小於或等於某一臨限值(例如,諸如80、88或96)時,視訊編碼器20及/或視訊解碼器30可經組態以為邊界應用(例如,啟用)OBMC。在一些實例中,臨限值可為預定義值,且可或可不經傳信於經編碼視訊位元串流中。在此等實例中,預測區塊之大小可為(i)與以上本發明之第四技術中所描述之子區塊大小相同大小(ii)經預定義或(iii)經傳信於位元串流中。
如本文所使用,為邊界禁用或不應用OBMC可指不針對邊界執行OBMC,且反之亦然。類似地,如本文所使用,為邊界啟用或應用OBMC可指針對邊界執行OBMC,且反之亦然。如本文所使用,關於「為X」之任何參考可指「針對X」或「對X」。舉例而言,參考「為區塊」可指「針對區塊」或「對區塊」。應理解,關於「為X」、「針對X」或「對X」之任何參考可指「為X」、「針對X」或「對X」中之任一者。舉例而言,參考「對子區塊」可同樣指代「為子區塊」或「針對子區塊」。
根據本發明之第十一技術,視訊編碼器20及/或視訊解碼器30可經組態以自適應性地啟用或停用(例如,接通或斷開)CU、PU、子區塊、任何其他區塊層級處之OBMC。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以為每一經框間寫碼CU、PU、子區塊或區塊自適應性地啟用或停用(例如,接通或斷開)OBMC。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以實施關於本發明之第九 技術所描述之一或多個技術及關於本發明之第十技術所描述之一或多個技術而自適應性地啟用或停用(例如,接通或斷開)OBMC。舉例而言,當OBMC旗標對於CU或PU經傳信時,視訊解碼器30可經組態以基於OBMC旗標之值執行(例如,啟用或應用)或不執行(例如,停用或不應用)OBMC。作為另一實例,當OBMC旗標對於CU或PU未經傳信,時視訊解碼器30可經組態以使用上文關於本發明之第十技術所描述之一或多個方法執行(例如,啟用或應用)或不執行(例如,停用或不應用)OBMC。
根據本發明之第十二技術,視訊編碼器20及/或視訊解碼器30可經組態以對全部經運動補償(MC)區塊邊界執行OBMC。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以對除區塊(例如,CU)之右側及底部邊界之外的全部經運動補償(MC)區塊邊界執行OBMC。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以對明度及/或色度分量執行OBMC。
在HEVC中,MC區塊對應於PU。當在HEVC中PU藉由ATMVP模式寫碼時,每一子PU(4×4)為一MC區塊。為以一致方式處理CU、PU或子PU邊界,視訊編碼器20及/或視訊解碼器30可經組態以為當前區塊之全部MC區塊邊界在子區塊層級處根據本文中所描述之一或多個技術執行OBMC。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以將子區塊大小設定為等於4×4,如圖8中所說明。
在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以對當前子區塊執行OBMC。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以導出當前子區塊之一或多個預測區塊。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以使用四個連接鄰近子區塊(例如,與當前子區塊共用邊界之四個子區塊)之運動向量(若可用)導出當前子區塊之四個預測區塊。作為另一實例,視訊編碼器20及/ 或視訊解碼器30可經組態以使用四個連接鄰近子區塊(例如,與當前子區塊共用邊界之四個子區塊)之運動向量(若它們可用且並不與當前區塊之當前運動向量相同)導出當前子區塊之四個預測區塊。視訊編碼器20及/或視訊解碼器30可經組態以基於多個運動向量(例如,與四個預測區塊中之每一者相關聯之一個運動向量或與四個預測區塊中之每一者相關聯之兩個運動向量,如下文所描述)對此等多個預測區塊(例如,基於四個連接鄰近子區塊之四個預測區塊)執行加權平均。在一些實例中,視訊編碼器20及/或視訊解碼器30可經組態以執行加權平均值,從而產生當前子區塊之最終預測區塊。舉例而言,視訊編碼器20及/或視訊解碼器30可經組態以使用多個運動向量從而獲得多個預測樣本,隨後將加權平均應用至樣本。最終預測區塊可指當前子區塊中之像素的經預測像素之區塊。應注意,此段落中之以上實例適用於單方向預測,但在涉及雙向預測之實例中,以上實例中之預測區塊可藉由使用來自四個鄰近區塊中之每一者之兩個運動向量而產生。
在一些實例中,基於鄰近子區塊之一或多個運動向量之預測區塊可表示為PN,其中N為鄰近子區塊之下標。除非另有說明,N識別預測區塊是否在鄰近子區塊的上方、下方、左側或右側。基於當前子區塊之一或多個運動向量之預測區塊可表示為PC。在一些實例中,PN之每個像素新增至PC中之同一像素(例如,PN之四列及/或行新增至PC)。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以將{1/4,1/8,1/16,1/32}之加權因數用於PN,且將{3/4,7/8,15/16,31/32}之加權因素用於PC。為使較小MC區塊之計算成本較低(例如,其中PU大小等於8×4、4×8,或PU藉由ATMVP模式寫碼),視訊編碼器20及/或視訊解碼器30可經組態以僅將PN之兩列及/或行新增至PC。在此等實例中,視訊編碼器20及/或視訊解碼器30可經組態以為PN應用{1/4,1/8}之加權因數且為PC應用加權因數{3/4,7/8}。對於基於垂直鄰近子 區塊(例如,頂部或底部)之一或多個運動向量產生之每一PN,視訊編碼器20及/或視訊解碼器30可經組態以將PN之同一列中之像素新增至具有同一加權因數之PC。對於基於水平鄰近子區塊(例如,左側或右側)之一或多個運動向量產生之每一PN,視訊編碼器20及/或視訊解碼器30可經組態以將PN之同一行中之像素新增至具有同一加權因數之PC
圖9為說明可實施本發明中所描述之技術之實例視訊編碼器20的方塊圖。視訊編碼器20可執行視訊片段內之視訊區塊之框內及框間寫碼。框內寫碼依賴於空間預測以減少或移除給定視訊圖框或圖像內之視訊的空間冗餘。框間寫碼依賴於時間預測以減小或移除視訊序列之相鄰圖框或圖像內之視訊的時間冗餘。框內模式(I模式)可指代若干基於空間之壓縮模式中之任一者。框間模式(諸如,單向預測(P模式)或雙向預測(B模式))可指若干基於時間之壓縮模式中的任一者。
在圖9之實例中,視訊編碼器20包括視訊資料記憶體33、分割單元35、預測處理單元41、求和器50、變換處理單元52、量化單元54、熵編碼單元56。預測處理單元41包括運動估計單元(MEU)42、運動補償單元(MCU)44及框內預測單元46。對於視訊區塊重建構,視訊編碼器20亦包括反量化單元58、反變換處理單元60、求和器62、濾波器單元64及經解碼圖像緩衝器(DPB)66。圖9之一或多個組件可執行本發明中所描述之一或多個技術。
如圖9中所展示,視訊編碼器20接收視訊資料且將所接收之視訊資料儲存於視訊資料記憶體33中。視訊資料記憶體33可儲存待藉由視訊編碼器20之組件編碼的視訊資料。可(例如)自視訊源18獲得儲存於視訊資料記憶體33中之視訊資料。DPB 66可為儲存用於(例如)在框內或框間寫碼模式中藉由視訊編碼器20編碼視訊資料之參考視訊資料的參考圖像記憶體。視訊資料記憶體33及DPB 66可由諸如動態隨機存 取記憶體(DRAM)之各種記憶體器件中之任一者形成,包括同步DRAM(SDRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其他類型之記憶體器件。視訊資料記憶體33及DPB 66可由同一記憶體器件或單獨記憶體器件提供。在各種實例中,視訊資料記憶體33可與視訊編碼器20之其他組件在晶片上,或相對於彼等組件之晶片外。
分割單元35自視訊資料記憶體33擷取視訊資料且將視訊資料分割成視訊區塊。此分割亦可包括分割成片段、影像塊或其他較大單元,以及(例如)根據LCU及CU之四分樹結構分割之視訊區塊。視訊編碼器20大體上說明編碼待編碼之視訊片段內之視訊區塊的組件。片段可劃分成多個視訊區塊(且可能劃分成被稱作影像塊之視訊區塊集合)。預測處理單元41可基於誤差結果(例如,寫碼速率及失真程度)而為當前視訊區塊選擇複數個可能寫碼模式中之一者(諸如複數個框內寫碼模式中之一者或複數個框間寫碼模式中之一者)。預測處理單元41可將所得之經框內或經框間寫碼區塊提供至求和器50以產生殘餘區塊資料且提供至求和器62以重建構經編碼區塊以用作參考圖像。
預測處理單元46內之框內預測單元41可執行當前視訊區塊相對於與待寫碼之當前區塊在同一圖框或片段中的一或多個相鄰區塊之框內預測性寫碼,以提供空間壓縮。測處理單元41內之運動估計單元42及運動補償單元44執行當前視訊區塊相對於一或多個參考圖像中之一或多個預測性區塊之框間預測性寫碼,以提供時間壓縮。
運動估計單元42可經組態以根據視訊序列之預定圖案來判定用於視訊片段之框間預測模式。預定圖案可將序列中之視訊片段指定為P片段或B片段。運動估計單元42及運動補償單元44可高度整合,但出於概念目的而單獨說明。由運動估計單元42執行之運動估計為產生運動向量之程序,該等運動向量估計視訊區塊之運動。舉例而言,運動向量可指示當前視訊圖框或圖像內之視訊區塊的PU相對於參考圖 像內之預測性區塊的位移。
預測性區塊為依據像素差被發現緊密地匹配於待寫碼之視訊區塊的PU之區塊,該像素差可藉由絕對差和(SAD)、平方差和(SSD)或其他差度量來判定。在一些實例中,視訊編碼器20可計算儲存於DPB 66中之參考圖片的子整數像素位置的值。舉例而言,視訊編碼器20可內插參考圖像之四分之一像素位置、八分之一像素位置或其他分數像素位置的值。因此,運動估計單元42可執行相對於全像素位置及分數像素位置之運動搜尋並輸出具有分數像素精確度之運動向量。
運動估計單元42藉由比較PU之位置與參考圖像之預測性區塊的位置而計算經框間寫碼片段中之視訊區塊的PU的運動向量。參考圖像可選自第一參考圖像清單(清單0)或第二參考圖像清單(清單1),參考圖像清單中之每一者識別儲存於DPB 66中之一或多個參考圖像。運動估計單元42將所計算之運動向量發送至熵編碼單元56及運動補償單元44。
由運動補償單元44執行之運動補償可涉及基於藉由運動估計判定之運動向量提取或產生預測性區塊,可能執行內插達子像素精確度。在接收到當前視訊區塊之PU的運動向量之後,運動補償單元44可在參考圖像清單中之一者中找到運動向量所指向之預測性區塊的位置。視訊編碼器20藉由自正經寫碼之當前視訊區塊的像素值減去預測性區塊之像素值來形成殘餘視訊區塊,從而形成像素差值。像素差值形成用於區塊之殘餘資料,且可包括明度及色度差分量兩者。求和器50表示執行此減法運算之組件或多個組件。運動補償單元44亦可產生與視訊區塊及視訊片段相關聯之語法元素以供視訊解碼器30在解碼視訊片段之視訊區塊時使用。
在預測處理單元41經由框內預測或框間預測產生當前視訊區塊之預測性區塊之後,視訊編碼器20藉由自當前視訊區塊減去預測性區 塊而形成殘餘視訊區塊。殘餘區塊中之殘餘視訊資料可包括於一或多個TU中且應用於轉換處理單元52。轉換處理單元52使用諸如離散餘弦轉換(DCT)或概念上類似之轉換的轉換將殘餘視訊資料轉換為殘餘轉換係數。變換處理單元52可將殘餘視訊資料自像素域轉換至變換域(諸如,頻域)。
轉換處理單元52可將所得轉換係數發送至量化單元54。量化單元54量化變換係數以進一步減小位元速率。量化程序可減少與係數中之一些或全部相關聯的位元深度。可藉由調整量化參數來修正量化之程度。在一些實例中,量化單元54隨後可執行對包括經量化之變換係數之矩陣的掃描。替代地,熵編碼單元56可執行掃描。
在量化之後,熵編碼單元56對經量化變換係數進行熵編碼。舉例而言,熵編碼單元56可執行上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率區間分割熵(PIPE)寫碼或另一熵編碼方法或技術。在由熵編碼單元56進行熵寫碼之後,可將經編碼位元串流傳輸至視訊解碼器30,或加以存檔以供稍後由視訊解碼器30傳輸或擷取。熵編碼單元56亦可熵編碼正經寫碼之當前視訊片段之運動向量及其他語法元素。
反量化單元58及反變換處理單元60分別應用反量化及反變換以重建構像素域中之殘餘區塊,以供稍後用作參考圖像之參考區塊。運動補償單元44可藉由將殘餘區塊添加至參考圖像清單中之一者內的參考圖像中之一者之預測性區塊來計算參考區塊。運動補償單元44亦可對該經重建構的殘餘區塊應用一或多個內插濾波器以計算子整數像素值以用於運動估計。求和器62將重建構殘餘區塊新增至藉由運動補償單元44產生之運動補償預測區塊以產生經重建構區塊。
濾波器單元64對經重建構區塊(例如,求和器62之輸出)進行濾波 且將經濾波之經重建構區塊儲存於DPB 66中用作參考區塊。參考區塊可由運動估計單元42及運動補償單元44用作為參考區塊以對後續視訊圖框或圖像中之區塊進行框間預測。濾波器單元64可應用解區塊濾波、樣本自適應性偏移(SAO)濾波、自適應性環路濾波(ALF)或其他類型之環路濾波中之一或多者。濾波器單元64可將解區塊濾波應用至過濾塊邊界以移經重建構視訊除區塊效應偽影,且可應用其他類型之濾波以改良整體寫碼質量。亦可使用額外迴路濾波器(中循環或後循環)。
視訊編碼器20表示經組態以執行基於子區塊之OBMC、基於子PU之OBMC、基於CU邊界之OBMC或其任何組合的視訊編碼器之實例。
圖10為說明可實施本發明中所描述之技術的實例視訊解碼器30之方塊圖。在圖10之實例中,視訊解碼器30包括視訊資料記憶體78、熵解碼單元80、預測處理單元81、反量化單元86、反變換處理單元88、求和器90及DPB 94。預測處理單元81包括運動補償單元82及框內預測單元84。在一些實例中,視訊解碼器30可執行與關於來自圖9之視訊編碼器20所描述之編碼遍次大體上互逆的解碼遍次。圖10之一或多個組件可執行本發明中所描述之一或多個技術。
在解碼程序期間,視訊解碼器30自視訊編碼器20接收表示經編碼視訊片段之視訊區塊及相關聯之語法元素的經編碼視訊位元串流。視訊解碼器30將所接收之經編碼視訊位元串流儲存於視訊資料記憶體78中。視訊資料記憶體78可儲存待由視訊解碼器30之組件解碼之視訊資料(諸如,經編碼視訊位元串流)。儲存於視訊資料記憶體78中之視訊資料可(例如)經由連結16自儲存器件26或自本端視訊源(諸如攝影機)或藉由存取實體資料儲存媒體而獲得。視訊資料記憶體78可形成儲存來自經編碼視訊位元串流之經編碼視訊資料的經寫碼圖像緩衝器 (CPB)。DPB 94可為儲存用於(例如)在框內框間寫碼模式中藉由視訊解碼器30解碼視訊資料之參考視訊資料的參考圖像記憶體。視訊資料記憶體78及DPB 94可由各種記憶體器件中之任一者形成,該等記憶體器件諸如DRAM、SDRAM、MRAM、RRAM或其他類型之記憶體器件。視訊資料記憶體78及DPB 94可由同一記憶體器件或單獨記憶體器件提供。在各種實例中,視訊資料記憶體78可與視訊解碼器30之其他組件在晶片上,或相對於彼等組件之晶片外。
視訊解碼器30之熵解碼單元80熵解碼儲存於視訊資料記憶體78中之視訊資料以產生經量化係數、運動向量及其他語法元素。熵解碼單元80將運動向量及其他語法元素轉送預測處理單元81。視訊解碼器30可接收視訊片段層級及/或視訊區塊層級處之語法元素。
當視訊片段經寫碼為經框內寫碼(I)片段時,預測處理單元81之框內預測處理單元84可基於來自當前圖框或圖像之先前經解碼區塊的經傳信框內預測模式及資料來產生用於當前視訊片段之視訊區塊的預測資料。當視訊圖框經寫碼為經框間寫碼(亦即,B或P)片段時,預測處理單元81之運動補償單元82基於自熵解碼單元80接收之運動向量及其他語法元素產生當前視訊片段之視訊區塊的預測性區塊。預測性區塊可自參考圖像清單中之一者內的參考圖像中之一者產生。視訊解碼器30可基於儲存於DPB 94中之參考圖像使用預設建構技術來建構參考圖框清單,清單0及清單1。
運動補償單元82藉由剖析運動向量及其他語法元素來判定當前視訊片段視訊區塊視訊區塊的預測資訊,且使用預測資訊來產生正在經解碼之當前視訊區塊的預測性區塊。舉例而言,運動補償單元82使用所接收語法元素中之一些以判定用以寫碼視訊片段之視頻區塊的預測模式(例如,框內或框間預測)、框間預測片段類型(例如,B片段或P片段)、用於該片段之參考圖像清單中之一或多者的建構資訊、用於 該片段之每一經框間編碼視訊區塊的運動向量、用於該片段之每一經框間寫碼視訊區塊的框間預測狀態及用以解碼當前視訊片段中之視頻區塊的其他資訊。
運動補償單元82亦可執行基於內插濾波器之內插。運動補償單元82可使用如由視訊編碼器20在視訊區塊之編碼期間所使用的內插濾波器,以計算參考區塊之次整數像素的內插值。在此狀況下,運動補償單元82可自所接收語法元素判定由視訊編碼器20所使用之內插濾波器,並使用該等內插濾波器以產生預測性區塊。
反量化單元86反量化(亦即,解量化)位元串流中所提供並由熵解碼單元80解碼之經量化轉換係數。反量化程序可包括使用由視訊編碼器20所計算的視訊片段中之每一視訊區塊的量化參數,以判定量化程度及(同樣地)應應用之反量化程度。反變換處理單元88對變換係數應用反變換(例如,反DCT、反整數變換或概念上類似之反變換程序),以便產生像素域中之殘餘區塊。
在預測處理單元使用(例如)框內或框間預測產生當前視訊區塊之預測性區塊之後,視訊解碼器30藉由對來自反變換處理單元88之殘餘區塊與由運動補償單元82產生之對應預測性區塊進行求和而形成經重建構視訊區塊。求和器90表示執行此求和運算之一或多個組件。濾波器單元92使用(例如)解區塊濾波、SAO濾波、ALF濾波或其他類型之濾波中之一或多者對經重建構視訊區塊進行濾波。其他迴路濾波器(在寫碼迴路中或在寫碼迴路之後)亦可用於使像素轉變平滑,或另外改良視訊質量。給定圖框或圖像中之經解碼視訊區塊隨後儲存於DPB94中,該DPB儲存用於後續運動補償之參考圖像。DPB 94可為額外記憶體的部分或與其分離,該額外記憶體儲存用於稍後呈現於顯示器件(諸如圖1之顯示器件32)上之經解碼視訊。
視訊解碼器30表示經組態以執行基於子區塊之OBMC、基於子 PU之OBMC、基於CU邊界之OBMC或其任何組合的視訊解碼器之實例。舉例而言,視訊解碼器30可經組態以接收視訊資料之第一區塊,在此實例中,該第一區塊為預測單元之子區塊。視訊解碼器30可經組態以接收鄰近視訊資料之第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者之至少一個運動向量;及至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之至少一個運動向量,使用重疊區塊運動補償解碼視訊資料之第一區塊。
圖11為說明符合本發明之技術之用於解碼視訊資料之實例程序的流程圖。出於說明之目的,通常將圖11之程序描述為由視訊解碼器30執行,但多種其他處理器亦可執行圖11中所展示之程序。在一些實例中,視訊資料記憶體78、熵解碼單元80及/或預測處理單元81可執行圖11中所展示之一或多個程序。
在圖11之實例中,視訊解碼器30可經組態以接收視訊資料之第一區塊(200)。在一些實例中,視訊資料之第一區塊為預測單元之子區塊。在一些實例中,視訊資料之第一區塊為正方形子區塊或預測單元之非正方形子區塊。
視訊解碼器30可經組態以接收鄰近視訊資料之第一區塊的視訊資料之一或多個區塊(202)。在一些實例中,鄰近視訊之第一區塊的視訊資料之一或多個區塊為正方形子區塊、非正方形子區塊或至少一個正方形子區塊與至少一個非正方形子區塊之組合。
視訊解碼器30可經組態以判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊(204)。在一些實例中,視訊解碼器30可經組態以藉由解碼鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一個區塊而判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的至少一個運動向量。 視訊解碼器30可經組態以至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之運動資訊,使用重疊區塊運動補償解碼視訊資料之第一區塊(206)。
在一些實例中,視訊解碼器30可經組態以判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者是否未經解碼。在此等實例中,視訊解碼器30可經組態以在不使用對應於經判定未經解碼之一或多個區塊之至少一個區塊的運動資訊之情況下解碼視訊資料之第一區塊。
在一些實例中,視訊解碼器30可經組態以產生視訊資料之第一區塊之第一預測區塊。第一預測區塊可包括視訊資料之第一區塊之每一像素位置的值。視訊解碼器30可經組態以產生鄰近視訊之第一區塊的視訊資料之一或多個區塊中之至少一者的鄰近預測區塊。鄰近預測區塊可包括鄰近視訊之第一區塊的視訊資料之一或多個區塊中之至少一者的每一像素位置之值。視訊解碼器30可經組態以基於鄰近預測區塊之一或多個值修正第一預測區塊之一或多個值,從而產生經修正之第一預測區塊。視訊解碼器30可經組態以使用經修正之第一預測區塊解碼視訊資料之第一區塊。
在一些實例中,視訊解碼器30可經組態以將第一加權值指派至第一預測區塊之一或多個值。視訊解碼器30可經組態以將第二加權值指派至鄰近預測區塊之一或多個值。視訊解碼器30可經組態以基於第一加權值及第二加權值修正第一預測區塊之一或多個值,從而產生第一預測區塊。
在一些實例中,視訊解碼器30可經組態以產生視訊資料之第一區塊之第一預測區塊。第一預測區塊可包括視訊資料之第一區塊之每一像素位置的值。視訊解碼器30可經組態以基於視訊資料之第一區塊之大小將一或多個加權值指派至第一預測區塊之一或多個值。視訊解 碼器30可經組態以使用經指派至第一預測區塊之一或多個值之一或多個加權值解碼視訊資料之第一區塊。在此等實例中,視訊解碼器30可經組態以基於鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者之運動資訊產生第一鄰近預測區塊。視訊解碼器30可經組態以基於第一鄰近區塊之大小將一或多個加權值指派至第一鄰近預測區塊之一或多個值。視訊解碼器30可經組態以使用經指派至第一鄰近預測區塊之一或多個值之一或多個加權值解碼視訊資料之第一區塊。
在一些實例中,視訊解碼器30可經組態以基於經指派至第一鄰近預測區塊之一或多個值之一或多個加權值修正第一預測區塊之一或多個值,以產生經修正之第一預測區塊,及使用經修正之第一預測區塊解碼視訊資料之第一區塊。在一些實例中,視訊解碼器30可經組態以基於鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊產生第二鄰近預測區塊。在此等實例中,視訊解碼器30可經組態以基於第二鄰近區塊之大小將一或多個加權值指派第二鄰近預測區塊之一或多個值。視訊解碼器30可經組態以基於經指派至第一及第二鄰近預測區塊之一或多個值之一或多個加權值修正第一及預測區塊一或多個值,以產生經修正之第一預測區塊。
在一些實例中,視訊解碼器30可經組態以接收具有表示視訊資料之第一區塊是否根據重疊區塊運動補償模式編碼之值的語法元素。舉例而言,語法元素可接收於由視訊編碼器(例如,視訊編碼器20)產生之位元串流中。視訊解碼器30可經組態以基於語法元素之值判定視訊資料之第一區塊根據重疊區塊運動補償模式來編碼。
圖12為說明符合本發明之技術之用於編碼視訊資料之實例程序的流程圖。出於說明之目的,通常將圖12之程序描述為由視訊寫碼器執行,但多種其他處理器亦可執行圖12中所示之程序。如本文所使用,視訊寫碼器可指視訊編碼器及/或視訊解碼器(例如,視訊編碼器 20及/或視訊解碼器30)。在一些實例中,視訊資料記憶體33、分割單元35、預測處理單元41及/或熵編碼單元56可執行圖12中所展示之一或多個程序。在一些實例中,視訊資料記憶體78、熵解碼單元80及/或預測處理單元81可執行圖12中所展示之一或多個程序。
在圖12之實例中,視訊寫碼器可經組態以將視訊資料之第一區塊儲存於記憶體中(220)。在一些實例中,鄰近視訊之第一區塊的視訊資料之一或多個區塊為正方形子區塊、非正方形子區塊或至少一個正方形子區塊與至少一個非正方形子區塊之組合。
視訊寫碼器可經組態以儲存鄰近記憶體中之視訊資料之第一區塊的視訊資料之一或多個區塊(222)。在一些實例中,鄰近視訊之第一區塊的視訊資料之一或多個區塊為正方形子區塊、非正方形子區塊或至少一個正方形子區塊與至少一個非正方形子區塊之組合。
視訊寫碼器可經組態以判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊(224)。在一些實例中,視訊寫碼器可經組態以藉由寫碼鄰近視訊資料之第一區塊的視訊資料之一或多個區塊之至少一個區塊而判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的至少一個運動向量。在一些實例中,視訊寫碼器可經組態以至少部分地基於鄰近視訊資料之第一區塊的一或多個區塊中之至少一者之運動資訊,使用重疊區塊運動補償寫碼視訊資料之第一區塊(226)。
在一些實例中,視訊寫碼器可經組態以判定鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者是未否經寫碼。在此等實例中,視訊寫碼器可經組態以在不使用對應於經判定未經寫碼之一或多個區塊之至少一個區塊的運動資訊的情況下寫碼視訊資料之第一區塊。
在一些實例中,視訊寫碼器可經組態以產生視訊資料之第一區 塊之第一預測區塊。第一預測區塊可包括視訊資料之第一區塊之每一像素位置的值。視訊寫碼器可經組態以產生鄰近視訊之第一區塊的視訊資料之一或多個區塊中之至少一者的鄰近預測區塊。鄰近預測區塊可包括鄰近視訊之第一區塊的視訊資料之一或多個區塊中之至少一者的每一像素位置之值。視訊寫碼器可經組態以基於鄰近預測區塊之一或多個值修正第一預測區塊之一或多個值,從而產生經修正之第一預測區塊。視訊寫碼器可經組態以使用經修正之第一預測區塊寫碼視訊資料之第一區塊。
在一些實例中,視訊寫碼器可經組態以將第一加權值指派至第一預測區塊之一或多個值。視訊寫碼器可經組態以將第二加權值指派至鄰近預測區塊之一或多個值。視訊寫碼器可經組態以基於第一加權值及第二加權值修正第一預測區塊之一或多個值,從而產生第一預測區塊。
在一些實例中,視訊寫碼器可經組態以產生視訊資料之第一區塊之第一預測區塊。第一預測區塊可包括視訊資料之第一區塊之每一像素位置的值。視訊寫碼器可經組態以基於視訊資料之第一區塊之大小將一或多個加權值指派至第一預測區塊之一或多個值。視訊寫碼器可經組態以使用經指派至第一預測區塊之一或多個值之一或多個加權值寫碼視訊資料之第一區塊。在此等實例中,視訊寫碼器可經組態以基於鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊產生第一鄰近預測區塊。視訊寫碼器可經組態以基於第一鄰近區塊之大小將一或多個加權值指派至第一鄰近預測區塊之一或多個值。視訊寫碼器可經組態以使用經指派至第一鄰近預測區塊之一或多個值之一或多個加權值寫碼視訊資料之第一區塊。
在一些實例中,視訊寫碼器可經組態以基於經指派至第一鄰近預測區塊之一或多個值之一或多個加權值修正第一預測區塊之一或多 個值,以產生經修正之第一預測區塊,及使用經修正之第一預測區塊寫碼視訊資料之第一區塊。在一些實例中,視訊寫碼器可經組態以基於鄰近視訊資料之第一區塊的視訊資料之一或多個區塊中之至少一者的運動資訊產生第二鄰近預測區塊。在此等實例中,視訊寫碼器可經組態以基於第二鄰近區塊之大小將一或多個加權值指派第二鄰近預測區塊之一或多個值。視訊寫碼器可經組態以基於經指派至第一及第二鄰近預測區塊之一或多個值之一或多個加權值修正第一及預測區塊一或多個值,以產生經修正之第一預測區塊。
在一些實例中,視訊寫碼器可經組態以接收具有表示視訊資料之第一區塊是否根據重疊區塊運動補償模式編碼之值的語法元素。舉例而言,語法元素可接收於由視訊編碼器(例如,視訊編碼器20)產生之位元串流中。視訊寫碼器可經組態以基於語法元素之值判定視訊資料之第一區塊根據重疊區塊運動補償模式來編碼。
在一些實例中,視訊寫碼器可經組態以產生具有表示視訊資料之第一區塊是否根據重疊區塊運動補償模式編碼之值的語法元素。在此等實例中,視訊寫碼器可經組態以傳輸位元串流中之語法元素,該語法元素可由視訊解碼器(例如,視訊解碼器30)接收。
應理解,本文所描述之所有技術可單獨地或以組合方式使用。舉例而言,視訊編碼器20及/或其一或多個組件及視訊解碼器30及/或其一或多個組件可以任何組合執行本發明中所描述之技術。作為另一實例,本文中所描述之技術可藉由視訊編碼器20(圖1及圖9)及/或視訊解碼器30(圖1及圖10),該等兩者可大體上被稱作視訊寫碼器。同樣,視訊寫碼在可適用時可指視訊編碼或視訊解碼。
應認識到,取決於實例,本文中所描述之技術中之任一者的某些動作或事件可以不同序列執行,可新增、合併或完全省略該等動作或事件(例如,並非所有所描述動作或事件對於該等技術之實踐皆係 必要的)。此外,在某些實例中,動作或事件可(例如)經由多線緒處理、中斷處理或多個處理器同時而非依序地執行。另外,儘管出於清晰之目的,本發明之某些態樣被描述為由單一模組或單元執行,但應理解,本發明之技術可藉由與視訊寫碼器相關聯之單元或模組之組合來執行。
出於說明之目的,已關於一或多個視訊寫碼標準描述本發明之某些態樣(經釋放、開發中,抑或其類似者)。然而,本發明中所描述之技術可適用於其他視訊寫碼過程,包括尚未開發之其他標準或專屬視訊寫碼過程。
根據本發明,術語「或」可解譯為「及/或」,其中上下文並不以其他方式指示。另外,雖然諸如「一或多個」或「至少一」或其類似者之片語可被用於本文中(但並非為其他者)所揭示之一些特徵;並未使用此語言之特徵可解釋為具有暗示上下文並不以其他方式指示的此含義。
儘管在上文描述技術的各種態樣之特定組合,但提供此等組合僅為了說明本發明中所描述的技術之實例。因此,本發明之技術不應限於此等實例組合且可涵蓋本發明中描述之技術的各種態樣之任何可設想組合。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何組合來實施。若以軟體實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體傳輸,且由基於硬體之處理單元執行。電腦可讀媒體可包括對應於有形媒體(諸如資料儲存媒體)之電腦可讀儲存媒體,或包括促進將電腦程式自一處傳送至另一處(例如,根據一通信協定)的任何媒體的通信媒體。以此方式,電腦可讀媒體通常可對應於(1)非暫時性的有形電腦可讀儲存媒體,或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或 多個電腦或一或多個處理器存取以擷取指令、程式碼及/或資料結構以用於實施本發明中所描述之技術的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
借助於實例而非限制,此等電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存器件、快閃記憶體或可用以儲存呈指令或資料結構之形式之所要的程式碼且可由電腦存取的任何其他媒體。又,將任何連接適當地稱為電腦可讀媒體。舉例而言,若使用同軸纜線、光纜、雙絞線、數位用戶線(DSL)或無線技術(諸如紅外線、無線電及微波)自網站、伺服器或其他遠端源傳輸指令,則同軸纜線、光纜、雙絞線、DSL或無線技術(諸如紅外線、無線電及微波)包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他暫時性媒體,而取而代之,係有關非暫時性之有形儲存媒體。如本文所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位多功能光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟用雷射以光學方式再生資料。以上各者的組合亦應包括於電腦可讀媒體之範疇內。
指令可由一或多個處理器執行,該一或多個處理器諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)或其他等效的整合或離散邏輯電路。因此,如本文中所使用之術語「處理器」可指上述結構或適用於實施本文中所描述之技術之任何其他結構中的任一者。另外,在一些態樣中,可在經組態用於編碼及解碼之專用硬體及/或軟體模組內提供本文中所描述之功能性,或將本文中所描述之功能性併入於組合式編碼解碼器中。再者,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可以多種器件或裝置實施,該等器件或裝置包括無線手機、積體電路(IC)或IC集合(例如,晶片集)。在本發明中描述各種組件、模組或單元以強調經組態以執行所揭示技術之器件的功能性態樣,但未必需要藉由不同硬體單元來實現。實情為,如上所述,各種單元可組合於編碼解碼器硬體單元中,或結合合適軟體及/或韌體藉由互操作性硬體單元(包括如上所述之一或多個處理器)之集合來提供。
各種實例已於本文中予以描述。涵蓋所描述之系統、操作、功能或實例之任何組合。此等及其他實例係在以下申請專利範圍之範疇內。
200‧‧‧區塊
202‧‧‧區塊
204‧‧‧區塊
206‧‧‧區塊

Claims (30)

  1. 一種解碼視訊資料之方法,該方法包含:接收視訊資料之一第一區塊,其中視訊資料之該第一區塊為一預測單元之一子區塊;接收鄰近視訊資料之該第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之該第一區塊的該一或多個區塊中之該至少一者的該運動資訊,使用重疊區塊運動補償解碼視訊資料之該第一區塊。
  2. 如請求項1之方法,其進一步包含:判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者是否未經解碼;及在不使用對應於經判定未經解碼之該一或多個區塊之該至少一個區塊的運動資訊之情況下解碼視訊資料之該第一區塊。
  3. 如請求項1之方法,其進一步包含:藉由解碼鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之該至少一個區塊而判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之該至少一者的該運動資訊。
  4. 如請求項1之方法,其進一步包含:產生用於視訊資料之該第一區塊之一第一預測區塊,其中該第一預測區塊包括視訊資料之該第一區塊之每一像素位置的一值;基於視訊資料之該第一區塊之一大小將一或多個加權值指派 至該第一預測區塊之一或多個值;及使用經指派至該第一預測區塊之該一或多個值之該一或多個加權值解碼視訊資料之該第一區塊。
  5. 如請求項4之方法,其進一步包含:基於鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊產生一第一鄰近預測區塊;基於該第一鄰近區塊之一大小將一或多個加權值指派至該第一鄰近預測區塊之一或多個值;及使用經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值解碼視訊資料之該第一區塊。
  6. 如請求項5之方法,其進一步包含:基於經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一預測區塊之一或多個值,以產生一經修正之第一預測區塊;及使用該經修正之第一預測區塊解碼視訊資料之該第一區塊。
  7. 如請求項5之方法,其進一步包含:基於鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊產生一第二鄰近預測區塊;基於該第二鄰近區塊之一大小將一或多個加權值指派至該第二鄰近預測區塊之一或多個值;及基於經指派至該第一及第二鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一及預測區塊之一或多個值,以產生該經修正之第一預測區塊。
  8. 如請求項1之方法,其進一步包含:接收具有表示視訊資料之該第一區塊是否係根據一重疊區塊運動補償模式來編碼之一值的一語法元素;及 基於該語法元素之該值判定視訊資料之該第一區塊係根據該重疊區塊運動補償模式來編碼。
  9. 一種用於寫碼視訊資料之器件,該器件包含:一記憶體,其經組態以儲存該視訊資料;及一視訊寫碼器,其與該記憶體通信,其中該視訊寫碼器經組態以:儲存該記憶體中之視訊資料之一第一區塊,其中視訊資料之該第一區塊為一預測單元之一子區塊;儲存鄰近記憶體中之視訊資料之該第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之該第一區塊的該一或多個區塊中之該至少一者的該運動資訊,使用重疊區塊運動補償寫碼視訊資料之該第一區塊。
  10. 如請求項9之器件,其中該視訊寫碼器經進一步組態以進行以下操作:判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者是否未經寫碼;及在不使用對應於經判定未經寫碼之該一或多個區塊之該至少一個區塊的運動資訊之情況下寫碼視訊資料之該第一區塊。
  11. 如請求項9之器件,其中該視訊寫碼器經進一步組態以進行以下操作:藉由寫碼鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊之該至少一個區塊而判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊。
  12. 如請求項9之器件,其中該視訊寫碼器經進一步組態以進行以下操作:產生用於視訊資料之該第一區塊之一第一預測區塊,其中該第一預測區塊包括視訊資料之該第一區塊之每一像素位置的一值;基於視訊資料之該第一區塊之一大小將一或多個加權值指派至該第一預測區塊之一或多個值;及使用經指派至該第一預測區塊之該一或多個值之該一或多個加權值解碼視訊資料之該第一區塊。
  13. 如請求項12之器件,其中該視訊寫碼器經進一步組態以進行以下操作:基於鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊產生一第一鄰近預測區塊;基於該第一鄰近區塊之一大小將一或多個加權值指配至該第一鄰近預測區塊之一或多個值;及使用經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值寫碼視訊資料之該第一區塊。
  14. 如請求項13之器件,其中該視訊寫碼器經進一步組態以進行以下操作:基於經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一預測區塊之一或多個值,以產生一經修正之第一預測區塊;及使用該經修正之第一預測區塊解碼視訊資料之該第一區塊。
  15. 如請求項13之器件,其中該視訊寫碼器經進一步組態以進行以下操作:基於鄰近視訊之該第一區塊的視訊資料之該一或多個區塊中 之至少一者的該運動資訊產生一第二鄰近預測區塊;基於該第二鄰近區塊之一大小將一或多個加權值指派至該第二鄰近預測區塊之一或多個值;及基於經指派至該第一及第二鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一及預測區塊之一或多個值,以產生該經修正之第一預測區塊。
  16. 如請求項9之器件,其中該視訊寫碼器經進一步組態以進行以下操作:接收具有表示視訊資料之該第一區塊是否係根據一重疊區塊運動補償模式來寫碼之一值的一語法元素;及基於該語法元素之該值判定視訊資料之該第一區塊係根據該重疊區塊運動補償模式來寫碼。
  17. 一種用於寫碼視訊資料之裝置,該裝置包含:用於接收視訊資料之一第一區塊之構件,其中視訊資料之該第一區塊為一預測單元之一子區塊;用於接收鄰近視訊資料之該第一區塊的視訊資料之一或多個區塊之構件;用於判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的運動資訊之構件;及用於至少部分地基於鄰近視訊資料之該第一區塊的該一或多個區塊中之該至少一者的該運動資訊,使用重疊區塊運動補償寫碼視訊資料之該第一區塊之構件。
  18. 如請求項17之裝置,其進一步包含:用於判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者是否未經寫碼之構件;及用於在不使用對應於經判定未經寫碼之該一或多個區塊之該 至少一個區塊的運動資訊之情況下寫碼視訊資料之該第一區塊之構件。
  19. 如請求項17之裝置,其進一步包含:用於藉由寫碼鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊之該至少一個區塊而判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊之構件。
  20. 如請求項17之裝置,其進一步包含:用於產生用於視訊資料之該第一區塊之一第一預測區塊,其中該第一預測區塊包括視訊資料之該第一區塊之每一像素位置的一值之構件;用於基於視訊資料之該第一區塊之一大小將一或多個加權值指派至該第一預測區塊之一或多個值之構件;及用於使用經指派至該第一預測區塊之該一或多個值之該一或多個加權值解碼視訊資料之該第一區塊之構件。
  21. 如請求項20之裝置,其進一步包含:用於基於鄰近視訊之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊產生一第一鄰近預測區塊之構件;用於基於該第一鄰近區塊之一大小將一或多個加權值指派至該第一鄰近預測區塊之一或多個值之構件;及用於使用經指派至該第一預測區塊之該一或多個值之該一或多個加權值寫碼視訊資料之該第一區塊之構件。
  22. 如請求項22之裝置,其進一步包含:用於基於經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一預測區塊之一或多個值,以產生一 經修正之第一預測區塊之構件;及用於使用該經修正之第一預測區塊寫碼視訊資料之該第一區塊之構件。
  23. 如請求項17之裝置,其進一步包含:用於接收具有表示視訊資料之該第一區塊是否係根據一重疊區塊運動補償模式來寫碼之一值的一語法元素之構件;及用於基於該語法元素之該值判定視訊資料之該第一區塊係根據該重疊區塊運動補償模式來寫碼之構件。
  24. 一種儲存有指令之非暫時性電腦可讀儲存媒體,該等指令在被執行時使得一或多個處理器進行如下操作:儲存視訊資料之一第一區塊於一記憶體中,其中視訊資料之該第一區塊為一預測單元之一子區塊;儲存鄰近該記憶體中之視訊資料之該第一區塊的視訊資料之一或多個區塊;判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的運動資訊;及至少部分地基於鄰近視訊資料之該第一區塊的該一或多個區塊中之該至少一者的該運動資訊,使用重疊區塊運動補償寫碼視訊資料之該第一區塊。
  25. 如請求項24之非暫時性電腦可讀儲存媒體,其中儲存於其上之該等指令在被執行時使得該一或多個處理器進行如下操作:判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者是否未經寫碼;及在不使用對應於經判定未經寫碼之該一或多個區塊之該至少一個區塊的運動資訊之情況下寫碼視訊資料之該第一區塊。
  26. 如請求項24之非暫時性電腦可讀儲存媒體,其中儲存於其上之 該等指令在被執行時使得該一或多個處理器進行如下操作:藉由寫碼鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊之該至少一個區塊而判定鄰近視訊資料之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊。
  27. 如請求項24之非暫時性電腦可讀儲存媒體,其中儲存於其上之該等指令在被執行時使得該一或多個處理器進行如下操作:產生用於視訊資料之該第一區塊之一第一預測區塊,其中該第一預測區塊包括視訊資料之該第一區塊之每一像素位置的一值;基於視訊資料之該第一區塊之一大小將一或多個加權值指派至該第一預測區塊之一或多個值;及使用經指派至該第一預測區塊之該一或多個值之該一或多個加權值寫碼視訊資料之該第一區塊。
  28. 如請求項27之非暫時性電腦可讀儲存媒體,其中儲存於其上之該等指令在被執行時使得該一或多個處理器進行如下操作:基於鄰近視訊之該第一區塊的視訊資料之該一或多個區塊中之至少一者的該運動資訊產生一第一鄰近預測區塊;基於該第一鄰近區塊之一大小將一或多個加權值指配至該第一鄰近預測區塊之一或多個值;及使用經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值寫碼視訊資料之該第一區塊。
  29. 如請求項28之非暫時性電腦可讀儲存媒體,其中儲存於其上之該等指令在被執行時使得該一或多個處理器進行如下操作:基於經指派至該第一鄰近預測區塊之該一或多個值之該一或多個加權值修正該第一預測區塊之一或多個值,以產生一經修正之第一預測區塊;及 使用該經修正之第一預測區塊解碼視訊資料之該第一區塊。
  30. 如請求項24之非暫時性電腦可讀儲存媒體,其中儲存於其上之該等指令在被執行時使得該一或多個處理器進行如下操作:接收具有表示視訊資料之該第一區塊是否係根據一重疊區塊運動補償模式寫碼之一值的一語法元素;及基於該語法元素之該值判定視訊資料之該第一區塊係根據該重疊區塊運動補償模式寫碼。
TW105102384A 2015-01-26 2016-01-26 用於視訊寫碼之重疊運動補償 TWI688262B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201562107964P 2015-01-26 2015-01-26
US62/107,964 2015-01-26
US201562116631P 2015-02-16 2015-02-16
US62/116,631 2015-02-16
US15/005,934 US10230980B2 (en) 2015-01-26 2016-01-25 Overlapped motion compensation for video coding
US15/005,934 2016-01-25

Publications (2)

Publication Number Publication Date
TW201640894A true TW201640894A (zh) 2016-11-16
TWI688262B TWI688262B (zh) 2020-03-11

Family

ID=56433570

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105102384A TWI688262B (zh) 2015-01-26 2016-01-26 用於視訊寫碼之重疊運動補償

Country Status (9)

Country Link
US (2) US10230980B2 (zh)
EP (2) EP3251363A1 (zh)
JP (2) JP6720191B2 (zh)
KR (2) KR20170108012A (zh)
CN (2) CN111355963A (zh)
BR (1) BR112017015533A2 (zh)
CA (1) CA2971633C (zh)
TW (1) TWI688262B (zh)
WO (1) WO2016123068A1 (zh)

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3078196B1 (en) * 2013-12-06 2023-04-05 MediaTek Inc. Method and apparatus for motion boundary processing
FR3029055B1 (fr) * 2014-11-24 2017-01-13 Ateme Procede d'encodage d'image et equipement pour la mise en oeuvre du procede
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
US10230980B2 (en) 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding
WO2016204479A1 (ko) * 2015-06-16 2016-12-22 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
US10939099B2 (en) * 2016-04-22 2021-03-02 Lg Electronics Inc. Inter prediction mode-based image processing method and device therefor
KR102587638B1 (ko) 2016-06-09 2023-10-10 인텔 코포레이션 비디오 코딩을 위해 이웃 블록 패턴을 이용하는 모션 추정 방법 및 시스템
CN116708784A (zh) * 2016-07-12 2023-09-05 韩国电子通信研究院 图像编码/解码方法以及用于该方法的记录介质
US20210136400A1 (en) * 2016-11-29 2021-05-06 Mediatek Inc. Method and apparatus of merge mode derivation for video coding
TW201902223A (zh) * 2017-03-24 2019-01-01 聯發科技股份有限公司 視頻編碼中重疊分塊運動補償的雙向光流的方法和裝置
WO2018199468A1 (ko) * 2017-04-24 2018-11-01 에스케이텔레콤 주식회사 움직임 보상을 위한 옵티컬 플로우 추정 방법 및 장치
US11184636B2 (en) * 2017-06-28 2021-11-23 Sharp Kabushiki Kaisha Video encoding device and video decoding device
JP6936641B2 (ja) * 2017-07-05 2021-09-22 キヤノン株式会社 画像処理装置、画像処理方法
JP6854716B2 (ja) 2017-07-05 2021-04-07 キヤノン株式会社 画像処理装置、画像処理方法
WO2019045398A1 (ko) * 2017-08-28 2019-03-07 삼성전자 주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20190024764A (ko) * 2017-08-29 2019-03-08 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019065329A1 (ja) * 2017-09-27 2019-04-04 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、及び復号方法
WO2019067879A1 (en) * 2017-09-28 2019-04-04 Vid Scale, Inc. REDUCTION OF COMPLEXITY COMPENSATION OF BLOCK MOVEMENT OF OVERLAPPING BLOCKS
KR102427789B1 (ko) 2017-10-10 2022-08-02 한국전자통신연구원 인터 예측 정보를 사용하는 방법 및 장치
WO2019074273A1 (ko) * 2017-10-10 2019-04-18 한국전자통신연구원 인터 예측 정보를 사용하는 방법 및 장치
EP3704857A1 (en) * 2017-11-01 2020-09-09 VID SCALE, Inc. Overlapped block motion compensation
WO2019093523A1 (ja) * 2017-11-13 2019-05-16 シャープ株式会社 動画像符号化装置および動画像復号装置
WO2019124193A1 (ja) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019124191A1 (ja) * 2017-12-18 2019-06-27 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
WO2019137735A1 (en) * 2018-01-15 2019-07-18 Telefonaktiebolaget Lm Ericsson (Publ) Restricted overlapped block motion compensation
WO2019147403A1 (en) 2018-01-29 2019-08-01 Interdigital Vc Holdings, Inc. Encoding and decoding with refinement of the reconstructed picture
KR20200123787A (ko) 2018-02-26 2020-10-30 인터디지털 브이씨 홀딩스 인코포레이티드 일반화된 obmc를 위한 방법 및 장치
WO2019194458A1 (ko) * 2018-04-01 2019-10-10 엘지전자 주식회사 Obmc를 이용한 영상 코딩 방법 및 그 장치
WO2019204234A1 (en) * 2018-04-15 2019-10-24 Arris Enterprises Llc Unequal weight planar motion vector derivation
WO2019201203A1 (en) * 2018-04-16 2019-10-24 Mediatek Inc. Methods and apparatuses of video processing with overlapped block motion compensation in video coding systems
WO2019221512A1 (ko) * 2018-05-16 2019-11-21 엘지전자 주식회사 Obmc에 기반한 영상 코딩 방법 및 그 장치
WO2019227297A1 (zh) * 2018-05-28 2019-12-05 华为技术有限公司 一种视频图像的帧间预测方法、装置及编解码器
TWI728390B (zh) 2018-06-29 2021-05-21 大陸商北京字節跳動網絡技術有限公司 查找表尺寸
KR102646649B1 (ko) 2018-06-29 2024-03-13 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut에서의 모션 후보들의 검사 순서
JP7460617B2 (ja) 2018-06-29 2024-04-02 北京字節跳動網絡技術有限公司 Lut更新条件
SG11202011714RA (en) 2018-06-29 2020-12-30 Beijing Bytedance Network Technology Co Ltd Partial/full pruning when adding a hmvp candidate to merge/amvp
CN114845108A (zh) 2018-06-29 2022-08-02 抖音视界(北京)有限公司 查找表的更新:fifo、约束的fifo
TWI724442B (zh) 2018-06-29 2021-04-11 大陸商北京字節跳動網絡技術有限公司 用於查找表更新的編碼的運動信息的選擇
SG11202013028PA (en) 2018-06-29 2021-01-28 Beijing Bytedance Network Technology Co Ltd Interaction between lut and amvp
TWI705696B (zh) * 2018-07-01 2020-09-21 大陸商北京字節跳動網絡技術有限公司 交織預測的改善
TWI731364B (zh) 2018-07-02 2021-06-21 大陸商北京字節跳動網絡技術有限公司 Hmvp+非相鄰運動
US11051036B2 (en) * 2018-07-14 2021-06-29 Mediatek Inc. Method and apparatus of constrained overlapped block motion compensation in video coding
WO2020016858A1 (en) * 2018-07-20 2020-01-23 Beijing Bytedance Network Technology Co., Ltd. Motion prediction based on updated motion vectors
US11336914B2 (en) * 2018-08-16 2022-05-17 Qualcomm Incorporated History-based candidate list with classification
WO2020035029A1 (en) * 2018-08-17 2020-02-20 Mediatek Inc. Method and apparatus of simplified sub-mode for video coding
TWI822838B (zh) * 2018-08-24 2023-11-21 大陸商北京字節跳動網絡技術有限公司 使用空間鄰居的重疊塊運動補償
CN110876057B (zh) * 2018-08-29 2023-04-18 华为技术有限公司 一种帧间预测的方法及装置
CN111064959B (zh) 2018-09-12 2023-09-01 北京字节跳动网络技术有限公司 要检查多少个hmvp候选
US11277628B2 (en) * 2018-09-24 2022-03-15 Qualcomm Incorporated Restrictions for the worst-case bandwidth reduction in video coding
WO2020084476A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Sub-block based prediction
WO2020084554A1 (en) 2018-10-24 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Searching based motion candidate derivation for sub-block motion vector prediction
WO2020089822A1 (en) 2018-10-31 2020-05-07 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation with derived motion information from neighbors
WO2020098643A1 (en) 2018-11-12 2020-05-22 Beijing Bytedance Network Technology Co., Ltd. Simplification of combined inter-intra prediction
CN111200735B (zh) * 2018-11-19 2023-03-17 华为技术有限公司 一种帧间预测的方法及装置
CN113170171B (zh) 2018-11-20 2024-04-12 北京字节跳动网络技术有限公司 组合帧间帧内预测模式的预测细化
EP3861742A4 (en) 2018-11-20 2022-04-13 Beijing Bytedance Network Technology Co., Ltd. DIFFERENCE CALCULATION BASED ON SPATIAL POSITION
JP7319365B2 (ja) 2018-11-22 2023-08-01 北京字節跳動網絡技術有限公司 サブブロックに基づくインター予測のための調整方法
CN113196772A (zh) * 2018-11-29 2021-07-30 北京字节跳动网络技术有限公司 块内拷贝模式和基于子块的运动矢量预测模式之间的交互
US11012697B2 (en) * 2018-12-07 2021-05-18 Qualcomm Incorporated Shared candidate list and parallel candidate list derivation for video coding
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
JP7011571B2 (ja) * 2018-12-28 2022-01-26 Kddi株式会社 画像復号装置、画像符号化装置、画像復号方法及びプログラム
JP7299362B2 (ja) * 2018-12-28 2023-06-27 Kddi株式会社 画像復号装置、画像符号化装置、画像復号方法及びプログラム
MX2021007977A (es) 2018-12-30 2021-08-16 Beijing Dajia Internet Information Tech Co Ltd Metodo y aparato para codificacion de video para prediccion de triangulo.
CN113273186A (zh) 2019-01-10 2021-08-17 北京字节跳动网络技术有限公司 Lut更新的调用
WO2020143824A1 (en) 2019-01-13 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and shared merge list
WO2020147773A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Inserting order of motion candidates in lut
WO2020177756A1 (en) 2019-03-06 2020-09-10 Beijing Bytedance Network Technology Co., Ltd. Size dependent inter coding
CN111726614A (zh) * 2019-03-18 2020-09-29 四川大学 一种基于空域下采样与深度学习重建的hevc编码优化方法
CN113615193A (zh) 2019-03-22 2021-11-05 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
EP3922014A4 (en) 2019-04-02 2022-04-06 Beijing Bytedance Network Technology Co., Ltd. DECODER SIDE MOTION VECTOR BYPASS
JP7481430B2 (ja) 2019-08-13 2024-05-10 北京字節跳動網絡技術有限公司 サブブロックに基づくインター予測における動き精度
CN114762330A (zh) 2019-09-22 2022-07-15 北京字节跳动网络技术有限公司 视频的子图片编码和解码
WO2021133899A1 (en) * 2019-12-24 2021-07-01 Beijing Dajia Internet Information Technology Co., Ltd. Motion estimation region for the merge candidates
WO2022212405A1 (en) * 2021-03-29 2022-10-06 Beijing Dajia Internet Information Technology Co., Ltd. Overlapped block motion compensation for inter prediction
JP2022162484A (ja) * 2021-04-12 2022-10-24 Kddi株式会社 画像復号装置、画像復号方法及びプログラム
CN113596474A (zh) * 2021-06-23 2021-11-02 浙江大华技术股份有限公司 图像/视频编码方法、装置、系统及计算机可读存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259734B1 (en) 1998-04-03 2001-07-10 Matsushita Electric Industrial Co., Ltd. Image processing method, image processing apparatus, and data storage media
JP3440830B2 (ja) * 1998-06-26 2003-08-25 ソニー株式会社 画像符号化装置及び方法、並びに記録媒体
US6647061B1 (en) * 2000-06-09 2003-11-11 General Instrument Corporation Video size conversion and transcoding from MPEG-2 to MPEG-4
US7653133B2 (en) * 2003-06-10 2010-01-26 Rensselaer Polytechnic Institute (Rpi) Overlapped block motion compression for variable size blocks in the context of MCTF scalable video coders
KR100605746B1 (ko) * 2003-06-16 2006-07-31 삼성전자주식회사 블럭 기반의 움직임 보상 장치 및 방법
CN101653008A (zh) * 2007-04-09 2010-02-17 Lg电子株式会社 用于处理视频信号的方法和装置
KR20100015456A (ko) * 2007-04-09 2010-02-12 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US9445121B2 (en) * 2008-08-04 2016-09-13 Dolby Laboratories Licensing Corporation Overlapped block disparity estimation and compensation architecture
JP2012070278A (ja) * 2010-09-24 2012-04-05 Jvc Kenwood Corp 動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2012070277A (ja) * 2010-09-24 2012-04-05 Jvc Kenwood Corp 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
US9807424B2 (en) 2011-01-10 2017-10-31 Qualcomm Incorporated Adaptive selection of region size for identification of samples in a transition zone for overlapped block motion compensation
US9883203B2 (en) * 2011-11-18 2018-01-30 Qualcomm Incorporated Adaptive overlapped block motion compensation
US9813730B2 (en) 2013-12-06 2017-11-07 Mediatek Inc. Method and apparatus for fine-grained motion boundary processing
US11477477B2 (en) 2015-01-26 2022-10-18 Qualcomm Incorporated Sub-prediction unit based advanced temporal motion vector prediction
US10230980B2 (en) 2015-01-26 2019-03-12 Qualcomm Incorporated Overlapped motion compensation for video coding

Also Published As

Publication number Publication date
CA2971633C (en) 2024-02-27
US10230980B2 (en) 2019-03-12
KR20230022282A (ko) 2023-02-14
CN111355963A (zh) 2020-06-30
EP4072143A2 (en) 2022-10-12
TWI688262B (zh) 2020-03-11
WO2016123068A1 (en) 2016-08-04
KR20170108012A (ko) 2017-09-26
CN107211157A (zh) 2017-09-26
JP2020150561A (ja) 2020-09-17
US10771811B2 (en) 2020-09-08
CN107211157B (zh) 2020-08-11
JP2018509032A (ja) 2018-03-29
US20160219302A1 (en) 2016-07-28
EP4072143A3 (en) 2022-11-16
EP3251363A1 (en) 2017-12-06
CA2971633A1 (en) 2016-08-04
JP7186745B2 (ja) 2022-12-09
US20190158876A1 (en) 2019-05-23
JP6720191B2 (ja) 2020-07-08
BR112017015533A2 (pt) 2018-03-13

Similar Documents

Publication Publication Date Title
JP7186745B2 (ja) ビデオコーディングのための重複動き補償
CN111567043B (zh) 对视频数据进行译码的方法、装置和计算机可读存储介质
US11252436B2 (en) Video picture inter prediction method and apparatus, and codec
TWI717586B (zh) 於視訊解碼器中導出運動向量資訊
TWI796308B (zh) 用於視訊寫碼之適應性運動向量精準度
TWI719053B (zh) 內區塊複製合併模式及不可用內區塊複製參考區域之填充
CN107534766B (zh) 于视频译码中针对子块推导运动信息方法、装置
CN113196749B (zh) 用于译码视频数据的方法和设备
TW201933866A (zh) 改良的解碼器側之運動向量推導
TWI504237B (zh) 視訊寫碼中之緩衝預測資料
CN112840646A (zh) 仿射运动预测
TW201941605A (zh) 用於視訊寫碼之區塊內複製
TW201924345A (zh) 寫碼用於視頻寫碼之仿射預測移動資訊
TW201904285A (zh) 在視訊寫碼中之增強的解塊濾波設計
TW201711463A (zh) 判定用於視訊寫碼之照明補償狀態之系統及方法
JP2022521979A (ja) デコーダ側動きベクトル改良に対する制約
CN111448800B (zh) 在图像编码系统中使用仿射mvp候选列表的基于仿射运动预测的图像解码方法及设备
TW201703531A (zh) 判定用於視訊寫碼之照明補償狀態之系統及方法
CN111869217A (zh) 简化的局部照度补偿
CN112262580B (zh) 用于视频编码的解码器侧运动矢量推导
CN112740672A (zh) 具有自适应方向信息集合的最终运动矢量表达
TW201316782A (zh) 用於視訊寫碼之運動向量預測符候選剪取移除
JP2023017760A (ja) ビデオデータインター予測方法及び装置
TW202025727A (zh) 向量預測器清單之產生
WO2019000443A1 (zh) 一种帧间预测的方法及装置