CA2482994A1 - Method and system for multi-rate lattice vector quantization of a signal - Google Patents

Method and system for multi-rate lattice vector quantization of a signal Download PDF

Info

Publication number
CA2482994A1
CA2482994A1 CA002482994A CA2482994A CA2482994A1 CA 2482994 A1 CA2482994 A1 CA 2482994A1 CA 002482994 A CA002482994 A CA 002482994A CA 2482994 A CA2482994 A CA 2482994A CA 2482994 A1 CA2482994 A1 CA 2482994A1
Authority
CA
Canada
Prior art keywords
codebook
lattice
index
recited
providing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA002482994A
Other languages
French (fr)
Other versions
CA2482994C (en
Inventor
Bruno Bessette
Stephane Ragot
Jean-Pierre Adoul
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
VoiceAge Corp
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CA002388358A external-priority patent/CA2388358A1/en
Application filed by Individual filed Critical Individual
Priority to CA2482994A priority Critical patent/CA2482994C/en
Publication of CA2482994A1 publication Critical patent/CA2482994A1/en
Application granted granted Critical
Publication of CA2482994C publication Critical patent/CA2482994C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The present invention relates to a method and system for multi-rate lattice vector quantization of a source vector x representing a frame from a source signal to be used, for example, in digital transmission and storage systems. The multi-rate lattice quantization encoding method comprises the steps of associating to x a lattice point y in a unbounded lattice .LAMBDA.; verifyin g if y is included in a base codebook C derived from the lattice .LAMBDA.; if it is the case then indexing y in C so as to yield quantization indices. if not then extending the base codebook using, for example a Voronoi based extensio n method, yielding an extended codebook; associating to y a codevector c from the extended codebook, and indexing y in the extended codebook C. The extension technique allows to obtain higher bit rate codebooks from the base codebooks compared to quantization method and system from the prior art.</SD OAB>

Claims (39)

1. A multi-rate lattice quantization encoding method comprising:
i) providing a source vector × representing a frame from a source signal;
ii) providing a base codebook C derived from a lattice .LAMBDA.;
iii) associating to× a lattice point .gamma. in said lattice .LAMBDA.;
iv) if .gamma. is included in said base codebook C then indexing .gamma. in said base codebook C yielding quantization indices, and ending the method, if not then v) extending said base codebook, yielding an extended codebook;
vi) associating to .gamma. a codevector c from said extended codebook; and vii) indexing .gamma. in said extended codebook yielding quantization indices.
2. A method as recited in claim 1, wherein said extended codebook is represented by the expression mC + V, wherein C is said base codebook, V is an appropriate set of points in said lattice .LAMBDA..
3. A method as recited in claim 1, wherein in iii) said lattice point .gamma. in said lattice .LAMBDA. is selected as the nearest neighbor of × in said lattice .LAMBDA..
4. A method as recited in claim 1, wherein step v) includes providing an integer scaling factor m >= 2; step vi) includes computing a Voronoi codevector v corresponding to lattice point y using m and providing an offset; and vi) includes computing said codevector c using v and m.
5. A method as recited in claim 4, wherein in step v) said scaling factor m is set to 2 and step v) further includes computing a Voronoi index k; step vi) includes computing a Voronoi codevector v corresponding to said lattice point y using k and m.
6. A method as recited in claim 4, wherein in vi) said codevector c is computed as c = (y - v) / m, wherein m is an integer greater than or equal to 2.
7. A method as recited in claim 4, wherein step vi) further includes verifying if c is in said base codebook C, then a) step vii) further includes indexing y as a base codevector and multiplexing j and k yielding quantization indices, where j is the index of c in the base codebook C and k is the Voronoi index corresponding to the vector v; if not then b) b) increasing said scale factor and said order of said Vorenoi extension and repeating steps v) to vi).
8. A method as recited in claim 4, further comprising in vii) defining the lossless encoding of the codebook number corresponding to said extension order r and the index i of the codevector y in said base codebook, yielding an encoded codebook number n E and an encoded index i E; and multiplexing n E and i E.
9. A method as recited in claim 1, further comprising:
vii) storing said said quantization indices in storing means.
10. A method as recited in claim 1, further comprising:
vii) transmitting said said quantization indices over a communication channel.
11. A multi-rate lattice quantization encoding method comprising:
providing a source vector × representing a frame from a source signal;
providing finite subsets C and V of an infinite lattice L of points;
associating ×with y, y being one of said points in said lattice L; and indexing y into an integer codebook number n and an index i as y = mc + v, wherein c is an element of C, v is an element of V, and m is an integer greater than or equal to two;

wherein said subsets C and V of the lattice L, the value of m and the size of i being uniquely defined from n.
12. A method as recited in claim 11, wherein n is represented by a unary code.
13. A method as recited in claim 11, wherein said subset V
of an infinite lattice L is a Voronoi codebook and said index of v is a Voronoi index.
14. A method as recited in claim 11, wherein said index i is the concatenation of an index of c and an index of v.
15. A method as recited in claim 11, wherein y = [0 ... 0]
and n is set to a predetermined value when a number of allocated bits available in implementing the method is not sufficient to represent said source vector x in said infinite lattice L.
16. A method as recited in claim 11, wherein m = 2r; said subset C being predetermined; said codebook number n being equal to r plus a predetermined integer; r being an integer greater than or equal to 1.
17. A multi-rate lattice quantization encoding method comprising:
i) providing an 8-dimension source vector x representing a frame from a source signal;
ii) providing low-rate lattice base codebooks Q0, Q2, Q3, and Q4 derived from a RE8 lattice;
iii) determining a lattice point y in said lattice RE8 which is the nearest neighbor of x in said lattice RE8;
iv) if y is included in Q z, where z equals 0, 2, 3, or 4 then a) memorizing the number z and an identifier k a identifying one of absolute leaders defining Q z, b) if z > 0 then b1) indexing y in Q z yielding quantization indices, if m = 0 then b2) y is outputted as a zero vector, and c) ending the method;
v) providing an extension order r, and setting a scaling factor m to 2r;
vi) setting an iteration number iter= 0;
vii) computing a Voronoi index k of the lattice point y;
viii) computing a Voronoi codevector v corresponding to said lattice point y using k and m;
ix) computing a codevector c as c = (y- v) l m ;
x) if c is included in Q z, wherein z equals 2, 3, or 4, then aa) providing z and k a; if n= 2, setting n = 3; incrementing n by 2r; storing the values of k, c, z, and ka; dividing m by 2; decreasing r from 1; if not, then bb) multiplying m by 2; increasing r by 1;
xi) increasing said iteration number by 1;
xii) if said iteration number = 2 then aaa) retrieving said values of k, c, z, and k a; indexing j of c in Q3 or in Q4, given k a;
multiplexing j and k to form index i, where 1 is the index of the codevector y and j is the index of c ; if not then bbb) repeating steps vii) to xii).
18. A method as recited in claim 17, wherein in vii) k is computed as being:
k = where G RE8 is a generator matrix defined as and mod m(~ ) is the component wise modulo-m operation.
19. A method as recited in claim 17, further comprising down-scaling said source vector x as x/g prior to step iii); g being chosen so as to be greater then 1 and as to avoid an overrun in a memory used in implementing the method .
20. A multi-rate lattice quantization decoding method comprising:
i) providing a base codebook C derived from a lattice n;
ii) providing a codebook number n and a quantization index i;
iii) demultiplexing said quantization index i using said codebook number n;
iv) if n = 0 then decoding said index i using said base codebook, yielding a quantized vector y, and ending the method;
v) if n > 0 then a) providing a preselected Voronoi codebook V(r);
b) setting an extension order to r= n and a scale factor m = 2r;
c) demultiplexing indices j and k from i;

d) decoding j into c in said base codebook C;
e) decoding k into v in said Voronoi codebook V(r); and f) reconstructing a quantized vector as y = m c + v.
21. A method as recited in claim 21, wherein in ii) an encoded codebook number n E and an encoded index i E are first provided;
then a predetermined lossless coding technique is applied on said encoded codebook number n E to get said codebook number n and said quantization index i.
22. A decoding method as recited in claim 20, wherein said codebook number n and said index i are read from a communication channel.
23. A decoding method as recited in claim 20, wherein said codebook number n and said index i are read from storing means.
24. A multi-rate lattice quantization decoding method comprising:
providing finite subsets C and V of an infinite lattice L of points;
providing a codebook number n and an index i;
using n and i to reconstruct a vector y in a lattice L as y=mc + v , where m is an integer greater than or equal to two, and c and v are points included in L; said point c being reconstructed as an element of a finite subset C of L; said point v is reconstructed as an element of a finite subset V of L; indices of v and of c being computed using i;

wherein said subsets C and V of the lattice L, the value of m and the size of i being uniquely defined from n.
25. A method as recited in claim 20, wherein n is reconstructed from a unary code.
26. A method as recited in claim 20, wherein said subset V of L is a Voronoi code and said index of v is a Voronoi index.
27. A multi-rate lattice quantization decoding method comprising:
providing low-rate lattice base codebooks Q0, Q2, Q3, and Q4 derived from a RE8 lattice;
providing a codebook number n and an index i;
if n = 0, then reconstructing y as a zero vector;
if 0 < n <= 4, then demultiplexing a codevector index i, decoding i as an index of a base codebook Q2, Q3, or Q4 and reconstructing y ;
if n > 4 then demultiplexing said codevector index i as a base codebook index j and a Voronoi index k from i; providing an extension order r and a scaling factor m from n; using n to identify either Q3 or Q4., and decoding said index j ; computing y = m c + v, where m = 2r is an extension scaling factor, c is a codevector of said base codebook and v is a codevector of a Voronoi codebook.
28. A method for lattice codebook extension comprising:
i) providing a subset of vectors from a lattice L of vectors, yielding a base codebook;

ii) scaling said base codebook by a predetermined scale factor, yielding scaled codevectors; and iii) inserting a Voronoi codebook around each scaled codevector, yielding an extended codebook.
29. A method as recited in claim 28, wherein said subset of vectors are selected by retaining vectors within a boundary.
30. A method as recited in claim 28, wherein step ii) includes providing an integer scaling factor m >= 2.
31. A method as recited in claim 28, wherein in step ii) said scaling factor m is set to 2r.
32. A method as recited in claim 28, wherein said subset of vectors are selected by retaining vectors within a boundary.
33. A method for lattice vector quantization of a source vector x comprising:
i) providing a subset of vectors from a lattice of vectors of dimension N, yielding a base codebook requiring NR bits for indexing, where R is the bit rate per dimension of said base codebook;
ii) determining the nearest vector y of x in said lattice of vectors;
iii) if said nearest vector y is comprised within said base codebook then indexing y in said base codebook yielding quantization indices, outputting said quantization indices, and ending the method; if not then:

iv) providing a predetermined scale factor;
v) scaling said base codebook by said scale factor, yielding a scaled codebook including scaled covectors;
vi) inserting a Voronoi codebook around each said scaled codevectors, yielding an extended codebook requiring N(R+r) bits for indexing, where r is the order of said Vorenoi codebook; and vii) if said nearest neighbour y is comprised within said extended codebook then indexing y in said extended codebook yielding quantization indices, outputting said quantization indices, and ending the method; if not then viii) if the number of bits required for indexing said extended codebook has not exceeded a predetermined threshold then increasing said scale factor and said order of said Vorenoi codebook and repeating steps v) to viii); if not then said nearest neighbor is considered a remote outlier and outputting predetermined corresponding quantization indices .
34. A method as recited in claim 33, wherein in step iv) said predetermined scale factor is 2, and in step viii) said scale factor is increased by 2.
35. A method as recited in claim 33, wherein in step viii) said order of said Voronoi codebook is increased by 1.
36. A multi-rate lattice quantization encoder comprising:
receiving means for providing a source vector x representing a frame from a source signal;
memory means including a base codebook C derived from a lattice .LAMBDA.;

means associating to x a lattice point y in said lattice .LAMBDA.;
means for verifying if y is included in said base codebook C
and for indexing y in said base codebook C yielding quantization indices;
means for extending said base codebook and for yielding an extended codebook;
means for associating to y a codevector c from said extended codebook; and means for indexing y in said extended codebook C and for yielding quantization indices.
37. A multi-rate lattice quantization encoder comprising:
means for receiving a source vector x representing a frame from a source signal;
means for providing finite subsets C and V of an infinite lattice L of points;
means for associating x with y, one of said points in said lattice L;
means for indexing y into an integer codebook number n and an index i as y = mc + v, wherein c is an element of C, v is an element of V, and m is an integer greater than or equal to two; wherein said subsets C and V of the lattice L, the value of m and the size of i being uniquely defined from n.
38. A multi-rate lattice quantization decoder comprising:
memory means for providing a base codebook C derived from a lattice .LAMBDA.;
receiving means for providing an encoded codebook number n and an encoded index i;

means for demultiplexing said quantization index i using said codebook number n;
means for verifying if n = 0, and a) for decoding said index i using said base codebook, yielding a quantized vector y;
means for verifying if n > 0;
means for providing a preselected Voronoi codebook V(r);
means for setting an extension order to r = n and a scale factor m = 2r;
means for demultiplexing indices j and k from i;
means for decoding j into c in said base codebook C;
means for decoding k into v in said Voronoi codebook V(r);
and means for reconstructing a quantized vector as y = m c + v.
39. A multi-rate lattice quantization decoder:
memory means for providing finite subsets C and V of an infinite lattice L of points;
receiving means for providing a codebook number n and an index i;
means for using n and i to reconstruct a vector y in a lattice L
as y=mc + v , where m is an integer greater than or equal to two, and c and v are points included in L; said point c being reconstructed as an element of a finite subset C of L; said point v is reconstructed as an element of a finite subset V of L; indices of v and of c being computed using i; wherein said subsets C and V of the lattice L, the value of m and the size of i being uniquely defined from n.
CA2482994A 2002-05-31 2003-05-30 Method and system for multi-rate lattice vector quantization of a signal Expired - Lifetime CA2482994C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2482994A CA2482994C (en) 2002-05-31 2003-05-30 Method and system for multi-rate lattice vector quantization of a signal

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CA2,388,358 2002-05-31
CA002388358A CA2388358A1 (en) 2002-05-31 2002-05-31 A method and device for multi-rate lattice vector quantization
CA2482994A CA2482994C (en) 2002-05-31 2003-05-30 Method and system for multi-rate lattice vector quantization of a signal
PCT/CA2003/000829 WO2003103151A1 (en) 2002-05-31 2003-05-30 Method and system for multi-rate lattice vector quantization of a signal

Publications (2)

Publication Number Publication Date
CA2482994A1 true CA2482994A1 (en) 2003-12-11
CA2482994C CA2482994C (en) 2011-10-11

Family

ID=34063999

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2482994A Expired - Lifetime CA2482994C (en) 2002-05-31 2003-05-30 Method and system for multi-rate lattice vector quantization of a signal

Country Status (1)

Country Link
CA (1) CA2482994C (en)

Also Published As

Publication number Publication date
CA2482994C (en) 2011-10-11

Similar Documents

Publication Publication Date Title
RU2004138289A (en) METHOD AND SYSTEM FOR MULTI-SPEED LATTICE VECTOR SIGNAL QUANTIZATION
US7978101B2 (en) Encoder and decoder using arithmetic stage to compress code space that is not fully utilized
US7864083B2 (en) Efficient data compression and decompression of numeric sequences
US6345126B1 (en) Method for transmitting data using an embedded bit stream produced in a hierarchical table-lookup vector quantizer
US6662154B2 (en) Method and system for information signal coding using combinatorial and huffman codes
US9912350B2 (en) Coding method, decoding method, coder, and decoder
KR101790463B1 (en) Method and apparatus for pyramid vector quantization indexing and de-indexing of audio/video sample vectors
CN107135004B (en) Self-adaptive real-time lossless compression method for seismic data stream
EP2274833B1 (en) Vector quantisation method
JP2007523530A (en) Dimensional vector and variable resolution quantization
EP2462697A1 (en) Arithmetic encoding for factorial pulse coder
KR100959837B1 (en) Adaptive method and system for mapping parameter values to codeword indexes
WO2011097963A1 (en) Encoding method, decoding method, encoder and decoder
CN101266795B (en) An implementation method and device for grid vector quantification coding
Chaddha et al. Constrained and recursive hierarchical table-lookup vector quantization
CA2482994A1 (en) Method and system for multi-rate lattice vector quantization of a signal
JP2021141576A (en) Data processing system
CN114429200A (en) Standardized Huffman coding and decoding method and neural network computing chip
KR950022178A (en) Method and apparatus for encoding / decoding digital signal
KR20110033154A (en) Method for counting vectors in regular point networks
Pic et al. Mq-coder inspired arithmetic coder for synthetic dna data storage
CN112054802B (en) Electric power metering data compression and decompression method and device and electronic equipment
Aksu et al. Design, performance, and complexity analysis of residual trellis-coded vector quantizers
WO2005043765A2 (en) Resilient parameterized prefix codes for adaptive coding
Makwana et al. Speech compression using tree structured Vector Quantization

Legal Events

Date Code Title Description
EEER Examination request
MKEX Expiry

Effective date: 20230530