TWI846728B - 不同視頻塊尺寸的仿射模式計算 - Google Patents
不同視頻塊尺寸的仿射模式計算 Download PDFInfo
- Publication number
- TWI846728B TWI846728B TW108132496A TW108132496A TWI846728B TW I846728 B TWI846728 B TW I846728B TW 108132496 A TW108132496 A TW 108132496A TW 108132496 A TW108132496 A TW 108132496A TW I846728 B TWI846728 B TW I846728B
- Authority
- TW
- Taiwan
- Prior art keywords
- motion vector
- video
- control point
- precision
- video unit
- Prior art date
Links
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 title claims abstract description 96
- 238000004364 calculation method Methods 0.000 title description 10
- 230000033001 locomotion Effects 0.000 claims abstract description 449
- 239000013598 vector Substances 0.000 claims abstract description 268
- 238000000034 method Methods 0.000 claims description 179
- 230000002123 temporal effect Effects 0.000 claims description 32
- 238000006243 chemical reaction Methods 0.000 claims description 22
- 230000011664 signaling Effects 0.000 claims description 19
- 238000003672 processing method Methods 0.000 claims description 10
- 238000006073 displacement reaction Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 description 44
- 238000009795 derivation Methods 0.000 description 37
- 230000008569 process Effects 0.000 description 36
- 241000023320 Luma <angiosperm> Species 0.000 description 29
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 29
- 230000002146 bilateral effect Effects 0.000 description 22
- 230000002457 bidirectional effect Effects 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 17
- 238000004590 computer program Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 101100537098 Mus musculus Alyref gene Proteins 0.000 description 7
- 101150095908 apex1 gene Proteins 0.000 description 7
- 238000010276 construction Methods 0.000 description 6
- 238000012795 verification Methods 0.000 description 6
- 230000003044 adaptive effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000000644 propagated effect Effects 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
- 230000009466 transformation Effects 0.000 description 2
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000002441 reversible 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
- 238000013519 translation Methods 0.000 description 1
Images
Abstract
描述了其中使用仿射運動補償模式來生成位元流的視頻編碼和解碼,涉及不同視頻塊尺寸的仿射模式計算。一個示例包括:對於當前視頻單元的重構,生成仿射運動向量預測候選的列表,其中該列表中的每個候選在不使用限幅操作的情況下被計算,其中限幅操作將候選運動向量的幅度限制到一範圍;以及使用仿射運動向量預測候選的列表來執行當前視頻單元的重構。
Description
該專利文件涉及視頻編碼技術、解碼技術、設備和系統。
根據適用的專利法和/或依據巴黎公約的規則,本申請是為了及時要求於2018年9月8日提交的國際專利申請No.PCT/CN2018/104723的優先權和權益。為了根據美國法律的所有目的,國際專利申請No.PCT/CN2018/104723的全部公開通過引用而併入作為本申請的公開的一部分。
運動補償(Motion Compensation,MC)是視頻處理中的一種技術,通過考慮相機和/或視頻中的對象的運動,在給定先前和/或未來幀的情況下預測視頻中的幀。運動補償可以用於針對視頻壓縮的對視頻數據的編碼。
本文件公開了與在視頻編碼和解碼中使用仿射運動補
償相關的方法、系統和設備。在一個代表性方面,公開了一種視頻處理方法。該方法包括:對於當前視頻單元的重構,生成仿射運動向量預測候選的列表,其中該列表中的每個候選在不使用限幅操作的情況下被計算,其中限幅操作將候選運動向量的幅度限制到一範圍;以及使用仿射運動向量預測候選的列表來執行當前視頻單元的重構。
在又一方面,公開了另一種視頻處理方法。該方法包括:在從視頻單元的位元流生成視頻單元期間,使用與用於在位元流中對仿射視頻編解碼模式中的運動向量差進行編碼的精度相同的精度來構造仿射運動向量預測值的列表,以及使用仿射運動向量預測候選的列表來執行視頻單元的生成。
在又一方面,公開了另一種視頻處理方法。該方法包括:對於視頻塊的位元流和被仿射編解碼的視頻塊之間的轉換,確定對該轉換啟用了對具有不同精度的多個運動向量差(Motion Vector Difference,MVD)的使用;以及基於該確定來執行該轉換。
在又一方面,公開了一種視頻處理方法。該方法包括:將基於運動的子塊編解碼工具應用於當前視頻單元,其中該工具至少基於以第一塊尺寸推導用於運動補償的第一運動信息和以不同於第一塊尺寸的第二塊尺寸推導第二運動信息;以及儲存用於未來視頻單元的運動預測的第二運動信息。
其中dMVi c[1]、dMVi c[3]表示在第i次迭代中推導的、4-參數仿射模型中使用的右上方控制點的水平和垂直運動向量差,其中>>是位移操作,w是視頻單元的寬度,k(w)是非負整數,並且o(w)是偏移。
在又一方面,公開了一種視頻處理方法。該方法包括:使用與仿射視頻編解碼模式相關聯的視頻單元的位元流,該仿射視頻編解碼模式包括使用以不同精度編碼的多個運動向量差(MVD),使得第一MVD具有第一精度並且第二MVD具有與第一MVD不同的第二精度;以及使用位元流來構造視頻單元。
在又一代表性方面,本文描述的各種技術可以體現為儲存在非暫時性電腦可讀介質上的電腦程式產品。該電腦程式產品包括用於執行本文描述的方法的程式代碼。
在又一代表性方面,視頻編碼器裝置可以實施如本文所描述的方法。
在又一代表性方面,視頻解碼器裝置可以實施如本文所描述的方法。
在隨附的附件、附圖、和以下描述中闡述了一個或多個實施方式的細節。根據描述和附圖以及根據申請專利範圍,其它特徵將是顯而易見的。
A0、A1、B1、B0、B2:位置
tb、td:POC距離
C0、C1:位置
MV0、MV0’、MV1、MV1’、MV2、V0、V1:運動向量
A、B、C、D、E、a、b、c、d:塊
TD0、TD1:時域距離
Ref0、Ref1:參考圖片
2600:控制設備
2605:處理器
2610:儲存器
2615:網路適配器
2625:互連
2700:移動設備
2701:控制器/處理器
2702:儲存器
2703:輸入/輸出單元
2704:顯示設備
2800、2900、3100、3200、3300、3400、3500、3600:方法
2802、2902~2906、3102、3104、3202、3204、3302、3304、3402、3404、3502、3602、3604:步驟
3000:視頻處理系統
3002:輸入
3004:編碼組件
3006、3008:組件
3010:顯示介面
圖1示出了用於Merge候選列表構造的推導過程的示例。
圖2示出了空域Merge候選的位置的示例。
圖3示出了為空域Merge候選的冗餘校驗而考慮的候選對的示例。
圖4A和圖4B示出了N×2N分割和2N×N分割的第二PU的示例位置。
圖5是用於時域Merge候選的運動向量縮放的圖示。
圖6示出了時域Merge候選的候選位置C0和C1的示例。
圖7A和圖7B示出了組合的雙向預測Merge候選的示例。
圖8示出了用於運動向量預測候選的推導過程的示例。
圖9是用於空域運動向量候選的運動向量縮放的圖示。
圖10示出了用於CU(Coding Unit,編解碼單元)的ATMVP(Alternative Temporal Motion Vector Prediction,可選時域運動向量預測)運動預測的示例。
圖11示出了具有四個子塊(A-D)的一個CU及其相鄰塊(a-d)的示例。
圖12是其中OBMC(Overlapped Block Motion Compensation,重疊塊運動補償)可應用的子塊的示例圖示。
圖13示出了用於推導IC參數的相鄰樣本的示例。
圖14示出了簡化的仿射運動模型的示例。
圖15示出了每個子塊的仿射MVF(Motion Vector Field,運動向量場)的示例。
圖16A和圖16B分別示出了4-參數仿射模型和6-參數仿射模型的示例。
圖17示出了用於AF_INTER模式的MVP的示例。
圖18A和圖18B示出了AF_MERGE模式的示例候選。
圖19示出了雙邊匹配的示例。
圖20示出了模板匹配的示例。
圖21描繪了在幀速率上轉換(Frame Rate Up Conversion,FRUC)中使用單邊運動估計(Motion Estimation,ME)的示例。
圖22示出了光流軌跡的示例。
圖23A和圖23B示出了沒有塊擴展的BIO的示例。
圖24示出了基於雙邊模板匹配的DMVR(Decoder-Side Motion Vector Refinement,解碼器側運動向量細化)的示例。
圖25A-圖25E示出了推導PU/CU的內子塊和邊界子塊的MVstore。
圖26是示出可用來實施本公開技術的各個部分的電腦系統或其他控制設備的架構的示例的方塊圖。
圖27示出了可用來實施本公開技術的各個部分的移動設備的示例實施例的方塊圖。
圖28是視頻處理的示例方法的流程圖。
圖29是視頻編碼的示例方法的流程圖。
圖30是可以實施所公開技術的示例視頻處理系統的方塊圖。
圖31是視頻處理的示例方法的流程圖。
圖32是視頻處理的示例方法的流程圖。
圖33是視頻處理的示例方法的流程圖。
圖34是視頻處理的示例方法的流程圖。
圖35是視頻處理的示例方法的流程圖。
圖36是視頻處理的示例方法的流程圖。
本文件提供了幾種可以體現到數位視頻編碼器和解碼器中的技術。為了清楚理解,在本文件中使用章節標題,並且不將每個章節中公開的技術和實施例的範圍僅限於該章節。
1.概述
所公開的技術涉及視頻編解碼技術。具體地,所公開的技術涉及後重構濾波器(post-reconstruction filter),例如,圖像/視頻編解碼中的雙邊濾波器。它可以應用於像HEVC的現有視頻編解碼標準、或要最終確定的標準(多功能視頻編解碼)。它也可以應用於未來視頻編解碼標準或視頻編解碼器。
2.介紹
視頻編解碼標準已經主要地通過眾所周知的ITU-T和
ISO/IEC標準的發展而演進。ITU-T產生了H.261和H.263,ISO/IEC產生了MPEG-1和MPEG-4 Visual,並且兩個組織聯合地產生了H.262/MPEG-2視頻和H.264/MPEG-4高級視頻編碼(Advanced Video Coding,AVC)以及H.265/HEVC標準。自從H.262以來,視頻編解碼標準基於其中利用時域預測加變換編解碼的混合視頻編解碼結構。為了探索HEVC以外的未來視頻編解碼技術,VCEG和MPEG於2015年聯合創立了聯合視頻探索組(Joint Video Exploration Team,JVET)。此後,JVET採用了許多新方法,並且將其放入名為聯合探索模型(Joint Exploration Model,JEM)的參考軟體中。2018年4月,VCEG(Q6/16)和ISO/IEC JTC1 SC29/WG11(MPEG)之間的聯合視頻專家組(Joint Video Expert Team,JVET)被創建以研究VVC標準,目標是與HEVC相比降低50%的位元率。
2.1 HEVC/H.265中的幀間預測
每個幀間預測的PU具有用於一個或兩個參考圖片列表的運動參數。運動參數包括運動向量和參考圖片索引。也可以使用inter_pred_idc來信令通知對兩個參考圖片列表中的一個的使用。可以將運動向量顯式地編解碼為相對於預測值的增量。
當用跳過模式對CU進行編解碼時,一個PU與CU相關聯,並且不存在顯著的殘差係數、沒有編解碼的運動向量增量、或參考圖片索引。指定Merge模式,從而從相鄰PU獲得當前PU的運動參數,包括空域和時域候選。Merge模式可以應用於任何幀
間預測的PU,而不僅應用於跳過模式。Merge模式的替代是運動參數的顯式傳輸,其中,對於每個PU,顯式地信令通知運動向量(更準確地說,與運動向量預測值相比的運動向量差)、每個參考圖片列表的對應參考圖片索引、以及參考圖片列表使用。在本公開中,這樣的模式名為高級運動向量預測(Advanced Motion Vector Prediction,AMVP)。
當信令指示將使用兩個參考圖片列表中的一個時,從一個樣本塊產生PU。這被稱為“單向預測(uni-prediction)”。單向預測可用於P條帶和B條帶兩者。
當信令指示將使用兩個參考圖片列表時,從兩個樣本塊產生PU。這被稱為“雙向預測(bi-prediction)”。雙向預測僅可用於B條帶。
以下文本提供了HEVC中指定的幀間預測模式的詳細信息。描述將從Merge模式開始。
2.1.1 Merge模式
2.1.1.1 Merge模式的候選的推導
當使用Merge模式預測PU時,從位元流解析指向Merge候選列表中的條目的索引並將其用於檢索運動信息。該列表的構造在HEVC標準中指定,並且可以根據以下步驟序列總結:
步驟1:初始候選推導
步驟1.1:空域候選推導
步驟1.2:空域候選的冗餘校驗
步驟1.3:時域候選推導
步驟2:附加候選插入
步驟2.1:創建雙向預測候選
步驟2.2:插入零運動候選
這些步驟也在圖1中示意性地描繪。對於空域Merge候選推導,在位於五個不同位置的候選當中選擇最多四個Merge候選。對於時域Merge候選推導,在兩個候選當中選擇最多一個Merge候選。由於在解碼器處假設每個PU的恆定數量的候選,因此當從步驟1獲得的候選的數量未達到在條帶標頭中信令通知的Merge候選的最大數量(MaxNumMergeCand)時,生成附加候選。由於候選的數量是恆定的,因此使用截斷的一元二值化(Truncated Unary binarization,TU)來編碼最佳Merge候選的索引。如果CU的尺寸等於8,則當前CU的所有PU共享單個Merge候選列表,其與2N×2N預測單元的Merge候選列表相同。
在下文中,詳細描述了與前述步驟相關聯的操作。
圖1示出了用於Merge候選列表構造的推導過程的示例。
2.1.1.2 空域候選推導
在空域Merge候選的推導中,在位於圖2描繪的位置的候選當中選擇最多四個Merge候選。推導的順序是A1、B1、B0、A0和B2。僅當位置A1、B1、B0、A0的任何PU不可用(例如,因為它屬另一條帶或片(tile))或者被幀內編解碼時,才考慮位置
B2。在添加位置A1處的候選之後,對剩餘候選的添加進行冗餘校驗,其確保具有相同運動信息的候選被排除在列表之外,使得編解碼效率提高。為了降低計算複雜度,在所提到的冗餘校驗中並不考慮所有可能的候選對。相反,僅考慮與圖3中的箭頭鏈接的對,並且僅在用於冗餘校驗的對應候選具有不一樣的運動信息時,才將候選添加到列表。重複運動信息的另一來源是與不同於2N×2N的分割相關聯的“第二PU”。作為示例,圖4A和圖4B分別描繪了針對情況N×2N和2N×N的第二PU。當當前PU被分割為N×2N時,位置A1處的候選不被考慮用於列表構造。實際上,添加該候選將導致具有相同運動信息的兩個預測單元,這對於在編解碼單元中僅具有一個PU是冗餘的。類似地,當當前PU被分割為2N×N時,不考慮位置B1。
圖2示出了空域Merge候選的位置的示例。
圖3示出了為空域Merge候選的冗餘校驗而考慮的候選對的示例。
圖4A和圖4B示出了N×2N分割和2N×N分割的第二PU的示例位置。
2.1.1.3 時域候選推導
在該步驟中,只有一個候選被添加到列表。具體地,在該時域Merge候選的推導中,基於共位的PU來推導縮放的運動向量,該共位的PU屬給定參考圖片列表內與當前圖片具有最小POC差的圖片。在條帶標頭中顯式地信令通知要用於共位的PU的推導
的參考圖片列表。如圖5中的虛線所示獲得時域Merge候選的縮放的運動向量,其是使用POC距離tb和td從共位的PU的運動向量縮放的,其中tb被定義為當前圖片的參考圖片與當前圖片之間的POC差,並且td被定義為是共位的圖片的參考圖片與共位的圖片之間的POC差。時域Merge候選的參考圖片索引被設置為等於零。HEVC規範中描述了縮放過程的實際實現。對於B條帶,獲得兩個運動向量,一個用於參考圖片列表0,另一個用於參考圖片列表1,並且組合該兩個運動向量以得到雙向預測Merge候選。
圖5是用於時域Merge候選的運動向量縮放的圖示。
在屬參考幀的共位的PU(Y)中,在候選C0和C1之間選擇時域候選的位置,如圖6所描繪的。如果位置C0處的PU不可用、被幀內編解碼、或者在當前CTU列(row)外部,則使用位置C1。否則,位置C0用於時域Merge候選的推導。
圖6示出了時域Merge候選的候選位置C0和C1的示例。
2.1.1.4 附加候選插入
除了空域和時域Merge候選之外,還存在兩種附加類型的Merge候選:組合的雙向預測Merge候選和零Merge候選。通過利用空域和時域Merge候選來生成組合的雙向預測Merge候選。組合的雙向預測Merge候選僅用於B條帶。通過將初始候選的第一參考圖片列表運動參數與另一候選的第二參考圖片列表運動參數組合來生成組合的雙向預測候選。如果這兩個元組提供不同的
運動假設,它們將形成新的雙向預測候選。作為示例,圖7A和圖7B描繪了當原始列表(左側)中具有mvL0和refIdxL0或mvL1和refIdxL1的兩個候選被用於創建添加到最終列表(右側)的組合的雙向預測Merge候選的情況。有關於被考慮來生成這些附加Merge候選的組合的許多規則。
圖7A和圖7B示出了組合的雙向預測Merge候選的示例。
插入零運動候選以填充Merge候選列表中的剩餘條目,從而達到MaxNumMergeCand容量。這些候選具有零空域位移和從零開始並且每當新的零運動候選被添加到列表時增加的參考圖片索引。對於單向和雙向預測,由這些候選使用的參考幀的數量分別是一和二。最後,不對這些候選執行冗餘校驗。
2.1.1.5 用於並行處理的運動估計區域
為了加速編解碼處理,可以並行執行運動估計,從而同時推導給定區域內部的所有預測單元的運動向量。從空域鄰域推導Merge候選可能干擾並行處理,因為一個預測單元直到其相關聯的運動估計完成時才能從鄰近PU推導運動參數。為了減輕編解碼效率和處理等待時間之間的折衷,HEVC定義運動估計區域(Motion Estimation Region,MER),其尺寸在圖片參數集中使用“log2_parallel_merge_level_minus2”語法元素信令通知。當定義MER時,落入相同區域的Merge候選被標記為不可用,並且因此在列表構造中不予考慮。
2.1.2 AMVP
AMVP利用運動向量與相鄰PU的空時相關性,其用於運動參數的顯式傳輸。對於每個參考圖片列表,通過首先校驗時域上相鄰PU位置的上側、左側的可用性,移除冗餘候選並添加零向量以使候選列表為恆定長度來構造運動向量候選列表。然後,編碼器可以從候選列表選擇最佳預測值,並且發送指示所選候選的對應索引。與Merge索引信令類似,使用截斷的一元來編碼最佳運動向量候選的索引。在這種情況下要編碼的最大值是2(參見圖8)。在以下章節中,提供了關於運動向量預測候選的推導過程的細節。
2.1.2.1 AMVP候選的推導
圖8示出了用於運動向量預測候選的推導過程的示例。
在運動向量預測中,考慮兩種類型的運動向量候選:空域運動向量候選和時域運動向量候選。對於空域運動向量候選推導,最終基於位於圖2所描繪的五個不同位置的每個PU的運動向量推導兩個運動向量候選。
對於時域運動向量候選推導,從兩個候選選擇一個運動向量候選,其是基於兩個不同的共位的位置而推導的。在產生空時候選的第一列表之後,移除列表中的重複的運動向量候選。如果潛在候選的數量大於二,則從列表移除相關聯的參考圖片列表內的其參考圖片索引大於1的運動向量候選。如果空時運動向量候選的數量小於二,則將附加零運動向量候選添加到列表中。
2.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的運動向量,如圖9所描繪的。主要區別是給定參考圖片列表和當前PU的索引作為輸入;實際縮放過程與時域縮放過程相同。
2.1.2.3 時域運動向量候選
除了參考圖片索引推導之外,用於推導時域Merge候選的所有過程與用於推導空域運動向量候選的過程相同(參見圖6)。參考圖片索引被信令通知到解碼器。
2.2 JEM中的新幀間預測方法
2.2.1 基於子CU的運動向量預測
在具有QTBT(Quad Tree Binary Tree,四叉樹二叉樹)的JEM中,每個CU可以具有用於每個預測方向的至多一個運動參數集。通過將大CU劃分為子CU並且推導用於大CU的所有子CU的運動信息,在編碼器中考慮兩個子CU級別運動向量預測方法。可選時域運動向量預測(ATMVP)方法允許每個CU從小於共位的參考圖片中的當前CU的多個塊提取運動信息的多個集合。在空時運動向量預測(Spatial-Temporal Motion Vector Prediction,STMVP)方法中,通過使用時域運動向量預測值和空域相鄰運動向量來遞迴地推導子CU的運動向量。
為了保留子CU運動預測的更準確的運動場,當前禁用對參考幀的運動壓縮。
圖10示出了用於CU的ATMVP運動預測的示例。
2.2.1.1 可選時域運動向量預測
在可選時域運動向量預測(ATMVP)方法中,通過從小於當前CU的塊提取運動信息(包括運動向量和參考索引)的多個集合來修改運動向量時域運動向量預測(Temporal Motion Vector Prediction,TMVP)。子CU例如可以是方形N×N塊(默認將N設置為4)。
ATMVP以兩個步驟預測CU內的子CU的運動向量。第一步驟是利用所謂的時域向量識別參考圖片中的對應塊。參考圖片被稱為運動源圖片。第二步驟是將當前CU劃分為子CU並且從對應於每個子CU的塊獲得運動向量以及每個子CU的參考索引,如圖10所示。
在第一步驟中,參考圖片和對應塊由當前CU的空域相鄰塊的運動信息確定。為了避免相鄰塊的重複掃描過程,使用當前CU的Merge候選列表中的第一Merge候選。第一可用運動向量以及其相關聯的參考索引被設置為時域向量和運動源圖片的索引。這樣,在ATMVP中,與TMVP相比,可以更準確地識別對應塊,其中對應塊(有時被稱為共位的塊)總是在相對於當前CU的右下方或中心位置。
在第二步驟中,通過向當前CU的坐標添加時域向量,
運動源圖片中的時域向量識別子CU的對應塊。對於每個子CU,其對應塊(覆蓋中心樣本的最小運動網格)的運動信息用於推導該子CU的運動信息。在識別了對應N×N塊的運動信息之後,以與HEVC的TMVP相同的方式將其轉換為當前子CU的運動向量和參考索引,其中運動縮放和其它過程適用。例如,解碼器校驗是否滿足低延遲條件(即,當前圖片的所有參考圖片的POC小於當前圖片的POC)並且可能使用運動向量MVx(對應於參考圖片列表X的運動向量)來預測每個子CU的運動向量MVy(X等於0或1,Y等於1-X)。
2.2.1.2 空時運動向量預測
在此方法中,遵循光柵掃描順序遞迴地推導子CU的運動向量。圖11示出了此概念。讓我們考慮包含四個4×4子CU A、B、C和D的8×8 CU。當前幀中的相鄰4×4塊被標記為a、b、c和d。
子CU A的運動推導通過識別其兩個空域鄰居(neighbour)開始。第一鄰居是子CU A的上側的N×N塊(塊c)。如果該塊c不可用或是幀內編解碼的,則校驗子CU A的上側的其它N×N塊(從左到右,從塊c處開始)。第二鄰居是子CU A的左側的塊(塊b)。如果塊b不可用或是幀內編解碼的,則校驗子CU A的左側的其它塊(從上到下,從塊b處開始)。從每個列表的相鄰塊獲得的運動信息縮放到給定列表的第一參考幀。接下來,通過遵循與HEVC中指定的TMVP推導的過程相同的過程來推導子
塊A的時域運動向量預測值(Temporal Motion Vector Predictor,TMVP)。提取位置D處的共位的塊的運動信息並且對應地縮放。最後,在檢索和縮放運動信息之後,分別針對每個參考列表平均所有可用的運動向量(多達3個)。指派平均的運動向量為當前子CU的運動向量。
圖11示出了具有四個子塊(A-D)的一個CU及其相鄰塊(a-d)的示例。
2.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(Context Adaptive Binary Arithmetic Coding,上下文自適應二進制算術編解碼)進行上下文編解碼。而在HEVC中,僅第一個二進制位是上下文編解碼的並且剩餘的二進制位是上下文旁路編解碼的。
2.2.2 自適應運動向量差解析度
在HEVC中,當條帶頭中的use_integer_mv_flag等於0
時,以四分之一亮度樣本為單位信令通知(在PU的運動向量與預測的運動向量之間的)運動向量差(MVD)。在JEM中,引入了局部自適應運動向量解析度(Locally Adaptive Motion Vector Resolution,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.2.3 更高的運動向量儲存精度
在HEVC中,運動向量精度是四分之一像素(對於4:2:0視頻,四分之一亮度樣本和八分之一彩度樣本)。在JEM中,內部運動向量儲存和Merge候選的精度增加到1/16像素。更高的運動向量精度(1/16像素)用於以跳過/Merge模式編解碼的CU的運動補償幀間預測。對於用常規AMVP模式編解碼的CU,使用整數像素或四分之一像素運動,如章節2.2.2所述。
具有與HEVC運動補償插值濾波器相同的濾波器長度和歸一化因子的SHVC(Scalable High Efficiency Video Coding,可伸縮高效視頻編解碼)上採樣插值濾波器被用作附加分數像素位置的運動補償插值濾波器。在JEM中彩度分量運動向量精度是1/32樣本,通過使用兩個相鄰的1/16像素分數位置的濾波器的平均來推導1/32像素分數位置的附加插值濾波器。
2.2.4 重疊塊運動補償
重疊塊運動補償(OBMC)先前已在H.263中使用。與
H.263不同,在JEM中,可以使用CU級別的語法來打開和關閉OBMC。當在JEM中使用OBMC時,除了CU的右側邊界和底部邊界之外,對所有運動補償(MC)塊邊界執行OBMC。此外,它還應用於亮度和彩度分量兩者。在JEM中,MC塊對應於編解碼塊。當用子CU模式(包括子CU Merge、仿射和FRUC、幀速率上轉換模式)編解碼CU時,CU的每個子塊是MC塊。為了以統一的方式處理CU邊界,對於所有MC塊邊界以子塊級別執行OBMC,其中子塊尺寸被設置為等於4×4,如圖12所示。
圖12是其中OBMC可應用的子塊的圖示。
當OBMC應用於當前子塊時,除了當前運動向量之外,四個連接的相鄰子塊的運動向量(如果可用且與當前運動向量不同)也用於推導當前子塊的預測塊。組合基於多個運動向量的這些多個預測塊以生成當前子塊的最終預測信號。
將基於相鄰子塊的運動向量的預測塊表示為P N ,其中N指示相鄰的上側、下側、左側和右側子塊的索引,並且將基於當前子塊的運動向量的預測塊表示為P C 。當P N 是基於包含與當前子塊相同的運動信息的相鄰子塊的運動信息時,不從P N 執行OBMC。否則,將P N 的每個樣本添加到P C 中的相同樣本,即將P N 的四行/列添加到P C 。加權因子{1/4,1/8,1/16,1/32}用於P N ,並且加權因子{3/4,7/8,15/16,31/32}用於P C 。例外是小MC塊(即,當編解碼塊的高度或寬度等於4或CU是用子CU模式編解碼的時),對其僅將P N 的兩行/列添加到P C 。在這種情況下,加權因子{1/4,1/8}
用於P N ,並且加權因子{3/4,7/8}用於P C 。對於基於垂直(水平)相鄰子塊的運動向量生成的P N ,將P N 的相同行(列)中的樣本添加到具有相同加權因子的P C 。
在JEM中,對於尺寸小於或等於256個亮度樣本的CU,信令通知CU級別標誌以指示是否對當前CU應用OBMC。對於尺寸超過256個亮度樣本或未使用AMVP模式進行編解碼的CU,默認應用OBMC。在編碼器處,當將OBMC應用於CU時,在運動估計階段期間考慮其影響。由OBMC使用頂部相鄰塊和左側相鄰塊的運動信息形成的預測信號用於補償當前CU的原始信號的頂部邊界和左側邊界,然後應用常規運動估計處理。
2.2.5 局部光照補償
局部光照補償(Local Illumination Compensation,LIC)是基於使用縮放因子a和偏移b的、用於光照變化的線性模型。並且針對每個幀間模式編解碼的編解碼單元(CU)自適應地啟用或禁用它。
圖13示出了用於推導IC參數的相鄰樣本的示例。
當LIC應用於CU時,採用最小平方誤差方法來通過使用當前CU的相鄰樣本及其對應參考樣本來推導參數a和b。更具體地,如圖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.2.6 仿射運動補償預測
在HEVC中,僅將平移運動模型應用於運動補償預測(Motion Compensation Prediction,MCP)。然而在真實世界中,存在多種運動,例如放大/縮小、旋轉、透視運動和其他不規則運動。在JEM中,應用簡化的仿射變換運動補償預測。如圖14所示,塊的仿射運動場由兩個控制點運動向量描述。
圖14示出了簡化的仿射運動模型的示例。
其中(v 0x ,v 0y )是左上角控制點的運動向量,(v 1x ,v 1y )是右上角控制點的運動向量。
為了進一步簡化運動補償預測,應用基於子塊的仿射變換預測。子塊尺寸M×N如等式2推導,其中MvPre是運動向量分數精度(在JEM中是1/16),(v 2x ,v 2y )是根據等式1計算的左下方控制點的運動向量。
在通過等式2推導之後,如果需要,應該向下調整M和N,以使其分別為w和h的除數。
為了推導每個M×N子塊的運動向量,根據等式1計算如圖15所示的每個子塊的中心樣本的運動向量,並取整到1/16分數精度。然後,應用章節2.2.3中提到的運動補償插值濾波器,以用推導的運動向量生成每個子塊的預測。
圖15示出了每個子塊的仿射MVF的示例。
在MCP之後,對每個子塊的高精度運動向量進行取整,
並將其以與常規運動向量相同的精度保存。
2.2.6.1 AF_INTER模式
在JEM中,存在兩種仿射運動模式:AF_INTER模式和AF_MERGE模式。對於寬度和高度都大於8的CU,可以應用AF_INTER模式。在位元流中信令通知CU級別中的仿射標誌以指示是否使用AF_INTER模式。在該模式中,使用相鄰塊構造具有運動向量對{(v0 ,v1)|v0={vA ,vB ,vc},v1={vD, vE}}的候選列表。如圖17所示,從塊A、B或C的運動向量中選擇v0。根據參考列表以及用於相鄰塊的參考的圖片順序計數(Picture Order Count,POC)、用於當前CU的參考的POC和當前CU的POC之間的關係來縮放來自相鄰塊的運動向量。從相鄰塊D和E選擇v1的方法是類似的。如果候選列表的數量小於2,則由通過複製每個AMVP候選而組成的運動向量對來填充列表。當候選列表大於2時,首先根據相鄰運動向量的一致性(候選對中的兩個運動向量的相似性)對候選進行排序,並且僅保留前兩個候選。用RD成本校驗來確定將哪個運動向量對候選選擇為當前CU的控制點運動向量預測(Control Point Motion Vector Prediction,CPMVP)。並且在位元流中信令通知指示候選列表中的CPMVP的位置的索引。在確定當前仿射CU的CPMVP之後,應用仿射運動估計並找到控制點運動向量(Control Point Motion Vector,CPMV)。然後在位元流中信令通知CPMV和CPMVP的差。
圖16A和圖16B分別示出了4-參數仿射模型和6-參數
仿射模型的示例。
圖17示出了用於AF_INTER模式的MVP的示例。
在AF_INTER模式中,當使用4/6參數仿射模式時,需要2/3個控制點,因此對於這些控制點需要編解碼2/3個MVD,如圖16A和圖16B所示。在JVET-K0337中,提出如下推導MV,即從mvd0預測mvd1和mvd2。
其中、mvdi和mv1是預測的運動向量,左上方像素(i=0)、右上方像素(i=1)或左下方像素(i=2)的運動向量差和運動向量分別如圖16B所示。請注意,添加兩個運動向量(例如,mvA(xA,yA)和mvB(xB,yB))等於兩個分量各自地的和,即newMV=mvA+mvB,並且newMV的兩個分量被分別設置為(xA+xB)和(yA+yB)。
2.2.6.2 AF_INTER模式中的快速仿射ME算法
在仿射模式中,需要聯合確定2個或3個控制點的MV。直接聯合搜索多個MV是計算複雜的。提出一種快速仿射ME算法,並將其納入VTM/BMS。
針對4-參數仿射模型描述了快速仿射ME算法,並且該思想可以擴展到6-參數仿射模型。
P=(x,y)是像素位置。
2.2.6.3 AF_MERGE模式
當在AF_MERGE模式中應用CU時,它從有效的相鄰重構塊得到用仿射模式編解碼的第一個塊。並且候選塊的選擇順序是從左側、上側、右上角、左下方到左上角,如圖18A所示。如果相鄰左下方塊A以仿射模式進行編解碼,如圖18B所示,則推導包含塊A的CU的左上角、右上角和左下角的運動向量v2、v3
和v4。並且根據v2、v3和v4計算當前CU的左上角的運動向量v0。其次,計算當前CU的右上角的運動向量v1。
在推導當前CU的CPMV v0和v1之後,根據簡化的仿射運動模型等式1生成當前CU的MVF。為了識別當前CU是否以AF_MERGE模式進行編解碼,當至少有一個相鄰塊以仿射模式進行編解碼時,在位元流中信令通知仿射標誌。
圖18A和圖18B示出了AF_MERGE模式的示例候選。
2.2.7 模式匹配的運動向量推導
模式匹配的運動向量推導(Pattern Matched Motion Vector Derivation,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級別處進一步細化運動信息。
例如,對於W×H CU運動信息推導執行以下推導過程。在第一階段,推導整個W×H CU的MV。在第二階段,該CU進一步被劃分為M×M個子CU。M的值的計算方法如(16)所示,D是預定義的劃分深度,在JEM中默認設置為3。然後推導每個子CU的MV。
如圖19所示,通過在兩個不同參考圖片中沿當前CU的運動軌跡找到兩個塊之間的最接近匹配,使用雙邊匹配來推導當前CU的運動信息。在連續運動軌跡的假設下,指向兩個參考塊的運動向量MV0和MV1應當與當前圖片和兩個參考圖片之間的時域距離(即TD0和TD1)成比例。作為特殊情況,當當前圖片在時域上在兩個參考圖片之間並且從當前圖片到兩個參考圖片的時域距離相同時,雙邊匹配成為基於鏡像的雙向MV。
如圖20所示,模板匹配用來通過找到當前圖片中的模板(當前CU的頂部和/或左側相鄰塊)與參考圖片中的塊(與模板的尺寸相同)之間的最接近匹配來推導當前CU的運動信息。除了前述FRUC Merge模式之外,模板匹配也應用於AMVP模式。在JEM中,正如在HEVC中所做的那樣,AMVP具有兩個候選。利用模板匹配方法,新的候選被推導。如果模板匹配新推導的候選與第一現有AMVP候選不同,則將其插入AMVP候選列表的最開始處,然後將列表尺寸設置為2(意味著移除第二現有AMVP候選)。當應用於AMVP模式時,僅應用CU級別搜索。
2.2.7.1 CU級別MV候選集
CU級別處的MV候選集有以下組成:
(i)如果當前CU處於AMVP模式,則為原始AMVP候選
(ii)所有Merge候選,
(iii)在章節2.2.7.3中介紹的插值MV場中的幾個MV。
(iv)頂部和左側相鄰運動向量
當使用雙邊匹配時,將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被添加到候選列表。
2.2.7.2 子CU級別MV候選集
子CU級別處的MV候選集包括:(i)從CU級別搜索確定的MV,(ii)頂部、左側、左上方和右上方相鄰MV,(iii)來自參考圖片的共位的MV的縮放版本,(iv)多達4個ATMVP候選,(v)多達4個STMVP候選。
來自參考圖片的縮放MV如下推導。遍歷兩個列表中的所有參考圖片。參考圖片中的子CU的共位的位置處的MV被縮放到起始CU級別MV的參考。
ATMVP和STMVP候選限制為前四個。
在子CU級別處,多達17個MV被添加到候選列表。
2.2.7.3 插值MV場的生成
在對幀進行編解碼之前,基於單邊ME為整個圖片生成插值運動場。然後,運動場可以稍後用作CU級別或子CU級別MV候選。
首先,兩個參考列表中的每個參考圖片的運動場以4×4塊級別遍歷。對於每個4×4塊,如果與塊相關聯的運動通過當前圖片中的4×4塊(如圖21所示)並且塊未被分配任何插值運動,則參考塊的運動根據時域距離TD0和TD1(以與HEVC中的TMVP的MV縮放的方式相同的方式)被縮放到當前圖片,並且縮放的運動被分配給當前幀中的塊。如果沒有縮放的MV被分配給4×4塊,則在插值運動場中將塊的運動標記為不可用。
圖21示出了在FRUC中使用單邊運動估計ME的示例。
2.2.7.4 插值和匹配成本
當運動向量指向分數樣本位置時,需要運動補償插值。為了降低複雜度,將雙線性插值而不是常規8抽頭HEVC插值用於雙邊匹配和模板匹配。
匹配成本的計算在不同步驟處有點不同。當從CU級別的候選集中選擇候選時,匹配成本是雙邊匹配或模板匹配的絕對和差(Absolute Sum Difference,SAD)。在確定起始MV之後,子CU級別搜索的雙邊匹配的匹配成本C計算如下:
(23)
其中w是根據經驗設置為4的加權因子,MV和MV s 分別指示當前MV和起始MV。SAD仍用作子CU級別搜索處的模板匹配的匹配成本。
在FRUC模式中,僅通過使用亮度樣本來推導MV。推導的運動將用於MC幀間預測的亮度和彩度兩者。在決定MV之後,使用用於亮度的8抽頭插值濾波器和用於彩度的4抽頭插值濾波器來執行最終MC。
2.2.7.5 MV細化
MV細化是基於模式的MV搜索,具有雙邊匹配成本或模板匹配成本的標準。在JEM中,對於CU級別處和子CU級別處的MV細化,分別支持兩種搜索模式一無限制中心偏置菱形搜索(Unrestricted Center-Biased Diamond Search,UCBDS)和自適應交叉搜索。對於CU和子CU級別MV細化兩者,以四分之一亮度樣本MV精度直接搜索MV,並且接著是八分之一亮度樣本MV細化。將用於CU和子CU步驟的MV細化的搜索範圍設置為等於8亮度樣本。
2.2.7.6 模板匹配FRUC Merge模式中預測方向的選擇
在雙邊匹配Merge模式中,始終應用雙向預測,因為CU的運動信息是基於兩個不同的參考圖片中沿當前CU的運動軌跡的兩個塊之間的最接近匹配推導的。對於模板匹配Merge模式沒有這樣的限制。在模板匹配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級別模板匹配過程。
2.2.8 雙向光流
雙向光流(Bi-directional Optical flow,BIO)是樣本方式的運動細化,其在用於雙向預測的塊方式運動補償的頂部執行。樣本級別運動細化不使用信令。
圖22示出了光流軌跡的示例。
這裡,τ0和τ1表示到參考幀的距離,如圖22所示。基於Ref0和Ref1的POC計算距離τ0和τ1:τ0=POC(當前)-POC(Ref0),τ1=POC(Ref1)-POC(當前)。如果兩個預測都來自相同的時域方向(兩者都來自過去或都來自未來),則sign是不同的(即,τ0.τ1<0)。在這種情況下,只有預測不是來自相同的時刻(即,τ0≠τ1)才應用BIO,兩個參考區域都具有非零運動(MVx 0 ,MVy 0 ,MVx 1 ,MVy 1≠0)並且塊運動向量與時域距離成比例(MVx 0/MVx 1=MVy 0/MVy 1=-τ0/τ1)。
等式26中的所有值都取決於樣本位置(i',j'),到目前為止,其從符號中省略。假設運動在局部周圍區域是一致的,我們在以當前預測點(i,j)為中心的(2M+1)×(2M+1)的方形窗口Ω內部最小化△,其中M等於2:
為了避免除以零或非常小的值,在等式28和29中引入正則化參數r和m。
r=500.4 d-8 (31)
m=700.4 d-8 (32)
這裡d是視頻樣本的位元深度。
為了使BIO的儲存器存取與常規雙向預測運動補償保持相同,僅針對當前塊內部的位置計算所有預測和梯度值I (k) 、 、 。在等式30中,以在預測塊的邊界上的當前預測點為中心的(2M+1)×(2M+1)方形窗口Ω需要存取塊的外部的位置(如圖23A所示)。在JEM中,將塊的外部的I (k) 、、 的值設置為等於塊內部最近的可用值。例如,這可以實施為填充,如圖23B所示。
圖23A-圖23B示出了BIO w/o塊擴展。圖23A示出了塊的外部的存取位置。在圖23B中,使用填充以避免額外的儲存器存取和計算。
利用BIO,可以針對每個樣本細化運動場。為了降低計算複雜度,在JEM中使用基於塊的BIO設計。基於4×4塊計算運動細化。在基於塊的BIO中,聚合4×4塊中的所有樣本的等式30中的s n 的值,然後將s n 的聚合值用於推導4×4塊的BIO運動向量偏移。更具體地,以下公式用於基於塊的BIO推導:
其中bk表示屬預測塊的第k個4×4塊的樣本集。將等式28和29中的s n 替換為((s n,bk )>>4),以推導相關聯的運動向量偏移。
在一些情況下,由於噪音或不規則運動,BIO的MV群(MV regiment)可能不可靠。因此,在BIO中,MV群的幅度被限幅到閾值BIO。閾值是基於當前圖片的參考圖片是否都來自一個方向而確定的。如果當前圖片的所有參考圖片都來自一個方向,則將閾值的值設置為12×214-d ;否則,將其設置為12×213-d 。
利用使用與HEVC運動補償過程(2D可分離FIR)一致的操作的運動補償插值來同時計算BIO的梯度。該2D可分離FIR的輸入是與運動補償過程和根據塊運動向量的分數部分的分數位置(fracX,fracY)相同的參考幀樣本。在水平梯度的情況下,首先使用與具有去縮放偏移d-8的分數位置fracY相對應的BIOfilterS垂直插值信號,然後在水平方向上應用梯度濾波器BIOfilterG,該BIOfilterG與具有去縮放偏移18-d的分數位置fracX相對應。在垂直梯度的情況下,首先使用與具有去縮放偏移d-8的分數位置fracY相對應的BIOfilterG垂直應用梯度濾波器,然後在水平方向上使用BIOfilterS執行信號位移,該BIOfilterS與具有去縮放偏移18-d的分數位置fracX相對應。為了保持合理的複雜度,用於梯度計算的插值濾波器BIOfilterG和用於信號位移的插值濾波器BIOfilterS的長度更短(6抽頭)。表1示出了用於BIO中塊運動向量的不同分數位置的梯度計算的濾波器。表2示出了用於BIO中預測信號生成的插值濾波器。
在JEM中,當兩個預測來自不同的參考圖片時,BIO應用於所有雙預測塊。當為CU啟用LIC時,禁用BIO。
在JEM中,OBMC在常規MC過程之後應用於塊。為了降低計算複雜性,在OBMC過程期間不應用BIO。這意味著BIO僅在使用其自身的MV時才應用於塊的MC過程,並且當在OBMC過程期間使用相鄰塊的MV時不應用於MC過程。
2.2.9 解碼器側運動向量細化
在雙向預測操作中,對於一個塊區域的預測,將分別使用列表0的運動向量(MV)和列表1的MV形成的兩個預測塊進行組合以形成單個預測信號。在解碼器側運動向量細化(Decoder-Side Motion Vector Refinement,DMVR)方法中,通過雙邊模板匹配過程進一步細化雙向預測的兩個運動向量。雙邊模板匹配應用在解碼器中,以在雙邊模板和參考圖片中的重構樣本之間執行基於失真的搜索,以便獲得細化的MV而無需發送附加運動信息。
在DMVR中,雙邊模板被生成為兩個預測塊的加權組合(即,平均),該兩個預測塊分別來自列表0的初始MV0和列表1的MV1,如圖24所示。模板匹配操作包括計算生成的模板與參考圖片中的(在初始預測塊周圍的)樣本區域之間的成本計量(cost measure)。對於兩個參考圖片中的每一個,將產生最小模板成本的MV考慮為該列表的更新MV以替換原始MV。在JEM中,針對每個列表搜索九個MV候選。該九個MV候選包括原始MV和8個與原始MV在水平或垂直方向上或兩個方向上具有一個亮度樣本偏移的環繞的MV。最後,將兩個新的MV,即如圖24中
所示的MV0'和MV1',用於生成最終的雙向預測結果。將絕對差之和(SAD)用作成本計量。請注意,當計算由一個環繞的MV生成的預測塊的成本時,實際上使用取整(到整數像素)的MV而不是真實MV來獲得預測塊。
將DMVR應用於雙向預測的Merge模式,其中一個MV來自過去的參考圖片,另一MV來自未來的參考圖片,而無需發送附加語法元素。在JEM中,當對CU啟用LIC、仿射運動、FRUC或子CU Merge候選時,不應用DMVR。
圖24示出了基於雙邊模板匹配的DMVR的示例。
3.當前實施方式的局限性
在AF_INTER模式中,當生成仿射MVP候選列表時,取決於當前PU的位置、圖片尺寸和最大編解碼單元(Largest Coding Unit,LCU)尺寸等,候選被限幅在一定範圍內。這不是必需的,因為這樣的限幅操作將在運動補償過程中執行。同時,在仿射模式或ATMVP模式下,運動補償以4×4塊級別執行,與4×8、8×4或8×8塊相比,這增加了頻寬。
在其他相關技術描述中,針對AF_INTER模式提出了自適應MVD精度。
來自列表0和列表1的當前圖片的參考圖片分別表示為Ref0和Ref1。表示τ0=POC(當前)-POC(Ref0),τ1=POC(Ref1)-POC(當前),並將來自Ref0和Ref1的當前塊的參考塊分別表示為refblk0和refblk1。對於當前塊中的子塊,refblk0中指向refblk1的其對應子塊的原始MV表示為(vx,vy)。Ref0和Ref1中的子塊的MV分別由(mvL0x,mvL0y)和(mvL1x,mvL1y)表示。由(vx,vy)表示BIO中從原始MV推導的推導的MV。如本專利文件中所述,可以將用於運動預測的基於更新的運動向量的方法擴展到現有和未來的視頻編解碼標準。
MV(vx,vy)和MV(mvLXx,mvLXy),其中X=0或1,應在加法操作之前縮放到相同的精度,諸如在執行示例1(e)和/或示例2中的技術之前。
代替於考慮POC距離(例如,在如上所述的τ0和τ1的計算中),可以簡化在BIO過程中調用的MV的縮放方法。
當τ0>0且τ1>0時,(vx,vy)的推導和(mvLXx,mvLXy)的更新可以一起完成以保持高精度。
裁剪操作可以進一步應用於BIO和/或DMVR中採用的更新的MV或可能需要更新MV的其他種類的編解碼方法。
可以約束在BIO和/或可能需要更新MV的其他種類的編解碼方法中調用的更新的MV的使用。
在一個示例中,提出了兩步幀間預測過程,其中執行第一步驟以基於與當前塊相關聯的用信令通知/推導的運動信息來生
成一些中間預測(第一預測),並且執行第二步驟以基於可能依賴於中間預測的更新的運動信息來推導當前塊的最終預測(第二預測)。
在一個示例中,可以諸如在視頻參數集(VPS)、序列參數集(SPS)、圖片參數集(PPS)、條帶、CTU或CU中從編碼器向解碼器發信令通知是否更新用於BIO編解碼塊的MV和/或使用更新的MV用於未來運動預測和/或如何將更新的MV用於未來運動預測。
在一個示例中,提出對BIO過程中利用的運動向量添加約束。
提出對於BIO、DMVR、FRUC、模板匹配或需要從位元流中推導的內容更新MV(或包括MV和/或參考圖片的運動信息)的其他方法,更新的運動信息的使用可能受到約束。
在一個示例中,提出可以在AF_INTER模式中使用不同的MVD精度,並且可以用信令通知語法元素以指示每個塊/CU/PU的MVD精度。
提出如果對塊(例如PU)執行多於一個DMVD方法,則如BIO、DMVR、FRUC和模板匹配等的不同的解碼器側運動向量推導(DMVD)方法獨立地工作,即DMVD方法的輸入不取決於另一DMVD方法的輸出。
4.示例實施例
為了解決這些問題,除了其他解決方案之外,我們提出
移除仿射MVP候選列表構造過程中所需的限幅操作,同時,以更大的塊尺寸執行運動補償,但是針對右側/底部PU/CU邊界以4×4塊級別儲存運動信息。
以下詳細實施例應該被視為解釋一般概念的示例。不應該以狹義的方式解釋這些實施例。此外,這些實施例可以以提供視頻編碼中的改進的方式彼此組合。
4.1 仿射模式的改進
1.提出移除仿射MVP候選列表構造過程中所需的限幅操作。
a.此外,在一個示例中,僅在運動補償階段中調用限幅操作。
2.提出在仿射模式、ATMVP模式或任何子塊編解碼工具中,用於運動補償的運動信息(由MVmc表示)和用於未來PU/CU/塊的運動預測的儲存的運動信息(由MVstore表示)可以以不同的塊尺寸而推導。
a.在一個示例中,MVmc以M1xN1塊尺寸而推導,而MVstore以M2xN2塊尺寸而推導,其中M1、M2、N1和N2是正整數,並且不允許M1等於M2並且N1等於N2。例如,M1和N1被設置為等於8,M2和N2被設置為等於4。
b.在一個示例中,MVmc以M1xN1塊尺寸而推導;並且對於內子塊,MVstore以M2xN2塊尺寸而推導,而對於邊界子塊,MVstore以M3xN3塊尺寸而推導。內子塊和邊界子塊如圖25A所示。
例如,M1和N1被設置為等於8,M2和N2被設置為等於8,並且M3和N3被設置為等於4。
c.可替代地,當推導MVstore時,矩形塊形狀MxN用於邊界子塊。對於右側邊界,使用M>N的塊尺寸,而對於底部邊界,使用M<N的塊尺寸。對於右下方邊界,它可以與圖25B所示的右側邊界相同地被推導,或者與圖25C所示的底部邊界相同地被推導。
i.可替代地,如圖25D和圖25E所示,右下方邊界以比右側邊界或底部邊界小的塊尺寸而推導。
d.在一個示例中,從MVstore推導MVmc;可替代地,從MVmc推導MVstore。
3.提出當編碼mvd1,不編碼 ,而使用由 給定的取整操作,其中k(w)是非負整數並且對於不同的PU/CU寬度是不同的,並且o(w)是偏移(例如,等於1<<(k(w)-1)),其中dMVi c[1]、dMVi c[3]表示在第i次迭代中推導的、4-參數仿射模型的右上方控制點的水平和垂直運動向量差。類似的思想可以擴展到6參數仿射模式。
4.提出當精度Prec(即,MV具有1/(2^Prec)精度)
用於在AF_INTER模式中編碼MVD時,在構造仿射MVP列表時使用相同的精度,即,在與相鄰塊相關聯的MV(由MVPred(MVPred X ,MVPred Y )表示相鄰塊的MV並且由PredPrec表示其精度)被用作MV預測值之前,需要首先對其進行修改。
a.在一個示例中,可以調用基於選擇的Prec和與相鄰塊相關聯的MV的精度的縮放。
b.在一個示例中,如果PredPrec>Prec,則MVPred' X =round(MVPred X ,PredPrec-Prec),MVPred' Y =round(MVPred Y ,PredPrec-Prec)。函數round(a,b)可以被定義為:(a+offset)>>b,在一個示例中,offset被設置為(1<<(b-1))。
c.在一個示例中,如果PredPrec>Prec,則MVPred' X =round(MVPred X ,PredPrec-Prec),MVPred' Y =round(MVPred Y ,PredPrec-Prec),其中,round(MV,deltaPrec)=MV>>deltaPrec。
d.在一個示例中,如果PredPrec<Prec,則MVPred' X =MVPred X <<(PredPrec-Prec),MVPred' Y =MVPred Y <<(PredPrec-Prec)。
e.在一個示例中,相鄰仿射編解碼塊的MV在其被用於推導當前塊的MVP之前被取整。
f.可替代地,從沒有取整的相鄰仿射編解碼塊的MV推導當前塊的MVP,然後對MVP進行取整。
g.可替代地,不改變相鄰MV的精度,並且僅將MVD精度與Prec對齊。
5.當有超過1個MVD(諸如4/6-參數仿射)需要被編解碼時,不同的精度可以應用於不同的MVD。
a.在一個示例中,對於4-參數仿射模型,如果從第一MVD(左上方像素的MVD)預測第二MVD(右上方像素的MVD),則用比第一MVD高的精度來編解碼第二MVD。
b.在一個示例中,對於6-參數仿射模型,如果從第一MVD(左上方像素的MVD)預測第二MVD(右上方像素的MVD)和/或第三MVD(左下方像素的MVD),則用比第一MVD高的精度來編解碼第二MVD和/或第三MVD。
6.可以在SPS/序列標頭/VPS/PPS/條帶標頭/圖片標頭/CTU/CU/CTU組/CTU行中信令通知對在AF_INTER模式中使用的不同的MVD精度的使用的指示。
a.信令通知MVD精度可以取決於編解碼模式信息,諸如塊尺寸/塊形狀/條帶類型/仿射參數的數量(4-參數或6-參數)/時域層。
b.可替代地,可以針對某些條件自動禁用該使用,諸如塊包含少於16個樣本。在這種情況下,總是跳過信令通知MVD精度。
圖26是示出可用來實施本公開技術的各個部分的電腦系統或其他控制設備2600的架構的示例的方塊圖。在圖26中,電腦系統2600包括經由互連2625連接的一個或多個處理器2605和儲存器2610。互連2605可以表示通過適當的網橋、適配器或控
制器連接的任何一個或多個單獨的物理總線、點對點連接或兩者。因此,互連2625可以包括例如系統總線、外圍組件互連(Peripheral Component Interconnect,PCI)總線、HyperTransport或工業標準架構(Industry Standard Architecture,ISA)總線、小型電腦系統介面(Small Computer System Interface,SCSI)總線、通用串行總線(Universal Serial Bus,USB)、IIC(I2C)總線、或者電氣和電子工程師協會(Institute of Electrical and Electronics Engineers,IEEE)標準674總線(有時也被稱為“火線”)。
(多個)處理器2605可以包括中央處理單元(Central Processing Unit,CPU)以控制例如主電腦的整體操作。在某些實施例中,(多個)處理器2605通過運行儲存在儲存器2610中的軟體或韌體來實現這一點。(多個)處理器2605可以是或可以包括一個或多個可編程通用或專用微處理器、數位信號處理器(Digital Signal Processor,DSP)、可編程控制器、專用積體電路(Application Specific Integrated Circuit,ASIC)、可編程邏輯器件(Programmable Logic Device,PLD)等、或這樣的設備的組合。
儲存器2610可以是或可以包括電腦系統的主儲存器。儲存器2610表示任何合適形式的隨機存取儲存器(Random Access Memory,RAM)、只讀儲存器(Read-Only Memory,ROM)、閃存等、或這樣的設備的組合。在使用中,除了其他事物之外,儲存器2610可以包含機器指令集,其中該機器指令集在由處理器2605運行時使得處理器2605執行操作以實施本公開技術的實施例。
通過互連2625還連接到(多個)處理器2605的是(可選的)網路適配器2615。網路適配器2615向電腦系統2600提供與諸如儲存客戶端和/或其他儲存服務器的遠程設備通信的能力,並且可以是例如以太網適配器或光纖通道適配器。
圖27示出了可用來實施本公開技術的各個部分的移動設備2700的示例實施例的方塊圖。移動設備2700可以是筆記本電腦、智能電話、平板電腦、攝像機、或能夠處理視頻的其他類型的設備。移動設備2700包括處理器或控制器2701以處理數據,以及與處理器2701通信的儲存器2702以儲存和/或緩衝數據。例如,處理器2701可以包括中央處理單元(CPU)或微控制器單元(Microcontroller Unit,MCU)。在一些實施方式中,處理器2701可以包括現場可編程門陣列(Field-Programmable Gate-Array,FPGA)。在一些實施方式中,移動設備2700包括用於智能電話設備的各種視覺和/或通信數據處理功能的圖形處理單元(Graphics Processing Unit,GPU)、視頻處理單元(Video Processing Unit,VPU)、和/或無線通信單元,或與其通信。例如,儲存器2702可以包括並儲存處理器可運行代碼,其中該代碼在由處理器2701運行時將移動設備2700配置為執行各種操作,例如,諸如接收信息、命令和/或數據,處理信息和數據,以及將經處理的信息/數據發送或提供給諸如執行器或外部顯示器的另一設備。為了支持移動設備2700的各種功能,儲存器2702可以儲存信息和數據,諸如指令、軟體、值、圖像、以及由處理器2701處理或引用的其他數據。
例如,可以使用各種類型的隨機存取儲存器(RAM)設備、只讀儲存器(ROM)設備、快閃記憶體和其他合適的儲存介質來實施儲存器2702的儲存功能。在一些實施方式中,移動設備2700包括輸入/輸出(Input/Output,I/O)單元2703,以將處理器2701和/或儲存器2702介面連接到其他模組、單元或設備。例如,I/O單元2703可以與處理器2701和儲存器2702介面連接,以利用與典型數據通信標準兼容的、例如諸如在雲中的一個或多個電腦與用戶設備之間的各種類型的無線介面。在一些實施方式中,移動設備2700可以經由I/O單元2703使用有線連接與其他設備介面連接。移動設備2700還可以與諸如數據儲存裝置、和/或視覺或音頻顯示設備2704的其他外部介面進行介面連接,以檢索和傳輸可由處理器處理、儲存在儲存器中、或在顯示設備2704或外部設備的輸出單元上展示的數據和信息。例如,顯示設備2704可以顯示基於根據所公開技術的MVP而修改的視頻幀。
圖28是處理視頻的示例方法2800的流程圖。方法2800包括在視頻塊的重構期間使用仿射運動預測方案來生成(2802)運動向量預測候選的列表,使得運動向量預測候選的值在沒有將該值限制到閾值的限幅操作的情況下被計算。例如,與在仿射運動向量的計算期間執行限幅的現有技術不同,方法2800可以使用基於非限幅的計算,如本文件中所描述的。
在一些實施例中,方法2800可以包括使用限幅操作來執行視頻塊的運動補償。限幅操作的示例在章節4.1的示例1中描
述。
圖29是視頻編碼的示例方法2900的流程圖。方法2900包括:使用基於運動的編解碼工具,通過以第一塊尺寸推導(2902)用於運動補償的第一運動信息以及以不同於第一塊尺寸的第二塊尺寸儲存用於視頻圖片的未來部分的運動預測的第二運動信息來處理(2906)視頻圖片的部分。例如,視頻的該部分可以是視頻塊或編解碼單元。處理操作可以包括在將視頻圖片編碼為其位元流表示期間執行的解壓縮或塊重構或壓縮或位元流生成。
在一些實施例中,基於運動的編解碼工具包括仿射運動補償。在一些實施例中,基於運動的編解碼工具包括ATMVP。章節4.1的示例2提供了方法2900的附加實施例示例。
其中k(w)是非負整數並且對於不同的PU/CU寬度是不同的,並且o(w)是偏移(例如,等於1<<(k(w)-1))。在章節4.1的示例3中提供了該方法的實施例的附加示例。
在又一方面,公開了一種視頻處理方法。該方法包括:在從視頻塊的位元流表示生成視頻塊期間,使用與用於在位元流表示中對AF_INTER模式中的運動向量差進行編碼的精度相同的
精度來構造仿射運動向量預測值的列表。在章節4.1的示例4中描述了該方法的附加實施例示例。
在又一方面,所公開的視頻編碼或解碼的方法使用視頻塊的位元流表示,其中在該位元流表示中針對視頻塊對仿射模式中的多於一個運動向量差進行了編解碼,並且該多於一個運動向量差中的至少兩個運動向量差的精度不同。在一些實施方式中,運動向量差中的每一個可以具有其自身的位元精度,其由預定規則關聯或基於在位元流表示中隱式或顯式地指示的決定。在章節4.1的示例5和6中描述了該方法的實施例的附加示例。
在一些實施例中,視頻解碼方法可以使用解碼裝置而實施,其中該解碼裝置在如關於圖26和圖27所描述的硬體平臺上被實施。
圖30是示出可以在其中實施本文公開的各種技術的示例視頻處理系統3000的方塊圖。各種實施方式可以包括系統3000的一些或所有組件。系統3000可以包括用於接收視頻內容的輸入3002。視頻內容可以以例如8或10位元多分量像素值的原始或未壓縮格式而接收,或者可以是壓縮或編碼格式。輸入3002可以表示網路介面、外圍總線介面或儲存介面。網路介面的示例包括諸如以太網、無源光網路(Passive Optical Network,PON)等的有線介面和諸如Wi-Fi或蜂窩介面的無線介面。
系統3000可以包括可以實施本文件中描述的各種編解碼方法的編解碼組件3004。編解碼組件3004可以將視頻的平均位
元率從輸入3002減小到編解碼組件3004的輸出,以產生視頻的位元流。因此,編解碼技術有時被稱為視頻壓縮或視頻轉碼技術。編解碼組件3004的輸出可以儲存,或者經由如組件3006所表示的連接的通信而發送。在輸入3002處接收的視頻的儲存或通信傳送的位元流(或編解碼)表示可以由組件3008用來生成傳送到顯示介面3010的像素值或可顯示視頻。從位元流表示生成用戶可視視頻的過程有時被稱為視頻解壓縮。此外,雖然某些視頻處理操作被稱為“編解碼”操作或工具,但是應該理解,編碼工具或操作在編碼器處使用,並且反轉編碼結果的對應的解碼工具或操作將由解碼器執行。
外圍總線介面或顯示器介面的示例可以包括通用串行總線(USB)或高清晰度多媒體介面(High Definition Multimedia Interface,HDMI)或Displayport等。儲存介面的示例包括SATA(Serial Advanced Technology Attachment,串行高級技術附件)、PCI、IDE介面等。本文件中描述的技術可以體現在各種電子設備中,諸如移動電話、膝上型電腦、智能電話、或能夠執行數位數據處理和/或視頻顯示的其他設備。
圖31是視頻處理的示例方法3100的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例1。方法3100包括:對於當前視頻單元的重構,生成(3102)仿射運動向量預測候選的列表,其中該列表中的每個候選在不使用限幅操作的情況下被計算,其中限幅操作將候選運動向量的幅度限制到一範圍。
方法3100還包括:使用仿射運動向量預測候選的列表來執行(3104)當前視頻單元的重構。
圖32是視頻處理的示例方法的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例4。方法3200包括:在從視頻單元的位元流生成視頻單元期間,使用與用於在位元流中對仿射視頻編解碼模式中的運動向量差進行編碼的精度相同的精度來構造(3202)仿射運動向量預測值的列表。方法3200還包括:使用仿射運動向量預測候選的列表來執行(3204)視頻單元的生成。
圖33是視頻處理的示例方法的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例6。方法3300包括:對於視頻塊的位元流和被仿射編解碼的視頻塊之間的轉換,確定(3302)對於該轉換啟用了對具有不同精度的多個運動向量差(MVD)的使用。方法3300還包括:基於該確定來執行(3304)該轉換。
圖34是視頻處理的示例方法的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例2。方法3400包括:將基於運動的子塊編解碼工具應用(3402)於當前視頻單元,其中該工具至少基於以第一塊尺寸推導用於運動補償的第一運動信息和以不同於第一塊尺寸的第二塊尺寸推導第二運動信息。方法3400還包括:儲存(3404)用於未來視頻單元的運動預測的第二運動信息。
圖35是視頻處理的示例方法的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例3。方法3500包括:使用視頻單元的位元流來重構(3502)視頻單元,其中位元流包括使用以下公式對視頻單元的運動向量差信息進行取整:
o(w))≫k(w)),其中dMVi c[1]、dMVi c[3]表示在第i次迭代中推導的、4-參數仿射模型中使用的右上方控制點的水平和垂直運動向量差,其中>>是位移操作,w是視頻單元的寬度,k(w)是非負整數,並且o(w)是偏移。
圖36是視頻處理的示例方法的流程圖。該流程圖的步驟一般針對本專利文件的章節4.1中的示例5。方法3600包括:使用(3602)與仿射視頻編解碼模式相關聯的視頻單元的位元流,該仿射視頻編解碼模式包括使用以不同精度編解碼的多個運動向量差(MVD),使得第一MVD具有第一精度並且第二MVD具有與第一MVD不同的第二精度。方法3600還包括:使用位元流來構造(3604)視頻單元。
現在以基於條款的格式描述所公開技術的一些實施例。
1.一種視頻處理的方法,包括:對於當前視頻單元的重構,生成仿射運動向量預測候選的列表,其中該列表中的每個候選在不使用限幅操作的情況下被計算,其中限幅操作將候選運動向量的幅度限制到一範圍;以及使用仿射運動向量預測候選的列
表來執行當前視頻單元的重構。
2.如條款1所述的方法,其中,範圍由最小值和/或最大值定義。
3.如條款1所述的方法,進一步包括:將限幅操作應用於用於執行當前視頻單元的運動補償的運動向量。
4.如條款1所述的方法,其中,仿射運動向量預測候選與4-參數或6-參數仿射模型相關聯。
5.一種視頻處理方法,包括:在從視頻單元的位元流生成視頻單元期間,使用與用於在位元流中對仿射視頻編解碼模式中的運動向量差進行編碼的精度相同的精度來構造仿射運動向量預測值的列表;以及使用仿射運動向量預測候選的列表來執行視頻單元的生成。
6.如條款5所述的方法,進一步包括:在用作仿射運動向量預測值的列表中的運動向量預測值之前,修改相鄰視頻單元的運動向量的精度。
7.如條款6所述的方法,其中,Prec表示用於對仿射視頻編解碼模式中的運動向量差進行編碼的精度,其中PredPrec表示相鄰視頻單元的運動向量預測值的精度,並且其中PredPrec在生成仿射運動向量預測值的列表之前被修改。
8.如條款7所述的方法,其中,編碼的運動向量差具有
表達為1/(2^Prec)的精度。
9.如條款7所述的方法,其中,相鄰視頻單元的運動向量預測值具有表達為1/(2^PredPrec)的精度。
10.如條款7所述的方法,進一步包括:基於Prec和PredPrec的值,對相鄰視頻單元的運動向量進行縮放。
11.如條款7所述的方法,其中,如果PredPrec>Prec,則相鄰視頻單元的運動向量預測值被表示為MVPredX、MVPredY,然後相鄰視頻單元的經修改的運動向量預測值MVPred'X、MVPred'y被計算為:MVPred'X=round(MVPredX,PredPrec-Prec),MVPred'Y=round(MVPredY,PredPrec-Prec),其中round(a,b)被定義為(a+offset)>>b,其中>>是位移操作,並且offset是整數。
12.如條款11所述的方法,其中,offset等於(1<<(b-1))。
13.如條款7所述的方法,其中,如果PredPrec>Prec,則相鄰視頻單元的運動向量預測值被表示為MVPredX、MVPredY,然後相鄰視頻單元的經修改的運動向量預測值MVPred'X、MVPred'y被計算為:MVPred'X=round(MVPredX,PredPrec-Prec),MVPred'Y=round(MVPredY,PredPrec-Prec),
其中round(MV,deltaPrec)=MV>>deltaPrec,其中>>是位移操作。
14.如條款7所述的方法,其中,如果PredPrec<Prec,則相鄰視頻單元的運動向量預測值被表示為MVPredX、MVPredY,然後相鄰視頻單元的經修改的運動向量預測值MVPred'X、MVPred'y被計算為:MVPred'X=MVPredX<<(PredPrec-Prec),MVPred'Y=MVPredY<<(PredPrec-Prec)。
15.如條款6所述的方法,其中,修改精度包括首先以全精度推導視頻單元的運動向量預測值,然後對運動向量預測值進行取整。
16.如條款5所述的方法,進一步包括:在不改變相鄰視頻單元的運動向量的精度的情況下,使用相鄰視頻單元的運動向量作為運動向量預測值;以及將仿射視頻編解碼模式中的運動向量差的精度設置為在視頻單元的位元流中選擇性地信令通知的精度。
17.一種視頻處理的方法,包括:對於視頻塊的位元流和被仿射編碼的視頻塊之間的轉換,確定對該轉換啟用了對具有不同精度的多個運動向量差(MVD)的使用;以及基於該確定來執行該轉換。
18.如條款17所述的方法,其中,對多個MVD的不同
精度的使用的指示是至少基於當滿足一個或多個條件時在視頻塊的位元流中選擇性地信令通知的。
19.如申請專利範圍17-18中任一項所述的方法,其中,該使用的指示是在以下中的一個或多個中隱式或顯式地信令通知的:序列參數集(SPS)、序列標頭、視頻參數集(VPS)、圖片參數集(PSP)、條帶標頭、圖片標頭、編解碼樹單元(CTU)、編碼單元(CU)、CTU列組或CU列組。
20.如申請專利範圍17-19中任一項所述的方法,其中,一個或多個條件與以下中的至少一個相關:視頻塊的尺寸、視頻塊的形狀、與視頻塊相關聯的編解碼模式、與視頻塊相關聯的仿射參數的數量、與視頻塊相關聯的條帶類型、或與視頻塊相關聯的時域層的數量。
21.如條款18所述的方法,其中,當不滿足一個或多個條件時,該使用的指示被選擇性地禁用。
22.如條款21所述的方法,其中,當視頻單元的尺寸小於樣本的閾值數量時,該使用的指示被選擇性地禁用。
23.如條款22所述的方法,其中,樣本的閾值數量是16。
24.一種視頻處理的方法,包括:將基於運動的子塊編解碼工具應用於當前視頻單元,其中該工具至少基於以第一塊尺寸推導用於運動補償的第一運動信息和以不同於第一塊尺寸的第二塊尺寸推導第二運動信息;以及
儲存用於未來視頻單元的運動預測的第二運動信息。
25.如條款24所述的方法,其中,基於運動的子塊編解碼工具是仿射模式運動補償。
26.如條款24所述的方法,其中,基於運動的子塊編解碼工具是可選時域運動向量預測模式(ATMVP)。
27.如申請專利範圍24至26中任一項所述的方法,其中,第一運動信息以M1xN1塊尺寸而推導,並且第二運動信息以M2xN2塊尺寸而推導,其中M1、M2、N1和N2是正整數,並且其中M1不等於M2且N1不等於N2。
28.如申請專利範圍24至26中任一項所述的方法,其中,M1和N1被設置為等於8,並且M2和N2被設置為等於4。
29.如申請專利範圍24至26中任一項所述的方法,其中,處理當前視頻單元包括處理當前視頻單元的子塊,其中當前視頻單元包括第一類型的子塊和/或第二類型的子塊,第一類型的子塊位於當前視頻單元的、與當前視頻單元沒有共同邊界的最內(innermost)區域,並且第二類型的子塊與當前視頻單元共享共同的邊界。
30.如條款29所述的方法,其中,第一運動信息以M1xN1塊尺寸而推導,並且第二運動信息基於該處理是關於第一類型的子塊還是第二類型的子塊分別以M2xN2塊尺寸或M3xN3塊尺寸而推導,其中M1、M2、M3、N1、N2和N3是正整數。
31.如條款30所述的方法,其中,當前視頻單元是當前
視頻塊,第一類型的子塊是當前視頻塊的內子塊,並且第二類型的子塊是當前視頻塊的邊界子塊。
32.如條款31所述的方法,其中,M1和N1被設置為等於8,M2和N2被設置為等於8,並且M3和N3被設置為等於4。
33.如條款30-32中任一項所述的方法,其中,對於第二運動信息的推導,矩形塊形狀MxN被用於第二類型的子塊。
34.如條款33所述的方法,其中,對於右側邊界,M>N的塊尺寸被使用,並且對於底部邊界,M<N的塊尺寸被使用。
35.如條款34所述的方法,其中,底部邊界包括右下方邊界或左下方邊界,並且其中,對於右下方邊界,M>N的塊尺寸被使用,並且對於左下方邊界,M<N的塊尺寸被使用。
36.如條款34所述的方法,其中,底部邊界包括右下方邊界,並且其中,對於右下方邊界,使用的塊尺寸小於在右側邊界處使用的塊尺寸。
37.如條款34所述的方法,其中,底部邊界包括右下方邊界,並且其中,對於右下方邊界,使用的塊尺寸小於在底部邊界處使用的塊尺寸。
38.如條款24至37中任一項所述的方法,其中,未來視頻單元的第一運動信息是從當前視頻單元的第二運動信息推導的。
39.如條款24至37中任一項所述的方法,其中,第二
運動信息是從第一運動信息推導的。
40.一種視頻處理方法,包括:使用視頻單元的位元流來重構視頻單元,其中位元流包括使用以下公式對視頻單元的運動向量差信息進行取整:
o(w))≫k(w)),其中dMVi c[1]、dMVi c[3]表示在第i次迭代中推導的、4-參數仿射模型中使用的右上方控制點的水平和垂直運動向量差,其中>>是位移操作,w是視頻單元的寬度,k(w)是非負整數,並且o(w)是偏移。
41.如條款40所述的方法,其中,o(w)被表達為o(w)=(1<<(k(w)-1))。
42.如條款40至41中任一項所述的方法,其中,k(w)是w的非遞減函數。
43.如條款40所述的方法,其中,該重構包括使用針對視頻單元的第一寬度的、k(w)的第一值,以及針對視頻單元的不同於第一寬度的第二寬度的、k(w)的第二值。
45.一種視頻處理的方法,包括:使用與仿射視頻編解碼模式相關聯的視頻單元的位元流,該仿射視頻編解碼模式包括使用以不同精度編碼的多個運動
向量差(MVD),使得第一MVD具有第一精度並且第二MVD具有與第一MVD不同的第二精度;以及使用位元流來構造視頻單元。
46.如條款45所述的方法,其中,4-參數仿射模型被用在仿射視頻編解碼模式中,進一步包括:如果第二MVD是從第一MVD預測的,那麼第二精度大於第一精度。
47.如條款46所述的方法,其中,第一MVD是視頻單元中的左上方像素的MVD,並且第二MVD是視頻單元中的右上方像素的MVD。
48.如條款45所述的方法,其中,6-參數仿射模型被用在仿射視頻編解碼模式中,並且其中第三MVD具有第三精度,進一步包括:如果第二MVD和/或第三MVD是從第一MVD預測的,那麼第二精度和/或第三精度大於第一精度。
49.如條款48所述的方法,其中,第一MVD是視頻單元中的左上方像素的MVD,第二MVD是視頻單元中的右上方像素的MVD,並且第三MVD是視頻單元中的左下方像素的MVD。
50.如條款45-49中任一項所述的方法,進一步包括:基於一個或多個條件,選擇性地啟用或禁用在視頻單元的位元流中信令通知對多個MVD的不同精度的使用的指示。
51.如條款50所述的方法,其中,第一精度和/或第二
精度是在視頻單元的位元流中信令通知的。
52.如條款50-51中任一項所述的方法,其中,該使用的指示是在以下中的一個或多個中隱式或顯式地信令通知的:序列參數集(SPS)、序列標頭、視頻參數集(VPS)、圖片參數集(PSP)、條帶標頭、圖片標頭、編解碼樹單元(CTU)、編解碼單元(CU)、CTU列組或CU列組。
53.如條款50-52中任一項所述的方法,其中,一個或多個條件與以下中的至少一個相關:視頻單元的尺寸、視頻單元的形狀、與視頻單元相關聯的編解碼模式、與視頻單元相關聯的仿射參數的數量、與視頻單元相關聯的條帶類型、或與視頻單元相關聯的時域層的數量。
54.如條款50所述的方法,其中,當不滿足一個或多個條件時,該使用的指示被選擇性地禁用。
55.如條款54所述的方法,其中,當視頻單元的尺寸小於樣本的閾值數量時,該使用的指示被選擇性地禁用。
56.如條款55所述的方法,其中,樣本的閾值數量是16。
57.一種視頻解碼裝置,包括:處理器,被配置為實施如申請專利範圍1至56中的一項或多項所述的方法。
58.一種視頻編碼裝置,包括:處理器,被配置為實施如申請專利範圍1至56中的一項或多項所述的方法。
59.一種電腦程式產品,其上儲存有電腦代碼,該代碼
在由處理器運行時使得處理器實施如申請專利範圍1至56中任一項所述的方法。
60.一種本文件中描述的方法、裝置或系統。
參考上述解決方案,在一些實施例中,視頻單元是包括一個或多個分量(例如,亮度和/或彩度)的視頻塊。在一些實施例中,視頻單元對應於編解碼單元(CU)。在一些實施例中,視頻單元可以是預測單元(PU)或變換單元(TU)。
本文件中描述的所公開的和其他實施例、模組和功能操作可以在數位電子電路中實施,或者在電腦軟體、韌體或硬體(包括本文件中公開的結構及其結構等同物)中實施,或者在它們中的一個或多個的組合中實施。所公開的和其他實施例可以實施為一個或多個電腦程式產品,即,在電腦可讀介質上編碼的電腦程式指令的一個或多個模組,該電腦程式指令用於由數據處理裝置運行或控制數據處理裝置的操作。電腦可讀介質可以是機器可讀儲存設備、機器可讀儲存基板、儲存器設備、影響機器可讀傳播信號的物質組合、或者它們中的一個或多個的組合。術語“數據處理裝置”囊括用於處理數據的所有裝置、設備和機器,包括例如可編程處理器、電腦或者多個處理器或電腦。除了硬體之外,裝置還可以包括為所討論的電腦程式創建運行環境的代碼,例如,構成處理器韌體、協議棧、數據庫管理系統、操作系統、或者它們中一個或多個的組合的代碼。傳播信號是被生成以對信息進行編碼以用於發送到合適的接收器裝置的人工生成的信號,例如機
器生成的電信號、光學信號或電磁信號。
電腦程式(也已知為程式、軟體、軟體應用、腳本或代碼)可以以任何形式的編程語言(包括編譯或解釋語言)編寫,並且其可以以任何形式部署,包括作為獨立程式或作為適合在計算環境中使用的模組、組件、子例程或其他單元。電腦程式不一定對應於文件系統中的文件。程式可以儲存在保存其他程式或數據(例如,儲存在標記語言文件中的一個或多個腳本)的文件的一部分中,儲存在專用於所討論的程式的單個文件中,或儲存在多個協調文件中(例如,儲存一個或多個模組、子程式或代碼部分的文件)。電腦程式可以被部署以在一個電腦上或在位於一個站點上或跨多個站點分佈並通過通信網路互連的多個電腦上運行。
本文件中描述的過程和邏輯流程可以由運行一個或多個電腦程式的一個或多個可編程處理器執行,以通過對輸入數據進行操作並生成輸出來執行功能。過程和邏輯流程也可以由專用邏輯電路執行,並且裝置也可以實施為專用邏輯電路,例如,FPGA(現場可編程門陣列)或ASIC(專用積體電路)。
適合於運行電腦程式的處理器包括例如通用和專用微處理器、以及任何類型的數位電腦的任何一個或多個處理器。通常,處理器將從只讀儲存器或隨機存取儲存器或兩者接收指令和數據。電腦的基本元件是用於執行指令的處理器和用於儲存指令和數據的一個或多個儲存器設備。通常,電腦還將包括用於儲存數據的一個或多個大容量儲存設備(例如,磁盤、磁光盤或光盤),
或可操作地耦合以從該一個或多個大容量儲存設備接收數據或向該一個或多個大容量儲存設備傳遞數據、或者從其接收數據並向其傳遞數據。然而,電腦不需要這樣的設備。適用於儲存電腦程式指令和數據的電腦可讀介質包括所有形式的非揮發性儲存器、介質和儲存器設備,包括例如半導體儲存器設備,例如EPROM、EEPROM和快閃記憶體;磁盤,例如內部硬盤或可換式磁盤;磁光盤;以及CD ROM和DVD-ROM磁盤。處理器和儲存器可以由專用邏輯電路補充或併入專用邏輯電路中。
雖然本專利文件包含許多細節,但這些細節不應被解釋為對任何發明或可能要求保護的範圍的限制,而是作為特定於特定發明的特定實施例的特徵的描述。在本專利文件中在單獨的實施例的上下文中描述的某些特徵也可以在單個實施例中組合實施。相反,在單個實施例的上下文中描述的各種特徵也可以分別在多個實施例中或以任何合適的子組合實施。此外,儘管特徵可以在上面描述為以某些組合起作用並且甚至最初如此要求保護,但是在一些情況下可以從組合排除來自所要求保護的組合的一個或多個特徵,並且所要求保護的組合可以針對子組合或子組合的變化。
類似地,雖然在附圖中以特定順序描繪了操作,但是這不應該被理解為要求以所示的特定順序或以先後順序執行這樣的操作或者執行所有示出的操作以實現期望的結果。此外,在本專利文件中描述的實施例中的各種系統組件的分離不應被理解為在
所有實施例中都需要這樣的分離。
僅描述了一些實施方式和示例,並且可以基於本專利文件中描述和示出的內容來進行其他實施方式、增強和變化。
2900:方法
2902、2904、2906:步驟
Claims (18)
- 一種視頻處理方法,包括:在執行仿射視頻編解碼模式中的視頻單元和位元流之間的轉換期間,使用與針對所述視頻單元信令通知的控制點運動向量差的精度相同的精度來構造控制點運動向量預測值的列表,其中,在用作所述控制點運動向量預測值的列表中的運動向量預測值之前,將與相鄰視頻單元相關的運動向量的精度修改為用於所述信令通知的控制點運動向量差的精度;以及使用所述控制點運動向量預測值的列表來執行所述轉換,其中,所述用於所述信令通知的控制點運動向量差的精度表達為1/(2^Prec),以及與所述相鄰視頻單元相關的運動向量的精度被表達為1/(2^PredPrec)。
- 如申請專利範圍第1項所述的方法,其中,與所述相鄰視頻單元相關的所述運動向量的精度是通過修改PredPrec來修改的。
- 如申請專利範圍第1項所述的方法,其中,修改與所述相鄰視頻單元相關的所述運動向量的精度包括:基於Prec和PredPrec中的至少一個來縮放與所述相鄰視頻單元相關的所述運動向量。
- 如申請專利範圍第3項所述的方法,其中,與所述相鄰視頻單元相關的所述運動向量是:基於Prec和PredPrec之間的差來縮放的。
- 如申請專利範圍第1項所述的方法,其中,如果PredPrec>Prec,與所述相鄰視頻單元相關的運動向量預測值被表示為MVPredX、MVPredY,則所述控制點運動預測值的列表的運動向量預測值MVPred'X、MVPred'Y被計算為:MVPred'X=round(MVPredX,PredPrec-Prec),MVPred'Y=round(MVPredY,PredPrec-Prec),其中round(a,b)被定義為(a+offset)>>b,其中>>是位移操作,並且offset是整數。
- 如申請專利範圍第5項所述的方法,其中,offset等於(1<<(b-1))。
- 如申請專利範圍第1項所述的方法,其中,如果PredPrec>Prec,與所述相鄰視頻單元相關的運動向量預測值被表示為MVPredX、MVPredY,則所述控制點運動預測值的列表的運動向量預測值MVPred'X、MVPred'Y被計算為:MVPred'X=round(MVPredX,PredPrec-Prec),MVPred'Y=round(MVPredY,PredPrec-Prec),其中round(MV,deltaPrec)=MV>>deltaPrec,其中>>是位移操作。
- 如申請專利範圍第1項所述的方法,其中,如果PredPrec<Prec,則與相鄰視頻單元相關的運動向量預測值被表示為MVPredX、MVPredY,然後所述控制點運動預測值的列表的運動向量預測值MVPred'X、MVPred'Y被計算為: MVPred'X=MVPredX<<(PredPrec-Prec),MVPred'Y=MVPredY<<(PredPrec-Prec)。
- 如申請專利範圍第1項所述的方法,其中,對多個控制點運動向量差的不同精度的使用的指示是至少基於當滿足一個或多個條件時在所述視頻單元的編解碼表示中選擇性地信令通知的。
- 如申請專利範圍第9項所述的方法,其中,所述使用的指示是在以下中的一個或多個中隱式或顯式地信令通知的:序列參數集(SPS)、序列報頭、視頻參數集(VPS)、圖片參數集(PSP)、條帶報頭、圖片報頭、編解碼樹單元(CTU)、編解碼單元(CU)、CTU列組或CU列組。
- 如申請專利範圍第9項所述的方法,其中,所述一個或多個條件與以下中的至少一個相關:所述視頻單元的尺寸、所述視頻單元的形狀、與所述視頻單元相關聯的編解碼模式、與所述視頻單元相關聯的仿射參數的數量、與所述視頻單元相關聯的條帶類型、或與所述視頻單元相關聯的時域層的數量。
- 如申請專利範圍第1項所述的方法,其中,所述轉換包括:將所述視頻單元編碼為位元流。
- 如申請專利範圍第1項所述的方法,其中,所述轉換包括:從位元流解碼所述視頻單元。
- 一種用於編解碼視頻數據的裝置,包括處理器和其上具有指令的非暫時性存儲器,其中所述指令在由所述處理器執行時使得所述處理器: 在執行仿射視頻編解碼模式中的視頻單元和位元流之間的轉換期間,使用與針對所述視頻單元信令通知的控制點運動向量差的精度相同的精度來構造控制點運動向量預測值的列表,其中,在用作所述控制點運動向量預測值的列表中的運動向量預測值之前,將與相鄰視頻單元相關的運動向量的精度修改為用於所述信令通知的控制點運動向量差的精度;以及使用所述控制點運動向量預測值的列表來執行所述轉換,其中,所述用於所述信令通知的控制點運動向量差的精度表達為1/(2^Prec),以及與所述相鄰視頻單元相關的運動向量的精度被表達為1/(2^PredPrec)。
- 如申請專利範圍第14項所述的裝置,其中,所述轉換包括:將所述視頻單元編碼為位元流。
- 如申請專利範圍第14項所述的裝置,其中,所述轉換包括:從位元流解碼所述視頻單元。
- 一種存儲指令的非暫時性計算機可讀存儲介質,所述指令使得處理器:在執行仿射視頻編解碼模式中的視頻單元和位元流之間的轉換期間,使用與針對所述視頻單元信令通知的控制點運動向量差的精度相同的精度來構造控制點運動向量預測值的列表,其中,在用作所述控制點運動向量預測值的列表中的運動向量預測值之前,將與相鄰視頻單元相關的運動向量的精度修改為用於所述信令通知的控制點運動向量差的精度;以及 使用所述控制點運動向量預測值的列表來執行所述轉換,其中,所述用於所述信令通知的控制點運動向量差的精度表達為1/(2^Prec),以及與所述相鄰視頻單元相關的運動向量的精度被表達為1/(2^PredPrec)。
- 一種用於存儲視頻的位元流的方法,包括:針對仿射視頻編解碼模式中的視頻單元,使用與針對所述視頻單元信令通知的控制點運動向量差的精度相同的精度來構造控制點運動向量預測值的列表,其中,在用作所述控制點運動向量預測值的列表中的運動向量預測值之前,將與相鄰視頻單元相關的運動向量的精度修改為用於所述信令通知的控制點運動向量差的精度;使用所述控制點運動向量預測值的列表從所述視頻單元生成所述位元流;以及將所述位元流存儲在非暫時性計算機可讀記錄介質中,其中,所述用於所述信令通知的控制點運動向量差的精度表達為1/(2^Prec),以及與所述相鄰視頻單元相關的運動向量的精度被表達為1/(2^PredPrec)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018104723 | 2018-09-08 | ||
WOPCT/CN2018/104723 | 2018-09-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202025750A TW202025750A (zh) | 2020-07-01 |
TWI846728B true TWI846728B (zh) | 2024-07-01 |
Family
ID=
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 |
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 |
Non-Patent Citations (1)
Title |
---|
網路文獻 Yu Han, Han Huang, Yan, Zhang, Chao-Hsiung Hung, Chun-Chi Chen, Wei-Jung Chien, Marta Karczewicz, CE4.1.3: Affine motion compensation prediction, Joint Video Exploration Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-K0337, 11th Meeting: Ljubljana, SI, 10–18 July 2018, http://phenix.int-evry.fr/jvet/, |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI815974B (zh) | 具有自適應運動矢量分辨率的運動矢量的修改 | |
CN111357294B (zh) | 基于子块的运动信息列表的简化熵编解码 | |
JP7212150B2 (ja) | 適応動きベクトル解像度によるアフィンモードへの構文の使用 | |
TWI727338B (zh) | 用信號通知的運動向量精度 | |
US20210067783A1 (en) | Clipping of updated mv or derived mv | |
US20210227211A1 (en) | Temporal gradient calculations in bio | |
CN110891175B (zh) | 视频编解码和解码中的仿射模式 | |
CN113906738A (zh) | 仿射模式的自适应运动矢量差分辨率 | |
CN113796084B (zh) | 运动矢量和预测样点细化 | |
CN111010570A (zh) | 基于仿射运动信息的尺寸限制 | |
TWI846728B (zh) | 不同視頻塊尺寸的仿射模式計算 | |
TWI846727B (zh) | 兩步幀間預測 |