TWI840401B - 基於多運動模型的跳過和直接模式編碼的視頻塊中的修剪 - Google Patents
基於多運動模型的跳過和直接模式編碼的視頻塊中的修剪 Download PDFInfo
- Publication number
- TWI840401B TWI840401B TW108130511A TW108130511A TWI840401B TW I840401 B TWI840401 B TW I840401B TW 108130511 A TW108130511 A TW 108130511A TW 108130511 A TW108130511 A TW 108130511A TW I840401 B TWI840401 B TW I840401B
- Authority
- TW
- Taiwan
- Prior art keywords
- candidate
- motion
- candidates
- video
- motion model
- Prior art date
Links
- 238000013138 pruning Methods 0.000 title claims abstract description 27
- 238000000034 method Methods 0.000 claims abstract description 106
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000006243 chemical reaction Methods 0.000 claims abstract description 14
- 239000013598 vector Substances 0.000 claims description 80
- 230000008569 process Effects 0.000 claims description 36
- 238000010276 construction Methods 0.000 claims description 13
- 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 description 2
- 230000002123 temporal effect Effects 0.000 description 35
- 238000009795 derivation Methods 0.000 description 29
- 241000023320 Luma <angiosperm> Species 0.000 description 23
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 23
- 230000002457 bidirectional effect Effects 0.000 description 19
- 238000013461 design Methods 0.000 description 15
- 238000005192 partition Methods 0.000 description 12
- 238000000638 solvent extraction Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 8
- 230000011664 signaling Effects 0.000 description 8
- 230000015654 memory Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 241000342334 Human metapneumovirus Species 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Abstract
描述了用於在基於多運動模型的跳過和直接模式編碼的視頻塊中應用修剪的方法、系統和裝置。視頻處理的示例性方法包含,對視頻塊的候選列表,在從解碼順序中的先前編碼塊推導的第一組候選中的候選與第二組候選中的候選之間應用修剪操作,以及基於應用修剪操作之後的候選列表進行視頻塊與視頻塊的位元流表示之間的轉換。
Description
本文件涉及視頻編碼技術。
[相關申請的交叉引用]
根據適用的專利法和/或根據巴黎公約的規則,本申請及時要求2018年8月26日作為國際專利申請No. PCT/CN2018/102370提交的在先中國專利申請的優先權和權益,其在提交後隨後被放棄。出於所有目的,國際專利申請No. PCT/CN2018/102370的全部公開通過引用整合為本申請公開的一部分。
數位視頻考慮互聯網和其他數位通信網絡上的最大頻寬使用。隨著連接的能夠接收和顯示視頻的用戶裝置的數目增加,期望對於數位視頻使用的頻寬要求將繼續增長。
本公開技術可以由視頻解碼器或編碼器實施例使用,其中將修剪應用於基於多運動模型的跳過和直接模式編碼的視頻塊中。
在一個示例性方面中,公開了一種視頻處理的方法。該方法包含:對視頻塊的候選列表,應用從解碼順序中先前編碼塊推導的第一組候選中的候選與第二組候選中的候選之間的修剪操作;以及基於應用所述修剪操作之後的所述候選列表,進行所述視頻塊與所述視頻塊的位元流表示之間的轉換。
在另一示例性方面中,公開了一種視頻處理的方法。該方法包含,對視頻塊的候選列表,應用包括來自空域或時域非相鄰塊的候選的第一組候選與包括從基於多運動模型的跳過模式或直接模式設計推導的候選的第二組候選之間的修剪操作;以及,基於應用修剪操作之後的候選列表,進行視頻塊與視頻塊的位元流表示之間的轉換。
在又一示例性方面中,公開了一種視頻處理的方法。該方法包含,制止將修剪操作應用於視頻塊的候選列表,該候選列表包括從基於多運動模型的跳過模式或直接模式設計推導的多個候選,並且所述多個候選中的每一個是基於運動模型匹配的搜索或默認運動向量(MV)建構過程;以及基於候選列表進行視頻塊與視頻塊的位元流表示之間的轉換。
在一些實施例中,該方法可以優選地包含第二組候選,第二組候選包括來自空域或時域非相鄰塊的候選。
在一些實施例中,所述方法可以優選地包括修剪操作,修剪操作將第一候選***到候選列表中,並從候選列表中排除第二候選。
在一些實施例中,該方法可以優選地包括,第一候選與第二候選相同。
在一些實施例中,該方法可以優選地包含,所述第一候選與所述第二候選之間的運動向量差小於閾值。
在一些實施例中,該方法可以優選地包含,所述第二組候選包括從基於多運動模型的跳過模式或直接模式設計推導的候選。
在一些實施例中,該方法可以優選地包含,所述第二組候選中的候選是基於運動模型匹配的搜索。
在一些實施例中,該方法可以優選地包含,第二組候選中的候選是基於默認運動向量(MV)建構過程。
在一些實施例中,該方法可以優選地包含,所述第一組候選中的候選是表中的基於歷史的運動向量預測(HMVP)候選。
在一些實施例中,該方法可以優選地包含,所述第二組候選中的候選是從運動模型匹配的搜索中的空域或時域鄰近塊推導的,並且其中所述第一組候選中的候選是基於歷史的運動向量預測(HMVP)候選。
在一些實施例中,該方法可以優選地包含,所述第二組候選中的候選是從運動模型匹配的搜索、人工搜索或默認運動向量建構過程中的空域或時域鄰近塊推導的,並且所述第一組候選中的候選是基於歷史的運動向量預測(HMVP)候選。
在一些實施例中,該方法可以優選地包含,用修剪操作,以從空域或時域鄰近塊推導的運動候選和基於歷史的運動向量預測(HMVP)候選建構所述候選列表。
在一些實施例中,該方法可以優選地包含,從在所述視頻塊之前解碼的先前解碼的視頻塊推導所述HMVP候選。
在一些實施例中,該方法可以優選地包含,進行所述轉換包括從所述視頻塊生成所述位元流表示。
在一些實施例中,該方法可以優選地包含,進行所述轉換包括從所述位元流表示生成所述視頻塊。
在一些實施例中,該方法可以優選地包含,所述第一組候選中的候選與運動信息相關聯,所述運動信息包括預測方向、參考圖片索引、運動向量值、強度補償標誌、仿射標誌、運動向量差精度或運動向量差值中的至少一個。
在一些實施例中,該方法可以優選地包含基於進行所述轉換更新所述第一組候選的步驟。
在一些實施例中,該方法可以優選地包含,更新所述第一組候選包括,在進行所述轉換之後,基於所述視頻塊的運動信息更新所述第一組候選。
在一些實施例中,該方法可以優選地包含以下步驟:在更新所述第一組候選之後,基於所述第一組候選,進行視頻的隨後的視頻塊與所述視頻的位元流表示之間的轉換。
在一些實施例中,該方法可以優選地包含在與相同運動模型相關聯的候選之間應用修剪操作。
在又一示例性方面中,上述方法可以由包括處理器的視頻解碼器裝置實現。
在又一示例性方面中,上述方法可以由包括處理器的視頻編碼器裝置實現。
在又一示例性方面中,這些方法可以體現為處理器可執行指令的形式,並儲存在電腦可讀程序介質中。
本文件中進一步描述了這些和其他的方面。
本文件提供各種技術,其可以由視頻位元流的解碼器使用,以改善解壓縮的或解碼的數位視頻的質量。此外,視頻編碼器還可以在處理編碼期間實現這些技術,以便重構用於進一步編碼的解碼的幀。
本文件中使用了章節標題以便於理解,並且不將實施例和技術限制到對應的章節。因此,來自一個章節的實施例可以與來自其他章節的實施例組合。
1、概述
本專利文件涉及視頻編碼技術。具體地,其涉及圖像/視頻編碼中的運動向量編碼。其可以應用於現有視頻編碼標準,比如HEVC,或待定的標準(多功能視頻編碼)、第三代中國音頻和視頻編碼標準(AVS3)。其還可以應用於未來視頻編碼標準或視頻編解碼器。
2、背景
視頻編碼標準已經主要通過熟知的ITU-T和ISO/IEC標準的發展而演化。ITU-T產生H.261和H.263,ISO/IEC產生MPEG-1和MPEG-4 Visual,並且兩個組織聯合產生了H.262/MPEG-2 Video和H.264/MPEG-4 Advanced Video Coding(AVC)和H.265/HEVC標準。自從H.262,視頻編碼標準是基於混合視頻編碼結構,其中採用時域預測加變換編碼。
分割結構
H.264/AVC中的分割樹結構
之前的標準中的編碼層的核心是宏塊,含有亮度樣本的16×16塊,並且,在4:2:0 顏色取樣的通常情況下,兩個對應的彩度樣本的8×8塊。
幀內編碼塊使用空域預測來利用像素之間的空域相關性。定義了兩種分割:16x16和4x4。
幀間編碼塊通過估計圖片之間的運動使用時域預測,而非空域預測。可以對於16x16宏塊或其任意子宏塊分割獨立地估計運動,子宏塊分割為:16x8、8x16、8x8、8x4、4x8、4x4(見圖2)。每個子宏塊分割僅允許一個運動向量(MV)。
圖1是H.264/Advanced Video Coding(AVC)中的MB分割的圖示。
2.1.2 HEVC中的分割樹結構
在HEVC中,通過使用指代為編碼樹的四叉樹結構將CTU劃分為CU,以適應於各種局部特性。在CU級進行使用幀間圖片(時域)還是幀內圖片(空域)預測來編碼圖片區域的決定。每個CU可以根據PU劃分類型進一步劃分為一個、兩個或四個PU。在一個PU內,應用相同預測過程,並且在PU的基礎上將相關信息傳輸到解碼器。在通過基於PU劃分類型應用預測過程獲取殘差塊之後,CU可以根據相似於用於CU的編碼樹的另一四叉樹結構被分割為變換單元(TU)。HEVC結構的一個關鍵特徵是,其具有多個分割概念,包含CU、PU,以及TU。
以下,使用HEVC的混合視頻編碼中涉及的各種特徵被如下強調。
1)編碼樹單元和編碼樹塊(CTB)結構:HEVC中的類同的結構是編碼樹單元(CTU),其具有由編碼器選擇的大小,並且可以大於傳統宏塊。CTU由亮度CTB和對應的彩度CTB以及語法元素構成。亮度CTB的大小L×L可以選擇為L = 16、32,或64樣本,較大的大小典型地允許更好的壓縮。然後,HEVC支持使用樹結構和四叉樹狀信令通知將CTB分割為更小的塊。
2)編碼單元(CU)和編碼塊(CB):CTU的四叉樹語法指定其亮度和彩度CB的大小和位置。四叉樹的根與CTU相關聯。因此,亮度CTB的大小是亮度CB的最大支持大小。CTU到亮度和彩度CB的劃分被聯合地信令通知。一個亮度CB和通常兩個彩度CB,連同相關聯的語法,形成編碼單元(CU)。CTB可以含有僅一個CU或可以被劃分以形成多個CU,並且每個CU具有到預測單元(PU)的相關聯的分割和變換單元(TU)的樹。
3)預測單元和預測塊(PB):在CU級進行使用幀間圖片或幀內圖片預測來編碼圖片區域的決定。PU分割結構具有在CU級的根。根據基本預測類型決定,然後亮度和彩度CB可以被進一步劃分大小,並且被從亮度和彩度預測塊(PB)預測。HEVC支持從64×64到4×4樣本的可變PB大小。圖2示出了MxM CU的允許的PB的示例。
圖2示出了將編碼塊(CB)劃分為預測塊(PB)的模式的示例。將CB劃分為PB的模式,受到某些大小約束。對於幀內圖片預測的CB,僅支持M x M和M/2 x M/2。
4)TU和變換塊:使用塊變換編碼預測殘差。TU樹結構具有其在CU級的根。亮度CB殘差可以與亮度變換塊(TB)相同,或可以被進一步劃分為更小的亮度TB。相同的適用於彩度TB。對正方形TB大小4×4、8×8、16×16和32×32,定義類似於離散餘弦變換(DCT)的整數基函數。對於亮度幀內圖片預測殘差的4×4變換,替換地指定從離散正弦變換(DST)的形式推導的整數變換。
圖3示出了編碼樹塊(CTB)細分為CB的示例。CTB細分為CB[和變換塊(TB)]。實線指示CB界線,並且點線指示TB界線。(a)具有其分割的CTB。(b)對應的四叉樹。
2.1.2.1 到變換塊和單元的樹結構分割
對於殘差編碼,CB可以被遞迴分割為變換塊(TB)。分割被殘差四叉樹信令通知。僅指定正方形CB和TB分割,其中塊可以被遞迴四分劃分,如圖3中所示。對於大小M×M的給定亮度CB,標誌信令通知其是否被劃分為大小M/2×M/2的四個塊。如果進一步劃分是可能的,則如由SPS中指示的殘差四叉樹的最大深度所信令通知的,每個四分被分配指示其是否被劃分為四個四分的標誌。從殘差四叉樹所得的葉節點塊是變換塊,其被變換編碼進一步處理。編碼器指示其將使用的最大和最小亮度TB大小。當CB大小大於最大TB大小時,暗示劃分。當劃分將導致亮度TB大小小於指示的最小時,暗示不劃分。彩度TB大小在每個維度上是亮度TB大小的一半,除了當亮度TB大小是4×4之外,在此情況下將單個4×4彩度TB用於由四個4×4亮度TB覆蓋的區域。在幀內圖片預測的CU的情況下,最接近鄰近TB的解碼的樣本(在CB內或外)被用作幀內圖片預測的參考數據。
與之前的標準不同,HEVC設計允許TB跨幀間圖片預測的CU的多個PB,以最大化四叉樹結構TB分割的潛在編碼效率收益。
2.1.2.2 父和子節點
CTB被根據四叉樹結構劃分,四叉樹結構的節點為編碼單元。四叉樹結構中的多個節點包含葉節點和非葉節點。葉節點在樹結構中不具有子節點(即,葉節點不進一步劃分)。非葉節點包含樹結構的根節點。根節點對應於視頻數據的初始視頻塊(例如,CTB)。對於多個節點中的每個相應的非根節點,相應的非根節點對應於作為對應於相應的非根節點的樹結構中的父節點的視頻塊子塊的視頻塊。多個非葉節點中的每個相應的非葉節點具有樹結構中的一個或多個子節點。
2.2 HEVC/H.265中的幀間預測
每個幀間預測PU具有一個或兩個參考圖片列表的運動參數。運動參數包含運動向量和參考圖片索引。兩個參考圖片列表之一的使用還可以被使用inter_pred_idc信令通知。運動向量可以顯式地編碼為相對於預測符的差量(delta),這樣的編碼模式稱為AMVP模式。
當以跳過模式編碼CU時,一個PU與CU相關聯,並且不存在顯著殘差係數,不存在編碼運動向量差量(delta)或參考圖片索引。merge模式被指定,借此從鄰近PU獲取當前PU的運動參數,包含空域和時域候選。merge模式可以應用於任意幀間預測PU,不僅是跳過模式。merge模式的替代是運動參數的顯式傳輸,其中每個PU顯式地信令通知運動向量、每個參考圖片列表的對應的參考圖片索引,以及參考圖片列表使用。
當信令通知指示要使用兩個參考圖片列表之一時,從樣本的一個塊產生PU。這稱為‘單向預測’。單向預測對於P-條帶和B-條帶兩者都可用。
當信令通知指示兩個參考圖片列表都要使用時,從樣本的兩個塊產生PU。這稱為‘雙向預測’。雙向預測僅對於B-條帶可用。
以下文本提供現有HEVC 實現方式中指定的幀間預測模式的細節。
2.2.1 merge模式
2.2.1.1 merge模式的候選的推導
當使用merge模式預測PU時,指向merge候選列表中的條目的索引被從位元流解析,並且用於取回運動信息。此列表的建構在HEVC標準中指定,並且可以根據以下步驟的序列概括:
步驟1:初始候選推導
步驟1.1:空域候選推導
步驟1.2:空域候選的冗餘檢查
步驟1.3:時域候選推導
步驟2:附加候選***
步驟2.1:雙向預測候選的創建
步驟2.2:零運動候選的***
這些步驟也示意性地在圖4中繪示。對於空域merge候選推導,最多四個merge候選在位於五個不同位置中的候選之中選擇。對於時域merge候選推導,最多一個merge候選在兩個候選之中選擇。因為對於每個PU在解碼器處假設不變數目的候選,當候選的數目未達到條帶標頭中信令通知的merge候選的最大數目(MaxNumMergeCand)時,生成附加候選。由於候選的數目是不變的,使用截斷一元二值化(TU)編碼最佳merge候選的索引。如果CU的大小等於8,當前CU的全部PU共用單個merge候選列表,其與2N×2N預測單元的merge候選列表相同。
以下,詳述與前述步驟相關聯的操作。
2.2.1.2 空域候選推導
在空域merge候選的推導中,最多四個merge候選在位於圖5中繪示的位置的候選之中選擇。推導的順序是A1
、B1
、B0
、A0
和B2
。僅當位置A1
、B1
、B0
、A0
的任何PU都不可用(例如,因為其屬於另一條帶或片)或是幀內編碼時,考慮位置B2
。在位置A1
添加候選之後,添加其餘的候選經受冗餘檢查,冗餘檢查確保具有相同運動信息的候選被從列表排除,從而改善編碼效率。為降低計算複雜度,不是全部可能的候選對都在提到的冗餘檢查中被考慮。反之,僅以圖6中的箭頭聯接的對被考慮,並且僅如果用於冗餘檢查的對應的候選不具有相同的運動信息,才將候選添加到列表。重複運動信息的另一個來源是與2Nx2N不同的分割相關聯的“第二PU”。作為示例,圖7繪示了分別對於N×2N和2N×N的情況的第二PU。當當前PU被分割為N×2N時,位置A1
處的候選對列表建構不被考慮。實際上,通過添加此候選將導致具有相同的運動信息的兩個預測單元,其對於在編碼單元中僅具有一個PU是冗餘的。相似地,當當前PU被分割為2N×N時,位置B1
不被考慮。
2.2.1.3 時域候選推導
在此步驟中,僅將一個候選添加到列表。特別地,在此時域merge候選的推導中,基於屬給定參考圖片列表內的與當前圖片具有最小POC差的圖片的共位PU來推導縮放的運動向量。在條帶標頭中顯式地信令通知要用於推導共位PU的參考圖片列表。獲取用於時域merge候選的縮放運動向量,如圖8中的點線所示,其使用POC距離tb和td從共位PU的運動向量縮放,其中tb被定義為當前圖片的參考圖片與當前圖片之間的POC差,並且td被定義為共位圖片的參考圖片與共位圖片之間的POC差。時域merge候選的參考圖片索引被設定為等於零。在HEVC規範中描述了縮放過程的實際實現。對於B-條帶,獲取並組合兩個運動向量,一個用於參考圖片列表0,另一個用於參考圖片列表1,以進行雙向預測merge候選。
圖8示出了時域merge候選的運動向量縮放的示例。
在屬參考幀的共位PU(Y)中,時域候選的位置被選擇在候選C0
與C1
之間,如圖9中所繪示的。如果位置C0
處的PU不可用、是幀內編碼的,或在當前CTU之外,則使用位置C1
。否則,在時域merge候選的推導中使用位置C0
。
2.2.1.4 附加的候選***
除空時(spatio-temporal)merge候選之外,存在兩個附加類型的merge候選:組合雙向預測merge候選和零merge候選。組合雙向預測merge候選通過利用空時merge候選而生成。組合雙向預測merge候選僅用於B-條帶。組合雙向預測候選通過將初始候選的第一參考圖片列表運動參數與另一候選的第二參考圖片列表運動參數組合而生成。如果兩個元組(tuple)提供不同運動假說,則它們將形成新的雙向預測候選。作為示例,圖10繪示了當原始列表(左側)中的兩個候選(其具有mvL0和refIdxL0,或者mvL1和refIdxL1)被用於創建添加到最終列表(右側)的組合雙向預測merge候選時的情況。現有實現方式提供關於被考慮以生成這些附加merge候選的組合的許多規則。
***零運動候選以填充merge候選列表中的其餘條目,並且因此達到MaxNumMergeCand容量。這些候選具有零空域位移(displacement)和參考圖片索引,其從零開始並且每當新的零運動候選被添加到列表時增加。這些候選使用的參考幀的數目對於單向和雙向預測分別是1和2。 最後,不對這些候選進行冗餘檢查。
2.2.1.5 並行處理運動估計區域
為了加速編碼過程,可以並行地進行運動估計,從而同時推導給定區域內的全部預測單元的運動向量。從空域附近推導的merge候選可能會干擾並行處理,因為一個預測單元無法從相鄰PU推導運動參數,直到其相關聯的運動估計完成。為了減輕編碼效率和處理延遲之間的權衡,HEVC定義了運動估計區域(MER),使用“log2_parallel_merge_level_minus2”語法元素在圖片參數集中信令通知運動估計區域(MER)的大小。當定義了MER時,落入同一區域的merge候選被標記為不可用,並且因此在列表建構中不予考慮。
7.3.2.3 圖片參數集RBSP語法
7.3.2.3.1 總體圖片參數集RBSP語法
log2_parallel_merge_level_minus2加2指定變量Log2ParMrgLevel的值,其被使用在如條款8.5.3.2.2中指定的merge模式的亮度運動向量的推導過程中和如條款8.5.3.2.3中指定的空域merge候選的推導過程中。log2_parallel_merge_level_minus2的值應在0至CtbLog2SizeY - 2的範圍內,包含。
變量Log2ParMrgLevel如下推導:
Log2ParMrgLevel = log2_parallel_merge_level_minus2 + 2 (7-37)
注釋3 – Log2ParMrgLevel的值指示merge候選列表的並行推導的內置容量。例如,當Log2ParMrgLevel等於6時,64x64塊中含有的全部預測單元(PU)和編碼單元(CU)的merge候選列表可以並行地推導。
2.2.2 AMVP模式中的運動向量預測
運動向量預測利用運動向量與鄰近PU的空時相關性,其用於運動參數的顯式傳輸。其通過首先檢查左、上時域鄰近PU位置的可用性,刪除冗餘候選並添加零向量以使候選列表為不變長度,從而建構運動向量候選列表。然後,編碼器可以從候選列表中選擇最佳預測符,並傳輸指示所選擇的候選的對應的索引。與merge索引信令通知相似地,最佳運動向量候選的索引是使用截斷一元編碼的。在這種情況下要編碼的最大值是2(見圖6)。在以下的章節中,提供了關於運動向量預測候選的推導過程的細節。
2.2.2.1運動向量預測候選的推導
圖11概括了運動向量預測候選的推導過程。
在運動向量預測中,考慮了兩種類型的運動向量候選:空域運動向量候選和時域運動向量候選。對於空域運動向量候選推導,基於位於五個不同位置中的每個PU的運動向量,最終推導兩個運動向量候選,如圖5中所繪示的。
對於時域運動向量候選推導,從兩個候選中選擇一個運動向量候選,其被基於兩個不同共位位置推導。在構成空時候選的第一列表之後,移除列表中的重複運動向量候選。如果潛在候選的數目大於二,則相關聯的參考圖片列表內的參考圖片索引大於1的運動向量候選被從列表移除。如果空時運動向量候選的數目小於二,則附加零運動向量候選被添加到列表。
2.2.2.2 空域運動向量候選
在空域運動向量候選的推導中,在五個潛在候選之中考慮最多兩個候選,其從位於如圖5中所繪示的位置中的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候選的並行推導。否則,上運動向量不允許空域縮放。
圖12示出了空域運動向量候選的運動向量縮放的示例。
在空域縮放過程中,鄰近PU的運動向量以與時域縮放相似的方式縮放,如圖12所繪示的。主要差異是,參考圖片列表和當前PU的索引作為輸入給定;實際縮放過程與時域縮放的過程相同。
2.2.2.3 時域運動向量候選
除參考圖片索引推導之外,時域merge候選的推導的全部過程與空域運動向量候選的推導相同(見圖4)。參考圖片索引被信令通知到解碼器。
2.2.2.4 Merge/AMVP信息的信令通知
對於AMVP模式,四部分被在位元流中信令通知,即,預測方向、參考索引、MVD和mv預測符候選索引(在以下語法表中強調)。而對於merge模式,僅merge索引可能需要被信令通知。
語法表:
7.3.6.1 通常條帶分段標頭語法
7.3.8.6 預測單元語法
7.3.8.9 運動向量差語法
語義
five_minus_max_num_merge_cand指定5減去條帶中支持的mergeMVP候選的最大數目。mergeing MVP候選的最大數目,MaxNumMergeCand如下推導:
MaxNumMergeCand = 5 - five_minus_max_num_merge_cand (7-53)
MaxNumMergeCand的值應在1至5的範圍內,包含。
merge_flag[ x0 ][ y0 ]指定是否從鄰近幀間預測的分割推斷當前預測單元的幀間預測參數。陣列索引x0、y0指定所考慮的預測塊的左上亮度樣本相對於圖片的左上亮度樣本的的位置( x0,y0 )。
當merge_flag[ x0 ][ y0 ]不存在時,其如下推斷:
如果CuPredMode[ x0 ][ y0 ]等於MODE_SKIP,則merge_flag[ x0 ][ y0 ]被推斷為等於1。
否則,merge_flag[ x0 ][ y0 ]被推斷為等於0。
merge_idx[ x0 ][ y0 ]指定merging候選列表的merging候選索引,其中x0、y0指定考慮的預測塊的左上亮度樣本相對於圖片的左上亮度樣本的位置( x0,y0 )。
2.3 AVS2中的編碼結構
相似於HEVC,AVS2也採用基於CU、PU和TU的編碼/預測/變換結構的概念。首先,圖片被分割為最大編碼單元(LCU),其由2Nx2N樣本構成。一個LCU可以為單個CU或可以被以四叉樹分割結構劃分為四個更小的CU;CU可以被遞迴劃分,直到其達到最小CU大小限制,如圖13A中所示。一旦CU層級樹的劃分完成,葉節點CU可以被進一步劃分為PU。PU是幀內和幀間預測的基本單元,並且允許多種不同形狀以編碼不規則圖像樣式,如圖13B所示。在圖13A中,示出了AVS2中的最大可能遞迴CU結構,例如LCU大小 = 64,最大層級深度=4;圖13B示出了AVS2中的跳過、幀內模式,以及幀間模式的可能的PU劃分,包含對稱和非對稱預測(對於幀內預測,d=1,2;並且,對於幀間預測d=0,1,2)。
2.4 AVS2/AVS3中的幀間預測
相似於HEVC,存在兩個幀間編碼幀類型,P幀和B幀。P幀是使用單個參考圖片前向預測幀,而B幀是由使用兩個參考幀的前向、後向,雙向預測和對稱預測構成的雙向預測幀。在B幀中,除常規前向、後向、雙向和跳過/直接預測模式之外,對稱預測定義為特別雙向預測模式,其中僅一個前向運動向量(MV)被編碼,並且基於圖片順序計數器(POC)距離從前向MV推導後向MV。對稱模式可以高效地表示對象的線性運動模型。
2.4.1編碼單元的語法和語義
以B幀作為示例,基於CuTypeIndex和ShapeOfPartitionIndex和以下表81推導CU類型(CuType),預測分割類型和PU預測模式(PuPredMode)。
表81. CU類型和B幀的相關信息
表82. subCU類型和B幀的相關信息
2.4.2 基於多運動模型的SKIP/DIRECT模式
當前塊的SKIP模式的運動信息被從先前解碼的塊推導,並且不編碼殘差信息。相似於SKIP模式,DIRECT模式不具有要傳輸的運動信息,而預測殘差和模式信息被傳輸。
作為傳統SKIP和DIRECT模式的擴展,其中僅利用來自一個時域預測塊(CuSubtypeIdx等於0)的運動信息,在AVS2和AVS3中引入四個基於附加運動模型的SKIP和DIRECT模式,即雙向DIRECT/SKIP模式(CuSubtypeIdx等於1),對稱DIRECT/SKIP模式(CuSubtypeIdx等於2)、後向DIRECT/SKIP模式(CuSubtypeIdx等於3)和前向DIRECT/SKIP模式(CuSubtypeIdx等於4)。
設計基於優先級的運動信息推導方法,其考慮塊的運動模型(預測方向)。將較高優先級分配給具有與當前塊相同的運動模型的鄰近塊的運動信息。
對於基於附加運動模型的四個跳過/直接模式中的每一個,運動信息推導過程可以被劃分為按順序進行的三個步驟。
運動模型匹配搜索:如圖14所示,以該順序進行在位置F,G,C,A,B,D處找到具有與當前塊相同的運動模型的鄰近塊的初始處理。一旦找到與當前塊共用相同運動模型的第一塊,則將該塊的運動信息分配給當前塊。
人工搜索:在不存在與當前塊共享相同運動模型的鄰近塊的情況下(即,沒有從步驟1找到結果),進行人工建構當前塊的運動信息的第二過程。此過程因運動模型而異。
對於雙向DIRECT/SKIP模式,計數以前向方向編碼多少空域鄰近者,用Nfw指代,以及以後向方向編碼多少空域鄰近者,用Nbw表示。如果Nfw和Nbw都等於或大於1,則將第一前向和第一後向預測塊的運動信息的組合分配給當前塊。搜索順序與第一步相同,即從位置F,G,C,A,B和D。
對於對稱DIRECT/SKIP模式,按順序執行以下步驟:
計算用雙向編碼多少空域鄰近者,用Nbi指代。
如果Nbi等於或大於2,則以F,G,C,A,B和D的掃描順序將最後一個塊的鄰近雙向預測塊的運動信息的運動信息(其等於D,B,A,C,G和F的掃描順序中的第一塊)分配給當前塊。
否則(如果Nbi小於2)如果Nbw等於或大於1(其中Nbw指代用後向方向編碼了多少空域鄰近者),則第一後向預測塊的運動信息的後向運動向量(由MvE1指代)被分配給當前塊,並且前向運動向量MvE0被設定為等於Clip3(-32768,32767,-MvE1)。搜索順序與第一步驟相同,即從位置F,G,C,A,B和D。
否則(如果Nbi小於2且Nbw小於1),如果Nfw等於或大於1(其中Nfw指代用前向方向編碼多少空域鄰近者),則第一前向預測塊的運動信息的前向運動向量(由MvE0指代)被分配給當前塊,並後向運動向量MvE1被設定為等於Clip3(-32768,32767,-MvE0)。搜索順序與第一步驟相同,即從位置F,G,C,A,B和D。
對於後向DIRECT/SKIP模式,計數用雙向編碼多少空域鄰近者,用Nbi指代。將最後鄰近雙向預測塊的後向運動信息分配給當前塊。搜索順序與第一步驟相同,即從位置F,G,C,A,B和D。
對於前向DIRECT/SKIP模式,計數用雙向編碼多少空域鄰近者,由Nbi指代。將最後鄰近雙向預測塊的前向運動信息分配給當前塊。搜索順序與第一步驟相同,即從位置F,G,C,A,B和D。
默認MV建構:僅當步驟1)和步驟2)都未能找到可用運動向量時才調用該步驟。在AVS2/AVS3中,以下適用:
對於雙向/對稱跳過/直接模式,對前向和後向方向兩者設定零運動向量。
對於後向DIRECT/SKIP模式,後向運動向量被設定為零MV,即(0,0)
對於前向DIRECT/SKIP模式,前向運動向量被設定為零MV,即(0,0)。
由於存在多種SKIP和DIRECT模式,因此需要在信令通知SKIP和DIRECT模式的運動模型中攜帶一些輔助信息(side information)。在AVS2參考軟件RD3.0中,速率-失真優化方法用於選擇模式以編碼塊。在計算新SKIP和DIRECT模式的RD成本時,考慮輔助信息以產生更準確的成本值。
3. 由實施例解決的問題的示例
基於AVS2/AVS3多運動模型的跳過/直接模式採用當前塊與其相鄰的鄰近塊之間的運動模型的相關性。然而,它不能利用當前塊和非相鄰塊之間的相似性。可以使用歷史中先前編碼的運動信息,以用於更好的運動向量預測。類似的想法也可以應用於多方向跳過/直接模式,其中一些細節將被開發以適應AVS2/AVS3中的設計。
另外,對於每個運動模型,僅允許一個候選,這可能限制運動預測的編碼增益。
4. 本公開技術的示例實施例
為了解決該問題,若干方法包括使用一個或多個查找表(LUT,以儲存歷史運動信息)來預測塊的運動信息。LUT的入口是運動候選。HMVP(基於歷史的運動向量預測符)候選用於指示儲存在查找表(LUT)中的一組運動信息。
以下詳細的實施例示例應被視為解釋總體概念的示例。不應以狹義的方式解釋這些實施例。此外,這些實施例可以以任何方式組合。
1. 對於給定運動模型,來自屬相同運動模型的HMVP候選或非相鄰空域塊或時域塊的運動候選可以用作基於多運動模型的方法(例如,AVS2中的SKIP/DIRECT模式設計)的候選。
a. 在一個示例中,在進行人工搜索過程之前,HMVP候選或來自非相鄰空域塊或時域塊的運動候選可以被按順序檢查。如果存在來自屬相同運動模型的一個HMVP候選或非相鄰空域塊或時域塊的一個運動候選,其被標記爲最終運動候選,幷且搜索過程終止。
b. 在一個示例中,在進行默認MV建構過程之前,HMVP候選或來自非相鄰空域塊或時域塊的運動候選可以被按順序檢查。如果存在來自屬相同運動模型的一個HMVP候選或非相鄰空域塊或時域塊的一個運動候選,其被標記爲最終運動候選,幷且搜索過程終止。
c. 在一個示例中,可以在人工搜索過程中考慮HMVP候選或來自非相鄰空域塊或時域塊的運動候選。例如,可以在位置F,G,C,A,B和D之後搜索HMVP候選。在此情況下,一個HMVP候選或來自非相鄰空域塊或時域塊的運動候選可以被視為來自相對位置的一個候選,如來自相鄰空域塊的那些候選。
2.. 基於多運動模型的方法中定義的運動模型(例如,AVS2中的SKIP/DIRECT模式設計)可以被進一步擴展,以覆蓋HMVP的使用。也就是說,HMVP候選可以被視為新的運動模型,並且被添加到基於多運動模型的方法的候選列表中。
a. 在一個示例中,儲存HMVP候選的LUT的每個條目被視爲新的運動模型。
b. 替代地,全部HMVP候選被視爲一個新的運動模型。如果運動模型的指示表示其屬HMVP類別,該指示可以首先被信令通知,之後是HMVP候選的索引。
3. 基於多運動模型的方法中定義的運動模型(例如,AVS2中的SKIP/DIRECT模式)可以被進一步擴展,以覆蓋來自非相鄰塊的運動信息的使用。也就是說,來自非相鄰塊的運動信息可以被視為新的運動模型,並且被添加到基於多運動模型的方法中的候選列表中。
a. 在一個示例中,非相鄰塊的每個運動候選被視爲新的運動模型。
b. 替代地,來自非相鄰塊的全部運動候選被視爲一個新的運動模型,命名爲非相鄰運動類別。如果運動模型的指示表示其屬非相鄰運動類別,則該指示可以首先被信令通知,之後是來自非相鄰塊的運動候選的索引。
4. 可以在AVS2/AVS3中的現有運動模型之前/之後***新的運動模型。
a. 在一個示例中,在全部現有運動模型之後***全部HMVP候選。
b. 替代地,在AVS2/AVS3中的一些現有運動模型之前***一些HMVP候選,而在AVS2/AVS3中的全部現有運動模型之後***其他HMVP候選。
c. 候選的整個列表(時域、雙向、對稱、後向和前向、HMVP和/或非相鄰塊的運動模型)可以在每個模型找到其相關候選之後被記錄。
i. 在一個示例中,如雙向、對稱、後向和前向的全部或多個運動模型中的零運動候選可以被來自其他運動模型的運動候選替代。
5. 相似於PCT/CN2018/093663和PCT/CN2018/093987中的HMVP的設計,來自先前編碼塊的編碼運動信息可以被用作編碼當前塊的預測符。然而,基於運動模型,編碼運動信息被分類並***到多個查找表。
a. 在一個示例中,HMVP過程中使用的運動模型的類別與基於多運動模型的方法(例如, AVS2中的SKIP/DIRECT模式)中使用的那些相同,即,雙向、對稱方向、後向、前向。
b. 替代地,SKIP/DIRECT模式中定義的運動模型的僅一部分在HMVP過程中使用,以降低儲存運動模型的全部類型的HMPV候選所需的儲存器。
6. 並非如在基於多運動模型的方法(例如,AVS2的SKIP/DIRECT模式)中對於每個運動模型允許一個候選,對於一個運動模型允許多個候選。也就是說,對於每個運動模型可以建構候選列表。
a. 在一個示例中,多個候選的索引可以被進一步信令通知。在此情況下,涉及兩個語法元素(第一個指示運動模型,幷且第二個指示對應於選擇的運動模型的候選列表的候選索引)。
b. 替代地,可以在解碼器側選擇多個候選之一,而不信令通知。
c. 替代地,僅建構一個候選列表,然而,可以添加具有相同運動模型的多個候選。在此情況下,可以僅信令通知一個索引。
d. 在一個示例中,可從從具有相同運動模型的相鄰空域鄰近塊推導多個候選。
e. 在一個示例中,可從具有相同運動模型的非相鄰空域鄰近塊推導多個候選。
f. 在一個示例中,可從具有相同運動模型的HMVP候選推導多個候選。
g. 在一個示例中,可從SKIP/DIRECT模式中使用的三個步驟(運動模型匹配的搜索、人工搜索、默認MV)任一個推導多個候選。
h. 全部運動模型的允許的多個候選的大小可以是相同的。
i. 替代地,不同運動模型的允許的多個候選的大小可以是不同的。
j. 允許的多個候選的(多個)大小可以是預定的或在序列參數集/圖片參數集/條帶標頭等中信令通知的。
k. 允許的多個候選的(多個)大小可以進一步取決於塊大小/塊形狀/編碼模式(跳過或直接)/圖片或條帶類型/低延遲檢查標誌。
7. 基於多運動模型的方案中的搜索順序和/或搜索點(空域/時域鄰近塊)可以取決於運動模型。
a. 在一個示例中,對於不同運動模型可以使用不同搜索順序。順序可以是預定的。
b. 在一個示例中,搜索順序可以依塊而異以適應性地改變。
c. 在一個示例中,搜索順序可以基於另一運動模型的搜索結果適應性地改變。
d. 在一個示例中,基於多運動模型的方案中的搜索順序和/或搜索點(空域/時域鄰近塊)可以取決於塊形狀/塊大小/編碼模式等。
8. 可以在HMVP候選與來自非相鄰空域塊或時域塊的候選之間應用修剪。
a. 如果兩個候選是相同的或運動向量差小於(多個)閾值,可以將兩者中的僅一個添加到候選列表。
9. 可以在HMVP候選與從現有基於多模型運動的SKIP/DIRECT模式設計推導的候選之間應用修剪。
a. 相似地,可以在來自非相鄰空域塊或時域塊的候選與從現有SKIP/DIRECT模式設計推導的候選之間之間應用修剪。
b. 在一個示例中,從現有SKIP/DIRECT模式設計推導的候選指示在章節2.4.2中的‘運動模型匹配的搜索’過程中找到的候選。
c. 在一個示例中,從現有SKIP/DIRECT模式設計推導的候選指示在章節2.4.2中的‘默認MV建構’過程之後找到的候選。
d. 在一個示例中,如果從現有基於多模型運動的SKIP/DIRECT模式設計推導的候選是來自‘人工搜索過程’或‘默認MV建構過程’,則修剪過程被跳過。
10. 在一個示例中,僅在相同運動模型的MV候選之間進行修剪操作。
11. 在一個示例中,存在每個運動模型的單獨歷史MV列表。當搜索運動模型時,該模型的歷史MV列表中的MV候選可以被添加到merge候選列表。
a. 在一個實施例中,僅對諸如雙向預測模型和對稱預測模型的一些運動模型建立歷史MV列表,而不對諸如前向預測模型和後向預測模型的其他一些模型建立。
b. 在一個實施例中,運動模型的歷史MV列表僅在用該運動模型的MV編碼/解碼幀間編碼塊之後更新。
12. cu_subtype_index的編碼可以被擴展,以允許其包含除五個現有運動模型之外的多個候選。
a. 在一個示例中,可以利用截斷二值化方法。
b. 在一個示例中,可以以上下文編碼每個bin。
c. 在一個示例中,可以以上下文編碼部分bin,幷且可以以旁路模式編碼其餘bin。
13. 允許的運動模型的總數可以是預定的。
a. 替代地,允許的運動模型的總數可以在序列標頭、圖片標頭、條帶標頭中信令通知。
b. 在一個示例中,每個HMVP候選就允許的運動模型的信令通知而言可以被視爲一個運動模型。
14. 提出了當以HMVP候選(即,來自儲存來自先前編碼塊的運動信息的查找表)編碼塊時,這樣的候選不用於更新LUT。
圖15是一種視頻處理裝置1500的方塊圖。裝置1500可用於實現本文描述的一個或多個方法。裝置1500可以實現為智能手機、平板電腦、電腦、物聯網(IoT)接收器等。裝置1500可以包含一個或多個處理器1502、一個或多個儲存器1504和視頻處理硬件1506。(多個)處理器1502可以被配置為實現本文件中描述的一種或多種方法。儲存器(多個儲存器)1504可以用於儲存用於實現本文描述的方法和技術的數據和代碼。視頻處理硬件1506可用於以硬件電路實現本文件中描述的一些技術。
圖16是視頻編碼器的示例實現方式的方塊圖。圖16示出編碼器實現方式具有內置的反饋路徑,其中視頻編碼器還進行視頻解碼功能(重構視頻數據的壓縮表示,以用於下一視頻數據的編碼)。
圖17是示出可以實現本文公開的各種技術的示例視頻處理系統1700的方塊圖。各種實現方式可以包含系統1700的一些或所有組件。系統1700可以包含用於接收視頻內容的輸入1702。視頻內容可以以原始或未壓縮格式接收,例如8或10位元多分量像素值,或者可以是壓縮或編碼格式。輸入1702可以表示網絡介面、外圍總線介面或儲存介面。網絡介面的示例包含諸如以太網、無源光網絡(PON)等的有線介面和諸如Wi-Fi或蜂窩介面的無線介面。
系統1700可以包含編碼組件1704,其可以實現本文件中描述的各種編碼或編碼方法。編碼組件1704可以減少從輸入1702到編碼組件1704的輸出的視頻的平均位元率,以產生視頻的編碼表示。因此,編碼技術有時被稱為視頻壓縮或視頻轉碼技術。編碼組件1704的輸出可以被儲存,或者經由連接的通信傳輸,如組件1706所表示的。在輸入1702處接收的視頻的儲存或通信的位元流(或編碼)表示可以由組件1708使用,以生成發送到顯示介面1710的像素值或可顯示視頻。從位元流表示生成用戶可視視頻的過程有時被稱為視頻解壓縮。此外,雖然某些視頻處理操作被稱為“編碼”操作或工具,但是應當理解,編碼工具或操作在編碼器處使用,並且逆轉編碼結果的對應的解碼工具或操作將由解碼器進行。
外圍總線介面或顯示介面的示例可以包含通用串行總線(USB)或高清晰度多媒體介面(HDMI)或Displayport等。儲存介面的示例包含SATA(串行高級技術附件)、PCI、IDE介面等。本文件中描述的技術可以體現為各種電子裝置,諸如移動電話、膝上型電腦、智能電話或能夠執行數位數據處理和/或視頻顯示的其他裝置。
圖18A是視頻處理的示例性方法1800的流程圖。方法1800包含,在步驟1802,對視頻塊的候選列表應用從解碼順序中的先前編碼塊推導的第一組候選中的候選與第二組候選中的候選之間的修剪操作。
方法1800包含,在步驟1804,基於應用修剪操作之後的候選列表,進行視頻塊與視頻塊的位元流表示之間的轉換。
圖18B是視頻處理的示例性方法1830的流程圖。方法1830包含,在步驟1832,對視頻塊的候選列表應用包括來自空域或時域非相鄰塊的候選的第一組候選與包括從基於多運動模型的跳過模式或直接模式設計推導的候選的第二組候選之間的修剪操作。
方法1830包含,在步驟1834,基於應用修剪操作之後的候選列表,進行視頻塊與視頻塊的位元流表示之間的轉換。
圖18C是視頻處理的示例性方法1860的流程圖。方法1860包含,在步驟1862,制止對視頻塊的候選列表應用修剪操作,候選列表包括從基於多運動模型的跳過模式或直接模式設計推導的多個候選,並且多個候選中的每一個是基於運動模型匹配的搜索或默認運動向量建構過程。
方法1860包含,在步驟1864,基於候選列表,進行視頻塊與視頻塊的位元流表示之間的轉換。
在本文所描述的方法中,在一些實施例中,轉換可以包含編碼視頻塊和視頻以生成編碼表示或位元流。在一些實施例中,轉換可以包含對編碼表示或位元流進行解碼以生成視頻塊的像素值。在一些實施例中,轉換可以是轉碼操作,其中視頻表示的位元率或格式被改變。
通過將所公開的技術的實施例整合到HEVC參考軟件中而實現的改進在下面的實驗結果中示出。
下表示出了所提出的方案的Bjøntegaard差量(delta)位元率(或BD率)增益和處理時間影響。遵循參考軟件TAVS3-1.0上的常見的測試條件,對RA和LDP配置進行不同組的仿真(具有不同的編碼器複雜度)。例如,“RA”表示對應於被設計為在編碼視頻數據中使能相對頻繁的隨機訪問點而不太強調延遲的最小化的一組編碼條件的隨機訪問。相反,“LDP”表示使用P幀的低延遲條件,其被設計為使能交互式實時通信,而不太強調隨機訪問的易用性。在全部測試中,表大小S設定為8,並應用約束FIFO規則(刪除並向候選表添加條目)。
表1. 在Nrdo=3的RA之下的HMVP的性能
表2. 在Nrdo=4的RA之下的HMVP的性能
表3. 在Nrdo=5的RA之下的HMVP的性能
表4. 在Nrdo=2的LDP之下的HMVP的性能
表5. 在Nrdo=3的LDP之下的HMVP的性能
當存在多達8個HMVP候選時,與TAVS3-1.0參考軟件模型相比,上述仿真結果表明,本文件中描述的一些實施例以3、4或5全速率失真優化(RDO)過程分別實現了隨機訪問(RA)的BD率降低1.88%、2.14%、1.94%。對於LDP情況,提出的HMVP以2或3完整RDO過程分別實現了2.06%和2.48%的BD率降低。注意到較小的編碼和解碼時間影響,並且在某些情況下,與TAVS2-1.0相比,編碼器運行時間甚至可以減少。
本文件中描述的所公開的和其他方案、示例、實施例、模塊和功能操作可以實現為數位電子電路,或者電腦軟件、韌體或硬件,包含本文件中公開的結構及其結構等同,或它們中的一個或多個的組合。所公開的和其他實施例可以實現為一個或多個電腦程序產品,即,在電腦可讀介質上編碼的一個或多個電腦程序指令模塊,用於由數據處理裝置執行或控制數據處理裝置的操作。電腦可讀介質可以是機器可讀儲存器件、機器可讀儲存基板、儲存器器件,影響機器可讀傳播信號的物質組合,或者它們中的一個或多個的組合。術語“數據處理裝置”包含用於處理數據的全部裝置、設備和機器,包含例如可編程處理器、電腦或多個處理器或電腦。除了硬件之外,裝置還可以包含為所討論的電腦程序創建執行環境的代碼,例如,構成處理器韌體的代碼、協議棧、數據庫管理系統、操作系統,或者它們的一個或多個的組合。傳播信號是人工生成的信號,例如機器生成的電信號、光信號或電磁信號,其被生成以編碼信息,從而傳輸到合適的接收器裝置。
電腦程序(也稱為程序、軟件、軟件應用、腳本或代碼)可以用任何形式的編程語言編寫,包含編譯或解釋語言,並且可以以任何形式部署,包含如獨立程序或適合在計算環境中使用的模塊、組件、子例程或其他單元。電腦程序不一定對應於文件系統中的文件。程序可以儲存在保存其他程序或數據(例如,儲存在標記語言文件中的一個或多個腳本)的文件的一部分中、儲存在專用於所討論的程序的單個文件中,或儲存在多個協調文件中(例如,儲存一個或多個模塊、子程序或代碼各部分的文件)。電腦程序可以部署為在一個電腦上或在位於一個站點上或分佈在多個站點上並通過通信網絡互連的多個電腦上執行。
本文件中描述的過程和邏輯流程可以由執行一個或多個電腦程序的一個或多個可編程處理器執行,以通過對輸入數據進行操作幷生成輸出來執行功能。過程和邏輯流程也可以由專用邏輯電路執行,並且裝置也可以實現為專用邏輯電路,例如FPGA(現場可編程門陣列)或ASIC(專用機體電路)。
作爲示例,適合於執行電腦程序的處理器包含通用和專用微處理器,以及任何類型的數位電腦的任意一個或多個處理器。總體上,處理器將從只讀儲存器或隨機存取儲存器或兩者接收指令和數據。電腦的基本元件是用於執行指令的處理器和用於儲存指令和數據的一個或多個儲存器設備。總體上,電腦還將包含或可操作地耦合至儲存數據的一個或多個大容量儲存裝置,以從之接收數據或向其傳輸數據,例如磁盤、磁光盤或光盤。然而,電腦不一定需要這樣的裝置。適用於儲存電腦程序指令和數據的電腦可讀介質包含所有形式的非揮發性儲存器、介質和儲存器裝置,包含例如半導體儲存器裝置,例如EPROM、EEPROM和閃存裝置;磁盤,例如內部硬盤或可移動磁盤;磁光盤;以及CD ROM和DVD-ROM盤。處理器和儲存器可以由專用邏輯電路補充或併入專用邏輯電路中。
雖然本專利文件包含許多細節,但這些細節不應被解釋爲對任何主題或可要求保護的範圍的限制,而是作爲特定技術的特定實施例特有的特徵的描述。在本專利文件中單獨的實施例的上下文中描述的某些特徵也可以在單個實施例中組合實現。相反,在單個實施例的上下文中描述的各種特徵也可以單獨地或以任何合適的子組合在多個實施例中實現。此外,儘管上面的特徵可以描述爲以某些組合起作用幷且甚至最初如此要求保護,但是在某些情況下可以從組合中去除來自所要求保護的組合的一個或多個特徵,幷且所要求保護的組合可以涉及子組合或子組合的變體。
類似地,儘管在附圖中以特定順序描繪了操作,但是這不應該被理解爲實現期望的結果要求以所示的特定順序或按序列順序執行這樣的操作,或者執行所有示出的操作。此外,在本專利文件中描述的實施例中的各種系統組件的分離不應被理解爲在所有實施例中都需要這種分離。
僅描述了幾個實現方式和示例,幷且可以基於本專利文件中描述和示出的內容來進行其他實現方式、增強和變體。
A0、A1、B0、B1、B2、C0、C1:位置
tb、td:POC距離
A,B,C,D,F,G:位置
1500:視頻處理裝置
1502:處理器
1504:儲存器
1506:視頻處理電路
1700:頻處理系統
1702:輸入
1704:編碼組件
1706、1708:組件
1710:顯示介面
1800、1830、1860:方法
1802、1804、1832、1834、1862、1864:步驟
圖1是H.264/高級視頻編碼(AVC)中的MB分割的圖示。
圖2示出了將編碼塊(CB)劃分為預測塊(PBs)的模式的示例。
圖3示出了將編碼樹塊(CTB)細分為CBs的示例。
圖4示出了merge候選列表建構的推導過程的示例。
圖5示出了空域merge候選的位置的示例。
圖6示出了為空域merge候選的冗餘檢查考慮的候選對的示例。
圖7示出了Nx2N和2NxN分割的第二預測單元(PU)的位置的示例。
圖8示出了時域merge候選的運動向量縮放的示例。
圖9示出了共位(co-located)圖片中的時域merge候選的候選位置的示例。
圖10示出了組合的雙向預測merge候選的示例。
圖11示出了運動向量預測候選的推導過程的示例。
圖12示出了空域運動向量候選的運動向量縮放的示例。
圖13A和圖13B示出了可能的遞迴CU/PU結構的示例。
圖14示出了AVS3中使用的當前塊及其鄰近塊的示例。
圖15是視頻處理裝置的示例的方塊圖。
圖16示出了視頻編碼器的示例性實現方式的方塊圖。
圖17是其中可以實現本公開技術的示例性視頻處理系統的方塊圖。
圖18A-18C是視頻處理方法的示例的流程圖。
1800:方法
1802、1804:步驟
Claims (14)
- 一種用於視頻處理的方法,包括:為視頻中的當前塊與所述視頻的位元流之間的轉換,在使用基於歷史的運動向量預測(HMVP)運動模型推導的第一候選與使用第一運動模型推導的第二候選之間應用修剪操作,其中,所述當前塊是用基於多運動模型的跳過或直接模式編解碼的,所述位元流包括所述當前塊的候選索引;以及基於所述修剪操作的結果執行轉換;其中,所述多運動模型中的每個運動模型對應於從相同規則推導的一個或多個候選,並且所述多運動模型包括從HMVP表推導候選的至少一個HMVP運動模型以及至少一個第一運動模型,所述第一運動模型包括以下中的至少一個:從不同於當前圖片的圖片推導候選的運動模型,或者從塊的空域相鄰塊推導候選的運動模型,並且所述候選索引指示所述HMVP運動模型用於所述當前塊。
- 如申請專利範圍第1項所述的方法,其中所述修剪操作的結果指示為所述轉換使用所述第一候選,並且排除所述第二候選。
- 如申請專利範圍第2項所述的方法,其中所述第一候選與所述第二候選相同。
- 如申請專利範圍第2項所述的方法,其中所述第一候選與所述第二候選之間的運動向量差小於閾值。
- 如申請專利範圍第1項所述的方法,其中所述第二候選是使用運動模型匹配搜索、人工搜索或默認運動向量構建過程中 的一種來推導的。
- 如申請專利範圍第1項所述的方法,其中所述HMVP表中的一個或多個候選是從所述視頻的一個或多個先前塊推導的,並且根據所述先前塊的編解碼順序排列在所述HMVP表中。
- 如申請專利範圍第1項所述的方法,其中執行所述轉換包括從所述視頻塊生成所述位元流表示。
- 如申請專利範圍第1項所述的方法,其中執行所述轉換包括從所述位元流表示生成所述視頻塊。
- 如申請專利範圍第1項所述的方法,其中所述第一候選與運動信息相關聯,所述運動信息包括預測方向、參考圖片索引、運動向量值、強度補償標誌、仿射標誌、運動向量差精度或運動向量差值中的至少一個。
- 如申請專利範圍第1項所述的方法,其中在執行所述轉換之後,基於所述視頻塊的運動信息更新所述HMVP表。
- 如申請專利範圍第10項所述的方法,還包括:在更新所述HMVP之後,基於所述HMVP,執行視頻的隨後的視頻塊與所述視頻的位元流表示之間的轉換。
- 如申請專利範圍第1項所述的方法,還包括:避免在所述第二候選之間應用修剪操作。
- 一種視頻系統中的裝置,包括處理器和具有其上的指令的非暫態儲存器,其中由所述處理器執行所述指令時,使所述處理器實現申請專利範圍第1項至第12項中的一項或多項中所列舉的方法。
- 一種儲存指令的非暫態電腦可讀介質,所述指令在運 行時使得處理器實施根據申請專利範圍第1項至第12項中的一項或多項中所列舉的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2018102370 | 2018-08-26 | ||
WOPCT/CN2018/102370 | 2018-08-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202017390A TW202017390A (zh) | 2020-05-01 |
TWI840401B true TWI840401B (zh) | 2024-05-01 |
Family
ID=
Non-Patent Citations (1)
Title |
---|
期刊 Z. Shao and L. Yu Multi-directional skip and direct modes design in bi-predictive slices for AVS2 standard IEEE International Conference on Multimedia and Expo Workshops (ICMEW) doi: 10.1109/ICMEW.2014.6890689. 2014 IEEE International Conference on Multimedia and Expo Workshops (ICMEW) 2014/07/18 第3.2節 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI822839B (zh) | 組合的基於歷史的運動矢量預測符和多運動模型解碼 | |
TWI820211B (zh) | 取決於總數減去k的開始檢查hmvp候選的條件 | |
TWI818086B (zh) | 擴展Merge預測 | |
US10555006B2 (en) | Deriving bilateral filter information based on a prediction mode in video coding | |
CN110839158B (zh) | 变换矩阵选择的系数相关的编解码 | |
JP6783788B2 (ja) | ビデオコーディングにおけるサブブロックの動き情報の導出 | |
US20180184127A1 (en) | Determining neighboring samples for bilateral filtering in video coding | |
CN113273186A (zh) | Lut更新的调用 | |
TW201924350A (zh) | 視訊寫碼中之仿射運動向量預測 | |
TWI826486B (zh) | 用時間資訊擴展基於查找表的運動向量預測 | |
TWI819030B (zh) | 用時間信息擴展基於查找表的運動向量預測 | |
TWI748522B (zh) | 視訊編碼器、視訊解碼器及相應方法 | |
WO2021110170A1 (en) | Updating of hmvp tables | |
TWI840401B (zh) | 基於多運動模型的跳過和直接模式編碼的視頻塊中的修剪 | |
TWI704799B (zh) | 取決於形狀的插值順序 | |
TWI840400B (zh) | 基於多運動模型的視頻編碼和解碼 | |
CN117280694A (zh) | 视频编解码中分割信令通知 | |
CN117296319A (zh) | 基于邻居的分割约束 |