Opened 5 years ago

Last modified 5 years ago

#843 new enhancement

Luma and chroma motion vector cleanup

Reported by: crosewarne Owned by: bbross
Priority: minor Milestone:
Component: Text Version: D10 (L1003) v33
Keywords: Cc: bbross, wjhan, jct-vc@…

Description

The present WD text supports motion vectors for luma (mvLX) and chroma (mvCLX).

For 4:2:0, mvLX is assigned to mvCLX.

For Range Extension (AHG7) work this separation will not be required (see JCTVC-K0383), thus mvCLX is redundant text.

The following changes are suggested:

8.5.3 Decoding process for prediction units in inter prediction mode:

...
The decoding process for prediction units in inter prediction mode consists of the following ordered steps:

  1. The derivation process for motion vector components and reference indices as specified in subclause 8.5.3.1 is invoked with the luma coding block location ( xC, yC ), the luma prediction block location ( xB, yB ), the luma coding block size block nCS, the luma prediction block width and height, nPbW and nPbH, and the prediction unit index partIdx specifying as inputs and the luma motion vectors mvL0 and mvL1, the chroma motion vectors mvCL0 and mvCL1, the reference indices refIdxL0 and refIdxL1, and the prediction list utilization flags predFlagL0 and predFlagL1 as outputs.
  2. The decoding process for inter sample prediction as specified in subclause 8.5.3.2 is invoked with the luma coding block location ( xC, yC ), the luma prediction block location ( xB, yB ), the luma coding block size block nCS, the luma prediction block width height, nPbW and nPbH, the luma motion vectors mvL0 and mvL1, the chroma motion vectors mvCL0 and mvCL1, the reference indices refIdxL0 and refIdxL1, and the prediction list utilization flags predFlagL0 and predFlagL1 as inputs and the inter prediction samples (predSamples) which are a (nCSL)x(nCSL) array predSamplesL of prediction luma samples and two (nCSC)x(nCSC) arrays predSamplesCr, and predSamplesCr of prediction chroma samples, one for each of the chroma components Cb and Cr as outputs.

...
Remove the strings 'the chroma motion vectors mvCL0 and mvCL1, ' from 1. and 2.

8.5.3.1 Derivation process for motion vector components and reference indices:

...
Outputs of this process are

  • luma motion vectors mvL0 and mvL1
  • chroma motion vectors mvCL0 and mvCL1, <= Delete this line
  • reference indices refIdxL0 and refIdxL1, ...

Delete the following paragraph:
...
When ChromaArrayType is not equal to 0 and predFlagLX (with X being either 0 or 1) is equal to 1, the derivation process for chroma motion vectors in subclause 8.5.3.1.8 is invoked with mvLX and refIdxLX as inputs and the output being mvCLX.
...

8.5.3.1.8 Derivation process for chroma motion vectors:

Delete this sub-clause

8.5.3.2 Decoding process for inter prediction samples:

...

  • luma motion vectors mvL0 and mvL1,
  • chroma motion vectors mvCL0 and mvCL1, <= Delete this line
  • reference indices refIdxL0 and refIdxL1, ...

...

  • The arrays predSamplesLXL, predSamplesLXCb, and predSamplesLXCr are derived by invoking the fractional sample interpolation process specified in subclause 8.5.3.2.2 with the luma locations ( xC, yC ), ( xB, yB ), the width and the height of the current luma prediction block nPbW, nPbH, the motion vectors mvLX, mvCLX, and the reference arrays with refPicLXL, refPicLXCb and refPicLXCr given as input. ... Replace with: ...
  • The arrays predSamplesLXL, predSamplesLXCb, and predSamplesLXCr are derived by invoking the fractional sample interpolation process specified in subclause 8.5.3.2.2 with the luma locations ( xC, yC ), ( xB, yB ), the width and the height of the current luma prediction block nPbW, nPbH, the motion vector mvLX, and the reference arrays with refPicLXL, refPicLXCb and refPicLXCr given as input. ...

8.5.3.2.2 Fractional sample interpolation process:

...

  • a luma motion vector mvLX given in quarter-luma-sample units,
  • a chroma motion vector mvCLX given in eighth-chroma-sample units, <= Delete this line
  • the selected reference picture sample arrays refPicLXL, refPicLXCb, and refPicLXCr. ...

Prior to the paragraph beginning with:
"The location ( xP, yP ) given in full-sample units of..."
Insert the following paragraph:
"The luma motion vector mvLX is interpretted as a chroma motion vector specified in eighth-chroma-sample units when ChromaArrayType is equal to 1."

Eqn (8-180):

"xIntC = ( xP / 2 ) + ( mvCLX[ 0 ] >> 3 ) + xC"
Replace with:
"xIntC = ( xP / 2 ) + ( mvLX[ 0 ] >> 3 ) + xC"


Eqn (8-181):

"yIntC = ( yP / 2 ) + ( mvCLX[ 1 ] >> 3 ) + yC"
Replace with:
"yIntC = ( yP / 2 ) + ( mvLX[ 1 ] >> 3 ) + yC"

Change History (12)

comment:1 Changed 5 years ago by DefaultCC Plugin

  • Cc bbross wjhan jct-vc@… added

comment:2 Changed 5 years ago by bbross

  • Version changed from D9 (K1003) v9 to D9 (K1003) v10

comment:3 Changed 5 years ago by bbross

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

comment:4 Changed 5 years ago by bbross

  • Resolution fixed deleted
  • Status changed from closed to new

comment:5 Changed 5 years ago by bbross

  • Version changed from D9 (K1003) v10 to D9 (K1003) v11

comment:6 Changed 5 years ago by bbross

  • Version changed from D9 (K1003) v11 to D10 (L1003) v1

comment:7 Changed 5 years ago by bbross

  • Milestone set to D10

comment:8 Changed 5 years ago by bbross

  • Version changed from D10 (L1003) v1 to D10 (L1003) v2

comment:9 Changed 5 years ago by bbross

  • Version changed from D10 (L1003) v2 to D10 (L1003) v28

comment:10 Changed 5 years ago by bbross

  • Milestone D10 deleted

comment:11 Changed 5 years ago by bbross

  • Version changed from D10 (L1003) v28 to D10 (L1003) v31

comment:12 Changed 5 years ago by bbross

  • Version changed from D10 (L1003) v31 to D10 (L1003) v33
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(Owner, Subscriber, Participant)
  • David Flynn(Always)
  • jct-vc@…(Subscriber)
  • Karl Sharman(Always)
  • Karsten Suehring(Always)
  • Woo-Jin Han(Subscriber)