IP Library Granted Patent US 11,140,404
Granted Patent B2
US 11,140,404 · App. 16/536,301 · Granted Oct 5, 2021

Method and apparatus for video coding

Inventors: Xiaozhong Xu (State College, PA); Xiang Li (Los Gatos, CA); Shan Liu (San Jose, CA)
Assignee: Tencent America LLC
H04N19/44H04N19/132H04N19/159H04N19/176H04N19/186H04N19/96
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,140,404
App. No.
16/536,301
Granted
Oct 5, 2021
Kind
B2
Abstract

Aspects of the disclosure provide a method and an apparatus including processing circuitry for video decoding. The processing circuitry can decode prediction information of a chroma coding block (CB) from a coded video bitstream. The prediction information indicates an intra block copy (IBC) mode for the chroma CB and the chroma CB includes one or more chroma units. The processing circuitry can determine a chroma block vector (BV) for one of the one or more chroma units based on at least one luma unit collocated with the one of the one or more chroma units. The at least one luma unit is coded in the IBC mode. The processing circuitry can reconstruct at least one sample in the one of the one or more chroma units based on the chroma BV. The at least one luma unit and the chroma CB can be associated with separate luma-chroma coding trees.

Claims (68)

1. A method for video decoding in a decoder, comprising:

decoding prediction information of a chroma coding block (CB) from a coded video bitstream, the prediction information indicating an intra block copy (IBC) mode for the chroma CB and the chroma CB including one or more chroma units;

determining a chroma block vector (BV) for one of the one or more chroma units based on at least one luma unit collocated with the one of the one or more chroma units, the at least one luma unit being coded in the IBC mode and covering a same overlapping area as the one of the one or more chroma units;

determining a single luma sample that has a location, relative to a shape formed by a combination of all of the plurality of luma units, based on a position of a chroma sample location which is one of: a top left sample, a top right sample, a bottom right sample, a bottom left sample, a center sample, and a pre-defined sample of the one of the one or more chroma units;

determining that the one or more luma BVs is a luma BV for the one of the plurality of luma units;

determining the chroma BV based on the luma BV,

wherein

a plurality of luma sample locations over the plurality of luma units are located adjacent to a center of the shape formed by the combination of all of the plurality of luma units, and

when the chroma sample location is the center sample,

the determining the chroma BV further comprises:

determining one of the plurality of luma sample locations located adjacent to the center of the shape as the single luma sample location based on a specific location of center sample of the chroma sample location; and

reconstructing at least one sample in the one of the one or more chroma units based on the chroma BV.

2. The method of claim 1 , wherein the at least one luma unit and the chroma CB are associated with separate luma-chroma coding trees.

3. The method of claim 1 , further comprising:

setting a chroma unit size for the one or more chroma units and a luma unit size for the at least one luma unit based on sizes of a luma unit and a chroma unit used for one of: a sub-block based motion vector prediction mode and a block based motion vector prediction mode.

4. The method of claim 3 , wherein

the at least one luma unit and the chroma CB are associated with separate luma-chroma coding trees; and

the setting the chroma unit size and the luma unit size including setting the chroma unit size and the luma unit size based on the sizes of the luma unit and the chroma unit used for the sub-block based motion vector prediction mode.

5. The method of claim 3 , wherein

separate luma-chroma coding trees are disabled; and

the setting the chroma unit size and the luma unit size including setting the chroma unit size and the luma unit size based on the sizes of the luma unit and the chroma unit used for the block based motion vector prediction mode.

6. The method of claim 1 , wherein

the chroma CB is collocated with a luma region;

each of the one or more chroma units in the chroma CB is collocated with one or more luma units in the luma region; and

for each of the one or more chroma units in the chroma CB, the respective one or more luma units is coded in the IBC mode and is available to determine a chroma BV for each of the one or more chroma units.

7. An apparatus for video decoding, comprising processing circuitry configured to:

decode prediction information of a chroma CB from a coded video bitstream, the prediction information indicating an IBC mode for the chroma CB and the chroma CB including one or more chroma units;

determine a chroma BV for one of the one or more chroma units based on at least one luma unit collocated with the one of the one or more chroma units, the at least one luma unit being coded in the IBC mode and covering a same overlapping area as the one of the one or more chroma units;

reconstruct at least one sample in the one of the one or more chroma units based on the chroma BV,

wherein

when the at least one luma unit is a single luma unit collocated with and that covers the same overlapping area with the one of the one or more chroma units, the processing circuitry is configured to determine the chroma BV based on a luma BV for the single luma unit, and

when the at least one luma unit includes a plurality of luma units collocated and covering the same overlapping area with the one of the one or more chroma units, the processing circuitry is configured to determine the chroma BV based on one or more luma BVs for the plurality of luma units by:

determining a single luma sample that has a location, relative to a shape formed by a combination of all of the plurality of luma units, based on a position of a chroma sample location which is one of: a top left sample, a top right sample, a bottom right sample, a bottom left sample, a center sample, and a pre-defined sample of the one of the one or more chroma units;

determining that the one or more luma BVs is a luma BV for the one of the plurality of luma units;

determining the chroma BV based on the luma BV,

wherein

a plurality of luma sample locations over the plurality of luma units are located adjacent to a center of the shape formed by the combination of all of the plurality of luma units, and

when the chroma sample location is the center sample,

the determining the chroma BV further comprises:

determining one of the plurality of luma sample locations located adjacent to the center of the shape as the single luma sample location based on a specific location of center sample of the chroma sample location; and

reconstructing at least one sample in the one of the one or more chroma units based on the chroma BV.

8. The apparatus of claim 7 , wherein the at least one luma unit and the chroma CB are associated with separate luma-chroma coding trees.

9. The apparatus of claim 7 , wherein when the at least one luma unit includes a plurality of luma units collocated and covering the same overlapping area with the one of the one or more chroma units, and when the one or more luma BVs for the plurality of luma units includes a plurality of luma BVs for the plurality of luma units, the processing circuitry is further configured to determine the chroma BV based on an average of the plurality of luma BVs.

10. The apparatus of claim 7 , wherein the processing circuitry is configured to:

set a chroma unit size for the one or more chroma units and a luma unit size for the at least one luma unit based on sizes of a luma unit and a chroma unit used for one of: a sub-block based motion vector prediction mode and a block based motion vector prediction mode.

11. The apparatus of claim 7 , wherein:

the at least one luma unit and the chroma CB are associated with separate luma-chroma coding trees; and

the processing circuitry is configured to set the chroma unit size and the luma unit size based on the sizes of the luma unit and the chroma unit used for the sub-block based motion vector prediction mode.

12. The apparatus of claim 7 , wherein

the chroma CB is collocated with a luma region;

each of the one or more chroma units in the chroma CB is collocated with one or more luma units in the luma region; and

for each of the one or more chroma units in the chroma CB, the respective one or more luma units is coded in the IBC mode and is available to determine a chroma BV for each of the one or more chroma units.

13. A non-transitory computer-readable storage medium storing a program executable by at least one processor to perform:

decoding prediction information of a chroma coding block (CB) from a coded video bitstream, the prediction information indicating an intra block copy (IBC) mode for the chroma CB and the chroma CB including one or more chroma units;

determining a chroma block vector (BV) for one of the one or more chroma units based on at least one luma unit collocated with the one of the one or more chroma units, the at least one luma unit being coded in the IBC mode and covering a same overlapping area as the one of the one or more chroma units;

reconstructing at least one sample in the one of the one or more chroma units based on the chroma BV,

wherein

when the at least one luma unit is a single luma unit collocated with and that covers the same overlapping area with the one of the one or more chroma units, the determining the chroma BV includes determining the chroma BV based on a luma BV for the single luma unit, and

when the at least one luma unit includes a plurality of luma units collocated and covering the same overlapping area with the one of the one or more chroma units, the determining the chroma BV includes determining the chroma BV based on one or more luma BVs for the plurality of luma units by:

determining a single luma sample that has a location, relative to a shape formed by a combination of all of the plurality of luma units, based on a position of a chroma sample location which is one of: a top left sample, a top right sample, a bottom right sample, a bottom left sample, a center sample, and a pre-defined sample of the one of the one or more chroma units;

determining that the one or more luma BVs is a luma BV for the one of the plurality of luma units;

determining the chroma BV based on the luma BV,

wherein

a plurality of luma sample locations over the plurality of luma units are located adjacent to a center of the shape formed by the combination of all of the plurality of luma units, and

when the chroma sample location is the center sample,

the determining the chroma BV further comprises:

determining one of the plurality of luma sample locations located adjacent to the center of the shape as the single luma sample location based on a specific location of center sample of the chroma sample location; and

reconstructing at least one sample in the one of the one or more chroma units based on the chroma BV.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2019
From: XU, XIAOZHONG; LI, XIANG; LIU, SHAN
To: TENCENT AMERICA LLC
Reel/Frame 050009/0143 →
Continuity (2)
Provisional Application 62744467 · Oct 11, 2018
Related Publication 20200120353A1 · Apr 16, 2020