(57)【要約】【課題】分析合成型の音声符号化及び復号において、装置の簡潔さと伝達情報量の少なさとを維持しつつ、再生音声の品質を高める。【解決手段】音声符号化装置１は、入力音声信号に予測分析を施し、予測係数と残差信号とに分解する。予測係数に対する量子化と残差信号に対する特徴量抽出とにより、情報圧縮を図る。特に、残差信号がピッチ的である場合には、例えば、残差信号を構成する標本のうち大きさが顕著なものを所定の個数だけ選択し、かかる標本を再現するに足る情報だけを音声復号装置に送信する。これにより、伝達すべき情報量を削減しつつも、音声復号装置が残差信号を高い精度で復元することができるようにして、再生音声の品質を高めるのに役立てる。【選択図】図１
2008256912.tif 000002
【特許請求の範囲】
【請求項１】
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析部と、
前記残差信号からピッチ長を抽出するピッチ長抽出部と、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出部と、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化部と、
を備える音声符号化装置。
【請求項２】
前記特徴量抽出部は、
前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本から時系列上で後方に前記ピッチ長に相当する範囲内にある残差標本のうちから、残差標本をその絶対値の降順に並べた場合に先頭から所定の順番までに含まれる残差標本である選択残差標本を特定し、該選択残差標本毎に該選択残差標本を前記残差標本最大絶対値により除した値である選択残差標本強度比率と該選択残差標本の前記基準残差標本からの時系列上の距離である選択標本時間位置とを求める、
ことを特徴とし、
前記符号化部は、
前記予測係数と前記ピッチ長と前記選択残差標本強度比率と前記選択標本時間位置とを符号化する、
ことを特徴とする請求項１に記載の音声符号化装置。
【請求項３】
前記特徴量抽出部は、
前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本に対応する時刻を始点とする前記ピッチ長１個に相当する時間帯を所定の個数の区分時間帯に分割し、該区分時間帯毎に最大の絶対値を有する残差標本を特定して該残差標本を前記残差標本最大絶対値により除した値である区分時間別残差標本強度比率を求める、
ことを特徴とし、
前記符号化部は、
前記予測係数と前記ピッチ長と前記区分時間別残差標本強度比率とを符号化する、
ことを特徴とする請求項１に記載の音声符号化装置。
【請求項４】
前記特徴量抽出部は、
前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本に対応する時刻を始点とする前記ピッチ長１個に相当する時間帯を所定の個数の区分時間帯に分割し、該区分時間帯毎に残差標本の平均値を前記残差標本最大絶対値により除した値である区分時間別残差標本強度比率を求める、
ことを特徴とし、
前記符号化部は、
前記予測係数と前記ピッチ長と前記区分時間別残差標本強度比率とを符号化する、
ことを特徴とする請求項１に記載の音声符号化装置。
【請求項５】
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号部と、
前記復号部により復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成部と、
を備える音声復号装置。
【請求項６】
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析ステップと、
前記残差信号からピッチ長を抽出するピッチ長抽出ステップと、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出ステップと、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化ステップと、
から構成される音声符号化方法。
【請求項７】
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号ステップと、
前記復号ステップにより復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成ステップと、
から構成される音声復号方法。
【請求項８】
コンピュータに、
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析ステップと、
前記残差信号からピッチ長を抽出するピッチ長抽出ステップと、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出ステップと、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化ステップと、
を実行させるプログラム。
【請求項９】
コンピュータに、
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号ステップと、
前記復号ステップにより復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分析合成型の音声圧縮復元を実行する際に必要となる、音声符号化装置、音声復号装置、音声符号化方法、音声復号方法、及び、プログラムに関する。
【背景技術】
【０００２】
移動体通信の分野においては、利用者の増加に対処するためや、端末機器を簡素化するためといった理由から、低ビットレートにて音声を効率的に圧縮符号化する方法が求められている。例えば、8kbpsの音声符号化方法として、ITU-T勧告G.729に示される音声符号化方法がある。該勧告に係る音声符号化方法は、基本的には、音声信号を予測分析により予測係数と残差信号とに分解してから送信する方法である。予測分析としては、例えば、線型予測分析や、ＭＬＳＡ（Mel Log Spectrum Approximation）分析（例えば、非特許文献１参照。）が知られている。
【０００３】
【非特許文献１】今井聖著、「音声信号処理」、ＰＯＤ版、森北出版株式会社、２００５年４月、ｐ．１６９−２００
【０００４】
分析合成型の符号化及び復号において上述の低ビットレート通信を可能にするためには、音声符号化装置側から音声復号装置側へ、予測係数と残差信号とに関する情報を、いかに効率的に伝達するか、に、工夫が必要となる。
【０００５】
上述のITU-T勧告G.729に示される音声符号化方法は、かかる工夫のひとつである。確かにこれは、音声符号化装置のユーザの発話内容を、音声復号装置が、そのユーザが理解できる程度の音質で再生することを可能にする。しかし、今日、移動体通信に求められる音質は、単に発話内容が伝達され得る音質にとどまらず、例えば外国語学習のための正確な発音を伝達する用途にも耐え得る等、いっそう高い音質であることが求められている。
【０００６】
なお、送信機である音声符号化装置により生成された残差信号は、受信機である音声復号装置においては音声再生のための励起信号として使われる。つまり、残差信号という用語と励起信号という用語とは、局面によって使い分けがなされるに過ぎず、実体としては同じものを指す。よって、以下では、両用語の区別に拘泥しない場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、上記実情に鑑みてなされたもので、音声圧縮復元技術において、音声符号化装置及び音声復号装置の簡素さと、ビットレートの低さと、を、従来なみに維持しつつも、さらなる高音質を図ることを目指す。
【０００８】
そのために、残差信号を帯域別に扱いつつ残差信号の強度として適切な値を音声符号化装置が求めて音声復号装置に伝達することと、特に励起用の信号がピッチ的な性質を有する場合には、ピッチ長を特徴付ける残差信号標本とともに顕著な大きさを有する他の残差信号標本を選びとり、それらの標本の強度等を伝達することと、により、装置の簡素さ、低ビットレート通信、及び、高音質再生、を同時に達成することのできる、音声符号化装置、音声復号装置、音声符号化方法、音声復号方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、この発明の第１の観点に係る音声符号化装置は、
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析部と、
前記残差信号からピッチ長を抽出するピッチ長抽出部と、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出部と、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化部と、
を備える。
【００１０】
前記音声符号化装置は以下に例示するように、励起用の信号として用いられることになる残差信号がピッチ的な性質を有する場合に、ピッチ長を特徴付ける残差信号標本とともに顕著な大きさを有する他の残差信号標本を選びとり、それらの標本の強度等を符号化して伝達する。これにより、残差信号標本の全てを符号化した場合に比べて、音声符号化装置が音声復号装置に伝達すべき情報量が少なくて済み、低ビットレート通信に向く。また、音声復号装置は、ピッチ長を特徴付ける残差信号標本以外の標本をも参照しつつ励起用の信号を生成することができるため、再生音声は、音声符号化装置に入力された元の音声をより忠実に再現することができる。
【００１１】
例えば前記特徴量抽出部は、前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本から時系列上で後方に前記ピッチ長に相当する範囲内にある残差標本のうちから、残差標本をその絶対値の降順に並べた場合に先頭から所定の順番までに含まれる残差標本である選択残差標本を特定し、該選択残差標本毎に該選択残差標本を前記残差標本最大絶対値により除した値である選択残差標本強度比率と該選択残差標本の前記基準残差標本からの時系列上の距離である選択標本時間位置とを求める、ことを特徴とし、前記符号化部は、前記予測係数と前記ピッチ長と前記選択残差標本強度比率と前記選択標本時間位置とを符号化する、ことを特徴とする。
【００１２】
あるいは例えば、前記特徴量抽出部は、前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本に対応する時刻を始点とする前記ピッチ長１個に相当する時間帯を所定の個数の区分時間帯に分割し、該区分時間帯毎に最大の絶対値を有する残差標本を特定して該残差標本を前記残差標本最大絶対値により除した値である区分時間別残差標本強度比率を求める、ことを特徴とし、前記符号化部は、前記予測係数と前記ピッチ長と前記区分時間別残差標本強度比率とを符号化する、ことを特徴とする。
【００１３】
このようにすると、音声符号化装置と音声復号装置とが、あらかじめ前記区分時間帯の設定の仕方を共有していれば、残差標本の時系列上での位置を前者から後者に伝達する必要がなくなり、低ビットレート通信の達成に資する。次のようにした場合も、同様である。
【００１４】
すなわち例えば、前記特徴量抽出部は、前記残差標本のうち最大の絶対値を有する残差標本である基準残差標本を特定し、該基準残差標本の絶対値である残差標本最大絶対値を求め、該基準残差標本に対応する時刻を始点とする前記ピッチ長１個に相当する時間帯を所定の個数の区分時間帯に分割し、該区分時間帯毎に残差標本の平均値を前記残差標本最大絶対値により除した値である区分時間別残差標本強度比率を求める、ことを特徴とし、前記符号化部は、前記予測係数と前記ピッチ長と前記区分時間別残差標本強度比率とを符号化する、ことを特徴とする。
【００１５】
上記目的を達成するために、この発明の第２の観点に係る音声復号装置は、
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号部と、
前記復号部により復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成部と、
を備える。
【００１６】
上記目的を達成するために、この発明の第３の観点に係る音声符号化方法は、
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析ステップと、
前記残差信号からピッチ長を抽出するピッチ長抽出ステップと、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出ステップと、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化ステップと、
から構成される。
【００１７】
上記目的を達成するために、この発明の第４の観点に係る音声復号方法は、
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号ステップと、
前記復号ステップにより復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成ステップと、
から構成される。
【００１８】
上記目的を達成するために、この発明の第５の観点に係るプログラムは、
コンピュータに、
音声信号を予測係数と残差標本の時系列である残差信号とに分解する予測分析ステップと、
前記残差信号からピッチ長を抽出するピッチ長抽出ステップと、
前記残差標本のうちから所定の基準残差標本を特定し、該基準残差標本から時系列上で後方に所定の範囲内にある残差標本に基づいて前記残差信号を特徴付ける量である特徴量を抽出する特徴量抽出ステップと、
前記予測係数と前記ピッチ長と前記特徴量とを符号化する符号化ステップと、
を実行させる。
【００１９】
上記目的を達成するために、この発明の第６の観点に係るプログラムは、
コンピュータに、
音声信号に予測分析が施されることにより生成された予測係数と、前記音声信号に前記予測分析が施されることにより生成された残差標本の時系列から構成される残差信号の周波数特性と、前記残差標本のうち前記残差信号を特徴付ける標本として選択された残差標本と、が符号化されたものを受け取り復号する復号ステップと、
前記復号ステップにより復号された前記予測係数と前記周波数特性と前記選択された残差標本とに基づき前記予測分析に対応した音声合成を行う合成ステップと、
を実行させる。
【発明の効果】
【００２０】
本発明によれば、分析合成型の音声信号通信において、装置の簡素さ、低ビットレート通信、及び、高音質再生、を同時に達成することができる。
【発明を実施するための最良の形態】
【００２１】
以下では、本発明の実施の形態について説明する。実施形態を順次記述するにあたっては、原則として、同一の部材については同一の符号を付すこととし、また、その説明は省略することがある。
【００２２】
（実施形態１）
図１は、本発明の実施形態１に係る音声符号化装置１の機能構成図である。
【００２３】
音声符号化装置１は、図示するように、マイクロフォン１１と、Ａ／Ｄ変換部１３と、予測分析部１５と、ベクトル正規化部１９と、スカラー量子化部２１と、ベクトル量子化部２３と、合成フィルタ算出部２５と、疑似合成フィルタ部２７と、残差信号特徴量抽出部２９と、残差信号復元試行部３１と、修正因子決定部３３と、符号化部３５と、送信部３７と、を備える。
【００２４】
予測分析部１５は、予測分析用逆フィルタ算出器１７を内蔵している。
【００２５】
マイクロフォン１１に入力されたアナログ入力音声信号は、Ａ／Ｄ変換部１３により、例えば16kHzサンプリングにより、デジタル入力音声信号に変換されてから、予測分析部１５に引き渡される。該デジタル入力信号は、以後、後述の同一メインフレームの中において添字jで識別されるサブフレームという時間長12〜20ms程度の時間区間と、連続したZ個のサブフレームから構成され添字iで識別されるメインフレームという時間区間と、に分けて扱われる。例えばZ=4とするのが好適である。そして、ひとかたまりのデジタル入力信号は、M個のメインフレームから構成されているものとする。
【００２６】
ここで、ひとかたまりのデジタル入力信号とは、以下の説明において、一括的に処理されることが想定される時間長に対応した信号を指す。該時間長は固定長であっても可変長であってもかまわない。換言するとMは固定値でも可変値でもかまわない。該時間長は、後述の音声復号装置２が備える後述の記憶部３１５の記憶容量が許すならば、例えば、音声符号化装置１のユーザが一息で話す時間に合わせてもよい。
【００２７】
しかし、該時間長に基づき一括的な信号処理がなされることから、該時間長は、音声符号化装置１から後述の音声復号装置２への通信に際しての最小時間単位に相当する。すなわち、該時間長は、理想的なリアルタイム通話からの遅延時間の下限を決定する。音声符号化装置１のユーザと後述の音声復号装置２のユーザとにとっては、できるだけリアルタイム通話に近い通話が可能となるような通信が可能となる方が、使い勝手の観点からは望ましいと考えられるので、その点では、後述のＣＰＵ３１１や無線通信部３１７等が動作するに際して過剰な負荷がかかることによりかえって処理速度を低下させてしまわない限度で、該時間長を短くしてもよい。
【００２８】
このように、メインフレームは、理解の便宜上の一括処理の単位という意義を有する。ただし、メインフレームは、他に、より本質的な意義として、後述するように、ベクトル量子化を行うための単位であるという意義を有する。
【００２９】
以下で扱われるデジタル入力信号は、サブフレーム単位では、時間順に、S0、0、・・・、S0、j、・・・、S0、Z-1、S1、0、・・・、Si-1、Z-1、Si、0、・・・、Si、j、・・・Si、Z-1、Si+1、0、・・・、SM-2、Z-1、SM-1、0、・・・、SM-1、Z-1のように、0≦i≦M-1、0≦j≦Z-1、の添字i、jによって表すことにする。
【００３０】
各サブフレームには、サンプルがL個ずつ含まれているとし、iとjとで識別されるサブフレームにおけるサンプルを、時間順に、Si、j={si、j、0、・・・、si、j、t、・・・、si、j、L-1}(0≦t≦L-1)のように表すことにする。
【００３１】
本実施形態においては、発明の理解を容易にするために、通信処理を含めた各種処理の方式として上述のようなひとかたまりの信号に対する一括処理という態様を想定するが、当然のことながら、任意の既知の信号処理方式や通信方式、例えばある処理は一括処理とし別の処理はより細切れの情報単位での処理とする等の方式を採用してもよい。
【００３２】
予測分析部１５は、引き渡されたデジタル音声信号に、N次の予測分析、好ましくはやＭＬＳＡ（Mel Log Spectrum Approximation）分析、を施す。そしてその結果、予測分析部１５は、該デジタル音声信号を、サブフレーム毎に、予測係数と残差信号とに分解する。該分解は、実際には、まず予測分析部１５が各サブフレームについてＭＬＳＡ係数等の予測係数を算出し、次に、該予測係数から、予測分析用逆フィルタ算出器１７が、予測分析用逆フィルタ（図示せず。）を求め、デジタル音声信号が該予測分析用逆フィルタに入力された結果として、残差信号が求まる。
【００３３】
iとjとで識別されるサブフレームにおける予測係数は、次数の昇順に、Ci、j={ci、j、0、・・・、ci、j、k、・・・、ci、j、N-1}(0≦k≦N-1)のように表すことにする。
【００３４】
Nは予測分析の次数であり、上述のようにサンプリングレートとして16kHzサンプリングを採用した場合には、15乃至20とすることが好適である。
【００３５】
iとjとで識別されるサブフレームにおける残差信号は、時間順に、Di、j={di、j、0、・・・、di、j、t、・・・、di、j、L-1}(0≦t≦L-1)のように表すことにする。
【００３６】
なお、このように、予測係数も残差信号も、特定のサブフレームに属するものとして表記するが、実際に予測分析部１５が行う予測分析の計算のための時間区間は、サブフレームよりも長くてもさしつかえない。あるサブフレームに属するものとして表記される予測係数及び残差信号は、あくまでも、該サブフレームを代表する予測係数及び残差信号であればよい。
【００３７】
例えば、あるサブフレームにおける予測分析のために、該サブフレームに対応する時間帯に実際に含まれる信号サンプルデータに加えて、計算上、時系列においてひとつ前のサブフレームの後半に対応する時間帯に実際に含まれる信号サンプルデータと、ひとつ後のサブフレームの前半に対応する時間帯に実際に含まれる信号サンプルデータと、をも用いてもよい。
【００３８】
予測分析部１５により算出された予測係数は、そのままベクトル正規化部１９に引き渡される。
【００３９】
ベクトル正規化部１９は、後にフローチャートを参照して詳しく説明するように、予測係数をメインフレーム毎かつ次数毎にまとめることにより、係数ベクトルを生成する。続いて、該係数ベクトルを、正規化する。ベクトル正規化部１９は、続いて、正規化のために用いたスカラーである係数ベクトル最大絶対値をスカラー量子化部２１に、正規化の結果得られたベクトルである正規化ベクトルをベクトル量子化部２３に、それぞれ引き渡す。
【００４０】
スカラー量子化部２１は、引き渡された係数ベクトル最大絶対値をスカラー量子化することによりスカラー量子化係数ベクトル最大絶対値を求め、合成フィルタ算出部２５と、符号化部３５と、に引き渡す。
【００４１】
ベクトル量子化部２３は、引き渡された正規化係数ベクトルをベクトル量子化することによりベクトル量子化正規化係数ベクトルを求め、合成フィルタ算出部２５と、符号化部３５と、に引き渡す。
【００４２】
合成フィルタ算出部２５は、スカラー量子化部２１から引き渡されたスカラー量子化係数ベクトル最大絶対値を逆スカラー量子化した値を、ベクトル量子化部２３から引き渡されたベクトル量子化正規化係数ベクトルを逆ベクトル量子化したベクトルに乗じることにより、逆量子化係数ベクトルを生成する。合成フィルタ算出部２５は、続いて、逆量子化係数ベクトルの成分を取り出して疑似予測係数を生成し、該疑似予測係数により、疑似合成フィルタ部２７の合成フィルタとしての仕様を定義する。
【００４３】
予測分析部１５により求められた残差信号は、残差信号特徴量抽出部２９に引き渡される。
【００４４】
残差信号特徴量抽出部２９は、引き渡された残差信号から、該残差信号を特徴付ける量である特徴量を抽出し、符号化部３５と残差信号復元試行部３１とに引き渡す。なお、残差信号特徴量抽出部２９の詳細については、後に図面を改めて説明する。
【００４５】
残差信号復元試行部３１は、特徴量を残差信号特徴量抽出部２９から取得するとともに、予測分析部１５が算出した予測係数の一部をも取得した上で、特徴量を手がかりに、予測分析部１５が求めた残差信号にできる限り近い信号を、試行用励起信号として生成する。生成された試行用励起信号は、疑似合成フィルタ部２７への入力信号となる。なお、残差信号復元試行部３１の詳細については、後に図面を改めて説明する。
【００４６】
疑似合成フィルタ部２７は、合成フィルタ算出部２５が生成した疑似予測係数により定義された後、残差信号復元試行部３１が生成した試行用励起信号が入力されることにより、試行用再生音声信号を生成する。
【００４７】
修正因子決定部３３には、修正方針を決定するための基礎データとして、疑似合成フィルタ部２７が生成した試行用再生音声信号と、Ａ／Ｄ変換部１３が求めたデジタル入力音声信号と、が提供される。修正因子決定部３３は、該試行用再生音声信号と該デジタル入力音声信号とを比較して、修正方針を決定する。該修正方針は、本実施形態の場合は、信号強度に関する修正方針であるので、以下では、かかる修正方針全般又は具体的な信号強度値を指して、単に修正強度と呼ぶことにする。修正因子決定部３３は、決定した修正強度を、符号化部３５に引き渡す。
【００４８】
符号化部３５は、スカラー量子化部２１からスカラー量子化係数ベクトル最大絶対値を、ベクトル量子化部２３からベクトル量子化正規化係数ベクトルを、残差信号特徴量抽出部２９から特徴量を、修正因子決定部３３から修正強度を、それぞれ受け取り、これらをまとめて、任意の既知の手法により符号化し、かかる符号化により得られた符号を、送信部３７に引き渡す。
【００４９】
送信部３７は、符号化部３５から引き渡された符号を、後述の音声復号装置２に向けて、送信する。送信方法は、本実施形態においては、無線通信によるものとするが、他の、有線や、有線と無線の併用など、様々な通信方法によるものであってもよい。
【００５０】
図２は、本実施形態に係る音声復号装置２の機能構成図である。
【００５１】
音声復号装置２は、図示するように、受信部６１と、復号部６３と、残差信号復元部６５と、Ｄ／Ａ変換部６７と、スピーカ６９と、を備える。
【００５２】
音声復号装置２は、図中で太枠で示されているとおり、合成フィルタ算出部２５と、疑似合成フィルタ部２７と、をさらに備える。これら、合成フィルタ算出部２５及び疑似合成フィルタ部２７は、それぞれ、音声符号化装置１における、図１の中で太線で示されている合成フィルタ算出部２５及び疑似合成フィルタ部２７と同じものである。
【００５３】
図２に示す音声復号装置２の受信部６１は、図１に示す音声符号化装置１の送信部３７から送信される、スカラー量子化係数ベクトル最大絶対値とベクトル量子化正規化係数ベクトルと特徴量と修正強度とが符号化されたものである符号を受け取り、図２に示す復号部６３に引き渡す。
【００５４】
復号部６３は、受信部から引き渡された符号を、音声符号化装置３の符号化部３５で用いられた符号化方法に対応する復号方法により復号することにより、スカラー量子化係数ベクトル最大絶対値とベクトル量子化正規化係数ベクトルと特徴量と修正強度とを生成する。復号部６３は、これらのうち、スカラー量子化係数ベクトル最大絶対値とベクトル量子化正規化係数ベクトルとを合成フィルタ算出部２５に引き渡し、特徴量と修正強度とを残差信号復元部６５に引き渡す。
【００５５】
合成フィルタ算出部２５は、復号部６３から引き渡されたスカラー量子化係数ベクトル最大絶対値を逆スカラー量子化した値を、同じく復号部６３から引き渡されたベクトル量子化正規化係数ベクトルを逆ベクトル量子化したベクトルに乗じることにより、逆量子化係数ベクトルを生成する。合成フィルタ算出部２５は、続いて、逆量子化係数ベクトルの成分を取り出して疑似予測係数を生成し、該疑似予測係数により、疑似合成フィルタ部２７の合成フィルタとしての仕様を定義する。
【００５６】
残差信号復元部６５は、特徴量と修正強度とを復号部６３から取得するとともに、特徴量を手がかりに、該修正強度を加味しつつ、音声符号化装置１の予測分析部１５が求めた残差信号に近い信号であることが期待される信号を、復号用励起信号として生成する。生成された復号用励起信号は、疑似合成フィルタ部２７への入力信号となる。なお、残差信号復元部６５は、音声符号化装置１の残差信号復元試行部３１に似た動作を行う。この点については、後に、残差信号復元試行部３１の詳細とともに説明する。
【００５７】
疑似合成フィルタ部２７は、合成フィルタ算出部２５が生成した疑似予測係数により定義された後、残差信号復元部６５が生成した復号用励起信号が入力されることにより、デジタル再生音声信号を生成する。
【００５８】
デジタル再生音声信号はＤ／Ａ変換部６７によりアナログ再生音声信号に変換された後、スピーカ６９に送られる。こうして、スピーカ６９からは、復元された音声信号が、人間の耳に聞こえる態様にて発せられる。
【００５９】
図３は、図１の音声符号化装置１の残差信号特徴量抽出部２９の詳細な機能構成を示す図である。
【００６０】
残差信号特徴量抽出部２９は、引き渡された各サブフレームの残差信号Di、j={di、j、0、・・・、di、j、L-1}を、内蔵の総合ピッチ判別部３と、帯域フィルタ部１１５と、標本選択部１４１と、原則的にはピッチ抽出部１１３と、に引き渡す。ただし、ピッチ抽出部１１３にはピッチ抽出用スイッチ部１１１が前置されているため、ピッチ抽出部１１３に対しては、残差信号Di、jが引き渡されるとは限らない。
【００６１】
総合ピッチ判別部３は、残差信号Di、jからピッチを抽出することができるか否かを判別する。該判別には任意の既知の手法を用いてよい。例えば、残差信号Di、jについて、規格化された自己相関関数
CREG(τ)=C(τ)/REG(τ)
（ただし、
C(τ)=di、j、0×di、j、τ+・・・
+di、j、L-1-τ×di、j、L-1
であり、
REG(τ)={(di、j、02＋・・・＋di、j、L-1-τ2)
×(di、j、τ2＋・・・＋di、j、L-12)}0.5
である。）
を計算し、CREG(τ)が例えば0.5よりも大きい極大値を有する場合はピッチを抽出することができると判別し、CREG(τ)が0.5よりも大きい極大値を有しない場合はピッチを抽出することができないと判別する。
【００６２】
総合ピッチ判別部３は、残差信号Di、jからピッチを抽出することができると判別した場合は、ピッチ抽出用スイッチ部１１１に対して、スイッチを閉じるよう、指令を送る。該指令を受けたピッチ抽出用スイッチ部１１１はスイッチを閉じて、残差信号Di、jがピッチ抽出部１１３に送られるようにする。
【００６３】
一方、総合ピッチ判別部３は、残差信号Di、jからピッチを抽出することができないと判別した場合は、ピッチ抽出用スイッチ部１１１に対して、スイッチを開くよう、指令を送る。該指令を受けたピッチ抽出用スイッチ部１１１はスイッチを開いて、残差信号Di、jがピッチ抽出部１１３に送られないようにする。
【００６４】
ピッチ抽出部１１３は、残差信号Di、jが送られてきた場合には、該残差信号Di、jのピッチ長Pi、jを求める。ピッチ抽出部１１３に残差信号が送られてきたということは、ピッチ抽出用スイッチ部１１１のスイッチの開閉を指示する総合ピッチ判別部５が、該残差信号からピッチを抽出することができると判別したということである。したがって、ピッチ抽出部１１３は、送られてきた残差信号のピッチ長を求めることができるはずである。一方、ピッチ抽出部１１３は、残差信号Di、jが送られてこなかった場合には、何もしない。
【００６５】
ピッチ抽出部１１３が残差信号Di、jのピッチ長Pi、jを求めるためには、任意の既知の手法を用いてよい。もっとも、総合ピッチ判別部３が上述の規格化された自己相関関数CREG(τ)を用いてピッチを抽出することができるか否かを判別した場合には、該判別の過程でCREG(τ)の所定の極大値を与えるτの値が副産物として容易に求まる。かつ、かかるτの値は、CREG(τ)の定義に鑑みれば、ピッチ長の値に相当すると考えられる。よって、ピッチ抽出部１１３は、総合ピッチ判別部５からかかるτの値を取得し、それをそのままピッチ長Pi、jとするのが簡易である。
【００６６】
ピッチ抽出部１１３は、ピッチ長を求めた場合には、該ピッチ長を帯域別強度決定部１３１と標本選択部１４１とに引き渡す。
【００６７】
帯域フィルタ部１１５は、内蔵の第１帯域フィルタ１１７、第２帯域フィルタ１１９、第３帯域フィルタ１２１、・・・を用いて、各サブフレームの残差信号Di、jを、帯域毎の残差信号に分割する。帯域フィルタ部１１５は、例えば、残差信号を帯域１乃至８に分割し、帯域１を0〜1kHz、帯域２を1〜2kHz、帯域３を2〜3kHz、帯域４を3〜4kHz、帯域５を4〜5kHz、帯域６を5kHz〜6kHz、帯域７を6kHz〜7kHz、帯域８を7kHz〜8kHz、とするのが好適である。
【００６８】
残差信号Di、jが第１帯域フィルタ１１７に通されることにより帯域１の帯域別残差信号Di、j、1={di、j、1、0、・・・、di、j、1、L-1}が生成され、残差信号Di、jが第２帯域フィルタ１１９に通されることにより帯域２の帯域別残差信号Di、j、2={di、j、2、0、・・・、di、j、2、L-1}が生成され、残差信号Di、jが第３帯域フィルタ１２１に通されることにより帯域３の帯域別残差信号Di、j、3={di、j、3、0、・・・、di、j、3、L-1}が生成され、以下、同様である。
【００６９】
このように、帯域フィルタ部１１５は、ここでは、帯域別残差信号生成部として機能する。
【００７０】
帯域識別のための変数をωと表記することにする。例えば、第１帯域フィルタ１１７により生成される信号はω=1の帯域の信号であるとし、第２帯域フィルタ１１９により生成される信号はω=2の帯域の信号であるとする。また、ωの最大値をωMaxとする。1≦ω≦ωMaxとなる。
【００７１】
生成された帯域１の帯域別残差信号Di、j、1は、帯域別雑音判別部１２３の中の第１帯域雑音判別器１２５と、帯域別強度決定部１３１の中の第１帯域強度算出器１３３と、に引き渡され、生成された帯域２の帯域別残差信号Di、j、2は、帯域別雑音判別部１２３の中の第２帯域雑音判別器１２７と、帯域別強度決定部１３１の中の第２帯域強度算出器１３５と、に引き渡され、以下、同様である。
【００７２】
第１帯域雑音判別器１２５は、帯域１の帯域別残差信号Di、j、1が雑音であるか否かを判別し、該判別結果をフラグ生成部１２９に伝える。第２帯域雑音判別器１２７は、帯域２の帯域別残差信号Di、j、2が雑音であるか否かを判別し、該判別結果をフラグ生成部１２９に伝える。以下、同様である。
【００７３】
第ω帯域雑音判別器は、任意の既知の手法により、帯域ωの帯域別残差信号Di、j、ω={di、j、ω、0、・・・、di、j、ω、L-1}が雑音であるか否かを判別する。例えば、上で、総合ピッチ判別部３が残差信号Di、jからピッチを抽出することができるか否かを判別するために用いる手法の例として挙げた、規格化された自己相関関数を計算することによる手法を用いるのが好適である。
【００７４】
すなわち、残差信号Di、j、ωについて、規格化された自己相関関数
CREG、ω(τ)=Cω(τ)/REGω(τ)
（ただし、
Cω(τ)=di、j、ω、0×di、j、ω、τ+・・・
+di、j、ω、L-1-τ×di、j、ω、L-1
であり、
REGω(τ)={(di、j、ω、02＋・・・＋di、j、ω、L-1-τ2)
×(di、j、ω、τ2＋・・・＋di、j、ω、L-12)}0.5
である。）
を計算し、CREG、ω(τ)が例えば0.5よりも大きい極大値を有する場合はピッチを抽出することができるとして雑音ではないと判別し、CREG、ω(τ)が0.5よりも大きい極大値を有しない場合はピッチを抽出することができないとして雑音であると判別する。
【００７５】
フラグ生成部１２９は、帯域別雑音判別部１２３から、帯域１についての雑音か否かの判別結果と、帯域２についての雑音か否かの判別結果と、・・・、帯域ωについての雑音か否かの判別結果と、・・・、帯域ωMaxについての雑音か否かの判別結果と、を伝えられる。フラグ生成部１２９は、これら各帯域についての判別結果を反映した各帯域についてのフラグを生成する。換言すれば、フラグをみれば該フラグが対応する帯域の帯域別残差信号が雑音であると判別されたか否かが分かるようなフラグを生成する。
【００７６】
帯域別強度決定部１３１には、各帯域の帯域別残差信号Di、j、ωが帯域フィルタ部１１５から引き渡され、さらに、総合ピッチ判別部５が残差信号からピッチを抽出することができると判別した場合にはピッチ抽出部１１３からピッチ長Pi、jが引き渡される。
【００７７】
帯域別強度決定部１３１の中の第１帯域強度算出器１３３は、帯域１の帯域別残差信号Di、j、1の強度を算出する。第２帯域強度算出器１３５は、帯域２の帯域別残差信号Di、j、2の強度を算出する。以下、同様である。第ω帯域強度算出器が帯域ωの帯域別残差信号Di、j、ωの強度を算出するには、任意の既知の手法を用いてよいが、例えば、次のような手法が好適である。
【００７８】
まず、所定の時間にわたり帯域別残差信号の2乗を時間積分した後、その平方根を、帯域別絶対強度Hi、j、ωとする。帯域別残差信号Di、j、ωはDi、j、ω={di、j、ω、0、・・・、di、j、ω、L-1}なるデジタル信号であるので、具体的には、積分は和で代用されて、
Hi、j、ω=sqrt(di、j、ω、02+・・・+di、j、ω、Y-12)
のように計算される。ただし、記号sqrtは平方根を意味する。
【００７９】
また、Yは、帯域別強度決定部１３１にピッチ抽出部１１３からピッチ長Pi、jが送られていない場合には、できるだけ長い範囲で積分したほうが正確な強度が得られると期待されるため、Y=Lとするのが好適である。
【００８０】
それに対して、ピッチ長Pi、jが送られている場合には、総合ピッチ判別部３が、残差信号Di、jが全体としてピッチ的な性質を有すると判別したということであるから、位相のずれに起因する誤差を生じさせずに正確な強度を得るには、時間積分を行う時間長をピッチ長Pi、jの整数倍にするのが適切である。そしてさらに、この場合にも、できるだけ長い範囲で積分したほうが正確な強度が得られると期待されるため、
m×Pi、j≦L-1＜(m+1)×Pi、j
なる整数mを求め、Y= m×Pi、j+1とするのが好適である。
【００８１】
帯域別絶対強度H i、j、ωは、後にフローチャートを用いて説明するように、サブフレーム毎に相対強度に変換される。以下では、この相対強度を、単に帯域別強度h i、j、ωと呼ぶ。
【００８２】
標本選択部１４１は、ピッチ抽出用スイッチ１１１のスイッチが閉じた場合、すなわち、総合ピッチ判別部３がピッチ長を求めることができると判別しピッチ抽出部１１３がピッチ長Pi、jを求めた場合、に動作し、そうでない場合は何もしない。
【００８３】
標本選択部１４１は、動作する場合には、引き渡された残差信号Di、jとピッチ長Pi、jとに基づき、該残差信号に含まれる標本di、j、0、・・・、di、j、L-1のうち、所定の条件に従って残差信号を特徴付ける標本を選択し、該標本がどれであるかを図２の音声復号装置２が判別することができるような情報を、標本選択情報として出力する。
【００８４】
つまり、音声復号装置２が励起用の信号として用いることになる残差信号がピッチ的な性質を有する場合には、図１の音声符号化装置１の残差信号特徴量抽出部２９は、内蔵の標本選択部１４１により、ピッチ長Pi、jを特徴付ける残差信号標本以外に、例えば顕著な大きさを有する等、残差信号を特徴付けると考えられる残差信号標本をいくつか選びとる。
【００８５】
これらの標本の強度等は、符号化部３５により符号化され、送信部３７により図２の音声復号装置に伝達される。
【００８６】
これにより、残差信号標本の全てを符号化した場合に比べて、音声符号化装置が音声復号装置に伝達すべき情報量が少なくて済み、低ビットレート通信に向く。また、音声復号装置は、ピッチ長を特徴付ける残差信号標本以外の標本をも参照しつつ励起用の信号を生成することができるため、再生音声は、音声符号化装置に入力された元の音声をより忠実に再現することができる。
【００８７】
残差信号を特徴付ける標本を選択する際の前記所定の条件については、後に図を改めて説明する。
【００８８】
結局、残差信号特徴量抽出部２９は、内蔵のフラグ生成部１２９が生成した各帯域についてのフラグと、同じく内蔵の帯域別強度決定部１３１が求めた各帯域の帯域別強度h i、j、ωと、を、残差信号特徴量として出力する。残差信号特徴量抽出部２９は、ピッチ抽出部１１３がピッチ長Pi、jを求めた場合には、該ピッチ長及び標本選択情報も含めて、特徴量として出力する。
【００８９】
このように、残差信号を帯域別に扱うことにより、各帯域における帯域別残差信号の特徴の違いに応じた符号化がなされるため、復号して再生した音声の品質が向上する。また、かかる特徴は、おおまかには、雑音的であるか否かという単純な判別結果を示すフラグにより表されるので、音声符号化及び音声復号方式の簡素さは維持される。
【００９０】
換言すれば、残差信号の帯域別の特徴をおおまかに雑音的であるか否かという点から捉えるために、音声符号化装置１は簡素なもので済む。一方、音声復号に際しては、雑音パルス列及びピッチパルス列の生成手段と帯域分割手段があれば、全ての帯域の帯域別残差信号の復元が可能になり、簡素でありながらも、残差信号を帯域別に扱ったことによる音声品質の向上が期待される。
【００９１】
図４は、図１の音声符号化装置１の残差信号復元試行部３１の詳細な機能構成を示す図である。
【００９２】
残差信号復元試行部３１は、各帯域についてのフラグと、各帯域の帯域別強度h i、j、ωと、を、特徴量として、残差信号特徴量抽出部２９（図１、図３）から受け取る。残差信号復元試行部３１は、残差信号特徴量にピッチ長Pi、j及び標本選択情報が含まれていた場合には、該ピッチ長及び該標本選択情報も受け取る。
【００９３】
残差信号復元試行部３１の中のピッチパルス列生成部４は、残差信号特徴量にピッチ長Pi、j及び標本選択情報が含まれていた場合には、該ピッチ長及び該標本選択情報に基づいてピッチパルス列を生成し、帯域フィルタ部１１５に引き渡す。一方、残差信号特徴量にピッチ長Pi、jも標本選択情報も含まれていない場合には、何もしない。
【００９４】
ピッチパルス列４がピッチ長Pi、j及び該標本選択情報に基づいてどのようにピッチパルス列を生成するかについては、後に図を改めて説明する。
【００９５】
図４においてピッチパルス列生成部４の下に描かれた帯域フィルタ部１１５は、上述の、図３に示された帯域フィルタ部１１５と同じ機能を有する。ただし、ピッチパルス列生成部４の下に描かれた帯域フィルタ部１１５は、ピッチパルス列生成部４から引き渡されたピッチパルス列を帯域分割して帯域別ピッチパルス列を生成することを目的とする。つまり、ピッチパルス列生成部４の下に描かれた帯域フィルタ部１１５は、帯域別ピッチパルス列生成部として機能する。
【００９６】
生成された各帯域の帯域別ピッチパルス列は、帯域別試行用励起信号生成部２２１に引き渡される。帯域別試行用励起信号生成部２２１は第１帯域別試行用励起信号生成器２２３と、第２帯域別試行用励起信号生成器２２５と、・・・、第ω帯域別試行用励起信号生成器（図示せず。）と、・・・、第ωMax帯域別試行用励起信号生成器（図示せず。）と、を内蔵している。第１帯域別試行用励起信号生成器２２３は、帯域１の帯域別ピッチパルス列を受け取る。第２帯域別試行用励起信号生成器２２５は、帯域２の帯域別ピッチパルス列を受け取る。以下、同様である。
【００９７】
残差信号復元試行部３１の中の雑音パルス列生成部２１１は、雑音パルス列を生成し、帯域フィルタ部１１５に引き渡す。
【００９８】
図４において雑音パルス列生成部２１１の下に描かれた帯域フィルタ部１１５は、上述の、図３に示された帯域フィルタ部１１５及び図４においてピッチパルス列生成部４の下に描かれた帯域フィルタ部１１５と同じ機能を有する。ただし、雑音パルス列生成部２１１の下に描かれた帯域フィルタ部１１５は、雑音パルス列生成部２１１から引き渡された雑音パルス列を帯域分割して帯域別雑音パルス列を生成することを目的とする。つまり、雑音パルス列生成部２１１の下に描かれた帯域フィルタ部１１５は、帯域別雑音パルス列生成部として機能する。
【００９９】
生成された各帯域の帯域別雑音パルス列は、帯域別試行用励起信号生成部２２１に引き渡される。帯域別試行用励起信号生成部２２１の中の第１帯域別試行用励起信号生成器２２３は、帯域１の帯域別雑音パルス列を受け取る。帯域別試行用励起信号生成部２２１の中の第２帯域別試行用励起信号生成器２２５は、帯域２の帯域別雑音パルス列を受け取る。以下、同様である。
【０１００】
特徴量として残差信号復元試行部３１に引き渡された各帯域の帯域別残差信号の強度と、各帯域についてのフラグと、は、帯域別試行用励起信号生成部２２１に送られる。その際、帯域１における帯域別残差信号の強度及び帯域１についてのフラグは、帯域別試行用励起信号生成部２２１の中の第１帯域別試行用励起信号生成器２２３に送られる。帯域２における帯域別残差信号の強度及び帯域２についてのフラグは、帯域別試行用励起信号生成部２２１の中の第２帯域別試行用励起信号生成器２２５に送られる。以下、同様である。
【０１０１】
結局、帯域別試行用励起信号生成部２２３の中の第ω帯域別試行用励起信号生成器には、帯域ωについてのフラグと、帯域ωにおける帯域別残差信号の強度と、帯域ωの帯域別雑音パルス列と、が引き渡され、さらに、特徴量にピッチ長が含まれていた場合には、帯域ωの帯域別ピッチパルス列も引き渡される。第ω帯域別試行用励起信号生成器は、これら3乃至4種類の情報から、試行用励起信号の帯域ωの成分としてふさわしいことが期待される信号である、帯域ωの帯域別試行用励起信号を生成する。
【０１０２】
かかる生成過程の詳細については、後にフローチャートを参照しつつ述べる。概略としては、第ω帯域別試行用励起信号生成器は、帯域ωについてのフラグが、帯域ωの帯域別残差信号が雑音的性質を有することを示している場合には、生成される信号も雑音的性質を有することが適切であるから、帯域ωの帯域別雑音パルス列に帯域ωにおける残差信号の強度を乗じることにより、目的の信号を生成する。一方、帯域ωについてのフラグが、帯域ωの帯域別残差信号が雑音的性質を有していないことを示している場合には、生成される信号も雑音的性質を有さないことが適切であるから、第ω帯域別試行用励起信号生成器は、帯域ωの帯域別ピッチパルス列に帯域ωにおける残差信号の強度を乗じることにより、目的の信号を生成する。
【０１０３】
ただし、たとえフラグがその対応する帯域に雑音的性質のないことを示唆している場合でも、残差信号特徴量にピッチ長が含まれていなかったときには、残差信号復元試行部３１においてはピッチパルス列はもちろんのこと帯域別ピッチパルス列も生成されないので、雑音的性質を有さない目的信号を作りようがない点には、注意が必要である。もっとも、これは、全体としての残差信号には周期性がないにもかかわらず、帯域別残差信号のうちには周期性があるものが存在するという、原理的には生じにくい事態であって、単に計算上の例外処理を適切に整えておく必要があるということにすぎないともいえる。
【０１０４】
なお、後に詳しく述べる信号生成過程から明らかなように、帯域別雑音パルス列、帯域別ピッチパルス列、及び、帯域毎の残差信号の強度は、いずれもある種の規格化を施されており、これらに対して相互に乗算等の操作を行っても、ある種の相対値を求めることしかできない。
【０１０５】
ところが、本実施形態においては、信号の絶対的な値を扱うことが重要である。そのため、帯域別試行用励起信号生成部２２１は、基準となる特定の値を上述の相対値に乗じて、各帯域の帯域別試行用励起信号を生成する必要がある。後に修正因子決定部３３によるフィードバックがかかるので、この基準となる特定の値は、厳密に決定する必要はない。よって、経験則に基づいてあらかじめ所定の固定値を決めておいてもよいが、帯域別試行用励起信号生成部２２１は、かかる基準となる特定の値を、図１の点線矢印及び図４の点線矢印で表されるように、予測分析部１５が求めた予測係数の一部を手がかりにして、決定することが、より好適である。この具体的な方法については、後に説明する。
【０１０６】
帯域別試行用励起信号生成部２２１が生成した各帯域の帯域別試行用励起信号は、試行用励起信号生成部２２７に引き渡される。試行用励起信号生成部２２７は、引き渡された帯域別試行用励起信号を重ね合わせることにより、試行用励起信号を生成し、該信号を出力する。
【０１０７】
音声復号装置２が備える残差信号復元部６５（図２）は、以上のように図４を参照して説明した残差信号復元試行部３１に酷似している。いずれも特徴量から励起用信号を生成するという共通した目的を有するからである。ただし、残差信号復元試行部６５は、修正因子決定部３３（図１）が決定した修正強度を受け取り、それを反映しつつ励起用の信号を生成する。よって、予測分析部１５（図１）が求めた残差信号に対して、残差信号復元部６５が出力する信号は、残差信号復元試行部３１が出力する信号に比べてよりよく近似した信号となる。また、残差信号復元部６５においては、サブフレーム間で信号強度にスムージング処理が施される。残差信号復元試行部６５の動作の詳細については後述する。
【０１０８】
ここまで機能構成図である図１乃至図４を参照して説明してきた本実施形態に係る音声符号化装置１及び音声復号装置２は、物理的には、ユーザにとっての使い勝手の良さを考慮して、両装置の機能を統合した、本実施形態に係る音声符号化兼復号装置５により実現される。
【０１０９】
図５は、本実施形態に係る音声符号化兼復号装置５を示したものである。音声符号化兼復号装置５としては、例えば、携帯電話機が想定される。
【０１１０】
音声符号化兼復号装置５は、図１で既に示してあるマイクロフォン１１と、図２で既に示してあるスピーカ６９と、を備える。該装置は、アンテナ３２５と、操作キー３２７と、をさらに備える。該装置は、システムバス３２３により相互に接続された、ＣＰＵ（Central Processing Unit）３１１と、ＲＯＭ（Read Only Memory）３１３と、記憶部３１５と、音声処理部３１９と、無線通信部３１７と、操作キー入力処理部３２１と、をさらに備える。記憶部３１５は、例えば、ＲＡＭ（Random Access Memory）３２９と、ハードディスク３３１と、を備える。
【０１１１】
ＲＯＭ３１３には、音声符号化及び復号のための動作プログラムが格納されている。また、ベクトル量子化に必要な代表ベクトルの初期セット等、前記動作プログラムの中で参照されることになっている各種データも格納されている。
【０１１２】
ＣＰＵ３１１は、該動作プログラムに従って動作する。そして、ＣＰＵ３１１は、内蔵のレジスタ（図示せず。）と記憶部３１５との間で適宜データのやりとりを行いながら、数値演算により、音声符号化兼復号装置５に、図１に示す音声符号化装置１及び図２に示す音声復号装置２としての機能を発揮させる。ＣＰＵ３１１は、その際、必要に応じて音声処理部３１９、無線通信部３１７、操作キー入力処理部３２１とデータのやりとりを行う。
【０１１３】
図５の音声処理部３１９は、図１のＡ／Ｄ変換部１３及び図２のＤ／Ａ変換部６７として動作することができる。無線通信部３１７は、図１の送信部３７及び図２の受信部６１として動作することができる。符号の送受信は、基本的には、図５のアンテナ３２５を用いた無線通信により行われるが、別の方法、例えば有線通信により行われてもよい。操作キー入力処理部３２１は、操作キー３２７からの操作信号を受け付けて、操作信号に対応するキーコード信号をＣＰＵ３１１に伝達する。操作キー３２７は、通信の相手方となる音声符号化兼復号装置５を特定する、つまり例えば携帯電話の場合であればいわゆる電話番号を入力するのに使われる他、基本的には設定済みの各種事項をユーザの好みに応じて変化させるために用いられてもよい。
【０１１４】
（量子化について）
本実施形態に係る音声符号化装置１（図１）は、予測係数を量子化することにより、音声復号装置２（図２）に伝達すべき情報量を減少させ低ビットレート通信を実現する一助とする。本実施形態においては、量子化には図１のスカラー量子化部２１によるスカラー量子化とベクトル量子化部２３によるベクトル量子化とが併用される。以下では、かかる量子化が、本実施形態ではどのように行われるかを説明する。
【０１１５】
本実施形態においては、本来スカラーである予測係数をいくつか集めて、各予測係数を成分とするベクトルを構成した後に、ベクトル量子化を行う。ただし、そのように構成されたベクトルを直接にベクトル量子化するのではなく、ベクトル正規化過程を挿入して、スカラー量子化に供される値を抜き取る。このように両種の量子化を組み合わせることにより、量子化の効率が向上する。
【０１１６】
図６（ａ）は、予測係数の時系列を表にまとめたものである。既に述べたように、メインフレームは添字iで識別され、同一メインフレーム内のサブフレームは添字jで識別される。各メインフレームには0、・・・j、・・・、Z-1という番号が付けられたZ個のサブフレームが含まれる。i番のメインフレームの中のj番のサブフレームの残差信号についての予測係数Ci、jは、既に述べたように、また、図６（ａ）では各列として示されているとおり、Ci、j={ci、j、0、・・・、ci、j、k、・・・、ci、j、N-1}(0≦k≦N-1)という0乃至N-1次の予測係数の集まりである。
【０１１７】
ここで、同一のメインフレームに含まれ、かつ、次数が共通する、合計Z個の予測係数を成分として、係数ベクトルを構成する。すなわち、図６（ａ）に点線の枠で囲んで示すように、係数ベクトルはメインフレームを表す添字iと次数を表す添字kとで特定されるのでVi、kと表記することにすれば、その成分は、
Vi、k ={ ci、0、k、・・・、ci、j、k、・・・、ci、Z-1、k}となる。
【０１１８】
つまり、サブフレームが予測分析に対応した時間区間を意味するのに対して、メインフレームは係数ベクトルを構成する時間区間を意味する。
【０１１９】
このように構成された係数ベクトルVi、kは、Z次元空間において、模式的には図６（ｂ）のように表される。具体的なベクトル量子化の手法は様々であり、本実施形態においては任意の既知の手法を用いてよい。どの手法においても、原理的には、それぞれに番号が割り当てられた、有限個の代表ベクトルのセットを用意しておき、与えられたベクトルを、それに最も近い代表ベクトル又はそれらの線形結合で近似することとし、該与えられたベクトルを、該代表ベクトルに割り当てられた番号に変換する等する。取り扱いの便宜上、番号はテーブルとしてまとめられることが多い。
【０１２０】
例えば図６（ｂ）では、図示された係数ベクトルVi、kは、代表ベクトルのうち、点線で表されたベクトルに近いとする。このとき、この点線で表されたベクトルが、量子化係数ベクトルq[V]i、kである。また、Vi、kとq[V]i、kとの差分は、ベクトル量子化によって省略された情報であるといえる。
【０１２１】
なお、上述のとおり、係数ベクトルは、ベクトル量子化を施されるとテーブルにまとめられる。よって、量子化係数ベクトルは、少なくとも見かけ上は、ベクトルではないともいえる。もっとも、該テーブルに記載された数値に対して、ベクトルとしての意味を与える、すなわち逆量子化を施すと、量子化係数ベクトルq[V]i、kが得られる。よって、無用の混乱を避けるために、以下では、係数ベクトルに量子化を施すことによりテーブルとして得られた結果と、該テーブルに逆量子化を施すことによって得られたベクトルと、を、ともに、量子化係数ベクトルq[V]i、kと呼ぶこととする。
【０１２２】
このように同一次元のフィルタ係数をメインフレームすなわち連続するZ個のサブフレームにわたりまとめて係数ベクトルを構成することが、本実施形態においては、情報圧縮の点で効率が高い。
【０１２３】
この理由は、音声が定常状態にある時間帯では、係数ベクトルVi、kの各成分が相互に近い値となり、このために、音声継続時間全体から得られる係数ベクトルVi、kの分布に大きな偏りが生じるためである。一般に、分布に偏りがあるベクトルの集合に対してベクトル量子化を施すと、情報圧縮効率が良い。
【０１２４】
（予測分析の手順）
以下では、図１の予測分析部１５が行う予測分析について、図７に示すフローチャートを参照しつつ説明する。予測分析としては、例えば、線型予測分析やＭＬＳＡ（Mel Log Spectrum Approximation）分析が知られている。
【０１２５】
記憶部３１５（図５）には、既に、デジタル入力音声信号Si、j={si、j、0、・・・、si、j、L-1}(0≦i≦M-1)が格納されているとする。ＣＰＵ３１１（図５）は、内蔵のカウンタレジスタ（図示せず）をメインフレームカウンタiの格納に用いることとし、初期値として、i=0とする（図７のステップＳ７）。
【０１２６】
ＣＰＵ３１１は、内蔵の別のカウンタレジスタ（図示せず）をサブフレームカウンタjの格納に用いることとし、初期値として、j=0とする（ステップＳ１１１）。
【０１２７】
ＣＰＵ３１１は、内蔵の汎用レジスタ（図示せず）に、記憶部３１５から、入力音声信号Si、j={si、j、0、・・・、si、j、L-1}をロードする（ステップＳ１１３）。
【０１２８】
ＣＰＵ３１１は、入力音声信号Si、jに予測分析を施ることにより、予測係数Ci、j={ ci、j、0、・・・、ci、j、N-1}を計算する（ステップＳ１１５）。Nは予測分析の次数である。予測分析としては、例えば、ＭＬＳＡ分析を採用するのが好適である。
【０１２９】
ＣＰＵ３１１は、計算した予測係数Ci、jを記憶部３１５に格納する（ステップＳ１１７）。
【０１３０】
ＣＰＵ３１１は、任意の既知の手法により、予測係数Ci、jから、予測分析用逆フィルタ係数Inv[Ci、j]を計算する。この逆フィルタ係数Inv[Ci、j]により、予測分析用逆フィルタ１７（図１）が定義される。換言すれば、予測分析用逆フィルタ１７の仕様が定まる、あるいは、該フィルタが生成される（ステップＳ１１９）。
【０１３１】
ＣＰＵ３１１は、入力音声信号Si、jを、定義された前記予測分析用逆フィルタ１７に通すことに相当する計算を行うことにより、残差信号Di、j={di、j、0、・・・、di、j、L-1}を求める（ステップＳ１２１）。
【０１３２】
ＣＰＵ３１１は、求めた残差信号Di、jを記憶部３１５に格納する（ステップＳ１２３）。
【０１３３】
ＣＰＵ３１１は、サブフレームカウンタjがZ-1に達しているか否かを判別する（ステップＳ１２５）。達していると判別された場合は（ステップＳ１２５；Ｙｅｓ）、ステップＳ１２９に進む。一方、達していないと判別された場合は（ステップＳ１２５；Ｎｏ）、同じメインフレームの中の次のサブフレームの入力音声信号についての処理を行うために、jを1増加してから（ステップＳ１２７）、ステップＳ１１３以降の処理を繰り返す。
【０１３４】
ステップＳ１２９では、ＣＰＵ３１１は、メインフレームカウンタiがM-1に達しているか否かを判別する。達していると判別された場合は（ステップＳ１２９；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ１２９；Ｎｏ）、次のメインフレームの入力音声信号についての処理を行うために、iを1増加してから（ステップＳ１３１）、ステップＳ１１１以降の処理を繰り返す。
【０１３５】
（ベクトル量子化の手順）
以下では、図１のベクトル正規化部１９、スカラー量子化部２１、及び、ベクトル量子化部２３が行う、ベクトル正規化とスカラー量子化とベクトル量子化の手順を、図８に示すフローチャートを参照しつつ説明する。
【０１３６】
予測係数Ci、j(0≦i≦M-1、0≦j≦Z-1)は、既に、図６に示されるように係数ベクトルVi、k(0≦i≦M-1、0≦k≦N-1)としてまとめられ、記憶部３１５に格納されているものとする。
【０１３７】
ＣＰＵ３１１は、メインフレームカウンタiを、i=0に設定する（ステップＳ８）。
【０１３８】
ＣＰＵ３１１は、次数カウンタkを、k=0に設定する（ステップＳ１６１）。
【０１３９】
ＣＰＵ３１１は、係数ベクトルVi、k={ci、0、k、・・・、ci、Z-1、k}を記憶部３１５からレジスタにロードし（ステップＳ１６３）、ci、0、k、・・・、ci、Z-1、kのうちから、絶対値が最大のものを特定し、該絶対値を係数ベクトル最大絶対値Max[c]i、kとする（ステップＳ１６５）。
【０１４０】
ＣＰＵ３１１は、係数ベクトル最大絶対値Max[c]i、kを任意の既知の手法によりスカラー量子化し（ステップＳ１６７）、その結果得られたスカラー量子化係数ベクトル最大絶対値q[Max[c]]i、kを記憶部３１５に格納する（ステップＳ１６９）。
【０１４１】
ＣＰＵ３１１は、係数ベクトルVi、kと係数ベクトル最大絶対値Max[c]i、kとから、正規化係数ベクトルn[c]i、k={n[c]i、0、k、・・・、n[c]i、Z-1、k}を、n[c]i、k={ ci、0、k/Max[c]i、k、・・・、ci、Z-1、k/Max[c]i、k}のように計算して求める（ステップＳ１７１）。
【０１４２】
ＣＰＵ３１１は、任意の既知の手法により、正規化係数ベクトルn[c]i、kをベクトル量子化し（ステップＳ１７３）、その結果得られたベクトル量子化係数ベクトルq[n[c]]i、k={q[n[c]]i、0、k、・・・、q[n[c]]i、Z-1、k}を記憶部３１５に格納する（ステップＳ１７５）。
【０１４３】
ＣＰＵ３１１は、kがN-1に達したか否かを判別する（ステップＳ１７７）。達したと判別された場合は（ステップＳ１７７；Ｙｅｓ）、ステップＳ１８１に進む。達していないと判別された場合は（ステップＳ１７７；Ｎｏ）、kを1増加してから（ステップＳ１７９）、ステップＳ１６３に戻る。
【０１４４】
ステップＳ１８１では、ＣＰＵ３１１は、iがM-1に達したか否かを判別する。達したと判別された場合は（ステップＳ１８１；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ１８１；Ｎｏ）、iを1増加してから（ステップＳ１８３）、ステップＳ１６１に戻る。
【０１４５】
（残差信号から特徴量を生成する手順）
以下では、本実施形態に係る音声符号化装置２において、図１及び図３に示す残差信号特徴量抽出部２９が行う、残差信号からピッチ長と標本選択情報とフラグと帯域別強度とを生成する手順を、図９に示すフローチャートを参照しつつ説明する。
【０１４６】
なお、前提として、既に残差信号Di、j={di、j、0、・・・、di、j、L-1}(0≦i≦M-1、0≦j≦Z-1)が求められていて、記憶部３１５に格納されているものとする。
【０１４７】
ＣＰＵ３１１は、メインフレームカウンタiを、i=0に設定する（ステップＳ９）。
【０１４８】
ＣＰＵ３１１は、サブフレームカウンタjを、j=0に設定する（ステップＳ２１１）。
【０１４９】
ＣＰＵ３１１は、記憶部３１５からレジスタに、残差信号Di、j={di、j、0、・・・、di、j、L-1}をロードする（ステップＳ２１３）。
【０１５０】
ＣＰＵ３１１は、残差信号Di、jからピッチ長を抽出することができるか否かを判別する（ステップＳ２１５）。該判別には、既に図３を用いて、残差信号特徴量抽出部２９の中の総合ピッチ判別部５について説明したように、例えば、規格化された自己相関関数を用いる。
【０１５１】
ピッチ長を抽出することができると判別された場合は（ステップＳ２１５；Ｙｅｓ）、ＣＰＵ３１１は、ピッチ長Pi、jと標本選択情報とを求める（ステップＳ２１７）。
【０１５２】
ピッチ長Pi、jは、既に図３を用いて、残差信号特徴量抽出部２９の中のピッチ抽出部１１３について説明したように、例えば、総合ピッチ判別部３が規格化された自己相関関数を用いてピッチを抽出することができるか否かを判別した際の副産物として求まる。
【０１５３】
標本選択情報の求め方の一例については、後に図を改めて説明する。
【０１５４】
ＣＰＵ３１１はその後、求めたピッチ長Pi、jと標本選択情報とを記憶部３１５に格納してから（ステップＳ２１９）、ステップＳ２２１に進む。
【０１５５】
一方、ピッチ長を抽出することができないと判別された場合は（ステップＳ２１５；Ｎｏ）、すぐにステップＳ２２１に進む。
【０１５６】
ステップＳ２２１では、ＣＰＵ３２１は、帯域識別変数ωを、ω=1に設定する。
【０１５７】
ＣＰＵ３１１は、帯域別残差信号生成部としての帯域フィルタ部１１５（図３）として機能することにより、帯域ωの帯域別残差信号Di、j、ω={di、j、ω、0、・・・、di、j、ω、L-1}を生成する（図９のステップＳ２２３）。
【０１５８】
ＣＰＵ３１１は、帯域別雑音判別部１２３（図３）及びフラグ生成部１２９として機能することにより、帯域別残差信号Di、j、ωが雑音であるか否かを判別し、その結果を反映した帯域ωについてのフラグFlagi、j、ωを生成し（図９のステップＳ２２５）、記憶部３１５に格納する（ステップＳ２２７）。フラグが変数としてとり得る値は、後に図を改めて説明する。
【０１５９】
ＣＰＵ３１１は、帯域別強度決定部１３１（図３）として機能することにより、帯域別残差信号Di、j、ωの帯域別絶対強度Hi、j、ωを求める（図９のステップＳ２２９）。この求め方については、後に図を改めて説明する。
【０１６０】
ＣＰＵ３１１は、ωがωMaxに達したか否かを判別する（ステップＳ２３１）。
【０１６１】
ωがωMaxに達したと判別された場合には（ステップＳ２３１；Ｙｅｓ）、ステップＳ２３５に進む。ωがωMaxに達していないと判別された場合には（ステップＳ２３１；Ｎｏ）、ωを1増加してから（ステップＳ２３３）、ステップＳ２２３に戻る。
【０１６２】
ステップＳ２３５に達した時点では、サブフレーム内でのωについてのループ処理（ステップＳ２３１、ステップＳ２３３等）が終了しているので、ＣＰＵ３１１は、相対値である帯域別強度hi、j、ωを求めることができる。ＣＰＵ３１１は帯域別強度hi、j、ωを求め（ステップＳ２３５）、記憶部３１５に格納する（ステップＳ２３７）。帯域別強度hi、j、ωの具体的な求め方については、後に図を改めて説明する。
【０１６３】
ＣＰＵ３１１は、jがZ-1に達したか否かを判別する（ステップＳ２３９）。達したと判別された場合には（ステップＳ２３９；Ｙｅｓ）、ステップＳ２４３に進む。達していないと判別された場合には（ステップＳ２３９；Ｎｏ）、jを1増加してから（ステップＳ２４１）、ステップＳ２１３に戻る。
【０１６４】
ステップＳ２４３では、ＣＰＵ３１１は、iがM-1に達したか否かを判別する。達したと判別された場合は（ステップＳ２４３；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ２４３；Ｎｏ）iを1増加してから（ステップＳ２４５）、ステップＳ２１１に戻る。
【０１６５】
図９のステップＳ２１７で行われる、標本選択情報を生成する処理について、図１０に示すフローチャート及び図１１に示す残差信号等の模式図を参照しつつ、説明する。
【０１６６】
図１１（ａ）は、iとjとにより識別されるサブフレームにおける残差信号Di、jの模式図である。該残差信号中の標本di、j、0、・・・、di、j、L-1の値が時系列として示されている。
【０１６７】
ＣＰＵ３１１は、これらの標本di、j、0、・・・、di、j、L-1のうちから、絶対値が最大となる標本である基準残差標本di、j、u(0)を特定する（図１０のステップＳ１０）。
【０１６８】
このように特定された基準残差標本di、j、u(0)から時系列上で後方にピッチ長Pi、jぶんの範囲内にある標本のうちから、残差信号を特徴付けることが期待される標本を選択する。標本が選択され得るかかる範囲のことを、以下では、検索対象区間と呼ぶことにする。
【０１６９】
検索対象区間が確保されるためには、前記基準残差標本di、j、u(0)が、時系列上での最終の標本であるdi、j、L-1からピッチ長Pi、j以上手前に存在する必要がある。すなわち、不等式u(0)≦L-1-Pi、jが満たされる必要がある。そこで、上述のように選択された基準残差標本がこの不等式を満たさない場合には、標本di、j、0、・・・、di、j、L-1のうちから、絶対値が2番目となる標本を基準残差標本di、j、u(0)として特定し直す（図１０のステップＳ９１１）。なお、このように特定し直した基準残差標本もまた前記不等式を満たさない場合には、絶対値が3番目となる標本を基準残差標本として再び特定し直す。以下、同様に、前記不等式が満たされるまで、基準残差標本の決め直しを繰り返す。
【０１７０】
図１１（ｂ）は、図１１（ａ）における検索対象区間を拡大して示したものである。検索対象区間には、標本が、図示するとおり、di、j、u(0)、・・・、di、j、u(0)+Pi、j-1の、合計Pi、j個存在する。
【０１７１】
これらPi、j個の標本からdi、j、u(0)を除いたdi、j、u(0)+1、・・・、di、j、u(0)+Pi、j-1を、任意の既知の手法により絶対値の降順にソートする。そして、先頭からσ番目までの標本di、j、u(1)、・・・、di、j、u(σ)について、u(1)-u(0)とdi、j、u(1)/|di、j、u(0)|、・・・、u(σ)-u(0)とdi、j、u(1)/|di、j、u(0)|を求める（ステップＳ９１３）。
【０１７２】
σは原理的には最大でPi、j-1とすることができる。しかし、標本選択情報を生成する意義は、残差信号を特徴付けることが期待される標本を少数選択して低ビットレート通信に適合させることにある。よって、与えられた情報伝達許容量と達成したい再生音声の品質とを比較衡量して、選択する標本の個数を決定する。
【０１７３】
なお、かかる標本の個数はあらかじめ定めておいてもよいが、必ずしも固定値である必要はない。例えば、図１の符号化部３５がエントロピ符号化等の、情報圧縮率が一定にならない符号化方式を採用している場合には、情報圧縮率がたまたま高くなったために伝達可能容量にゆとりがある時間帯には多数の標本を選択する等、標本の個数を動的に定めるようにしてもよい。
【０１７４】
図１１（ｃ）に示すように、選択された標本の基準残差標本に対する時系列上の相対位置と、該選択された標本を該基準残差標本の絶対値により規格化した値と、が、標本選択情報となり（図１０のステップＳ９１５）、処理は終了する。
【０１７５】
理解を容易にするために、ここで、図２の音声復号装置２が前記標本選択情報に基づいて復号用励起信号を生成する処理の概要を、図１２を参照しつつ説明する。
【０１７６】
図１の音声符号化装置１から標本選択情報を受け取った図２の音声復号装置２は、標本選択情報に上述のとおり選択された標本の基準残差標本に対する相対位置及び相対標本値が含まれていることから、図１２（ａ）に示すように、基準残差標本から開始する１ピッチぶんの信号を生成することができる。
【０１７７】
続いて、音声復号装置２は、図１２（ｂ）に示すように、前記１ピッチ分の信号を時系列上で繰り返し接続することにより、復号用励起信号を生成する。
【０１７８】
なお、このとき同時に、基準残差標本の大きさが後述のようにsqrt（Pi、j）となるような拡大又は縮小を、基準残差標本及び選択された標本に施す。
【０１７９】
図１２（ｃ）は、図１１（ａ）と同じく、元の残差信号を示す模式図である。図１２（ｂ）を図１２（ｃ）と比較すれば明らかなように、復号用励起信号は、定性的には、元の残差信号のうち目立つ標本を少数選択し、それらをピッチ長単位で繰り返すことにより生成される。
【０１８０】
図１３は、図９のステップＳ２２５で行われる、帯域ωについてのフラグFlagi、j、ωを生成する処理を示すフローチャートである。
【０１８１】
ＣＰＵ３１１は、図３の帯域別雑音判別部１２３として機能することにより、帯域ωの帯域別残差信号Di、j、ω={di、j、ω、0、・・・、di、j、ω、L-1}が雑音であるか否かを判別する（ステップＳ１３）。判別のための手法としては、例えば、既に図３の第ω帯域雑音判別器の動作として説明したように、規格化された自己相関関数を計算することによる手法を用いるのが好適である。
【０１８２】
雑音であると判別された場合は（ステップＳ１３；Ｙｅｓ）、ＣＰＵ３１１は、変数Flagi、j、ωを"UV"に設定してから（ステップＳ２６１）、処理を終了する。雑音ではないと判別された場合は（ステップＳ１３；Ｎｏ）、ＣＰＵ３１１は、、変数Flagi、j、ωを"V"に設定してから（ステップＳ２６３）、処理を終了する。
【０１８３】
図１４は、図９のステップＳ２２９で行われる、帯域別残差信号Di、j、ωの帯域別絶対強度Hi、j、ωを求める処理を示すフローチャートである。
【０１８４】
ＣＰＵ３１１は、記憶部３１５の中を検索し、記憶部３１５にピッチ長Pi、jが格納されているか否かを判別する（ステップＳ１４）。記憶部３１５にピッチ長Pi、jが格納されているとすれば、それは図９のステップＳ２１９によるものであり、ステップＳ２１９を経ているということは、ステップＳ２１５で残差信号Di、jには全体としてピッチ的な性質が存在すると判別されたことを意味する。記憶部３１５にピッチ長Pi、jが格納されていないとすれば、ステップＳ２１５で残差信号Di、jには全体としてピッチ的な性質が存在しないと判別されたことを意味する。
【０１８５】
記憶部３１５にピッチ長Pi、jが格納されていると判別された場合は（ステップＳ１４；Ｙｅｓ）、既に図３の帯域別強度決定部１３１について説明したように、例えば、所定の時間にわたり帯域別残差信号の2乗を時間積分した後、その平方根を、帯域別絶対強度Hi、j、ωとする（ステップＳ２７１）。さらに、上述のように、本ステップに進んだということは、残差信号Di、jが全体としてピッチ的な性質を帯びていることであるから、これも既に図３の帯域別強度決定部１３１についての説明で触れたように、前記所定の時間は、Pi、jの整数倍でありかつできるだけ長い時間であることが好ましい。この後、処理は終了する。
【０１８６】
記憶部３１５にピッチ長Pi、jが格納されていないと判別された場合は（ステップＳ１４；Ｎｏ）、これも既に図３の帯域別強度決定部１３１の説明で触れたように、例えば、帯域別残差信号Di、j、ωの全継続時間にわたる積分に基づいて、帯域別絶対強度Hi、j、ωを求める（ステップＳ２７３）。この後、処理は終了する。
【０１８７】
図１４が、強度の絶対的な大きさを示す帯域別絶対強度Hi、j、ωを求める処理を示すフローチャートであったのに対して、図１５は、図９のステップＳ２３５で行われる、相対的な強度である帯域別強度hi、j、ωを生成する処理を示すフローチャートである。
【０１８８】
帯域別強度hi、j、ωは、iとjとで特定されるサブフレームにおいて、最大の帯域別絶対強度Hi、j、ωを1としたときの、強度の相対値である。
【０１８９】
ＣＰＵ３１１は、帯域別残差信号Di、j、ωの帯域別絶対強度Hi、j、1、・・・、Hi、j、ωMaxのうちから値が最大のものを特定し、該値を帯域別絶対強度最大値Hi、j、Maxとする（ステップＳ１５）。
【０１９０】
ＣＰＵ３１１は、帯域識別変数ωを、ω=1に設定する（ステップＳ２８１）。
【０１９１】
ＣＰＵ３１１は、帯域別強度hi、j、ωを、hi、j、ω=Hi、j、ω/Hi、j、Maxにより求める（ステップＳ２８３）。
【０１９２】
ＣＰＵ３１１は、ωがωMaxに達したか否かを判別する（ステップＳ２８５）。達したと判別された場合は（ステップＳ２８５；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ２８５；Ｎｏ）、ωを1増加してから（ステップＳ２８７）、ステップＳ２８３を繰り返す。
【０１９３】
（特徴量から試行用励起信号を生成する手順）
以下では、本実施形態に係る音声符号化装置１において、図１及び図４に示す残差信号復元試行部３１が行う、ピッチ長と標本選択情報とフラグと帯域別強度とから試行用励起信号を生成する手順を、図１６に示すフローチャートを参照しつつ説明する。
【０１９４】
なお、前提として、既にフラグFlagi、j、ωと帯域別強度hi、j、ωとが求められていて、記憶部３１５に格納されているものとする(0≦i≦M-1、0≦j≦Z-1、1≦ω≦ωMax)。また、Di、jからピッチ長Pi、jを抽出することができきた場合には（図９のステップＳ２１５；Ｙｅｓ）、ピッチ長Pi、j及び標本選択情報も求められていて記憶部３１５に格納されているものとする。
【０１９５】
ＣＰＵ３１１は、メインフレームカウンタiを、i=0に設定する（ステップＳ１６）。
【０１９６】
ＣＰＵ３１１は、サブフレームカウンタjを、j=0に設定する（ステップＳ３１１）。
【０１９７】
ＣＰＵ３１１は、記憶部３１５の中を検索して、ピッチ長Pi、jが記憶部３１５に格納されているか否かを判別する（ステップＳ３１３）。
【０１９８】
ピッチ長Pi、jが記憶部３１５に格納されていると判別された場合は（ステップＳ３１３；Ｙｅｓ）、ＣＰＵ３１１は、ピッチ長Pi、j及び標本選択情報を記憶部３１５からレジスタにロードする（ステップＳ３１５）。続いて、ＣＰＵ３１１は、図４のピッチパルス列生成部４及び帯域フィルタ部１１５として機能することにより、該ピッチ長Pi、jに基づいて、帯域別ピッチパルス列Ppti、j、ω={ppti、j、ω、0、・・・、ppti、j、ω、L-1}を生成してから（図１６のステップＳ３１７）、ステップＳ３１９に進む。帯域別ピッチパルス列Ppti、j、ωの具体的な求め方の一例については、後に図を改めて説明する。
【０１９９】
ピッチ長Pi、jが記憶部３１５に格納されていないと判別された場合は（ステップＳ３１３；Ｎｏ）、すぐにステップＳ３１９に進む。
【０２００】
ステップＳ３１９では、ＣＰＵ３１１は、図６の雑音パルス列生成部２１１及び帯域フィルタ部１１５として機能することにより、帯域別雑音パルス列Rpti、j、ω={rpti、j、ω、0、・・・、rpti、j、ω、L-1}を生成する。帯域別雑音パルス列Rpti、j、ωの具体的な求め方の一例については、後に図を改めて説明する。
【０２０１】
ＣＰＵ３１１は、試行用励起信号Exi、j={exi、j、0、・・・、exi、j、L-1}を、Exi、j={0、・・・、0}に初期化する（ステップＳ３２１）。
【０２０２】
ＣＰＵ３１１は、帯域識別変数ωを、ω=1に設定する（ステップＳ３２３）。
【０２０３】
ＣＰＵ３１１は、フラグFlag i、j、ωと帯域別強度hi、j、ωとを記憶部３１５からレジスタにロードする（ステップＳ３２５）。
【０２０４】
ＣＰＵ３１１は、図４の帯域別試行用励起信号生成部２２１として機能することにより、帯域別試行用励起信号Exi、j、ω={exi、j、ω、0、・・・、exi、j、ω、L-1}を生成する（図１６のステップＳ３２７）。帯域別試行用励起信号Exi、j、ωの具体的な求め方の一例については、後に図を改めて説明する。
【０２０５】
ＣＰＵ３１１は、試行用励起信号Exi、jを、Exi、j+Exi、j、ωに更新する（ステップＳ３２９）。
【０２０６】
ＣＰＵ３１１は、ωがωMaxに達したか否かを判別する（ステップＳ３３１）。達していると判別された場合は（ステップＳ３３１；Ｙｅｓ）、ステップＳ３３５に進む。達していないと判別された場合は（ステップＳ３３１；Ｎｏ）、ωを1増加してから（ステップＳ３３３）、ステップＳ３２５に戻る。
【０２０７】
ステップＳ３３５では、ＣＰＵ３１１は、この時点で全帯域の帯域別試行用励起信号の和となっている、試行用励起信号Exi、jを、記憶部３１５に格納する。
【０２０８】
ＣＰＵ３１１は、jがZ-1に達したか否かを判別する（ステップＳ３３７）。達していると判別された場合は（ステップＳ３３７；Ｙｅｓ）、ステップＳ３４１に進む。達していないと判別された場合は（ステップＳ３３７；Ｎｏ）、jを1増加してから（ステップＳ３３９）、ステップＳ３１３に戻る。
【０２０９】
ステップＳ３４１では、ＣＰＵ３１１は、iがM-1に達したか否かを判別する。達していると判別された場合は（ステップＳ３４１；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ３４１；Ｎｏ）、iを1増加してから（ステップＳ３４３）、ステップＳ３１１に戻る。
【０２１０】
図１７（ａ）は、図１６のステップＳ３１７で行われる、帯域別ピッチパルス列Ppti、j、ωを生成する処理を示すフローチャートである。
【０２１１】
ＣＰＵ３１１は、図４のピッチパルス列生成部４として機能することにより、ピッチ長Pi、jと標本選択情報とに基づいて、図１７（ｂ）に模式的に示すピッチパルス列Ppti、j={ppti、j、0、・・・、ppti、j、L-1}を生成する（ステップＳ１７）。この図１７（ｂ）は、既に参照した図１２（ｂ）と同じ図である。そして、ピッチ長Pi、jと標本選択情報とに基づくピッチパルス列Ppti、jの生成方法は、既に図１１及び図１２を参照して説明したとおりである。
【０２１２】
ＣＰＵ３１１は、帯域識別変数ωを、ω=1に設定する（ステップＳ３５１）。
【０２１３】
ＣＰＵ３１１は、図４の帯域別ピッチパルス列生成部としての帯域フィルタ部１１５として機能することにより、ピッチパルス列Ppti、jの帯域ωの成分である帯域別ピッチパルス列Ppti、j、ω={ppti、j、ω、0、・・・、ppti、j、ω、L-1}を生成する（図１７のステップＳ３５３）。
【０２１４】
ＣＰＵ３１１は、ωがωMaxに達したか否かを判別する（ステップＳ３５５）。達していると判別された場合は（ステップＳ３５５；Ｙｅｓ）、処理を終了する。達していないと判別された場合は、（ステップＳ３５５；Ｎｏ）、ωを1増加してから（ステップＳ３５７）、ステップＳ３５３を繰り返す。
【０２１５】
図１８（ａ）は、図１６のステップＳ３１９で行われる、帯域別雑音パルス列Rpti、j、ωを生成する処理を示すフローチャートである。
【０２１６】
ＣＰＵ３１１は、図４の雑音パルス列生成部２１１として機能することにより、図１８（ｂ）に模式的に示すような、大きさが-1以上+1以下の乱数であるパルスが並んだ雑音パルス列Rpti、j={rpti、j、0、・・・、rpti、j、L-1}を生成する（ステップＳ１８）。
【０２１７】
ＣＰＵ３１１は、帯域識別変数ωを、ω=1に設定する（ステップＳ３７１）。
【０２１８】
ＣＰＵ３１１は、図４の帯域別雑音パルス列生成部としての帯域フィルタ部１１５として機能することにより、雑音パルス列Ppti、jの帯域ωの成分である帯域別雑音パルス列Rpti、j、ω={rpti、j、ω、0、・・・、rpti、j、ω、L-1}を生成する（図１８のステップＳ３７３）。
【０２１９】
ＣＰＵ３１１は、ωがωMaxに達したか否かを判別する（ステップＳ３７５）。達していると判別された場合は（ステップＳ３７５；Ｙｅｓ）、処理を終了する。達していないと判別された場合は、（ステップＳ３７５；Ｎｏ）、ωを1増加してから（ステップＳ３７７）、ステップＳ３７３を繰り返す。
【０２２０】
図１９は、図１６のステップＳ３２７で行われる、帯域別試行用励起信号Exi、j、ω={exi、j、ω、0、・・・、exi、j、ω、L-1}を生成する処理を示すフローチャートである。
【０２２１】
ＣＰＵ３１１は、試行強度I(0)i、jを求める（ステップＳ１９）。この値は、後に修正を施されるものであるので、本ステップで厳密な値を求める必要はない。もっとも、当然のことながら、試行値といえどもできるだけ正確な値、すなわち後の修正ができるだけ少なくて済むような値、を採用するのが望ましい。かかる観点に鑑み、本実施形態の場合は、図１及び図４で点線矢印にて示したように、試行強度I(0)を、予測係数の0次の係数ci、j、0に基づいて、
I(0)i、j=exp(ci、j、0)
により求め、記憶部３１５に格納する（図１９のステップＳ３９１）。
【０２２２】
ＣＰＵ３１１は、記憶部３１５の中を調べて、ピッチ長Pi、jが記憶部３１５に格納されているか否かを判別する（図１９のステップＳ３９３）。
【０２２３】
なお、基本的には、以下に述べるように、雑音的な性質を帯びていることがフラグにより示されている帯域については雑音パルス列に基づき該帯域の帯域別試行用励起信号を生成し、一方、ピッチ的な性質を帯びていることがフラグにより示されている帯域についてはピッチパルス列に基づき該帯域の帯域別試行用励起信号を生成する。しかし、そもそも残差信号全体がピッチ的性質を帯びていない場合は、図１６のステップＳ３１３でＮｏと判別されてステップＳ３１７を経ないためピッチパルス列が生成されない。したがって、図１９のステップＳ３９３のように、まず、ピッチ長の存否が判別され、もし存在しないのであればフラグに関係なく全帯域について雑音パルス列に基づき帯域別試行用励起信号が生成される手順にする必要がある。
【０２２４】
よって、ピッチ長Pi、jが記憶部３１５に格納されていないと判別された場合は（ステップＳ３９３；Ｎｏ）、ＣＰＵ３１１は、フラグの値を参照することなく、すぐにステップＳ３９７に進む。
【０２２５】
ピッチ長Pi、jが記憶部３１５に格納されていると判別された場合は（ステップＳ３９３；Ｙｅｓ）、ＣＰＵ３１１は、続いて、フラグFlagi、j、ω="UV"か否かを判別する（ステップＳ３９５）。フラグFlagi、j、ω="UV"であると判別された場合は（ステップＳ３９５；Ｙｅｓ）、ステップＳ３９７に進む。フラグFlagi、j、ω="UV"ではないと判別された場合は（ステップＳ３９５；Ｎｏ）、ステップＳ３９９に進む。
【０２２６】
ステップＳ３９７では、帯域別試行用励起信号Exi、j、ωを、
Exi、j、ω=I(0)i、j×hi、j、ω×Rpti、j、ω
により求める。
【０２２７】
ステップＳ３９９では、帯域別試行用励起信号Exi、j、ωを、
Exi、j、ω=I(0)i、j×hi、j、ω×Ppti、j、ω
により求める。
【０２２８】
（係数ベクトルと逆量子化係数ベクトルの関係）
後に、図１の疑似合成フィルタ部２７が試行用再生音声信号を生成する手順と、図２の音声復号装置２が復号用励起信号を生成するために必要な修正強度を図１の修正因子決定部３３が求める手順と、を説明するが、理解を容易にするために、まず、係数ベクトルと逆量子化係数ベクトルの関係を整理して図２０に示す。
【０２２９】
量子化された係数ベクトルはテーブルとして表記されるものである一方、逆量子化ベクトルは該表記を具体的なベクトルとして捉えたものであるが、既にベクトル量子化について説明したように、ここでは両者を特に区別することなく用いる。例えば、符号qは、ある量が量子化されたことを表す符号として用いているが、同時に、逆量子化されその量と直接比較し得る量のことも示すものとする。つまり、量子化された結果と、それが逆量子化された量とを、表記の上では区別しないこととする。本実施形態においては、量子化の結果の表現態様が重要なのではなく、量子化によって近似による情報量削減が達成されることが重要なためである。
【０２３０】
図２０に示す表は、既に図６（ａ）に示した、係数ベクトルの時系列毎かつ次元毎の一覧表に、各係数ベクトルに対応する近似結果を付記した表である。ＣＰＵ３１１が図３のベクトル正規化部１９、スカラー量子化部２１、及び、ベクトル量子化部２３として機能した結果、図８のフローチャートのステップＳ１６９及びステップＳ１７５において、記憶部３１５には、スカラー量子化係数ベクトル最大絶対値q[Max[c]]i,kとベクトル量子化正規化係数ベクトルq[n[c]]i、kとが格納されている。図２０に示すように、係数ベクトル
Vi、k={ci、0、k、・・・、ci、Z-1、k}
は、量子化の結果、疑似係数ベクトル
q[V]i、k
={ q[Max[c]]i、k×q[n[c]]i、0、k、・・・、q[Max[c]]i、k×q[n[c]]i、Z-1、k}
に近似される。
【０２３１】
（試行用再生音声信号を生成する手順）
以下では、本実施形態に係る音声符号化装置１において、図１に示す合成フィルタ算出部２５及び疑似合成フィルタ部２７が行う、試行用励起信号から試行用再生音声信号を生成する手順を、図２１に示すフローチャートを参照しつつ説明する。
【０２３２】
なお、前提として、試行用励起信号Exi、jと、図２０の表に示したスカラー量子化係数ベクトル最大絶対値q[Max[c]]i、k及びベクトル量子化正規化係数ベクトルq[n[c]]i、kと、は、既に求められていて、記憶部３１５に格納されているものとする(0≦i≦M-1、0≦j≦Z-1、0≦k≦N-1)。
【０２３３】
ＣＰＵ３１１は、メインフレームカウンタiを、i=0に設定する（ステップＳ２１）。
【０２３４】
ＣＰＵ３１１は、スカラー量子化係数ベクトル最大絶対値q[Max[c]]i、0、・・・、q[Max[c]]i、N-1と、ベクトル量子化正規化係数ベクトルq[n[c]]i、0、・・・、q[n[c]]i、N-1と、を、記憶部３１５からレジスタにロードする（ステップＳ４１１）。続いてＣＰＵ３１１は、疑似係数ベクトルq[V]i、kを、
q[V]i、k=q[Max[c]]i、k×q[n[c]]i、k(0≦k≦N-1)
という乗算により求める（ステップＳ４１３）。
【０２３５】
ＣＰＵ３１１は、サブフレームカウンタjを、j=0に設定する（ステップＳ４１５）。
【０２３６】
ＣＰＵ３１１は、試行用励起信号Exi、jを記憶部３１５からレジスタにロードする（ステップＳ４１７）。
【０２３７】
ＣＰＵ３１１は、疑似係数ベクトルq[V]i、0、・・・、q[V]i、N-1のそれぞれの第j成分であるq[Max[c]]i、0×q[n[c]]i、j、0、・・・、q[Max[c]]i、N-1×q[n[c]]i、j、N-1により、iで識別されるメインフレームの中のjで識別されるサブフレームにおける疑似合成フィルタを定義する（ステップＳ４１９）。これにより、図１の疑似合成フィルタ部２７の仕様が決定される。
【０２３８】
ＣＰＵ３１１は、ステップＳ４１９により定義された疑似合成フィルタに試行用励起信号Exi、jを通すことに相当する演算を行うことにより、試行用再生音声信号W(0)i、j={w(0)i、j、0、・・・、w(0)i、j 、L-1}を生成し（ステップＳ４２１）、記憶部３１５に格納する（ステップＳ４２３）。
【０２３９】
ＣＰＵ３１１は、jがZ-1に達したか否かを判別する（ステップＳ４２５）。達していると判別された場合は（ステップＳ４２５；Ｙｅｓ）、ステップＳ４２９に進む。達していないと判別された場合は（ステップＳ４２５；Ｎｏ）、jを1増加してから（ステップＳ４２７）、ステップＳ４１７に戻る。
【０２４０】
ステップＳ４２９では、ＣＰＵ３１１は、iがM-1に達したか否かを判別する。達していると判別された場合は（ステップＳ４２９；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ４２９；Ｎｏ）、iを1増加してから（ステップＳ４３１）、ステップＳ４１１に戻る。
【０２４１】
（修正強度を生成する手順）
以下では、本実施形態に係る音声符号化装置１において、図１に示す修正因子決定部３３が行う、修正強度を生成する手順を、図２２に示すフローチャートを参照しつつ説明する。
【０２４２】
なお、前提として、入力音声信号Si、jは記憶部３１５に格納されたまま残されているものとし、試行強度I(0)i、jと試行用再生音声信号W(0)i、jとは、既に求められて記憶部３１５に格納されているもものとする。また、図３のピッチ抽出部１１３により図９のステップＳ２１７においてピッチ長Pi、jが求められている場合には、ステップＳ２１９に示すとおり、ピッチ長Pi、jは記憶部３１５に格納されているものとする(0≦i≦M-1、0≦j≦Z-1)。
【０２４３】
ＣＰＵ３１１は、メインフレームカウンタiを、i=0に設定する（ステップＳ２２）。
【０２４４】
ＣＰＵ３１１は、サブフレームカウンタjを、j=0に設定する（ステップＳ４６１）。
【０２４５】
ＣＰＵ３１１は記憶部３１５の中を検索し、ピッチ長Pi、jが記憶部３１５に格納されているか否かを判別する（ステップＳ４６３）。
【０２４６】
格納されていると判別された場合には（ステップＳ４６３：Ｙｅｓ）、ＣＰＵ３１１はピッチ長Pi、jを記憶部３１５からレジスタにロードし（ステップＳ４６５）、
m×Pi、j≦L-1＜(m+1)×Pi、j
なる整数mを求め、Y= m×Pi、j+1に設定し（ステップＳ４６７）、ステップＳ４７１に進む。
【０２４７】
一方、格納されていないと判別された場合には（ステップＳ４６３；Ｎｏ）、ＣＰＵ３１１は、Y=Lに設定し（ステップＳ４６９）、ステップＳ４７１に進む。
【０２４８】
ステップＳ４７１では、ＣＰＵ３１１は、入力音声信号Si、j={si、j、0、・・・、si、j、L-1}、試行用再生音声信号W(0)i、j={w(0)i、j、0、・・・、w(0)i、j、L-1}、及び、試行強度I(0)i、jを記憶部３１５からレジスタにロードする。続いて、ステップＳ４７３では、ＣＰＵ３１１は、入力音声信号強度sqrt(ΣSi、j2)と試行用再生音声信号強度sqrt(ΣW(0)i、j2)とを、
sqrt(ΣSi、j2)=sqrt(si、j、02+・・・+si、j、Y-12)
sqrt(ΣW(0)i、j2)=sqrt(w(0)i、j、02+・・・+w(0)i、j、Y-12)
のように計算する。
【０２４９】
かかる計算は、図１４のステップＳ２７１及びステップＳ２７３で行われた、帯域別絶対強度Hi、j、ωの計算方法と同様のものである。また、図１４のステップＳ２７１及びステップＳ２７３の使い分けと同様に、図２２においても、ピッチ長Pi、jの存否により、積分時間長に相当するYの値の決定方法を変化させている。ピッチ長Pi、jが存在しない場合は、単にできるだけ長時間にわたる積分を行うことにより精度を高める一方、ピッチ長Pi、jが存在する場合には、積分する時間長をなるべく長くするだけではなく、該ピッチ長の整数倍とすることにより、位相のずれに起因する誤差が生じないようにする。
【０２５０】
続いて、ＣＰＵ３１１は、修正強度I(1)i、jを、
I(1)i、j = I(0)i、j×{sqrt(ΣSi、j2)/sqrt(ΣW(0)i、j2)}
のように求め（ステップＳ４７５）、記憶部３１５に格納する（ステップＳ４７７）。
【０２５１】
ＣＰＵ３１１は、jがZ-1に達したか否かを判別する（ステップＳ４７９）。達していると判別された場合は（ステップＳ４７９；Ｙｅｓ）、ステップＳ４８３に進む。達していないと判別された場合は（ステップＳ４７９；Ｎｏ）、jを1増加してから（ステップＳ４８１）、ステップＳ４６３に戻る。
【０２５２】
ステップＳ４８３では、ＣＰＵ３１１は、iがM-1に達したか否かを判別する。達していると判別された場合は（ステップＳ４８３；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ４８３；Ｎｏ）、iを1増加してから（ステップＳ４８５）、ステップＳ４６１に戻る。
【０２５３】
（特徴量から復号用励起信号を生成する手順）
以下では、図２に示す音声復号装置２の動作について説明する。まず、残差信号復元部６５が、復号用励起信号を生成する手順について説明する。
【０２５４】
前提として、復号部６３により、特徴量であるフラグFlagi、j、ωと帯域別強度hi、j、ωとが復号されて、記憶部３１５に格納されているものとする。さらに、存在する場合にはピッチ長Pi、j及び標本選択情報も復号されて、記憶部３１５に格納されているものとする。また、修正強度I(1)i、jも同じく復号され記憶部３１５に格納されているものとする。
【０２５５】
既に述べたとおり、図２に示す残差信号復元部６５は、図１に示す残差信号特徴量抽出部２９に極めて似た動作を行う。いずれも、特徴量から、合成フィルタに入力するための励起用の信号を生成する点で、共通しているからである。ただし、前者は実際に音声を復元するための信号を生成するものであるのに対して、後者は修正因子である修正強度を求めるためのものである。後者の動作により求められた修正強度は、前者の動作に際しては、与えられる量となる。
【０２５６】
以上の点に留意すると、特徴量から復号用励起信号を生成する手順は、図１６に示した、特徴量から試行用励起信号を生成する処理とほぼ同じとなる。つまり概ね、図１６にある試行用励起信号という用語を、復号用励起信号と読み替えればよい。そこで、煩雑になるのを避けるため、ここでは図１６とは別のフローチャートを示すことはしない。
【０２５７】
ただし、図１６のステップＳ３２７の詳細が示された図１９におけるステップＳ１９及びステップＳ３９１の代わりに、ＣＰＵ３１１が記憶部３１５からレジスタに修正強度I(1)i、jをロードするステップが挿入され、ステップＳ３９７及びステップＳ３９９ではI(0)i、jの代わりにI(1)i、jが用いられることになる。
【０２５８】
さらに、好ましくは、サブフレームの境界でサブフレーム別残差信号強度が急激に変化することにより再生音声信号が不自然になることのないよう、帯域別にスムージング処理を行う。そのためには、復号用励起信号の生成における図１６のステップＳ３２７に相当するステップである、帯域別復号用励起信号Exi、j、ωを生成する手順を、図２３に示すようなものとする。
【０２５９】
図２３のフローチャートに示すように、ＣＰＵ３１１は、修正強度I(1)i、jを記憶部３１５からレジスタにロードする。また、ＣＰＵ３１１は、iとjとで特定されるサブフレームの直前のサブフレームにおける修正強度、フラグ、及び、帯域別強度である修正強度I(1)pre、フラグFlagpre、ω、及び、帯域別強度hpre、ωを、記憶部３１５からレジスタにロードする（ステップＳ２３）。
【０２６０】
ＣＰＵ３１１は、記憶部３１５の中を検索して、ピッチ長Pi、jが記憶部３１５に格納されているか否かを判別する（ステップＳ５１１）。格納されていると判別された場合には（ステップＳ５１１；Ｙｅｓ）、判別ステップＳ５１３に進む。格納されていないと判別された場合には（ステップＳ５１１；Ｎｏ）、別の判別ステップＳ５１５に進む。
【０２６１】
ステップＳ５１３では、ＣＰＵ３１１は、フラグFlagi、j、ωがFlagi、j、ω="UV"であるか否かを判別する。"UV"であると判別された場合には（ステップＳ５１３；Ｙｅｓ）、判別ステップＳ５１５に進む。"UV"ではないと判別された場合には（ステップＳ５１３；Ｎｏ）、別の判別ステップＳ５１７に進む。
【０２６２】
ステップＳ５１５では、ＣＰＵ３１１は、Flagi、j、ω=Flagpre、ωであるか否かを判別する。Flagi、j、ω=Flagpre、ωであると判別された場合には（ステップＳ５１５；Ｙｅｓ）、ステップＳ５５１に進む。Flagi、j、ω=Flagpre、ωではないと判別された場合には（ステップＳ５１５；Ｎｏ）、ステップＳ５５３に進む。
【０２６３】
ステップＳ５１７でも同様に、ＣＰＵ３１１は、Flagi、j、ω=Flagpre、ωであるか否かを判別し、そうであると判別された場合には（ステップＳ５１７；Ｙｅｓ）ステップＳ５５５に、そうでないと判別された場合には（ステップＳ５１７；Ｎｏ）ステップＳ５５９に、それぞれ進む。
【０２６４】
以上のステップを経てステップＳ５５１、ステップＳ５５３、ステップＳ５５５、及び、ステップＳ５５９に達したということは、それぞれ、iとjとで特定されるサブフレームにおける帯域別復号用励起信号が、直前のサブフレームにおけるそれとの間で、雑音から雑音、非雑音から雑音、非雑音から非雑音、及び、雑音から非雑音へと、つながるべきこと又は切り替わるべきことを意味する。これらの各ステップ終了後に、処理は終了する。
【０２６５】
このうち、非雑音から雑音に切り替わる場合（ステップＳ５５３）と、雑音から非雑音に切り替わる場合（ステップＳ５５９）とには、上述のスムージング処理を行わず、単に図１９のステップＳ３９７とステップＳ３９９とに相当するExi、j、ω=I(1)i、j×hi、j、ω×Rpti、j、ω（ステップＳ５５３）とExi、j、ω=I(1)i、j×hi、j、ω×Ppti、j、ω（ステップＳ５５９）という計算により、帯域別復号用励起信号Exi、j、ωを生成する。
【０２６６】
雑音と非雑音とは、性質の違いのため、信号強度を直接比較しても有益な情報は得られない。そこで、ステップＳ５５３及びステップＳ５５９の場合のような、同一の帯域において、雑音的性質を有するサブフレームと雑音的性質を有さないサブフレームとが隣接している場合には、むしろ上述のスムージング処理は行わないほうが再生音声信号が自然なものとなる。
【０２６７】
ステップＳ５５１及びステップＳ５５５では、サブフレームの境界で帯域別復号用励起信号の強度がなだらかに変化するように帯域別復号用励起信号Exi、j、ωを生成する。
【０２６８】
その具体的な手順、すなわちスムージング処理の一例を、図２４のフローチャートに示す。ＣＰＵ３１１は、時系列カウンタtをt=0に設定する（ステップＳ２４）。
【０２６９】
ステップＳ５５１の場合、すなわち、雑音サブフレーム同士が隣接する場合には、帯域別復号用励起信号Exi、j、ωの第(t+1)番目の要素であるexi、j、ω、tを、
exi、j、ω、t
={(L-t)×I(1)pre×hpre、ω+t×I(1)i、j×hi、j、ω}×rpti、j、ω、t/L
により求める。
【０２７０】
ステップＳ５５５の場合、すなわち、非雑音サブフレーム同士が隣接する場合には、帯域別復号用励起信号Exi、j、ωの第(t+1)番目の要素であるexi、j、ω、tを、
exi、j、ω、t
={(L-t)×I(1)pre×hpre、ω+t×I(1)i、j×hi、j、ω}×ppti、j、ω、t/L
により求める（ステップＳ５６１）。
【０２７１】
ＣＰＵ３１１は、tがL-1に達したか否かを判別する（ステップＳ５６３）。達していると判別された場合は（ステップＳ５６３；Ｙｅｓ）、処理を終了する。達していないと判別された場合は（ステップＳ５６３；Ｎｏ）、tを1増加してから（ステップＳ５６５）、ステップＳ５６１を繰り返す。
【０２７２】
以上のように求められた帯域別復号用励起信号は全ての帯域にわたり合計され、復号用励起信号として図２の残差信号復元部６５から出力される。
【０２７３】
（音声再生信号を生成する手順）
図２の残差信号復元部６５により上述のように生成され復号用励起信号として出力された信号は、疑似合成フィルタ部２７を通されることにより、再生音声信号に変換される。具体的な手順は、図２１に準ずる。試行用再生音声信号を単なる再生音声信号に、試行用励起信号を復号用励起信号に、それぞれ読み替える等する。
【０２７４】
例えば、図４の疑似合成フィルタ部２７は、合成フィルタ算出部２５により、図２０の表に示された疑似係数ベクトルq[V]i、kの成分の値により定義される（図２１のステップＳ４１９に相当。）。
【０２７５】
（実施形態２）
実施形態１に係る音声符号化装置１は、基準残差標本を特定し、該基準残差標本から時系列上で後方に１ピッチ長以内の区間すなわち検索対象区間に存在する標本のうちから、絶対値の大きい標本をいくつか選択して、それらの標本の、基準残差標本に対する相対的な大きさと、基準残差標本に対する時系列上の相対的な位置と、を、標本選択情報とした。
【０２７６】
本実施形態に係る音声符号化装置も、検索対象区間の決定は、実施形態１に係る音声符号化装置１と同様に行う。
【０２７７】
しかし、本実施形態に係る音声符号化装置は、検索対象区間をあらかじめ所定の個数の小区間に等分しておき、それぞれの小区間毎に最大の絶対値を有する標本を特定し、該標本の基準残差標本に対する相対的な大きさを標本選択情報とする。
【０２７８】
そして、本実施形態においては、検索対象区間に含まれる小区間の個数は、音声符号化装置と音声復号装置との間で、あらかじめ同じ個数に取り決められている。
【０２７９】
さらに、音声符号化装置と音声復号装置との間では、前者から後者へ、標本選択情報を例えば時系列順に送信するというように取り決められている。
【０２８０】
そして、そのように標本選択情報を受け取った音声復号装置は、1番目の標本として受け取った標本を1番目の小区間に割り当てる。音声復号装置は続いて、2番目の標本として受け取った標本を2番目の小区間に割り当てる。以下、同様である。このようにして、本実施形態に係る音声復号装置は、復号用励起信号を生成するためのピッチパルス列を生成する。
【０２８１】
音声復号装置は、小区間内の先頭サンプリング時刻を基準とした所定の時刻に、受け取った標本を割り当てるものとする。
【０２８２】
このため、実施形態１の場合と異なり、ひとつには、音声符号化装置側で、絶対値が比較的大きい2個の標本がたまたま同一小区間に属している場合には、一方の標本が、その顕著さにもかかわらず、選択されない。よって当然のことながら、音声復号装置側はそのように捨象された標本を再現し得ない。そしてもうひとつには、音声復号装置は、標本が存在するべき厳密なサンプリング時刻を知らされず、単に標本がどの小区間に属しているかということだけを知らされる。よって、選択された標本は、音声符号化装置から音声復号装置への情報伝達の過程において、最大で小区間の時間長ぶんだけ、時系列上の位置が移動してしまう。
【０２８３】
つまり、同一個数の標本を送受信するという条件で比較した場合、本実施形態に係る音声復号装置は、実施形態１に係る音声復号装置２ほど的確には、ピッチパルス列を生成しないといえる。
【０２８４】
しかし、本実施例の場合、実施形態１の場合と異なり、音声符号化装置は、音声復号装置に対して、基準残差標本に対する選択した標本の相対的な位置を通知する必要がない。
【０２８５】
よって、実施形態１の場合と同じ数の標本について標本選択情報を生成した場合、該情報は少なくて済むので、通信ビットレートに制約がある場合には有利である。
【０２８６】
以下では、ここまでに述べてきた本実施形態における標本の選択の仕方及び音声復号装置側でのピッチパルス列の生成の仕方について、図２５と図２６とに示された具体例を用いて、説明する。
【０２８７】
残差信号は図２５（ａ）に示すとおりのものであるとする。これは、実施形態１について説明した際に参照した図１１（ａ）と同じものである。よって、本実施形態の、実施形態１と比べた場合の特徴は、図２５及び図２６を、図１１及び図１２と比較すると、容易に理解できる。
【０２８８】
ピッチ長Pi、jに相当する時間区間を、図２５（ｂ）に示すように、ここでは、4個の小区間に分割するとする。すると、図２５（ｃ）に示すように、各小区間の中で最大の絶対値を有する標本が選択される。
【０２８９】
同じ個数の標本が選択される図１１（ｃ）とは、選択される標本が異なる。本実施形態の場合は、実施形態１の場合とは標本の選択の仕方が異なるためである。例えば、図１１（ｃ）ではu(2)として選択されている標本は、比較的顕著な大きさを有するものの、図２５（ｃ）では選択されない。図２５（ｃ）では、該標本とたまたま同じ小区間に含まれる、より大きい標本だけが、u(1)として選択されるためである。
【０２９０】
ここで、選択された標本は、音声復号装置側では、小区間の先頭のサンプリング時刻に割り当てられるとあらかじめ決めてあるものとする。すると、本実施形態の場合に音声復号装置側でピッチパルス列の繰り返し単位となる信号は、図２６（ａ）のようなものである。図２５（ｃ）と比べると、標本の位置がずれている。これは、本実施形態に係る音声復号装置は、標本の時系列上の位置を、小区間単位でしか把握しないためである。この点、実施形態１の場合、図１１（ｃ）と図１２（ａ）とに示されるとおり、標本の位置がずれることはない。
【０２９１】
本実施形態に係る音声復号装置により生成されるピッチパルス列は、図２６（ｂ）に示すものとなる。図１２（ｂ）に示される実施形態１の場合とは、異なっている。なお、図２６（ｃ）は、元の残差信号であり、図２５（ａ）、図１１（ａ）、及び、図１２（ｃ）と同じものである。
【０２９２】
（実施形態３）
実施形態２では、小区間の中から絶対値が最大の標本を選択した。それに対して、本実施形態では、小区間に含まれる全ての標本の平均値を基準残差標本の絶対値により除した値を、標本選択情報とする。
【０２９３】
つまり、実施形態２の場合は、小区間に含まれる特定のひとつの標本により、該小区間を代表させるのに対して、本実施形態の場合は、小区間に含まれる全標本に基づいて計算された値により、該小区間を代表させる。
【０２９４】
実施形態１と比較した場合の本実施形態の特徴は、実施形態２の場合と同様である。
【０２９５】
なお、この発明は、上記実施形態に限定されず、種々の変形及び応用が可能である。上述のハードウェア構成やブロック構成、フローチャートはあくまでも説明のための例示であって、本発明の範囲を限定するための例示ではない。
【０２９６】
例えば、図５に示される音声符号化兼復号装置３の例として携帯電話機を挙げたが、ＰＨＳ（Personal Handyphone System）、ＰＤＡ（Personal Digital Assistants）、ノート型及びデスクトップ型パーソナルコンピュータ等による音声処理においても、同様に本発明を適用することができる。例えば本発明をパーソナルコンピュータに適用する場合には、パーソナルコンピュータに音声入出力装置や通信装置等を付加すれば、ハードウェアとしては携帯電話機の機能を有するようにすることができる。そして、上述の処理をコンピュータに実行させるためのコンピュータプログラムが記録媒体や通信により配布されれば、これをコンピュータにインストールして実行させることにより、該コンピュータをこの発明に係る音声符号化装置又は音声復号装置として機能させることも可能である。
【０２９７】
すなわち、上記実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【図面の簡単な説明】
【０２９８】
【図１】本発明の実施形態１に係る音声符号化装置の機能構成を示す図である。
【図２】本発明の実施形態１に係る音声復号装置の機能構成を示す図である。
【図３】残差信号特徴量抽出部の詳細な機能構成を示す図である。
【図４】残差信号復元試行部の詳細な機能構成を示す図である。
【図５】本発明の実施形態１に係る音声符号化兼復号装置の物理的な構成を示す図である。
【図６】予測係数から構成される係数ベクトルを表として示すとともに、係数ベクトルが量子化される様子を模式的に示す図である。
【図７】予測分析の流れを示す図である。
【図８】ベクトル正規化とスカラー量子化とベクトル量子化とを行う流れを示す図である。
【図９】残差信号からピッチ長と標本選択情報とフラグと帯域別強度とを生成する流れを示す図である。
【図１０】標本選択情報を生成する流れを示す図である。
【図１１】本発明の実施形態１における標本選択及びピッチパルス列生成の具体例の前半を示す図である。
【図１２】本発明の実施形態１における標本選択及びピッチパルス列生成の具体例の後半を示す図である。
【図１３】帯域ωについてのフラグを生成する流れを示す図である。
【図１４】帯域別残差信号の帯域別絶対強度を求める流れを示す図である。
【図１５】帯域別強度を生成する流れを示す図である。
【図１６】ピッチ長と標本選択情報とフラグと帯域別強度とから試行用励起信号を生成する流れを示す図である。
【図１７】帯域別ピッチパルス列を生成する流れを示すとともに、ピッチパルス列を模式的に示す図である。
【図１８】帯域別雑音パルス列を生成する流れを示すとともに、雑音パルス列を模式的に示す図である。
【図１９】帯域別試行用励起信号を生成する流れを示す図である。
【図２０】係数ベクトルと疑似係数ベクトルとを並べて表として示した図である。
【図２１】試行用再生音声信号を生成する流れを示す図である。
【図２２】修正強度を生成する流れを示す図である。
【図２３】帯域別復号用励起信号を生成する流れを示す図である。
【図２４】サブフレームの境界で強度がなめらかに変化するように帯域別復号用励起信号を生成する流れを示す図である。
【図２５】本発明の実施形態２における標本選択及びピッチパルス列生成の具体例の前半を示す図である。
【図２６】本発明の実施形態２における標本選択及びピッチパルス列生成の具体例の後半を示す図である。
【符号の説明】
【０２９９】
１・・・実施形態１に係る音声符号化装置、２・・・実施形態１に係る音声復号装置、３・・・総合ピッチ判別部、４・・・ピッチパルス列生成部、５・・・実施形態１に係る音声符号化兼復号装置、１１・・・マイクロフォン、１３・・・Ａ／Ｄ変換部、１５・・・予測分析部、１７・・・予測分析用逆フィルタ算出器、１９・・・ベクトル正規化部、２１・・・スカラー量子化部、２３・・・ベクトル量子化部、２５・・・合成フィルタ算出部、２７・・・疑似合成フィルタ部、２９・・・残差信号特徴量抽出部、３１・・・残差信号復元試行部、３３・・・修正因子決定部、３５・・・符号化部、３７・・・送信部、６１・・・受信部、６３・・・復号部、６５・・・残差信号復元部、６７・・・Ｄ／Ａ変換部、６９・・・スピーカ、１１１・・・ピッチ抽出用スイッチ、１１３・・・ピッチ抽出部、１１５・・・帯域フィルタ部、１１７・・・第１帯域フィルタ、１１９・・・第２帯域フィルタ、１２１・・・第３帯域フィルタ、１２３・・・帯域別雑音判別部、１２５・・・第１帯域雑音判別器、１２７・・・第２帯域雑音判別器、１２９・・・フラグ生成部、１３１・・・帯域別強度決定部、１３３・・・第１帯域強度算出器、１３５・・・第２帯域強度算出器、１４１・・・標本選択部、２１１・・・雑音パルス列生成部、２２１・・・帯域別試行用励起信号生成部、２２３・・・第１帯域別試行用励起信号生成器、２２５・・・第２帯域別試行用励起信号生成器、２２７・・・試行用励起信号生成部、３１１・・・ＣＰＵ、３１３・・・ＲＯＭ、３１５・・・記憶部、３１７・・・無線通信部、３１９・・・音声処理部、３２１・・・操作キー入力処理部、３２３・・・システムバス、３２５・・・アンテナ、３２７・・・操作キー、３２９・・・ＲＡＭ、３３１・・・ハードディスク
【図１】
2008256912.tif 000003
【図２】
2008256912.tif 000004
【図３】
2008256912.tif 000005
【図４】
2008256912.tif 000006
【図５】
2008256912.tif 000007
【図６】
2008256912.tif 000008
【図７】
2008256912.tif 000009
【図８】
2008256912.tif 000010
【図９】
2008256912.tif 000011
【図１０】
2008256912.tif 000012
【図１１】
2008256912.tif 000013
【図１２】
2008256912.tif 000014
【図１３】
2008256912.tif 000015
【図１４】
2008256912.tif 000016
【図１５】
2008256912.tif 000017
【図１６】
2008256912.tif 000018
【図１７】
2008256912.tif 000019
【図１８】
2008256912.tif 000020
【図１９】
2008256912.tif 000021
【図２０】
2008256912.tif 000022
【図２１】
2008256912.tif 000023
【図２２】
2008256912.tif 000024
【図２３】
2008256912.tif 000025
【図２４】
2008256912.tif 000026
【図２５】
2008256912.tif 000027
【図２６】
2008256912.tif 000028