This Application claims the benefit of the Japanese Patent No. 10-109785, filed Apr. 20, 1998, the entire contents of which are hereby incorporated herein by reference.
The present invention relates to a vector quantization method used to quantize a linear predictive coefficient in speech encoding and, more particular, to a vector quantization method having constraints in quantization vectors.
A technique for performing linear prediction analysis of speech, decomposing the analysis result into a residual signal and a linear predictive coefficient representing a spectrum envelope, and processing them has been popular. A CELP (Code Exited Linear Prediction) scheme extensively studied recently in the fields of speech encoding is also based on the linear prediction analysis. A linear predictive coefficient and residual signal are quantized by VQ (Vector Quantization). In the CELP scheme, the linear predictive coefficient is often transformed into an LSP (Line Spectrum Pair) parameter, and then quantized. According to one of the reasons for this, stability of a synthesis filter can be easily discriminated.
In the CELP scheme, the synthesis filter is arranged on the basis of the LSP parameter on the decoding side. The quantized residual signal is passed through the synthesis filter to generate decoded speech. For this reason, unless the synthesis filter is stable, the decoded speech oscillates to greatly degrade the speech quality.
As is well known, if an LSP parameter w={w1, w2, . . . , wp} obtained by linear prediction analysis of degree p satisfies the following condition:
o less than w1 less than w2 less than . . .  less than wp less than xcfx80xe2x80x83xe2x80x83(1)
the synthesis filter is stable. The order of magnitudes of components of the LSP parameter represented by condition (1) (to be referred to as an LSP parameter order hereinafter) is checked to allow easily determining the stability of the synthesis filter.
When an interval between the parameter components w1, w2, . . . , wp decreases although the LSP parameter order is not reversed, the synthesis filter abruptly becomes unstable. Care must be taken for quantizing the LSP parameter components having small intervals. Small quantization errors generated by the LSP parameter components having small intervals greatly influence stability of the synthesis filter.
To solve the above problem, conventionally, a predetermined value D is defined for an interval between the adjacent LSP parameter components. When the interval between the adjacent components of the quantized LSP parameter is smaller than the predetermined value D, an appropriate countermeasure is made. Japanese Patent No. 2,659,605 (reference 1) describes a method of performing correction processing to increase a small interval between the adjacent components to assure the predetermined value D. This method is simple and easy, but distortion by correction processing is not evaluated in quantization.
Jpn. Pat. Appln. KOKAI Publication No. 6-120841 (reference 2) discloses a technique for solving the above problem. In reference 2, stability check and, as needed, correction processing are performed for each quantized LSP parameter obtained from a codebook. The distance between the corrected quantized LSP parameter and the input LSP parameter is calculated. With this technique, the distortion generated by correction processing can be included in quantization distortion and then evaluated, thereby improving quantization efficiency. According to this method, however, the calculation quantity increases because stability check must be performed for all quantized LSP parameters within the search loop of the codebook.
As described above, if a constraint such as the LSP parameter order or the interval between adjacent components is imposed on the quantization vector, it must be checked if the quantization vector satisfies the constraint after quantization or within the search loop of the codebook in order to assure stability of the synthesis filter. This check must desirably be performed in a smaller quantity of calculation. In particular, the calculation quantity increases with an increase in the number of candidates of the codebook in the check within the search loop. A small difference in calculation quantity becomes a large difference as a whole. A reduction in calculation quantity in the check is an important problem. According to the conventional methods, however, it is difficult to check if the quantization vector satisfies the constraint in a small calculation quantity, as described above.
In quantizing an LSP parameter upon nonlinear transform such as logarithmic transform, it is difficult to calculate the interval between the adjacent components in the transform range.
It is an object of the present invention to provide a vector quantization apparatus capable of efficiently obtaining a quantization vector satisfying a constraint in a smaller calculation quantity and a vector quantization method therefor.
According to the present invention ,there is provided a vector quantization apparatus comprising a codebook which stores a plurality of code vectors; a constraint relieving section which relieves a predetermined constraint imposed on a quantization vector from an input vector input to an input terminal to generate a target vector, a error calculating section which calculates an error between the target vector and a code vector extracted from the codebook, and an error evaluation section for evaluating this error, selecting from the codebook a code vector constituting an unconstrained quantized vector for approximating the target vector, and outputting an index representing the code vector.
According to the invention, there is provided a vector quantization method comprising quantizing an input vector upon appropriately transforming the input vector on an encoding side in advance, and transforming a decoding result in an inverse manner to the transform of the input vector to obtain a quantization vector satisfying a constraint, thereby reducing the calculation quantity as compared to the conventional case.
More specifically, on the encoding side, an input vector is transformed with a predetermined transform function to generate a target vector. At least one code vector constituting a first quantization vector that approximates this target vector is selected from a codebook, and an index representing the selected code vector is output. The transform function transforms the first quantization vector in an inverse manner to the transform of the input vector to generate a second quantization vector satisfying a predetermined constraint.
The decoding side receives the index representing at least one code vector constituting the first quantization vector that approximates the target vector generated by transforming the input vector with the predetermined transform function. This code vector is extracted from a codebook. The first quantization vector constituting the code vector is transformed in an inverse manner to the transform function to generate the second quantization vector. Note that the transform function is designed to allow the second quantization vector to satisfy the predetermined constraint.
The vector quantization method according to the present invention is particularly suitable for LSP parameter vector quantization. In quantizing an LSP parameter vector, an LSP parameter serves as an input vector on the encoding side. A constraint vector representing a predetermined constraint is subtracted from the input vector to generate a target vector. At least one code vector constituting a first quantization vector having a minimum error with respect to the target vector is selected from a codebook. An index representing the selected code vector is output. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting a second quantization vector generated by synthesizing the first quantization vector and the constraint vector has a predetermined value or more.
The decoding side receives the index representing at least one code vector constituting the first quantization vector having the minimum error with respect to the target vector obtained upon subtracting the constraint vector representing the predetermined constraint from the input vector made of the LSP parameter. This code vector is extracted from a codebook. The constraint vector is added to the first quantization vector made of this code vector to generate the second quantization vector. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting the second quantization vector is the predetermined value or more.
The vector quantization method according to the present invention is also applicable to LPC parameter predictive coding. In this case, on the encoding side, an LSP parameter serves as an input vector. A constraint vector representing a predetermined constraint is subtracted from the input vector to generate a target vector. At the same time, a predictive vector is generated using a vector obtained by subtracting the constraint vector from a previous quantization vector. At least one code vector synthesized with this predictive vector and constituting a first quantization vector having a minimum error with respect to the target vector is selected from a codebook. An index representing this code vector is output. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting the second quantization vector generated by putting together the first quantization vector and the constraint vector is a predetermined value or more in the same manner as described above.
The decoding side receives the index representing at least one code vector constituting the first quantization vector having the minimum error with respect to the target vector generated by subtracting the constraint vector representing the predetermined constraint from the input vector made of the LSP parameter. This code vector is extracted from a codebook, and at the same time, the predictive vector is generated using the vector obtained by subtracting the constraint vector from the past quantized vector. The first quantization vector is generated by synthesizing this code vector and the predictive vector. The first quantization vector and the constraint vector are synthesized to generate the second quantization vector. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting the second quantization vector has the predetermined value or more in the same manner as described above.
According to still another vector quantization method of the present invention, an LSP parameter serves as an input vector on the encoding side. A constraint vector representing a predetermined constraint is subtracted from this input vector. The difference is nonlinearly transformed to generate a target vector. The constraint vector is subtracted from a past quantized vector. The difference is nonlinearly transformed to generate a predictive vector. At least one code vector synthesized with this predictive vector and constituting a first quantization vector having a minimum error with respect to the target vector is selected from a codebook. An index representing this code vector is output. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting the second quantization vector generated by putting together the first quantization vector and the constraint vector is a predetermined value or more in the same manner as described above.
The decoding side receives the index representing at least one code vector constituting the first quantization vector having the minimum error with respect to the target vector generated by subtracting the constraint vector representing the predetermined constraint from the input vector made of the LSP parameter and nonlinearly transforming the difference. This code vector is extracted from a codebook, and at the same time, the predictive vector is generated using the vector obtained by subtracting the constraint vector from the past quantized vector and nonlinearly transforming the difference. The first quantization vector is generated by putting together this code vector and the predictive vector and then subjected to a nonlinear inverse transformation, and then the first quantization vector and the constraint vector are synthesized to generate the second quantization vector. Note that the constraint vector is designed such that the interval between the adjacent components of the quantized LSP parameter constituting the second quantization vector has the predetermined value or more in the same manner as described above.
As described above, according to the present invention, the input vector is transformed to relieve the predetermined constraint from the quantization vector in encoding. In decoding the quantization vector, the quantization vector is decoded and then transformed in an inverse manner to the transform in encoding the input vector to generate the quantization vector satisfying the constraint. Whether the quantization vector satisfies the constraint can be checked in a small calculation quantity.
More specifically, when LSP parameter vector quantization is taken into consideration, the constraint for keeping the interval between the adjacent components of the LSP parameter to the predetermined value must be imposed on the quantization LSP vector in addition to the condition of the LSP parameter order in order to assure stability of the synthesis filter. The calculation quantity necessary for checking if the latter condition is satisfied becomes an important problem. According to the present invention, this check can be performed by comparing the magnitudes of the adjacent components, thereby greatly reducing the calculation quantity.
In quantizing the LSP parameter upon its nonlinear transform such as logarithmic transform, the constraint is subtracted before the transform, thereby eliminating the calculation for the interval of the transformed LSP parameter in quantization.
Additional objects and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objects and advantages of the invention may be realized and obtained by means of the instrumentalities and combinations particularly pointed out hereinafter.