IP Library Granted Patent US 7,038,814
Granted Patent B2
US 7,038,814 · App. 10/104,963 · Granted May 2, 2006

Fast digital image dithering method that maintains a substantially constant value of luminance

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 7,038,814
App. No.
10/104,963
Granted
May 2, 2006
Kind
B2
Abstract

A method and system are disclosed for displaying Y-bit coded RGB image data that is received as X-bit coded RGB or YCbCr image data, where X>Y. The method includes receiving X-bit coded image data, where each color channel comprises m-bits; arithmetically processing the image data to include dithering noise values that result in maintaining the luminance of the image data substantially constant; converting the YCbCr image data to RGB image data, and quantizing the image data to Y-bit coded RGB image data where each color channel comprises n-bits. For example, X=24 and Y=12. The step of arithmetically processing includes, for the RGB case and for each pixel, generating an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size; adding the random number to each of the Red and Blue color channels, and subtracting the random number from the Green color channel; and truncating and clipping the result in each color channel. Preferably, Q=2 (m−n) . Preferably, the step of truncating truncates the value in each color channel to n-bits, and clipping clips the truncated values to lie in the range of [0 . . . 2 n −1]. For the YCbCr case the processing step adds the random number to each of the Cb and Cr color channels, and converts the YCbCr color channels to RGB color channels. In a most preferred embodiment the step of receiving receives the X-bit coded RGB image data from a RF cellular telecommunications channel, and the steps of quantizing and arithmetically processing are performed within a cellular telephone.

Claims (40)

1. A method for displaying Y-bit coded Red, Green, Blue RGB image data that is received as X-bit coded image data, where X>Y, comprising:

receiving X-bit coded image data, where each color channel comprises m-bits;

arithmetically processing the received image data to include dithering noise values that result in maintaining the luminance of the image data substantially constant; and

quantizing the received image data to Y-bit coded RGB image data, where each color channel comprises n-bits.

2. A method as in claim 1 , where X=24 and Y=12.

3. A method as in claim 1 , where the X-bit coded image data is received as RGB image data, and the step of arithmetically processing comprises, for each pixel:

generating an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size;

adding the random number to each of the Red and Blue color channels, and subtracting the random number from the Green color channel; and

truncating and clipping the result in each color channel.

4. A method as in claim 3 , where Q=2 (m−n) .

5. A method as in claim 4 , where Q=16.

6. A method as in claim 3 , where truncating truncates the value in each color channel to n-bits, and where clipping clips the truncated values to lie in the range of [0 . . . 2 n −1].

7. A method as in claim 1 , where the X-bit coded image data is received as YCbCr image data, and the step of arithmetically processing comprises, for each pixel:

generating an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size;

adding the random number to each of the Cb and Cr color channels;

converting the resultant values to RGB image data; and

truncating and clipping the result in each color channel.

8. A method as in claim 7 , where Q=2 (m−n) .

9. A method as in claim 8 , where Q=16.

10. A method as in claim 7 , where truncating truncates the value in each color channel to n-bits, and where clipping clips the truncated values to lie in the range of [0 . . . 2 n −1].

11. A method as in claim 1 , where the step of receiving receives the X-bit coded image data from a wireless communication channel.

12. A method as in claim 1 , where the step of receiving receives the X-bit coded image data from a radio frequency communication channel, and where the steps of arithmetically processing and quantizing are performed within a mobile station.

13. A method as in claim 1 , where the step of receiving receives the X-bit coded image data from a radio frequency cellular telecommunications channel, and where the steps of arithmetically processing and quantizing are performed within a cellular telephone.

14. A system for displaying Y-bit coded Red, Green, Blue (RGB) image data that is received as X-bit coded image data, where X>Y, comprising a receiver for receiving X-bit coded image data where each color channel comprises m-bits; an arithmetic processor for processing the quantized image data to include dithering noise values that result in maintaining the luminance of the quantized image data substantially constant; and a quantizer having an input coupled to an output of the processor for quantizing the image data to Y-bit coded RGB image data, where each color channel comprises n-bits.

15. A system as in claim 14 , where X=24 and Y=12.

16. A system as in claim 14 , where the X-bit coded image data is received as RGB image data, and where said processor operates to generate an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size; to add the random number to each of the Red and Blue color channels, and to subtract the random number from the Green color channel; and to truncate and clip the result in each color channel.

17. A system as in claim 16 , where Q=2 (m−n) .

18. A system as in claim 16 , where Q=16.

19. A system as in claim 16 , where truncating truncates the value in each color channel to n-bits, and where clipping clips the truncated values to lie in the range of [0 . . . 2 n −1].

20. A system as in claim 14 , where the X-bit coded image data is received as YCbCr image data, and where said processor operates to generate an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size; to add the random number to each of the Cb and Cr color channels, and to truncate and clip the result in each color channel.

21. A system as in claim 20 , where Q=2 (m−n) .

22. A system as in claim 20 , where Q=16.

23. A system as in claim 20 , where truncating truncates the value in each color channel to n-bits, and where clipping clips the truncated values to lie in the range of [0 . . . 2 n −1].

24. A system as in claim 14 , where the receiver receives the X-bit coded image data from a wireless communication channel.

25. A system as in claim 14 , where the receiver receives the X-bit coded image data from a radio frequency communication channel, and where the processor is a part of a mobile station.

26. A system as in claim 14 , where the receiver receives the X-bit coded image data from a radio frequency cellular telecommunications channel, and where the processor is a part of a cellular telephone.

27. A wireless device comprising a display for displaying Y-bit coded Red, Green, Blue (RGB) pixels and a receiver for receiving X-bit coded RGB color channel data from a radio frequency communications channel, where X>Y and where each received color channel comprises m-bits, circuitry that operates, for each pixel, to generate an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size; to add the random number to each of the Red and Blue color channels, and to subtract the random number from the Green color channel; and to quantize and clip the result in each color channel to form the Y-bit coded RGB color channel data, where each quantized RGB color channel comprises n-bits.

28. A wireless device as in claim 27 , where Q=2 (m−n) , where said circuitry truncates the value in each color channel to n-bits and clips the truncated values to lie in the range of [0 . . . 2 n −1].

29. A wireless device comprising a display for displaying Y-bit coded Red, Green, Blue (RGB) pixels and a receiver for receiving X-bit coded YCbCr color channel data from a radio frequency communications channel, where x>Y and where each received color channel comprises m-bits, circuitry that operates, for each pixel, to generate an integer random number lying in the range of [−Q/2 . . . Q/2], where Q is a quantization step size; to add the random number to each of the Cb and Cr color channels, to convert the YCbCr color channels to RGB color channels, and to quantize and clip the result in each color channel to form the Y-bit coded RGB color channel data, where each quantized RGB color channel comprises n-bits.

30. A wireless device as in claim 29 , where Q=2 (m−n) , where said circuitry truncates the value in each color channel to n-bits and clips the truncated values to lie in the range of [0 . . . 2 n −1].

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 1, 2023
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CONVERSANT WIRELESS LICENSING LTD.
Reel/Frame 063492/0416 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2021
From: CPPIB CREDIT INVESTMENTS INC.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 055546/0485 →
AMENDED AND RESTATED U.S. PATENT SECURITY AGREEMENT (FOR NON-U.S. GRANTORS) Recorded Aug 22, 2018
From: CONVERSANT WIRELESS LICENSING S.A R.L.
To: CPPIB CREDIT INVESTMENTS, INC.
Reel/Frame 046897/0001 →
CHANGE OF NAME Recorded Sep 11, 2017
From: CORE WIRELESS LICENSING S.A.R.L.
To: CONVERSANT WIRELESS LICENSING S.A R.L.
Reel/Frame 043814/0125 →
UCC FINANCING STATEMENT AMENDMENT - DELETION OF SECURED PARTY Recorded Aug 30, 2016
From: NOKIA CORPORATION
To: MICROSOFT CORPORATION
Reel/Frame 039872/0112 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2011
From: 2011 INTELLECTUAL PROPERTY ASSET TRUST
To: CORE WIRELESS LICENSING S.A.R.L.
Reel/Frame 027415/0106 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2011
From: NOKIA CORPORATION
To: NOKIA 2011 PATENT TRUST
Reel/Frame 027120/0608 →
CHANGE OF NAME Recorded Oct 26, 2011
From: NOKIA 2011 PATENT TRUST
To: 2011 INTELLECTUAL PROPERTY ASSET TRUST
Reel/Frame 027121/0353 →
SHORT FORM PATENT SECURITY AGREEMENT Recorded Sep 13, 2011
From: CORE WIRELESS LICENSING S.A.R.L.
To: NOKIA CORPORATION; MICROSOFT CORPORATION
Reel/Frame 026894/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2002
From: HUOVINEN, JAAKKO
To: NOKIA CORPORATION
Reel/Frame 012731/0644 →