JP5336943B2 - Encoding method, decoding method, encoder, decoder, program - Google Patents

Encoding method, decoding method, encoder, decoder, program Download PDF

Info

Publication number
JP5336943B2
JP5336943B2 JP2009148956A JP2009148956A JP5336943B2 JP 5336943 B2 JP5336943 B2 JP 5336943B2 JP 2009148956 A JP2009148956 A JP 2009148956A JP 2009148956 A JP2009148956 A JP 2009148956A JP 5336943 B2 JP5336943 B2 JP 5336943B2
Authority
JP
Japan
Prior art keywords
signal
value
decoded
normalized
quantized
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.)
Active
Application number
JP2009148956A
Other languages
Japanese (ja)
Other versions
JP2011009861A (en
Inventor
勝宏 福井
茂明 佐々木
公孝 堤
祐介 日和▲崎▼
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009148956A priority Critical patent/JP5336943B2/en
Publication of JP2011009861A publication Critical patent/JP2011009861A/en
Application granted granted Critical
Publication of JP5336943B2 publication Critical patent/JP5336943B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は音響信号の符号化方法と復号方法に関し、特に多段にベクトル量子化する符号化方法と復号方法に関する。   The present invention relates to an encoding method and a decoding method for an acoustic signal, and particularly to an encoding method and a decoding method for vector quantization in multiple stages.

信号系列をサンプルあたり1ビット以下で量子化する際は、ベクトル量子化が有効な手段である。この手法は入力のベクトルと、歪が最も小さいベクトルとを符号帳から選んで、その番号(以下、「インデックス」という。)を伝送するもので、量子化対象に即した符号帳を作成しておけば量子化歪の小さい量子化が可能である。しかしながら、符号帳のメモリ量や歪を計算する演算量は量子化ビット数の指数関数で増大するため、量子化ビット数の多いときの量子化は実現が困難である。これを解決する1つの手法が多段ベクトル量子化(特許文献1)である。また、近年、量子化ノイズの少ない高能率なベクトル量子化手法として、例えばSpherical Vector Quantization(SVQ)法(非特許文献1)など、予め設定された量子化ビット数の範囲内で、周波数成分をパルスとして立てていくベクトル量子化手法が広く利用されている。   Vector quantization is an effective means for quantizing a signal sequence with 1 bit or less per sample. This method selects an input vector and a vector with the least distortion from the codebook and transmits the number (hereinafter referred to as “index”). A codebook suitable for the quantization target is created. If this is done, quantization with small quantization distortion is possible. However, since the amount of codebook memory and the amount of computation for calculating distortion increase with an exponential function of the number of quantization bits, it is difficult to realize quantization when the number of quantization bits is large. One technique for solving this is multistage vector quantization (Patent Document 1). Further, in recent years, as an efficient vector quantization method with little quantization noise, for example, the frequency component is within a predetermined number of quantization bits such as the Spherical Vector Quantization (SVQ) method (Non-patent Document 1). A vector quantization method that stands as a pulse is widely used.

図1は、多段ベクトル量子化手法を用いた符号化器と復号器の機能構成例を示す図である。図2は符号化器と復号器の処理フローを示す図である。図2(A)は符号化器の処理フローを示しており、図2(B)は復号器の処理フローを示している。多段ベクトル量子化では、量子化部が多段に接続され、初段の第1量子化部は入力信号について動作し,次段以降は入力信号と前段までの量子化出力の誤差について動作する。このようにすると、メモリ量や演算量を現実的な範囲に抑えたままで、ベクトル量子化が可能となる。図中の多段ベクトル量子化の段数は、分かり易くするため2としてあるが、段数は2以上を用いた構成でも良い。量子化手法には、周波数領域に変換した成分を量子化する手法(非特許文献1)を例として用いた。   FIG. 1 is a diagram illustrating a functional configuration example of an encoder and a decoder using a multistage vector quantization method. FIG. 2 is a diagram showing a processing flow of the encoder and the decoder. FIG. 2A shows a processing flow of the encoder, and FIG. 2B shows a processing flow of the decoder. In multi-stage vector quantization, quantizers are connected in multiple stages, the first stage first quantizer operates on the input signal, and the subsequent stages operate on errors between the input signal and the quantized output up to the previous stage. In this way, it is possible to perform vector quantization while keeping the memory amount and calculation amount within a practical range. The number of stages of multistage vector quantization in the figure is 2 for the sake of clarity, but a configuration using two or more stages may be used. As a quantization method, a method (Non-Patent Document 1) for quantizing a component converted into a frequency domain is used as an example.

符号化器100は、周波数領域変換部101、正規化値計算部102、正規化値量子化部103、第1ベクトル量子化部104、誤差計算部105、第2ベクトル量子化部106を備える。復号器100’は、正規化値復号部107、第1ベクトル復号部108、第2ベクトル復号部109、誤差修正部110、時間領域変換部111を備える。   The encoder 100 includes a frequency domain transform unit 101, a normalized value calculation unit 102, a normalized value quantization unit 103, a first vector quantization unit 104, an error calculation unit 105, and a second vector quantization unit 106. The decoder 100 ′ includes a normalized value decoding unit 107, a first vector decoding unit 108, a second vector decoding unit 109, an error correction unit 110, and a time domain conversion unit 111.

周波数領域変換部101は、入力信号x(n)を入力とし、L個の入力信号x(n)ごと(フレームごと)にL点の周波数成分を示す信号である周波数領域信号X(k)に変換する(S101)。ただし、nは時間領域での信号の番号(離散時間番号)を、kは周波数領域での信号の番号(離散周波数番号)を示している。所定の数Lとは、例えば64や80である。また、周波数領域変換方法としては、例えばMDCT(Modified Discrete Cosine Transform)がある。   The frequency domain transform unit 101 receives an input signal x (n) as an input, and converts it into a frequency domain signal X (k) that is a signal indicating a frequency component at L points for every L input signals x (n) (for each frame). Conversion is performed (S101). Here, n represents a signal number (discrete time number) in the time domain, and k represents a signal number (discrete frequency number) in the frequency domain. The predetermined number L is, for example, 64 or 80. As a frequency domain transform method, for example, there is MDCT (Modified Discrete Cosine Transform).

正規化値計算部102は、周波数領域信号X(k)を入力として、L点または各サブバンド(L点をさらに分割した周波数帯域で、例えば8点で1つのサブバンドを形成する)に応じた点数の周波数領域信号X(k)のパワーの平均値の平方根を、周波数領域信号X(k)の正規化値X として出力する。L点の正規化値をX として、例えばX を次式のように計算する(S102)。 The normalized value calculation unit 102 receives the frequency domain signal X (k) as an input and responds to the L point or each subband (a frequency band obtained by further dividing the L point, for example, one subband is formed by 8 points). The square root of the average power of the frequency domain signal X (k) is output as the normalized value X - 0 of the frequency domain signal X (k). Assuming that the normalized value of point L is X - 0 , for example, X - 0 is calculated as in the following equation (S102).

Figure 0005336943
Figure 0005336943

以下の説明では、サブバンドでの正規化ではなく、L点の正規化値X を用いた場合について説明する。
正規化値量子化部103は、正規化値計算部102で求めた正規化値X を入力とし、正規化値X を量子化して、正規化値量子化インデックスCと、正規化値量子化インデックスCに対応する量子化正規化値Xを出力する(S103)。
In the following description, the case of using the normalization value X - 0 of the L point instead of the subband normalization will be described.
Normalization value quantizer 103, the normalized value X calculated by the normalization value calculation section 102 - as input 0, normalized value X - 0 quantizes the normalization value quantization index C S, normal quantized normalized values corresponding to reduction value quantization index C S X - outputting a (S103).

第1ベクトル量子化部104は、周波数領域信号X(k)と量子化正規化値Xを入力として、周波数領域信号X(k)を、量子化正規化値Xで割り算する、もしくは逆数を乗ずることで正規化し、正規化周波数領域信号を求める。そして、正規化周波数領域信号を複数サンプル纏めてベクトル量子化して、量子化代表ベクトルのインデックスである第1ベクトル量子化インデックスCと、第1ベクトル量子化インデックスCに対応する信号に量子化正規化値Xを乗算して第1量子化信号X^(k)を求め、第1ベクトル量子化インデックスCと第1量子化信号X^(k)出力する(S104)。 The first vector quantization unit 104 receives the frequency domain signal X (k) and the quantized normalized value X and divides the frequency domain signal X (k) by the quantized normalized value X or an inverse number. Is normalized by multiplying to obtain a normalized frequency domain signal. Then, vector quantization of the normalized frequency domain signal more samples collectively, quantized first vector quantization index C 1 is the index of the quantization representative vectors, the signal corresponding to the first vector quantization index C 1 normalized value X - seeking first quantized signal X ^ (k) by multiplying the first vector quantization index C 1 and the first quantized signal X ^ (k) and outputs (S104).

誤差計算部105は、周波数領域信号X(k)と第1量子化信号X^(k)を入力として、周波数領域信号X(k)と第1量子化信号X^(k)の間の誤差を、例えば、
E(k)=X(k)−X^(k) (2)
のように計算し、誤差信号E(k)を出力する(S105)。
The error calculation unit 105 receives the frequency domain signal X (k) and the first quantized signal X ^ (k) as input, and the error between the frequency domain signal X (k) and the first quantized signal X ^ (k). For example,
E (k) = X (k) -X ^ (k) (2)
And an error signal E (k) is output (S105).

第2ベクトル量子化部106は、誤差信号E(k)と量子化正規化値Xを入力とし、誤差信号E(k)を、量子化正規化値Xで割り算する、もしくは逆数を乗ずることで正規化し、正規化誤差信号を求める。そして、正規化誤差信号を複数サンプル纏めてベクトル量子化して、量子化代表ベクトルのインデックスを第2ベクトル量子化インデックスCとして出力する(S106)。 Second vector quantization section 106 receives error signal E (k) and quantized normalized value X as input, and divides error signal E (k) by quantized normalized value X or multiplies the inverse. To obtain a normalized error signal. Then, the normalized error signal a plurality of samples collectively by vector quantization, and outputs the index of the quantization representative vector as a second vector quantization index C 2 (S106).

符号化器100は、第1ベクトル量子化インデックスCと第2ベクトル量子化インデックスCと正規化値量子化インデックスCが含まれる符号を、復号器100’に送る。そして、復号器100’では、以下のような処理が行われる。
正規化値復号部107は、正規化値量子化インデックスCを入力とし、正規化値量子化インデックスCに対応する復号正規化値を求め、復号量子化正規化値Xとして出力する(S107)。
Encoder 100, a code included first vector quantization index C 1 and the second vector quantization index C 2 and the normalized value quantization index C S, and sends to the decoder 100 '. The decoder 100 ′ performs the following processing.
The normalized value decoding unit 107 receives the normalized value quantization index C S as input, obtains a decoded normalized value corresponding to the normalized value quantization index C S, and outputs it as a decoded quantized normalized value X ( S107).

第1ベクトル復号部108、第1ベクトル量子化インデックスCと復号量子化正規化値Xを入力とし、第1ベクトル量子化インデックスCを復号し、フレーム単位の正規化された信号を正規化第1復号量子化信号として求め、正規化第1復号量子化信号に復号量子化正規化値Xを乗算することで逆正規化し、第1復号量子化信号X^(k)として出力する(S108)。 The first vector decoding unit 108 receives the first vector quantization index C 1 and the decoded quantization normalized value X as input, decodes the first vector quantization index C 1 , and normalizes the normalized signal in units of frames. determined as the first decoded quantized signal of normalized first decoded quantized signal to the decoding quantized normalization value X - inversely normalized by multiplying the outputs as a first decoded quantized signal X ^ (k) (S108).

第2ベクトル復号部109は、第2ベクトル量子化インデックスCと復号量子化正規化値Xを入力とし、第2ベクトル量子化インデックスCを復号し、正規化された信号を正規化誤差信号として求め、正規化誤差信号に復号量子化正規化値Xを乗算することで逆正規化し、復号量子化誤差信号E^(k)として出力する(S109)。 Second vector decoding section 109 receives second vector quantization index C 2 and decoded quantization normalized value X as inputs, decodes second vector quantization index C 2 , and normalizes the normalized signal as a normalization error. calculated as the signal, a normalized error signal to the decoding quantized normalization value X - inversely normalized by multiplying the outputs as a decoded quantization error signal E ^ (k) (S109) .

誤差修正部110は、第1復号量子化信号X^(k)と復号量子化誤差信号E^(k)を入力とし、復号信号Z(k)を、例えば、
Z(k)=X^(k)+E^(k) (3)
のように求め、復号信号Z(k)を出力する(S110)。
時間領域変換部111は、復号信号Z(k)を入力とし、例えばフレーム点数L分の逆MDCTを用いて時間領域変換を行い、フレーム点数L分の出力信号z(n)を出力する(S111)。
The error correction unit 110 receives the first decoded quantized signal X ^ (k) and the decoded quantized error signal E ^ (k) as input, and converts the decoded signal Z (k) into, for example,
Z (k) = X ^ (k) + E ^ (k) (3)
Thus, the decoded signal Z (k) is output (S110).
The time domain conversion unit 111 receives the decoded signal Z (k) as an input, performs time domain conversion using, for example, inverse MDCT for the number of frame points L, and outputs an output signal z (n) for the number of frame points L (S111). ).

特許2776474号明細書Japanese Patent No. 2767474

ITU-T Recommendation G.729.1, SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS, Digital terminal equipments - Coding of analogue signals by methods other than PCM, G.729-based embedded variable bit-rate coder: An 8-32 kbit/s scalable wideband coder bitstream interoperable with G.729, 05/2006.ITU-T Recommendation G.729.1, SERIES G: TRANSMISSION SYSTEMS AND MEDIA, DIGITAL SYSTEMS AND NETWORKS, Digital terminal equipments-Coding of analogue signals by methods other than PCM, G.729-based embedded variable bit-rate coder: An 8- 32 kbit / s scalable wideband coder bitstream interoperable with G.729, 05/2006.

上述の符号化器100と復号器100’では、周波数領域信号を量子化するために必要なビット数が足りないと、入力信号に存在するはずの周波数成分が出力信号には存在しないこと(周波数成分の欠損)が生じてしまうことがある。   In the above-described encoder 100 and decoder 100 ′, if the number of bits necessary to quantize the frequency domain signal is insufficient, the frequency component that should exist in the input signal does not exist in the output signal (frequency Component deficiency) may occur.

しかし、符号化器100と復号器100’は、第1量子化信号の値(前段のベクトル量子化で得られた量子化された信号の値)が0か0以外かに関係なく、第1量子化信号と符号化対象の信号との誤差を示す信号を後段のベクトル量子化の対象としている。つまり、従来技術には、ミュージカルノイズ(ある周波数成分の有無が時間的に変化したときに生じることが多い人間が敏感に感じるノイズ)のような人間が敏感に感じるノイズを無くすための特別な工夫はない。したがって、元の信号と復号された信号との誤差のパワーが数値の上では小さくなったとしても、人間の感覚が敏感な誤差に着目した符号化ではないので、ミュージカルノイズが残りやすいという課題がある。   However, the encoder 100 and the decoder 100 ′ have the first quantized signal regardless of whether the value of the first quantized signal (the value of the quantized signal obtained by the preceding vector quantization) is 0 or other than 0. A signal indicating an error between the quantized signal and the signal to be encoded is a target of vector quantization in the subsequent stage. In other words, the conventional technology has a special device for eliminating noise that humans feel sensitive, such as musical noise (noise that humans often feel when the presence or absence of a certain frequency component changes over time). There is no. Therefore, even if the power of error between the original signal and the decoded signal is small in numerical value, it is not an encoding that focuses on errors that are sensitive to human senses, so there is a problem that musical noise tends to remain. is there.

本発明は、このような課題に鑑みてなされたものであり、符号化対象信号を多段量子化するために必要なビット数が足りず、復号後に信号の欠損が生じてしまう場合であっても、2段目以降のベクトル量子化でミュージカルノイズを軽減できる多段ベクトル量子化方法を提供することを目的とする。   The present invention has been made in view of such a problem, and even when the number of bits necessary for multistage quantization of a signal to be encoded is insufficient and a signal loss occurs after decoding. An object of the present invention is to provide a multistage vector quantization method capable of reducing musical noise by second-stage and subsequent vector quantization.

本発明の符号化方法は、少なくとも正規化値計算ステップ、正規化値量子化ステップ、第1ベクトル量子化ステップ、誤差計算ステップ、第2ベクトル量子化ステップを有する。正規化値計算ステップは、所定サンプル数ごとの符号化対象の信号サンプル(以下、「第1符号化対象信号」という)の正規化値を求める。「第1符号化対象信号」としては、周波数領域に変換された音響信号、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号、フレーム単位に分割された時間領域の音響信号などがありえるが、これらに限定する必要はない。所定サンプル数とは、1フレームを構成する信号のサンプル数の場合には80、64などの数がある。また、1フレームを構成する信号をさらに分割した、サブフレーム、サブバンド、サブベクトルと呼ばれる単位の場合には、8などの数がある。正規化値量子化ステップは、正規化値を量子化し、正規化値量子化インデックスと量子化正規化値を求める。第1ベクトル量子化ステップは、量子化正規化値を用いて第1符号化対象信号を正規化して正規化第1符号化対象信号を求め、正規化第1符号化対象信号を複数サンプル纏めてベクトル量子化して、第1ベクトル量子化インデックスと第1量子化信号を求める。誤差計算ステップは、第1量子化信号の値が0の場合は、第1符号化対象信号の絶対値と量子化正規化値から誤差信号を求め、第1量子化信号の値が0以外の場合は、第1符号化対象信号の絶対値と第1量子化信号の絶対値から誤差信号を求める。第2ベクトル量子化ステップは、誤差信号または誤差信号に対応した信号を複数サンプル纏めてベクトル量子化し、第2ベクトル量子化インデックスを求める。   The encoding method of the present invention includes at least a normalized value calculation step, a normalized value quantization step, a first vector quantization step, an error calculation step, and a second vector quantization step. In the normalization value calculation step, a normalization value of a signal sample to be encoded for each predetermined number of samples (hereinafter referred to as “first encoding target signal”) is obtained. As the “first encoding target signal”, an acoustic signal converted into the frequency domain, an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz, etc.) in the frequency domain acoustic signal, or divided into frame units There may be time-domain acoustic signals, but it is not necessary to limit them. The predetermined number of samples includes numbers such as 80 and 64 in the case of the number of samples of a signal constituting one frame. In the case of units called subframes, subbands, and subvectors obtained by further dividing a signal constituting one frame, there are numbers such as eight. In the normalized value quantization step, the normalized value is quantized to obtain a normalized value quantization index and a quantized normalized value. The first vector quantization step normalizes the first encoding target signal using the quantized normalized value to obtain a normalized first encoding target signal, and collects the normalized first encoding target signal by a plurality of samples. Vector quantization is performed to obtain a first vector quantization index and a first quantized signal. In the error calculation step, when the value of the first quantized signal is 0, an error signal is obtained from the absolute value of the first encoding target signal and the quantized normalized value, and the value of the first quantized signal is other than 0. In this case, an error signal is obtained from the absolute value of the first encoding target signal and the absolute value of the first quantized signal. In the second vector quantization step, a plurality of samples of the error signal or a signal corresponding to the error signal are vector-quantized to obtain a second vector quantization index.

本発明の復号方法は、正規化値復号ステップ、第1ベクトル復号ステップ、第2ベクトル復号ステップ、誤差修正ステップを有する。復号方法では、第1ベクトル量子化インデックスと第2ベクトル量子化インデックスと正規化値量子化インデックスを含む符号から、復号信号を求める。正規化値復号ステップは、正規化値量子化インデックスに対応する復号正規化値を求め、復号量子化正規化値として出力する。第1ベクトル復号ステップは、第1ベクトル量子化インデックスに対応した正規化第1復号量子化信号を求め、正規化第1復号量子化信号と復号量子化正規化値を用いて第1復号量子化信号を求める。第2ベクトル復号ステップは、第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、正規化第2復号量子化信号と前記復号量子化正規化値を用いて第2復号量子化信号を求める。   The decoding method of the present invention includes a normalized value decoding step, a first vector decoding step, a second vector decoding step, and an error correction step. In the decoding method, a decoded signal is obtained from a code including a first vector quantization index, a second vector quantization index, and a normalized value quantization index. The normalized value decoding step obtains a decoded normalized value corresponding to the normalized value quantization index and outputs it as a decoded quantized normalized value. The first vector decoding step obtains a normalized first decoded quantized signal corresponding to the first vector quantization index, and uses the normalized first decoded quantized signal and the decoded quantized normalized value to perform the first decoding quantization Find the signal. The second vector decoding step obtains a normalized second decoded quantized signal corresponding to the second vector quantization index, and uses the normalized second decoded quantized signal and the decoded quantized normalized value to determine the second decoded quantum Obtain the quantified signal.

誤差修正ステップは、第1復号量子化信号の値が0の場合は、復号量子化正規化値と第2復号量子化信号の加重加算を用いた計算結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とする。あるいは、第1復号量子化信号の値が0かつ1フレーム過去の復号量子化正規化値が0の場合は、現在のフレームの復号量子化正規化値と前記第2復号量子化信号の加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とし、第1復号量子化信号の値が0かつ1フレーム過去の復号量子化正規化値が0以外の場合は、現在のフレームの復号量子化正規化値と第2復号量子化信号と1フレーム過去の復号量子化正規化値との加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号としてもよい。また、第1復号量子化信号の値が0以外の場合は、第1復号量子化信号の絶対値と第2復号量子化信号の和を用いた計算結果を復号信号とする。例えば、第1復号量子化信号の値が負の場合は、第1復号量子化信号の絶対値と第2復号量子化信号の和に−1を乗算し、乗算結果を復号信号とする。第1復号量子化信号の値が正の場合は、第1復号量子化信号の絶対値と第2復号量子化信号の和を復号信号とする。   In the error correction step, when the value of the first decoded quantized signal is 0, randomly generated 1 or −1 is calculated as a calculation result using weighted addition of the decoded quantized normalized value and the second decoded quantized signal. Multiplication is performed, and the multiplication result is used as a decoded signal. Alternatively, when the value of the first decoded quantized signal is 0 and the decoded quantized normalized value of one frame past is 0, the weighted addition of the decoded quantized normalized value of the current frame and the second decoded quantized signal When the result of the above is multiplied by 1 or −1 randomly generated, the multiplication result is a decoded signal, and the value of the first decoded quantized signal is 0 and the decoded quantized normalized value in the past of one frame is other than 0, The result of weighted addition of the decoded quantization normalized value of the current frame, the second decoded quantized signal, and the decoded quantized normalized value of one frame past is multiplied by 1 or −1 generated at random, and the multiplication result is It may be a decoded signal. In addition, when the value of the first decoded quantized signal is other than 0, a calculation result using the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal is set as a decoded signal. For example, when the value of the first decoded quantized signal is negative, the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal is multiplied by −1, and the multiplication result is used as a decoded signal. When the value of the first decoded quantized signal is positive, the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal is used as the decoded signal.

本発明の符号化方法と復号方法によれば、二段以降のベクトル量子化部において、第1符号化対象信号と第1量子化信号との間の誤差でなく、第1符号化対象信号を絶対値領域に置き換え、第1符号化対象信号の絶対値と第1量子化信号の絶対値の間の差分を量子化する。したがって、第1符号化対象信号と第1量子化信号の間の誤差と比べ、二段以降で量子化すべき誤差のダイナミックレンジを2分の1以下にできる。   According to the encoding method and the decoding method of the present invention, in the vector quantization unit after the second stage, the first encoding target signal is not the error between the first encoding target signal and the first quantization signal. The absolute value region is replaced, and the difference between the absolute value of the first encoding target signal and the absolute value of the first quantized signal is quantized. Therefore, compared to the error between the first encoding target signal and the first quantized signal, the dynamic range of the error to be quantized in the second and subsequent stages can be reduced to half or less.

また、前段までのベクトル量子化部においてパルスが立たなかった第1量子化信号の値は0であるため、第1符号化対象信号の絶対値との間の誤差が大きい。本発明では、前段までの量子化出力の値が0である第1符号化対象信号については、第1符号化対象信号の絶対値と量子化正規化値の間の差分を量子化するので、ベクトル量子化する誤差を小さくできる。   Further, since the value of the first quantized signal for which no pulse is generated in the vector quantizing unit up to the previous stage is 0, an error between the absolute value of the first encoding target signal is large. In the present invention, for the first encoding target signal whose quantization output value up to the previous stage is 0, the difference between the absolute value of the first encoding target signal and the quantization normalized value is quantized. The error of vector quantization can be reduced.

このように、本発明の符号化方法と復号方法は、量子化する誤差の大きさを大幅に減らすことができるため、ベクトル量子化の効率を上げることができる。   As described above, the encoding method and the decoding method of the present invention can greatly reduce the magnitude of the error to be quantized, and can increase the efficiency of vector quantization.

従来の多段ベクトル量子化手法を用いた符号化器と復号器の機能構成例を示す図。The figure which shows the function structural example of the encoder and decoder using the conventional multistage vector quantization method. 従来の符号化器と復号器の処理フローを示す図。The figure which shows the processing flow of the conventional encoder and decoder. 従来の多段ベクトル量子化のイメージを示す図。The figure which shows the image of the conventional multistage vector quantization. 本発明の多段ベクトル量子化のイメージを示す図。The figure which shows the image of the multistage vector quantization of this invention. 初段のベクトル量子化後に、第1符号化対象信号と第1量子化信号とを絶対値で表した図。The figure which represented the 1st encoding object signal and the 1st quantization signal by the absolute value after the first stage vector quantization. 図5で示した信号と一緒にサブベクトルごとに求めた量子化正規化値を示した図。The figure which showed the quantization normalization value calculated | required for every subvector with the signal shown in FIG. 第1符号化対象信号の例と本発明の誤差信号を生成するための基準となる信号とを比較するための図。The figure for comparing the example of the 1st encoding object signal, and the signal used as the standard for generating the error signal of the present invention. 実施例1、実施例2、実施例3の符号化器と復号器の構成例を示す図。The figure which shows the structural example of the encoder of Example 1, Example 2, and Example 3, and a decoder. 実施例1、実施例2、実施例3の符号化器と復号器の処理フロー例を示す図。The figure which shows the example of a processing flow of the encoder of Example 1, Example 2, and Example 3 and a decoder. 誤差計算部205の具体的な処理フロー例を示す図。The figure which shows the example of a specific processing flow of the error calculation part 205. FIG. 誤差修正部210の具体的な処理フロー例を示す図。The figure which shows the example of a specific process flow of the error correction part 210. FIG. 誤差修正部275の具体的な処理フローの例を示す図。The figure which shows the example of the specific processing flow of the error correction part 275. FIG. 実施例4〜6で追加される原理を説明するための図。The figure for demonstrating the principle added in Examples 4-6. 実施例4、実施例4変形例1、実施例4変形例2の符号化器と復号器の構成例を示す図。The figure which shows the structural example of the encoder of Example 4, Example 4 modification 1, Example 4 modification 2, and a decoder. 実施例4、実施例4変形例1、実施例4変形例2の符号化器と復号器の処理フロー例を示す図。The figure which shows the example of a processing flow of the encoder of Example 4, Example 4 modification 1, and Example 4 modification 2 of a decoder. 誤差信号E(m)と数Mを求めるための処理フローの例を示す図。The figure which shows the example of the processing flow for calculating | requiring the error signal E (m) and the number M. 値が0である第1復号量子化信号X^(k)の数Mを求める処理フローの例を示す図。The figure which shows the example of the processing flow which calculates | requires the number M of the 1st decoding quantization signal X ^ (k) whose value is 0. 誤差修正部310、375の具体的な処理フローの例を示す図。The figure which shows the example of the specific processing flow of the error correction part 310,375. ステップS3751の処理フローの例を示す図。The figure which shows the example of the processing flow of step S3751. 実施例5、実施例5変形例1、実施例5変形例2の符号化器と復号器の構成例を示す図。The figure which shows the structural example of the encoder of Example 5, Example 5 modification 1, Example 5 modification 2, and a decoder. 実施例5、実施例5変形例1、実施例5変形例2の符号化器と復号器の処理フロー例を示す図。The figure which shows the processing flow example of the encoder of Example 5, Example 5 modification 1, Example 5 modification 2, and a decoder. 実施例5の再計算正規化値Eを求める処理フローの例を示す図。FIG. 20 is a diagram illustrating an example of a processing flow for obtaining a recalculated normalization value E − according to the fifth embodiment. 実施例5の再計算正規化値Eを求める別の処理フローの例を示す図。FIG. 16 is a diagram illustrating an example of another processing flow for obtaining a recalculated normalized value E − according to the fifth embodiment. 実施例6、実施例6変形例1、実施例6変形例2の符号化器と復号器の構成例を示す図。The figure which shows the structural example of the encoder of Example 6, Example 6 modification 1, and Example 6 modification 2 and a decoder. 実施例6、実施例6変形例1、実施例6変形例2の符号化器と復号器の処理フロー例を示す図。The figure which shows the example of a processing flow of the encoder of Example 6, Example 6 modification 1, and Example 6 modification 2 and a decoder. 実施例6の再計算正規化値Eを求める処理フローの例を示す図。FIG. 20 is a diagram illustrating an example of a processing flow for obtaining a recalculated normalization value E − according to the sixth embodiment. 実施例6の再計算正規化値Eを求める別の処理フローの例を示す図。It illustrates another example of processing flow for determining the - recalculation normalized value E of Example 6. 楽器のみのオーケストラを対象としたときの実験結果を示す図。The figure which shows the experimental result when targeting the orchestra only of a musical instrument. 歌を含んでいるオーケストラを対象としたときの実験結果を示す図。The figure which shows the experimental result when targeting the orchestra containing a song. 楽器のみのストリングを対象としたときの実験結果を示す図。The figure which shows the experimental result when targeting only the string of musical instruments. 歌を含んでいるポップスを対象としたときの実験結果を示す図。The figure which shows the experimental result when targeting the pops containing a song. 管楽器(歌なし)を対象としたときの実験結果を示す図。The figure which shows the experimental result when targeting wind instrument (no song). 歌のみを対象としたときの実験結果を示す図。The figure which shows the experimental result when only a song is made into object.

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   Hereinafter, embodiments of the present invention will be described in detail. In addition, the same number is attached | subjected to the structure part which has the same function, and duplication description is abbreviate | omitted.

原理
図3は、従来の多段ベクトル量子化のイメージを示す図である。横軸は周波数成分の番号、縦軸は各周波数成分の値を示している。この図では、初段のベクトル量子化の対象となる信号(第1符号化対象信号)は、周波数領域信号(MDCT係数)であり、細い線で示されている。初段のベクトル量子化後の信号(第1量子化信号)は、太い線で示されている。少ないビット(例えば37ビット)でベクトル量子化した場合、値が0の第1量子化信号(周波数成分において値が0の箇所)が多数発生する。また、従来の後段のベクトル量子化では、図の第1符号化対象信号と第1量子化信号との差分を複数サンプル纏めてベクトル量子化している。
Principle FIG. 3 is a diagram showing an image of conventional multistage vector quantization. The horizontal axis indicates the frequency component number, and the vertical axis indicates the value of each frequency component. In this figure, the signal (first encoding target signal) to be subjected to vector quantization in the first stage is a frequency domain signal (MDCT coefficient) and is indicated by a thin line. The signal after the first stage vector quantization (first quantized signal) is indicated by a thick line. When vector quantization is performed with a small number of bits (for example, 37 bits), a large number of first quantized signals having a value of 0 (locations having a value of 0 in the frequency component) are generated. Further, in the conventional vector quantization in the latter stage, a plurality of samples of the difference between the first encoding target signal and the first quantized signal in the figure are vector-quantized.

図4は、本発明の多段ベクトル量子化のイメージを示す図である。この図も横軸は周波数成分の番号、縦軸は各周波数成分の値を示している。また、細い線は第1符号化対象信号の絶対値を、太い線は第1量子化信号の絶対値を示している。本発明では、第1量子化信号の値が0のときには、第1符号化対象信号の絶対値と量子化正規化値との差分を後段でベクトル量子化とする。なお、図4の量子化正規化値は、8サンプルごとに求めた例である。   FIG. 4 is a diagram showing an image of multistage vector quantization according to the present invention. In this figure, the horizontal axis indicates the frequency component number, and the vertical axis indicates the value of each frequency component. The thin line indicates the absolute value of the first encoding target signal, and the thick line indicates the absolute value of the first quantized signal. In the present invention, when the value of the first quantized signal is 0, the difference between the absolute value of the first encoding target signal and the quantized normalized value is set to vector quantization in the subsequent stage. In addition, the quantization normalization value of FIG. 4 is an example calculated | required for every 8 samples.

次に、図5〜7を用いて手順について説明する。図5のように、初段のベクトル量子化後に、第1符号化対象信号と第1量子化信号とを絶対値で表す。そして、図6に示すように、サブベクトルごとに量子化正規化値を求める。この図からも、値が0の第1量子化信号と第1符号化対象信号との誤差よりも、量子化正規化値と第1符号化対象信号との差分の方が小さいことが分かる。したがって、第1量子化信号の値が0のときには、第1符号化対象信号の絶対値と量子化正規化値との差分を後段でベクトル量子化する方が効率的である。また、量子化正規化値は、従来の復号器でも知る情報なので、量子化正規化値を符号化に利用しても復号器に新たな情報を伝える必要はない。図6では8サンプルごとに量子化正規化値を求めているが、64サンプルで1つの量子化正規化値を求めてもよいし、他の数ごとに量子化正規化値を求めてもよい。ただし、適当なサンプル数ごとに量子化正規化値を求めれば、量子化正規化値と第1符号化対象信号との差分を小さくできる。図7は、第1符号化対象信号の例と本発明の誤差信号を生成するための基準となる信号とを比較するための図である。細い線は第1符号化対象信号の絶対値の例である。太い線は、第1量子化信号の値が0以外のときには第1量子化信号の絶対値とし、第1量子化信号の値が0のときには量子化正規化値としたときの線である。この図から、差分を求めるときに正規化値を基準とすれば、差分を小さくできることがわかる。   Next, the procedure will be described with reference to FIGS. As shown in FIG. 5, after the first-stage vector quantization, the first encoding target signal and the first quantized signal are represented by absolute values. Then, as shown in FIG. 6, a quantized normalized value is obtained for each subvector. This figure also shows that the difference between the quantized normalized value and the first encoding target signal is smaller than the error between the first quantized signal having a value of 0 and the first encoding target signal. Therefore, when the value of the first quantized signal is 0, it is more efficient to vector quantize the difference between the absolute value of the first encoding target signal and the quantized normalized value in the subsequent stage. Further, since the quantized normalized value is information that can be known by a conventional decoder, it is not necessary to transmit new information to the decoder even if the quantized normalized value is used for encoding. In FIG. 6, the quantized normalized value is obtained every 8 samples, but one quantized normalized value may be obtained from 64 samples, or the quantized normalized value may be obtained every other number. . However, if the quantization normalization value is obtained for each appropriate number of samples, the difference between the quantization normalization value and the first encoding target signal can be reduced. FIG. 7 is a diagram for comparing an example of the first encoding target signal with a signal serving as a reference for generating the error signal of the present invention. The thin line is an example of the absolute value of the first encoding target signal. A thick line is a line when the first quantized signal is an absolute value of the first quantized signal when the value of the first quantized signal is other than 0, and a quantized normalized value when the value of the first quantized signal is 0. From this figure, it can be seen that the difference can be reduced if the normalized value is used as a reference when obtaining the difference.

具体例
図8に実施例1の符号化器と復号器の構成例を示す。図9に実施例1の符号化器と復号器の処理フロー例を示す。図9(A)は符号化器の処理フローを示しており、図9(B)は復号器の処理フローを示している。符号化器200は、周波数領域変換部101、正規化値計算部102、正規化値量子化部103、第1ベクトル量子化部104、誤差計算部205、第2ベクトル量子化部106を備える。復号器200’は、正規化値復号部107、第1ベクトル復号部108、第2ベクトル復号部109、誤差修正部210、時間領域変換部111を備える。符号化器200は、符号化器100と誤差計算部205が異なる。また、復号器200’は、復号器100’と誤差修正部210が異なる。その他の構成部は、符号化器100、復号器100’と同じである。なお、この実施例での第1符号化対象信号は周波数領域信号である。
Specific Example FIG. 8 shows a configuration example of the encoder and decoder of the first embodiment. FIG. 9 shows an example of the processing flow of the encoder and decoder of the first embodiment. FIG. 9A shows the processing flow of the encoder, and FIG. 9B shows the processing flow of the decoder. The encoder 200 includes a frequency domain transform unit 101, a normalized value calculation unit 102, a normalized value quantization unit 103, a first vector quantization unit 104, an error calculation unit 205, and a second vector quantization unit 106. The decoder 200 ′ includes a normalized value decoding unit 107, a first vector decoding unit 108, a second vector decoding unit 109, an error correction unit 210, and a time domain conversion unit 111. The encoder 200 is different from the encoder 100 in the error calculation unit 205. The decoder 200 ′ is different from the decoder 100 ′ in the error correction unit 210. Other components are the same as those of the encoder 100 and the decoder 100 ′. Note that the first encoding target signal in this embodiment is a frequency domain signal.

誤差計算部205は、第1量子化信号X^(k)の値が0の場合は、周波数領域信号X(k)の絶対値と量子化正規化値Xから誤差信号を求め、第1量子化信号X^(k)の値が0以外の場合は、周波数領域信号X(k)の絶対値と第1量子化信号X^(k)の絶対値から誤差信号E(k)を求める(S205)。図10に誤差計算部205の具体的な処理フロー例を示す。k=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S2051)。ステップS2051がYesの場合、X^(k)が0かを確認する(S2052)。ステップS2052がYesの場合(第1量子化信号X^(k)の値が0の場合)、周波数領域信号X(k)の絶対値と量子化正規化値Xの差分
|X(k)|−A・X
を誤差信号E(k)とする(S2053)。ここで、Aは正規化値の調整用の正の数(例えば1.0)である。ステップS2052がNoの場合(第1量子化信号X^(k)の値が0以外の場合)、周波数領域信号X(k)の絶対値と第1量子化信号X^(k)の絶対値の差分である
|X(k)|−|X^(k)|
を誤差信号E(k)とする(S2054)。kを1増加させ(S2055)、ステップS2051に戻る。ステップS2051がNoの場合、処理を終了する。
Error calculator 205, if the value of the first quantized signal X ^ (k) is 0, the absolute value and the quantized normalized values X of the frequency domain signals X (k) - seek error signal from the first When the value of the quantized signal X ^ (k) is other than 0, the error signal E (k) is obtained from the absolute value of the frequency domain signal X (k) and the absolute value of the first quantized signal X ^ (k). (S205). FIG. 10 shows a specific processing flow example of the error calculation unit 205. The process is started with k = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S2051). When step S2051 is Yes, it is confirmed whether X ^ (k) is 0 (S2052). When Step S2052 is Yes (when the value of the first quantized signal X ^ (k) is 0), the difference between the absolute value of the frequency domain signal X (k) and the quantized normalized value X | X (k) | -A ・ X
Is an error signal E (k) (S2053). Here, A is a positive number (for example, 1.0) for adjusting the normalized value. When Step S2052 is No (when the value of the first quantized signal X ^ (k) is other than 0), the absolute value of the frequency domain signal X (k) and the absolute value of the first quantized signal X ^ (k) | X (k) |-| X ^ (k) |
Is an error signal E (k) (S2054). k is increased by 1 (S2055), and the process returns to step S2051. If step S2051 is No, the process ends.

復号器200’の誤差修正部210は、第1復号量子化信号X^(k)の値が0の場合は、復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算を用いた計算結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とし、第1復号量子化信号X^(k)の値が0以外の場合は、第1復号量子化信号X^(k)と第2復号量子化信号E^(k)の和を用いた計算結果を復号信号Z(k)とする(S210)。図11に誤差修正部210の具体的な処理フロー例を示す。k=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S2101)。ステップS2101がYesの場合、X^(k)が0かを確認する(S2102)。ステップS2102がYesの場合(第1復号量子化信号X^(k)の値が0の場合)、復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算A・X+E^(k)にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする(S2103)。ここで、Aは正規化値の調整用の正の数(例えば1.0)である。また、図中のrand(k)は、ランダムに1または−1を生成する関数を示しており、乱数などを用いて計算してもよい。このように、ランダムに1または−1を乗算するのは、すべての周波数で復号信号が正の値となったのでは、歪んだ音になってしまうからであり、ランダムに1または−1を乗算することによって自然な音を作り出すことができる。ステップS2102がNoの場合は、X^(k)が負かを確認する(S2104)。ステップS2104がYesの場合(第1復号量子化信号の値が負の場合)は、第1復号量子化信号X^(k)の絶対値と第2復号量子化信号E^(k)の和に−1を乗算し、乗算結果を復号信号Z(k)とする(S2105)。ステップS2104がNoの場合(第1復号量子化信号の値が正の場合)は、第1復号量子化信号X^(k)の絶対値と第2復号量子化信号E^(k)の和を復号信号Z(k)とする(S2106)。kを1増加させ(S2107)、ステップS2101に戻る。ステップS2101がNoの場合、処理を終了する。 Error correction unit 210 of the decoder 200 ', when the value of first decoded quantized signal X ^ (k) is 0, the decoding quantized normalization value X - and the second decoded quantized signal E ^ (k) When the calculation result using the weighted addition is multiplied by 1 or −1 randomly generated, the multiplication result is the decoded signal Z (k), and the value of the first decoded quantized signal X ^ (k) is other than 0 Uses the sum of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k) as a decoded signal Z (k) (S210). FIG. 11 shows a specific processing flow example of the error correction unit 210. The process is started with k = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S2101). When step S2101 is Yes, it is confirmed whether X ^ (k) is 0 (S2102). Step (If the value of the first decoded quantized signal X ^ (k) of 0) S2102 If Yes, the decoded quantized normalization value X - and weighted addition A second decoded quantized signal E ^ (k) X + E ^ (k) is multiplied by 1 or −1 randomly generated, and the multiplication result is set as a decoded signal Z (k) (S2103). Here, A is a positive number (for example, 1.0) for adjusting the normalized value. Further, rand (k) in the figure indicates a function that randomly generates 1 or −1, and may be calculated using a random number or the like. Thus, the reason why 1 or −1 is randomly multiplied is that if the decoded signal becomes a positive value at all frequencies, it becomes a distorted sound. By multiplying, a natural sound can be created. When step S2102 is No, it is confirmed whether X ^ (k) is negative (S2104). When Step S2104 is Yes (when the value of the first decoded quantized signal is negative), the sum of the absolute value of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k). Is multiplied by −1, and the multiplication result is set as a decoded signal Z (k) (S2105). When Step S2104 is No (when the value of the first decoded quantized signal is positive), the sum of the absolute value of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k). Is the decoded signal Z (k) (S2106). k is increased by 1 (S2107), and the process returns to step S2101. If step S2101 is No, the process ends.

実施例1の符号化方法と復号方法では、絶対値を利用するので符号の情報(±の情報)が失われる場合がある。しかし、二段以降のベクトル量子化部において、第1符号化対象信号(本実施例では周波数領域信号)と第1量子化信号との間の誤差でなく、第1符号化対象信号を絶対値領域に置き換え、第1符号化対象信号の絶対値と第1量子化信号の絶対値の間の差分を量子化する。したがって、第1符号化対象信号と第1量子化信号の間の誤差と比べ、二段以降で量子化すべき誤差のダイナミックレンジを2分の1以下にできる。また、前段までのベクトル量子化部においてパルスが立たなかった第1量子化信号の値は0であるため、第1符号化対象信号の絶対値との間の誤差が大きい。本発明では、前段までの量子化出力の値が0である第1符号化対象信号については、第1符号化対象信号の絶対値と量子化正規化値の間の差分を量子化するので、ベクトル量子化する誤差を小さくできる。   In the encoding method and the decoding method according to the first embodiment, since the absolute value is used, code information (± information) may be lost. However, in the second stage and subsequent vector quantization units, the first encoding target signal is not an absolute value but an error between the first encoding target signal (frequency domain signal in this embodiment) and the first quantization signal. The difference between the absolute value of the first encoding target signal and the absolute value of the first quantized signal is quantized by replacing with the region. Therefore, compared to the error between the first encoding target signal and the first quantized signal, the dynamic range of the error to be quantized in the second and subsequent stages can be reduced to half or less. Further, since the value of the first quantized signal for which no pulse is generated in the vector quantizing unit up to the previous stage is 0, an error between the absolute value of the first encoding target signal is large. In the present invention, for the first encoding target signal whose quantization output value up to the previous stage is 0, the difference between the absolute value of the first encoding target signal and the quantization normalized value is quantized. The error of vector quantization can be reduced.

このように、本実施例の符号化方法と復号方法は、量子化する誤差の大きさを大幅に減らすことができるため、符号の情報が失われたとしても、総合的にはベクトル量子化の効率を上げることができる。   As described above, since the encoding method and the decoding method of the present embodiment can greatly reduce the magnitude of the error to be quantized, even if the code information is lost, the vector quantization is comprehensively performed. Efficiency can be increased.

なお、本実施例では、第1ベクトル量子化部104の符号化の対象となる信号(第1符号化対象信号)は周波数領域に変換された音響信号を前提としていた。しかし、この信号に限定する必要はなく、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号を第1符号化対象信号としてもよいし、フレーム単位に分割された時間領域の音響信号を第1符号化対象信号としてもよい。   In the present embodiment, the signal (first encoding target signal) to be encoded by the first vector quantization unit 104 is assumed to be an acoustic signal converted into the frequency domain. However, it is not necessary to limit to this signal, and an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz) among the acoustic signals in the frequency domain may be used as the first encoding target signal or divided into frames. The time domain acoustic signal thus made may be used as the first encoding target signal.

実施例2では、復号器側の量子化正規化値を決めるときに、1つ過去のフレームの量子化正規化値も考慮する点が実施例1と異なる。構成と処理フローを示す図は実施例1と同じであり、図8が実施例2の符号化器と復号器の構成例を、図9が実施例2の符号化器と復号器の処理フロー例を示す。図9(A)は符号化器の処理フローを示しており、図9(B)は復号器の処理フローを示している。実施例2の符号化器200は実施例1と同じである。実施例2の復号器250’は、正規化値復号部157、第1ベクトル復号部108、第2ベクトル復号部109、誤差修正部210、時間領域変換部111を備える。復号器250’は、復号器200’と正規化値復号部157が異なる。その他の構成部は実施例1と同じである。   The second embodiment is different from the first embodiment in that the quantization normalization value of the previous frame is also considered when determining the quantization normalization value on the decoder side. The diagram showing the configuration and the processing flow is the same as that of the first embodiment, FIG. 8 shows a configuration example of the encoder and decoder of the second embodiment, and FIG. 9 shows the processing flow of the encoder and decoder of the second embodiment. An example is shown. FIG. 9A shows the processing flow of the encoder, and FIG. 9B shows the processing flow of the decoder. The encoder 200 of the second embodiment is the same as that of the first embodiment. The decoder 250 ′ according to the second embodiment includes a normalized value decoding unit 157, a first vector decoding unit 108, a second vector decoding unit 109, an error correction unit 210, and a time domain conversion unit 111. The decoder 250 ′ is different from the decoder 200 ′ in the normalized value decoding unit 157. Other components are the same as those in the first embodiment.

正規化値復号部157は、正規化値量子化インデックスに対応する復号正規化値X を求める。復号正規化値X は処理対象となっている現在のフレームの復号正規化値である。そして、1フレーム前(1フレーム過去)の復号正規化値X が0の場合は、現在のフレームの復号正規化値X を、復号量子化正規化値Xとして出力する。1フレーム前の復号正規化値X が0でない場合は、現在のフレームの復号正規化値X と1フレーム前の復号正規化値X との加重加算
=αX +βX
を、復号量子化正規化値Xとして出力する(S157)。αとβは調整係数を表し、例えばそれぞれ0.5とすればよい。
The normalized value decoding unit 157 obtains a decoded normalized value X - C corresponding to the normalized value quantization index. The decoding normalization value X - C is the decoding normalization value of the current frame being processed. Then, the decoded normalization value X before one frame (one frame previous) - P is the case of 0, the decoded normalization value X of the current frame - the C, decoded quantized normalization value X - is output as. Decoded normalization value of the previous frame and X - If P is not 0, the decoded normalization value X of the current frame - C and the previous frame of the decoded normalization value X - weighted addition of P X - = .alpha.X - C + ΒX P
And decoding quantized normalization value X - is output as (S157). α and β represent adjustment coefficients, for example, each may be set to 0.5.

実施例2の符号化方法と復号方法はこのような処理なので、実施例1の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。本実施例では、周波数成分全ての復号正規化値に基づき復号量子化正規化値を計算する方法を示したが、例えば、8点ずつのサブベクトルごとに纏めてベクトル量子化する量子化方法を用いる場合、8点ずつの復号正規化値から求められた復号量子化正規化値に基づき、各サブベクトルの復号量子化正規化値を計算してもよい。 Since the encoding method and decoding method of the second embodiment are such processes, the same effects as the encoding method and decoding method of the first embodiment can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity. In the present embodiment, a method of calculating a decoded quantization normalized value based on a decoded normalized value of all frequency components has been shown. However, for example, a quantization method for performing vector quantization for each sub-vector of 8 points is used. When used, the decoded quantized normalized value of each subvector may be calculated based on the decoded quantized normalized value obtained from the decoded normalized value of 8 points.

なお、本実施例では、第1ベクトル量子化部104の符号化の対象となる信号(第1符号化対象信号)は周波数領域に変換された音響信号を前提としていた。しかし、この信号に限定する必要はなく、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号を第1符号化対象信号としてもよいし、フレーム単位に分割された時間領域の音響信号を第1符号化対象信号としてもよい。   In the present embodiment, the signal (first encoding target signal) to be encoded by the first vector quantization unit 104 is assumed to be an acoustic signal converted into the frequency domain. However, it is not necessary to limit to this signal, and an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz) among the acoustic signals in the frequency domain may be used as the first encoding target signal or divided into frames. The time domain acoustic signal thus made may be used as the first encoding target signal.

実施例3では、誤差修正部での復号信号の生成方法が実施例1と異なる。構成と処理フローを示す図は実施例1と同じであり、図8が実施例3の符号化器と復号器の構成例を、図9が実施例3の符号化器と復号器の処理フロー例を示す。図9(A)は符号化器の処理フローを示しており、図9(B)は復号器の処理フローを示している。実施例3の符号化器200は実施例1と同じである。実施例3の復号器270’は、正規化値復号部107、第1ベクトル復号部108、第2ベクトル復号部109、誤差修正部275、時間領域変換部111を備える。復号器270’は、復号器200’と誤差修正部275が異なる。その他の構成部は実施例1と同じである。   In the third embodiment, the method of generating a decoded signal in the error correction unit is different from the first embodiment. The diagram showing the configuration and the processing flow is the same as that of the first embodiment, FIG. 8 is a configuration example of the encoder and decoder of the third embodiment, and FIG. 9 is the processing flow of the encoder and decoder of the third embodiment. An example is shown. FIG. 9A shows the processing flow of the encoder, and FIG. 9B shows the processing flow of the decoder. The encoder 200 of the third embodiment is the same as that of the first embodiment. The decoder 270 ′ according to the third embodiment includes a normalized value decoding unit 107, a first vector decoding unit 108, a second vector decoding unit 109, an error correction unit 275, and a time domain conversion unit 111. The decoder 270 'is different from the decoder 200' in the error correction unit 275. Other components are the same as those in the first embodiment.

誤差修正部275は、第1復号量子化信号X^(k)の値が0かつ1フレーム過去の復号量子化正規化値X’が0の場合は、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする。第1復号量子化信号X^(k)の値が0かつ1フレーム過去の復号量子化正規化値X’が0以外の場合は、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)と1フレーム過去の復号量子化正規化値X’との加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とする。また、第1復号量子化信号の値が0以外の場合は、第1復号量子化信号X^(k)の絶対値と第2復号量子化信号E^(k)の和を用いた計算結果を復号信号とする(S275)。 If the value of the first decoded quantized signal X ^ (k) is 0 and the decoded quantized normalization value X ′ of one frame in the past is 0, the error correcting unit 275 normalizes the decoded quantization of the current frame. the value X - and the result of the weighted addition of the second decoded quantized signal E ^ (k) multiplied by 1 or -1 randomly generated, the multiplication result as the decoded signal Z (k). When the value of the first decoded quantized signal X ^ (k) is 0 and the decoded quantization normalized value X ′ of one frame past is other than 0, the decoded quantized normalized value X of the current frame and the first 2 dequantized signal E ^ (k) and a frame previously decoded quantized normalization value X - multiplied by 1 or -1 randomly generated on the result of weighted addition of a ', a decoded signal a multiplication result . When the value of the first decoded quantized signal is other than 0, the calculation result using the sum of the absolute value of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k) Is a decoded signal (S275).

図12に誤差修正部275の具体的な処理フローの例を示す。k=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S2801)。ステップS2801がYesの場合、X^(k)が0かを確認する(S2802)。ステップS2802がYesの場合(第1復号量子化信号X^(k)の値が0の場合)、1フレーム過去の復号量子化正規化値X’が0かを確認する(S2803)。ステップS2803がYesの場合、復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算A・X+E^(k)にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする(S2804)。ステップS2803がNoの場合、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)と1フレーム過去の復号量子化正規化値X’との加重加算
[α(A・X+E^(k))+β・A・X’]
にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする(S2805)。図中のrand(k)は、ランダムに1または−1を生成する関数を示しており、乱数などを用いて計算してもよい。このように、ランダムに1または−1を乗算するのは、すべての周波数で復号信号が正の値となったのでは、歪んだ音になってしまうからであり、ランダムに1または−1を乗算することによって自然な音を作り出すことができる。ステップS2802がNoの場合は、X^(k)が負かを確認する(S2806)。ステップS2806がYesの場合(第1復号量子化信号の値が負の場合)は、第1復号量子化信号X^(k)の絶対値と第2復号量子化信号E^(k)の和に−1を乗算し、乗算結果を復号信号Z(k)とする(S2807)。ステップS2806がNoの場合(第1復号量子化信号の値が正の場合)は、第1復号量子化信号X^(k)の絶対値と第2復号量子化信号E^(k)の和を復号信号Z(k)とする(S2808)。kを1増加させ(S2809)、ステップS2801に戻る。ステップS2801がNoの場合、処理を終了する。
FIG. 12 shows an example of a specific processing flow of the error correction unit 275. The process is started with k = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S2801). When step S2801 is Yes, it is confirmed whether X ^ (k) is 0 (S2802). Step S2802 (if the value of the first decoded quantized signal X ^ (k) is 0) If Yes, 1 frame previously decoded quantized normalization value X - 'To check if 0 (S2803). When Step S2803 is Yes, the weighted addition A · X + E ^ (k) of the decoded quantized normalized value X and the second decoded quantized signal E ^ (k) is multiplied by 1 or −1 randomly generated. The multiplication result is set as a decoded signal Z (k) (S2804). When Step S2803 is No, the weighted addition of the decoded quantization normalized value X of the current frame, the second decoded quantized signal E ^ (k), and the decoded quantized normalized value X ′ of one frame past [ α (A · X + E ^ (k)) + β · A · X ′]
Is multiplied by randomly generated 1 or −1, and the multiplication result is set as a decoded signal Z (k) (S2805). Rand (k) in the figure indicates a function that randomly generates 1 or −1, and may be calculated using a random number or the like. Thus, the reason why 1 or −1 is randomly multiplied is that if the decoded signal becomes a positive value at all frequencies, it becomes a distorted sound. By multiplying, a natural sound can be created. When step S2802 is No, it is confirmed whether X ^ (k) is negative (S2806). When step S2806 is Yes (when the value of the first decoded quantized signal is negative), the sum of the absolute value of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k). Is multiplied by −1, and the multiplication result is set as a decoded signal Z (k) (S2807). When step S2806 is No (when the value of the first decoded quantized signal is positive), the sum of the absolute value of the first decoded quantized signal X ^ (k) and the second decoded quantized signal E ^ (k). Is the decoded signal Z (k) (S2808). k is incremented by 1 (S2809), and the process returns to step S2801. If step S2801 is No, the process ends.

実施例3の符号化方法と復号方法はこのような処理なので、実施例1の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。本実施例では、周波数成分全ての復号正規化値に基づき復号量子化正規化値を計算する方法を示したが、例えば、8点ずつのサブベクトルごとに纏めてベクトル量子化する量子化方法を用いる場合、8点ずつの復号正規化値から求められた復号量子化正規化値に基づき、各サブベクトルの復号量子化正規化値を計算してもよい。 Since the encoding method and decoding method of the third embodiment are such processes, the same effects as the encoding method and decoding method of the first embodiment can be obtained. Furthermore, decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity. In the present embodiment, a method of calculating a decoded quantization normalized value based on a decoded normalized value of all frequency components has been shown. However, for example, a quantization method for performing vector quantization for each sub-vector of 8 points is used. When used, the decoded quantized normalized value of each subvector may be calculated based on the decoded quantized normalized value obtained from the decoded normalized value of 8 points.

なお、本実施例では、第1ベクトル量子化部104の符号化の対象となる信号(第1符号化対象信号)は周波数領域に変換された音響信号を前提としていた。しかし、この信号に限定する必要はなく、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号を第1符号化対象信号としてもよいし、フレーム単位に分割された時間領域の音響信号を第1符号化対象信号としてもよい。   In the present embodiment, the signal (first encoding target signal) to be encoded by the first vector quantization unit 104 is assumed to be an acoustic signal converted into the frequency domain. However, it is not necessary to limit to this signal, and an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz) among the acoustic signals in the frequency domain may be used as the first encoding target signal or divided into frames. The time domain acoustic signal thus made may be used as the first encoding target signal.

原理
図13は、実施例4〜6で追加される原理を説明するための図である。横軸は周波数を示す64点のサンプル、縦軸は各周波数での信号の値を示している。細い線は、1つのフレーム(64個の時間領域の信号)を周波数領域に変換して得られた64点の周波数成分を示す信号(周波数領域信号)を示している。また、太い線は、細い線で示された周波数領域信号を第1ベクトル量子化部104でベクトル量子化したときに得られる第1量子化信号の例を示している。
Principle FIG. 13 is a diagram for explaining the principle added in the fourth to sixth embodiments. The horizontal axis represents 64 samples indicating the frequency, and the vertical axis represents the value of the signal at each frequency. A thin line indicates a signal (frequency domain signal) indicating 64 frequency components obtained by converting one frame (64 time domain signals) into the frequency domain. A thick line indicates an example of the first quantized signal obtained when the first vector quantizing unit 104 vector-quantizes the frequency domain signal indicated by the thin line.

従来の符号化器100、および実施例1から実施例3の符号化器200では、周波数領域信号と第1量子化信号との誤差信号を求めていた。つまり、値が0以外の第1量子化信号と周波数領域信号との誤差が大きい場合は、この誤差を修正するために第2ベクトル量子化インデックスのビットを使用することになる。したがって、値が0の第1量子化信号の誤差を修正するため使われる第2ベクトル量子化インデックスのビットが少なくなり、X(k)と|X(k)|の間の誤差が修正されない場合がある。よって、周波数領域信号を量子化するために必要なビット数が足りないと、入力信号に存在するはずの周波数成分が復号信号には存在しないこと(周波数成分の欠損)が生じてしまい、ミュージカルノイズの原因の1つとなっていた。また、入力信号に存在しないはずの周波数成分が復号信号に存在することが生じてしまい、量子化ノイズ発生の原因となっていた。 In the conventional encoder 100 and the encoder 200 according to the first to third embodiments, an error signal between the frequency domain signal and the first quantized signal is obtained. That is, when the error between the first quantized signal and the frequency domain signal having a value other than 0 is large, the bits of the second vector quantization index are used to correct this error. Therefore, the number of bits of the second vector quantization index used for correcting the error of the first quantized signal having a value of 0 is reduced, and the error between X (k) and | X (k) | is not corrected. There is a case. Therefore, if the number of bits necessary to quantize the frequency domain signal is insufficient, the frequency component that should be present in the input signal does not exist in the decoded signal (missing frequency component), resulting in musical noise. It was one of the causes. In addition, a frequency component that should not be present in the input signal is present in the decoded signal, resulting in generation of quantization noise.

そこで、実施例4〜6では、値が0の第1量子化信号に対応する周波数領域信号だけで次のベクトル量子化の対象となる信号(誤差信号)を生成する。そして、後段のベクトル量子化では、その誤差信号を複数サンプル纏めてベクトル量子化する。つまり、値が0の第1量子化信号に対応する周波数領域信号だけをベクトル量子化するので、復号信号では、X(k)と|X(k)|の間の誤差が修正されやすくなる。したがって、周波数成分の欠損や量子化ノイズが生じにくくなり、ミュージカルノイズを低減できる。 Therefore, in Embodiments 4 to 6, a signal (error signal) to be subjected to the next vector quantization is generated using only the frequency domain signal corresponding to the first quantized signal having a value of 0. In the subsequent vector quantization, the error signal is vector-quantized by collecting a plurality of samples. That is, since only the frequency domain signal corresponding to the first quantized signal having a value of 0 is vector quantized, the error between X (k) and | X (k) | is easily corrected in the decoded signal. . Therefore, loss of frequency components and quantization noise are less likely to occur, and musical noise can be reduced.

具体例
図14に実施例4の符号化器と復号器の構成例を示す。図15に実施例4の符号化器と復号器の処理フロー例を示す。図15(A)は符号化器の処理フローを示しており、図15(B)は復号器の処理フローを示している。符号化器300は、周波数領域変換部101、正規化値計算部102、正規化値量子化部103、第1ベクトル量子化部104、誤差計算部312、第2ベクトル量子化部306を備える。復号器300’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、第2ベクトル復号部309、誤差修正部310、時間領域変換部111を備える。符号化器300は、符号化器200と誤差計算部312、第2ベクトル量子化部306が異なる。また、復号器300’は、復号器200’とM値計算部313、第2ベクトル復号部309、誤差修正部310が異なる。その他の構成部は実施例1と同じである。なお、本実施例での第1符号化対象信号は周波数領域信号である。
Specific Example FIG. 14 shows a configuration example of an encoder and a decoder according to the fourth embodiment. FIG. 15 shows an example of the processing flow of the encoder and decoder of the fourth embodiment. FIG. 15A shows the processing flow of the encoder, and FIG. 15B shows the processing flow of the decoder. The encoder 300 includes a frequency domain transform unit 101, a normalized value calculation unit 102, a normalized value quantization unit 103, a first vector quantization unit 104, an error calculation unit 312, and a second vector quantization unit 306. The decoder 300 ′ includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a second vector decoding unit 309, an error correction unit 310, and a time domain conversion unit 111. The encoder 300 is different from the encoder 200 in an error calculator 312 and a second vector quantizer 306. The decoder 300 ′ is different from the decoder 200 ′ in the M-value calculating unit 313, the second vector decoding unit 309, and the error correcting unit 310. Other components are the same as those in the first embodiment. Note that the first encoding target signal in this embodiment is a frequency domain signal.

誤差計算部312は、周波数領域信号X(k)と第1量子化信号X^(k)を入力とし、第1ベクトル量子化部104においてパルスが立てられなかった周波数領域信号X(k)(値が0の第1量子化信号に対応する周波数領域信号)だけを抜き出した誤差信号E(m)と、第1ベクトル量子化部においてパルスが立てられなかった周波数領域信号の数M(値が0の第1量子化信号の数)を求め、誤差信号E(m)と数Mを出力する(S312)。ここで、mは配列番号を表す整数値である。   The error calculator 312 receives the frequency domain signal X (k) and the first quantized signal X ^ (k) as inputs, and the frequency domain signal X (k) ( The error signal E (m) obtained by extracting only the frequency domain signal corresponding to the first quantized signal having a value of 0) and the number M (value of the frequency domain signal for which no pulse was generated in the first vector quantizing unit) The number of first quantized signals of 0) is obtained, and error signal E (m) and number M are output (S312). Here, m is an integer value representing the sequence number.

図16に、誤差信号E(m)と数Mを求めるための処理フローの例を示す。まず、k=0、m=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S3121)。ステップS3121がYesの場合、X^(k)が0かを確認する(S3122)。ステップS3122がYesの場合、周波数領域信号X(k)の絶対値と量子化正規化値Xの誤差信号である
|X(k)|−A・X
をE(m)とし、mの値を1つ増加させる(S3123)。ステップS3122がNoの場合、ステップS3124に進む。ステップS3124では、kの値を1つ増加させ、ステップS3121に戻る。S3121がNoの場合、mの値をMとし(S3125)、処理を終了する。
FIG. 16 shows an example of a processing flow for obtaining the error signal E (m) and the number M. First, the process is started with k = 0 and m = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S3121). When step S3121 is Yes, it is confirmed whether X ^ (k) is 0 (S3122). When Step S3122 is Yes, it is an error signal between the absolute value of the frequency domain signal X (k) and the quantized normalized value X | X (k) | −A · X
Is set to E (m), and the value of m is increased by 1 (S3123). If step S3122 is No, the process proceeds to step S3124. In step S3124, the value of k is incremented by 1, and the process returns to step S3121. When S3121 is No, the value of m is set to M (S3125), and the process ends.

第2ベクトル量子化部306は、誤差信号E(m)と量子化正規化値Xと値が0の第1量子化信号の数Mを入力とする。第2ベクトル量子化部306は、誤差信号E(m)を量子化正規化値Xで割り算する、もしくは逆数を乗ずることで正規化し、正規化誤差信号を求める。そして、正規化誤差信号を、M点または量子化ベクトルの次数の倍数Thの範囲でベクトル量子化し、量子化代表ベクトルのインデックスを第2ベクトル量子化インデックスCとして出力する(S306)。量子化ベクトルの次数とは、例えば8がある。この場合、倍数Thは、8,16,…,64などがあり、Mに最も近い数、M以下で最も近い数、あるいはM以上で最も近い数をThとして選べばよい。例えば、M以下で最も近い数をThとして選んだ場合、M個の正規化誤差信号の中からTh個分だけベクトル量子化してもよい。 The second vector quantization unit 306, the error signal E (m) and quantization normalized value wherein X - and the value as an input the number M of first quantized signal 0. The second vector quantization unit 306 normalizes the error signal E (m) by dividing the error signal E (m) by the quantized normalized value X or by multiplying by an inverse number to obtain a normalized error signal. Then, the normalized error signal, and vector quantization in the range of order of multiple Th of M points or quantized vector, and outputs the index of the quantization representative vector as a second vector quantization index C 2 (S306). The order of the quantization vector is, for example, 8. In this case, the multiple Th has 8, 16,..., 64, etc., and the number closest to M, the number closest to M, or the number closest to M may be selected as Th. For example, when the closest number less than or equal to M is selected as Th, vector quantization may be performed for Th out of M normalized error signals.

次に復号器300’について説明する。M値計算部313は、第1ベクトル復号部108において求められた第1復号量子化信号X^(k)を入力とし、第1復号量子化信号X^(k)の値が0である第1復号量子化信号X^(k)の数Mを求める。図17は、値が0である第1復号量子化信号X^(k)の数Mを求める処理フローの例である。k=0、m=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S3131)。ステップS3131がYesの場合、X^(k)が0かを確認する(S3132)。ステップS3132がYesの場合、mの値を1つ増加させる(S3133)。ステップS3132がNoの場合、ステップS3134に進む。ステップS3134では、kの値を1つ増加させ、ステップS3131に戻る。S3131がNoの場合、mの値をMとし(S3135)、処理を終了する。符号化器側の正規化で復号量子化正規化値Xを用いていることと、復号器側がM値計算部313を備えていることで、数Mを示す情報を符号化器から復号器に送る必要がない(数Mを伝えるためにビットを使う必要がない)。 Next, the decoder 300 ′ will be described. The M-value calculation unit 313 receives the first decoded quantized signal X ^ (k) obtained by the first vector decoding unit 108 as an input, and the first decoded quantized signal X ^ (k) has a value of zero. The number M of one decoded quantized signal X ^ (k) is obtained. FIG. 17 is an example of a processing flow for obtaining the number M of first decoded quantized signals X ^ (k) whose value is 0. The process is started with k = 0 and m = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S3131). When step S3131 is Yes, it is confirmed whether X ^ (k) is 0 (S3132). When step S3132 is Yes, the value of m is increased by 1 (S3133). If step S3132 is No, the process proceeds to step S3134. In step S3134, the value of k is incremented by one, and the process returns to step S3131. When S3131 is No, the value of m is set to M (S3135), and the process ends. In the normalization of the encoder side dequantized normalized value X - and that is used, by the decoder side is provided with M value calculation unit 313, a decoder information indicating the number M from the encoder (No need to use bits to convey the number M).

第2ベクトル復号部309は、第2ベクトル量子化インデックスCと復号量子化正規化値Xと値が0である第1復号量子化信号X^(k)の数Mとを入力とする。第2ベクトル復号部209は、M点または量子化ベクトルの次数の倍数Thで第2ベクトル量子化インデックスCを復号し、正規化された信号を正規化第2復号量子化信号として求め、正規化第2復号量子化信号に復号量子化正規化値Xを乗算することで逆正規化し、第2復号量子化信号E^(m)として出力する(S309)。 The second vector decoding unit 309, the second vector quantization index C 2 and the decoded quantized normalization value X - an input of the number M of the value is 0 the first decoded quantized signal X ^ (k) . The second vector decoding unit 209, a second vector by decoding the quantization index C 2 in order of multiple Th of M points or quantized vector to obtain the normalized signal as the normalized second decoded quantized signal, normal The normalized second decoded quantized signal is denormalized by multiplying by the decoded quantized normalized value X and output as the second decoded quantized signal E ^ (m) (S309).

誤差修正部310は、第1復号量子化信号X^(k)、第2復号量子化信号E^(m)、第2ベクトル復号部309が復号するときに用いた量子化ベクトルの次数の倍数Th、値が0である第1復号量子化信号X^(k)の数Mを入力とする。誤差修正部310は、第1復号量子化信号X^(k)の値が0以外の場合は第1復号量子化信号X^(k)を復号信号Z(k)とし、第1復号量子化信号X^(k)の値が0の場合は第2復号量子化信号E^(m)を順次復号信号Z(k)とすることで、復号信号Z(k)を求め、出力する(S314)。言い換えると、本実施例の場合、第1復号量子化信号の値が0以外のときには第2復号量子化信号はないので、単に第1復号量子化信号を復号信号とする。これは、図11のステップS2105、S2106、図12のステップS2807、S2808のE^(m)に0を代入した場合の同じである。   The error correction unit 310 uses the first decoded quantized signal X ^ (k), the second decoded quantized signal E ^ (m), and a multiple of the order of the quantization vector used when the second vector decoding unit 309 decodes. The number M of the first decoded quantized signals X ^ (k) whose values are Th and 0 is input. When the value of the first decoded quantized signal X ^ (k) is other than 0, the error correcting unit 310 sets the first decoded quantized signal X ^ (k) as the decoded signal Z (k), and the first decoded quantized signal When the value of the signal X ^ (k) is 0, the second decoded quantized signal E ^ (m) is sequentially set as the decoded signal Z (k), thereby obtaining and outputting the decoded signal Z (k) (S314). ). In other words, in the case of the present embodiment, since there is no second decoded quantized signal when the value of the first decoded quantized signal is other than 0, the first decoded quantized signal is simply used as the decoded signal. This is the same when 0 is substituted for E ^ (m) in steps S2105 and S2106 in FIG. 11 and steps S2807 and S2808 in FIG.

図18は誤差修正部310の具体的な処理フローの例を示す図である。k=0、m=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S3101)。ステップS3101がYesの場合、mがMより小さいことを確認する(S3102)。ステップS3102がYesの場合、mがThより小さいことを確認する(S3103)。ステップS3103がYesの場合、X^(k)が0かを確認する(S3104)。ステップS3104がYesの場合、復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算A・X+E^(k)にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とし、mの値を1つ増加させる(S3105)。ここで、Aは正規化値の調整用の正の数(例えば1.0)である。また、図中のrand(k)は、ランダムに1または−1を生成する関数を示しており、乱数などを用いて計算してもよい。このように、ランダムに1または−1を乗算するのは、すべての周波数で復号信号が正の値となったのでは、歪んだ音になってしまうからであり、ランダムに1または−1を乗算することによって自然な音を作り出すことができる。ステップS3102、S3103、S3104がNoの場合、X^(k)をZ(k)とする(S3106)。そして、kの値を1つ増加させ(S3107)、ステップS3101に戻る。S3101がNoの場合、処理を終了する。 FIG. 18 is a diagram illustrating an example of a specific processing flow of the error correction unit 310. The process is started with k = 0 and m = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S3101). If step S3101 is Yes, it is confirmed that m is smaller than M (S3102). If step S3102 is Yes, it is confirmed that m is smaller than Th (S3103). When step S3103 is Yes, it is confirmed whether X ^ (k) is 0 (S3104). When Step S3104 is Yes, the weighted addition A · X + E ^ (k) of the decoded quantized normalized value X and the second decoded quantized signal E ^ (k) is multiplied by 1 or −1 randomly generated. Then, the multiplication result is the decoded signal Z (k), and the value of m is incremented by 1 (S3105). Here, A is a positive number (for example, 1.0) for adjusting the normalized value. Further, rand (k) in the figure indicates a function that randomly generates 1 or −1, and may be calculated using a random number or the like. Thus, the reason why 1 or −1 is randomly multiplied is that if the decoded signal becomes a positive value at all frequencies, it becomes a distorted sound. By multiplying, a natural sound can be created. When Steps S3102, S3103, and S3104 are No, X ^ (k) is set to Z (k) (S3106). Then, the value of k is incremented by 1 (S3107), and the process returns to step S3101. If S3101 is No, the process ends.

このような処理なので、実施例1の符号化方法、復号方法と同様の効果が得られる。さらに、実施例4の符号化方法と復号方法では、誤差信号には、値が0以外の第1量子化信号に対応する第1符号化対象信号は含まれておらず、値が0の第1量子化信号に対応する第1符号化対象信号だけが含まれている。つまり、第2ベクトル量子化ステップは、第1ベクトル量子化では値が0になってしまった第1符号化対象信号に0以外の値を付ける処理である。したがって、ミュージカルノイズの原因のひとつであるフレームごとに周波数成分の有無が変化することを避けながら、第1符号化対象信号と第1量子化信号との誤差を小さくするための符号である第2ベクトル量子化インデックスを求めることができる。したがって、限られたビット数での効率的なベクトル量子化を実現できる。   Because of such processing, the same effects as the encoding method and decoding method of the first embodiment can be obtained. Further, in the encoding method and the decoding method of the fourth embodiment, the error signal does not include the first encoding target signal corresponding to the first quantized signal having a value other than 0, and the 0th value is 0. Only the first encoding target signal corresponding to one quantized signal is included. That is, the second vector quantization step is a process of adding a value other than 0 to the first encoding target signal whose value has become 0 in the first vector quantization. Therefore, the second code is a code for reducing the error between the first encoding target signal and the first quantized signal while avoiding the presence or absence of the frequency component for each frame that is one of the causes of musical noise. A vector quantization index can be determined. Therefore, efficient vector quantization with a limited number of bits can be realized.

また、実施例1の符号化方法と復号方法によれば、例えば、1フレーム中の周波数成分の数を80点(80個の周波数領域信号)とし、第1ベクトル量子化部においてパルスが立てられた周波数成分の数が40点(値が0以外の第1量子化信号が40個)とすると、第1ベクトル量子化部104でベクトル量子化する点数が80点であることに対し、第2ベクトル量子化部206でベクトル量子化する点数は40点と半減できるので、ベクトル量子化の効率を向上させることも期待できる。   Further, according to the encoding method and the decoding method of the first embodiment, for example, the number of frequency components in one frame is set to 80 points (80 frequency domain signals), and pulses are generated in the first vector quantization unit. If the number of frequency components obtained is 40 points (40 first quantized signals having a value other than 0), the number of points to be vector quantized by the first vector quantization unit 104 is 80 points. Since the number of points to be vector quantized by the vector quantization unit 206 can be halved to 40 points, it can be expected to improve the efficiency of vector quantization.

なお、本実施例では、第1ベクトル量子化部104の符号化の対象となる信号(第1符号化対象信号)は周波数領域に変換された音響信号を前提としていた。しかし、この信号に限定する必要はなく、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号を第1符号化対象信号としてもよいし、フレーム単位に分割された時間領域の音響信号を第1符号化対象信号としてもよい。   In the present embodiment, the signal (first encoding target signal) to be encoded by the first vector quantization unit 104 is assumed to be an acoustic signal converted into the frequency domain. However, it is not necessary to limit to this signal, and an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz) among the acoustic signals in the frequency domain may be used as the first encoding target signal or divided into frames. The time domain acoustic signal thus made may be used as the first encoding target signal.

[変形例1]
実施例4変形例1は、復号器側の復号量子化正規化値を決めるときに、1つ過去のフレームの復号量子化正規化値も考慮する点が実施例4と異なる。構成と処理フローを示す図は実施例4と同じであり、図14が実施例4変形例1の符号化器と復号器の構成例を、図15が実施例4変形例1の符号化器と復号器の処理フロー例を示す。図15(A)は符号化器の処理フローを示しており、図15(B)は復号器の処理フローを示している。実施例4変形例1の符号化器300は実施例4と同じである。実施例4変形例1の復号器350’は、正規化値復号部157、第1ベクトル復号部108、M値計算部313、第2ベクトル復号部309、誤差修正部310、時間領域変換部111を備える。復号器350’は、復号器300’と正規化値復号部157が異なる。その他の構成部は実施例4と同じである。また、正規化値復号部157は実施例2で説明した内容と同じ処理を行う。
[Modification 1]
Embodiment 4 Modification 1 is different from Embodiment 4 in that the decoding quantization normalization value of the previous frame is also taken into consideration when determining the decoding quantization normalization value on the decoder side. The diagram showing the configuration and the processing flow is the same as that of the fourth embodiment. FIG. 14 shows a configuration example of the encoder and decoder of the first modification of the fourth embodiment, and FIG. 15 shows the encoder of the fourth modification of the first embodiment. An example of the processing flow of the decoder is shown. FIG. 15A shows the processing flow of the encoder, and FIG. 15B shows the processing flow of the decoder. Fourth Embodiment An encoder 300 according to the first modification is the same as that according to the fourth embodiment. Fourth Embodiment A decoder 350 ′ of the first modification includes a normalized value decoding unit 157, a first vector decoding unit 108, an M value calculation unit 313, a second vector decoding unit 309, an error correction unit 310, and a time domain conversion unit 111. Is provided. The decoder 350 ′ is different from the decoder 300 ′ in the normalized value decoding unit 157. Other components are the same as those in the fourth embodiment. Further, the normalized value decoding unit 157 performs the same processing as that described in the second embodiment.

実施例4変形例1の符号化方法と復号方法はこのような処理なので、実施例4の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Since the encoding method and decoding method of the fourth modification example are such processes, the same effects as the encoding method and decoding method of the fourth example can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

[変形例2]
実施例4変形例2は、誤差修正部での復号信号の生成方法が実施例4と異なる。構成と処理フローを示す図は実施例4と同じであり、図14が実施例4変形例2の符号化器と復号器の構成例を、図15が実施例4変形例2の符号化器と復号器の処理フロー例を示す。図15(A)は符号化器の処理フローを示しており、図15(B)は復号器の処理フローを示している。実施例4変形例2の符号化器300は実施例4と同じである。実施例4変形例2の復号器370’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、第2ベクトル復号部309、誤差修正部375、時間領域変換部111を備える。復号器370’は、復号器300’と誤差修正部375が異なる。その他の構成部は実施例4と同じである。
[Modification 2]
Fourth Embodiment A second modification is different from the fourth embodiment in the method of generating a decoded signal in the error correction unit. The diagram showing the configuration and the processing flow is the same as that of the fourth embodiment. FIG. 14 shows a configuration example of the encoder and decoder of the second modification of the fourth embodiment, and FIG. 15 shows the encoder of the fourth modification of the fourth embodiment. An example of the processing flow of the decoder is shown. FIG. 15A shows the processing flow of the encoder, and FIG. 15B shows the processing flow of the decoder. Fourth Embodiment An encoder 300 according to the second modification is the same as that according to the fourth embodiment. Fourth Embodiment A decoder 370 ′ of the second modification includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a second vector decoding unit 309, an error correction unit 375, and a time domain conversion unit 111. Is provided. Decoder 370 ′ differs from decoder 300 ′ in error correction section 375. Other components are the same as those in the fourth embodiment.

誤差修正部375は、第1復号量子化信号X^(k)の値が0かつ1フレーム過去の復号量子化正規化値X’が0の場合は、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする。第1復号量子化信号X^(k)の値が0かつ1フレーム過去の復号量子化正規化値X’が0以外の場合は、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)と1フレーム過去の復号量子化正規化値X’との加重加算の結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とする。また、第1復号量子化信号の値が0以外の場合は、第1復号量子化信号X^(k)を復号信号とする(S375)。 Error correction unit 375, decoding quantized normalization value value of 0 and 1 frame past the first decoded quantized signal X ^ (k) X - If 'is 0, decoding quantized normalization of the current frame the value X - and the result of the weighted addition of the second decoded quantized signal E ^ (k) multiplied by 1 or -1 randomly generated, the multiplication result as the decoded signal Z (k). When the value of the first decoded quantized signal X ^ (k) is 0 and the decoded quantization normalized value X ′ of one frame past is other than 0, the decoded quantized normalized value X of the current frame and the first 2 dequantized signal E ^ (k) and a frame previously decoded quantized normalization value X - multiplied by 1 or -1 randomly generated on the result of weighted addition of a ', a decoded signal a multiplication result . When the value of the first decoded quantized signal is other than 0, the first decoded quantized signal X ^ (k) is set as a decoded signal (S375).

図18に誤差修正部375の具体的な処理フローの例を示す。また、図19にステップS3751の処理フローの例を示す。k=0、m=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S3101)。ステップS3101がYesの場合、mがMより小さいことを確認する(S3102)。ステップS3102がYesの場合、mがThより小さいことを確認する(S3103)。ステップS3103がYesの場合、X^(k)が0かを確認する(S3104)。ステップS3104がYesの場合、復号信号Z(k)を計算し、mの値を1つ増加させる(S3751)。ステップS3751では、次のような処理が行われる(図19参照)。1フレーム過去の復号量子化正規化値X’が0かを確認する(S3752)。ステップS3752がYesの場合、復号量子化正規化値Xと第2復号量子化信号E^(k)の加重加算A・X+E^(k)にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする(S3753)。ステップS3752がNoの場合、現在のフレームの復号量子化正規化値Xと第2復号量子化信号E^(k)と1フレーム過去の復号量子化正規化値X’との加重加算
[α(A・X+E^(k))+β・A・X’]
にランダムに生成した1または−1を乗算し、乗算結果を復号信号Z(k)とする(S3754)。ここで、Aは正規化値の調整用の正の数(例えば1.0)である。また、図中のrand(k)は、ランダムに1または−1を生成する関数を示しており、乱数などを用いて計算してもよい。このように、ランダムに1または−1を乗算するのは、すべての周波数で復号信号が正の値となったのでは、歪んだ音になってしまうからであり、ランダムに1または−1を乗算することによって自然な音を作り出すことができる。ステップS3102、S3103、S3104がNoの場合、X^(k)をZ(k)とする(S3106)。そして、kの値を1つ増加させ(S3107)、ステップS3101に戻る。S3101がNoの場合、処理を終了する。
FIG. 18 shows an example of a specific processing flow of the error correction unit 375. FIG. 19 shows an example of the processing flow of step S3751. The process is started with k = 0 and m = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S3101). If step S3101 is Yes, it is confirmed that m is smaller than M (S3102). If step S3102 is Yes, it is confirmed that m is smaller than Th (S3103). When step S3103 is Yes, it is confirmed whether X ^ (k) is 0 (S3104). When step S3104 is Yes, the decoded signal Z (k) is calculated, and the value of m is increased by 1 (S3751). In step S3751, the following processing is performed (see FIG. 19). It is confirmed whether the decoded quantization normalized value X ′ of one frame in the past is 0 (S3752). When Step S3752 is Yes, the weighted addition A · X + E ^ (k) of the decoded quantized normalized value X and the second decoded quantized signal E ^ (k) is multiplied by 1 or −1 randomly generated. The multiplication result is set as a decoded signal Z (k) (S3753). When Step S3752 is No, the weighted addition of the decoded quantization normalized value X of the current frame, the second decoded quantized signal E ^ (k), and the decoded quantized normalized value X ′ of the previous frame [ α (A · X + E ^ (k)) + β · A · X ′]
Is multiplied by randomly generated 1 or −1, and the multiplication result is set as a decoded signal Z (k) (S3754). Here, A is a positive number (for example, 1.0) for adjusting the normalized value. Further, rand (k) in the figure indicates a function that randomly generates 1 or −1, and may be calculated using a random number or the like. Thus, the reason why 1 or −1 is randomly multiplied is that if the decoded signal becomes a positive value at all frequencies, it becomes a distorted sound. By multiplying, a natural sound can be created. When Steps S3102, S3103, and S3104 are No, X ^ (k) is set to Z (k) (S3106). Then, the value of k is incremented by 1 (S3107), and the process returns to step S3101. If S3101 is No, the process ends.

実施例4変形例2の符号化方法と復号方法はこのような処理なので、実施例4の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Since the encoding method and decoding method of the fourth modification example are such processes, the same effects as the encoding method and decoding method of the fourth example can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

実施例4では、第2ベクトル量子化部306において、量子化正規化値Xを用いて正規化する。また、第2ベクトル復号部309においても、復号量子化正規化値Xを用いて逆正規化する。しかしながら、第2ベクトル量子化部では、値が0であった第1量子化信号X^(k)に対応する周波数領域信号のみで構成された誤差信号E(m)をベクトル量子化する。したがって、誤差信号E(m)用の正規化値を用いた方が、正規化の精度が向上し、効率的にベクトル量子化できる。そこで、本実施例では、誤差信号E(m)から求められた正規化値(以下、「再計算正規化値E」という。)で正規化する。 In the fourth embodiment, the second vector quantization unit 306 performs normalization using the quantization normalized value X . Further, in the second vector decoding unit 309, decoded quantized normalization value X - inversely normalized using. However, the second vector quantization unit vector quantizes the error signal E (m) composed only of the frequency domain signal corresponding to the first quantized signal X ^ (k) whose value is 0. Therefore, using the normalized value for the error signal E (m) improves the accuracy of normalization and enables efficient vector quantization. Therefore, in this embodiment, normalization is performed using a normalized value obtained from the error signal E (m) (hereinafter referred to as “recalculated normalized value E ”).

図20に実施例5の符号化器と復号器の構成例を示す。図21に実施例5の符号化器と復号器の処理フロー例を示す。図21(A)は符号化器の処理フローを示しており、図21(B)は復号器の処理フローを示している。符号化器400は、周波数領域変換部101、正規化値計算部102、正規化値量子化部103、第1ベクトル量子化部104、誤差計算部312、正規化値再計算部415、第2ベクトル量子化部406を備える。復号器400’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、正規化値再計算部416、第2ベクトル復号部409、誤差修正部310、時間領域変換部111を備える。符号化器400は、符号化器300と正規化値再計算部415、第2ベクトル量子化部406が異なる。また、復号器400’は、復号器300’と正規化値再計算部416、第2ベクトル復号部409が異なる。その他の構成部は実施例4と同じである。   FIG. 20 shows a configuration example of the encoder and decoder of the fifth embodiment. FIG. 21 shows an example of the processing flow of the encoder and decoder of the fifth embodiment. FIG. 21A shows the processing flow of the encoder, and FIG. 21B shows the processing flow of the decoder. The encoder 400 includes a frequency domain transform unit 101, a normalized value calculation unit 102, a normalized value quantization unit 103, a first vector quantization unit 104, an error calculation unit 312, a normalized value recalculation unit 415, a second A vector quantization unit 406 is provided. The decoder 400 ′ includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 416, a second vector decoding unit 409, an error correction unit 310, and a time domain conversion unit. 111. The encoder 400 is different from the encoder 300 in the normalized value recalculation unit 415 and the second vector quantization unit 406. The decoder 400 ′ is different from the decoder 300 ′ in a normalized value recalculation unit 416 and a second vector decoding unit 409. Other components are the same as those in the fourth embodiment.

正規化値再計算部415は、第1量子化信号X^(k)と、量子化正規化値Xと、値が0の第1量子化信号の数Mと、第2ベクトル量子化部406で用いられる数Mに近い量子化ベクトルの次数の倍数Thが入力される。正規化値再計算部415は、誤差信号E(m)に対する正規化値を再計算し、再計算正規化値Eとして出力する(S415)。図22は再計算正規化値Eを求める処理フローの例である。k=0、tmp=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S4151)。ステップS4151がYesの場合、tmpに|X^(k)|を加算する(S4156)。kの値を1つ増加させ(S4157)、ステップS4151に戻る。S4151がNoの場合、再計算正規化値ENormalization value recalculation unit 415, a first quantized signal X ^ (k), the quantization normalized value X - and, the number M of first quantized signal value is 0, the second vector quantization unit A multiple Th of the order of the quantization vector close to the number M used in 406 is input. The normalized value recalculation unit 415 recalculates the normalized value for the error signal E (m) and outputs it as a recalculated normalized value E (S415). Figure 22 is recalculated normalized value E - is an example of a processing flow for determining the. The process is started with k = 0 and tmp = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S4151). If step S4151 is Yes, | X ^ (k) | 2 is added to tmp (S4156). The value of k is incremented by 1 (S4157), and the process returns to step S4151. If S4151 is No, the recalculation normalized value E - the

Figure 0005336943
Figure 0005336943

のように求め(S4158)、処理を終了する。
また、図23は再計算正規化値Eを求める別の処理フローの例である。このフローでは値が0の第1量子化信号の数を再度計算している。k=0、m=0、tmp=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S4151)。ステップS4151がYesの場合、mがMより小さいことを確認する(S4152)。ステップS4152がYesの場合、mがThより小さいことを確認する(S4153)。ステップS4153がYesの場合、X^(k)が0かを確認する(S4154)。ステップS4154がYesの場合、mの値を1つ増加させる(S4155)。ステップS4152、S4153、S4154がNoの場合、tmpに|X^(k)|を加算する(S4156)。そして、kの値を1つ増加させ(S4157)、ステップS4151に戻る。S4151がNoの場合、再計算正規化値E
(S4158), and the process ends.
Further, FIG. 23 is recalculated normalized value E - is an example of another processing flow for determining the. In this flow, the number of first quantized signals having a value of 0 is calculated again. The process starts with k = 0, m = 0, and tmp = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S4151). If step S4151 is Yes, it is confirmed that m is smaller than M (S4152). If step S4152 is Yes, it is confirmed that m is smaller than Th (S4153). When step S4153 is Yes, it is confirmed whether X ^ (k) is 0 (S4154). When step S4154 is Yes, the value of m is increased by 1 (S4155). When Steps S4152, S4153, and S4154 are No, | X ^ (k) | 2 is added to tmp (S4156). Then, the value of k is increased by 1 (S4157), and the process returns to step S4151. If S4151 is No, the recalculation normalized value E - the

Figure 0005336943
Figure 0005336943

のように求め(S4158’)、処理を終了する。図22の処理フローでも、図23の処理フローでも、再計算正規化値Eは、量子化正規化値Xの二乗に周波数領域信号X(k)の数Lを乗算し、乗算結果から第1量子化信号X^(k)のパワー|X^(k)|の合計を減算し、減算結果を値が0の第1量子化信号の数Mで除算し、除算結果の平方根を再計算正規化値Eとしている。 (S4158 ′) and the process ends. In both the processing flow of FIG. 22 and the processing flow of FIG. 23, the recalculated normalized value E multiplies the square of the quantized normalized value X by the number L of the frequency domain signals X (k), The power of the first quantized signal X ^ (k) | X ^ (k) | 2 is subtracted, the subtraction result is divided by the number M of the first quantized signals having a value of 0, and the square root of the division result is obtained. The recalculated normalization value E is used.

第2ベクトル量子化部406は、正規化に再計算正規化値Eを用いることが実施例4の第2ベクトル量子化部306と異なるが、その他は同じである。すなわち、第2ベクトル量子化部406は、誤差信号E(m)と再計算正規化値Eと値が0の第1量子化信号の数Mを入力とする。第2ベクトル量子化部406は、誤差信号E(m)を再計算正規化値Eで割り算する、もしくは逆数を乗ずることで正規化し、正規化誤差信号を求める。そして、正規化誤差信号を、M点または量子化ベクトルの次数の倍数Thでベクトル量子化し、量子化代表ベクトルのインデックスを第2ベクトル量子化インデックスCとして出力する(S406)。 The second vector quantization unit 406 is different from the second vector quantization unit 306 of the fourth embodiment in that the recalculated normalization value E is used for normalization, but the others are the same. That is, the second vector quantization unit 406, the error signal E (m) and recalculates normalized value E - the value is to enter the number M of first quantized signal 0. The second vector quantization unit 406 normalizes the error signal E (m) by dividing the error signal E (m) by the recalculated normalization value E or multiplying by the reciprocal to obtain a normalized error signal. Then, the normalized error signal, and vector quantization in the order of a multiple Th of M points or quantized vector, and outputs the index of the quantization representative vector as a second vector quantization index C 2 (S406).

次に復号器400’の相違点について説明する。正規化値再計算部416は、正規化値再計算部415と同じ処理によって復号器400’用の再計算正規化値Eを求める。再計算正規化値Eを図22や図23の処理フローにしたがって求めるのであれば、再計算正規化値Eの情報を符号化器から復号器に伝える必要はなく、ビットの使用を避けることができる。 Next, differences between the decoder 400 ′ will be described. The normalized value recalculator 416 obtains a recalculated normalized value E for the decoder 400 ′ by the same process as the normalized value recalculator 415. If the recalculated normalization value E is obtained according to the processing flow of FIGS. 22 and 23, it is not necessary to transmit the information of the recalculated normalization value E from the encoder to the decoder, and avoid using bits. be able to.

第2ベクトル復号部409は、正規化に再計算正規化値Eを用いることが実施例4の第2ベクトル復号部309と異なるが、その他は同じである。すなわち、第2ベクトル復号部409は、第2ベクトル量子化インデックスCと再計算正規化値Eと値が0である第1復号量子化信号X^(k)の数Mを入力とする。第2ベクトル復号部409は、M点または量子化ベクトルの次数の倍数Thで第2ベクトル量子化インデックスCを復号し、正規化された信号である正規化第2復号量子化信号を求め、正規化第2復号量子化信号に再計算正規化値Eを乗算することで逆正規化し、第2復号量子化信号E^(m)として出力する(S409)。 The second vector decoding unit 409 is the same as the second vector decoding unit 309 of the fourth embodiment except that the recalculated normalization value E is used for normalization. That is, the second vector decoding unit 409 receives the second vector quantization index C 2 , the recalculated normalized value E −, and the number M of the first decoded quantized signals X ^ (k) whose values are 0. . The second vector decoding unit 409, a second vector by decoding the quantization index C 2 in order of multiple Th of M points or quantized vector to obtain the normalized second decoded quantized signal is normalized signal, The normalized second decoded quantized signal is denormalized by multiplying it by the recalculated normalization value E and is output as the second decoded quantized signal E ^ (m) (S409).

このような処理なので、実施例5の符号化方法と復号方法によれば、実施例4の符号化方法と復号方法と同じ効果が得られる。そして、誤差信号E(m)用の正規化値を用いているので、正規化の精度が向上し、さらに効率的にベクトル量子化できる。   Since it is such a process, according to the encoding method and decoding method of Example 5, the same effect as the encoding method and decoding method of Example 4 is acquired. Since the normalized value for the error signal E (m) is used, the accuracy of normalization is improved and vector quantization can be performed more efficiently.

なお、本実施例では、第1ベクトル量子化部104の符号化の対象となる信号(第1符号化対象信号)は周波数領域に変換された音響信号を前提としていた。しかし、この信号に限定する必要はなく、周波数領域の音響信号の中の特定の周波数帯(例えば、8kHz〜14kHzなど)の音響信号を第1符号化対象信号としてもよいし、フレーム単位に分割された時間領域の音響信号を第1符号化対象信号としてもよい。   In the present embodiment, the signal (first encoding target signal) to be encoded by the first vector quantization unit 104 is assumed to be an acoustic signal converted into the frequency domain. However, it is not necessary to limit to this signal, and an acoustic signal in a specific frequency band (for example, 8 kHz to 14 kHz) among the acoustic signals in the frequency domain may be used as the first encoding target signal or divided into frames. The time domain acoustic signal thus made may be used as the first encoding target signal.

[変形例1]
実施例5変形例1は、復号器側の復号量子化正規化値を決めるときに、1つ過去のフレームの復号量子化正規化値も考慮する点が実施例5と異なる。構成と処理フローを示す図は実施例5と同じであり、図20が実施例5変形例1の符号化器と復号器の構成例を、図21が実施例5変形例1の符号化器と復号器の処理フロー例を示す。図21(A)は符号化器の処理フローを示しており、図21(B)は復号器の処理フローを示している。実施例5変形例1の符号化器400は実施例5と同じである。実施例5変形例1の復号器450’は、正規化値復号部157、第1ベクトル復号部108、M値計算部313、正規化値再計算部416、第2ベクトル復号部409、誤差修正部310、時間領域変換部111を備える。復号器450’は、復号器400’と正規化値復号部157が異なる。その他の構成部は実施例5と同じである。また、正規化値復号部157は実施例2で説明した内容と同じ処理を行う。
[Modification 1]
Fifth Embodiment Modification 1 is different from the fifth embodiment in that the decoding quantization normalization value of the previous frame is also taken into consideration when determining the decoding quantization normalization value on the decoder side. The diagram showing the configuration and the processing flow is the same as that of the fifth embodiment, FIG. 20 shows an example of the configuration of the encoder and decoder of the first modification of the fifth embodiment, and FIG. 21 shows the encoder of the fifth modification of the first embodiment. An example of the processing flow of the decoder is shown. FIG. 21A shows the processing flow of the encoder, and FIG. 21B shows the processing flow of the decoder. Fifth Embodiment An encoder 400 according to the first modification is the same as that of the fifth embodiment. Fifth Embodiment A decoder 450 ′ of the first modification includes a normalized value decoding unit 157, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 416, a second vector decoding unit 409, an error correction. Unit 310 and time domain conversion unit 111. The decoder 450 ′ differs from the decoder 400 ′ in the normalized value decoding unit 157. Other components are the same as those in the fifth embodiment. Further, the normalized value decoding unit 157 performs the same processing as that described in the second embodiment.

実施例5変形例1の符号化方法と復号方法はこのような処理なので、実施例5の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Since the encoding method and decoding method of the fifth modification example are such processes, the same effects as the encoding method and decoding method of the fifth embodiment can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

[変形例2]
実施例5変形例2は、誤差修正部での復号信号の生成方法が実施例5と異なる。構成と処理フローを示す図は実施例5と同じであり、図20が実施例5変形例2の符号化器と復号器の構成例を、図21が実施例5変形例2の符号化器と復号器の処理フロー例を示す。図21(A)は符号化器の処理フローを示しており、図21(B)は復号器の処理フローを示している。実施例5変形例2の符号化器400は実施例5と同じである。実施例5変形例2の復号器470’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、正規化値再計算部416、第2ベクトル復号部409、誤差修正部375、時間領域変換部111を備える。復号器470’は、復号器400’と誤差修正部375が異なる。その他の構成部は実施例5と同じである。誤差修正部375は、実施例4変形例2で説明した内容と同じ処理を行う(図18、図19参照)。
[Modification 2]
Fifth Embodiment A second modification is different from the fifth embodiment in the method of generating a decoded signal in the error correction unit. The diagram showing the configuration and the processing flow is the same as that of the fifth embodiment, FIG. 20 shows an example of the configuration of the encoder and decoder of the second modification of the fifth embodiment, and FIG. 21 shows the encoder of the fifth modification of the fifth embodiment. An example of the processing flow of the decoder is shown. FIG. 21A shows the processing flow of the encoder, and FIG. 21B shows the processing flow of the decoder. Fifth Embodiment An encoder 400 according to the second modification is the same as the fifth embodiment. Fifth Embodiment A decoder 470 ′ of the second modification includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 416, a second vector decoding unit 409, an error correction. Unit 375 and time domain conversion unit 111. Decoder 470 ′ differs from decoder 400 ′ in error correction section 375. Other components are the same as those in the fifth embodiment. The error correcting unit 375 performs the same processing as that described in the fourth modification of the fourth embodiment (see FIGS. 18 and 19).

実施例5変形例2の符号化方法と復号方法はこのような処理なので、実施例5の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Since the encoding method and decoding method of the fifth modification example are such processes, the same effects as the encoding method and decoding method of the fifth example can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

量子化正規化値X及び第1量子化信号X^(k)と目標値(周波数領域信号の正規化値X 及び周波数領域信号X(k))との誤差が大きい場合、実施例5の再計算正規化値Eの計算方法では、再計算正規化値Eを精度良く計算できないときがある。この場合、例えば再計算正規化値Eを小さく見積もりすぎれば周波数成分の欠損の原因となり、再計算正規化値Eを大きく見積もりすぎれば量子化ノイズ発生の原因となる。そこで、本実施例では、正規化値再計算部515、516において、以下の方法で再計算正規化値Eを計算する。 Quantized normalized values X - and the first quantized signal X ^ (k) and the target value - if the error between (normalized value of the frequency domain signals X 0 and the frequency domain signal X (k)) is large, Example the calculation method, recalculated normalized value E - - 5 recalculated normalized value E of the Sometimes not be accurately calculated. In this case, for example, if the recalculated normalization value E is estimated too small, the frequency component is lost, and if the recalculated normalization value E is estimated too large, the quantization noise is generated. Therefore, in this embodiment, the normalized value recalculation units 515 and 516 calculate the recalculated normalized value E by the following method.

図24に実施例6の符号化器と復号器の構成例を示す。図25に実施例6の符号化器と復号器の処理フロー例を示す。図26(A)は符号化器の処理フローを示しており、図26(B)は復号器の処理フローを示している。符号化器500は、周波数領域変換部101、正規化値計算部102、正規化値量子化部103、第1ベクトル量子化部104、誤差計算部312、正規化値再計算部515、第2ベクトル量子化部406を備える。復号器500’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、正規化値再計算部516、第2ベクトル復号部409、誤差修正部310、時間領域変換部111を備える。符号化器500は、符号化器400と正規化値再計算部515が異なる。また、復号器500’は、復号器400’と正規化値再計算部516が異なる。その他の構成部は実施例5と同じである。   FIG. 24 shows a configuration example of the encoder and decoder of the sixth embodiment. FIG. 25 shows an example of the processing flow of the encoder and decoder of the sixth embodiment. FIG. 26A shows the processing flow of the encoder, and FIG. 26B shows the processing flow of the decoder. The encoder 500 includes a frequency domain transform unit 101, a normalized value calculator 102, a normalized value quantizer 103, a first vector quantizer 104, an error calculator 312, a normalized value recalculator 515, a second A vector quantization unit 406 is provided. The decoder 500 ′ includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 516, a second vector decoding unit 409, an error correction unit 310, and a time domain conversion unit. 111. The encoder 500 is different from the encoder 400 in the normalized value recalculation unit 515. The decoder 500 'is different from the decoder 400' in the normalized value recalculation unit 516. Other components are the same as those in the fifth embodiment.

正規化値再計算部515、516では、以下のように再計算正規化値Eを求める。図26は再計算正規化値Eを求める処理フローの例である。k=0、tmp=0、tmp2=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S5151)。ステップS5151がYesの場合、tmpに|X^(k)|を加算し、tmp2に|X^(k)|を加算する(S5156)。kの値を1つ増加させ(S5157)、ステップS5151に戻る。S5151がNoの場合、第1再計算値E と第2再計算値E The normalized value recalculation units 515 and 516 obtain a recalculated normalized value E as follows. Figure 26 is recalculated normalized value E - is an example of a processing flow for determining the. The process is started with k = 0, tmp = 0, and tmp2 = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S5151). If step S5151 is Yes, | X ^ (k) | 2 is added to tmp, and | X ^ (k) | is added to tmp2 (S5156). The value of k is incremented by 1 (S5157), and the process returns to step S5151. When S5151 is No, the first recalculated value E - 1 and the second recalculated value E - 2 are

Figure 0005336943
Figure 0005336943

のように求める(S5158)。E がE のA倍より大きいかを確認する(S5159)。Aは、どちらの候補を選ぶかの基準となる調整用の定数であり、例えばA=0.5である。ステップS5159がYesの場合、第1再計算値E を再計算正規化値Eとし(S5160)、ステップS5159がNoの場合、第2再計算値E を再計算正規化値Eとする(S5161)。EがXのA倍より小さいかを確認する(S5162)。Aは、Eが矛盾する値となっていないかを確認するための定数であり、例えばA=1である。ステップS5162がYesの場合処理を終了し、ステップS5162がNoの場合、再計算正規化値Eを量子化正規化値Xに置き換え(S5163)、処理を終了する。 (S5158). E - 1 is E - large or confirms than 1 times 2 A (S5159). A 1 is an adjustment constant serving as a reference for selecting which candidate, and for example, A 1 = 0.5. If step S5159 is Yes, the first recalculated E - 1 recalculates normalized value E - and then (S5160), if the step S5159 is No, the second recalculated E - 2 recalculation normalized value E - (S5161). It is confirmed whether E is smaller than A 2 times X (S5162). A 2 is a constant for confirming whether E has a contradictory value, and for example, A 2 = 1. Step S5162 is finished processing cases Yes, the case step S5162 is No, the recalculation normalized value E - quantized normalized value X - replaced (S5163), the process ends.

図27は再計算正規化値Eを求める別の処理フローの例である。このフローでは値が0の第1量子化信号の数を再度計算している。k=0、m=0、tmp=0、tmp2=0として処理を始める。kがL(周波数領域信号X(k)の数)よりも小さいかを確認する(S5151)。ステップS5151がYesの場合、mがMより小さいことを確認する(S5152)。ステップS5152がYesの場合、mがThより小さいことを確認する(S5153)。ステップS5153がYesの場合、X^(k)が0かを確認する(S5154)。ステップS5154がYesの場合、mの値を1つ増加させる(S5155)。ステップS5152、S5153、S5154がNoの場合、tmpに|X^(k)|を加算し、tmp2に|X^(k)|を加算する(S5156)。kの値を1つ増加させ(S5157)、ステップS5151に戻る。S5151がNoの場合、第1再計算値E と第2再計算値E FIG. 27 is an example of another processing flow for obtaining the recalculated normalization value E . In this flow, the number of first quantized signals having a value of 0 is calculated again. The process is started with k = 0, m = 0, tmp = 0, and tmp2 = 0. It is confirmed whether k is smaller than L (number of frequency domain signals X (k)) (S5151). If step S5151 is Yes, it is confirmed that m is smaller than M (S5152). If step S5152 is Yes, it is confirmed that m is smaller than Th (S5153). When step S5153 is Yes, it is confirmed whether X ^ (k) is 0 (S5154). When step S5154 is Yes, the value of m is increased by 1 (S5155). When Steps S5152, S5153, and S5154 are No, | X ^ (k) | 2 is added to tmp, and | X ^ (k) | is added to tmp2 (S5156). The value of k is incremented by 1 (S5157), and the process returns to step S5151. When S5151 is No, the first recalculated value E - 1 and the second recalculated value E - 2 are

Figure 0005336943
Figure 0005336943

のように求める(S5158’)。ステップS5159からS5163までの処理は図26と同じである。図26の処理フローでも、図27の処理フローでも、第1再計算値E は、量子化正規化値Xの二乗に周波数領域信号X(k)の数Lを乗算し、乗算結果から第1量子化信号X^(k)のパワー|X^(k)|の合計を減算し、減算結果を値が0の第1量子化信号の数Mで除算し、除算結果の平方根を第1再計算値E としている。また、第2再計算値E は、量子化正規化値Xに周波数領域信号X(k)の数Lを乗算し、乗算結果から第1量子化信号X^(k)の絶対値|X^(k)|の合計を減算し、減算結果を値が0の第1量子化信号の数Mで除算し、除算結果を第2再計算値E としている。 (S5158 ′). The processing from step S5159 to S5163 is the same as that in FIG. In the processing flow of FIG. 26, in the processing flow of FIG. 27, the first recalculated E - 1 is quantized normalized values X - multiplied by the number L of the frequency domain signal X (k) to the square of the multiplication result Is subtracted from the sum of the powers | X ^ (k) | 2 of the first quantized signal X ^ (k), and the subtraction result is divided by the number M of first quantized signals having a value of 0, and the square root of the division result Is the first recalculated value E - 1 . The second recalculated E - 2 is quantized normalized values X - multiplied by the number L of the frequency domain signal X (k), the absolute value of the first quantized signal X ^ (k) from the multiplication result The total of | X ^ (k) | is subtracted, the subtraction result is divided by the number M of first quantized signals having a value of 0, and the division result is taken as a second recalculated value E - 2 .

このような処理なので、実施例6の符号化方法と復号方法によれば、実施例5の符号化方法と復号方法と同じ効果が得られる。そして、再計算正規化値Eをより精度良く計算できるので、正規化の精度が向上し、さらに効率的にベクトル量子化できる。 Since it is such a process, according to the encoding method and decoding method of Example 6, the same effect as the encoding method and decoding method of Example 5 is acquired. The recalculation normalized value E - since the can more accurately calculated, and improves the accuracy of the normalization, can more efficiently vector quantization.

[変形例1]
実施例6変形例1は、復号器側の復号量子化正規化値を決めるときに、1つ過去のフレームの復号量子化正規化値も考慮する点が実施例6と異なる。構成と処理フローを示す図は実施例6と同じであり、図24が実施例6変形例1の符号化器と復号器の構成例を、図25が実施例6変形例1の符号化器と復号器の処理フロー例を示す。図25(A)は符号化器の処理フローを示しており、図25(B)は復号器の処理フローを示している。実施例6変形例1の符号化器400は実施例6と同じである。実施例6変形例1の復号器550’は、正規化値復号部157、第1ベクトル復号部108、M値計算部313、正規化値再計算部516、第2ベクトル復号部409、誤差修正部310、時間領域変換部111を備える。復号器550’は、復号器500’と正規化値復号部157が異なる。その他の構成部は実施例6と同じである。また、正規化値復号部157は実施例2で説明した内容と同じ処理を行う。
[Modification 1]
Embodiment 6 Modification 1 is different from Embodiment 6 in that the decoding quantization normalization value of the previous frame is also taken into consideration when determining the decoding quantization normalization value on the decoder side. The diagram showing the configuration and the processing flow is the same as that of the sixth embodiment, FIG. 24 shows an example of the configuration of the encoder and decoder of the first modification of the sixth embodiment, and FIG. 25 shows the encoder of the sixth modification of the first embodiment. An example of the processing flow of the decoder is shown. FIG. 25A shows the processing flow of the encoder, and FIG. 25B shows the processing flow of the decoder. Sixth Embodiment An encoder 400 according to the first modification is the same as that according to the sixth embodiment. Sixth Embodiment A decoder 550 ′ of the first modification includes a normalized value decoding unit 157, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 516, a second vector decoding unit 409, an error correction. Unit 310 and time domain conversion unit 111. The decoder 550 ′ is different from the decoder 500 ′ in the normalized value decoding unit 157. Other components are the same as those in the sixth embodiment. Further, the normalized value decoding unit 157 performs the same processing as that described in the second embodiment.

実施例6変形例1の符号化方法と復号方法はこのような処理なので、実施例6の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Embodiment 6 Since the encoding method and decoding method of Modification 1 are such processes, the same effects as the encoding method and decoding method of Embodiment 6 can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

[変形例2]
実施例6変形例2は、誤差修正部での復号信号の生成方法が実施例6と異なる。構成と処理フローを示す図は実施例6と同じであり、図24が実施例6変形例2の符号化器と復号器の構成例を、図25が実施例6変形例2の符号化器と復号器の処理フロー例を示す。図26(A)は符号化器の処理フローを示しており、図25(B)は復号器の処理フローを示している。実施例6変形例2の符号化器500は実施例6と同じである。実施例6変形例2の復号器570’は、正規化値復号部107、第1ベクトル復号部108、M値計算部313、正規化値再計算部516、第2ベクトル復号部409、誤差修正部375、時間領域変換部111を備える。復号器570’は、復号器500’と誤差修正部375が異なる。その他の構成部は実施例6と同じである。誤差修正部375は、実施例4変形例2で説明した内容と同じ処理を行う(図18、図19参照)。
[Modification 2]
Embodiment 6 Modification 2 is different from Embodiment 6 in the method of generating a decoded signal in the error correction unit. The diagram showing the configuration and the processing flow is the same as that of the sixth embodiment, FIG. 24 shows an example of the configuration of the encoder and decoder of the second modification of the sixth embodiment, and FIG. 25 shows the encoder of the sixth modification of the sixth embodiment. An example of the processing flow of the decoder is shown. FIG. 26A shows a processing flow of the encoder, and FIG. 25B shows a processing flow of the decoder. Sixth Embodiment An encoder 500 according to the second modification is the same as the sixth embodiment. Sixth Embodiment A decoder 570 ′ of the second modification includes a normalized value decoding unit 107, a first vector decoding unit 108, an M value calculation unit 313, a normalized value recalculation unit 516, a second vector decoding unit 409, an error correction. Unit 375 and time domain conversion unit 111. Decoder 570 ′ differs from decoder 500 ′ in error correction section 375. Other components are the same as those in the sixth embodiment. The error correcting unit 375 performs the same processing as that described in the fourth modification of the fourth embodiment (see FIGS. 18 and 19).

実施例6変形例2の符号化方法と復号方法はこのような処理なので、実施例6の符号化方法、復号方法と同様の効果が得られる。さらに、復号器側の復号量子化正規化値Xの時間軸方向の不連続性によって量子化出力に生じるミュージカルノイズを軽減することができる。 Since the encoding method and decoding method of the sixth modification example are such processing, the same effects as the encoding method and decoding method of the sixth example can be obtained. Furthermore, he decoded quantized normalization value X decoder side - it is possible to reduce the musical noise generated in quantizing the output by the time-axis direction of the discontinuity.

実験結果
実施例6変形例2の方法での効果を確認するため、実験を行った。図28は楽器のみのオーケストラを対象としたときの実験結果を示す図、図29は歌を含んでいるオーケストラを対象としたときの実験結果を示す図、図30は楽器のみのストリングを対象としたときの実験結果を示す図、図31は歌を含んでいるポップスを対象としたときの実験結果を示す図、図32は管楽器(歌なし)を対象としたときの実験結果を示す図、図33は歌のみを対象としたときの実験結果を示す図である。各図とも、横軸は時間、縦軸は次式に示すSN比を示しており、大きい値ほど品質がよい。
Experimental Results An experiment was conducted to confirm the effect of the method of the sixth modification. FIG. 28 is a diagram showing experimental results when targeting an orchestra containing only a musical instrument, FIG. 29 is a diagram showing experimental results when targeting an orchestra containing a song, and FIG. 30 is intended for a string containing only an instrument. The figure which shows the experimental result when doing, FIG. 31 is the figure which shows the experimental result when targeting pops containing a song, FIG. 32 is the figure which shows the experimental result when targeting wind instrument (no song), FIG. 33 is a diagram showing experimental results when only a song is targeted. In each figure, the horizontal axis indicates time, and the vertical axis indicates the S / N ratio shown in the following equation. The larger the value, the better the quality.

Figure 0005336943
Figure 0005336943

また、点線は従来の方法で符号化、復号した場合、実線は実施例6変形例2の方法で符号化、復号した場合を示している。なお、第1符号化対象信号は、MDCT(Modified Discrete Cosine Transform)で周波数領域に変換された周波数領域信号である。どの実験結果でも、本発明の品質の方がよいことが分かる。このことからも、本発明が限られたビット数での効率的なベクトル量子化を実現できることが分かる。 A dotted line indicates a case where encoding and decoding are performed by a conventional method, and a solid line indicates a case where encoding and decoding are performed by a method according to a second modification of the sixth embodiment. The first encoding target signal is a frequency domain signal converted into the frequency domain by MDCT (Modified Discrete Cosine Transform). Any experimental result shows that the quality of the present invention is better. This also shows that the present invention can realize efficient vector quantization with a limited number of bits.

プログラムなど
また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
The various processes described above, such as a program, are not only executed in time series according to the description, but may also be executed in parallel or individually as required by the processing capability of the apparatus that executes the process. Needless to say, other modifications are possible without departing from the spirit of the present invention.
Further, when the above-described configuration is realized by a computer, processing contents of functions that each device should have are described by a program. The processing functions are realized on the computer by executing the program on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.

100、200、300、400、500 符号化器
100’、200’、250’、270’、300’、350’、370’ 復号器
400’、450’、470’、500’、550’、570’ 復号器
101 周波数領域変換部
102 正規化値計算部
103 正規化値量子化部
104 第1ベクトル量子化部
105、205、312 誤差計算部
106、206、306、406 第2ベクトル量子化部
107、157 正規化値復号部
108 第1ベクトル復号部
109、209、309、409 第2ベクトル復号部
110、210、275、310、375 誤差修正部
111 時間領域変換部
313 M値計算部
415、416、515、516 正規化値再計算部
100, 200, 300, 400, 500 Encoder 100 ', 200', 250 ', 270', 300 ', 350', 370 'Decoder 400', 450 ', 470', 500 ', 550', 570 'Decoder 101 Frequency domain transform unit 102 Normalized value calculation unit 103 Normalized value quantization unit 104 First vector quantization unit 105, 205, 312 Error calculation units 106, 206, 306, 406 Second vector quantization unit 107 157 Normalized value decoding unit 108 First vector decoding unit 109, 209, 309, 409 Second vector decoding unit 110, 210, 275, 310, 375 Error correction unit 111 Time domain conversion unit 313 M value calculation unit 415, 416 515, 516 Normalization value recalculation part

Claims (14)

所定サンプル数ごとの符号化対象の信号サンプル(以下、「第1符号化対象信号」という)に対する正規化値を求める正規化値計算ステップと、
前記正規化値を量子化した量子化正規化値と該量子化正規化値に対応する正規化値量子化インデックスを求める正規化値量子化ステップと、
前記量子化正規化値を用いて前記第1符号化対象信号を正規化して正規化第1符号化対象信号を求め、前記正規化第1符号化対象信号を複数サンプル纏めてベクトル量子化した第1量子化信号の列と該第1量子化信号の列に対応する第1ベクトル量子化インデックスを求める第1ベクトル量子化ステップと、
前記第1量子化信号の値が0の場合は、前記第1符号化対象信号の絶対値と前記量子化正規化値との重み付き誤差信号を求め、第1量子化信号の値が0以外の場合は、前記第1符号化対象信号の絶対値と前記第1量子化信号の絶対値の誤差信号を求める誤差計算ステップと、
前記誤差信号または前記誤差信号に対応した信号を複数サンプル纏めてベクトル量子化して第2ベクトル量子化インデックスを求める第2ベクトル量子化ステップと、
を有する符号化方法。
A normalization value calculation step for obtaining a normalization value for a signal sample to be encoded for each predetermined number of samples (hereinafter referred to as “first encoding target signal”);
A normalized value quantization step of obtaining a normalized quantization value obtained by quantizing the normalized value and a normalized value quantization index corresponding to the quantized normalized value;
First normalized signal is obtained by normalizing the first coding target signal using the quantized normalized value, and a plurality of samples of the normalized first coding target signal are vector quantized. A first vector quantization step for obtaining a sequence of one quantized signal and a first vector quantization index corresponding to the sequence of the first quantized signal;
When the value of the first quantized signal is 0, a weighted error signal between the absolute value of the first encoding target signal and the quantized normalized value is obtained, and the value of the first quantized signal is other than 0. In this case, an error calculation step for obtaining an error signal between the absolute value of the first encoding target signal and the absolute value of the first quantized signal;
A second vector quantization step of obtaining a second vector quantization index by vector-quantizing a plurality of samples of the error signal or a signal corresponding to the error signal;
An encoding method comprising:
所定サンプル数ごとの符号化対象の信号サンプル(以下、「第1符号化対象信号」という)に対する正規化値を求める正規化値計算ステップと、  A normalization value calculation step for obtaining a normalization value for a signal sample to be encoded for each predetermined number of samples (hereinafter referred to as “first encoding target signal”);
前記正規化値を量子化した量子化正規化値と該量子化正規化値に対応する正規化値量子化インデックスを求める正規化値量子化ステップと、  A normalized value quantization step of obtaining a normalized quantization value obtained by quantizing the normalized value and a normalized value quantization index corresponding to the quantized normalized value;
前記量子化正規化値を用いて前記第1符号化対象信号を正規化して正規化第1符号化対象信号を求め、前記正規化第1符号化対象信号を複数サンプル纏めてベクトル量子化した第1量子化信号の列と該第1量子化信号の列に対応する第1ベクトル量子化インデックスを求める第1ベクトル量子化ステップと、  First normalized signal is obtained by normalizing the first coding target signal using the quantized normalized value, and a plurality of samples of the normalized first coding target signal are vector quantized. A first vector quantization step for obtaining a sequence of one quantized signal and a first vector quantization index corresponding to the sequence of the first quantized signal;
前記第1量子化信号の値が0の場合の、前記第1符号化対象信号の絶対値と前記量子化正規化値との重み付き誤差信号だけを求める誤差計算ステップと、  An error calculating step for obtaining only a weighted error signal between the absolute value of the first encoding target signal and the quantized normalized value when the value of the first quantized signal is 0;
前記誤差信号または前記誤差信号に対応した信号を複数サンプル纏めてベクトル量子化して第2ベクトル量子化インデックスを求める第2ベクトル量子化ステップと、  A second vector quantization step of obtaining a second vector quantization index by vector-quantizing a plurality of samples of the error signal or a signal corresponding to the error signal;
を有する符号化方法。  An encoding method comprising:
請求項2記載の符号化方法であって、
前記量子化正規化値をX、前記所定サンプル数をL、前記第1量子化信号のパワーの合計tmp、値が0の前記第1量子化信号の数をM、再計算正規化値Eとするときに、
Figure 0005336943

の関係となる再計算正規化値Eを求める正規化値再計算ステップ
も有し、
第2ベクトル量子化ステップは、前記再計算正規化値を用いて前記誤差信号を正規化して正規化誤差信号を求め、前記正規化誤差信号を複数サンプル纏めてベクトル量子化して前記第2ベクトル量子化インデックスを求める
ことを特徴とする符号化方法。
An encoding method according to claim 2, wherein
The quantization normalized value is X , the predetermined number of samples is L, the total power of the first quantized signal is tmp, the number of the first quantized signals having a value of 0 is M, and a recalculated normalized value E - when the,
Figure 0005336943

A normalized value recalculation step for obtaining a recalculated normalized value E which is
In the second vector quantization step, the error signal is normalized using the recalculated normalization value to obtain a normalized error signal, and the normalized error signal is vector-quantized by collecting a plurality of samples, and the second vector quantum is obtained. A coding method characterized by obtaining a coding index.
請求項2記載の符号化方法であって、
前記量子化正規化値をX、前記所定サンプル数をL、前記第1量子化信号のパワーの合計tmp、前記第1量子化信号の絶対値の合計をtmp2、値が0の前記第1量子化信号の数をM、第1再計算値をE 、第2再計算値をE とするときに、
Figure 0005336943

の関係となる第1再計算値をE と第2再計算値をE を求め、
前記第1再計算値と前記第2再計算値と前記量子化正規化値のいずれかを再計算正規化値とする正規化値再計算ステップ
も有し、
前記第2ベクトル量子化ステップは、前記再計算正規化値を用いて前記誤差信号を正規化して正規化誤差信号を求め、前記正規化誤差信号を複数サンプル纏めてベクトル量子化して、前記第2ベクトル量子化インデックスを求める
ことを特徴とする符号化方法。
An encoding method according to claim 2, wherein
The quantized normalization value X -, the predetermined number of samples L, and total power of the first quantized signal tmp, the first tmp2 the sum of the absolute values of the quantized signal, the value of 0 first When the number of 1 quantized signals is M, the first recalculation value is E - 1 and the second recalculation value is E - 2 ,
Figure 0005336943

E the first recalculated as a relation - 1 and the second recalculated E - 2 a determined,
A normalized value recalculation step in which any one of the first recalculated value, the second recalculated value, and the quantized normalized value is a recalculated normalized value;
The second vector quantization step obtains a normalized error signal by normalizing the error signal using the recalculated normalized value, and vector-quantizes the normalized error signal by collecting a plurality of samples, and An encoding method characterized by obtaining a vector quantization index.
第1ベクトル量子化インデックスと第2ベクトル量子化インデックスと正規化値量子化インデックスを含む符号から、復号信号を求める復号方法であって、
前記正規化値量子化インデックスに対応する復号正規化値を求め、復号量子化正規化値として出力する正規化値復号ステップと、
前記第1ベクトル量子化インデックスに対応した正規化第1復号量子化信号を求め、前記正規化第1復号量子化信号と前記復号量子化正規化値を用いて第1復号量子化信号を求める第1ベクトル復号ステップと、
前記第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、前記正規化第2復号量子化信号と前記復号量子化正規化値を用いて第2復号量子化信号を求める第2ベクトル復号ステップと、
第1復号量子化信号の値が0の場合は、前記復号量子化正規化値と前記第2復号量子化信号の加重加算を用いた計算結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とし、第1復号量子化信号の値が0以外の場合は、前記第1復号量子化信号と前記第2復号量子化信号の和を用いた計算結果を復号信号とする誤差修正ステップと
を有する復号方法。
A decoding method for obtaining a decoded signal from a code including a first vector quantization index, a second vector quantization index, and a normalized value quantization index,
A normalized value decoding step of obtaining a decoded normalized value corresponding to the normalized value quantization index and outputting as a decoded quantized normalized value;
First, a normalized first decoded quantized signal corresponding to the first vector quantization index is obtained, and a first decoded quantized signal is obtained using the normalized first decoded quantized signal and the decoded quantized normalized value. One vector decoding step;
First, a normalized second decoded quantized signal corresponding to the second vector quantization index is obtained, and a second decoded quantized signal is obtained using the normalized second decoded quantized signal and the decoded quantized normalized value. A two-vector decoding step;
When the value of the first decoded quantized signal is 0, the calculation result using the weighted addition of the decoded quantized normalized value and the second decoded quantized signal is multiplied by 1 or −1 randomly generated, When the multiplication result is a decoded signal and the value of the first decoded quantized signal is other than 0, an error using the calculation result using the sum of the first decoded quantized signal and the second decoded quantized signal as the decoded signal A decoding method comprising: a correction step.
請求項5記載の復号方法であって、
前記誤差修正ステップが、
第1復号量子化信号の値が0の場合は、前記復号量子化正規化値と前記第2復号量子化信号の加重加算にランダムに生成した1または−1を乗算した結果を復号信号とし、第1復号量子化信号の値が負の場合は、前記第1復号量子化信号の絶対値と前記第2復号量子化信号の和に−1を乗算した結果を復号信号とし、第1復号量子化信号の値が正の場合は、前記第1復号量子化信号の絶対値と前記第2復号量子化信号の和を復号信号とする
ことを特徴とする復号方法。
The decoding method according to claim 5, wherein
The error correction step comprises:
When the value of the first decoded quantized signal is 0, a result obtained by multiplying the weighted addition of the decoded quantized normalized value and the second decoded quantized signal by randomly generated 1 or −1 is used as a decoded signal, When the value of the first decoded quantized signal is negative, the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal is multiplied by −1 as a decoded signal, and the first decoded quantum When the value of the quantized signal is positive, the decoded signal is a sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal.
請求項6記載の復号方法であって、
前記正規化値復号ステップが、
1フレーム前の復号正規化値が0の場合は、現在のフレームの復号正規化値を、復号量子化正規化値として出力し、
1フレーム前の復号正規化値が0でない場合は、現在のフレームの復号正規化値と1フレーム前の復号正規化値との加重加算の結果を、復号量子化正規化値として出力する
ことを特徴とする復号方法。
The decoding method according to claim 6, wherein
The normalized value decoding step comprises:
If the decoding normalization value of the previous frame is 0, the decoding normalization value of the current frame is output as the decoding quantization normalization value,
If the decoding normalization value of the previous frame is not 0, the result of the weighted addition of the decoding normalization value of the current frame and the decoding normalization value of the previous frame is output as the decoding quantization normalization value. A characteristic decoding method.
請求項5記載の復号方法であって、
誤差修正ステップが、
第1復号量子化信号の値が0かつ1フレーム過去の復号量子化正規化値が0の場合は、現在のフレームの復号量子化正規化値と前記第2復号量子化信号の加重加算の結果にランダムに生成した1または−1を乗算した結果を復号信号とし、
第1復号量子化信号の値が0かつ1フレーム過去の復号量子化正規化値が0以外の場合は、現在のフレームの復号量子化正規化値と前記第2復号量子化信号と1フレーム過去の復号量子化正規化値との加重加算の結果にランダムに生成した1または−1を乗算した結果を復号信号とし、
第1復号量子化信号の値が負の場合は、前記第1復号量子化信号の絶対値と前記第2復号量子化信号の和に−1を乗算した結果を復号信号とし、第1復号量子化信号の値が正の場合は、前記第1復号量子化信号の絶対値と前記第2復号量子化信号の和を復号信号とする
を有する復号方法。
The decoding method according to claim 5, wherein
The error correction step
When the value of the first decoded quantized signal is 0 and the decoded quantized normalized value of one frame past is 0, the result of weighted addition of the decoded quantized normalized value of the current frame and the second decoded quantized signal The result of multiplying randomly generated 1 or -1 is the decoded signal,
When the value of the first decoded quantized signal is 0 and the decoded quantized normalized value of one frame past is other than 0, the decoded quantized normalized value of the current frame, the second decoded quantized signal, and the past of one frame A result obtained by multiplying a result of weighted addition with the decoded quantization normalized value of 1 or −1 randomly generated as a decoded signal,
When the value of the first decoded quantized signal is negative, the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal is multiplied by −1 as a decoded signal, and the first decoded quantum When the value of the quantized signal is positive, the decoding method includes: using the sum of the absolute value of the first decoded quantized signal and the second decoded quantized signal as a decoded signal.
第1ベクトル量子化インデックスと第2ベクトル量子化インデックスと正規化値量子化インデックスを含む符号から、復号信号を求める復号方法であって、  A decoding method for obtaining a decoded signal from a code including a first vector quantization index, a second vector quantization index, and a normalized value quantization index,
前記正規化値量子化インデックスに対応する復号正規化値を求め、復号量子化正規化値として出力する正規化値復号ステップと、  A normalized value decoding step of obtaining a decoded normalized value corresponding to the normalized value quantization index and outputting as a decoded quantized normalized value;
前記第1ベクトル量子化インデックスに対応した正規化第1復号量子化信号を求め、前記正規化第1復号量子化信号と前記復号量子化正規化値を用いて第1復号量子化信号を求める第1ベクトル復号ステップと、  First, a normalized first decoded quantized signal corresponding to the first vector quantization index is obtained, and a first decoded quantized signal is obtained using the normalized first decoded quantized signal and the decoded quantized normalized value. One vector decoding step;
前記第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、前記正規化第2復号量子化信号と前記復号量子化正規化値を用いて第2復号量子化信号を求める第2ベクトル復号ステップと、  First, a normalized second decoded quantized signal corresponding to the second vector quantization index is obtained, and a second decoded quantized signal is obtained using the normalized second decoded quantized signal and the decoded quantized normalized value. A two-vector decoding step;
第1復号量子化信号の値が0の場合は、前記復号量子化正規化値と前記第2復号量子化信号の加重加算を用いた計算結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とし、第1復号量子化信号の値が0以外の場合は、前記第1復号量子化信号を復号信号とする誤差修正ステップと  When the value of the first decoded quantized signal is 0, the calculation result using the weighted addition of the decoded quantized normalized value and the second decoded quantized signal is multiplied by 1 or −1 randomly generated, An error correction step in which the multiplication result is a decoded signal, and when the value of the first decoded quantized signal is other than 0, the first decoded quantized signal is the decoded signal;
を有する復号方法。  A decryption method.
請求項9記載の復号方法であって、
値が0の前記第1復号量子化信号の数Mを求めるM値計算ステップと、
前記復号量子化正規化値をX、前記第1復号量子化信号の数をL、前記第1復号量子化信号のパワーの合計tmp、値が0の前記第1復号量子化信号の数をM、再計算正規化値Eとするときに、
Figure 0005336943

の関係となる再計算正規化値Eを求める正規化値再計算ステップ
も有し、
前記第2ベクトル復号ステップは、前記第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、前記正規化第2復号量子化信号と前記再計算正規化値を用いて前記第2復号量子化信号を求める
ことを特徴とする復号方法。
The decoding method according to claim 9, wherein
An M value calculation step for obtaining the number M of the first decoded quantized signals having a value of 0;
The decoded quantized normalized value is X , the number of the first decoded quantized signals is L, the total power of the first decoded quantized signals is tmp, and the number of the first decoded quantized signals is 0. Is M and the recalculated normalization value E
Figure 0005336943

A normalized value recalculation step for obtaining a recalculated normalized value E which is
The second vector decoding step obtains a normalized second decoded quantized signal corresponding to the second vector quantization index, and uses the normalized second decoded quantized signal and the recalculated normalized value. 2. A decoding method characterized by obtaining a decoded quantized signal.
請求項9記載の復号方法であって、
値が0の前記第1復号量子化信号の数Mを求めるM値計算ステップと、
前記復号量子化正規化値をX、前記第1復号量子化信号の数をL、前記第1復号量子化信号のパワーの合計tmp、前記第1量子化信号の絶対値の合計をtmp2、値が0の前記第1復号量子化信号の数をM、第1再計算値をE 、第2再計算値をE とするときに、
Figure 0005336943

の関係となる第1再計算値をE と第2再計算値をE を求め、
前記第1再計算値と前記第2再計算値と前記復号量子化正規化値のいずれかを再計算正規化値とする正規化値再計算ステップ
も有し、
前記第2ベクトル復号ステップは、前記第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、前記正規化第2復号量子化信号と前記再計算正規化値を用いて前記第2復号量子化信号を求める
ことを特徴とする復号方法。
The decoding method according to claim 9, wherein
An M value calculation step for obtaining the number M of the first decoded quantized signals having a value of 0;
The decoded quantization normalized value is X , the number of the first decoded quantized signals is L, the total power of the first decoded quantized signals is tmp, and the total absolute value of the first quantized signals is tmp 2 , the number of the first decoded quantized signal values are 0 M, the first recalculated E - 1, the second recalculated E - when a 2,
Figure 0005336943

E the first recalculated as a relation - 1 and the second recalculated E - 2 a determined,
A normalized value recalculation step in which any one of the first recalculated value, the second recalculated value, and the decoded quantized normalized value is a recalculated normalized value;
The second vector decoding step obtains a normalized second decoded quantized signal corresponding to the second vector quantization index, and uses the normalized second decoded quantized signal and the recalculated normalized value. 2. A decoding method characterized by obtaining a decoded quantized signal.
所定サンプル数ごとの符号化対象の信号サンプル(以下、「第1符号化対象信号」という)に対する正規化値を求める正規化値計算部と、
前記正規化値を量子化した量子化正規化値と該量子化正規化値に対応する正規化値量子化インデックスを求める正規化値量子化部と、
前記量子化正規化値を用いて前記第1符号化対象信号を正規化して正規化第1符号化対象信号を求め、前記正規化第1符号化対象信号を複数サンプル纏めてベクトル量子化した第1量子化信号の列と該第1量子化信号の列に対応する第1ベクトル量子化インデックスを求める第1ベクトル量子化部と、
第1量子化信号の値が0の場合は、前記第1符号化対象信号の絶対値と前記量子化正規化値との重み付き誤差信号を求め、第1量子化信号の値が0以外の場合は、前記第1符号化対象信号の絶対値と前記第1量子化信号の絶対値の誤差信号を求める誤差計算部と、
前記誤差信号または前記誤差信号に対応した信号を複数サンプル纏めてベクトル量子化して第2ベクトル量子化インデックスを求める第2ベクトル量子化部と、
を備える符号化器。
A normalized value calculation unit for obtaining a normalized value for a signal sample to be encoded for each predetermined number of samples (hereinafter referred to as “first encoding target signal”);
A normalized value quantizing unit that obtains a normalized quantization value that is obtained by quantizing the normalized value and a normalized value quantization index that corresponds to the quantized normalized value;
First normalized signal is obtained by normalizing the first coding target signal using the quantized normalized value, and a plurality of samples of the normalized first coding target signal are vector quantized. A first vector quantization unit for obtaining a sequence of 1 quantized signal and a first vector quantization index corresponding to the sequence of the first quantized signal;
When the value of the first quantized signal is 0, a weighted error signal between the absolute value of the first encoding target signal and the quantized normalized value is obtained, and the value of the first quantized signal is other than 0 An error calculation unit for obtaining an error signal between the absolute value of the first encoding target signal and the absolute value of the first quantized signal;
A second vector quantization unit for obtaining a second vector quantization index by vector-quantizing a plurality of samples of the error signal or a signal corresponding to the error signal;
An encoder comprising:
第1ベクトル量子化インデックスと第2ベクトル量子化インデックスと正規化値量子化インデックスを含む符号から、復号信号を求める復号器であって、
前記正規化値量子化インデックスに対応する復号正規化値を求め、復号量子化正規化値として出力する正規化値復号部と、
前記第1ベクトル量子化インデックスに対応した正規化第1復号量子化信号を求め、前記正規化第1復号量子化信号と前記復号量子化正規化値を用いて第1復号量子化信号を求める第1ベクトル復号部と、
前記第2ベクトル量子化インデックスに対応した正規化第2復号量子化信号を求め、前記正規化第2復号量子化信号と前記復号量子化正規化値を用いて第2復号量子化信号を求める第2ベクトル復号部と、
第1復号量子化信号の値が0の場合は、前記復号量子化正規化値と前記第2復号量子化信号の加重加算を用いた計算結果にランダムに生成した1または−1を乗算し、乗算結果を復号信号とし、第1復号量子化信号の値が0以外の場合は、前記第1復号量子化信号と前記第2復号量子化信号の和を用いた計算結果を復号信号とする誤差修正部と
を備える復号器。
A decoder for obtaining a decoded signal from a code including a first vector quantization index, a second vector quantization index, and a normalized value quantization index,
A normalized value decoding unit that obtains a decoded normalized value corresponding to the normalized value quantization index and outputs the decoded normalized value;
First, a normalized first decoded quantized signal corresponding to the first vector quantization index is obtained, and a first decoded quantized signal is obtained using the normalized first decoded quantized signal and the decoded quantized normalized value. A one-vector decoding unit;
First, a normalized second decoded quantized signal corresponding to the second vector quantization index is obtained, and a second decoded quantized signal is obtained using the normalized second decoded quantized signal and the decoded quantized normalized value. A two-vector decoding unit;
When the value of the first decoded quantized signal is 0, the calculation result using the weighted addition of the decoded quantized normalized value and the second decoded quantized signal is multiplied by 1 or −1 randomly generated, When the multiplication result is a decoded signal and the value of the first decoded quantized signal is other than 0, an error using the calculation result using the sum of the first decoded quantized signal and the second decoded quantized signal as the decoded signal A decoder comprising: a correction unit.
請求項1から11のいずれかに記載の方法の各ステップをコンピュータにより実行させるプログラム。   The program which performs each step of the method in any one of Claim 1 to 11 by computer.
JP2009148956A 2009-06-23 2009-06-23 Encoding method, decoding method, encoder, decoder, program Active JP5336943B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009148956A JP5336943B2 (en) 2009-06-23 2009-06-23 Encoding method, decoding method, encoder, decoder, program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009148956A JP5336943B2 (en) 2009-06-23 2009-06-23 Encoding method, decoding method, encoder, decoder, program

Publications (2)

Publication Number Publication Date
JP2011009861A JP2011009861A (en) 2011-01-13
JP5336943B2 true JP5336943B2 (en) 2013-11-06

Family

ID=43566047

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009148956A Active JP5336943B2 (en) 2009-06-23 2009-06-23 Encoding method, decoding method, encoder, decoder, program

Country Status (1)

Country Link
JP (1) JP5336943B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011111453A1 (en) * 2010-03-09 2011-09-15 日本電信電話株式会社 Encoding method, decoding method, device, program, and recording medium
CN102959873A (en) * 2010-07-05 2013-03-06 日本电信电话株式会社 Encoding method, decoding method, device, program, and recording medium
CN102959872A (en) * 2010-07-05 2013-03-06 日本电信电话株式会社 Encoding method, decoding method, device, program, and recording medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3045197B2 (en) * 1991-07-29 2000-05-29 日本電信電話株式会社 Codebook design method for vector quantizer
JP3405788B2 (en) * 1993-03-04 2003-05-12 株式会社東芝 Video encoding device and video decoding device
JP3186007B2 (en) * 1994-03-17 2001-07-11 日本電信電話株式会社 Transform coding method, decoding method
JPH09261065A (en) * 1996-03-25 1997-10-03 Mitsubishi Electric Corp Quantization device, inverse quantization device and quantization and inverse quantization system
JP3698418B2 (en) * 2001-05-25 2005-09-21 松下電器産業株式会社 Audio signal compression method and audio signal compression apparatus
JP2006157881A (en) * 2004-11-08 2006-06-15 Toshiba Corp Variable-length coding device and method of same
JPWO2008047795A1 (en) * 2006-10-17 2010-02-25 パナソニック株式会社 Vector quantization apparatus, vector inverse quantization apparatus, and methods thereof
CA2701757C (en) * 2007-10-12 2016-11-22 Panasonic Corporation Vector quantization apparatus, vector dequantization apparatus and the methods

Also Published As

Publication number Publication date
JP2011009861A (en) 2011-01-13

Similar Documents

Publication Publication Date Title
JP5603484B2 (en) Encoding method, decoding method, encoding device, decoding device, program, recording medium
TWI380602B (en) Apparatus and method for encoding an information signal
EP2650878B1 (en) Encoding method, encoder, periodic feature amount determination method, periodic feature amount determination apparatus, program and recording medium
KR100848324B1 (en) An apparatus and method for speech condig
JP5331249B2 (en) Encoding method, decoding method, apparatus, program, and recording medium
CN104321813B (en) Coded method, code device
EP3226243B1 (en) Encoding apparatus, decoding apparatus, and method and program for the same
CN110491398B (en) Encoding method, encoding device, and recording medium
JP5256375B2 (en) Encoding method, decoding method, apparatus, program, and recording medium
JP5331248B2 (en) Encoding method, decoding method, apparatus, program, and recording medium
JP5336943B2 (en) Encoding method, decoding method, encoder, decoder, program
JP3357829B2 (en) Audio encoding / decoding method
JP5336942B2 (en) Encoding method, decoding method, encoder, decoder, program
EP3252758B1 (en) Encoding apparatus, decoding apparatus, and methods, programs and recording media for encoding apparatus and decoding apparatus
JP5325340B2 (en) Encoding method, decoding method, encoding device, decoding device, program, and recording medium
CN107430869B (en) Parameter determining device, method and recording medium
JP5361565B2 (en) Encoding method, decoding method, encoder, decoder and program
JP5355244B2 (en) Encoding method, decoding method, encoder, decoder and program
JP6780108B2 (en) Encoding device, decoding device, smoothing device, de-smoothing device, their methods, and programs
JP5579932B2 (en) Encoding method, apparatus, program, and recording medium

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110720

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120521

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130701

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130723

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130802

R150 Certificate of patent or registration of utility model

Ref document number: 5336943

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350