本発明は、音声復号装置および音声符号化装置に関し、主としてこれら装置における消失フレーム補償方法に関する。
VoIP(Voice over IP)用の音声コーデックには、高いパケットロス耐性が要求される。次世代のVoIP用コーデックでは、比較的高いフレーム消失率(例えば6%のフレーム消失率)においてもエラーフリーの品質を達成することが望まれる。
CELP型の音声コーデックの場合、音声の立ち上がり部のフレームが消失することによる品質劣化が問題となるケースが多い。これは、立ち上がり部では信号の変化が大きく、直前のフレームの信号との相関性が低いため、直前のフレームの情報を用いた隠蔽処理が有効に機能しないことが原因である。あるいは、後続の有声部のフレームにおいて、立ち上がり部で符号化した音源信号が適応符号帳として積極的に使用されるため、立ち上がり部の消失の影響が後続する有声フレームに伝播し、復号音声信号の大きな歪につながりやすいことが原因である。
上記のような問題に対して、現フレームの符号化情報と共に、前後フレームが消失した場合の補償(隠蔽)処理用の符号化情報を現フレームの符号化情報と一緒に送る技術が開発されている(例えば、特許文献1参照)。この技術は、現フレームの音声信号の繰り返し又は該符号の特徴量の外挿により前フレーム(または後フレーム)の補償信号を合成し、前フレーム信号(または後フレーム信号)と比較することにより、現フレームから前フレーム擬似信号(または後フレーム疑似信号)を作ることができるか否かを判断し、作ることができないと判断される場合には前フレーム信号(または後フレーム信号)を基に前サブエンコーダ(または後サブエンコーダ)により前サブコード(後サブコード)を生成し、メインエンコーダで符号化した現フレームのメインコードに前サブコード(後サブコード)を付加することによって前フレーム(後フレーム)が消失しても高品質な復号信号の生成を可能としている。
特開2003−249957号公報
しかしながら、上記技術は、現フレームの符号化情報を基にして、前フレーム(過去のフレーム)の符号化をサブエンコーダにおいて行う構成であるため、前フレーム(過去のフレーム)の符号化情報が失われていても現フレームの信号を高品質に復号できるコーデック方式である必要がある。このため、過去の符号化情報(または復号情報)を用いる予測型の符号化方式をメインレイヤとした場合に適用することは困難である。特に、適応符号帳を利用するCELP型の音声コーデックをメインレイヤとする場合、前フレームが消失すると現フレームの復号を正しく行うことができず、上記技術を適用しても高品質な復号信号を生成することは困難である。
本発明の目的は、適応符号帳等の過去の音源情報を利用する音声コーデックをメインレイヤとする場合に、前フレームが消失しても現フレームの補償をすることができる消失フレーム補償方法が適用される音声復号装置および音声符号化装置を提供することである。
本発明の音声復号装置は、消失フレームである第1フレームを特定するフレーム消失情報を受信する受信手段と、前記第1フレームと異なる第2フレームにおいて伝送された符号化パラメータから、ピッチパルス情報、および前記第1フレームの音源信号を復号する第1復号手段と、前記第1フレームより過去の定常状態のフレームにおいて、ピッチパルス学習波形を学習する学習手段と、前記ピッチパルス学習波形および前記ピッチパルス情報を用いて、前記第1フレームの音源信号を補正する補正手段と、を具備する構成を採る。
本発明によれば、現フレームが消失する場合、補償処理用情報のみを用いて現フレームを復号できるために、過去または未来のフレームにおいて伝送される当該補償処理用情報の情報量を低減することができ、音声符号化の効率を向上することができる。
実施の形態1に係る音声符号化装置の主要な構成を示すブロック図
実施の形態1に係るピッチパルス抽出部内部の主要な構成を示すブロック図
実施の形態1に係るピッチパルス検出部におけるピッチパルスの検出方法を説明するための図
実施の形態1に係る音声復号装置の主要な構成を示すブロック図
実施の形態1に係る音声復号装置における消失フレーム補償処理を説明するための図
実施の形態1に係るピッチパルス波形学習部内部の主要な構成を示すブロック図
実施の形態1に係るピッチパルス波形学習部の動作を説明するための図
実施の形態2に係る音声符号化装置の主要な構成を示すブロック図
実施の形態2に係る音声復号装置の主要な構成を示すブロック図
実施の形態2に係る音源信号補正部の動作を説明するための図
実施の形態2に係る音源信号補正部内部の主要な構成を示すブロック図
仮に符号化対象となる音源信号に非周期的なピーク波形が存在し、CELP型符号化により消失フレーム補償処理を行う場合に、得られる復号音源信号を示す図
実施の形態3に係る音声復号装置の主要な構成を示すブロック図
実施の形態3に係る音源信号補正部内部の主要な構成を示すブロック図
実施の形態4に係る音声復号装置の主要な構成を示すブロック図
実施の形態4に係る音源信号補正部の内部の主要な構成を示すブロック図
実施の形態4に係るピッチパルス列生成部の内部の主要な構成を示すブロック図
実施の形態4に係るピッチパルス列候補生成部において生成されるピッチパルス列候補のイメージを示す図
実施の形態4に係るピッチパルス列生成部においてピッチパルス列を生成する処理手順を示すフロー図
実施の形態4に係るフレーム消失が生じない場合の復号音源信号の波形を示す図
実施の形態4に係るフレーム消失が生じない場合、各フレームにおける復号音源パワーを示す図
実施の形態4に係る1つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る1つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態4に係る2つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る2つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態4に係る3つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る3つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態5に係るピッチパルス列を用いて復号音源信号を補正する方法を説明するための図
実施の形態5に係る音声復号装置の主要な構成を示すブロック図
実施の形態5に係るピッチラグ補正部の内部の構成を示すブロック図
実施の形態5に係るピッチラグ補正可否判定部においてピッチラグ補正可否判定を行う手順を示すフロー図
実施の形態5に係る音源信号補正部の内部の構成を示すブロック図
実施の形態5に係るピッチパルス列生成部の内部の構成を示すブロック図
実施の形態6に係る復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図
実施の形態6に係る復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図
実施の形態6に係るピッチパルス列生成部の内部の構成を示すブロック図
以下、本発明の実施の形態について、添付図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る音声符号化装置100の主要な構成を示すブロック図である。ここでは、音声符号化装置100としてCELP型音声符号化装置を例にあげる。
音声符号化装置100は、LPC分析部101、LPC符号化部102、LPC合成フィルタ部103、聴感重み付け部104、符号化歪み算出部105、聴感重み付け部106、音源生成部107、音源パラメータ符号化部108、ピッチパルス抽出部109、および多重化部110を備える。
音声符号化装置100の各部は以下の動作を行う。なお、音声符号化装置100における符号化処理はフレーム単位で行われる。
LPC分析部101は、入力音声信号に対して線形予測分析(LPC分析)を行い、得られるLPC係数をLPC符号化部102、聴感重み付け部104および聴感重み付け部106に出力する。
聴感重み付け部106は、LPC分析部101から出力されたLPCに重み係数を乗じたフィルタ係数により聴感重み付けフィルタを構成し、入力音声信号に対して聴覚的な重み付けを施し、符号化歪み算出部105に出力する。
LPC符号化部102は、LPC分析部101から入力されるLPC係数を量子化・符号化し、得られるLPC量子化パラメータをLPC合成フィルタ部103に、得られるLPC符号化パラメータを多重化部110に出力する。
LPC合成フィルタ部103は、LPC符号化部102から入力されるLPC量子化パラメータをフィルタ係数とし、音源生成部107から入力される音源信号によってLPC合成フィルタとして駆動し、合成信号を聴感重み付け部104に出力する。
聴感重み付け部104は、LPC分析部101から入力されるLPC係数をフィルタ係数とする聴感重み付けフィルタを用いて、LPC合成フィルタ部103から入力される合成信号に対して聴覚的な重み付けを施し、符号化歪み算出部105に出力する。
符号化歪み算出部105は、聴感重み付け部106から出力された聴覚的な重み付けが施された入力音声信号と、聴感重み付け部104から入力される聴覚的な重み付けが施された合成信号との差を算出し、算出した差を符号化歪みとして音源生成部107に出力する。
音源生成部107は、符号化歪み算出部105から出力された符号化歪みが最小となる音源信号をLPC合成フィルタ部103に出力する。また、音源生成部107は、符号化歪みが最小となるときの音源信号およびピッチラグをピッチパルス抽出部109に出力し、符号化歪みが最小となるときの音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどの音源パラメータを音源パラメータ符号化部108に出力する。
音源パラメータ符号化部108は、音源生成部107から入力される音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどからなる音源パラメータを符号化し、得られる音源符号化パラメータを多重化部110に出力する。
ピッチパルス抽出部109は、音源生成部107から入力されるピッチラグに基づき、音源生成部107から入力される音源信号のピッチパルスを検出し、ピッチパルスの位置および振幅情報を符号化し、得られるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化部110に出力する。
多重化部110は、音声符号化装置100に入力される音声信号のフレーム番号をn+1と記す場合(ここで、n>0の整数である)、LPC符号化部102から入力されるn+1番フレームのLPC符号化パラメータ、音源パラメータ符号化部108から入力されるn+1番フレームの音源符号化パラメータ、およびピッチパルス抽出部109から入力されるn番フレームのピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化し、得られる多重化データをn+1番フレームの音声符号化データとして出力する。
図2は、ピッチパルス抽出部109内部の主要な構成を示すブロック図である。
ピッチパルス抽出部109は、音源記憶部191、ピッチパルス検出部192、ピッチパルス適合判定部193、およびピッチパルス符号化部194を備える。
音源記憶部191は、音源生成部107から入力される音源信号を記憶するバッファを内蔵し、現フレームの音源信号をピッチパルス適合判定部193に出力するとともに、過去1フレームの音源信号をピッチパルス検出部192に出力する。
ピッチパルス検出部192は、音源生成部107から入力されるn+1番フレームのピッチラグおよび音源記憶部191から入力される音源信号を用いて、n番フレームのピッチパルスを検出する。ピッチパルス検出部192におけるピッチパルスの検出方法の詳細については後述する。ピッチパルス検出部192は、ピッチパルスの位置PPpをピッチパルス適合判定部193に出力するとともに、検出されたピッチパルスの位置PPpおよび振幅PPaをピッチパルス符号化部194に出力する。
ピッチパルス適合判定部193は、音源記憶部191から入力される音源信号、ピッチパルス検出部192から入力されるピッチパルス位置PPp、および音源生成部107から入力されるピッチラグを用いて、ピッチパルス検出部192で検出されたn番フレームのピッチパルスが適合であるか否かを判定する。ピッチパルス適合判定部193における判定方法の詳細については後述する。
ピッチパルス符号化部194は、ピッチパルス適合判定部193から入力されるピッチパルス適合判定結果が「適合」である場合、ピッチパルス検出部192から入力されるピッチパルスの位置PPpおよび振幅PPaをスカラー量子化方法などで符号化し、得られるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化部110に出力する。
図3は、ピッチパルス検出部192におけるピッチパルスの検出方法を説明するための図である。図3において、横軸は時間軸を示し、縦軸は音源信号の振幅を示す。ここで、各フレームの音源信号はピッチラグを周期として繰り返される信号と、周期波形では表現しきれない信号を表現するための雑音性の信号との和で表現されている。ピッチパルス検出部192は、n+1番フレームのピッチラグT(n+1)を用いてn番フレームにおいてピッチパルスを検出する。具体的には、n番フレームの後端から過去へ、すなわち、n+1番フレームと接する位置から過去へ、ピッチラグT(n+1)を長さとする区間をピッチパルス探索範囲とする。ピッチパルス検出部192は、ピッチパルス探索範囲内で振幅が最大となるピッチパルスを検出する。
次いで、ピッチパルス適合判定部193は、ピッチパルス位置PPp前後の、フレーム長より短い長さの区間をピッチパルス波形として音源信号から抽出し、抽出されたピッチパルス波形をn+1番フレームのピッチラグT(n+1)だけ遅延させてから、n+1番フレームの音源信号との相関値を算出する。ここで、遅延されたピッチパルス波形とn+1番フレームの音源信号との相関値は、n番フレームにおけるピッチパルス探索区間のパワーを用いて正規化されたものである。ピッチパルス適合判定部193は、算出された相関値が所定の閾値以上である場合は、ピッチパルス検出部192で検出されたピッチパルスをn+1番フレームにおいて、ピッチラグT(n+1)で繰り返されると判定する。すなわち、ピッチパルス検出部192で検出されたピッチパルスは、n番フレームが消失する場合、後述の音声復号装置200においてn番フレームの消失フレーム補償(隠蔽)処理に用いるのに適合であると判定する。一方、ピッチパルス適合判定部193は、算出された相関値が所定の閾値よりも小さい場合は、ピッチパルス検出部192で検出されたピッチパルスが適合ではないと判定する。ピッチパルス適合判定部193は、ピッチパルス適合判定結果をピッチパルス符号化部194に出力する。
図4は、本発明の実施の形態1に係る音声復号装置200の主要な構成を示すブロック図である。
音声復号装置200は、逆多重化部201、音源パラメータ復号部202,復号音源生成部203、ピッチパルス情報復号部204、ピッチパルス波形学習部205、畳み込み部206、音源信号補正部207、音源選択部208、LPC復号部209、および合成フィルタ部210を備える。
音声復号装置200における処理は、音声符号化装置100の処理と同様にフレーム単位で行われ、なお、ピッチパルス情報復号部204、畳み込み部206、および音源信号補正部207の処理対象となるフレームは消失フレームである。
逆多重化部201は、音声符号化装置100から伝送される音声符号化データを受信し、音源符号化パラメータ、LPC符号化パラメータ、ピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを分離する。逆多重化部201は、得られる音源符号化パラメータを音源パラメータ復号部202に出力し、ピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータをピッチパルス情報復号部204に出力し、LPC符号化パラメータをLPC復号部209に出力する。また、逆多重化部201は、フレーム消失情報を受信し、音源パラメータ復号部202、ピッチパルス波形学習部205、音源選択部208、およびLPC復号部209に出力する。
音源パラメータ復号部202は、逆多重化部201から入力される音源符号化パラメータを復号して音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどの音源パラメータを得る。音源パラメータ復号部202は、得られるピッチラグ、ピッチゲイン、音源符号帳インデックスおよび音源符号帳ゲインを復号音源生成部203に出力し、ピッチラグをピッチパルス波形学習部205に出力する。
復号音源生成部203は、音源パラメータ復号部202から入力される音源符号帳インデックス、音源符号帳ゲイン、および音源選択部208からフィードバックされる過去フレームの音源信号、ピッチラグ、およびピッチゲインを用いてCELP型復号、補償、および平滑化処理を行い、復号音源信号を生成し、ピッチパルス波形学習部205、音源信号補正部207、および音源選択部208に出力する。
ピッチパルス情報復号部204は、逆多重化部201から入力されるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを復号し、得られるピッチパルス位置PPpおよびピッチパルス振幅PPaを畳み込み部206に出力する。
ピッチパルス波形学習部205は、逆多重化部201から入力されるフレーム消失情報、音源パラメータ復号部202から入力されるピッチラグおよび復号音源生成部203から入力される復号音源信号を用いてピッチパルス学習波形を生成し、畳み込み部206に出力する。ここで、ピッチパルス学習波形は、ピッチパルス周辺の波形を学習により生成される。なお、最大振幅を正規化したうえで学習を行う。ピッチパルス波形学習部205の詳細な構成および動作については後述する。
畳み込み部206は、ピッチパルス情報復号部204からピッチパルス位置PPpおよびピッチパルス振幅PPaが入力され、ピッチパルス波形学習部205からピッチパルス学習波形が入力される。畳み込み部206は、ピッチパルス位置PPpと、ピッチパルス学習波形の最大振幅の位置とが一致するようにピッチパルス学習波形を時間軸に畳み込み、畳み込まれたピッチパルス学習波形に、ピッチパルスの振幅PPaを乗じ、得られるピッチパルス波形を音源信号補正部207に出力する。
音源信号補正部207は、復号音源生成部203から入力される復号音源信号に、畳み込み部206から入力されるピッチパルス波形を加算し、得られる補正音源信号を音源選択部208に出力する。または、音源信号補正部207は、音源信号において、ピッチパルス波形に対応する区間をピッチパルス波形で置換しても良い。
音源選択部208は、逆多重化部201から入力されるフレーム消失情報がフレーム消失を示す場合は、音源信号補正部207から入力される補正音源信号を選択し、フレーム消失情報がフレーム消失を示していない場合は、復号音源生成部203から入力される復号音源信号を選択する。音源選択部208は、選択された音源信号を合成フィルタ部210に出力する。
LPC復号部209は、逆多重化部201から入力されるLPC符号化パラメータを復号し、得られるLPC係数を合成フィルタ部210に出力する。
合成フィルタ部210は、音源選択部208から入力される音源信号、LPC復号部209から入力されるLPC係数を用いて、復号音声信号を合成して出力する。
図5は、音声復号装置200における消失フレーム補償処理を説明するための図である。ここでは、音声復号装置200に入力される音声符号化データのm番フレームが消失した場合を例にあげ説明する。なお、音声復号装置200におけるm番フレームは、音声符号化装置100におけるn番フレームに対応する。
図5Aは、ピッチパルス波形学習部205から畳み込み部206に入力されるピッチパルス学習波形lwを示す図であり、図5Aにおいて、ピッチパルス学習波形lwは振幅が1.0に正規化されたものである。図5Bは、ピッチパルス情報復号部204から畳み込み部206に入力されるm番フレームのピッチパルス位置PPpおよびピッチパルス振幅PPaを示すための図である。ここで、m番フレームのピッチパルス位置PPpおよびピッチパルス振幅PPaの復号に用いられるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータは、m+1番フレームにおいて音声符号化装置100から伝送されたものである。図5BにおいてPPはピッチパルス位置PPpおよびピッチパルス振幅PPaにより決まるピッチパルスを示している。図5Cは、畳み込み部206において生成されたピッチパルス波形PPwを示す。ピッチパルス波形PPwは、ピッチパルス位置PPpと、ピッチパルス学習波形の最大振幅の位置とが一致するようにピッチパルス学習波形lwを時間軸に畳み込み、畳み込まれたピッチパルス学習波形に、ピッチパルスの振幅PPaを乗じることにより得られる。図5Dは、音源信号補正部207に入力される音源信号を示す図である。m番フレームのピッチパルス位置PPpには消失が無ければピッチピーク波形があるはずであるが、このように通常のCELP型音声復号装置における補償方法では正確なピッチピークを表現できない。図5Eは、音源選択部208から合成フィルタ部210に出力される音源信号を示す図であり、図5Eにおいて、m−1番フレームおよびm+1番フレームの音源信号は、復号音源生成部203から音源選択部208に入力され選択されたものであり、m番フレームの音源信号は、音源信号補正部207から音源選択部208に入力され選択されたものである。図5Eに示すm番フレームの音源信号において、破線で示す波形は畳み込み部206で生成されたピッチパルス波形を示しており、消失していなければ存在するはずのピッチピークを補正により表現している。
図6および図7を参照しながらピッチパルス波形学習部205内部の主要な構成および動作を説明する。
図6は、ピッチパルス波形学習部205内部の主要な構成を示すブロック図である。図6において、ピッチパルス波形学習部205は、学習可否判定部251、ピッチピーク検出部252、正規化部253、および平滑化処理部254を備える。
図7は、ピッチパルス波形学習部205の動作を説明するための図である。図7において、図7Aはピッチピーク検出部252の動作を説明するための図であり、図7Bおよび図7Cは正規化部253の動作を説明するための図であり、図7Dは平滑化処理部254の動作を説明するための図である。
学習可否判定部251は、復号音源生成部203から入力される復号音源信号、音源パラメータ復号部202から入力されるピッチラグ、逆多重化部201から入力されるフレーム消失情報に基づき、ピッチパルス波形の学習を行うことが可能であるか否かの判定を行い、得られる学習可否判定結果をピッチピーク検出部252に出力する。学習可否判定部251は、音声の定常状態のようにピッチ周期が安定している区間において波形学習を行うことが可能であると判定する。例えば、学習可否判定部251は、消失フレームでない定常状態のフレーム内において他の音源サンプルと比較してより振幅の大きい音源サンプルからなるピッチパルスが存在し、かつ、このピッチパルスがピッチラグを周期として繰り返される場合を、波形学習可の判定条件とする。
ピッチピーク検出部252は、学習可否判定部251から入力される学習判定結果が「可」である場合、復号音源生成部203から入力される復号音源信号、および音源パラメータ復号部202から入力されるピッチラグを用いて、ピッチピーク位置を検出し、検出されたピーク位置を正規化部253に出力する。ピッチピーク検出部252は、図7Aに示すように、学習を行うフレームにおいて最大振幅となる位置Pp0を第1ピッチピーク位置として検出する。次に、ピッチピーク検出部252は、同一フレーム内において第1ピッチピークPp0からピッチラグだけ離れている位置に第2ピッチピークPp1が存在するか否か検出を行い、ピッチピークPp1が存在する場合、第1ピッチピーク位置Pp0を検出されたピッチピーク位置として正規化部253に出力する。図7Aにおいて、Ap0およびAp1は、第1ピッチピーク位置Pp0および第2ピッチピーク位置Pp1それぞれにおける振幅を示し、この例ではAp0>Ap1である。
正規化部253は、復号音源生成部203から復号音源信号が、ピッチピーク検出部252からピッチピーク位置Pp0が入力され、入力される復号音源信号のうち、ピッチピーク位置Pp0周辺の所定サンプル数Pw(例えばPw=5〜10サンプル)だけの波形を、ピッチパルス波形として抽出する。正規化部253は、抽出されたピッチパルス波形に対して最大振幅が1.0となるように正規化を行い、得られる正規化ピッチパルス波形cwを平滑化処理部254に出力する。図7Bは、正規化部253において求められる正規化ピッチパルス波形cwを示す図である。図7Cは、仮にピッチピーク検出部252から正規化部253にピッチピークPp1の位置が入力される場合に求められる正規化ピッチパルス波形cw’を示す。
平滑化処理部254は、正規化部253から入力される正規化ピッチパルス波形cwに対して、下記の式(1)に従い、過去のピッチパルス学習波形lw’との長期平滑化処理を行い、得られるピッチパルス学習波形lwを畳み込み部206に出力する。
lw(i)=α*lw’(i)+(1−α)*cw(i) …(1)
式(1)において、αは長期平滑化係数(0<α<1.0)を示す。なお、ここでは、ピッチピーク位置が正規化ピッチパルス波形cwの中心となる場合を例にとり、サンプル番号iの範囲は−Pw/2≦i≦Pw/2となる。図7Dは、平滑化処理部254において長期平滑化処理により求められるピッチパルス学習波形lwを示す図である。なお、本例のように検出したピッチパルスが2つある場合は、正規化ピッチパルス波形cwを用いてピッチパルス学習波形lwを求めた後、同様に正規化ピッチパルス波形cw’を用いてもう1つのピッチパルス学習波形lw2を求め、ピッチパルス学習波形lwおよびピッチパルス学習波形lw2をフレーム消失補償に用いても良い。
上記のように、ピッチパルス波形学習部205において得られるピッチパルス学習波形は、後続の消失フレーム補償処理に用いられる。例えば、m番フレームより過去の音源信号を用いて学習されたピッチパルス学習波形は、m番フレームの消失フレーム補償処理に用いられる。
このように、本実施の形態によれば、音声符号化装置はピッチパルスを検出し、ピッチパルス位置および振幅情報を消失フレーム補償処理用の情報として符号化し、音声復号装置は消失フレームのピッチパルス位置および振幅情報を用いて、消失フレーム補償処理を行うため、消失フレーム補償処理用の情報量を低減しつつ、復号信号の音声品質を向上することができる。
なお、本実施の形態では、音声符号化装置100の多重化部110において、n番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータと、n+1番フレームのLPC符号化パラメータ、音源パラメータとを多重して音声復号装置200に伝送する例にとって説明したが、音声符号化装置100の多重化部110において、n番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータと、n−1番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータとを多重して音声復号装置200に伝送しても良い。
また、本実施の形態では、正規化部253において最大振幅が1.0となるようにピッチパルス波形を正規化する場合を例にとって説明したが、パワーが1.0となるようにピッチパルス波形を正規化しても良い。
また、本実施の形態では、1つのピッチパルスに関する情報を伝送する場合を例にとって説明したが、複数のピッチパルスを検出し、関連の情報を伝送して消失フレームの補償処理に用いても良い。
また、本実施の形態では、音声復号装置200において、ピッチパルス学習波形を消失フレームに畳み込んで消失フレームを補償する場合を例にとって説明したが、図5Bに示すピッチパルスを消失フレームに畳み込んで消失フレームを補償しても良い。さらには、条件によって、ピッチパルスを畳み込む消失フレーム補償処理、ピッチパルス学習波形を畳み込む消失フレーム補償処理、およびピッチパルスもピッチパルス学習波形も畳み込まない消失フレーム補償処理を切り替える構成にしても良い。例えば、音声の発生源(話者)が多数で、音源信号が頻繁に変わる場合は、ピッチパルスを畳み込む消失フレーム補償処理を行う。一方、誤りが頻発する場合、ピッチパルスを畳み込む消失フレーム補償処理を行うと、畳み込まれたピッチパルスの位置のみの振幅が高くなり、ビープ音的な異音が発生するため、このような場合は、ピッチパルスもピッチパルス学習波形も畳み込まずに消失フレーム補償処理を行えば良い。
また、本実施の形態では、音声復号装置200において、学習により得られるピッチパルス学習波形を用いて消失フレームを補償する場合を例にとって説明したが、音声符号化装置100からピッチパルス波形を符号化して伝送しても良い。かかる場合、音声復号装置200においてピッチパルス学習波形を学習しなくても良い。
また、本実施の形態では、音声復号装置200において、音声符号化装置100から伝送されたピッチパルス位置PPp一箇所のみにピッチパルス波形を畳み込んで音源信号を補正する場合を例にとって説明したが、過去フレーム方向に所定間隔毎の各位置にピッチパルス波形を複数畳み込んで音源信号を補正しても良い。かかる場合、所定間隔として、音源信号パワーが減少傾向にある場合は、過去フレームのピッチラグに近い補正ピッチラグを用い、音源信号パワーが増加傾向にある場合は、次フレームのピッチラグに近い補正ピッチラグを用いて良い。
また、本実施の形態では、音声符号化装置100において、ピッチパルスの振幅を符号化して伝送する場合を例にとって説明したが、振幅の代わりにパワーを符号化して伝送し、音声復号装置200における消失フレーム補償処理に用いても良い。
また、本実施の形態では、ピッチパルス波形の長さPwを5〜10サンプルの範囲とする場合を例にとって説明したが、この範囲に限定するものではない。
また、本実施の形態では、消失フレームのみに限定してピッチパルス波形による補正を行う場合を例にとって説明したが、消失フレーム後に正常受信したフレームにおいてもピッチパルス波形による補正を行っても良い。
(実施の形態2)
一般的に、音声復号装置において消失フレーム補償処理を行い得られる復号音声信号のパワーが、音声符号化装置の符号化対象となる入力音声信号のパワーと大きく異なる場合、復号音声信号に主観的な劣化が生じる。従って、音声復号装置において、音声符号化装置の入力音声信号のパワーと一致するように、復号音声信号のパワーを調整する必要がある。本発明の実施の形態2では、復号音声信号のパワーを調整しつつ、音声符号化装置の入力音声信号の振幅と復号音声信号の振幅との一致を維持する。
図8は、本発明の実施の形態2に係る音声符号化装置300の主要な構成を示すブロック図である。なお、音声符号化装置300は、実施の形態1に示した音声符号化装置100(図1参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声符号化装置300は、音源パワー算出部301をさらに有する点において、音声符号化装置100と相違する。なお、音声符号化装置300の多重化部310と、音声符号化装置100の多重化部110とは処理の一部において相違点があり、それを示すために異なる符号を付す。
音源パワー算出部301は、音源生成部107から入力される現フレームの音源パワーを算出し、スカラー量子化などの符号化を行い、得られる音源パワー符号化パラメータを多重化部310に出力する。
多重化部310は、音声符号化装置100の多重化部110に比べ、LPC符号化部102から入力されるn+1番フレームのLPC符号化パラメータ、音源パラメータ符号化部108から入力されるn+1番フレームの音源符号化パラメータ、ピッチパルス抽出部109から入力されるn番フレームのピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータに加え、さらに音源パワー算出部301から入力されるn番フレームの音源パワー符号化パラメータを多重化し、得られる多重化データをn+1番フレームの音声符号化データとして出力する。
図9は、本発明の実施の形態2に係る音声復号装置400の主要な構成を示すブロック図である。なお、音声復号装置400は、実施の形態1に示した音声復号装置200(図4参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置400は、音源パワー復号部402をさらに有する点において、音声復号装置200と相違する。なお、音声復号装置400の逆多重化部401、音源信号補正部407と、音声復号装置200の逆多重化部201、音源信号補正部207とは処理の一部において相違点があり、それを示すために異なる符号を付す。
逆多重化部401は、音声復号装置200の逆多重化部201に比べ、音源符号化パラメータ、ピッチパルス符号化パラメータ、およびLPC符号化パラメータに加え、さらに音源パワー符号化パラメータを分離して音源パワー復号部402に出力する。
音源パワー復号部402は、逆多重化部401から入力される音源パワー符号化パラメータを復号し、得られる復号音源パワーを音源信号補正部407に出力する。
音源信号補正部407は、音声復号装置200の音源信号補正部207に比べ、復号音源生成部203から入力される復号音源信号に対して、畳み込み部206から入力されるピッチパルス波形の加算、または置換を行い、補正音源信号を得る処理に加え、得られる補正音源信号に対してさらにパワー調整を行う。
図10は、音源信号補正部407の動作を説明するための図である。図10Aは、畳み込み部206から音源信号補正部407に入力されるピッチパルス波形lwを示す図であり、図10Bは、復号音源生成部203から音源信号補正部407に入力される復号音源信号を示す図である。図10Cは、図10Bに示す音源信号から、図10Aに示すピッチパルス波形lwに対応する区間を除いて得られる差分音源信号を示す図である。図10Dは、図10Cに示す差分音源信号に対して差分音源増幅係数を乗じてパワー調整を行い、得られるパワー調整差分音源信号を示す。図10Eは、図10Dに示すパワー調整差分音源信号に、図10Aに示すピッチパルス波形を加算して得られる補正音源信号を示す図である。図10Eに示す補正音源信号の音源パワーは、音源パワー復号部402から音源信号補正部407に入力される復号音源パワーと一致する。
図11は、図10に示す動作を行う音源信号補正部407内部の主要な構成を示すブロック図である。
音源信号補正部407は、ピッチパルス波形パワー算出部471、差分音源パワー算出部472、差分音源理想パワー算出部473、差分音源増幅係数算出部474、差分音源増幅部475、およびピッチパルス波形加算部476を備える。
ピッチパルス波形パワー算出部471は、畳み込み部206から入力されるピッチパルス波形の音源パワーを算出し、得られるピッチパルス波形パワーPpowを差分音源パワー算出部472および差分音源理想パワー算出部473に出力する。
差分音源パワー算出部472は、復号音源生成部203から入力される復号音源信号のパワーを算出し、さらにピッチパルス波形パワー算出部471から入力されるピッチパルス波形パワーPpowとの差を求め、差分音源パワーRpowとして差分音源増幅係数算出部474に出力する。ここで、算出された差分音源パワーRpowが負数である場合、差分音源パワー算出部472は、ゼロの値を差分音源増幅係数算出部474に出力する。
差分音源理想パワー算出部473は、音源パワー復号部402から入力される復号音源パワーHpowと、ピッチパルス波形パワー算出部471から入力されるピッチパルス波形パワーPpowとの差を差分音源理想パワーIRpowとして算出し、差分音源増幅係数算出部474に出力する。ここで、算出された差分音源理想パワーIRpowが負数である場合、差分音源理想パワー算出部473は、ゼロの値を差分音源増幅係数算出部474に出力する。
差分音源増幅係数算出部474は、差分音源理想パワー算出部473から入力される差分音源理想パワーIRpowと、差分音源パワー算出部472から入力される差分音源パワーRpowとを用いて、下記の式(2)に従い差分音源増幅係数Rrを算出し、差分音源増幅部475に出力する。
ここで、差分音源理想パワー算出部473から入力される差分音源理想パワーIRpow、または差分音源パワー算出部472から入力される差分音源パワーRpowがゼロである場合、差分音源増幅係数算出部474は、差分音源増幅係数Rrとして「1」の値を差分音源増幅部475に出力する。
差分音源増幅部475は、復号音源生成部203により入力される音源信号から、ピッチパルス波形に対応する区間を除いて得られる差分音源信号に対して、差分音源増幅係数算出部474から入力される差分音源増幅係数Rrを乗じてパワー調整を行い、得られるパワー調整差分音源信号をピッチパルス波形加算部476に出力する。
ピッチパルス波形加算部476は、差分音源増幅部475から入力されるパワー調整差分音源信号に、畳み込み部206から入力されるピッチパルス波形を加算し、得られる補正音源信号を音源選択部208に出力する。
このように、本実施の形態によれば、ピッチパルスの振幅を維持しつつ、補正音源信号の音源パワーを復号音源パワーに一致させるため、復号音声信号の主観的な劣化を抑え、復号音声信号の品質を向上することができる。
(実施の形態3)
まず、仮に符号化対象となる音源信号に非周期的なピーク波形が存在し、CELP型符号化により消失フレーム補償処理を行う場合に、得られる復号音源信号を図12に示す。
図12Aは、CELP型音声符号化装置の符号化対象となる音源信号の波形を示す図である。図12Aに示すように、m−1番フレームの音源信号は周期性がなく、FP0の位置に非周期的なピーク波形、例えば、破裂系子音や突発性雑音などが存在する。図12Bは、m番フレームが消失する場合、CELP型音声復号装置が図12Aに示した音源信号に対して復号および消失フレーム補償処理を行い、得られる復号音源信号の波形を示す。なお、図12Bは、m番フレームが消失する場合を例示する。図12Bに示すように、CELP型音声復号装置の消失フレーム補償処理により得られるm番フレームの復号音源信号の波形には、図12Aに示す音源信号の波形に存在しなかった新たなピッチ周期性が現れる。すなわち、補償ピッチラグT'(m)間隔毎にFP1、FP2、FP3、およびFP4の位置にピッチパルス波形が現れる。ここでは、このようなピッチ波形を偽ピッチパルスと称す。偽ピッチパルスが繰り返されることにより、復号信号に大きな音質劣化が生じる。なお、図12において、PPpは、仮に本発明の実施の形態1を適用した場合、得られるm番フレームの復号音源信号に畳み込まれるピッチパルス波形の位置を示す。このピッチパルス波形は、ピッチラグT(m+1)で繰り返される。
本発明の実施の形態3に係る音声復号装置500は、復号音声信号の音質劣化の原因となる偽ピッチパルスを検出し、偽ピッチパルスを除去することができる構成を採る。
図13は、本発明の実施の形態3に係る音声復号装置500の主要な構成を示すブロック図である。
本実施の形態に係る音声復号装置500は、実施の形態1に示した音声復号装置200(図4参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置500の音源信号補正部507と、音声復号装置200の音源信号補正部207とは処理の一部において相違点があり、それを示すために異なる符号を付す。なお、音声復号装置500は、音源パラメータ復号部202が音源符号化パラメータを復号して得られるピッチラグをさらに音源信号補正部507に出力する点において音声復号装置200と相違する。
図14は、音源信号補正部507内部の主要な構成を示すブロック図である。
音源信号補正部507は、偽ピッチパルス検出部571、定常音源生成部572、雑音生成部573、雑音増幅係数算出部574、雑音増幅部575、雑音加算部576、およびピッチパルス置換部577を備える。
音源信号補正部507の各部は以下の動作を行う。以下、音声復号装置500に入力される音声符号化データのフレーム番号をm+1と記し、音声復号装置500から出力される復号音声信号はm番フレームである。
偽ピッチパルス検出部571は、復号音源生成部203から入力される復号音源信号、ピッチラグ、畳み込み部206から入力されるピッチパルス波形を用いて、偽ピッチパルスを検出する。偽ピッチパルスの検出方法として、具体的には、まず、消失フレームm番フレームと、その次のm+1番フレームとの境界から、過去方向へピッチラグT(m+1)長の区間を偽ピッチパルスの探索範囲とする。ただし、ピッチパルス波形が存在する区間を偽ピッチパルスの探索範囲から除外する。偽ピッチパルスの探索範囲において、最大振幅値を検出し、検出された最大振幅値が所定の閾値以上であるか否かを判定する。閾値としては、例えば、偽ピッチパルスの探索範囲の波形の平均振幅の3倍、または、畳み込み部206から入力されるピッチパルス波形の最大振幅の1/2とする。偽ピッチパルス検出部571は、偽ピッチパルスの探索範囲において検出された最大振幅値が上記の閾値以上であると判定する場合、検出された最大振幅の位置を偽ピッチパルスの位置として、定常音源生成部572および雑音増幅係数算出部574に出力する。
定常音源生成部572は、復号音源生成部203から復号音源信号が入力され、畳み込み部206からピッチパルス波形が入力され、偽ピッチパルス検出部571から偽ピッチパルスの位置が入力される。定常音源生成部572は、偽ピッチパルス位置の前後、数サンプルの区間に対応する復号音源信号を偽ピッチパルス波形とし、ピッチパルス波形および偽ピッチパルス波形に対応する区間の復号音源信号をゼロに置換することにより定常音源を得る。定常音源生成部572は、得られる定常音源を雑音増幅係数算出部574および雑音加算部576に出力する。
雑音生成部573は、ランダム雑音、ガウス雑音、または過去の定常音源を用いて、偽ピッチパルス波形長を長さとする雑音を生成し、雑音増幅係数算出部574および雑音増幅部575に出力する。
雑音増幅係数算出部574は、定常音源生成部572から定常音源の音源パワーを算出し、フレーム長からピッチパルス波形長および偽ピッチパルス波形長を減算した長さ(サンプル数)を用いて正規化する。雑音増幅係数算出部574は、正規化されたパワーに偽ピッチパルス長を乗じ、偽ピッチパルスの目標パワーを算出する。雑音増幅係数算出部574は、また雑音生成部573から入力される雑音のパワーを算出し、偽ピッチパルスの目標パワーと、雑音のパワーとの比の平方根を算出し、雑音増幅係数として雑音増幅部575に出力する。
雑音増幅部575は、雑音増幅係数算出部574から入力される雑音増幅係数を用いて、雑音生成部573から入力される雑音を増幅し、増幅された雑音を雑音加算部576に出力する。
雑音加算部576は、定常音源生成部572から入力される定常音源と、雑音増幅部575から入力される振幅調整された雑音とを加算することにより、偽ピッチパルスが除去された復号音源信号を得、ピッチパルス置換部577に出力する。
ピッチパルス置換部577は、雑音加算部576から入力される偽ピッチパルスが除去された復号音源信号と、畳み込み部206から入力されるピッチパルス波形とを加算し、得られる補正音源信号を音源選択部208に出力する。
このように、本実施の形態によれば、偽ピッチパルスを検出し、パワー調整された雑音を用いて偽ピッチパルスを置換するため、偽ピッチパルスによる復号音源信号の音質劣化を回避し、復号音声信号の音声品質を向上させることができる。
なお、本実施の形態では、復号音源生成部203において、補償ピッチ周期を用いてCELP型復号および消失フレーム補償処理を行う場合を例にとって説明したが、補償ピッチ周期を用いて音源信号を補償せず直接ランダム雑音または定常的な雑音を用いて消失フレームを補償しても良い。これにより、偽ピッチパルス波形が補償ピッチ周期で繰り返されることを回避し、偽ピッチパルス波形を検出および除去する必要がなくなる。
(実施の形態4)
本発明の実施の形態4においては、音声符号化装置で生成された音源信号のパワーと、音声復号装置で生成された復号音源信号のパワーとの差を補償するために、複数のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正する。
図15は、本実施の形態に係る音声復号装置600の主要な構成を示すブロック図である。なお、音声復号装置600は、実施の形態2に示した音声復号装置400(図9参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置600は、畳み込み部206の代わりに音源パワー記憶部601を備える点において、音声復号装置400と相違する。なお、音声復号装置600の音源信号補正部607と音声復号装置400の音源信号補正部407とは内部の構成および動作において相違点があるため異なる符号を付す。
音源パワー記憶部601は、音源選択部208から入力される音源信号のパワーを下記の式(3)に従い算出して記憶し、過去フレームの音源信号のパワー(過去フレーム音源パワー)を音源信号補正部607に出力する。ここでは、1フレーム前の音源パワーを過去フレーム音源パワーとして出力する場合を例にとる。
この式において、iはサンプル番号、m−1は現フレームの1つ前のフレームの番号、L_FRAMEはフレーム長、exe_s(m−1)(i)はm−1番フレームの音源信号を示す。
音源信号補正部607は、音源パラメータ復号部202から入力されるピッチラグ、復号音源生成部203から入力される復号音源信号、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、ピッチパルス波形学習部205から入力されるピッチパルス学習波形、音源パワー復号部402から入力される復号音源パワー、および音源パワー記憶部601から入力される過去フレーム音源パワーを用いてピッチパルス列を生成する。また、音源信号補正部607は、生成されたピッチパルス列を用いて復号音源信号を補正し、得られる補正音源信号を音源選択部208に出力する。
図16は、音源信号補正部607の内部の主要な構成を示すブロック図である。音源信号補正部607は、実施の形態2に示した音源信号補正部407(図11参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音源信号補正部607は、ピッチパルス列生成部671をさらに備える点において、実施の形態2に示した音源信号補正部407と相違する。なお、音源信号補正部607のピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476は、畳み込み部206から入力されるピッチパルス波形の代わりにピッチパルス列生成部671から入力されるピッチパルス列を用いる点のみにおいて、音源信号補正部407のピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476と相違し、ここでは同じ符号を付し説明を省略する。
ピッチパルス列生成部671は、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、ピッチパルス波形学習部205から入力されるピッチパルス学習波形、復号音源生成部203から入力される復号音源信号、音源パワー復号部402から入力される復号音源パワー、音源パワー記憶部601から入力される過去フレーム音源パワー、および音源パラメータ復号部202から入力されるピッチラグを用いてピッチパルス列を生成する。ピッチパルス列生成部671は、ピッチパルス位置PPpを起点として、時間軸の過去方向(逆方向)にピッチラグ間隔でピッチパルス学習波形を繰り返して配置することによってピッチパルス列を生成する。ピッチパルス列を構成する個々のピッチパルス波形の振幅は、ピッチパルス情報復号部204から入力されるピッチパルス振幅を基準として、時間軸の過去方向に位置するピッチパルス波形ほど振幅が減衰させていく。ここで、振幅の減衰係数は後述のピッチパルス減衰係数算出部678において、復号音源パワーおよび過去フレーム音源パワーを用いて算出される。なお、ピッチパルス列を構成するピッチパルス波形の数は、ピッチパルス列の補正により得られる補正音源信号のパワーと復号音源パワーとの比較結果が考慮されたうえで決まる。ピッチパルス列生成部671は、得られるピッチパルス列をピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476に出力する。
図17は、ピッチパルス列生成部671の内部の主要な構成を示すブロック図である。
図17において、ピッチパルス列生成部671は、ピッチパルス列候補生成部672、ピッチパルス列パワー算出部673、差分音源パワー算出部674、補正音源パワー算出部675、復号音源パワー比較部676、次ピッチパルス位置算出部677、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679を備える。
ピッチパルス列候補生成部672は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅値、ピッチパルス波形学習部205から入力されるピッチパルス学習波形、音源パワー記憶部601から入力される過去フレーム音源パワー、次ピッチパルス位置算出部677から入力される次ピッチパルス位置、およびピッチパルス減衰係数算出部678から入力されるピッチパルス減衰係数を用いてピッチパルス列候補を生成する。具体的には、ピッチパルス列候補生成部672は、フレーム長を長さとするバッファを内蔵しており、フレーム処理の開始において内蔵のバッファを「空」で初期化、すなわちバッファの値を全て0とし、ピッチパルス情報復号部204から入力されるピッチパルス位置を起点とし、ピッチパルス減衰係数が乗じられたピッチパルス学習波形をピッチパルス波形として、ピッチパルス波形の振幅絶対値最大値の位置と次ピッチパルス位置とが一致するように、ピッチパルス波形をピッチラグ間隔で時間軸の過去方向へ内蔵のバッファに繰り返し追加する。ピッチパルス列候補生成部672は、複数のピッチパルス波形が追加されたバッファをピッチパルス列候補としてピッチパルス列パワー算出部673、差分音源パワー算出部674、およびピッチパルス列記憶部679に出力する。
図18は、ピッチパルス列候補生成部672において生成されるピッチパルス列候補のイメージを示す図である。
フレーム処理の初期状態としてピッチパルス列候補生成部672の内蔵のバッファは「空」(バッファの値が全て0)である。ピッチパルス列候補生成部672は、まず、ピッチパルス振幅値PPaのピッチパルス学習波形を1個目のピッチパルス波形として、ピッチパルス波形の振幅値最大値の位置とピッチパルス位置PPpとが一致するように、すなわち位置PPpへ1個目のピッチパルス波形を内蔵のバッファに追加する。次いで、ピッチパルス列候補生成部672は、ピッチパルス減衰係数が乗じられたピッチパルス学習波形を2個目のピッチパルス波形として、ピッチパルス位置PPpから時間軸の過去方向へピッチラグT(m+1)だけ離れた位置、すなわち位置PPm1へ2個目のピッチパルス波形を内蔵のバッファに追加する。同様に、ピッチパルス列候補生成部672は、2個目のピッチパルス波形用のピッチパルス減衰係数とは異なるピッチパルス減衰係数が乗じられたピッチパルス学習波形を3個目のピッチパルス波形として、ピッチパルス位置PPm1から時間軸の過去方向へピッチラグT(m+1)だけ離れた位置、すなわち位置PPm2へ3個目のピッチパルス波形を内蔵のバッファに追加する。ピッチパルス列候補生成部672は、このような追加動作を繰り返すことによりピッチパルス列候補を生成する。
ピッチパルス列パワー算出部673は、ピッチパルス列候補生成部672から入力されるピッチパルス列候補のパワーを下記の式(4)に従って算出し、ピッチパルス列パワーRPpow(P)として補正音源パワー算出部675に出力する。
式(4)において、Pはピッチパルス列に追加されたピッチパルス波形の総数、RPpow(P)はピッチパルス列パワー、Ppow(1)はピッチパルス列を構成する1個目のピッチパルス波形のパワーを示す。Att_r(p)は、ピッチパルス列を構成するp個目のピッチパルス波形に乗じられるピッチパルス減衰係数を示す。
差分音源パワー算出部674は、復号音源生成部203から入力される復号音源信号から、ピッチパルス列候補生成部672から入力されるピッチパルス列候補を除くことにより差分音源信号を生成し、生成された差分音源信号のパワーを差分音源パワーRpow(P)として算出し補正音源パワー算出部675に出力する。ここで、算出された差分音源パワーRpowが負数である場合、差分音源パワー算出部674は、ゼロの値を補正音源パワー算出部675に出力する。
補正音源パワー算出部675は、ピッチパルス列パワー算出部673から入力されるピッチパルス列パワーRPpow(P)と、差分音源パワー算出部674から入力される差分音源パワーRpow(P)とを下記の式(5)に従って加算し、加算結果を補正音源パワーHpow(P)として復号音源パワー比較部676に出力する。
復号音源パワー比較部676は、補正音源パワー算出部675から入力される補正音源パワーと、音源パワー復号部402から入力される復号音源パワーとを比較し、パワー比較結果を次ピッチパルス位置算出部677およびピッチパルス列記憶部679に出力する。パワー比較結果としては、例えば「大」、「近似」、「小」という3つからなるとする。具体的には、例えば、補正音源パワーが復号音源パワーより大きい場合には「大」、補正音源パワーが復号音源パワー以下であってかつ復号音源パワーの0.8倍以上の場合には「近似」、補正音源パワーが復号音源パワーの0.8倍より小さい場合には「小」とする。
次ピッチパルス位置算出部677は、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合のみ、音源パラメータ復号部202から入力されるピッチラグおよびピッチパルス情報復号部204から入力されるピッチパルス位置を用いて、続いてピッチパルス列候補にピッチパルス波形を追加することが可能であるか否かを示す追加可否情報を算出する。また、次ピッチパルス位置算出部677は、続いて追加されるピッチパルス波形の位置を次ピッチパルス位置として算出し、ピッチパルス列候補生成部672、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679に出力する。具体的には、次ピッチパルス位置算出部677は、ピッチパルス情報復号部204から入力されるピッチパルス位置から、時間軸の過去方法へピッチラグのP個分だけ離れた位置を、ピッチパルス列に追加されるP個目のピッチパルス波形の位置、すなわち次ピッチパルス位置として算出する。また、算出された次ピッチパルス位置がフレーム範囲内に収まらない場合、次ピッチパルス位置算出部677は、次ピッチパルス位置を出力せず、「不可」というピッチパルス追加可否情報を生成して出力する。一方、算出された次ピッチパルス位置がフレーム範囲内に収まる場合、次ピッチパルス位置算出部677は、次ピッチパルス位置を出力するとともに、「可」というピッチパルス追加可否情報を生成して出力する。
ピッチパルス減衰係数算出部678は、音源パワー復号部402から入力される復号音源パワー、音源パワー記憶部601から入力される過去フレーム音源パワー、次ピッチパルス位置算出部677から入力される次ピッチパルス位置およびピッチパルス追加可否情報を用いて、ピッチパルス列に追加されるピッチパルス学習波形に乗じるピッチパルス減衰係数を、下記の式(6)に従って算出し、ピッチパルス列候補生成部672に出力する。
この式において、pはピッチパルス追加番号として、ピッチパルス列に追加されるピッチパルス波形の番号を示し、Att_r(p)はp個目のピッチパルス波形に対応するピッチパルス減衰係数、peak_pos(p)はp個目のピッチパルス波形の振幅絶対値最大値の位置、Epow(m−1)は過去フレームの音源パワー、Hpow(m)は復号音源パワーを示す。peak_pos(p)は現フレームの先頭位置を零とした相対位置で表される。式(6)によれば、pが増加するほどpeak_pos(p)は減少する。また、1個目のピッチパルス波形に対応するピッチパルス減衰係数Att_r(1)は1.0となり、peak_pos(p)が零(すなわちフレームの先頭位置)となる場合、対応するピッチパルス減衰係数Att_r(p)は、√(Epow(n−1)/Hpow(n))となり、peak_pos(p)が零とpeak_pos(1)との間にある場合、減衰係数Att_r(p)は√(Epow(n−1/Hpow(n))と1.0の内分点になる。
ピッチパルス列記憶部679は、復号音源パワー比較部676から入力されるパワー比較結果および次ピッチパルス位置算出部677から入力される次ピッチパルス位置を用いて、ピッチパルス列候補生成部672から入力されるP個のピッチパルス波形からなるピッチパルス列候補と、記憶しているP−1個のピッチパルス波形からなるピッチパルス列候補とのうち1つを選択する。ピッチパルス列記憶部679は、選択した1つのピッチパルス候補をピッチパルス列としてピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476に出力する。具体的には、ピッチパルス列記憶部679は、まずパワー比較結果によりピッチパルス列候補の選択を行う。ピッチパルス列記憶部679は、パワー比較結果が「大」である場合には、仮にP個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正すると補正音源パワーが復号音源パワーを超えてしまうと判断し、記憶しているP−1個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。また、ピッチパルス列記憶部679は、パワー比較結果が「近似」である場合には、仮にP個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正すると補正音源パワーと復号音源パワーとが近似するようになると判断し、P個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。また、ピッチパルス列記憶部679は、パワー比較結果が「小」である場合には、次ピッチパルス追加可否情報を用いてピッチパルス列候補の選択を行う。すなわち、パワー比較結果が「小」であってかつ次ピッチパルス追加可否情報が「可」である場合、ピッチパルス列記憶部679は、続いてピッチパルス波形をピッチパルス列候補に追加できると判断し、ピッチパルス列候補の選択および出力を行わない。一方、パワー比較結果が「小」であってかつ次ピッチパルス追加可否情報が「不可」である場合、ピッチパルス列記憶部679は、続いてピッチパルス波形を追加することができないと判断し、復号音源パワーに最も近似する補正を可能とする、P個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。
図19は、ピッチパルス列生成部671においてピッチパルス列を生成する処理手順を示すフロー図である。
まず、ピッチパルス列候補生成部672は、ピッチパルス列に追加されるピッチパルス波形をカウントする変数Iを「0」に初期化し、ピッチパルス情報復号部204から入力されるピッチパルス位置の値によりPPpm(I)を初期化し、I+1個目のピッチパルスに対応するピッチパルス減衰係数を[1.0]の値で初期化する(ST1010)。次いで、ピッチパルス位置PPpm(I)に、I+1個目のピッチパルスに対応するピッチパルス減衰係数が乗じられたピッチパルス学習波形をI+1個目のピッチパルスとして追加する(ST1015)。そして、ピッチパルス列パワー算出部673はピッチパルス列パワーを、差分音源パワー算出部674は差分音源パワーを、補正音源パワー算出部675は補正音源パワーを算出する(ST1020)。次いで、復号音源パワー比較部676は、復号音源パワーと補正音源パワーとを比較してパワー比較結果を得る(ST1030)。ST1030において得られたパワー比較結果が「小」である場合(ST1030:小)、次ピッチパルス位置算出部677は、I+1個目の次((I+1)+1個目)のピッチパルス波形が追加される位置を次ピッチパルス位置として算出し、さらに算出された次ピッチパルス位置がフレーム範囲内に収まるか否かを判定する(ST1060)。ST1060において算出された次ピッチパルス位置がフレーム範囲内に収まらない場合(ST1060:外)、処理はST1050に移行する。一方、ST1060において算出された次ピッチパルス位置がフレーム範囲内に収まる場合(ST1060:内)、ピッチパルス減衰係数算出部678は、(I+1)+1個目のピッチパルス波形に対応するピッチパルス減衰係数を算出する(ST1070)。次いで、ピッチパルス列候補生成部672は、ST1060において算出された次ピッチパルス位置に、ST1070において算出されたピッチパルス減衰係数が乗じられたピッチパルス学習波形を(I+1)+1個目のピッチパルス波形として追加し、ピッチパルス列候補を生成する(ST1080)。次いで、ピッチパルス列候補生成部672は、I=I+1のようにIを1インクリメントして処理をST1020に移行する(ST1090)。
一方、ST1030において得られたパワー比較結果が「大」である場合(ST1030:大)、ピッチパルス列記憶部679は、I個のピッチパルスからなるピッチパルス列候補を、ピッチパルス列生成部671において生成されたピッチパルス列として出力する(ST1040)。
また、ST1030において得られたパワー比較結果が「近似」である場合(ST1030:近似)、およびST1060において算出された次ピッチパルス位置がフレーム範囲内に収まらない場合(ST1060:外)、ピッチパルス列記憶部679は、I+1個のピッチパルスからなるピッチパルス列候補を、ピッチパルス列生成部671において生成されたピッチパルス列として出力する(ST1050)。
以下、本実施の形態に係るピッチパルス列による復号音源信号の補正について、図20〜図27を用いて説明する。ここでは、m−1番目のフレームおよびm+1番目のフレームを正常に受信し、m番目のフレームを消失した場合を例にとって説明する。
なお、図20は、フレーム消失が生じない場合の復号音源信号の波形、すなわち理想的な復号音源信号の波形を示し、図22、図24、および図26は、m番目のフレームが消失し、各々1個、2個、および3個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正する場合の得られる補正音源信号の波形を示す。図21、図23、図25、および図27は、図20、図22、図24、および図26に示す復号音源補正処理における音源パワーを例示する。
図20は、フレーム消失が生じない場合の復号音源信号の波形、すなわち理想的な復号音源信号の波形を示す図である。図20において、m番フレームは3つのピッチパルス波形を含む。図21は、m番フレームを含む各フレームにおける復号音源パワーを示す。
図22は、1つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる1つのピッチパルス波形、すなわち、点線で示されるピッチパルス波形はピッチパルス学習波形そのものであり、このピッチパルス波形の振幅絶対値最大値の位置は、ピッチパルス情報復号部204で得られたピッチパルス位置PPpと一致する。
図23は、1つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図23に示すように、1つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1つのピッチパルス波形パワーとの総和値である。なお、図23においては、1つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「小」となる場合、すなわち補正音源パワーと復号音源パワーとの比が0.8より小さい場合を例にあげている。この場合は言い換えれば、復号音源パワーと補正音源パワーとの差が所定値より大きい場合であり、このような場合は、復号音源信号の品質が劣化するため、補正音源信号のパワーをさらに補償する必要がある。補正音源信号のパワー補償方法としては、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方法が考えられる。しかし、復号音源信号を増幅する方法はノイズを増大する問題がある一方、補正に用いられるピッチパルス波形を増幅する方法は復号音声が局所的に過大に聞こえ変動感をもたらすという問題がある。また、2つの方法を組み合わせても効果には限界がある。本実施の形態では、補正に用いられるピッチパルス波形の数を増加して、すなわちピッチパルス列を用いて復号音声信号を補正する。すなわち、本実施の形態では、ピッチパルス性波形を用いてピッチパルス性信号を補正するため、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方法の問題点を解決している。
図24は、2つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる2個目のピッチパルス波形、すなわち、点線で示される2つのピッチパルス波形のうち振幅が小さい方のピッチパルス波形は、2個目のピッチパルスに対応するピッチパルス減衰係数をピッチパルス学習波形に乗じて得られたものである。このピッチパルス波形の振幅絶対値最大値の位置PPpm1’は、位置PPpから時間軸の過去方向へピッチラグT(m+1)分だけ離れた位置と一致する。図24に示すように、位置PPpm1’と位置PPm1とは若干ずれている。
図25は、2つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図25に示すように、2つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1個目のピッチパルス波形パワーと、2個目のピッチパルス波形パワーとの総和値である。なお、図25においては、2つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「小」となる場合を例にあげている。パワー比較結果が「小」となる場合は、次の図26に示すように続けてピッチパルス波形を追加して復号音源信号を補正する。
図26は、3つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる3個目のピッチパルス波形、すなわち、点線で示される3つのピッチパルス波形のうち振幅が最も小さい方のピッチパルス波形は、3個目のピッチパルスに対応するピッチパルス減衰係数をピッチパルス学習波形に乗じて得られたものであり、このピッチパルス波形の振幅絶対値最大値の位置PPpm2’は、位置PPpから時間軸の過去方向へ2×T(m+1)分だけ離れた位置と一致する。図26に示すように、位置PPpm2’と位置PPm2とは若干ずれている。
図27は、3つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図27に示すように、3つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1個目のピッチパルス波形パワーと、2個目のピッチパルス波形パワーと、3個目のピッチパルス波形パワーとの総和値である。なお、図27においては、3つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「近似」となる場合を例にあげている。パワー比較結果が「近似」となるため、これで復号音源信号の補正は終了する。
仮に、図27においてパワー比較結果が「小」であっても、図26から分かるように4個目のピッチパルス波形が追加される位置は、m番フレームの範囲内に収まらなくm−1番フレームの範囲に属するため、パワー比較結果が「近似」となる場合と同様に、4個目のピッチパルス波形が追加されず復号音源信号の補正は終了する。
図24および図26において、2個目のピッチパルスの位置PPpm1’および3個目のピッチパルスの位置PPpm2’は、それぞれ理想的な復号音源信号のピッチパルス波形の位置PPpm1および位置PPpm2と若干ずれるものの、ピッチパルス性波形を用いてピッチパルス性信号を補正しているため、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方法よりも、得られる補正音源信号は理想の復号音源信号により類似する。本実施の形態に係る復号音源信号の補正方法は、特に音声の立ち上がり部の音声符号化および復号に適用する場合、より自然な復号音声が得られる。
このように、本実施の形態によれば、音声符号化装置から音声復号装置に送信される情報量を増加せず、ピッチパルス列を構成する複数のピッチパルス波形の追加位置およびピッチパルス減衰係数を算出し、ピッチパルス列を用いて復号音源信号を補正するため、符号化情報量を低減しつつ、ノイズおよび変動感を増加せず復号音源信号を補正することができ、復号音声信号の品質を向上することができる。
なお、本実施の形態では、ピッチパルス列へのピッチパルス波形の追加を停止する条件として、パワー比較結果が「近似」または「大」となる場合、および次ピッチパルス位置が消失フレームの範囲内に収まらない場合を例にとって説明したが、本発明はこれに限定されず、ピッチパルス波形の追加を停止する条件として、ピッチパルス減衰係数を乗じて得られるピッチパルスの振幅が、そのピッチパルス位置近傍の復号音源の振幅よりも小さくなる場合をさらに加えても良い。
また、本実施の形態では、ピッチパルス列にピッチパルス波形を追加する位置を算出する際に、消失フレームの次フレームのピッチラグを用いる場合を例にとって説明したが、本発明はこれに限定されず、消失フレームの過去フレームのピッチラグを用いたり、過去フレームと次フレームのピッチラグ間で内挿補間した値としても良い。
(実施の形態5)
本発明の実施の形態5においては、ピッチパルス列を用いて補正された復号音源信号が、実施の形態4で得られた補正復号音源信号よりも、フレーム消失が生じない場合の理想的な復号音源信号にさらに近似するように、ピッチパルス列に含まれる各ピッチパルス波形の位置をさらに補正する。
図28は、ピッチパルス列を用いて復号音源信号を補正する方法を説明するための図である。なお、図28は主に各ピッチパルス波形の位置を説明するための図であり、各ピッチパルス波形の正確な振幅値を表してはいない。
図28Aは、フレーム消失が生じない場合の理想的な復号音源信号の波形を示す図である。図28Aにおいては、m−1番フレームのピッチラグT(m−1)、m番フレームのピッチラグT(m)、音声符号化側において検出されたm番フレームの最後尾のピッチパルスの位置PPp、およびm−1番フレームのピッチパルス位置PPp’を示している。ここで、音声符号化側において検出されたm番フレームのピッチパルス位置PPpは、すなわち、ピッチパルス情報復号部204において復号されたピッチパルス位置PPpであり、以下、m番フレームの最後尾のピッチパルスをm番フレーム最後ピッチパルスと称す。
図28Bは、m−1番フレームおよびm+1番フレームが正常に受信され、m番フレームが消失した場合、m番フレームに補償ピッチラグT’(m)間隔でピッチパルス波形の列を加算して得られる補正復号音源信号の波形を示す図である。図28Bに示すように、補償ピッチラグT’(m)としてT(m−1)を用い、m−1番フレーム最後ピッチパルスの位置PPp’を起点として、復号音源信号にピッチパルス列を加算する場合、各ピッチパルス波形の位置はPDp[1]、PDp[2]、…、PDp[S]となる。ここで、Sはm番フレームに加算されるピッチパルス波形の総数を示す。なお、以下の説明の便宜のために、PPp’をPDp[0]とも記してある。図28Bに示すように、各ピッチパルス波形は補償ピッチラグT’(m)の間隔で配置され、PDp[S]とPPpとは一致しなくなる。すなわち、図28Aと図28Bとを比較すれば分かるように、図28Bに示す復号音源信号に加算されるピッチパルス波形の位置と、図28Aに示す理想的な復号音源信号に含まれるピッチパルスの位置とは一致せず、図28Bに示す補正復号音源信号は、図28Aに示す理想的な復号音源信号に含まれない偽ピッチパルスを含み、これが復号音声の品質劣化の原因となる。
図28Cにおいては、補償ピッチラグT’(m)をさらに補正して得られたT’(m,0)、T’(m,1)、…、T’(m,S’−1)を用い、PPp’を起点として、ピッチパルス列を加算して復号音源信号を補正する場合を示す。かかる場合、各ピッチパルス波形の位置は、PDp’[1]、PDp’[2]、…、PDp’[S’]となる。ここで、T’(m,0)、T’(m,1)、…、T’(m,S’−1)の総和は、PPp’とPPpとの間の距離と等しく、PDp’[S’]とPPpとは一致するようになる。
以下、図28Cに示すPDp’[1]、PDp’[2]、…、PDp’[S’]それぞれを第1補償ピッチパルス位置、第2補償ピッチパルス位置、第3補償ピッチパルス位置、…、第S補償ピッチパルス位置と称す。
図29は、本発明の実施の形態5に係る音声復号装置700の主要な構成を示すブロック図である。なお、音声復号装置700は、実施の形態4に示した音声復号装置600(図15参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置700は、ピッチラグ補正部701をさらに備える点において、音声復号装置600と相違する。なお、音声復号装置700の復号音源生成部703、音源信号補正部707と、音声復号装置600の復号音源生成部203、音源信号補正部607とは内部の構成および動作において相違点があり、それを示すために異なる符号を付す。
ピッチラグ補正部701は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、復号音源生成部703からフィードバックされる復号音源信号を用いて、補正ピッチラグ、ピッチラグ補正可否情報、補償ピッチパルス位置を生成し、ピッチラグまたは補正ピッチラグを復号音源生成部703に出力し、ピッチラグ補正可否情報、および補償ピッチパルス位置を音源信号補正部707に出力する。なお、ピッチラグ補正部701の詳細については後述する。
復号音源生成部703は、CELP型復号、補償、および平滑化処理を行う際に、音源パラメータ復号部202から入力されるピッチラグの代わりに、ピッチラグ補正部701から入力される補正ピッチラグまたはピッチラグを用いる点のみにおいて、実施の形態4に示した復号音源生成部203と相違し、ここでは、詳細な説明を省略する。
音源信号補正部707は、ピッチパルス列を生成する際に、後述の補償ピッチパルス位置算出部714からの補償ピッチパルス位置、および後述のピッチラグ補正可否判定部713からのピッチラグ補正可否情報をさらに用いる点において、実施の形態4に示した音源信号補正部607と相違する。なお、音源信号補正部707の詳細については後述する。
図30は、ピッチラグ補正部701の内部の構成を示すブロック図である。
図30において、ピッチラグ補正部701は、前フレーム最後ピッチパルス検出部711、補正ピッチラグ算出部712、ピッチラグ補正可否判定部713、補償ピッチパルス位置算出部714、およびピッチラグ切替部715を備える。以下、ピッチラグ補正部701の各部の動作の説明において、図28において用いられた各パラメータを流用する。
前フレーム最後ピッチパルス検出部711は、復号音源生成部703から入力される復号音源信号、および音源パラメータ復号部202から入力されるピッチラグを用いて、消失フレーム1個前のフレームの後尾から一番目のピッチパルス、すなわちm−1番フレーム最後ピッチパルスの位置PPp’(PDp[0])を検出し、補正ピッチラグ算出部712、ピッチラグ補正可否判定部713、および補償ピッチパルス位置算出部714に出力する。また、前フレーム最後ピッチパルス検出部711は、検出されたm−1番フレーム最後ピッチパルスの振幅をピッチラグ補正可否判定部713に出力する。前フレーム最後ピッチパルス検出部711においてm−1番フレーム最後ピッチパルスを検出する方法は、音声符号化装置側のピッチパルス検出部192においてn番フレーム最後ピッチパルス位置を検出する方法と基本的に同様である。ただし、m番フレームが消失したため、前フレーム最後ピッチパルス検出部711においては、T(m)を用いることができず、T(m)の代わりに補償ピッチラグT’(m)を用いる。なお、補償ピッチラグT’(m)としては、T(m−1)、またはT(m+1)、またはT(m−1)とT(m+1)とを内挿補間して得られる値を用いる。以下、説明を簡略するために、補償ピッチラグT’(m)としてT(m−1)を用いる場合を例にとって説明する。
補正ピッチラグ算出部712は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるm番フレーム最後ピッチパルス位置PPp、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置PDp’、および補償ピッチパルス位置算出部714から入力される各補償ピッチパルス位置を用いて、補正ピッチラグT’(m,0)、T’(m,1)、…、T’(m,S’−1)を算出する。補正ピッチラグ算出部712は、算出した補正ピッチラグT’(m,0)、T’(m,1)、…、T’(m,S’−1)をピッチラグ切替部715に出力するともに補償ピッチパルス位置算出部714にフィードバックする。具体的には、補正ピッチラグ算出部712は、補償ピッチパルス位置PDp’[i]とPPpとの距離(以下、ピッチパルス間距離と称す)が、補正ピッチラグT’(m,i)の整数倍となるように、下記の式(7)および式(8)に従って、補正ピッチラグT’(m,i)を算出する。ここで、i=0〜S’−1、PDp’[0]はm−1番フレーム最後ピッチパルス位置PDp[0]、PPpはm番フレーム最後ピッチパルス位置である。
式(7)において、sが取る範囲は0≦s≦S’であり、PDp’[s]はs番目の補償ピッチパルス位置、Dpp[s]はs番目のピッチパルス間距離を表す。また、式(7)において、mはフレーム番号、T’(m,s)は補正ピッチラグを示し、int()は小数点以下を切り捨てる関数を示す。tTは暫定ピッチラグを示し、T’(m,s−1)、またはT(m−1)を用いる。
ピッチラグ補正可否判定部713は、ピッチパルス情報復号部204から入力されるm番フレーム最後ピッチパルス振幅、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス振幅、音源パラメータ復号部202から入力されるピッチラグ、補正ピッチラグ算出部712から入力される補正ピッチラグを用いて、ピッチラグの補正が可能である否かをフレーム毎に判定し、「可」または「否」というピッチラグ補正可否情報をピッチラグ切替部715および音源信号補正部707に出力する。ピッチラグ補正可否判定部713は、m−1番フレーム最後ピッチパルスとm番フレーム最後ピッチパルスとの間に補償ピッチパルスを連続的に並べることが適切かどうかを判断してピッチラグ補正可否判定をおこなう。例えば、m−1番フレーム最後ピッチパルスとm番フレーム最後ピッチパルスの正負が逆になっている場合、フレーム間でピッチ波形が変化したり、いずれかのピッチパルスの検出に誤りがあったりしている可能性が高いと考えられる。このような場合は補償ピッチパルスを連続的に並べることによる補償性能の改善は得られないので、補正「否」と判定する。また、最後ピッチパルスの振幅が極端に小さい場合は、ピッチ周期性のない信号である可能性があるので、このような場合も補正「否」とする。またさらに、補償しようとしているフレームの前後のフレームのピッチラグ間に大きな差がある場合なども、ピッチ周期性のないフレームであったり、前後のフレームのいずれかでピッチ誤りを生じている可能性があるので、補正「否」と判定する。
図31は、ピッチラグ補正可否判定部713において、上記仮定に基づきピッチラグ補正可否判定を行う手順を示すフロー図である。
まず、ステップ(ST)2010において、ピッチラグ補正可否判定部713は、フレーム消失情報に基づき、m番フレーム最後ピッチパルス情報が含まれているm+1番フレームの符号化データが消失したか否かを判定する。
ST2010において、m+1番フレームの符号化データが消失したと判定した場合(ST2010:「YES」)には、ピッチラグを補正することが不可能であるため、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2010において、m+1番フレームの符号化データが消失しなかったと判定した場合(ST2010:「NO」)には、ピッチラグ補正可否判定部713は、ST2020において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅との極性が一致するか否かを判定する。
ST2020において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅との極性が一致しないと判定した場合(ST2020:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2020において、m−1番フレームピッチパルス振幅と、m番フレームピッチパルス振幅との極性が一致すると判定した場合(ST2020:「NO」)には、ピッチラグ補正可否判定部713は、ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅とのいずれかが十分小さく、所定の閾値以下であるか否かを判定する。
ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅とのいずれかが所定の閾値以下であると判定した場合(ST2030:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅とのいずれもが所定の閾値以下でないと判定した場合(ST2030:「NO」)には、ピッチラグ補正可否判定部713は、ST2040において、ピッチラグT(m−1)に対する補正ピッチラグT’(m,s)の変動量が所定の閾値以上であるか否かを判定する。
ST2040において、補正ピッチラグT’(m,s)とピッチラグT(m−1)との変動量が所定の閾値以上であると判定した場合(ST2040:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。ST2040では、過去のピッチラグに対して補正ピッチラグが大きく変動した場合にピッチラグ補正を中止するように判定する。判定は、過去のピッチラグと、過去のピッチラグと補正ピッチラグの差との比があらかじて決めてある閾値を超えるかどうかで判定できる。閾値は事前に決めておけば良い。例えば、以下の数式を満たす時、ピッチラグ補正可否判定部713は、ST2040においてピッチラグの変動量が閾値以上であると判定(ST2040:「YES」)する。|T(m−1)− T’(m、s)|/T’(m、s) ≧ 0.1 ・・・(9)
一方、ST2040において、補正ピッチラグT’(m,s)とピッチラグT(m−1)との変動量が所定の閾値以上でないと判定した場合(ST2040:「NO」)には、ピッチラグ補正可否判定部713は、ST2050において、「可」というピッチラグ補正可否情報を出力する。例えば、以下の数式を満たす時、ピッチラグ補正可否判定部713は、ST2040においてピッチラグの変動量が閾値以上でないと判定(ST2040:「NO」)する。|T(m−1)− T’(m、s)|/T’(m、s) < 0.1 ・・・(10)
再び図30に戻り、補償ピッチパルス位置算出部714は、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)(0≦s≦S’)を用いて、下記の式(11)に従って補償ピッチパルス位置PDp’[s](0≦s≦S’)を算出し、補正ピッチラグ算出部712および音源信号補正部707に出力する。具体的には、補償ピッチパルス位置算出部714は、まず、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置PDp[0]、および補正ピッチラグ712から入力される補正ピッチラグT’(m,0)を用いて、下記の式(11)に従いPDp’[1]を算出し、音源信号補正部707に出力するとともに、補正ピッチラグ算出部712にフィードバックする。そして、補正ピッチラグ算出部712は、PDp[1]を用いて上記の式(7)および式(8)に従い補正ピッチラグT’(m,1)を算出し、補償ピッチパルス位置算出部714に出力する。このような計算を繰り返すことで、補償ピッチパルス位置算出部714および補正ピッチラグ算出部712は、PDp’[S’]がm番フレーム最後ピッチパルス位置PPpと一致するまで、補償ピッチパルス位置PDp’[s]と補正ピッチラグT’(m,s)とを逐次的に算出する。
PDp’[s]=PDp[s−1]+T’(m,s−1)
if(s>0) かつPDp’[s]≦PPp …(11)
ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)を復号音源生成部703に出力し、ピッチパルス補正可否判定結果が「否」である場合には、音源パラメータ復号部202から入力されるピッチラグT(m)を復号音源生成部703に出力する。
図32は、音源信号補正部707の内部の構成を示すブロック図である。なお、音源信号補正部707は、実施の形態4に示した音源信号補正部607と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音源信号補正部707は、補償ピッチパルス位置算出部714からの補償ピッチパルス位置、およびピッチラグ補正可否判定部713からのピッチラグ補正可否情報が、ピッチパルス列生成部771にさらに入力される点のみにおいて、実施の形態4に示した音源信号補正部607と相違する。それに伴い、音源信号補正部707のピッチパルス列生成部771と、音源信号補正部607のピッチパルス列生成部671とは内部の構成および処理の一部において相違点があり、それを示すために異なる符号を付す。
図33は、ピッチパルス列生成部771の内部の構成を示すブロック図である。なお、ピッチパルス列生成部771は、実施の形態4に示したピッチパルス列生成部671と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
実施の形態4に示したピッチパルス列生成部671は、音声の立ち上がり区間で動作する場合を想定したものであるが、有声定常区間で動作する場合には、復号音源信号に加算されるピッチパルス波形の位置と、理想的な復号音源信号に含まれるピッチパルス波形の位置とは一致しない可能性があるため、復号音声のピッチ周期性が乱れ異音に感じる可能性がある。そこで、本実施の形態に係るピッチパルス列生成部771は、補償ピッチパルス位置を用いてピッチパルス波形を復号音源信号に加算することで、音声の定常性を損ねることなく復号音源信号の品質を向上させている。
具体的には、ピッチパルス列生成部771は、補償ピッチパルス位置算出部714からの補償ピッチパルス位置、およびピッチラグ補正可否判定部713からのピッチラグ補正可否情報が、次ピッチパルス位置生成部777にさらに入力される点のみにおいて、実施の形態4に示したピッチパルス列生成部671と相違する。それに伴い、ピッチパルス列生成部771の次ピッチパルス位置生成部777と、ピッチパルス列生成部671の次ピッチパルス位置生成部677とは内部の構成および処理の一部において相違点があり、それを示すために異なる符号を付す。
次ピッチパルス位置生成部777は、ピッチラグ補正可否判定部713からのピッチラグ補正可否情報が「否」である場合には、実施の形態4に示した次ピッチパルス位置生成部677と同様な動作を行い、ここでは、詳細な説明を省略する。
一方、次ピッチパルス位置生成部777は、ピッチラグ補正可否判定部713からのピッチラグ補正可否情報が「可」である場合には、音源パラメータ復号部202から入力されるピッチラグの代わりに補償ピッチパルス位置算出部714から入力される補償ピッチパルス位置を用いて次ピッチパルス位置を算出する。具体的には、次ピッチパルス位置算出部777は、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合のみ、番号pで表される次ピッチパルスの位置としてPDp’[S’−p]をピッチパルス列候補生成部672、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679に出力する。すなわち、次ピッチパルス位置算出部777は、m番フレーム最後ピッチパルス位置PPpを初期値として、PDp’[S’−1]、…PDp’[2]、PDp’[1]を次ピッチパルス位置として順次出力する。また、補償ピッチパルス位置は常にm番フレーム範囲内に存在するため、次ピッチパルス位置生成部777は、ピッチラグ補正可否情報が「可」であって、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合には、「可」という次ピッチパルス追加可否情報を出力し、それ以外の場合には「不可」という次ピッチパルス追加可否情報を出力する。
このように、本実施の形態によれば、音声符号化装置は、音声符号化装置から音声復号装置に送信される情報量を増加せず、復号音源信号において、消失フレーム最終ピッチパルス位置と消失前フレーム最終ピッチパルス位置との間に整数個のピッチパルスを加算する。すなわち、理想的な復号音源信号に含まれるピッチパルス波形の位置により一致するように、復号音源信号に加算されるピッチパルス波形の位置を調整するため、符号化情報量を低減しつつ、ノイズおよび変動感を増加せず、復号音声信号の品質を向上することができる。
なお、本実施の形態では、図28Bの説明において、補償ピッチラグT’(m)としてピッチラグT(m−1)を用いる場合を例にとって説明したが、本発明はこれに限定されず、補償ピッチラグT’(m)としてT(m+1)を用いても良く、かかる場合にも、m番フレームの最後尾に加算されるピッチパルス波形の位置はPPpと一致せず、補正復号音源信号に偽ピッチパルスが現れるようになる。
また、本実施の形態では、前フレーム最後ピッチパルス検出部711は、音声符号化装置側のピッチパルス検出部192においてn番フレームのピッチパルス位置PPpを検出する方法と同様な方法で、m−1番フレーム最後ピッチパルスの位置および振幅を検出する場合を例にとって説明したが、本発明はこれに限定されず、前フレーム最後ピッチパルス検出部711は、ピッチパルス情報復号部204からm−1番フレーム最後ピッチパルス位置およびピッチパルス振幅が得られる場合には、これを用いても良い。
また、本実施の形態では、ピッチラグが整数値のみで表され、補正ピッチラグ算出部712に用いられる式(8)においてint()関数を用いて小数点以下を切り捨てる場合を例にとって説明したが、本発明はこれに限定されず、ピッチラグを小数点精度で表せる場合、式(8)においてint()を用いず補正ピッチラグを算出しても良い。
また、本実施の形態では、式(8)における暫定ピッチラグtTとして、T’(m,s−1)またはT(m−1)を用いる場合を例にとって説明したが、本発明はこれに限定されず、式(8)における暫定ピッチラグtTとして、T(m+1)を用いても良く、さらには、T’(m,s−1)とT(m+1)との内挿相関値、例えば(T’(m,s−1) + T(m+1))/2を用いても良い。
また、本実施の形態では、暫定ピッチラグtTとして、補正ピッチラグをT’(m,s)を算出する際に、T’(m,s−1)またはT(m−1)のいずれか1つを固定的に用いる場合を例にとって説明したが、本発明はこれに限定されず、T’(m,s−1)、T(m−1)、T(m+1)、T’(m,s−1)とT(m+1)との内挿相関値などから、Dpp[s]/tTを最も整数値に近づける1つを選択して用いても良い。また、一般的に、CELP方式の音声符号化において、ピッチラグは、倍ピッチ周期、半ピッチ周期など本来期待するピッチ周期に対して2倍、0.5倍の値を持つ可能性があるため、過去のピッチラグ系列を用いて、または過去のピッチラグ系列および未来のピッチラグ系列を用いて、倍ピッチ周期、半ピッチ周期となった否かを検出し、倍ピッチ周期、半ピッチ周期となった場合にはそれを補正したうえで、ピッチラグ補正を行っても良い。
また、本実施の形態では、ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)を出力する場合を例にとって説明したが、本発明はこれに限定されず、ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、暫定ピッチラグtTを出力しても良い。
また、本実施の形態では、補正ピッチラグ算出部712および補償ピッチパルス位置算出部714は、お互いの算出結果を用いて補正ピッチラグおよび補償ピッチパルス位置を逐次的に算出する場合を例にとって説明したが、本発明はこれに限定されず、補正ピッチラグおよび補償ピッチパルス位置を一括して算出しても良い。
また、本実施の形態では、消失フレームにおいて補償用パラメータを用いて補償する場合を例にとって説明したが、本発明に係る復号音源信号補正方法は消失フレームのみに限定されず、復帰フレーム以後の正常受信フレームであっても、当該フレームを補償するための補償パラメータを用いて補償を行っても良く、かつ、復号した補償音源パワー、補償ピッチパルス位置などと、補償パラメータとの間で差異が存在する場合にも本発明の適用が可能である。
(実施の形態6)
本発明の実施の形態6においては、復号音源信号の補正に用いられるピッチパルス列を生成する際に、ピッチパルス学習波形を用いる代わりに、復号音源信号の一部を増幅して得られるピッチパルスを用いる点において実施の形態5と相違する。以下、復号音源信号の一部を増幅して得られるピッチパルスを復号音源ピッチパルス波形と称す。
図34および図35は、本実施の形態において復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図である。
図34Aは、フレーム消失が生じなかった場合の理想的な復号音源信号の波形を示す図である。図34Aにおいては、m−1番フレームのピッチラグT(m−1)、m番フレームのピッチラグT(m)、m番フレーム最後ピッチパルス位置PPp、およびm−1番フレーム最後ピッチパルス位置PPp’を示している。すなわち、図34Aは図28Aと同様である。
図34Bは、m−1番フレームおよびm+1番フレームが正常に受信され、m番フレームが消失した場合、実施の形態5に示した方法を用いて復号音源信号を補正し、得られる補正復号音源信号の波形を示す図である。図34Cは、図34Bに示す補正復号音源信号を得るために用いられたピッチパルス学習波形を示す図であり、図34Cにおいては、図34Aに示す理想的な復号音源信号に含まれるピッチパルス波形と類似しないピッチパルス学習波形を例示している。34Bに示すように、実施の形態5に示した復号音源信号補正方法によれば、補正に用いられるピッチパルス学習波形が理想的な復号音源信号のピッチパルス波形に類似しない場合、得られる補正復号音源信号の波形も理想的な復号音源信号と類似せず、復号音声の品質劣化が生じる。具体的には、図34Aに示す理想的な復号音源信号の波形においては、横軸の上下両側ともにピッチピークが存在するのに対し、図34Bに示す補正復号音源信号の波形においては、横軸の上側のみにピッチピークが存在する。その理由は、図34Bを得るために用いられた図34Cに示すピッチパルス学習波形において、横軸の上側のみにピッチピークが存在するためである。このように、ピッチパルス学習波形は、理想的な復号音源信号のピッチパルス波形の変化に追随しきれず、このような補正によっては、逆に復号音声の品質が劣化してしまう。
そこで、m−1番フレームの音源信号(復号音源信号)に含まれるピッチパルス間の相関性が高い場合には、ピッチパルス学習波形を用いずに、過去の復号音源ピッチパルス波形を用いて復号音源信号を補正し、より理想的な復号音源信号に類似する補正復号音源信号を得ることが考えられる。
図35A、図35B、および図35Cは復号音源信号の一部を増幅して得られる復号音源ピッチパルス波形を生成する方法を説明するための図である。図35Aは、復号音源信号において、補償ピッチパルス位置PDp’[s](0≦s≦S’)近傍の区間を示し、図35Bは、図35Aに示す波形から、PPs〜PPeの区間を切り出し、得られるピッチパルス波形を示す。図35Cは、図35Bに示すピッチパルス波形を増幅し、得られる復号音源ピッチパルスを示す。ここで、復号音源ピッチパルス波形の起点PPsおよび終点PPeの決め方、すなわち、復号音源ピッチパルス波形のサンプル数の決め方は、実施の形態1に示したピッチパルス学習波形のサンプル数の決め方と同様である。なお、図35Bに示すピッチパルス波形を増幅する方法については後述する。
図35Dは、図35Cに示したような復号音源ピッチパルス波形を復号音源信号に複数加算し、得られる補正復号音源信号の波形を示す図である。図34A、図34B、および図35Dから分かるように、図34Bに示す補正復号音源信号よりも図35Dに示す補正復号音源信号が、図34Aに示す理想的な復号音源信号にさらに類似する。
図36は、本実施の形態に係るピッチパルス列生成部871の内部の構成を示すブロック図である。なお、ピッチパルス列生成部871は、実施の形態5に示したピッチパルス列生成部771と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
ピッチパルス列生成部871は、相関性判定部880をさらに具備する点において、実施の形態5に示したピッチパルス列生成部771と相違する。なお、ピッチパルス列生成部871のピッチ列候補生成部872は、相関性判定部880からの相関性判定結果、復号音源生成部703からの復号音源信号がさらに入力される点において、ピッチパルス列生成部771のピッチ列候補生成部672と相違し、それに伴い、処理の一部において相違点があり、それを示すために異なる符号を付す。
相関性判定部880は、音源パラメータ復号部202から入力されるピッチラグ、復号音源生成部703から入力される復号音源信号、音源パワー復号部402から入力される復号音源パワーHpow(m)、音源パワー記憶部601から入力される過去フレーム音源パワーEpow(m−1)を用いて、現フレームにおけるピッチパルス波形間の相関性を推定し、「高相関」または「低相関」という判定結果をピッチパルス候補生成部872に出力する。具体的には、下記の式(12)、式(13)および式(15)が同時に満たされる場合には、「高相関」という相関性判定結果が出力され、それ以外の場合には、「低相関」という相関性判定結果が出力される。
εs≦C(m-1) …(12)
1/εp≦Pr<εp …(13)
1/εt≦Tr<εt …(14)
式(12)におけるC(m−1)は、下記の式(15)に従い、m−1番フレームの復号音源信号に対して正規化自己相関値を求めた値である。
式(15)において、exc[]は復号音源信号を示し、L_EXCMAXはバッファサイズを示す。また、τは、遅延値を示し、ピッチラグT(m−1)を用いる。
式(13)におけるPrは、下記の式(16)に従い算出されるパワー変動量であり、過去フレーム音源パワーEpow(m−1)と復号音源パワーHpow(m)との比で表される。
Pr=Epow(m−1)/Hpow(m) …(16)
式(14)におけるTrは、下記の式(17)に従い算出されるピッチラグ変動量であり、m−1番フレームのピッチラグT(m−1)とm+1番フレームのピッチラグT(m+1)との比で表される。
Tr=T(m−1)/T(m+1) …(17)
また、式(12)、式(13)、および式(14)それぞれにおけるεs、εp、およびεtは、例えば、εs=0.8、εp=1.5、εt=1.2とする。
ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「低相関」である場合には、実施の形態5に示したピッチ列候補生成部672と同様な動作を行う。また、ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「高相関」である場合には、実施の形態5に示したピッチ列候補生成部672と基本的に同様の動作を行うが、ピッチパルス波形学習部205から入力されるピッチパルス学習波形の代わりに、復号音源生成部703から入力される復号音源信号から生成される復号音源ピッチパルスを用いて復号音源信号を補正する点において相違する。ここで、「高相関」という相関性判定結果は、現フレームが有声定常区間であることを意味する。
具体的には、ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「高相関」である場合には、以下の動作を行ってS’個の復号音源ピッチパルスを生成する。ピッチ列候補生成部872は、まず、次ピッチパルス位置算出部777から入力される補償ピッチパルス位置PDp[s](0≦s≦S’)を中心として、復号音源生成部703から入力される復号音源信号からPPs〜PPeまでの区間を取り出す。そして、ピッチパルス列候補生成部872は、取り出し区間の復号音源信号に対し、PDp’[s](0≦s≦S’)位置の振幅が、ピッチパルス情報復号部204から入力されるピッチパルス振幅PPaにピッチパルス減衰係数算出部678から入力されるピッチパルス減衰係数を乗じた値と一致するように増幅をする。この時、次ピッチパルス位置での振幅が前記振幅に増幅され、一方復号音源ピッチパルス波形の端点における増幅率が1.0に近い値となるような窓掛けを行う。この結果、復号音源ピッチパルス波形を得る。ここで、窓掛けを行う理由は、取り出し区間の復号音源信号の全サンプルを同一の増幅率で増幅すると、取り出し区間の端点の増幅後振幅と、復号音源ピッチパルス波形と接することになる復号音源信号のサンプルにおける振幅との差が大きくなる可能性があるためである。従って、このようなことを回避するために、取り出し区間の中心点では増幅率を大きくし、端点では増幅率を小さくすることにより、復号音源ピッチパルス波形の最大振幅を適切に増幅するとともに、復号音源ピッチパルス波形と復号音源ピッチパルス波形に隣接する復号音源信号が滑らかに繋がるようにする。この結果、得られる補正復号音源信号のパワー変動感が緩和される。
このように、本実施の形態によれば、有声定常区間におけるフレームが消失した場合には、ピッチパルス学習波形の代わりに復号音源ピッチパルスを用いて、復号音源信号を補正するため、フレーム消失が生じなかった場合の理想的な復号音源信号により近似する補正復号音源信号を得ることができ、復号音声の明瞭性をさらに向上し、復号音声品質を向上することができる。
なお、本実施の形態では、取り出し区間の復号音源信号を増幅して復号音源ピッチパルス波形を生成する際に窓掛けを用いる場合を例にとって説明したが、本発明は、これに限定されず、次ピッチパルス位置での増幅率をより大きくし、取り出し区間の端点での増幅率をより小さくして、得られる復号音源ピッチパルス波形のパワー変動感を緩和させる機能を持つほかの窓を用いても良い。
また、本実施の形態では、復号音源信号の補正に用いられる復号音源ピッチパルス波形において、中心サンプル(補償ピッチパルス位置)の振幅値が最も大きい場合を例にとって説明したが、場合によっては復号音源ピッチパルスを復号音源信号に加算しなくても良い。すなわち、(1)中心サンプルよりもほかのサンプルの振幅が大きい場合、(2)または復号音源ピッチパルス波形の中心サンプルの振幅値よりも、復号音源信号の補償ピッチパルス位置の振幅が大きい場合、(3)または復号音源ピッチパルス波形の中心サンプルの振幅値と、ピッチパルス情報復号部204において復号されたm番フレーム最後ピッチパルスの振幅値との極性(符号)が相反する場合には、復号音源ピッチパルスを復号音源信号に加算しなくても良い。
また、前フレーム最後ピッチパルス検出部711は、音声符号化装置側のピッチパルス検出部192においてn番フレームのピッチパルス位置PPpを検出する方法と同様な方法で、m−1番フレーム最後ピッチパルスの位置および振幅を検出する場合を例にとって説明したが、過去フレームのピッチパルスを繰り返し生成できない、もしくは余計なピッチパルスまで繰り返し生成してしまう場合がある。その原因は、一般的に消失フレームにおける補償ピッチラグT’(m)、すなわちピッチラグT(m−1)は、理想的な復号音源信号のmフレームのピッチラグT(m)と異なるためである。例えば、補償ピッチラグT’(m)、すなわちT(m−1)がピッチラグT(m)より短い場合、m−1番フレーム最後ピッチパルスがm番フレームで現れない場合がある。具体的には、m−1番フレーム最後ピッチパルス位置が、m−1番フレームとm番フレームの境界から過去方向へT(m−1)だけ離れた位置近辺に存在する場合に、この現象は発生しやすくなる。つまり、補正ピッチラグT’(m,s)が、m−1番フレーム最後ピッチラグ位置とm番フレーム境界との距離よりも短くなると、m番フレームにおいてm−1番フレームのピッチパルスを適応符号帳に取り込めない現象が発生する。これを防止するため、m−1番フレーム最後ピッチラグ位置とm番フレーム境界との距離以上となるように補正ピッチラグをさらに補正する必要がある。一方、補償ピッチラグT’(m)、すなわちT(m−1)がピッチラグT(m)より長い場合、m−1番フレーム最後ピッチパルス位置から、更に1ピッチラグ分過去の位置にあるピッチパルス(偽過去ピッチパルスと呼ぶ)を、m番フレームにおいて繰り返し生成する。m−1番フレーム最後ピッチパルスがm番フレームに近い位置に存在し、かつ、補正ピッチラグT’(m,s)がT(m−1)よりも長く算出された場合に発生し得る。具体的には、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離とピッチラグT(m−1)の合計よりも、補正ピッチラグT’(m,s)が長い場合に、本現象の条件に該当することを検出できる。上記現象を検出した際には、例えば以下のような(1)および(2)の対策をとることができる。(1)補正ピッチラグT’(m,s)を短くする。具体的には、まず、補正ピッチラグをT(m−1)とする。次いで、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離と、ピッチラグT(m−1)を合計し、合計値とT(m−1)との内挿点を、補正ピッチラグT’(m,s)とする。(2)偽過去ピッチパルスを除去する。具体的には、まず、適応符号帳において、偽ピッチパルスが存在する区間の振幅を零にした上で、m番フレームのフレーム消失補償を行う。次いで、偽過去ピッチパルスを、実施の形態3で説明した偽ピッチパルス除去方法により除去する。音源信号補正部707において、偽ピッチパルス検出部571の動作を変更すれば偽過去ピッチパルスを除去できる。偽ピッチパルス検出部571における動作との相違点は、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離と、ピッチラグT(m−1)との合計値を偽過去ピッチパルス位置とする点である。その後の偽ピッチパルスを除去するプロセスは同じである。または、上記のように補正ピッチラグに追加の補正を加えるようにする代わりに、補正ピッチラグを算出する際に、とりうる値の最小値・最大値を予め設定するようにして、上記と同様な効果を得るようにしても良い。
以上、本発明の各実施の形態について説明した。
本発明に係る音声復号装置および音声符号化装置は、上記各実施の形態に限定されず、種々変更して実施することが可能である。例えば、各実施の形態は、適宜組み合わせて実施することが可能である。
また、音源符号帳は、雑音符号帳および適応符号帳からなり、雑音符号帳は、固定符号帳(fixed codebook)、確率符号帳(stochastic codebook)、または乱数符号帳(random codebook)と呼ばれることもある。また、適応符号帳は、適応音源符号帳と呼ばれることもある。
また、本発明に係る音声復号装置および音声符号化装置は、移動体通信システムにおける通信端末装置および基地局装置に搭載することが可能であり、これにより上記と同様の作用効果を有する通信端末装置、基地局装置、および移動体通信システムを提供することができる。
なお、ここでは、本発明をハードウェアで構成する場合を例にとって説明したが、本発明をソフトウェアで実現することも可能である。例えば、本発明に係る音声符号化方法および音声復号方法のアルゴリズムをプログラミング言語によって記述し、このプログラムをメモリに記憶しておいて情報処理手段によって実行させることにより、本発明に係る音声符号化装置および音声復号装置と同様の機能を実現することができる。
また、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されても良いし、一部または全てを含むように1チップ化されても良い。
また、ここではLSIとしたが、集積度の違いによって、IC、システムLSI、スーパーLSI、ウルトラLSI等と呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現しても良い。LSI製造後に、プログラム化することが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続もしくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
さらに、半導体技術の進歩または派生する別技術により、LSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
2006年7月12日出願の特願2006−192071、2006年12月15日出願の特願2006−338981、および2007年3月3日出願の特願2007−053547の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明に係る音声復号装置および音声符号化装置は、CELP型符号化のフレーム消失補償処理等の用途に適用することができる。
本発明は、音声復号装置および音声符号化装置に関し、主としてこれら装置における消失フレーム補償方法に関する。
VoIP(Voice over IP)用の音声コーデックには、高いパケットロス耐性が要求される。次世代のVoIP用コーデックでは、比較的高いフレーム消失率(例えば6%のフレーム消失率)においてもエラーフリーの品質を達成することが望まれる。
CELP型の音声コーデックの場合、音声の立ち上がり部のフレームが消失することによる品質劣化が問題となるケースが多い。これは、立ち上がり部では信号の変化が大きく、直前のフレームの信号との相関性が低いため、直前のフレームの情報を用いた隠蔽処理が有効に機能しないことが原因である。あるいは、後続の有声部のフレームにおいて、立ち上がり部で符号化した音源信号が適応符号帳として積極的に使用されるため、立ち上がり部の消失の影響が後続する有声フレームに伝播し、復号音声信号の大きな歪につながりやすいことが原因である。
上記のような問題に対して、現フレームの符号化情報と共に、前後フレームが消失した場合の補償(隠蔽)処理用の符号化情報を現フレームの符号化情報と一緒に送る技術が開発されている(例えば、特許文献1参照)。この技術は、現フレームの音声信号の繰り返し又は該符号の特徴量の外挿により前フレーム(または後フレーム)の補償信号を合成し、前フレーム信号(または後フレーム信号)と比較することにより、現フレームから前フレーム擬似信号(または後フレーム疑似信号)を作ることができるか否かを判断し、作ることができないと判断される場合には前フレーム信号(または後フレーム信号)を基に前サブエンコーダ(または後サブエンコーダ)により前サブコード(後サブコード)を生成し、メインエンコーダで符号化した現フレームのメインコードに前サブコード(後サブコード)を付加することによって前フレーム(後フレーム)が消失しても高品質な復号信号の生成を可能としている。
特開2003−249957号公報
しかしながら、上記技術は、現フレームの符号化情報を基にして、前フレーム(過去のフレーム)の符号化をサブエンコーダにおいて行う構成であるため、前フレーム(過去のフレーム)の符号化情報が失われていても現フレームの信号を高品質に復号できるコーデック方式である必要がある。このため、過去の符号化情報(または復号情報)を用いる予測型の符号化方式をメインレイヤとした場合に適用することは困難である。特に、適応符号帳を利用するCELP型の音声コーデックをメインレイヤとする場合、前フレームが消失すると現フレームの復号を正しく行うことができず、上記技術を適用しても高品質な復号信号を生成することは困難である。
本発明の目的は、適応符号帳等の過去の音源情報を利用する音声コーデックをメインレイヤとする場合に、前フレームが消失しても現フレームの補償をすることができる消失フレーム補償方法が適用される音声復号装置および音声符号化装置を提供することである。
本発明の音声復号装置は、消失フレームである第1フレームを特定するフレーム消失情
報を受信する受信手段と、前記第1フレームと異なる第2フレームにおいて伝送された符号化パラメータから、ピッチパルス情報、および前記第1フレームの音源信号を復号する第1復号手段と、前記第1フレームより過去の定常状態のフレームにおいて、ピッチパルス学習波形を学習する学習手段と、前記ピッチパルス学習波形および前記ピッチパルス情報を用いて、前記第1フレームの音源信号を補正する補正手段と、を具備する構成を採る。
本発明によれば、現フレームが消失する場合、補償処理用情報のみを用いて現フレームを復号できるために、過去または未来のフレームにおいて伝送される当該補償処理用情報の情報量を低減することができ、音声符号化の効率を向上することができる。
以下、本発明の実施の形態について、添付図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る音声符号化装置100の主要な構成を示すブロック図である。ここでは、音声符号化装置100としてCELP型音声符号化装置を例にあげる。
音声符号化装置100は、LPC分析部101、LPC符号化部102、LPC合成フィルタ部103、聴感重み付け部104、符号化歪み算出部105、聴感重み付け部106、音源生成部107、音源パラメータ符号化部108、ピッチパルス抽出部109、および多重化部110を備える。
音声符号化装置100の各部は以下の動作を行う。なお、音声符号化装置100における符号化処理はフレーム単位で行われる。
LPC分析部101は、入力音声信号に対して線形予測分析(LPC分析)を行い、得られるLPC係数をLPC符号化部102、聴感重み付け部104および聴感重み付け部106に出力する。
聴感重み付け部106は、LPC分析部101から出力されたLPCに重み係数を乗じたフィルタ係数により聴感重み付けフィルタを構成し、入力音声信号に対して聴覚的な重み付けを施し、符号化歪み算出部105に出力する。
LPC符号化部102は、LPC分析部101から入力されるLPC係数を量子化・符号化し、得られるLPC量子化パラメータをLPC合成フィルタ部103に、得られるLPC符号化パラメータを多重化部110に出力する。
LPC合成フィルタ部103は、LPC符号化部102から入力されるLPC量子化パラメータをフィルタ係数とし、音源生成部107から入力される音源信号によってLPC合成フィルタとして駆動し、合成信号を聴感重み付け部104に出力する。
聴感重み付け部104は、LPC分析部101から入力されるLPC係数をフィルタ係数とする聴感重み付けフィルタを用いて、LPC合成フィルタ部103から入力される合成信号に対して聴覚的な重み付けを施し、符号化歪み算出部105に出力する。
符号化歪み算出部105は、聴感重み付け部106から出力された聴覚的な重み付けが施された入力音声信号と、聴感重み付け部104から入力される聴覚的な重み付けが施された合成信号との差を算出し、算出した差を符号化歪みとして音源生成部107に出力する。
音源生成部107は、符号化歪み算出部105から出力された符号化歪みが最小となる音源信号をLPC合成フィルタ部103に出力する。また、音源生成部107は、符号化歪みが最小となるときの音源信号およびピッチラグをピッチパルス抽出部109に出力し、符号化歪みが最小となるときの音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどの音源パラメータを音源パラメータ符号化部108に出力する。
音源パラメータ符号化部108は、音源生成部107から入力される音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどからなる音源パラメータを符号化し、得られる音源符号化パラメータを多重化部110に出力する。
ピッチパルス抽出部109は、音源生成部107から入力されるピッチラグに基づき、音源生成部107から入力される音源信号のピッチパルスを検出し、ピッチパルスの位置および振幅情報を符号化し、得られるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化部110に出力する。
多重化部110は、音声符号化装置100に入力される音声信号のフレーム番号をn+1と記す場合(ここで、n>0の整数である)、LPC符号化部102から入力されるn+1番フレームのLPC符号化パラメータ、音源パラメータ符号化部108から入力されるn+1番フレームの音源符号化パラメータ、およびピッチパルス抽出部109から入力されるn番フレームのピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化し、得られる多重化データをn+1番フレームの音声符号化データとして出力する。
図2は、ピッチパルス抽出部109内部の主要な構成を示すブロック図である。
ピッチパルス抽出部109は、音源記憶部191、ピッチパルス検出部192、ピッチパルス適合判定部193、およびピッチパルス符号化部194を備える。
音源記憶部191は、音源生成部107から入力される音源信号を記憶するバッファを内蔵し、現フレームの音源信号をピッチパルス適合判定部193に出力するとともに、過去1フレームの音源信号をピッチパルス検出部192に出力する。
ピッチパルス検出部192は、音源生成部107から入力されるn+1番フレームのピッチラグおよび音源記憶部191から入力される音源信号を用いて、n番フレームのピッチパルスを検出する。ピッチパルス検出部192におけるピッチパルスの検出方法の詳細については後述する。ピッチパルス検出部192は、ピッチパルスの位置PPpをピッチパルス適合判定部193に出力するとともに、検出されたピッチパルスの位置PPpおよび振幅PPaをピッチパルス符号化部194に出力する。
ピッチパルス適合判定部193は、音源記憶部191から入力される音源信号、ピッチパルス検出部192から入力されるピッチパルス位置PPp、および音源生成部107から入力されるピッチラグを用いて、ピッチパルス検出部192で検出されたn番フレームのピッチパルスが適合であるか否かを判定する。ピッチパルス適合判定部193における判定方法の詳細については後述する。
ピッチパルス符号化部194は、ピッチパルス適合判定部193から入力されるピッチパルス適合判定結果が「適合」である場合、ピッチパルス検出部192から入力されるピッチパルスの位置PPpおよび振幅PPaをスカラー量子化方法などで符号化し、得られるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを多重化部110に出力する。
図3は、ピッチパルス検出部192におけるピッチパルスの検出方法を説明するための図である。図3において、横軸は時間軸を示し、縦軸は音源信号の振幅を示す。ここで、各フレームの音源信号はピッチラグを周期として繰り返される信号と、周期波形では表現しきれない信号を表現するための雑音性の信号との和で表現されている。ピッチパルス検出部192は、n+1番フレームのピッチラグT(n+1)を用いてn番フレームにおいてピッチパルスを検出する。具体的には、n番フレームの後端から過去へ、すなわち、n+1番フレームと接する位置から過去へ、ピッチラグT(n+1)を長さとする区間をピッチパルス探索範囲とする。ピッチパルス検出部192は、ピッチパルス探索範囲内で振幅が最大となるピッチパルスを検出する。
次いで、ピッチパルス適合判定部193は、ピッチパルス位置PPp前後の、フレーム長より短い長さの区間をピッチパルス波形として音源信号から抽出し、抽出されたピッチパルス波形をn+1番フレームのピッチラグT(n+1)だけ遅延させてから、n+1番フレームの音源信号との相関値を算出する。ここで、遅延されたピッチパルス波形とn+1番フレームの音源信号との相関値は、n番フレームにおけるピッチパルス探索区間のパワーを用いて正規化されたものである。ピッチパルス適合判定部193は、算出された相関値が所定の閾値以上である場合は、ピッチパルス検出部192で検出されたピッチパルスをn+1番フレームにおいて、ピッチラグT(n+1)で繰り返されると判定する。すなわち、ピッチパルス検出部192で検出されたピッチパルスは、n番フレームが消失する場合、後述の音声復号装置200においてn番フレームの消失フレーム補償(隠蔽)処理に用いるのに適合であると判定する。一方、ピッチパルス適合判定部193は、算出された相関値が所定の閾値よりも小さい場合は、ピッチパルス検出部192で検出されたピッチパルスが適合ではないと判定する。ピッチパルス適合判定部193は、ピッチパルス適合判定結果をピッチパルス符号化部194に出力する。
図4は、本発明の実施の形態1に係る音声復号装置200の主要な構成を示すブロック図である。
音声復号装置200は、逆多重化部201、音源パラメータ復号部202,復号音源生成部203、ピッチパルス情報復号部204、ピッチパルス波形学習部205、畳み込み部206、音源信号補正部207、音源選択部208、LPC復号部209、および合成フィルタ部210を備える。
音声復号装置200における処理は、音声符号化装置100の処理と同様にフレーム単位で行われ、なお、ピッチパルス情報復号部204、畳み込み部206、および音源信号補正部207の処理対象となるフレームは消失フレームである。
逆多重化部201は、音声符号化装置100から伝送される音声符号化データを受信し
、音源符号化パラメータ、LPC符号化パラメータ、ピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを分離する。逆多重化部201は、得られる音源符号化パラメータを音源パラメータ復号部202に出力し、ピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータをピッチパルス情報復号部204に出力し、LPC符号化パラメータをLPC復号部209に出力する。また、逆多重化部201は、フレーム消失情報を受信し、音源パラメータ復号部202、ピッチパルス波形学習部205、音源選択部208、およびLPC復号部209に出力する。
音源パラメータ復号部202は、逆多重化部201から入力される音源符号化パラメータを復号して音源符号帳インデックス、音源符号帳ゲイン、ピッチラグ、およびピッチゲインなどの音源パラメータを得る。音源パラメータ復号部202は、得られるピッチラグ、ピッチゲイン、音源符号帳インデックスおよび音源符号帳ゲインを復号音源生成部203に出力し、ピッチラグをピッチパルス波形学習部205に出力する。
復号音源生成部203は、音源パラメータ復号部202から入力される音源符号帳インデックス、音源符号帳ゲイン、および音源選択部208からフィードバックされる過去フレームの音源信号、ピッチラグ、およびピッチゲインを用いてCELP型復号、補償、および平滑化処理を行い、復号音源信号を生成し、ピッチパルス波形学習部205、音源信号補正部207、および音源選択部208に出力する。
ピッチパルス情報復号部204は、逆多重化部201から入力されるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータを復号し、得られるピッチパルス位置PPpおよびピッチパルス振幅PPaを畳み込み部206に出力する。
ピッチパルス波形学習部205は、逆多重化部201から入力されるフレーム消失情報、音源パラメータ復号部202から入力されるピッチラグおよび復号音源生成部203から入力される復号音源信号を用いてピッチパルス学習波形を生成し、畳み込み部206に出力する。ここで、ピッチパルス学習波形は、ピッチパルス周辺の波形を学習により生成される。なお、最大振幅を正規化したうえで学習を行う。ピッチパルス波形学習部205の詳細な構成および動作については後述する。
畳み込み部206は、ピッチパルス情報復号部204からピッチパルス位置PPpおよびピッチパルス振幅PPaが入力され、ピッチパルス波形学習部205からピッチパルス学習波形が入力される。畳み込み部206は、ピッチパルス位置PPpと、ピッチパルス学習波形の最大振幅の位置とが一致するようにピッチパルス学習波形を時間軸に畳み込み、畳み込まれたピッチパルス学習波形に、ピッチパルスの振幅PPaを乗じ、得られるピッチパルス波形を音源信号補正部207に出力する。
音源信号補正部207は、復号音源生成部203から入力される復号音源信号に、畳み込み部206から入力されるピッチパルス波形を加算し、得られる補正音源信号を音源選択部208に出力する。または、音源信号補正部207は、音源信号において、ピッチパルス波形に対応する区間をピッチパルス波形で置換しても良い。
音源選択部208は、逆多重化部201から入力されるフレーム消失情報がフレーム消失を示す場合は、音源信号補正部207から入力される補正音源信号を選択し、フレーム消失情報がフレーム消失を示していない場合は、復号音源生成部203から入力される復号音源信号を選択する。音源選択部208は、選択された音源信号を合成フィルタ部210に出力する。
LPC復号部209は、逆多重化部201から入力されるLPC符号化パラメータを復
号し、得られるLPC係数を合成フィルタ部210に出力する。
合成フィルタ部210は、音源選択部208から入力される音源信号、LPC復号部209から入力されるLPC係数を用いて、復号音声信号を合成して出力する。
図5は、音声復号装置200における消失フレーム補償処理を説明するための図である。ここでは、音声復号装置200に入力される音声符号化データのm番フレームが消失した場合を例にあげ説明する。なお、音声復号装置200におけるm番フレームは、音声符号化装置100におけるn番フレームに対応する。
図5Aは、ピッチパルス波形学習部205から畳み込み部206に入力されるピッチパルス学習波形lwを示す図であり、図5Aにおいて、ピッチパルス学習波形lwは振幅が1.0に正規化されたものである。図5Bは、ピッチパルス情報復号部204から畳み込み部206に入力されるm番フレームのピッチパルス位置PPpおよびピッチパルス振幅PPaを示すための図である。ここで、m番フレームのピッチパルス位置PPpおよびピッチパルス振幅PPaの復号に用いられるピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータは、m+1番フレームにおいて音声符号化装置100から伝送されたものである。図5BにおいてPPはピッチパルス位置PPpおよびピッチパルス振幅PPaにより決まるピッチパルスを示している。図5Cは、畳み込み部206において生成されたピッチパルス波形PPwを示す。ピッチパルス波形PPwは、ピッチパルス位置PPpと、ピッチパルス学習波形の最大振幅の位置とが一致するようにピッチパルス学習波形lwを時間軸に畳み込み、畳み込まれたピッチパルス学習波形に、ピッチパルスの振幅PPaを乗じることにより得られる。図5Dは、音源信号補正部207に入力される音源信号を示す図である。m番フレームのピッチパルス位置PPpには消失が無ければピッチピーク波形があるはずであるが、このように通常のCELP型音声復号装置における補償方法では正確なピッチピークを表現できない。図5Eは、音源選択部208から合成フィルタ部210に出力される音源信号を示す図であり、図5Eにおいて、m−1番フレームおよびm+1番フレームの音源信号は、復号音源生成部203から音源選択部208に入力され選択されたものであり、m番フレームの音源信号は、音源信号補正部207から音源選択部208に入力され選択されたものである。図5Eに示すm番フレームの音源信号において、破線で示す波形は畳み込み部206で生成されたピッチパルス波形を示しており、消失していなければ存在するはずのピッチピークを補正により表現している。
図6および図7を参照しながらピッチパルス波形学習部205内部の主要な構成および動作を説明する。
図6は、ピッチパルス波形学習部205内部の主要な構成を示すブロック図である。図6において、ピッチパルス波形学習部205は、学習可否判定部251、ピッチピーク検出部252、正規化部253、および平滑化処理部254を備える。
図7は、ピッチパルス波形学習部205の動作を説明するための図である。図7において、図7Aはピッチピーク検出部252の動作を説明するための図であり、図7Bおよび図7Cは正規化部253の動作を説明するための図であり、図7Dは平滑化処理部254の動作を説明するための図である。
学習可否判定部251は、復号音源生成部203から入力される復号音源信号、音源パラメータ復号部202から入力されるピッチラグ、逆多重化部201から入力されるフレーム消失情報に基づき、ピッチパルス波形の学習を行うことが可能であるか否かの判定を行い、得られる学習可否判定結果をピッチピーク検出部252に出力する。学習可否判定
部251は、音声の定常状態のようにピッチ周期が安定している区間において波形学習を行うことが可能であると判定する。例えば、学習可否判定部251は、消失フレームでない定常状態のフレーム内において他の音源サンプルと比較してより振幅の大きい音源サンプルからなるピッチパルスが存在し、かつ、このピッチパルスがピッチラグを周期として繰り返される場合を、波形学習可の判定条件とする。
ピッチピーク検出部252は、学習可否判定部251から入力される学習判定結果が「可」である場合、復号音源生成部203から入力される復号音源信号、および音源パラメータ復号部202から入力されるピッチラグを用いて、ピッチピーク位置を検出し、検出されたピーク位置を正規化部253に出力する。ピッチピーク検出部252は、図7Aに示すように、学習を行うフレームにおいて最大振幅となる位置Pp0を第1ピッチピーク位置として検出する。次に、ピッチピーク検出部252は、同一フレーム内において第1ピッチピークPp0からピッチラグだけ離れている位置に第2ピッチピークPp1が存在するか否か検出を行い、ピッチピークPp1が存在する場合、第1ピッチピーク位置Pp0を検出されたピッチピーク位置として正規化部253に出力する。図7Aにおいて、Ap0およびAp1は、第1ピッチピーク位置Pp0および第2ピッチピーク位置Pp1それぞれにおける振幅を示し、この例ではAp0>Ap1である。
正規化部253は、復号音源生成部203から復号音源信号が、ピッチピーク検出部252からピッチピーク位置Pp0が入力され、入力される復号音源信号のうち、ピッチピーク位置Pp0周辺の所定サンプル数Pw(例えばPw=5〜10サンプル)だけの波形を、ピッチパルス波形として抽出する。正規化部253は、抽出されたピッチパルス波形に対して最大振幅が1.0となるように正規化を行い、得られる正規化ピッチパルス波形cwを平滑化処理部254に出力する。図7Bは、正規化部253において求められる正規化ピッチパルス波形cwを示す図である。図7Cは、仮にピッチピーク検出部252から正規化部253にピッチピークPp1の位置が入力される場合に求められる正規化ピッチパルス波形cw’を示す。
平滑化処理部254は、正規化部253から入力される正規化ピッチパルス波形cwに対して、下記の式(1)に従い、過去のピッチパルス学習波形lw’との長期平滑化処理を行い、得られるピッチパルス学習波形lwを畳み込み部206に出力する。
lw(i)=α*lw’(i)+(1−α)*cw(i) …(1)
式(1)において、αは長期平滑化係数(0<α<1.0)を示す。なお、ここでは、ピッチピーク位置が正規化ピッチパルス波形cwの中心となる場合を例にとり、サンプル番号iの範囲は−Pw/2≦i≦Pw/2となる。図7Dは、平滑化処理部254において長期平滑化処理により求められるピッチパルス学習波形lwを示す図である。なお、本例のように検出したピッチパルスが2つある場合は、正規化ピッチパルス波形cwを用いてピッチパルス学習波形lwを求めた後、同様に正規化ピッチパルス波形cw’を用いてもう1つのピッチパルス学習波形lw2を求め、ピッチパルス学習波形lwおよびピッチパルス学習波形lw2をフレーム消失補償に用いても良い。
上記のように、ピッチパルス波形学習部205において得られるピッチパルス学習波形は、後続の消失フレーム補償処理に用いられる。例えば、m番フレームより過去の音源信号を用いて学習されたピッチパルス学習波形は、m番フレームの消失フレーム補償処理に用いられる。
このように、本実施の形態によれば、音声符号化装置はピッチパルスを検出し、ピッチパルス位置および振幅情報を消失フレーム補償処理用の情報として符号化し、音声復号装置は消失フレームのピッチパルス位置および振幅情報を用いて、消失フレーム補償処理を
行うため、消失フレーム補償処理用の情報量を低減しつつ、復号信号の音声品質を向上することができる。
なお、本実施の形態では、音声符号化装置100の多重化部110において、n番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータと、n+1番フレームのLPC符号化パラメータ、音源パラメータとを多重して音声復号装置200に伝送する例にとって説明したが、音声符号化装置100の多重化部110において、n番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータと、n−1番フレームのピッチパルス位置符号化パラメータ、ピッチパルス振幅符号化パラメータとを多重して音声復号装置200に伝送しても良い。
また、本実施の形態では、正規化部253において最大振幅が1.0となるようにピッチパルス波形を正規化する場合を例にとって説明したが、パワーが1.0となるようにピッチパルス波形を正規化しても良い。
また、本実施の形態では、1つのピッチパルスに関する情報を伝送する場合を例にとって説明したが、複数のピッチパルスを検出し、関連の情報を伝送して消失フレームの補償処理に用いても良い。
また、本実施の形態では、音声復号装置200において、ピッチパルス学習波形を消失フレームに畳み込んで消失フレームを補償する場合を例にとって説明したが、図5Bに示すピッチパルスを消失フレームに畳み込んで消失フレームを補償しても良い。さらには、条件によって、ピッチパルスを畳み込む消失フレーム補償処理、ピッチパルス学習波形を畳み込む消失フレーム補償処理、およびピッチパルスもピッチパルス学習波形も畳み込まない消失フレーム補償処理を切り替える構成にしても良い。例えば、音声の発生源(話者)が多数で、音源信号が頻繁に変わる場合は、ピッチパルスを畳み込む消失フレーム補償処理を行う。一方、誤りが頻発する場合、ピッチパルスを畳み込む消失フレーム補償処理を行うと、畳み込まれたピッチパルスの位置のみの振幅が高くなり、ビープ音的な異音が発生するため、このような場合は、ピッチパルスもピッチパルス学習波形も畳み込まずに消失フレーム補償処理を行えば良い。
また、本実施の形態では、音声復号装置200において、学習により得られるピッチパルス学習波形を用いて消失フレームを補償する場合を例にとって説明したが、音声符号化装置100からピッチパルス波形を符号化して伝送しても良い。かかる場合、音声復号装置200においてピッチパルス学習波形を学習しなくても良い。
また、本実施の形態では、音声復号装置200において、音声符号化装置100から伝送されたピッチパルス位置PPp一箇所のみにピッチパルス波形を畳み込んで音源信号を補正する場合を例にとって説明したが、過去フレーム方向に所定間隔毎の各位置にピッチパルス波形を複数畳み込んで音源信号を補正しても良い。かかる場合、所定間隔として、音源信号パワーが減少傾向にある場合は、過去フレームのピッチラグに近い補正ピッチラグを用い、音源信号パワーが増加傾向にある場合は、次フレームのピッチラグに近い補正ピッチラグを用いて良い。
また、本実施の形態では、音声符号化装置100において、ピッチパルスの振幅を符号化して伝送する場合を例にとって説明したが、振幅の代わりにパワーを符号化して伝送し、音声復号装置200における消失フレーム補償処理に用いても良い。
また、本実施の形態では、ピッチパルス波形の長さPwを5〜10サンプルの範囲とする場合を例にとって説明したが、この範囲に限定するものではない。
また、本実施の形態では、消失フレームのみに限定してピッチパルス波形による補正を行う場合を例にとって説明したが、消失フレーム後に正常受信したフレームにおいてもピッチパルス波形による補正を行っても良い。
(実施の形態2)
一般的に、音声復号装置において消失フレーム補償処理を行い得られる復号音声信号のパワーが、音声符号化装置の符号化対象となる入力音声信号のパワーと大きく異なる場合、復号音声信号に主観的な劣化が生じる。従って、音声復号装置において、音声符号化装置の入力音声信号のパワーと一致するように、復号音声信号のパワーを調整する必要がある。本発明の実施の形態2では、復号音声信号のパワーを調整しつつ、音声符号化装置の入力音声信号の振幅と復号音声信号の振幅との一致を維持する。
図8は、本発明の実施の形態2に係る音声符号化装置300の主要な構成を示すブロック図である。なお、音声符号化装置300は、実施の形態1に示した音声符号化装置100(図1参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声符号化装置300は、音源パワー算出部301をさらに有する点において、音声符号化装置100と相違する。なお、音声符号化装置300の多重化部310と、音声符号化装置100の多重化部110とは処理の一部において相違点があり、それを示すために異なる符号を付す。
音源パワー算出部301は、音源生成部107から入力される現フレームの音源パワーを算出し、スカラー量子化などの符号化を行い、得られる音源パワー符号化パラメータを多重化部310に出力する。
多重化部310は、音声符号化装置100の多重化部110に比べ、LPC符号化部102から入力されるn+1番フレームのLPC符号化パラメータ、音源パラメータ符号化部108から入力されるn+1番フレームの音源符号化パラメータ、ピッチパルス抽出部109から入力されるn番フレームのピッチパルス位置符号化パラメータおよびピッチパルス振幅符号化パラメータに加え、さらに音源パワー算出部301から入力されるn番フレームの音源パワー符号化パラメータを多重化し、得られる多重化データをn+1番フレームの音声符号化データとして出力する。
図9は、本発明の実施の形態2に係る音声復号装置400の主要な構成を示すブロック図である。なお、音声復号装置400は、実施の形態1に示した音声復号装置200(図4参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置400は、音源パワー復号部402をさらに有する点において、音声復号装置200と相違する。なお、音声復号装置400の逆多重化部401、音源信号補正部407と、音声復号装置200の逆多重化部201、音源信号補正部207とは処理の一部において相違点があり、それを示すために異なる符号を付す。
逆多重化部401は、音声復号装置200の逆多重化部201に比べ、音源符号化パラメータ、ピッチパルス符号化パラメータ、およびLPC符号化パラメータに加え、さらに音源パワー符号化パラメータを分離して音源パワー復号部402に出力する。
音源パワー復号部402は、逆多重化部401から入力される音源パワー符号化パラメ
ータを復号し、得られる復号音源パワーを音源信号補正部407に出力する。
音源信号補正部407は、音声復号装置200の音源信号補正部207に比べ、復号音源生成部203から入力される復号音源信号に対して、畳み込み部206から入力されるピッチパルス波形の加算、または置換を行い、補正音源信号を得る処理に加え、得られる補正音源信号に対してさらにパワー調整を行う。
図10は、音源信号補正部407の動作を説明するための図である。図10Aは、畳み込み部206から音源信号補正部407に入力されるピッチパルス波形lwを示す図であり、図10Bは、復号音源生成部203から音源信号補正部407に入力される復号音源信号を示す図である。図10Cは、図10Bに示す音源信号から、図10Aに示すピッチパルス波形lwに対応する区間を除いて得られる差分音源信号を示す図である。図10Dは、図10Cに示す差分音源信号に対して差分音源増幅係数を乗じてパワー調整を行い、得られるパワー調整差分音源信号を示す。図10Eは、図10Dに示すパワー調整差分音源信号に、図10Aに示すピッチパルス波形を加算して得られる補正音源信号を示す図である。図10Eに示す補正音源信号の音源パワーは、音源パワー復号部402から音源信号補正部407に入力される復号音源パワーと一致する。
図11は、図10に示す動作を行う音源信号補正部407内部の主要な構成を示すブロック図である。
音源信号補正部407は、ピッチパルス波形パワー算出部471、差分音源パワー算出部472、差分音源理想パワー算出部473、差分音源増幅係数算出部474、差分音源増幅部475、およびピッチパルス波形加算部476を備える。
ピッチパルス波形パワー算出部471は、畳み込み部206から入力されるピッチパルス波形の音源パワーを算出し、得られるピッチパルス波形パワーPpowを差分音源パワー算出部472および差分音源理想パワー算出部473に出力する。
差分音源パワー算出部472は、復号音源生成部203から入力される復号音源信号のパワーを算出し、さらにピッチパルス波形パワー算出部471から入力されるピッチパルス波形パワーPpowとの差を求め、差分音源パワーRpowとして差分音源増幅係数算出部474に出力する。ここで、算出された差分音源パワーRpowが負数である場合、差分音源パワー算出部472は、ゼロの値を差分音源増幅係数算出部474に出力する。
差分音源理想パワー算出部473は、音源パワー復号部402から入力される復号音源パワーHpowと、ピッチパルス波形パワー算出部471から入力されるピッチパルス波形パワーPpowとの差を差分音源理想パワーIRpowとして算出し、差分音源増幅係数算出部474に出力する。ここで、算出された差分音源理想パワーIRpowが負数である場合、差分音源理想パワー算出部473は、ゼロの値を差分音源増幅係数算出部474に出力する。
差分音源増幅係数算出部474は、差分音源理想パワー算出部473から入力される差分音源理想パワーIRpowと、差分音源パワー算出部472から入力される差分音源パワーRpowとを用いて、下記の式(2)に従い差分音源増幅係数Rrを算出し、差分音源増幅部475に出力する。
ここで、差分音源理想パワー算出部473から入力される差分音源理想パワーIRpow、または差分音源パワー算出部472から入力される差分音源パワーRpowがゼロである場合、差分音源増幅係数算出部474は、差分音源増幅係数Rrとして「1」の値を差分音源増幅部475に出力する。
差分音源増幅部475は、復号音源生成部203により入力される音源信号から、ピッチパルス波形に対応する区間を除いて得られる差分音源信号に対して、差分音源増幅係数算出部474から入力される差分音源増幅係数Rrを乗じてパワー調整を行い、得られるパワー調整差分音源信号をピッチパルス波形加算部476に出力する。
ピッチパルス波形加算部476は、差分音源増幅部475から入力されるパワー調整差分音源信号に、畳み込み部206から入力されるピッチパルス波形を加算し、得られる補正音源信号を音源選択部208に出力する。
このように、本実施の形態によれば、ピッチパルスの振幅を維持しつつ、補正音源信号の音源パワーを復号音源パワーに一致させるため、復号音声信号の主観的な劣化を抑え、復号音声信号の品質を向上することができる。
(実施の形態3)
まず、仮に符号化対象となる音源信号に非周期的なピーク波形が存在し、CELP型符号化により消失フレーム補償処理を行う場合に、得られる復号音源信号を図12に示す。
図12Aは、CELP型音声符号化装置の符号化対象となる音源信号の波形を示す図である。図12Aに示すように、m−1番フレームの音源信号は周期性がなく、FP0の位置に非周期的なピーク波形、例えば、破裂系子音や突発性雑音などが存在する。図12Bは、m番フレームが消失する場合、CELP型音声復号装置が図12Aに示した音源信号に対して復号および消失フレーム補償処理を行い、得られる復号音源信号の波形を示す。なお、図12Bは、m番フレームが消失する場合を例示する。図12Bに示すように、CELP型音声復号装置の消失フレーム補償処理により得られるm番フレームの復号音源信号の波形には、図12Aに示す音源信号の波形に存在しなかった新たなピッチ周期性が現れる。すなわち、補償ピッチラグT'(m)間隔毎にFP1、FP2、FP3、およびFP4の位置にピッチパルス波形が現れる。ここでは、このようなピッチ波形を偽ピッチパルスと称す。偽ピッチパルスが繰り返されることにより、復号信号に大きな音質劣化が生じる。なお、図12において、PPpは、仮に本発明の実施の形態1を適用した場合、得られるm番フレームの復号音源信号に畳み込まれるピッチパルス波形の位置を示す。このピッチパルス波形は、ピッチラグT(m+1)で繰り返される。
本発明の実施の形態3に係る音声復号装置500は、復号音声信号の音質劣化の原因となる偽ピッチパルスを検出し、偽ピッチパルスを除去することができる構成を採る。
図13は、本発明の実施の形態3に係る音声復号装置500の主要な構成を示すブロック図である。
本実施の形態に係る音声復号装置500は、実施の形態1に示した音声復号装置200(図4参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置500の音源信号補正部507と、音声復号装置200の音源信号補正部207とは処理の一部において相違点があり、それを示すために異なる符号を付す。なお
、音声復号装置500は、音源パラメータ復号部202が音源符号化パラメータを復号して得られるピッチラグをさらに音源信号補正部507に出力する点において音声復号装置200と相違する。
図14は、音源信号補正部507内部の主要な構成を示すブロック図である。
音源信号補正部507は、偽ピッチパルス検出部571、定常音源生成部572、雑音生成部573、雑音増幅係数算出部574、雑音増幅部575、雑音加算部576、およびピッチパルス置換部577を備える。
音源信号補正部507の各部は以下の動作を行う。以下、音声復号装置500に入力される音声符号化データのフレーム番号をm+1と記し、音声復号装置500から出力される復号音声信号はm番フレームである。
偽ピッチパルス検出部571は、復号音源生成部203から入力される復号音源信号、ピッチラグ、畳み込み部206から入力されるピッチパルス波形を用いて、偽ピッチパルスを検出する。偽ピッチパルスの検出方法として、具体的には、まず、消失フレームm番フレームと、その次のm+1番フレームとの境界から、過去方向へピッチラグT(m+1)長の区間を偽ピッチパルスの探索範囲とする。ただし、ピッチパルス波形が存在する区間を偽ピッチパルスの探索範囲から除外する。偽ピッチパルスの探索範囲において、最大振幅値を検出し、検出された最大振幅値が所定の閾値以上であるか否かを判定する。閾値としては、例えば、偽ピッチパルスの探索範囲の波形の平均振幅の3倍、または、畳み込み部206から入力されるピッチパルス波形の最大振幅の1/2とする。偽ピッチパルス検出部571は、偽ピッチパルスの探索範囲において検出された最大振幅値が上記の閾値以上であると判定する場合、検出された最大振幅の位置を偽ピッチパルスの位置として、定常音源生成部572および雑音増幅係数算出部574に出力する。
定常音源生成部572は、復号音源生成部203から復号音源信号が入力され、畳み込み部206からピッチパルス波形が入力され、偽ピッチパルス検出部571から偽ピッチパルスの位置が入力される。定常音源生成部572は、偽ピッチパルス位置の前後、数サンプルの区間に対応する復号音源信号を偽ピッチパルス波形とし、ピッチパルス波形および偽ピッチパルス波形に対応する区間の復号音源信号をゼロに置換することにより定常音源を得る。定常音源生成部572は、得られる定常音源を雑音増幅係数算出部574および雑音加算部576に出力する。
雑音生成部573は、ランダム雑音、ガウス雑音、または過去の定常音源を用いて、偽ピッチパルス波形長を長さとする雑音を生成し、雑音増幅係数算出部574および雑音増幅部575に出力する。
雑音増幅係数算出部574は、定常音源生成部572から定常音源の音源パワーを算出し、フレーム長からピッチパルス波形長および偽ピッチパルス波形長を減算した長さ(サンプル数)を用いて正規化する。雑音増幅係数算出部574は、正規化されたパワーに偽ピッチパルス長を乗じ、偽ピッチパルスの目標パワーを算出する。雑音増幅係数算出部574は、また雑音生成部573から入力される雑音のパワーを算出し、偽ピッチパルスの目標パワーと、雑音のパワーとの比の平方根を算出し、雑音増幅係数として雑音増幅部575に出力する。
雑音増幅部575は、雑音増幅係数算出部574から入力される雑音増幅係数を用いて、雑音生成部573から入力される雑音を増幅し、増幅された雑音を雑音加算部576に出力する。
雑音加算部576は、定常音源生成部572から入力される定常音源と、雑音増幅部575から入力される振幅調整された雑音とを加算することにより、偽ピッチパルスが除去された復号音源信号を得、ピッチパルス置換部577に出力する。
ピッチパルス置換部577は、雑音加算部576から入力される偽ピッチパルスが除去された復号音源信号と、畳み込み部206から入力されるピッチパルス波形とを加算し、得られる補正音源信号を音源選択部208に出力する。
このように、本実施の形態によれば、偽ピッチパルスを検出し、パワー調整された雑音を用いて偽ピッチパルスを置換するため、偽ピッチパルスによる復号音源信号の音質劣化を回避し、復号音声信号の音声品質を向上させることができる。
なお、本実施の形態では、復号音源生成部203において、補償ピッチ周期を用いてCELP型復号および消失フレーム補償処理を行う場合を例にとって説明したが、補償ピッチ周期を用いて音源信号を補償せず直接ランダム雑音または定常的な雑音を用いて消失フレームを補償しても良い。これにより、偽ピッチパルス波形が補償ピッチ周期で繰り返されることを回避し、偽ピッチパルス波形を検出および除去する必要がなくなる。
(実施の形態4)
本発明の実施の形態4においては、音声符号化装置で生成された音源信号のパワーと、音声復号装置で生成された復号音源信号のパワーとの差を補償するために、複数のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正する。
図15は、本実施の形態に係る音声復号装置600の主要な構成を示すブロック図である。なお、音声復号装置600は、実施の形態2に示した音声復号装置400(図9参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置600は、畳み込み部206の代わりに音源パワー記憶部601を備える点において、音声復号装置400と相違する。なお、音声復号装置600の音源信号補正部607と音声復号装置400の音源信号補正部407とは内部の構成および動作において相違点があるため異なる符号を付す。
音源パワー記憶部601は、音源選択部208から入力される音源信号のパワーを下記の式(3)に従い算出して記憶し、過去フレームの音源信号のパワー(過去フレーム音源パワー)を音源信号補正部607に出力する。ここでは、1フレーム前の音源パワーを過去フレーム音源パワーとして出力する場合を例にとる。
この式において、iはサンプル番号、m−1は現フレームの1つ前のフレームの番号、L_FRAMEはフレーム長、exe_s(m−1)(i)はm−1番フレームの音源信号を示す。
音源信号補正部607は、音源パラメータ復号部202から入力されるピッチラグ、復号音源生成部203から入力される復号音源信号、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、ピッチパルス波形学習部205から
入力されるピッチパルス学習波形、音源パワー復号部402から入力される復号音源パワー、および音源パワー記憶部601から入力される過去フレーム音源パワーを用いてピッチパルス列を生成する。また、音源信号補正部607は、生成されたピッチパルス列を用いて復号音源信号を補正し、得られる補正音源信号を音源選択部208に出力する。
図16は、音源信号補正部607の内部の主要な構成を示すブロック図である。音源信号補正部607は、実施の形態2に示した音源信号補正部407(図11参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音源信号補正部607は、ピッチパルス列生成部671をさらに備える点において、実施の形態2に示した音源信号補正部407と相違する。なお、音源信号補正部607のピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476は、畳み込み部206から入力されるピッチパルス波形の代わりにピッチパルス列生成部671から入力されるピッチパルス列を用いる点のみにおいて、音源信号補正部407のピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476と相違し、ここでは同じ符号を付し説明を省略する。
ピッチパルス列生成部671は、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、ピッチパルス波形学習部205から入力されるピッチパルス学習波形、復号音源生成部203から入力される復号音源信号、音源パワー復号部402から入力される復号音源パワー、音源パワー記憶部601から入力される過去フレーム音源パワー、および音源パラメータ復号部202から入力されるピッチラグを用いてピッチパルス列を生成する。ピッチパルス列生成部671は、ピッチパルス位置PPpを起点として、時間軸の過去方向(逆方向)にピッチラグ間隔でピッチパルス学習波形を繰り返して配置することによってピッチパルス列を生成する。ピッチパルス列を構成する個々のピッチパルス波形の振幅は、ピッチパルス情報復号部204から入力されるピッチパルス振幅を基準として、時間軸の過去方向に位置するピッチパルス波形ほど振幅が減衰させていく。ここで、振幅の減衰係数は後述のピッチパルス減衰係数算出部678において、復号音源パワーおよび過去フレーム音源パワーを用いて算出される。なお、ピッチパルス列を構成するピッチパルス波形の数は、ピッチパルス列の補正により得られる補正音源信号のパワーと復号音源パワーとの比較結果が考慮されたうえで決まる。ピッチパルス列生成部671は、得られるピッチパルス列をピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476に出力する。
図17は、ピッチパルス列生成部671の内部の主要な構成を示すブロック図である。
図17において、ピッチパルス列生成部671は、ピッチパルス列候補生成部672、ピッチパルス列パワー算出部673、差分音源パワー算出部674、補正音源パワー算出部675、復号音源パワー比較部676、次ピッチパルス位置算出部677、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679を備える。
ピッチパルス列候補生成部672は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅値、ピッチパルス波形学習部205から入力されるピッチパルス学習波形、音源パワー記憶部601から入力される過去フレーム音源パワー、次ピッチパルス位置算出部677から入力される次ピッチパルス位置、およびピッチパルス減衰係数算出部678から入力されるピッチパルス減衰係数を用いてピッチパルス列候補を生成する。具体的には、ピッチパルス列候補生成部672は、フレーム長を長さとするバッファを内蔵しており、フレーム処理の開始において内蔵のバッファを「空」で初期化、すなわちバッファの値
を全て0とし、ピッチパルス情報復号部204から入力されるピッチパルス位置を起点とし、ピッチパルス減衰係数が乗じられたピッチパルス学習波形をピッチパルス波形として、ピッチパルス波形の振幅絶対値最大値の位置と次ピッチパルス位置とが一致するように、ピッチパルス波形をピッチラグ間隔で時間軸の過去方向へ内蔵のバッファに繰り返し追加する。ピッチパルス列候補生成部672は、複数のピッチパルス波形が追加されたバッファをピッチパルス列候補としてピッチパルス列パワー算出部673、差分音源パワー算出部674、およびピッチパルス列記憶部679に出力する。
図18は、ピッチパルス列候補生成部672において生成されるピッチパルス列候補のイメージを示す図である。
フレーム処理の初期状態としてピッチパルス列候補生成部672の内蔵のバッファは「空」(バッファの値が全て0)である。ピッチパルス列候補生成部672は、まず、ピッチパルス振幅値PPaのピッチパルス学習波形を1個目のピッチパルス波形として、ピッチパルス波形の振幅値最大値の位置とピッチパルス位置PPpとが一致するように、すなわち位置PPpへ1個目のピッチパルス波形を内蔵のバッファに追加する。次いで、ピッチパルス列候補生成部672は、ピッチパルス減衰係数が乗じられたピッチパルス学習波形を2個目のピッチパルス波形として、ピッチパルス位置PPpから時間軸の過去方向へピッチラグT(m+1)だけ離れた位置、すなわち位置PPm1へ2個目のピッチパルス波形を内蔵のバッファに追加する。同様に、ピッチパルス列候補生成部672は、2個目のピッチパルス波形用のピッチパルス減衰係数とは異なるピッチパルス減衰係数が乗じられたピッチパルス学習波形を3個目のピッチパルス波形として、ピッチパルス位置PPm1から時間軸の過去方向へピッチラグT(m+1)だけ離れた位置、すなわち位置PPm2へ3個目のピッチパルス波形を内蔵のバッファに追加する。ピッチパルス列候補生成部672は、このような追加動作を繰り返すことによりピッチパルス列候補を生成する。
ピッチパルス列パワー算出部673は、ピッチパルス列候補生成部672から入力されるピッチパルス列候補のパワーを下記の式(4)に従って算出し、ピッチパルス列パワーRPpow(P)として補正音源パワー算出部675に出力する。
式(4)において、Pはピッチパルス列に追加されたピッチパルス波形の総数、RPpow(P)はピッチパルス列パワー、Ppow(1)はピッチパルス列を構成する1個目のピッチパルス波形のパワーを示す。Att_r(p)は、ピッチパルス列を構成するp個目のピッチパルス波形に乗じられるピッチパルス減衰係数を示す。
差分音源パワー算出部674は、復号音源生成部203から入力される復号音源信号から、ピッチパルス列候補生成部672から入力されるピッチパルス列候補を除くことにより差分音源信号を生成し、生成された差分音源信号のパワーを差分音源パワーRpow(P)として算出し補正音源パワー算出部675に出力する。ここで、算出された差分音源パワーRpowが負数である場合、差分音源パワー算出部674は、ゼロの値を補正音源パワー算出部675に出力する。
補正音源パワー算出部675は、ピッチパルス列パワー算出部673から入力されるピッチパルス列パワーRPpow(P)と、差分音源パワー算出部674から入力される差分音源パワーRpow(P)とを下記の式(5)に従って加算し、加算結果を補正音源パワーHpow(P)として復号音源パワー比較部676に出力する。
復号音源パワー比較部676は、補正音源パワー算出部675から入力される補正音源パワーと、音源パワー復号部402から入力される復号音源パワーとを比較し、パワー比較結果を次ピッチパルス位置算出部677およびピッチパルス列記憶部679に出力する。パワー比較結果としては、例えば「大」、「近似」、「小」という3つからなるとする。具体的には、例えば、補正音源パワーが復号音源パワーより大きい場合には「大」、補正音源パワーが復号音源パワー以下であってかつ復号音源パワーの0.8倍以上の場合には「近似」、補正音源パワーが復号音源パワーの0.8倍より小さい場合には「小」とする。
次ピッチパルス位置算出部677は、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合のみ、音源パラメータ復号部202から入力されるピッチラグおよびピッチパルス情報復号部204から入力されるピッチパルス位置を用いて、続いてピッチパルス列候補にピッチパルス波形を追加することが可能であるか否かを示す追加可否情報を算出する。また、次ピッチパルス位置算出部677は、続いて追加されるピッチパルス波形の位置を次ピッチパルス位置として算出し、ピッチパルス列候補生成部672、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679に出力する。具体的には、次ピッチパルス位置算出部677は、ピッチパルス情報復号部204から入力されるピッチパルス位置から、時間軸の過去方法へピッチラグのP個分だけ離れた位置を、ピッチパルス列に追加されるP個目のピッチパルス波形の位置、すなわち次ピッチパルス位置として算出する。また、算出された次ピッチパルス位置がフレーム範囲内に収まらない場合、次ピッチパルス位置算出部677は、次ピッチパルス位置を出力せず、「不可」というピッチパルス追加可否情報を生成して出力する。一方、算出された次ピッチパルス位置がフレーム範囲内に収まる場合、次ピッチパルス位置算出部677は、次ピッチパルス位置を出力するとともに、「可」というピッチパルス追加可否情報を生成して出力する。
ピッチパルス減衰係数算出部678は、音源パワー復号部402から入力される復号音源パワー、音源パワー記憶部601から入力される過去フレーム音源パワー、次ピッチパルス位置算出部677から入力される次ピッチパルス位置およびピッチパルス追加可否情報を用いて、ピッチパルス列に追加されるピッチパルス学習波形に乗じるピッチパルス減衰係数を、下記の式(6)に従って算出し、ピッチパルス列候補生成部672に出力する。
この式において、pはピッチパルス追加番号として、ピッチパルス列に追加されるピッチパルス波形の番号を示し、Att_r(p)はp個目のピッチパルス波形に対応するピッチパルス減衰係数、peak_pos(p)はp個目のピッチパルス波形の振幅絶対値最大値の位置、Epow(m−1)は過去フレームの音源パワー、Hpow(m)は復号音源パワーを示す。peak_pos(p)は現フレームの先頭位置を零とした相対位置で表される。式(6)によれば、pが増加するほどpeak_pos(p)は減少する。また、1個目のピッチパルス波形に対応するピッチパルス減衰係数Att_r(1)は1.0となり、peak_pos(p)が零(すなわちフレームの先頭位置)となる場合、
対応するピッチパルス減衰係数Att_r(p)は、√(Epow(n−1)/Hpow(n))となり、peak_pos(p)が零とpeak_pos(1)との間にある場合、減衰係数Att_r(p)は√(Epow(n−1/Hpow(n))と1.0の内分点になる。
ピッチパルス列記憶部679は、復号音源パワー比較部676から入力されるパワー比較結果および次ピッチパルス位置算出部677から入力される次ピッチパルス位置を用いて、ピッチパルス列候補生成部672から入力されるP個のピッチパルス波形からなるピッチパルス列候補と、記憶しているP−1個のピッチパルス波形からなるピッチパルス列候補とのうち1つを選択する。ピッチパルス列記憶部679は、選択した1つのピッチパルス候補をピッチパルス列としてピッチパルス波形パワー算出部471、差分音源パワー算出部472、およびピッチパルス波形加算部476に出力する。具体的には、ピッチパルス列記憶部679は、まずパワー比較結果によりピッチパルス列候補の選択を行う。ピッチパルス列記憶部679は、パワー比較結果が「大」である場合には、仮にP個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正すると補正音源パワーが復号音源パワーを超えてしまうと判断し、記憶しているP−1個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。また、ピッチパルス列記憶部679は、パワー比較結果が「近似」である場合には、仮にP個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正すると補正音源パワーと復号音源パワーとが近似するようになると判断し、P個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。また、ピッチパルス列記憶部679は、パワー比較結果が「小」である場合には、次ピッチパルス追加可否情報を用いてピッチパルス列候補の選択を行う。すなわち、パワー比較結果が「小」であってかつ次ピッチパルス追加可否情報が「可」である場合、ピッチパルス列記憶部679は、続いてピッチパルス波形をピッチパルス列候補に追加できると判断し、ピッチパルス列候補の選択および出力を行わない。一方、パワー比較結果が「小」であってかつ次ピッチパルス追加可否情報が「不可」である場合、ピッチパルス列記憶部679は、続いてピッチパルス波形を追加することができないと判断し、復号音源パワーに最も近似する補正を可能とする、P個のピッチパルス波形からなるピッチパルス列候補を選択し出力する。
図19は、ピッチパルス列生成部671においてピッチパルス列を生成する処理手順を示すフロー図である。
まず、ピッチパルス列候補生成部672は、ピッチパルス列に追加されるピッチパルス波形をカウントする変数Iを「0」に初期化し、ピッチパルス情報復号部204から入力されるピッチパルス位置の値によりPPpm(I)を初期化し、I+1個目のピッチパルスに対応するピッチパルス減衰係数を[1.0]の値で初期化する(ST1010)。次いで、ピッチパルス位置PPpm(I)に、I+1個目のピッチパルスに対応するピッチパルス減衰係数が乗じられたピッチパルス学習波形をI+1個目のピッチパルスとして追加する(ST1015)。そして、ピッチパルス列パワー算出部673はピッチパルス列パワーを、差分音源パワー算出部674は差分音源パワーを、補正音源パワー算出部675は補正音源パワーを算出する(ST1020)。次いで、復号音源パワー比較部676は、復号音源パワーと補正音源パワーとを比較してパワー比較結果を得る(ST1030)。ST1030において得られたパワー比較結果が「小」である場合(ST1030:小)、次ピッチパルス位置算出部677は、I+1個目の次((I+1)+1個目)のピッチパルス波形が追加される位置を次ピッチパルス位置として算出し、さらに算出された次ピッチパルス位置がフレーム範囲内に収まるか否かを判定する(ST1060)。ST1060において算出された次ピッチパルス位置がフレーム範囲内に収まらない場合(ST1060:外)、処理はST1050に移行する。一方、ST1060において算出された次ピッチパルス位置がフレーム範囲内に収まる場合(ST1060:内)、ピッチパ
ルス減衰係数算出部678は、(I+1)+1個目のピッチパルス波形に対応するピッチパルス減衰係数を算出する(ST1070)。次いで、ピッチパルス列候補生成部672は、ST1060において算出された次ピッチパルス位置に、ST1070において算出されたピッチパルス減衰係数が乗じられたピッチパルス学習波形を(I+1)+1個目のピッチパルス波形として追加し、ピッチパルス列候補を生成する(ST1080)。次いで、ピッチパルス列候補生成部672は、I=I+1のようにIを1インクリメントして処理をST1020に移行する(ST1090)。
一方、ST1030において得られたパワー比較結果が「大」である場合(ST1030:大)、ピッチパルス列記憶部679は、I個のピッチパルスからなるピッチパルス列候補を、ピッチパルス列生成部671において生成されたピッチパルス列として出力する(ST1040)。
また、ST1030において得られたパワー比較結果が「近似」である場合(ST1030:近似)、およびST1060において算出された次ピッチパルス位置がフレーム範囲内に収まらない場合(ST1060:外)、ピッチパルス列記憶部679は、I+1個のピッチパルスからなるピッチパルス列候補を、ピッチパルス列生成部671において生成されたピッチパルス列として出力する(ST1050)。
以下、本実施の形態に係るピッチパルス列による復号音源信号の補正について、図20〜図27を用いて説明する。ここでは、m−1番目のフレームおよびm+1番目のフレームを正常に受信し、m番目のフレームを消失した場合を例にとって説明する。
なお、図20は、フレーム消失が生じない場合の復号音源信号の波形、すなわち理想的な復号音源信号の波形を示し、図22、図24、および図26は、m番目のフレームが消失し、各々1個、2個、および3個のピッチパルス波形からなるピッチパルス列を用いて復号音源信号を補正する場合の得られる補正音源信号の波形を示す。図21、図23、図25、および図27は、図20、図22、図24、および図26に示す復号音源補正処理における音源パワーを例示する。
図20は、フレーム消失が生じない場合の復号音源信号の波形、すなわち理想的な復号音源信号の波形を示す図である。図20において、m番フレームは3つのピッチパルス波形を含む。図21は、m番フレームを含む各フレームにおける復号音源パワーを示す。
図22は、1つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる1つのピッチパルス波形、すなわち、点線で示されるピッチパルス波形はピッチパルス学習波形そのものであり、このピッチパルス波形の振幅絶対値最大値の位置は、ピッチパルス情報復号部204で得られたピッチパルス位置PPpと一致する。
図23は、1つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図23に示すように、1つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1つのピッチパルス波形パワーとの総和値である。なお、図23においては、1つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「小」となる場合、すなわち補正音源パワーと復号音源パワーとの比が0.8より小さい場合を例にあげている。この場合は言い換えれば、復号音源パワーと補正音源パワーとの差が所定値より大きい場合であり、このような場合は、復号音源信号の品質が劣化するため、補正音源信号のパワーをさらに補償する必要がある。補正音源信号のパワー補償方法としては、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方
法が考えられる。しかし、復号音源信号を増幅する方法はノイズを増大する問題がある一方、補正に用いられるピッチパルス波形を増幅する方法は復号音声が局所的に過大に聞こえ変動感をもたらすという問題がある。また、2つの方法を組み合わせても効果には限界がある。本実施の形態では、補正に用いられるピッチパルス波形の数を増加して、すなわちピッチパルス列を用いて復号音声信号を補正する。すなわち、本実施の形態では、ピッチパルス性波形を用いてピッチパルス性信号を補正するため、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方法の問題点を解決している。
図24は、2つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる2個目のピッチパルス波形、すなわち、点線で示される2つのピッチパルス波形のうち振幅が小さい方のピッチパルス波形は、2個目のピッチパルスに対応するピッチパルス減衰係数をピッチパルス学習波形に乗じて得られたものである。このピッチパルス波形の振幅絶対値最大値の位置PPpm1’は、位置PPpから時間軸の過去方向へピッチラグT(m+1)分だけ離れた位置と一致する。図24に示すように、位置PPpm1’と位置PPm1とは若干ずれている。
図25は、2つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図25に示すように、2つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1個目のピッチパルス波形パワーと、2個目のピッチパルス波形パワーとの総和値である。なお、図25においては、2つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「小」となる場合を例にあげている。パワー比較結果が「小」となる場合は、次の図26に示すように続けてピッチパルス波形を追加して復号音源信号を補正する。
図26は、3つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図である。この場合、復号音源信号の補正に用いられる3個目のピッチパルス波形、すなわち、点線で示される3つのピッチパルス波形のうち振幅が最も小さい方のピッチパルス波形は、3個目のピッチパルスに対応するピッチパルス減衰係数をピッチパルス学習波形に乗じて得られたものであり、このピッチパルス波形の振幅絶対値最大値の位置PPpm2’は、位置PPpから時間軸の過去方向へ2×T(m+1)分だけ離れた位置と一致する。図26に示すように、位置PPpm2’と位置PPm2とは若干ずれている。
図27は、3つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図である。図27に示すように、3つのピッチパルス波形を用いて復号音源信号を補正する場合、補正音源パワーは、差分音源パワーと、補正に用いられる1個目のピッチパルス波形パワーと、2個目のピッチパルス波形パワーと、3個目のピッチパルス波形パワーとの総和値である。なお、図27においては、3つのピッチパルス波形の補正により得られる補正音源パワーと復号音源パワーとのパワー比較結果が「近似」となる場合を例にあげている。パワー比較結果が「近似」となるため、これで復号音源信号の補正は終了する。
仮に、図27においてパワー比較結果が「小」であっても、図26から分かるように4個目のピッチパルス波形が追加される位置は、m番フレームの範囲内に収まらなくm−1番フレームの範囲に属するため、パワー比較結果が「近似」となる場合と同様に、4個目のピッチパルス波形が追加されず復号音源信号の補正は終了する。
図24および図26において、2個目のピッチパルスの位置PPpm1’および3個目
のピッチパルスの位置PPpm2’は、それぞれ理想的な復号音源信号のピッチパルス波形の位置PPpm1および位置PPpm2と若干ずれるものの、ピッチパルス性波形を用いてピッチパルス性信号を補正しているため、復号音源信号を増幅する方法、または補正に用いられるピッチパルス波形を増幅する方法よりも、得られる補正音源信号は理想の復号音源信号により類似する。本実施の形態に係る復号音源信号の補正方法は、特に音声の立ち上がり部の音声符号化および復号に適用する場合、より自然な復号音声が得られる。
このように、本実施の形態によれば、音声符号化装置から音声復号装置に送信される情報量を増加せず、ピッチパルス列を構成する複数のピッチパルス波形の追加位置およびピッチパルス減衰係数を算出し、ピッチパルス列を用いて復号音源信号を補正するため、符号化情報量を低減しつつ、ノイズおよび変動感を増加せず復号音源信号を補正することができ、復号音声信号の品質を向上することができる。
なお、本実施の形態では、ピッチパルス列へのピッチパルス波形の追加を停止する条件として、パワー比較結果が「近似」または「大」となる場合、および次ピッチパルス位置が消失フレームの範囲内に収まらない場合を例にとって説明したが、本発明はこれに限定されず、ピッチパルス波形の追加を停止する条件として、ピッチパルス減衰係数を乗じて得られるピッチパルスの振幅が、そのピッチパルス位置近傍の復号音源の振幅よりも小さくなる場合をさらに加えても良い。
また、本実施の形態では、ピッチパルス列にピッチパルス波形を追加する位置を算出する際に、消失フレームの次フレームのピッチラグを用いる場合を例にとって説明したが、本発明はこれに限定されず、消失フレームの過去フレームのピッチラグを用いたり、過去フレームと次フレームのピッチラグ間で内挿補間した値としても良い。
(実施の形態5)
本発明の実施の形態5においては、ピッチパルス列を用いて補正された復号音源信号が、実施の形態4で得られた補正復号音源信号よりも、フレーム消失が生じない場合の理想的な復号音源信号にさらに近似するように、ピッチパルス列に含まれる各ピッチパルス波形の位置をさらに補正する。
図28は、ピッチパルス列を用いて復号音源信号を補正する方法を説明するための図である。なお、図28は主に各ピッチパルス波形の位置を説明するための図であり、各ピッチパルス波形の正確な振幅値を表してはいない。
図28Aは、フレーム消失が生じない場合の理想的な復号音源信号の波形を示す図である。図28Aにおいては、m−1番フレームのピッチラグT(m−1)、m番フレームのピッチラグT(m)、音声符号化側において検出されたm番フレームの最後尾のピッチパルスの位置PPp、およびm−1番フレームのピッチパルス位置PPp’を示している。ここで、音声符号化側において検出されたm番フレームのピッチパルス位置PPpは、すなわち、ピッチパルス情報復号部204において復号されたピッチパルス位置PPpであり、以下、m番フレームの最後尾のピッチパルスをm番フレーム最後ピッチパルスと称す。
図28Bは、m−1番フレームおよびm+1番フレームが正常に受信され、m番フレームが消失した場合、m番フレームに補償ピッチラグT’(m)間隔でピッチパルス波形の列を加算して得られる補正復号音源信号の波形を示す図である。図28Bに示すように、補償ピッチラグT’(m)としてT(m−1)を用い、m−1番フレーム最後ピッチパルスの位置PPp’を起点として、復号音源信号にピッチパルス列を加算する場合、各ピッチパルス波形の位置はPDp[1]、PDp[2]、…、PDp[S]となる。ここで、
Sはm番フレームに加算されるピッチパルス波形の総数を示す。なお、以下の説明の便宜のために、PPp’をPDp[0]とも記してある。図28Bに示すように、各ピッチパルス波形は補償ピッチラグT’(m)の間隔で配置され、PDp[S]とPPpとは一致しなくなる。すなわち、図28Aと図28Bとを比較すれば分かるように、図28Bに示す復号音源信号に加算されるピッチパルス波形の位置と、図28Aに示す理想的な復号音源信号に含まれるピッチパルスの位置とは一致せず、図28Bに示す補正復号音源信号は、図28Aに示す理想的な復号音源信号に含まれない偽ピッチパルスを含み、これが復号音声の品質劣化の原因となる。
図28Cにおいては、補償ピッチラグT’(m)をさらに補正して得られたT’(m,0)、T’(m,1)、…、T’(m,S’−1)を用い、PPp’を起点として、ピッチパルス列を加算して復号音源信号を補正する場合を示す。かかる場合、各ピッチパルス波形の位置は、PDp’[1]、PDp’[2]、…、PDp’[S’]となる。ここで、T’(m,0)、T’(m,1)、…、T’(m,S’−1)の総和は、PPp’とPPpとの間の距離と等しく、PDp’[S’]とPPpとは一致するようになる。
以下、図28Cに示すPDp’[1]、PDp’[2]、…、PDp’[S’]それぞれを第1補償ピッチパルス位置、第2補償ピッチパルス位置、第3補償ピッチパルス位置、…、第S補償ピッチパルス位置と称す。
図29は、本発明の実施の形態5に係る音声復号装置700の主要な構成を示すブロック図である。なお、音声復号装置700は、実施の形態4に示した音声復号装置600(図15参照)と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音声復号装置700は、ピッチラグ補正部701をさらに備える点において、音声復号装置600と相違する。なお、音声復号装置700の復号音源生成部703、音源信号補正部707と、音声復号装置600の復号音源生成部203、音源信号補正部607とは内部の構成および動作において相違点があり、それを示すために異なる符号を付す。
ピッチラグ補正部701は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるピッチパルス位置およびピッチパルス振幅、復号音源生成部703からフィードバックされる復号音源信号を用いて、補正ピッチラグ、ピッチラグ補正可否情報、補償ピッチパルス位置を生成し、ピッチラグまたは補正ピッチラグを復号音源生成部703に出力し、ピッチラグ補正可否情報、および補償ピッチパルス位置を音源信号補正部707に出力する。なお、ピッチラグ補正部701の詳細については後述する。
復号音源生成部703は、CELP型復号、補償、および平滑化処理を行う際に、音源パラメータ復号部202から入力されるピッチラグの代わりに、ピッチラグ補正部701から入力される補正ピッチラグまたはピッチラグを用いる点のみにおいて、実施の形態4に示した復号音源生成部203と相違し、ここでは、詳細な説明を省略する。
音源信号補正部707は、ピッチパルス列を生成する際に、後述の補償ピッチパルス位置算出部714からの補償ピッチパルス位置、および後述のピッチラグ補正可否判定部713からのピッチラグ補正可否情報をさらに用いる点において、実施の形態4に示した音源信号補正部607と相違する。なお、音源信号補正部707の詳細については後述する。
図30は、ピッチラグ補正部701の内部の構成を示すブロック図である。
図30において、ピッチラグ補正部701は、前フレーム最後ピッチパルス検出部711、補正ピッチラグ算出部712、ピッチラグ補正可否判定部713、補償ピッチパルス位置算出部714、およびピッチラグ切替部715を備える。以下、ピッチラグ補正部701の各部の動作の説明において、図28において用いられた各パラメータを流用する。
前フレーム最後ピッチパルス検出部711は、復号音源生成部703から入力される復号音源信号、および音源パラメータ復号部202から入力されるピッチラグを用いて、消失フレーム1個前のフレームの後尾から一番目のピッチパルス、すなわちm−1番フレーム最後ピッチパルスの位置PPp’(PDp[0])を検出し、補正ピッチラグ算出部712、ピッチラグ補正可否判定部713、および補償ピッチパルス位置算出部714に出力する。また、前フレーム最後ピッチパルス検出部711は、検出されたm−1番フレーム最後ピッチパルスの振幅をピッチラグ補正可否判定部713に出力する。前フレーム最後ピッチパルス検出部711においてm−1番フレーム最後ピッチパルスを検出する方法は、音声符号化装置側のピッチパルス検出部192においてn番フレーム最後ピッチパルス位置を検出する方法と基本的に同様である。ただし、m番フレームが消失したため、前フレーム最後ピッチパルス検出部711においては、T(m)を用いることができず、T(m)の代わりに補償ピッチラグT’(m)を用いる。なお、補償ピッチラグT’(m)としては、T(m−1)、またはT(m+1)、またはT(m−1)とT(m+1)とを内挿補間して得られる値を用いる。以下、説明を簡略するために、補償ピッチラグT’(m)としてT(m−1)を用いる場合を例にとって説明する。
補正ピッチラグ算出部712は、音源パラメータ復号部202から入力されるピッチラグ、ピッチパルス情報復号部204から入力されるm番フレーム最後ピッチパルス位置PPp、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置PDp’、および補償ピッチパルス位置算出部714から入力される各補償ピッチパルス位置を用いて、補正ピッチラグT’(m,0)、T’(m,1)、…、T’(m,S’−1)を算出する。補正ピッチラグ算出部712は、算出した補正ピッチラグT’(m,0)、T’(m,1)、…、T’(m,S’−1)をピッチラグ切替部715に出力するともに補償ピッチパルス位置算出部714にフィードバックする。具体的には、補正ピッチラグ算出部712は、補償ピッチパルス位置PDp’[i]とPPpとの距離(以下、ピッチパルス間距離と称す)が、補正ピッチラグT’(m,i)の整数倍となるように、下記の式(7)および式(8)に従って、補正ピッチラグT’(m,i)を算出する。ここで、i=0〜S’−1、PDp’[0]はm−1番フレーム最後ピッチパルス位置PDp[0]、PPpはm番フレーム最後ピッチパルス位置である。
式(7)において、sが取る範囲は0≦s≦S’であり、PDp’[s]はs番目の補償ピッチパルス位置、Dpp[s]はs番目のピッチパルス間距離を表す。また、式(7)において、mはフレーム番号、T’(m,s)は補正ピッチラグを示し、int()は
小数点以下を切り捨てる関数を示す。tTは暫定ピッチラグを示し、T’(m,s−1)、またはT(m−1)を用いる。
ピッチラグ補正可否判定部713は、ピッチパルス情報復号部204から入力されるm番フレーム最後ピッチパルス振幅、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス振幅、音源パラメータ復号部202から入力されるピッチラグ、補正ピッチラグ算出部712から入力される補正ピッチラグを用いて、ピッチラグの補正が可能である否かをフレーム毎に判定し、「可」または「否」というピッチラグ補正可否情報をピッチラグ切替部715および音源信号補正部707に出力する。ピッチラグ補正可否判定部713は、m−1番フレーム最後ピッチパルスとm番フレーム最後ピッチパルスとの間に補償ピッチパルスを連続的に並べることが適切かどうかを判断してピッチラグ補正可否判定をおこなう。例えば、m−1番フレーム最後ピッチパルスとm番フレーム最後ピッチパルスの正負が逆になっている場合、フレーム間でピッチ波形が変化したり、いずれかのピッチパルスの検出に誤りがあったりしている可能性が高いと考えられる。このような場合は補償ピッチパルスを連続的に並べることによる補償性能の改善は得られないので、補正「否」と判定する。また、最後ピッチパルスの振幅が極端に小さい場合は、ピッチ周期性のない信号である可能性があるので、このような場合も補正「否」とする。またさらに、補償しようとしているフレームの前後のフレームのピッチラグ間に大きな差がある場合なども、ピッチ周期性のないフレームであったり、前後のフレームのいずれかでピッチ誤りを生じている可能性があるので、補正「否」と判定する。
図31は、ピッチラグ補正可否判定部713において、上記仮定に基づきピッチラグ補正可否判定を行う手順を示すフロー図である。
まず、ステップ(ST)2010において、ピッチラグ補正可否判定部713は、フレーム消失情報に基づき、m番フレーム最後ピッチパルス情報が含まれているm+1番フレームの符号化データが消失したか否かを判定する。
ST2010において、m+1番フレームの符号化データが消失したと判定した場合(ST2010:「YES」)には、ピッチラグを補正することが不可能であるため、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2010において、m+1番フレームの符号化データが消失しなかったと判定した場合(ST2010:「NO」)には、ピッチラグ補正可否判定部713は、ST2020において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅との極性が一致するか否かを判定する。
ST2020において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅との極性が一致しないと判定した場合(ST2020:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2020において、m−1番フレームピッチパルス振幅と、m番フレームピッチパルス振幅との極性が一致すると判定した場合(ST2020:「NO」)には、ピッチラグ補正可否判定部713は、ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅とのいずれかが十分小さく、所定の閾値以下であるか否かを判定する。
ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後
ピッチパルス振幅とのいずれかが所定の閾値以下であると判定した場合(ST2030:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。
一方、ST2030において、m−1番フレーム最後ピッチパルス振幅と、m番フレーム最後ピッチパルス振幅とのいずれもが所定の閾値以下でないと判定した場合(ST2030:「NO」)には、ピッチラグ補正可否判定部713は、ST2040において、ピッチラグT(m−1)に対する補正ピッチラグT’(m,s)の変動量が所定の閾値以上であるか否かを判定する。
ST2040において、補正ピッチラグT’(m,s)とピッチラグT(m−1)との変動量が所定の閾値以上であると判定した場合(ST2040:「YES」)には、ピッチラグ補正可否判定部713は、ST2060において、「否」というピッチラグ補正可否情報を出力する。ST2040では、過去のピッチラグに対して補正ピッチラグが大きく変動した場合にピッチラグ補正を中止するように判定する。判定は、過去のピッチラグと、過去のピッチラグと補正ピッチラグの差との比があらかじて決めてある閾値を超えるかどうかで判定できる。閾値は事前に決めておけば良い。例えば、以下の数式を満たす時、ピッチラグ補正可否判定部713は、ST2040においてピッチラグの変動量が閾値以上であると判定(ST2040:「YES」)する。
|T(m−1)− T’(m、s)|/T’(m、s) ≧ 0.1 ・・・(9)
一方、ST2040において、補正ピッチラグT’(m,s)とピッチラグT(m−1)との変動量が所定の閾値以上でないと判定した場合(ST2040:「NO」)には、ピッチラグ補正可否判定部713は、ST2050において、「可」というピッチラグ補正可否情報を出力する。例えば、以下の数式を満たす時、ピッチラグ補正可否判定部713は、ST2040においてピッチラグの変動量が閾値以上でないと判定(ST2040:「NO」)する。
|T(m−1)− T’(m、s)|/T’(m、s) < 0.1 ・・・(10)
再び図30に戻り、補償ピッチパルス位置算出部714は、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)(0≦s≦S’)を用いて、下記の式(11)に従って補償ピッチパルス位置PDp’[s](0≦s≦S’)を算出し、補正ピッチラグ算出部712および音源信号補正部707に出力する。具体的には、補償ピッチパルス位置算出部714は、まず、前フレーム最後ピッチパルス検出部711から入力されるm−1番フレーム最後ピッチパルス位置PDp[0]、および補正ピッチラグ712から入力される補正ピッチラグT’(m,0)を用いて、下記の式(11)に従いPDp’[1]を算出し、音源信号補正部707に出力するとともに、補正ピッチラグ算出部712にフィードバックする。そして、補正ピッチラグ算出部712は、PDp[1]を用いて上記の式(7)および式(8)に従い補正ピッチラグT’(m,1)を算出し、補償ピッチパルス位置算出部714に出力する。このような計算を繰り返すことで、補償ピッチパルス位置算出部714および補正ピッチラグ算出部712は、PDp’[S’]がm番フレーム最後ピッチパルス位置PPpと一致するまで、補償ピッチパルス位置PDp’[s]と補正ピッチラグT’(m,s)とを逐次的に算出する。
PDp’[s]=PDp[s−1]+T’(m,s−1)
if(s>0) かつPDp’[s]≦PPp …(11)
ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)を復号音源生成部703に出力し、ピッチパルス補
正可否判定結果が「否」である場合には、音源パラメータ復号部202から入力されるピッチラグT(m)を復号音源生成部703に出力する。
図32は、音源信号補正部707の内部の構成を示すブロック図である。なお、音源信号補正部707は、実施の形態4に示した音源信号補正部607と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
音源信号補正部707は、補償ピッチパルス位置算出部714からの補償ピッチパルス位置、およびピッチラグ補正可否判定部713からのピッチラグ補正可否情報が、ピッチパルス列生成部771にさらに入力される点のみにおいて、実施の形態4に示した音源信号補正部607と相違する。それに伴い、音源信号補正部707のピッチパルス列生成部771と、音源信号補正部607のピッチパルス列生成部671とは内部の構成および処理の一部において相違点があり、それを示すために異なる符号を付す。
図33は、ピッチパルス列生成部771の内部の構成を示すブロック図である。なお、ピッチパルス列生成部771は、実施の形態4に示したピッチパルス列生成部671と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
実施の形態4に示したピッチパルス列生成部671は、音声の立ち上がり区間で動作する場合を想定したものであるが、有声定常区間で動作する場合には、復号音源信号に加算されるピッチパルス波形の位置と、理想的な復号音源信号に含まれるピッチパルス波形の位置とは一致しない可能性があるため、復号音声のピッチ周期性が乱れ異音に感じる可能性がある。そこで、本実施の形態に係るピッチパルス列生成部771は、補償ピッチパルス位置を用いてピッチパルス波形を復号音源信号に加算することで、音声の定常性を損ねることなく復号音源信号の品質を向上させている。
具体的には、ピッチパルス列生成部771は、補償ピッチパルス位置算出部714からの補償ピッチパルス位置、およびピッチラグ補正可否判定部713からのピッチラグ補正可否情報が、次ピッチパルス位置生成部777にさらに入力される点のみにおいて、実施の形態4に示したピッチパルス列生成部671と相違する。それに伴い、ピッチパルス列生成部771の次ピッチパルス位置生成部777と、ピッチパルス列生成部671の次ピッチパルス位置生成部677とは内部の構成および処理の一部において相違点があり、それを示すために異なる符号を付す。
次ピッチパルス位置生成部777は、ピッチラグ補正可否判定部713からのピッチラグ補正可否情報が「否」である場合には、実施の形態4に示した次ピッチパルス位置生成部677と同様な動作を行い、ここでは、詳細な説明を省略する。
一方、次ピッチパルス位置生成部777は、ピッチラグ補正可否判定部713からのピッチラグ補正可否情報が「可」である場合には、音源パラメータ復号部202から入力されるピッチラグの代わりに補償ピッチパルス位置算出部714から入力される補償ピッチパルス位置を用いて次ピッチパルス位置を算出する。具体的には、次ピッチパルス位置算出部777は、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合のみ、番号pで表される次ピッチパルスの位置としてPDp’[S’−p]をピッチパルス列候補生成部672、ピッチパルス減衰係数算出部678、およびピッチパルス列記憶部679に出力する。すなわち、次ピッチパルス位置算出部777は、m番フレーム最後ピッチパルス位置PPpを初期値として、PDp’[S’−1]、…PDp’[2]、PDp’[1]を次ピッチパルス位置として順次出力する。また、補償ピッチパルス位置は常にm番フレーム範囲内に存在するため、次ピッチパルス位置生成部777は、ピ
ッチラグ補正可否情報が「可」であって、復号音源パワー比較部676から入力されるパワー比較結果が「小」である場合には、「可」という次ピッチパルス追加可否情報を出力し、それ以外の場合には「不可」という次ピッチパルス追加可否情報を出力する。
このように、本実施の形態によれば、音声符号化装置は、音声符号化装置から音声復号装置に送信される情報量を増加せず、復号音源信号において、消失フレーム最終ピッチパルス位置と消失前フレーム最終ピッチパルス位置との間に整数個のピッチパルスを加算する。すなわち、理想的な復号音源信号に含まれるピッチパルス波形の位置により一致するように、復号音源信号に加算されるピッチパルス波形の位置を調整するため、符号化情報量を低減しつつ、ノイズおよび変動感を増加せず、復号音声信号の品質を向上することができる。
なお、本実施の形態では、図28Bの説明において、補償ピッチラグT’(m)としてピッチラグT(m−1)を用いる場合を例にとって説明したが、本発明はこれに限定されず、補償ピッチラグT’(m)としてT(m+1)を用いても良く、かかる場合にも、m番フレームの最後尾に加算されるピッチパルス波形の位置はPPpと一致せず、補正復号音源信号に偽ピッチパルスが現れるようになる。
また、本実施の形態では、前フレーム最後ピッチパルス検出部711は、音声符号化装置側のピッチパルス検出部192においてn番フレームのピッチパルス位置PPpを検出する方法と同様な方法で、m−1番フレーム最後ピッチパルスの位置および振幅を検出する場合を例にとって説明したが、本発明はこれに限定されず、前フレーム最後ピッチパルス検出部711は、ピッチパルス情報復号部204からm−1番フレーム最後ピッチパルス位置およびピッチパルス振幅が得られる場合には、これを用いても良い。
また、本実施の形態では、ピッチラグが整数値のみで表され、補正ピッチラグ算出部712に用いられる式(8)においてint()関数を用いて小数点以下を切り捨てる場合を例にとって説明したが、本発明はこれに限定されず、ピッチラグを小数点精度で表せる場合、式(8)においてint()を用いず補正ピッチラグを算出しても良い。
また、本実施の形態では、式(8)における暫定ピッチラグtTとして、T’(m,s−1)またはT(m−1)を用いる場合を例にとって説明したが、本発明はこれに限定されず、式(8)における暫定ピッチラグtTとして、T(m+1)を用いても良く、さらには、T’(m,s−1)とT(m+1)との内挿相関値、例えば(T’(m,s−1)
+ T(m+1))/2を用いても良い。
また、本実施の形態では、暫定ピッチラグtTとして、補正ピッチラグをT’(m,s)を算出する際に、T’(m,s−1)またはT(m−1)のいずれか1つを固定的に用いる場合を例にとって説明したが、本発明はこれに限定されず、T’(m,s−1)、T(m−1)、T(m+1)、T’(m,s−1)とT(m+1)との内挿相関値などから、Dpp[s]/tTを最も整数値に近づける1つを選択して用いても良い。また、一般的に、CELP方式の音声符号化において、ピッチラグは、倍ピッチ周期、半ピッチ周期など本来期待するピッチ周期に対して2倍、0.5倍の値を持つ可能性があるため、過去のピッチラグ系列を用いて、または過去のピッチラグ系列および未来のピッチラグ系列を用いて、倍ピッチ周期、半ピッチ周期となった否かを検出し、倍ピッチ周期、半ピッチ周期となった場合にはそれを補正したうえで、ピッチラグ補正を行っても良い。
また、本実施の形態では、ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、補正ピッチラグ算出部712から入力される補正ピッチラグT’(m,s)を出力する場合を例にと
って説明したが、本発明はこれに限定されず、ピッチラグ切替部715は、ピッチパルス補正可否判定部713から入力されるピッチパルス補正可否判定結果が「可」である場合には、暫定ピッチラグtTを出力しても良い。
また、本実施の形態では、補正ピッチラグ算出部712および補償ピッチパルス位置算出部714は、お互いの算出結果を用いて補正ピッチラグおよび補償ピッチパルス位置を逐次的に算出する場合を例にとって説明したが、本発明はこれに限定されず、補正ピッチラグおよび補償ピッチパルス位置を一括して算出しても良い。
また、本実施の形態では、消失フレームにおいて補償用パラメータを用いて補償する場合を例にとって説明したが、本発明に係る復号音源信号補正方法は消失フレームのみに限定されず、復帰フレーム以後の正常受信フレームであっても、当該フレームを補償するための補償パラメータを用いて補償を行っても良く、かつ、復号した補償音源パワー、補償ピッチパルス位置などと、補償パラメータとの間で差異が存在する場合にも本発明の適用が可能である。
(実施の形態6)
本発明の実施の形態6においては、復号音源信号の補正に用いられるピッチパルス列を生成する際に、ピッチパルス学習波形を用いる代わりに、復号音源信号の一部を増幅して得られるピッチパルスを用いる点において実施の形態5と相違する。以下、復号音源信号の一部を増幅して得られるピッチパルスを復号音源ピッチパルス波形と称す。
図34および図35は、本実施の形態において復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図である。
図34Aは、フレーム消失が生じなかった場合の理想的な復号音源信号の波形を示す図である。図34Aにおいては、m−1番フレームのピッチラグT(m−1)、m番フレームのピッチラグT(m)、m番フレーム最後ピッチパルス位置PPp、およびm−1番フレーム最後ピッチパルス位置PPp’を示している。すなわち、図34Aは図28Aと同様である。
図34Bは、m−1番フレームおよびm+1番フレームが正常に受信され、m番フレームが消失した場合、実施の形態5に示した方法を用いて復号音源信号を補正し、得られる補正復号音源信号の波形を示す図である。図34Cは、図34Bに示す補正復号音源信号を得るために用いられたピッチパルス学習波形を示す図であり、図34Cにおいては、図34Aに示す理想的な復号音源信号に含まれるピッチパルス波形と類似しないピッチパルス学習波形を例示している。34Bに示すように、実施の形態5に示した復号音源信号補正方法によれば、補正に用いられるピッチパルス学習波形が理想的な復号音源信号のピッチパルス波形に類似しない場合、得られる補正復号音源信号の波形も理想的な復号音源信号と類似せず、復号音声の品質劣化が生じる。具体的には、図34Aに示す理想的な復号音源信号の波形においては、横軸の上下両側ともにピッチピークが存在するのに対し、図34Bに示す補正復号音源信号の波形においては、横軸の上側のみにピッチピークが存在する。その理由は、図34Bを得るために用いられた図34Cに示すピッチパルス学習波形において、横軸の上側のみにピッチピークが存在するためである。このように、ピッチパルス学習波形は、理想的な復号音源信号のピッチパルス波形の変化に追随しきれず、このような補正によっては、逆に復号音声の品質が劣化してしまう。
そこで、m−1番フレームの音源信号(復号音源信号)に含まれるピッチパルス間の相関性が高い場合には、ピッチパルス学習波形を用いずに、過去の復号音源ピッチパルス波形を用いて復号音源信号を補正し、より理想的な復号音源信号に類似する補正復号音源信
号を得ることが考えられる。
図35A、図35B、および図35Cは復号音源信号の一部を増幅して得られる復号音源ピッチパルス波形を生成する方法を説明するための図である。図35Aは、復号音源信号において、補償ピッチパルス位置PDp’[s](0≦s≦S’)近傍の区間を示し、図35Bは、図35Aに示す波形から、PPs〜PPeの区間を切り出し、得られるピッチパルス波形を示す。図35Cは、図35Bに示すピッチパルス波形を増幅し、得られる復号音源ピッチパルスを示す。ここで、復号音源ピッチパルス波形の起点PPsおよび終点PPeの決め方、すなわち、復号音源ピッチパルス波形のサンプル数の決め方は、実施の形態1に示したピッチパルス学習波形のサンプル数の決め方と同様である。なお、図35Bに示すピッチパルス波形を増幅する方法については後述する。
図35Dは、図35Cに示したような復号音源ピッチパルス波形を復号音源信号に複数加算し、得られる補正復号音源信号の波形を示す図である。図34A、図34B、および図35Dから分かるように、図34Bに示す補正復号音源信号よりも図35Dに示す補正復号音源信号が、図34Aに示す理想的な復号音源信号にさらに類似する。
図36は、本実施の形態に係るピッチパルス列生成部871の内部の構成を示すブロック図である。なお、ピッチパルス列生成部871は、実施の形態5に示したピッチパルス列生成部771と同様の基本的構成を有しており、同一の構成要素には同一の符号を付し、その説明を省略する。
ピッチパルス列生成部871は、相関性判定部880をさらに具備する点において、実施の形態5に示したピッチパルス列生成部771と相違する。なお、ピッチパルス列生成部871のピッチ列候補生成部872は、相関性判定部880からの相関性判定結果、復号音源生成部703からの復号音源信号がさらに入力される点において、ピッチパルス列生成部771のピッチ列候補生成部672と相違し、それに伴い、処理の一部において相違点があり、それを示すために異なる符号を付す。
相関性判定部880は、音源パラメータ復号部202から入力されるピッチラグ、復号音源生成部703から入力される復号音源信号、音源パワー復号部402から入力される復号音源パワーHpow(m)、音源パワー記憶部601から入力される過去フレーム音源パワーEpow(m−1)を用いて、現フレームにおけるピッチパルス波形間の相関性を推定し、「高相関」または「低相関」という判定結果をピッチパルス候補生成部872に出力する。具体的には、下記の式(12)、式(13)および式(15)が同時に満たされる場合には、「高相関」という相関性判定結果が出力され、それ以外の場合には、「低相関」という相関性判定結果が出力される。
εs≦C(m-1) …(12)
1/εp≦Pr<εp …(13)
1/εt≦Tr<εt …(14)
式(12)におけるC(m−1)は、下記の式(15)に従い、m−1番フレームの復号音源信号に対して正規化自己相関値を求めた値である。
式(15)において、exc[]は復号音源信号を示し、L_EXCMAXはバッファサイズを示す。また、τは、遅延値を示し、ピッチラグT(m−1)を用いる。
式(13)におけるPrは、下記の式(16)に従い算出されるパワー変動量であり、過去フレーム音源パワーEpow(m−1)と復号音源パワーHpow(m)との比で表される。
Pr=Epow(m−1)/Hpow(m) …(16)
式(14)におけるTrは、下記の式(17)に従い算出されるピッチラグ変動量であり、m−1番フレームのピッチラグT(m−1)とm+1番フレームのピッチラグT(m+1)との比で表される。
Tr=T(m−1)/T(m+1) …(17)
また、式(12)、式(13)、および式(14)それぞれにおけるεs、εp、およびεtは、例えば、εs=0.8、εp=1.5、εt=1.2とする。
ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「低相関」である場合には、実施の形態5に示したピッチ列候補生成部672と同様な動作を行う。また、ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「高相関」である場合には、実施の形態5に示したピッチ列候補生成部672と基本的に同様の動作を行うが、ピッチパルス波形学習部205から入力されるピッチパルス学習波形の代わりに、復号音源生成部703から入力される復号音源信号から生成される復号音源ピッチパルスを用いて復号音源信号を補正する点において相違する。ここで、「高相関」という相関性判定結果は、現フレームが有声定常区間であることを意味する。
具体的には、ピッチ列候補生成部872は、相関性判定部880から入力される相関性判定結果が「高相関」である場合には、以下の動作を行ってS’個の復号音源ピッチパルスを生成する。ピッチ列候補生成部872は、まず、次ピッチパルス位置算出部777から入力される補償ピッチパルス位置PDp[s](0≦s≦S’)を中心として、復号音源生成部703から入力される復号音源信号からPPs〜PPeまでの区間を取り出す。そして、ピッチパルス列候補生成部872は、取り出し区間の復号音源信号に対し、PDp’[s](0≦s≦S’)位置の振幅が、ピッチパルス情報復号部204から入力されるピッチパルス振幅PPaにピッチパルス減衰係数算出部678から入力されるピッチパルス減衰係数を乗じた値と一致するように増幅をする。この時、次ピッチパルス位置での振幅が前記振幅に増幅され、一方復号音源ピッチパルス波形の端点における増幅率が1.0に近い値となるような窓掛けを行う。この結果、復号音源ピッチパルス波形を得る。ここで、窓掛けを行う理由は、取り出し区間の復号音源信号の全サンプルを同一の増幅率で増幅すると、取り出し区間の端点の増幅後振幅と、復号音源ピッチパルス波形と接することになる復号音源信号のサンプルにおける振幅との差が大きくなる可能性があるためである。従って、このようなことを回避するために、取り出し区間の中心点では増幅率を大きくし、端点では増幅率を小さくすることにより、復号音源ピッチパルス波形の最大振幅を適切に増幅するとともに、復号音源ピッチパルス波形と復号音源ピッチパルス波形に隣接する復号音源信号が滑らかに繋がるようにする。この結果、得られる補正復号音源信号のパワー変動感が緩和される。
このように、本実施の形態によれば、有声定常区間におけるフレームが消失した場合には、ピッチパルス学習波形の代わりに復号音源ピッチパルスを用いて、復号音源信号を補正するため、フレーム消失が生じなかった場合の理想的な復号音源信号により近似する補正復号音源信号を得ることができ、復号音声の明瞭性をさらに向上し、復号音声品質を向
上することができる。
なお、本実施の形態では、取り出し区間の復号音源信号を増幅して復号音源ピッチパルス波形を生成する際に窓掛けを用いる場合を例にとって説明したが、本発明は、これに限定されず、次ピッチパルス位置での増幅率をより大きくし、取り出し区間の端点での増幅率をより小さくして、得られる復号音源ピッチパルス波形のパワー変動感を緩和させる機能を持つほかの窓を用いても良い。
また、本実施の形態では、復号音源信号の補正に用いられる復号音源ピッチパルス波形において、中心サンプル(補償ピッチパルス位置)の振幅値が最も大きい場合を例にとって説明したが、場合によっては復号音源ピッチパルスを復号音源信号に加算しなくても良い。すなわち、(1)中心サンプルよりもほかのサンプルの振幅が大きい場合、(2)または復号音源ピッチパルス波形の中心サンプルの振幅値よりも、復号音源信号の補償ピッチパルス位置の振幅が大きい場合、(3)または復号音源ピッチパルス波形の中心サンプルの振幅値と、ピッチパルス情報復号部204において復号されたm番フレーム最後ピッチパルスの振幅値との極性(符号)が相反する場合には、復号音源ピッチパルスを復号音源信号に加算しなくても良い。
また、前フレーム最後ピッチパルス検出部711は、音声符号化装置側のピッチパルス検出部192においてn番フレームのピッチパルス位置PPpを検出する方法と同様な方法で、m−1番フレーム最後ピッチパルスの位置および振幅を検出する場合を例にとって説明したが、過去フレームのピッチパルスを繰り返し生成できない、もしくは余計なピッチパルスまで繰り返し生成してしまう場合がある。その原因は、一般的に消失フレームにおける補償ピッチラグT’(m)、すなわちピッチラグT(m−1)は、理想的な復号音源信号のmフレームのピッチラグT(m)と異なるためである。例えば、補償ピッチラグT’(m)、すなわちT(m−1)がピッチラグT(m)より短い場合、m−1番フレーム最後ピッチパルスがm番フレームで現れない場合がある。具体的には、m−1番フレーム最後ピッチパルス位置が、m−1番フレームとm番フレームの境界から過去方向へT(m−1)だけ離れた位置近辺に存在する場合に、この現象は発生しやすくなる。つまり、補正ピッチラグT’(m,s)が、m−1番フレーム最後ピッチラグ位置とm番フレーム境界との距離よりも短くなると、m番フレームにおいてm−1番フレームのピッチパルスを適応符号帳に取り込めない現象が発生する。これを防止するため、m−1番フレーム最後ピッチラグ位置とm番フレーム境界との距離以上となるように補正ピッチラグをさらに補正する必要がある。一方、補償ピッチラグT’(m)、すなわちT(m−1)がピッチラグT(m)より長い場合、m−1番フレーム最後ピッチパルス位置から、更に1ピッチラグ分過去の位置にあるピッチパルス(偽過去ピッチパルスと呼ぶ)を、m番フレームにおいて繰り返し生成する。m−1番フレーム最後ピッチパルスがm番フレームに近い位置に存在し、かつ、補正ピッチラグT’(m,s)がT(m−1)よりも長く算出された場合に発生し得る。具体的には、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離とピッチラグT(m−1)の合計よりも、補正ピッチラグT’(m,s)が長い場合に、本現象の条件に該当することを検出できる。上記現象を検出した際には、例えば以下のような(1)および(2)の対策をとることができる。(1)補正ピッチラグT’(m,s)を短くする。具体的には、まず、補正ピッチラグをT(m−1)とする。次いで、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離と、ピッチラグT(m−1)を合計し、合計値とT(m−1)との内挿点を、補正ピッチラグT’(m,s)とする。(2)偽過去ピッチパルスを除去する。具体的には、まず、適応符号帳において、偽ピッチパルスが存在する区間の振幅を零にした上で、m番フレームのフレーム消失補償を行う。次いで、偽過去ピッチパルスを、実施の形態3で説明した偽ピッチパルス除去方法により除去する。音源信号補正部707において、偽ピッチパルス検出部571の動作を変更すれば偽過去ピッチパルスを除去できる。偽ピッチパルス検出部571に
おける動作との相違点は、m−1番フレーム最後ピッチパルス位置とm番フレーム境界との距離と、ピッチラグT(m−1)との合計値を偽過去ピッチパルス位置とする点である。その後の偽ピッチパルスを除去するプロセスは同じである。または、上記のように補正ピッチラグに追加の補正を加えるようにする代わりに、補正ピッチラグを算出する際に、とりうる値の最小値・最大値を予め設定するようにして、上記と同様な効果を得るようにしても良い。
以上、本発明の各実施の形態について説明した。
本発明に係る音声復号装置および音声符号化装置は、上記各実施の形態に限定されず、種々変更して実施することが可能である。例えば、各実施の形態は、適宜組み合わせて実施することが可能である。
また、音源符号帳は、雑音符号帳および適応符号帳からなり、雑音符号帳は、固定符号帳(fixed codebook)、確率符号帳(stochastic codebook)、または乱数符号帳(random codebook)と呼ばれることもある。また、適応符号帳は、適応音源符号帳と呼ばれることもある。
また、本発明に係る音声復号装置および音声符号化装置は、移動体通信システムにおける通信端末装置および基地局装置に搭載することが可能であり、これにより上記と同様の作用効果を有する通信端末装置、基地局装置、および移動体通信システムを提供することができる。
なお、ここでは、本発明をハードウェアで構成する場合を例にとって説明したが、本発明をソフトウェアで実現することも可能である。例えば、本発明に係る音声符号化方法および音声復号方法のアルゴリズムをプログラミング言語によって記述し、このプログラムをメモリに記憶しておいて情報処理手段によって実行させることにより、本発明に係る音声符号化装置および音声復号装置と同様の機能を実現することができる。
また、上記各実施の形態の説明に用いた各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されても良いし、一部または全てを含むように1チップ化されても良い。
また、ここではLSIとしたが、集積度の違いによって、IC、システムLSI、スーパーLSI、ウルトラLSI等と呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現しても良い。LSI製造後に、プログラム化することが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続もしくは設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
さらに、半導体技術の進歩または派生する別技術により、LSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行っても良い。バイオ技術の適用等が可能性としてあり得る。
2006年7月12日出願の特願2006−192071、2006年12月15日出願の特願2006−338981、および2007年3月3日出願の特願2007−053547の日本出願に含まれる明細書、図面および要約書の開示内容は、すべて本願に援用される。
本発明に係る音声復号装置および音声符号化装置は、CELP型符号化のフレーム消失補償処理等の用途に適用することができる。
実施の形態1に係る音声符号化装置の主要な構成を示すブロック図
実施の形態1に係るピッチパルス抽出部内部の主要な構成を示すブロック図
実施の形態1に係るピッチパルス検出部におけるピッチパルスの検出方法を説明するための図
実施の形態1に係る音声復号装置の主要な構成を示すブロック図
実施の形態1に係る音声復号装置における消失フレーム補償処理を説明するための図
実施の形態1に係るピッチパルス波形学習部内部の主要な構成を示すブロック図
実施の形態1に係るピッチパルス波形学習部の動作を説明するための図
実施の形態2に係る音声符号化装置の主要な構成を示すブロック図
実施の形態2に係る音声復号装置の主要な構成を示すブロック図
実施の形態2に係る音源信号補正部の動作を説明するための図
実施の形態2に係る音源信号補正部内部の主要な構成を示すブロック図
仮に符号化対象となる音源信号に非周期的なピーク波形が存在し、CELP型符号化により消失フレーム補償処理を行う場合に、得られる復号音源信号を示す図
実施の形態3に係る音声復号装置の主要な構成を示すブロック図
実施の形態3に係る音源信号補正部内部の主要な構成を示すブロック図
実施の形態4に係る音声復号装置の主要な構成を示すブロック図
実施の形態4に係る音源信号補正部の内部の主要な構成を示すブロック図
実施の形態4に係るピッチパルス列生成部の内部の主要な構成を示すブロック図
実施の形態4に係るピッチパルス列候補生成部において生成されるピッチパルス列候補のイメージを示す図
実施の形態4に係るピッチパルス列生成部においてピッチパルス列を生成する処理手順を示すフロー図
実施の形態4に係るフレーム消失が生じない場合の復号音源信号の波形を示す図
実施の形態4に係るフレーム消失が生じない場合、各フレームにおける復号音源パワーを示す図
実施の形態4に係る1つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る1つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態4に係る2つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る2つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態4に係る3つのピッチパルス波形を用いて復号音源信号を補正して得られる補正音源信号の波形を示す図
実施の形態4に係る3つのピッチパルス波形を用いて復号音源信号を補正する場合の音源パワーを例示する図
実施の形態5に係るピッチパルス列を用いて復号音源信号を補正する方法を説明するための図
実施の形態5に係る音声復号装置の主要な構成を示すブロック図
実施の形態5に係るピッチラグ補正部の内部の構成を示すブロック図
実施の形態5に係るピッチラグ補正可否判定部においてピッチラグ補正可否判定を行う手順を示すフロー図
実施の形態5に係る音源信号補正部の内部の構成を示すブロック図
実施の形態5に係るピッチパルス列生成部の内部の構成を示すブロック図
実施の形態6に係る復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図
実施の形態6に係る復号音源ピッチパルス波形を用いて復号音源信号を補正する方法を説明するための図
実施の形態6に係るピッチパルス列生成部の内部の構成を示すブロック図