IP Library › Granted Patent US 11,330,278
Granted Patent B2
US 11,330,278 · App. 16/472,393 · Granted May 10, 2022

Chroma adjustment with color components in color spaces in video coding

Inventors: Jacob Ström (Stockholm, SE); Kenneth Andersson (Gävle, SE); Per Wennersten (Årsta, SE)
Assignee: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
H04N19/186G09G5/026H04N19/117G09G2340/06
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,330,278
App. No.
16/472,393
Granted
May 10, 2022
Kind
B2
Abstract

A processing for a first pixel in a picture comprises setting upper and/or lower limits of a first color component of the first pixel in a first color space to a respective fixed value if a maximum and/or minimum value of the first color component in the first color space results in a color component in a second color space that is below a first value of the color component in the second color space and above a second value of the color component in the second color space. A filtered value is obtained of the first color component and which is equal to or larger than the lower limit and equal to or lower than the upper limit. The processing results in filtered values that are cheaper to encode but that are visibly undistinguishable from the original colors of the pixels.

Claims (74)

1. A method for processing a first pixel in a picture, the first pixel having a color that is represented by a first color component, a second component, and a third component in a first color space, the method comprising:

obtaining a value of a fourth color component in a second color space, which is generated using at least a maximum value of the first color component in the first color space;

setting an upper limit of the first color component of the first pixel in the first color space to a first fixed value if the value of the fourth color component is below a first value of the fourth color component in the second color space and above a second value of the fourth color component in the second color space;

obtaining another value of the fourth color component in the second color space, which is generated using at least a minimum value of the first color component in the first color space;

setting a lower limit of the first color component in the first color space to a second fixed value if said another value of the fourth color component is below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space; and

obtaining a filtered value of the first color component for the first pixel which is larger than or equal to the lower limit and lower than or equal to the upper limit.

2. The method according to claim 1 , wherein the first value of the fourth color component in the second color space is equal to a value of the fourth color component in the second color space obtained based on the color of the first pixel in the first color space plus a delta value and the second value of the fourth color component in the second color space is equal to the value of the fourth color component in the second color space obtained based on the color of the first pixel in the first color space minus the delta value.

3. The method according to claim 1 , wherein

setting the upper limit comprises setting the upper limit of the first color component in the first color space to the maximum value of the first color component in the first color space if the maximum value of the first color component in the first color space results in the fourth color component in the second color space being below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space; and

setting the lower limit comprises setting the lower limit of the first color component in the first color space to the minimum value of the first color component in the first color space if the minimum value of the first color component in the first color space results in the fourth color component in the second color space being below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space.

4. The method according to claim 1 , wherein

calculating, if the maximum value of the first color component in the first color space results in the fourth color component in the second color space being above the first value of the fourth color component in the second color space or below the second value of the fourth color component in the second color space, the upper limit based on the color of the first pixel and one of the first value of the fourth color component in the second color space and the second value of the fourth color component in the second color space; and

calculating, if the minimum value of the first color component in the first color space results in the fourth color component in the second color space being above the first value of the fourth color component in the second color space or below the second value of the fourth color component in the second color space, the lower limit based on the color of the first pixel and one of the first value of the fourth color component in the second color space and the second value of the fourth color component in the second color space.

5. The method according to claim 1 , wherein

setting the upper limit comprises setting the upper limit of the first color component in a red, green, blue (RGB) color space to the first fixed value if the maximum value of the first color component in the RGB color space results in a chromaticity component in a luminance and chromaticity color space that is below a first value of the chromaticity component in the luminance and chromaticity color space and above a second value of the chromaticity component in the luminance and chromaticity color space; and

setting the lower limit comprises setting the lower limit of the first color component in the RGB color space to the second fixed value if the minimum value of the first color component in the RGB color space results in the chromaticity component in the luminance and chromaticity color space being below the first value of the chromaticity component in the luminance and chromaticity color space and above the second value of the chromaticity component in the luminance and chromaticity color space.

6. The method according to claim 5 , wherein

setting the upper limit comprises:

setting an upper u′ limit of a green component in the RGB color space to a maximum value of the green component in the RGB color space if the maximum value of the green component in the RGB color space results in a u′ component in a luminance and chromaticity (Yu′v′) color space that is below a first value of the u′ component in the Yu′v′ color space and above a second value of the u′ component in the Yu′v′ color space and otherwise calculating the upper u′ limit based on the color of the first pixel and one of the first value of the u′ component in the Yu′v′ color space and the second value of the u′ component in the Yu′v′ color space; and

setting an upper v′ limit of the green component in the RGB color space to the maximum value of the green component in the RGB color space if the maximum value of the green component in the RGB color space results in a v′ component in the Yu′v′ color space that is below a first value of the v′ component in the Yu′v′ color space and above a second value of the v′ component in the Yu′v′ color space and otherwise calculating the upper v′ limit based on the color of the first pixel and one of the first value of the v′ component in the Yu′v′ color space and the second value of the v′ component in the Yu′v′ color space;

setting the lower limit comprises:

setting a lower u′ limit of the green component in the RGB color space to a minimum value of the green component in the RGB color space if the minimum value of the green component in the RGB color space results in the u′ component in the Yu′v′ color space being below the first value of the u′ component in the Yu′v′ color space and above the second value of the u′ component in the Yu′v′ color space and otherwise calculating the lower u′ limit based on the color of the first pixel and one of the first value of the u′ component in the Yu′v′ color space and the second value of the u′ component in the Yu′v′ color space; and

setting a lower v′ limit of the green component in the RGB color space to the minimum value of the green component in the RGB color space if the minimum value of the green component in the RGB color space results in the v′ component in the Yu′v′ color space being below the first value of the v′ component in the Yu′v′ color space and above the second value of the v′ component in the Yu′v′ color space and otherwise calculating the lower v′ limit based on the color of the first pixel and one of the first value of the v′ component in the Yu′v′ color space and the second value of the v′ component in the Yu′v′ color space; and

the method comprises obtaining a filtered value of the green component for the first pixel which is larger than or equal to a largest lower limit of the lower u′ limit and the lower v′ limit and lower than or equal to a smallest of the upper u′ limit and upper v′ limit.

7. The method according to claim 1 , wherein obtaining the filtered value of the first color component comprises:

calculating the filtered value of the first color component for the first pixel based on respective values of the first color component for the first pixel and neighboring pixels in the picture; and

clamping the filtered value between the lower limit and the upper limit so that the filtered value is larger than or equal to the lower limit and lower than or equal to the upper limit.

8. The method according to claim 7 , wherein calculating the filtered value comprises calculating the filtered value of the first color component for the first pixel as an average of respective values of the first color component for the pixel and the neighboring pixels of the first pixel in the picture.

9. A device for processing a first pixel in a picture, the first pixel having a color that is represented by a first color component, a second color component, and a third color component in a first color space, the device comprising:

a processor; and

a memory comprising instructions executable by the processor, wherein the device is configured to:

obtain a value of a fourth color component in a second color space, which is generated using at least a maximum value of the first color component in the first color space;

set an upper limit of the first color component of the first pixel in the first color space to a first fixed value if the value of the fourth color component is below a first value of the fourth color component in the second color space and above a second value of the fourth color component in the second color space;

obtain another value of the fourth color component in the second color space, which is generated using at least a minimum value of the first color component in the first color space;

set a lower limit of the first color component in the first color space to a second fixed value if said another value of the fourth color component is below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space; and

obtain a filtered value of the first color component for the first pixel which is larger than or equal to the lower limit and lower than or equal to the upper limit.

10. The device according to claim 9 , wherein the device is configured to:

set the upper limit of the first color component in the first color space to the maximum value of the first color component in the first color space if the maximum value of the first color component in the first color space results in the fourth color component in the second color space being below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space; and

set the lower limit of the first color component in the first color space to the minimum value of the first color component in the first color space if the minimum value of the first color component in the first color space results in the fourth color component in the second color space being below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space.

11. The device according to claim 9 , wherein the device is configured to:

calculate, if the maximum value of the first color component in the first color space results in the fourth color component in the second color space being above the first value of the fourth color component in the second color space or below the second value of the fourth color component in the second color space, the upper limit based on the color of the first pixel and one of the first value of the fourth color component in the second color space and the second value of the fourth color component in the second color space; and

calculate, if the minimum value of the first color component in the first color space results in the fourth color component in the second color space being above the first value of the fourth color component in the second color space or below the second value of the fourth color component in the second color space, the lower limit based on the color of the first pixel and one of the first value of the fourth color component in the second color space and the second value of the fourth color component in the second color space.

12. The device according to claim 9 , wherein the device is configured to:

set the upper limit of the first color component in a red, green, blue (RGB) color space to the first fixed value if the maximum value of the first color component in the RGB color space results in a chromaticity component in a luminance and chromaticity color space that is below a first value of the chromaticity component in the luminance and chromaticity color space and above a second value of the chromaticity component in the luminance and chromaticity color space; and

set the lower limit of the first color component in the RGB color space to the second fixed value if the minimum value of the first color component in the RGB color space results in the chromaticity component in the luminance and chromaticity color space being below the first value of the chromaticity component in the luminance and chromaticity color space and above the second value of the chromaticity component in the luminance and chromaticity color space.

13. The device according to claim 12 , wherein the device is configured to:

set an upper u′ limit of a green component in the RGB color space to a maximum value of the green component in the RGB color space if the maximum value of the green component in the RGB color space results in a u′ component in a luminance and chromaticity (Yu′v′) color space that is below a first value of the u′ component in the Yu′v′ color space and above a second value of the u′ component in the Yu′v′ color space and otherwise calculate the upper u′ limit based on the color of the first pixel and one of the first value of the u′ component in the Yu′v′ color space and the second value of the u′ component in the Yu′v′ color space;

set a lower u′ limit of the green component in the RGB color space to a minimum value of the green component in the RGB color space if the minimum value of the green component in the RGB color space results in the u′ component in the Yu′v′ color space being below the first value of the u′ component in the Yu′v′ color space and above the second value of the u′ component in the Yu′v′ color space and otherwise calculate the lower u′ limit based on the color of the first pixel and one of the first value of the u′ component in the Yu′v′ color space and the second value of the u′ component in the Yu′v′ color space;

set an upper v′ limit of the green component in the RGB color space to the maximum value of the green component in the RGB color space if the maximum value of the green component in the RGB color space results in a v′ component in the Yu′v′ color space that is below a first value of the v′ component in the Yu′v′ color space and above a second value of the v′ component in the Yu′v′ color space and otherwise calculate the upper v′ limit based on the color of the first pixel and one of the first value of the v′ component in the Yu′v′ color space and the second value of the v′ component in the Yu′v′ color space;

set a lower v′ limit of the green component in the RGB color space to the minimum value of the green component in the RGB color space if the minimum value of the green component in the RGB color space results in the v′ component in the Yu′v′ color space being below the first value of the v′ component in the Yu′v′ color space and above the second value of the v′ component in the Yu′v′ color space and otherwise calculate the lower v′ limit based on the color of the first pixel and one of the first value of the v′ component in the Yu′v′ color space and the second value of the v′ component in the Yu′v′ color space; and

obtain a filtered value of the green component for the first pixel which is larger than or equal to a largest lower limit of the lower u′ limit and the lower v′ limit and lower than or equal to a smallest of the upper u′ limit and upper v′ limit.

14. The device according to claim 9 , wherein the device is configured to:

calculate the filtered value of the first color component for the first pixel based on respective values of the first color component for the first pixel and neighboring pixels in the picture; and

clamp the filtered value between the obtained lower limit and the obtained upper limit so that the filtered value is larger than or equal to the obtained lower limit and lower than or equal to the obtained upper limit.

15. The device according to claim 14 , wherein the device is configured to calculate the filtered value of the first color component for the first pixel as an average of respective values of the first color component for the pixel and the neighboring pixels of the first pixel in the picture.

16. The device according to claim 9 , wherein the processor is operative to:

set the upper limit of the first color component;

set the lower limit of the first color component; and

obtain the filtered value of the first color component.

17. A user equipment comprising a device according to claim 9 , wherein the user equipment is selected from a group consisting of a mobile telephone, a tablet, a desktop, a notebook, a multimedia player, a video streaming server, a set-top box and a computer.

18. A device for encoding a first pixel having a color in a first color space in a picture, the first pixel having a color that is represented by a first color component, a second component, and a third component in the first color space, comprising:

a processor; and

a memory comprising instructions executable by the processor, wherein the processor is operative to:

obtain a value of a fourth color component in a second color space, which is generated using at least a maximum value of the first color component in the first color space;

set an upper limit of the first color component of the first pixel in the first color space to a first fixed value if the value of the fourth color component is below a first value of the fourth color component in the second color space and above a second value of the fourth color component in the second color space;

obtain another value of the fourth color component in the second color space, which is generated using at least a minimum value of the first color component in the first color space;

set a lower limit of the first color component in the first color space to a second fixed value if said another value of the fourth color component is below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space;

obtain a filtered value of the first color component for the first pixel which is larger than or equal to the lower limit and lower than or equal to the upper limit;

calculate a luma component value and chroma component values for the first pixel based on a smoothed value of the color in the first color space comprising a value of the first color component in the color in the first color space replaced by the filtered value of the first color component; and

encode the luma component value and subsampled chroma component values.

19. A computer program product comprising a non-transitory computer readable medium storing a computer program comprising instructions, which when executed by at least one processor, cause the at least one processor to:

set, for a first pixel in a picture having a color that is represented by a first color component, a second component, and a third component in a first color space, an upper limit of a first color component of the first pixel in the first color space to a first fixed value if a value of a fourth color component in a second color space is below a first value of the fourth color component in the second color space and above a second value of the fourth color component in the second color space, wherein the value of the fourth color component in the second color space is generated using at least a maximum value of the first color component in the first color space;

set a lower limit of the first color component in the first color space to a second fixed value if another value of the fourth color component in the second color space is below the first value of the fourth color component in the second color space and above the second value of the fourth color component in the second color space, wherein said another value of the fourth color component in the second color space is generated using at least a minimum value of the first color component in the first color space; and

obtain a filtered value of the first color component for the first pixel which is larger than or equal to the lower limit and lower than or equal to the upper limit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2019
From: ANDERSSON, KENNETH; STRÖM, JACOB; WENNERSTEN, PER
To: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Reel/Frame 050769/0804 →
Continuity (2)
Provisional Application 62438786 · Dec 23, 2016
Related Publication 20190364288A1 · Nov 28, 2019