IP Library Granted Patent US 8,581,757
Granted Patent B2
US 8,581,757 · App. 13/319,806 · Granted Nov 12, 2013

Method for vector quantization of a feature vector

Inventors: Stefan Schandl (Vienna, AT); Panji Setiawan (München, DE)
Assignee: Siemens Enterprise Communications GmbH & Co. KG
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,581,757
App. No.
13/319,806
Granted
Nov 12, 2013
Kind
B2
Abstract

The invention relates to a method for the vector quantization of a feature vector, in particular with respect to a data compression of a signal to be transmitted or to be stored, particularly a voice signal or a video signal, wherein at least one codebook from a plurality of codebook vectors is searched for a code vector representing the feature vector. During the search, a sequence of codebook vectors is examined for the suitability thereof to represent the feature vector. In the course of the search for the code vector, a set of neighboring vectors is dedicated to at least one of the codebook vectors potentially to be examined, preferably prior to the search. The search for the code vector includes at least part of the neighboring vectors.

Claims (26)

1. A method for vector quantization of a feature vector, comprising:

searching at least one codebook comprising multiple codebook vectors to find a code vector representing a feature vector;

during the search, testing a sequence of codebook vectors to determine their suitability to represent the feature vector; and

for at least one of the codebook vectors that can be tested during the search for the code vector representing the feature vector, determining a set of neighboring vectors before the beginning of the search and including in the search for the code vector representing the feature vector at least some of the neighboring vectors; and

determining the set of neighboring vectors for a codebook vector using a neighboring vector table that assigns a number of nearest neighboring vectors to each codebook vector from among the multiple codebook vectors in the at least one codebook, in which, starting with the codebook vector whose set of neighboring vectors is to be determined and which is entered as a start vector in the set of neighboring vectors, a sequence of the respective nearest neighboring vectors for each already existing entry in the set of neighboring vectors is entered in turn in the set of neighboring vectors, continuing until no new entries are received or until entry is terminated because a number of neighboring vectors in the set of neighboring vectors has reached a preset limit.

2. The method of claim 1 , comprising generating a neighboring vector table for a codebook vector in which first a number of the nearest neighboring vectors are identified for at least some of the codebook vectors in the at least one codebook, and modifying the neighboring vector table created as a result by repeating the following steps:

determining two nearest neighboring vectors to a codebook vector in the neighboring vector table and designating them as first and second parent vectors for that codebook vector;

determining two neighboring vectors next nearest to the first parent vector in the neighboring vector table and designating them as offspring vectors of the first parent vector;

deleting the second parent vector from the neighboring vector table and replacing it with its nearest neighboring vector in the neighboring vector table, provided that one of the two offspring vectors from the first parent vector matches the second parent vector;

determining two neighboring vectors nearest to the second parent vector in the neighboring vector table and designating them as offspring vectors of the second parent vector; and

deleting the first parent vector from the neighboring vector table and replacing it with its nearest neighboring vector in the neighboring vector table, provided that one of the two offspring vectors from the second parent vector matches the first parent vector.

3. Reducing the magnitude of a coding error in at least one voice coding and video coding, comprising vector quantizing a feature vector according to a method for vector quantization of a feature vector, comprising:

searching at least one codebook comprising multiple codebook vectors to find a code vector representing a feature vector;

during the search testing a sequence of codebook vectors to determine their suitability to represent the feature vector; and

for at least one of the codebook vectors that can be tested during the search for the code vector representing the feature vector, determining a set of neighboring vectors before the beginning of the search and including in the search for the code vector representing the feature vector at least some of the neighboring vectors; and

wherein the feature vector is indicative of at least one of voice data and video data, and wherein the reduction of the magnitude of the coding error is relative to a magnitude of coding error when a feature vector is not quantized according to the method.

4. The method of claim 1 , wherein said feature vector is at least one of a voice signal and a video signal.

5. The method of claim 2 , wherein the nearest neighboring vectors are determined by measuring their distance from a codebook vector.

6. The method of claim 1 wherein the feature vector is a voice signal.

7. The method of claim 6 further comprising encoding the voice signal based on the code vector that was found to represent the feature vector.

8. The method of claim 7 wherein the encoding of the voice signal is compliant with standard G.711.

9. The method of claim 1 further comprising encoding a voice signal based on the code vector that was found to represent the feature vector.

10. The method of claim 1 wherein all of the neighboring vectors are included in the search for the code vector representing the feature vector.

11. The method of claim 2 wherein the feature vector is a voice signal.

12. The method of claim 11 further comprising encoding the voice signal based on the code vector that was found to represent the feature vector.

13. The method of claim 12 wherein the encoding of the voice signal is compliant with standard G.711.

Assignments (7)
SECURITY INTEREST Recorded Feb 14, 2023
From: RINGCENTRAL, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062973/0194 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2022
From: RINGCENTRAL IP HOLDINGS, INC.
To: RINGCENTRAL, INC.
Reel/Frame 058856/0578 →
CONFIDENTIAL PATENT AGREEMENT Recorded Dec 21, 2020
From: UNIFY GMBH & CO. KG
To: UNIFY PATENTE GMBH & CO. KG
Reel/Frame 054822/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2020
From: RINGCENTRAL IP HOLDINGS, INC.
To: RINGCENTRAL, INC.
Reel/Frame 053353/0117 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2020
From: UNIFY SOFTWARE AND SOLUTIONS GMBH & CO. KG; UNIFY PATENTE GMBH & CO. KG
To: RINGCENTRAL IP HOLDINGS, INC.
Reel/Frame 053352/0631 →
CHANGE OF NAME Recorded Dec 8, 2014
From: SIEMENS ENTERPRISE COMMUNICATIONS GMBH & CO. KG
To: UNIFY GMBH & CO. KG
Reel/Frame 034537/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 26, 2012
From: SCHANDL, STEFAN; SETIAWAN, PANJI
To: SIEMENS ENTERPRISE COMMUNICATIONS GMBH & CO. KG
Reel/Frame 027601/0521 →
Priority Claims (1)
EP 09008685 · Jul 2, 2009 · regional
Continuity (1)
Related Publication 20120112934A1 · May 10, 2012