TWI688261B - 用於簡化的合併候選發信的編解碼方法及裝置 - Google Patents

用於簡化的合併候選發信的編解碼方法及裝置 Download PDF

Info

Publication number
TWI688261B
TWI688261B TW107118728A TW107118728A TWI688261B TW I688261 B TWI688261 B TW I688261B TW 107118728 A TW107118728 A TW 107118728A TW 107118728 A TW107118728 A TW 107118728A TW I688261 B TWI688261 B TW I688261B
Authority
TW
Taiwan
Prior art keywords
merge candidate
sub
prediction unit
merge
candidate
Prior art date
Application number
TW107118728A
Other languages
English (en)
Other versions
TW201904291A (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 TW201904291A publication Critical patent/TW201904291A/zh
Application granted granted Critical
Publication of TWI688261B publication Critical patent/TWI688261B/zh

Links

Images

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/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/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/182Methods 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 a pixel
    • 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/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

本發明提供了一種簡化的合併候選發信方法,當構建一合併候選列表用於一像素塊的一預測單元(PU)時,一視頻編解碼器跳過或部分地跳過一些子PU合併候選的構造。然後,該視頻編解碼器基於跳過的或部分構造的子PU合併候選在該合併候選列表上執行簡化的修剪操作。然後,該修剪的候選列表用於選擇一合併候選來對該像素進行編碼或解碼。

Description

用於簡化的合併候選發信的編解碼方法及裝置
本發明通常涉及視訊編解碼,特別地,本發明涉及生成合併候選列表的方法。
除非在此另有指示,否則本節描述的方法不是後續列出的申請專利範圍的先前技術,並且不承認藉由包括於該節中而作為先前技術。
為了提高運動向量(MV)編解碼的編解碼效率,高效視訊編碼(High Efficiency Video Coding,簡稱HEVC)提供了跳過模式(skip mode)以及合併模式(merge mode)。跳過模式以及合併模式從空間相鄰塊(spatially neighboring blocks)(空間候選)或時間同位塊(temporal co-located block)(時間候選)獲得運動資訊(MI)。當由跳過模式或合併模式對預測單元(prediction unit)進行編碼時,沒有運動資訊被編碼,而是僅有所選擇候選的索引被編碼。對於跳過模式,殘差信號限制為0並不對其進行編碼。在HEVC中,如果由跳過模式或合併模式對特定塊進行編碼,發信候選索引來指示一組候選中的哪一合併候選用於合併。每一合併的PU重新使用所選擇的合併候選的運動資訊,其包括MV、預測方向以及所選擇合併候選的參考圖像索引。
對於HEVC的HM-4.0中的合併模式,從四個空間相鄰塊A0、A1、B0以及B1中導出至多四個空間合併候選,以及從TBR或TCTR導出一時間合併候選(首先使用TBR,如果TBR不可用,再使用TCTR)。如果四個空間 候選的任一是不可用的,然後位置B2用於導出時間候選作為替換。在導出四個空間候選以及一時間候選後,從合併候選列表中移除(修剪)複數個冗餘候選(redundant candidate)。如果在修剪後,合併候選列表中的可用候選的數目小於5,導出三種類型的額外候選並添加至候選集(也稱為合併候選列表)中。基於率失真優化(rate-distortion optimization,檢測RDO)決定,編碼器選擇候選集中的一最終候選用於跳過模式或者合併模式,以及傳輸索引至解碼器。(在後文中,跳過模式以及合併模式被統稱為“合併模式”)。
以下的概述僅是說明性的以及不旨在以任何方式加以限制。也就是,提供以下的概述來介紹本發明描述的新穎且顯而易見的技術的概念、重點、有益效果及優點。選擇而不是所有實施在後續細節描述中進一步被描述。因此,後續的概述不旨在識別所要求保護主題的基本特徵,也不旨在用於確定所要求保護主題的範圍。
本發明的一些實施例提供了簡化的合併候選發信方法。實施該方法的一視訊編碼器接收包括一PU的一像素塊,該視訊編碼器為該PU生成包括一或複數個合併候選的一合併候選列表。該視訊編碼器藉由識別或生成一子PU合併候選的一第一組資料,部分構造該子PU合併候選,以及將該部分構造的子PU合併候選添加到該合併候選列表中。該視訊編碼器藉由將該部分構造的子PU合併候選的該第一組資料與該合併候選列表中另一合併候選的一對應的一組資料進行比較,識別一冗餘合併候選,以及從該合併候選列表中移除所識別的該冗餘合併候選。該視訊編碼器藉由基於該第一組資料生成一第二組資料完成該子PU合併候選。該視訊編碼器從包括該完成的子PU合併候選的該合併候選列表中選擇一合併候選。然後,視訊編碼器使用該所選擇的合併候選對該像素塊 進行編碼。
實施該方法的一視訊解碼器接收包括一PU的一像素塊。該視訊解碼器為該PU生成包括一或複數個合併候選的一合併候選列表。該視訊解碼器藉由識別或生成一子PU合併候選的一第一組資料,部分構造該子PU合併候選,以及將該部分構造的子PU合併候選添加到該合併候選列表中。該視訊解碼器藉由將該部分構造的子PU合併候選的該第一組資料與該合併候選列表中另一合併候選的一對應的一組資料進行比較,識別一冗餘合併候選,以及從該合併候選列表中移除所識別的該冗餘合併候選。該視訊解碼器從該合併候選列表中選擇一合併候選。當該所選擇的合併候選是該子PU合併候選時,該視訊解碼器藉由基於該第一組資料生成一第二組資料完成該子PU合併候選,以及藉由使用該完成的子PU合併候選對該像素塊進行解碼。
在一些實施例中,實施該方法的一視訊解碼器接收包括一PU的一像素塊。該視訊解碼器為該PU生成包括一或複數個合併候選的一合併候選列表,該合併候選列表包括一不完整的子PU合併候選。該視訊解碼器從該合併候選列表中選擇一合併候選。當該所選擇的合併候選是該子PU合併候選時,該視訊解碼器完成該子PU合併候選以及使用該完成的子PU合併候選對該像素塊進行解碼。
基於本發明所提供之方法,當滿足跳過子PU合併候選的構造的條件時,其在解碼側的合併候選清單構建進程中跳過生成一些子PU合併候選的進程,從而能夠提高子PU合併候選編解碼的效率。
100:視訊系統
110:位元流
112、114:合併候選
120:像素塊
125:合併索引
200:當前PU
130、140、400、500:合併候選列表
1200:視訊編碼器
1400:視訊解碼器
220、230、421~423:子PU合併候選
411~416:正常合併候選
501~503、601~603、701~703、1001~1003:階段
431~432:初始資訊
522:聯合的運動資訊
800、900、1100:進程
805~890、905~990、1105~1190:步驟
1205:視訊訊號
1209:殘差資訊
1210:轉換模組
1211:量化模組
1212、1412:量化係數
1213、1413:預測的像素資料
1214、1405:逆量化模組
1215、1415:逆轉換模組
1216、1416:轉換係數
1217:重構的像素資料
1219:重構的殘差
1208:減法器
220:幀內圖像估計模組
1225:幀內圖像預測模組
1230、1435:運動補償模組
1245、1445:環路濾波器
1250:重構圖像緩衝器
1265、1465:MV緩衝器
1275、1475:MV預測模組
1290:熵編碼器
1295、1495:位元流
1310、1510:合併模式模組
1417:解碼的像素資料
1419:重構的殘差信號
1455:顯示裝置
1425:幀內預測模組
1450:解碼圖像緩衝器
1600:電子系統
1610:處理單元
1605:匯流排
1615:影像處理單元
1620:系統記憶體
1625:網路
1630:唯讀記憶體
1635:永久記憶體
1640:輸入裝置
1645:輸出裝置
所附圖式被包括以提供本發明的進一步理解,以及被併入並構成本發明的一部分。圖式示出了本發明的實施例,以及與描述一起來解釋本發明 的原理。能夠理解的是,為了清楚說明本發明的概念,圖式中的一些元件與實際實施例的尺寸不成比例,附圖不一定是按比例繪製的。
第1圖示出了當創建用於對像素塊進行編碼或解碼的合併候選列表時,跳過或部分構造子PU合併候選的視訊系統。
第2圖概念地示出了合併候選列表的複數個合併候選。
第3a圖概念地示出了ATMVP候選的導出。
第3b圖概念地示出了STMVP候選的導出。
第4a-c圖概念地示出了子PU合併候選的部分構造。
第5圖概念地示出了基於與部分構造的子PU合併候選進行比較的簡化的修剪操作。
第6圖示出了藉由完成子PU合併候選的構造,視訊編碼器從修剪的合併候選列表中選擇合併候選。
第7圖示概念地示出了視訊解碼器從具有部分構造的合併候選的修剪的合併候選列表中選擇合併候選。
第8圖概念地示出了根據簡化的合併候選發信方法,當對像素塊進行編碼時視訊編碼器執行的進程。
第9圖概念地示出了根據簡化的合併候選發信方法,當對像素塊進行解碼時視訊解碼器執行的進程。
第10圖概念地示出了來自未修剪的合併候選列表中的子PU合併候選的選擇。
第11圖概念地示出了當從包括一或複數個跳過的子PU合併候選的未修剪合併候選列表中選擇合併候選時,視訊解碼器執行的進程。
第12圖示出了可以實施以上所描述的簡化的合併候選發信方法的視訊編碼器的示例。
第13圖示出了執行合併模式預測的視訊編碼器的部分。
第14圖示出了可以實施以上所描述簡化的合併候選發信方法的視訊解碼器的示例。
第15圖示出了執行合併模式預測的視訊解碼器的部分。
第16圖概念地示出了實施本發明的一些實施例的電子系統。
在後續細節描述中,各種特定的細節以示例的方式提出,來提供相關教導的透徹理解。基於此處所描述教導的任何變化、衍生和/或擴展都在本發明的保護範圍內。在某些情況下,與此處公開的一或複數個示例性實施方式相關的公知的方法、進程、元件和/或電路可以在相對較高的層級處進行描述,以避免不必要地混淆本發明的教導的複數個方面。
本發明的一些實施例提供了簡化的合併候選發信方法,當構建合併候選列表用於如編碼單元(CU)或預測單元(PU)的像素塊時,其允許視訊編解碼器跳過或部分地跳過一些子PU合併候選的生成(或構造)。然後,基於跳過的或部分構造的子PU合併候選,視訊編解碼器在合併候選列表上執行簡化的修剪操作。然後,修剪的候選列表用於選擇合併候選來對像素塊進行編碼或解碼。對於視訊編解碼器(video codec)是視訊編碼器的情況,視訊編解碼器可以在選擇合併候選前完成跳過的或部分構造的子PU合併候選的構造。對於視訊編解碼器是視訊解碼器的情況,僅當選擇的合併候選是子PU合併候選時,視訊編解碼器可以完成子PU合併候選的構造。
第1圖示出了當創建合併候選列表用於編碼或解碼像素塊時,跳過或部分構造子PU合併候選的視訊系統100。如圖所示,視訊系統100包括視訊編碼器1200,其將視訊圖像編碼成位元流110來藉由各種傳輸方法或媒介遞送至視訊解碼器1400。在所示出的示例中,位元流110包括由視訊編碼器1200 編碼進位元流110的像素塊120,以及其將由視訊解碼器1400進行解碼。像素塊120可以被編碼為編碼單元(CU)或預測單元(PU)。
為了編碼像素塊120,視訊編碼器1200生成或識別複數個合併候選112。然後,視訊編碼器從所識別的合併候選112創建合併候選列表130並從列表130修剪掉冗餘候選。然後,視訊編碼器從修剪的合併候選列表130選擇合併候選用於執行運動補償(motion compensation,MC)來對像素塊120塊進行編碼。該選擇在位元流中被發信為合併索引125。視訊編碼器執行簡化的合併候選發信方法,以致合併候選列表130中的一些合併候選被部分構造以及視訊編碼器基於部分構造的合併候選執行簡化的修剪。
為了從位元流110中解碼像素塊120,視訊解碼器1400藉由識別合併候選114生成對應的合併候選列表140並隨後修剪冗餘候選。然後視訊解碼器使用合併索引125來從修剪的合併候選列表140中選擇合併候選用於執行運動補償來對像素塊120進行解碼。視訊解碼器執行簡化的合併候選發信方法,以致合併候選列表140中的一些合併候選被部分構造以及視訊解碼器基於部分構造的合併候選執行簡化的修剪。
視訊編碼器1200以及視訊解碼器1400基於相同的來源資料(先前已解碼幀以及相鄰塊)執行相同的演算法以及操作,因此合併候選列表140被期望與合併候選列表130是一樣的。在一些實施例中,視訊系統100可以包括視訊編碼器1200而不包括視訊解碼器1400。在其他實施例中,視訊系統100可以包括視訊解碼器1400而不包括視訊編碼器1200,其在本發明中不限制於此。
當生成或識別合併候選時,視訊編解碼器(視訊編碼器1200或視訊解碼器1400)可以識別一或複數個子PU合併候選也可以識別一或複數個“正常”或非子PU合併候選。子PU合併候選具有用於複數個子PU的多組運動資訊,非子PU合併候選(或者“正常”合併候選)包括用於整個PU的一組運動資 訊。不像傳統的時間候選,子PU合併候選對應于被分割成複數個子PU的當前PU以及包括被發現用於每一子PU的所有對應的時間同位運動向量(temporal collocated motion vector)。大小是M×M的當前PU具有(M/P)×(N/Q)個子PU,每一子PU的大小是P×Q,其中在一些實施例中,M被P整除以及N被Q整除。
第2圖概念地示出了合併候選列表130的複數個合併候選。如圖所示,合併候選列表130包括候選A3、B1、B0、A0、B2、TBR等等,這些合併候選基於像素塊120的當前PU 200的空間和/或時間相鄰塊的運動資訊。合併候選列表130也包括一或複數個子PU合併候選,子PU合併候選包括用於當前PU的複數個子PU的多組運動資訊。在示例中,當前PU 200被拆分成16個子PU,因此,子PU合併候選可以具有用於16個子PU的至多16組不同的運動資訊。
合併候選列表130包括子PU合併候選220以及子PU合併候選230。基於高級的時間運動向量預測(Advanced Temporal Motion Vector Prediction,ATMVP)創建的子PU合併候選220。基於空間時間運動向量預測(Spatial Temporal Motion Vector Prediction,STMVP)創建的子PU合併候選230。雖然未在第2圖中示出,合併候選列表可以具有複數個ATMVP候選(基於不同的初始向量)以及複數個STMVP候選。
第3a圖概念地示出了ATMVP候選的導出,如圖所示,PU 200的初始運動向量用於決定用於不同子PU的複數個初始運動向量。每一子PU的初始運動向量反過來用於決定同位圖像中子PU的運動資訊或時間預測子。ATMVP將進一步在後續的第II節中描述。
第3b圖概念地示出了STMVP候選的導出。在此示例中,基於來自上方空間相鄰塊T1、其左邊空間相鄰塊以及其自己的時間相鄰塊的複數個MV或運動資訊,導出用於子PU(A1,1)的運動資訊。基於來自其上方空間相鄰 塊T2、其左邊空間相鄰塊(A1,1)以及其時間相鄰塊的運動資訊導出用於子PU(A2,1)的運動資訊。該導出進程以光柵掃描次序遞迴地應用於當前PU 200的所有子PU。STMVP將在候選的第III節中進一步描述。
第III節
如上所述,當構建用於像素塊的合併候選列表時,簡化的合併候選發信方法跳過或部分跳過一些子PU合併候選的生成。因為生成用於子PU合併候選的完整的一組運動資訊的計算花銷較大,這允許視訊編解碼器大大地減少與生成合併候選列表有關的計算時間。藉由生成或識別用於子PU合併候選的第一組資料,視訊編解碼器執行簡化的合併候選發信方法部分構造子PU合併候選。如果需要的話,視訊編解碼器隨後基於第一組資料生成第二組資料來完成子PU合併候選。
在一些實施例中,第一組資料包括當前PU中複數個子PU的子集的運動資訊。在一些實施例中,第一組資料包括在生成子PU合併候選進程中生成的一組初始資料或一組中間資料。在一些實施例中,第一組資料包括空間和/或時間相鄰塊的運動資訊。
第4a-c圖概念地示出了子PU合併候選的部分構造。圖式示出了包括正常合併候選411-146以及子PU合併候選421-423的合併候選列表400。正常或非子PU合併候選411-416示出為陰影的來指示它們是具有完整的多組運動資訊的複數個候選。子PU合併候選421-423是不完全陰影的來指示它們是部分構造的以及不具有完整的多組運動資訊。由第一子PU合併模式,生成子PU合併候選421-422,而由第二、不同子PU合併模式生成子PU合併候選423。
第4a圖示出了包括一些子PU但不是所有子PU的運動資訊的複數個部分構造的子PU合併候選。特別地,對於子PU合併候選421以及422,視訊編解碼器已生成或已識別一些子PU的運動資訊(例如,在PU的角落)而其 他子PU不具有任何運動資訊(示出為陰影的子PU是已生成運動資訊的子PU,示出為空白的子PU是還未生成運動資訊的子PU)。
第4b圖示出了視訊編解碼器已經為其生成了初始或中間資訊的部分構造的子PU合併候選。如圖所示,視訊編解碼器已經分別生成子PU合併候選421-422的初始資訊431-432。
子PU合併候選的初始或中間資訊的示例是在ATMVP模式下識別的初始運動向量。(子PU合併候選421-422的子PU示為空白來指示運動資訊還未生成的這些子PU)。如另一示例,在一些實施例中,當生成ATMVP合併候選時,視訊解碼器僅在可用性檢查操作之前執行候選構建進程,然後當可用性檢查操作完成時,停止候選建造操作。包括可用性檢查操作的該ATMVP合併候選的候選構建進程,在後續的第II節中進一步描述。
第4c圖示出了視訊編解碼器已經為其識別了空間和/或時間相鄰塊中運動資訊而部分構造的子PU合併候選。如圖所示,對於子PU合併候選421-422,視訊編解碼器已經識別了當前PU外的相鄰塊中的運動資訊。相鄰塊的這些運動資訊(包括相鄰MV)將用於計算子PU合併候選421-422(如在STMVP模式下)的運動資訊。視訊編解碼器還未計算子PU合併候選421-422的子PU的運動資訊。
視訊編解碼器執行修剪操作(pruning operation)來從合併候選列表中檢測以及移除一或複數個冗餘合併候選。當執行修剪操作時,視訊編解碼器可以執行一或複數個類型的修剪操作,其從合併候選列表中消除一或複數個合併候選,特別是子PU相關的修剪操作。後續的第IV節描述了子PU相關的三種不同類型的修剪操作,包括聯合修剪(Union Pruning)、子PU MI修剪以及特殊MI修剪。當構建合併候選列表時,視訊編解碼器可以關掉一或複數個子PU相關的修剪操作。
除了或取代該三個子PU相關的修剪操作,視訊編解碼器實施簡化的合併候選發信方法還可以執行一或複數個簡化的修剪操作。與在第IV節中描述的三種類型的子PU相關的修剪操作不同,其中子PU合併候選的所有運動資訊用於識別冗餘合併候選來修剪掉,簡化的修剪操作是其中子PU合併候選僅有一子集的運動資訊或沒有運動資訊用於識別要修剪的合併候選。換句話說,至少一些子PU合併候選的運動資訊未被考慮用於簡化的修剪。在一些實施例中,基於部分構造的子PU合併候選中已經可用的資訊,視訊編解碼器執行簡化的修剪。換句話說,部分構造的子PU合併候選中不可用的運動資訊未被考慮用於簡化的修剪。
例如,在一些實施例中,藉由比較它們的初始運動向量,視訊編解碼器藉由另一ATMVP候選修剪一ATMVP候選。在一些實施例中,如果用於導出兩個STMVP候選的複數個相鄰的MV是足夠相似的,或者如果兩個STMVP候選的複數個子PU(例如,在四個角落子PU的MV)的特定子集的運動資訊是足夠相似的,視訊編解碼器藉由另一STAMVP候選修剪一STMVP候選。在一些示例中,如果子PU合併候選中複數個子PU的特定子集的運動資訊與非子PU合併候選的運動資訊相同,視訊編解碼器藉由子PU合併候選修剪非子PU合併候選。
第5圖概念地示出了基於與部分構造的子PU合併候選進行比較的簡化的修剪操作。圖式示出了視訊編解碼器使用部分構造的子PU合併候選來從合併候選列表400中識別以及修剪掉冗餘合併候選。圖式示出了在三個階段501-503的簡化的修剪操作。
第一階段501示出了使用部分構造的子PU合併候選來識別其他子PU合併候選用於修剪。在該示例中,部分構造的子PU合併候選是一視訊編解碼器已經為其生成一些子PU但不是所有子PU的運動資訊(描述於第4a圖中) 的子PU合併候選。本領域技術人員能夠理解的是,可以基於部分構造的子PU合併候選的其他類型描述簡化的修剪操作,例如僅具有初始或中間資料的子PU合併候選(描述於第4b圖中)或者僅具有相鄰運動資訊的子PU合併候選(描述於第4c圖中)。通常來說,藉由將部分構造的子PU合併候選的第一組資料與合併候選列表中另一合併候選的對應的一組資料進行比較,視訊編解碼器實施簡化的合併候選發信方法識別要移除的合併候選。在一些實施例中,部分構造的子PU合併候選具有比執行簡化的修剪操作所需要運動資訊更多的運動資訊。
如圖所示,視訊編解碼器在某些特定的子PU(由箭頭所標記)而不是所有的子PU處將子PU合併候選421的運動資訊與子PU合併候選422的運動資訊進行比較。部分構造的子PU合併候選具有這些特定子PU但不是所有子PU的運動資訊。在該示例中,視訊編解碼器已經決定在特定子PU處的子PU合併候選421以及422的運動資訊是相同的或足夠相似的,以致可以從合併候選列表400中修剪掉兩個子PU 421-422中之一。
第二階段502示出了使用部分構造的子PU合併候選來識別一或複數個非子PU合併候選用於修剪。特別地,子PU合併候選422的可用運動資訊用於生成聯合的運動資訊522,其可以用於與正常或非子PU合併候選進行比較。聯合的運動資訊522可以是部分構造的子PU合併候選422的可用運動資訊的平均數,或者是某些特定組子PU(例如,當前PU的角落子PU)的運動資訊的平均數。在一些實施例中,僅當部分構造的子PU合併候選422中不同子PU的運動資訊彼此相同或基本相似時,視訊編解碼器使用聯合的運動資訊522用於與正常或非子PU合併候選比較。
在該示例中,將子PU合併候選的聯合的運動資訊522與非子PU合併候選411-416進行比較。基於該比較,視訊編解碼器決定合併候選413以及416的運動資訊與聯合的運動資訊522是相同或基本相似,以致合併候選 413以及416從合併候選列表400中被修剪掉。
第三階段503示出了在簡化的修剪操作已經識別並移除一些冗餘合併候選後的修剪的合併候選列表500。如圖所示,已經從候選列表400中移除合併候選413、416以及421來創建修剪的候選列表500,其包括合併候選411、412、414、422、423以及415。
藉由從修剪的候選列表500中選擇合併候選,視訊編碼器實施簡化的合併候選發信方法對像素塊進行編碼。視訊編碼器生成合併索引來指示修剪的合併候選列表500中所選擇的合併候選的位置。為了選擇最佳的合併候選,視訊編碼器完成部分構造的子PU合併候選。然後,完整的一組運動資訊對於視訊編碼器是可用的,來選擇最合適的合併候選來對當前像素塊進行編碼。
第6圖示出了藉由完成子PU合併候選的構造,視訊編碼器從修剪的合併候選列表500中選擇合併候選。圖式示出了三個階段601-603的選擇進程。
如第一階段601所示,修剪的合併候選列表500包括兩個部分構造的子PU合併候選422、423。這兩個子PU合併候選可以在不同的子PU合併模式(例如,ATMVP以及STAMVP)下生成的,子PU合併候選422可以僅具有一些子PU的運動資訊,而子PU合併候選423可以僅具有其空間以及時間相鄰塊的運動資訊。
在第二階段602中,視訊編碼器完成生成子PU合併候選422以及子PU合併候選423兩者所有子PU的運動資訊。子PU合併候選的完成是基於部分構造的子PU合併候選中可用的資訊。換句話說,藉由基於子PU合併候選的第一組資料生成第二組資料,視訊編碼器完成子PU合併候選的構造。
第三階段603示出了既然子PU合併候選422以及423是完全構造的,視訊編碼器從修剪的合併候選列表500中選擇合併候選。視訊編碼器可 以選擇非子PU合併候選(示例中為候選414)或者子PU合併候選(示例中為候選422)。然後,視訊編碼器生成合併索引,其指示修剪的合併候選列表500中所選擇的候選的位置。在該示例中,如果選擇了候選414,合併索引是2以及如果選擇了候選422,合併索引是4。在一些實施例中,視訊編碼器可以重新排序修剪的合併候選列表500並且合併索引的值基於該重新排序。
視訊解碼器實施簡化的合併候選發信方法用於匹配視訊編碼器實施簡化的合併候選發信方法,以致編碼器以及解碼器基於相同構造的子PU合併候選執行相同的子PU相關的修剪操作,該相同構造的子PU合併候選可以是部分構造的。然而,視訊解碼器可以從合併候選列表中選擇合併候選,其中子PU合併候選保持是不完全或部分構造的,也就是,當選擇候選時,視訊解碼器不需要構建完整的合併候選列表,不像視訊編碼器。為了提高效率,當構造合併候選列表時,視訊解碼器因此不完全構造每一子PU合併候選。(在一些實施例中,視訊解碼器可以繞開子PU合併候選並用預留位置候選(placeholder candidate)填充用於候選的子PU合併候選的合併候選列表中的條目)。
在視訊解碼器完成子PU合併候選的部分構建進程後,視訊解碼器可以接收合併索引用於從合併候選列表中選擇合併候選。如果所選擇的合併候選是子PU合併候選,視訊解碼器將完成構造所選擇的子PU合併候選。未被選擇的子PU合併候選將保持是未構造的。
第7圖概念地示出了視訊解碼器從具有部分構造的合併候選的修剪的合併候選列表500中選擇合併候選。僅當子PU合併候選是所選擇的候選時,視訊解碼器將完成子PU合併候選的構造。圖式示出了在三個階段701-703中的選擇進程。
如第一階段701所示,修剪的合併候選列表500包括兩個部分構造的子PU合併候選422以及423,其不具有完整的運動資訊。
第二階段702示出了視訊解碼器接收合併索引並選擇合併候選。合併索引指示修剪的合併候選列表500中所選擇的合併索引的位置,圖式提供了兩個場景,一用於當合併索引選擇非子PU合併候選時,以及另一用於當合併索引選擇子PU合併候選時。
如果合併索引選擇非子PU合併候選(示例中為由合併索引=2選擇候選412),因為所選擇的合併候選已經是完整的,視訊解碼器可以藉由使用所選擇的非子PU合併候選繼續對像素塊進行解碼。因為部分構造的子PU合併候選422以及423將不被使用,視訊解碼器將不消耗計算資源去完成部分構造的子PU合併候選422以及423。如果合併索引選擇子PU合併候選(示例中為由合併索引=4選擇候選422),視訊解碼器將完成所選擇的部分子PU合併候選的生成。
第三階段703示出了視訊解碼器完成所選擇的子PU合併候選的構造。在這一示例中,因為子PU合併候選422被選擇用於對當前PU進行解碼,視訊解碼器將完全地構造子PU合併候選422。因為部分構造的子PU合併候選423未被選擇以及將不被使用,部分構造的子PU合併候選423將保持是部分構造的。
第8圖概念地示出了根據簡化的合併候選發信方法,當對像素塊進行編碼時,視訊編碼器執行的進程800。特別地,視訊編碼器使用包括部分構造的子PU合併候選的合併候選列表以及在該合併候選列表上執行簡化的修剪。
在一些實施例中,實施視訊編碼器1200的計算裝置的一或複數個處理單元(例如,處理器)藉由執行存儲於電腦可讀介質中的指令執行進程800。在一些實施例中,實施視訊編碼器1200的一電子裝置執行進程800。
進程800開始於當視訊編碼器接收像素塊時(在步驟805)。像素塊將被編碼為編碼單元(CU)或預測單元(PU)。視訊編碼器生成用於PU的合併候 選列表(在步驟810)。合併候選列表可以包括不被拆分成複數個子PU的一或複數個合併候選。
藉由識別或生成子PU合併候選的第一組資料,視訊編碼器部分構造子PU合併候選(在步驟820)。可以在ATMVP模式、STMVP模式或另一子PU合併模式下生成子PU合併候選。子PU合併候選的第一組資料可以包括PU中複數個子PU的子集的運動資訊、在生成子PU合併候選的進程中生成的一組初始或中間資料或者PU的空間和/或時間相鄰塊的運動資訊。由參考上述第4a-c圖描述子PU合併候選的部分生成或構造。然後視訊編碼器將部分構造的子PU合併候選添加至合併候選列表(在步驟830)。
藉由將部分構造的子PU合併候選的第一組資料與合併候選列表中另一合併候選的對應的一組資料進行比較,視訊編碼器識別(在步驟840)冗餘合併候選。換句話說,基於部分構造的子PU合併候選,視訊編碼器執行簡化的修剪操作(由參考上述第5圖所描述的簡化的修剪)。在一些實施例中,視訊編碼器也執行在第IV節中描述的修剪操作,用於完全構造的子PU合併候選。然後,視訊編碼器(在步驟850)從合併候選列表中移除所識別的冗餘合併候選。這在視訊編碼器處創建修剪的合併候選列表。
藉由基於第一組資料生成第二組資料,視訊編碼器完成(在步驟860)部分構造的子PU合併候選。第二組資料可以包括複數個子PU的運動資料,該複數個子PU在部分構造的子PU合併候選中不具有運動資料。如果在合併候選列表中有其他部分構造的子PU合併候選,視訊編碼器也將完成它們。在這一步驟後,合併候選列表中的所有子PU合併候選被完全構造以包括完整的多組運動資訊。
視訊編碼器從包括完全構造的子PU合併候選的修剪的合併候選列表中選擇(在步驟870)合併候選。然後藉由使用所選擇的合併候選來執行運動 補償,視訊編碼器對像素塊進行編碼(在步驟880)。視訊編碼器也傳輸(在步驟890)或存儲具有合併索引的已編碼像素塊,合併索引指示合併候選列表中所選擇的合併候選的位置。然後進程800結束以及視訊編碼器對下一像素塊進行編碼。藉由視訊編碼器的子PU合併候選的完整構造以及合併候選的選擇將參考上述第6圖進行描述。
第9圖概念地示出了當視訊解碼器根據簡化的合併候選發信方法對像素塊進行解碼時執行的進程900,其是在。具體地,視訊解碼器使用包括部分構造的子PU合併候選的合併候選列表並對合併候選列表執行簡化的修剪。
在一些實施例中,實施視訊解碼器1400的計算裝置的一或複數個處理單元(例如,處理器)藉由執行存儲在電腦可讀介質中的指令執行進程900。在一些實施例中,實施視訊解碼器1400的電子裝置執行進程900。
進程900開始於當視訊解碼器接收(在步驟905)被編碼為PU或CU的像素塊時。視訊解碼器生成(在步驟910)用於PU的合併候選列表。合併候選列表可以包括未被拆分成複數個子PU的一或複數個合併候選。
視訊解碼器藉由識別或生成子PU合併候選的第一組資料部分構造(在步驟920)子PU合併候選。子PU合併候選可以在ATMVP模式、STMVP模式或另一子PU合併模式下生成。子PU合併候選的第一組資料可以包括PU中複數個子PU的子集的運動資訊、在生成子PU合併候選進程中生成的一組初始或中間資料,或PU的空間和/或時間相鄰塊的運動資訊。子PU合併候選的部分生成或構造將參考上述第4a-c圖進行描述。然後,視訊解碼器將部分構造的子PU合併候選添加到(在步驟930)合併候選列表中。
藉由將部分構造的子PU合併候選的第一組資料與合併候選清單中另一合併候選的對應的一組資料進行比較,視訊解碼器識別(在步驟940)冗餘合併候選。換句話說,視訊解碼器基於部分構造的子PU合併候選執行簡化的修 剪操作。藉由參考上述的第5圖描述簡化的修剪。在一些實施例中,視訊解碼器也執行在第IV節中描述的修剪操作用於完全構造子PU合併候選。然後,視訊解碼器從合併候選列表中移除(在步驟950)所識別的冗餘合併候選。這在視訊解碼器處創建修剪的合併候選列表。
視訊解碼器接收(在步驟960)合併索引並基於該合併索引從合併候選列表中選擇合併候選。視訊解碼器決定(在步驟965)所選擇的合併候選是否是子PU合併候選。如果是,進程前進到970。如果所選擇的候選不是子PU合併候選,進程前進到990。
在步驟970,藉由基於部分構造的子PU合併候選的第一組資料生成部分構造的子PU合併候選的第二組資料,視訊解碼器完成所選擇的、部分構造的子PU合併候選。該第二組資料可以包括複數個子PU的運動資料,該複數個子PU在部分構造的子PU合併候選中不具有運動資料。視訊解碼器不完成不由合併索引所選擇的部分構造的子PU合併候選,也就是,當所選擇的合併候選不是部分構造的子PU合併候選時,子PU合併候選的第二組資料將不會被生成。由視訊解碼器的子PU合併候選的選擇將參考上述第7圖進行描述。
藉由使用完成的子PU合併候選,視訊解碼器(在步驟980)對像素塊(也就是像素塊的PU)進行解碼,例如,藉由基於完成的子PU合併候選中的運動資訊執行運動補償。然後,進程900結束以及視訊解碼器繼續對下一PU或像素塊進行解碼。
在步驟990,藉由使用所選擇的合併候選(其不是子PU合併候選),視訊解碼器對像素塊進行解碼,然後,進程結束以及視訊解碼器繼續對下一PU或像素塊進行解碼。
在一些實施例中,當滿足用於跳過子PU合併候選生成的特定條件(表示為Condition_SubPU_Skip)時,在構建合併候選列表時,視訊編解碼器實 施簡化的合併候選發信方法跳過或部分跳過一些子PU合併候選的生成。當未滿足條件Condition_SubPU_Skip時,在構建合併候選列表時,視訊編解碼器實施簡化的合併候選發信方法生成完整的一組子PU合併候選。在一些實施例中,特定條件Condition_SubPU_Skip總是滿足的。在一些實施例中,基於當前PU的大小決定是否滿足特定條件Condition_SubPU_Skip,例如,PU大小是否大於閾值或者PU大小是否小於閾值。
在一些實施例中,視訊編解碼器使用旗標來指示簡化的合併候選發信方法是啟用的或禁用的。當旗標不存在時,旗標的值推定為1(例如,跳過方法是啟用的)。可以在序列層級、圖像層級、切片層級或PU層級的視訊編解碼標準相容的位元流中發信該旗標。
在一些實施例中,實施簡化的合併候選發信方法的視訊編碼器不執行任何修剪(在第IV節中描述的簡化的修剪或修剪方法)以及從未修剪的合併候選列表中選擇一合併候選。實施簡化的合併候選發信方法的視訊解碼器同樣不執行任何修剪。視訊解碼器不完全構造任何子PU合併候選,除非選擇子PU合併候選之一,在此情況下,視訊解碼器將僅完全地構造所選擇的子PU合併候選同時讓未選擇的子PU合併候選保持未構造的或部分構造的。
第10圖概念地示出了從未修剪的合併候選列表中選擇子PU合併候選。具體地,圖式示出了從合併候選列表400中選擇合併候選而不在三個階段1001-1003中,在視訊解碼器1400執行任何修剪。
在第一階段1001,視訊解碼器生成合併候選列表400,其包括非子PU合併候選411-416以及子PU合併候選421-423。然而,子PU合併候選421-423的構造是被跳過或不完整的。在一些實施例中,視訊解碼器創建空的或預留位置合併候選替代跳過的子PU合併候選421-423。(這樣的預留位置合併候選可以用預定義的運動資訊、垃圾值或不具有任何值來填充。)
雖然未示出,視訊編碼器1200也生成合併候選列表400。然而,由視訊編碼器1200生成的合併候選列表400可以包括完全或部分構造的子PU合併候選,以及基於完全或部分構造的子PU合併候選,視訊編碼器選擇候選。
第二階段1002示出了未修剪合併候選列表400中子PU合併候選的選擇。這不同於第6以及第7圖中示出的合併候選的選擇,其中選擇是來自於修剪的合併候選列表。視訊編碼器從未修剪的候選列表400中選擇子PU合併候選,以及提供對應的合併索引至視訊解碼器。合併索引(6)是未修剪候選列表400中所選擇的合併候選的位置。視訊解碼器使用合併索引來選擇子PU合併候選422,其是既不完全也不部分構造的跳過的合併候選。
第3階段1003示出了視訊解碼器完成所選擇的子PU合併候選422以致子PU合併候選422的資訊可以用於當前PU或像素塊的運動補償以及解碼。其他跳過的子PU合併候選421以及423保持空的預留位置或不完整。
第11圖概念地示出了當從包括一或複數個跳過的子PU合併候選的未修剪合併候選列表中選擇合併候選時,視訊解碼器執行的進程1100。在一些實施例中,實施視訊解碼器1400的計算裝置的一或複數個處理單元(例如,處理器)藉由執行存儲於電腦可讀媒介中的指令執行進程900。在一些實施例中,實施視訊解碼器1400的電子裝置執行進程1100。
進程1100開始於當視訊解碼器接收(在步驟1105)被編碼為PU或CU的像素塊時。視訊解碼器生成(在步驟1110)用於PU的合併候選列表,該PU包括非子PU合併候選以及跳過的子PU合併候選,例如,不具有真實運動資訊的是空白預留位置的子PU合併候選,或者不完全構造的子PU合併候選。合併候選列表將保持是未修剪的,然後進程前進到1160。
視訊解碼器接收(在步驟1160)合併索引並基於合併索引從未修剪的候選列表中選擇合併候選。視訊解碼器決定(在步驟1165)所選擇的合併候選 是否是子PU合併候選。如果是,進程前進到1170,如果所選擇的候選不是子PU合併候選,進程前進到1190。
在步驟1170,視訊解碼器完成所選擇的子PU合併候選,藉由使用完成的子PU合併候選,視訊解碼器對像素塊(也就是像素塊的PU)進行解碼(在步驟1180),例如,藉由基於完成的子PU合併候選中的運動資訊執行運動補償。然後,進程1100結束以及視訊解碼器繼續對下一PU或像素塊進行解碼。
在步驟1190,藉由使用所選擇的合併候選(其不是子PU合併候選),視訊解碼器對像素塊進行解碼。然後,進程1100結束以及視訊解碼器繼續對下一PU或像素塊進行解碼。
II.高級的時間運動向量預測(ATMVP)
為了提高編解碼效率,子PU時間運動向量預測(TMVP)模式,被稱為高級的時間運動向量預測(TMVP)模式,被添加進合併模式中,以及ATMVP合併候選可以被添加至合併候選列表中。在一些實施例中,合併候選列表中可以僅有一ATMVP候選。
從識別參考圖像中當前PU的對應塊的初始運動向量導出ATMVP合併候選,其中來自對應塊的多組運動資訊被提取並被分配給PU的複數個子PU。PU的每一子PU單獨地被運動補償,在後續的步驟1到5中描述了由ATMVP模式生成ATMVP合併候選的進程。
步驟1:對於當前PU,ATMVP模式找到“初始運動向量”,其表示為“vec_init”。按照定義,“vec_init”是第一可用空間相鄰塊的第一可用列表。例如,如果第一可用空間相鄰塊具有L0以及L1 MV,以及LX是用於搜索同位資訊的第一列表,那麼如果LX=L0,vec_init使用L0 MV,如果LX=L1,vec_init使用L1 MV。LX(L0或L1)的值取決於哪一列表更好的用於同位資訊,如果L0更好的用於同位資訊(例如,POC距離相比於L1更近),那麼LX=L0, 反之亦然。LX分配可以是切片層級或圖像層級。
同位圖像搜索進程用於尋找用於ATMVP模式中所有子PU的主要同位圖像。主要同位圖像被表示為main_colpic。同位圖像搜索進程搜索由第一可用空間相鄰塊所選擇的參考圖像,以及然後搜索當前圖像的所有參考圖像。對於B切片,搜索進程從L0(或L1),參考索引0,然後索引1,然後索引2等等開始。如果搜索進程完成搜索L0(或L1),它接著搜索另一列表。對於P切片,搜索進程搜索由第一可用空間相鄰塊選擇的參考圖像,以及然後從參考索引0開始搜索列表的當前圖像的所有參考圖像,然後索引1,然後索引2等等。
對於每一已搜索的圖像,同位圖像搜索進程執行運動資訊的可用性檢查。當執行可用性檢查時,vec_init的縮放版本(表示為vec_init_scaled)被添加到當前PU的圍繞中心的位置。被添加的位置然後用於檢查已搜索圖像的預測類型(幀內/幀間)。圍繞中心的位置可以是(i)中心像素(PU大小是M*N,中心=位置(M/2,N/2)),(ii)中心子PU的中心像素,或者(iii)取決於當前PU形狀的(i)與(ii)的組合,或者(iv)一些其他位置。如果預測類型是幀間類型,那麼運動資訊是可用的(可用性為真),如果預測類型是幀內類型,那麼運動資訊是不可用的(可用性為假)。當搜索進程完成可用性檢查時,如果運動資訊是可用的,那麼當前已搜索的圖像被記錄為主要同位圖像。如果運動資訊是不可用的,那麼搜索進程繼續搜索下一圖像。
當vec_init的參考圖像不是當前參考圖像時,同位圖像搜索進程執行MV縮放來創建vec_init的縮放版本(也就是,i.e,vec_init_scaled)。基於當前圖像、vec_init的參考圖像以及已搜索的參考圖像之間的時間距離,創建vec_init的縮放版本。
步驟2:對於每一子PU,ATMVP模式進一步找到用於子PU的初始運動向量,其表示為vec_init_sub_i(i=0~(M/P)×(N/Q)-1))。根據定義, vec_init_sub_i=vec_init_scaled。
步驟3:對於每一子PU,ATMVP模式找到用於參考列表0的同位圖像以及用於參考列表1的同位圖像。根據定義,對於當前PU的所有子PU,僅有一用於參考列表0以及參考列表1的同位圖像(也就是main_colpic)。
步驟4:對於每一子PU,根據以下等式ATMVP模式找到同位圖像中的同位位置:
同位位置x=sub-PU_i_x+integer(vec_init_sub_i_x)+shift_x
同位位置y=sub-PU_i_y+integer(vec_init_sub_i_y)+shift_y
術語sub-PU_i是當前子PU,術語sub-PU_i_x是當前圖像中sub-PU_i的水平的左頂部位置(整數位置),sub-PU_i_y是當前圖像中sub-PU_i的垂直的左頂部位置(整數位置);vec_init_sub_i_x是vec_init_sub_i的水平部分(僅整數部分);vec_init_sub_i_y是vec_init_sub_i的垂直部分(僅整數部分);shift_x是移位值,其可以是子PU寬度的一半,以及shift_y是移位值,其可以子PU高度的一半。
步驟5:對於每一子PU,ATMVP模式找到運動資訊時間預測子,其表示為SubPU_MI_i。SubPU_MI_i是來自在步驟4中計算的同位位置上的collocated_picture_i_L0以及collocated_picture_i_L1的運動資訊(MI)。同位MV的MI定義為{MV_x、MV_y、參考列表、參考索引、其他合併模式敏感資訊}的集合。合併模式敏感資訊可以是如包括局部亮度補償旗標的資訊。MV_x以及MV_y可以根據同位圖像、當前圖像以及同位MV的參考圖像之間的時間距離縮放。
III.時空運動向量預測子(STMVP)
STMVP模式也添加基於子PU的合併候選到合併模式中。以光柵掃描次序遞迴地生成複數個子PU的複數個運動向量。當前子PU的MV的導 出是(i)檢索來自當前子PU的兩個空間相鄰塊以及一時間相鄰塊的複數個MV(這些MV也稱為相鄰MV),(ii)在已檢索的複數個MV上執行縮放,以及(iii)對可用的複數個MV(至多三個)求平均作為當前子PU的MV。STMVP模式的細節描述可以在ITU-T SG 16 WP 3以及ISO/IEC JTC 1/SC 29/WG11聯合視訊開發小組(JVET),2016年5月26-6月1日,瑞士,日內瓦,第三次會議上,文獻標題:Algorithm Description of Joint Exploration Test Model 3中找到。在該文獻中,STMVP描述於第2.3.1.2節:Spatial-temporal motion vector prediction(STMVP)。
IV.子PU合併候選的修剪
子PU合併模式(包括ATMVP模式以及STMVP模式)採用修剪來提高編解碼效率。修剪是從候選列表中移除候選的進程。有三種類型的修剪:(1)聯合修剪,(2)子PU MI修剪,以及(3)ATMVP的特殊MI修剪(僅用於ATMVP,不用於STMVP)。
A.聯合修剪
在聯合修剪下,如果當前PU的不同子PU的運動資訊是相同或足夠相似的,PU的不同子PU可以被作為單個塊。PU的子PU合併候選(例如,ATMVP、STMVP)可以被作為一聯合的合併候選。這一PU的聯合的子PU合併候選可用於進一步修剪PU的複數個非子PU候選。相反地,PU的非子PU合併候選可以用於修剪子PU合併候選。這裡,子PU的運動資訊被定義為{MV_x、MV_y、參考列表、參考索引、其他合併模式敏感資訊}的集合。合併模式敏感資訊可以包括如局部亮度補償旗標或繼承的仿射旗標的資訊。
B.子PU MI修剪
子PU MI修剪比較在對應的子PU位置的兩個子PU合併候選(例如,ATMVP、STMVP)之間的子PU的運動資訊(藉由比較兩個子PU合併候選的子PU(0,0)、子PU(1,1)等等的運動資訊)。如果在兩個子PU合併候選之間所 有對應的子PU的運動資訊是相同或足夠相似的,兩個子PU合併候選之一可以從合併候選列表中被修剪掉。
C.ATMVP的特殊的MI修剪
這裡“特殊的MI”是指來自對ATMVP的執行可用性檢查的位置座標處同位參考圖像的運動資訊。更確切的說,在ATMVP進程的可用性檢查週期中,ATMVP進程檢查同位圖像上某些座標Coord_avachk的預測類型(幀內/幀間),在這一座標Coord_avachk的運動資訊稱為特殊的MI。ATMVP的特殊的MI修剪將當前ATMVP合併候選的特殊MI與候選列表中非子PU合併候選的MI進行比較。如果運動資訊是相同的,可以從合併候選列表中修剪掉非子PU合併候選。
V.示例性视频编码器
第12圖示出了實施以上描述的簡化的合併候選發信方法的視訊編碼器1200。如圖所示,視訊編碼器1200從視訊源1205接收輸入視訊訊號,並將該信號編碼至位元流1295。視訊編碼器1200具有用於編碼視訊訊號1205的複數個元件或模組,包括轉換模組1210、量化模組1211、逆量化模組1214、逆轉換模組1215、幀內圖像估計模組1220、幀內圖像預測模組1225、運動補償模組1230、運動估計模組1235、環路濾波器1245、重構圖像緩衝器1250、MV緩衝器1265、MV預測模組1275以及熵編碼器1290。
在一些實施例中,模組1210-1290是由計算設備或電子裝置的一或複數個處理單元(例如,處理器)所執行的軟體指令的模組。在一些實施例中,模組1210-1290是由電子裝置的一或複數個積體電路(IC)實施的硬體電路的模組。雖然模組1210-1290示出為分離的模組,一些模組可以被組合成的單個模組。
視訊源1205提供表示沒有壓縮的每一視訊幀的像素資料的原始視訊訊號,減法器1208計算視訊源1205的原始視訊像素資料與來自運動補償 1230或幀內圖像預測1225的預測的像素資料1213之間的差異。轉換1210將差異(或殘差像素資料或殘差資訊1209)轉換成轉換係數1216(例如,藉由執行離散余弦變化或DCT)。量化模組1211將轉換係數量化成量化資料(或量化係數)1212,其被熵編碼器1290編碼至位元流1295。
逆量化模組1214將量化資料(或量化係數)1212去量化來獲得轉換係數,以及逆轉換模組1215在轉換係數上執行逆轉換來生成重構的殘差1219。重構的殘差1219與預測的像素資料1213加一起生成重構的像素資料1217。在一些實施例中,重構的像素資料1217暫時地存儲於線緩衝器(未示出)用於幀內圖像預測以及空間MV預測。重構的像素由環路濾波器1245濾波並存儲於重構的圖像緩衝器1250中。在一些實施例中,重構的圖像緩衝器1250是視訊編碼器1200外部的記憶體,在一些實施例中,重構的圖像緩衝器1250是視訊編碼器1200內部的記憶體。
基於重構的像素資料1217,幀內圖像估計模組1220執行幀內預測來生成幀內預測資料。幀內預測資料被提供至熵編碼器1290來將其編碼至位元流1295。幀內預測資料也由幀內圖像預測模組1225使用來生成預測的像素資料1213。
運動估計模組1235藉由生成複數個MV來參考存儲於重構的圖像緩衝器1250中的先前已解碼幀的像素資料來執行幀間預測。這些MV被提供至運動補償模組1230來生成預測的像素資料。視訊編碼器1200使用MV預測來生成複數個預測的MV而不是對位元流中完整實際的MV進行編碼,以及複數個MV之間的差異用於運動補償以及預測的MV被編碼為殘差運動資料並存儲於位元流1295中。
MV預測模組1275基於為編碼先前視訊幀所生成的複數個參考MV生成複數個預測的MV,也就是,用於執行運動補償的複數個運動補償MV。 MV預測模組1275從來自MV緩衝器1265的先前視訊幀中檢索複數個參考MV,視訊編碼器1200存儲為當前視訊幀所生成的複數個MV於MV緩衝器1265中作為用於生成複數個預測的MV的複數個參考MV。
MV預測模組1275使用複數個參考MV來創建複數個預測的MV。預測的MV可以由空間MV預測或時間MV預測來計算,當前幀的預測的MV與運動補償MV(MC MV)之間的差異由熵編碼器1290編碼至位元流1295中。
熵編碼器1290藉由使用熵編碼技術如上下文自適應二進位算術編碼(context-adaptive binary arithmetic coding,簡稱CABAC)或霍夫曼編碼(Huffman encoding)將各種參數以及資料編碼至位元流1295。熵編碼器1290將如量化轉換資料以及殘差運動資料的參數編碼至位元流1295。位元流1295反過來存儲於存儲裝置或藉由如網路的傳輸媒介傳輸至解碼器中。
環路濾波器1245在重構的像素資料1217上執行濾波或平滑操作來減少編解碼的偽影,特別是在像素塊的邊界。在一些實施例中,所執行的濾波操作包括取樣自適應偏移(sample adaptive offset,簡稱SAO)。在一些實施例中,濾波操作包括適應性迴圈濾波(adaptive loop filter,簡稱ALF)。
第13圖示出了執行合併候選預測的視訊編碼器1200的部分。如圖所示,MV緩衝器1265存儲於先前已編碼視訊圖像有關的運動資訊,包括同位圖像以及參考圖像的運動向量。合併模式模組1310從MV緩衝器1265檢索運動資訊來生成各種合併候選,包括在ATMVP模式或STMVP模式下的子PU合併候選。合併模式模組1310也執行修剪操作來從合併候選列表中移除冗餘候選。合併模式模組1310可以跳過或部分構造子PU合併候選以及基於部分構造的子PU合併候選執行簡化的修剪操作。
基於來自運動估計模組1235的輸入,合併模式模組1310從修剪 的合併候選列表選擇合併候選。合併候選模組1310提供所選擇的合併候選的運動資訊至運動補償模組1230用於對當前PU進行編碼。合併模式模組1310也生成對應的合併索引至熵編碼器1290來包含與位元流1295中。
VI.示例性視訊解碼器
第14圖示出了可以實施以上所描述的簡化的合併候選發信方法的視訊解碼器1400。如圖所示,視訊解碼器1400是接收位元流1495以及將位元流的內容解碼成視訊幀的像素資料用於顯示的圖像解碼或視訊解碼電路。視訊解碼器1400具有複數個元件或模組用於解碼位元流1495,包括逆量化模組1405、逆轉換模組1415、幀內圖像預測模組1425、運動補償模組1435、環路濾波器1445、解碼圖像緩衝器1450、MV緩衝器1465、MV預測模組1475以及位元流解析器1490。
在一些實施例中,模組1410-1490是計算設備的一或複數個處理單元(例如處理器)所執行的軟體指令的模組。在一些實施例中,模組1410-1490是電子裝置的一或複數個IC所實施的硬體電路的模組。雖然模組1410-1490示出為分離的,一些模組可以被組合成的單個模組。
根據由視訊編碼或圖像編碼標準所定義的語法,解析器1490(或熵解碼器)接收位元流1495並執行初始解析。所解析的語法元素包括各種資料頭元素、旗標以及量化資料(或量化係數)1412。解析器1490藉由使用如上下文自適應二進位算術編碼(CABAC)或霍夫曼編碼的熵編碼技術解析出各種語法元素。
逆量化模組1405對量化資料(或量化係數)1412進行去量化來獲得轉換係數,以及逆轉換模組1415在轉換係數1416上執行逆轉換來生成重構的殘差信號1419。重構的殘差信號1419與來自幀內預測模組1425或運動補償模組1435的預測的像素資料1413添加到一起來生成解碼的像素資料1417。解 碼器的像素資料由環路濾波器1445進行濾波並存儲於解碼的圖像緩衝器1450中。在一些實施例中,解碼的圖像緩衝器1450是在視訊解碼器1400外部的記憶體。在一些實施例中,解碼的圖像緩衝器1450是視訊解碼器1400內部的記憶體。
幀內圖像預測模組1425從位元流1495接收幀內預測資料並根據其,從存儲於解碼的圖像緩衝器1450的已解碼的像素資料1417生成預測的像素資料1413。在一些實施例中,已解碼的像素資料1417也存儲於線緩衝器(未示出)中用於幀內圖像預測以及空間MV預測。
在一些實施例中,解碼圖像緩衝器1450的內容被用於顯示。顯示裝置1455直接檢索解碼圖像緩衝器1450的內容用於顯示或者檢索解碼圖像緩衝器的內容至顯示緩衝器。在一些實施例中,顯示裝置藉由像素傳輸從解碼圖像緩衝器1450接收像素值。
根據複數個運動補償MV(MC MV),運動補償模組1435從存儲於解碼圖像緩衝器1450的已解碼像素資料1417生成預測的像素資料1413。藉由將從位元流1495接收的殘差運動資料與從MV預測模組1475接收的預測的MV相加來對運動補償MV進行解碼。
基於為解碼先前視訊幀所生成的複數個參考MV,MV預測模組1475生成複數個預測的MV,例如,用於執行運動補償的運動補償MV。MV預測模組1475從MV緩衝器1465檢索先前視訊幀的參考MV。視訊解碼器1400存儲為解碼當前視訊幀所生成的運動補償MV於MV緩衝器1465中作為用於生成預測的MV的參考MV。
環路濾波器1445在已解碼像素1417上執行濾波或平滑操作來減少編解碼的偽影,特別是在像素塊的邊界處。在一些實施例中,所執行的濾波操作包括取樣自適應偏移(SAO)。在一些實施例中,濾波操作包括適應性迴圈濾 波(ALF)。
第15圖示出了執行合併模式預測的視訊解碼器1400的部分。如圖所示,MV緩衝器1465存儲與先前已解碼圖像有關的運動資訊,包括同位圖像以及參考圖像的運動向量。合併模式模組1510從MV緩衝器1465檢索運動資訊來生成合併候選列表的各種合併候選,包括在ATMVP模式或STMVP模式下生成的子PU合併候選。合併模式模組1510也可以執行修剪操作來從合併候選列表中移除冗餘候選。基於部分構造的子PU合併候選,合併模式模組1510可以跳過或部分構造子PU合併候選以及執行簡化的修剪操作。
基於藉由熵解碼器1490從位元流1495解析出來的合併索引,合併模式模組1510從修剪的合併候選列表中選擇合併候選。如果所選擇的合併候選是部分構造的子PU合併候選,合併模組1510完成所選擇的子PU合併候選的構造。然後,合併模式模組1510提供所選擇的合併候選的運動資訊至運動補償模組1435用於對當前PU進行解碼。
VII.示例性電子系統
許多以上所描述的特徵以及應用被實施為軟體進程,其被指定為記錄於電腦可讀存儲介質(也稱為電腦可讀介質)上的一組指令。當由一或複數個計算單元或處理單元(例如,一或複數個處理器、處理器的核心或者其他處理單元)執行這些指令時,它們使處理單元來執行在指令中所指示的動作。電腦可讀介質的示例包括但不限於CD-ROMs、閃盤驅動器、隨機存取記憶體(RAM)晶片、硬碟驅動器、可擦可程式設計唯讀記憶體(EPROMs)、電子可擦可程式設計唯讀記憶體(EEPROMs)等等。電腦可讀介質不包括無線地或藉由有線連接傳輸的載波以及電子信號。
在本說明書中,術語“軟體”意指包括駐留於唯讀記憶體中的固件或存儲於可以被讀取至記憶體用於由處理器處理的磁性記憶體中的應用。另 外,在一些實施例中,複數個軟體發明可以實施為較大程式的子部分,而其餘的是不同的軟體發明。在一些實施例中,複數個軟體發明也可以實施為分離的程式。最終,分離程式的任何組合,其一起實施此處所描述的軟體發明在本發明的範圍內容。在一些實施例中,當被安裝來在一或複數個電子系統上運動時,軟體程式定義實施或執行軟體程式的操作一或複數個特定的機器實施方法。
第16圖概念地示出了利用其來實施本發明一些實施例的電子系統1600。電子系統可以是電腦(例如,臺式電腦、個人電腦、平板電腦等等)、電話、PDA或者其他類型的電子設備。這一電子系統包括各種類型的電腦可讀介質以及用於各種其他類型電腦可讀介質的介面。電子系統1600包括匯流排1605、處理單元1610、影像處理單元(GPU)1615、系統記憶體1620、網路1625、唯讀記憶體1630、永久記憶體1635、輸入裝置1640以及輸出裝置1645。
匯流排1605共同地表示所有系統、週邊設備以及與所述電子系統1600的複數個內部裝置通信連接的晶片集匯流排。比如,匯流排1605將處理單元1610與GPU1615、唯讀記憶體1630、系統記憶體1620以及永久存放裝置1635通信連接。
處理單元1610從這些各種記憶體單元檢索要執行的指令以及要處理的資料,以執行本發明的進程。在不同實施例中,處理單元可以是單個處理器或多核處理器。一些指令被傳到CPU 1615並由GPU 1615執行。GPU 1615可以卸載由處理單元1610提供的各種計算或影像處理。
唯讀記憶體(ROM)1630存儲由處理單元1610以及電子系統其它模組所需要的靜態資料以及指令。另一方面,永久存放裝置1635是讀寫記憶體設備。這一設備是非揮發性記憶體單元,其即使當電子系統1600是關閉的也存儲指令以及資料。本發明的一些實施例使用大型存放區設備(例如磁片或光碟以及它對應的硬碟驅動器)作為永久存放裝置1635。
其他實施例使用移動存放裝置(例如軟碟、閃速記憶體等等,以及它對應的硬碟驅動器)作為永久存放裝置。像永久存放裝置1635、系統記憶體1620是讀寫記憶體設備。然而,不像存放裝置1635,系統記憶體1620是揮發性讀寫記憶體,例如隨機存取記憶體。系統記憶體1620存儲處理器在運動時所需要的一些指令以及資料。在一些實施例中,與本發明一致的進程存儲於系統記憶體1620、永久存放裝置1635和/或唯讀記憶體1630中。例如,各種記憶體單元包括用於處理與一些實施例一致的多媒體剪輯的指令。處理單元1610從這些各種記憶體單元檢索要執行的指令以及要處理的資料,來執行一些實施例的進程。
匯流排1605也連接輸入以及輸出設備1640以及1645。輸入裝置1640使使用者能夠交流資訊以及選擇命令至電子系統。輸入裝置1640包括字母鍵盤以及定位設備(也叫“游標控制設備”)、攝像機(例如,網路攝像機)、麥克風或者用於接收聲音命令的類似設備等等。輸出設備1645顯示由電子系統生成的圖像或其他方式的輸出資料。輸出設備1645包括印表機以及顯示裝置,例如陰極射線管(CRT)或液晶顯示器(LCD),以及揚聲器或類似的音訊輸出設備。一些實施例包括如觸控式螢幕的設備作為輸入以及輸出設備兩者。
最終,如第16圖所示,匯流排1605也藉由網路轉換器(未示出)將電子系統1600耦合於網路1625。如此,電腦可以是電腦網路(例如,局域網(LAN)、廣域網路(WAN))或內聯網、或如網際網路的網路的網路的一部分。可以結合本發明使用電子系統1600的任何或所有元件。
一些實施例包括電子元件,如微處理器、儲電腦程式指令於機器可讀或電腦可讀媒介(或者稱為電腦可讀存儲媒介、機器可讀媒介或者機器可讀存儲媒介)中的記憶體以及記憶體。這一電腦可讀介質的一些示例包括RAM、ROM、唯讀光碟(CD-ROM)、可錄光碟(CD-R)、可複寫式光碟(CD-RW)、唯讀 數位通用光碟(例如,DVD-ROM、雙層DVD-ROM)、各種可記錄/複寫DVD(例如,SD卡、mini-SD卡、micro-SD卡等等)、磁性和/或固態硬碟、唯讀以及可錄式藍光®盤、高密度光碟、任何其他光或磁性媒介以及軟碟。電腦可讀媒介可以存儲由至少之一處理單元執行的計算程式以及包括用於執行各種操作的指令集。電腦程式或計算代碼的示例包括例如由編譯器所生成的機器代碼,以及包括由電腦、電子元件或使用注釋器的微處理器所執行的包括高層級代碼的檔。
雖然以上所討論的主要涉及執行軟體的微處理器或多核處理器,許多以上所描述的特徵以及應用由一或複數個積體電路(例如專用積體電路(ASIC))或現場可程式設計閘陣列(FPGA)執行。在一些實施例中,這一積體電路執行存儲在它電路自身上的指令。此外,一些實施例執行存儲於可程式設計邏輯裝置(PLD)、ROM或RAM設備中的軟體。
如在本發明的說明書以及任何申請專利範圍中所使用的,術語“電腦”、“伺服器”、“處理器”以及“記憶體”都指電子或其他技術裝置。這些術語不包括人或群體。出於說明書的目的,術語“顯示”指在電子設備上顯示。如在本發明的說明書以及任何申請專利範圍中所使用的,術語“電腦可讀介質”、“電腦可讀介質”以及“機器可讀介質”都完全限制於一電腦可讀的形式存儲資訊的有形、物理物件。這些術語排除任何無線信號、有線下載的信號以及任何其他短暫的信號。
雖然已經參考了許多特定的細節描述本發明,本領域技術人員將意識到本發明可以以其他特定的形式實施而不背離本發明的精神。此外,許多圖概念性示出了進程(包括第8圖與第9圖)。這些進程的特定操作可以不以所示出以及所描述的準確順序來執行,特定操作可能不在一系列連續的操作中執行,以及不同的特定操作可以在不同的實施例中執行。此外,可以使用複數個子進程或者作為較大巨集進程的部分來實施進程。因此,本領域技術人員將能 理解,本發明不受前述說明性的細節所限制,而是由所附申請專利範圍來界定。
附加注釋
本文所描述的主題有時示出了包括在不同的其他元件內或與其它元件連接的不同的元件。能夠理解的是,這一所描述的架構僅僅是示例,並且事實上許多其他架構也可以實現相同的功能。在概念的意義上,實現相同功能的元件的任何配置是有效“相關的”以致實現所期望的功能。因此,此處結合以實現特定功能的任何兩個元件可以視為彼此“相關聯”以致實現所期望的功能,而不考慮架構或中間元件。同樣地,也可以將相關聯的任何兩個元件視為“可操作地連接”或“可操作地耦合”,以實現期望的功能。以及能夠被如此關聯的任何兩個元件也可以被示為“可操作地耦合”,以實現所期望的功能。可操作的耦合的特定實施例包括但不限於物理上可匹配和/或物理交互的元件和/或無線交互和/或無線交互元件和/或邏輯交互和/或邏輯交互的元件。
進一步地,關於本文中基本上任何複數和/或單數術語的使用,本領域技術人員可以從複數向單數和/或從單數轉換為複數,這適合於上下文和/或應用。為了簡要起見,在此可以明確地闡述各種單個/複數個置換。
此外,本領域技術人員將能夠理解的是,通常,此處所使用的術語,尤其是所附申請專利範圍中使用的術語,例如所附申請專利範圍的主體,通常作為“開放式”術語,例如,術語“包括”應當被解釋為“包括但不限於”,術語“具有”應該被解釋為“至少具有”,術語“包括”應當被解釋為“包括但不限於”等等。本領域技術人員將能夠理解的是,如果所引入申請專利範圍的特定數量是刻意的,則在申請專利範圍中明確陳述此種意圖,並且在不存在這種意圖陳述的情況下,不具有這種意圖。例如,為了幫助理解,後文所附申請專利範圍可以包括介紹性短語“至少之一”以及“一或複數個”的使用來介紹申請專利範圍陳述。然而,這種短語的使用將不被理解成暗指由不定 冠詞“a”或“an”引入的申請專利範圍陳述限制了包括這種所引入的申請專利範圍陳述任何特定的實施例,即使相同的申請專利範圍包括引導性短語“一或複數個”或者“至少之一”以及不定關鍵如“a”或“an”,例如,“a”和/或“an”應該解釋為意味著“至少之一”或“一或複數個”,這也同樣適用於使用定冠詞介紹申請專利範圍的敘述。此外,即使所引入申請專利範圍敘述的特定數量是明確列舉的,本領域技術人員將意識到,這一敘述應該解釋為意味著至少這一列舉的數量,例如,每一其他修飾語的“兩個敘述”的簡單敘述,意味著至少兩個敘述,或兩個或複數個敘述。此外,在那些使用類似於“A、B以及C的至少之一等等”的慣例中,通常這樣的結構是本領域技術人員預期所能理解的的慣例,例如,“系統具有A、B以及C的至少之一”將包括但不限於系統單獨具有A、單獨具有B、單獨具有C,一起具有A以及B、一起具有A以及C、一起具有B以及C,和/或具有一起A、B以及C等等。在使用類似於“A、B或C的至少之一等等”的關聯中,通常這樣的結構是本領域技術人員預期所能理解的的慣例,例如,“系統具有A、B或C的至少之一”將包括但不限於系統單獨具有A、單獨具有B、單獨具有C,一起具有A和B、一起具有A和C、一起具有B和C,和/或一起具有A、B和C等等。本領域技術人員將能進一步理解的是,事實上,無論在說明書、申請專利範圍書或附圖中,呈現兩個或更複數個替代術語的任何分隔詞和/或短語應當被理解成包括術語中之一、術語中的任一或者它們兩者的可能性,例如短語“A或B”將被理解成包括“A”或“B”或“A以及B”的可能性。
從上文可以理解,為了說明的目的,這裡已經描述了本發明公開的各種實現,並且可以在不脫離本發明範圍和精神的情況下進行的各種修改,因此,本發明所公開的各種實施例不旨在是限制性的,而由後續的申請專利範圍指示真正的範圍及精神。
411~416:正常合併候選
421~423:子PU合併候選
1001~1003:階段

Claims (20)

  1. 一種用於簡化的合併候選發信的編解碼方法,包括接收包括一預測單元的一像素塊;為該預測單元生成包括一或複數個合併候選的一合併候選列表;藉由識別或生成一子預測單元合併候選的一第一組資料,部分構造該子預測單元合併候選;將該部分構造的子預測單元合併候選添加到該合併候選列表中;藉由將該部分構造的子預測單元合併候選的該第一組資料與該合併候選列表中的另一合併候選的一對應的一組資料進行比較,識別一冗餘合併候選;以及從該合併候選列表中移除所識別的該冗餘合併候選。
  2. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,進一步包括:藉由基於該第一組資料生成一第二組資料完成該子預測單元合併候選;從包括該完成的子預測單元合併候選的該合併候選列表中選擇一合併候選;以及藉由使用該所選擇的合併候選對該像素塊進行編碼。
  3. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,進一步包括:從該合併候選列表中選擇一合併候選;以及當該所選擇的合併候選是該子預測單元合併候選時,藉由基於該第一組資料生成一第二組資料完成該子預測單元合併候選,以及藉由使用該完成的子預測單元合併候選對該像素塊進行解碼。
  4. 如申請專利範圍第3項所述之用於簡化的合併候選發信的編解碼方法,其中該第一組資料包括該預測單元中複數個子預測單元的一第一子集的運動資訊;以及該第二組資料包括該預測單元中複數個子預測單元的一第二子集的運動資訊。
  5. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該子預測單元合併候選是一第一子預測單元合併候選以及該另一合併候選是一第二子預測單元合併候選,以及其中識別該冗餘合併候選包括將該第一子預測單元合併候選的複數個子預測單元的該第一子集的運動資訊與該第二子預測單元合併候選的複數個子預測單元的一對應的子集的運動資訊進行比較。
  6. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該另一合併候選是非子預測單元合併候選,以及其中識別該冗餘合併候選包括將該子預測單元合併候選的複數個子預測單元的一子集的運動資訊與該非子預測單元合併候選的運動資訊進行比較。
  7. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該子預測單元合併候選是一第一子預測單元合併候選以及該另一合併候選是一第二子預測單元合併候選,以及其中識別該冗餘候選包括將該第一子預測單元合併候選的一初始運動向量與該第二子預測單元合併候選的一初始運動向量進行比較。
  8. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該子預測單元合併候選是一第一子預測單元合併候選以及該另一合併候選是一第二子預測單元合併候選,以及其中識別該冗餘合併候選包括將 該第一子預測單元合併候選的一相鄰運動向量與該第二子預測單元合併候選的一相鄰運動向量進行比較。
  9. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該部分構造該子預測單元合併候選包括藉由決定用於不同子預測單元的初始運動向量生成該子預測單元合併候選,以及其中用於每一子預測單元的該初始運動向量用於識別一同位圖像中的運動資訊。
  10. 如申請專利範圍第1項所述之用於簡化的合併候選發信的編解碼方法,其中該部分構造該子預測單元合併候選包括藉由基於該子預測單元的兩個空間相鄰塊以及一時間相鄰塊決定用於每一子預測單元的一平均的運動向量生成該子預測單元合併候選。
  11. 一種用於簡化的合併候選發信的電子裝置,包括:一視訊編碼器電路,用於:接收包括一預測單元的一像素塊;為該預測單元生成包括一或複數個合併候選的一合併候選列表;藉由識別或生成一子預測單元合併候選的一第一組資料,部分構造該子預測單元合併候選;將該部分構造的子預測單元合併候選添加到該合併候選列表中;藉由將該部分構造的子預測單元合併候選的該第一組資料與該合併候選列表中的另一合併候選的一對應的一組資料進行比較,識別一冗餘合併候選;以及從該合併候選列表中移除所識別的該冗餘合併候選;藉由基於該第一組資料生成一第二組資料完成該子預測單元合併候選;從包括該完成的子預測單元合併候選的該合併候選列表中選擇一合併候選;以及 使用該所選擇的合併候選對該像素塊進行編碼。
  12. 如申請專利範圍第11項所述之用於簡化的合併候選發信的電子裝置,其中:該第一組資料包括該預測單元中複數個子預測單元的一第一子集的運動資訊;以及該第二組資料包括該預測單元中複數個子預測單元的一第二子集的運動資訊。
  13. 如申請專利範圍第11項所述之用於簡化的合併候選發信的電子裝置,其中該子預測單元合併候選是一第一子預測單元合併候選以及該另一合併候選是一第二子預測單元合併候選,以及其中在識別該冗餘合併候選中,該視訊編碼器電路將該第一子預測單元合併候選的一初始運動向量與該第二子預測單元合併候選的一初始運動向量進行比較,其中藉由決定用於不同子預測單元的初始運動向量生成該第一子預測單元合併候選,其中用於每一子預測單元的該初始運動向量用於識別一同位圖像中的運動資訊。
  14. 一種用於簡化的合併候選發信的電子裝置,包括一視訊解碼器電路,用於:接收包括一預測單元的一像素塊;為該預測單元生成包括一或複數個合併候選的一合併候選列表;藉由識別或生成一子預測單元合併候選的一第一組資料,部分構造該子預測單元合併候選;將該部分構造的子預測單元合併候選添加到該合併候選列表中;從該合併候選列表中選擇一合併候選;以及當該所選擇的合併候選是該子預測單元合併候選時,藉由基於該第一組資料生成一第二組資料完成該子預測單元合併候選,以及藉由使用該完成的子預 測單元合併候選對像素塊進行解碼。
  15. 如申請專利範圍第14項所述之用於簡化的合併候選發信的電子裝置,其中該視訊解碼器電路進一步用於接收一合併索引以及使用所接收到的該合併索引來從該合併候選列表中選擇該合併候選。
  16. 如申請專利範圍第14項所述之用於簡化的合併候選發信的電子裝置,其中,當該所選擇的合併候選不是該子預測單元合併候選時,不生成該第二組資料。
  17. 如申請專利範圍第14項所述之用於簡化的合併候選發信的電子裝置,其中,該第一組資料包括該預測單元中複數個子預測單元的一第一子集的運動資訊;以及該第二組資料包括該預測單元中複數個子預測單元的一第二子集的運動資訊。
  18. 如申請專利範圍第14項所述之用於簡化的合併候選發信的電子裝置,其中該視訊解碼器電路進一步用於:藉由將該部分構造的子預測單元合併候選的該第一組資料與該合併候選列表中一不同的合併候選的一對應的一組資料進行比較,識別一冗餘合併候選;以及從該合併候選列表中移除所識別的該冗餘合併候選。
  19. 如申請專利範圍第18項所述之用於簡化的合併候選發信的電子裝置,其中該子預測單元合併候選是一第一子預測單元合併候選以及該另一合併候選是一第二子預測單元合併候選,以及其中在識別該冗餘合併候選中,該視訊解碼器電路將該第一子預測單元合併候選的一初始運動向量與該第二子預測單元合併候選的一初始運動向量進行比較。
  20. 一種用於簡化的合併候選發信的電子裝置,包括:一視訊解碼器電路,用於:接收包括一預測單元的一像素塊;為該預測單元生成包括一或複數個合併候選的一合併候選列表,該合併候選列表包括不完整的一子預測單元合併候選;從該合併候選列表中選擇一合併候選;以及當該所選擇的合併候選是該子預測單元合併候選時,完成該子預測單元合併候選以及使用該完成的子預測單元合併候選對該像素塊進行解碼。
TW107118728A 2017-05-31 2018-05-31 用於簡化的合併候選發信的編解碼方法及裝置 TWI688261B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762512749P 2017-05-31 2017-05-31
US62/512,749 2017-05-31
US15/992,140 2018-05-29
US15/992,140 US10523934B2 (en) 2017-05-31 2018-05-29 Split based motion vector operation reduction

Publications (2)

Publication Number Publication Date
TW201904291A TW201904291A (zh) 2019-01-16
TWI688261B true TWI688261B (zh) 2020-03-11

Family

ID=64454389

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107118728A TWI688261B (zh) 2017-05-31 2018-05-31 用於簡化的合併候選發信的編解碼方法及裝置

Country Status (3)

Country Link
US (1) US10523934B2 (zh)
TW (1) TWI688261B (zh)
WO (1) WO2018219310A1 (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3468194A1 (en) * 2017-10-05 2019-04-10 Thomson Licensing Decoupled mode inference and prediction
EP3769528A4 (en) * 2018-03-19 2021-11-10 QUALCOMM Incorporated IMPROVEMENTS TO ADVANCED MOVEMENT VECTOR PREDICTION
KR20240005240A (ko) 2018-06-29 2024-01-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut에서의 모션 후보들의 검사 순서
KR20210024502A (ko) 2018-06-29 2021-03-05 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Hmvp 후보를 병합/amvp에 추가할 때의 부분/풀 프루닝
CN110662053B (zh) 2018-06-29 2022-03-25 北京字节跳动网络技术有限公司 使用查找表的视频处理方法、装置和存储介质
KR102660666B1 (ko) 2018-06-29 2024-04-26 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 Lut들을 업데이트하기 위한 조건들
WO2020003284A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between lut and amvp
WO2020003266A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Resetting of look up table per slice/tile/lcu row
KR20210025537A (ko) 2018-06-29 2021-03-09 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 하나 또는 다수의 룩업 테이블들을 사용하여 이전에 코딩된 모션 정보를 순서대로 저장하고 이를 사용하여 후속 블록들을 코딩하는 개념
WO2020003280A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Which lut to be updated or no updating
BR112020024202A2 (pt) * 2018-06-29 2021-02-17 Beijing Bytedance Network Technology Co., Ltd. método de processamento de dados de vídeo, aparelho de processamento de vídeo e meios de armazenamento e gravação legíveis por computador não transitório
EP4307679A2 (en) 2018-07-02 2024-01-17 Beijing Bytedance Network Technology Co., Ltd. Luts with intra prediction modes and intra mode prediction from non-adjacent blocks
TWI820211B (zh) 2018-09-12 2023-11-01 大陸商北京字節跳動網絡技術有限公司 取決於總數減去k的開始檢查hmvp候選的條件
WO2020084474A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Gradient computation in bi-directional optical flow
EP3857879A4 (en) * 2018-11-12 2022-03-16 Beijing Bytedance Network Technology Co., Ltd. SIMPLIFICATION OF COMBINED INTER-INTRA PREDICTION
JP7241870B2 (ja) 2018-11-20 2023-03-17 北京字節跳動網絡技術有限公司 部分的な位置に基づく差分計算
WO2020103944A1 (en) * 2018-11-22 2020-05-28 Beijing Bytedance Network Technology Co., Ltd. Sub-block based motion candidate selection and signaling
US10958900B2 (en) * 2018-12-06 2021-03-23 Qualcomm Incorporated Derivation of spatial-temporal motion vectors prediction in video coding
WO2020116242A1 (ja) * 2018-12-07 2020-06-11 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
CN113302936B (zh) * 2019-01-07 2024-03-19 北京字节跳动网络技术有限公司 用于具有MVD的Merge的控制方法
EP3888355A4 (en) 2019-01-10 2022-03-23 Beijing Bytedance Network Technology Co., Ltd. LOOKUP TABLE UPDATE INVOCATION
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
WO2020147772A1 (en) 2019-01-16 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Motion candidates derivation
BR112021014857A2 (pt) * 2019-02-01 2021-10-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador e codificador de vídeo e seus métodos, aparelho de composição de vídeo, composição de vídeo e fluxo de dados
US11122260B2 (en) * 2019-02-22 2021-09-14 Mediatek Inc. Method and apparatus of Merge list generation for Intra Block Copy mode
EP3915259A4 (en) 2019-03-06 2022-03-30 Beijing Bytedance Network Technology Co., Ltd. USE OF A CONVERTED UNIVERSITY PREDICTION CANDIDATE
WO2020182148A1 (en) * 2019-03-11 2020-09-17 Beijing Bytedance Network Technology Co., Ltd. Pair-wise motion candidate construction based on designated candidates
CN113615193A (zh) 2019-03-22 2021-11-05 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
WO2020244568A1 (en) * 2019-06-04 2020-12-10 Beijing Bytedance Network Technology Co., Ltd. Motion candidate list with geometric partition mode coding
CN114208184A (zh) 2019-08-13 2022-03-18 北京字节跳动网络技术有限公司 基于子块的帧间预测中的运动精度
CN114762330A (zh) 2019-09-22 2022-07-15 北京字节跳动网络技术有限公司 视频的子图片编码和解码

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160191939A1 (en) * 2011-06-24 2016-06-30 Mediatek Inc. Method and Apparatus for Removing Redundancy in Motion Vector Predictors
US20170006302A1 (en) * 2014-03-19 2017-01-05 Kt Corporation Method and apparatus for processing multiview video signals

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2723076A4 (en) * 2011-06-14 2015-03-04 Samsung Electronics Co Ltd METHOD AND APPARATUS FOR ENCODING MOVEMENT INFORMATION, AND METHOD AND APPARATUS FOR DECODING THE SAME
US9313494B2 (en) * 2011-06-20 2016-04-12 Qualcomm Incorporated Parallelization friendly merge candidates for video coding
CN108184121A (zh) 2011-12-05 2018-06-19 Lg 电子株式会社 帧内预测的方法和设备
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
US9762927B2 (en) * 2013-09-26 2017-09-12 Qualcomm Incorporated Sub-prediction unit (PU) based temporal motion vector prediction in HEVC and sub-PU design in 3D-HEVC
US10582209B2 (en) * 2017-03-30 2020-03-03 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-PU TMVP) for video coding
US20180310017A1 (en) * 2017-04-21 2018-10-25 Mediatek Inc. Sub-prediction unit temporal motion vector prediction (sub-pu tmvp) for video coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160191939A1 (en) * 2011-06-24 2016-06-30 Mediatek Inc. Method and Apparatus for Removing Redundancy in Motion Vector Predictors
US20170006302A1 (en) * 2014-03-19 2017-01-05 Kt Corporation Method and apparatus for processing multiview video signals

Also Published As

Publication number Publication date
TW201904291A (zh) 2019-01-16
US20180352223A1 (en) 2018-12-06
WO2018219310A1 (en) 2018-12-06
US10523934B2 (en) 2019-12-31

Similar Documents

Publication Publication Date Title
TWI688261B (zh) 用於簡化的合併候選發信的編解碼方法及裝置
TWI669951B (zh) 多重假設之合併模式
TWI734100B (zh) 視訊處理方法及裝置
TWI711300B (zh) 照度補償方法及相應之視訊處理裝置
TWI749467B (zh) 幀內塊複製合併列表簡化
US10666968B2 (en) Method of block vector prediction for intra block copy mode coding
US11245922B2 (en) Shared candidate list
US20230209048A1 (en) Intra Prediction For Multi-Hypothesis
KR20200113259A (ko) 하드웨어 친화적으로 제약된 모션 벡터 개선
US11451810B2 (en) Merge candidate reorder based on global motion vector
WO2019161798A1 (en) Intelligent mode assignment in video coding
TWI814540B (zh) 視訊編解碼方法及裝置
US11805245B2 (en) Latency reduction for reordering prediction candidates
WO2023020444A1 (en) Candidate reordering for merge mode with motion vector difference
WO2023208063A1 (en) Linear model derivation for cross-component prediction by multiple reference lines
TW202415066A (zh) 多假設預測編解碼
WO2023193769A1 (en) Implicit multi-pass decoder-side motion vector refinement
TW202349957A (zh) 基於模板的幀內模式推導和預測