IP Library Granted Patent US 7,656,319
Granted Patent B2
US 7,656,319 · App. 11/632,486 · Granted Feb 2, 2010

Context-based encoding and decoding of signals

Assignee: Agency for Science, Technology and Research
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,656,319
App. No.
11/632,486
Granted
Feb 2, 2010
Kind
B2
Abstract

A system for the context-based for the context-based encoding of an input signal includes a domain transform module and a context-based coding module. The domain transform module is operable to convert the input signal into a sequence of transform coefficients c[i]. The context-based coding module includes a bit-plane scanning module, and context modeling module, and a statistical encoding module. The bit-plane scanning module is operable to produce a bit-plane symbol bps [i,bp] for each transform coefficient c[i] and each bit-plane [bp]. The context modeling module is operable to assign one or more context values to each of the received bit plane symbols bps [i,bp]. The statistical coding module is operable to code each of the bit plane symbols bps [i,bp] as a function of one or more of the corresponding context values to produce a context-based encoded symbol stream.

Claims (500)

1. A context-based encoder, comprising:

a domain transform module having an input coupled to receive an input signal and an output, the domain transform module operable to convert the input signal into a sequence of transform coefficients c[i]; and

a context-based coding module, comprising:

a bit-plane scanning module having an input coupled to receive the sequence of transform coefficients and operable to produce a bit-plane symbol bps[i,bp] for each transform coefficient c[i] and each bit-plane [bp];

a context modeling module having an input coupled to receive the bit-plane symbols bps [i,bp] and operable to assign one or more context values to each of the received bit plane symbols bps [i,bp], each assigned context value obtained from a context model; and

a statistical coding module having a first input coupled to receive each of the bit plane symbols bps [i,bp], a second input coupled to receive the corresponding one or more context values and an output, the statistical coding module operable to code each of the bit plane symbols bps [i,bp] as a function of one or more of the corresponding context values to produce a context-based encoded symbol stream,

wherein the one or more context models comprises a distance-to-lazy bit-plane context D2L[bp], the context value of which is determined according to a predefined relationship between the bit plane number [bp] and a predetermined coding parameter [lazy_bp].

2. The context-based encoder of claim 1 , wherein the one or more context models comprises a frequency band context FB[i], the context value of which is determined according to the frequency location of the corresponding transform coefficient c[i].

3. The context-based encoder of claim 1 , wherein the one or more context models comprises both the frequency band context and the distance-to-lazy bit-plane context, and wherein the statistical coding module is operable to code each of the bit plane symbols bps[i,bp] as a function of the corresponding frequency band context value and the distance-to-lazy bit-plane context value.

4. The context-based encoder of claim 3 , wherein the one or more context models further comprises a significance state context sig_state[i,bp], the context value of which is determined according to a predefined correlation in amplitude values for adjacent transform coefficients c[i−1] and c[i] along bit plane [bp].

5. The context-based encoder of claim 4 , wherein the statistical coding module is operable to code each of the bit plane symbols bps [i,bp] as a function of the corresponding frequency band context value, the distance-to-lazy bit-plane context value and the significance state context value.

6. The context-based encoder of claim 1 , further comprising:

a core encoding module having an input coupled to receive each of the transform coefficients c[i], the core encoder operable quantize at a predefined interval interval[i] and encode each of the transform coefficients c[i] to produce a core bit stream; and

a error mapping module having an first input coupled to receive each of the transform coefficients c[i], a second input coupled to receive the core bit stream, the error mapping module operable to remove the core bit stream from the stream of transform coefficients c[i] to produce a residual signal of coefficients e[i]; and

a multiplexer,

wherein the context-based encoder is operable to receive the residual signal, and to produce, in response, a context-based encoded residual signal, and wherein the multiplexer includes a first input coupled to receive the core bit stream, a second input coupled to receive the context-based encoded residual signal, and an output, the multiplexer operable to combine the core bit stream and the context based encoded residual signal onto a compressed bit stream output from the multiplexer.

7. The context-based encoder of claim 6 , wherein the one or more context models further comprises a quantization interval context QI[i,bp], the context value of which is determined as a function of the quantization interval.

8. The context-based encoder of claim 7 , wherein the statistical coding module is operable to code each of the bit plane symbols bps [i,bp] as a function of the corresponding frequency band context value, the distance-to-lazy bit-plane context value, the significance state context value, and the quantization interval context value.

9. The context-based encoder of claim 8 , wherein the frequency band context value FB[i] comprises:

FB

[

i

]

=

{

0

For

c

[

i

]

<

4

KHz

1

For

c

[

i

]

4

-

11

KHz

2

For

c

[

i

]

>

11

KHz

.

10. The context-based encoder of claim 8 , wherein the distance-to-lazy bit-plane context value D2L[bp] comprises:

D 2 L ( bp )= bp −lazy — bp.

11. The context-based encoder of claim 8 , wherein the significance state context value sig_state[i, bp] comprises:

sig_state

(

i

,

bp

)

=

{

0

c

[

i

]

is

insignificant

before

bitplane

bp

1

c

[

i

]

is

significant

before

bitplane

bp

.

12. The context-based encoder of claim 8 , wherein the quantization interval context value QI[i, bp] comprises:

QI

(

i

,

bp

)

=

{

0

,

e

^

[

i

]

+

2

bp

+

1

interval

[

i

]

1

,

e

^

[

i

]

+

2

bp

interval

[

i

]

<

e

^

[

i

]

+

2

bp

+

1

2

,

interval

[

i

]

<

e

^

[

i

]

+

2

bp

where ê[i] is the partially reconstructed value for e[i] with all the bit-plane symbols received before b[i,bp].

13. A method for the context-based encoding of a signal, the method comprising:

domain transforming an input signal into a plurality of transform coefficients; and

applying context based encoding to the transformed coefficients to produce a coded output bit stream, further comprising:

bit-plane scanning and coding the transform coefficients to produce a plurality of bit plane symbols;

defining one or more context models for the bit plan symbols;

assigning, using the defined one or more context models, a respective one or more context values for the bit plane symbols; and

statistical coding each of the bit plane symbols as a function of the one or more corresponding context values to produce a coded output bit stream,

wherein defining one or more context models comprises defining a distance-to-lazy bit-plane context model, the context value of which is determined according to a predefined relationship between the bit plane number of the corresponding bit plane symbol and a predetermined coding parameter.

14. The method of claim 13 , wherein defining one or more context models comprises defining a frequency band context model, the context value of which is determined according to the frequency location of the corresponding transform coefficient.

15. The method of claim 14 ,

wherein defining one or more context models comprises defining both the frequency band context model and the distance-to-lazy bit-plane context model,

wherein assigning one or more context values comprises assigning a frequency band context value, a distance-to-lazy bit-plane context value to the corresponding bit plane symbol, and

wherein statistical coding each bit plane symbol comprises statistically coding the bit plane symbol as a function of both the frequency band context value and the distance-to-lazy bit-plane context value.

16. The method of claim 15 , wherein defining one or more context models comprises defining a significance state context model, the context value of which is determined according to a predefined correlation in amplitude values for adjacent transform coefficients.

17. The method of claim 16 ,

wherein assigning one or more context values comprises assigning a frequency band context value, a distance-to-lazy bit-plane context value, and a significance state context value to the corresponding bit plane symbol, and

wherein statistical coding each bit plane symbol comprises statistically coding the bit plane symbol as a function of the frequency band context value, the distance-to-lazy bit-plane context value, and the significance state context value.

18. A method for the context-based encoding of a signal, the method comprising:

domain transforming an input signal into a plurality of transform coefficients;

encoding the transform coefficients to produce a core bit stream, the encoding comprising quantizing the transform coefficients at a predefined interval;

error mapping the transform coefficients against the core bit stream to produce a stream of residual coefficients;

applying context-based encoding to the residual coefficient stream to produce a coded residual output bit stream, further comprising:

bit-plane scanning the residual coefficients to produce a plurality of residual bit plane symbols;

defining one or more context models for the residual bit plan symbols;

assigning, using the defined one or more context models, a respective one or more context values for the residual bit plane symbols; and

coding each of the residual bit plane symbols as a function of the one or more corresponding context values to produce a coded output bit stream,

wherein defining one or more context models comprises defining a quantization interval context model, the context value of which is determined as a function of the predefined quantization interval.

19. The method of claim 18 , wherein defining one or more context models further comprises:

defining a frequency band context model, the context value of which is determined according to the frequency location of the corresponding transform coefficient;

defining a distance-to-lazy bit-plane context model, the context value of which is determined according to a predefined relationship between the bit plane number of the corresponding bit plane symbol and a predetermined coding parameter; and

defining a significance state context model, the context value of which is determined according to a predefined correlation in amplitude values for adjacent transform coefficients.

20. The method of claim 19 ,

wherein assigning one or more context values comprises assigning a frequency band context value, a distance-to-lazy bit-plane context value, a significance state context value, and a quantization state context value to the corresponding bit plane symbol, and

wherein statistical coding each bit plane symbol comprises statistically coding the bit plane symbol as a function of the frequency band context value, the distance-to-lazy bit-plane context value, the significance state context value, and the quantization context value.

21. The method of claim 20 , wherein the frequency band context value FB[i] comprises:

FB

[

i

]

=

{

0

For

c

[

i

]

<

4

KHz

1

For

c

[

i

]

4

-

11

KHz

2

For

c

[

i

]

>

11

KHz

.

22. The method of claim 20 , wherein the distance-to-lazy bit-plane context value D2L[bp] comprises:

D 2 L ( bp )= bp −lazy — bp.

23. The method of claim 20 , wherein the significance state context value sig_state[i, bp] comprises:

sig_state

(

i

,

bp

)

=

{

0

c

[

i

]

is

insignificant

before

bitplane

bp

1

c

[

i

]

is

significant

before

bitplane

bp

.

24. The method of claim 20 , wherein the quantization interval context value QI[i, bp] comprises:

QI

(

i

,

bp

)

=

{

0

,

e

^

[

i

]

+

2

bp

+

1

interval

[

i

]

1

,

e

^

[

i

]

+

2

bp

interval

[

i

]

<

e

^

[

i

]

+

2

bp

+

1

2

,

interval

[

i

]

<

e

^

[

i

]

+

2

bp

where ê[i] is the partially reconstructed value for e[i] with all the bit-plane symbols received before b[i,bp].

25. A decoder operable to decode a context-based encoded stream comprising an input signal coded as a sequence of domain transformed coefficients c[i] along a bit-plane bp, the decoder comprising:

a context-based decoding module, comprising:

a statistical coding module having a first input coupled to receive a context-based encoded bit stream, a second input coupled to receive one or more context values and an output, the statistical coding module operable to decode, as a function of the one or more context values, the context-based encoded bit stream into decoded bit plane symbols bps'[i,bp], wherein the one or more context values comprises a distance-to-lazy bit-plane context value;

a bit-plane reconstruction module having an input to receive the decoded bit-plane symbols bps'[i,bp] and an output, the bit-plane reconstruction module operable to generate a stream of decoded coefficients c'[i]; and,

an inverse domain transform module having an input coupled to receive ordered stream of decoded coefficients c'[i] and an output, the domain transform module operable to convert the stream of decoded coefficients c'[i] into an output audio signal.

26. The context-based decoder of claim 25 , wherein the one or more context values further comprises a frequency band context value.

27. The context-based decoder of claim 25 , wherein the one or more context values further comprises a significance state context value.

28. The context-based decoder of claim 27 , wherein the one or more context values comprises a frequency band context value, a distance-to-lazy bit-plane context value and a significance state context value.

29. The context-based decoder of claim 25 , further comprising:

a demultiplexer, operable to receive a compressed bit stream comprising a context-based encoded residual stream and a core bit stream, the demultiplexer operable to separate and output the context-based encoded residual stream and the core bit stream,

wherein the context-based decoder is operable to receive the context-based encoded residual bit stream, the context-based decoder operable to produce, in response, decoded residual coefficients e'[i];

a core decoding module having an input coupled to a core bit stream, and an output, the core decoding module operable to decode the core bit stream into decoded core coefficients x'[i]; and

a error demapping module having an first input coupled to receive the core coefficients x'[i] and second input coupled to receive the decoded residual coefficients e'[i] and an output, the error demapping module operable to generate, in response, decoded transform coefficients c'[i],

the inverse domain transform module having an input coupled to receive the decoded transform coefficients c'[i] and operable to produce, in response, an output audio signal.

30. The context-based encoder of claim 29 , wherein the one or more context values comprises a quantization interval context value.

31. A method for decoding an encoded context-based bit stream, the encoded context-based bit stream comprising an input signal coded as a sequence of domain transformed coefficients c[i] along a bit-plane bp, the method comprising:

statistical decoding, as a function of one or more context values, the encoded context-based bit-stream into decoded bit-plane symbols bps'[i,bp], wherein the one or more context values comprises a distance-to-lazy bit-plane context value;

bit-plane reconstructing the decoded bit-plane symbols bps'[i,bp] into an ordered stream of decoded coefficients c'[i]; and

inverse transforming the ordered stream of decoded coefficients c'[i] into an output signal.

32. The method of claim 31 , wherein the one or more context values comprises a frequency band context value.

33. The method of claim 31 , wherein the one or more context values comprises a significance state context value.

34. A method for decoding an encoded bit stream comprising a core bit stream and a context-based encoded residual bit stream, the context-based encoded residual bit stream comprising an input signal coded as a sequence of domain transformed coefficients c[i] along a bit-plane bp, the method comprising:

decoding the core bit stream into decoded core coefficients x'[i];

decoding, as a function of one or more context values, the context-based encoded residual bit stream into decoded residual coefficients e'[i], the one or more context values comprising a distance-to-lazy bit-plane context value;

generating, for the decoded core coefficients x'[i] and decoded residual coefficients e[i], decoded transform coefficients c'[i]; and

inverse transforming the decoded coefficients c'[i] into an output signal.

35. The method of claim 34 , wherein the one or more context values comprises a frequency band context value.

36. The method of claim 34 , wherein the one or more context values includes a quantization interval context value.

37. The method of claim 34 , wherein decoding the context-based encoded residual bit stream comprises:

statistical decoding, as a function of the one or more context values, the context-based encoded residual bit-stream into decoded residual bit-plane symbols rbps'[i,bp];

bit-plane reconstructing the decoded residual bit-plane symbols rbps'[i,bp] into decoded residual coefficients e'[i].

38. A computer program product, resident of a computer-readable medium, which is operable to execute instruction code for the context-based encoding of data, the computer program product comprising:

instruction code to domain transform an input signal into a plurality of transform coefficients; and

instruction code to apply context-based encoding to the transformed coefficients to produce a coded output bit stream, further comprising:

instruction code to bit-plane scan and code the transform coefficients to produce a plurality of bit plane symbols;

instruction code to define one or more context models for the bit plan symbols;

instruction code to assign, using the defined one or more context models, a respective one or more context values for the bit plane symbols; and

instruction code to statistical code each of the bit plane symbols as a function of the one or more corresponding context values to produce a coded output bit stream,

wherein instruction code to define one or more context models comprises instruction code to define a distance-to-lazy bit-plane context model, the context value of which is determined according to a predefined relationship between the bit plane number of the corresponding bit plane symbol and a predetermined coding parameter.

39. The computer program product of claim 38 , wherein the instruction code to define one or more context models comprises instruction code to define a frequency band context model, the context value of which is determined according to the frequency location of the corresponding transform coefficient.

40. A computer program product, resident of a computer-readable medium, which is operable to execute instruction code for the context-based encoding of data, the computer program product comprising:

instruction code to domain transform an input signal into a plurality of transform coefficients;

instruction code to encode the transform coefficients to produce a core bit stream, the encoding comprising quantizing the transform coefficients at a predefined interval;

instruction code to error map the transform coefficients against the core bit stream to produce a stream of residual coefficients;

instruction code to apply context based encoding to the residual coefficient stream to produce a coded residual output bit stream, further comprising:

instruction code to bit-plane scan and code the residual coefficients to produce a plurality of residual bit plane symbols;

instruction code to define one or more context models for the residual bit plan symbols;

instruction code to assign, using the defined one or more context models, a respective one or more context values for the residual bit plane symbols; and

instruction code to code each of the residual bit plane symbols as a function of the one or more corresponding context values to produce a coded output bit stream,

wherein instruction code to define one or more context models comprises instruction code to define a quantization interval context model, the context value of which is determined as a function of the predefined quantization interval.

41. A computer program product, resident of a computer-readable medium, which is operable to execute instruction code for decoding a context-based encoded bit stream, the context-based encoded bit stream comprising an input signal coded as a sequence of domain transformed coefficients c[i] along a bit-plane bp, the computer program product comprising:

instruction code to statistical decode, as a function of one or more context values, the context-based encoded bit-stream into decoded bit-plane symbols bps'[i,bp], the one or more context values comprising a distance-to-lazy bit-plane context value;

instruction code to bit-plane reconstruct the decoded bit-plane symbols bps'[i,bp] into an ordered stream of decoded coefficients c'[i]; and

instruction code to inverse transform the ordered stream of decoded coefficients c'[i] into an output signal.

42. The computer program product of claim 41 , wherein the one or more context values comprises a frequency band context value.

43. A computer program product, resident of a computer-readable medium, which is operable to execute instruction code for decoding an encoded bit stream comprising a core bit stream and a context-based encoded residual bit stream, the context-based encoded residual bit stream comprising an input signal coded as a sequence of domain transformed coefficients c[i] along a bit-plane bp, the computer program product comprising:

instruction code to decode the core bit stream into decoded core coefficients x'[i];

instruction code to decode, as a function of one or more context values, the context-based residual bit stream into decoded residual coefficients e'[i], the one or more context values comprising a distance-to-lazy bit-plane context value;

instruction code to generate, for the decoded core coefficients x'[i] and decoded residual coefficients e[i], decoded transform coefficients c'[i]; and

instruction code to inverse transform the decoded coefficients c'[i] into an output signal.

44. The computer program product of claim 43 , wherein the one or more context values comprises a frequency band context model.

45. The computer program product of claim 43 , wherein the one or more context values includes a predefined quantization interval context value.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2007
From: YU, RONGSHAN; LIN, XIAO; RAHARDJA, SUSANTO
To: AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
Reel/Frame 020273/0443 →
Continuity (1)
Related Publication 20080094259A1 · Apr 24, 2008