TWI754199B - 具有應用的塊設定以及運動儲存設定的三角形預測 - Google Patents
具有應用的塊設定以及運動儲存設定的三角形預測 Download PDFInfo
- Publication number
- TWI754199B TWI754199B TW108147917A TW108147917A TWI754199B TW I754199 B TWI754199 B TW I754199B TW 108147917 A TW108147917 A TW 108147917A TW 108147917 A TW108147917 A TW 108147917A TW I754199 B TWI754199 B TW I754199B
- Authority
- TW
- Taiwan
- Prior art keywords
- prediction
- motion
- motion information
- current block
- block
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Electrophonic Musical Instruments (AREA)
- Advance Control (AREA)
Abstract
一視訊編解碼器從將被編碼或解碼為一視訊的一當前圖像的一當前塊的一像素塊的位元流接收資料。一旦決定該當前塊的一組應用的塊設定滿足一閾值條件,該視訊編解碼器基於一第一運動資訊生成一第一預測用於該當前塊的一第一預測單元。該視訊編解碼器基於一第二運動資訊生成一第二預測用於該當前塊的一第二預測單元。該視訊編解碼器基於該第一以及第二運動資訊生成一第三預測用於一重疊預測區域,該重疊預測區域基於該第一預測單元與該第二預測單元之間的一分割來定義。藉由使用該第一、第二以及第三預測,該視訊編解碼器編碼或解碼該當前塊。
Description
本發明通常涉及視訊處理。更具體地,本發明涉及由預測對像素塊進行編碼。
除非在此另有指示,本節所描述的方案不是下文列出申請專利範圍的先前技術,並且不藉由插入本節而被承認為先前技術。
高效視訊編解碼(High-Efficiency Video Coing,HEVC)是由視訊編解碼聯合協作小組(JCT-VC)開發的國際視訊編解碼標準。HEVC是基於混合塊的運動補償類DCT變換編解碼架構。用於壓縮的基礎單元是2N×2N的正方形塊,術語稱為編碼單元(CU),以及每一CU可以被遞迴地拆分成四個較小的CU直到達到預定最小尺寸。每一CU包含一個或多個預測單元(PU)。
為了實現HEVC中混合編解碼架構的最佳編解碼效率,每一PU有兩種預測模式,其是幀內預測以及幀間預測。對於幀內預測模式,空間相鄰重構像素可以用於生成定向預測。在HEVC中有至多35個方向。對於幀間預測模式,時間重構參考幀(frame)可以用於生成運動補償預測。有三種不同的模式,包括跳過、合併以及幀間高級運動向量預測(AMVP)模式。
當PU在幀間AMVP模式中編解碼時,用所傳輸的運動向量差異(MVD)執行運動補償預測,MVD可以與運動向量預測子(MVP)一起使用來導出運動向量(MV)。為了在幀間AMVP模式中決定MVP,高級運動向量預測(AMVP)方案用於在包括兩個空間MVP以及一個時間MVP的AMVP候選集合中選擇一運動向量預測子。因此,在AMVP模式中,MVP的MVP索引以及對應的MVD需要被編碼以及傳輸。此外,還應當編碼以及發送用於指定作為列表0(L0)以及列表1(L1)的雙向預測以及單向預測中的預測方向的幀間預測方向以及每個列表的參考幀索引。
當PU在跳過或合併模式中編碼時,除了所選候選的合併索引沒有運動資訊被傳輸。即因為跳過以及合併模式利用運動推斷方法(MV=MVP+MVD,其中MVD是0)來從空間相鄰塊(空間候選)或位於同位元圖像中的時間塊(時間候選)獲得運動資訊,其中同位元圖像時列表0或列表1中的第一參考圖像,其在條帶標頭(slice header)中被發信。在跳過PU的情況下,參考訊號也被省略。為了決定跳過以及合併模式的合併索引,合併方案用於在包含四個空間MVP以及一個時間MVP的合併候選集合中選擇一運動向量預測子。
後文的概述僅是說明性的以及不旨在以任何方式進行限制。即,後續概述被提供來介紹本文所描述的新穎以及非顯而易見技術的概念、亮點、益處以及優勢。在細節描述中進一步描述選擇的而不是所有實施方式。因此,後續概述不旨在識別所要求保護主題的基本特徵,也不旨在用於決定所要求保護主題的範圍。
本發明的一些實施例提供了實施包括三角形預測單元模式(TPM)的目標合併模式。視訊編解碼器從像素塊將被編碼或解碼為一視訊的一當前圖像的一當前塊的位元流中接收資料。一旦決定該當前塊的一組應用的塊設定滿足一閾值條件,該視訊編解碼器基於一第一運動資訊計算/生成一第一預測用於該當前塊的一第一預測單元。該視訊編解碼器基於一第二運動資訊計算/生成一第二預測用於該當前塊的一第二預測單元。該視訊編解碼器基於該第一以及第二運動資訊生成一第三預測用於一重疊預測區域,該重疊預測區域基於該第一預測單元與該第二預測單元之間的一分割來定義。該視訊編解碼器藉由使用該第一、第二以及第三預測編碼或解碼該當前塊。劃分該當前塊的分割時從該當前塊的左上角到該當前塊的右下角,該目標合併模式稱為TPM。劃分該當前塊的分割可以是由一角度與/或一與該當前塊的中心的距離表示的一直線。
在一些實施例中,當該當前塊的一寬度、一高度、一面積或一長邊與短邊的比率大於(或小於)一閾值,該組應用的塊設定滿足該閾值條件。在一些實施例中,為位於該重疊預測區域的一邊界網格存儲的一邊界運動向量將用於編碼後續像素塊。該邊界運動向量基於該第一運動向量與/或第二運動向量來決定。
在後續細節描述中,以示例的方式給出了許多具體細節以提供相關教導的透徹理解。基於本文所描述教導的任何變體、衍生與/或拓展都在本發明的保護範圍內。在一些示例中,與本文所公開的一個或多個示例性實施方式相關的公知的方法、進程、元件與或電路可以在沒有細節的情況下在相對高的層級進行描述,以避免不必要地混淆本發明教導的方面。
目標合併模式
本發明的一些實施例提供了方法用於改善包括三角形預測單元模式(TPM,或三角形預測)的目標合併模式。三角形預測單元模式引入了三角形分割用於運動補償預測。第1圖概念地示出了由三角形預測單元模式編碼的CU 100,其是目標合併模式的實施例。如圖所示,藉由劃分CU 100的直線或對角線的分割,CU 100在對角線或反對角線被拆分成兩個三角形預測單元110(PU1)以及120(PU2)。在一些其他實施例中,由直線劃分的目標合併模式中編碼的CU 100中的兩個預測單元可以不是三角形的形狀,其不應該限於本發明。對於目標合併模式,藉由使用從包含雙向預測候選或單向預測候選的候選列表來導出的其自身的單向預測運動向量以及參考幀索引來對CU中的每一預測單元(對於TPM,三角形預測單元)進行幀間預測。在第1圖的示例中,三角形預測單元110使用第一運動資訊(運動1)來幀間預測的,該第一運動資訊包含運動向量Mv1以及對應的參考索引,以及三角形預測單元120使用第二運動資訊(運動2)來幀間預測的,該第二運動資訊包含運動向量Mv2以及對應的參考索引。在一些實施例中,藉由該第一以及第二運動資訊的幀間預測的加權和,對位於兩個三角形分割之間的對角線邊界的重疊的預測區域130進行幀間預測。因此,該重疊預測區域130也可以被稱為加權區域或邊界區域。
第2圖示出了用於生成合併模式的候選列表的空間參考塊以及時間參考塊。如圖所示,目標合併模式中的候選列表從五個空間相鄰塊(1到5)與/或兩個時間同位塊(6到7)來導出。
在預測每一預測單元後,適應性加權進程被應用於兩個預測單元之間的邊緣來導出整個CU的最終預測。在預測三角形預測單元後對對角線邊緣執行適應性加權進程。然後,變換以及量化進程被應用於整個CU。注意到,這一模式僅被應用於跳過與/或合併模式。
第3圖示出了將適應性加權進程應用於兩個三角形預測單元110以及120之間對角線邊界(即,重疊預測區域130)。
兩個加權因數組被列出如下:
第1加權因數組{7/8,6/8,4/8,2/8,1/8}以及{7/8,4/8,1/8}分別用於亮度以及色度樣本。
第2加權因數組{7/8,6/8,5/8,4/8,3/8,2/8,1/8}以及{6/8,4/8,2/8}分別用於亮度以及色度樣本。
在一些實施例中,基於兩個三角形預測單元的運動向量的比較選擇一個加權因數組。當兩個三角形預測單元的參考圖像彼此不同或者它們的運動向量差異大於16像素時,使用第2加權因數組。否則,使用第1加權因數組。在另一個實施例中,僅一個加權因數組被使用。在另一個實施例中,根據樣本與分割直線間的距離導出每一樣本的加權因數。第3圖是的示例示出了將第1加權因數組應用於沿著三角形預測單元110與三角形預測單元120之間的對角線邊界的加權區域(或重疊預測區域)130。
應用的塊設定
在一些實施例中,目標合併模式僅被應用於跳過或合併模式中的CU。此外,CU的塊尺寸不能小於8×8。對於跳過或合併模式中編碼的CU,CU級旗標被發信來指示目標合併模式是否被應用或者不用於當前CU。當目標合併模式被應用於CU時,包含指示將CU拆分成兩個預測單元的方向的索引與/或指示兩個預測單元的運動候選的兩個索引的語法被發信。
在一些實施例中,應用的塊設定用於改善性能以及減少三角形預測的複雜度。在一些實施例中,應用的塊設定可以藉由塊寬度與/或塊高度來隱式導出或者藉由在CU級、CTU級、條帶級、圖塊(tile)級、圖塊組級、SPS級、PPS級或其任何組合發信的一旗標來顯示指示。
應用的塊設定指的是如塊寬度、塊高度與/或塊面積的設定,用於決定是否啟用該目標合併模式用於如塊100的塊。如果啟用三角形預測,包含CU級旗標以及包含一些索引(在CU級旗標等於1的情況下被發信)的語法的三角形預測語法被傳輸。否則,語法被旁路以及CU級旗標被推斷為0。
在一些實施例中,當塊面積大於或小於閾值時,目標合併模式被啟用用於塊。在一些實施例中,塊的面積可以使用塊寬度、高度或與塊面積相關的任何其他參數來表示。在一些實施例中,當塊寬度與/或高度大於或小於閾值時,目標合併模式被啟用用於該塊。該閾值可以固定為4、8、16、32、64、128、256、512、1024、2048、4096或標準中指定的最大變換尺寸等。閾值還可以根據預定規則變化。例如,預定規則可以指定索引被發信來選擇該閾值。該索引可以在CU級、CTU級、切片級、圖塊級、圖塊組級、SPS級、PPS級或其任何組合上被發信。對於另一個示例,預定規則可以指定閾值時根據圖像寬度、圖像高度、圖像面積、時間層或圖像紋理隱式導出的。
在一些實施例中,當塊的長邊與短邊的比率小於或大於閾值時(比率標記為R,R=長邊/短邊),目標合併模式被啟用用於該塊。閾值可以固定為1、2、3、4、5、6、7、8等。閾值也可以根據預定規則變化。例如,預定規則可以指定索引被發信來選擇該閾值。索引可以在CU級、CTU級、條帶級、圖塊級、圖塊組級、SPS級、PPS級或其任何組合來發信。對於另一個示例,預定規則可以指定閾值基於圖像寬度、圖像高度、圖像面積、時間層或圖像紋理隱式導出。上述的任何組合可以用於指定啟用三角形預測用於塊的條件。
運動向量儲存設定
當由目標合併模式(如,TPM)編碼CU時,為了使運動資訊對編碼後續CU(如,用於構造合併模式候選列表)可用,用於編碼兩個三角形預測單元(如,三角形預測單元110以及三角形預測單元120)以及重疊預測區域(如,加權區域130)的運動資訊被存儲。在一些實施例中,CU被拆分成4x4網格,其覆蓋兩個三角形預測單元110與120以及重疊預測區域130。對於每一4x4網格,基於CU中4x4網格的位置,任一單向預測或雙向預測運動資訊被存儲。在一些實施例中,藉由一組運動向量儲存設定來決定為每一4x4網格保留的運動資訊。
在一些實施例中,MV儲存設定可以由塊寬度與/或塊高度隱式導出或者由在CU級、CTU級、條帶級、圖塊級、圖塊組級、SPS級、PPS級或以上任何組合上發信的旗標來顯示指示。在一些實施例中,MV儲存設定以及應用的塊設定都用於改善三角形預測的性能。
第4圖示出了目標合併模式的運動向量的儲存。如圖所述,CU 100包括16個4x4網格401-416。如圖所述,單向預測運動資訊(運動1或運動2)被儲存用於位於非加權區域(重疊區域300之外)的4x4網格。在一個示例中,運動1被存儲用於每一4x4網格402 、403、404、407、408、412。運動2被存儲用於每一4x4網格405、409、410、413、414、415。
另一方面,雙向預測/單向預測運動資訊被拆分以及被存儲用於位於重疊預測區域130的每一4x4網格401、406、411、416。(位於重疊預測區域130的網格可以被稱為邊界網格。為每一邊界網格導出以及存儲的每一單向預測/雙向預測資訊可以被稱為邊界運動向量)。根據基於運動1以及運動2定義的規則(即,MV儲存設定),從運動1與/或運動2導出該雙向/單向預測運動資訊。第5a-d圖示出了導出雙向預測/單向預測運動資訊用於目標合併模式的儲存的不同情境。圖式示出了藉由使用TPM編碼的CU 100,三角形預測單元110使用運動1進行幀間預測以及三角形預測單元120使用運動2進行幀間預測。圖式也示出了具有不同圖像次序計數(POC)的一系列視訊圖像,包括POC=0的圖像500,POC等於4的圖像504,POC等於8的圖像508以及POC等於16的圖像516。CU 100在圖像504中(因此圖像504是當前圖像以及POC=4是當前POC),因此對於CU,圖像500在L0中以及圖像508以及516在L1中。
第5a圖示出Mv1以及Mv2是具有不同列表(L0或L1)的運動向量的情景。如圖所示,Mv1參考L0中圖像500中的像素以及Mv2參考L1中圖像508的像素。在一些實施例中,當基於不同列表中的Mv1以及Mv2導出雙向運動向量時,運動1以及運動2可以被組合來形成將被存儲用於加權區域130中4x4網格的雙向預測運動資訊。
第5b圖示出了運動1以及運動2具有相同參考圖像(索引)的情景。如圖所示,Mv1以及Mv2都參考L1中圖像516中的像素。在一些實施例中,當Mv1以及Mv2都來自相同的L0(或L1)以及運動1以及運動2具有相同的參考圖像(索引),在一些實施例中僅運動1或運動2被存儲用於加權區域130中的4x4網格。
第5c-d圖示出了Mv1以及Mv2來自相同的L0(或L1)但具有不同參考圖像(索引)的情景。在第5c圖的示例中,Mv1參考圖像508中的像素以及Mv2參考圖像516中的像素。在第5d圖的示例中,Mv1參考圖像516的像素以及Mv2參考圖像508中的像素。圖像508以及516都在L1中。在一些實施例中,Mv2被縮放到運動1的圖像(索引)以及已縮放的Mv2與Mv1組合來形成將被存儲用於位於加權區域130中4x4網格的運動資訊。另一方面,Mv1被縮放到運動2的圖像(索引)以及已縮放的Mv1與Mv2組合來形成將被存儲用於位於加權區域130中4x4網格的運動資訊。
在一些其他實施例中,當運動1以及運動2具有相同參考列表(列表0或列表1)時,單向預測運動向量(三角形預測單元110的運動1或者三角形預測單元120的運動2)被存儲用於位於加權區域130中的4x4網格。在一些實施例中,當運動1以及運動2具有相同參考列表(列表0或列表1)時,運動1被選擇為被存儲用於位於加權區域130的每一4x4網格的單向預測運動資訊。在一些實施例中,當運動1以及運動2具有相同參考列表(列表0或列表1)時,運動2被選擇為被存儲用於位於加權區域130的每一4x4網格的單向運動資訊。
在一些實施例中,根據一預定規則,從運動1或運動2中選擇被存儲用於位於加權區域130的每一4x4網格的單向預測資訊。預定規則可以與由運動1以及運動2參考的(參考圖像的)POC有關(或者基於其定義)。例如,如果當前POC與由運動資訊運動i(其中i=1或2)參考的POC之間的距離小於當前POC與由運動j(其中j=1或2並且j不等於i)參考的POC之間距離,Mvi被選為位於加權區域中每一4x4網格的單向預測運動向量。在第5c圖的示例中,因為當前POC(POC=4)與由運動1參考的圖像的POC(POC=8)之間的距離小於當前POC與由運動2參考的圖像的POC(POC=16)之間的距離,Mv1被選為將被存儲用於位於重疊預測區域130中每一4x4網格的單向預測運動向量。在第5d圖的示例中,因為當前POC(POC=4)與由運動2參考的圖像的POC(POC=8)之間的距離小於當前POC與由運動1參考的圖像的POC(POC=16)之間的距離,運動2被選為將被存儲用於位於重疊預測區域130中每一4x4網格中的單向預測運動資訊。
在一些實施例中,藉由用預定權重對運動1以及運動2求平均,從運動1以及運動2生成被存儲用於位於加權區域中每一4x4網格的單向預測運動資訊。如果運動1與運動2的參考索引是相同的(如,第5b圖的示例)以及在相同的參考列表中,Mv1以及Mv2的運動向量值被直接求平均來生成單向預測運動向量,其將被存儲用於加權區域130中的每一4x4網格。否則(如,第5c圖以及第5d圖中的示例),Mv1以及Mv2求平均的差異被用於生成單向預測運動向量,其將被存儲用於加權區域130中的每一4x4網格。例如,在一些實施例中,Mv1以及Mv2的運動向量值用選自Mv1或Mv2的一個參考索引直接求平均,而不管不同的參考索引。在一些實施例中,Mv1以及Mv2被縮放到相同的POC,以及Mv1以及Mv2的(縮放的)運動向量值被平均,以及選擇來自任一Mv1或Mv2的一個參考索引。
當平均Mv1以及Mv2的運動向量值時,權重的不同差異可以被使用。一種是對Mv1以及Mv2應用相等的權重。另一個是基於4x4網格的位置改變權重。對於應用Mvi(其中i=1或2)的位置附近的4x4網格,Mvi的權重大於Mvj的權重,其中j=1或2並且j不同於i。(對於應用Mv1的位置附近的4x4網格,Mv1的權重大於Mv2的權重。相反,對於應用Mv2的位置附近的4x4網格,Mv2的權重大於Mv1的權重)。
示例性視訊編碼器
第6圖示出了能夠實施目標合併模式(包括三角形預測單元模式)的示例性視訊編碼器600。如圖所示,視訊編碼器600從視訊源605接收輸入視訊訊號以及將該訊號編碼進位元流695。視訊編碼器600具有許多元件或模組用於編碼來自視訊源605的訊號,至少包括從變換模組610、量化模組611、逆量化模組614、逆變換模組615、幀內圖像估計模組620、幀內預測模組625、運動補償模組630、運動估計模組635、環路濾波器645、重構圖像緩衝器650、MV緩衝器665以及MV預測模組675以及熵編碼器690選擇的一些元件。運動補償模組630以及運動估計模組635是幀間預測模組640的一部分。
在一些實施例中,模組610-690是由計算裝置或電子裝置的一個或多個處理單元(如,處理器)執行的軟體指令的模組。在一些實施例中,模組610-690是由電子裝置的一個或多個積體電路(IC)實施的硬體電路的模組。雖然模組610-690被示出為分離的模組,一些模組可以被組合到單個模組。
視訊源605提供未經壓縮地表示每一視訊幀的像素資料的原始視訊訊號。減法器608計算視訊源605的原始視訊像素資料與來自運動補償模組630或幀內預測模組625的已預測像素資料613之間的差異。變換模組610將差異(或殘差像素資料或殘差訊號609)轉換成變換係數(如,藉由執行離散余弦變換,或DCT)。量化模組611將變換係數616量化成已量化資料(或已量化係數)612,其由熵編碼器690編碼進位元流695。
逆量化模組614解量化已量化的資料(或已量化係數)612來獲得變換係數,以及該逆變換模組615對變換係數執行逆變換來生成重構殘差619。重構殘差619與已預測像素資料613相加來生成重構像素資料617。在一些實施例中,重構像素資料617被暫時存儲在線性緩衝器(未示出)用於幀內圖像預測以及空間MV預測。重構像素由環路濾波器645濾波以及被存儲於重構圖像緩衝器650中。在一些實施例中,重構圖像緩衝器650是視訊編碼器600外部的儲
存區。在一些實施例中,重構圖像緩衝器650是視訊編碼器600內部的儲存區。
幀內圖像估計模組620基於重構像素資料617執行幀內預測來生成幀內預測資料。幀內預測資料被提供給熵編碼器690來被編碼進位元流695。幀內預測資料也由幀內預測模組625使用來生成已預測像素資料613。
運動估計模組635藉由生成MV執行幀間預測來參考存儲於重構圖像緩衝器650中的先前解碼幀的像素資料。這些MV被提供到運動補償模組630來生成已預測像素資料。
代替在位元流中編碼完整的實際MV,視訊編碼器600使用MV預測來生成已預測MV,以及用於運動補償的MV與已預測MV之間的差異被編碼為殘差運動資料以及被編碼到位元流695中。
MV預測模組675基於參考MV生成已預測MV,參考MV被生成用於編碼先前視訊幀,即,運動補償MV用於執行運動補償。MV預測模組675從來自MV緩衝器665的先前視訊幀檢索參考MV。視訊編碼器600將為當前視訊幀生成的MV儲存在MV緩衝器665中作為用於生成已預測MV的參考MV。
MV預測模組675使用參考MV來創造已預測MV。已預測MV可以由空間MV預測或時間MV預測來計算。已預測MV與當前幀(殘差運動資料)的運動補償MV(MC MV)之間的差異被熵編碼器690編碼進位元流695。
熵編碼器690藉由使用如上下文自我調整二進位算術編碼(CABAC)或霍夫曼編碼的熵編碼技術將各種參數以及資料編碼進位元流695。熵編碼器690將各種標頭元素、旗標,連同已量化變化係數612以及殘差運動資料作為語法元素編碼到位元流695中。位元流695反過來被存儲在儲存裝置或通過如網路的通信媒介被傳輸到解碼器。
環路濾波器645對重構像素資料617執行濾波或光滑操作來減少
編碼的偽影(artifact),特別是在像素塊的邊界。在一些實施例中,所執行的濾波操作包括樣本自我調整偏移(SAO)。在一些實施例中,濾波操作包括適應性環路濾波(ALF)。
第7圖示出了實施目標合併模式(包括三角形預測單元模式)的視訊編碼器600。如圖所示,視訊編碼器600實施組合的預測模組710,其生成已預測像素資料613。組合的預測模組710可以從運動補償模組630以及第二運動補償模組730接收幀間預測值。
MV緩衝器665提供合併候選到運動補償模組630以及730。MV緩衝器665存儲用於編碼當前塊以供後續塊使用的運動資訊以及模式方向。
MV儲存邏輯740決定或計算將被存儲於MV緩衝器665中的運動資訊。例如,當TPM被啟用時,MV儲存邏輯可以決定是否存儲運動1(PU1的運動向量以及參考索引)或運動2(PU2的運動向量以及參考索引)或者運動1與運動2的組合(Mv1與mv2的平均以及導出或預定的參考索引)。MV儲存邏輯740可以將當前CU拆分成(如,4x4)網格以及基於網格的位置來計算要為每一網格存儲的運動資訊。例如,對於位於重疊預測區域130的網格,MV儲存邏輯740存儲基於運動1與/或運動2決定的邊界運動向量。基於預定規則,這種邊界運動資訊可以被選擇為運動1或運動2,或者基於預定規則,可以被計算為運動1與運動2的組合,具有Mv1或Mv2的平均以及參考索引。這種預定規則可以基於它們各自的POC、為其計算運動資訊的網格的位置等來加權Mv1以及Mv2。
編碼模式(或工具)控制模組700控制運動補償模組630以及第二運動補償模組730的操作。編碼模式控制模組700可以基於兩個預測(如TPM)啟用運動補償模組630以及第二運動補償模組730來實施具有多假設預測的目標合併模式。編碼模式控制模組700決定啟用與/或禁用哪一編碼模式來編碼該
當前塊。該編碼模式控制模組700也決定使用哪一合併候選用於該當前塊的每一網格或分割。基於一組應用的塊設定720(如,塊的寬度、高度與或面積),編碼模式可以決定啟用或禁用哪一編碼模式。編碼模式控制700可以生成或發信語法元素790到熵編碼器690來指示哪一目標合併模式被啟用與否。當應用的塊設定720未能滿足某些標準或閾值時,語法元素790可以被旁路。當語法元素790被發信以及目標合併模式被啟用時,更多語法元素可以被發信,包括指示方向來將CU拆分成兩個預測單元的索引與/或指示兩個預測單元的運動候選的兩個索引。
第8圖概念地示出了用於在編碼器執行目標合併模式(包括三角形預測模式)的進程800。在一些實施例中,藉由執行存儲於電腦可讀媒介中的指令,實施視訊編碼器600的計算裝置的一個或多個處理單元(如,處理器)執行進程800。在一些實施例中,實施視訊編碼器600的電子裝置執行進程800。
視訊編碼器接收(在塊810)與一視訊中一當前圖像的一當前塊相關的待編碼資料。視訊編碼器決定(在塊820)該當前塊的一組應用的塊設定是否滿足閾值條件。該組應用的塊設定可以包括該當前塊的寬度、高度、面積或(長邊與短邊的)比率。在一些實施例中,當該當前塊的寬度、高度、面積或長邊與短邊的比率大於閾值時,該組應用的塊設定滿足閾值條件。在一些實施例中,當該當前塊的寬度、高度、面積或長邊與短邊的比小於閾值時,該組應用的塊設定滿足閾值條件。當該組應用的塊設定滿足閾值條件時,進程800前進到830來藉由使用三角形預測編碼當前塊。當該組應用的塊設定不滿足該閾值條件時,進程前進到860在不使用三角形預測的情況下編碼當前塊。
視訊編碼器基於第一運動資訊(稱為第一參考圖像)計算/生成(在塊830)第一預測用於該當前塊的第一預測單元。該視訊編碼器也基於第二運動資訊(稱為第二參考圖像)計算/生成第二預測用於該當前塊的第二預測單元。該
視訊編碼器可以獨立地與/或並行地計算/生成該第一以及第二預測。在一些實施例中,該第一以及第二預測單元的分割沿著劃分當前塊的一直線。在一些實施例中,該分割直線是連接該當前塊的兩個相對頂點的對角線。在一些實施例中,該直線可以是任何其他直線來將該當前塊分割成兩個預測單元,其在本發明中將不被限制。
該視訊編碼器基於該第一以及第二運動資訊計算/生成(在塊840)第三預測用於該重疊預測區域(如130),該重疊預測區域基於該第一預測單元與該第二預測單元之間的分割來定義。
視訊編碼器存儲(在塊845)運動資訊用於當前塊的每一網格。在一些實施例中,該當前塊被拆分成多個網格(如,4像素x4像素),以及為每一網格存儲的運動資訊由後續塊使用來執行如合併模式的操作。在一些實施例中,邊界運動資訊被存儲用於位於該當前塊的重疊預測區域的邊界網格。基於該第一運動資訊以及該第二運動資訊決定該邊界運動資訊。在一些實施例中,當第一參考圖像與該當前圖像之間的第一圖像次序(POC)差異小於第二參考圖像與該當前圖像之間的第二POC差異時,該第一運動資訊被選擇為邊界運動資訊,以及當該第二POC差異小於該第一POC差異時,該第二運動資訊被選擇為邊界運動資訊。在一些實施例中,藉由平均該第一運動向量以及該第二運動向量計算該邊界運動資訊。每一該第一以及第二運動資訊可以基於與該邊界網格相對於第一網格與第二網格的空間位置來加權,其中在該第一網格中應用第一運動資訊來計算該第一預測以及在該第二網格中應用第二運動資訊來計算該第二預測。在一些實施例中,當藉由平均該第一以及第二運動向量計算該邊界運動資訊時,基於該第一參考圖像的POC、該第二參考圖像的POC以及當前圖像的POC來縮放至少一個第一以及第二運動向量。
藉由使用該第一、第二以及第三預測,該視訊編碼器將該當前圖
像編碼(在塊850)進位元流。
示例性視訊解碼器
第9圖示出了能夠實施目標合併模式(包括三角形預測單元模式)的示例視訊解碼器900。如圖所示,視訊解碼器900是接收位元流995以及將該位元流的內容解碼成視訊幀的像素資料用於顯示的圖像解碼或視訊解碼電路。視訊解碼器900具有用於解碼位元流995的許多元件或模組,包括從逆量化模組905、逆變換模組910、幀內預測模組925、運動補償模組930、環路濾波器945、解碼圖像緩衝器950、MV緩衝器965、MV預測模組975以及解析器990中選擇的一些元件。該運動補償模組930是幀間預測模組940的部分。
在一些實施例中,模組910-990是由計算裝置的一個或多個處理單元(如處理器)執行的軟體指令的模組。在一些實施例中,模組910-990是由電子裝置的一個或多個IC實施的硬體電路的模組。雖然模組910-990被示出為分離的模組,一些模組可以被組合到單個模組中。
解析器990(或熵解碼器)接收位元流995以及根據由視訊編碼或圖像編碼標準定義的語法執行初始解析。所解析的語法元素包括各種標頭元素、旗標以及已量化資料(或已量化係數)912。該解析器990藉由使用如上下文自我調整二進位算術編碼(CABAC)或霍夫曼編碼的熵編碼技術解析出各種語法元素。
逆量化模組905解量化該已量化的資料(或已量化係數)912來獲得變換係數,以及該逆變換模組910對該變換係數916執行逆變換來生成重構殘差訊號919。該重構殘差訊號919與來自幀內預測模組925或者運動補償模組930的已預測像素資料913相加來生成已解碼像素資料917。已解碼像素資料由環路濾波器945來濾波以及被存儲在圖像緩衝器950中。在一些實施例中,該解碼圖像緩衝器950是視訊解碼器900外部的儲存區。在一些實施例中,該解
碼圖像緩衝器950是視訊解碼器內部的儲存區。
幀內預測模組925從位元流995接收幀內預測資料並根據其,從存儲於解碼圖像緩衝器950中的已解碼像素資料917生成已預測像素資料。在一些實施例中,已解碼像素資料917也被存儲在線性緩衝器(未示出)中用於幀內圖像預測以及空間MV預測。
在一些實施例中,解碼圖像緩衝器950的內容用於顯示。顯示裝置955檢索解碼圖像緩衝器950的內容用於顯示,或者檢索解碼圖像緩衝器的內容到顯示緩衝器。在一些實施例中,該顯示裝置通過像素傳輸從解碼圖像緩衝器950接收像素值。
運動補償模組930根據運動補償MV(MC MV)從存儲在解碼圖像緩衝器950中的已解碼像素資料917生成已預測像素資料913。藉由將從位元流995接收的殘差運動資料與從MV預測模組975接收的已預測MV相加,解碼這些運動補償MV。
MV預測模組975基於參考MV生成已預測MV,參考MV被生成用於解碼先前視訊幀,如,運動補償MV用於執行運動補償。MV預測模組975從MV緩衝器965檢索先前視訊幀的參考MV。視訊解碼器900將運動補償MV存儲在MV緩衝器965中作為用於生成已預測MV的參考MV,該運動補償MV被生成用於解碼當前視訊幀。
環路濾波器945對已解碼像素資料917執行濾波或光滑操作來減少編解碼的偽影,尤其是在像素塊的邊界。在一些實施例中,所執行的濾波操作包括樣本自我調整偏移(SAO)。在一些實施例中,濾波操作包括適應性環路濾波(ALF)。
第10圖示出了實施目標合併模式(包括三角形預測單元模式)的視訊解碼器900的部分。如圖所示,視訊解碼器900實施組合預測模組1010,
其生成已預測像素資料913。該組合的預測模組1010可以從運動補償模組930以及第二運動補償模組1030接收幀間預測值。
MV緩衝器965提供合併候選到運動補償模組930以及1030。該MV緩衝器965存儲用於解碼當前塊來由後續塊使用的運動資訊以及模式方向。
MV儲存邏輯1040決定或計算將被存儲到MV緩衝器965中的運動資訊。例如,當TPM被啟用時,MV儲存邏輯可以決定是否存儲運動1(PU1的運動向量以及參考索引)或運動2(PU2的運動向量以及參考索引)或運動1與運動2的組合(MV1與Mv2的平均值以及導出或預定的參考索引)。MV儲存邏輯單元1040可以將當前CU拆分成(如,4x4)網格以及基於網格的位置計算為每一網格存儲的運動資訊。例如,對於位於重疊預測區域130的網格,MV儲存邏輯1040存儲邊界運動向量,其基於運動1與/或運動2來決定。這一邊界運動資訊基於預定規則可以被選擇為運動1或運動2,或者基於預定規則被計算為運動1與運動2的組合,其具有運動1與運動2的組合以及參考索引。這一預定規則可以基於各自的POC、為其計算運動資訊的網格的位置等來加權MV1以及mv2。
編碼模式(或工具)控制模組1000控制運動補償模組930以及第二運動補償模組1030的操作。編碼模式控制模組1000可以使能運動補償模組930以及第二運動補償模組1030來基於兩個幀間預測實施具有多假設預測的目標合併模式,如TPM。編碼模式控制模組1000決定啟用與/或禁用哪一編碼模式用於編碼當前塊。編碼模式控制模組1000也決定使用哪一合併候選來用於當前塊的每一網格或分割。編碼模式可以基於一組應用的塊設定1020(如,塊的寬度、高度與/或面積)來決定啟用或禁用哪一編碼模式。編碼模式控制1000可以從熵解碼器990接收語法元素1090。語法元素1090可以用於指示目標合併模式被啟用與否。當應用的塊設定1020未能滿足某些標準或閾值時,語法元素1090
可以被旁路。當語法元素1090被發信以及目標合併模式被啟用時,可以發信更多的語法元素,包括指示將CU拆分成兩個預測單元的方向的索引與/或指示該兩個預測單元的運動候選的兩個索引。
第11圖概念地示出了在解碼器執行目標合併模式(包括三角形預測模式)的進程1100。在一些實施例中,實施視訊解碼器900的計算裝置的一個或多個處理單元(如處理器)藉由執行存儲於電腦可讀媒介的指令來執行進程1100。在一些實施例中,實施視訊解碼器900的電子裝置執行進程1100。
視訊解碼器從位元流中接收(在塊1110)與一視訊的一當前圖像的一當前塊相關的待解碼資料。該視訊解碼器決定(在塊1120)該當前塊的一組應用的塊設定是否滿足閾值條件。該組應用的塊設定可以包括該當前塊的寬度、高度、面積或(長邊與短邊的)比率。在一些實施例中,當該當前塊的該寬度、該高度、高面積或該長邊與短邊的比率大於閾值時,該組應用的塊設定滿足閾值條件。在一些實施例中,當該當前塊的該寬度、該高度、該面積或者長邊與短邊的比率小於閾值時,該組應用的塊設定滿足該閾值條件。當該組應用的塊設定滿足該閾值條件時,該進程1100前進到1130來藉由使用三角形預測解碼該當前塊。當該當前塊的該組應用的塊設定不滿足該閾值條件時,該進程前進到1160在不使用三角形預測的情況下解碼該當前塊。
該視訊解碼器基於第一運動資訊(參考第一參考圖像)計算/生成(在塊1130)第一預測用於該當前塊的該第一預測單元。該視訊解碼器也基於第二運動資訊(參考第二參考圖像)計算/生成第二預測用於該當前塊的第二預測單元。該視訊解碼器可以獨立與/或並行地計算/生成該第一以及第二預測。在一些實施例中,該第一以及第二預測單元的分割是沿著劃分該當前塊的一直線。在一些實施例中,該分割直線是連接該當前塊的兩個相對頂點的一對角線。在一些其他實施例中,該直線可以是任何其他線來將該當前塊分割成兩個預測單
元,其在本發明中不被限制。
該視訊解碼器基於該第一以及第二運動資訊計算/生成(在塊1140)第三預測用於重疊預測區域(如,130),該重疊預測區域基於該第一預測單元與該第二預測單元之間的分割來定義。
該視訊解碼器存儲(在塊1145)運動資訊用於該當前塊的每一網格。在一些實施例中,該當前塊被拆分成多個網格(如,4像素x4像素),以及運動資訊被存儲用於每一網格來由後續塊使用以執行如合併模式的操作。在一些實施例中,邊界運動資訊被存儲用於位於該當前塊的重疊預測區域的一邊界網格。該邊界運動資訊基於該第一運動資訊以及第二運動資訊來決定。在一些實施例中,當該第一參考圖像與該當前圖像之間的第一圖像次序計數(POC)差異小於該第二參考圖像與該當前圖像之間的第二POC差異時,該第一運動資訊被選擇為該邊界運動資訊,以及當該第二POC差異小於該第一POC差異時,該第二運動資訊被選擇為該邊界運動資訊。在一些實施例中,藉由對該第一運動向量以及該第二運動向量求平均來計算該邊界運動資訊。每一第一以及第二運動資訊可以基於邊界網格相對於第一網格以及第二網格的空間位置來加權,其中在該第一網格中應用該第一運動資訊來計算該第一預測,在該第二網格中應用第二運動資訊來計算該第二預測。在一些實施例中,當藉由平均該第一以及第二運動向量計算該邊界運動資訊時,基於該第一參考圖像的POC、該第二參考圖像的POC以及當前圖像的POC縮放至少一個第一以及第二運動向量。
藉由使用該第一、第二以及第三預測來重構該當前塊,該視訊解碼器解碼(在塊1150)該當前塊。
示例性電子系統
許多上述描述的特徵以及應用被實施為軟體進程,其被指定為記錄在電腦可讀儲存媒介(也稱為電腦可讀媒介)上的指令的集合。當這些指令由一
個或多個計算或處理單元(如,一個或多個處理器、處理器的核心或其他處理單元)執行時,它們使得處理單元執行該指令中指示的動作。電腦可讀媒介的示例包括但不限於CD-ROM、快速驅動器、隨機存取記憶體(RAM)晶片、硬體驅動器、可擦可程式設計唯讀記憶體(EPROM)、電可擦可程式設計唯讀記憶體(EEPROM)等。電腦可讀媒介不包括無線地或在有線連接上傳播的載波以及電子訊號。
在本說明書中,術語“軟體”意在包括存在於唯讀記憶體中的韌體或者存儲在磁性儲存中的應用,其可以被讀入記憶體由處理器來處理。此外,在一些實施例中,多個軟體發明可以被實施為較大程式的子部分同時保留獨特的軟體發明。在一些實施例中,多個軟體發明也可以被實施為分離的程式。最後,本文描述的一起實施軟體發明的分離程式的任何組合在本發明的範圍內。在一些實施例中,當被安裝來操作一個或多個電子系統時,軟體程式定義實行以及執行軟體程式的操作的一個或多個特定機器實施方式。
第12圖概念地示出了實施本發明一些實施例的電子系統1200。電子系統1200可以是電腦(如,臺式電腦、個人電腦、平板電腦等等)、電話、PDA或電子裝置的任何其他組合。這種電子系統包括各種類型的電腦可讀媒體以及用於各種其他類型電腦可讀媒體的介面。電子系統1200包括匯流排1205、處理單元1210、影像處理單元(GPU)1215、系統記憶體1220、網路1225、唯讀記憶體1230、永久儲存裝置1235、輸入裝置1240以及輸出裝置1245。
匯流排1205共同表示通信地連接該電子系統1200許多內部裝置的所有系統、週邊設備以及晶片組匯流排。例如,匯流排1205通信地將處理單元1210與GPU 1215、唯讀記憶體1230、系統記憶體1220以及永久存儲裝置1235連接。
從這些各種存儲單元,該處理單元1210檢索要執行的指令以及
要處理的資料以執行本發明的進程。處理單元在不同實施例中可以是單個處理器或多核處理器。一些指令被傳輸到GPU 1215並由其執行。GPU 1215可以分流各種計算或者補足由處理單元1210提供的影像處理。
唯讀記憶體(ROM)1230存儲由處理單元1210以及電子系統的其他模組使用的靜態資料以及指令。另一方面,永久儲存裝置1235是讀寫儲存裝置。這一裝置是即使當電子系統關閉時存儲指令的非揮發性存儲單元。本發明的一些實施例使用大儲存裝置(如磁性或光碟以及其對應的硬碟驅動)作為永久儲存裝置1235。
其他實施例使用可移除儲存裝置(如軟碟、快速存儲裝置等以及其對應的硬碟驅動)作為永久儲存裝置。像永久儲存裝置1235,系統記憶體1220是讀寫儲存裝置。然而,不像儲存裝置1235,系統記憶體1220是揮發性讀寫記憶體,如隨機存取記憶體。系統記憶體1220存儲處理器在運行時使用的一些指令以及資料。在一些實施例中,根據本發明的進程被存儲在系統記憶體1220、永久儲存裝置1235與/或唯讀記憶體1230。例如,各種存儲單元包括用於根據一些實施例的處理多媒體視訊的指令。處理單元1210從這些各種存儲單元檢索要執行的指令以及要處理的資料以執行一些實施例的進程。
匯流排1205也連接到輸入以及輸出裝置1240以及1245。輸入裝置1240使使用者能夠與電子系統通信資訊以及選擇指令。輸入裝置1240包括字母鍵盤以及定位裝置(也稱為“游標控制裝置”)、攝像機(如網路攝像機)、麥克風或用於接收聲音指令的類似裝置。輸出裝置1245顯示由電子系統生成的圖像或者輸出資料。輸出裝置1245包括印表機以及顯示裝置,如陰極射線管(CRT)或液晶顯示幕(LCD)以及揚聲器或類似音訊輸出裝置。一些實施例包括如同時作為輸出以及輸出裝置的觸控式螢幕。
最終,如第12圖所示,匯流排1205也通過網路配接器(未示出)
將電子系統1200耦合到網路1225。以這種方式,電腦可以是電腦網路(如局域網(LAN))、廣域網路(WAN)、或內聯網、或網路的網路(如網際網路)的一部分。電子系統1200的任何或所有元件可以結合本發明來使用。
一些實施例包括電子元件,如微處理器、以機器可讀或電腦可取媒介(或者被稱為電腦可讀儲存媒體、機器可讀媒體或及其可讀儲存媒體)存儲電腦程式指令的儲存以及記憶體。這種電腦可讀媒介的一些示例包括RAM、ROM、唯讀光碟(CD-ROM)、可讀光碟(CD-R)、可再寫光碟(CD-RW)、唯讀數位通用光碟(如,DVD-RAM、雙層DVD-ROM)、各種各樣的可記錄/可再寫DVD(如,DVD-RAM、DVD-RW、DVD+RW等)、快速記憶體(如,SD卡、小型SD卡、微小SD卡等)、磁性與/或固態硬碟驅動器、唯讀以及可記錄藍光光碟、超密度光碟、任何其他光碟或磁性媒體以及軟碟。電腦可讀媒介可以存儲由至少一個處理單元可執行的電腦程式以及包括用於執行各種操作的指令的集合。電腦程式或電腦代碼的示例包括如由編譯器生成的機器代碼、以及包括由電腦、電子元件或使用注釋器的微處理器執行的較高層級代碼的檔。
雖然上述討論首先涉及執行軟體的微處理器或多個處理器,許多上述討論的特徵以及應用由一個或多個積體電路來執行,如專用積體電路(ASIC)或現場可程式閘陣列(FPGA)。在一些實施例中,這種積體電路執行存儲在其自身電路上的指令。此外,一些實施例執行存儲在可程式設計邏輯裝置(PLD)、ROM或RAM裝置中的軟體。
如本說明書以及本申請任何申請專利範圍中使用的,術語“計算器”、“伺服器”、“處理器”以及“記憶體”都指電子或其他技術裝置。這些術語排除人以及人群。出於說明的目的,術語顯示(display)或顯示(displaying)意味著在電子裝置上顯示。如本說明書以及本申請任何申請專利範圍中使用的,術語“電腦可讀媒介”、“電腦可讀媒體”以及“機器可讀媒介”都完全
限制於以電腦可讀取的形式存儲資訊的有形的物理物件。這些術語排除任何無線訊號、有線下載訊號以及任何其他短暫的訊號。
雖然本發明已經參考許多具體細節進行描述,本領域具有通常知識者將意識到本發明可以以在不背離本發明精神的情況下,以其他特定的形式來實施。此外,許多圖示(包括第8圖以及第11圖)概念地說明了進程。這些進程的特定操作可以不以所示出以及所描述的準確循序執行。特定操作可以不以一個連續的系列操作來執行,以及不同的特定操作可以在不同實施例中執行。此外,進程可以使用各種子進程來實施,或者作為較大巨集進程的一部分。因此,本領域具有通常知識者將理解,本發明不被限制於前述描述的細節,而是由所附申請專利範圍來定義。
附注
本文所描述的主題有時示出了包括於不同其他元件或與其連接的不同元件。能夠理解,這種描繪的架構僅是示例,以及事實上可以實施實現相同功能的許多其他的架構。概念上來說,實現相同功能的元件的任何安排是有效“關聯的”以致實現所期望的功能。因此,本文組合來實現特定功能的任何兩個元件可以被視為彼此“關聯”以致實現所期望的功能,而不管架構或中間元件。同樣地,如此關聯的任何兩個元件也可以被視為彼此“可操作地連接”或“可操作地耦合”來實現所期望的功能,以及能夠如此關聯的任何兩個元件也可以被視為彼此“可操作地耦合”來實現所期望的功能。可操作地耦合的具體示例包括但不限於物理上可匹配與/或物理上交互的元件與/或無線地可交互與/或無線地交互的元件與/或邏輯地交互與/或邏輯可交互的元件。
此外,關於本文中實質上任何複數與/或單數術語的使用,本領域具有通常知識者的這些人可以根據上下文以及應用適當地將其從複數轉換成單數與/或從單數轉換成複數。為了清楚起見,這裡可以明確闡述各種單數/複數
置換。
此外,本領域技術人員表將能理解,通常,本文所使用的術語,尤其是所附申請專利範圍中使用的術語(如所附申請專利範圍的主體)通常意為“開放式”的術語,如,術語“包括(including)”應當被解釋為“包括但不限於”,術語“具有”應當被解釋為“至少具有”,術語“包括(includes)”應當被解釋為“包括但不限於”等。本領域這些技術人員將能進一步理解,如果特定數目的所引申請專利範圍的表述是有意的,這種意圖將明確列舉在申請專利範圍中,以及沒有這種表述的情況下這種意圖不存在。例如,為了幫助理解,後續所附申請專利範圍可以包含介紹性短語“至少一個”以及“一個或多個”的使用來介紹申請專利範圍表述。然而,這種短語的使用不應該被解釋為暗示由不定冠詞“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”的可能性。
從上文可以理解,出於說明的目的,本發明的各種實施方式在此進行描述,以及在不背離本發明範圍以及精神的情況下,可以進行各種修正。因此,本文所描述的各種實施方式不旨在被限制,真正的範圍以及精神由後續申請專利範圍來指示。
100:CU
110、120:PU
130:重疊的預測區域
401~416:網格
500、504、508、516:圖像
600:視訊編碼器
605:視訊源
608:減法器
610:變換模組
616、916:變換係數
611:量化模組
612、912:已量化係數
614、905:逆量化模組
615、910:逆變換模組
613、913:已預測像素資料
617:重構像素資料
619、919:重構殘差
620:幀內圖像估計模組
625、925:幀內預測模組
630、930:運動補償模組
635:運動估計模組
640:幀間預測模組
645、945:環路濾波器
650:重構圖像緩衝器
665、965:MV緩衝器
675、975:MV預測模組
690:熵編碼器
695、995:位元流
710、1010:組合的預測模組
730、1030:第二運動補償模組
740、1040:MV儲存邏輯
700、1000:編碼模式控制模組
720、1020:應用的塊設定
790、1090:語法元素
810~860、1110~1160:步驟
900:視訊解碼器
990:熵解碼器
917:已解碼像素資料
950:解碼圖像緩衝器
955:顯示裝置
1200:電子系統
1205:匯流排
1230:唯讀記憶體
1235:永久儲存裝置
1220:系統記憶體
1245:輸出裝置
1215:影像處理單元
1210:處理單元
1240:輸入裝置
1225:網路
附圖被包括以提供本發明的進一步理解,以及被併入並構成本發明的一部分。圖示說明了本發明的實施方式,以及與描述一起用於解釋本發明的原理。能理解,因為一些元件可以被示出為與實際實施方式中尺寸不成比例來清晰說明本發明的概念,圖示不需要按比例繪製。
第1圖概念地示出了由三角形預測單元模式編碼的CU。
第2圖示出了合併模式的空間參考塊以及時間參考塊。
第3圖示出了對兩個三角形預測單元之間的對角線邊緣應用適應性加權進程。
第4圖示出了三角形預測單元的運動向量的儲存。
第5a-d圖示出了用於導出雙向運動向量用於三角形預測單元模式儲存的不同情景。
第6圖示出了能夠實施目標合併模式的示例性視訊編碼器。
第7圖示出了實施目標合併模式的視訊編碼器的部分。
第8圖概念地示出了在編碼器執行目標合併模式的進程。
第9圖示出了能夠實施目標合併模式的示例性視訊解碼器。
第10圖示出了實施目標合併模式的視訊解碼器的部分。
第11圖概念地示出了用於在解碼器執行目標合併模式的進程。
第12圖概念地示出了可以實施本發明一些實施例的電子系統。
810~860:步驟
Claims (12)
- 一種視訊解碼方法,包括:從位元流中接收與一視訊的一當前圖像的一當前塊相關的待解碼資料;一旦決定該當前塊的一組應用的塊設定滿足一閾值條件:基於一第一運動資訊生成一第一預測用於該當前塊的一第一預測單元,以及基於一第二運動資訊生成一第二預測用於該當前塊的一第二預測單元;基於該第一以及第二運動資訊生成一第三預測用於一重疊預測區域,該重疊預測區域基於該第一預測單元與該第二預測單元之間的一分割來定義;以及藉由使用該第一、第二以及第三預測來解碼該當前塊,其中當該當前塊的一寬度、一高度、一面積或一長邊與短邊的比率小於一閾值時,該組應用的塊設定滿足該閾值條件。
- 如申請專利範圍第1項所述之視訊解碼方法,其中該第三預測是該第一預測與該第二預測的一加權和。
- 如申請專利範圍第1項所述之視訊解碼方法,其中該分割沿著劃分該當前塊的一直線。
- 如申請專利範圍第3項所述之視訊解碼方法,其中該直線是連接該當前塊的兩個相對頂點的一對角線。
- 如申請專利範圍第1項所述之視訊解碼方法,進一步包括存儲一邊界運動資訊用於位於該重疊預測區域的一邊界網格以用於編碼後續像素塊,其中該邊界運動資訊基於該第一運動資訊或該第二運動資訊來決定,其中該第一運動資訊包含一第一運動向量以及參考索引,以及該第二運動資訊包含一第二運動向量以及參考索引。
- 如申請專利範圍第5項所述之視訊解碼方法, 其中該第一運動向量參考一第一參考圖像以及該第二運動向量參考一第二參考圖像,其中當該第一參考圖像與該當前塊之間的一第一圖像次序計數差異小於該第二參考圖像與該當前圖像之間的一第二圖像次序計數差異時,該第一運動資訊被選擇為該邊界運動資訊;其中當該第二圖像次序計數差異小於該第一圖像次序計數差異時,該第二運動資訊被選擇為該邊界運動資訊。
- 如申請專利範圍第5項所述之視訊解碼方法,其中該邊界運動資訊的一邊界運動向量藉由平均該第一運動向量以及該第二運動向量來生成。
- 如申請專利範圍第7項所述之視訊解碼方法,其中平均該第一以及第二運動向量包括基於該邊界網格相對於一第一網格以及一第二網格的一空間位置加權每一該第一以及第二運動向量,其中在該第一網格中應用該第一運動向量生成該第一預測,以及在該第二網格中應用該第二運動向量生成該第二預測。
- 如申請專利範圍第7項所述之視訊解碼方法,其中平均該第一以及該第二運動向量包括基於一第一參考圖像的一圖像次序計數、一第二參考圖像的一圖像次序計數以及該當前圖像的一圖像次序計數,縮放至少一個該第一以及第二運動向量。
- 如申請專利範圍第5項所述之視訊解碼方法,當該第一運動資訊以及該第二運動資訊具有一相同的參考列表時,該第一以及第二運動向量之一被預定義為該邊界運動資訊。
- 一種視訊編碼方法,包括:接收與一視訊中一當前圖像的一當前塊相關的待編碼資料;一旦決定該當前塊的一組應用的塊設定滿足一閾值條件: 基於一第一運動資訊生成一第一預測用於該當前塊的一第一預測單元,以及基於一第二運動資訊生成一第二預測用於該當前塊的一第二預測單元;基於該第一以及第二運動資訊生成一第三預測用於一重疊預測區域,該重疊預測區域基於該第一預測單元與該第二預測單元之間的一分割來定義;以及藉由使用該第一、第二以及第三預測將該當前塊編碼進該位元流,其中當該當前塊的一寬度、一高度、一面積或一長邊與短邊的比率小於一閾值時,該組應用的塊設定滿足該閾值條件。
- 一種電子裝置,包括:一視訊解碼器電路,用於執行操作,包括:從位元流中接收與一視訊的一當前圖像的一當前塊相關的待解碼資料;一旦決定該當前塊的一組應用的塊設定滿足一閾值條件:基於一第一運動資訊生成一第一預測用於該當前塊的一第一預測單元,以及基於一第二運動資訊生成一第二預測用於該當前塊的一第二預測單元;基於該第一以及第二運動資訊生成一第三預測用於一重疊預測區域,該重疊預測區域基於該第一預測單元與該第二預測單元之間的一分割來定義;以及藉由使用該第一、第二以及第三預測來解碼該當前塊,其中當該當前塊的一寬度、一高度、一面積或一長邊與短邊的比率小於一閾值時,該組應用的塊設定滿足該閾值條件。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862784869P | 2018-12-26 | 2018-12-26 | |
US62/784,869 | 2018-12-26 | ||
US16/726,924 US11122272B2 (en) | 2018-12-26 | 2019-12-25 | Triangle prediction with applied-block settings and motion storage settings |
US16/726,924 | 2019-12-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202031046A TW202031046A (zh) | 2020-08-16 |
TWI754199B true TWI754199B (zh) | 2022-02-01 |
Family
ID=71123358
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108147917A TWI754199B (zh) | 2018-12-26 | 2019-12-26 | 具有應用的塊設定以及運動儲存設定的三角形預測 |
TW111105397A TWI802271B (zh) | 2018-12-26 | 2019-12-26 | 具有應用的塊設定以及運動儲存設定的三角形預測 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111105397A TWI802271B (zh) | 2018-12-26 | 2019-12-26 | 具有應用的塊設定以及運動儲存設定的三角形預測 |
Country Status (2)
Country | Link |
---|---|
US (2) | US11122272B2 (zh) |
TW (2) | TWI754199B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112544082B (zh) * | 2018-07-18 | 2023-12-15 | 寰发股份有限公司 | 一种视频编解码的帧间预测方法及装置 |
KR20210049822A (ko) * | 2018-09-07 | 2021-05-06 | 파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카 | 비디오 코딩 시스템 및 방법 |
CN117615125A (zh) * | 2018-10-08 | 2024-02-27 | 华为技术有限公司 | 用于译码块的几何划分块的帧间预测的装置及方法 |
CN118694934A (zh) * | 2018-12-28 | 2024-09-24 | 三星电子株式会社 | 用于对运动矢量差进行编码的方法和设备以及用于对运动矢量差进行解码的方法和设备 |
KR20210118070A (ko) * | 2018-12-31 | 2021-09-29 | 브이아이디 스케일, 인크. | 인터 및 인트라 결합 예측 |
US11032574B2 (en) * | 2018-12-31 | 2021-06-08 | Tencent America LLC | Method and apparatus for video coding |
CN110312130B (zh) * | 2019-06-25 | 2021-10-15 | 浙江大华技术股份有限公司 | 基于三角模式的帧间预测、视频编码方法及设备 |
CN113452997B (zh) * | 2020-03-25 | 2022-07-29 | 杭州海康威视数字技术股份有限公司 | 一种编解码方法、装置及其设备 |
WO2024153079A1 (en) * | 2023-01-16 | 2024-07-25 | Mediatek Inc. | Video coding method and apparatus of chroma prediction |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170251213A1 (en) * | 2016-02-25 | 2017-08-31 | Mediatek Inc. | Method and apparatus of video coding |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180057566A (ko) * | 2016-11-22 | 2018-05-30 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN111886865B (zh) * | 2018-03-30 | 2023-03-31 | 松下电器(美国)知识产权公司 | 编码装置和解码装置 |
CN112292857A (zh) * | 2018-06-11 | 2021-01-29 | 松下电器(美国)知识产权公司 | 编码装置、解码装置、编码方法和解码方法 |
EP3826305A4 (en) * | 2018-07-18 | 2021-08-18 | Panasonic Intellectual Property Corporation of America | ENCODING DEVICE, DECODING DEVICE, ENCODING PROCESS, AND DECODING PROCESS |
US11051010B2 (en) * | 2018-07-18 | 2021-06-29 | Mediatek Inc. | Merge candidates with multiple hypothesis |
CN115514958A (zh) * | 2018-11-02 | 2022-12-23 | 抖音视界有限公司 | 用于基于历史的运动矢量预测的表维护 |
CN111418207B (zh) * | 2018-11-06 | 2024-04-19 | 北京字节跳动网络技术有限公司 | 依赖块尺寸的对运动信息的存储 |
CN113056917B (zh) * | 2018-11-06 | 2024-02-06 | 北京字节跳动网络技术有限公司 | 为视频处理使用具有几何分割的帧间预测 |
CN113678434B (zh) * | 2018-11-14 | 2024-06-28 | 腾讯美国有限责任公司 | 视频编解码的方法和装置 |
US11652984B2 (en) * | 2018-11-16 | 2023-05-16 | Qualcomm Incorporated | Position-dependent intra-inter prediction combination in video coding |
US20200162737A1 (en) * | 2018-11-16 | 2020-05-21 | Qualcomm Incorporated | Position-dependent intra-inter prediction combination in video coding |
US10893298B2 (en) * | 2018-12-12 | 2021-01-12 | Tencent America LLC | Method and apparatus for video coding |
WO2020235511A1 (en) * | 2019-05-17 | 2020-11-26 | Panasonic Intellectual Property Corporation Of America | System and method for video coding |
-
2019
- 2019-12-25 US US16/726,924 patent/US11122272B2/en active Active
- 2019-12-26 TW TW108147917A patent/TWI754199B/zh active
- 2019-12-26 TW TW111105397A patent/TWI802271B/zh active
-
2021
- 2021-07-28 US US17/387,618 patent/US11546603B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170251213A1 (en) * | 2016-02-25 | 2017-08-31 | Mediatek Inc. | Method and apparatus of video coding |
Non-Patent Citations (3)
Title |
---|
http://phenix.int-evry.fr/jvet/doc_end_user/current_document.php?id=4835 * |
J. Chen et al., "Algorithm description for Versatile Video Coding and Test Model 3 (VTM 3)," Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting: Macao, CN, 3–12 Oct. 2018 * |
J. Chen et al., "Algorithm description for Versatile Video Coding and Test Model 3 (VTM 3)," Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, 12th Meeting: Macao, CN, 3–12 Oct. 2018。 http://phenix.int-evry.fr/jvet/doc_end_user/current_document.php?id=4835 |
Also Published As
Publication number | Publication date |
---|---|
TW202224435A (zh) | 2022-06-16 |
TWI802271B (zh) | 2023-05-11 |
US20200213593A1 (en) | 2020-07-02 |
TW202031046A (zh) | 2020-08-16 |
US20210360255A1 (en) | 2021-11-18 |
US11122272B2 (en) | 2021-09-14 |
US11546603B2 (en) | 2023-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI754199B (zh) | 具有應用的塊設定以及運動儲存設定的三角形預測 | |
US11172203B2 (en) | Intra merge prediction | |
TWI737201B (zh) | 用於發信合併工具的方法及裝置 | |
US11115653B2 (en) | Intra block copy merge list simplification | |
US11297348B2 (en) | Implicit transform settings for coding a block of pixels | |
US20200322623A1 (en) | Interaction Between Core Transform And Secondary Transform | |
US10715827B2 (en) | Multi-hypotheses merge mode | |
TWI711300B (zh) | 照度補償方法及相應之視訊處理裝置 | |
US11245922B2 (en) | Shared candidate list | |
WO2020015699A1 (en) | Merge candidates with multiple hypothesis | |
US11109064B2 (en) | Signaling of motion vector difference derivation | |
TW201939947A (zh) | 視訊編解碼中的智能模式分配 | |
US12120293B2 (en) | Mmvd mode separation and interpolation reordering | |
WO2023193769A1 (en) | Implicit multi-pass decoder-side motion vector refinement | |
TW202408232A (zh) | 更新合併候選的運動屬性 |