IP Library Granted Patent US 11,051,037
Granted Patent B2
US 11,051,037 · App. 15/516,856 · Granted Jun 29, 2021

Method and apparatus for vector encoding in video coding and decoding

Inventors: Guillaume Laroche (La Basse Romerais, FR); Christophe Gisquet (Rue du Martin Pêcheur, FR); Patrice Onno (Allée Georges Palante, FR)
Assignee: Canon Kabushiki Kaisha
H04N19/593H04N19/105H04N19/156H04N19/174H04N19/176H04N19/436H04N19/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,051,037
App. No.
15/516,856
Granted
Jun 29, 2021
Kind
B2
Abstract

The present invention concerns a method and a device for encoding or decoding blocks of pixels in the process of encoding or decoding a video. It concerns more particularly methods to handle parallelization when using INTRA Block Copy mode of HEVC Screen Content extension. It is based on the control of the area available for providing predictor blocks in INTRA Block Copy mode. Accordingly, the implementation is simple in order to allow parallelized process.

Claims (49)

1. A method of encoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being encoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is encoded based on a predictor block being a block of the image, the method comprising:

obtaining a predictor block for said one mode from a restricted area constituted by any reconstructed blocks of the current Coding Tree block and Coding Tree blocks having coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical coordinate, an origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

encoding said image using the obtained predictor block.

2. The method of claim 1 , wherein said encoding is performed using Wavefront parallel processing.

3. A method of decoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being decoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is decoded based on a predictor block being a block of the image, the method comprising: obtaining a predictor block for said one mode from a restricted area constituted by any reconstructed blocks of the current Coding Tree block and Coding Tree blocks having coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical coordinate, an origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

decoding the image using the obtained predictor block.

4. The method of decoding according to claim 3 , wherein said decoding is performed using Wavefront parallel processing.

5. A device for encoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being encoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is encoded based on a predictor block being a block of the image, the device comprising:

an obtaining unit which obtains a predictor block for said one mode from a restricted area constituted by any reconstructed blocks of the current Coding Tree block and Coding Tree blocks having coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical coordinate, an origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

a processing unit which encodes the image using the obtained predictor block.

6. A device for decoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being decoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is decoded based on a predictor block being a block of the image, the device comprising:

an obtaining unit which obtains a predictor block for said one mode from a restricted area constituted by the reconstructed blocks of the current Coding Tree block and Coding Tree blocks having coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical one, the origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

a processing unit which decodes the image using the obtained predictor block.

7. A system for encoding and decoding an image, the system comprising:

a device for encoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being encoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is encoded based on a predictor block being a block of the image, the device comprising:

an obtaining unit which obtains a predictor block for said one mode from a restricted area constituted by any reconstructed blocks of the current Coding Tree block and Coding Tree blocks having coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical coordinate, an origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

a processing unit which encodes the image using the obtained predictor block, and

a device for decoding an image, the image comprising a plurality of Coding Tree blocks made of blocks of pixels, each block of pixels being decoded according to a mode out of a plurality of modes, one such mode being a mode in which the block is decoded based on a predictor block being a block of the image, the device comprising: an obtaining unit which obtains a predictor block for said one mode from a restricted area constituted by the reconstructed blocks of the current Coding Tree block and the Coding Tree blocks of coordinates (X, Y) where:

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

where X represents the horizontal coordinate, Y represents the vertical coordinate, an origin being in the top left corner of the image, and (X 0 , Y 0 ) are the coordinates of the current Coding Tree block, Coding Tree blocks having coordinates (X, Y) not satisfying

Y≤Y 0 and ( X−X 0 )≤−( Y−Y 0 )

being outside said restricted area; and

a processing unit which decodes the image using the obtained predictor block.

8. The system of claim 7 , wherein at least one of the device for encoding and the device for decoding is configured to use Wavefront parallel processing.

9. The system of claim 8 , wherein device for encoding and the device for decoding are configured to use the same number of synchronized threads for respectively encoding and decoding the image.

10. A non-transitory computer-readable storage medium, on which is stored a sequence of instructions for executing a method of encoding an image according to claim 1 .

11. A non-transitory computer-readable storage medium, on which is stored a sequence of instructions for executing a method of decoding an image according to claim 3 .

12. A non-transitory computer-readable storage medium, on which is stored a sequence of instructions for executing a method of encoding an image according to claim 2 .

13. A non-transitory computer-readable storage medium, on which is stored a sequence of instructions for executing a method of decoding an image according to claim 4 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2018
From: LAROCHE, GUILLAUME; GISQUET, CHRISTOPHE; ONNO, PATRICE
To: CANON KABUSHIKI KAISHA
Reel/Frame 047218/0560 →
Priority Claims (1)
GB 1417634 · Oct 6, 2014 · national
Continuity (1)
Related Publication 20180302645A1 · Oct 18, 2018