TWI815973B - 具有自我調整運動向量解析度的運動向量精度指示的信令通知 - Google Patents
具有自我調整運動向量解析度的運動向量精度指示的信令通知 Download PDFInfo
- Publication number
- TWI815973B TWI815973B TW108134304A TW108134304A TWI815973B TW I815973 B TWI815973 B TW I815973B TW 108134304 A TW108134304 A TW 108134304A TW 108134304 A TW108134304 A TW 108134304A TW I815973 B TWI815973 B TW I815973B
- Authority
- TW
- Taiwan
- Prior art keywords
- motion vector
- pixel
- motion
- video block
- current video
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 324
- 239000013598 vector Substances 0.000 title claims abstract description 223
- 230000011664 signaling Effects 0.000 title claims abstract description 9
- 230000003044 adaptive effect Effects 0.000 title abstract description 4
- 238000000034 method Methods 0.000 claims abstract description 132
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims abstract description 60
- 238000012545 processing Methods 0.000 claims abstract description 26
- 238000006243 chemical reaction Methods 0.000 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 16
- 238000009795 derivation Methods 0.000 abstract description 31
- 230000002123 temporal effect Effects 0.000 description 32
- 239000000523 sample Substances 0.000 description 28
- 241000023320 Luma <angiosperm> Species 0.000 description 20
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 20
- 230000002146 bilateral effect Effects 0.000 description 16
- 230000002457 bidirectional effect Effects 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000013074 reference sample Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 239000000758 substrate 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/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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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/53—Multi-resolution motion estimation; Hierarchical motion estimation
-
- 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/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/184—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 bits, e.g. of the compressed video stream
-
- 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/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- 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
-
- 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/567—Motion estimation based on rate distortion criteria
-
- 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/577—Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
-
- 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/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
-
- 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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Complex Calculations (AREA)
- Television Systems (AREA)
Abstract
描述了用於數位視頻編碼的設備、系統和方法,其包括具有自我調整運動向量解析度的運動向量精度指示的信令通知。用於視頻處理的示例性方法包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,其中最終運動向量的精度與當前視頻塊的儲存的運動向量的精度相同;以及基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
Description
本專利文件涉及視頻編碼技術、設備和系統。
[相關申請的交叉引用]
根據適用的專利法和/或依據巴黎公約的規則,本申請是為了及時要求於2018年9月23日提交的國際專利申請No. PCT/CN2018/107168的優先權和利益。出於根據相關法律的所有目的,上述申請的全部公開通過引用而並入作為本申請的公開的一部分。
儘管視頻壓縮技術有所進步,但數位視頻仍然占互聯網和其他數位通信網路上的最大頻寬使用。隨著能夠接收和顯示視頻的連接用戶設備的數量增加,預計對數位視頻使用的頻寬需求將繼續增長。
描述了與數位視頻編碼,特別是用於具有自我調整運動向量解析度(Adaptive Motion Vector Resolution,AMVR)的仿射模式的運動向量預測值推導和信令通知有關的設備、系統和方法。所描述的方法可以應用於現有視頻編碼標準(例如,高效視頻編碼(High Efficiency Video Coding,HEVC))和未來視頻編碼標準或視頻編解碼器。
在一個代表性方面,所公開的技術可以用來提供用於視頻處理的方法。該方法包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,其中最終運動向量的精度與當前視頻塊的儲存的運動向量的精度相同;以及基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
在另一代表性方面,所公開的技術可以用來提供用於視頻處理的方法。該方法包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,其中當前視頻塊是以仿射模式而編碼的,並且其中位元流表示包括指示與當前視頻塊相關聯的運動向量或運動向量差的精度的、包括多於一個位元的欄位;以及基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
在又一代表性方面,上述方法以處理器可運行代碼的形式而體現,並且被儲存在電腦可讀程式介質中。
在又一代表性方面,公開了一種被配置為或可操作來執行上述方法的設備。該設備可以包括被編程為實施該方法的處理器。
在又一代表性方面,視頻解碼器裝置可以實施如本文所描述的方法。
在附圖、說明書和申請專利範圍中更詳細地描述了所公開的技術的上述以及其他方面和特徵。
由於對更高解析度視頻的日益增長的需求,視頻編碼方法和技術在現代技術中無處不在。視頻編解碼器通常包括壓縮或解壓縮數位視頻的電子電路或軟體,並且正在不斷被改進以提供更高的編碼效率。視頻編解碼器將未壓縮的視頻轉換為壓縮格式,反之亦然。視頻質量、用來表示視頻的數據量(由位元率確定)、編碼和解碼算法的複雜性、對數據丟失和錯誤的敏感性、編輯的簡易性、隨機存取和端到端延遲(時延)之間存在複雜的關係。壓縮格式通常符合標準視頻壓縮規範,例如,高效視頻編碼(HEVC)標準(也已知為H.265或MPEG-H第2部分)[1]、要完成的通用視頻編碼標準、或其他當前和/或未來視頻編碼標準。
所公開的技術的實施例可以應用於現有視頻編碼標準(例如,HEVC、H.265)和未來標準以改進壓縮性能。在本文件中使用章節標題以提高描述的可讀性,並且不以任何方式將討論或實施例(和/或實施方式)僅限制於各個章節。
1. HEVC/H.265
中的幀間預測的示例
多年來,視頻編碼標準已經得到顯著改進,並且現在部分地提供高編碼效率並且支持更高的解析度。諸如HEVC和H.265的最新標準基於其中利用時域預測加變換編碼的混合視頻編碼結構。
1.1
預測模式的示例
每個幀間預測的PU(預測單元)具有一個或兩個參考圖片列表的運動參數。在一些實施例中,運動參數包括運動向量和參考圖片索引。在其他實施例中,也可以使用inter_pred_idc
來信令通知對兩個參考圖片列表中的一個的使用。在又一些實施例中,可以將運動向量顯式地編碼為相對於預測值的增量(delta)。
當用跳過模式對CU進行編碼時,一個PU與CU相關聯,並且不存在顯著的殘差係數、不存在編碼的運動向量增量或參考圖片索引。指定Merge模式,從而從相鄰PU獲得當前PU的運動參數,包括空域和時域候選。Merge模式可以應用於任何幀間預測的PU,而不僅應用於跳過模式。Merge模式的替代是運動參數的顯式傳輸,其中,對於每個PU,顯式地信令通知運動向量、每個參考圖片列表的對應參考圖片索引、以及參考圖片列表使用。
當信令指示將使用兩個參考圖片列表中的一個時,從一個樣點塊產生PU。這被稱為“單向預測(uni-prediction)”。單向預測可用於P條帶和B條帶兩者[2]。
當信令指示將使用兩個參考圖片列表時,從兩個樣點塊產生PU。這被稱為“雙向預測(bi-prediction)”。雙向預測僅可用於B條帶。
1.1.1
建構
Merge
模式的候選的實施例
當使用Merge模式預測PU時,從位元流解析指向Merge候選列表中的條目的索引並將其用於檢索運動信息。該列表的建構可以根據以下步驟序列總結:
步驟1:初始候選推導
步驟1.1:空域候選推導
步驟1.2:空域候選的冗餘檢查
步驟1.3:時域候選推導
步驟2:附加候選***
步驟2.1:創建雙向預測候選
步驟2.2:***零運動候選
圖1示出了基於上面總結的步驟序列建構Merge候選列表的示例。對於空域Merge候選推導,在位於五個不同位置的候選當中選擇最多四個Merge候選。對於時域Merge候選推導,在兩個候選當中選擇最多一個Merge候選。由於在解碼器處假設每個PU的恒定數量的候選,因此當候選的數量未達到在條帶標頭中信令通知的最大Merge候選數量(MaxNumMergeCand)時,生成附加候選。由於候選的數量是恒定的,因此使用截斷的一元二值化(Truncated Unary binarization,TU)來編碼最佳Merge候選的索引。如果CU的尺寸等於8,則當前CU的所有PU共享單個Merge候選列表,其與2N×2N預測單元的Merge候選列表相同。
1.1.2
建構空域
Merge
候選
在空域Merge候選的推導中,在位於圖2描繪的位置的候選當中選擇最多四個Merge候選。推導的順序是A1
、B1
、B0
、A0
和B2
。僅當位置A1
、B1
、B0
、A0
的任何PU不可用(例如,因為它屬另一條帶或片)或者是幀內編碼時,才考慮位置B2
。在添加位置A1
處的候選之後,對剩餘候選的添加進行冗餘檢查,其確保具有相同運動信息的候選被排除在列表之外,使得編碼效率提高。
為了降低計算複雜度,在所提到的冗餘檢查中並未考慮所有可能的候選對。相反,僅考慮圖3中用箭頭連結的對,並且僅在用於冗餘檢查的對應候選具有不一樣的運動信息時,才將候選添加到列表。重複運動信息的另一來源是與不同於2N×2N的分割相關聯的“第二 PU
”。作為示例,圖4A和圖4B分別描繪了針對情況N×2N和2N×N的第二PU。當當前PU被分割為N×2N時,位置A1
處的候選不被考慮用於列表建構。在一些實施例中,添加該候選可能導致具有相同運動信息的兩個預測單元,這對於在編碼單元中僅具有一個PU是冗餘的。類似地,當當前PU被分割為2N×N時,不考慮位置B1
。
1.1.3
建構時域
Merge
候選
在該步驟中,只有一個候選被添加到列表。具體地,在該時域Merge候選的推導中,基於並置PU來推導縮放的運動向量,該並置PU屬給定參考圖片列表內與當前圖片具有最小POC差的圖片。在條帶標頭中顯式地信令通知要用於並置PU的推導的參考圖片列表。
圖5示出了時域Merge候選的縮放的運動向量的推導的示例(如虛線),其是使用POC距離tb和td從並置PU的運動向量縮放的,其中tb被定義為當前圖片的參考圖片與當前圖片之間的POC差,並且td被定義為並置圖片的參考圖片與並置圖片之間的POC差。時域Merge候選的參考圖片索引被設置為等於零。對於B條帶,獲得兩個運動向量,一個用於參考圖片列表0,另一個用於參考圖片列表1,並且組合該兩個運動向量以得到雙向預測Merge候選。
在屬參考幀的並置PU(Y)中,在候選C0
和C1
之間選擇時域候選的位置,如圖6所描繪的。如果位置C0
處的PU不可用、是幀內編碼的、或者在當前CTU之外,則使用位置C1
。否則,位置C0
用於時域Merge候選的推導。
1.1.4
建構附加類型的
Merge
候選
除了空時Merge候選之外,還存在兩種附加類型的Merge候選:組合的雙向預測Merge候選和零Merge候選。通過利用空時Merge候選來生成組合的雙向預測Merge候選。組合的雙向預測Merge候選僅用於B條帶。通過將初始候選的第一參考圖片列表運動參數與另一候選的第二參考圖片列表運動參數組合來生成組合的雙向預測候選。如果這兩個元組提供不同的運動假設,它們將形成新的雙向預測候選。
圖7示出了該過程的示例,其中,原始列表(左側的710)中的具有mvL0和refIdxL0或mvL1和refIdxL1的兩個候選用來創建添加到最終列表(右側的720)的組合的雙向預測Merge候選。
***零運動候選以填充Merge候選列表中的剩餘條目,從而達到MaxNumMergeCand容量。這些候選具有零空域位移和從零開始並且每當新的零運動候選被添加到列表時增加的參考圖片索引。對於單向和雙向預測,由這些候選使用的參考幀的數量分別是一和二。在一些實施例中,不對這些候選執行冗餘檢查。
1.1.5
用於並列處理的運動估計區域的示例
為了加速編碼處理,可以並列執行運動估計,從而同時推導給定區域內部的所有預測單元的運動向量。從空域鄰域推導Merge候選可能干擾並列處理,因為一個預測單元直到其相關聯的運動估計完成時才能從鄰近PU推導運動參數。為了減輕編碼效率和處理等待時間之間的折衷,可以定義運動估計區域(Motion Estimation Region,MER)。MER的尺寸可以在圖片參數集(Picture Parameter Set,PPS)中使用“log2_parallel_merge_level_minus2”語法元素而信令通知。當定義MER時,落入相同區域的Merge候選被標記為不可用,並且因此在列表建構中不予考慮。
1.2
高級運動向量預測(
Advanced Motion Vector Prediction
,
AMVP
)的示例
AMVP利用運動向量與相鄰PU的空時相關性,其用於運動參數的顯式傳輸。它通過首先檢查時域上相鄰的PU位置的左側、上側的可用性,移除冗餘候選並添加零向量以使候選列表為恒定長度來建構運動向量候選列表。然後,編碼器可以從候選列表選擇最佳預測值,並且發送指示所選候選的對應索引。與Merge索引信令類似,使用截斷的一元來編碼最佳運動向量候選的索引。在這種情況下要編碼的最大值是2(參見圖8)。在以下章節中,提供了關於運動向量預測候選的推導過程的細節。
1.2.1
建構運動向量預測候選的示例
圖8總結了運動向量預測候選的推導過程,並且可以針對具有作為輸入的refidx的每個參考圖片列表而實施。
在運動向量預測中,考慮兩種類型的運動向量候選:空域運動向量候選和時域運動向量候選。對於空域運動向量候選推導,最終基於位於如先前在圖2中示出的五個不同位置的每個PU的運動向量推導兩個運動向量候選。
對於時域運動向量候選推導,從兩個候選選擇一個運動向量候選,其是基於兩個不同的並置位置推導的。在產生空時候選的第一列表之後,移除列表中的重複的運動向量候選。如果潛在候選的數量大於二,則從列表移除相關聯的參考圖片列表內的其參考圖片索引大於1的運動向量候選。如果空時運動向量候選的數量小於二,則將附加零運動向量候選添加到列表中。
1.2.2
建構空域運動向量候選
在空域運動向量候選的推導中,在五個潛在候選當中考慮最多兩個候選,其從位於如先前在圖2中示出的位置的PU推導,那些位置與運動Merge的位置相同。將當前PU的左側的推導順序定義為A0
、A1
,以及縮放的A0
、縮放的A1
。將當前PU的上側的推導順序定義為B0
、B1
、B2
,縮放的B0
、縮放的B1
、縮放的B2
。因此,對於每一側,存在可以用作運動向量候選的四種情況,其中兩種情況不需要使用空域縮放,並且兩種情況使用空域縮放。四種不同的情況總結如下:
--無空域縮放
(1)相同的參考圖片列表,以及相同的參考圖片索引(相同的POC)
(2)不同的參考圖片列表,但相同的參考圖片(相同的POC)
--空域縮放
(3)相同的參考圖片列表,但不同的參考圖片(不同的POC)
(4)不同的參考圖片列表,以及不同的參考圖片(不同的POC)
首先檢查無空域縮放的情況,然後檢查允許空域縮放的情況。當POC在相鄰PU的參考圖片和當前PU的參考圖片之間不同時,考慮空域縮放,而不管參考圖片列表。如果左側候選的所有PU都不可用或者是幀內編碼的,則允許對上側運動向量進行縮放以幫助左側和上側MV候選的並列推導。否則,不允許對上側運動向量進行空域縮放。
如圖9中的示例所示,對於空域縮放情況,以與時域縮放類似的方式縮放相鄰PU的運動向量。一個差異是給出參考圖片列表和當前PU的索引作為輸入;實際縮放過程與時域縮放過程相同。
1.2.3
建構時域運動向量候選
除了參考圖片索引推導之外,用於推導時域Merge候選的所有過程與用於推導空域運動向量候選的過程相同(如圖6中的示例所示)。在一些實施例中,參考圖片索引被信令通知到解碼器。
2.
聯合探索模型(
Joint Exploration Model
,
JEM
)中的幀間預測方法的示例
在一些實施例中,使用已知為聯合探索模型(JEM)[3][4]的參考軟體來探索未來視頻編碼技術。在JEM中,在幾個編碼工具中采用基於子塊的預測,諸如仿射預測、可選時域運動向量預測(ATMVP)、空時運動向量預測(STMVP)、雙向光流(bi-directional optical flow,BIO),幀速率上轉換(FRUC)、局部自我調整運動向量解析度(Locally Adaptive Motion Vector Resolution,LAMVR)、重疊塊運動補償(OBMC)、局部光照補償(LIC)和解碼器側運動向量細化(Decoder-side Motion Vector Refinement,DMVR)。
2.1
基於子
CU
的運動向量預測的示例
在具有四叉樹加二叉樹(Quadtrees Plus Binary Trees,QTBT)的JEM中,每個CU可以具有用於每個預測方向的至多一個運動參數集。在一些實施例中,通過將大CU劃分為子CU並且推導大CU的所有子CU的運動信息,在編碼器中考慮兩個子CU級別運動向量預測方法。可選時域運動向量預測(ATMVP)方法允許每個CU從小於並置參考圖片中的當前CU的多個塊提取運動信息的多個集合。在空時運動向量預測(STMVP)方法中,通過使用時域運動向量預測值和空域相鄰運動向量來遞迴地推導子CU的運動向量。在一些實施例中並且為了保留子CU運動預測的更準確的運動場,可以禁用參考幀的運動壓縮。
2.1.1
可選時域運動向量預測(
ATMVP
)的示例
在ATMVP方法中,通過從小於當前CU的塊提取運動信息(包括運動向量和參考索引)的多個集合來修改時域運動向量預測(Temporal Motion Vector Prediction,TMVP)方法。
圖10示出了CU 1000的ATMVP運動預測過程的示例。ATMVP方法以兩個步驟預測CU 1000內的子CU 1001的運動向量。第一步驟是利用時域向量識別參考圖片1050中的對應塊1051。參考圖片1050也被稱為運動源圖片。第二步驟是將當前CU 1000劃分為子CU 1001,並且從對應於每個子CU的塊獲得運動向量以及每個子CU的參考索引。
在第一步驟中,通過當前CU 1000的空域相鄰塊的運動信息確定參考圖片1050和對應塊。為了避免相鄰塊的重複掃描過程,使用當前CU 1000的Merge候選列表中的第一Merge候選。第一可用運動向量及其相關聯的參考索引被設置為時域向量和運動源圖片的索引。這樣,與TMVP相比,可以更準確地識別對應塊,其中對應塊(有時稱為並置塊)總是在相對於當前CU的右下方或中心位置。
在第二步驟中,通過向當前CU的坐標添加時域向量,通過運動源圖片1050中的時域向量來識別子CU 1051的對應塊。對於每個子CU,其對應塊(例如,覆蓋中心樣點的最小運動網格)的運動信息用於推導子CU的運動信息。在識別了對應N×N塊的運動信息之後,以與HEVC的TMVP相同的方式將其轉換為當前子CU的運動向量和參考索引,其中運動縮放和其他過程適用。例如,解碼器檢查是否滿足低延遲條件(例如,當前圖片的所有參考圖片的POC小於當前圖片的POC)並且可能使用運動向量MVx
(例如,對應於參考圖片列表X的運動向量)來預測每個子CU的運動向量MVy
(例如,X等於0或1,Y等於1-X)。
2.1.2
空時運動向量預測(
STMVP
)的示例
在STMVP方法中,按照光柵掃描順序遞迴地推導子CU的運動向量。圖11示出了具有四個子塊的一個CU和相鄰塊的示例。考慮包括四個4×4子CU A(1101)、B(1102)、C(1103)和D(1104)的8×8 CU 1100。當前幀中的相鄰4×4塊被標記為a(1111)、b(1112)、c(1113)和d(1114)。
子CU A的運動推導通過識別其兩個空域鄰居開始。第一鄰居是子CU A(1101)的上側的N×N塊(塊c 1113)。如果該塊c(1113)不可用或者是幀內編碼的,則檢查子CU A(1101)的上側的其他N×N塊(從塊c 1113開始,從左到右)。第二鄰居是子CU A 1101的左側的塊(塊b 1112)。如果塊b(1112)不可用或者是幀內編碼的,則檢查子CU A 1101的左側的其他塊(從塊b 1112開始,從上到下)。從每個列表的相鄰塊獲得的運動信息被縮放到給定列表的第一參考幀。接下來,通過遵循與HEVC中指定的TMVP推導的過程相同的過程來推導子塊A 1101的時域運動向量預測值(Temporal Motion Vector Predictor,TMVP)。提取塊D 1114處的並置塊的運動信息並對應地縮放。最後,在檢索和縮放運動信息之後,分別針對每個參考列表平均所有可用的運動向量。指派平均的運動向量為當前子CU的運動向量。
2.1.3
子
CU
運動預測模式信令通知的示例
在一些實施例中,啟用子CU模式作為附加Merge候選,並且不需要附加語法元素來信令通知該模式。將兩個附加Merge候選添加到每個CU的Merge候選列表以表示ATMVP模式和STMVP模式。在另一些實施例中,如果序列參數集指示啟用了ATMVP和STMVP,則使用多達七個Merge候選。附加Merge候選的編碼邏輯與HM中的Merge候選相同,這意味著,對於P條帶或B條帶中的每個CU,對於兩個附加Merge候選可能需要另外兩個RD檢查。在一些實施例中,例如JEM,Merge索引的所有二進制位通過CABAC(基於上下文的自我調整二進制算術編碼)進行上下文編碼。在另一些實施例中,例如,HEVC,僅對第一個二進制位進行上下文編碼,並且對剩餘的二進制位進行上下文旁路編碼。
2.2
自我調整運動向量差解析度的示例
在一些實施例中,當條帶標頭中的use_integer_mv_flag等於0時,以四分之一亮度樣點為單位信令通知(PU的運動向量和預測的運動向量之間的)運動向量差(Motion Vector Difference,MVD)。在JEM中,引入了局部自我調整運動向量解析度(LAMVR)。在JEM中,MVD可以以四分之一亮度樣點、整數亮度樣點或四亮度樣點為單位而編碼。在編碼單元(CU)級別控制MVD解析度,並且對於具有至少一個非零MVD分量的每個CU有條件地信令通知MVD解析度標志。
對於具有至少一個非零MVD分量的CU,信令通知第一標志以指示在CU中是否使用四分之一亮度樣點MV精度。當第一標志(等於1)指示不使用四分之一亮度樣點MV精度時,信令通知另一標志以指示是使用整數亮度樣點MV精度還是使用四亮度樣點MV精度。
當CU的第一MVD解析度標志為零或不針對CU而編碼(意味著CU中的所有MVD是零)時,四分之一亮度樣點MV解析度用於CU。當CU使用整數亮度樣點MV精度或四亮度樣點MV精度時,CU的AMVP候選列表中的MVP被取整到對應精度。
在編碼器中,CU級別RD檢查用於確定哪個MVD解析度要用於CU。即,對於每個MVD解析度執行三次CU級別RD檢查。為了加快編碼器速度,在JEM中應用以下編碼方案:
--在具有常規四分之一亮度樣點MVD解析度的CU的RD檢查期間,儲存當前CU的運動信息(整數亮度樣點精度)。儲存的(在取整之後的)運動信息在具有整數亮度樣點和4亮度樣點MVD解析度的相同CU的RD檢查期間用作進一步小範圍運動向量細化的開始點,使得耗時的運動估計過程不重複三次。
--有條件地調用具有4亮度樣點MVD解析度的CU的RD檢查。對於CU,當整數亮度樣點MVD解析度的RD成本比四分之一亮度樣點MVD解析度的RD成本大得多時,跳過CU的4亮度樣點MVD解析度的RD檢查。
2.3
更高的運動向量儲存精度的示例
在HEVC中,運動向量精度為四分之一像素(對於4:2:0視頻,四分之一亮度樣點和八分之一彩度樣點)。在JEM中,內部運動向量儲存和Merge候選的精度增加到1/16像素。更高的運動向量精度(1/16像素)用於以跳過/Merge模式編碼的CU的運動補償幀間預測。對於以常規AMVP模式而編碼的CU,使用整數像素或四分之一像素運動。
具有與HEVC運動補償插值濾波器相同的濾波器長度和歸一化因子的SHVC上采樣插值濾波器被用作附加分數像素位置的運動補償插值濾波器。在JEM中彩度分量運動向量精度為1/32樣點,通過使用兩個相鄰的1/16像素分數位置的濾波器的平均來推導1/32像素分數位置的附加插值濾波器。
2.4
重疊塊運動補償(
OBMC
)的示例
在JEM中,可以使用CU級別的語法來打開和關閉OBMC。當在JEM中使用OBMC時,除了CU的右側邊界和底部邊界之外,對所有運動補償(Motion Compensation,MC)塊邊界執行OBMC。此外,它還應用於亮度和彩度分量兩者。在JEM中,MC塊對應於編碼塊。當用子CU模式(包括子CU Merge、仿射和FRUC模式)編碼CU時,CU的每個子塊是MC塊。為了以統一的方式處理CU邊界,對於所有MC塊邊界以子塊級別執行OBMC,其中子塊尺寸被設置為等於4×4,如圖12A和圖12B所示。
圖12A示出了CU/PU邊界處的子塊,並且陰影子塊是OBMC應用的位置。類似地,圖12B示出了ATMVP模式中的子Pus。
當OBMC應用於當前子塊時,除了當前運動向量之外,四個連接的相鄰子塊的運動向量(如果可用且與當前運動向量不同)也用於推導當前子塊的預測塊。組合基於多個運動向量的這些多個預測塊以生成當前子塊的最終預測信號。
將基於相鄰子塊的運動向量的預測塊表示為PN,其中N指示相鄰的上側、下側、左側和右側子塊的索引,並且將基於當前子塊的運動向量的預測塊表示為PC。當PN是基於包含與當前子塊相同的運動信息的相鄰子塊的運動信息時,不從PN執行OBMC。否則,將PN的每個樣點添加到PC中的相同樣點,即將PN的四列/行添加到PC。加權因子{1/4, 1/8, 1/16, 1/32}用於PN,並且加權因子{3/4, 7/8, 15/16, 31/32}用於PC。例外是小MC塊(即,當編碼塊的高度或寬度等於4或CU是用子CU模式編碼的時),對其僅將PN的兩列/行添加到PC。在這種情況下,加權因子{1/4, 1/8}用於PN
,並且加權因子{3/4, 7/8}用於PC。對於基於垂直(水平)相鄰子塊的運動向量生成的PN,將PN的相同列(行)中的樣點添加到具有相同加權因子的PC。
在JEM中,對於尺寸小於或等於256個亮度樣點的CU,信令通知CU級別標志以指示是否對當前CU應用OBMC。對於尺寸超過256個亮度樣點或未使用AMVP模式進行編碼的CU,默認應用OBMC。在編碼器處,當將OBMC應用於CU時,在運動估計階段期間考慮其影響。由OBMC使用頂部相鄰塊和左側相鄰塊的運動信息形成的預測信號用於補償當前CU的原始信號的頂部邊界和左側邊界,然後應用常規運動估計處理。
2.5
局部光照補償(
LIC
)的示例
LIC是基於使用縮放因子a和偏移b的、用於光照變化的線性模型。並且針對每個幀間模式編碼的編碼單元(CU)自我調整地啟用或禁用它。
當LIC應用於CU時,采用最小平方誤差方法來通過使用當前CU的相鄰樣點及其對應參考樣點來推導參數a
和b
。圖13示出了用來推導IC算法的參數的相鄰樣點的示例。更具體地並且如圖13所示,使用CU的子采樣(2:1子采樣)相鄰樣點和參考圖片中的(由當前CU或子CU的運動信息識別的)對應樣點。推導IC參數並將其分別應用於每個預測方向。
當用Merge模式編碼CU時,以類似於Merge模式中的運動信息複製的方式從相鄰塊複製LIC標志;否則,向CU信令通知LIC標志以指示是否應用LIC。
當針對圖片啟用LIC時,需要附加CU級別RD檢查以確定是否將LIC應用於CU。當為CU啟用LIC時,分別針對整數像素運動搜索和分數像素運動搜索,使用去均值絕對差之和(Mean-Removed Sum of Absolute Difference,MR-SAD)和去均值絕對哈達瑪變換差之和(Mean-Removed Sum of Absolute Hadamard-Transformed Difference,MR-SATD),而不是SAD和SATD。
為了降低編碼複雜度,在JEM中應用以下編碼方案:
--當當前圖片與其參考圖片之間沒有明顯的光照變化時,對於整個圖片禁用LIC。為了識別這種情形,在編碼器處計算當前圖片和當前圖片的每個參考圖片的直方圖。如果當前圖片與當前圖片的每個參考圖片之間的直方圖差小於給定閾值,則對當前圖片禁用LIC;否則,對當前圖片啟用LIC。
2.6
仿射運動補償預測的示例
在HEVC中,僅將平移運動模型應用於運動補償預測(Motion Compensation Prediction,MCP)。然而,相機和物體可以具有多種運動,例如放大/縮小、旋轉、透視運動和/或其他不規則運動。另一方面,JEM應用簡化的仿射變換運動補償預測。圖14示出了塊1400的由兩個控制點運動向量V0
和V1
描述的仿射運動場的示例。塊1400的運動向量場(MVF)可以通過以下等式描述:等式(1)
如圖14所示,(v0x
, v0y
)是左上角控制點的運動向量,並且(v1x
, v1y
)是右上角控制點的運動向量。為了簡化運動補償預測,可以應用基於子塊的仿射變換預測。子塊尺寸M×N如下推導:等式(2)
這裏,MvPre
是運動向量分數精度(例如,JEM中的1/16)。(v2x
, v2y
)是左下角控制點的運動向量,根據等式(1)而計算。如果需要,可以向下調整M和N,使其分別為w和h的除數。
圖15示出了塊1500的每個子塊的仿射MVF的示例。為了推導每個M×N子塊的運動向量,可以根據等式(1)計算每個子塊的中心樣點的運動向量,並且將其取整到運動向量分數精度(例如,JEM中的1/16)。然後,可以應用運動補償插值濾波器以用推導的運動向量生成每個子塊的預測。在MCP之後,對每個子塊的高精度運動向量進行取整,並且將其以與常規運動向量相同的精度保存。
2.6.1 AF_INTER
模式的實施例
在JEM中,存在兩種仿射運動模式:AF_INTER模式和AF_MERGE模式。對於寬度和高度都大於8的CU,可以應用AF_INTER模式。在位元流中信令通知CU級別中的仿射標志以指示是否使用AF_INTER模式。在AF_INTER模式中,使用相鄰塊來建構具有運動向量對的候選列表。
圖16示出了AF_INTER模式中的塊1600的運動向量預測(MVP)的示例。如圖16所示,從子塊A、B或C的運動向量選擇v0
。可以根據參考列表縮放來自相鄰塊的運動向量。還可以根據相鄰塊的參考的圖片順序計數(POC)、當前CU的參考的POC和當前CU的POC之間的關係來縮放運動向量。從相鄰子塊D和E選擇v1
的方法是類似的。如果候選列表的數量小於2,則由通過複製每個AMVP候選而組成的運動向量對填充列表。當候選列表大於2時,可以首先根據相鄰運動向量(例如,基於對候選(pair candidate)中的兩個運動向量的相似性)對候選進行排序。在一些實施方式中,保留前兩個候選。在一些實施例中,速率失真(Rate Distortion,RD)成本檢查用來確定選擇哪個運動向量對候選作為當前CU的控制點運動向量預測(Control Point Motion Vector Prediction,CPMVP)。可以在位元流中信令通知指示CPMVP在候選列表中的位置的索引。在確定當前仿射CU的CPMVP之後,應用仿射運動估計並找到控制點運動向量(Control Point Motion Vector,CPMV)。然後在位元流中信令通知CPMV和CPMVP的差。
在AF_INTER模式中,當使用4/6參數仿射模式時,需要2/3個控制點,因此需要針對這些控制點編碼2/3個MVD,如圖17A和圖17B所示。在現有實施方式中[5],MV可以如下推導,例如,它從mvd0
預測mvd1
和mvd2
。
本文中,、mvdi
和mv1
是預測的運動向量,左上方像素(i = 0)、右上方像素(i = 1)或左下方像素(i = 2)的運動向量差和運動向量分別如圖18B所示。在一些實施例,添加兩個運動向量(例如,mvA(xA, yA)和mvB(xB, yB))等於兩個分量各自地的和。例如,newMV = mvA + mvB暗示newMV的兩個分量被分別設置為(xA + xB)和(yA + yB)。
2.6.2 AF_INTER
模式中的快速仿射
ME
算法的示例
在仿射模式的一些實施例中,需要聯合確定2個或3個控制點的MV。直接聯合搜索多個MV是計算複雜的。在示例中,提出一種快速仿射ME算法[6],並且將其納入VTM/BMS。
例如,針對4-參數仿射模型描述了快速仿射ME算法,並且該思想可以擴展到6-參數仿射模型。等式(3)等式(4)
用a’替換(a-1)使得運動向量能夠被重寫為:等式(5)
如果假設兩個控制點(0, 0)和(0, w)的運動向量是已知的,則根據等式(5),仿射參數可以被推導為:。 等式(6)
可以以向量形式將運動向量重寫為:。 等式(7)
本文中,P = (x, y)是像素位置。,以及 等式(8)。 等式(9)
在一些實施例中,並且在編碼器處,可以迭代地推導AF_INTER的MVD。 將MVi
(P)表示為在位置P的第i次迭代中推導的MV,並且將dMVC i
表示為在第i次迭代中MVC
的更新的增量。然後在第(i+1)次迭代中, 。 等式(10)
將Picref
表示為參考圖片,並將Piccur
表示為當前圖片,並且表示。如果MSE用作匹配準則,則需要最小化的函數可以寫為: 等式(11)
如果假設足夠小,則可以被重寫為基於1階泰勒展開的近似值,如下:
等式(12)
本文中,。如果采用符號Ei+1
(P) =,則:
=等式(13)
項可以通過將誤差函數的導數設置為零,然後根據計算控制點(0, 0)和(0, w)的增量MV而推導,如下:等式(14)等式(15)等式(16)等式(17)
在一些實施例中,該MVD推導過程可以迭代n
次,並且最終MVD可以如下計算:等式(18)等式(19)等式(20)等式(21)
在前述實施方式中[5],從由mvd0
表示的控制點(0, 0)的增量MV預測由mvd1
表示的控制點(0, w)的增量MV,引起對於mvd1
,僅被編碼。
2.6.3 AF_MERGE
模式的實施例
當在AF_MERGE模式中應用CU時,其從有效的相鄰重構塊得到以仿射模式編碼的第一塊。圖18A示出了當前CU 1800的候選塊的選擇順序的示例。如圖18A所示,選擇順序可以是從當前CU 1800的左側(1801)、上側(1802)、右上側(1803)、左下角(1804)到左上側(1805)。圖18B示出了AF_MERGE模式中的當前CU 1800的候選塊的另一示例。如果相鄰的左下角塊1801以仿射模式而編碼,如圖18B所示,則推導包含子塊1801的CU的左上角、右上角和左下角的運動向量v2
、v3
和v4
。基於v2
、v3
和v4
計算當前CU 1800的左上角的運動向量v0
。可以相應地計算當前CU的右上側的運動向量v1。
在根據等式(1)中的仿射運動模型計算當前CU v0和v1的CPMV之後,可以生成當前CU的MVF。為了識別當前CU是否以AF_MERGE模式而編碼,當存在至少一個相鄰塊以仿射模式而編碼時,可以在位元流中信令通知仿射標志。
2.7
模式匹配的運動向量推導(
PMMVD
)的示例
PMMVD模式是基於幀速率上轉換(FRUC)方法的特殊Merge模式。利用該模式,在解碼器側推導塊的運動信息,而不是信令通知塊的運動信息。
當CU的Merge標志為真時,可以向CU信令通知FRUC標志。當FRUC標志為假時,可以信令通知Merge索引並使用常規Merge模式。當FRUC標志為真時,可以信令通知附加FRUC模式標志以指示將使用哪種方法(例如,雙邊匹配或模板匹配)來推導該塊的運動信息。
在編碼器側,關於是否對CU使用FRUC Merge模式的決定是基於對常規Merge候選所做的RD成本選擇。例如,通過使用RD成本選擇來針對CU檢查多個匹配模式(例如,雙邊匹配和模板匹配)。引起最小成本的匹配模式與其他CU模式進一步比較。如果FRUC匹配模式是最有效的模式,則對於CU將FRUC標志設置為真,並且使用相關的匹配模式。
通常,FRUC Merge模式中的運動推導過程具有兩個步驟:首先執行CU級別運動搜索,然後進行子CU級別運動細化。在CU級別處,基於雙邊匹配或模板匹配,為整個CU推導初始運動向量。首先,生成MV候選的列表,並且選擇引起最小匹配成本的候選作為進一步CU級別細化的起點。然後,在起點附近執行基於的雙邊匹配或模板匹配的局部搜索。將引起最小匹配成本的MV結果作為整個CU的MV。隨後,以推導的CU運動向量作為起點,在子CU級別處進一步細化運動信息。
例如,對於CU運動信息推導執行以下推導過程。在第一階段,推導整個CU的MV。在第二階段,該CU進一步被劃分為子CU。M的值如等式(3)而計算,是預定義的劃分深度,在JEM中默認設置為3。然後推導每個子CU的MV。等式(3)
圖19示出了在幀速率上轉換(FRUC)方法中使用的雙邊匹配的示例。通過在兩個不同參考圖片(1910、1911)中沿當前CU(1900)的運動軌跡找到兩個塊之間的最接近匹配,使用雙邊匹配來推導當前CU的運動信息。在連續運動軌跡的假設下,指向兩個參考塊的運動向量MV0(1901)和MV1(1902)與當前圖片和兩個參考圖片之間的時域距離(例如,TD0(1903)和TD1(1904))成比例。在一些實施例中,當當前圖片1900在時域上在兩個參考圖片(1910、1911)之間並且從當前圖片到兩個參考圖片的時域距離相同時,雙邊匹配成為基於鏡像的雙向MV。
圖20示出了在幀速率上轉換(FRUC)方法中使用的模板匹配的示例。模板匹配可以用來通過找到當前圖片中的模板(例如,當前CU的頂部和/或左側相鄰塊)與參考圖片2010中的塊(例如,與模板的尺寸相同)之間的最接近匹配來推導當前CU 2000的運動信息。除了前述FRUC Merge模式之外,模板匹配也可以應用於AMVP模式。在JEM和HEVC兩者中,AMVP具有兩個候選。利用模板匹配方法,新的候選可以被推導。如果模板匹配新推導的候選與第一現有AMVP候選不同,則將其***AMVP候選列表的最開始處,然後將列表尺寸設置為二(例如,通過移除第二現有AMVP候選)。當應用於AMVP模式時,僅應用CU級別搜索。
CU級別處的MV候選集可以包括以下:(1)如果當前CU處於AMVP模式,則原始AMVP候選,(2)所有Merge候選,(3)插值MV場中的幾個MV(稍後描述),以及頂部和左側相鄰運動向量。
當使用雙邊匹配時,可以將Merge候選的每個有效MV用作輸入,以生成假設雙邊匹配的情況下的MV對。例如,在參考列表A處,Merge候選的一個有效MV是(MVa,refa
)。然後,在另一參考列表B中找到其配對的雙邊MV的參考圖片refb
,使得refa
和refb
在時域上位於當前圖片的不同側。如果這樣的refb
在參考列表B中不可用,則refb
被確定為與refa
不同的參考,並且其到當前圖片的時域距離是列表B中的最小值。在確定refb
之後,通過基於當前圖片與refa
、refb
之間的時域距離來縮放MVa來推導MVb。
在一些實施例中,來自插值MV場的四個MV也可以被添加到CU級別候選列表。更具體地,添加當前CU的位置(0, 0)、(W/2, 0)、(0, H/2)和(W/2, H/2)處的插值MV。當FRUC應用於AMVP模式中時,原始AMVP候選也被添加到CU級別MV候選集。在一些實施例中,在CU級別處,AMVP CU的15個MV和Merge CU的13個MV可以被添加到候選列表。
子CU級別處的MV候選集包括從CU級別搜索確定的MV,(2)頂部、左側、左上角和右上角相鄰MV,(3)來自參考圖片的並置MV的縮放版本,(4)一個或多個ATMVP候選(例如,多達四個),和(5)一個或多個STMVP候選(例如,多達四個)。來自參考圖片的縮放MV如下推導。遍歷兩個列表中的參考圖片。參考圖片中的子CU的並置位置處的MV被縮放到起始CU級別MV的參考。ATMVP和STMVP候選可以是前四個。在子CU級別處,一個或多個MV(例如,多達17個)被添加到候選列表。
插值 MV 場的生成。
在對幀進行編碼之前,基於單邊ME為整個圖片生成插值運動場。然後,運動場可以稍後用作CU級別或子CU級別MV候選。
在一些實施例中,兩個參考列表中的每個參考圖片的運動場以4×4塊級別遍歷。圖21示出了FRUC方法中的單邊運動估計(Motion Estimation,ME)2100的示例。對於每個4×4塊,如果與塊相關聯的運動通過當前圖片中的4×4塊並且塊未被分配任何插值運動,則參考塊的運動根據時域距離TD0和TD1(以與HEVC中的TMVP的MV縮放的方式相同的方式)被縮放到當前圖片,並且縮放的運動被分配給當前幀中的塊。如果沒有縮放的MV被分配給4×4塊,則在插值運動場中將塊的運動標記為不可用。
插值和匹配成本。
當運動向量指向分數樣點位置時,需要運動補償插值。為了降低複雜度,可以將雙線性插值而不是常規8抽頭HEVC插值用於雙邊匹配和模板匹配。
匹配成本的計算在不同步驟處有點不同。當從CU級別處的候選集中選擇候選時,匹配成本可以是雙邊匹配或模板匹配的絕對和差(Absolute Sum Difference,SAD)。在確定起始MV之後,子CU級別搜索處的雙邊匹配的匹配成本C如下計算:等式(4)
這裏,w是加權因子。在一些實施例中,w可以被經驗主義地設置為4。MV和MVs
分別指示當前MV和起始MV。SAD仍可以用作子CU級別搜索處的模板匹配的匹配成本。
在FRUC模式中,僅通過使用亮度樣點來推導MV。推導的運動將用於MC幀間預測的亮度和彩度兩者。在決定MV之後,對於亮度使用8抽頭插值濾波器並且對於彩度使用4抽頭插值濾波器來執行最終MC。
MV細化是基於模式的MV搜索,具有雙邊匹配成本或模板匹配成本的準則。在JEM中,對於CU級別處和子CU級別處的MV細化,分別支持兩種搜索模式—無限制中心偏置菱形搜索(Unrestricted Center-Biased Diamond Search,UCBDS)和自我調整交叉搜索。對於CU和子CU級別MV細化兩者,以四分之一亮度樣點MV精度直接搜索MV,並且接著是八分之一亮度樣點MV細化。將用於CU和子CU步驟的MV細化的搜索範圍設置為等於8亮度樣點。
在雙邊匹配Merge模式中,應用雙向預測,因為CU的運動信息是基於兩個不同的參考圖片中沿當前CU的運動軌跡的兩個塊之間的最接近匹配推導的。在模板匹配Merge模式中,編碼器可以從來自列表0的單向預測、來自列表1的單向預測、或雙向預測當中為CU選擇。選擇可以如下基於模板匹配成本:
如果costBi >= factor * min (cost0, cost1)
則使用雙向預測;
否則,如果cost0 >= cost1
則使用來自列表0的單向預測;
否則,
使用來自列表1的單向預測;
這裏,cost0是列表0模板匹配的SAD,cost1是列表1模板匹配的SAD,並且costBi是雙向預測模板匹配的SAD。例如,當factor的值等於1.25時,這意味著選擇過程偏向於雙向預測。幀間預測方向選擇可以應用於CU級別模板匹配過程。
3.
現有實施方式的缺點
在一些現有實施方式中,當可以從仿射編碼塊的多個MV/MVD精度的集合選擇MV/MV差(MVD)時,仍然不確定如何可以獲得更準確的運動向量。
在其他現有實施方式中,MV/MVD精度信息在確定應用於仿射模式的AMVR的整體編碼增益時也起著重要作用,但是實現這一目標仍然不確定。
4.
用於具有
AMVR
的仿射模式的
MV
預測值的示例方法
本公開技術的實施例克服了現有實施方式的缺點,從而為視頻編碼提供了更高的編碼效率。基於所公開的技術的、具有自我調整運動向量解析度(AMVR)的仿射模式的運動向量預測值的推導和信令通知可以增強現有和未來視頻編碼標準,其在針對各種實施方式描述的以下示例中進行了闡述。下面提供的所公開的技術的示例解釋了一般概念,並且不意味著被解釋為限制性的。在示例中,除非明確地相反指示,否則可以組合在這些示例中描述的各種特徵。
在一些實施例中,當應用AMVR時,以下示例可以應用於仿射模式或常規模式。這些示例假設精度Prec
(即,MV具有1 / (2^Prec
)精度)用於在AF_INTER模式中編碼MVD或在常規幀間模式中編碼MVD。運動向量預測值(例如,從相鄰塊MV繼承)及其精度分別由MVPred(MVPredX
, MVPredY
)
和PredPrec
表示。
示例 1
。提出了最終MV精度可以保持不變,即,與要儲存的運動向量的精度相同。
(a)在一個示例中,最終MV精度可以被設置為1/16像素或1/8像素。
(b)在一個示例中,可以首先縮放信令通知的MVD,然後將其添加到MVP以形成一個塊的最終MV。
示例2。可以首先修改從相鄰塊(例如,空域或時域)直接推導的MVP或默認MVP,然後將其添加到信令通知的MVD以形成(當前)塊的最終MV。
(a)可替代地,對於Prec
的不同值,是否應用以及如何應用MVP的修改可以不同。
(b)在一個示例中,如果Prec
大於1(即,MVD具有分數精度),則相鄰MV的精度不變,並且不執行縮放。
(c)在一個示例中,如果Prec
等於1(即,MVD具有1像素精度),則需要縮放MV預測值(即,相鄰塊的MV)。
(d)在一個示例中,如果Prec
小於1(即,MVD具有4像素精度),則需要縮放MV預測值(即,相鄰塊的MV)。
示例 3
。在一個示例中,如果信令通知的MVD的精度與儲存的MV的精度相同,則在仿射MV被重構之後不需要縮放,否則,以信令通知的MVD的精度來重構MV然後將其縮放到儲存的MV的精度。
示例 4
。在一個示例中,常規幀間模式和AF_INTER模式可以基於上述不同示例來選擇實施方式。
示例 5
。在一個示例中,可以用以下語義來信令通知指示仿射模式的MV/MVD精度的語法元素(或包括例如2個位元的多於一個位元的欄位):
(a)在一個示例中,等於0、1和2的語法元素分別指示1/4像素、1/16像素和1像素MV精度。
(b)可替代地,在仿射模式中,等於0、1和2的語法元素分別指示1/4像素、1像素和1/16像素MV精度。
(c)可替代地,在仿射模式中,等於0、1和2的語法元素分別指示1/16像素、1/4像素和1像素MV精度。
示例 6
。在一個示例中,可以在SPS、PPS、VPS、序列/圖片/條帶標頭/片等中信令通知是否啟用或禁用仿射模式的AMVR。
示例 7
。在一個示例中,可以在SPS、PPS、VPS、序列/圖片/條帶標頭/片等中信令通知允許的MV/MVD精度的指示。
(a)可以針對每個編碼樹單元(Coding Tree Unit,CTU)和/或每個區域信令通知選擇的MVD精度的指示。
(b)允許的MV/MVD精度的集合可以取決於當前塊的編碼模式(例如,仿射或非仿射)。
(c)允許的MV/MVD精度的集合可以取決於條帶類型/時域層索引/低延遲檢查標志。
(d)允許的MV/MVD精度的集合可以取決於當前或相鄰塊的塊尺寸和/或塊形狀。
(e)允許的MV/MVD精度的集合可以取決於要儲存在解碼圖片緩衝器中的MV的精度。
(i)在一個示例中,如果儲存的MV是X像素,則允許的MV/MVD精度集合可以至少具有X像素。
可以在例如可以在視頻解碼器或視頻編碼器處實施的方法2200和2300的下面描述的方法的上下文中並入上述示例。
圖22示出了用於視頻解碼的示例性方法的流程圖。方法2200包括,在步驟2210處,對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,最終運動向量的精度與當前視頻塊的儲存的運動向量的精度相同。
方法2200包括,在步驟2220處,基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
圖23示出了用於視頻解碼的另一示例性方法的流程圖。方法2300包括,在步驟2310處,對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,當前視頻塊以仿射模式而編碼,並且位元流表示包括指示與當前視頻塊相關聯的運動向量或運動向量差的精度的、包括多於一個位元的欄位。
方法2300包括,在步驟2320處,基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
在一些實施例中,可以實施以下技術方案:
A1. 一種用於視頻處理的方法(例如,圖22中的方法2200),包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定(2210)最終運動向量,其中最終運動向量的精度與當前視頻塊的儲存的運動向量的精度相同;以及基於最終運動向量來執行(2220)位元流表示和當前視頻塊之間的轉換。
A2. 根據解決方案A1所述的方法,其中最終運動向量的精度為1/16像素。
A3. 根據解決方案A1所述的方法,其中最終運動向量的精度為1/8像素。
A4. 根據解決方案A1至A3中任一項所述的方法,其中最終運動向量基於將運動向量預測值(MVP)添加到運動向量差(MVD)。
A5. 根據解決方案A4所述的方法,其中在將MVP添加到MVD之前,MVD被縮放。
A6. 根據解決方案A4所述的方法,其中MVP是從空域或時域上相鄰的塊推導的。
A7. 根據解決方案A4所述的方法,其中MVP是默認MVP。
A8. 根據解決方案A6或A7所述的方法,其中在將MVP添加到MVD之前,MVP被修改。
A9. 根據解決方案A7所述的方法,其中修改MVP是基於MVD的精度的。
A10. 根據解決方案A9所述的方法,進一步包括:在確定MVD的精度為分數時,繞過針對MVP的縮放操作。
A11. 根據解決方案A9所述的方法,進一步包括:在確定MVD的精度小於或等於1時,縮放MVP。
A12. 根據解決方案A4所述的方法,進一步包括:在確定MVD的精度與儲存的運動向量的精度相同時,繞過針對最終運動向量的縮放操作。
A13. 根據解決方案A4所述的方法,進一步包括:在確定MVD的精度不同於儲存的運動向量的精度時,縮放最終運動向量。
A14. 根據解決方案A1至A13中任一項所述的方法,其中當前視頻塊是以非仿射幀間模式或仿射幀間模式而編碼的。
A15. 根據解決方案A1至A14中任一項所述的方法,其中自我調整地選擇每個運動向量的解析度的編碼工具是自我調整運動向量解析度(AMVR)工具。
A16. 根據解決方案A1至A15中任一項所述的方法,其中該轉換從位元流表示生成當前視頻塊。
A17. 根據解決方案A1至A15中任一項所述的方法,其中該轉換從當前視頻塊生成位元流表示。
A18. 一種視頻系統中的裝置,包括處理器和其上具有指令的非暫時性儲存器,其中該指令在由處理器運行時使得處理器實施根據解決方案A1至A17中任一項所述的方法。
A19. 一種儲存在非暫時性電腦可讀介質上的電腦程式產品,該電腦程式產品包括用於執行根據解決方案A1至A17中任何一項所述的方法的程式代碼。
除了上述解決方案之外,在一些實施例中,還可以實施以下解決方案:
B1. 一種用於視頻處理的方法,包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編碼工具來確定最終運動向量,其中當前視頻塊是以仿射模式而編碼的,並且其中位元流表示包括指示與當前視頻塊相關聯的運動向量或運動向量差的精度的、包括多於一個位元的欄位;以及基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換。
B2. 根據解決方案B1所述的方法,其中欄位的不同值指示運動向量或運動向量差的精度為1/4像素、1/16像素或1像素。
B3. 根據解決方案B2所述的方法,其中欄位的值0、1或2分別對應於運動向量的精度為1/4像素、1/16像素和1像素。
B4. 根據解決方案B2所述的方法,其中欄位的值0、1或2分別對應於運動向量的精度為1/4像素、1像素和1/16像素。
B5. 根據解決方案B2所述的方法,其中欄位的值0、1或2分別對應於運動向量的精度為1/16像素、1/4像素和1像素。
B6. 根據解決方案B1至B5中任一項所述的方法,其中仿射模式的編碼工具是基於序列參數集(SPS)、圖片參數集(PPS)、視頻參數集(VPS)、條帶標頭、片標頭、序列標頭或圖片標頭中的信令而啟用的。
B7. 根據解決方案B1至B5中任一項所述的方法,其中仿射模式或非仿射模式的運動向量或運動向量差的精度的允許的值的集合是在序列參數集(SPS)、圖片參數集(PPS)、視頻參數集(VPS)、條帶標頭、片標頭、序列標頭或圖片標頭中信令通知的。
B8. 根據解決方案B7所述的方法,其中允許的值的集合是針對當前塊的每個編碼樹單元(CTU)而信令通知的。
B9. 根據解決方案B7所述的方法,其中允許的值的集合基於當前塊的編碼模式或維度。
B10. 根據解決方案B9所述的方法,其中編碼模式是仿射模式或非仿射模式。
B11. 根據解決方案B7所述的方法,其中允許的值的集合基於條帶類型、時域層索引或低延遲檢查標志。
B12. 根據解決方案B7所述的方法,其中允許的值的集合基於儲存在解碼圖片緩衝器中的運動向量的精度。
B13. 根據解決方案B1至B12中任一項所述的方法,其中自我調整地選擇每個運動向量的解析度的編碼工具是自我調整運動向量解析度(AMVR)工具。
B14. 根據解決方案B1至B13中任一項所述的方法,其中該轉換從位元流表示生成當前視頻塊。
B15. 根據解決方案B1至B13中任一項所述的方法,其中該轉換從當前視頻塊生成位元流表示。
B16. 一種視頻系統中的裝置,包括處理器和其上具有指令的非暫時性儲存器,其中該指令在由處理器運行時使得處理器實施根據解決方案B1至B15中任一項所述的方法。
B17. 一種儲存在非暫時性電腦可讀介質上的電腦程式產品,該電腦程式產品包括用於執行根據解決方案B1至B15中任何一項所述的方法的程式代碼。
5.
所公開的技術的示例實施方式
圖24是視頻處理裝置2400的方塊圖。裝置2400可以用來實施本文描述的方法中的一種或多種。裝置2400可以體現在智能電話、平板電腦、電腦、物聯網(Internet of Things,IoT)接收器等中。裝置2400可以包括一個或多個處理器2402、一個或多個儲存器2404、以及視頻處理硬體2406。(多個)處理器2402可以被配置為實施本文件中描述的一種或多種方法(包括但不限於方法2200和2300)。儲存器(多個儲存器)2404可以用於儲存用於實施本文描述的方法和技術的數據和代碼。視頻處理硬體2406可以用來在硬體電路中實施本文件中描述的一些技術。
在一些實施例中,視頻編碼方法可以使用在如關於圖24描述的硬體平臺上實施的裝置而實施。
圖25是示出可以在其中實施本文公開的各種技術的示例視頻處理系統2500的方塊圖。各種實施方式可以包括系統2500的一些或所有組件。系統2500可以包括用於接收視頻內容的輸入2502。視頻內容可以以例如8或10位元多分量像素值的原始或未壓縮格式而接收,或者可以是壓縮或編碼格式。輸入2502可以表示網路介面、週邊匯流排介面或儲存介面。網路介面的示例包括諸如乙太網、無源光網路(Passive Optical Network,PON)等的有線介面和諸如Wi-Fi或蜂窩介面的無線介面。
系統2500可以包括可以實施本文件中描述的各種編碼方法的編碼組件2504。編碼組件2504可以將來自輸入2502的視頻的平均位元率減小到編碼組件2504的輸出,以產生視頻的編碼表示。編碼技術因此有時被稱為視頻壓縮或視頻轉碼技術。編碼組件2504的輸出可以被儲存,或者經由如由組件2506表示的通信連接而發送。在輸入2502處接收的視頻的儲存或通信傳送的位元流(或編碼)表示可以由組件2508用於生成像素值或傳送到顯示介面2510的可顯示視頻。從位元流表示生成用戶可視視頻的過程有時被稱為視頻解壓縮。此外,雖然某些視頻處理操作被稱為“編碼”操作或工具,但是將理解,編碼工具或操作在編碼器處被使用,並且反轉編碼結果的對應的解碼工具或操作將由解碼器執行。
週邊匯流排介面或顯示介面的示例可以包括通用串列匯流排(Universal Serial Bus,USB)、或高清晰度多媒體介面(High Definition Multimedia Interface,HDMI)、或顯示端口(Displayport)等。儲存介面的示例包括SATA(Serial Advanced Technology Attachment,串列高級技術附件)、PCI、IDE介面等。本文件中描述的技術可以體現在各種電子設備中,諸如移動電話、膝上型電腦、智能電話、或能夠執行數位數據處理和/或視頻顯示的其他設備。
根據前述內容,將理解,本文已經出於說明的目的描述了本公開技術的特定實施例,但是在不脫離本發明的範圍的情況下可以進行各種修改。因此,本公開技術不受除了所附申請專利範圍之外的限制。
本專利文件中描述的主題和功能操作的實施方式可以在各種系統、數位電子電路中、或者在電腦軟體、韌體或硬體(包括本說明書中公開的結構及其結構等同物)中、或者在它們中的一個或多個的組合中實施。本說明書中描述的主題的實施方式可以實施為一個或多個電腦程式產品,即在有形且非暫時性電腦可讀介質上編碼的電腦程式指令的一個或多個模組,該電腦程式指令用於由數據處理裝置運行或控制數據處理裝置的操作。電腦可讀介質可以是機器可讀儲存設備、機器可讀儲存基板、儲存器設備、影響機器可讀傳播信號的物質的組合、或它們中的一個或多個的組合。術語“數據處理單元”或“數據處理裝置”包含用於處理數據的所有裝置、設備和機器,包括例如可編程處理器、電腦、或多個處理器或電腦。除了硬體之外,裝置還可以包括為所討論的電腦程式創建運行環境的代碼,例如,構成處理器韌體、協議棧、數據庫管理系統、操作系統、或它們中的一個或多個的組合的代碼。
電腦程式(也已知為程式、軟體、軟體應用、腳本或代碼)可以以任何形式的編程語言(包括編譯或解釋語言)編寫,並且其可以以任何形式部署,包括作為獨立程式或作為適合在計算環境中使用的模組、組件、子例程或其他單元。電腦程式不一定對應於文件系統中的文件。程式可以儲存在保存其他程式或數據(例如,儲存在標記語言文件中的一個或多個腳本)的文件的一部分中,儲存在專用於所討論的程式的單個文件中,或儲存在多個協調文件中(例如,儲存一個或多個模組、子程式或代碼部分的文件)。電腦程式可以被部署以在一個電腦上或在位於一個站點上或跨多個站點分布並通過通信網路互連的多個電腦上運行。
本說明書中描述的過程和邏輯流程可以由運行一個或多個電腦程式的一個或多個可編程處理器執行,以通過對輸入數據進行操作並生成輸出來執行功能。過程和邏輯流程也可以由專用邏輯電路執行,並且裝置也可以實施為專用邏輯電路,例如,FPGA(Field Programmable Gate Array,現場可編程門陣列)或ASIC(Application Specific Integrated Circuit,專用積體電路)。
適合於運行電腦程式的處理器包括例如通用和專用微處理器、以及任何類型的數位電腦的任何一個或多個處理器。通常,處理器將從只讀儲存器或隨機存取儲存器或兩者接收指令和數據。電腦的基本元件是用於執行指令的處理器和用於儲存指令和數據的一個或多個儲存器設備。通常,電腦還將包括用於儲存數據的一個或多個大容量儲存設備(例如,磁盤、磁光盤或光盤),或可操作地耦合以從該一個或多個大容量儲存設備接收數據或向該一個或多個大容量儲存設備傳遞數據、或者從其接收數據並向其傳遞數據。然而,電腦不需要這樣的設備。適用於儲存電腦程式指令和數據的電腦可讀介質包括所有形式的非揮發性儲存器、介質和儲存器設備,包括例如半導體儲存器設備,例如EPROM、EEPROM和快閃記憶體。處理器和儲存器可以由專用邏輯電路補充或並入專用邏輯電路中。
旨在將說明書與附圖一起視為僅示例性的,其中示例性意味著示例。如本文所使用的,“或”的使用旨在包括“和/或”,除非上下文另外明確地指示。
雖然本專利文件包含許多細節,但這些細節不應被解釋為對任何發明或可能要求保護的範圍的限制,而是作為特定於特定發明的特定實施例的特徵的描述。在本專利文件中在單獨的實施例的上下文中描述的某些特徵也可以在單個實施例中組合實施。相反,在單個實施例的上下文中描述的各種特徵也可以分別在多個實施例中或以任何合適的子組合實施。此外,儘管特徵可以在上面描述為以某些組合起作用並且甚至最初如此要求保護,但是在一些情況下可以從組合排除來自所要求保護的組合的一個或多個特徵,並且所要求保護的組合可以針對子組合或子組合的變化。
類似地,雖然在附圖中以特定順序描繪了操作,但是這不應該被理解為需要以所示的特定順序或以先後順序執行這樣的操作或者執行所有示出的操作以實現期望的結果。此外,在本專利文件中描述的實施例中的各種系統組件的分離不應被理解為在所有實施例中都需要這樣的分離。
僅描述了一些實施方式和示例,並且可以基於本專利文件中描述和示出的內容來進行其他實施方式、增強和變化。
710、720:列表
1000、1100、2000:CU
1001、1051:子CU
1050、1910、1911、2010:參考圖片
1400、1500、1600:塊
1800、1900:當前CU
1901、1902:運動向量
1903、1904、tb、td:距離
2100:運動估計
2200、2300:方法
2210、2220、2310、2320:步驟
2400:裝置
2402:處理器
2404:儲存器
2406:視頻處理硬體
2500:系統
2502:輸入
2504:編碼組件
2506、2508:組件
2510:顯示介面
圖1示出了建構Merge候選列表的示例。
圖2示出了空域候選的位置的示例。
圖3示出了進行空域Merge候選的冗餘檢查的候選對的示例。
圖4A和圖4B示出了基於當前塊的尺寸和形狀的第二預測單元(Prediction Unit,PU)的位置的示例。
圖5示出了用於時域Merge候選的運動向量縮放的示例。
圖6示出了時域Merge候選的候選位置的示例。
圖7示出了生成組合的雙向預測Merge候選的示例。
圖8示出了建構運動向量預測候選的示例。
圖9示出了用於空域運動向量候選的運動向量縮放的示例。
圖10示出了使用用於編碼單元(Coding Unit,CU)的可選時域運動向量預測(Alternative Temporal Motion Vector Prediction,ATMVP)算法的運動預測的示例。
圖11示出了具有由空時運動向量預測(Spatial-Temporal Motion Vector Prediction,STMVP)算法使用的子塊和相鄰塊的編碼單元(CU)的示例。
圖12A和圖12B示出了當使用重疊塊運動補償(Overlapped Block Motion Compensation,OBMC)算法時的子塊的示例快照。
圖13示出了用來推導局部光照補償(Local Illumination Compensation,LIC)算法的參數的相鄰樣點的示例。
圖14示出了簡化的仿射運動模型的示例。
圖15示出了每個子塊的仿射運動向量場(Affine Motion Vector Field,MVF)的示例。
圖16示出了AF_INTER仿射運動模式的運動向量預測(Motion Vector Prediction,MVP)的示例。
圖17A和圖17B分別示出了4-參數仿射模型和6-參數仿射模型的示例。
圖18A和圖18B示出了AF_MERGE仿射運動模式的示例候選。
圖19示出了模式匹配的運動向量推導(Pattern Matched Motion Vector Derivation,PMMVD)模式中的雙邊匹配的示例,其是基於幀速率上轉換(Frame-Rate Up Conversion,FRUC)算法的特殊Merge模式。
圖20示出了FRUC算法中的模板匹配的示例。
圖21示出了FRUC算法中的單邊運動估計的示例。
圖22示出了用於視頻處理的示例方法的流程圖。
圖23示出了用於視頻處理的另一示例方法的流程圖。
圖24是用於實施本文件中描述的可視媒體解碼或可視媒體編碼技術的硬體平臺的示例的方塊圖。
圖25是其中可以實施所公開的技術的示例視頻處理系統的方塊圖。
2400:裝置
2402:處理器
2404:儲存器
2406:視頻處理硬體
Claims (16)
- 一種用於視頻處理的方法,包括:對於當前視頻塊和當前視頻塊的位元流表示之間的轉換,使用自我調整地選擇與當前視頻塊相關聯的每個運動向量的解析度的編解碼工具來確定最終運動向量,其中當前視頻塊是以仿射模式而編解碼的,並且其中所述位元流表示包括具有多於一個位元的欄位,所述多於一個位元的欄位指示與所述當前視頻塊相關聯的運動向量或運動向量差的精度;以及基於最終運動向量來執行位元流表示和當前視頻塊之間的轉換;其中,所述運動向量或運動向量差的精度的允許的值的集合基於當前視頻塊的編解碼模式,所述編解碼模式是仿射模式或非仿射模式。
- 如申請專利範圍第1項所述的方法,其中,所述欄位的不同值指示運動向量或運動向量差的精度為1/4像素、1/16像素或1像素。
- 如申請專利範圍第2項所述的方法,其中,所述欄位的值0、1或2分別對應於運動向量的精度為1/4像素、1/16像素和1像素。
- 如申請專利範圍第2項所述的方法,其中,所述欄位的值0、1或2分別對應於運動向量的精度為1/4像素、1像素和1/16像素。
- 如申請專利範圍第2項所述的方法,其中,所述欄位的值0、1或2分別對應於運動向量的精度為1/16像素、1/4像素和1像素。
- 如申請專利範圍第1至5項中任一項所述的方法,其中,仿射模式的編解碼工具是基於序列參數集(SPS)、圖片參數集(PPS)、視頻參數集(VPS)、條帶標頭、片標頭、序列標頭或圖片標頭中的信令而啟用的。
- 如申請專利範圍第1至5項中任一項所述的方法,其中,仿射模式或非仿射模式的運動向量或運動向量差的精度的允許的值的集合是在序列參數集(SPS)、圖片參數集(PPS)、視頻參數集(VPS)、條帶標頭、片標頭、序列標頭或圖片標頭中信令通知的。
- 如申請專利範圍第7項所述的方法,其中,允許的值的集合是針對當前視頻塊的每個編解碼樹單元(CTU)而信令通知的。
- 如申請專利範圍第7項所述的方法,其中,允許的值的集合更基於當前視頻塊的維度。
- 如申請專利範圍第7項所述的方法,其中,允許的值的集合基於條帶類型、時域層索引或低延遲檢查標志。
- 如申請專利範圍第7項所述的方法,其中,允許的值的集合基於儲存在解碼圖片緩衝器中的運動向量的精度。
- 如申請專利範圍第1至5項中任一項所述的方法,其中,自我調整地選擇每個運動向量的解析度的編解碼工具是自我調整運動向量解析度(AMVR)工具。
- 如申請專利範圍第1至5項中任一項所述的方法,其中,所述轉換從位元流表示生成當前視頻塊。
- 如申請專利範圍第1至5項中任一項所述的方法,其中,所述轉換從當前視頻塊生成位元流表示。
- 一種視頻系統中的裝置,包括處理器和其上具有指令的非暫時性儲存器,其中所述指令在由處理器運行時使得處理器實施如申請專利範圍第1至14項中任一項所述的方法。
- 一種非暫時性電腦可讀介質,其上儲存有電腦程式代碼,所述電腦程式代碼用於執行如申請專利範圍第1至14項中任何一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018107168 | 2018-09-23 | ||
WOPCT/CN2018/107168 | 2018-09-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202025753A TW202025753A (zh) | 2020-07-01 |
TWI815973B true TWI815973B (zh) | 2023-09-21 |
Family
ID=68136475
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108134306A TWI815974B (zh) | 2018-09-23 | 2019-09-23 | 具有自適應運動矢量分辨率的運動矢量的修改 |
TW108134304A TWI815973B (zh) | 2018-09-23 | 2019-09-23 | 具有自我調整運動向量解析度的運動向量精度指示的信令通知 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108134306A TWI815974B (zh) | 2018-09-23 | 2019-09-23 | 具有自適應運動矢量分辨率的運動矢量的修改 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10841609B1 (zh) |
EP (1) | EP3834418A1 (zh) |
JP (2) | JP7307154B2 (zh) |
KR (2) | KR20230161543A (zh) |
CN (3) | CN110944195B (zh) |
TW (2) | TWI815974B (zh) |
WO (2) | WO2020058962A1 (zh) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019234609A1 (en) | 2018-06-05 | 2019-12-12 | Beijing Bytedance Network Technology Co., Ltd. | Interaction between ibc and bio |
GB2589221B (en) * | 2018-06-19 | 2023-03-22 | Beijing Bytedance Network Tech Co Ltd | Mode dependent MVD precision set |
CN110636300B (zh) | 2018-06-21 | 2022-07-29 | 北京字节跳动网络技术有限公司 | 颜色分量之间的子块运动矢量继承 |
TWI739120B (zh) | 2018-06-21 | 2021-09-11 | 大陸商北京字節跳動網絡技術有限公司 | 合併仿射模式與非合併仿射模式的統一拘束 |
CN110891175B (zh) | 2018-09-08 | 2023-04-07 | 北京字节跳动网络技术有限公司 | 视频编解码和解码中的仿射模式 |
WO2020058886A1 (en) | 2018-09-19 | 2020-03-26 | Beijing Bytedance Network Technology Co., Ltd. | Fast algorithms for adaptive motion vector resolution in affine mode |
WO2020058952A1 (en) | 2018-09-23 | 2020-03-26 | Beijing Bytedance Network Technology Co., Ltd. | 8-parameter affine mode |
CN110944206B (zh) | 2018-09-23 | 2023-05-26 | 北京字节跳动网络技术有限公司 | 涉及仿射运动的一般应用 |
CN110944181B (zh) | 2018-09-23 | 2023-03-10 | 北京字节跳动网络技术有限公司 | 仿射模型的多个假设 |
CN110944193B (zh) | 2018-09-24 | 2023-08-11 | 北京字节跳动网络技术有限公司 | 视频编码和解码中的加权双向预测 |
WO2020084470A1 (en) | 2018-10-22 | 2020-04-30 | Beijing Bytedance Network Technology Co., Ltd. | Storage of motion parameters with clipping for affine mode |
JP7324841B2 (ja) | 2018-11-10 | 2023-08-10 | 北京字節跳動網絡技術有限公司 | ビデオ・データ処理方法、装置、記憶媒体及び記憶方法 |
WO2020098803A1 (en) | 2018-11-15 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Harmonization between affine mode and other inter coding tools |
CN113039802B (zh) | 2018-11-16 | 2024-05-14 | 北京字节跳动网络技术有限公司 | 基于历史的仿射参数的使用 |
WO2020098807A1 (en) | 2018-11-17 | 2020-05-22 | Beijing Bytedance Network Technology Co., Ltd. | Controlling merge with motion vector differencing mode |
WO2020125751A1 (en) | 2018-12-21 | 2020-06-25 | Beijing Bytedance Network Technology Co., Ltd. | Information signaling in current picture referencing mode |
CN113273207A (zh) | 2019-01-10 | 2021-08-17 | 北京字节跳动网络技术有限公司 | 基于几何分区的具有运动矢量差(MVD)的Merge |
CN113412623A (zh) | 2019-01-31 | 2021-09-17 | 北京字节跳动网络技术有限公司 | 记录仿射模式自适应运动矢量分辨率的上下文 |
CN113424533A (zh) | 2019-02-14 | 2021-09-21 | 北京字节跳动网络技术有限公司 | 复杂度降低的解码器侧运动推导 |
WO2020169109A1 (en) | 2019-02-22 | 2020-08-27 | Beijing Bytedance Network Technology Co., Ltd. | Sub-table for history-based affine mode |
WO2020192726A1 (en) | 2019-03-27 | 2020-10-01 | Beijing Bytedance Network Technology Co., Ltd. | History-based motion vector prediction |
CN113661708B (zh) | 2019-04-02 | 2023-12-15 | 北京字节跳动网络技术有限公司 | 基于双向光流的视频编解码和解码 |
KR102662024B1 (ko) | 2019-04-19 | 2024-05-21 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 상이한 모션 벡터 정제의 그레디언트 계산 |
CN113711608B (zh) | 2019-04-19 | 2023-09-01 | 北京字节跳动网络技术有限公司 | 利用光流的预测细化过程的适用性 |
CN113711609B (zh) | 2019-04-19 | 2023-12-01 | 北京字节跳动网络技术有限公司 | 利用光流的预测细化过程中的增量运动矢量 |
CN117692630A (zh) | 2019-05-11 | 2024-03-12 | 北京字节跳动网络技术有限公司 | 视频处理中编解码工具的选择性使用 |
EP3954119A4 (en) | 2019-05-21 | 2022-06-22 | Beijing Bytedance Network Technology Co., Ltd. | SYNTAX SIGNALING IN A SUBBLOCK MERGE MODE |
CN117560490A (zh) | 2019-07-27 | 2024-02-13 | 北京字节跳动网络技术有限公司 | 根据参考图片类型使用工具的限制 |
WO2021027774A1 (en) | 2019-08-10 | 2021-02-18 | Beijing Bytedance Network Technology Co., Ltd. | Subpicture dependent signaling in video bitstreams |
CN114365490B (zh) | 2019-09-09 | 2024-06-18 | 北京字节跳动网络技术有限公司 | 高精度图像和视频编解码的系数缩放 |
JP7323712B2 (ja) | 2019-09-21 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | 画像およびビデオコーディングのための高精度変換および量子化 |
KR20220073752A (ko) | 2019-10-12 | 2022-06-03 | 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 | 비디오 코딩 툴들을 위한 상위 레벨 신택스 |
CN114631317B (zh) | 2019-10-18 | 2024-03-15 | 北京字节跳动网络技术有限公司 | 子图片的参数集信令中的语法约束 |
EP4107956A4 (en) | 2020-03-21 | 2023-06-21 | Beijing Bytedance Network Technology Co., Ltd. | COMBINATION OF SUBIMAGES AND EXTENSIBILITY |
WO2021213307A1 (en) | 2020-04-19 | 2021-10-28 | Beijing Bytedance Network Technology Co., Ltd. | Scaling window for video coding |
EP4154533A4 (en) | 2020-06-20 | 2023-11-01 | Beijing Bytedance Network Technology Co., Ltd. | CROSS-LAYER PREDICTION WITH DIFFERENT CODING BLOCK SIZE |
US20220201315A1 (en) * | 2020-12-22 | 2022-06-23 | Qualcomm Incorporated | Multi-pass decoder-side motion vector refinement |
US11758151B2 (en) | 2020-12-29 | 2023-09-12 | Qualcomm Incorporated | Template matching in video coding |
WO2022206987A1 (en) * | 2021-04-02 | 2022-10-06 | Beijing Bytedance Network Technology Co., Ltd. | Adaptive dependent quantization |
US11936877B2 (en) * | 2021-04-12 | 2024-03-19 | Qualcomm Incorporated | Template matching based affine prediction for video coding |
US12022106B2 (en) * | 2021-09-17 | 2024-06-25 | Tencent America LLC | Joint motion vector difference coding |
US20230093129A1 (en) * | 2021-09-17 | 2023-03-23 | Tencent America LLC | Method and apparatus for intra block copy mode coding with search range switching |
WO2023140635A1 (ko) * | 2022-01-21 | 2023-07-27 | 주식회사 윌러스표준기술연구소 | 경계 밖 블록을 이용하는 비디오 신호 처리 방법 및 이를 위한 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017157259A1 (en) * | 2016-03-15 | 2017-09-21 | Mediatek Inc. | Method and apparatus of video coding with affine motion compensation |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8175159B2 (en) | 2002-01-24 | 2012-05-08 | Hitachi, Ltd. | Moving picture signal coding method, decoding method, coding apparatus, and decoding apparatus |
JP4355319B2 (ja) | 2002-01-24 | 2009-10-28 | 株式会社日立製作所 | 動画像復号化方法 |
US10531116B2 (en) | 2014-01-09 | 2020-01-07 | Qualcomm Incorporated | Adaptive motion vector resolution signaling for video coding |
KR20170084251A (ko) * | 2014-11-20 | 2017-07-19 | 에이치에프아이 이노베이션 인크. | 모션 벡터 및 블록 벡터 해상도 제어의 방법 |
US20160337662A1 (en) * | 2015-05-11 | 2016-11-17 | Qualcomm Incorporated | Storage and signaling resolutions of motion vectors |
WO2017156705A1 (en) * | 2016-03-15 | 2017-09-21 | Mediatek Inc. | Affine prediction for video coding |
US10979732B2 (en) * | 2016-10-04 | 2021-04-13 | Qualcomm Incorporated | Adaptive motion vector precision for video coding |
CN110100440B (zh) * | 2016-12-22 | 2023-04-25 | 株式会社Kt | 一种用于对视频进行解码、编码的方法 |
US20180199057A1 (en) * | 2017-01-12 | 2018-07-12 | Mediatek Inc. | Method and Apparatus of Candidate Skipping for Predictor Refinement in Video Coding |
WO2020047132A1 (en) | 2018-08-29 | 2020-03-05 | Vid Scale, Inc. | Adaptive motion vector precision for affine motion model based video coding |
-
2019
- 2019-09-23 KR KR1020237039683A patent/KR20230161543A/ko active Application Filing
- 2019-09-23 CN CN201910901033.6A patent/CN110944195B/zh active Active
- 2019-09-23 TW TW108134306A patent/TWI815974B/zh active
- 2019-09-23 CN CN202310485199.0A patent/CN116647697A/zh active Pending
- 2019-09-23 CN CN201910901081.5A patent/CN110944191A/zh active Pending
- 2019-09-23 WO PCT/IB2019/058035 patent/WO2020058962A1/en active Application Filing
- 2019-09-23 EP EP19782734.8A patent/EP3834418A1/en active Pending
- 2019-09-23 TW TW108134304A patent/TWI815973B/zh active
- 2019-09-23 JP JP2021514371A patent/JP7307154B2/ja active Active
- 2019-09-23 WO PCT/IB2019/058034 patent/WO2020058961A1/en unknown
- 2019-09-23 KR KR1020217006476A patent/KR102613889B1/ko active IP Right Grant
-
2020
- 2020-07-28 US US16/941,039 patent/US10841609B1/en active Active
-
2023
- 2023-03-22 JP JP2023045399A patent/JP2023078364A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017157259A1 (en) * | 2016-03-15 | 2017-09-21 | Mediatek Inc. | Method and apparatus of video coding with affine motion compensation |
Also Published As
Publication number | Publication date |
---|---|
TW202019182A (zh) | 2020-05-16 |
CN116647697A (zh) | 2023-08-25 |
CN110944195A (zh) | 2020-03-31 |
US10841609B1 (en) | 2020-11-17 |
WO2020058961A1 (en) | 2020-03-26 |
KR102613889B1 (ko) | 2023-12-13 |
EP3834418A1 (en) | 2021-06-16 |
JP7307154B2 (ja) | 2023-07-11 |
WO2020058962A1 (en) | 2020-03-26 |
JP2023078364A (ja) | 2023-06-06 |
TW202025753A (zh) | 2020-07-01 |
JP2022503715A (ja) | 2022-01-12 |
US20200359045A1 (en) | 2020-11-12 |
CN110944191A (zh) | 2020-03-31 |
TWI815974B (zh) | 2023-09-21 |
KR20230161543A (ko) | 2023-11-27 |
CN110944195B (zh) | 2023-05-09 |
KR20210059709A (ko) | 2021-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI815973B (zh) | 具有自我調整運動向量解析度的運動向量精度指示的信令通知 | |
TWI815967B (zh) | 仿射模式編解碼的模式相關自適應調整運動矢量分辨率 | |
US11451819B2 (en) | Clipping of updated MV or derived MV | |
US11778170B2 (en) | Temporal gradient calculations in bio | |
US20220264144A1 (en) | Context for coding affine mode adaptive motion vector resolution | |
TWI822838B (zh) | 使用空間鄰居的重疊塊運動補償 | |
CN113366851A (zh) | 对称运动矢量差编解码模式的快速算法 | |
TW202025749A (zh) | 計算運動向量預測值 | |
TW202017375A (zh) | 用於視頻編碼的對稱性雙向預測模式 | |
WO2020156525A1 (en) | Multiple syntax elements for adaptive motion vector resolution | |
CN113661709A (zh) | 仿射高级运动矢量预测中的运动信息精度对齐 | |
TWI846727B (zh) | 兩步幀間預測 |