Coding method, decoding method, coding apparatus, decoding apparatus, coding program, decoding program and recording medium therefor
20 claims: 20 independent, 0 dependent
- 1フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルから線形予測に用いる1つ以上の予測係数を生成する予測係数生成ステップと、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算ステップと、 上記何れか1つの予測係数が所定の第一閾値よりも大きく、かつ、上記レンジUが所定の第三閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 2フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルから線形予測に用いる予測次数を生成する予測次数生成ステップと、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算ステップと、 上記予測次数が所定の第二閾値よりも大きく、かつ、上記レンジUが所定の第三閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 3フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルから線形予測に用いる1つ以上の予測係数を生成する予測係数生成ステップと、 上記1つ以上の予測係数の内何れか1つの予測係数が所定の第一閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 4フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルから線形予測に用いる予測次数を生成する予測次数生成ステップと、 上記予測次数が所定の第二閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 5請求項 3に 記載された符号化方法において、 上記選択ステップは、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算ステップと、 上 記1 つの予測係数が所定の第一閾値よりも小さ い場 合であっても、┌・┐を・以上の最小の整数とし、βを1以下の正の定数として、上記レンジUが2^(┌log 2 U┐)*βよりも小さければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 6請求 項4 に記載された符号化方法において、 上記選択ステップは、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算ステップと 、 上 記予測次数が所定の第二閾値よりも小さい場合であっても、┌・┐を・以上の最小の整数とし、βを1以下の正の定数として、上記レンジUが2^(┌log 2 U┐)*βよりも小さければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 7フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 フレームごとに短期予測と長期予測のうち符号の量が小さくなる予測方式を選択する予測方式選択ステップと、 上記予測方式選択ステップにおいて、長期予測が選択された場合には、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 8フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルの偏りを示す評価値が所定の第四閾値よりも小さければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力ステップ、 を含む、 ことを特徴とする符号化方法。
- 9フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 上記フレーム内のサンプルの最大値と最小値との差が1であると判断された場合には、正規化符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 10フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法と、上記フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法との内、生成される符号の量が小さい符号化方法を選択して、その選択結果を表す選択符号を出力する選択ステップと、 選択された符号化方法により上記フレーム内のサンプルを符号化して圧縮符号を生成する符号化ステップと、 を含み、 上記選択ステップは、 予測誤差を計算する予測誤差計算ステップと、 上記予測誤差を用いて、予測符号化方法により生成される予測符号化符号の量を推定する予測符号化符号量推定ステップと、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算ステップと、 上記レンジUを用いて、振幅ビット数V=log 2 Uを計算する振幅ビット数計算ステップと、 上記振幅ビット数Vを用いて、正規化符号化方法により生成される正規化符号化符号の量を推定する正規化符号化符号量推定ステップと、 上記推定された予測符号化符号の量と、上記推定された正規化符号化符号の量との内、生成される符号の量が小さい符号化方法を選択することを表す選択符号を出力する選択結果出力ステップと、 を含む、 ことを特徴とする符号化方法。
- 11フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルから線形予測に用いる1つ以上の予測係数を生成する予測係数生成部と、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算部と、 上記何れか1つの予測係数が所定の第一閾値よりも大きく、かつ、上記レンジUが所定の第三閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 12フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルから線形予測に用いる予測次数を生成する予測次数生成部と、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算部と、 上記予測次数が所定の第二閾値よりも大きく、かつ、上記レンジUが所定の第三閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 13フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルから線形予測に用いる1つ以上の予測係数を生成する予測係数生成部と、 上記1つ以上の予測係数の内何れか1つの予測係数が所定の第一閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 14フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルから線形予測に用いる予測次数を生成する予測次数生成部と、 上記予測次数が所定の第二閾値よりも大きければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 15フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 フレームごとに短期予測と長期予測のうち符号の量が小さくなる予測方式を選択する予測方式選択部と、 上記予測方式選択 部 において、長期予測が選択された場合には、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 16フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルの偏りを示す評価値が所定の第四閾値よりも小さければ、予測符号化方法を選択することを表す選択符号を出力する選択結果出力部、 を含む、 ことを特徴とする符号化装置。
- 17フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 上記フレーム内のサンプルの最大値と最小値との差が1であると判断された場合には、正規化符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 18フレーム内のサンプルを線形予測して予測誤差の振幅を符号化する予測符号化方法により圧縮符号を生成する予測符号化部と、 フレーム内のサンプルの振幅を正規化して符号化する正規化符号化方法により圧縮符号を生成する正規化符号化部と、 上記予測符号化部により生成される圧縮符号の量と、上記正規化符号化部により生成される圧縮符号の量との内、圧縮符号の量が小さくなる符号化方法を選択して、その選択結果を表す選択符号を出力する選択部と、 を含み、 上記選択部は、 予測誤差を計算する予測誤差計算部と、 上記予測誤差を用いて、予測符号化方法により生成される予測符号化符号の量を推定する予測符号化符号量推定部と、 上記フレーム内の全サンプルの値に基づいてレンジUを計算するレンジ計算部と、 上記レンジUを用いて、振幅ビット数V=log 2 Uを計算する振幅ビット数計算部と、 上記振幅ビット数Vを用いて、正規化符号化方法により生成される正規化符号化符号の量を推定する正規化符号化符号量推定部と、 上記推定された予測符号化符号の量と、上記推定された正規化符号化符号の量との内、生成される符号の量が小さい符号化方法を選択することを表す選択符号を出力する選択結果出力部と、 を含む、 ことを特徴とする符号化装置。
- 19請求項1 1 から請求項1 8 の何れかに記載された符号化装置の各部としてコンピュータを機能させるためのプログラム。
- 20請求項1 1 から請求項1 8 の何れかに記載された符号化装置の各部としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
Independent claims20
114 paragraphs, as filed
The present invention relates to a technique for compressing and encoding an input signal such as an audio signal without distortion and a technique for decoding the compressed code.
A reversible coding method that does not allow distortion is known as a method of compressing information such as voice and images. When the waveform is recorded as a linear PCM signal as it is, various compression coding methods have been devised (see, for example, Non-Patent Document 1). For example, a predictive coding method such as MPEG-4 ALS is known (see, for example, Non-Patent Document 2). In the prediction coding method, the prediction error whose amplitude is reduced by linear prediction and the linear prediction coefficient are coded.
By the way, for long-distance telephone transmission and voice transmission for VoIP (Voice over Internet Protocol), 8 bits are used per sample, which is standardized as ITU-T G.711, instead of linear PCM, which uses the amplitude as a numerical value. Approximate compression PCM is used. As the VoIP system becomes widespread in place of ordinary telephones, its transmission capacity will increase, so a distortion-free compression coding method for logarithmic approximate compression PCM is required. In VoIP, due to the demand to reduce the delay time, the frame length that is the unit of compression is short, for example, 40 samples per frame.
<p><nplcit num="1"><text>Mat Hans, Ronald W.Schafer, Lossless Compression of Digital Audio, IEEE Signal Processing Magazine, July 2001, pp.21-32</text></nplcit><nplcit num="2"><text>[online], [Searched on October 31, 2011], Internet <URL: http://elvera.nue.tu-berlin.de/files/0791Liebchen2004.pdf></text></nplcit></p>
<p> If the number of samples in the frame is small, the prediction coding method has a problem that the prediction efficiency is low and sufficient compression performance may not be realized.</p>
<p> In order to solve the above problems, in coding, a predictive coding method that linearly predicts the sample in the frame and encodes the amplitude of the prediction error, and the amplitude of the sample in the frame are normalized and coded. Among the normalized coding methods, a coding method with a small amount of generated codes is selected, and a selection code representing the selection result is output. The sample in the frame is encoded by the selected coding method to generate a compression code.</p><p> In the decoding, the compressed code is decoded by the decoding corresponding to the coding method selected by the selection code.</p>
<p> By selecting a coding method in which the amount of generated codes is small from the predictive coding method and the normalized coding method, the amount of codes generated can be reduced as compared with the case where only the predictive coding method is used. ..</p>
<figref num="1">The functional block diagram of the example of the coding apparatus of 1st Embodiment.</figref><figref num="2">The functional block diagram of the example of the coding apparatus of the 2nd Embodiment.</figref><figref num="3">The functional block diagram of the example of the coding apparatus of 3rd Embodiment.</figref><figref num="4">The functional block diagram of the example of the coding apparatus of 5th Embodiment.</figref><figref num="5">The functional block diagram of the example of the coding apparatus of the sixth embodiment.</figref><figref num="6">The functional block diagram of the example of the coding apparatus of 7th Embodiment.</figref><figref num="7">The functional block diagram of the example of the coding apparatus of 8th Embodiment.</figref><figref num="8">The functional block diagram of the modification of the coding apparatus of 2nd Embodiment.</figref><figref num="9">Functional block diagram of an example of a decryption device.</figref><figref num="10">The flow chart of the example of the coding method of 1st Embodiment.</figref><figref num="11">A flow chart of an example of predictive coding processing.</figref><figref num="12">Flow diagram of an example of normalization coding processing.</figref><figref num="13">The flow chart of the example of the coding method of the second embodiment.</figref><figref num="14">The flow chart of the example of the coding method of the third embodiment.</figref><figref num="15">The flow chart of the example of the coding method of 4th Embodiment.</figref><figref num="16">FIG. 5 is a flow chart of an example of a coding method according to a fifth embodiment.</figref><figref num="17">The flow chart of the example of the coding method of the sixth embodiment.</figref><figref num="18">The flow chart of the example of the coding method of the 7th embodiment.</figref><figref num="19">The flow chart of the example of the coding method of the eighth embodiment.</figref><figref num="20">A flow chart of an example of a decoding method.</figref><figref num="21">FIG. 5 is a flow chart of a modified example of the coding method of the second embodiment.</figref><figref num="22">The figure which exemplifies the relationship between the linear PCM and the logarithmic approximate compression PCM.</figref><figref num="23">The figure which exemplifies the relationship between the amount of code by a predictive coding method and the amount of code by a normalization coding method with respect to the range U when the prediction coefficient (PARCOR coefficient in this example) is 0.7 or more.</figref><figref num="24">The figure which exemplifies the relationship between the amount of code by a predictive coding method and the amount of code by a normalization coding method with respect to the range U when the prediction coefficient (PARCOR coefficient in this example) is 0.7 or less.</figref>
<< Coding device and coding method >> [First embodiment] In the first embodiment, a sample of the same frame is predictively coded to actually generate a code, and normalized coding is performed to actually generate a code. .. Then, the amount of the code generated by each coding is compared, and a coding method having a small amount of code is selected.
FIG. 1 illustrates the functional block of the coding device of the first embodiment. FIG. 10 illustrates a flow chart of the coding method of the first embodiment.
The predictive coding method is to linearly predict the sample in the frame and code the amplitude of the prediction error, which is performed by the predictive coding unit 2 (step A). As illustrated in FIG. 1, the prediction coding unit 2 includes a linear conversion unit 21, a prediction unit 22, a prediction coefficient quantization unit 23, a prediction value calculation unit 24, a logarithmic approximation compression unit 25, and a prediction error calculation unit 26. Includes a reversible coding unit 27 and a multiplexing unit 28.
Step A is composed of steps A1 to A8 as illustrated in FIG. The linear conversion unit 21 reads the logarithmic approximate compression PCM series X = {x (1), x (2), ..., x (N)} from the buffer 1 and linearizes each sample from the logarithmic approximation compression PCM. By converting to PCM, it is converted to the linear PCM series Y = {y (1), y (2), ..., y (N)} (step A1). N is the number of frame samples. The converted series Y is sent to the prediction unit 22 and the prediction value calculation unit 24.
Instead of the linear PCM series, it may be converted to the PCM series Y which is close to the linear PCM series. The PCM series Y, which is close to the linear PCM series, is a sequence of signals intermediate between the logarithmic approximate compression PCM and the linear PCM. For example, by weighting and adding a logarithmic approximate compression PCM series and a linear PCM series for each sample, a PCM series Y close to the linear PCM series can be obtained.
FIG. 22 illustrates the relationship between linear PCM and logarithmic approximate compression PCM. This is an example of the μ law used in Japan and the United States.
The prediction unit 22 linearly predicts and analyzes the series Y to calculate the prediction coefficient (step A2). The prediction unit 22 may calculate a prediction coefficient used for short-term prediction, or may calculate a prediction coefficient used for long-term prediction. The calculated prediction coefficient is sent to the prediction coefficient quantization unit 23.
The prediction coefficient quantization unit 23 quantizes the calculated prediction coefficient, sends the quantized prediction coefficient to the prediction value calculation unit 24, and multiplexes a code (also referred to as a coefficient code) representing the quantized prediction coefficient. Send to Kabe 28 (step A3).
The predicted value calculation unit 24 uses the series Y and the quantized prediction coefficient to predict the predicted value series Y'= {y'(1), y'(2), .. which is a series of predicted values of the series Y. Calculate., Y'(N)} (step A4). The predicted value series Y'is sent to the log-approximate compression section 25.
The logarithmic approximation stretch section 25 converts each sample of the prediction value series Y'to a logarithm approximation stretch PCM, and the logarithm approximation stretch prediction value series X'= {x'(1), x'(2), Generate ..., x'(N)} (step A5). The logarithmic approximation stretch prediction value series X'is sent to the prediction error calculation unit 26.
The prediction error calculation unit 26 uses the logarithmic approximate compression PCM series X and the logarithmic approximation compression prediction value series X'to correspond to the logarithm approximation compression PCM series X and the logarithm approximation compression prediction value series X'. Calculate the error sequence Z = {z (1), z (2), ..., z (N)}, which is the sequence of errors for each sample (step A6). The error sequence Z is sent to the lossless coding unit 27. As i = 1, ..., N, x (i) = x'(i) + z (i).
The lossless coding unit 27 losslessly codes the error sequence Z to generate an error code (step A7). The error code is sent to the multiplexing unit 28. For example, it is advisable to generate an error code by Rice coding.
The multiplexing unit 28 combines the coefficient code and the error code and outputs the predictive coding code to the selection unit 4 (step A8).
The normalized coding method normalizes and encodes the amplitude of the sample in the frame, and is performed by the normalized coding unit 3 (step B). The normalized coding method is a simple coding, and when the number of samples in the frame is small, the compression efficiency may be higher than that of the predicted coding method. See, for example, US Pat. No. 7,408,918 for details on the normalized coding method. As illustrated in FIG. 1, the normalization coding unit 3 includes a maximum value minimum value acquisition unit 31, a range calculation unit 32, an amplitude bit number calculation unit 33, and a normalization unit 34.
Step B is composed of steps B1 to B4 as illustrated in FIG. The maximum value / minimum value acquisition unit 31 reads the logarithmic approximate compression PCM series X from buffer 1, does not convert the frame sample to linear PCM, and regards the frame sample as a numerical value as it is. (Step B1). The acquired maximum and minimum values are sent to the range calculation unit 32.
The range calculation unit 32 calculates the range U, which is the value obtained by adding 1 to the difference between the maximum value and the minimum value (step B2). The range U is sent to the amplitude bit number calculation unit 33. Further, the range U can be set to be twice the absolute value of the value having the larger absolute value among the maximum value and the minimum value, plus 1. In this case, the value of the range U is larger than the value obtained by adding 1 to the difference between the maximum value and the minimum value, but the following deviation amount d can always be regarded as 0, and the calculation and transmission of the following deviation amount d can be omitted.
The processing equivalent to this can be realized by replacing the processing performed by the maximum value / minimum value acquisition unit 31 and the range calculation unit 32 with the following, respectively. The maximum value / minimum value acquisition unit 31 acquires the larger absolute value of the maximum value and the minimum value. The value with the larger absolute value obtained is sent to the range calculation unit 32. The range calculation unit 32 calculates the range U, which is a value obtained by adding 1 to twice the absolute value of the value. The calculation of these range Us depends on the definition of the correspondence when the logarithmic approximate compression PCM series is regarded as a numerical value as it is. The definition of this correspondence may be any one that maintains a monotonous magnitude relationship with linear PCM, and there is a degree of freedom in handling the correspondence with 0. Depending on the definition of the correspondence, for example, if only positive and negative values are associated and 0 is not associated in the definition of the correspondence, it is not necessary to add 1 in the calculation of the range U. ..
In short, the maximum value / minimum value acquisition unit 31 and the range calculation unit 32 have the values of all the samples in the frame based on the values of all the samples in the frame when the logarithmic approximate compression PCM sample is regarded as a numerical value as it is. It suffices if the range U, which is a value equal to or larger than the size of the range to be calculated, is obtained.
The amplitude bit number calculation unit 33 uses the amplitude bit number V = log.<sub>2</sub>Calculate U (step B3). The calculated amplitude bit number V is sent to the normalization unit 34. Each sample of the frame can be represented by V bits of amplitude bits.
The normalization unit 34 normalizes the sample of the frame using the number of amplitude bits V to generate a normalized code (step B4). The generated normalized code is sent to the selection unit 4.
An example of normalization will be described below. The normalization unit 34 first obtains the deviation amount d. For example, the average value of the maximum value and the minimum value of the frame sample obtained by the maximum value / minimum value acquisition unit 31 is set as the deviation amount. The minimum value of the frame sample may be the deviation amount d. The value of each sample in the frame is shifted by the amount of deviation d. That is, the deviation amount d is subtracted from the value of each sample of the frame. The normalization unit 34 combines the deviation amount, the number of amplitude bits V, and the value of the sample in which the value of each sample is shifted by the deviation amount d to obtain a normalized coding code.
The selection unit 4 compares the amount of the predicted coded code generated by the predictive coding unit 2 with the amount of the normalized coded code generated by the normalized coding unit 3, and encodes with a smaller amount of code. Select a method (step C1). The selection unit 4 outputs the code generated by the selected coding method as a compression code together with the selection code representing the selection result. That is, when the amount of the predicted coding code is smaller than the amount of the normalized coding code, the predictive coding code is output as a compression code together with the selection code (steps C2 and C14). When the amount of the normalized coding code is smaller than the amount of the predicted coding code, the normalized coding code is output as a compression code together with the selection code (steps C3 and C15).
As described above, when the coding method having a small amount of code is selected, the coding method having a small amount of code can be surely selected by actually performing the predictive coding and the normalized coding. The linear conversion unit 21 and the logarithmic approximation compression unit 25 in the prediction coding unit 2 can be omitted.
[Second Embodiment] In the second to eighth embodiments, the data generated in the process of predictive coding by the predictive coding unit 2 and / or the data generated in the process of normalization coding by the normalization coding unit 3. The coding method in which the amount of the code is small is selected based on the above.
In the second embodiment, a coding method in which the amount of codes is small is selected based on the prediction coefficient calculated by the prediction coding unit 2. When the prediction coefficient is large, the compression performance by predictive coding tends to be high. Therefore, when the prediction coefficient, for example, the first-order prediction coefficient is large, it is determined that the prediction coding method has higher compression performance than the normalization coding method, and the prediction coding method is selected.
FIG. 2 illustrates the functional block of the coding device of the second embodiment. FIG. 13 illustrates a flow chart of the coding method of the second embodiment.
The predictive coding unit 2 performs the process of step A to generate a predictive coding code (step A). Prediction coefficient The prediction coefficient quantized by the quantization unit 23 in step A3 is sent to the determination unit 8.
The determination unit 8 includes a prediction coefficient comparison unit 81 and a selection result output unit 82.
The prediction coefficient comparison unit 81 compares any one prediction coefficient (for example, a first-order prediction coefficient) with a predetermined first threshold value (step C4). The comparison result is sent to the selection result output unit 82.
If the prediction coefficient is larger than the predetermined first threshold value, the selection result output unit 82 outputs a selection code indicating that the prediction coding method is selected (step C14). Further, the selection result output unit 82 turns off the switch d3 and turns on the switch d4. As a result, the predicted coding code is output (step C2). The predetermined first threshold value is a constant that is appropriately set based on the required performance, specifications, and the like.
If the prediction coefficient is smaller than a predetermined first threshold value, the normalization coding unit 3 performs the process of step B to generate a normalized coding code.
In this case, the selection unit 4 determines the amount of the predicted coding code generated by the predictive coding unit 2 and the amount of the normalized coding code generated by the normalized coding unit 3, as in the first embodiment. By comparison, a coding method with a smaller amount of code is selected (step C1). The selection unit 4 outputs the code generated by the selected coding method as a compression code together with the selection code representing the selection result. That is, when the amount of the predicted coding code is smaller than the amount of the normalized coding code, the predictive coding code is output as a compression code together with the selection code (steps C2 and C14). When the amount of the normalized coding code is smaller than the amount of the predicted coding code, the normalized coding code is output as a compression code together with the selection code (steps C3 and C15).
In this way, based on the data generated in the process of predictive coding by the predictive coding unit 2 and / or the data generated in the process of normalization coding by the normalized coding unit 3 (in this embodiment, the prediction coefficient). By selecting a coding method in which the amount of code is small, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
It is not necessary to perform all of the prediction coefficient steps A before the processing of step C4. At least the process of obtaining the prediction coefficient from step A1 to step A3 may be performed. In this case, the processes of steps A4 to A8 are performed after step C4. As a result, the amount of calculation can be further reduced.
[Third Embodiment] In the third embodiment, a coding method in which the amount of code is reduced is selected based on the predictive coefficient calculated by the predictive coding unit 2 and the range U calculated by the normalized coding unit 3. To do.
When the prediction coefficient is large, the compression performance by the prediction coding method tends to be high, but even when the prediction coefficient is large, when the range U is small, the compression performance is better with normalized coding. There is a high possibility. FIG. 23 illustrates the relationship between the amount of code by the predictive coding method and the amount of code by the normalized coding method with respect to the range U when the prediction coefficient (PARCOR coefficient in this example) is 0.7 or more. The squares indicate the amount of code by the normalized coding method, and the points · indicate the amount of code by the predictive coding method. In the region R2 where the range U is 4 or more, the amount of code by the predictive coding method is small, but in the region R1 where the range U is smaller than 4, the amount of code by the predictive coding method is not always small.
Therefore, in the third embodiment, when the prediction coefficient is large and the range U is not small, it is very unlikely that the amount of code in the normalized coding method will be small, so that the subsequent processing steps are omitted. Select a predictive coding method. In other cases, the amount of predictive coding code and the amount of normalized coding code are estimated or actually calculated to select a coding method with a small amount of code.
FIG. 3 illustrates the functional block of the coding device of the third embodiment. FIG. 14 illustrates a flow chart of the coding method of the third embodiment.
The predictive coding unit 2 performs the process of step A to generate a predictive coding code (step A). Prediction coefficient The prediction coefficient quantized by the quantization unit 23 in step A3 is sent to the determination unit 8.
The maximum value minimum value acquisition unit 31 reads the logarithmic approximate compression PCM series X from the buffer 1 and acquires the maximum value and the minimum value of the frame sample (step B1). The acquired maximum and minimum values are sent to the range calculation unit 32.
The range calculation unit 32 calculates the range U, which is the value obtained by adding 1 to the difference between the maximum value and the minimum value (step B2). The range U is sent to the amplitude bit number calculation unit 33 and the determination unit 8.
The determination unit 8 includes a prediction coefficient comparison unit 81, a selection result output unit 82, and a range comparison unit 83. The prediction coefficient comparison unit 81 compares the prediction coefficient with a predetermined first threshold value (step C4). The comparison result is sent to the selection result output unit 82.
Further, the range comparison unit 83 compares the range U with a predetermined third threshold value (step C5). The comparison result is sent to the selection result output unit 82.
The selection result output unit 82 outputs a selection code indicating that the prediction coding method is selected if the prediction coefficient is not larger than the predetermined first threshold value and the range U is not smaller than the predetermined third threshold value. (Step C14). Further, the selection result output unit 82 turns off the switch d3 and turns on the switch d4. As a result, the predicted coding code is output (step C2). The predetermined first threshold value and the predetermined third threshold value are constants appropriately set based on the required performance, specifications, and the like.
When the prediction coefficient is smaller than the predetermined first threshold value or the range U is smaller than the predetermined third threshold value, the selection result output unit 82 turns on the switch d5 and the switch d6. Then, the amplitude bit number calculation unit 33 uses the amplitude bit number V = log.<sub>2</sub>Calculate U (step B3). The calculated amplitude bit number V is sent to the normalization unit 34 and the normalized coded code amount estimation unit 91.
The normalized coded code amount estimation unit 91 estimates the amount of the normalized coded code using the number of amplitude bits V (step C6). For example, the number of bytes W per frame of the normalized coded code amount can be estimated as W = NV / 8 + 2, where N is the number of samples in the frame. Let this W be the estimator of the normalized coding code. The estimated amount of normalized coded code is sent to the determination unit 93.
The predictive coding code amount calculation unit 92 calculates the amount of the predictive coding code generated by the predictive coding unit 2 (step C7). The calculated amount of the predicted coding code is sent to the determination unit 93.
The determination unit 93 compares the amount of the predicted coded code with the amount of the normalized coded code, and selects a coding method having a small amount of code (step C1). It is output together with the selection code indicating the selection result. Further, when the amount of the predicted coding code is smaller, the determination unit 93 turns on the switch d4 and turns off the switch d3 and the switch d7. If the amount of normalized coding code is smaller, switch d3 and switch d7 are turned on and switch d4 is turned off.
As a result, when the amount of the predicted coding code is smaller than the amount of the normalized coding code, the predictive coding code is output as a compression code together with the selection code (steps C2 and C14). When the amount of the normalized coded code is smaller than the amount of the predicted coded code, the normalizing unit 34 normalizes the sample of the frame using the number of amplitude bits V and performs the normalized coding. Generate a code (step B4). Then, the generated normalized coding code is output as a compression code together with the selection code (steps C3 and C15).
In this way, a coding method in which the amount of coding is reduced based on the data generated in the process of predictive coding by the predictive coding unit 2 and / or the data generated in the process of normalization coding by the normalized coding unit 3. By selecting, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
[Fourth Embodiment] In the fourth embodiment, a coding method in which the amount of code is reduced is selected based on the predictive coefficient calculated by the predictive coding unit 2 and the range U calculated by the normalized coding unit 3. To do.
When the prediction coefficient is small, the compression performance by the normalized coding method tends to be high, but even when the prediction coefficient is small, the range U is less than or equal to the power of 2 and the range U is close to the power of 2. In some cases, the amount of code by the predictive coding method may be small.
FIG. 24 illustrates the relationship between the amount of predictive coding code and the amount of normalized coding code with respect to the range U when the prediction coefficient (PARCOR coefficient in this example) is 0.7 or less. Thick lines indicate the amount of normalized coding code, and dots indicate the amount of predictive coding code. The amount of normalized coding code is stepped, and the range U is, for example, 128 (= 2).<sup>7</sup>)、64(=2<sup>6</sup>) Or less, and if the range U is close to 128 or 64, the amount of normalized coding code may be small. On the other hand, when the range U is, for example, 128 or 64 or less and the range U is far from 128 or 64, that is, in the region R3, the amount of the predicted coding code becomes small.
In the fourth embodiment, using this property, even when the prediction coefficient is small, · is set to the smallest integer greater than or equal to ·, and β is set to a positive constant less than or equal to 1 (for example, 0.75). Range U is 2 ^ (log<sub>2</sub>If U) * β or less, select the predictive coding method. Or, let α be a predetermined constant, and the range U is 2 ^ (log).<sub>2</sub>If U) -α or less, select the predictive coding method. Below, 2 ^ (log<sub>2</sub>U) * β, 2 ^ (log<sub>2</sub>The effect is the same even if it is read as U) -α.
The functional block of the coding device of the fourth embodiment is the same as the functional block of the coding device of the third embodiment illustrated in FIG. Figure 15<u style="single">four</u>A flow chart of the coding method of the embodiment is illustrated. The fourth embodiment is different from the third embodiment in that the range comparison unit 83 and the selection result output unit 82 further perform the determination process in step C8 of FIG. 15, and the other aspects are the same as those of the third embodiment. .. Hereinafter, the parts different from the third embodiment will be described.
Range comparison unit 83 has range U and 2 ^ (log)<sub>2</sub>Compare with U) * β (step C8). The comparison result is sent to the selection result output unit 82. is the smallest integer greater than or equal to, and β is a positive constant less than or equal to 1, and is set appropriately based on the required performance and specifications.
The selection result output unit 82 has a prediction coefficient smaller than a predetermined first threshold value and a range U of 2 ^ (log).<sub>2</sub>If it is U) * β or less, a selection code indicating that the predictive coding method is selected is output (step C14). Further, the selection result output unit 82 turns off the switch d3 and turns on the switch d4. As a result, the predicted coding code is output (step C2).
The prediction coefficient is smaller than the predetermined first threshold value, and the range U is 2 ^ (log).<sub>2</sub>If it is larger than U) * β, the selection result output unit 82 turns on the switch d5 and the switch d6, and performs the processing after step B3.
In this way, a coding method in which the amount of coding is reduced based on the data generated in the process of predictive coding by the predictive coding unit 2 and / or the data generated in the process of normalization coding by the normalized coding unit 3. By selecting, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
[Fifth Embodiment] When the prediction coding method selects a prediction method in which the amount of code is small among short-term prediction and long-term prediction for each frame, the prediction effect is large when long-term prediction is selected. Means that. In this case, the amount of predictive coding code is often smaller than the amount of normalized coding code. The fifth embodiment utilizes this property to select a prediction coding method when long-term prediction is selected.
FIG. 4 illustrates the functional block of the coding device of the fifth embodiment. FIG. 16 illustrates a flow chart of the coding method of the fifth embodiment.
The prediction unit 22 includes a prediction method selection unit 221. The prediction method selection unit 221 selects a prediction method in which the amount of the code is smaller among the short-term prediction and the long-term prediction for each frame. For example, the amount of sign is determined by determining whether the amount of code produced by short-term prediction of the sample in the frame or the amount of code generated by long-term prediction of the sample in the same frame is smaller. Select a prediction method that reduces.
When short-term prediction is selected, the prediction unit 22 calculates the prediction coefficient based on the short-term prediction and sends it to the prediction coefficient quantization unit 23. When long-term prediction is selected, the prediction unit 22 calculates the prediction coefficient based on the long-term prediction and sends it to the prediction coefficient quantization unit 23. In addition, information about the selected prediction method is sent to the determination unit 8.
The determination unit 8 determines whether the selected prediction method is a long-term prediction (step C9), and if the selected prediction method is a long-term prediction, turns off the switches d8 and d9 and predicts the switch d10. It connects to the coding unit 2 and outputs a selection code indicating that the prediction coding method is selected together with the prediction coding code generated in step A (steps C2 and C14).
When the selected prediction method is short-term prediction, the switches d8 and d9 are turned on, and the switch d10 is connected to the selection unit 4. The selection unit 4 compares the normal coding code generated by the normal coding unit 3 in step B with the predictive coding code generated by the predictive coding unit 2 in step A (step C1), and the amount of the code. A code with a small value is output as a compression code together with the selection code (steps C2, C14, C3, C15).
In this way, the coding method in which the amount of coding is small is selected based on the data generated in the process of predictive coding by the predictive coding unit 2 (information indicating that long-term prediction is selected in this embodiment). As a result, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
[Sixth Embodiment] When many of the samples in the frame have positive values or, conversely, negative values, that is, when the sample values in the frame are biased to positive or negative. It is known that the performance of the predictive coding method is low, but the performance of the predictive coding is high when the bias is small. Taking advantage of this property, the sixth embodiment selects a predictive coding method when the positive or negative bias of the sample value in the frame is small.
FIG. 5 illustrates the functional block of the coding device of the sixth embodiment. FIG. 17 illustrates a flow chart of the coding method of the sixth embodiment.
The maximum value / minimum value acquisition unit 31 acquires the maximum and minimum values of the sample values in the frame and sends them to the determination unit 8 (step B1).
The determination unit 8 includes a deviation comparison unit 84 and a selection result output unit 82.
The deviation comparison unit 84 compares the absolute value of the average value of the maximum value and the minimum value of the sample in the frame with the fourth threshold value (step C10). The comparison result is sent to the selection result output unit 82. The fourth threshold value is a predetermined constant and is appropriately set based on the required performance, specifications, and the like.
If the absolute value is smaller than the fourth threshold value, the selection result output unit 82 outputs a selection code indicating that the predictive coding method is selected together with the predictive coding code generated by the predictive coding unit 2 in step A. .. Specifically, the selection result output unit 82 turns off the switches d12 and d9, and connects the switch d10 to the prediction coding unit 2. As a result, the predictive coding code generated by the predictive coding unit 2 is output as a compression code.
If the absolute value is equal to or higher than the fourth threshold value, the selection result output unit 82 turns on the switches d12 and d9 and connects the switch d10 to the selection unit 4. After that, the same processing as in the first embodiment is performed. That is, the predictive coding unit 2 generates a predictive coding code (step A), the normalizing coding unit 3 generates a normalized coding code (steps B2 to B4), and the selection unit 4 predicts coding. The amount of code is compared with the amount of normally coded code (step C1), the coding method with the smaller amount of code is selected, and the code according to the selected coding method is output together with the selected code (step C2, C3, C14, C15).
The maximum value / minimum value acquisition unit 31 (step B1) may be omitted, and the deviation comparison unit 84 may compare the absolute value of the average value of all the samples in the frame with the fourth threshold value. Further, the maximum value / minimum value acquisition unit 31 acquires the number of samples that are positive values and the number of samples that are negative values in the frame instead of the maximum and minimum values of the sample values in the frame, and the deviation comparison unit 84 acquires the number of samples that are negative values. The absolute value of the difference between the number of samples having a positive value and the number of samples having a negative value may be compared with the fourth threshold value. In short, an evaluation value indicating the magnitude of the bias of the sample in the frame as illustrated by these absolute values may be obtained, and if this evaluation value is smaller than the fourth threshold value, the prediction coding method may be selected. ..
In this way, the normalization coding unit 3 selects a coding method in which the amount of code is small based on the data generated in the process of normalization coding (in this embodiment, the maximum value and the minimum value of the sample, etc.). As a result, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
[Seventh Embodiment] When the difference between the maximum value and the minimum value of the sample in the frame is 1, it can be encoded with 1 bit per sample by the normalization coding method. On the other hand, when the difference between the maximum value and the minimum value is 1, at least 1 bit per sample is required for error coding in the predictive coding method, and auxiliary information such as a predictive coefficient is required. Therefore, when the difference between the maximum value and the minimum value is 1, the amount of the normalized coded code is always smaller even if the amount of the normalized coded code and the amount of the predicted coded code are not compared. Become. Utilizing this property, the seventh embodiment selects a normalized coding code when the difference between the maximum value and the minimum value of the sample in the frame is 1.
FIG. 6 illustrates the functional block of the coding device of the seventh embodiment. FIG. 18 illustrates a flow chart of the coding method of the seventh embodiment.
The maximum value / minimum value acquisition unit 31 acquires the maximum and minimum values of the sample values in the frame and sends them to the determination unit 8 (step B1).
The determination unit 8 includes a difference determination unit 85 and a selection result output unit 82.
The difference determination unit 85 determines whether the difference between the maximum value and the minimum value of the sample in the frame is 1 (step C11). The determination result is sent to the selection result output unit 82.
When the difference between the maximum value and the minimum value is 1, the selection result output unit 82 sets the selection code indicating that the normalization coding method is selected, and the normalization coding unit 3 sets the selection code in steps B2 to B4. Output with the generated normalization code (steps C3, C14). Specifically, the selection result output unit 82 turns on the switch d12, turns off the switches d13 and d14, and connects the switch d10 to the normalized coding unit 3. As a result, the normalized code generated by the normalized coding unit 3 is output as a compressed code.
If the difference between the maximum value and the minimum value is not 1, the selection result output unit 82 turns on the switches d13 and d14 and connects the switch d10 to the selection unit 4. After that, the same processing as in the first embodiment is performed. That is, the predictive coding unit 2 generates a predictive coding code (step A), the normalizing coding unit 3 generates a normalized coding code (steps B2 to B4), and the selection unit 4 predicts coding. The amount of code is compared with the amount of normally coded code (step C1), the coding method with the smaller amount of code is selected, and the code according to the selected coding method is output together with the selected code (step C2, C3, C14, C15).
In this way, the coding method in which the amount of code is small is selected based on the data generated in the process of normalization coding by the normalization coding unit 3 (maximum value and minimum value of the sample in this embodiment). As a result, it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
[Eighth Embodiment] In the eighth embodiment, the amount of the predictive coding code is estimated based on the prediction error generated in the process of predictive coding, and the normalized code is based on the range U generated in the process of normalizing coding. The amount of code code is estimated, the estimated amount of code is compared, and the coding method in which the amount of code is small is selected.
FIG. 7 illustrates the functional block of the coding device of the eighth embodiment. FIG. 19 illustrates a flow chart of the coding method of the eighth embodiment.
The prediction coding unit 2 generates the error sequence Z as in the first embodiment (steps A1 to A6). The generated error sequence Z is sent to the prediction coding code amount estimation unit 93. Further, the normalized coding unit 3 calculates the amplitude bit number V as in the first embodiment. The calculated amplitude bit number V is sent to the normalized coded code amount estimation unit 91.
The predictive coding code amount estimation unit 93 estimates the amount of the predictive coding code based on the error series Z (step C11). The estimated amount of the predicted coding code is sent to the determination unit 8. When the error series Z is losslessly coded, if the code with the smallest absolute value is assigned to the code with the smallest value, for example, Σ<sub>i = 1</sub><sup>N</sup>The amount of predicted coding code can be estimated by (2 | z (i) | +1). N is the number of samples in the frame.
The normalized coded code amount estimation unit 91 estimates the amount of the normalized coded code using the number of amplitude bits V (step C6). For example, the number of bytes W per frame of the normalized coded code amount can be estimated as W = NV / 8 + 2, where N is the number of samples in the frame. Let this W be the estimator of the normalized coding code. The estimated amount of normalized coded code is sent to the determination unit 8.
The determination unit 8 includes a code amount comparison unit 86 and a selection result output unit 82.
The code amount comparison unit 86 compares the estimated amount of the predicted coded code with the estimated amount of the normalized coded code (step C12). The comparison result is sent to the selection result output unit 82.
When the amount of the estimated predictive coding code is smaller than the amount of the estimated normalized coding code, the selection result output unit 82 outputs a selection code indicating that the predictive coding method is selected (step). C14). Further, the predictive coding code is generated by the processing of steps A7 to A8, and the selection result output unit 82 connects the switch d10 to the predictive coding unit 2. As a result, the predictive coding code is output as a compression code (step C2).
When the estimated amount of the normalized coded code is smaller than the estimated amount of the predicted coded code, the selection result output unit 82 outputs a selection code indicating that the normalized coding method is selected ( Step C14). Further, the normalized coded code is generated by the process of step B4, and the selection result output unit 82 turns on the switch d7 and connects the switch d10 to the normalized coded unit 3. As a result, the normalized coded code is output as a compressed code (step C3).
In this way, the data generated in the process of predictive coding by the predictive coding unit 2 (prediction error in this embodiment) and the data generated in the process of normalization coding by the normalized coding unit 3 (in this embodiment). By selecting a coding method in which the amount of code is small based on the range U), it is not necessary to perform the predictive coding method and the normalized coding method to the end, and the amount of calculation can be reduced.
<< Decoding device and decoding method >> Fig. 8 illustrates the functional blocks of the decoding device. FIG. 20 illustrates a flow chart of the decoding method.
The selection code and the compression code are input to the decoding device (step S1). The decoding device includes a separation unit 5, a selection control unit 6, a predictive decoding unit 7, a normalized decoding unit 9, and switches d1 and d2.
The separation unit 5 separates the selection code and the compression code, sends the selection code to the selection control unit 6, and sends the compression code to the switch d1.
The selection control unit 6 causes a decoding unit that performs decoding corresponding to the coding method selected by the selection code among the prediction decoding unit 7 and the normalized decoding unit 9 to decode the compressed code. That is, the selection control unit 6 determines the coding method selected by the selection code (step S2), and predictively decodes the switches d1 and d2 when the prediction coding method is selected by the selection code. Connect to part 7. In this case, the predictive decoding unit 7 performs decoding corresponding to the predicted coding method performed on the compressed code (step S3).
On the other hand, when the normalization coding method is selected by the selection code, the selection control unit 6 connects the switches d1 and d2 to the normalization / decoding unit 9. In this case, the normalization decoding unit 9 performs decoding corresponding to the performed normalization coding method for the compressed code (step S4).
[Modifications, etc.] In the second embodiment, the third embodiment, and the fourth embodiment, a coding method having a small amount of code is selected based on the prediction coefficient, but the prediction order is adaptive for each frame. In the case of selecting, instead of the prediction coefficient, a coding method having a small amount of code based on the prediction order may be selected. Specifically, instead of comparing the prediction coefficient with the predetermined first threshold value, the prediction order is compared with the predetermined second threshold value to select a coding method having a small amount of code. This is because there is a positive correlation between the prediction coefficient and the prediction order, and when the prediction coefficient is large, the prediction order is generally large.
Taking the second embodiment as an example, the prediction unit 22 (FIG. 9) calculates prediction coefficients corresponding to each of a plurality of predetermined prediction orders. The prediction unit 22 selects the prediction order having the smallest amount of sign based on the calculated prediction coefficient. The selected prediction order is sent to the prediction coefficient quantization unit 23 together with the prediction coefficient. The predicted order and the predicted coefficient are quantized, and the multiplexing unit 28 and<u style="single">Predicted value calculation unit</u>Sent to 24. Also quantized<u style="single">Forecast</u>The order is sent to the determination unit 8.
The determination unit 8 includes a prediction order comparison unit 87 and a selection result output unit 82, as illustrated in FIG.
The prediction order comparison unit 87 compares the prediction order with a predetermined second threshold value (step C13), and sends the comparison result to the selection result output unit 82. The second threshold value is appropriately set according to the required performance and specifications.
When the prediction order is larger than a predetermined threshold value, the selection result output unit 82 selects a prediction coding method and outputs a selection code indicating that fact. Subsequent processing is the same as that of the second embodiment. Further, the processing when the prediction order is smaller than the predetermined threshold value is the same as the processing when the prediction coefficient described in the second embodiment is smaller than the predetermined threshold value.
The coding device and the decoding device can be realized by a computer. The processing content of the function that each device should have is described by a program. Then, by executing this program on the computer, each processing function in each device is realized on the computer.
The program describing the processing content can be recorded on a computer-readable recording medium. Further, in this form, these devices are configured by executing a predetermined program on a computer, but at least a part of these processing contents may be realized by hardware.
The present invention is not limited to the above-described embodiment, and can be appropriately modified without departing from the spirit of the present invention.
24 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US11490605B2 | Cited by | United States of America | Applicant |
| WO03032296A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| WO03032296A1 | Cites | World Intellectual Property Organization (WIPO) | Examiner |
| JP2002372995A | Cites | Japan | Examiner |
| JP2002372995A | Cites | Japan | Search report |
| JP2008209637A | Cites | Japan | Examiner |
| JP2008209637A | Cites | Japan | Search report |
| US7408918B1 | Cites | United States of America | Search report |
| US7408918B1 | Cites | United States of America | Examiner |
| JP2002372995A | Cites | Japan | – |
| JP2008209637A | Cites | Japan | – |
| WO03032296A1 | Cites | World Intellectual Property Organization (WIPO) | – |
7 members in 4 offices
Priority claims11
| Document | Office | Kind | Date |
|---|---|---|---|
| 2009134369 | Japan | A | |
| 2009134369 | Japan | A | |
| 2009134369 | Japan | – | |
| 2010059092 | Japan | W | |
| 2010059092 | Japan | W | |
| 2011518427 | Japan | A | |
| 20092009134369 | – | – | – |
| 2010059092 | – | – | – |
| JP20090134369 | – | – | – |
| JP20110518427 | – | – | – |
| WO2010JP59092 | – | – | – |
Members7
| Document | Office | Kind | |
|---|---|---|---|
| WO2010140546A1 | World Intellectual Property Organization (WIPO) | A1 | |
| US2012093213A1 | United States of America | A1 | |
| CN102449689A | China | A | |
| JPWO2010140546A1 | Japan | A1 | |
| JP5486597B2This record | Japan | B2 | |
| CN102449689B | China | B | |
| US8909521B2 | United States of America | B2 |
10 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Written request for registration of change of nameJAPANESE INTERMEDIATE CODE: R313533S533 | S533 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Request for written amendment filedJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Request for written amendment filedJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 |
Numbers
- Publication
- 5486597
- Publication, DOCDB
- 5486597
- Publication, EPODOC
- JP5486597B
- Application
- 2011518427
- Application, DOCDB
- 2011518427
- Application, EPODOC
- JP20110518427
Titles2
- Japanese
- 符号化方法、符号化装置、符号化プログラム及びこの記録媒体
- English
- Coding method, coding device, coding program and this recording medium
Classification
- CPC, 1
- G10L19/18
- IPC, 4
- G10L19 22
- G10L19 00
- G10L19 06
- G10L19 18
