Opened 4 years ago
Closed 4 years ago
#1151 closed defect (fixed)
Issue in equation 1269 and 1270 of deblocking filter in the specification text
Reported by: | chhuanb | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | VVC D10 |
Component: | spec | Version: | |
Keywords: | Cc: | ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
There seems to be a bug in the derivaion of the number of deblocking processing unit for chroma.
According to my understanding, for YUV420, the processing unit size for an edge is 2-pixel for chroma.
For example, if edgeType is EDGE_VER and nCbH is 8, the edge is divided into 4 units, with each unit containing 2-pixel rows.
However, according to equation 1270, "yN = edgeType = = EDGE_VER ? ( nCbH / 4 / subH ) − 1 : Max( 0, ( nCbH / gridSize ) − 1 )" below, if ((edgeType == EDGE_VER) && (nCbH == 8) && (subH == 2)) , yN will be 0, instead of 3.
8.8.3.6 Edge filtering process for one direction
– The variable gridSize is set as follows:
gridSize = cIdx = = 0 ? 4 : 8 (1266)
– The variables subW, subH, xN, yN are derived as follows:
subW = cIdx = = 0 ? 1 : SubWidthC (1267)
subH = cIdx = = 0 ? 1 : SubHeightC (1268)
xN = edgeType = = EDGE_VER ? Max( 0, ( nCbW / gridSize ) − 1 ) : ( nCbW / 4 / subW ) − 1 (1269)
yN = edgeType = = EDGE_VER ? ( nCbH / 4 / subH ) − 1 : Max( 0, ( nCbH / gridSize ) − 1 ) (1270)
Should it be:
xN = edgeType = = EDGE_VER ? Max( 0, ( nCbW / gridSize ) − 1 ) : ( nCbW / (4 / subW) ) − 1 (1269)
yN = edgeType = = EDGE_VER ? ( nCbH / (4 / subH) ) − 1 : Max( 0, ( nCbH / gridSize ) − 1 ) (1270)
Change history (2)
comment:1 Changed 4 years ago by Kenneth
comment:2 Changed 4 years ago by bbross
- Resolution set to fixed
- Status changed from new to closed
Thanks, will be fixed in JVET-S2001-v7.
Good catch. You are correct parentheses are missing around 4/subW and 4/subH in equations 1269 and 1270 respectively.