IP Library Granted Patent US 9,955,185
Granted Patent B2
US 9,955,185 · App. 14/883,883 · Granted Apr 24, 2018

Method and apparatus of constrained intra block copy for coding video

Inventors: Tung-Hsing Wu (Chiayi, TW); Han-Liang Chou (Baoshan Township, Hsinchu County, TW)
Assignee: MEDIATEK INC.
H04N19/593H04N19/176H04N19/423
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 9,955,185
App. No.
14/883,883
Granted
Apr 24, 2018
Kind
B2
Abstract

A method of IntraBC (Intra-block copy) coding for a coding region is disclosed. Embodiments of the present invention derive an IntraBC (Intra picture block copy) predictor from a constrained previous reconstructed region so as to reduce storage requirement for the previous reconstructed data. In one embodiment, a maximum absolute vertical BV (block vector) value, MaxV_BV is determined, where MaxV_BV is smaller than a full vertical search range for the coding region. A constrained previous reconstructed region corresponding to previous reconstructed samples processed before the current block is then determined, where the constrained previous reconstructed region includes at least MaxV_MV reconstructed samples in vertical direction above the current block and excludes at least one row of reconstructed samples for the current block with a vertical distance larger than MaxV_MV. Each coding block may correspond to a prediction unit (PU) or a coding unit (CU).

Claims (29)

1. A method of screen content coding (SCC) or video coding using an intra-block copy mode (IntraBC mode) for a coding region with a coding region height and a coding region width, wherein the coding region is divided into multiple coding blocks each with a block height and a block width, the method comprising:

receiving input data associated with a current block in the coding region;

determining a maximum absolute vertical block vector (BV) value (MaxV_BV), wherein the MaxV_BV is smaller than a full vertical search range for the coding region;

designating a memory to store a constrained previous reconstructed region comprising previous reconstructed samples processed before the current block, wherein the constrained previous reconstructed region includes at least Maximum Vertical Vector (MaxV_MV) sample rows in vertical direction above the current block and previously reconstructed blocks in a same block row as the current block, and the constrained previous reconstructed region excludes at least one reconstructed sample row for the current block with a vertical distance measured with respect to a top edge of the coding region larger than MaxV_MV;

deriving an IntraBC predictor from the constrained previous reconstructed region stored in the memory; and

applying IntraBC encoding or decoding to the current block using the IntraBC predictor derived, wherein the IntraBC predictor is derived from a valid previous reconstructed region within the constrained previous reconstructed region stored in the memory, and the valid previous reconstructed region corresponds to the constrained previous reconstructed region overlapped with a ladder-shaped region related to wave-front parallel processing (WPP).

2. The method of claim 1 , wherein each coding block corresponds to a prediction unit (PU) or a coding unit (CU).

3. The method of claim 1 , wherein the constrained previous reconstructed region comprises N rows of previous reconstructed coding blocks above the current block, wherein N corresponds to a smallest integer larger than or equal to (MaxV_BV divided by the block height).

4. The method of claim 1 , wherein the MaxV_BV is determined based on a level or profile associated with video data being coded, encoder configuration, or any combination thereof.

5. The method of claim 4 , wherein a first MaxV_BV for a first level is equal to or larger than a second MaxV_BV for a second level, wherein the first level is higher than the second level.

6. The method of claim 4 , wherein a first MaxV_BV for a first profile is equal to or larger than a second MaxV_BV for a second profile, wherein the first profile is higher than the second profile.

7. The method of claim 4 , wherein the encoder configuration includes at least two modes selected from a mode group comprising low-power mode, high-speed mode and high-quality mode.

8. The method of claim 7 , wherein the encoder configuration includes a mode group comprising low-power mode, high-speed mode and high-quality mode, and wherein a first MaxV_BV for the high-quality mode is larger than or equal to a second MaxV_BV for the high-speed mode, and the second MaxV_BV for the high-speed mode is larger than or equal to a third MaxV_BV for the low-power mode.

9. The method of claim 1 , further comprising determining a maximum absolute horizontal block vector (BV) value (MaxH_BV), wherein the MaxH_BV is smaller than a full horizontal search range for the coding region, and the constrained previous reconstructed region is further constrained to include at least Maximum Horizontal Vector (MaxH_MV) reconstructed sample columns in horizontal direction to a left side of the current block and to exclude at least one reconstructed sample column on the left side of the current block for the current block with a horizontal distance measured with respect to a left edge of the coding region larger than MaxH_MV.

10. The method of claim 9 , wherein the MaxH_MV is determined based on a level or profile associated with video data being coded, encoder configuration, or any combination thereof.

11. The method of claim 10 , wherein a first MaxH_MV for a first level is equal to or larger than a second MaxH_MV for a second level, wherein the first level is higher than the second level.

12. The method of claim 10 , wherein a first maximum absolute horizontal BV value for a first Profile is equal to or larger than a second maximum absolute vertical BV value for a second Profile, wherein the first Profile is higher than the second Profile.

13. The method of claim 10 , wherein the encoder configuration includes at least two modes selected from a mode group comprising low-power mode, high-speed mode and high-quality mode.

14. The method of claim 13 , wherein the encoder configuration includes a mode group comprising low-power mode, high-speed mode and high-quality mode, and wherein a MaxV_BV for the high-quality mode is larger than or equal to a second MaxV_BV for the high-speed mode, and the second MaxV_BV for the high-speed mode is larger than or equal to a third MaxV_BV for the low-power mode.

15. The method of claim 1 , wherein if the previous reconstructed samples correspond to inter-coded video data, the previous reconstructed samples are not stored.

16. The method of claim 1 , wherein if the previous reconstructed samples correspond to intra-coded video data, the previous reconstructed samples are stored.

17. The method of claim 1 , wherein an encoder sets the MaxV_BV according to a user input.

18. The method of claim 1 , wherein an encoder sets a limit for the MaxV_BV.

19. An apparatus of screen content coding (SCC) or video coding using an intra-block copy mode (IntraBC mode) for a coding region with a coding region height and a coding region width, wherein the coding region is divided into multiple coding blocks each with a block height and a block width, the apparatus comprising one or more electronic circuits configured to:

receive input data associated with a current block in the coding region;

determine a maximum absolute vertical block vector (BV) value (MaxV_BV), wherein the MaxV_BV is smaller than a full vertical search range for the coding region;

determine a constrained previous reconstructed region corresponding to previous reconstructed samples processed before the current block, wherein the constrained previous reconstructed region includes at least Maximum Vertical Vector (MaxV_MV) reconstructed samples in vertical direction above the current block and excludes at least one row of reconstructed samples for the current block with a vertical distance larger than MaxV_MV, wherein the vertical distance is measured with respect to a top edge of the coding region;

derive an IntraBC predictor from the constrained previous reconstructed region; and

apply IntraBC encoding or decoding to the current block using the IntraBC predictor derived, wherein the IntraBC predictor is derived from a valid previous reconstructed region within the constrained previous reconstructed region stored in a memory, and the valid previous reconstructed region corresponds to the constrained previous reconstructed region overlapped with a ladder-shaped region related to wave-front parallel processing (WPP).

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2021
From: MEDIATEK INC.
To: XUESHAN TECHNOLOGIES INC.
Reel/Frame 056593/0167 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2015
From: WU, TUNG-HSING; CHOU, HAN-LIANG
To: MEDIATEK INC.
Reel/Frame 036799/0389 →
Continuity (2)
Provisional Application 62115287 · Feb 12, 2015
Related Publication 20160241875A1 · Aug 18, 2016