Opened 9 years ago

Closed 9 years ago

#321 closed defect (fixed)

mismatch between HM and WD on ALF chroma coeff prediction

Reported by: Tomohiro Ikai Owned by: wjhan
Priority: minor Milestone:
Component: Text Version: WD5 (G1103) d9
Keywords: Cc: bbross, wjhan, jct-vc@…

Description

There are inconsistency between HM and WD on ALF chroma prediction.

HM's prediction properly works assuming that "sum of ALF coeff is equal to or near to 1.0", so WD should follows HM with the following fixs.

(1) fix1
replace
cC[ i ] = 255 – sum – alf_coeff_chroma[ i ] (8 468)
with
cC[ i ] = 256 – sum – alf_coeff_chroma[ i ] (8 468)

(2) fix2
replace

sum = alf_coeff_chroma[ AlfCodedLengthChroma – 2 ] + sigma_j( alf_coeff_chroma[ j ] << 1 ) (8 469)
with j = 0..AlfCodedLengthChroma – 3

with

sum = sigma_j ( alf_coeff_chroma[ j ] << 1 ) (8 469)
with j = 0..AlfCodedLengthChroma – 2

The corresponding function is
TComAdaptiveLoopFilter::predictALFCoeffChroma

Change History (4)

comment:1 Changed 9 years ago by DefaultCC Plugin

  • Cc bbross wjhan jct-vc@… added

comment:2 Changed 9 years ago by wjhan

  • Owner changed from bbross to wjhan
  • Status changed from new to assigned

(2) is confirmed.

In the source code, (1) seems like:

cC[ i ] = 256 – ( sum – alf_coeff_chroma[ i ] ) (8 468)

Is it correct?

comment:3 Changed 9 years ago by Tomohiro Ikai

(2) is related to H0483.

In my understanding,

HM5.0: val = pred - code (decoder)

: code = pred - val (encoder)

HM6.0: val = pred + code (decoder)

: code = val - pred (encoder)

Therefore
WD5.0:

cC[ i ] = (256 – sum) – alf_coeff_chroma[ i ]

In WD6.0 (after JCTVC-H0483 applied):

cC[ i ] = (256 – sum) + alf_coeff_chroma[ i ]
or
cC[ i ] = alf_coeff_chroma[ i ] + (256 – sum)
# if we describe chroma part in accordance with luma part

And luma part also have the same bug
The value 255 should be replaced with 256.

cL[ i ][ j ] = alf_coeff_luma[ i ][ j ] + 255 – k(2*alf_coeff_luma[ i ][ k ]) – 2*cL[ i ][ j – 1 ] (8 465)

cL[ i ][ j ] = alf_coeff_luma[ i ][ j ] + 255 – ( k2*alf_coeff_luma[ i ][ k ] ) >> 2 (8 465)

comment:4 Changed 9 years ago by wjhan

  • Resolution set to fixed
  • Status changed from assigned to closed

Ok, since H0483 is not integrated yet, I use HM5.0 method and fixe 255 bugs for both luma and chroma. When H0483 is integrated, first issue will be cleared according to the provided text.

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • Benjamin Bross(Subscriber)
  • jct-vc@…(Subscriber)
  • karl.sharman@…(Always)
  • Karsten Suehring(Always)
  • Tomohiro Ikai(Reporter, Participant)
  • Woo-Jin Han(Owner, Subscriber, Participant)