Professional Documents
Culture Documents
VVC Description
VVC Description
VVC Description
Min Gao
Block Partition
• New block partitioning of a CTU using
• Recursive quadtree (QT) split
• Nested recursive multi-type tree (MTT) splits with
• PPS syntax elements:
• CTU size, MinQTSize
• MaxBtSize, MaxTtSize
• MaxMttDepth, MinCbSize
Parameters α and β : minimize regression error between neighboring reconstructed luma and
chroma samples around current block
• Selection of left/top neighbors via 3 modes:
• INTRA_LT_CCLM, INTRA_L_CCLM, and INTRA_T_CCLM
Intra Prediction
• Position dependent intra prediction combination (PDPC)
• Combination of the un-filtered boundary reference samples and HEVC-style
intra prediction with filtered boundary reference samples.
• planar, DC,
• intra angles less than or equal to horizontal
• intra angles greater than or equal to vertical
and less than or equal to 80
Intra Prediction
• Position dependent intra prediction combination (PDPC)
Intra Prediction
• Multiple reference line intra prediction (MRL)
• More reference lines for intra prediction, luma only
W/2
W/4 H
H
H
H Original HxW partition
Vertical
Original HxW partition
Vertical
Examples of sub-partitions for CUs other than 4x8, 8x4 and 4x4 Examples of sub-partitions for 4x8 and 8x4 CUs
Intra Prediction
• Matrix weighted Intra Prediction (MIP)
• First (originally) learned tool in a video coding standard
• Up to 16 weight tables depending on block size
Inter Prediction
• Extended motion vector prediction
• Symmetric motion vector difference coding
• Extended merge mode
• Merge with motion vector difference
• History-based Motion Vector Prediction
• Affine motion compensated prediction
• Subblock-based temporal motion vector prediction
• Adaptive motion vector resolution
• Motion field storage
• Bi-prediction with CU-level weights
• Bi-directional optical flow
• Decoder side motion vector refinement
• Geometric partitioning
• Combined inter and intra prediction
Inter Prediction
• Extended motion vector prediction
A1 B1 B0 A0 B2
Inter Prediction
• History-based Motion Vector Prediction (HMVP)
• The HMVP table size S is set to be 6 and MVs of up to 5 non-subblock inter-coded CUs stored
in table
• FIFO buffer with redundancy check
• Reset for new CTU row, and at tile / slice
Inter Prediction
• High precision motion compensation
• VVC increases the MV precision to 1/16 luma sample
• HEVC’s 8-tap luma interpolation filters and 4-tap chroma interpolation filters are extended to 16 phases for
luma and 32 phases for chroma
• non-affine CU without inferred MV:
• 1/4 luma sample
• non-affine CU with inferred MV:
• 1/16 luma sample
• affine mode CU:
• 1/16 luma sample
Inter Prediction
• Merge mode with MVD (MMVD)
• After a merge candidate is selected, it is further refined by the signaled MVDs information
• MVDs info
• Distance index:
• specifies motion magnitude information
Distance IDX 0 1 2 3 4 5 6 7
Offset (in unit of
1/4 1/2 1 2 4 8 16 32
luma sample)
• Direction index:
• represents the direction of the MVD relative to the starting point
Direction IDX 00 01 10 11
x-axis + − N/A N/A
y-axis N/A N/A + −
Inter Prediction
• Symmetric motion vector difference coding (SMVD)
• Signal only motion MVP, RPL index and MVD for List0 for Bi prediction
• Apply inverse MVD on opposite reference picture from List1
MVD0 MVD1
( x0 , y0 ) ( x1, y1 )
v0
v1
A0
A1
( x2 , y2 ) ( x3 , y3 ) Cur
v2 v3
• up to five CPMVP candidates
A
v4
( x4 , y4 )
Inter Prediction
• Subblock-based temporal motion vector prediction (SbTMVP)
• uses the motion field in the collocated picture to improve motion vector prediction and merge
mode for CUs in the current picture
B1 B0
A1'
Motion shift is set
to A1's motion
A1 A1
A0
Collocated picture Current picture
𝑃bi−pred = 8 − 𝑤 ∗ 𝑃# + 𝑤 ∗ 𝑃$ + 4 ≫ 3
General Bi-Pred:
BDOF:
Inter Prediction
• Bi-directional optical flow (BDOF)
4x4 block
𝐼′ 𝑖 𝑗 = 𝐼 𝑖, 𝑗 + Δ𝐼 𝑖 𝑗
Inter Prediction
• Decoder side motion vector refinement (DMVR)
• a refined MV is searched around the initial MVs in the reference picture list L0 and reference
picture list L1
• Decoder:
Transform
• Joint coding of chroma residuals (JCCR)
• The chroma residuals are coded jointly and one single joint chroma residual block is signaled.
Mode:
Alpha:
Inverse
Matrix:
Adaptive Loop Filter
• Wiener Filter:
Adaptive Loop Filter
• Wiener Filter:
• Wiener-Hopf equations:
• T is auto-correlation matrix and v is cross-correlation vector
Adaptive Loop Filter
• Filter Shape:
• Two diamond filter shapes
• Block classification:
• For luma component, each 4×4 block is categorized into one out of 25 classes.
• The classification index C is derived based on its directionality D and a quantized value of
activity 𝐴!
𝐶 = 5𝐷 + 𝐴K
Adaptive Loop Filter
• Geometric transformations:
• rotation or diagonal and vertical flipping