(57)【要約】【課題】分析合成型の音声符号化及び復号において、与えられた情報伝達容量を余さず活用して再生音声の品質を向上させる。【解決手段】入力音声信号を予測分析部１２５により予測係数と残差信号とに分解し、前記残差信号の特徴量を取り出した後、符号化部１３３にて前記予測係数と前記特徴量とをまとめてエントロピ符号化する。生成された符号長が所定の符号長を超える場合には、予測分析次数調整部１３７により予測分析の次数を１つずつ減らしながら、生成された符号長が所定の符号長以内になるまで符号化の試行を繰り返す。【選択図】図１
2008089651.tif 000002
【特許請求の範囲】
【請求項１】
音声信号を所定の次数の予測分析により予測係数と残差信号とに分解する予測分析部と、
前記残差信号のゲインを求めるゲイン抽出部と、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出部と、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化部と、
前記符号の長さが許容長を超えるか否かを判別し、符号の長さが許容長を超えると判別された場合には、前記予測分析部における予測分析の次数を減らして前記一連の符号化動作を繰り返し実行させる制御部と、
を備えたことを特徴とする音声符号化装置。
【請求項２】
前記有声無声判別及びピッチ抽出部は、
前記残差信号からあらかじめ低域部を抽出するローパスフィルタを備え、
前記低域部が有声音か無声音かを判別するとともに該低域部が有声音であると判別された場合には該低域部からピッチ周波数を抽出する、
ことを特徴とする請求項１に記載の音声符号化装置。
【請求項３】
前記符号化部は、
エントロピ符号化を行う、
ことを特徴とする請求項１又は２に記載の音声符号化装置。
【請求項４】
前記予測分析部は、
音声信号を線型予測分析により予測係数と残差信号とに分解する、
ことを特徴とする請求項１乃至３の何れか１項に記載の音声符号化装置。
【請求項５】
前記予測分析部は、
音声信号をＭＬＳＡ（Mel Log Spectrum Approximation）分析により予測係数と残差信号とに分解する、
ことを特徴とする請求項１乃至３の何れか１項に記載の音声符号化装置。
【請求項６】
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信部と、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号部と、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生部と、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成フィルタと、
を備える音声復号装置。
【請求項７】
音声信号を予測分析により予測係数と残差信号とに分解する予測分析ステップと、
前記残差信号のゲインを求めるゲイン抽出ステップと、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出ステップと、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化ステップと、
前記符号の長さを算出し該長さが許容長を超えるか否かを判別する符号長検討ステップと、
から構成され、
前記符号長検討ステップにおいて前記符号の長さが前記許容長を超えると判別された場合には、前記予測分析ステップにおける予測分析の次数を減らして、前記予測分析ステップと、前記ゲイン抽出ステップと、前記有声無声判別及びピッチ抽出ステップと、前記符号化ステップと、前記符号長検討ステップと、が繰り返される、
ことを特徴とする音声符号化方法。
【請求項８】
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信ステップと、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号ステップと、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生ステップと、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成ステップと、
から構成される音声復号方法。
【請求項９】
コンピュータに、
音声信号を予測分析により予測係数と残差信号とに分解する予測分析ステップと、
前記残差信号のゲインを求めるゲイン抽出ステップと、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出ステップと、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化ステップと、
前記符号の長さを算出し該長さが許容長を超えるか否かを判別する符号長検討ステップと、
前記符号長検討ステップにおいて前記符号の長さが前記許容長を超えると判別された場合には、前記予測分析ステップにおける予測分析の次数を減らして、前記予測分析ステップと、前記ゲイン算出ステップと、前記有声無声判別及びピッチ抽出ステップと、前記符号化ステップと、前記符号長検討ステップと、を繰り返す再符号化ステップと、
を実行させるコンピュータプログラム。
【請求項１０】
コンピュータに、
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信ステップと、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号ステップと、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生ステップと、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成ステップと、
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分析合成型の音声圧縮復元を実行する際に必要となる、音声符号化装置、音声復号装置、音声符号化方法、音声復号方法、及び、プログラムに関する。
【背景技術】
【０００２】
デジタル携帯電話等の移動体通信の分野においては、加入者の増加に対処するため、低ビットレート（８ｋｂｐｓ程度）の音声の圧縮符号化方法が求められている。例えば、８ｋｂｐｓの音声符号化方法として、ＩＴＵ−Ｔ勧告Ｇ．７２９に示される音声符号化方法がある。
【０００３】
上述の勧告に係る音声符号化方法は、基本的には、音声信号を予測分析により予測係数と残差信号とに分解してから符号化する方法である。予測分析として、例えば、線型予測分析や、ＭＬＳＡ分析（例えば、非特許文献１参照。）が知られている。
【０００４】
ビットレートに例えば上述のような8ｋｂｐｓ程度といった制約があるために、単位時間あたりの符号長が一定になるように符号化する必要がある。
【０００５】
従来はそのために、符号化方法として、ベクトル量子化等に基づく符号化方法が採用されている。かかる符号化方法においては、符号化の精度、すなわち、元の情報をどの程度詳しく再現し得るように符号化するか、が決定されると、圧縮率も決定される。
【０００６】
よって、符号化の精度を決定すれば、自動的に、単位時間あたりの符号長が一定になり、好都合である。
【０００７】
別の観点からみれば、符号化にあたっての精度は、ビットレートの制約から逆算して決定されればよいので、好都合である。
【０００８】
かかる符号化方法を採る場合、符号長を長くしたり短くしたりするには、例えば、予測分析の次数を、それぞれ、増加させたり減少させたりすればよい。従来は、予測分析の次数は、あらかじめ、ビットレートの制約を満たす範囲内で最大化した特定の次数に固定されていた。
【非特許文献１】今井聖、住田一男、古市千枝子著「音声合成のためのメル対数スペクトル近似（ＭＬＳＡ）フィルタ」、電子通信学会論文誌、第Ｊ６６−Ａ巻、第２号、ｐ．１２２−１２９、１９８３年
【発明の開示】
【発明が解決しようとする課題】
【０００９】
一方、符号化方法の中には、符号化対象となる信号に含まれる数値の発生頻度を考慮して符号化する、エントロピ符号化方法と呼ばれる符号化方法もある。
【００１０】
符号化の精度が等しいという前提で、エントロピ符号化方法と上述のベクトル量子化等に基づく符号化方法とを比較すると、符号化対象の音声信号が継続している時間のうち、前者の方が圧縮率が高い時間帯がしばしばある。
【００１１】
換言すれば、かかる時間帯においてベクトル量子化等に基づく符号化方法を採用することは、限られたビットレートを無駄遣いしているといえる。
【００１２】
しかし、そうであるからといって、ベクトル量子化等に基づく符号化方法を単純にエントロピ符号化方法に置換すればよいわけではない。その理由は、次のようなものである。すなわち、エントロピ符号化方法は、符号化の精度が一定であっても、圧縮率は一意には定まらない。よって、該圧縮率が、ベクトル量子化等に基づく符号化方法による圧縮率よりも低くなってしまう場合もある。つまり、符号化対象の音声信号が継続している時間のうちには、ビットレートの制約を満たさない時間帯も生じ得るため、不都合である。
【００１３】
以上のように、一律にベクトル量子化等に基づく符号化方法を採用すると、与えられたビットレートを十分に活用することができない。一方で、かわりに単純にエントロピ符号化方法を採用して圧縮率の向上を目指そうとすると、ビットレートの制約を満たすことができない時間帯が発生してしまう。
【００１４】
本発明は、かかる事情に鑑みてなされたもので、限られたビットレートを最大限有効に活用する音声符号化装置、音声復号装置、音声符号化方法、音声復号方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するために、この発明の第１の観点に係る音声符号化装置は、
音声信号を所定の次数の予測分析により予測係数と残差信号とに分解する予測分析部と、
前記残差信号のゲインを求めるゲイン抽出部と、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出部と、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化部と、
前記符号の長さが許容長を超えるか否かを判別し、符号の長さが許容長を超えると判別された場合には、前記予測分析部における予測分析の次数を減らして前記一連の符号化動作を繰り返し実行させる制御部と、
を備えたことを特徴とする。
【００１６】
かかる符号化装置によれば、情報伝達量に制約のある状況において、該制約のもとで可能な最高の品質を有する音声を再生するための符号化音声信号を生成することができる。予測分析の次数が大きいほど、再生音声は明りょうとなるからである。
【００１７】
前記有声無声判別及びピッチ抽出部は、前記残差信号からあらかじめ低域部を抽出するローパスフィルタを備え、前記低域部が有声音か無声音かを判別するとともに該低域部が有声音であると判別された場合には該低域部からピッチ周波数を抽出するのが望ましい。
【００１８】
有声音を特徴づける量であるピッチ周波数は比較的低い帯域に存在するので、ピッチ周波数の抽出の前に残差信号をローパスフィルタに通すことにより、有声音か無声音かの判別の精度が上がる。
【００１９】
前記符号化部は、エントロピ符号化を行う、ことが望ましい。
【００２０】
予測分析の次数を大きめに設定しておいた上で符号化方法としてエントロピ符号化方法を採用し、与えられた通信ビットレートを超えそうな場合だけ予測分析の次数を減らして符号長を短くすることにすれば、許容された情報伝達量を無駄なく活用して音質向上に役立てることができる。
【００２１】
前記予測分析部は、音声信号を、例えば、線型予測分析により予測係数と残差信号とに分解する。
【００２２】
前記予測分析部は、音声信号を、あるいは例えば、ＭＬＳＡ（Mel Log Spectrum Approximation）分析により予測係数と残差信号とに分解する。
【００２３】
上記目的を達成するために、この発明の第２の観点に係る音声復号装置は、
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信部と、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号部と、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生部と、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成フィルタと、
を備える。
【００２４】
音声復号装置が、予測係数と、残差信号のゲインと、有声音か無声音かの判別結果と、さらに、有声音であればそのピッチ周波数と、を受け取った場合、音声復元のために必要な励起用信号を最も簡潔かつ確実に生成するためには、上述のような仕組みの信号発生部を設けることが適切である。
【００２５】
上記目的を達成するために、この発明の第３の観点に係る音声符号化方法は、
音声信号を予測分析により予測係数と残差信号とに分解する予測分析ステップと、
前記残差信号のゲインを求めるゲイン抽出ステップと、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出ステップと、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化ステップと、
前記符号の長さを算出し該長さが許容長を超えるか否かを判別する符号長検討ステップと、
から構成され、
前記符号長検討ステップにおいて前記符号の長さが前記許容長を超えると判別された場合には、前記予測分析ステップにおける予測分析の次数を減らして、前記予測分析ステップと、前記ゲイン抽出ステップと、前記有声無声判別及びピッチ抽出ステップと、前記符号化ステップと、前記符号長検討ステップと、が繰り返される、
ことを特徴とする。
【００２６】
上記目的を達成するために、この発明の第４の観点に係る音声復号方法は、
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信ステップと、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号ステップと、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生ステップと、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成ステップと、
から構成される。
【００２７】
上記目的を達成するために、この発明の第５の観点に係るコンピュータプログラムは、
コンピュータに、
音声信号を予測分析により予測係数と残差信号とに分解する予測分析ステップと、
前記残差信号のゲインを求めるゲイン抽出ステップと、
前記残差信号が有声音か無声音かを判別するとともに該残差信号が有声音であると判別された場合には該残差信号からピッチ周波数を抽出する有声無声判別及びピッチ抽出ステップと、
前記予測係数と前記ゲインと前記判別の結果と該判別の結果前記ピッチ周波数が抽出された場合には該ピッチ周波数とを符号に変換する符号化ステップと、
前記符号の長さを算出し該長さが許容長を超えるか否かを判別する符号長検討ステップと、
前記符号長検討ステップにおいて前記符号の長さが前記許容長を超えると判別された場合には、前記予測分析ステップにおける予測分析の次数を減らして、前記予測分析ステップと、前記ゲイン算出ステップと、前記有声無声判別及びピッチ抽出ステップと、前記符号化ステップと、前記符号長検討ステップと、を繰り返す再符号化ステップと、
を実行させる。
【００２８】
上記目的を達成するために、この発明の第６の観点に係るコンピュータプログラムは、
コンピュータに、
音声信号に予測分析と符号化が施された結果生成された、符号化予測係数と符号化残差信号ゲインと該音声信号が無声音であるか又はあるピッチ周波数を有する有声音であるかという符号化有声無声情報とを受信する受信ステップと、
前記符号化予測係数と前記符号化残差信号ゲインと前記符号化有声無声情報とから予測係数と残差信号ゲインと有声無声情報とを復号する復号ステップと、
前記音声信号が無声音である場合には前記残差信号ゲインと等しいゲインを有する雑音を励起用信号として生成し、前記音声信号が有声音である場合には前記残差信号ゲインと等しいゲインを有し前記ピッチ周波数と等しい周波数を有するパルス列を励起用信号として生成する信号発生ステップと、
前記予測係数と前記励起用信号とを合成することにより音声を復元する合成ステップと、
を実行させる。
【発明の効果】
【００２９】
本発明によれば、所定の通信容量を超えないという条件の下で、元の音声の音質を最大限に保持するように音声を符号化及び復号することが可能となる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の実施の形態に係る音声符号化装置及び音声復号装置について詳細に説明する。
【００３１】
図１は、本実施形態に係る音声符号化装置１１１の機能構成図である。
【００３２】
音声符号化装置１１１は、図示するように、マイクロフォン１２１と、Ａ／Ｄ変換部１２３と、予測分析部１２５と、ゲイン抽出部１２７と、ローパスフィルタ１２９と、有声無声判別及びピッチ抽出部１３１と、符号化部１３３と、スイッチ１３５と、予測分析次数調整部１３７と、送信部１３９と、を備える。予測分析部１２５は、予測分析用逆フィルタ算出器１４１を内蔵している。
【００３３】
まず、マイクロフォン１２１に音声が入力される。該音声はアナログ信号である。一方、後に行われる分析及び符号化は離散的な処理である。よって、それに備えるために、該アナログ信号は、Ａ／Ｄ変換部１２３によってデジタル音声信号に変換されて、予測分析部１２５に送られる。
【００３４】
予測分析部１２５は、Ａ／Ｄ変換部１２３から引き渡されたデジタル音声信号に対して、予測分析を施す。予測分析としては、例えば、線型予測分析を用いる。あるいは、ＭＬＳＡ（Mel Log Spectrum Approximation）分析を用いてもよい。いずれも既知の手法である。両分析の手順については、後に図４を用いて詳細に説明する。
【００３５】
予測分析部１２５が行う予測分析とは、簡潔にいうと、デジタル音声信号を時分割し、各時間区間について、該時間区間における予測係数及び残差信号を算出する手続である。該時間区間の長さは、例えば、5ｍｓが好適である。
【００３６】
以下では、Ａ／Ｄ変換部１２３から予測分析部１２５に送られるデジタル音声信号は、M個の時間区間に時分割されるものとする。また、各時間区間に含まれるデジタル音声信号データの個数をlとする。すると、デジタル音声信号全体には、(l×M)個のデータが含まれていることになる。
【００３７】
予測分析部１２５は、全体としては、各時間区間中のデジタル音声信号Si＝{si、0、・・・、si、l−1}(0≦i≦M−1)を、予測分析の次数に等しい個数の予測係数と、残差信号Di＝{di、0、・・・、di、l−1}(0≦i≦M−1)と、に分解する機能を有する。
【００３８】
より詳細には、予測分析部１２５は、まず、入力されたデジタル音声信号から予測係数を算出する。このとき、予測分析の次数は、所定の初期値である。
【００３９】
次に、予測分析部１２５に内蔵された予測分析用逆フィルタ算出器１４１が、該予測係数から、予測分析用逆フィルタを算出する。続いて、該予測分析用逆フィルタにＡ／Ｄ変換部１２３からのデジタル音声信号が入力されたときの出力として、残差信号Di(0≦i≦M−1)が求まる。
【００４０】
予測係数は、そのまま符号化部１３３に送られる。
【００４１】
一方、残差信号は、符号化部１３３には、直接には引き渡されない。残差信号をそのまま符号化部１３３に送って符号化すると、符号化されても情報量がまだ大きすぎて、本実施の形態に係る音声符号化装置１１１が前提としている音声圧縮に反する結果となるからである。
【００４２】
よって、残差信号は、できる限りその本質的な特徴だけを抽出することによりあらかじめ情報量を減少させてから、符号化部１３３に引き渡す必要がある。
【００４３】
予測分析部１２５により生成された残差信号Di(0≦i≦M−1)は、ゲイン抽出部１２７と、ローパスフィルタ１２９と、に引き渡される。
【００４４】
ゲイン抽出部１２７は、残差信号のゲインすなわち大きさを求める。かかる大きさの求め方には様々な方法が考えられるが、例えば、次式のように、i番目の時間区間におけるサンプル値の２乗平均を基にした値をゲインGiとする。
Gi＝10×ｌｏｇ10{(di、02＋・・・＋di、l−12)／l}
【００４５】
ここで、対数をとるのは、人間の聴覚が、音の大きさに対して対数的な感度を有することに基づく。
【００４６】
こうして算出されたゲインGiは、符号化部１３３に引き渡される。
【００４７】
一方、ローパスフィルタ１２９は、残差信号の低周波成分、例えば500Ｈｚ〜1ｋＨｚの成分を抽出する。これは、次に行う有声無声判別の精度を向上させるためである。換言すれば、有声音か無声音かを判別するためには、かかる低周波成分以外の成分は、不要であり、さらには、かえって判別の精度を低下させる要因になりかねないので、かかる判別の前にカットしておくのである。
【００４８】
残差信号Di＝{di、0、・・・、di、l−1}(0≦i≦M−1)は、ローパスフィルタ１２９を通されることにより、低域残差信号DLow、i＝{dLow、i、0、・・・、dLow、i、l−1}(0≦i≦M−1)に変換される。低域残差信号DLow、i＝{dLow、i、0、・・・、dLow、i、l−1}(0≦i≦M−1)は、有声無声判別及びピッチ抽出部１３１に引き渡される。
【００４９】
有声無声判別及びピッチ抽出部１３１は、低域残差信号DLow、i(0≦i≦M−1)が有声音であるか無声音であるかという判別結果を符号化部１３３に送る。また、該判別の結果、有声音であると判別された場合には、該判別結果に加えて、ピッチ周波数も、符号化部１３３に送る。これらの処理については、後に図５を参照して詳細に説明する。
【００５０】
このように、残差信号からは、ゲインと、有声音か無声音かの判別結果及び有声音であった場合にはピッチ周波数が抽出されて、符号化部１３３に送られる。これらの抽出された値及び判別結果は、音声信号の性質を考慮すると、情報量が少ない割には残差信号の性質を本質的に特徴づけるものであるといえる。このように残差信号の特徴量だけを符号化の対象とすることは、残差信号全体を丸ごと符号化する場合に比べ、符号化後の符号長が減少する割には、後述の音声復号装置により復元される残差信号の劣化の程度が、聴覚の特性上、小さい。よって、符号化の前に残差信号について上述の処理を施すことは、本実施形態に係る音声符号化装置１１１が前提とする程度までの音声圧縮を可能にしつつ、後述の音声復号装置により復元された音声の、元の音声に対する劣化の程度を許容限度内に収める結果となる。
【００５１】
結局、符号化部１３３には、予測分析部１２５からは予測係数が、ゲイン抽出部１２７からはゲインが、有声無声判別及びピッチ抽出部１３１からは有声音か無声音かの判別結果及び有声音であった場合にはピッチ周波数が、引き渡される。符号化部１３３は、これらをまとめて符号化する。
【００５２】
符号化部１３３は、符号化方法として、エントロピ符号化方法を採用する。エントロピ符号化方法には、圧縮率が予測できないという短所がある反面、符号化対象データに含まれる要素の出現頻度の分布の偏り次第では、極めて高い圧縮率が実現できる場合もある。圧縮率が高いということは、より高品質の音声を復元可能にする信号を送信できるということである。送信可能な元の情報量を増やせるので、元の音声に関するより多くの特徴量を送信できるからである。
【００５３】
エントロピ符号化方法には、例えば、ハフマンコードや、RangeCoderがある。
【００５４】
一般に、音声信号通信においては、単位時間あたりの情報伝達可能量が一定である。従って、音声信号通信に採用すべき符号化方法としては、上述のように、圧縮率にいわばムラがあるエントロピ符号化方法は、一見、適さないように思われる。
【００５５】
しかしこれについては、圧縮率が高くなった時間区間においては、そのことを生かして高品質音声信号を伝達し、圧縮率が低くなった時間区間においては、符号化対象となる特徴量の数を与えられた情報容量に収まるまで少なくすることにより、対処することができる。
【００５６】
このような方針を採用することにより、全ての時間区間について総合的に判断すれば、圧縮率が一定の通常の符号化方法を用いる場合よりも、エントロピ符号化方法を用いる場合の方が、良質の音声の再生に資するといえる。
【００５７】
本実施形態は、かかる方針を具体化したものである。そのためには特に、予測分析次数調整部１３７が重要な役割を果たす。
【００５８】
上述のように、予測分析部１２５は、入力されたデジタル音声信号に対して、所定の初期値を予測分析の次数として、予測分析を行う。
【００５９】
一般に、予測分析の次数が大きいほど、符号化部１３３に引き渡される情報の量は、増加し、かつ、元の音声信号を忠実に再生するにあたり有利になる。
【００６０】
しかし、符号化部１３３に引き渡される情報の量が増加すると、符号化方法として圧縮率にムラのあるエントロピ符号化方法を用いたとしても、平均的にみれば、符号化後の符号長が長くなるのは確かである。よって、かかる符号長が、与えられた情報伝達容量に収まるようにするためには、予測分析の次数に上限があるといえる。
【００６１】
ただし、エントロピ符号化方法が、圧縮率の変動する符号化方法であるために、予測分析の次数における前記上限は単純には定まらない。
【００６２】
本実施例においては、かかる上限を、エントロピ符号化方法が最も高い圧縮率を達成した場合を基準にして決定し、それを予測分析にあたっての上述の所定の初期値とする。
【００６３】
前述のとおり、高圧縮ができた場合はそれを生かして高品質の音声の再生に役立てる一方、低圧縮にとどまる場合には元の情報の削減量をできるだけ抑えて再生音声の品質低下を最小限に抑える、というのが、本実施例において採られる方針である。
【００６４】
そこで、最初は、最も圧縮率が高くなる場合に該当することを期待して、上述の初期値を予測分析の次数とした予測分析を行う。そして、符号化部１３３は、実際にエントロピ符号化を行い、符号長を求め、予測分析次数調整部１３７に通知する。なお、この時点ではスイッチ１３５は開いており、符号化部１３３により生成されたエントロピ符号は送信部１３９に引き渡されないため、符号が送信されることはない。
【００６５】
予測分析次数調整部１３７は、符号化部１３３から通知された符号長が、与えられた情報通信容量の制限を満たしているか否かを判別する。かかる制限を満たしていると判別された場合には、スイッチ１３５に対し送信の許可を指示する。送信許可の指示を受けたスイッチ１３５は閉じ、符号化部１３３が生成したエントロピ符号は送信部１３９に引き渡され、後述の音声復号装置２１１に向けて送信される。
【００６６】
上述のとおり、予測分析の次数の初期値は、エントロピ符号化方法にとって最も好都合な場合を基に定められたものであるから、多くの場合は、予測分析次数調整部１３７は、符号化部１３３から通知された符号長が、前記制限を満たしていないと判別し、スイッチ１３５に対して送信不許可の指示を送る。送信不許可の指示を受けたスイッチ１３５は開いたままとなり、エントロピ符号が送信部１３９に引き渡されることはなく、したがって送信されることもない。
【００６７】
このようにエントロピ符号長が所定の符号長を超えている場合には、予測分析次数調整部１３７は、予測分析部１２５に対して、予測分析の次数を１だけ減少させた上でもう一度予測分析をやり直すように命じる。予測分析の次数が減少すると、符号化部１３３に送られる情報量は減るから、符号化部１３３が生成するエントロピ符号の符号長が所定の符号長以下になる可能性は先の場合よりも高い。
【００６８】
生成されたエントロピ符号の符号長は再び予測分析次数調整部１３７に通知される。予測分析次数調整部１３７は先の場合と同様の判別を行い、スイッチ１３５に送信の許可を通知するか、スイッチ１３５に送信の不許可を通知するとともに予測分析部１２５に対して予測分析の次数をさらに１だけ減少させた上で予測分析をやり直させる。
【００６９】
このような手順を踏めば、いずれは、予測分析次数調整部１３７からスイッチ１３５に送信許可が出され、エントロピ符号が送信部１３９に引き渡されて、さらに、後述の音声復号装置に送信される。
【００７０】
送信部１３９は、本実施形態においては、無線通信による送信方法を採用するものとするが、他の、有線通信や、有線と無線を併用した通信など、様々な方法であってもよい。
【００７１】
以上のようにすれば、エントロピ符号化方法を採用することにより、与えられた情報通信容量を最大限活用して高品質な音声の再生に役立てるという本実施形態の方針に沿うことになる。
【００７２】
例えば、サンプリング周波数が8ｋＨｚの場合は、予測分析の次数の初期値を10とし、オーバーフローした場合には、目標符号長になるまで該次数を9、8、・・・のように1ずつ下げていく。
【００７３】
図２は、本実施形態に係る音声復号装置２１１の機能構成図である。
【００７４】
音声復号装置２１１は、図示するように、受信部２３１と、復号部２３３と、残差信号復元部２３５と、合成用フィルタ算出部２３７と、合成用フィルタ部２３９と、Ｄ／Ａ変換部２４１と、スピーカ２４３と、を備える。
【００７５】
受信部２３１は、図１の音声符号化装置１１１の送信部１３９から、無線通信手段によって、予測係数と残差信号情報がまとめて符号化されたもの（エントロピ符号）を受け取り、復号部２３３に引き渡す。
【００７６】
復号部２３３は、受信部２３１から引き渡されたエントロピ符号を復号して、各時間区分における、予測係数と、残差信号のゲインと、残差信号の有声無声判別結果及び有声の場合のピッチ周波数と、を生成する。なお、音声復号装置２１１には、音声合成に必要な情報である、音声符号化装置１１１が結局何次の予測分析を行ったかという情報は、直接には伝達されていない。しかしかかる情報は、復号された予測係数の個数をカウントすることにより得られる。
【００７７】
残差信号に関して復号された情報である、ゲインと、残差信号の有声無声判別結果及び有声の場合のピッチ周波数と、は、残差信号復元部２３５に引き渡される。
【００７８】
残差信号復元部２３５は、元の音声の残差信号をいくつかの特徴量に集約した結果に基づいて残差信号を復元する。この意味では、残差信号復元部２３５は、疑似残差信号生成部であるともいえる。
【００７９】
残差信号復元部２３５が生成する疑似残差信号を、D'i＝{d'i、0、・・・、d'i、l−1}(0≦i≦M−1)と表す。疑似残差信号D'iは、パルス列又は雑音である。残差信号復元部２３５は、受け取った有声無声判別結果が有声音であれば、受け取ったピッチ周波数と同じピッチ周波数を有し、受け取ったゲインに対応する大きさを有するパルス列を生成する。一方、受け取った有声無声判別結果が無声音であれば、あらかじめ用意しておいた、ランダムな時間間隔を有する大きさ１の信号値列に、受け取ったゲインに対応する大きさを乗じることにより、雑音列を生成する。かかるパルス列又は雑音列を生成する手順については、後に図６を用いて詳細に説明する。疑似残差信号D'iは、合成用フィルタ部２３９に、励起用の信号として引き渡される。
【００８０】
一方、復号部２３３によって復号された予測係数は、合成用フィルタ算出部２３７に引き渡され、音声合成用のフィルタを算出するために用いられる。音声合成用のフィルタとは、該フィルタに励起用の信号を入力することにより音声信号が再生されるような性質を有するフィルタである。
【００８１】
合成用フィルタ算出部２３７によるフィルタ算出結果は、合成用フィルタ部２３９に送られる。合成用フィルタ部２３９は、受け取ったフィルタ算出結果に従って、自身の仕様を決定する。あるいは、合成用フィルタ算出部２３７によって、合成用フィルタ部２３９が生成されると考えてもよい。
【００８２】
かかる合成用フィルタ部２３９に前述の疑似残差信号D'iを励起用の信号として入力すれば、デジタルデータとしての音声信号が復元される。以上の音声信号復元の手順については、後に図７を参照して詳しく説明する。
【００８３】
合成用フィルタ部２３９から出力された再生信号は、Ｄ／Ａ変換部２４１によりアナログ音声信号に変換された後、スピーカ２４３に伝達される。スピーカ２４３は受け取ったアナログ信号に従って実際に音声を発する。
【００８４】
ここまで機能構成図である図１及び図２を参照して説明してきた音声符号化装置１１１及び音声復号装置２１１は、物理的には、使い勝手の観点から両装置の機能を統合した、図３に示される音声符号化兼復号装置３１１により実現される。以下では、音声符号化兼復号装置３１１として携帯電話機を想定して説明する。
【００８５】
音声符号化兼復号装置３１１は、図１に既に示してあるマイクロフォン１２１と、図２に既に示してあるスピーカ２４３と、を備え、さらに、アンテナ３５３と、操作キー３６３と、を備える。
【００８６】
音声符号化兼復号装置３１１は、ＣＰＵ３２１と、ＲＯＭ（Read Only Memory）３２３と、記憶部３２５と、音声処理部３４１と、無線通信部３５１と、操作キー入力処理部３６１と、をさらに備え、これらはシステムバス３７１で相互に接続されている。システムバス３７１は、命令やデータを転送するための伝送経路である。
【００８７】
ＲＯＭ３２３には、音声符号化及び復号のための動作プログラムや、音声符号化兼復号装置３１１の全体の制御に必要なオペレーティングシステムが格納されている。
【００８８】
本実施の形態においては、図１の予測分析部１２５、ゲイン抽出部１２７、ローパスフィルタ１２９、有声無声判別及びピッチ抽出部１３１、スイッチ１３５、予測分析次数調整部１３７、図２の残差信号復元部２３５、合成用フィルタ算出部２３７、合成用フィルタ部２３９、の機能は、図３のＣＰＵ３２１による数値処理により実現される。ＲＯＭ３２３に格納されている動作プログラムには、ＣＰＵ３２１によるかかる数値処理のためのプログラムが含まれている。
【００８９】
ＣＰＵ３２１は、ＲＯＭ３２３に格納された動作プログラムやオペレーティングシステムを実行することにより、音声を符号化又は復号する。
【００９０】
このように、ＣＰＵ３２１は、ＲＯＭ３２３に格納された動作プログラムに従って、数値演算を行う。そのためには、処理対象である数値列、例えばデジタル音声信号Si(0≦i≦M−1)を格納したり、処理結果である数値列、例えば残差信号Di(0≦i≦M−1)を格納したりするための記憶部３２５が必要となる。
【００９１】
記憶部３２５は、ＲＡＭ（Random Access Memory）３３１と、ハードディスク３３３と、から構成されて、予測分析の次数、デジタル音声信号、予測係数、残差信号、ゲイン、有声無声判別結果、有声音のピッチ周波数、予測係数と残差信号情報がまとめて符号化されたもの、パルス列、雑音列、逆フィルタ算出結果、疑似残差信号、等を記憶する。
【００９２】
ＣＰＵ３２１は、レジスタ（図示せず）を内蔵しており、ＲＯＭ３２３から読み出した動作プログラムに従って、処理対象である数値列等を適宜記憶部３２５から該レジスタにロードし、ロードされた数値列等に所定の演算を施し、その結果を記憶部３２５に格納する。
【００９３】
無線通信部３５１と音声処理部３４１は、音声符号化兼復号装置３１１が音声符号化装置１１１（図１）となる場合は、次のように機能する。すなわち、マイクロフォン１２１に入力され音声処理部３４１が備えるＡ／Ｄ変換部１２３（図１）によりデジタル信号に変換された音声は、ＣＰＵ３２１、ＲＯＭ３２３、記憶部３２５により図１に示した過程を経て符号化される。そして、無線通信部３５１は送信部１３９（図１）として機能すべく、アンテナ３５３を用いて相手（受信側となる、別の音声符号化兼復号装置３１１。）に符号化予測係数及び符号化残差信号情報を送信する。
【００９４】
無線通信部３５１と音声処理部３４１は、音声符号化兼復号装置３１１が音声復号装置２１１（図２）となる場合は、次のように機能する。すなわち、無線通信部３５１は受信部２３１（図２）として機能すべく、アンテナ３５３を用いて符号化予測係数及び符号化残差信号情報を受信する。受信された信号は、ＣＰＵ３２１、ＲＯＭ３２３、記憶部３２５により図２に示した過程を経てデジタル音声信号に復号される。デジタル音声信号は音声処理部３４１が備えるＤ／Ａ変換部２４１（図２）を用いてアナログ音声信号に変換され、スピーカ２４３から音声として出力される。
【００９５】
操作キー入力処理部３６１は、操作キー３６３からの操作信号を受け付けて、操作信号に対応するキーコード信号をＣＰＵ３２１に入力する。ＣＰＵ３２１は、入力されたキーコード信号に基づいて操作内容を決定する。
【００９６】
設定済みの変数等について、ユーザが操作キー３６３を用いて、自分が使いやすいように、音声符号化兼復号装置３１１をカスタマイズできるようにしてもよい。例えば、予測分析の次数の初期値は、原則としては、既に述べた考察に基づきあらかじめ決定され、ＲＯＭ３２３に格納されたプログラム中に記述済みである。しかし、これをユーザが操作キー３６３を用いて書き換えられるようにしてもよい。該初期値を小さくすれば、エントロピ符号化の利点が十分には発揮されなくなるが、平均的にみて少ない試行回数で所定の符号長に収まることになるので、処理速度が向上し、ユーザが通話の際のリアルタイム感の向上を実感できることもあり得る。
【００９７】
また、操作キー３６３は、音声符号化兼復号装置３１１を音声符号化装置１１１として機能させる場合に、多数流布している他の音声符号化兼復号装置３１１のうち、送信相手となる装置を特定するための番号（電話番号など）を入力するためにも必要となる。
【００９８】
（予測分析の手順）
以下では、図１の予測分析部１２５が行う予測分析について、図４に示すフローチャートを参照しつつ説明する。予測分析としては、例えば、線型予測分析やＭＬＳＡ（Mel Log Spectrum Approximation）分析が知られている。図４では、後者を括弧書きにして、両分析が併記されている。
【００９９】
記憶部３２５（図３）には、既に、デジタル音声信号（入力波形）Si＝{si、0、・・・、si、l−1}(0≦i≦M−1)が格納されているとする。
【０１００】
ＣＰＵ３２１（図３）は、内蔵のカウンタレジスタ（図示せず）を入力信号サンプルカウンタiの格納に用いることとし、初期値として、i＝0とする（図４のステップＳ４１１）。
【０１０１】
ＣＰＵ３２１は、内蔵の汎用レジスタ（図示せず）に、記憶部３２５（図３）から、入力信号サンプルSi＝{si、0、・・・、si、l−1}をロードする（図４のステップＳ４１３）。
【０１０２】
ＣＰＵ３２１は、線型予測分析の場合は、入力信号サンプルSiから、線型予測係数Ai＝{ai、1、・・・、ai、n}を計算する（ステップＳ４１５）。ただし、nは線型予測分析の次数である。計算方法としては、残差信号が所定の尺度に基づき十分に小さいと評価されることになるような計算方法であれば、任意の既知の手法を採用してよい。例えば、よく知られている、自己相関関数の計算とレビンソン・ダービンアルゴリズムを組み合わせた計算方法を採用するのが好適である。
【０１０３】
ＣＰＵ３２１は、ＭＬＳＡ分析の場合は、入力信号サンプルSiから、まず、ケプストラムCi＝{ci、0、・・・、ci、(l/2)−1}を計算する。かかる計算には、任意の既知の手法を採用してよい。どの手法においても、概ね、離散フーリエ変換をする、絶対値をとる、対数をとる、逆離散フーリエ変換をする、といった手続が行われる。次に、求めたケプストラムCiから、任意の既知の手法により、ＭＬＳＡフィルタ係数Mi＝{mi、0、・・・、mi、p−1}を計算する（ステップＳ４１５）。なお、ＭＬＳＡ分析の場合、pが予測分析の次数に相当する。
【０１０４】
線型予測分析の場合は線型予測係数Ai＝{ai、1、・・・、ai、n}が、ＭＬＳＡ分析の場合はＭＬＳＡフィルタ係数Mi＝{mi、0、・・・、mi、p−1}が、記憶部３２５に予測係数として記憶される（ステップＳ４１７）。
【０１０５】
続いて、線型予測分析の場合、線型予測係数Aiから、任意の既知の手法により、予測分析用逆線型予測フィルタAIAiが計算され、ＭＬＳＡ分析の場合、ＭＬＳＡフィルタ係数Miから、任意の既知の手法により、予測分析用逆ＭＬＳＡフィルタAIMiが計算される。（ステップＳ４１９）これらの計算は、図１の予測分析用逆フィルタ算出器１４１が行う計算に相当する。
【０１０６】
求めた予測分析用逆線型予測フィルタAIAi又は予測分析用逆ＭＬＳＡフィルタAIMiに入力信号サンプルSi＝{si、0、・・・、si、l−1}が通されることにより、残差信号Di＝{di、0、・・・、di、l−1}が求まる（図４のステップＳ４２１）。残差信号Diは記憶部３２５に記憶される（ステップＳ４２３）。
【０１０７】
ここで、入力信号サンプルカウンタiがM−1に達しているか否かが判別される（ステップＳ４２５）。達していれば（ステップＳ４２５；Ｙｅｓ）、終了する。一方、達していなければ（ステップＳ４２５；Ｎｏ）、次の時間区間の入力信号サンプルについての処理を行うために、iを1だけインクリメントし（ステップＳ４２７）、ステップＳ４１３以降の処理を繰り返す。
【０１０８】
（エントロピ符号生成の手順）
以下では、図１の予測分析次数調整部１３７の制御下で行われる、予測分析、ゲイン抽出、有声無声判別及びピッチ抽出、エントロピ符号化の試行、及び、実際に送信されるエントロピ符号の生成、の手順について、図５に示すフローチャートを参照しつつ説明する。ここでは予測分析として線型予測分析を採用した場合について説明するが、ＭＬＳＡ分析を採用した場合も同様である。
【０１０９】
ＣＰＵ３２１（図３）は、入力信号サンプルカウンタiをi＝0に設定し（図５のステップＳ５１１）、線型予測係数Aiの次数nを既に述べた考察に基づく所定の値であるninitialに設定する（ステップＳ５１３）。
【０１１０】
続いて、図４に示した手順に従って、入力信号サンプルSi＝{si、0、・・・、si、l−1}から、線型予測係数Ai＝{ai、1、・・・、ai、n}及び残差信号Di＝{di、0、・・・、di、l−1}が計算される（図５のステップＳ５１５）。
【０１１１】
残差信号DiからゲインGiが計算される（ステップＳ５１７）。Giは、既に述べたとおり、例えば、
Gi＝10×ｌｏｇ10{(di、02＋・・・＋di、l−12)／l}
のように計算される。
【０１１２】
次に、i番目の時間区間の音声が、有声音であるか、それとも、無声音であるか、が判別される。有声音であるか否かは、換言すれば、残差信号Di（又は、ローパスフィルタ１２９（図１）通過後の低域残差信号DLow、iであるが、以下では、DLow、iも単にDiと記す。）がピッチとしての性質を有しているか否か、ということである。残差信号Diに周期性があれば、ピッチとしての性質を有しているといえる。そこで、Diに周期性があるか否かを調べる。
【０１１３】
周期性の有無を調べるには任意の既知の手法を用いてよいが、例えば、規格化された自己相関関数を求めてそこに十分な大きさの極大値が存在するか否かを調べるのが好適である。かかる極大値が存在すれば周期性も存在するといえるし、さらに、かかる極大値をもたらす時間間隔tMAXこそが周期であるといえる。一方、かかる極大値が存在しなければ、周期性はないといえる。
【０１１４】
残差信号Diの自己相関関数C(t)は、
C(t)＝di、0×di、t
＋di、1×di、t+1
＋・・・
＋di、l-1-t×di、l-1
である。この式から分かるように、tは、残差信号Diに含まれる要素の個数を単位とした間隔である。よって、厳密には、残差信号Diに含まれる各要素がサンプリングされた時間間隔をtに乗じたものがここで検討すべき時間間隔である。したがって、この点では、ピッチ周波数を求めるにあたっては注意が必要である。もっとも、通常、残差信号Diに含まれる各要素がサンプリングされた時間間隔は一定であるから、ここで検討すべき時間間隔はtに比例する。よって、以下では、混同のおそれがない場合には、ここで検討すべき時間間隔を単にtと記す。
【０１１５】
自己相関関数C(t)の規格化にあたっては、自己相関関数C(t)の大きさが残差信号Diの全体としての大きさに依存しないようにする方法であればいかなる方法であってもかまわないが、例えば、規格化因子REG(t)を
REG(t)＝{(di、02＋・・・＋di、l-1-t2)
×(di、t2＋・・・＋di、l-12)}0.5
のように定義し、規格化自己相関関数CREG(t)を
CREG(t)＝C(t)／REG(t)
と定義するのが好適である。
【０１１６】
前記所定の閾値Cthは、規格化自己相関関数CREG(t)に明りょうな極大値が存在するか否かの判別に役立つ数値であれば任意の値でよいが、例えば、0.5とするのが好適である。
【０１１７】
このように、ステップＳ５１９では、残差信号Diから規格化自己相関関数CREG(t)を算出し、CREG(t＝tMAX)＞Cth（＝0.5）なる極大値CREG(t＝tMAX)が存在するか否かを判別する。
【０１１８】
存在する場合には残差信号Diは有声音としての性質を有するといえるから（ステップＳ５１９；Ｙｅｓ）、有声音か無声音かを表す変数であるFlagVorUV、iをFlagVorUV、i＝"V"（有声音を意味する。）と設定して記憶部３２５に格納する。さらに、規格化自己相関関数CREG(t)に極大値をもたらしたtの値であるtMAXの逆数をとることによりピッチ周波数Pitchiを算出し、記憶部３２５に格納し（ステップＳ５２１）、ステップＳ５２５に進む。
【０１１９】
規格化自己相関関数CREG(t)にCREG(t)＞Cth（＝0.5）なる極大値をもたらすようなtが存在しない場合（ステップＳ５１９；Ｎｏ）には、FlagVorUV、i＝"UV"（無声音を意味する。）と設定して記憶部３２５に格納し（ステップＳ５２３）、ステップＳ５２５に進む。
【０１２０】
ステップＳ５２５では、線型予測係数Ai、ゲインGi、ピッチ判別フラグFlagVorUV、i、及び、存在するならばピッチ周波数Pitchi、を、例えばハフマンコードやRangeCoderといったエントロピ符号化方法により、まとめてエントロピ符号化する。そして、生成されたエントロピ符号の符号長を計算する。
【０１２１】
続いて、計算された符号長が、送信可能通信容量等の事情を勘案してあらかじめ定められている目標符号長以下であるか否かが判別される（ステップＳ５２７）。オーバーフローを起こしている場合、すなわち、計算された符号長が目標符号長よりも大きい場合（ステップＳ５２７；Ｎｏ）には、予測分析の次数nを1だけ減らしてから（ステップＳ５２９）、ステップＳ５１５に戻り、エントロピ符号化の試行を繰り返す。
【０１２２】
計算された符号長が目標符号長以下である場合（ステップＳ５２７；Ｙｅｓ）、ステップＳ５２５にて生成されたエントロピ符号が実際に送信されることになるので、それに備えて、該符号が記憶部３２５に記憶される（ステップＳ５３１）。
【０１２３】
続いて、iが(M−1)以上であるか否かが判別される（ステップＳ５３３）。iがM−1に達していれば（ステップＳ５３３；Ｙｅｓ）、全ての時間区間についての処理が完了したので、終了する。iがM−1に達していないのであれば（ステップＳ５３３；Ｎｏ）、次の時間区間についての処理を行うために、iを1だけ増加してから（ステップＳ５３５）、ステップＳ５１３に戻る。
【０１２４】
（パルス列又は雑音列の生成の手順）
以下では、図２の残差信号復元部２３５が行う処理について、図６に示すフローチャートを参照しつつ説明する。
【０１２５】
i番目の時間区分（0≦i≦M−1）における処理について説明する。
【０１２６】
ＣＰＵ３２１（図３）は、汎用レジスタに、記憶部３２５（図３）から、ゲインGiと有声無声判別変数FlagVorUV、iをロードする（図６のステップＳ６１１）。
【０１２７】
有声無声判別変数FlagVorUV、iがFlagVorUV、i＝”V”であるか否かを判別する（ステップＳ６１３）。すなわち、元の残差信号Diが有声音であったか否かを判別する。
【０１２８】
有声音であった場合（ステップＳ６１３；Ｙｅｓ）、図５のステップＳ５２１において、送信側の音声符号化兼復号装置３１１の有声無声判別及びピッチ抽出部１３１（図１）によりPitchiが生成されているはずであるから、符号化・送受信・復号を経て、受信側の音声符号化兼復号装置３１１の記憶部３２５にピッチ周波数Pitchiが格納されているはずである。そこで、Pitchiをロードする（ステップＳ６１５）。
【０１２９】
続いて、残差信号の復元作業を行う。すなわち、大きさがゲインGiであり、周期がピッチ周波数Pitchiであるようなパルス列D’i＝{d’i、0、・・・、d’i、l-1}を生成する（ステップＳ６１７）。これが復元された残差信号である。なお、パルス列D’iは、元の残差信号のサンプリング間隔と同じサンプリング間隔を想定して生成される。
【０１３０】
元の残差信号のサンプリング間隔に従ってD’iを生成したのであるから、実際には、その各要素d’i、0、・・・、d’i、l-1の値はそれぞれ0かGiの一方に限られる。しかも、これら時間順に並んだ要素の列においては、Pitchiの逆数であるピッチ周期に対応する個数間隔毎にGiが出現し、他の要素の値は0ということになる。
【０１３１】
ステップＳ６１３において元の残差信号が有声音ではなかったと判別された場合（ステップＳ６１３；Ｎｏ）、元の残差信号は無声音であると判別されていたことになる。そこで、ゲインGiを反映しつつ、雑音として適切な信号値の列D’i＝{d’i、0、・・・、d’ i、l-1}を、以下の手順により、生成する。
【０１３２】
まず、大きさが±１で、時間間隔が乱数であるような基本雑音列Ri＝{ri、0、・・・、ri、l-1}を生成する（ステップＳ６１９）。
【０１３３】
ここでは、元の残差信号のサンプリング間隔と同じサンプリング間隔であるとしてRiを生成する。よって、実際には、その各要素ri、0、・・・、r i、l-1の値はそれぞれ０か＋１か−１のいずれかである。しかも、これら時間順に並んだ要素の列においては、ランダムな個数間隔で＋１か−１が出現し、他の要素の値は０ということになる。
【０１３４】
得られた基本雑音列Riに、ロード済のゲインGiを乗じることにより、雑音列D’i＝{d'i、0、・・・、d'i、l-1｝が生成される（ステップＳ６２１）。
【０１３５】
このように、元の残差信号が有声音であった場合も無声音であった場合も、パルス列又は雑音列として復元された残差信号であるD’i＝{d’i、0、・・・、d’i、l-1}が生成される。これは後に音声信号の再生に用いるので、記憶部３２５に格納する（ステップＳ６２３）。
【０１３６】
（音声信号復元の手順）
以下では、図２の合成用フィルタ算出部２３７及び合成用フィルタ部２３９による音声信号復元の手順について、図７に示すフローチャートを参照しつつ説明する。予測分析として線型予測分析を採用した場合について説明するが、他の場合、例えばＭＬＳＡ分析を採用した場合も、手順は同様である。
【０１３７】
ＣＰＵ３２１（図３）は、カウンタレジスタにおいて、入力信号サンプルカウンタをi＝0とする（図７のステップＳ７１１）。
【０１３８】
ＣＰＵ３２１は、汎用レジスタに、記憶部３２５（図３）から、線型予測係数Ai＝{ai、1、・・・、ai、n}をロードする（図７のステップＳ７１３）。
【０１３９】
次に、線型予測係数Aiから、任意の既知の手法により、合成用フィルタCIAiを計算する（ステップＳ７１５）。これは、図２の合成用フィルタ算出部２３７が行う作業である。
【０１４０】
続いて疑似残差信号D’i＝｛d’i、0、・・・、d’i、l-1｝をロードし、それを合成用フィルタCIAiに通すことにより、音声信号S’i＝{s’i、0、・・・、s’i、l-1}を復元する（ステップＳ７１７）。
【０１４１】
復元された音声信号S’iを記憶部３２５に格納する（ステップＳ７１９）。
【０１４２】
入力信号サンプルカウンタiがM-1に達しているか否かを判別する（ステップＳ７２１）。達していれば（ステップＳ７２１；Ｙｅｓ）、復元すべき音声信号は全て復元したのであるから、処理を終了する。達していないのであれば（ステップＳ７２１；Ｎｏ）、次の時間区間の音声信号を復元するために、iを1だけ増加してから（ステップＳ７２３）、ステップＳ７１３以降の処理を繰り返す。
【０１４３】
（ケプストラムからＭＬＳＡ係数を求める手順の一例）
図８は、ケプストラムCi＝{ci、0、・・・、ci、(l/2)-1}からＭＬＳＡフィルタ係数Mi＝{mi、0、・・・、mi、p-1}を求める具体的な手順の一例をフローチャートにしたものである。ステップＳ８１１〜Ｓ８３５に示した計算を行うことにより、ＭＬＳＡフィルタ係数が求まる。αは近似用の数値であり、音声信号が10ｋＨｚでサンプリングされている場合にはα＝0.35とするのが好適である。また、β＝１−α2である。mi（0≦i≦p−1）は0に初期化しておく。
【０１４４】
このようにして求まったＭＬＳＡフィルタ係数を用いたＭＬＳＡフィルタの構成の一例を、図９に示す。P1〜P4は近似用係数であり、例えば、P1＝0.4999、P2＝0.1067、P3＝0.0117、P4＝0.0005656とするのが好適である。
【０１４５】
なお、この発明は、上記実施形態に限定されず、種々の変形及び応用が可能である。上述のハードウェア構成やブロック構成、フローチャートは例示であって、限定されるものではない。
【０１４６】
例えば、図３に示される音声符号化兼復号装置３１１として携帯電話機を想定して説明したが、ＰＨＳ（Personal Handyphone System）、ＰＤＡ（Personal Digital Assistants）、ノート型及びデスクトップ型パーソナルコンピュータ等による音声処理においても、同様に本発明を適用することができる。例えば本発明をパーソナルコンピュータに適用する場合には、パーソナルコンピュータに音声入出力装置や通信装置等を付加すれば、ハードウェアとしては携帯電話機の機能を有するようにすることができる。そして、上述の処理をコンピュータに実行させるためのコンピュータプログラムが記録媒体や通信により配布されれば、これをコンピュータにインストールして実行させることにより、該コンピュータをこの発明に係る音声符号化装置又は音声復号装置として機能させることも可能である。
【０１４７】
すなわち、上記実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【図面の簡単な説明】
【０１４８】
【図１】本発明の実施形態に係る、予測分析次数調整部を備えた音声符号化装置の機能構成図である。
【図２】本発明の実施形態に係る音声復号装置の機能構成図である。
【図３】本発明の実施形態に係る音声符号化兼復号装置の物理的な構成を示す図である。
【図４】予測分析の流れを示す図である。
【図５】エントロピ符号生成の流れを示す図である。
【図６】パルス列又は雑音列を生成する流れを示す図である。
【図７】音声信号を復元する流れを示す図である。
【図８】ＭＬＳＡフィルタ係数の計算の流れの一例を示す図である。
【図９】ＭＬＳＡフィルタの一例を示す図である。
【符号の説明】
【０１４９】
１１１・・・音声符号化装置、１２１・・・マイクロフォン、１２３・・・Ａ／Ｄ変換部、１２５・・・予測分析部、１２７・・・ゲイン抽出部、１２９・・・ローパスフィルタ、１３１・・・有声無声判別及びピッチ抽出部、１３３・・・符号化部、１３５・・・スイッチ、１３７・・・予測分析次数調整部、１３９・・・送信部、１４１・・・予測分析用逆フィルタ算出器、２１１・・・音声復号装置、２３１・・・受信部、２３３・・・復号部、２３５・・・残差信号復元部、２３７・・・合成用フィルタ算出部、２３９・・・合成用フィルタ部、２４１・・・Ｄ／Ａ変換部、２４３・・・スピーカ、３１１・・・音声符号化兼復号装置、３２１・・・ＣＰＵ、３２３・・・ＲＯＭ、３２５・・・記憶部、３３１・・・ＲＡＭ、３３３・・・ハードディスク、３４１・・・音声処理部、３５１・・・無線通信部、３５３・・・アンテナ、３６１・・・操作キー入力処理部、３６３・・・操作キー、３７１・・・システムバス
【図１】
2008089651.tif 000003
【図２】
2008089651.tif 000004
【図３】
2008089651.tif 000005
【図４】
2008089651.tif 000006
【図５】
2008089651.tif 000007
【図６】
2008089651.tif 000008
【図７】
2008089651.tif 000009
【図８】
2008089651.tif 000010
【図９】
2008089651.tif 000011