TW202349954A - 自適應編解碼的圖像以及視訊資料 - Google Patents
自適應編解碼的圖像以及視訊資料 Download PDFInfo
- Publication number
- TW202349954A TW202349954A TW112119671A TW112119671A TW202349954A TW 202349954 A TW202349954 A TW 202349954A TW 112119671 A TW112119671 A TW 112119671A TW 112119671 A TW112119671 A TW 112119671A TW 202349954 A TW202349954 A TW 202349954A
- Authority
- TW
- Taiwan
- Prior art keywords
- split
- current block
- current
- splitting
- tree
- Prior art date
Links
- 230000003044 adaptive effect Effects 0.000 title abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 50
- 230000011218 segmentation Effects 0.000 claims description 45
- 230000011664 signaling Effects 0.000 claims description 10
- 238000000638 solvent extraction Methods 0.000 abstract description 26
- 230000033001 locomotion Effects 0.000 description 42
- 238000012545 processing Methods 0.000 description 21
- 230000009466 transformation Effects 0.000 description 19
- 230000008569 process Effects 0.000 description 17
- 238000013139 quantization Methods 0.000 description 16
- 238000006243 chemical reaction Methods 0.000 description 12
- 101100508818 Mus musculus Inpp5k gene Proteins 0.000 description 8
- 101100366438 Rattus norvegicus Sphkap gene Proteins 0.000 description 8
- 239000013598 vector Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 238000001914 filtration Methods 0.000 description 4
- 238000009499 grossing Methods 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 230000007727 signaling mechanism Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 101150114515 CTBS gene Proteins 0.000 description 1
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公開提供了一種當編解碼視訊圖片時應用局部分割約束的方法。一視訊編解碼器接收要編碼或解碼的資料,作為視訊中當前圖片的複數個塊中的當前塊。當前塊可能是編解碼樹單元(coding tree unit,簡稱CTU)或局部控制單元(local control unit,簡稱LCU)。一組約束適用於當前圖片中不同的LCU。特定拆分類型是四叉樹(quad-tree,簡稱QT)拆分、多類型樹(multi-type tree,簡稱MTT)拆分、三叉樹(ternary-tree,簡稱TT)拆分和二叉樹(binary-tree,簡稱BT)拆分之一。視訊編解碼器發訊或接收侷限到當前塊的特定拆分類型的最大深度。視訊編解碼器根據發訊或接收到的特定拆分類型的最大深度,約束當前塊內任何一個複數個塊中的分割操作。視訊編解碼器根據約束的分割操作對當前塊進行編碼或解碼。
Description
本公開是關於視訊編解碼,特別是關於用於編解碼的視訊圖片的拆分方法。
除非本文另有說明,否則本節中描述的方法不是下面列出的申請專利範圍的習知技術,並且不藉由包含在本節中而被承認為習知技術。
高效視訊編解碼(High-Efficiency Video Coding,簡稱HEVC)是由聯合視訊編解碼協作小組(Joint Collaborative Team on Video Coding,簡稱JCT-VC)開發的國際視訊編解碼標準。HEVC基於混合塊為基礎的運動補償類離散餘弦轉換(discrete cosine transform,簡稱DCT)轉換編解碼架構。用於壓縮的基本單元稱為編解碼單元(coding unit,簡稱CU),是一個2Nx2N像素的正方形塊,每個CU可以遞迴拆分成四個較小的CU,直到達到預定義的最小尺寸。每個CU包含一個或複數個預測單元(prediction unit,簡稱PU)。
多功能視訊編解碼(Versatile video coding,簡稱VVC)是由ITU-T SG16WP3和ISO/IEC JTC1/SC29/WG11的聯合視訊專家團隊(Joint Video Expert Team,簡稱JVET)開發的最新國際視訊編解碼標準。輸入視訊訊號從重構訊號中預測,該重構訊號源自編碼圖片區域。預測殘差訊號由塊轉換處理。轉換係數被量化並與位元流中的其他輔助資訊一起進行熵編解碼。重構訊號是根據預測訊號和對去量化轉換係數進行反轉換後的重構殘差訊號產生的。重構訊號進一步通過內迴圈濾波器處理以消除編解碼偽影(coding artifacts)。解碼圖片儲存在幀緩衝區中,用於預測輸入視訊訊號中的未來圖片。
在VVC中,一個已編碼圖片被分割成由相關聯的編解碼樹單元(coding tree unit,簡稱CTU)表示的非重疊正方形塊區域。編解碼樹的葉節點對應於編解碼單元(coding unit,簡稱CU)。一個已編碼圖片可以由複數個切片組成,每個切片包含整數個CTU。切片中的各個CTU按光柵掃描順序進行處理。一雙向預測(bi-predictive,簡稱B)切片的解碼可使用幀內(intra)預測或最多兩個運動向量和參考索引的幀間預測,來預測每個塊的取樣值。一預測(predictive,簡稱P)切片可使用幀內預測或最多一個運動向量和參考索引的幀間預測,來預測每個塊的取樣值。一幀內(intra,簡稱I)切片僅使用幀內預測進行解碼。
CTU可以使用四叉樹(quadtree,簡稱QT)與巢狀多類型樹(multi-type-tree,簡稱MTT)結構拆分成一個或複數個非重疊的編解碼單元(CU),以適應各種局部運動和紋理特徵。CU可以使用五種拆分類型之一進一步拆分成更小的CU:四叉樹分割、垂直二叉樹分割、水平二叉樹分割、垂直中心側三叉樹分割、水平中心側三叉樹分割。
每個 CU 包含一個或複數個預測單元 (PU)。預測單元連同相關的CU語法一起作為發訊預測器資訊的基本單元。指定的預測過程用於預測 PU 內的相關像素取樣的值。每個CU可以包含一個或複數個轉換單元(transform unit,簡稱TU)用於表示預測殘差塊。一個轉換單元 (TU) 由亮度取樣的一個轉換塊 (transform block,簡稱TB) 和兩個相應的色度取樣轉換塊組成,每個 TB 對應於來自一種顏色分量的一個取樣殘差塊。將整數轉換應用於轉換塊。量化係數的電位值與其他輔助資訊一起在位元流中進行熵編解碼。術語:編解碼樹塊 (coding tree block,簡稱CTB)、編解碼塊 (coding block,簡稱CB)、預測塊 (prediction block,簡稱PB) 和轉換塊 (transform block,簡稱TB) ,被定義為指定與CTU、CU、PU和TU分別相關聯的一種顏色分量的2-D取樣陣列。因此,一個 CTU 由一個亮度 CTB、兩個色度 CTB 和相關語法元素組成。CU、PU和TU也有類似的關係。
對於每個幀間預測的 CU,由運動向量、參考圖片索引和參考圖片列表使用索引組成的運動參數以及附加資訊用於幀間預測取樣產生。運動參數可以用顯式或隱式方式發訊。當 CU以略過(skip)模式編碼時,CU 與一個 PU 相關聯並且沒有顯著的殘差係數,沒有編碼的運動向量增量或參考圖片索引。合併模式中,指定當前 CU 的運動參數是從相鄰 CU (包括空間和時間候選者)以及VVC中引入的附加調度獲得的。合併模式可以應用於任何幀間預測的 CU。合併模式的替代方案是運動參數的顯式傳輸,其中運動向量、每個參考圖片列表對應的參考圖片索引和參考圖片列表使用標誌以及其他所需資訊按每個 CU 顯式發訊。
以下說明係為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的申請專利範圍。
本發明所公開的某些實施例提供了一種用於在對視訊圖片進行編碼時應用局部(local)分割約束的方法。視訊編解碼器接收要被編碼或解碼為視訊的當前圖片中的複數個塊中的當前塊的資料。當前塊可以是編解碼樹單元(CTU)或局部控制單元(local control unit,簡稱LCU)。一組約束是自適應於當前圖片中的不同LCU。特定拆分類型是四叉樹(QT)拆分、多類型樹(MTT)拆分、三叉樹(TT)拆分和二叉樹(BT)拆分中的一種。視訊編解碼器發訊或接收侷限於當前塊的特定拆分類型的最大深度。視訊編解碼器根據發訊或接收到的特定拆分類型的最大深度,約束當前區塊內任何複數個區塊的分割操作。分割操作可以是特定拆分類型的拆分操作,因此當達到特定拆分類型的最大深度時,禁止拆分操作。
在某些實施例中,當在當前塊的當前拆分分割達到特定拆分類型的最大深度時,對該當前拆分分割,藉由特定拆分類型進行進一步地拆分被推斷為禁用,並且對於當前拆分分割跳過用於選擇特定拆分類型的語法元素。例如,當特定拆分類型為QT拆分且在當前拆分分割達到QT拆分的最大深度時,跳過用於將當前拆分分割拆分成QT分割的語法元素並推斷為不允許拆分。
在某些實施例中,當 MTT 拆分的最大深度為零時,跳過用於將當前塊的當前拆分分割拆分成 QT 分割的語法元素(例如,split_qt_flag)並推斷為在確定進一步拆分當前拆分分割時啟動QT拆分。在某些實施例中,當特定拆分類型為MTT拆分且在當前拆分分割達到MTT拆分的最大深度時,跳過用於將當前拆分分割拆分成多個部份的語法元素並推斷為不允許拆分。在某些實施例中,當特定拆分類型為MTT拆分且在當前拆分分割達到MTT拆分的最大深度時,跳過用於將當前拆分分割拆分成複數個分割的語法元素並推斷為不允許拆分。在某些實施例中,在當前區塊中MTT拆分的當前深度大於零時,發訊用於表示當前區塊的最大BT或TT深度的語法元素。在某些實施例中,當在當前區塊的當前拆分分割達到BT或TT的最大深度時,跳過用於選擇BT或TT拆分(例如mtt_split_cu_binary_flag)的標誌。
在某些實施例中,在當前塊中的MTT拆分的當前深度大於零時,發訊用於表示是否允許垂直或水平拆分的語法元素(例如,mtt_split_cu_vertical_flag)。在某些實施例中,當不允許對當前塊進行當前拆分分割的垂直拆分或水平拆分時,跳過用於表示MTT垂直或水平拆分的語法元素。
在某些實施例中,在針對當前塊遇到或執行MTT拆分之後,編碼器發訊語法元素(例如,ctu_used_tt_flag)以表示在當前塊中是否使用或允許三叉樹(TT)拆分。在某些實施例中,當語法元素(例如,ctu_used_tt_flag)表示於當前塊不使用TT拆分時,跳過用於表示是否執行二叉樹(BT)拆分的標誌(例如,mtt_split_cu_binary_flag)。
在下面的詳細描述中,通過示例的方式闡述了許多具體細節,以便提供對相關教示的透徹理解。基於本文描述的教示的任何變化、派生和/或擴展都在本發明的保護範圍內。在一些情況下,可以在相對較高且無關細節的水平上描述與本文公開的一個或複數個示例實現有關的眾所周知的方法、過程、元件和/或電路,以避免不必要地模糊本發明的教示方針。
1.塊分割
CTU可以使用四叉樹(QT)與巢狀多類型樹(MTT)結構分割成一個或複數個非重疊的編解碼單元(CU),以適應各種局部運動和紋理特徵。圖1提供了一個CTU 100的示例,該CTU由巢狀MTT的QT遞迴分割。在圖中,粗實邊表示四叉樹分割,而虛線邊表示多類型樹(MTT)分割。如圖所示,CTU 100被QT分割成CU 110、120、130、140。CU 110進一步被QT分割。CU 120沒有進一步分割。CU 130進一步被MTT分割。CU 140進一步被QT分割成CU 145,然後CU 145再被MTT分割。
圖2描繪了CU的五種拆分類型,包括QT分割和MTT分割。如圖所示,CU 可以通過使用 QT 分割(SPLIT_QT)或使用四種 MTT 分割類型之一進一步拆分為更小的 CU:垂直二元分割(SPLIT_BT_VER)、水平二元分割(SPLIT_BT_HOR)、垂直三元分割(SPLIT_TT_VER)、 水平三元分割 (SPLIT_TT_HOR)。
以下是為具有巢狀多類型樹編解碼樹方案的四叉樹定義的參數。這些參數由序列參數集 (sequence parameter set,簡稱SPS) 語法元素指定,並且可以藉由圖片標頭語法元素進一步細化。
●CTUsize :四叉樹的根節點大小。
●MinQTSize : 允許的最小四叉樹葉節點大小。
●MaxBtSize : 允許的最大二叉樹根節點大小。
●MaxTtSize : 允許的最大三叉樹根節點大小。
●MaxMttDepth :允許的最大從四叉樹葉拆分的多類型樹的層次深度。
●MinCbSize : 允許的最小編解碼塊節點大小。
編解碼樹單元(CTU)被視為四叉樹(quaternary tree,亦可簡稱quadtree)的根,並且首先由四叉樹結構分割。然後每個四叉樹葉節點(當大到足夠允許時)被多類型樹結構進一步分割。圖3描繪了分割拆分資訊的發訊機制(signaling mechanism),具體針對具有巢狀多類型樹編解碼樹結構的四叉樹。該圖描繪了用於表示塊的分割樹結構的拆分標誌。具體地,發訊第一個標誌(split_cu_flag)以表示節點是否被進一步分割;當一個節點被進一步分割時,第二個標誌(mtt_split_cu_vertical_flag)被發訊以表示拆分方向,然後第三個標誌(mtt_split_cu_binary_flag)被發訊以表示拆分是二元拆分還是三元拆分。根據標誌mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag的值,推導出一個 CU 的多類型樹拆分模式(MttSplitMode)如下:
2.用於自適應編解碼的分割
Mtt 拆分模式 | mtt_split_cu_vertical_flag | mtt_split_cu_binary_flag |
SPLIT _TT_HOR | 0 | 0 |
SPLIT _BT_HOR | 0 | 1 |
SPLIT _TT_VER | 1 | 0 |
SPLIT _BT_VER | 1 | 1 |
A. 局部㸜制單元
序列參數集 (SPS) 和圖片參數集 (picture parameter set,簡稱PPS) 包含分別適用於整個編碼視訊序列和圖片的高級語法元素。圖片標頭 (picture header,簡稱PH) 和切片標頭 (slice header,SH) 包含分別應用於當前編碼圖片和切片的高級語法元素。本公開的某些實施例提供了一種視訊編解碼器,其可以將編碼圖片劃分為非重疊的局部控制單元(LCU)。視訊編解碼器可以對用於編碼或解碼與當前LCU對應的圖片區域所採用的編碼工具進行複數個語法集的編碼或解碼。因此,在編碼圖片中所使用的編碼工具的參數值可以從一個 LCU 自適應地調整到另一個。
圖4概念性地描繪了具有適用於視訊圖片400的複數個不同局部控制單元(LCU)的參數值的語法元素。如圖所示,視訊圖片400包括若干LCU,包括LCU 411(LCU 1)和LCU 419(LCU N)。 LCU 411、419都具有用於約束分割操作的語法元素,語法元素例如QT拆分 (MaxQtDepth)、MTT拆分(MaxMttDepth)、BT拆分(MaxBtDepth)和TT拆分(MaxTtDepth) 等的最大深度。語法元素MaxQtDepth 、 MaxMttDepth 、 MaxBtDepth和MaxTtDepth的值被局部化並適應於各個 LCU,並且這些不同 LCU 的這些語法元素的實例具有它們自己的指定值。例如,LCU 411的MaxQtDepth值為0,而LCU 419的MaxQtDepth值為3;LCU 411的MaxMttDepth值為2,而LCU 419的MaxMttDepth值為1等等。
在某些實施例中,每個編碼圖片被分割成與每個編碼圖片中的CTU網格對齊的LCU。在某些實施例中,每個LCU根據指定的掃描順序對應於一個或複數個連續的CTU。在某些實施例中,每個LCU對應於一組MxN CTU,其中M和N是整數。在某些實施例中,每個LCU對應於一個CTU。在某些實施例中,每個LCU對應於一個或複數個CTU行(row)。
在某些實施例中,LCU的複數個語法集可以包括與一個或複數個幀間預測工具有關的語法資訊。在這些實施例的一些中,複數個語法集可以包括與仿射或局部照明補償(local illumination compensation,簡稱LIC)工具相關的語法資訊。在某些實施例中,複數個語法集合可以包括用於表示對與當前LCU對應的圖片區域進行編碼或解碼所強制執行的CU分割約束的語法資訊。
在某些實施例中,每個 LCU 僅對應一個 CTU,並且視訊編解碼器可以用發訊當前 CTU 中的一個或複數個語法元素以表示當前 CTU的最大允許 QT 深度、最大允許 BT 深度、最大允許 TT 深度和/或最大允許 MTT 深度。在當前編解碼樹節點的QT深度等於從複數個語法元素中導出的當前CTU的最大允許QT深度時,不允許通過QT拆分進一步分割當前編解碼樹。視訊編解碼器可以略過發訊用以表示是否在當前CTU中選擇QT拆分來進一步分割當前CTU中的當前編解碼樹節點的語法資訊(例如,split_qt_flag)。類似地,在當前編解碼樹節點的MTT、BT或TT深度等於當前CTU的最大允許MTT、BT或TT深度時,視訊編解碼器可以略過發訊用以表示是否在當前CTU中選擇MTT、BT或者TT拆分進一步分割當前編解碼樹節點的語法資訊。
在某些實施例中,基於具有巢狀多類型樹編解碼樹語法的四叉樹,視訊編解碼器可以進一步用發訊當前CTU中的語法元素ctu_max_qt_depth以表示當前CTU的最大允許QT深度。在當前編解碼樹節點的 QT 深度等於當前 CTU 的最大允許 QT 深度並且當前編解碼樹節點將被進一步拆分(標誌split_cu_flag = 1)時,視訊編解碼器可以略過發訊標誌split_qt_flag (具有推斷值等於0),並且推斷當前編解碼樹節點被MTT進一步拆分。視訊編解碼器可以進一步用發訊當前CTU中的語法元素ctu_max_mtt_depth以表示當前CTU的最大允許MTT深度。在當前 CTU 的最大允許 MTT 深度等於 0 並且當前編解碼樹節點要進一步拆分(標誌split_cu_flag = 1)時,視訊編解碼器可以略過發訊標誌split_qt_flag (具有推斷值等於 1),並且推斷當前編解碼樹節點被QT進一步拆分。在當前編解碼樹節點的 QT 深度等於當前 CTU 的最大允許 QT 深度並且當前編解碼樹節點禁用 MTT 拆分時,當前編解碼樹不能進一步拆分並且視訊編解碼器可以對於當前編解碼樹節點略過發訊標誌split_cu_flag(具有推斷值等於0)。類似地,在當前編解碼樹節點的 MTT 深度等於當前 CTU 的最大允許 MTT 深度並且當前編解碼樹節點禁用 QT 拆分時,視訊編解碼器可以對於當前的編解碼樹節點略過發訊標誌split_cu_flag(具有推斷值等於0)。
在某些實施例中,視訊編解碼器可以用發訊一個或複數個語法元素以表示一個或複數個CU分割模式是否被啟用或使用於當前CTU。在一個實施例中,視訊編解碼器可以用發訊當前CTU中的一個CTU級語法元素ctu_used_TT_flag以表示在當前CTU中是否使用TT拆分。當CTU級語法元素表示在當前CTU中未使用TT拆分時,視訊編解碼器可略過發訊用以表示TT是否用於進一步分割當前CTU中的當前編解碼樹節點的語法資訊(例如,mtt_split_cu_binary_flag)。在另一個實施例中,ctu_used_TT_flag僅在當前 CTU 中遇到第一次 MTT 拆分(例如,split_qt_flag等於 0)後才發訊。如果當前 CTU 中未使用 MTT 拆分,則不發訊ctu_used_TT_flag,並且推斷當前 CTU 中未使用 TT 拆分。這樣,當CTU中沒有使用MTT拆分時,可以節省在CTU中編碼ctu_used_TT_flag的位元成本。
B. QP自適應MTT/QT深度
在某些實施例中,視訊編解碼器可以根據為相應圖片區域指定的量化參數(quantization parameter,簡稱QP)來確定最大允許的MTT和/或QT深度。視訊編解碼器可以為不同的 QP 範圍分配不同的最大允許 MTT 和/或 QT 深度。可以在視訊編解碼系統中預先定義為指定 QP 導出指定的最大允許 MTT 和/或 QT 深度的方法。或者,可以在位元流中進一步發訊用於導出為指定QP分配的最大允許MTT和/或QT深度的語法資訊。在某些實施例中,用於導出最大允許MTT和/或QT深度的語法資訊可以被編碼在一個或複數個高級語法集中,例如SPS、PPS、PH和SH。在某些實施例中,可以藉由提供每個圖片/切片/圖格/CTU 行/CTU/VPDU相應的啟用/禁用控制標誌,針對不同圖片/切片/圖格/CTU行/CTU/VPDU打開或關閉最大允許MTT和/或QT深度的QP自適應決定。
C. 自適應 CTU 大小
在 VVC 中,CTU 大小編碼在 SPS 中,並於參考SPS 的整個視訊序列中運用。本公開的某些實施例提供了一種方法,其中可以允許CTU大小根據QP、時間索引(temporal index,簡稱TID)和圖片區域自適應。可以將用於導出當前圖片區域的CTU大小的語法資訊編碼在一個或複數個高級語法集例如SPS、PPS、PH和SH中。在某些實施例中,可以藉由提供每個圖片/切片/圖格/CTU行/CTU/VPDU相應的啟用/禁用控制標誌,針對不同圖片/切片/圖格/CTU行/CTU/VPDU打開或關閉自適應CTU大小。
D. 部分拆分模式
在某些實施例中,視訊編解碼器可以自適應地禁用用以進一步拆分編碼圖片中的編解碼樹節點的一種或多種拆分模式。視訊編解碼器可以進一步略過發訊與被禁用的一個或複數個拆分模式相關的語法資訊。以此方式,視訊編解碼器可以根據視訊內容禁用很少使用的拆分模式並且節省與禁用的模式相關聯的位元成本。在某些實施例中,視訊編解碼器可以用發訊PH或SH中的一個或複數個語法元素以表示當前圖片或切片中的一個或複數個拆分模式被禁用。
任何前述提出的方法都可以在編碼器(encoder)和/或解碼器(decoder)中實現。例如,所提出的任何方法都可以在編碼器的CU分割模組和/或解碼器的CU分割模組中實現。或者,所提出的任何方法都可以實現為整合到編碼器的CU分割模組和/或解碼器的CU分割模組的電路。所提出的方針、方法和相關實施例可以在圖像和視訊編解碼系統中獨立地或聯合地實現。
[視訊編碼器之一例]
圖5描繪可實施塊拆分的視訊編碼器500之一例。如圖所示,視訊編碼器 500 從視訊源 505 接收輸入視訊訊號並將該訊號編碼為位元流 595。視訊編碼器 500 具有用於對來自視訊源 505 的訊號進行編碼的若干元件或模組,至少包括選自以下的一些元件:轉換模組510、量化模組511、反量化模組514、反轉換模組515、圖片內(intra-picture)估計模組520、圖片內預測模組525、運動補償模組530、運動估計模組535、內迴路濾波器 545、重構圖片緩衝器 550、運動向量(motion vector,簡稱MV)緩衝器 565、MV 預測模組 575 和熵編碼器 590。運動補償模組 530 和運動估計模組 535 是幀間預測模組 540 的一部分。
在某些實施例中,模組510-590是由計算機器件或電子裝置的一個或複數個處理單元(例如處理器)執行的軟體指令模組。在某些實施例中,模組510-590是由電子裝置的一個或複數個積體電路(IC)實現的硬體電路模組。儘管模組510-590被圖示為獨立的模組,但是一些模組可以組合成單個模組。
視訊源505提供原始視訊訊號,其呈現未壓縮的每個視訊幀的像素資料。減法器508 計算視訊源 505 的原始視訊像素資料與來自運動補償模組 530 或幀內預測模組 525 的預測像素資料 513 之間的差異作為預測殘差 509。轉換模組 510 將差異(或殘差像素資料或殘差訊號508)轉換成轉換係數516(例如,藉由執行離散餘弦轉換或DCT)。量化模組511將轉換係數量化為量化資料(或量化係數)512,其由熵編碼器590編碼為位元流595。
反量化模組514對量化資料(或量化係數)512進行反量化以獲得轉換係數,反轉換模組515對轉換係數進行反轉換以產生重構殘差519。重構殘差519與預測像素資料513相加以產生重構像素資料517。在某些實施例中,重構像素資料517被臨時儲存在線緩衝器(未圖示)中用於圖片內預測和空間MV預測。重構像素由內迴路濾波器545過濾並儲存在重構圖片緩衝器550中。在某些實施例中,重構圖片緩衝器550是視訊編碼器500外部的儲存器。在某些實施例中,重構圖片緩衝器550是視訊編碼器500內部的儲存器。
圖片內估計模組520基於重構像素資料517執行幀內預測以產生幀內預測資料。幀內預測資料被提供給熵編碼器590以被編碼成位元流595。幀內預測資料還被幀內預測模組525使用以產生預測像素資料513。
運動估計模組535藉由參考儲存在重構圖片緩衝器550中的先前解碼幀的像素資料產生MV來執行幀間預測。這些MV被提供給運動補償模組530以產生預測像素資料。
視訊編碼器500不是在位元流中編碼完整的實際MV,而是使用MV預測來產生預測MV,並且用於運動補償的MV與預測MV之間的差異被編碼為殘差運動資料並儲存在位元流595中。
MV預測模組575基於為編碼先前視訊幀而產生的參考MV,即用於執行運動補償的運動補償MV,產生預測MV。 MV預測模組575從MV緩衝器565中檢索來自先前視訊幀的參考MV。視訊編碼器500將為當前視訊幀產生的MV儲存在MV緩衝器565中作為用於產生預測MV的參考MV。
MV預測模組575使用參考MV來創建預測MV。預測 MV 可以通過空間 MV 預測或時間 MV 預測來計算。熵編碼器590將當前幀的預測MV和運動補償MV(MC MV)之間的差異(殘差運動資料)編碼到位元流595中。
熵編碼器590藉由使用諸如上下文自適應二進制算術編解碼(context-adaptive binary arithmetic coding,簡稱CABAC)或霍夫曼編碼等的熵編解碼技術將各種參數和資料編碼到位元流595中。熵編碼器 590 將各種標頭元素、標誌連同量化轉換係數 512 和殘差運動資料作為語法元素編碼到位元流 595 中。位元流 595 儲存在儲存器件中或通過通訊媒體例如網絡傳輸到解碼器。
內迴路濾波器545對重構像素資料517執行濾波或平滑操作以減少編碼的偽影,特別是在像素塊的邊界處。在某些實施例中,由內迴路濾波器545執行的濾波或平滑操作包括去塊濾波器(deblock filter,簡稱DBF)、取樣自適應偏移(sample adaptive offset,簡稱SAO)和/或自適應迴路濾波器(adaptive loop filter,簡稱ALF)。
圖6描繪了基於局部分割約束實現塊分割的視訊編碼器500的一部分。分割引擎610為熵編碼器590產生一組分割資訊620。熵編碼器590將這組分割資訊620作為語法元素編碼或發訊到位元流595的不同級別的視訊層級(例如,序列、圖片、切片、塊)。分割引擎610還向轉換模組510提供分割結構630,因此轉換模組可以根據分割結構630對預測殘差509執行轉換操作以產生量化係數512。
分割引擎610可以應用各種分割約束,例如MTT、TT、BT、QT等的最大深度。分割引擎610執行的分割操作受制於這些分割約束。分割約束655被局部化或適用於當前圖片的各個 LCU。局部分割約束可由局部特徵檢測器615提供,其使用各種資訊,例如:由重構圖片緩衝器550提供的相鄰重構像素,由運動估計模組535或圖片內估計模組520提供的幀間或幀內預測模式,或來自視訊源505的輸入視訊訊號。局部分割約束可以包括在分割資訊620中以由熵編碼器590在位元流595中發訊。
圖7概念性地描繪了基於局部分割約束來執行塊分割的過程700。在某些實施例中,實現編碼器500的計算機器件的一個或複數個處理單元(例如,處理器)藉由執行儲存在計算機可讀媒體中的指令來執行過程700。在某些實施例中,實現編碼器500的電子裝置執行過程700。
編碼器(在步驟框710)接收要被編碼的視訊的當前圖片中的複數個塊中的當前塊的資料。當前塊可能是編解碼樹單元(CTU)。當前塊也可以是局部㸜制單元(LCU)。
編碼器(在步驟框720)發訊侷限於當前塊的特定拆分類型的最大深度。特定拆分類型是四叉樹(QT)拆分、多類型樹(MTT)拆分、三叉樹(TT)拆分和二叉樹(BT)拆分中的一種。在某些實施例中,特定拆分類型的最大深度是適應於當前圖片中的不同LCU的一組約束中的一個。
編碼器(在步驟框730)根據發訊的用於特定拆分類型的最大深度來約束當前塊內的複數個塊中的任何塊的分割操作。分割操作是特定拆分類型的拆分操作,使得當達到特定拆分類型的最大深度時不允許拆分操作。
在某些實施例中,當在當前塊(例如,QT節點或MTT節點)的當前拆分分割達到特定拆分類型的最大深度時,對於當前拆分分割藉由特定拆分類型進行進一步拆分被推斷為禁用,並且對於當前拆分分割跳過用於選擇特定拆分類型的語法元素。例如,當特定拆分類型是 QT 拆分並且在當前拆分分割達到 QT 拆分的最大深度時,跳過用於將當前拆分分割拆分為 QT 分割的語法元素並推斷為不允許拆分。
在某些實施例中,當MTT拆分的最大深度為零時,跳過用於將當前塊的當前拆分分割拆分成QT分割的語法元素(例如,split_qt_flag)並被推斷為啟動QT拆分。在某些實施例中,當特定拆分類型是MTT拆分並且對於當前拆分分割達到MTT拆分的最大深度時,跳過用於將當前拆分分割拆分成複數個分割的語法元素並且被推斷為不允許拆分。在某些實施例中,在當前塊中的當前MTT拆分深度大於零時,發訊用於表示當前塊的最大BT或TT深度的語法元素。在某些實施例中,當在當前塊的當前拆分分割達到BT或TT的最大深度時,跳過用於在BT或TT拆分之間進行選擇的標誌(例如,mtt_split_cu_binary_flag)。
在某些實施例中,在當前塊中的當前MTT拆分深度大於零時,用發訊用於表示是否允許垂直或水平拆分的語法元素(例如,mtt_split_cu_vertical_flag) 。在某些實施例中,當不允許對當前塊進行當前拆分分割的垂直拆分或水平拆分時,跳過用於表示MTT垂直或水平拆分的語法元素。
在某些實施例中,在針對當前塊遇到或執行MTT拆分之後,編碼器發訊語法元素(例如,ctu_used_tt_flag)以表示在當前塊中是否使用或允許三叉樹(TT)拆分。在某些實施例中,當語法元素(例如,ctu_used_tt_flag)表示TT拆分不用於當前塊時,跳過用於表示是否執行二叉樹(BT)拆分的標誌(例如,mtt_split_cu_binary_flag)。
編碼器(在步驟框740)基於約束分割操作對當前塊進行編碼。
3.視訊解碼器之一例
在某些實施例中,編碼器可以發訊(或產生)位元流中的一個或複數個語法元素,使得解碼器可以從位元流中解析所述一個或複數個語法元素。
圖8描繪可實施塊分割的視訊解碼器800之一例。如圖所示,視訊解碼器800是圖像解碼或視訊解碼電路,其接收位元流895並將位元流的內容解碼成視訊幀的像素資料以供顯示。視訊解碼器800具有用於解碼位元流895的若干元件或模組,包括選自以下的一些元件:逆量化模組811、反轉換模組810、幀內預測模組825、運動補償模組830、內迴路濾波器845、解碼圖片緩衝器850、MV緩衝器865、MV預測模組875和解析器890。運動補償模組830是幀間預測模組840的一部分。
在某些實施例中,模組810-890是由計算機器件的一個或複數個處理單元(例如處理器)執行的軟體指令模組。在某些實施例中,模組810-890是由電子裝置的一個或複數個IC實現的硬體電路模組。儘管模組810-890被示為獨立的模組,但是一些模組可以組合成單個模組。
解析器890(或稱熵解碼器)接收位元流895並根據由視訊編解碼或圖像編解碼標準定義的語法執行初始解析。解析的語法元素包括各種標頭元素、標誌以及量化資料(或量化係數)812。解析器890通過使用熵編解碼技術(例如上下文自適應二進制算術編解碼(CABAC)或霍夫曼編碼)解析出各種語法元素。
反量化模組811對量化資料(或稱量化係數)812進行反量化得到轉換係數,反轉換模組810對轉換係數816進行反轉換得到重構殘差訊號819。將重構殘差訊號819相加來自幀內預測模組825或運動補償模組830的預測像素資料813產生解碼像素資料817。解碼像素資料由內迴路濾波器845過濾並儲存在解碼圖片緩衝器850中。在某些實施例中,解碼圖片緩衝器850是視訊解碼器800外部的儲存器。在某些實施例中,解碼圖片緩衝器850是視訊解碼器800內部的儲存器。
幀內預測模組825從位元流895接收幀內預測資料,並據此從儲存在解碼圖片緩衝器850中的解碼像素資料817產生預測像素資料813。在某些實施例中,解碼像素資料817也是儲存在線緩衝器(未圖示)中以用於圖片內預測和空間MV預測。
在某些實施例中,解碼圖片緩衝器850的內容用於顯示。顯示器件855檢索解碼圖片緩衝器850的內容以直接顯示,或者檢索解碼圖片緩衝器的內容到顯示緩衝器。在某些實施例中,顯示器件通過像素傳輸從解碼圖片緩衝器850接收像素值。
運動補償模組830根據運動補償MV(MC MV)從儲存在解碼圖片緩衝器850中的解碼像素資料817產生預測像素資料813。藉由將從位元流895接收的殘差運動資料與從MV預測模組875接收的預測MV相加來解碼這些運動補償MV。
MV預測模組875基於為解碼先前視訊幀而產生的參考MV,例如用於執行運動補償的運動補償MV,產生預測MV。 MV預測模組875從MV緩衝器865中檢索先前視訊幀的參考MV。視訊解碼器800將為解碼當前視訊幀而產生的運動補償MV儲存在MV緩衝器865中作為用於產生預測MV的參考MV。
內迴路濾波器845對解碼像素資料817執行濾波或平滑操作以減少編解碼偽影,特別是在像素塊的邊界處。在某些實施例中,由內迴路濾波器845執行的濾波或平滑操作包括去塊濾波器(DBF)、取樣自適應偏移(SAO)和/或自適應迴路濾波器(ALF)。
圖9描繪了基於局部分割約束實現塊分割的視訊解碼器800的一部分。分割引擎 910 從熵解碼器 890 接收一組分割資訊 920。熵解碼器 890 從位元流 895 的不同級別的視訊層級(例如,序列、圖片、切片、塊)接收分割資訊920作為語法元素。分割引擎910還向反轉換模組810提供分割結構930,因此反轉換模組可以根據分割結構930對量化係數812執行反轉換操作以產生重構殘差819。
分割引擎910可以應用各種分割約束,例如MTT、TT、BT、QT的最大深度等。分割引擎910執行的分割操作受制於這些分割約束。分割約束被局部化或適用於當前圖片的各個 LCU。局部分割約束作為分割資訊920的一部分提供,其基於由熵解碼器890從位元流895解析的語法元素。
圖10概念性地描繪了基於局部分割約束執行塊分割的過程1000。在某些實施例中,實現解碼器500的計算機器件的一個或複數個處理單元(例如,處理器)藉由執行儲存在計算機可讀媒體中的指令來執行過程1000。在某些實施例中,實現解碼器500的電子裝置執行過程1000。
解碼器(在步驟框1010)接收要被解碼為視訊的當前畫面中的複數個塊中的當前塊的資料。當前塊可能是編解碼樹單元(CTU)。當前塊也可以是局部㸜制單元(LCU)。
解碼器(在步驟框1020)接收侷限於當前塊的特定拆分類型的最大深度。特定拆分類型是四叉樹(QT)拆分、多類型樹(MTT)拆分、三叉樹(TT)拆分和二叉樹(BT)拆分中的一種。在某些實施例中,特定拆分類型的最大深度是適應於當前圖片中的不同LCU的一組約束中的一個。
解碼器(在步驟框1030)根據接收到的用於特定拆分類型的最大深度來約束當前塊內的複數個塊中的任何塊的拆分操作。分割操作是特定拆分類型的拆分操作,如此使得當達到特定拆分類型的最大深度時不允許拆分操作。
在某些實施例中,當在當前塊(例如,QT節點或MTT節點)的當前拆分分割達到特定拆分類型的最大深度時,對於當前拆分分割藉由特定拆分類型進行進一步拆分被推斷為禁用,並且對於當前拆分分割跳過用於選擇特定拆分類型的語法元素。例如,當特定拆分類型是 QT 拆分並且在當前拆分分割達到 QT 拆分的最大深度時,跳過用於將當前拆分分割拆分為 QT 分割的語法元素並推斷為不允許拆分。
在某些實施例中,當 MTT 拆分的最大深度為零時,跳過用於將當前塊的當前拆分分割拆分為 QT 分割的語法元素(例如,split_qt_flag)並推斷為在確定當前拆分分割需要進一步拆分時啟動QT拆分。在某些實施例中,當特定拆分類型是MTT拆分並且對於當前拆分分割達到MTT拆分的最大深度時,跳過用於將當前拆分分割拆分成複數個分割的語法元素並且推斷為不允許拆分。在某些實施例中,在當前塊中的當前MTT拆分深度大於零時,接收用於表示當前塊的最大BT或TT深度的語法元素。在某些實施例中,當在當前塊的當前拆分分割達到BT或TT的最大深度時,跳過用於在BT或TT拆分之間進行選擇的標誌(例如,mtt_split_cu_binary_flag)。
在某些實施例中,在當前塊中的當前MTT拆分深度大於零時,接收用於表示是否允許垂直或水平拆分的語法元素(例如,mtt_split_cu_vertical_flag)。在某些實施例中,當不允許對當前塊進行當前拆分分割的垂直拆分或水平拆分時,跳過用於表示MTT垂直或水平拆分的語法元素。
在某些實施例中,在針對當前塊遇到或執行MTT拆分之後,解碼器接收語法元素(例如,ctu_used_tt_flag)以表示在當前塊中是否使用或允許三叉樹(TT)拆分。在某些實施例中,當語法元素(例如,ctu_used_tt_flag)表示TT拆分不使用於當前塊時,跳過用於表示是否執行二叉樹(BT)拆分的標誌(例如,mtt_split_cu_binary_flag)。
解碼器(在步驟框1040)基於約束分割操作重構當前塊。解碼器然後可以提供重構的當前塊以作為重構的當前圖片的一部分進行顯示。
4.電子系統之一例
許多上述特徵和應用被實現為軟體過程,這些軟體過程被指定為記錄在計算機可讀儲存媒體(也稱為計算機可讀媒體)上的一組指令。當這些指令由一個或複數個計算或處理單元(例如,一個或複數個處理器、處理器核心或其他處理單元)執行時,它們會導致處理單元執行指令中表示的動作。計算機可讀媒體的一例包括但不限於 CD-ROM、快閃碟、隨機存取記憶體(random-access memory,簡稱RAM) 晶片、硬碟、可抹除可編程唯讀記憶體(erasable programmable read only memory,簡稱EPROM)、電性可抹除可編程唯讀記憶體(electrically erasable programmable read-only memory,簡稱EEPROM))等。計算機可讀媒體不包括無線或通過有線連接傳遞的載波和電子訊號。
在本說明書中,術語“軟體”意味著包括駐留在唯讀記憶體中的韌體或儲存在磁性儲存器中的應用程式,其可以被讀入記憶體以供處理器處理。此外,在某些實施例中,複數個軟體發明可以作為較大程式的子部分來實現,同時保留不同的軟體發明。在某些實施例中,複數個軟體發明也可以被實現為獨立的程式。最後,一起實現這裡描述的軟體發明的獨立程式的任何組合都在本公開的範圍內。在某些實施例中,當軟體程式被安裝以在一個或複數個電子系統上運行時,定義了一個或複數個特定的機器實現,該機器實行並執行軟體程式的操作。
圖11概念性地描繪了實現本公開的某些實施例的電子系統1100。電子系統1100可以是電腦(例如,桌上型電腦、個人電腦、平板電腦等)、電話、PDA或任何其他種類的電子器件。這樣的電子系統包括各種類型的計算機可讀媒體和用於各種其他類型的計算機可讀媒體的接口。電子系統1100包括匯流排1105、處理單元1110、圖形處理單元(graphics-processing unit,簡稱GPU) 1115、系統記憶體1120、網絡1125、唯讀記憶體(read only memory,簡稱ROM)1130、永久儲存器件1135、輸入器件1140和輸出器件 1145。
匯流排 1105 共同表示通訊連接電子系統 1100 的眾多內部器件的所有系統、外圍器件和晶片組匯流排。例如,匯流排 1105 通訊連接:處理單元 1110、 GPU 1115、唯讀記憶體1130、系統記憶體1120和永久儲存器件1135。
從這些不同的記憶體單元,處理單元1110檢索要執行的指令和要處理的資料以便執行本公開的過程。在不同的實施例中,處理單元可以是單處理器或多核處理器。一些指令被傳遞到 GPU 1115 並由其執行。GPU 1115 可以卸載各種計算或補充由處理單元 1110 提供的圖像處理。
唯讀記憶體1130儲存由處理單元1110和電子系統的其他模組使用的靜態資料和指令。另一方面,永久儲存器件1135是可讀寫記憶體器件。該器件是即使在電子系統1100關閉時仍儲存指令和資料的非易失性記憶體單元。本公開的某些實施例使用大容量儲存器件(例如磁碟或光碟及其對應的磁碟驅動器)作為永久儲存器件1135。
其他實施例使用可移除儲存器件(例如軟碟片、快閃記憶體器件等及其對應的磁碟驅動器)作為永久儲存器件。與永久儲存器件1135一樣,系統記憶體1120是可讀寫記憶體器件。然而,與儲存器件1135不同,系統記憶體1120是易失性讀寫記憶體,例如隨機存取記憶體。系統記憶體1120儲存處理器在運行時使用的一些指令和資料。在某些實施例中,根據本公開的過程儲存在系統記憶體1120、永久儲存器件1135和/或唯讀記憶體1130中。例如,在某些實施例中,各種記憶體單元包括用於處理多媒體剪輯的指令。從這些各種記憶體單元,處理單元1110檢索要執行的指令和要處理的資料以便執行某些實施例的過程。
匯流排1105還連接到輸入器件1140和輸出器件1145。輸入器件1140使用戶能夠向電子系統傳遞資訊和選擇命令。輸入器件 1140 包括字母數字鍵盤和指向器件(也稱為“游標控制器件”)、相機(例如,網絡攝像頭)、麥克風或用於接收語音命令的類似器件等。輸出器件 1145 顯示由電子系統產生的圖像或輸出資料。輸出器件1145包括影印機和顯示器件,例如陰極射線管(cathode ray tubes,簡稱CRT)顯示器或液晶顯示器(liquid crystal displays,簡稱LCD),以及揚聲器或類似的音訊輸出器件。某些實施例包括同時用作輸入和輸出器件的器件,例如觸控螢幕。
最後,如圖11所示,匯流排1105還通過網絡適配器(未圖示)將電子系統1100耦合到網絡1125。以這種方式,計算機可以是計算機網絡的一部分(例如區域網路(local area network,簡稱LAN)、廣域網路(wide area network,簡稱WAN)或內聯網路,或複數個網絡例如網際網路中的一個網絡。電子系統1100的任何或所有元件皆可以結合本公開使用。
某些實施例包括電子元件,例如微處理器、儲存器和記憶體,其將計算機程式指令儲存在機器可讀或計算機可讀媒體(或者稱為計算機可讀儲存媒體、機器可讀媒體、或機器可讀儲存媒體)中。此類計算機可讀媒體的一些示例包括 RAM、ROM、唯讀光碟 (read-only compact disc,簡稱CD-ROM)、可記錄光碟 (recordable compact disc,簡稱CD-R)、可重寫光碟 (rewritable compact disc,簡稱CD-RW)、唯讀數位多功能光碟(read-only digital versatile disc,例如 DVD-ROM、雙層 DVD-ROM),各種可刻錄/可重寫 DVD (recordable/rewritable DVD,例如DVD-RAM、DVD-RW、DVD+RW等等),快閃記憶體(flash memory,例如SD卡、mini-SD卡、微型 SD卡等)、磁性和/或固態硬碟驅動器、唯讀和可記錄 Blu-Ray® 光碟、超密度光碟、任何其他光學或磁性媒體以及軟碟。計算機可讀媒體可以儲存可由至少一個處理單元執行並且包括用於執行各種操作的指令集的計算機程式。計算機程式或計算機代碼的示例包括機器代碼,例如由編譯器產生的機器代碼,以及包括由計算機、電子元件或使用解釋器的微處理器執行的高級代碼的檔案。
雖然上述討論主要涉及執行軟體的微處理器或多核處理器,但上述許多功能和應用都是由一個或複數個積體電路執行的,例如專用積體電路 (application specific integrated circuit,簡稱ASIC) 或現場可編程閘陣列 (field programmable gate array,簡稱FPGA)。在某些實施例中,這樣的積體電路執行儲存在電路本身上的指令。此外,某些實施例執行儲存在可編程邏輯器件(programmable logic device,簡稱PLD)、ROM或RAM器件中的軟體。
本說明書和本申請的任何申請專利範圍中所用的術語“計算機”、“伺服器”、“處理器”和“記憶體”均指電子或其他技術器件。這些術語不包括人或人群。出於說明書的目的,術語“顯示”表示在電子器件上顯示。本說明書和本申請的任何申請專利範圍中所使用的術語“計算機可讀媒體”、“計算機可讀媒體”和“機器可讀媒體”完全限於以可讀形式儲存資訊的有形物理對象。一台電腦。這些術語不包括任何無線訊號、有線下載訊號和任何其他臨時訊號。
儘管已經參考許多具體細節描述了本公開,但是本領域中具有通常知識者仍將理解到在不脫離本公開的精神的情況下可以以其他具體形式實施本公開。此外,複數個圖式(包括圖7和圖10)概念性地說明了過程。這些過程的特定操作可能不會按照所示和描述的確切順序執行。具體操作可以不在一個連續的系列操作中執行,並且可以在不同的實施例中執行不同的具體操作。此外,該過程可以使用複數個子過程或作為更大的宏觀過程的一部分來實現。因此,本領域中具有通常知識者將理解本公開不受前述說明性細節的限制,而是由所附申請專利範圍限定。
[補充筆記]
此處描述的主題有時描繪了包含在不同的其他元件內或與不同的其他元件連接的不同元件。應當理解,這樣描繪的架構僅僅是示例,並且實際上可以用實現相同功能的許多其他架構實現。從概念上講,實現相同功能的元件的任何佈置都被有效地“關聯”,從而實現了所需的功能。因此,此處組合以實現特定功能的任何兩個元件可以被視為彼此“相關聯”以使得實現期望的功能,而無關於架構或中間元件如何。同樣,如此關聯的任何兩個元件也可被視為彼此“可操作地連接”或“可操作地耦合”以實現期望的功能,並且能夠如此關聯的任何兩個元件也可被視為“可操作地耦合”,彼此實現所需的功能。可操作地耦合的具體示例包括但不限於物理上配合和/或物理上互動的元件和/或無線上可互動和/或無線上互動的元件和/或邏輯上互動和/或邏輯上可互動的元件。
此外,關於本文中基本上任何復數和/或單數術語的使用,本領域技術人員可以根據上下文和/或應用而從複數翻譯成單數和/或從單數翻譯成複數。為了清楚起見,可以在本文中明確地闡述各種單數/複數排列。
此外,本領域技術人員將理解,一般而言,本文使用的術語,尤其是所附申請專利範圍中使用的術語,例如所附申請專利範圍的主體,通常意在作為“開放”術語,例如,術語“包括”應解釋為“包括但不限於”、“具有”應解釋為“至少有”、“包含”應解釋為“包括但不限於”等。本領域內的技術人員將進一步理解,如果打算在申請專利範圍的陳述中引入特定數量,則這種意圖將在申請專利範圍中明確地陳述,並且在沒有這種陳述的情況下,不存在這種意圖。例如,為了幫助理解,以下所附申請專利範圍陳述可能包含使用介紹性短語“至少一個”和“一個或複數個”來介紹申請專利範圍陳述的敘述。然而,使用此類短語不應被解釋為暗示藉由不定冠詞“一”引入的申請專利範圍將包含此類引入的申請專利範圍的任何特定申請專利範圍限制為僅包含一個此類陳述的實現,即使當同一申請專利範圍包括介紹性短語“一個或複數個”或“至少一個”和不定冠詞,例如“一”或“一個”,例如,“一”和/或“一個”應解釋為“至少”一個”或“一個或複數個;”這同樣適用於使用定冠詞來引入申請專利範圍陳述。此外,即使明確引用了引入的申請專利範圍記載的特定數目,本領域技術人員將認識到,這種記載應被解釋為至少是指引用的數目,例如,“重複兩次引用”的記載,而不包含其他修飾語,表示至少兩次重複,或者兩次或更多次重複。此外,在那些限定類似於“A、B、C 等中的至少一個被使用”的情況下,一般來說,這樣的結構意在使本領域技術人員理解特定的意義上,例如,“具有A、B和C中的至少一個的系統”將包括但不限於這樣的系統:獨立有 A,獨立有 B,獨立有 C,同時有A和B,同時有A和C,同時有B和C,和/或同時有 A、B、C,等等。在這些情況下,使用類似於“至少一個A、B 或 C 等。”的限定,一般來說,這樣的結構意在使本領域技術人員理解特定的意義上,例如,“具有A、B或C中的至少一個的系統”將包括但不限於這樣的系統具有:只有 A,只有B,只有C,同時有A和B,同時有A和C,同時有B和C,和/或同時有A、B、C等。本領域技術人員將進一步理解實際上無論是在說明書、申請專利範圍還是圖式中,任何出現兩個或更多替代術語的分離詞和/或短語都應理解為考慮包括其中一個術語、任一術語或兩個術語的可能性。例如,短語“A 或 B”將被理解為包括“A”或“B”或“A 和 B”的可能性。
從上文中可以理解,為了說明的目的,本文已經描述了本公開的各種實施方式,並且在不脫離本公開的範圍和精神的情況下可以進行各種修改。因此,本文公開的各種實施方式並非旨在限制,真正的範圍和精神由所附申請專利範圍表示。
110,120,130,140,145:編解碼單元(CU)
100:編解碼樹單元(CTU)
400:視訊圖片
411,419:局部控制單元(LCU)
500:視訊編碼器
505:視訊源
509:預測殘差
510:轉換模組
511:量化模組
512:量化資料(或量化係數)
513:預測像素資料
514:反量化模組
515:反轉換模組
516:轉換係數
517:重構像素資料
519:重構殘差
520:圖片內估計模組
525:圖片內預測模組
530:運動補償模組
535:運動估計模組
540:幀間預測模組
545:內迴路濾波器
550:重構圖片緩衝器
565:MV 緩衝器
575:MV 預測模組
590:熵編碼器
595:位元流
610:分割引擎
615:局部特徵檢測器
620:分割資訊
630:分割結構
655:分割約束
700,1000:過程
710,720,730,740,1010,1020,1030,1040:步驟框
800:視訊解碼器
810:反轉換模組
811:反量化模組
812:量化資料(量化係數)
813:預測像素資料
816:轉換係數
817:解碼像素資料
819:重建殘差
825:幀內預測模組
830:運動補償模組
840:幀間預測模組
845:內迴路濾波器
850:解碼圖片緩衝器
855:顯示器件
865:MV 緩衝器
875:MV 預測模組
890:解析器(熵解碼器)
895:位元流
910:分割引擎
920:分割資訊
930:分割結構
1100:電子系統
1105:匯流排
1110:處理單元
1115:圖形處理單元(GPU)
1120:系統記憶體
1125:網絡
1130:唯讀記憶體(ROM)
1135:永久儲存器件
1140:輸入器件
1145:輸出器件
split_cu_flag:標誌
split_qt_flag:標誌
mtt_split_cu_vertical_flag:標誌
mtt_split_cu_binary_flag:標誌
MaxQtDepth:語法元素
MaxMttDepth:語法元素
MaxBtDepth:語法元素
MaxTtDepth:語法元素
ctu_used_TT_flag:語法元素
以下所包含的圖式是為了提供對本發明的進一步理解,並且併入並構成本發明的一部分。圖式圖示了本發明的實施方式,並且與其描述一起用於解釋本發明的原理。值得注意的是,圖式不一定是按比例繪製的,因為為了清楚地說明本發明的概念,一些元件可能被表示為與實際實施中的尺寸不成比例。
圖1提供了編解碼樹單元 (CTU)之一例,它由具有巢狀多類型樹 (MTT) 的四叉樹 QT 遞迴分割。
圖2描繪了編解碼單元(CU)的五種拆分類型,包括QT分割和MTT分割。
圖3描繪分割拆分資訊的發訊機制,尤其針對具有巢狀MTT編解碼樹結構的QT。
圖4概念性地描繪具有適用於視訊圖片的複數個不同局部控制單元(LCU)的參數值的語法元素。
圖5描繪可實施塊分割的實例視訊編碼器之一例。
圖6描繪了基於局部分割約束實現塊分割的視訊編碼器的部分。
圖7概念性地描繪了基於局部分割約束執行塊分割的處理。
圖8描繪可實施塊分割的視訊解碼器之一例。
圖9描繪了基於局部分割約束實現塊分割的視訊解碼器的部分。
圖10概念性地描繪了基於局部分割約束執行塊分割的過程。
圖11概念性地描繪了實現本發明的某些實施例的電子系統。
1010,1020,1030,1040:步驟框
Claims (18)
- 一種視訊編解碼方法,包括: 接收待編碼或解碼的資料作為視訊的當前圖片中的複數個塊中的當前塊; 發訊或接收局限於該當前塊的特定拆分類型的最大深度; 根據發訊或接收的針對該特定拆分類型的該最大深度,約束該當前塊內的任何一個複數個塊中的分割操作;以及 基於約束的該分割操作對該當前塊進行編碼或解碼。
- 如請求項1之視訊編解碼方法,其中,該當前塊是編解碼樹單元。
- 如請求項1之視訊編解碼方法,其中,該當前塊是局部控制單元,其中該特定拆分類型的最大深度是自適應於該當前圖片中的不同局部控制單元的一組約束中的一個。
- 如請求項1之視訊編解碼方法,其中,該特定拆分類型是四叉樹拆分、多類型樹拆分、三叉樹拆分和二叉樹拆分中的一種。
- 如請求項1之視訊編解碼方法,其中,該分割操作包括該特定拆分類型的一拆分操作,其中當達到該特定拆分類型的最大深度時不允許該拆分操作。
- 如請求項1之視訊編解碼方法,其中,當在該當前塊的一當前拆分分割達到該特定拆分類型的該最大深度時,對該當前拆分分割,藉由該特定拆分類型進行進一步地拆分被推斷為禁用,並且對於該當前拆分分割,跳過用於選擇該特定拆分類型的一語法元素。
- 如請求項1之視訊編解碼方法,其中,當該特定拆分類型是四叉樹拆分並且在一當前拆分分割達到該四叉樹拆分的該最大深度時,跳過用於將該當前拆分分割拆分成四叉樹分割的一語法元素,並且推斷為不允許該拆分。
- 如請求項1之視訊編解碼方法,其中,當用於多類型樹拆分的該最大深度為零時,跳過用於將該當前塊的一當前拆分分割拆分成四叉樹分割的語法元素,並且當在該當前拆分分割被確定為進一步拆分時,推斷為啟動該四叉樹拆分。
- 如請求項1之視訊編解碼方法,其中,當該特定拆分類型是多類型樹拆分並且對於一當前拆分分割達到該多類型樹拆分的該最大深度時,跳過用於將該當前拆分分割拆分成超過一個分割的語法元素並且推斷為不允許該拆分。
- 如請求項1之視訊編解碼方法,其中,當多類型樹拆分的一深度大於零時,發訊用於表示該當前塊的最大二叉樹或三叉樹深度的語法元素。
- 如請求項1之視訊編解碼方法,其中,當在該當前塊的一當前拆分分割達到二叉樹或三叉樹的該最大深度時,跳過用於在二叉樹或三叉樹拆分之間進行選擇的一標誌。
- 如請求項1之視訊編解碼方法,其中,當在該當前塊中的多類型樹拆分的一深度大於零時,發訊用於表示在該當前塊中是否允許垂直或水平拆分的語法元素。
- 如請求項12之視訊編解碼方法,其中,當不允許對該當前塊進行一當前拆分分割的垂直拆分或水平拆分時,跳過用於表示多類型樹垂直拆分或水平拆分的該語法元素。
- 如請求項1之視訊編解碼方法,更包括: 在針對該當前塊遇到多類型樹拆分之後,發訊或接收一語法元素以表示在該當前塊中是否使用或允許三叉樹拆分。
- 如請求項14之視訊編解碼方法,其中,當該語法元素表示三叉樹拆分不使用於該當前塊時,跳過用於表示是否執行二叉樹拆分的一標誌。
- 一種電子器件,包括: 視訊編解碼器電路,配置為執行包括以下的操作: 接收待編碼或解碼的資料作為視訊的當前圖片中的複數個塊中的當前塊; 發訊或接收局限於該當前塊的特定拆分類型的最大深度; 根據發訊或接收的針對該特定拆分類型的最大深度,約束該當前塊內的任何一個複數個塊中的分割操作;以及 基於約束的該分割操作對當前塊進行編碼或解碼。
- 一種視訊解碼方法,包括: 接收待解碼的資料作為視訊的當前畫面中的複數個塊中的當前塊; 接收局限於該當前塊的特定拆分類型的最大深度; 根據發訊或接收的針對該特定拆分類型的該最大深度,約束該當前塊內的任何一個複數個塊中的分割操作;以及 基於約束的該分割操作重構該當前塊。
- 一種視訊編解碼方法,包括: 接收待編碼的資料作為視訊的當前圖片中的複數個塊中的當前塊; 發訊局限於該當前塊的特定拆分類型的最大深度; 根據發訊或接收的針對該特定拆分類型的該最大深度,約束當前塊內的複數個塊中的任何一個的分割操作;以及 基於約束的該分割操作對該當前塊進行編碼。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202263349177P | 2022-06-06 | 2022-06-06 | |
US63/349,177 | 2022-06-06 | ||
PCT/CN2023/096022 WO2023236775A1 (en) | 2022-06-06 | 2023-05-24 | Adaptive coding image and video data |
WOPCT/CN2023/096022 | 2023-05-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202349954A true TW202349954A (zh) | 2023-12-16 |
Family
ID=89117602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW112119671A TW202349954A (zh) | 2022-06-06 | 2023-05-26 | 自適應編解碼的圖像以及視訊資料 |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW202349954A (zh) |
WO (1) | WO2023236775A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10779004B2 (en) * | 2016-10-12 | 2020-09-15 | Mediatek Inc. | Methods and apparatuses of constrained multi-type-tree block partition for video coding |
US10848788B2 (en) * | 2017-01-06 | 2020-11-24 | Qualcomm Incorporated | Multi-type-tree framework for video coding |
EP3818701A4 (en) * | 2018-07-14 | 2022-07-20 | HFI Innovation Inc. | METHODS AND APPARATUS FOR PROCESSING VIDEO IMAGES WITH PARTITIONAL CONSTRAINTS IN A VIDEO CODING SYSTEM |
KR20240133764A (ko) * | 2018-09-03 | 2024-09-04 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 파티션 제한 요소들 간의 관계 |
WO2020164479A1 (en) * | 2019-02-11 | 2020-08-20 | Beijing Bytedance Network Technology Co., Ltd. | Video block partition based on quinary tree |
-
2023
- 2023-05-24 WO PCT/CN2023/096022 patent/WO2023236775A1/en unknown
- 2023-05-26 TW TW112119671A patent/TW202349954A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023236775A1 (en) | 2023-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11546587B2 (en) | Adaptive loop filter with adaptive parameter set | |
US10887594B2 (en) | Entropy coding of coding units in image and video data | |
TWI792074B (zh) | 發信圖像以及視訊的塊分割 | |
US11297320B2 (en) | Signaling quantization related parameters | |
US11284077B2 (en) | Signaling of subpicture structures | |
US20200413100A1 (en) | Signaling Coding Of Transform-Skipped Blocks | |
US11405649B2 (en) | Specifying slice chunks of a slice within a tile | |
US11785214B2 (en) | Specifying video picture information | |
TW202349954A (zh) | 自適應編解碼的圖像以及視訊資料 | |
WO2023198110A1 (en) | Block partitioning image and video data | |
WO2023197998A1 (en) | Extended block partition types for video coding | |
WO2023198187A1 (en) | Template-based intra mode derivation and prediction | |
WO2024041407A1 (en) | Neural network feature map translation for video coding | |
WO2023193769A1 (en) | Implicit multi-pass decoder-side motion vector refinement | |
WO2021047590A1 (en) | Signaling of subpicture structures | |
WO2023143173A1 (en) | Multi-pass decoder-side motion vector refinement | |
WO2023208063A1 (en) | Linear model derivation for cross-component prediction by multiple reference lines | |
WO2024016955A1 (en) | Out-of-boundary check in video coding | |
WO2024169978A1 (en) | Ctu slice-based parallel processing in video coding | |
TW202420818A (zh) | 用於跨分量非線性模式推導之相鄰樣本存取 | |
TW202349953A (zh) | 視訊編解碼方法及其裝置 | |
TW202325025A (zh) | 具有編碼參數的局部照明補償 | |
TW202335499A (zh) | 多模型跨分量線性模型預測 |