Opened 4 years ago
Closed 4 years ago
#1362 closed defect (fixed)
Order of operations in LMCS equations
Reported by: | bheng | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | spec | Version: | VVC D10 vG |
Keywords: | Cc: | ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
I believe the LMCS equations below all need an extra parenthesis around the ... >> 11, due to the order of operations of the >> operator.
Section 8.5.6.7 - Equation 989:
predSamplesInter [ x ][ y ] = Clip1( LmcsPivot[ idxY ] + ( ScaleCoeff[ idxY ] * ( predSamplesInter[ x ][ y ] − InputPivot[ idxY ] ) + ( 1 << 10 ) ) >> 11 )
Section 8.7.5.2 - Equation 1191:
predMapSamples[ i ][ j ] = LmcsPivot[ idxY ] + ( ScaleCoeff[ idxY ] * ( predSamples[ i ][ j ] − InputPivot[ idxY ] ) + ( 1 << 10 ) ) >> 11
Section 8.8.2.2 - Equation 1200:
invSample = InputPivot[ idxYInv ] + ( InvScaleCoeff[ idxYInv ] * ( lumaSample − LmcsPivot[ idxYInv ] ) + ( 1 << 10 ) ) >> 11
Specifically, I would suggest the following:
predSamplesInter [ x ][ y ] = Clip1( LmcsPivot[ idxY ] + ( ( ScaleCoeff[ idxY ] * ( predSamplesInter[ x ][ y ] − InputPivot[ idxY ] ) + ( 1 << 10 ) ) >> 11 ) )
predMapSamples[ i ][ j ] = LmcsPivot[ idxY ] + ( ( ScaleCoeff[ idxY ] * ( predSamples[ i ][ j ] − InputPivot[ idxY ] ) + ( 1 << 10 ) ) >> 11 )
invSample = InputPivot[ idxYInv ] + ( ( InvScaleCoeff[ idxYInv ] * ( lumaSample − LmcsPivot[ idxYInv ] ) + ( 1 << 10 ) ) >> 11 )
Change history (1)
comment:1 Changed 4 years ago by yk
- Resolution set to fixed
- Status changed from new to closed
Good catch! Thanks! Will be fixed in JVET-S2001-vH.