JPH0651800A - データ数変換方法 - Google Patents

データ数変換方法

Info

Publication number
JPH0651800A
JPH0651800A JP4223227A JP22322792A JPH0651800A JP H0651800 A JPH0651800 A JP H0651800A JP 4223227 A JP4223227 A JP 4223227A JP 22322792 A JP22322792 A JP 22322792A JP H0651800 A JPH0651800 A JP H0651800A
Authority
JP
Japan
Prior art keywords
data
block
band
waveform
unit
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.)
Pending
Application number
JP4223227A
Other languages
English (en)
Inventor
Masayuki Nishiguchi
正之 西口
Atsushi Matsumoto
淳 松本
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP4223227A priority Critical patent/JPH0651800A/ja
Publication of JPH0651800A publication Critical patent/JPH0651800A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【構成】 入力されたブロック毎に可変個数のデータ
を、非線形圧縮部12で非線形圧縮し、スペクトルエン
ベロープ拡張部14でそのスペクトルエンベロープの両
端を拡張し、FIRフィルタ15でFIRフィルタリン
グ(演算)し、直線補間16で直線補間し、一定個数の
サンプルデータに変換する。 【効果】 演算量を大幅に減らしながらも、データ個数
変換ができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ数変換方法に関
し、特に、音声合成分析装置(ボコーダ)等において算
出されたスペクトルの振幅データのような可変個数のデ
ータを一定個数のデータに変換するようなデータ数変換
方法に関する。
【0002】
【従来の技術】オーディオ信号(音声信号や音響信号を
含む)の時間領域や周波数領域における統計的性質と人
間の聴感上の特性を利用して信号圧縮を行うような符号
化方法が種々知られている。この符号化方法としては、
大別して時間領域での符号化、周波数領域での符号化、
分析合成符号化等が挙げられる。
【0003】音声信号等の高能率符号化の例として、M
BE(Multiband Excitation: マルチバンド励起)符号
化、SBE(Singleband Excitation:シングルバンド励
起)符号化、ハーモニック(Harmonic)符号化、SBC
(Sub-band Coding:帯域分割符号化)、LPC(Linear
Predictive Coding: 線形予測符号化)、あるいはDC
T(離散コサイン変換)、MDCT(モデファイドDC
T)、FFT(高速フーリエ変換)等において、スペク
トル振幅やそのパラメータ(LSPパラメータ、αパラ
メータ、kパラメータ等)のような各種情報データを量
子化する場合に、従来においてはスカラ量子化を行うこ
とが多い。
【0004】
【発明が解決しようとする課題】ところで、ビットレー
トを例えば3〜4kbps 程度にまで低減し、量子化効率
を更に向上させようとすると、スカラ量子化では量子化
雑音(歪み)が大きくなってしまい、実用化が困難であ
った。そこで、これらの符号化の際に得られる時間軸デ
ータや周波数軸データやフィルタ係数データ等を個々に
量子化せず、複数個のデータを組(ベクトル)にまとめ
て一つの符号で表現して量子化するベクトル量子化が注
目されている。
【0005】しかしながら、上記MBE、SBE、LP
C等のスペクトル振幅データ等は、ピッチに依存して個
数が変化するため、そのままベクトル量子化しようとす
ると可変次元のベクトル量子化が必要となり、構成が複
雑化するのみならず、良好な特性を得ることが困難であ
る。
【0006】また、量子化の前にデータのブロック(フ
レーム)間差分をとるような場合にも、前後のブロック
(フレーム)内のデータの個数が一致していないと、差
分をとることができない。このように、可変個数のデー
タを一定個数に変換することがデータ処理の過程で必要
とされることがあるが、特性の良好なデータ数変換が望
まれる。
【0007】そこで、本出願人は、特願平4−9226
3号特許出願の明細書及び図面において、可変個数のデ
ータを一定個数に変換することができ、端点でリンキン
グ等の発生しない特性の良好なデータ数変換が行えるよ
うなデータ数変換方法を提案した。この方法は、ブロッ
ク毎に可変個数のデータを非線形圧縮部で非線形圧縮
し、ダミーデータ付加部でブロック内の最後のデータ値
から最初のデータ値までの補間をするようなダミーデー
タを付加してデータ個数を拡大した後、高速フーリエ変
換(FFT)処理部、逆高速フーリエ変換(IFFT)
処理部等を有した帯域制限型のオーバーサンプリング部
でオーバーサンプルし、直線補間部で直線補間し、間引
き処理部で間引くことにより一定個数のサンプルデータ
に変換するものである。
【0008】この出願によるデータ数変換方法では、F
FTをする際に、1ブロックを例えば256サンプルに
延長して計算している。次に、例えば8倍のオーバーサ
ンプリングを実現するために、FFT変換により得られ
た256サンプルのスペクトルデータに対し、各サンプ
ルの中間に7(=8−1)個の0を詰めるような中間0
詰め処理を行って2048サンプルとし、この2048
サンプルに対してIFFTの計算を行っている。
【0009】ところで、通常のFFT、IFFTでは、
1ブロックのサンプル数をNとするとき、(N/2×lo
g2N)の複素乗算と、(Nlog2N)の複素加算が行われ
ている。ここで、(N/2log2N)の複素乗算は、(N
/2×log2N×4)の実数乗算となり、(Nlog2N)の
複素加算は、(Nlog2N×2)の実数加算となる。した
がって、Nを256としたときのFFTの演算量は、4
096回(=256/2×8×4)となり、N=204
8としたときのIFFTの演算量は、45056回(=
2048/2×11×4)となり、その合計は4915
2回となる。
【0010】また、全実数入力に対して、N/2点のF
FTで、N点FFTが実現できる、いわゆる高速化の手
法を用いたとしても、N/4(log2N−1)×4+N×
4の実数乗算と、N/2(log2N−1)×2+N×2の
実数加算が必要となる。すなわち、N=256としたと
きのFFTでは、乗算が2816回、加算が2304回
行われる。また、N=2048としたときのIFFTで
は、乗算が28672回、加算が24576回行われ
る。したがって、乗算だけでも31488回の演算が必
要となる。
【0011】なお、以上はエンコードの際において、ブ
ロック(フレーム)内で可変個数(8〜63個)のサン
プルデータを一定個数(44個)のサンプルデータに変
換するデータ数(サンプルレート)変換を想定している
が、デコードの場合も同様な方法でブロック(フレー
ム)内の一定個数(44個)のサンプルデータを可変個
数(8〜63個)のサンプルデータ変換しているもので
ある。
【0012】ところで、実際に求めたい点の数は、エン
コードの際には2048点でIFFTした内の約44点
程であり、また、デコードの際を考慮しても、最終的に
得たいサンプル数は最大でも63個程度であり、このよ
うな間引かれた演算を行うという性質が生かされていな
かった。
【0013】本発明は、このような実情に鑑みてなされ
たものであり、演算量を低減しながらも、エンコードの
際には可変個数のデータを一定個数に変換することがで
き、またデコードの際には一定個数のデータを可変個数
のデータに変換することができるようなデータ数変換方
法の提供を目的とする。
【0014】
【課題を解決するための手段】本発明に係るデータ数変
換方法は、ブロック内の波形データ又は波形を表すパラ
メータデータの個数が可変とされたデータをブロック毎
に一定の個数の基準データと比較するために上記可変個
数の入力データを上記一定個数に変換する工程を含むデ
ータ数変換方法において、上記可変個数のデータが入力
される帯域制限型オーバーサンプリングのためのFIR
フィルタで、上記入力データのサンプル点に対してそれ
ぞれ異なる複数の位相と対応した複数の係数セットの内
の上記一定個数のデータの各位置に対応する係数セット
を用いることにより、出力として必要な上記一定個数の
データのみを求める工程を有することを特徴として上記
課題を解決する。
【0015】また、他の発明に係るデータ数変換方法
は、ブロック内の波形データ又は波形を表すパラメータ
データの個数が可変とされたデータをブロック毎に一定
の個数の基準データと比較するために上記可変個数の入
力データを上記一定個数に変換する工程を含むデータ数
変換方法において、上記可変個数のデータが入力される
帯域制限型オーバーサンプリングのためのFIRフィル
タで、上記入力データのサンプル点に対してそれぞれ異
なる複数の位相と対応した複数の係数セットの内の上記
一定個数のデータの各位置の近傍の位置に対応する係数
セットを用いることにより、中間的な出力データを求め
る工程と、上記中間的な出力データを補間して最終出力
に必要とされる一定個数のデータを求める工程とを有す
ることを特徴として上記課題を解決する。
【0016】ここで、上記可変個数の入力データとして
は、音声信号や音響信号等のオーディオ信号を、周波数
軸上データに変換したものを用いることができ、具体的
には、例えば、MBE(Multiband Excitation: マルチ
バンド励起)符号化の場合のスペクトル包絡振幅データ
や、SBE(Singleband Excitation:シングルバンド励
起)符号化、ハーモニック(Harmonic)符号化、SBC
(Sub-band Coding:帯域分割符号化)、LPC(Linear
Predictive Coding: 線形予測符号化)、あるいはDC
T(離散コサイン変換)、MDCT(モデファイドDC
T)、FFT(高速フーリエ変換)等におけるスペクト
ル振幅データやそのパラメータ(LSPパラメータ、α
パラメータ、kパラメータ等)データ等を用いることが
できる。また、一定個数に変換されたデータを、ベクト
ル量子化することが考えられ、このベクトル量子化の前
に、ブロック毎に一定個数のデータのブロック間の差分
をとり、このブロック間差分データに対してベクトル量
子化を施すようにしてもよい。
【0017】また、他の発明に係るデータ数変換方法
は、ブロック内の波形データ又は波形を表すパラメータ
データが一定個数とされたデータをブロック内のデータ
内容に応じた個数のデータに変換するデータ数変換方法
において、上記一定個数のデータが入力される帯域制限
型オーバーサンプリングのためのFIRフィルタで、上
記入力データのサンプル点に対してそれぞれ異なる複数
の位相と対応した複数の係数セットの内の上記ブロック
内のデータ内容に応じた個数のデータの各位置に対応す
る係数セットを用いることにより、出力として必要な上
記ブロック内のデータ内容に応じた個数のデータのみを
求める工程を有することを特徴として上記課題を解決す
る。
【0018】また、他の発明に係るデータ数変換方法
は、ブロック内の波形データ又は波形を表すパラメータ
データが一定個数とされたデータをブロック内のデータ
内容に応じた個数のデータに変換するデータ数変換方法
において、上記一定個数のデータが入力される帯域制限
型オーバーサンプリングのためのFIRフィルタで、上
記入力データのサンプル点に対してそれぞれ異なる複数
の位相と対応した複数の係数セットの内の上記ブロック
内のデータ内容に応じた個数のデータの各位置の近傍の
位置に対応する係数セットを用いることにより、中間的
な出力データを求める工程と、上記中間的な出力データ
を補間して最終出力に必要とされる上記ブロック内のデ
ータ内容に応じた個数のデータを求める工程とを有する
ことを特徴として上記課題を解決する。
【0019】上記中間的な出力データは、最終的に必要
とされるデータの一個あたりそれぞれ少なくとも2個以
上であればよい。
【0020】
【作用】一定個数の非線形圧縮データに変換されて基準
データと非線形領域で比較することができ、ブロック間
差分をとってベクトル量子化することが可能となる。ま
た、データ数変換前のブロック内のデータ値の連続性を
高め、ブロック端点でリンギング等の生じない品質の高
いデータ数変換が行える。
【0021】
【実施例】以下、本発明に係るデータ数変換方法の実施
例について、図面を参照しながら説明する。図1は本発
明の第1の実施例となるデータ数変換方法の概略構成を
示している。
【0022】この第1の実施例は後述するMBEボコー
ダに適用される。すなわち、MBEボコーダにより算出
されたスペクトルエンベロープの個数が可変とされた振
幅データを一定個数に変換する方法である。
【0023】図1において、入力端子11には、後述す
るMBEボコーダにより算出されたスペクトルエンベロ
ープの振幅データ等が供給されている。この振幅データ
は、例えば図2のAに示すようなスペクトルを有する音
声信号を分析して、ピッチ周波数(角周波数)ωを求
め、このピッチ周波数ωに応じたスペクトルの周期性を
考慮して、各高調波(ハーモニクス)位置での振幅か
ら、図2のBに示すようなスペクトル包絡(エンベロー
プ)を表す振幅データとして求められる。この振幅デー
タの個数は一定の有効帯域(例えば200〜3400H
z)内でピッチ周波数ωに依存して変化する。そこで、
図2のCに示すように一定の固定周波数(角周波数)ω
c の各高調波位置での上記スペクトル包絡の振幅データ
を求めることで、データ個数を一定にできる。
【0024】図1の例では、入力端子11からの可変数
M個(例えばM=8〜63である)の入力データを、非
線形圧縮部12にて例えばdB領域に圧縮(対数圧縮)
した後、データ個数変換本体部13にて一定個数のデー
タに変換している。データ個数変換本体部13は、スペ
クトルエンベロープ拡張部14、帯域制限型FIRフィ
ルタ15及び直線補間部16から成っている。
【0025】入力されたブロック毎の可変数M個の入力
データは、非線形圧縮部12で非線形圧縮され、スペク
トルエンベロープ拡張部14でスペクトルエンベロープ
の両端の値を繰り返して前後に延長される。この両端が
前後に延長されたスペクトルエンベロープは、FIRフ
ィルタ15に供給される。このFIRフィルタ15は入
力データのサンプル点に対してそれぞれ異なる複数の位
相と対応した複数の係数セットの内の上記一定個数のデ
ータの各位置の近傍の位置に対応する係数セットを用い
ることにより、中間的な出力データを求める。この中間
的な出力データは、直線補間部16に供給され、直線補
間されて最終出力に必要とされる一定個数のデータとな
り、出力端子17から出力される。
【0026】ここで、後述するMBEボコーダにおいて
算出されるM個(mMX+1個)の振幅データ列をa
〔m〕とする。mは上記高調波(ハーモニックス)の次
数あるいはバンド番号であり、mMXが最大値であるが、
m=0のバンドの振幅データも含めて、全バンドの振幅
データの個数はmMX+1個となる。この振幅データa
〔m〕を、非線形圧縮部12にて例えばdB領域に変換
する。すなわち得られたデータをadB〔m〕とすると
き、 adB〔m〕=20 log10a〔m〕 ・・・(1) である。この対数変換された振幅データadB〔m〕の個
数mMX+1は、上述したようにピッチに依存して変化す
るため、一定個数の振幅データb〔m〕に変換する。こ
れは一種のサンプリングレート(サンプルレート)変換
である。なお、非線形圧縮部12での圧縮処理は、dB
領域への対数圧縮の他に、例えばいわゆるμ-lawやα-l
awのような疑似対数圧縮処理を施してもよい。このよう
に、振幅を圧縮することにより、能率的な符号化が実現
される。
【0027】MBEボコーダに入力される時間軸上の音
声信号に対するサンプリング周波数fs は、通常8kHz
で、全帯域幅は3.4kHz(ただし有効帯域は200〜
3400Hz)であり、女声の高い方から男声の低い方ま
でのピッチラグ(ピッチ周期に相当するサンプル数)
は、20〜147程度である。従って、ピッチ(角)周
波数ωは、8000/147≒54(Hz)から 8000/20=400
(Hz)程度までの間で変動することになる。従って、周
波数軸上で上記3.4kHzまでの間に約8〜63本のピ
ッチパルス(ハーモニックス)が立つことになる。すな
わち、周波数軸上のdB領域の波形として、8サンプル
乃至63サンプルから成るmMX+1個のデータを、一定
のサンプル数、例えば44サンプルに、サンプル数変換
を行うわけである。これが、図2のCに示すように、一
定のピッチ周波数(角周波数)ωC毎のハーモニックス
の位置のサンプルを求めることに相当する。
【0028】次にスペクトルエンベロープ拡張部14
は、上述したように非線形圧縮部12で非線形圧縮さ
れ、adB〔m〕の配列で表せるmMX+1個のスペクトル
エンベロープの両端の値を前後に延長する。これはスペ
クトルエンベロープの端点におけるリンギングの発生を
防ぐために行われる。このようにしてできた数列をa
JdB〔m〕とすると、このaJdB 〔m〕は−(f0
1)/2≦m<M+(f0 −1)/2の範囲で、
【0029】
【数1】
【0030】となる。ここでf0 は例えば9で、次に使
用するFIRフィルタの(オーバーサンプリング後のサ
ンプリングレートでみた)次数F0 例えば65と、F0
=OS×(f0 −1)+1という関係にある定数であ
る。また、f0 −1は、このスペクトルエンベロープ拡
張を一種のオーバーサンプリングと考えたとき、オーバ
ーサンプリングする前のサンプリングレートでみたとき
のフィルタ次数であり、F0 は、オーバーサンプリング
後のサンプリングレートでみたときのフィルタの次数で
ある。また、OS は、オーバーサンプリングの比率(レ
シオ) である。図3はこのaJdB 〔m〕を示す図であ
る。すなわち、このaJdB 〔m〕は、0≦m<Mの区間
に示される元の波形adB〔m〕の左端F0 をadB
〔0〕
のまま−(f0−1)まで延長し、右端部を最後のデー
タであるadB〔M−1〕のままM+(f0 −1)/2ま
で延長している。
【0031】本来、帯域制限型のオーバーサンプリング
は、例えば(OS −1)個のデータを0詰めしたものに
0 次のフィルタを通したものとしてもよいが、0デー
タに対する積和は無視してよい。そのため、帯域制限型
のオーバーサンプリングは、8つの位相の係数セット
(P=0・・・7)の各セット毎に(f0 −1)個の係
数からなり、もとのF0 個の係数をオーバーサンプリン
グするフィルタ処理とみることができる。
【0032】図4はF0 を65、f0 を9、OS を8と
した場合のFIRフィルタ15の位相の係数を示す図で
ある。図4のAは、−4πから4πまでの位相の変化範
囲でF0 個(65個)の係数の大きさを振幅値として示
している。位相変化が0πのとき係数値は1であるが、
位相変化が±4π、±3π、±2π、±πのときは0で
ある。また、この図4のAは0πの振幅を軸に左右対称
となっている。図4のBは、P=0・・・7の各位相の
係数セットの持つ係数値が図4のAのどこにあたるかを
示している。なお、この係数値は、周知の方法によって
導出できる。
【0033】ここで、本発明においては、上記入力デー
タのサンプル点に対してそれぞれ異なる複数の位相と対
応した複数の係数セットの内の上記一定個数のデータの
各位置に対応する係数セットを用いることにより、出力
として必要なデータそのもの、あるいは必要とされるデ
ータの近傍のデータを求めることにより、演算自体を間
引いて演算量を減らすものである。
【0034】図5は、図4に示された係数セット(P=
0・・・7)を用いてaJdB 〔m〕をフィルタリング
し、出力として必要とされる一定個数のデータb〔m〕
の内の任意の1個を得るための演算を説明するための図
である。
【0035】図5のAは、adB〔m〕を示す。このadB
〔m〕からb〔m〕を得るには、上記スペクトルエンベ
ロープ拡張部14でadB〔m〕の両端を延長して図3に
示したようなaJdB 〔m〕を先ず得る。iは可変数M個
のデータのインデックスである。
【0036】例えば、図5のAに示されたb点における
b〔m〕を求めようとする場合を以下に述べる。このb
点に最も近傍の位置にある係数値のセットはP=2の係
数セットである。このP=2の係数セットは図5のBに
示すような各係数値を持っている。この各係数値を
20、p21、p22、p23、p24、p25、p27とする。す
ると、b点のb〔m〕は、インデックスi=0のデータ
と係数値p20の乗算値と、インデックスi=1のデータ
と係数値p21の乗算値と、インデックスi=2のデータ
と係数値p22の乗算値と、インデックスi=3のデータ
と係数値p23の乗算値と、インデックスi=4のデータ
と係数値p24の乗算値と、インデックスi=5のデータ
と係数値p25の乗算値と、インデックスi=6のデータ
と係数値p26の乗算値と、インデックスi=7のデータ
と係数値p27の乗算値との合計8個の乗算値の和として
表せる。
【0037】今、F0 個の係数を0≦k<F0 の範囲で
coef〔k〕とすると0≦m<M・OS の範囲でのb
〔m〕は、次の(3)式で示される。
【0038】
【数2】
【0039】この(3)式より、例えば、上記b点のb
〔m〕は、OS =8であれば、b〔3×8+2〕であ
り、b〔26〕となり、b〔26〕のサンプルデータの
振幅値を求めることになる。
【0040】ここで、OS =8、f0 =9とすると上記
(3)式は、
【数3】 となる。
【0041】ここで、P=0のとき上記(4)式は、
【数4】 となり、i=0、1・・・7のデータの振幅をそのまま
求めることになる。
【0042】また、P=1・・・7のとき上記(4)式
は、
【数5】
【0043】となり、aJdB 〔i−3〕、aJdB 〔i−
2〕、aJdB 〔i−1〕、aJdB 〔i−0〕、a
JdB 〔i+1〕、aJdB 〔i+2〕、aJdB 〔i+
3〕、aJdB 〔i+4〕の8個のデータに対し、coef
〔8−P〕、coef〔16−P〕、coef〔24−P〕、coef
〔32−P〕、coef〔40−P〕、coef〔48−P〕、coef
〔56−P〕、coef〔64−P〕の8個の係数が各々乗算さ
れ、その8個の乗算値が全て加算されてb〔m〕が得ら
れることが分かる。
【0044】例えば、上記図5のAに示されたb点のb
〔m〕の例では、i=3、P=2であるので、a
JdB
〔0〕、aJdB 〔1〕、・・・aJdB 〔7〕の8個
のデータに対し、coef〔6〕、coef〔14〕、・・・coef
〔62〕の8個の係数が各々乗算され、その8個の乗算値
が全て加算されてb〔26〕が得られる。
【0045】また、例えば、i=0、P=3のb〔m〕
を求める場合は、上記スペクトルエンベロープ拡張部1
4で得たデータaJdB 〔−3〕、aJdB 〔−2〕、a
JdB 〔−1〕の計3個のデータにそれぞれcoef〔5〕、
coef〔11〕、coef〔22〕の計3個の係数を乗算した3個
の乗算値と、aJdB
〔0〕、aJdB 〔1〕、a
JdB 〔2〕、aJdB 〔3〕、aJdB 〔4〕の計5個のデ
ータにそれぞれcoef〔29〕、coef〔37〕、coef〔45〕、
coef〔53〕、coef〔61〕の5個の係数を乗算した5個の
乗算値とからなる計8個の乗算値が加算されてb〔3〕
が得られる。
【0046】ここで、aJdB 〔i+j−(f0 −1)/
2〕の〔 〕内がimin −(f0 −1)/2=1−(f
0 −1)/2、imax +(f0 −1)/2=mMX+(f
0 −1)/2に関しては、スペクトルエンベロープ拡張
部14により、データが拡張されているので問題はな
い。ここで、b〔m〕の一点を求めるのに必要な積は
(f0 −1)回である。
【0047】ところで、以上の説明においては、(例え
ば8倍の)オーバーサンプル点のいずれかの位置に上記
最終的に必要とされる一定個数(例えば44個)のデー
タの位置が一致するものとして説明したが、現実には、
このような一致を得るためにはオーバーサンプルの比率
(倍数)を極めて高くとることが必要とされ、フィルタ
係数の個数が膨大なものとなることより、最終的には必
要とされるデータの位置の近傍(例えば前後の2点)の
オーバーサンプル点のデータを中間的な出力として上記
フィルタリング演算により求め、この中間的な出力を補
間処理することで、上記最終的に必要とされるデータを
求めることが好ましい。
【0048】すなわち、上記FIRフィルタ15からの
FIR出力は、直線補間部16に供給される。この直線
補間部16は、上記FIRフィルタ15からの少なくと
も2つのFIR出力を直線補間し、必要な出力点を得
る。例えば、図6において点A0 を直線補間で求めるに
は、その点A0 を挟む2点A-1、A1 がFIRフィルタ
で算出されていればよい。したがって、データ個数変換
本体部13で求められる最終的なエンコーダでの出力点
の個数を44点とすれば、44×2(=88)点が上記
FIRフィルタ15で算出されればよい。
【0049】この必要な出力点を得るための2点A-1
1 のb〔m〕を求める処理について図7のフローチャ
ートを用いて説明する。ステップS1では、入力側の角
周波数をOS (サンプリングレシオ)で割ったω0fと、
出力側の角周波数ω0 を求める。第1の実施例では、O
S (例えば8)倍のサンプリングを行っているので、ス
ペクトルは、入力の角周波数の1/OSのインターバル
で立っている。そのため、OS で割った値ω0fを出す。
0〜πまでを例えば1024のグリッドで表現すると、
このω0fは、1024/M×1/OSとなる。 また、欲し
い点(出力側)の角周波数はω0 であり、このω0 が10
24/M' となる。ここで、M' は、出力側のハーモニク
スの数である。
【0050】ステップS2では、入力側ハーモニクスの
インデックスi及び出力側ハーモニクスのインデックス
iiを初期化する。ステップS3では、上記係数セットP
を初期化する。
【0051】ステップS4では、入力側ハーモニクスの
インデックスiと係数セットPとにより求めたいデータ
の位置A0 を検索(スキャン)する。すなわち、求めた
いデータの位置A0 (=ω0 ×ii)を、iとPによるス
キャンの位置A1 (=i×OS +P+1)が越えたか否
かを判定する。例えば、始めは上記ステップS2、S3
でiとPが初期化されているのでi=0、P=0として
検索する。ここで、YESを判定するとステップS5に
進み、NOを判定するとステップS7に進む。
【0052】ステップS5では、求めたいデータの位置
0 (=ω0 ×ii)を越えたiとPによるスキャンの位
置A1 (=i×OS +P+1)でのb〔m〕、すなわ
ち、b〔i×OS +P+1〕とその一つ前(A-1)のb
〔i×OS +P〕とを求める。このb〔i×OS +P+
1〕とb〔i×OS +P〕とは上記求めたいデータの位
置A0 (=ω0 ×ii)を挟み込むような位置(A1 とA
-1の間)でのb〔m〕となる。
【0053】ステップS6では、次に求めたいデータの
位置を移動するため、出力側ハーモニクスのインデック
スiiをインクリメントする。ステップS7では、スキャ
ンの位置を移動するために係数セットPをインクリメン
トする。このときiは0のままである。すなわち、i=
0のまま、Pを0から1に変える。
【0054】ステップS8では、係数セットPがOS
値と一致したか否かを判定する。Pは0・・・7までの
8個であり、OS も8としている。ここで、YESを判
定するとステップS9に進み、NOを判定するとステッ
プS4に進む。
【0055】ステップS9では、入力側ハーモニクスの
インデックスiをインクリメントする。そして、ステッ
プS10に進む。
【0056】ステップS10では、上記iが可変個数の
データと数(M個)と等しくなったか否かを判定する。
ここでYESを判定するとこのフローは終了となり、N
Oを判定するとステップS3に戻る。
【0057】以上のフローチャートより、本実施例はO
S (ここではOS =8)倍でオーバーサンプリングピッ
チ(角周波数)ω0fのインターバルで周波数をインクリ
メントしてゆき出力として欲しい点を越えたところでの
b〔m〕とその一つ手前のb〔m〕とを求めている。こ
のようにすれば、出力点を直線補間で求めるのに必要な
左右の点が全て算出されることになる。
【0058】次に、上記図7に示したフローチャートの
処理によって求められた、出力として欲しい点を越えた
ところでのb〔m〕とその一つ手前のb〔m〕を直線補
間部16により直線する処理を図8のフローチャートを
用いて説明する。
【0059】ステップS21では、出力角周波数ω
0 と、入力角周波数ω0fとを求める。これは、上記図7
に示したステップS1と同様である。ステップS22で
は、以後のフローが入力側のハーモニクスの8倍のイン
デックスiでインクリメントされるのでこのiを初期化
する。ステップS23では、i=0になっているか否か
を判別する。ここでYESを判別するとステップS24
に進み、NOを判別するとステップS25に進む。
【0060】ステップS24、ステップS25では、図
6に示すようにある一つの区間に着目して、その幅をb
w とし、上限をub 、下限をlb としている。この上限
bは、inint (i+1)×ω0fとなり、下限lb は、i
nint i×ω0fとなる。ここで、inint はinint (x)
とするとき、xに最も近い数を返す関数である。また、
上記下限lb は、一回前の上限ub となる。したがっ
て、bw は、上限ub と下限lb との差になる。
【0061】上記ステップS24では、下限lb を0と
し、ステップS26に進む。上記ステップS25では、
下限lb と上限ub とを一致させる。
【0062】ステップS26では、上述したように上限
b をinint (i+1)×ω0fと設定する。ステップS
27では、上限ub と下限lb との差であるbw を求め
る。そして、このbw の間をスキャンして、直線補間値
c〔ii〕を求める。
【0063】ステップS28では、図6に示す求めよう
とするc〔ii〕と下限lb との差idxを0に設定する。
すなわち、idx=0の位置(下限lb と一致)からスキ
ャンを開始するスキャン開始位置を設定する。
【0064】ステップS29では、上述したように下限
b からスキャンjを開始する。ステップS30では、
スキャンjが求めようとするc〔ii〕の位置と一致した
か否かを判別する。ここで、YESを判別するとステッ
プS31に進み、NOを判別するとステップS32に進
む。
【0065】ステップS31では、位置関係に関連する
重み付けを考慮したc〔ii〕を求める。ここで、例え
ば、idxが0のときは、c〔ii〕=b〔i〕となり、i
dxがbw のときは、c〔ii〕=b〔i+1〕となる。
【0066】ステップS32では、idxをインクリメン
トする。そして、ステップS33では、出力ハーモニク
スのインデックスiiが出力ハーモニクスの数M' より大
きくなったか否かを判別する。ここで、YESを判別す
ると、このフローは終了となり、NOを判別するとステ
ップS34に進む。
【0067】ステップS34では、スキャンjの繰り返
しを始める。ステップS35では、スキャンjが上限u
b まで到達したか否かを判別する。ここで、YESを判
別するとステップS36に進み、NOを判別するとステ
ップS30に戻る。
【0068】ステップS36では、入力側のハーモニク
スiをインクリメントする。ステップS37では、iが
入力ハーモニクスMとOS との積よりも大きくなったか
否かを判別する。ここで、YESを判別するとこのフロ
ーは終了となるが、NOを判別するとステップS23に
戻る。
【0069】以上のフローチャートより、本実施例は、
上記図7のフローチャートの処理で求めたb〔m〕を直
線補間部16により直線補間するだけで、必要な点だけ
を求められる。
【0070】このように第1の実施例は、必要な点のみ
を求めることによって、個数が可変とされたデータを一
定個数にすることができる。そのため、演算量が減少す
る。
【0071】このようにして、一定サンプル数のデータ
に変換した数列に必要に応じてブロック間、あるいはフ
レーム間で差分をとり、ベクトル量子化を施して、その
インデックスを伝送するようにすればよい。
【0072】上述した第1の実施例は、MBEボコーダ
により算出されたスペクトルエンベロープの個数が可変
とされた振幅データを一定個数に変換する方法であった
が、以下、第2の実施例として、一定個数にされたデー
タをデータ内容に応じた個数のデータに変換するデータ
個数変換方法を説明する。この第2の実施例は例えば音
声信号を合成するデコーダ側に適用される。すなわち、
デコーダ側では、上記インデックスより、ベクトル量子
化及び逆量子化された数列の一定個数とされた波形デー
タを得て、そのデータ列を、同様の方法で、すなわち帯
域制限オーバーサンプリング、直線補間等を施すことに
より、データの内容に応じた個数のM個の数列に変換す
る。
【0073】図9は第2の実施例の概略構成を示してい
る。上記第1の実施例において、一定個数とされた入力
データは入力端子21を介してデータ個数変換本体部2
2に供給され、このデータ個数変換本体部22で可変個
数のデータとされて出力端子26から出力される。この
データ個数変換本体部22は、スペクトルエンベロープ
拡張部23、帯域制限型FIRフィルタ24及び直線補
間部25から成っている。
【0074】入力されたブロック毎に一定個数の入力デ
ータは、スペクトルエンベロープ拡張部23でスペクト
ルエンベロープの両端の値を延長される。この両端が前
後に延長されたスペクトルエンベロープは、FIRフィ
ルタ24に供給される。このFIRフィルタ24はスペ
クトルエンベロープが延長されることによりデータ個数
が拡大されたデータのサンプル点に対しそれぞれ異なる
複数の位相と対応した複数の係数セットの内の一定個数
のデータの各位置の近傍の位置に対応する係数セットを
用いることにより、中間的な出力データを求める。そし
て、この中間的な出力データは直線補間部25に供給さ
れる。この直線補間部25は上記中間的な出力データを
直線補間し、出力端子26から間引きされ、データ内容
に応じた可変個数のデータを出力する。
【0075】この第2の実施例は、必要な点のみを求め
ることによって、個数が一定とされたデータをデータ内
容に応じた個数に変換することができる。そのため、演
算量が減少される。
【0076】ここで、第1の実施例による乗算の回数
は、求めるデータの個数を44個とすれば、その2倍の
88個のデータに対し、8回の乗算が施されることにな
り、1024回の乗算となる。これは、上述した高速化
手法を用いたFFT、IFFTの乗算の回数の合計31
488回の1/45となる。また、第2の実施例による
乗算の回数は、求めるデータの個数を60個とすれば、
その2倍の120個のデータに対し、8回の乗算がほど
こされることになる。これは、上述した高速化手法を用
いたFFT、IFFTの乗算の回数の合計31488回
の1/30となる。
【0077】次に、上述したようなデータ数変換方法が
適用可能な、音声信号の合成分析符号化装置(いわゆる
ボコーダ)の一種のMBE(Multiband Excitation: マ
ルチバンド励起)ボコーダの具体例について、図面を参
照しながら説明する。以下に説明するMBEボコーダ
は、D.W. Griffin and J.S. Lim, "MultibandExcitatio
n Vocoder," IEEE Trans.Acoustics,Speech,and Signal
Processing,vol.36, No.8, pp.1223-1235, Aug. 1988
に開示されているものであり、従来のPARCOR(PA
Rtial auto-CORrelation: 偏自己相関)ボコーダ等で
は、音声のモデル化の際に有声音区間と無声音区間とを
ブロックあるいはフレーム毎に切り換えていたのに対
し、MBEボコーダでは、同時刻(同じブロックあるい
はフレーム内)の周波数軸領域に有声音(Voiced)区間
と無声音(Unvoiced)区間とが存在するという仮定でモ
デル化している。
【0078】図10は、上記MBEボコーダに本発明を
適用した実施例の全体の概略構成を示すブロック図であ
る。この図10において、入力端子101には音声信号
が供給されるようになっており、この入力音声信号は、
HPF(ハイパスフィルタ)等のフィルタ102に送ら
れて、いわゆるDC(直流)オフセット分の除去や帯域
制限(例えば200〜3400Hzに制限)のための少な
くとも低域成分(200Hz以下)の除去が行われる。こ
のフィルタ102を介して得られた信号は、ピッチ抽出
部103及び窓かけ処理部104にそれぞれ送られる。
ピッチ抽出部103では、入力音声信号データが所定サ
ンプル数N(例えばN=256)単位でブロック分割さ
れ(あるいは方形窓による切り出しが行われ)、このブ
ロック内の音声信号についてのピッチ抽出が行われる。
このような切り出しブロック(256サンプル)を、例
えば図11のAに示すようにLサンプル(例えばL=1
60)のフレーム間隔で時間軸方向に移動させており、
各ブロック間のオーバラップはN−Lサンプル(例えば
96サンプル)となっている。また、窓かけ処理部10
4では、1ブロックNサンプルに対して所定の窓関数、
例えばハミング窓をかけ、この窓かけブロックを1フレ
ームLサンプルの間隔で時間軸方向に順次移動させてい
る。
【0079】このような窓かけ処理を数式で表すと、 xw (k,q) =x(q) w(kL-q) ・・・(7)
【0080】となる。この(7)式において、kはブロ
ック番号を、qはデータの時間インデックス(サンプル
番号)を表し、処理前の入力信号のq番目のデータx
(q) に対して第kブロックの窓(ウィンドウ)関数w(k
L-q)により窓かけ処理されることによりデータxw (k,
q) が得られることを示している。ピッチ抽出部103
内での図11のAに示すような方形窓の場合の窓関数w
r (r) は、
【0081】 wr (r) =1 0≦r<N ・・・(8) =0 r<0,N≦r
【0082】また、窓かけ処理部104での図11のB
に示すようなハミング窓の場合の窓関数wh (r) は、 wh (r) = 0.54 − 0.46 cos(2πr/(N-1)) 0≦r<N ・・・(9) =0 r<0,N≦r
【0083】である。このような窓関数wr (r) あるい
はwh (r) を用いるときの上記(7)式の窓関数w(r)
(=w(kL-q))の否零区間は、 0≦kL−q<N これを変形して、 kL−N<q≦kL
【0084】従って例えば上記方形窓の場合に窓関数w
r (kL-q)=1となるのは、図12に示すように、kL−
N<q≦kLのときとなる。また、上記(7)〜(9)
式は、長さN(=256)サンプルの窓が、L(=16
0)サンプルずつ前進してゆくことを示している。以
下、上記(8)式、(9)式の各窓関数で切り出された
各N点(0≦r<N)の否零サンプル列を、それぞれx
wr(k,r) 、xwh(k,r) と表すことにする。
【0085】窓かけ処理部104では、図13に示すよ
うに、上記(9)式のハミング窓がかけられた1ブロッ
ク256サンプルのサンプル列xwh(k,r) に対して17
92サンプル分の0データが付加されて(いわゆる0詰
めされて)2048サンプルとされ、この2048サン
プルの時間軸データ列に対して、直交変換部105によ
り例えばFFT(高速フーリエ変換)等の直交変換処理
が施される。
【0086】ピッチ抽出部103では、上記xwr(k,r)
のサンプル列(1ブロックNサンプル)に基づいてピッ
チ抽出が行われる。このピッチ抽出法には、時間波形の
周期性や、スペクトルの周期的周波数構造や、自己相関
関数を用いるもの等が知られているが、本実施例では、
センタクリップ波形の自己相関法を採用している。この
ときのブロック内でのセンタクリップレベルについて
は、1ブロックにつき1つのクリップレベルを設定して
もよいが、ブロックを細分割した各部(各サブブロッ
ク)の信号のピークレベル等を検出し、これらの各サブ
ブロックのピークレベル等の差が大きいときに、ブロッ
ク内でクリップレベルを段階的にあるいは連続的に変化
させるようにしている。このセンタクリップ波形の自己
相関データのピーク位置に基づいてピーク周期を決めて
いる。このとき、現在フレームに属する自己相関データ
(自己相関は1ブロックNサンプルのデータを対象とし
て求められる)から複数のピークを求めておき、これら
の複数のピークの内の最大ピークが所定の閾値以上のと
きには該最大ピーク位置をピッチ周期とし、それ以外の
ときには、現在フレーム以外のフレーム、例えば前後の
フレームで求められたピッチに対して所定の関係を満た
すピッチ範囲内、例えば前フレームのピッチを中心とし
て±20%の範囲内にあるピークを求め、このピーク位
置に基づいて現在フレームのピッチを決定するようにし
ている。このピッチ抽出部103ではオープンループに
よる比較的ラフなピッチのサーチが行われ、抽出された
ピッチデータは高精度(ファイン)ピッチサーチ部10
6に送られて、クローズドループによる高精度のピッチ
サーチ(ピッチのファインサーチ)が行われる。
【0087】高精度(ファイン)ピッチサーチ部106
には、ピッチ抽出部103で抽出された整数(インテジ
ャー)値の粗(ラフ)ピッチデータと、直交変換部10
5により例えばFFTされた周波数軸上のデータとが供
給されている。この高精度ピッチサーチ部106では、
上記粗ピッチデータ値を中心に、0.2〜0.5きざみで±
数サンプルずつ振って、最適な小数点付き(フローティ
ング)のファインピッチデータの値へ追い込む。このと
きのファインサーチの手法として、いわゆる合成による
分析 (Analysis by Synthesis)法を用い、合成されたパ
ワースペクトルが原音のパワースペクトルに最も近くな
るようにピッチを選んでいる。
【0088】このピッチのファインサーチについて説明
する。先ず、上記MBEボコーダにおいては、上記FF
T等により直交変換された周波数軸上のスペクトルデー
タとしてのS(j) を S(j) =H(j) |E(j) | 0<j<J ・・・(10) と表現するようなモデルを想定している。ここで、Jは
πωs =fs /2に対応し、サンプリング周波数fs
2πωs が例えば8kHzのときには4kHzに対応する。
上記(10)式中において、周波数軸上のスペクトルデー
タS(j) が図14のAに示すような波形のとき、H(j)
は、図14のBに示すような元のスペクトルデータS
(j) のスペクトル包絡線(エンベロープ)を示し、E
(j) は、図14のCに示すような等レベルで周期的な励
起信号(エキサイテイション)のスペクトルを示してい
る。すなわち、FFTスペクトルS(j) は、スペクトル
エンベロープH(j) と励起信号のパワースペクトル|E
(j) |との積としてモデル化される。
【0089】上記励起信号のパワースペクトル|E(j)
|は、上記ピッチに応じて決定される周波数軸上の波形
の周期性(ピッチ構造)を考慮して、1つの帯域(バン
ド)の波形に相当するスペクトル波形を周波数軸上の各
バンド毎に繰り返すように配列することにより形成され
る。この1バンド分の波形は、例えば上記図13に示す
ような256サンプルのハミング窓関数に1792サン
プル分の0データを付加(0詰め)した波形を時間軸信
号と見なしてFFTし、得られた周波数軸上のある帯域
幅を持つインパルス波形を上記ピッチに応じて切り出す
ことにより形成することができる。
【0090】次に、上記ピッチに応じて分割された各バ
ンド毎に、上記H(j) を代表させるような(各バンド毎
のエラーを最小化するような)値(一種の振幅)|Am
|を求める。ここで、例えば第mバンド(第m高調波の
帯域)の下限、上限の点をそれぞれam 、bm とすると
き、この第mバンドのエラーεm は、
【0091】
【数6】 で表せる。このエラーεm を最小化するような|Am
は、
【0092】
【数7】
【0093】となり、この(12)式の|Am |のとき、
エラーεm を最小化する。このような振幅|Am |を各
バンド毎に求め、得られた各振幅|Am |を用いて上記
(11)式で定義された各バンド毎のエラーεm を求め
る。次に、このような各バンド毎のエラーεm の全バン
ドの総和値Σεm を求める。さらに、このような全バン
ドのエラー総和値Σεm を、いくつかの微小に異なるピ
ッチについて求め、エラー総和値Σεm が最小となるよ
うなピッチを求める。
【0094】すなわち、上記ピッチ抽出部103で求め
られたラフピッチを中心として、例えば 0.25 きざみで
上下に数種類ずつ用意する。これらの複数種類の微小に
異なるピッチの各ピッチに対してそれぞれ上記エラー総
和値Σεm を求める。この場合、ピッチが定まるとバン
ド幅が決まり、上記(13)式より、周波数軸上データの
パワースペクトル|S(j) |と励起信号スペクトル|E
(j) |とを用いて上記(11)式のエラーεm を求め、そ
の全バンドの総和値Σεm を求めることができる。この
エラー総和値Σεm を各ピッチ毎に求め、最小となるエ
ラー総和値に対応するピッチを最適のピッチとして決定
するわけである。以上のようにして高精度ピッチサーチ
部106で最適のファイン(例えば 0.25 きざみ)ピッ
チが求められ、この最適ピッチに対応する振幅|Am
が決定される。
【0095】以上ピッチのファインサーチの説明におい
ては、説明を簡略化するために、全バンドが有声音(Vo
iced)の場合を想定しているが、上述したようにMBE
ボコーダにおいては、同時刻の周波数軸上に無声音(Un
voiced)領域が存在するというモデルを採用しているこ
とから、上記各バンド毎に有声音/無声音の判別を行う
ことが必要とされる。
【0096】上記高精度ピッチサーチ部106からの最
適ピッチ及び振幅|Am |のデータは、有声音/無声音
判別部107に送られ、上記各バンド毎に有声音/無声
音の判別が行われる。この判別のために、NSR(ノイ
ズtoシグナル比)を利用する。すなわち、第mバンド
のNSRは、
【0097】
【数8】
【0098】と表せ、このNSR値が所定の閾値(例え
ば0.3)より大のとき(エラーが大きい)ときには、そ
のバンドでの|Am ||E(j) |による|S(j) |の近
似が良くない(上記励起信号|E(j) |が基底として不
適当である)と判断でき、当該バンドをUV(Unvoice
d、無声音)と判別する。これ以外のときは、近似があ
る程度良好に行われていると判断でき、そのバンドをV
(Voiced、有声音)と判別する。
【0099】次に、振幅再評価部108には、直交変換
部105からの周波数軸上データ、高精度ピッチサーチ
部106からのファインピッチと評価された振幅|Am
|との各データ、及び上記有声音/無声音判別部107
からのV/UV(有声音/無声音)判別データが供給さ
れている。この振幅再評価部108では、有声音/無声
音判別部107において無声音(UV)と判別されたバ
ンドに関して、再度振幅を求めている。このUVのバン
ドについての振幅|Am UVは、
【0100】
【数9】 にて求められる。
【0101】この振幅再評価部108からのデータは、
データ数変換(一種のサンプリングレート変換)部10
9に送られる。このデータ数変換部109は、上記ピッ
チに応じて周波数軸上での分割帯域数が異なり、データ
数(特に振幅データの数)が異なることを考慮して、一
定の個数にするためのものである。すなわち、例えば有
効帯域を3400kHzまでとすると、この有効帯域が上
記ピッチに応じて、8バンド〜63バンドに分割される
ことになり、これらの各バンド毎に得られる上記振幅|
m |(UVバンドの振幅|Am UVも含む)データの
個数mMX+1も8〜63と変化することになる。このた
めデータ数変換部109では、この可変個数mMX+1の
振幅データを一定個数(例えば44個)のデータに変換
している。
【0102】ここで本第1の実施例においては、上記図
1〜図8と共に説明したように、周波数軸上の有効帯域
1ブロック分の振幅データに対して、ブロック内の両端
のデータを延長してデータ個数を拡大し、帯域制限型F
IRフィルタによるフィルタ処理を施し、さらに直線補
間を施すことにより一定個数(例えば44個)のデータ
を得ている。
【0103】このデータ数変換部109からのデータ
(上記一定個数の振幅データ)がベクトル量子化部11
0に送られて、所定個数のデータ毎にまとめられてベク
トルとされ、ベクトル量子化が施される。ベクトル量子
化部110からの量子化出力データは、CRC&レート
1/2畳込み符号付加部111に供給されと共にフレー
ムインターリーブ部112に供給される。また、上記高
精度のピッチサーチ部106からの高精度(ファイン)
ピッチデータ及び上記有声音/無声音判別部107から
の有声音/無声音(V/UV)判別データも上記CRC
&レート1/2畳込み符号付加部111に供給される。
【0104】ここで、上記CRC&レート1/2畳込み
符号付加部111は、上記ファインピッチデータ、V/
UV判別データ及び量子化出力データを用いて、スペク
トルエンベロープの量子化を階層的な構造とし、その出
力インデックスの重要度を分けることで効果的に畳込み
符号による誤り訂正を行う。
【0105】これは、本件出願人が特願平4−9142
2号において、提案した高能率符号化方法、すなわち、
M次元ベクトルを、S次元(S<M)ベクトルに次元低
下させてベクトル量子化するような、階層構造化された
コードブックを有する量子化を行わせる方法と同様に誤
り訂正符号の効果的な適用が可能となる方法である。
【0106】具体的に、このデコーダ側のビタビ符号&
CRC検出は、以下のような原理である。図15は、ビ
タビ復号&CRC検出の原理を説明するための機能ブロ
ック図である。例えば、音声符号器121から出力され
た音声パラメータのうち、聴覚上特に重要な部分(クラ
ス1)80ビットとそれ以外の部分(クラス2)40ビ
ットとに分ける。クラス1のうちさらに重要な50ビッ
トについてCRC計算ブロック122によりCRCを計
算し、7ビットの結果を得る。クラス1の80ビットと
CRCの7ビットと畳込み符号化器の初期値を0に戻す
ためのテールビット5ビットの合計92ビットを畳込み
符号化部123に入力し、184ビットの出力を得る。
畳込み符号化された184ビットとクラス2ビットの4
0ビットの計224ビットにつき、2スロットインター
リーブ器124により、インターリーブを行い、その出
力として224ビットを伝送する。
【0107】この2スロットインターリーブ器124に
相当するのが図10のフレームインターリーブ部112
であり、その出力が出力端子113から伝送される。
【0108】なお、これらの各データは、上記Nサンプ
ル(例えば256サンプル)のブロック内のデータに対
して処理を施すことにより得られるものであるが、ブロ
ックは時間軸上を上記Lサンプルのフレームを単位とし
て前進することから、伝送するデータは上記フレーム単
位で得られる。すなわち、上記フレーム周期でピッチデ
ータ、V/UV判別データ、振幅データが更新されるこ
とになる。
【0109】次に、伝送されて得られた上記出力データ
に基づき音声信号を合成するための合成側(デコード
側)の概略構成について、図16を参照しながら説明す
る。この図15において、入力端子131には、伝送さ
れたきたCRC&レート1/2畳込み符号が付加された
出力データが供給される。入力端子131からの出力デ
ータは、フレームデインタリーブ132に供給され、デ
インターリーブされる。デインターリーブされたデータ
は、ビタビ復号&CRC検出部133に供給され、復号
化される。
【0110】そして、マスク処理部134が、フレーム
デインターリーブ132からのデータをマスク処理し、
量子化振幅データを逆ベクトル量子化部135に供給す
る。
【0111】この逆量子化部135も階層構造化されて
おり、各階層のインデックスデータに基づいて逆ベクト
ル化されたデータを合成して出力する。この逆量子化部
135からの出力データは、データ数逆変換部136に
送られて逆変換される。このデータ数逆変換部136で
は、上述した図9の説明と同様な(逆)変換が行われ、
得られた振幅データが有声音合成部137及び無声音合
成部138に送られる。また、上記マスク処理部134
は、符号化ピッチデータをピッチ復号化部139に供給
する。このピッチ復号化器139で復号されたピッチデ
ータは、データ数逆変換部136、有声音合成部137
及び無声音合成部138に送られる。また、上記マスク
処理部134は、V/UV判別データを有声音合成部1
37及び無声音合成部138に供給する。
【0112】有声音合成部137では例えば余弦(cosin
e)波合成により時間軸上の有声音波形を合成し、無声音
合成部138では例えばホワイトノイズをバンドパスフ
ィルタでフィルタリングして時間軸上の無声音波形を合
成し、これらの各有声音合成波形と無声音合成波形とを
加算部140で加算合成して、出力端子141より取り
出すようにしている。この場合、上記振幅データ、ピッ
チデータ及びV/UV判別データは、上記分析時の1フ
レーム(Lサンプル、例えば160サンプル)毎に更新
されて与えられるが、フレーム間の連続性を高める(円
滑化する)ために、上記振幅データやピッチデータの各
値を1フレーム中の例えば中心位置における各データ値
とし、次のフレームの中心位置までの間(合成時の1フ
レーム)の各データ値を補間により求める。すなわち、
合成時の1フレーム(例えば上記分析フレームの中心か
ら次の分析フレームの中心まで)において、先端サンプ
ル点での各データ値と終端(次の合成フレームの先端)
サンプル点での各データ値とが与えられ、これらのサン
プル点間の各データ値を補間により求めるようにしてい
る。
【0113】以下、有声音合成部137における合成処
理を詳細に説明する。上記V(有声音)と判別された第
mバンド(第m高調波の帯域)における時間軸上の上記
1合成フレーム(Lサンプル、例えば160サンプル)
分の有声音をVm (n) とするとき、この合成フレーム内
の時間インデックス(サンプル番号)nを用いて、 Vm (n) =Am (n) cos(θm (n)) 0≦n<L ・・・(15) と表すことができる。全バンドの内のV(有声音)と判
別された全てのバンドの有声音を加算(ΣVm (n) )し
て最終的な有声音V(n) を合成する。
【0114】この(15)式中のAm (n) は、上記合成フ
レームの先端から終端までの間で補間された第m高調波
の振幅である。最も簡単には、フレーム単位で更新され
る振幅データの第m高調波の値を直線補間すればよい。
すなわち、上記合成フレームの先端(n=0)での第m
高調波の振幅値をA0m、該合成フレームの終端(n=
L:次の合成フレームの先端)での第m高調波の振幅値
をALmとするとき、 Am (n) = (L-n)A0m/L+nALm/L ・・・(16) の式によりAm (n) を計算すればよい。
【0115】次に、上記(15)式中の位相θm (n) は、 θm (0) =mωO1n+n2 m(ωL1−ω01)/2L+φ0m+Δωn ・・・(17) により求めることができる。この(17)式中で、φ0m
上記合成フレームの先端(n=0)での第m高調波の位
相(フレーム初期位相)を示し、ω01は合成フレーム先
端(n=0)での基本角周波数、ωL1は該合成フレーム
の終端(n=L:次の合成フレーム先端)での基本角周
波数をそれぞれ示している。上記(17)式中のΔωは、
n=Lにおける位相φLmがθm (L) に等しくなるような
最小のΔωを設定する。
【0116】以下、任意の第mバンドにおいて、それぞ
れn=0、n=LのときのV/UV判別結果に応じた上
記振幅Am (n) 、位相θm (n) の求め方を説明する。第
mバンドが、n=0、n=LのいずれもV(有声音)と
される場合に、振幅Am (n) は、上述した(16)式によ
り、伝送された振幅値A0m、ALmを直線補間して振幅A
m (n) を算出すればよい。位相θm (n) は、n=0でθ
m (0) =φ0mからn=Lでθm (L) がφLmとなるように
Δωを設定する。
【0117】次に、n=0のときV(有声音)で、n=
LのときUV(無声音)とされる場合に、振幅Am (n)
は、Am (0) の伝送振幅値A0mからAm (L) で0となる
ように直線補間する。n=Lでの伝送振幅値ALmは無声
音の振幅値であり、後述する無声音合成の際に用いられ
る。位相θm (n) は、θm (0) =φ0mとし、かつΔω=
0とする。
【0118】さらに、n=0のときUV(無声音)で、
n=LのときV(有声音)とされる場合には、振幅Am
(n) は、n=0での振幅Am (0) を0とし、n=Lで伝
送された振幅値ALmとなるように直線補間する。位相θ
m (n) については、n=0での位相θm (0) として、フ
レーム終端での位相値φLmを用いて、 θm (0) =φLm−m(ωO1+ωL1)L/2 ・・・(18) とし、かつΔω=0とする。
【0119】上記n=0、n=LのいずれもV(有声
音)とされる場合に、θm (L) がφLmとなるようにΔω
を設定する手法について説明する。上記(17)式で、n
=Lと置くことにより、 θm (L) =mωO1L+L2 m(ωL1−ω01)/2L+φ0m+ΔωL =m(ωO1+ωL1)L/2+φ0m+ΔωL =φLm となり、これを整理すると、Δωは、 Δω=(mod2π((φLm−φ0m) − mL(ωO1+ωL1)/2)/L ・・・(19) となる。この(19)式でmod2π(x) とは、xの主値を−
π〜+πの間の値で返す関数である。例えば、x=1.3
πのときmod2π(x) =−0.7π、x=2.3πのときmod2
π(x) =0.3π、x=−1.3πのときmod2π(x) =0.7
π、等である。
【0120】ここで、図17のAは、音声信号のスペク
トルの一例を示しており、バンド番号(ハーモニクスナ
ンバ)mが8、9、10の各バンドがUV(無声音)と
され、他のバンドはV(有声音)とされている。このV
(有声音)のバンドの時間軸信号が上記有声音合成部1
37により合成され、UV(無声音)のバンドの時間軸
信号が無声音合成部138で合成されるわけである。
【0121】以下、無声音合成部138における無声音
合成処理を説明する。ホワイトノイズ発生部142から
の時間軸上のホワイトノイズ信号波形を、所定の長さ
(例えば256サンプル)で適当な窓関数(例えばハミ
ング窓)により窓かけをし、STFT処理部143によ
りSTFT(ショートタームフーリエ変換)処理を施す
ことにより、図17のBに示すようなホワイトノイズの
周波数軸上のパワースペクトルを得る。このSTFT処
理部143からのパワースペクトルをバンド振幅処理部
144に送り、図17のCに示すように、上記UV(無
声音)とされたバンド(例えばm=8、9、10)につ
いて上記振幅|Am UVを乗算し、他のV(有声音)と
されたバンドの振幅を0にする。このバンド振幅処理部
144には上記振幅データ、ピッチデータ、V/UV判
別データが供給されている。バンド振幅処理部144か
らの出力は、ISTFT処理部145に送られ、位相は
元のホワイトノイズの位相を用いて逆STFT処理を施
すことにより時間軸上の信号に変換する。ISTFT処
理部145からの出力は、オーバーラップ加算部146
に送られ、時間軸上で適当な(元の連続的なノイズ波形
を復元できるように)重み付けをしながらオーバーラッ
プ及び加算を繰り返し、連続的な時間軸波形を合成す
る。オーバーラップ加算部146からの出力信号が上記
加算部140に送られる。
【0122】このように、各合成部137、138にお
いて合成されて時間軸上に戻された有声音部及び無声音
部の各信号は、加算部140により適当な固定の混合比
で加算して、出力端子141より再生された音声信号を
取り出す。
【0123】ここで、上述したデコーダ側のビタビ復号
&CRC検出は、以下のような原理である。図18は、
ビタビ復号&CRC検出の原理を説明するための機能ブ
ロック図である。例えば、図18に示すような原理であ
る。先ず、伝送されてきた224ビットを2スロットデ
インターリーブ器151が受信し、デインタリーブす
る。この2スロットデインターリーブ器151の出力を
クラス2とエンコードされているクラス1ビットに分
け、後者を畳込み復号化器152に入力し、復号して、
80ビットのクラス1復号結果を受信7ビットを得る。
次に、80ビットのクラス1復号結果からエンコーダで
計算したのと同じパラメータビットに相当するものから
再びCRCをCRC計算部153により計算し、受信C
RCと比較し、その結果を音声復号器154に出力す
る。
【0124】なお、上記図10の音声分析側(エンコー
ド側)の構成や図16の音声合成側(デコード側)の構
成については、各部をハードウェア的に記載している
が、いわゆるDSP(ディジタル信号プロセッサ)等を
用いてソフトウェアプログラムにより実現することも可
能である。
【0125】なお、本発明は上記実施例のみに限定され
るものではなく、例えば、音声信号のみならず、音響信
号を入力信号として用いることもできる。
【0126】
【発明の効果】以上の説明から明らかなように、本発明
に係るデータ数変換方法によれば、ブロック内で可変個
数のデータを帯域制限型オーバーサンプリングのための
FIRフィルタで、データのサンプル点に対してそれぞ
れ異なる複数の位相と対応した複数の係数セットの内の
一定個数のデータの各位置に対応する係数セットを用い
ることにより、出力として必要な一定個数のデータのみ
を求めるので、必要な点のみを計算する間引かれた演算
が可能となり、積和の演算回数を大幅に減らせる。
【0127】また、他の発明に係るデータ数変換方法に
よれば、ブロック内で可変個数のデータを帯域制限型オ
ーバーサンプリングのためのFIRフィルタで、データ
のサンプル点に対してそれぞれ異なる複数の位相と対応
した複数の係数セットの内の一定個数のデータの各位置
に対応する係数セットを用いることにより、中間的な出
力データを求め、この中間的な出力データを補間して最
終的に必要とされる一定個数のデータを求めるので、必
要な点のみを計算する間引かれた演算が可能となり、積
和の演算回数を大幅に減らせる。
【0128】また、他の発明に係るデータ数変換方法に
よれば、ブロック内で一定個数とされたデータを帯域制
限型オーバーサンプリングのためのFIRフィルタで、
データのサンプル点に対してそれぞれ異なる複数の位相
と対応した複数の係数セットの内のブロック内のデータ
内容に応じた個数のデータの各位置に対応する係数セッ
トを用いることにより、出力として必要なブロック内の
データ内容に応じた個数のデータのみを求めるので、必
要な点のみを計算する間引かれた演算が可能となり、積
和の演算回数を大幅に減らせる。
【0129】また、他の発明に係るデータ数変換方法に
よれば、ブロック内で一定個数とされたデータを帯域制
限型オーバーサンプリングのためのFIRフィルタで、
データのサンプル点に対してそれぞれ異なる複数の位相
と対応した複数の係数セットの内のブロック内のデータ
内容に応じた個数のデータの各位置に対応する係数セッ
トを用いることにより、中間的な出力データを求めるの
で必要な点のみを計算する間引かれた演算が可能とな
り、積和の演算回数を大幅に減らせる。
【図面の簡単な説明】
【図1】本発明に係るデータ数変換方法の第1の実施例
を説明するための概略構成を示すブロック図である。
【図2】データ数変化の一例を説明するための波形図で
ある。
【図3】スペクトルエンベロープの拡張を説明するため
の波形図である。
【図4】FIRフィルタのフィルタ係数を説明するため
の図である。
【図5】図4に示されたフィルタ係数を用い実際に出力
点を求める例を説明するための図である。
【図6】直線補間で使う値の求め方及び直線補間を説明
するための図である。
【図7】直線補間で使う値の求め方を説明するためのフ
ローチャートである。
【図8】直線補間を説明するためのフローチャートであ
る。
【図9】第2の実施例を説明するための図である。
【図10】本発明に係るデータ数変換方法が適用される
装置の具体例としての音声信号の合成分析符号化装置の
分析側(エンコード側)の概略構成を示す機能ブロック
図である。
【図11】窓かけ処理を説明するための図である。
【図12】窓かけ処理と窓関数との関係を説明するため
の図である。
【図13】直交変換(FFT)処理対象としての時間軸
データを示す図である。
【図14】周波数軸上のスペクトルデータ、スペクトル
包絡線(エンベロープ)及び励起信号のパワースペクト
ルを示す図である。
【図15】CRC&畳込み符号を説明するための図であ
る。
【図16】本発明に係るデータ数変換方法が適用される
装置の具体例としての音声信号の合成分析符号化装置の
合成側(デコード側)の概略構成を示す機能ブロック図
である。
【図17】音声信号を合成する際の無声音合成を説明す
るための図である。
【図18】CRC&畳込み復号を説明するための図であ
る。
【符号の説明】
12・・・・・非線形圧縮部 13・・・・・データ個数変換本体部 14・・・・・スペクトルエンベロープ拡張部 15・・・・・帯域制限型FIRフィルタ 16・・・・・直線補間部 103・・・・・ピッチ抽出部 104・・・・・窓かけ処理部 105・・・・・直交変換(FFT)部 106・・・・・高精度(ファイン)ピッチサーチ部 107・・・・・有声音/無声音(V/UV)判別部 108・・・・・振幅再評価部 109・・・・・データ数変換(データレートコンバー
ト)部 110・・・・・ベクトル量子化部 111・・・・・CRC&畳込み符号化部 112・・・・・フレームインターリーブ部

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 ブロック内の波形データ又は波形を表す
    パラメータデータの個数が可変とされたデータをブロッ
    ク毎に一定の個数の基準データと比較するために上記可
    変個数の入力データを上記一定個数に変換する工程を含
    むデータ数変換方法において、 上記可変個数のデータが入力される帯域制限型オーバー
    サンプリングのためのFIRフィルタで、上記入力デー
    タのサンプル点に対してそれぞれ異なる複数の位相と対
    応した複数の係数セットの内の上記一定個数のデータの
    各位置に対応する係数セットを用いることにより、出力
    として必要な上記一定個数のデータのみを求める工程を
    有することを特徴とするデータ数変換方法。
  2. 【請求項2】 ブロック内の波形データ又は波形を表す
    パラメータデータの個数が可変とされたデータをブロッ
    ク毎に一定の個数の基準データと比較するために上記可
    変個数の入力データを上記一定個数に変換する工程を含
    むデータ数変換方法において、 上記可変個数のデータが入力される帯域制限型オーバー
    サンプリングのためのFIRフィルタで、上記入力デー
    タのサンプル点に対してそれぞれ異なる複数の位相と対
    応した複数の係数セットの内の上記一定個数のデータの
    各位置の近傍の位置に対応する係数セットを用いること
    により、中間的な出力データを求める工程と、 上記中間的な出力データを補間して最終出力に必要とさ
    れる一定個数のデータを求める工程とを有することを特
    徴とするデータ数変換方法。
  3. 【請求項3】 ブロック内の波形データ又は波形を表す
    パラメータデータが一定個数とされたデータをブロック
    内のデータ内容に応じた個数のデータに変換するデータ
    数変換方法において、 上記一定個数のデータが入力される帯域制限型オーバー
    サンプリングのためのFIRフィルタで、上記入力デー
    タのサンプル点に対してそれぞれ異なる複数の位相と対
    応した複数の係数セットの内の上記ブロック内のデータ
    内容に応じた個数のデータの各位置に対応する係数セッ
    トを用いることにより、出力として必要な上記ブロック
    内のデータ内容に応じた個数のデータのみを求める工程
    を有することを特徴とするデータ数変換方法。
  4. 【請求項4】 ブロック内の波形データ又は波形を表す
    パラメータデータが一定個数とされたデータをブロック
    内のデータ内容に応じた個数のデータに変換するデータ
    数変換方法において、 上記一定個数のデータが入力される帯域制限型オーバー
    サンプリングのためのFIRフィルタで、上記入力デー
    タのサンプル点に対してそれぞれ異なる複数の位相と対
    応した複数の係数セットの内の上記ブロック内のデータ
    内容に応じた個数のデータの各位置の近傍の位置に対応
    する係数セットを用いることにより、中間的な出力デー
    タを求める工程と、 上記中間的な出力データを補間して最終出力に必要とさ
    れる上記ブロック内のデータ内容に応じた個数のデータ
    を求める工程とを有することを特徴とするデータ数変換
    方法。
JP4223227A 1992-07-30 1992-07-30 データ数変換方法 Pending JPH0651800A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4223227A JPH0651800A (ja) 1992-07-30 1992-07-30 データ数変換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4223227A JPH0651800A (ja) 1992-07-30 1992-07-30 データ数変換方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002306411A Division JP3731575B2 (ja) 2002-10-21 2002-10-21 符号化装置及び復号装置

Publications (1)

Publication Number Publication Date
JPH0651800A true JPH0651800A (ja) 1994-02-25

Family

ID=16794789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4223227A Pending JPH0651800A (ja) 1992-07-30 1992-07-30 データ数変換方法

Country Status (1)

Country Link
JP (1) JPH0651800A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002013182A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Procede de traitement de signaux numeriques, procede d'apprentissage, appareil associe et support de stockage de programmes
WO2002013181A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Procede de traitement de signaux numeriques, procede d'apprentissage, appareils associes, et support de stockage de programmes
WO2002013180A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Traitement de signaux numeriques, systeme d'apprentissage appareil a cet effet et support de stockage de programmes
WO2002017300A1 (fr) * 2000-08-25 2002-02-28 Kabushiki Kaisha Kenwood Procede de reduction de bande de frequence pour reduire des modules de frequence d'un signal et appareil de reduction de bande de frequence
WO2002050814A1 (fr) * 2000-12-07 2002-06-27 Kabushiki Kaisha Kenwood Systeme et procede d'interpolation de signaux
WO2003015080A1 (en) * 2001-08-02 2003-02-20 Matsushita Electric Industrial Co., Ltd. Pitch cycle search range setting device and pitch cycle search device

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6990475B2 (en) 2000-08-02 2006-01-24 Sony Corporation Digital signal processing method, learning method, apparatus thereof and program storage medium
WO2002013181A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Procede de traitement de signaux numeriques, procede d'apprentissage, appareils associes, et support de stockage de programmes
WO2002013180A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Traitement de signaux numeriques, systeme d'apprentissage appareil a cet effet et support de stockage de programmes
WO2002013182A1 (fr) * 2000-08-02 2002-02-14 Sony Corporation Procede de traitement de signaux numeriques, procede d'apprentissage, appareil associe et support de stockage de programmes
US7584008B2 (en) 2000-08-02 2009-09-01 Sony Corporation Digital signal processing method, learning method, apparatuses for them, and program storage medium
US7412384B2 (en) 2000-08-02 2008-08-12 Sony Corporation Digital signal processing method, learning method, apparatuses for them, and program storage medium
US6907413B2 (en) 2000-08-02 2005-06-14 Sony Corporation Digital signal processing method, learning method, apparatuses for them, and program storage medium
WO2002017300A1 (fr) * 2000-08-25 2002-02-28 Kabushiki Kaisha Kenwood Procede de reduction de bande de frequence pour reduire des modules de frequence d'un signal et appareil de reduction de bande de frequence
US7257161B2 (en) 2000-08-25 2007-08-14 Kabushiki Kaisha Kenwood Frequency thinning apparatus for thinning out frequency components of signal and frequency thinning apparatus
WO2002050814A1 (fr) * 2000-12-07 2002-06-27 Kabushiki Kaisha Kenwood Systeme et procede d'interpolation de signaux
US7177802B2 (en) 2001-08-02 2007-02-13 Matsushita Electric Industrial Co., Ltd. Pitch cycle search range setting apparatus and pitch cycle search apparatus
CN100354926C (zh) * 2001-08-02 2007-12-12 松下电器产业株式会社 音调周期搜索装置
CN100354927C (zh) * 2001-08-02 2007-12-12 松下电器产业株式会社 解码自适应声源向量产生装置及其语音解码装置
WO2003015080A1 (en) * 2001-08-02 2003-02-20 Matsushita Electric Industrial Co., Ltd. Pitch cycle search range setting device and pitch cycle search device
US7542898B2 (en) 2001-08-02 2009-06-02 Panasonic Corporation Pitch cycle search range setting apparatus and pitch cycle search apparatus

Similar Documents

Publication Publication Date Title
JP3475446B2 (ja) 符号化方法
KR100348899B1 (ko) 캡스트럼 분석을 이용한 하모닉 노이즈 음성 부호화기 및부호화 방법
JP3483958B2 (ja) 広帯域音声復元装置及び広帯域音声復元方法及び音声伝送システム及び音声伝送方法
JPH06149296A (ja) 音声符号化方法及び復号化方法
JPH10307599A (ja) スプラインを使用する波形補間音声コーディング
JPH10124092A (ja) 音声符号化方法及び装置、並びに可聴信号符号化方法及び装置
JPH0990968A (ja) 音声合成方法
JPH11510274A (ja) 線スペクトル平方根を発生し符号化するための方法と装置
JPH10319996A (ja) 雑音の効率的分解と波形補間における周期信号波形
JP2000155597A (ja) デジタル音声符号器において使用するための音声符号化方法
JP3087814B2 (ja) 音響信号変換符号化装置および復号化装置
JP2779325B2 (ja) ボコーダーにおける前処理の相関関係式を用いたピッチ検索時間短縮方法
JP3297751B2 (ja) データ数変換方法、符号化装置及び復号化装置
JP3237178B2 (ja) 符号化方法及び復号化方法
JPH0651800A (ja) データ数変換方法
JP3297749B2 (ja) 符号化方法
JP3731575B2 (ja) 符号化装置及び復号装置
JP3218679B2 (ja) 高能率符号化方法
US6535847B1 (en) Audio signal processing
JP3362471B2 (ja) 音声信号の符号化方法及び復号化方法
JP3297750B2 (ja) 符号化方法
JP3218681B2 (ja) 背景雑音検出方法及び高能率符号化方法
JP3321933B2 (ja) ピッチ検出方法
JP3218680B2 (ja) 有声音合成方法
JPH05281995A (ja) 音声符号化方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020820