IP Library Granted Patent US 10,542,255
Granted Patent B2
US 10,542,255 · App. 15/718,107 · Granted Jan 21, 2020

Image processing for compression

Inventors: Jyrki Alakuijala (Wollerau, CH); Robert Obryk (Zurich, CH)
Assignee: GOOGLE LLC
H04N19/117H04N19/124H04N19/126H04N19/134H04N19/154H04N19/167H04N19/172H04N19/176H04N19/46H04N19/80H04N19/86H04N19/513H04N19/82
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 10,542,255
App. No.
15/718,107
Granted
Jan 21, 2020
Kind
B2
Abstract

Systems and methods are disclosed for coding images. For example, methods may include: receiving an encoded bitstream that was generated at least in part by applying a sharpening filter to an input image to obtain a sharpened image and applying a blockwise encoder to the sharpened image; decoding, using a blockwise decoder, data from an encoded bitstream to obtain a plurality of blocks of image data; combining the plurality of blocks of image data to form a blocked image; and applying a blurring filter, which is matched to the sharpening filter, to the blocked image to obtain an output image.

Claims (47)

1. A system for decoding images, comprising:

a memory; and

a processor, wherein the memory stores instructions executable by the processor to cause the system to:

receive an encoded bitstream that was generated at least in part by applying a pixel-domain sharpening filter to an input image to obtain a sharpened image and applying a blockwise encoder to the sharpened image,

wherein the pixel-domain sharpening filter was applied to the input image by the blockwise encoder before the blockwise encoder applied a transform to the sharpened image;

decode, using a blockwise decoder, data from the encoded bitstream to obtain a plurality of blocks of image data;

combine the plurality of blocks of image data to form a blocked image; and

apply a pixel-domain blurring filter, which is matched to the pixel-domain sharpening filter, to the blocked image to obtain an output image.

2. The system of claim 1 , wherein the pixel-domain blurring filter has a smaller kernel size than the pixel-domain sharpening filter.

3. The system of claim 1 , wherein the memory stores instructions executable by the processor to cause the system to:

select, based on an indication of an image quality setting of the encoded bitstream, the pixel-domain blurring filter from a set of available blurring filters.

4. The system of claim 1 , wherein the memory stores instructions executable by the processor to cause the system to:

decode data from the encoded bitstream to obtain the pixel-domain blurring filter.

5. The system of claim 1 , wherein the memory stores instructions executable by the processor to cause the system to:

modify a quantization matrix of the blockwise decoder based on an indication of the pixel-domain blurring filter.

6. The system of claim 1 , wherein the pixel-domain blurring filter is applied to a first luminance channel of the blocked image to obtain a second luminance channel of the output image.

7. The system of claim 1 , wherein the pixel-domain blurring filter is applied to a plurality of channels of the blocked image to obtain the output image.

8. The system of claim 1 , wherein the memory stores instructions executable by the processor to cause the system to:

store, display, or transmit the output image.

9. The system of claim 1 , wherein the blockwise decoder is a JPEG decoder.

10. The system of claim 1 , wherein the output image is a frame of video.

11. A method for decoding images comprising:

receiving an encoded bitstream that was generated at least in part by applying a pixel-domain sharpening filter to an input image to obtain a sharpened image and applying a blockwise encoder to the sharpened image,

wherein the pixel-domain sharpening filter was applied to the input image by the blockwise encoder before the blockwise encoder applied a transform to the sharpened image;

decoding, using a blockwise decoder, data from the encoded bitstream to obtain a plurality of blocks of image data;

combining the plurality of blocks of image data to form a blocked image; and

applying a pixel-domain blurring filter, which is matched to the pixel-domain sharpening filter, to the blocked image to obtain an output image.

12. The method of claim 11 , wherein the pixel-domain blurring filter has a smaller kernel size than the pixel-domain sharpening filter.

13. The method of claim 11 , comprising:

selecting, based on an indication of an image quality setting of the encoded bitstream, the pixel-domain blurring filter from a set of available blurring filters.

14. The method of claim 11 , comprising:

decoding data from the encoded bitstream to obtain the pixel-domain blurring filter.

15. The method of claim 11 , comprising:

modifying a quantization matrix of the blockwise decoder based on an indication of the pixel-domain blurring filter.

16. A system for encoding images, comprising:

a memory; and

a processor, wherein the memory stores instructions executable by the processor to cause the system to:

apply, before applying a transform to an input image, a pixel-domain sharpening filter to the input image to obtain a sharpened image, wherein the pixel-domain sharpening filter is matched to a pixel-domain blurring filter;

encode, after applying the pixel-domain sharpening filter and using a blockwise encoder, the sharpened image to generate data of an encoded bitstream; and

encode an indication of the pixel-domain blurring filter in the encoded bitstream.

17. The system of claim 16 , wherein the memory stores instructions executable by the processor to cause the system to:

determine coefficients of the pixel-domain sharpening filter and the pixel-domain blurring filter by searching for coefficients resulting in low end-to-end distortion to the input image.

18. The system of claim 16 , wherein the pixel-domain blurring filter has a smaller kernel size than the pixel-domain sharpening filter.

19. The system of claim 16 , wherein the memory stores instructions executable by the processor to cause the system to:

select, based on an image quality setting of the blockwise encoder, the pixel-domain sharpening filter from a set of available sharpening filters.

20. The system of claim 16 , wherein the memory stores instructions executable by the processor to cause the system to:

modify a quantization matrix of the blockwise encoder based on the indication of the pixel-domain blurring filter.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Mar 20, 2018
From: GOOGLE INC; GOOGLE LLC
To: GOOGLE LLC
Reel/Frame 045643/0200 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 20, 2017
From: ALAKUIJALA, JYRKI; OBRYK, ROBERT
To: GOOGLE INC.
Reel/Frame 043913/0187 →
Continuity (1)
Related Publication 20190098302A1 · Mar 28, 2019