IP Library › Granted Patent US 8,406,314
Granted Patent B2
US 8,406,314 · App. 11/946,298 · Granted Mar 26, 2013

Two-dimensional DPCM with PCM escape mode

Inventors: Shawmin Lei (Camas, WA); Yeping Su (Vancouver, WA)
Assignee: Sharp Laboratories of America, Inc.
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 8,406,314
App. No.
11/946,298
Granted
Mar 26, 2013
Kind
B2
Abstract

Methods of, and devices, and systems for differential pulse code modulation (DPCM) having predictions and quantization parameters based on proximate lines of buffered quanta of information where pulse code modulation (PCM) is employed as a backup means.

Claims (93)

1. A method of processing a pixel of an array of pixels, the pixels each comprised of a plurality of pixel components, the method comprising:

buffering a first set of pixels according to a first array scan direction;

buffering a second set of pixels according to a second array scan direction;

encoding a current pixel for buffering to become a member of the second set of pixels,

wherein, for each current pixel component, the encoding comprises:

predicting a current pixel component based on a pixel component of a last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel;

differencing the predicted current pixel component and the current pixel component to generate a current pixel component difference; and

if the current pixel component difference exceeds a threshold, then

quantizing each current pixel component of the current pixel to generate a quantized current pixel and

combining the quantized current pixel with a pulse code modulation (PCM) indicator indicating a coding mode for transmission; and

if the current pixel component difference does not exceed the threshold, then

determining a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determining the quantization parameter of the current pixel for buffering, the determining based on: selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously quantized neighboring pixels wherein the coding modes of the one or more previously quantized neighboring pixels is concatenated to determine a quantization step; and

quantizing each current pixel component difference, based on the determined quantization parameter and the determined quantization step, to generate a quantized current pixel difference, and combining the quantized current pixel difference with a differential pulse code modulation (DPCM) indicator indicating a coding mode for transmission.

2. The method of claim 1 wherein the quantizing of each current pixel component difference is based on one or more differences between a pixel component of the last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel.

3. The method of claim 2 wherein the first set of pixels proximate to the current pixel comprises a first pixel, and wherein the first pixel is spatially abutting the current pixel.

4. The method of claim 3 wherein the first set of pixels proximate to the current pixel comprises a second pixel, and wherein the second pixel is spatially abutting the last buffered pixel and the first pixel of the first set of pixels.

5. The method of claim 4 wherein the quantizing is based on:

differencing at least two color components of at least three pixels of a set of pixels, wherein the set of pixels comprises: the last buffered pixel and two pixels of the first set of pixels spatially proximate to the current pixel;

determining a set of magnitudes for each color component based on a compared difference of at least two color components of the set of pixels; and

generating a quantized current pixel difference based on the quantized first pixel, wherein the first pixel is spatially abutting the current pixel.

6. The method of claim 2 wherein the first set of pixels proximate to the current pixel comprises a first pixel, and wherein the first pixel is spatially abutting the last buffered pixel.

7. The method of claim 6 wherein the first set of pixels proximate to the current pixel comprises a second pixel, and wherein the second pixel is spatially abutting the current pixel and the first pixel of the first set of pixels.

8. The method of claim 1 wherein the steps of quantizing each current pixel component of the current pixel to generate a quantized current pixel and combining the quantized current pixel with a pulse code modulation (PCM) indicator for transmission are executed if either: (a) the current pixel component difference exceeds a threshold or (b) the absolute value of DPCM quantization error exceeds the absolute value of PCM quantization error.

9. The method of claim 1 wherein the coding modes are updated in a mode buffer, the mode buffer comprising the coding modes of previously encoded pixels.

10. The method of claim 1 wherein the threshold is based on whether a value is accurately represented in an appropriate number of coding bits defined within a system.

11. The method of claim 1 wherein the quantization parameter indicates the exponent to which a base number is to be raised, thereby defining the quantization step.

12. A method of processing a pixel of an array of pixels, the pixels each comprised of a plurality of pixel components, the method comprising:

buffering a first set of pixels comprising decoded pixel components according to a first array scan direction;

buffering a second set of pixels comprising decoded pixel components according to a second array scan direction;

receiving data comprising a quantizing indicator and pixel data;

if the quantizing indicator is a pulse code modulation (PCM) indicator, then inverse quantizing the pixel data as a quantized current pixel;

if the quantizing indicator is a differential pulse code modulation (DPCM) indicator, then:

inverse quantizing the pixel data as a quantized current pixel component difference to generate an inverse quantized current pixel component difference;

determining a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determining the quantization parameter of the current pixel for buffering, the determining based on selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously inverse quantized neighboring pixels wherein the coding modes of the one or more previously inverse quantized neighboring pixels is concatenated to determine a quantization step;

predicting a current pixel component based on the determined quantization parameter, a decoded pixel component of a last buffered pixel of the second set of pixels, and a decoded pixel component of at least one pixel of the first set of pixels proximate to the current pixel;

summing the predicted current pixel component and the inverse quantized current pixel component difference to generate a current decoded pixel component; and

buffering the current decoded pixel component.

13. The method of claim 12 wherein the inverse quantizing of each current pixel component difference is based on one or more differences between a buffered decoded pixel component of the last buffered decoded pixel of the second set of pixels and a buffered decoded pixel component of at least one pixel of the first set of buffered pixels proximate to the current pixel.

14. An apparatus for processing a pixel of an array of pixels, the pixels each comprised of a plurality of pixel components, the apparatus comprising:

a processing subsystem and addressable memory wherein the addressable memory is adapted to buffer a first set of pixels according to a first array scan direction and a second set of pixels according to a second array scan direction; and

wherein the processing subsystem is adapted to:

encode a current pixel for buffering to become a member of the second set of pixels, wherein, for each current pixel component, the processing subsystem is adapted to:

predict a current pixel component based on a pixel component of a last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel;

difference the predicted current pixel component and the current pixel component to generate a current pixel component difference; and

if the current pixel component difference exceeds a threshold, then

quantize each current pixel component of the current pixel to generate a quantized current pixel and

combine the quantized current pixel with a pulse code modulation (PCM) indicator indicating a coding mode for transmission; and

if the current pixel component difference does not exceed the threshold, then

determine a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determine the quantization parameter of the current pixel for buffering, the determining based on selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously quantized neighboring pixels wherein the coding modes of the one or more previously quantized neighboring pixels is concatenated to determine a quantization step; and

quantize each current pixel component difference, based on the determined quantization parameter and the determined quantization step, to generate a quantized current pixel difference, and combine the quantized current pixel difference with a differential pulse code modulation (DPCM) indicator indicating a coding mode for transmission.

15. The apparatus of claim 14 wherein the processing subsystem is further adapted to quantize each current pixel component difference based on one or more differences between a pixel component of the last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel.

16. The apparatus of claim 14 wherein the processing subsystem is further adapted to quantize each current pixel component of the current pixel to generate a quantized current pixel and combining the quantized current pixel with a pulse code modulation (PCM) indicator for transmission if either: (a) the current pixel component difference exceeds a threshold or (b) the absolute value of DPCM quantization error exceeds the absolute value of PCM quantization error.

17. An apparatus for processing a pixel of an array of pixels, the pixels each comprised of a plurality of pixel components, the apparatus comprising:

a processing subsystem and addressable memory wherein the addressable memory is adapted to buffer: a first set of pixels comprising decoded pixel components according to a first array scan direction; a second set of pixels comprising decoded pixel components according to a second array scan direction; and a current decoded pixel component; and

wherein the processing subsystem is adapted to:

receive data comprising an encoding indicator and pixel data;

inverse quantize the pixel data as a quantized current pixel if the inverse quantizing indicator is a pulse code modulation (PCM) indicator; and

if the inverse quantizing indicator is a differential pulse code modulation (DPCM) indicator, then the processing subsystem is adapted to:

inverse quantize the pixel data as a quantized current pixel component difference to generate a inverse quantized current pixel component difference;

determine a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determine the quantization parameter of the current pixel for buffering based on selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously inverse quantized neighboring pixels wherein the coding modes of the one or more previously inverse quantized neighboring pixels is concatenated to determine a quantization step;

predict a current pixel component based on the determined quantization parameter, a decoded pixel component of a last buffered pixel of the second set of pixels, and a decoded pixel component of at least one pixel of the first set of pixels proximate to the current pixel; and

sum the predicted current pixel component and the decoded current pixel component difference to generate a current decoded pixel component.

18. The apparatus of claim 17 wherein the processing subsystem is adapted to inverse quantize each current pixel component difference based on one or more differences between a buffered decoded pixel component of the last buffered decoded pixel of the second set of pixels and a buffered decoded pixel component of at least one pixel of the first set of buffered pixels proximate to the current pixel.

19. A system for processing a pixel of an array of pixels, the pixels each comprised of a plurality of pixel components, the system comprising:

at least one processing subsystem having addressable memory wherein the addressable memory is adapted to buffer a first set of pixels according to a first array scan direction and a second set of pixels according to a second array scan direction; and

wherein the at least one processing subsystem is adapted to:

encode a current pixel for buffering to become a member of the second set of pixels, wherein, for each current pixel component, the processing subsystem is adapted to:

predict a current pixel component based on a pixel component of a last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel;

difference the predicted current pixel component and the current pixel component to generate a current pixel component difference; and

if the current pixel component difference exceeds a threshold, then

quantize each current pixel component of the current pixel to generate a quantized current pixel and

combine the quantized current pixel with a pulse code modulation (PCM) indicator indicating a coding mode for transmission; and

if the current pixel component difference does not exceed the threshold, then

determine a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determine the quantization parameter of the current pixel for buffering, the determining based on selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously quantized neighboring pixels wherein the coding modes of the one or more previously quantized neighboring pixels is concatenated to determine a quantization step; and

quantize each current pixel component difference, based on the determined quantization parameter and the determined quantization step, to generate a quantized current pixel difference, and combine the quantized current pixel difference with a differential pulse code modulation (DPCM) indicator indicating a coding mode for transmission; and

wherein the addressable memory is further adapted to buffer: the first set of pixels comprising decoded pixel components according to the first array scan direction; the second set of pixels comprising decoded pixel components according to the second array scan direction; and a current decoded pixel component; and

wherein the at least one processing subsystem is further adapted to:

receive data comprising a quantizing indicator and pixel data;

inverse quantize the pixel data as a quantized current pixel if the quantizing indicator is a pulse code modulation (PCM) indicator; and

if the quantizing indicator is a differential pulse code modulation (DPCM) indicator, then the processing subsystem is adapted to:

inverse quantize the pixel data as a quantized current pixel component difference to generate an inverse quantized current pixel component difference;

determine a set of magnitudes of differenced buffered pixel components of the first set of pixels and the second set of pixels;

determine the quantization parameter of the current pixel for buffering based on selecting the larger in magnitude of the determined set of pixel component magnitudes and coding modes of one or more previously inverse quantized neighboring pixels wherein the coding modes of the one or more previously inverse quantized neighboring pixels is concatenated to determine a quantization step;

predict a current pixel component based on the determined quantization parameter, a decoded pixel component of a last buffered pixel of the second set of pixels, and a decoded pixel component of at least one pixel of the first set of pixels proximate to the current pixel; and

sum the predicted current pixel component and the inverse quantized current pixel component difference to generate a current decoded pixel component.

20. The system of claim 19 wherein the at least one processing subsystem is further adapted to quantize each current pixel component difference based on one or more differences between a pixel component of the last buffered pixel of the second set of pixels and a pixel component of at least one pixel of the first set of pixels proximate to the current pixel.

21. The system of claim 19 wherein the at least one processing subsystem is further adapted to inverse quantize each current pixel component difference based on one or more differences between a buffered decoded pixel component of the last buffered inverse quantized pixel of the second set of pixels and a buffered decoded pixel component of at least one pixel of the first set of buffered pixels proximate to the current pixel.

22. The system of claim 19 wherein the at least one processing subsystem is further adapted to quantize each current pixel component of the current pixel to generate a quantized current pixel and combining the quantized current pixel with a pulse code modulation (PCM) indicator for transmission if either: (a) the current pixel component difference exceeds a threshold or (b) the absolute value of DPCM quantization error exceeds the absolute value of PCM quantization error.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2013
From: SHARP LABORATORIES OF AMERICA, INC.
To: SHARP KABUSHIKI KAISHA
Reel/Frame 031047/0682 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2007
From: LEI, SHAWMIN; SU, YEPING
To: SHARP LABORATORIES OF AMERICA, INC.
Reel/Frame 020169/0854 →
Continuity (1)
Related Publication 20090135921A1 · May 28, 2009