Coefficient splitting structure for vector quantization bit allocation and dequantization
First Claim
1. A method of converting a linear predictive coding (LPC) coefficient into a coefficient having order characteristics and quantizing the coefficient, the method comprising:
- splitting a vector of the coefficient having the order characteristics into a plurality of subvectors;
selecting a codebook in which an available bit is allocated to each of the subvectors according to a distribution of elements of each of the subvectors; and
quantizing, performed by using at least one processor, each of the subvectors using the selected codebook and generating a codebook index of each of the subvectors,wherein a different available bit is allocated to subvectors in each of a plurality of normalized codebooks for use in quantizing lower subvectors, according to a distribution of elements of the subvectors.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus to convert a linear predictive coding (LPC) coefficient into a coefficient having order characteristics, such as a line spectrum frequency (LSF), and to vector quantize the coefficient having the order characteristics when a speech signal is encoded. The method and apparatus split the vector of the coefficient having the order characteristics into a plurality of subvectors, select a codebook in which an available bit is variably allocated to each subvector according to distribution of elements of each subvector, and quantize each subvector according to the selected codebook. The method and apparatus use normalized codebooks.
9 Citations
71 Claims
-
1. A method of converting a linear predictive coding (LPC) coefficient into a coefficient having order characteristics and quantizing the coefficient, the method comprising:
-
splitting a vector of the coefficient having the order characteristics into a plurality of subvectors; selecting a codebook in which an available bit is allocated to each of the subvectors according to a distribution of elements of each of the subvectors; and quantizing, performed by using at least one processor, each of the subvectors using the selected codebook and generating a codebook index of each of the subvectors, wherein a different available bit is allocated to subvectors in each of a plurality of normalized codebooks for use in quantizing lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of de-quantizing an LPC coefficient into an LSF using a codebook index generated after an encoder converts the LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into an upper subvector and lower subvectors, and quantizes the upper and lower subvectors, the method comprising:
-
de-quantizing the upper subvector using a codebook index of the upper subvector; selecting a codebook among a plurality of codebooks, using elements of the de-quantized upper subvector; de-quantizing, performed by using at least one processor, each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; and generating an LSF vector using the de-quantized upper subvector and the de-quantized lower subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks, according to a distribution of elements of the subvectors. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A method of generating a codebook, the method comprising:
-
splitting a vector of a coefficient having order characteristics, which was converted from an LPC coefficient, into an upper subvector including of anchor elements among elements that constitute the vector of the coefficient having the order characteristics and lower subvectors, each including elements respectively interposed between the elements of the upper subvector; classifying each of the lower subvectors by allocating an available bit to each of the lower subvectors using the upper subvector; and generating, performed by using at least one processor, a codebook by training the upper subvector and each of the classified subvectors, wherein a different available bit is allocated to subvectors in each of a plurality of codebooks for use in quantizing and dequantizing the lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A method of quantizing a linear predictive coding (LPC) coefficient, comprising:
-
converting an LPC coefficient into a coefficient having a vector; splitting the vector into an upper subvector and plural lower subvectors; quantizing, performed by using at least one processor, the upper subvector to generate upper subvector codebook indices; selecting a codebook for use with the lower subvectors from a plurality of codebooks stored in a codebook storage unit based on the upper subvector codebook indices; quantizing the plural lower subvectors using the selected codebook; selecting a codebook index having a smallest distortion from the upper subvector codebook indices comprising; allocating available bits in a codebook to each of the plural lower subvectors according to a predetermined value; generating a codebook index for the upper subvector and each of the plural lower subvectors as a bitstream; and transmitting the bitstream, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
31. A non-transitory computer-readable medium having embodied thereon a computer program to execute a method of converting a linear predictive coding (LPC) coefficient into a coefficient having order characteristics and quantizing the coefficient, the method comprising:
-
splitting a vector of the coefficient having the order characteristics into a plurality of subvectors; selecting a codebook among a plurality of codebooks, in which an available bit is allocated to each of the subvectors according to distribution of elements of each of the subvectors; and quantizing each of the subvectors using the selected codebook and generating a codebook index of each of the subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing lower subvectors, according to a distribution of elements of the subvectors.
-
-
32. A non-transitory computer-readable medium having embodied thereon a computer program to execute a method of de-quantizing an LPC coefficient into an LSF using a codebook index generated after an encoder converts the LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into an upper subvector and lower subvectors, and quantizes the upper and lower subvectors, the method comprising:
-
de-quantizing the upper subvector using a codebook index of the upper subvector; selecting a codebook among a plurality of codebooks, using elements of the de-quantized upper subvector; de-quantizing each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; and generating an LSF vector using the de-quantized upper subvector and the de-quantized lower subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in dequantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
33. A non-transitory computer-readable medium having embodied thereon a computer program to execute a method of generating a codebook, the method comprising:
-
splitting a vector of a coefficient having order characteristics, which was converted from an LPC coefficient, into an upper subvector comprised of anchor elements among elements that constitute the vector of the coefficient having the order characteristics and lower subvectors, each comprised of elements respectively interposed between the elements of the upper subvector; classifying each of the lower subvectors by allocating an available bit to each of the lower subvectors using the upper subvector; and generating a codebook by training the upper subvector and each of the classified subvectors, wherein a different available bit is allocated to subvectors in each of a plurality of codebooks for use in quantizing and dequantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
34. A non-transitory computer-readable medium having embodied thereon a computer program to execute a method of quantizing a linear predictive coding (LPC) coefficient, comprising:
-
converting an LPC coefficient into a coefficient having a vector; splitting the vector into an upper subvector and plural lower subvectors; quantizing the upper subvector to generate upper subvector codebook indices; selecting a codebook for use with the lower subvectors from a plurality of codebooks stored in a codebook storage unit based on the upper subvector codebook indices; quantizing the plural lower subvectors using the selected codebook; selecting a codebook index having a smallest distortion from the upper subvector codebook indices comprising; allocating available bits in a codebook to each of the plural lower subvectors according to a predetermined value; generating a codebook index for the upper subvector and each of the plural lower subvectors as a bitstream; and transmitting the bitstream, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
35. An apparatus to convert an LPC coefficient into a coefficient having order characteristics and to quantize the coefficient, the apparatus comprising:
-
a vector split unit to split a vector of the coefficient having the order characteristics into a plurality of subvectors; a codebook storage unit to store a plurality of codebooks in which an available bit is allocated to each of the subvectors according to a distribution of elements of each of the subvectors that constitute the vector of the coefficient having the order characteristics; a codebook selection unit to select a codebook from the codebooks stored in the codebook storage unit according to the distribution of the elements of each of the subvectors; and a quantization unit to quantize each of the subvectors using the selected codebook and to generate a codebook index of each of the subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. An apparatus to de-quantize an LPC coefficient into an LSF using a codebook index generated after an encoder converts the LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into an upper subvector and lower subvectors, and quantizes the upper subvector and the lower subvectors, the apparatus comprising:
-
a first de-quantization unit to de-quantize the upper subvector using a codebook index of the upper subvector; a codebook storage unit storing a plurality of codebooks in which an available bit is allocated to each of the subvectors according to distribution of elements of each of the subvectors that constitute the vector of the coefficient having the order characteristics; a codebook selection unit to select a codebook from the codebooks stored in the codebook storage unit using elements of the de-quantized upper subvector; a second de-quantization unit to de-quantize each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; and a coefficient generation unit to generate an LSF vector using the de-quantized upper subvector and the de-quantized lower subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of codebooks for use in dequantizing the lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (46, 47, 48, 49, 50)
-
-
51. An apparatus to generate a codebook, the apparatus comprising:
-
a vector split unit to split a vector of a coefficient having order characteristics, which was converted from an LPC coefficient, into an upper subvector including anchor elements among elements that constitute the vector of the coefficient having the order characteristics and lower subvectors, each including elements respectively interposed between the elements of the upper subvector; a vector classification unit to classify each of the lower subvectors by allocating an available bit to each of the lower subvectors using the upper subvector; and a codebook generation unit to generate a codebook by training the upper subvector and each of the classified subvectors, wherein a different available bit is allocated to subvectors in each of a plurality of codebooks for use in quantizing and dequantizing the lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62)
-
-
63. An apparatus to convert an LPC coefficient into a predetermined coefficient and to quantize the coefficient, the apparatus comprising:
-
a vector split unit to split a vector of the predetermined coefficient into subvectors; a codebook storage unit to store a plurality of codebooks in which an available bit is allocated to each of the subvectors according to a distribution of elements of each of the subvectors; a codebook selection unit to select a codebook from the codebooks stored in the codebook storage unit according to the distribution of the elements of each of the subvectors; and a quantization unit to quantize each of the subvectors using the selected codebook and to generate a codebook index of each of the subvectors, wherein a different available bit is allocated to subvectors in each of a plurality of codebooks for use in quantizing lower subvectors, according to a distribution of elements of the subvectors. - View Dependent Claims (64)
-
-
65. An apparatus to generate a codebook, the apparatus comprising:
-
a vector split unit to split a vector of a predetermined coefficient into an upper subvector and plural lower subvectors, each subvector comprised of elements; a vector classification unit to classify each of the lower subvectors using the elements of the upper subvector; and a codebook generation unit to generate a codebook by training the upper subvector and each of the classified subvectors using an LGB algorithm, wherein a different available bit is allocated to subvectors in each of a plurality of codebooks for use in quantizing lower subvectors, according to a distribution of elements of the subvectors.
-
-
66. A method of converting an LPC coefficient into a coefficient having order characteristics and quantizing the coefficient, the method comprising:
-
splitting a vector of the coefficient having the order characteristics into an upper subvector and lower subvectors; quantizing, performed by using at least one processor, the upper subvector; selecting a codebook among a plurality of codebooks in which an available bit is allocated to each of the lower subvectors according to distribution of elements of the quantized upper subvector; normalizing elements of the lower subvectors; and quantizing each of the lower subvectors using the selected codebook and generating a codebook index of each of the lower subvectors, wherein the codebook is normalized and a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
67. A method of de-quantizing an LPC coefficient into an LSF using a codebook index generated after an encoder converts the LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into an upper subvector and lower subvectors, and quantizes the upper and lower subvectors, the method comprising:
-
de-quantizing, performed by using at least one processor, the upper subvector using a codebook index of the upper subvector; selecting a normalized and pre-stored codebook among a plurality of normalized and pre-stored codebooks using elements of the de-quantized upper subvector; de-quantizing each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; de-normalizing each of the de-quantized lower subvectors; and generating an LSF vector using the de-quantized upper subvector and the de-normalized lower subvectors, wherein a different available bit is allocated to subvectors in each of the plurality of normalized and pre-stored codebooks for use in de-quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
68. An apparatus for converting an LPC coefficient into a coefficient having order characteristics and quantizing the coefficient, the apparatus comprising:
-
a vector split unit splitting a vector of the coefficient having the order characteristics into an upper subvector and lower subvectors; a first quantization unit quantizing the upper subvector; a codebook storage unit storing a plurality of codebooks in which an available bit is allocated to each of the lower subvectors according to distribution of elements of the quantized upper subvector; a codebook selection unit selecting a codebook from the plurality of codebooks stored in the codebook storage unit according to the distribution of the elements of the upper subvector; a normalization unit normalizing elements of the lower subvectors; and a second quantization unit quantizing each of the lower subvectors using the selected codebook and generating a codebook index of each of the lower subvectors, wherein the codebooks are normalized and a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
69. An apparatus for de-quantizing an LPC coefficient into an LSF using a codebook index generated after an encoder converts the LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into an upper subvector and lower subvectors, and quantizes the upper and lower subvectors, the apparatus comprising:
-
a first de-quantization unit de-quantizing the upper subvector using a codebook index of the upper subvector; a codebook storage unit storing a plurality of codebooks in which an available bit is allocated to each of the subvectors according to distribution of elements of each of the subvectors that constitute the vector of the coefficient having the order characteristics; a codebook selection unit selecting a codebook from the plurality of codebooks stored in the codebook storage unit using elements of the de-quantized upper subvector; a second de-quantization unit de-quantizing each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; a de-normalization unit de-normalizing each of the de-quantized lower subvectors; and a coefficient generation unit generating an LSF vector using the de-quantized upper subvector and the de-normalized lower subvectors, wherein the codebook is normalized and a different available bit is allocated to subvectors in each of the plurality of codebooks for use in quantizing the lower subvectors, according to a distribution of elements of the subvectors.
-
-
70. A non-transitory computer-readable recording medium on which a program for executing a method is recorded, the method comprising:
-
splitting a vector of a coefficient having order characteristics, which was converted from an LPC coefficient, into an upper subvector and lower subvectors; quantizing the upper subvector; selecting a normalized codebook among a plurality of normalized codebooks, in which an available bit is allocated to each of the lower subvectors according to distribution of elements of the quantized upper subvector; normalizing elements of the lower subvectors; and quantizing each of the lower subvectors using the selected codebook and generating a codebook index of each of the lower subvectors, wherein a different available bit is allocated to the subvectors in each of the plurality of normalized codebooks, according to a distribution of elements of the subvectors.
-
-
71. A non-transitory computer-readable recording medium on which a program for executing a method is recorded, the method comprising:
-
de-quantizing an upper subvector using a codebook index of the upper subvector in a bitstream generated after an encoder converts an LPC coefficient into a vector of a coefficient having order characteristics, splits the vector of the coefficient into the upper subvector and lower subvectors, and quantizes the upper and lower subvectors; selecting a normalized and pre-stored codebook among a plurality of normalized and pre-stored codebooks, using elements of the de-quantized upper subvector; de-quantizing each of the lower subvectors using a codebook index of each of the lower subvectors included in the selected codebook; de-normalizing each of the de-quantized lower subvectors; and generating an LSF vector using the de-quantized upper subvector and the de-normalized lower subvectors, wherein a different available bit is allocated to the subvectors in each of the plurality of normalized and pre-stored codebooks, according to a distribution of elements of the subvectors.
-
Specification