TWI749503B - 核心轉換和次級轉換間之交互作用及其裝置 - Google Patents
核心轉換和次級轉換間之交互作用及其裝置 Download PDFInfo
- Publication number
- TWI749503B TWI749503B TW109111224A TW109111224A TWI749503B TW I749503 B TWI749503 B TW I749503B TW 109111224 A TW109111224 A TW 109111224A TW 109111224 A TW109111224 A TW 109111224A TW I749503 B TWI749503 B TW I749503B
- Authority
- TW
- Taiwan
- Prior art keywords
- conversion
- index
- prediction
- current block
- block
- Prior art date
Links
- 230000003993 interaction Effects 0.000 title description 3
- 238000006243 chemical reaction Methods 0.000 claims description 349
- 238000000034 method Methods 0.000 claims description 68
- 230000011664 signaling Effects 0.000 claims description 65
- 239000013598 vector Substances 0.000 claims description 59
- 239000011159 matrix material Substances 0.000 claims description 54
- 230000009466 transformation Effects 0.000 claims description 40
- 238000012935 Averaging Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims description 2
- 239000000463 material Substances 0.000 claims 1
- 230000008569 process Effects 0.000 description 34
- 239000000523 sample Substances 0.000 description 32
- 238000012545 processing Methods 0.000 description 25
- 230000007704 transition Effects 0.000 description 12
- 230000000875 corresponding effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000013139 quantization Methods 0.000 description 10
- 230000002457 bidirectional effect Effects 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 8
- 238000001914 filtration Methods 0.000 description 7
- 230000006872 improvement Effects 0.000 description 6
- 230000002441 reversible effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000000844 transformation Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000009499 grossing Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000017105 transposition Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- ONTQJDKFANPPKK-UHFFFAOYSA-L chembl3185981 Chemical compound [Na+].[Na+].CC1=CC(C)=C(S([O-])(=O)=O)C=C1N=NC1=CC(S([O-])(=O)=O)=C(C=CC=C2)C2=C1O ONTQJDKFANPPKK-UHFFFAOYSA-L 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
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/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/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/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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/625—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
視訊解碼器從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊。視訊解碼器從位元流接收當前塊的第一信令索引和第二信令索引。視訊解碼器從第一和第二信令索引中確定第一合併索引和第二合併索引。視訊解碼器使用第一合併索引來選擇第一運動候選,並且使用第二合併索引來選擇第二運動候選。視訊解碼器在ALWIP模式下生成一組預測樣本,並執行逆次級轉換,然後執行逆主要轉換,以生成當前塊的一組殘差樣本。啟用或選擇次級轉換和/或主要轉換取決於當前塊的大小、寬度、高度或以上各項的組合。視訊解碼器通過使用一組殘差樣本和一組預測樣本來重建當前塊。
Description
本公開總體上涉及視訊編解碼。特別地,本公開涉及轉換(transform)和預測操作的信令選擇(signaling selection)。
除非本文另外指出,否則本節中描述的方法不是下面列出的申請專利範圍的現有技術,並且不被包括在本節中而被承認為現有技術。
高效視訊編解碼(HEVC)是由視訊編解碼聯合協作團隊(JCT-VC)開發的國際視訊編解碼標準。HEVC基於混合的,基於塊的,運動補償的,類似於DCT的轉換編解碼架構。壓縮的基本單位稱為編解碼單位(CU),是2Nx2N像素的正方形像素塊,每個CU可以遞歸地分為四個較小的CU,直到達到預定義的最小大小。每個CU包含一個或多個預測單元(PU)。
為了在HEVC中實現混合編解碼架構的最佳編解碼效率,每個PU都有兩種預測模式,即幀內預測和幀間預測。對於幀內預測模式,空間相鄰的重建像素可以用於生成方向預測。HEVC中最多有35個方向。對於幀間預測模式,時間重建的參考幀可以用於生成運動補償的預測。共有三種不同的模式,包括“跳過(skip)”、“合併(merge)”和“幀間高級運動矢量預測(Inter Advanced Motion Vector Prediction,簡寫為AMVP)”模式。
當在幀間AMVP模式下對PU進行編解碼時,利用傳輸的運動矢
量差(motion vector difference,簡寫為MVD)進行運動補償的預測,該運動矢量差可與運動矢量預測子(MVP)一起用於推導運動矢量(MV)。為了在幀間AMVP模式下確定MVP,高級運動矢量預測(AMVP)方案用於在包括兩個空間MVP和一個時間MVP的AMVP候選集中選擇運動矢量預測子。因此,在AMVP模式下,需要對MVP的MVP索引和相應的MVD進行編碼和傳輸。另外,還應編碼並發送用於在列表0(L0)和列表1(L1)的雙向預測和單向預測中指定預測方向的幀間預測方向以及每個幀的參考幀索引。
當以跳過或合併模式對PU進行編解碼時,除了所選擇的候選的合併索引之外,沒有運動資訊被發送。這是因為“跳過”和“合併”模式利用運動推斷方法(MV=MVP+MVD,其中MVD為零)從位於同一位置圖片中的空間相鄰塊(空間候選)或時間塊(時間候選)獲得運動資訊,在同一位置的圖片是列表0或列表1中的第一個參考圖片,在切片標頭(slice header)中信令(signaled)。在跳過PU(Skip PU)的情況下,殘差信號也被省略。為了確定“跳過”和“合併”模式的合併索引,使用“合併”方案從包含四個空間MVP和一個時間MVP的“合併”候選集中選擇運動矢量預測子。
下面的概述僅是說明性的,而無意於以任何方式進行限制。即,提供以下概述以介紹本文所述的新穎和非顯而易見的技術的概念、重點、益處和優點。選擇而並非所有實施方式將在下面的詳細描述中進一步描述。因此,以下發明內容既不旨在標識所要求保護的主題的必要特徵,也不旨在用於確定所要求保護的主題的範圍。
本公開的一些實施例提供一種有效地信令各種轉換模式和預測模式的視訊編解碼器。在一些實施例中,視訊解碼器從位元流接收資料,以將
要解碼的像素塊作為視訊的當前圖片的當前塊。視訊解碼器從位元流接收當前塊的第一信令的索引(signaled index)和第二信令的索引。視訊解碼器從第一和第二信令的索引中確定第一合併索引和第二合併索引。視訊解碼器使用第一合併索引來選擇第一運動候選,並且使用第二合併索引來選擇第二運動候選。視訊解碼器計算(i)基於當前塊的第一運動候選的第一預測,以及(ii)基於當前塊的第二運動候選的第二預測。視訊解碼器通過使用計算出的第一和第二預測來重建當前塊。
在一些實施例中,視訊解碼器從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊。視訊解碼器基於當前塊的像素執行平均、矩陣矢量乘法和/或線性插值(linear interpolation),以生成當前塊的一組預測樣本。視訊解碼器對第一組轉換係數執行逆次級轉換(inverse sescondary trasnform)以生成第二組轉換係數。視訊解碼器對第二組轉換係數執行逆主要轉換(inverse primary transform),以生成當前塊的一組殘差樣本。在一些實施例中,次級轉換和/或主要轉換的啟用或選擇取決於當前塊的尺寸、寬度、高度或以上的組合。視訊解碼器通過使用一組殘差樣本和一組預測樣本來重建當前塊。
在一些實施例中,視訊解碼器從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊。當從位元流接收到的資料指示將次級轉換應用於當前塊時,視訊解碼器通過選擇默認模式來啟用主要轉換。視訊解碼器通過根據啟用的主要和次級轉換執行逆轉換操作來解碼當前塊。
100:塊
500:CU
510、520:PU
530:重疊預測區域
1010:等式
1200:視訊編碼器
1205:視訊源
1210:轉換模組
1211:量化模組
1212、1512:量化係數
1213、1513:預測像素資料
1214:逆量化模組
1215:逆轉換模組
1216、1516:轉換係數
1217:重建像素資料
1220:圖片內估計模組
1225、1525:幀內預測模組
1230、1530:運動補償模組
1235:運動估計模組
1240、1540:幀間預測模組
1245、1545:環路濾波器
1250:重建圖片緩衝器
1265:MV緩衝器
1275:MV預測模組
1290:熵編碼器
1295、1595:位元流
1300、1600:編解碼控制模組
1310、1610:組合預測模組
1330、1630:第二運動補償模組
1365、1665:MV改進模組
1390、1690:語法元素
1400、1700:過程
1410~1495、1710~1795:框
1500:視訊解碼器
1505:逆量化模組
1510:逆轉換模組
1517:解碼像素資料
1519:重建殘差信號
1550:解碼圖片緩衝器
1555:顯示設備
1565:MV緩衝器
1575:MV預測模組
1590:解析器
1540:幀間預測模組
1800:電子系統
1805:匯流排
1810:處理單元
1815:圖形處理單元
1820:系統記憶體
1825:網路
1830:只讀記憶體
1835:永久存儲設備
1840:輸入設備
1845:輸出設備
包括附圖以提供對本公開的進一步理解,並且附圖被併入本公開並構成本公開的一部分。附圖示出了本公開的實施方式,並且與描述一起用於解釋本公開的原理。可以理解的是,附圖不一定按比例繪製,因為為了清楚地
示出本公開的概念,某些組件可能被顯示為與實際實現中的尺寸不成比例。
第1圖示出用於幀間預測模式的MVP候選集。
第2圖示出了包括組合的雙向預測合併候選的合併候選列表。
第3圖示出了包括縮放的合併候選的合併候選列表。
第4圖示出了將零矢量候選添加到合併候選列表或AMVP候選列表的示例。
第5圖示出了通過三角預測模式被編解碼的CU 500。
第6圖示出了將自適應加權處理應用於兩個三角形單元之間的對角邊緣。
第7圖示出了正向(forward)和反向(backward)RST。
第8圖示出了具有減少的尺寸(dimensions)的8×8 RST。
第9a-d圖示出了用於不同形狀的塊的ALWIP過程。
第10圖示出了TU假設重建生成,其中成本函數用於測量邊界相似度。
第11圖示出了與4×4TU的殘差相關聯的成本的計算。
第12圖示出了實例性視訊編碼器1200,其實施各種主要轉換、次級轉換和/或預測模式。
第13圖示出了編碼器1200的啟用和禁用各種主要轉換、次級轉換和/或預測模式的部分。
第14圖概念性地示出了用於通過啟用某些主要(primary)轉換、次級轉換和/或預測模式來對像素塊進行編碼的過程1400。
第15圖說明實例性視訊解碼器1500,其實施各種主要轉換、次級轉換和/或預測模式。
第16圖示出了解碼器1500的啟用和禁用各種主要轉換、次級轉換和/或預測模式的部分。
第17圖概念性地示出了用於通過啟用某些主要轉換、次級轉換和/或預測模式來解碼像素塊的過程1700。
第18圖概念性地示出了用於實現本公開的一些實施例的電子系統。
在下面的詳細描述中,通過示例的方式闡述了許多具體細節,以提供對相關教導的透徹理解。基於本文描述的教導的任何變化、派生和/或擴展均在本公開的保護範圍內。在一些情況下,與本文公開的一個或多個示例實施方式有關的眾所周知的方法、過程、組件和/或電路可以在沒有詳細描述的情況下以相對較高的水平進行描述,以避免不必要地混淆本公開的教導的各個方面。
第1圖示出了在HEVC中為幀間預測模式設置的MVP候選集(即,跳過(skip)、合併(merge)和AMVP)。該圖示出了正在被編碼或解碼的視訊圖片或幀的當前塊100。當前塊100(可以是PU或CU)參考相鄰塊以導出用於AMVP模式、合併模式或跳過模式的空間和時間MVP。
對於跳過模式和合併模式,從A0、A1、B0和B1導出多達四個空間合併索引,並且從TBR或TCTR導出一個時間合併索引(首先使用TBR,如果TBR不可用,則使用TCTR)。如果四個空間合併索引中的任何一個不可用,則位置B2用於導出合併索引作為替換。在導出四個空間合併索引和一個時間合併索引之後,將多餘的合併索引刪除。如果非冗餘合併索引的數量少於五個,則可以從原始候選中推導其他候選,並將其添加到候選列表中。有三種類型的被推導候選:
1.組合的雙向預測合併候選(被推導候選類型1)
2.縮放的雙向預測合併候選(被推導候選類型2)
3.零矢量合併/AMVP候選(被推導候選類型3)
對於被推導候選類型1,通過組合原始合併候選來創建組合的雙
向預測合併候選。具體地,如果當前切片是B切片,則可以通過組合來自列表0和列表1的候選來生成進一步的合併候選。第2圖示出了包括合併的雙向預測合併候選的合併候選列表。如圖所示,具有mvL0(列表0中的運動矢量)和refIdxL0(列表0中的參考圖片索引)或mvL1(列表1中的運動矢量)和refIdxL1(列表1中的參考圖片索引)的兩個原始候選是用於創建雙向預測合併候選。
對於被推導候選類型2,通過縮放原始合併候選來創建縮放合併候選。第3圖示出了包括縮放的合併候選的合併候選列表。如圖所示,原始合併候選俱有mvLX(列表X中的運動矢量,X可以是0或1)和refIdxLX(列表X中的參考圖片索引,X可以是0或1)。例如,原始候選A是具有mvL0_A和參考圖片索引ref0的列表0單向預測MV。首先將候選A複製到具有參考圖片索引ref0'的列表L1。縮放後的MV mvL0’_A是通過根據ref0和ref0’縮放mvL0_A計算得出的。創建具有列表L0中的mvL0_A和ref0以及列表L1中的mvL0’_A和ref0’的縮放的雙向預測合併候選,並將其添加到合併候選列表中。同樣,將創建一個縮放的雙向預測合併候選,該候選具有列表0中的mvL1’_A和ref1’,以及列表1中的mvL1_A,ref1,並將其添加到合併候選列表中。
對於被推導候選類型3,通過組合零矢量和參考索引來創建零矢量候選。如果創建的零矢量候選不是重複的,則將其添加到合併/AMVP候選列表。第4圖示出了將零矢量候選添加到合併候選列表或AMVP候選列表的示例。
第5圖示出了通過三角預測模式被編解碼的CU 500。如圖所示,CU 500通過一定角度的直線或對角線分割CU 500,在對角線或對角線反方向上分為兩個三角形單元510(PU1)和520(PU2)。線可以用距離和角度來表示。對於目標合併模式,CU中的每個單元(對於TPM,三角形單元)通過使用其自身的單向預測運動矢量和參考幀索引進行幀間預測,這些運動矢量和參考幀索
引是從由雙向預測候選或單向預測候選組成的候選列表中導出的。在第5圖的示例中,使用包含運動矢量Mv1和相應參考索引的第一運動資訊(Motion1)對三角形單元510進行幀間預測,並且使用包含運動矢量Mv2和相應的參考索引的第二運動資訊(Motion2)對三角形單元520進行幀間預測。在一些實施例中,通過第一運動資訊和第二運動資訊的幀間預測的加權和來幀間預測位於兩個三角形分區之間的對角邊界上的重疊預測區域530。因此,重疊預測區域530也可以被稱為加權區域或邊界區域。
第6圖示出了對兩個三角形單元510和520之間的對角邊緣(即,重疊預測區域530)應用自適應加權處理。
列出了兩個加權因子組,如下:.第一加權因子組:{7/8、6/8、4/8、2/8、1/8}和{7/8、4/8、1/8}分別用於亮度和色度樣本;.第二加權因子組:分別為{7/8、6/8、5/8、4/8、3/8、2/8、1/8}和{6/8、4/8、2/8}分別用於亮度和色度樣本。
在一些實施例中,基於兩個三角形單元的運動矢量的比較來選擇一個加權因子組。當兩個三角形單元的參考圖片彼此不同或它們的運動矢量差大於16個像素時,將使用第二加權因子組。否則,使用第一加權因子組。在另一實施例中,僅使用一個加權因子組。在另一個實施例中,每個樣本的加權因子是根據樣本與一用來分割的定角度直線之間的距離得出的。第6圖的示例示出了CU 500沿著三角形單元510和三角形單元520之間的對角邊界將第一加權因子組應用於加權區域(或重疊預測區域)530。
在一些實施例中,信令一個TPM標誌以指示是否啟用TPM。當TPM標誌(例如,merge_triangle_flag)指示啟用TPM時,至少三個值被編碼到位元流中:首先,使用旁路位元子對分割方向標誌(指示對角線還是對角線反
向)進行編碼。其次,以與常規合併模式的合併索引相同的方式對PU0的合併索引(Idx0)進行編碼。第三,對於PU1,不是直接對合併索引(Idx1)的值進行編碼,而是發送信號通知信令的索引(或Idx'1),因為Idx0和Idx1的值不能相等。在一些實施例中,信令的索引Idx'1被定義為Idx1-(Idx1<Idx0?0:1),即,如果Idx1小於Idx0,則Idx'1被設置為與Idx1相同。如果Idx1不小於Idx0,則將Idx'1設置為Idx1-1。
下表中提供了TPM信令的示例語法。
如所提到的,合併索引Idx0和Idx1分別從TPM的候選列表指示PU0和PU1的運動候選。當信令PU0和PU1的運動候選時,將使用較短的碼字通過預定義的信令方法(例如一元截斷)對小索引值進行編解碼。在一些實施例中,為了提高編解碼效率,將合併索引Idx0改變為信令的值Idx'0,並將合併索引Idx1改變為信令的值Idx'1,並且視訊編解碼器信令Idx'0和Idx'1,而不是Idx0和Idx1。
在一些實施例中,Idx'0等於Idx0。在一些實施例中,Idx'1等於Idx1。換句話說,在計算Idx'0或Idx'1之前,不需要視訊編解碼器將Idx0與Idx1進行比較。簡化起見,可以直接將Idx'x分配給Idxx(對於x=1或0)。
在一些實施例中,Idx'x等於Idxx並且Idxy=Idxx+Idx'y *符號,其中(x,y)可以是(0,1)或(1,0)。例如,如果x=0和y=1,則Idx'0等於Idx0,Idx1等於Idx0+Idx'1 *符號,如果Idx1 Idx0則符號(sign)設置為1,否則符號設
置為-1(如果Idx1<Idx0)。在某些實施例中,符號是推斷的,不需要信令。例如,可以將符號推斷為1或-1,或者可以根據預定義的標準隱式確定符號。預定義的標準可以取決於塊的寬度或塊的高度或塊的面積,或者可以根據Idx0進行交織(interleaving)分配。
在一些實施例中,如果在等式或表中指定了Idx0,則將符號推斷為1;否則,符號被推斷為-1。例如,Idx0由固定式{Idx0%N==n}指定,其中N和n是預定的。在一些實施例中,Idx'1 min(abs(Idx0和Idx1的差,N)。在一些實施例中,約束應用於Idx'1,或者更具體地,在確定Idx'1時將約束應用於N。例如,N是TPM後續的最大數。在另一個示例中,N是2、3、4、5、6、7或8。在另一個示例中,N可以隨塊寬度或塊高度或塊面積而變化。面積大於特定大小(例如64、128、256、512、1024或2048)的塊的N比面積小於特定大小的塊的N大。面積小於特定區域的塊的N比面積大於特定區域的塊的N大。
在一些實施例中,可以從合併索引Idx0導出信令的索引Idx'1,而不必信令(例如,在位元流中被明確信令)Idx'1。例如,在一些實施例中,Idx'1=Idx0+偏移量*符號,其中偏移量=1、2、3,...、TPM候選-1的最大數量。偏移量可以是固定的,也可以隨塊的寬度或塊的高度或塊的面積而變化。舉例來說,面積大於特定區域大小(例如64、128、256、512、1024或2048)的塊的偏移量大於面積較小的塊的偏移量。舉另一例來說,面積小於特定區域大小的塊的偏移量大於面積更大的塊的偏移量。
在一些實施例中,除了用於TU的主要(核心)轉換(primary(core)transform)(例如DCT-II)外,次級轉換(secondary transform)還用於進一步壓縮係數的能量並提高編解碼效率。編碼器對當前塊的像素執行主要轉換,以生成一組轉換係數。然後對當前塊的轉換係數執行次級轉換。
次級轉換常為不可分(non-separable),所以又稱作不可分次級轉換(Non-Separable Secondary Transform,簡寫為NSST),其示例包括超立方體-吉文斯轉換(Hypercube-Givens Transform,簡寫為HyGT)和簡化的次級轉換(Reduced Secondary Transform,簡寫為RST)。RST也稱為低頻不可分次級轉換(Low Frequency Non-Separable Secondary Transform,簡寫為LFNST)。簡化的次要轉換(RST)是一種次級轉換,它指定4個轉換集(而不是35個轉換集)映射。在一些實施例中,對於NxM塊採用16×64(或16×48或8×48)矩陣,其中N8且M8。對於N×M塊採用16×16(或8×16)矩陣,其中N<8或M<8。為了方便起見,將16x64(或16x48或8x48)轉換表示為RST8x8,將16x16(或8x16)轉換表示為RST4x4。對於具有8x48或16x48矩陣的RST8x8,對左上8x8區域中的前48個係數(對角線掃描順序下的前三個4x4子塊)執行次級轉換。舉例來說,8x8區域總共包含四個4x4子塊,左上子塊為第一子塊,左下子塊為第二子塊,右上子塊為第三子塊,右下子塊為第四子塊。對於具有8x16或16x16矩陣的RST4x4,對左上4x4區域中的前16個係數(在對角線掃描順序下的第一個子塊)執行次級轉換。舉例來說,4x4區域總共包含一個4x4子塊。
RST基於簡化的轉換(reduced transform,簡寫為RT)。簡化的轉換(RT)的基本元素將N維矢量映射到不同空間中的R維矢量,其中R/N(R<N)是歸約因子(reduction factor)。RT矩陣是R×N矩陣,如下所示:
其中,轉換的R行是N維空間的R個基(R bases)。RT的逆轉換矩陣是其正向(forward)轉換的轉置。第7圖示出了正向和逆簡化的轉換。
在一些實施例中,應用歸約因子(reduction factor)為4(1/4大小)
的RST8x8。因此,不是使用傳統的8x8不可分轉換矩陣大小的64x64,而是使用16x64直接矩陣(direct matrix)。換句話說,在解碼器側使用64×16逆RST矩陣以生成8×8左上角區域中的經過核心(主要)轉換係數。前向RST8x8使用16×64或16x48(對於8x8塊,則為8x48)矩陣。對於RST4x4,應用16x16(或對於4x4塊為8x16)直接矩陣乘法。因此,對於轉換塊(TB),它僅在左上4×4區域中產生非零係數。換句話說,對於轉換塊(TB),如果應用具有16x48或16x16矩陣的RST,除左上4×4區域(前16個係數,稱為RST非置零區域(非zero-out region))之外,將僅具有零係數。如果應用具有8x48或8x16矩陣的RST,則除了前8個係數(稱為RST非置零區域),將僅具有零係數。舉例來說,前8個係數為左上4x4子塊中對角線掃描順序下的前8個係數。
在一些實施例中,當滿足(1)和(2)中的至少一個時,有條件地應用逆RST:(1)塊大小大於或等於給定閾值(W>=4 && H>=4);(2)轉換跳過模式標誌等於零。如果轉換係數塊的寬度(W)和高度(H)均大於4,則將RST8x8應用於轉換係數塊的左上8×8區域。否則,將RST4x4應用於轉換係數塊的左上角min(8,W)×min(8,H)區域。如果RST索引等於0,則不應用RST。否則,在其它RST使用條件(舉例來說,(1)與(2))滿足的情況下,將應用RST,並使用RST索引選擇其內核(kernel)。此外,RST應用於幀內或幀間切片的幀內CU。如果啟用了雙樹(dual tree),則分別信令亮度和色度的RST索引。對於片間(inter slice)(如果禁用雙樹),將信令單個RST索引並將其用於亮度或色度。下文將進一步描述RST選擇方法和RST索引的編解碼。
在一些實施例中,採用幀內子分區(Intra Sub-Partitions,簡寫為ISP)作為新的幀內預測模式。選擇ISP模式後,將禁用RST,並且不會信令RST索引。這是因為即使將RST應用於每個可行的分區塊,性能的改善也很微不足道,並且因為對ISP預測的殘差禁用RST可以降低編碼的複雜性。
在一些實施例中,從四個轉換集合中選擇RST矩陣,每個轉換集合由兩個轉換組成。根據幀內預測模式,如下確定應用哪個轉換集:(1)如果指示了三種CCLM模式之一,則在下面的轉換集選擇表中選擇轉換集0或使用相應的亮度幀內預測模式(intra prediction mode)選擇轉換集,(2)否則,根據以下轉換集選擇表執行轉換集選擇:
在一些實施例中,索引IntraPredMode具有範圍[-14、83],其是用於廣角幀內預測(wide angle intra prediction)的轉換模式索引。在一些實施例中,使用每組1個轉換(1 transform-per-set)配置,這大大減少了記憶體使用(例如,減少一半或5KB)。
在一些實施例中,應用了用於RST的簡化方法。簡化方法將每個樣本的最壞情況下的乘法次數限制為小於或等於8。如果使用RST8x8(或RST4x4),則當所有TU都由8x8 TU(或4x4 TU)組成時,就乘法次數而言,是最壞的情況。因此,將頂部的8x64(或8x48)或8x16矩陣(換句話說,從每個矩陣的頂部開始的前8個轉換基矢量(basis vector))應用於8x8 TU或4x4 TU。
在塊大於8x8 TU的情況下,不會發生最壞情況,因此RST8x8(即
16x64或16x48矩陣)被應用於左上8x8區域。對於8x4 TU或4x8 TU,RST4x4(即16x16矩陣)應用於除其他4x4區域之外的左上4x4區域,以避免發生最壞情況。在4xN或Nx4 TU(N16)的情況下,RST4x4應用於左上4x4塊。通過上述簡化,最壞情況下的乘法數變為每個樣本8個乘法數。
在一些實施例中,使用尺寸減少的RST矩陣。第8圖示出了具有減少的尺寸的RST。該圖說明了具有16x48矩陣的示例正向RST8x8過程。如圖所示,可以使用16x48矩陣代替具有相同轉換集配置的16x64矩陣,每個矩陣從左上8x8塊中的三個4x4塊(排除右下4x4塊)獲取48個輸入資料。隨著RST矩陣尺寸的減小,用於存儲所有RST矩陣的內存使用量可能會從10KB減少到8KB,伴隨合理的性能下降。
R=16的正向RST8x8使用16×48矩陣,因此僅在左上4×4區域產生非零係數。換句話說,如果應用RST,則除左上的4×4區域(稱為RST非零區域)外,僅生成零係數。在一些實施例中,當在RST置零區域內檢測到任何非零元素時,不對RST索引進行編解碼或信令,因為這暗示未應用RST。在這種情況下,RST索引被推斷為零。
在一些實施例中,為了預測寬度為W和高度為H的矩形塊的樣本,使用仿射線性加權幀內預測(affine linear weighted intra prediction,簡寫為ALWIP)。ALWIP也可以稱為基於矩陣的幀內預測或矩陣加權幀內預測(Matrix-based intra prediction,MIP)。ALWIP將塊左側的一行H個重建的相鄰邊界樣本的該區塊上方的一行W個重建的相鄰邊界樣本作為輸入。如果重建的樣本不可用,則會像在常規幀內預測中所做的那樣生成它們。
針對ALWIP的預測樣本集的生成基於以下三個步驟:
(1)平均相鄰樣本:在邊界樣本中,基於塊大小和形狀通過平
均選擇四個樣本或八個樣本。具體而言,通過根據取決於塊大小的預定義規則,對相鄰邊界樣本求平均,將輸入邊界bdry top 和bdry left 減小為較小的邊界
和。
(2)矩陣乘法:以平均樣本作為輸入,執行矩陣矢量乘法,然後加上偏移量。結果是原始塊中樣本的子樣本集上的減少的預測信號。
(3)插值:通過線性插值從子樣本集上的預測信號產生剩餘位置處的預測信號,所述線性插值是在每個方向上的單步(single step)線性插值。
從三組矩陣(S0,S1和S2)中獲取在ALWIP下生成預測信號所需的矩陣和偏移矢量。集合S0由N個矩陣組成。N可以是16、17、18或任何正整數。以N=16為例,16個矩陣 ,i {0,...,15}每個矩陣有16行4列,16個偏移矢量 ,i {0,...,15}的每個的大小為16。該集合的矩陣和偏移矢量用於大小為4 x 4的塊。集合S1由8個矩陣 ,i {0,...,7}組成,每個矩陣有16行和8列,8個偏移矢量 ,i {0,...,7}的每個的大小為16。該集合的矩陣和偏移矢量用於大小為4x8、8x4和8x8的塊。最後,集合S2由6個矩陣 ,i {0,...,5}組成,每個矩陣有64行8列,還有6個偏移矢量 ,i {0,...,5},每個矢量維度大小是64。該集合的矩陣和偏移矢量或這些矩陣和偏移矢量的一部分用於所有其他塊形狀。
計算矩陣矢量乘積所需的乘法總數始終小於或等於4 x W xH。換句話說,ALWIP模式每個樣本最多需要四個乘法。
在一些實施例中,在第一步中,將頂部邊界bdry top 和左側邊界
bdry left 減小為較小的邊界和。這裡,在4x4塊的情況下,
和.均由2個樣本組成,而在所有其他情況下均由4個樣本組成。
在4x4塊的情況下,對於0i<2,
在一些實施例中,在第一步中,將兩個減少的邊界和串聯到減少的邊界向量bdry red ,其對於4×4的塊尺寸為四,對於其他所有形狀的塊,尺寸為八。減少的上和左邊界的串聯定義如下:(如果模式是指ALWIP模式)
在一些實施例中,在第二步驟中,通過矩陣矢量乘法來產生減少的預測信號。在減少的輸入矢量bdry red 中,生成減少的預測信號pred red 。後一個信號是在寬度為W red 和高度為H red 的下採樣塊(downsampled block)上的
信號。在此,W red 和H red 定義為:
減少的預測信號pred red 是通過計算矩陣矢量乘積並加上偏移量來計算的:pred red =A.bdry red +b.
在這裡,A是一個矩陣,如果W=H=4,則其具有W red .H red 行和4列,且在所有其他情況下具有8列。b是大小為W red .H red 的矢量。如下從集合S 0、S 1、S 2之一獲取矩陣A和矢量b。索引idx=idx(W,H)定義如下:
然後,如果idx1或idx=2且min(W,H)>4,則並且
。在idx=2且min(W,H)=4的時候,捨棄(leave out)中的行或列
來產生矩陣A。如果在W=4的情況下,對應於下採樣(downsampled)塊中奇數x
坐標的每列;或者,如果在H=4的情況下對應於下採樣塊中奇數y坐標的
每行。
最後,在以下情況下,已減少的預測信號將被其轉置代替:
在W=H=4的情況下,計算pred red 所需的乘法數為4,因為在這種情況下,A具有4列和16行。在所有其他情況下,A具有8列和W red .H red 行。在這些情況下,需要8.W red .H red 4.W.H乘法,即在這些情況下,每個樣本最多需要4個乘法來計算pred red 。
第9a-d圖示出了用於不同形狀的塊的ALWIP過程。塊的ALWIP處理包括(1)平均,(2)矩陣矢量乘法和(3)線性插值。第9a圖示出了用於4×4塊的ALWIP。給定一個4x4的塊,ALWIP沿邊界的每個軸取兩個平均值。所得的四個輸入樣本進入矩陣矢量乘法。矩陣取自集合S 0。添加偏移量後,將得出16個最終預測樣本。線性插值對於生成預測信號不是必需的。因此,每個樣本總共執行(4*16)÷(4*4)=4次乘法。
第9b圖示出了用於8×8塊的ALWIP。給定一個8×8的塊,ALWIP沿邊界的每個軸取四個平均值。所得的八個輸入樣本進入矩陣矢量乘法。矩陣取自集合S 1。這在預測塊的奇數位置上產生16個樣本。因此,每個樣本總共執行(8‧16)÷(8‧8)=2次乘法。添加偏移後,將使用縮小的頂部邊界對這些樣本進行垂直插值。通過使用原始的左邊界進行水平插值。在這種情況下,插值過程不需要任何乘法。因此,每個樣本總共需要2次乘法來計算ALWIP預測。
第9c圖示出了用於8×4塊的ALWIP。給定一個8×4的塊,ALWIP沿邊界的水平軸取四個平均值,在左邊界取四個原始邊界值。所得的八個輸入樣本進入矩陣矢量乘法。矩陣取自集合S 1。這在預測塊的奇數水平和每個垂直位置上產生16個樣本。因此,每個樣本總共執行(8‧16)÷(8‧4)=4次乘法。添
加偏移後,將使用原始的左邊界對這些樣本進行水平插值。在這種情況下,插值過程不會添加任何乘法。因此,每個樣本總共需要進行4次乘法以計算ALWIP預測。
第9d圖示出了用於16×16塊的ALWIP。給定一個16×16的塊,ALWIP沿邊界的每個軸取四個平均值。所得的八個輸入樣本進入矩陣矢量乘法。矩陣取自集合S 2。這在預測塊的奇數位置上產生64個樣本。因此,每個樣本總共執行(8‧64)÷(16‧16)=2次乘法。添加偏移量後,將使用頂部邊界的八個平均值對這些樣本進行垂直插值。通過使用原始的左邊界進行水平插值。在這種情況下,插值過程不會添加任何乘法。因此,總的來說,每個樣本需要兩次乘法來計算ALWIP預測。
對於較大的形狀,該過程本質上是相同的,並且很容易檢查每個樣本的乘法次數是否少於四個。對於W>8的W×8塊,僅需要水平插值,因為在奇數水平位置和每個垂直位置給出了樣本。在這種情況下,每個樣本執行(8‧64)÷(W‧8)=64/W次乘法,以計算減少的預測。在一些實施例中,對於W=16,線性插值不需要額外的乘法。對於W>16,線性插值所需的每個樣本的附加乘法數少於2。因此,每個樣本的乘法的總次數小於或等於四。
對於寬度W>8的W×4塊,令A k 為矩陣,它通過捨棄對應於沿著下採樣塊水平軸的奇數項(odd entry)的每一行而產生。因此,輸出大小為32,再次,僅需執行水平插值。為了計算減少的預測,每個樣本執行(8‧32)÷(W‧4)=64/W次乘法。對於W=16,不需要額外的乘法,而對於W>16,線性插值需要每個樣本少於2次乘法。因此,乘法的總數小於或等於四。轉置後的情況也相應處理。
在本申請的一些實施例中,當應用ALWIP模式時,可以執行諸
如RST或LFNST的次級轉換。在一些實施例中,當在某些條件下應用ALWIP時,視訊編解碼器可以執行次級轉換。例如,當當前塊的寬度、高度或面積(大小)大於或小於某個閾值時。更具體地,在一個實施例中,在確定當前塊的寬度和高度大於或等於第一閾值之後,使用ALWIP模式的當前塊可以執行次級轉換。在一個實施例中,在確定當前塊的寬度和高度小於第二閾值之後,使用ALWIP模式的當前塊可以執行次級轉換。在一些實施例中,對於使用ALWIP模式的當前塊,其次級轉換候選的數量與使用常規幀內模式的塊的數量相同。在一些實施例中,當應用ALWIP時,次級轉換候選的數量減少到N(在一些實施例中,N可以是1、2、3或4。)
在一些實施例中,當滿足以下兩個約束時,以ALWIP模式執行次級轉換:1)確定當前塊的寬度和高度大於或等於第一閾值;2)確定次級轉換的索引大於索引閾值,例如零(0)。更詳細地,首先確定當前塊的寬度和高度是否大於或等於第一閾值。當第一判定步驟為肯定時,滿足約束1),並信令次級轉換的索引。執行隨後的第二判定步驟,以查看信令的索引是否大於索引閾值。如果第二判定步驟是肯定的,則滿足約束2)。在一些實施例中,要求在可以信令次級轉換的索引之前應當滿足更多的約束。然而,這些是根據本申請的精神的示例,並且不應限製本申請的範圍。
用於主要轉換的轉換模式指示用於水平轉換的一種轉換類型和用於垂直轉換的一種轉換類型。在一些實施例中,可以用標誌和/或索引隱式地確定或顯式地信令用於主要轉換的轉換模式。例如,在一些實施例中,用索引指示轉換模式,並且當索引為0時,用於主要轉換的轉換模式被分配為默認轉換模式,例如用於水平與垂直這兩個方向的主要轉換的轉換模式為DCT-II。否則,從候選轉換集的任何信令順序的任何組合(例如{(DST-VII,DST-VII),(DCT-VIII,DCT-VIII),(DST-VII,DCT-VIII),(DCT-VIII,DST-VII)}或{(DST-VII,
DST-VII),(DCT-VIII,DCT-VII),(DST-VII,DCT-VIII),(DCT-VIII,DST-VIII)})選擇用於主要轉換的一個轉換模式(其指示水平轉換(用於水平方向的轉換模式)和垂直轉換(用於垂直方向的轉換模式))。對於諸如RST或LFNST這類次級轉換的轉換模式,信令索引指示來自候選集(包括N個(例如2或3個)候選)中的一個候選。RST索引等於0表示未應用RST。
在一些實施例中,可以對利用殘差和主要轉換生成的係數執行次級轉換(例如,RST)。在一些實施例中,當被應用的主要轉換非默認轉換模式時,不能使用次級轉換。在一些實施例中,當主要轉換不等於默認轉換模式(例如,默認轉換模式為(DCT-II,DCT-II))時,或者當主要轉換的索引大於0、1、2或3時,則不能應用次級轉換,或者將次級轉換的候選數減少為1或2,或者次級轉換的索引不能等於最大索引,例如3。
在一些實施例中,用於主要轉換的轉換模式是特定的轉換模式(例如(DCT-II,DCT-II)或(DST-VII,DST-VII)),不能應用次級轉換,或者次級轉換的候選的數量減少到1或2,或者次級轉換的索引不能等於最大索引(例如3)。
在一些實施例中,對於主要轉換,當水平轉換等於垂直轉換時,不能應用次級轉換,或者次級轉換的候選的數量減少到1或2,或者次級轉換的索引轉換不能等於最大索引(例如3)。
在一些實施例中,當應用次級轉換(例如,次級轉換的索引大於0)時,不能使用主要轉換,或者用於主要轉換的候選的數量減少到1或2,或者主要轉換的索引不能等於最大索引(例如3)。例如,當應用次級轉換時,將使用默認的主要轉換模式,並且/或者默認的主要轉換模式的索引設置為0,這意味著用於主要轉換的默認主要轉換模式為DCT-II。在一些實施例中,在沒有信令的情況下推斷默認主要轉換的索引。在一些實施例中,將不通過隱式轉換類型分
配來進一步改變用於主要轉換的轉換類型。在一些實施例中,當次級轉換等於特定數目(例如1、2或3)時,不使用主要轉換,或者將用於主要轉換的候選的數目減少為1或2,或者主要轉換的索引不等於最大索引(例如3)。
在一些實施例中,用於多個轉換的有效信令方法被用來進一步改善視訊編解碼器中的編解碼性能。在一些實施例中,代替將預定和固定的碼字用於不同的轉換,使用預測或預定義的方法將轉換索引(指示要使用哪個轉換)動態地映射到不同的碼字中。這種信令方法可以包括以下步驟:首先,通過預定過程確定預測的轉換索引。在該過程中,將成本分配給每個候選轉換,並且將選擇成本最小的候選轉換作為預測轉換,並將轉換索引映射到最短碼字。對於其餘的轉換,有幾種方法可以分配碼字,通常為其餘的轉換創建一個順序,然後可以根據該順序給出碼字(例如,較短的碼字將給予順序中靠前的一個)。
第二,在確定了預測轉換並且所有其他轉換也被映射到有序列表之後,編碼器可以將要信令的目標轉換與預測轉換進行比較。如果目標轉換(由編解碼過程確定)恰好是預測轉換,則可以將用於預測轉換的碼字(總是最短的轉換)用於信令。如果不是這種情況,則編碼器可以進一步搜索順序以找出目標轉換的位置以及與之對應的最終碼字。對於解碼器,將計算相同的成本,並且還將創建預測轉換和相同的順序。如果接收到用於預測轉換的碼字,則解碼器知道目標轉換是預測轉換。如果不是這種情況,則解碼器可以按順序查找碼字以找出目標轉換。根據以上描述,可以假設,如果(轉換)預測的命中率(成功預測率)變高,則可以使用比以前更少的位元來對相應的轉換索引進行編解碼。
為了獲得更高的預測命中率,有幾種方法可以計算多個轉換的成
本。在一些實施例中,邊界匹配方法用於產生成本。對於一個TU和一個特定轉換的係數,將它們(TU係數)去量化,然後進行逆轉換以生成重建的殘差。通過將那些重建的殘差添加到預測子(來自幀內或幀間模式),可以獲取重建的當前像素,從而為該特定轉換形成一個假設的重建(hypothesis reconstruction)。假設的重建的像素與重建的相鄰像素高度相關,則可以給出測量邊界相似度的成本。
第10圖示出了TU假設重建生成,其中成本函數用於測量邊界相似度。如圖所示,對於一個4x4 TU,針對一個特定的轉換生成一個假設重建,並且可以通過如第10圖所示的等式1010,使用跨越頂部和上方邊界的那些像素來計算成本。在該邊界匹配過程中,僅邊界像素被重建,可以避免逆轉換操作(針對非邊界像素)以降低複雜度。在一些實施例中,可以對TU係數進行自適應縮放或選擇以進行重建。在一些實施例中,可以自適應地縮放或選擇重建的殘差以進行重建。在一些實施例中,可以使用不同數量的邊界像素或不同形狀的邊界(僅頂部,僅上方或其他擴展部分)來計算成本。在一些實施例中,可以使用不同的成本函數來獲得對邊界相似度的更好的測量。例如,可以考慮不同的幀內預測方向以調整邊界匹配方向。
在一些實施例中,可以通過測量重建殘差的特徵來獲得成本。對於一個TU的係數和一個特定的次級轉換,將它們(TU的係數)去量化,然後進行逆轉換以生成重建的殘差。可以給出測量這些殘差能量的成本。
第11圖示出了與4×4TU的殘差相關聯的成本的計算。對於一個4x4 TU,成本計算為不同殘差集的絕對值之和。在一些實施例中,可以使用不同形狀的不同殘差集來產生成本。在第11圖的示例中,Cost1被計算為頂行和左側的絕對值之和,cost2被計算為殘差的中心區域的絕對值之和,cost3被計算為殘差的右下角區域的絕對值之和。
在一些實施例中,這裡的轉換(被信令的轉換)可以是次級轉換和/或主要轉換和/或轉換跳過模式。對於TU,使用索引來信令轉換跳過或主要轉換的一種轉換模式。當索引(用於選擇轉換)等於零時,將使用默認轉換模式(例如,用於兩個方向的DCT-II)。當索引等於1時,將使用轉換跳過。當索引大於1時,可以使用多種轉換模式之一(例如用於水平和/或垂直轉換的DST-VII或DCT-VIII)。對於次級轉換,索引(從0到2或3)用於選擇一個次級轉換候選。當索引等於0時,不應用次級轉換。在一些實施例中,可以用索引來信令包括轉換跳過模式和/或主要轉換和/或次級轉換的轉換。該索引的最大數量是主要轉換的候選數+次級轉換的候選數+轉換跳過模式的1。
在一些實施例中,用於有效信令多個轉換的方法用於確定信令順序。例如,存在4個候選主要轉換組合(一個默認轉換+不同組合)、4個候選次級轉換組合(無次級轉換+2或3個候選)和轉換跳過模式。用於多個轉換的有效信令的方法可以用於總組合的任何子集以生成相應的成本,並且可以相應地改變信令。在一些實施例中,此處的轉換(信令的轉換)包括轉換跳過模式和主要轉換的默認轉換模式。如果轉換跳過模式的成本小於默認轉換模式的成本,則轉換跳過模式的碼字長度小於默認轉換模式的碼字長度。例如,在一些實施例中,用於轉換跳過模式的索引被分配為0,並且用於默認轉換模式的索引被分配為1。在一些實施例中,此處的轉換(信令的轉換)是轉換跳過模式。如果轉換跳過模式的成本小於特定閾值,則轉換跳過模式的碼字長度比主要轉換的其他轉換短。閾值可以隨塊寬度或塊高度或塊面積而變化。
在一些實施例中,可以用索引來指示用於CU的預測模式。預測模式可以是幀間模式、幀內模式、幀內塊復制模式(IBC模式)和/或新添加的組合模式。在一些實施例中,可以獨立於來自相鄰塊的資訊來確定用於該索引的上下文。在一些實施例中,可以通過對幀內編解碼的相鄰塊的數量進行計數
來確定第一位元子的上下文或該位元子(用於確定預測模式是否是幀內模式)。例如,相鄰塊包含左側和/或上方,從左側開始的一個4x4塊和/或從上方開始的一個4x4塊,分別表示為A1和/或B1。對於另一個示例,相鄰塊包含左(表示為A1)、上(表示為B1)、左上(表示為B2)、左下(表示為A0)和/或右上(表示為B0)。對於另一個示例,相鄰塊包含在相鄰4x8、8x4或8x8區域中的4x4塊,例如左(表示為A1)、左相關(表示為A3)、上(表示為B1)、上相關(表示為Bx,其中x可以是0、2、3、4、5、6、7、8或9)和/或左下角(表示為A0)。
在一些實施例中,第一位元子(或決定預測模式是否是幀內模式的位元子)的上下文可以取決於來自{左,上,右,下,右上方,左上方}的任意一個或任意組合的相鄰塊。例如,可以使用來自左和/或上方的相鄰塊。在一些實施例中,第一位元子(或決定預測模式是否是幀內模式的位元子)的上下文不能參考跨CTU行資訊。在一些實施例中,僅可以使用來自左(A1)和/或左相關(A3)的相鄰塊。在一些實施例中,相鄰塊形成左(A1)和/或左相關(A3),和/或同一CTU中來自上方(B1)的相鄰塊,和/或同一CTU中上方相關的相鄰塊(例如Bx,其中x可以是0、2、3、4、5、6、7、8或9)可被使用。
在一些實施例中,當以合併模式對CU進行編解碼時,並且如果CU包含至少64個亮度樣本(即,CU寬度乘以CU高度等於或大於64),則信令附加標誌以指示是否將組合幀間/幀內預測(combined inter/intra prediction,簡寫為CIIP)模式應用於當前CU。為了形成CIIP預測,首先從兩個附加語法元素中得出幀內預測模式。最多可以使用四種可能的幀內預測模式:DC、平面、水平或垂直。然後,使用常規幀內和幀間解碼處理來導出幀間預測和幀內預測信號。最後,對幀間和幀內預測信號進行加權平均以獲得CIIP預測。在一些實施例中,通過將允許的幀內模式的數量從4減少到僅1,即平面模式來簡化CIIP模式,並且
因此也去除了CIIP最可能模式(MPM)列表構造。
基於相鄰幀內編解碼塊的數量來自適應地選擇幀內和幀間預測樣本的加權。(wIntra,wInter)加權如下自適應設置。如果頂部和左側相鄰都進行了幀內編解碼,則(wIntra,wInter)設置為等於(3,1)。否則,如果這些塊之一被幀內編解碼,則這些加權是相同的,即(2,2),否則加權被設置為等於(1,3)。
在一些實施例中,用於CIIP的基於相鄰的加權方法以及用於幀內預測的加權和用於幀間預測的加權被表示為(wintra,winter)。在該基於相鄰的加權方法中,當將平面模式選擇為用於CIIP的幀內預測模式時,左相鄰塊和上相鄰塊均用於確定幀內和幀間預測的加權。在一些實施例中,存在三個加權組合,包括comb1={3,1},comb2={2,2},和comb3={1,3}。
對於一些實施例,可以根據一組加權組合設置從加權池的任何子集中選擇用於組合幀內預測和幀間預測的加權(分別為wintra,winter)。為了生成CIIP的最終預測,幀內預測乘以wintra與幀間預測乘以winter相加,然後應用右移(right-shift)N。可以根據N更改wintra和winter的數目。例如,當N=2時,加權池可以為{(1,3),(3,1),(2,2)}。又例如,當N=3時,加權池可以是{(2,6),(6,2),(4,4)}。這兩個示例可以視為相同的加權設置。
在一些實施例中,{上,左,左上,右上,下,左下}的任何子集可用於根據一組塊位置設置來確定CIIP的加權。在下面的描述中,comb1、comb2和comb3可以等於上述設置,或者可以按任意順序設置為加權組合設置中建議的任何子集。例如,當加權池為{(3,1),(2,2),(1、3)}時,comb1、comb2和comb3可以分別是(1、3)、(2、2)和、(3,1),或分別為(3,1)、(2,2)和(1,3),或任何其他可能的順序。在一些實施例中,僅使用左塊(以確定CIIP的加權)。例如,在一些實施例中,如果頂部和左側相鄰都被幀內編解碼,則將
(wIntra,wInter)設置為等於comb1;否則,如果這些塊之一被幀內編解碼,則這些加權是相同的,即,comb2,否則加權被設置為等於comb3。在一些實施例中,如果上述塊與當前塊不在同一CTU中,並且如果左相鄰是幀內編解碼的,則將(wIntra,wInter)設置為等於comb1;否則,這些加權是相同的,即comb2或comb3。在一些實施例中,至少使用左塊(以確定CIIP的加權)。在另一實施例中,當使用上方塊(以確定CIIP的加權)時,可能需要一個約束。當上方塊與當前模組不在同一CTU中時,上方塊不應視為幀內模式。例如,在一些實施例中,如果頂部和左側相鄰都被幀內編解碼,則將(wIntra,wInter)設置為等於comb1;否則,如果這些塊之一被幀內編解碼,則這些加權是相同的,即,comb2,否則加權被設置為等於comb3。如果上方塊與當前塊不在同一CTU中,則(wIntra,wInter)不等於comb1。當上方塊與當前塊不在同一CTU中時,不應考慮上方塊。例如,在一些實施例中,如果頂部和左側相鄰都被幀內編解碼,則將(wIntra,wInter)設置為等於comb1;否則,如果這些塊之一是幀內編解碼的,則用於幀內和幀間加權的這些加權是相同的,即comb2,否則加權設置為等於comb3。如果上方塊與當前塊不在同一CTU中,並且如果左相鄰是幀內編解碼的,則將(wIntra,wInter)設置為等於comb1;否則,這些加權對於幀內和幀間加權是相同的,即comb2或comb3。
在一些實施例中,當用於確定加權的塊全部是幀內模式(由幀內模式編解碼)時,wintra被設置為大於winter。例如,(wintra,winter)=(3,1)。在一些實施例中,當用於決定加權的塊的數量大於特定閾值(例如1)時,wintra設置為大於winter,例如,(wintra,winter)=(3,1)。在一些實施例中,當用於確定加權的塊不是全部幀內模式(編解碼)時,wintra等於winter,例如,(wintra,winter)=(2,2)。在一些實施例中,當用於確定加權的塊的數量小於特定閾值(例如1)時,wintra等於winter,例如(wintra,winter)=(2,2)。
在一些實施例中,當用於確定加權的塊的數量小於特定閾值(例如1)時,wintra等於winter,例如(wintra,winter)=(2、2)。在一些實施例中,當用於決定加權的塊不全是幀內模式(編解碼)時,wintra等於winter,例如,(wintra,winter)=(2,2)。
在一些實施例中,CU的CIIP加權(wintra,winter)可以使用關於如何決定用於其他預測模式上下文的統一方法。例如,可以獨立於來自相鄰塊的資訊來確定CIIP加權。在一些實施例中,可以通過對幀內編解碼的相鄰塊的數量進行計數來確定CIIP加權。例如,相鄰塊包含左側和/或上方塊,從左側開始的一個4x4塊和/或從上方開始的一個4x4塊,分別表示為A1和/或B1。對於另一個示例,相鄰塊包含左(表示為A1)、上(表示為B1)、左上(表示為B2)、左下(表示為A0)和/或右上(表示為B0)。對於另一個示例,相鄰塊包含在相鄰4x8、8x4或8x8區域中的4x4塊,例如左(表示為A1)、左相關(表示為A3)、上(表示為B1)、上相關(表示為Bx,其中x可以是0、2、3、4、5、6、7、8或9)和/或左下角(表示為A0)。
在一些實施例中,CIIP加權可以取決於來自{左,上,右,下,右上,左上}中的任何一個或任意組合的相鄰塊。在一些實施例中,可以使用從左和/或上方開始的相鄰塊。在一些實施例中,CIIP加權不能參考跨CTU行資訊。例如,只能使用來自左和/或左相關的相鄰塊(A1)和/或(A3)(因為A1和A3與當前塊在同一CTU行中)。對於另一個示例,可以使用來自左和/或左相關的相鄰塊(A1)和/或(A3),和/或來自相同CTU中的上相鄰塊(B1),和/或來自相同CTU的上相關(例如,Bx,其中x可以是0、2、3、4、5、6、7、8或9)。
對於一些實施例,可以應用以上的任何組合。上面的任何變化都可以由塊寬度或塊高度或塊面積隱式確定,或由在CU、CTU、切片、圖塊、圖塊、圖塊組、SPS或PPS級別發信的標誌顯式確定。
可以在編碼器和/或解碼器中實現任何上述提議的方法。例如,可以在編碼器的幀間/幀內/轉換編碼解碼模組、運動補償模組、解碼器的合併候選導出模組中實現任何所提出的方法。可替代地,任何所提出的方法可以被實現為耦合到編碼器的幀間/幀內/轉換編碼解碼模組和/或運動補償模組、解碼器的合併候選導出模組的電路。
第12圖說明實例性視訊編碼器1200,其實施各種主要轉換、次級轉換和/或預測模式。如圖所示,視訊編碼器1200從視訊源1205接收輸入視訊信號,並將該信號編碼進位元流1295。視訊編碼器1200具有若干組件或模組,用於對來自視訊源1205的信號進行編碼,至少包括從以下組件中選擇的一些組件:轉換模組1210、量化模組1211、逆量化模組1214、逆轉換模組1215、圖片內(intra-picture)估計模組1220、幀內預測模組1225(圖中描述為圖片內預測)、運動補償模組1230、運動估計模組1235、環路濾波器1245、重建圖片緩衝器1250、MV緩衝器1265和MV預測模組1275、以及熵編碼器1290。運動補償模組1230和運動估計模組1235是幀間預測模組1240的一部分。
在一些實施例中,模組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被臨時存儲在行緩衝器(line buffer)(未示出)中,用於圖片內預測和空間MV預測。重建像素由環路濾波器1245濾波,並存儲在重建圖片緩衝器1250中。在一些實施例中,重建圖片緩衝器1250是視訊編碼器1200外部的記憶體。在一些實施例中,重建圖片緩衝器1250是視訊編碼器1200內部的記憶體。
圖片內估計模組1220基於重建的像素資料1217執行幀內預測以產生幀內預測資料。幀內預測資料被提供給熵編碼器1290以被編碼為位元流1295。幀內預測資料還被幀內預測模組1225使用以產生預測像素資料1213。
運動估計模組1235通過產生MV來執行幀間預測,該MV是存儲在重建圖片緩衝器1250中的先前解碼幀的參考像素資料。這些MV被提供給運動補償模組1230以產生預測像素資料。
視訊編碼器1200不是在位元流中編碼完整的實際MV,而是使用MV預測來生成預測的MV,並且將用於運動補償的MV與預測的MV之間的差編碼為殘差運動資料並存儲在位元流1295。
MV預測模組1275基於參考MV生成預測的MV,參考MV是為對先前的視訊幀進行編碼而生成的,即,用於執行運動補償的運動補償MV。MV預測模組1275從MV緩衝器1265中的先前視訊幀中擷取參考MV。視訊編碼器1200將針對當前視訊幀生成的MV存儲在MV緩衝器1265中作為用於生成預測MV的參考MV。
MV預測模組1275使用參考MV來創建預測的MV。可以通過空間MV預測或時間MV預測來計算預測的MV。熵編碼器1290將當前幀的預測MV和運動補償MV(MC MV)之間的差(殘差運動資料)編碼到位元流1295中。
熵編碼器1290通過使用諸如上下文自適應二進位算術編碼解碼(CABAC)或霍夫曼編碼的熵編解碼技術將各種參數和資料編碼到位元流1295中。熵編碼器1290將各種報頭元素、標誌以及量化的轉換係數1212以及殘差運動資料作為語法元素編碼到位元流1295中。位元流1295又被存儲在存儲設備中或者通過通信介質(例如網路)被傳輸到解碼器。
環路濾波器1245對重建的像素資料1217執行濾波或平滑操作,以減少編解碼的偽像,尤其是在像素塊的邊界處的偽像。在一些實施例中,執行的濾波操作包括樣本自適應偏移(sample adaptive offset,簡寫為SAO)。在一些實施例中,濾波操作包括自適應環路濾波(ALF)。
第13圖示出了啟用和禁用各種主要轉換,次級轉換和/或預測模式的編碼器1200的部分。具體地,對於每個像素塊,編碼器1200確定是否執行特定類型的次級轉換(例如,RST或LFNST),是否執行特定類型的主要轉換(例如,DCT-II),是否執行特定類型的預測(例如ALWIP,TPM或CIIP),以及如何在位元流1295中信令啟用了哪些模式。
如所說明的,轉換模組1210對殘差信號1209執行主要(核心)轉換和/或次級轉換(例如,RST),並且逆轉換模組1215執行對應的逆主要轉換和/或逆次級轉換。編碼器1200為轉換模組1210和逆轉換模組1215選擇主要轉換和/或次級轉換。視訊編碼器1200還實現了組合預測模組1310,其可以接收由圖片內預測模組1225生成的幀內預測值或來自運動補償模組1230或第二運動補償模組1330的幀間預測值。組合預測模組1310隨之產生預測像素資料1213。
MV緩衝器1265將合併候選提供給運動補償模組1230和/或
1330。MV緩衝器1265還存儲用於對當前塊進行編碼的運動資訊和模式方向,以供後續塊使用。合併候選可以由MV改進模組1365來改變、擴展和/或改進。
編碼器1200包括編解碼控制模組1300。編解碼控制模組1300控制MV改進模組1365的操作。編解碼控制模組1300還控制編碼器的轉換和/或預測操作。例如,編解碼控制模組1300確定是否執行次級轉換以及執行哪種類型的次級轉換(例如,RST)。對於另一個示例,編解碼控制模組1300確定要執行哪種類型的主要轉換(例如,DCT-II)。編解碼控制模組1300控制轉換模組1210的轉換操作(主要和/或次級)和逆轉換模組1215的逆轉換操作(主要和/或次級)。
編解碼控制模組1300可以使幀內預測模組1225、運動補償模組1230和/或第二運動補償模組1330能夠實現各種預測模式。具體地,編解碼控制模組1300可以使運動補償模組1230和/或第二運動補償模組1330能夠實現TPM。編解碼控制模組1300可以使運動補償模組1230和/或幀內預測模組1225能夠實現CIIP。當組合來自圖片內預測模組1225、運動補償模組1230和/或第二運動補償模組1330的預測信號時,編解碼控制模組1300還可以使組合預測模組1310採用不同的加權方案,如用於位於TPM的對角線或直線邊界上的重疊預測區域530。
編解碼控制模組1300也可以用於實現或定義各種轉換和預測模式之間的交互。例如,在一些實施例中,編解碼控制模組1300可以啟用ALWIP操作和RST操作,以對當前塊進行編解碼。編解碼控制模組1300還可以根據當前塊的大小,寬度或高度來決定對ALWIP和RST的使能(例如,僅當塊的寬度和/或高度大於或等於某個閾值大小(例如16)時才可以在ALWIP塊中執行RST)。在一些實施例中,當滿足以下兩個約束時,編解碼控制模組1300將決定以ALWIP模式執行次級轉換:1)確定當前塊的寬度和高度大於或等於第一閾值;2)確定次級轉換的索引大於索引閾值,例如零(0)。更詳細地,首先確定當前塊的寬度和高度是否大於或等於第一閾值。當第一判定步驟為肯定時,滿足約束1),
並信令次級轉換的索引。執行隨後的第二判定步驟,以查看信令的索引是否大於索引閾值。如果第二判定步驟是肯定的,則滿足約束2)。在一些實施例中,要求在可以信令次級轉換的索引之前應當滿足更多的約束。然而,這些是根據本申請的精神的示例,並且不應限製本申請的範圍。
作為另一個示例,每當啟用次級轉換模式(例如,具有非零索引)時,編解碼控制模組1300就可以為水平和垂直轉換選擇默認的主要轉換模式,例如IDCT-II。編解碼控制模組1300還可以用於信令參數或設置(例如,合併索引)作為位元流1295的語法元素1390。例如,對於通過TPM模式編解碼的塊,編解碼控制模組1300可以向位元流1295信令兩個信令索引(Idx'1和Idx'0),而不是用於對當前塊的兩個PU進行編碼的實際合併索引(Idx0和Idx1)。
第14圖概念性地示出了用於通過啟用某些主要轉換、次級轉換和/或預測模式來對像素塊進行編碼的過程1400。在一些實施例中,實現編碼器1200的計算設備的一個或多個處理單元(例如,處理器)通過執行存儲在計算機可讀介質中的指令來執行過程1400。在一些實施例中,實現編碼器1200的電子裝置執行過程1400。
編碼器(在框1410處)將要被編碼為視訊的當前圖片的當前塊的像素塊的原始像素資料接收到位元流中。編碼器確定(在框1411處)是否通過幀間預測對塊進行了編解碼。如果否,則該過程進行到框1460。如果是,則該過程確定(在框1412處)該塊是否由TPM進行了編解碼。如果是,則過程進行到框1420。如果不是,則編碼器通過使用基於一個運動候選的預測來對當前塊進行編碼(在框1495處)。
編碼器使用(在框1420處)第一合併索引來選擇第一運動候選,使用第二合併索引來選擇第二運動候選。編碼器計算(在框1430處)(i)基於當前塊的第一運動候選的第一預測和(ii)基於當前塊的第二運動候選的第二預
測。在一些實施例中,對於TPM模式,當前塊沿直線(該直線透過一分叉當前塊(bifurcating the current block)的角度以及與當前塊中心的距離來表示)被分成第一和第二單元。在一些實施例中,第一預測影響第一單元,第二預測影響第二單元,並且第一和第二預測都影響重疊預測區域。
編碼器將從第一合併索引和第二合併索引確定的第一信令索引和第二信令索引編碼(在框1440處)到位元流中。在一些實施例中,基於第一合併索引和第二合併索引之間的比較來確定第二信令索引。在一些實施例中,第一信令索引與第一合併索引相同,但是第二信令索引和第二合併索引可以不同。在一些實施例中,第二信令索引與第二合併索引相同,但是第一信令索引和第一合併索引可以不同。在一些實施例中,第二合併索引被計算為第一合併索引和第二信令索引的和或差。在一些實施例中,基於在位元流中信令的符號位元(sign bit)來計算第二合併索引。在一些實施例中,基於基於第一合併索引推斷出的符號位元來計算第二合併索引。
編碼器通過使用計算出的第一和第二預測將當前塊編碼(在塊1450處)為位元流。
編碼器通過幀內預測來生成(在框1460處)一組預測樣本。例如,對於ALWIP,通過基於當前塊的像素執行平均、矩陣矢量乘法和/或線性插值以生成當前塊的一組預測樣本,換句話說,執行如以上第IV節中所述的ALWIP預測。在一些實施例中,是否次級轉換和ALWIP都執行取決於當前塊的大小、寬度或高度是否大於或小於閾值(例如,在執行次級轉換之前,編碼器確定當前塊的大小/寬度/高度大於或等於第一閾值和/或小於第二閾值,或/並且確定次級轉換的索引大於索引閾值。
編碼器對當前塊的一組殘差樣本進行主要轉換(在框1470處),以生成第一組轉換係數,該殘差樣本是基於一組預測樣本而生成的。
編碼器對第一組轉換係數執行(在框1480處)次級轉換,以生成第二組轉換係數。在一些實施例中,當次級轉換被應用於當前塊時,編碼器通過選擇默認候選來啟用主要轉換。然後,編碼器通過根據啟用的主要和次級轉換對接收到的像素資料執行轉換操作來對當前塊進行編碼,以生成一組轉換係數。
在一些實施例中,默認的主要轉換是離散餘弦轉換類型II(DCT-II)。在一些實施例中,次級轉換是簡化的次級轉換(RST),其將N維矢量映射到不同空間中的R維矢量,其中R小於N。在一些實施例中,次級轉換選自四個或更少的候選次級轉換。在一些實施例中,當啟用次級轉換時,僅從一個主要轉換候選中選擇主要轉換(例如,默認的主要轉換模式,例如用於水平和垂直轉換的DCT-II)。在一些實施例中,唯一的主要轉換候選的索引小於三,例如零。例如,當應用次級轉換(例如,次級轉換的索引大於0)時,只能使用一種主要轉換模式,並且主要轉換的索引設置為0,這意味著主要轉換的轉換模式為DCT-II。
編碼器通過使用生成的轉換係數集合將當前塊編碼(在塊1490處)到位元流中。
第15圖說明實例性視訊解碼器1500,其實施各種主要轉換、次級轉換和預測模式。如圖所示,視訊解碼器1500是圖片解碼或視訊解碼電路,其接收位元流1595並將位元流的內容解碼為視訊幀的像素資料以供顯示。視訊解碼器1500具有用於解碼位元流1595的幾個組件或模組,包括選自逆量化模組1505、逆轉換模組1510、幀內預測模組1525(圖中描述為圖片內預測)、運動補償模組1530、環路濾波器1545、解碼圖片緩衝器1550、MV緩衝器1565、MV預測模組1575和解析器1590中的一些組件。運動補償模組1530是幀間預測模組
1540的一部分。
在一些實施例中,模組1510-1590是由計算設備的一個或多個處理單元(例如,處理器)執行的軟體指令的模組。在一些實施例中,模組1510-1590是由電子裝置的一個或多個IC實現的硬體電路的模組。儘管將模組1510至1590圖示為單獨的模組,但是某些模組可以組合為單個模組。
解析器1590(或熵解碼器)接收位元流1595,並根據由視訊編解碼或圖片編解碼標准定義的語法來執行初始解析。解析的語法元素包括各種報頭元素、標誌以及量化資料(或量化係數)1512。解析器1590通過使用諸如上下文自適應二進位算術編解碼(CABAC)或霍夫曼編解碼之類的熵編碼技術解析各種語法元素。
逆量化模組1505對量化資料(或量化係數)1512進行去量化以獲得轉換係數,並且逆轉換模組1510對轉換係數1516執行逆轉換以產生重建殘差信號1519。重建殘差信號1519與來自幀內預測模組1525或運動補償模組1530的預測像素資料1513相加以產生解碼像素資料1517。解碼像素資料由環路濾波器1545濾波並存儲在解碼圖片緩衝器1550中。在一些實施例中,解碼圖片緩衝器1550是視訊解碼器1500外部的記憶體。在一些實施例中,解碼圖片緩衝器1550是視訊解碼器1500內部的記憶體。
幀內預測模組1525從位元流1595接收幀內預測資料,並據此從存儲在解碼圖片緩衝器1550中的解碼像素資料1517中產生預測像素資料1513。在一些實施例中,解碼像素資料1517也存儲在用於圖片內預測和空間MV預測的行緩衝器(未示出)中。
在一些實施例中,解碼圖片緩衝器1550的內容用於顯示。顯示設備1555或者擷取解碼圖片緩衝器1550的內容以直接顯示,或者將解碼圖片緩衝器的內容擷取到顯示緩衝器。在一些實施例中,顯示設備通過像素傳輸從解碼
圖片緩衝器1550接收像素值。
運動補償模組1530根據運動補償MV(MC MV)從存儲在解碼圖片緩衝器1550中的解碼像素資料1517中生成預測像素資料1513。通過將從位元流1595接收到的殘差運動資料與從MV預測模組1575接收到的預測MV相加,對這些運動補償MV進行解碼。
MV預測模組1575基於為解碼先前的視訊幀而生成的參考MV(例如,用於執行運動補償的運動補償MV)來生成預測的MV。MV預測模組1575從MV緩衝器1565中擷取先前視訊幀的參考MV。視訊解碼器1500將為解碼當前視訊幀而生成的運動補償MV存儲在MV緩衝器1565中,作為用於產生預測MV的參考MV。
環路濾波器1545對解碼的像素資料1517執行濾波或平滑操作,以減少編解碼的偽像(尤其在像素塊的邊界處)。在一些實施例中,執行的濾波操作包括樣本自適應偏移(SAO)。在一些實施例中,濾波操作包括自適應環路濾波器(ALF)。
第16圖示出了啟用和禁用各種主要轉換,次級轉換和/或預測模式的解碼器1500的部分。具體地,對於每個像素塊,解碼器1500確定是否執行特定類型的次級轉換(例如,RST),是否執行特定類型的主要轉換(例如,DCT-II),是否執行特定類型的預測(例如,ALWIP,TPM或CIIP),以及如何根據位元流1595的內容確定啟用哪些模式。
如圖所示,逆轉換模組1510對轉換係數1516執行用於主要轉換和/或次級轉換(例如,RST)的逆轉換操作。解碼器1500選擇用於轉換模組1510和逆轉換模組1515的主要轉換和/或次級轉換。視訊解碼器1500還實現組合預測模組1610,該組合預測模組1610可以接收由圖片內預測模組1525生成的幀內預測值或來自運動補償模組1530或第二運動補償模組1630的幀間預測值。組合預
測模組1610隨之生成預測像素資料1513。
MV緩衝器1565將合併候選提供給運動補償模組1530和/或1630。MV緩衝器1565還存儲用於對當前塊進行編碼的運動資訊和模式方向,以供後續塊使用。合併候選可以由MV改進模組1665來改變、擴展和/或改進。
解碼器1500包括編解碼控制模組1600。編解碼控制模組1600控制MV改進模組1665的操作。編解碼控制模組1600還控制解碼器的轉換和/或預測操作。例如,編解碼控制模組1600確定是否執行次級轉換以及執行哪種類型的次級轉換(例如,RST)。對於另一個示例,編解碼控制模組1600還確定要執行哪種類型的主要轉換(例如,DCT-II)。編解碼控制模組1600控制逆轉換模組1510的逆轉換操作(主要和/或次級轉換)。
編解碼控制模組1600可以使幀內預測模組1525、運動補償模組1530和/或第二運動補償模組1630實施各種預測模式。具體地,編解碼控制模組1600可以使運動補償模組1530和/或第二運動補償模組1630能夠實現TPM。編解碼控制模組1600可以使運動補償模組1530和/或幀內預測模組1525能夠實現CIIP。當組合來自圖片內預測模組1525、運動補償模組1530和/或第二運動補償模組1630的預測信號時,編解碼控制模組1600還可以使組合預測模組1610採用不同的加權方案,如用於位於TPM的對角線或直線邊界上的重疊預測區域530。
編解碼控制模組1600也可以用於實現或定義各種轉換和預測模式之間的交互。例如,在一些實施例中,編解碼控制模組1600可以啟用ALWIP操作和RST操作,以對當前塊進行編解碼。編解碼控制模組1600可以進一步根據當前塊的大小,寬度或高度來使能ALWIP和RST(例如,僅當塊的寬度和/或高度大於或等於某個閾值大小,例如16時才可以在ALWIP塊中執行RST)。作為另一個示例,每當啟用次級轉換模式(例如,具有非零索引)時,編解碼控制模組1600即可為水平和垂直轉換選擇默認的主要轉換模式,例如DCT-II。編解
碼控制模組1600還可以用於從位元流1595接收參數或設置(例如,合併索引)。例如,對於由TPM模式編解碼的塊,編解碼控制模組1600可以從位元流1595接收兩個信令索引(Idx'1和Idx'0)作為語法元素1690,而不是用於編碼當前塊的兩個PU的實際合併索引(Idx0和Idx1)。
第17圖概念性地示出了用於通過啟用某些主要轉換、次級轉換和/或預測模式來解碼像素塊的過程1700。在一些實施例中,實現解碼器1500的計算設備的一個或多個處理單元(例如,處理器)通過執行存儲在計算機可讀介質中的指令來執行過程1700。在一些實施例中,實現解碼器1500的電子裝置執行過程1700。
解碼器從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊。解碼器確定(在框1711處)該塊是否通過幀間預測被解碼。如果否,則處理進行到框1760。如果是,則處理確定(在框1712處)該塊是否由TPM編解碼。如果是,則處理進行到框1715。如果不是,則解碼器通過使用基於一個運動候選的預測來對當前塊進行解碼(在框1795處)。
解碼器從位元流接收(在框1715處)當前塊的第一信令索引和第二信令索引。解碼器根據第一和第二信令索引確定(在方框1720)第一合併索引和第二合併索引。在一些實施例中,基於第一合併索引和第二合併索引之間的比較來確定第二信令索引。在一些實施例中,第一信令索引與第一合併索引相同,但是第二信令索引和第二合併索引可以不同。在一些實施例中,第二信令索引與第二合併索引相同,但是第一信令索引和第一合併索引可以不同。在一些實施例中,第二合併索引被計算為第一合併索引和第二信令索引的和或差。在一些實施例中,基於在位元流中信令的符號位元來計算第二合併索引。在一些實施例中,基於基於第一合併索引推斷出的符號位元來計算第二合併索引。
解碼器使用(在框1730處)第一合併索引來選擇第一運動候選,並且使用第二合併索引來選擇第二運動候選。解碼器計算(在框1740處)(i)基於當前塊的第一運動候選的第一預測和(ii)基於當前塊的第二運動候選的第二預測。在一些實施例中,對於TPM模式,當前塊沿直線(該直線透過一分叉當前塊(bifurcating the current block)的角度以及與當前塊中心的距離來表示)被分成第一和第二單元。在一些實施例中,第一預測影響第一單元,第二預測影響第二單元,並且第一和第二預測都影響重疊預測區域。
解碼器通過使用計算的第一和第二預測來重建當前塊(在框1750處)。
解碼器通過幀內預測來生成(在框1760處)一組預測樣本。例如,對於ALWIP,通過基於當前塊的像素執行平均、矩陣矢量乘法和/或線性插值以生成當前塊的一組預測樣本,換句話說,執行如上述第IV節中所述的ALWIP預測。在一些實施例中,是否次級轉換和ALWIP都執行取決於當前塊的大小、寬度或高度是否大於或小於閾值(例如,在執行次級轉換之前,編碼器確定當前塊的大小/寬度/高度大於或等於第一閾值和/或小於第二閾值,或確定次級轉換的索引大於索引閾值。)在一個更詳細的實施例中,首先確定當前塊的寬度和高度是否大於或等於第一閾值。當第一判定步驟為肯定時,滿足約束1),並信令次級轉換的索引。執行隨後的第二判定步驟,以查看信令的索引是否大於索引閾值。如果第二判定步驟是肯定的,則滿足約束2)。在一些實施例中,要求在可以信令次級轉換的索引之前應當滿足更多的約束。然而,這些是根據本申請的精神的示例,並且不應限製本申請的範圍。
解碼器對第一組轉換係數執行(在方框1770處)逆次級轉換,以生成第二組轉換係數。
解碼器對第二組轉換係數執行(在框1780處)逆主要轉換,以生
成當前塊的一組殘差樣本。在一些實施例中,當次級轉換被應用於當前塊時,解碼器通過選擇默認候選來啟用主要轉換。解碼器然後通過根據啟用的主要和次級轉換對轉換係數執行逆轉換操作來對當前塊進行解碼,以生成一組殘差樣本。
在一些實施例中,默認的主要轉換是離散餘弦轉換類型II(DCT-II)。在一些實施例中,次級轉換是簡化的次級轉換(RST),其將N維矢量映射到不同空間中的R維矢量,其中R小於N。在一些實施例中,次級轉換選自四個或更少的候選次級轉換。在一些實施例中,當啟用次級轉換時,僅從一個主要轉換候選中選擇主要轉換(例如,默認的主要轉換模式,例如用於水平和垂直轉換的DCT-II)。在一些實施例中,唯一的主要轉換候選的索引小於三,例如零。例如,當應用次級轉換(例如,次級轉換的索引大於0)時,只能使用一種主要轉換模式,並且主要轉換的索引設置為0,這意味著主要轉換的轉換模式為DCT-II。
解碼器通過使用殘差樣本集和預測樣本集來重建(在框1790處)當前塊。
許多上述特徵和應用被實現為被指定為記錄在計算機可讀存儲介質(也稱為計算機可讀介質)上的一組指令的軟體過程。當這些指令由一個或多個計算或處理單元(例如,一個或多個處理器,處理器的核心或其他處理單元)執行時,它們使處理單元執行指令中指示的動作。計算機可讀介質的示例包括但不限於CD-ROM、閃存驅動器、隨機存取記憶體(RAM)晶片、硬碟驅動器、可擦可程式化只讀記憶體(EPROM)、電可擦可程式化只讀記憶體(EEPROM))等。計算機可讀介質不包括無線或通過有線連接傳遞的載波和電子信號。
在本說明書中,術語“軟體”旨在包括駐留在只讀記憶體中的韌體或存儲在磁性記憶體中的應用,其可以被讀入記憶體以供處理器處理。而且,在一些實施例中,可以將多個軟體發明實現為較大程式的子部分,同時保留不同的軟體發明。在一些實施例中,多種軟體發明也可以被實現為單獨的程式。最後,一起實現此處描述的軟體發明的單獨程式的任何組合都在本公開的範圍內。在一些實施例中,軟體程式在被安裝以在一個或多個電子系統上運行時,定義了一種或多種執行和執行軟體程式的操作的特定機器實現。
第18圖概念性地示出了實現本公開的一些實施例的電子系統1800。電子系統1800可以是計算機(例如,台式計算機、個人計算機、平板計算機等)、電話、PDA或任何其他種類的電子設備。這樣的電子系統包括各種類型的計算機可讀介質以及用於各種其他類型的計算機可讀介質的介面。電子系統1800包括匯流排1805、處理單元1810、圖形處理單元(GPU)1815、系統記憶體1820、網路1825、只讀記憶體1830、永久存儲設備1835、輸入設備1840,以及輸出設備1845。
匯流排1805共同代表通信地連接電子系統1800的眾多內部設備的所有系統匯流排、外圍設備匯流排和晶片組匯流排。例如,匯流排1805將處理單元1810與GPU 1815、只讀記憶體1830、系統記憶體1820和永久存儲設備1835通信地連接。
處理單元1810從這些各種存儲單元中擷取要執行的指令和要處理的資料,以便執行本公開的處理。在不同的實施例中,處理單元可以是單個處理器或多核處理器。一些指令被傳遞到GPU 1815並由其執行。GPU 1815可以卸載各種計算或補充由處理單元1810提供的圖片處理。
只讀記憶體(ROM)1830存儲由處理單元1810和電子系統的其他模組使用的靜態資料和指令。另一方面,永久存儲設備1835是讀寫存儲設備。
該設備是非易失性存儲單元,即使電子系統1800處於關閉狀態,該單元也存儲指令和資料。本公開的一些實施例使用大容量存儲設備(諸如磁碟或光碟及其對應的磁碟驅動器)作為永久存儲設備1835。
其他實施例使用可移動存儲設備(例如軟碟、閃存設備等,及其對應的磁碟驅動器)作為永久存儲設備。像永久存儲設備1835一樣,系統記憶體1820是讀寫存儲設備。然而,與存儲設備1835不同,系統記憶體1820是易失性讀寫記憶體,例如隨機存取記憶體。系統記憶體1820存儲處理器在運行時使用的一些指令和資料。在一些實施例中,根據本公開的過程被存儲在系統記憶體1820,永久存儲設備1835和/或只讀記憶體1830中。例如,各種存儲單元包括用於根據一些實施例處理多媒體剪切的指令。處理單元1810從這些各種存儲單元中擷取要執行的指令和要處理的資料,以便執行一些實施例的處理。
匯流排1805還連接到輸入和輸出設備1840和1845。輸入設備1840使用戶能夠向電子系統傳達資訊並選擇命令。輸入設備1840包括字母數位鍵盤和指示設備(也稱為“光標控制設備”)、照相機(例如,網路攝像頭)、麥克風或用於接收語音命令的類似設備等。輸出設備1845顯示由電子系統生成的圖像或其他輸出資料。輸出設備1845包括打印機和顯示設備,例如陰極射線管(CRT)或液晶顯示器(LCD),以及揚聲器或類似的音頻輸出設備。一些實施例包括既充當輸入設備又充當輸出設備的設備,例如觸摸屏。
最後,如第18圖所示,匯流排1805還通過網路適配器(未示出)將電子系統1800耦合到網路1825。以這種方式,計算機可以是計算機網路的一部分(例如局域網(“LAN”)、廣域網(“WAN”)或內聯網,或網路網(network of networks),例如互聯網。電子系統1800的任何或所有組件可以與本公開結合使用。
一些實施例包括電子組件,例如微處理器、存儲器和記憶體,將
計算機程式指令存儲在機器可讀或計算機可讀介質(或者稱為計算機可讀存儲介質,機器可讀介質或機器可讀介質)中。這種計算機可讀介質的一些示例包括RAM、ROM、只讀光碟(CD-ROM)、可記錄光碟(CD-R)、可重寫光碟(CD-RW)、只讀數位多功能光碟(例如,DVD-ROM,雙層DVD-ROM)、各種可記錄/可重寫DVD(例如DVD-RAM,DVD-RW,DVD+RW等)、閃存(例如SD卡、mini-SD卡、micro-SD卡等)、磁性和/或固態硬碟驅動器、只讀和可記錄的Blu-Ray®光碟、超密度光碟,任何其他光學或磁性介質以及軟碟。該計算機可讀介質可以存儲計算機程式,該計算機程式可以由至少一個處理單元執行,並且包括用於執行各種操作的指令集。計算機程式或計算機代碼的示例包括諸如由編譯器產生的機器代碼,以及包括由計算機、電子部件或使用解釋器的微處理器執行的更高級別的代碼的文件。
儘管以上討論主要是指執行軟體的微處理器或多核處理器,但是許多上述特徵和應用是由一個或多個積體電路執行的,例如專用積體電路(ASIC)或現場可程式化控制器門陣列(FPGA)。在一些實施例中,這樣的積體電路執行存儲在電路本身上的指令。另外,一些實施例執行存儲在可程式化邏輯設備(PLD),ROM或RAM設備中的軟體。
如本說明書和本申請的任何申請專利範圍中所使用的,術語“計算機”、“服務器”、“處理器”和“記憶體”均指電子或其他技術設備。這些術語不包括個人或人群。為了說明的目的,術語“顯示”或“顯示”是指在電子設備上顯示。如本說明書和本申請的任何申請專利範圍中所使用的,術語“計算機可讀媒體”、“計算機可讀介質”和“機器可讀介質”完全限於有形的物理對象,該有形的物理對像以可被電腦讀取的形式存儲資訊。這些術語不包括任何無線信號、有線下載信號和任何其他臨時信號。[00192]雖然已經參考許多具體細節描述了本公開,但是所屬領域具有通常知識者將認識到,在不脫離本公開的精神的情況
下,本公開可以以其他特定形式來體現。另外,許多附圖(包括第14圖和第17圖)在概念上示出了過程。這些過程的特定操作可能無法按照所示和所描述的確切順序執行。可以不在一個連續的一系列操作中執行特定操作,並且可以在不同的實施例中執行不同的特定操作。此外,該過程可以使用幾個子過程來實現,或者作為更大的宏過程的一部分來實現。因此,所屬領域具有通常知識者將理解,本公開內容不受限於前述說明性細節,而是由所附申請專利範圍限定。
文中描述的主題有時示出了包含在其它不同部件內的或與其它不同部件連接的不同部件。應當理解:這樣描繪的架構僅僅是示例性的,並且,實際上可以實施實現相同功能的許多其它架構。在概念意義上,實現相同功能的部件的任何布置是有效地“相關聯的”,以使得實現期望的功能。因此,文中被組合以獲得特定功能的任意兩個部件可以被視為彼此“相關聯的”,以實現期望的功能,而不管架構或中間部件如何。類似地,這樣相關聯的任意兩個部件還可以被視為彼此“可操作地連接的”或“可操作地耦接的”,以實現期望的功能,並且,能夠這樣相關聯的任意兩個部件還可以被視為彼此“操作上可耦接的”,以實現期望的功能。“操作上可耦接的”的具體示例包含但不限於:實體地可聯結和/或實體地相互、作用的部件、和/或無線地可相互作用和/或無線地相互作用的部件、和/或邏輯地相互作用的和/或邏輯地可相互作用的部件。
此外,關於文中基本上任何複數和/或單數術語的使用,只要對於上下文和/或應用是合適的,所屬技術領域具有通常知識者可以將複數變換成單數,和/或將單數變換成複數。為清楚起見,這裡可以明確地闡述各種單數/複數排列。
所屬技術領域具有通常知識者將會理解,通常,文中所使用的術語,特別是在所附申請專利範圍(例如,所附申請專利範圍中的主體)中所使用的術語通常意在作為“開放性”術語(例如,術語“包含”應當被解釋為“包含但不限
幹”,術語“具有”應當被解釋為“至少具有”,術語“包含”應當被解釋為“包含但不限幹”等)。所屬技術領域具有通常知識者還將理解,如果意在所介紹的申請專利範圍陳述對象的具體數目,則這樣的意圖將會明確地陳述在申請專利範圍中,在缺乏這樣的陳述的情況下,不存在這樣的意圖。例如,為了幫助理解,所附申請專利範圍可以包含使用介紹性短語“至少一個”和“一個或更多個”來介紹申請專利範圍陳述對象。然而,這樣的短語的使用不應當被解釋為:用不定冠詞“一個(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”的可能性。
從前述內容可以理解,本文已經出於說明的目的描述了本公開的各種實施方式,並且在不脫離本公開的範圍和精神的情況下可以進行各種修改。因此,本文公開的各種實施方式不旨在是限制性的,真正的範圍和精神由所附申請專利範圍指示。
1400:過程
1410~1495:框
Claims (20)
- 一種視訊解碼方法,包括:從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊;從該位元流接收該當前塊的第一信令索引和第二信令索引;從該第一信令索引和該第二信令索引中確定第一合併索引和第二合併索引;使用該第一合併索引選擇第一運動候選,並使用該第二合併索引選擇第二運動候選;計算(i)基於該當前塊的該第一運動候選的第一預測,以及(ii)基於該當前塊的該第二運動候選的第二預測;根據依照距離或角度得出的加權因子,結合該第一預測與該第二預測來計算出結合預測;以及通過使用計算出的該結合預測來重建該當前塊。
- 如請求項1所述之方法,其中,沿直線以分叉該當前塊的角度,使用該第一預測將該當前塊劃分為第一單元,使用該第二預測將該當前塊劃分為第二單元。
- 如請求項1所述之方法,其中,基於該第一合併索引與該第二合併索引之間的比較來確定該第二信令索引。
- 如請求項1所述之方法,其中,該第一信令索引與該第一合併索引相同。
- 如請求項1所述之方法,其中,該第二信令索引與該第二合併索引相同。
- 如請求項1所述之方法,其中,該第二合併索引被計算為該第一合併索引與該第二信令索引的和或差。
- 如請求項1所述之方法,其中,該第二合併索引是基於在該位元流中信令的符號位元來計算的。
- 如請求項1所述之方法,其中,該第二合併索引是基於符號位元來計算的,該符號位元是基於該第一合併索引推斷出的。
- 一種電子裝置,包括:編碼器電路,配置為執行包括以下內容的操作:將要被編碼為視訊的當前圖片的當前塊的像素塊的原始像素資料接收到位元流中;通過基於該當前塊的像素執行平均、矩陣矢量乘法和線性插值中的至少一個來生成該當前塊的一組預測樣本;對基於該組預測樣本而生成的該當前塊的一組殘差樣本執行主要轉換,以生成第一組轉換係數;確定次級轉換的索引大於索引閾值;對該第一組轉換係數執行該次級轉換以生成第二組轉換係數;以及通過使用所生成的該第二組轉換係數將該當前塊編碼入該位元流。
- 如請求項9所述之電子裝置,其中,在執行該次級轉換之前,該操作還包括:確定該當前塊的寬度和高度大於或等於第一閾值。
- 如請求項9所述之電子裝置,其中,在執行該次級轉換之前,該操作還包括:確定該當前塊的寬度或高度小於第二閾值。
- 如請求項9所述之電子裝置,其中,該次級轉換是將N維矢量映射到不同空間中的R維矢量的簡化的次級轉換,其中R小於N。
- 如請求項9所述之電子裝置,其中,該次級轉換是從四個或更少的候選次級轉換中選擇的。
- 如請求項9所述之電子裝置,其中,所生成的該組預測樣本是 用於仿射線性加權幀內預測的。
- 一種視訊解碼方法,包括:從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊;當從該位元流接收到的該資料指示將次級轉換應用於該當前塊時,通過選擇默認的主要轉換模式來啟用主要轉換;以及通過根據啟用的該主要轉換或次級轉換執行逆轉換操作來解碼該當前塊,其中當啟用該次級轉換時,推斷出該默認的主要轉換模式。
- 如請求項15所述之方法,其中,該默認的主要轉換模式的索引為零。
- 如請求項15所述之方法,其中,該默認的主要轉換模式是離散餘弦轉換類型II。
- 一種視訊編碼方法,包括:將要被編碼為視訊的當前圖片的當前塊的像素塊的原始像素資料接收到位元流中;當將次級轉換應用於該當前塊時,通過選擇默認的主要轉換模式來啟用主要轉換;通過根據啟用的該主要轉換或次級轉換對接收到的該像素資料進行轉換操作,對該當前塊進行編碼,以產生一組轉換係數;以及通過使用生成的該組轉換係數將該當前塊編碼入該位元流,其中當啟用該次級轉換時,推斷出該默認的主要轉換模式。
- 一種電子裝置,包括:解碼器電路,配置為執行包括以下內容的操作:從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊;從該位元流接收該當前塊的第一信令索引和第二信令索引; 從該第一信令索引和該第二信令索引中確定第一合併索引和第二合併索引;使用該第一合併索引選擇第一運動候選,並使用該第二合併索引選擇第二運動候選;計算(i)基於該當前塊的該第一運動候選的第一預測,以及(ii)基於該當前塊的該第二運動候選的第二預測;根據依照距離或角度得出的加權因子,結合該第一預測與該第二預測來計算出結合預測;以及通過使用計算出的該結合預測來重建該當前塊。
- 一種電子裝置,包括:解碼器電路,配置為執行包括以下內容的操作:從位元流接收資料,以將要解碼的像素塊作為視訊的當前圖片的當前塊;當從該位元流接收到的該資料指示將次級轉換應用於該當前塊時,通過選擇默認的主要轉換模式來啟用主要轉換;以及通過根據啟用的該主要轉換或次級轉換執行逆轉換操作來解碼該當前塊,其中當啟用該次級轉換時,推斷出該默認的主要轉換模式。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962828567P | 2019-04-03 | 2019-04-03 | |
US62/828,567 | 2019-04-03 | ||
US16/836,904 US11616966B2 (en) | 2019-04-03 | 2020-03-31 | Interaction between core transform and secondary transform |
US16/836,904 | 2020-03-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202106004A TW202106004A (zh) | 2021-02-01 |
TWI749503B true TWI749503B (zh) | 2021-12-11 |
Family
ID=72663352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109111224A TWI749503B (zh) | 2019-04-03 | 2020-04-01 | 核心轉換和次級轉換間之交互作用及其裝置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11616966B2 (zh) |
EP (2) | EP3949417A4 (zh) |
TW (1) | TWI749503B (zh) |
WO (1) | WO2020200298A1 (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2018311237B2 (en) * | 2017-08-04 | 2021-07-29 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and apparatus for configuring transform for video compression |
CN116847081A (zh) * | 2018-04-01 | 2023-10-03 | Lg电子株式会社 | 图像解码设备、图像编码设备和用于发送视频信号的设备 |
US11178396B2 (en) * | 2018-11-14 | 2021-11-16 | Tencent America LLC | Constrained intra prediction and unified most probable mode list generation |
US11616966B2 (en) * | 2019-04-03 | 2023-03-28 | Mediatek Inc. | Interaction between core transform and secondary transform |
US11134257B2 (en) | 2019-04-04 | 2021-09-28 | Tencent America LLC | Simplified signaling method for affine linear weighted intra prediction mode |
US11172211B2 (en) * | 2019-04-04 | 2021-11-09 | Tencent America LLC | Method and apparatus for video coding |
US11240534B2 (en) * | 2019-04-05 | 2022-02-01 | Qualcomm Incorporated | Extended multiple transform selection for video coding |
CN118175314A (zh) * | 2019-04-16 | 2024-06-11 | Lg电子株式会社 | 解码和编码设备及发送用于图像的数据的设备 |
KR20220122783A (ko) * | 2019-04-16 | 2022-09-02 | 엘지전자 주식회사 | 변환 인덱스를 이용하는 영상 코딩 |
KR102470696B1 (ko) * | 2019-04-16 | 2022-11-28 | 엘지전자 주식회사 | 영상 코딩에서 매트릭스 기반의 인트라 예측을 위한 변환 |
CN114223207B (zh) | 2019-04-16 | 2023-09-22 | 寰发股份有限公司 | 用次要变换编解码视讯数据的方法以及装置 |
CN113711607B (zh) | 2019-04-16 | 2023-10-10 | 寰发股份有限公司 | 用适应性次要变换信令编解码视频数据的方法以及装置 |
JP7256296B2 (ja) * | 2019-05-08 | 2023-04-11 | エルジー エレクトロニクス インコーポレイティド | Mip及びlfnstを行う画像符号化/復号化方法、装置、及びビットストリームを伝送する方法 |
US11277637B2 (en) * | 2019-05-09 | 2022-03-15 | Qualcomm Incorporated | Reference sampling for matrix intra prediction mode |
US11363284B2 (en) * | 2019-05-09 | 2022-06-14 | Qualcomm Incorporated | Upsampling in affine linear weighted intra prediction |
WO2020228673A1 (en) | 2019-05-10 | 2020-11-19 | Beijing Bytedance Network Technology Co., Ltd. | Conditional use of reduced secondary transform for video processing |
CN113950828B (zh) | 2019-06-07 | 2024-07-05 | 北京字节跳动网络技术有限公司 | 视频比特流中的简化二次变换的有条件信令 |
WO2020250693A1 (ja) * | 2019-06-11 | 2020-12-17 | ソニー株式会社 | 画像処理装置及び画像処理方法 |
US11197025B2 (en) * | 2019-06-21 | 2021-12-07 | Qualcomm Incorporated | Signaling of matrix intra prediction parameters in video coding |
JP7422858B2 (ja) | 2019-08-03 | 2024-01-26 | 北京字節跳動網絡技術有限公司 | ビデオ処理方法、装置、記憶媒体及び記憶方法 |
WO2021032045A1 (en) * | 2019-08-17 | 2021-02-25 | Beijing Bytedance Network Technology Co., Ltd. | Context modeling of side information for reduced secondary transforms in video |
KR20220038128A (ko) | 2019-08-22 | 2022-03-25 | 엘지전자 주식회사 | 인트라 예측 장치 및 방법 |
AU2020354500B2 (en) * | 2019-09-24 | 2024-02-22 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Efficient implementation of matrix-based intra-prediction |
EP4307677A3 (en) | 2020-02-24 | 2024-04-17 | ByteDance Inc. | Interaction between subpicture and tile row signaling |
JP7479492B2 (ja) * | 2020-03-03 | 2024-05-08 | バイトダンス インコーポレイテッド | ビデオ・コーディングにおける低周波ノン・セパラブル変換シグナリング |
EP4104438A4 (en) | 2020-03-11 | 2023-08-16 | Beijing Bytedance Network Technology Co., Ltd. | ADAPTIVE LOOP FILTERING |
CN115699769A (zh) | 2020-05-31 | 2023-02-03 | 抖音视界有限公司 | 使用通用约束信息语法元素的约束信令 |
EP4173294A1 (en) * | 2020-06-30 | 2023-05-03 | InterDigital VC Holdings France, SAS | Hybrid texture particle coding mode improvements |
US20220150518A1 (en) * | 2020-11-11 | 2022-05-12 | Tencent America LLC | Method and apparatus for video coding |
CN115633172A (zh) * | 2020-12-06 | 2023-01-20 | 浙江大华技术股份有限公司 | 基于ibc模式编码方法、电子设备及存储介质 |
US20220417511A1 (en) * | 2021-06-27 | 2022-12-29 | Alibaba Singapore Holding Private Limited | Methods and systems for performing combined inter and intra prediction |
EP4397041A1 (en) * | 2021-08-30 | 2024-07-10 | Tencent America LLC | Method and apparatus for secondary transform with adaptive kernel options |
US20230100043A1 (en) * | 2021-09-30 | 2023-03-30 | Tencent America LLC | Adaptive Transforms for Compound Inter-Intra Prediction Modes |
US20230103505A1 (en) * | 2021-10-01 | 2023-04-06 | Tencent America LLC | Secondary transforms for compound inter-intra prediction modes |
TWI821103B (zh) * | 2022-01-10 | 2023-11-01 | 聯發科技股份有限公司 | 在視訊編解碼系統中使用邊界匹配進行重疊塊運動補償的方法和裝置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170094313A1 (en) * | 2015-09-29 | 2017-03-30 | Qualcomm Incorporated | Non-separable secondary transform for video coding |
US20180352247A1 (en) * | 2015-09-24 | 2018-12-06 | Lg Electronics Inc. | Inter prediction method and apparatus in image coding system |
Family Cites Families (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2081386A1 (en) * | 2008-01-18 | 2009-07-22 | Panasonic Corporation | High precision edge prediction for intracoding |
US20110090952A1 (en) * | 2009-10-21 | 2011-04-21 | Cohen Robert A | Directional Transforms for Video and Image Coding |
US9258573B2 (en) * | 2010-12-07 | 2016-02-09 | Panasonic Intellectual Property Corporation Of America | Pixel adaptive intra smoothing |
CN103024389B (zh) | 2012-12-24 | 2015-08-12 | 芯原微电子(北京)有限公司 | 一种用于hevc的解码装置和方法 |
CN103561263B (zh) | 2013-11-06 | 2016-08-24 | 北京牡丹电子集团有限责任公司数字电视技术中心 | 基于运动矢量约束和加权运动矢量的运动补偿预测方法 |
EP3202143B8 (en) * | 2014-11-18 | 2019-09-25 | MediaTek Inc. | Method of bi-prediction video coding based on motion vectors from uni-prediction and merge candidate |
EP3454559A1 (en) * | 2016-05-13 | 2019-03-13 | Sony Corporation | Image processing device and method |
CN109792522B (zh) * | 2016-09-30 | 2021-10-15 | 索尼公司 | 图像处理装置和方法 |
CN117221574A (zh) * | 2016-10-04 | 2023-12-12 | 英迪股份有限公司 | 图像解码方法、图像编码方法以及发送比特流的方法 |
KR102410424B1 (ko) * | 2016-10-04 | 2022-06-17 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
WO2018070742A1 (ko) * | 2016-10-11 | 2018-04-19 | 한국전자통신연구원 | 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체 |
CN116647677A (zh) * | 2016-10-28 | 2023-08-25 | 韩国电子通信研究院 | 视频编码/解码方法和设备以及存储比特流的记录介质 |
CN116916018A (zh) * | 2016-10-28 | 2023-10-20 | 韩国电子通信研究院 | 视频编码/解码方法和设备以及存储比特流的记录介质 |
US10848758B2 (en) * | 2016-11-22 | 2020-11-24 | Electronics And Telecommunications Research Institute | Image encoding/decoding image method and device, and recording medium storing bit stream |
CN110024399B (zh) * | 2016-11-28 | 2024-05-17 | 韩国电子通信研究院 | 对图像编码/解码的方法和设备及存储比特流的记录介质 |
CN110121884B (zh) * | 2016-11-28 | 2023-04-04 | 韩国电子通信研究院 | 用于滤波的方法和装置 |
CN116962687A (zh) * | 2016-11-29 | 2023-10-27 | 成均馆大学校产学协力团 | 影像编码/解码方法、装置以及对比特流进行存储的记录介质 |
US10609367B2 (en) * | 2016-12-21 | 2020-03-31 | Qualcomm Incorporated | Low-complexity sign prediction for video coding |
CN117156132A (zh) * | 2017-01-02 | 2023-12-01 | Lx 半导体科技有限公司 | 图像编码/解码方法、发送图像数据的方法以及存储介质 |
WO2018174617A1 (ko) * | 2017-03-22 | 2018-09-27 | 한국전자통신연구원 | 블록 형태에 기반한 예측 방법 및 장치 |
CN117425006A (zh) * | 2017-03-22 | 2024-01-19 | 韩国电子通信研究院 | 使用参考块的预测方法和装置 |
US10805641B2 (en) * | 2017-06-15 | 2020-10-13 | Qualcomm Incorporated | Intra filtering applied together with transform processing in video coding |
JP2019017066A (ja) * | 2017-07-03 | 2019-01-31 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | 符号化装置、復号装置、符号化方法及び復号方法 |
KR20190013611A (ko) * | 2017-07-28 | 2019-02-11 | 한국전자통신연구원 | 영상 처리 방법, 그를 이용한 영상 부호화/복호화 방법 및 그 장치 |
CN111149359B (zh) * | 2017-09-20 | 2023-11-17 | 韩国电子通信研究院 | 用于对图像进行编码/解码的方法和装置以及存储有比特流的记录介质 |
US10827173B2 (en) * | 2017-11-13 | 2020-11-03 | Electronics And Telecommunications Research Institute | Method and apparatus for quantization |
US11166014B2 (en) * | 2017-12-14 | 2021-11-02 | Electronics And Telecommunications Research Institute | Image encoding and decoding method and device using prediction network |
US10841577B2 (en) * | 2018-02-08 | 2020-11-17 | Electronics And Telecommunications Research Institute | Method and apparatus for video encoding and video decoding based on neural network |
US10567801B2 (en) * | 2018-03-07 | 2020-02-18 | Tencent America LLC | Method and apparatus for video coding with primary and secondary transforms |
US10771781B2 (en) * | 2018-03-12 | 2020-09-08 | Electronics And Telecommunications Research Institute | Method and apparatus for deriving intra prediction mode |
CN118381900A (zh) * | 2018-03-21 | 2024-07-23 | Lx 半导体科技有限公司 | 图像编码/解码设备以及发送图像数据的设备 |
CN115604470A (zh) * | 2018-04-01 | 2023-01-13 | Lg电子株式会社(Kr) | 视频编解码方法、计算机可读存储介质及发送方法 |
US10419754B1 (en) * | 2018-04-02 | 2019-09-17 | Tencent America LLC | Method and apparatus for video decoding using multiple line intra prediction |
US11019355B2 (en) * | 2018-04-03 | 2021-05-25 | Electronics And Telecommunications Research Institute | Inter-prediction method and apparatus using reference frame generated based on deep learning |
US10798382B2 (en) * | 2018-04-26 | 2020-10-06 | Tencent America LLC | Sub-block transform |
JP7223014B2 (ja) * | 2018-06-03 | 2023-02-15 | エルジー エレクトロニクス インコーポレイティド | 縮小された変換を用いて、ビデオ信号を処理する方法及び装置 |
WO2019235887A1 (ko) * | 2018-06-06 | 2019-12-12 | 엘지전자 주식회사 | 인트라 예측 모드에 기초하여 변환 인덱스 코딩을 수행하는 방법 및 이를 위한 장치 |
US11394959B2 (en) * | 2018-06-29 | 2022-07-19 | Kt Corporation | Method and apparatus for processing video signal |
WO2020009434A1 (ko) * | 2018-07-02 | 2020-01-09 | 엘지전자 주식회사 | 이차 변환을 기반으로 비디오 신호를 처리하는 방법 및 장치 |
US20200014919A1 (en) * | 2018-07-05 | 2020-01-09 | Tencent America LLC | Methods and apparatus for multiple line intra prediction in video compression |
US10819977B2 (en) * | 2018-07-05 | 2020-10-27 | Tencent America LLC | Methods and apparatus for multiple line intra prediction in video compression |
US10701358B2 (en) * | 2018-07-09 | 2020-06-30 | Tencent America LLC | Mode dependent primary and secondary transforms |
WO2020086317A1 (en) * | 2018-10-23 | 2020-04-30 | Tencent America Llc. | Method and apparatus for video coding |
US10778977B2 (en) * | 2018-12-05 | 2020-09-15 | Qualcomm Incorporated | Triangle motion information for video coding |
US10893298B2 (en) * | 2018-12-12 | 2021-01-12 | Tencent America LLC | Method and apparatus for video coding |
JP7222086B2 (ja) * | 2018-12-13 | 2023-02-14 | テンセント・アメリカ・エルエルシー | スキップ及びマージモードのためのマルチ仮説のシグナリング及び動きベクトル差分によるマージの距離オフセットテーブルのシグナリングのための方法及び装置 |
US11032574B2 (en) * | 2018-12-31 | 2021-06-08 | Tencent America LLC | Method and apparatus for video coding |
US11140406B2 (en) * | 2019-02-20 | 2021-10-05 | Qualcomm Incorporated | Signalling for merge mode with motion vector differences in video coding |
US10742972B1 (en) * | 2019-03-08 | 2020-08-11 | Tencent America LLC | Merge list construction in triangular prediction |
US11616966B2 (en) * | 2019-04-03 | 2023-03-28 | Mediatek Inc. | Interaction between core transform and secondary transform |
US11218728B2 (en) * | 2019-06-04 | 2022-01-04 | Tencent America LLC | Method and apparatus for video coding |
-
2020
- 2020-03-31 US US16/836,904 patent/US11616966B2/en active Active
- 2020-04-01 TW TW109111224A patent/TWI749503B/zh active
- 2020-04-03 EP EP20782513.4A patent/EP3949417A4/en not_active Withdrawn
- 2020-04-03 WO PCT/CN2020/083090 patent/WO2020200298A1/en unknown
- 2020-04-03 EP EP23206148.1A patent/EP4290863A3/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180352247A1 (en) * | 2015-09-24 | 2018-12-06 | Lg Electronics Inc. | Inter prediction method and apparatus in image coding system |
US20170094313A1 (en) * | 2015-09-29 | 2017-03-30 | Qualcomm Incorporated | Non-separable secondary transform for video coding |
Non-Patent Citations (3)
Title |
---|
Jonathan Pfaff et.al, CE3: Affine linear weighted intra prediction (CE3-4.1, CE3-4.2), JVET-N0217, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Geneva, CH, 19–27 March 2019 |
Jonathan Pfaff et.al, CE3: Affine linear weighted intra prediction (CE3-4.1, CE3-4.2), JVET-N0217, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Geneva, CH, 19–27 March 2019; * |
Moonmo Koo et.al, CE6: Reduced Secondary Transform (RST) (CE6-3.1), JVET-N0193, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 14th Meeting: Geneva, CH, 19–27 March 2019 * |
Also Published As
Publication number | Publication date |
---|---|
EP3949417A1 (en) | 2022-02-09 |
EP4290863A2 (en) | 2023-12-13 |
US20200322623A1 (en) | 2020-10-08 |
WO2020200298A1 (en) | 2020-10-08 |
CN113661710A (zh) | 2021-11-16 |
EP4290863A3 (en) | 2024-02-21 |
US11616966B2 (en) | 2023-03-28 |
TW202106004A (zh) | 2021-02-01 |
EP3949417A4 (en) | 2023-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI749503B (zh) | 核心轉換和次級轉換間之交互作用及其裝置 | |
TWI737201B (zh) | 用於發信合併工具的方法及裝置 | |
TWI706667B (zh) | 隱式變換設置 | |
TWI711300B (zh) | 照度補償方法及相應之視訊處理裝置 | |
TWI719542B (zh) | 一種視訊編碼/解碼方法及裝置 | |
TWI690200B (zh) | 畫面內合併預測 | |
TWI677234B (zh) | 二次轉換核心尺寸選擇 | |
TWI669951B (zh) | 多重假設之合併模式 | |
TWI749467B (zh) | 幀內塊複製合併列表簡化 | |
TWI749358B (zh) | 共享候選列表 | |
WO2019206190A1 (en) | Storage of motion vectors for affine prediction | |
KR20200113259A (ko) | 하드웨어 친화적으로 제약된 모션 벡터 개선 | |
KR20220103180A (ko) | 병렬 처리를 위한 선택적 스위칭 | |
WO2020103946A1 (en) | Signaling for multi-reference line prediction and multi-hypothesis prediction | |
TW202031046A (zh) | 具有應用的塊設定以及運動儲存設定的三角形預測 | |
KR20210118166A (ko) | 적응형 개수의 영역들을 갖는 기하학적 파티셔닝을 위한 모양 적응 이산 코사인 변환 | |
CN114747216A (zh) | 多重转换选择的发信技术 | |
CN113661710B (zh) | 核心转换和次级转换间的交互作用 | |
US11805245B2 (en) | Latency reduction for reordering prediction candidates | |
TWI847224B (zh) | 視訊編解碼方法及其裝置 | |
WO2023208131A1 (en) | Efficient geometric partitioning mode video coding | |
TW202404354A (zh) | 利用卷積模型的預測改進 | |
TW202402054A (zh) | 用於候選清單的相似性閾值 |