本発明の第1の態様は、音声信号に含まれる声道情報を表す少なくとも1種類以上のパラメータを符号化する第1符号化手段と、前記音声信号に含まれる音源情報を表す少なくとも1種類以上のパラメータを幾つかのモードで符号化可能な第2符号化手段と、前記第1符号化手段で符号化された特定パラメータの動的特徴に基づいて前記第2符号化手段のモード切替を行うモード切替手段と、前記第1、第2符号化手段によって符号化された複数種類のパラメータ情報によって入力音声信号を合成する合成手段と、を具備する構成を採る。
この構成によれば、第1符号化手段の符号化結果を用いて、第2符号化手段の符号化モードを決定するため、モードを示すための新たな情報を付加することなく第2符号化手段のマルチモード化ができ、符号化性能を向上できる。
本発明の第2の態様は、第1の態様において、モード切替手段が、音声のスペクトル特性を表す量子化パラメータを用いて、駆動音源を符号化する第2符号化手段のモード切替を行う構成を採る。
この構成によれば、スペクトル特性を表すパラメータと駆動音源を表すパラメータとを独立的に符号化する形態の音声符号化装置において、新たな伝送情報を増やすことなく駆動音源の符号化をマルチモード化ができ、符号化性能を向上できる。
本発明の第3の態様は、第2の態様において、モード切替手段が、音声のスペクトル特性を表す量子化パラメータの静的および動的特徴を用いて、駆動音源を符号化する手段のモード切替を行う構成を採る。
この構成によれば、動的特徴を用いることによって定常雑音部の検出ができるようになるので、駆動音源符号化のマルチモード化によって定常雑音部に対する符号化性能を改善できる。
本発明の第4の態様は、第2,3の態様において、モード切替手段が、量子化LSPパラメータを用いて駆動音源を符号化する手段のモード切替を行う構成を採る。
この構成によれば、スペクトル特性を表すパラメータとしてLSPパラメータを用いているCELP方式に容易に適用できる。
本発明の第5の態様は、第4の態様において、モード切替手段が、量子化LSPパラメータの静的および動的特徴を用いて、駆動音源を符号化する手段のモード切替を行う構成を採る。
この構成によれば、スペクトル特性を表すパラメータとしてLSPパラメータを用いているCELP方式に簡単に適用でき、また、周波数領域のパラメータであるLSPパラメータを用いるためスペクトルの定常性の判定が良好に行うことができ、定常雑音に対する符号化性能を改善できる。
本発明の第6の態様は、第4,5の態様において、モード切替手段が、量子化LSPの定常性を過去および現在の量子化LSPパラメータを用いて判定する手段と、現在の量子化LSPを用いて有声性を判定する手段と、を備え、判定結果に基づいて駆動音源を符号化する手段のモード切替を行う構成を採る。
この構成によれば、駆動音源の符号化を定常雑音部と無声音声部と有声音声部とで切替えて行うことができるので、各部に対応した駆動音源の符号化モードを準備することによって符号化性能を改善できる。
本発明の第7の態様は、音声信号に含まれる声道情報を表す少なくとも1種類以上のパラメータを復号化する手段と、前記音声信号に含まれる音源情報を表す少なくとも1種類以上のパラメータを復号化する第2復号化手段と、前記第1復号化手段で復号化された特定パラメータの動的特徴に基づいて前記第2復号化手段のモード切替を行うモード切替手段と、前記第1、第2復号化手段によって復号化された複数種類のパラメータ情報によって音声信号を音声信号を復号する合成手段と、を具備する構成をとる。
この構成によれば、第1の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第8の態様は、第7の態様において、モード切替手段が、音声のスペクトル特性を表す量子化パラメータを用いて、駆動音源を復号化する第2復号化手段のモード切替を行う構成を採る。
この構成によれば、第2の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第9の態様は、第7の態様において、モード切替手段が、音声のスペクトル特性を表す量子化パラメータの静的および動的特徴を用いて、駆動音源を復号化する手段のモード切替を行う構成をとる。
この構成によれば、第3の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第10の態様は、第7の態様において、モード切替手段が、量子化LSPパラメータを用いて、駆動音源を復号化する手段のモード切替を行う構成を採る。
この構成によれば、第4の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第11の態様は、第7の態様において、モード切替手段が、量子化LSPパラメータの静的および動的特徴を用いて、駆動音源を復号化する手段のモード切替を行う構成を採る。
この構成によれば、第5の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第12の態様は、第7の態様において、モード切替手段が、量子化LSPの定常性を過去および現在の量子化LSPパラメータを用いて判定する手段と、現在の量子化LSPを用いて有声性を判定する手段とを備え、判定結果に基づいて駆動音源を復号化する手段のモード切替を行う構成を採る。
この構成によれば、第6の態様の音声符号化装置で符号化された信号を復号できる。
本発明の第13の態様は、第7〜第12の態様のいずれかにおいて、判定手段の判定結果に基づいて復号信号に対する後処理の切替えを行う構成を採る。
この構成によれば、第1〜第6の態様のいずれかのマルチモード音声符号化装置で符号化された信号を復号でき、さらに後処理によって定常的な背景雑音環境下の音声信号に対する符号化性能を改善できる。
本発明の第14の態様は、量子化LSPパラメータのフレーム間変化を算出する手段と、量子化LSPパラメータが定常的であるフレームにおける平均的量子化LSPパラメータを算出する手段と、前記平均的量子化LSPパラメータと現在の量子化LSPパラメータとの距離を算出する手段と、を備える構成を採る。
この構成によれば、入力信号の音声区間検出を精度良く行うための動的特徴を抽出することができる。
本発明の第15の態様は、量子化LSPパラメータから線形予測残差パワを算出する手段と、隣接する次数の量子化LSPパラメータの間隔を算出する手段と、を備える構成を採る。
この構成によれば、入力信号のスペクトル包絡の山谷の特徴を抽出することができ、音声区間である可能性が高い区間を検出するための静的特徴を抽出することができる。
本発明の第16の態様は、第14の態様の動的特徴抽出器と、第15の態様の静的特徴抽出器とを備え、前記動的特徴抽出器によって抽出された量子化LSPパラメータの動的特徴と、前記静的特徴抽出器によって抽出された量子化LSPパラメータの静的特徴との少なくとも一方を用いて音声区間の検出を行う構成を採る。
この構成によれば、精度良く音声区間と定常雑音区間との切り分けを行うことができる。
本発明の第17の態様は、第16の態様の音声区間検出器と、有声無声判定手段とを備え、前記音声区間検出器の検出結果と、前記有声無声判定手段の判定結果との少なくとも一方の情報を用いてモード判定を行う構成を採る。
この構成によれば、音声区間/雑音区間と有声区間/無声区間との切り分け情報を用いたマルチモード構成を実現することができる。
本発明の第18の態様は、前記有声無声判定手段が、量子化LSPパラメータから反射係数を算出する手段と、量子化LSPパラメータから線形予測残差パワを算出する手段と、を備える量子化LSPパラメータの静的特徴抽出器によって抽出される情報を利用する構成を採る。
この構成によれば、有声/無声の判定を精度よく行うことができる。
本発明の第19の態様は、第1の態様において、前記モード選択器によりモード切替手段を構成する。
この構成によれば、入力音声の特徴に応じて音源符号化をマルチモードで行うことができる。
本発明の第20の態様は、第7の態様において、前記モード選択器によりモード切替手段を構成する。
この構成によれば、第19の態様の符号化装置を用いて符号化された音声信号を復号できる。
本発明の第21の態様は、復号LSPパラメータを用いて音声区間か否かの判定を行う判定手段と、信号のFFT処理を行うFFT処理手段と、前記FFT処理によって得られた位相スペクトルを前記判定手段の判定結果に応じてランダム化する位相スペクトルランダム化手段と、前記FFT処理によって得られた振幅スペクトルを前記判定結果に応じて平滑化する振幅スペクトル平滑化手段と、前記位相スペクトルランダム化手段によってランダム化された位相スペクトルと前記振幅スペクトル平滑化手段によって平滑化された位相スペクトルとの逆FFT処理を行うIFFT処理手段と、を備える構成を採る。
この構成によれば、マルチモードで後処理を行うことができ、特に定常雑音区間の主観品質を改善できる。
本発明の第22の態様は、第21の態様において、音声区間においては過去の非音声区間における平均的振幅スペクトルを用いてランダム化する位相スペクトルの周波数を決定し、非音声区間においては聴覚重みづけ領域における全周波数の振幅スペクトルの平均値を用いてランダム化する位相スペクトルと平滑化する振幅スペクトルの周波数を決定する構成を採る。
この構成によれば、音声区間と雑音区間の後処理を適応的に行うことができる。
本発明の第23の態様は、第21の態様において、音声区間においては過去の非音声区間における平均的振幅スペクトルを用いて生成した雑音を重畳する構成を採る。
この構成によれば、定常的な背景雑音のある復号音声信号の聴感的品質を改善できる。
本発明の第24の態様は、第21の態様において、前記音声区間か否かの判定を第16の態様における音声区間検出手段と、過去の非音声区間における平均的振幅スペクトルと現在の振幅スペクトルとの差の大きさと、を用いて行う構成を採る。
この構成によれば、復号信号のパワが急に大きくなるような場合を検出できるので、第16の態様における音声区間検出手段による検出誤りが生じた場合に対応することができる。
本発明の第25の態様は、第13の態様において、後処理を第21の態様におけるマルチモード後処理器を用いて行う構成を採る。
この構成によれば、マルチモードで後処理を行うことによって特に定常雑音区間の主観品質を改善できる音声復号化装置を実現できる。
本発明の第26の態様は、第1の態様の音声符号化装置と、第7の態様の音声復号化装置と、を備える構成を採る。
この構成によれば、第1の態様の音声符号化装置と第7の態様の音声復号化装置とを備え音声符号化復号化装置を実現できる。
本発明の第27の態様は、音声信号を電気的信号に変換する音声入力装置と、この音声入力装置から出力される信号をディジタル信号に変換するA/D変換器と、このA/D変換器から出力されるディジタル信号の符号化を行う第1〜第6の態様のいずれかの音声符号化装置と、この音声符号化装置から出力される符号化情報に対して変調処理等を行うRF変調器と、このRF変調器から出力された信号を電波に変換して送信する送信アンテナと、を具備する構成を採る。
この構成によれば、第1〜第6の態様のいずれかの音声符号化装置を備えた音声信号送信装置を実現でき、品質の高い低ビットレート音声符号化が可能となる。
本発明の第28の態様は、受信電波を受信する受信アンテナと、この受信アンテナで受信した信号の復調処理を行うRF復調器と、このRF復調器によって得られた情報の復号化を行う第7〜第13の態様のいずれかの音声復号化装置と、この音声復号化装置によって復号されたディジタル音声信号をD/A変換するD/A変換器と、このD/A変換器によって出力される電気的信号を音声信号に変換する音声出力装置と、を具備する構成をとる。
この構成によれば、第7〜第13の態様のいずれかの音声復号化装置を備えた音声信号受信装置を実現でき、第27の態様の音声信号送信装置から送信された信号を受信し復号化できる。
本発明の第29の態様は、第27の態様の音声信号送信装置および第28の態様の音声信号受信装置の少なくとも一方を備える構成を採る。
この構成によれば、第27の態様の音声信号送信装置および/または第28の態様の音声信号受信装置を備えた移動局装置を実現でき、高音質の移動局装置を実現できる。
本発明の第30の態様は、第27の態様の音声信号送信装置および第28の態様の音声信号受信装置の少なくとも一方を備える構成を採る。
この構成によれば、第27の態様の音声信号送信装置および/または第28の態様の音声信号受信装置を備えた基地局装置を実現でき、高音質の基地局装置を実現できる。
本発明の第31の態様は、コンピュータに、量子化LSPの定常性を過去および現在の量子化LSPパラメータを用いて判定する手順と、現在の量子化LSPを用いて有声性を判定する手順と、前記手順によって判定された結果に基づいて駆動音源を符号化する手順のモード切替を行う手順と、を実行させるためのプログラムを記録した機械読み取り可能な記録媒体である。
この記録媒体によれば、記録されたプログラムをコンピュータにインストールすることにより第6の態様の音声符号化装置と同等の機能を持たせることができる。
本発明の第32の態様は、コンピュータに、量子化LSPの定常性を過去および現在の量子化LSPパラメータを用いて判定する手順と、現在の量子化LSPを用いて有声性を判定する手順と、前記手順によって判定された結果に基づいて駆動音源を復号化する手順のモード切替を行う手順と、前記手順によって判定された結果に基づいて復号信号に対する後処理手順の切替えを行う手順と、を実行させるためのプログラムを記録した機械読み取り可能な記録媒体である。
この記録媒体によれば、記録されたプログラムをコンピュータにインストールすることにより第13の態様の音声復号化装置と同等の機能を持たせることができる。
本発明の第33の態様は、音声のスペクトル特性を表す量子化パラメータの静的および動的特徴を用いて駆動音源を符号化するモードのモード切替を行う構成を採る。
この構成によれば、動的特徴を用いることによって定常雑音部の検出ができるようになるので、駆動音源符号化のマルチモード化によって定常雑音部に対する符号化性能を改善できる。
本発明の第34の態様は、音声のスペクトル特性を表す量子化パラメータの静的および動的特徴を用いて駆動音源を復号化するモードのモード切替を行う構成を採る。
この構成によれば、第33の態様の音声符号化方法によって符号化した信号を復号可能な復号化方法を提供できる。
本発明の第35の態様は、第34の態様の音声復号化方法において、復号信号に対する後処理を行う工程と、モード情報に基づいて前記後処理工程の切替えを行う工程と、を具備する構成を採る。
この構成によれば、第34の態様の音声復号化方法を用いて復号化した信号の定常雑音品質をさらに改善できる音声復号化方法を提供できる。
本発明の第36の態様は、量子化LSPパラメータのフレーム間変化を算出する工程と、量子化LSPパラメータが定常的であるフレームにおける平均的量子化LSPパラメータを算出する工程と、前記平均的量子化LSPパラメータと現在の量子化LSPパラメータとの距離を算出する工程と、を具備する構成を採る。
この構成によれば、入力信号の音声区間検出を精度良く行うための動的特徴を抽出することができる。
本発明の第37の態様は、量子化LSPパラメータから線形予測残差パワを算出する工程と、隣接する次数の量子化LSPパラメータの間隔を算出する工程と、を具備する構成を採る。
この構成によれば、入力信号のスペクトル包絡の山谷の特徴を抽出することができ、音声区間である可能性が高い区間を検出するための静的特徴を抽出することができる。
本発明の第38の態様は、第36の態様における動的特徴抽出工程と、第37の態様における静的特徴抽出工程と、を具備し、前記動的特徴抽出工程において抽出された量子化LSPパラメータの動的特徴と、前記静的特徴抽出工程において抽出された量子化LSPパラメータの静的特徴と、の少なくとも一方を用いて音声区間の検出を行う構成を採る。
この構成によれば、精度良く音声区間と定常雑音区間との切り分けを行うことができる。
本発明の第39の態様は、第38の態様における音声区間検出方法によって得られる音声検出結果を用いてモード判定を行う構成を採る。
この構成によれば、音声区間/雑音区間と有声区間/無声区間との切り分け情報を用いたマルチモード構成を実現することができる。
本発明の第40の態様は、復号LSPパラメータを用いて音声区間か否かの判定を行う判定工程と、信号のFFT処理を行うFFT処理工程と、前記FFT処理によって得られた位相スペクトルを前記判定工程における判定結果に応じてランダム化する位相スペクトルランダム化工程と、前記FFT処理によって得られた振幅スペクトルを前記判定結果に応じて平滑化する振幅スペクトル平滑化工程と、前記位相スペクトルランダム化工程においてランダム化された位相スペクトルと前記振幅スペクトル平滑化工程において平滑化された位相スペクトルとの逆FFT処理を行うIFFT処理工程と、を具備する構成を採る。
この構成によれば、マルチモードで後処理を行うことができ、特に定常雑音区間の主観品質を改善できる。
以下、本発明の実施の形態における音声符号化装置等について、図1から図9を用いて説明する。
(実施の形態1)
図1に本発明の実施の形態1にかかる音声符号化装置の構成を示す。
ディジタル化された音声信号等からなる入力データが前処理器101に入力される。前処理器101は、ハイパスフィルタやバンドパスフィルタ等を用いて直流成分のカットや入力データの帯域制限等を行ってLPC分析器102と加算器105とに出力する。なお、この前処理器101において何も処理を行わなくても後続する符号化処理は可能であるが、前述したような処理を行った方が符号化性能は向上する。
LPC分析器102は、線形予測分析を行って線形予測係数(LPC)を算出してLPC量子化器103へ出力する。
LPC量子化器103は、入力したLPCを量子化し、量子化後のLPCを合成フィルタ104とモード選択器105に、また、量子化LPCを表現する符号Lを復号器に夫々出力する。なお、LPCの量子化は補間特性の良いLSP(Line Spectrum Pair:線スペクトル対)に変換して行うのが一般的である。
合成フィルタ104は、入力した量子化LPCを用いてLPC合成フィルタを構築する。この合成フィルタに対して加算器114から出力される駆動音源信号を入力としてフィルタ処理を行って合成信号を加算器106に出力する。
モード選択器105は、LPC量子化器103から入力した量子化LPCを用いて雑音符号帳109のモードを決定する。
ここで、モード選択器105は、過去に入力した量子化LPCの情報も蓄積しており、フレーム間における量子化LPCの変動の特徴と現フレームにおける量子化LPCの特徴の双方を用いてモードの選択を行う。このモードは少なくとも2種類以上あり、例えば有声音声部に対応するモードと無声音声部および定常雑音部等に対応するモードから成る。また、モードの選択に用いる情報は量子化LPCそのものである必要はなく、量子化LSPや反射係数や線形予測残差パワなどのパラメータに変換したものを用いた方が効果的である。
加算器106は、前処理器101から入力される前処理後の入力データと合成信号との誤差を算出し、聴覚重みづけフィルタ107へ出力する。
聴覚重み付けフィルタ107は、加算器106において算出された誤差に対して聴覚的な重み付けを行って誤差最小化器108へ出力する。
誤差最小化器108は、雑音符号帳インデックスSiと適応符号帳インデックス(ピッチ周期)Piとゲイン符号帳インデックスGiとを調整しながら夫々雑音符号帳109と適応符号帳110とゲイン符号帳111とに出力し、聴覚重み付けフィルタ107から入力される聴覚的重み付けされた誤差が最小となるように雑音符号帳109と適応符号帳110とゲイン符号帳111とが生成する雑音符号ベクトルと適応符号ベクトルと雑音符号帳利得および適応符号帳利得とを夫々決定し、雑音符号ベクトルを表現する符号Sと適応符号ベクトルを表現するPとゲイン情報を表現する符号Gを夫々復号器に出力する。
雑音符号帳109は、予め定められた個数の形状の異なる雑音符号ベクトルが格納されており、誤差最小化器108から入力される雑音符号ベクトルのインデックスSiによって指定される雑音符号ベクトルを出力する。また、この雑音符号帳109は少なくとも2種類以上のモードを有しており、例えば有声音声部に対応するモードではよりパルス的な雑音符号ベクトルを生成し、無声音声部や定常雑音部等に対応するモードではより雑音的な雑音符号ベクトルを生成するような構造となっている。雑音符号帳109から出力される雑音符号ベクトルは前記2種類以上のモードのうちモード選択器105で選択された1つのモードから生成され、乗算器112で雑音符号帳利得Gsが乗じられた後に加算器114に出力される。
適応符号帳110は、過去に生成した駆動音源信号を逐次更新しながらバッファリングしており、誤差最小化器108から入力される適応符号帳インデックス(ピッチ周期(ピッチラグ))Piを用いて適応符号ベクトルを生成する。適応符号帳110にて生成された適応符号ベクトルは乗算器113で適応符号帳利得Gaが乗じられた後に加算器114に出力される。
ゲイン符号帳111は、適応符号帳利得Gaと雑音符号帳利得Gsのセット(ゲインベクトル)を予め定められた個数だけ格納しており、誤差最小化器108から入力されるゲイン符号帳インデックスGiによって指定されるゲインベクトルの適応符号帳利得成分Gaを乗算器113に、雑音符号帳利得成分Gsを乗算器112に夫々出力する。なお、ゲイン符号帳は多段構成とすればゲイン符号帳に要するメモリ量やゲイン符号帳探索に要する演算量の削減が可能である。また、ゲイン符号帳に割り当てられるビット数が十分であれば、適応符号帳利得と雑音符号帳利得とを独立してスカラ量子化することもできる。
加算器114は、乗算器112および113から入力される雑音符号ベクトルと適応符号ベクトルの加算を行って駆動音源信号を生成し、合成フィルタ104および適応符号帳110に出力する。
なお、本実施の形態においては、マルチモード化されているのは雑音符号帳109のみであるが、適応符号帳110およびゲイン符号帳111をマルチモード化することによってさらに品質改善を行うことも可能である。
次に図3を参照して上記実施の形態における音声符号化方法の処理の流れを示す。本説明においては、音声符号化処理を予め定められた時間長の処理単位(フレーム:時間長にして数十ミリ秒程度)毎に処理を行い、1フレームをさら整数個の短い処理単位(サブフレーム)毎に処理を行う例を示す。
ステップ301において、適応符号帳の内容、合成フィルタメモリ、入力バッファ等の全てのメモリをクリアする。
次に、ステップ302においてディジタル化された音声信号等の入力データを1フレーム分入力し、ハイパスフィルタまたはバンドパスフィルタ等をかけることによって入力データのオフセット除去や帯域制限を行う。前処理後の入力データは入力バッファにバッファリングされ、以降の符号化処理に用いられる。
次に、ステップ303において、LPC分析(線形予測分析)が行われ、LPC係数(線形予測係数)が算出される。
次に、ステップ304において、ステップ303にて算出されたLPC係数の量子化が行われる。LPC係数の量子化方法は種々提案されているが、補間特性の良いLSPパラメータに変換して多段ベクトル量子化やフレーム間相関を利用した予測量子化を適用すると効率的に量子化できる。また、例えば1フレームが2つのサブフレームに分割されて処理される場合には、第2サブフレームのLPC係数を量子化して、第1サブフレームのLPC係数は直前フレームにおける第2サブフレームの量子化LPC係数と現フレームにおける第2サブフレームの量子化LPC係数とを用いて補間処理によって決定する。
次に、ステップ305において、前処理後の入力データに聴覚重みづけを行う聴覚重みづけフィルタを構築する。
次に、ステップ306において、駆動音源信号から聴覚重み付け領域の合成信号を生成する聴覚重み付け合成フィルタを構築する。このフィルタは、合成フィルタと聴覚重み付けフィルタとを従属接続したフィルタであり、合成フィルタはステップ304にて量子化された量子化LPC係数を用いて構築され、聴覚重み付けフィルタはステップ303において算出されたLPC係数を用いて構築される。
次に、ステップ307において、モードの選択が行われる。モードの選択はステップ304において量子化された量子化LPC係数の動的および静的特徴を用いて行われる。具体的には、量子化LSPの変動や量子化LPC係数から算出される反射係数や予測残差パワ等を用いる。本ステップにおいて選択されたモードに従って雑音符号帳の探索が行われる。本ステップにおいて選択されるモードは少なくとも2種類以上あり、例えば有声音声モードと無声音声および定常雑音モードの2モード構成等が考えられる。
次に、ステップ308において、適応符号帳の探索が行われる。適応符号帳の探索は、前処理後の入力データに聴覚重みづけを行った波形に最も近くなるような聴覚重みづけ合成波形が生成される適応符号ベクトルを探索することであり、前処理後の入力データをステップ305で構築された聴覚重み付けフィルタでフィルタリングした信号と適応符号帳から切り出した適応符号ベクトルを駆動音源信号としてステップ306で構築された聴覚重み付け合成フィルタでフィルタリングした信号との誤差が最小となるように、適応符号ベクトルを切り出す位置を決定する。
次に、ステップ309において、雑音符号帳の探索が行われる。雑音符号帳の探索は、前処理後の入力データに聴覚重みづけを行った波形に最も近くなるような聴覚重みづけ合成波形が生成される駆動音源信号を生成する雑音符号ベクトルを選択することであり、駆動音源信号が適応符号ベクトルと雑音符号ベクトルとを加算して生成されることを考慮した探索が行われる。したがって、既にステップ308にて決定された適応符号ベクトルと雑音符号帳に格納されている雑音符号ベクトルとを加算して駆動音源信号を生成し、生成された駆動音源信号をステップ306で構築された聴覚重みづけ合成フィルタでフィルタリングした信号と前処理後の入力データをステップ305で構築された聴覚重みづけフィルタでフィルタリングした信号との誤差が最小となるように、雑音符号帳の中から雑音符号ベクトルを選択する。なお、雑音符号ベクトルに対してピッチ周期化等の処理を行う場合は、その処理も考慮した探索が行われる。また、この雑音符号帳は少なくとも2種類以上のモードを有しており、例えば有声音声部に対応するモードではよりパルス的な雑音符号ベクトルを格納している雑音符号帳を用いて探索が行われ、無声音声部や定常雑音部等に対応するモードではより雑音的な雑音符号ベクトルを格納している雑音符号帳を用いて探索が行われる。探索時にどのモードの雑音符号帳を用いるかは、ステップ307にて選択される。
次に、ステップ310において、ゲイン符号帳の探索が行われる。ゲイン符号帳の探索は、既にステップ308にて決定された適応符号ベクトルとステップ309にて決定された雑音符号ベクトルのそれぞれに対して乗じる適応符号帳利得と雑音符号帳利得の組をゲイン符号帳の中から選択することであり、適応符号帳利得乗算後の適応符号ベクトルと雑音符号利得乗算後の雑音符号ベクトルとを加算して駆動音源信号を生成し、生成した駆動音源信号をステップ306にて構築された聴覚重みづけ合成フィルタでフィルタリングした信号と前処理後の入力データをステップ305で構築された聴覚重みづけフィルタでフィルタリングした信号との誤差が最小となるような適応符号帳利得と雑音符号帳利得の組をゲイン符号帳の中から選択する。
次に、ステップ311において、駆動音源信号が生成される。駆動音源信号は、ステップ308にて選択された適応符号ベクトルにステップ310にて選択された適応符号帳利得を乗じたベクトルと、ステップ309にて選択された雑音符号ベクトルにステップ310において選択された雑音符号帳利得を乗じたベクトルと、を加算して生成される。
次に、ステップ312において、サブフレーム処理のループで用いられるメモリの更新が行われる。具体的には、適応符号帳の更新や聴覚重みづけフィルタおよび聴覚重みづけ合成フィルタの状態更新等が行われる。
上記ステップ305〜312はサブフレーム単位の処理である。
次に、ステップ313において、フレーム処理のループで用いられるメモリの更新が行われる。具体的には、前処理器で用いられるフィルタの状態更新や量子化LPC係数バッファの更新や入力データバッファの更新等が行われる。
次に、ステップ314において、符号化データの出力が行われる。符号化データは伝送される形態に応じてビットストリーム化や多重化処理等が行われて伝送路に送出される。
上記ステップ302〜304および313〜314がフレーム単位の処理である。また、フレーム単位およびサブフレーム単位の処理は入力データがなくなるまで繰り返し行われる。
(実施の形態2)
図2に本発明の実施の形態2にかかる音声復号化装置の構成を示す。
符号器から伝送された、量子化LPCを表現する符号Lと雑音符号ベクトルを表現する符号Sと適応符号ベクトルを表現する符号Pとゲイン情報を表現する符号Gとが、それぞれLPC復号器201と雑音符号帳203と適応符号帳204とゲイン符号帳205とに入力される。
LPC復号器201は、符号Lから量子化LPCを復号し、モード選択器202と合成フィルタ209に夫々出力する。
モード選択器202は、LPC復号器201から入力した量子化LPCを用いて雑音符号帳203および後処理器211のモードを決定し、モード情報Mを雑音符号帳203および後処理器211とに夫々出力する。なお、モード選択器202は過去に入力した量子化LPCの情報も蓄積しており、フレーム間における量子化LPCの変動の特徴と現フレームにおける量子化LPCの特徴の双方を用いてモードの選択を行う。このモードは少なくとも2種類以上あり、例えば有声音声部に対応するモードと無声音声部に対応するモードと定常雑音部等に対応するモードから成る。また、モードの選択に用いる情報は量子化LPCそのものである必要はなく、量子化LSPや反射係数や線形予測残差パワなどのパラメータに変換したものを用いた方が効果的である。
雑音符号帳203は、予め定められた個数の形状の異なる雑音符号ベクトルが格納されており、入力した符号Sを復号して得られる雑音符号帳インデックスによって指定される雑音符号ベクトルを出力する。また、この雑音符号帳203は少なくとも2種類以上のモードを有しており、例えば有声音声部に対応するモードではよりパルス的な雑音符号ベクトルを生成し、無声音声部や定常雑音部等に対応するモードではより雑音的な雑音符号ベクトルを生成するような構造となっている。雑音符号帳203から出力される雑音符号ベクトルは前記2種類以上のモードのうちモード選択器202で選択された1つのモードから生成され、乗算器206で雑音符号帳利得Gsが乗じられた後に加算器208に出力される。
適応符号帳204は、過去に生成した駆動音源信号を逐次更新しながらバッファリングしており、入力した符号Pを復号して得られる適応符号帳インデックス(ピッチ周期(ピッチラグ))を用いて適応符号ベクトルを生成する。適応符号帳204にて生成された適応符号ベクトルは乗算器207で適応符号帳利得Gaが乗じられた後に加算器208に出力される。
ゲイン符号帳205は、適応符号帳利得Gaと雑音符号帳利得Gsのセット(ゲインベクトル)を予め定められた個数だけ格納しており、入力した符号Gを復号して得られるゲイン符号帳インデックスによって指定されるゲインベクトルの適応符号帳利得成分Gaを乗算器207に、雑音符号帳利得成分Gsを乗算器206に夫々出力する。
加算器208は、乗算器206および207から入力される雑音符号ベクトルと適応符号ベクトルの加算を行って駆動音源信号を生成し、合成フィルタ209および適応符号帳204に出力する。
合成フィルタ209は、入力した量子化LPCを用いてLPC合成フィルタを構築する。この合成フィルタに対して加算器208から出力される駆動音源信号を入力としてフィルタ処理を行って合成信号をポストフィルタ210に出力する。
ポストフィルタ210は、合成フィルタ209から入力した合成信号に対して、ピッチ強調、ホルマント強調、スペクトル傾斜補正、利得調整等の音声信号の主観的品質を改善させるための処理を行い、後処理器211に出力する。
後処理器211は、ポストフィルタ210から入力した信号に対して、振幅スペクトルのフレーム間平滑化処理、位相スペクトルのランダマイズ処理等の定常雑音部の主観品質の改善させるための処理を、モード選択器202から入力されるモード情報Mを利用して適応的に行う。例えば有声音声部や無声音声部に対応するモードでは前記平滑化処理やランダマイズ処理はほとんど行わず、定常雑音部等に対応するモードでは前記平滑化処理やランダマイズ処理を適応的に行う。後処理後の信号はディジタル化された復号音声信号等の出力データとして出力される。
なお、本実施の形態においては、モード選択器202から出力されるモード情報Mは、雑音符号帳203のモード切替と後処理器211のモード切替の双方で用いられる構成としたが、どちらか一方のみのモード切替に用いても効果が得られる。この場合、どちらか一方のみがマルチモード処理となる。
次に図4を参照して上記実施の形態における音声復号化方法の処理の流れを示す。本説明においては、音声符号化処理を予め定められた時間長の処理単位(フレーム:時間長にして数十ミリ秒程度)毎に処理を行い、1フレームをさら整数個の短い処理単位(サブフレーム)毎に処理を行う例を示す。
ステップ401において、適応符号帳の内容、合成フィルタメモリ、出力バッファ等の全てのメモリをクリアする。
次に、ステップ402において、符号化データが復号される。具体的には、多重化されている受信信号の分離化やビットストリーム化されている受信信号を量子化LPC係数と適応符号ベクトルと雑音符号ベクトルとゲイン情報とを夫々表現する符号に夫々変換する。
次に、ステップ403において、LPC係数を復号する。LPC係数は、ステップ402にて得られた量子化LPC係数を表現する符号から、実施の形態1に示したLPC係数の量子化方法の逆の手順によって復号される。
次に、ステップ404において、ステップ403にて復号されたLPC係数を用いて合成フィルタが構築される。
次に、ステップ405において、ステップ403にて復号されたLPC係数の静的および動的特徴を用いて、雑音符号帳および後処理のモード選択が行われる。具体的には、量子化LSPの変動や量子化LPC係数から算出される反射係数や予測残差パワ等を用いる。本ステップにおいて選択されたモードに従って雑音符号帳の復号および後処理が行われる。このモードは少なくとも2種類以上あり、例えば有声音声部に対応するモードと無声音声部に対応するモードと定常雑音部等に対応するモードとから成る。
次に、ステップ406において、適応符号ベクトルが復号される。適応符号ベクトルは、適応符号ベクトルを表現する符号から適応符号ベクトルを適応符号帳から切り出す位置を復号してその位置から適応符号ベクトルを切り出すことによって、復号される。
次に、ステップ407において、雑音符号ベクトルが復号される。雑音符号ベクトルは、雑音符号ベクトルを表現する符号から雑音符号帳インデックスを復号してそのインデックスに対応する雑音符号ベクトルを雑音符号帳から取り出すことによって、復号される。雑音符号ベクトルのピッチ周期化等を適用する際は、さらにピッチ周期化等を行った後のものが復号雑音符号ベクトルとなる。また、この雑音符号帳は少なくとも2種類以上のモードを有しており、例えば有声音声部に対応するモードではよりパルス的な雑音符号ベクトルを生成し、無声音声部や定常雑音部等に対応するモードではより雑音的な雑音符号ベクトルを生成するようになっている。
次に、ステップ408において、適応符号帳利得と雑音符号帳利得が復号される。ゲイン情報を表す符号からゲイン符号帳インデックスを復号してこのインデックスで示される適応符号帳利得と雑音符号帳利得の組をゲイン符号帳の中から取り出すことによって、ゲイン情報が復号される。
次に、ステップ409において、駆動音源信号が生成される。駆動音源信号は、ステップ406にて選択された適応符号ベクトルにステップ408にて選択された適応符号帳利得を乗じたベクトルと、ステップ407にて選択された雑音符号ベクトルにステップ408において選択された雑音符号帳利得を乗じたベクトルと、を加算して生成される。
次に、ステップ410において、復号信号が合成される。ステップ409にて生成された駆動音源信号を、ステップ404にて構築された合成フィルタでフィルタリングすることによって、復号信号が合成される。
次に、ステップ411において、復号信号に対してポストフィルタ処理が行われる。ポストフィルタ処理は、ピッチ強調処理やホルマント強調処理やスペクトル傾斜補正処理や利得調整処理等の復号信号特に復号音声信号の主観的品質を改善するための処理から成っている。
次に、ステップ412において、ポストフィルタ処理後の復号信号に対して最終的な後処理が行われる。この後処理は、主に振幅スペクトルの(サブ)フレーム間平滑化処理や位相スペクトルのランダマイズ処理等の復号信号における定常雑音部分の主観的品質を改善するための処理から成っており、ステップ405にて選択されたモードに対応した処理を行う。例えば有声音声部や無声音声部に対応するモードでは前記平滑化処理やランダマイズ処理はほとんど行われず、定常雑音部等に対応するモードでは前記平滑化処理やランダマイズ処理が適応的に行われるようになっている。本ステップで生成される信号が出力データとなる。
次に、ステップ413において、サブフレーム処理のループで用いられるメモリの更新が行われる。具体的には、適応符号帳の更新やポストフィルタ処理に含まれる各フィルタの状態更新等が行われる。
上記ステップ404〜413はサブフレーム単位の処理である。
次に、ステップ414において、フレーム処理のループで用いられるメモリの更新が行われる。具体的には、量子化(復号)LPC係数バッファの更新や出力データバッファの更新等が行われる。
上記ステップ402〜403および414はフレーム単位の処理である。また、フレーム単位の処理は符号化データがなくなるまで繰り返し行われる。
(実施の形態3)
図5は実施の形態1の音声符号化装置または実施の形態2の音声復号化装置を備えた音声信号送信機および受信機を示したブロック図である。図5(a)は送信機、図5(b)は受信機を示す。
図5(a)の音声信号送信機では、音声が音声入力装置501によって電気的アナログ信号に変換され、A/D変換器502に出力される。アナログ音声信号はA/D変換器502によってディジタル音声信号に変換され、音声符号化器503に出力される。音声符号化器503は音声符号化処理を行い、符号化した情報をRF変調器504に出力する。RF変調器は符号化された音声信号の情報を変調・増幅・符号拡散等の電波として送出するための操作を行い、送信アンテナ505に出力する。最後に送信アンテナ505から電波(RF信号)506が送出される。
一方、図5(b)の受信機においては、電波(RF信号)506を受信アンテナ507で受信し、受信信号はRF復調器508に送られる。RF復調器508は符号逆拡散・復調等電波信号を符号化情報に変換するための処理を行い、符号化情報を音声復号化器509に出力する。音声復号化器509は、符号化情報の復号処理を行ってディジタル復号音声信号をD/A変換器510へ出力する。D/A変換器510は音声復号化器509から出力されたディジタル復号音声信号をアナログ復号音声信号に変換して音声出力装置511に出力する。最後に音声出力装置511が電気的アナログ復号音声信号を復号音声に変換して出力する。
上記送信装置および受信装置は携帯電話等の移動通信機器の移動機または基地局装置として利用することが可能である。なお、情報を伝送する媒体は本実施の形態に示したような電波に限らず、光信号などを利用することも可能であり、さらには有線の伝送路を使用することも可能である。
なお、上記実施の形態1に示した音声符号化装置および上記実施の形態2に示した音声復号化装置および上記実施の形態3に示した送信装置および送受信装置は、磁気ディスク、光磁気ディスク、ROMカートリッジ等の記録媒体にソフトウェアとして記録して実現することも可能であり、その記録媒体を使用することにより、このような記録媒体を使用するパーソナルコンピュータ等により音声符号化装置/復号化装置および送信装置/受信装置を実現することができる。
(実施の形態4)
実施の形態4は、上述した実施の形態1、2におけるモード選択器105、202の構成例を示した例である。
図6に実施の形態4にかかるモード選択器の構成を示す。
本実施の形態にかかるモード選択器は、量子化LSPパラメータの動的特徴を抽出する動的特徴抽出部601と、量子化LSPパラメータの静的特徴を抽出する第1、第2の静的特徴抽出部602、603とを備える。
動的特徴抽出部601は、AR型平滑化手段604に量子化LSPパラメータを入力して平滑化処理を行う。AR型平滑化手段604では、処理単位時間毎に入力される各次の量子化LSPパラメータを時系列データとして(1)式に示す平滑化処理を行う。
Ls[i]=(1-α)×Ls[i]+α×L[i], i=1,2,…,M、 0<α<1 …(1)
Ls[i]:i次の平滑化量子化LSPパラメータ
L[i]:i次の量子化LSPパラメータ
α:平滑化係数
M:LSP分析次数
なお、(1)式において、αの値は0.7程度に設定し、それほど強い平滑化にならないようにする。上記(1)式で求めた平滑化した量子化LSPパラメータは遅延手段605を経由して加算器606へ入力されるものと直接加算器606へ入力されるものとに分岐される。
遅延手段605は、入力した平滑化した量子化LSPパラメータを1処理単位時間だけ遅延させて加算器606に出力する。
加算器606は、現在の処理単位時間における平滑化された量子化LSPパラメータと1つ前の処理単位時間における平滑化された量子化LSPパラメータとが入力される。この加算器606において、現在の処理単位時間における平滑化量子化LSPパラメータと1つ前の処理単位時間における平滑化量子化LSPパラメータとの差を算出する。この差はLSPパラメータの各次数毎に算出される。加算器606による算出結果は2乗和算出手段607に出力する。
2乗和算出手段607は、現在の処理単位時間における平滑化された量子化LSPパラメータと1つ前の処理単位時間における平滑化された量子化LSPパラメータとの次数毎の差の2乗和を計算する。
動的特徴抽出部601では、AR型平滑化手段604と並列に遅延手段608にも量子化LSPパラメータを入力している。遅延手段608では、1処理単位時間だけ遅延させて、スイッチ609を介してAR型平均値算出手段611に出力する。
スイッチ609は、遅延手段610から出力されるモード情報が雑音モードであった場合に閉じて、遅延手段608から出力される量子化LSPパラメータをAR型平均値算出手段611へ入力するように動作する。
遅延手段610は、モード判定手段621から出力されるモード情報を入力し、1処理単位時間だけ遅延させて、スイッチ609へ出力する。
AR型平均値算出手段611は、AR型平滑化手段604と同様に(1)式に基づいて雑音区間における平均的LSPパラメータを算出し、加算器612に出力する。ただし、(1)式におけるαの値は、0.05程度とし、極めて強い平滑化処理を行うことによって、平均的なLSPパラメータを算出する。
加算器612は、現在の処理単位時間における量子化LSPパラメータと、AR型平均値算出手段611によって算出された雑音区間における平均的量子化LSPパラメータとの差を各次数毎に算出し、2乗和算出手段613に出力する。
2乗和算出手段613は、加算器612から出力された量子化LSPパラメータの差分情報を入力し、各次数の2乗和を算出して、音声区間検出手段619に出力する。
以上の604から613までの要素によって、量子化LSPパラメータの動的特徴抽出部601が構成される。
第1の静的特徴抽出部602は、線形予測残差パワ算出手段614において量子化LSPパラメータから線形予測残差パワを算出する。また、隣接LSP間隔算出手段615において、(2)式に示すように量子化LSPパラメータの隣接する次数毎に間隔を算出する。
Ld[i]=L[i+1]-L[i], i=1,2,…M-1 …(2)
L[i]:i次の量子化LSPパラメータ
隣接LSP間隔算出手段615の算出値は分散値算出手段616へ与えられる。分散値算出手段616は、隣接LSP間隔算出手段615から出力された量子化LSPパラメータ間隔の分散値をする。分散値を算出する際、全てのLSPパラメータ間隔データを用いずに、低域端(Ld[1])のデータを除くことによって、最低域以外の部分に存在するスペクトルの山谷の特徴を反映することができる。低域が持ち上がっているような特性をもつ定常雑音に対して、ハイパスフィルタを通した場合、フィルタの遮断周波数付近にスペクトルの山が常にできるので、この様なスペクトルの山の情報を取り除く効果がある。
以上の614、615、616の要素によって、量子化LSPパラメータの第1の静的特徴抽出部602が構成される。
また、第2の静的特徴抽出部603では、反射係数算出手段617が量子化LSPパラメータを反射係数に変換して、有声/無声判定手段620に出力する。これとともに線形予測残差パワ算出手段618が、量子化LSPパラメータから線形予測残差パワを算出して、有声/無声判定手段620に出力する。
なお、線形予測残差パワ算出手段618は、線形予測残差パワ算出手段614と同じものなので、614と618は共用させることが可能である。
以上の617と618の要素によって、量子化LSPパラメータの第2の静的特徴抽出部603が構成される。
動的特徴抽出部601及び第1の静的特徴抽出部602の出力は音声区間検出手段619へ与えられる。音声区間検出手段619は、2乗和算出手段607から平滑化量子化LSPパラメータの変動量を入力し、2乗和算出手段613から雑音区間の平均的量子化LSPパラメータと現在の量子化LSPパラメータとの距離を入力し、線形予測残差パワ算出手段614から量子化線形予測残差パワを入力し、分散値算出手段616から隣接LSP間隔データの分散情報を入力する。そして、これらの情報を用いて、現在の処理単位時間における入力信号(または復号信号)が音声区間であるか否かの判定を行い、判定結果をモード判定手段621に出力する。より具体的な音声区間か否かの判定方法は、図8を用いて後述する。
一方、第2の静的特徴抽出部603の出力は有声/無声判定手段620へ与えられる。有声/無声判定手段620は、反射係数算出手段617から入力した反射係数と、線形予測残差パワ算出手段618から入力した量子化線形予測残差パワとをそれぞれ入力する。そして、これらの情報を用いて、現在の処理単位時間における入力信号(または復号信号)が有声区間であるか無声区間であるかの判定を行い、判定結果をモード判定手段621に出力する。より具体的な有音/無音判定方法は、図9を用いて後述する。
モード判定手段621は、音声区間検出手段619から出力される判定結果と、有声/無声判定手段620から出力される判定結果とをそれぞれ入力し、これらの情報を用いて現在の処理単位時間における入力信号(または復号信号)のモードを決定して出力する。より具体的なモードの分類方法は図10を用いて後述する。
なお、本実施の形態においては、平滑化手段や平均値算出手段にAR型のものを用いたが、それ以外の方法を用いて平滑化や平均値算出を行うことも可能である。
次に、図8を参照して、上記実施の形態における音声区間判定方法の詳細について説明する。
まず、ステップ801において、第1の動的パラメータ(Para1)を算出する。第1の動的パラメータの具体的内容は、処理単位時間毎の量子化LSPパラメータの変動量であり、
(3)式に示されるものである。
次に、ステップ802において、第1の動的パラメータが予め定めてある閾値Th1より大きいかどうかをチェックする。閾値Th1を越えている場合は、量子化LSPパラメータの変動量が大きいので、音声区間であると判定する。一方、閾値Th1以下の場合は、量子化LSPパラメータの変動量が小さいので、ステップ803に進み、さらに別のパラメータを用いた判定処理のステップに進んでゆく。
ステップ802において、第1の動的パラメータが閾値Th1以下の場合は、ステップ803に進んで、過去にどれだけ定常雑音区間と判定されたかを示すカウンターの数をチェックする。カウンターは初期値が0で、本モード判定方法によって定常雑音区間であると判定された処理単位時間毎に1ずつインクリメントされる。ステップ803において、カウンターの数が、予め設定されている閾値ThC以下の場合は、ステップ804に進み、静的パラメータを用いて音声区間か否かの判定を行う。一方、閾値ThCを越えている場合は、ステップ806に進み、第2の動的パラメータを用いて音声区間か否かの判定を行う。
ステップ804では2種類のパラメータを算出する。一つは量子化LSPパラメータから算出される線形予測残差パワであり(Para3)、もう一つは量子化LSPパラメータの隣接次数の差分情報の分散である(Para4)。線形予測残差パワは、量子化LSPパラメータを線形予測係数に変換し、Levinson-Durbinのアルゴリズムにある関係式を用いることにより、求めることができる。線形予測残差パワは有声部より無声部の方が大きくなる傾向が知られているので、有声/無声の判定基準として利用できる。量子化LSPパラメータの隣接次数の差分情報は(2)式に示したもので、これらのデータの分散を求める。ただし、雑音の種類や帯域制限のかけかたによっては、低域にスペクトルの山(ピーク)が存在するので、低域端の隣接次数の差分情報((2)式において、i=1)は用いずに、(2)式において、i=2からM−1(Mは分析次数)までのデータを用いて分散を求める方が良い。音声信号においては、電話帯域(200Hz〜3.4kHz)内に3つ程度のホルマントを持つため、LSPの間隔が狭い部分と広い部分がいくつかあり、間隔のデータの分散が大きくなる傾向がある。一方、定常ノイズでは、ホルマント構造を持たないため、LSPの間隔は比較的等間隔であることが多く、前記分散は小さくなる傾向がある。この性質を利用して、音声区間か否かの判定を行うことが可能である。ただし、前述のように雑音の種類等によっては、低域にスペクトルの山(ピーク)をもつ場合があり、この様な場合は最も低域側のLSP間隔が狭くなるので、全ての隣接LSP差分データを用いて分散を求めると、ホルマント構造の有無による差が小さくなり、判定精度が低くなる。したがって、低域端の隣接LSP差分情報を除いて分散を求めることによって、この様な精度劣化を回避する。ただし、この様な静的パラメータは、動的パラメータに比べると判定能力が低いので、補助的な情報として用いるのが良い。ステップ804にて算出された2種類のパラメータはステップ805で用いられる。
次に、ステップ805において、ステップ804にて算出された2種類のパラメータを用いた閾値処理が行われる。具体的には線形予測残差パワ(Para3)が閾値Th3より小さく、かつ、隣接LSP間隔データの分散(Para4)が閾値Th4より大きい場合に、音声区間と判定する。それ以外の場合は、定常雑音区間(非音声区間)と判定する。定常雑音区間と判定された場合は、カウンターの値を1増やす。
ステップ806においては、第2の動的パラメータ(Para2)が算出される。第2の動的パラメータは過去の定常雑音区間における平均的な量子化LSPパラメータと現在の処理単位時間における量子化LSPパラメータとの類似度を示すパラメータであり、具体的には(4)式に示したように、前記2種類の量子化LSPパラメータを用いて各次数毎に差分値を求め、2乗和を求めたものである。求められた第2の動的パラメータは、ステップ807にて閾値処理に用いられる。
次に、ステップ807において、第2の動的パラメータが閾値Th2を越えているかどうかの判定が行われる。閾値Th2を越えていれば、過去の定常雑音区間における平均的な量子化LSPパラメータとの類似度が低いので、音声区間と判定し、閾値Th2以下であれば、過去の定常雑音区間における平均的な量子化LSPパラメータとの類似度が高いので、定常雑音区間と判定する。定常雑音区間と判定された場合は、カウンターの値を1増やす。
次に、図9を参照して上記実施の形態における有声無声区間判定方法の詳細について説明する。
まず、ステップ901において、現在の処理単位時間における量子化LSPパラメータから1次の反射係数を算出する。反射係数は、LSPパラメータを線形予測係数に変換して算出される。
次に、ステップ902において、前記反射係数が第1の閾値Th1を越えているかどうかの判定が行われる。閾値Th1を越えていれば、現在の処理単位時間は無声区間であると判定して有声無声判定処理を終了し、閾値Th1以下であれば、さらに有声無声判定の処理を続ける。
ステップ902において無声と判定されなかった場合は、ステップ903において、前記反射係数が第2の閾値Th2を越えているかどうかの判定が行われる。閾値Th2を越えていれば、ステップ905に進み、閾値Th2以下であれば、ステップ904に進む。
ステップ903において、前記反射係数が第2の閾値Th2以下だった場合は、ステップ904において、前記反射係数が第3の閾値Th3を越えているかどうかの判定が行われる。閾値Th3を越えていれば、ステップ907に進み、閾値Th3以下であれば、有声区間と判定して有声無声判定処理を終了する。
ステップ903において、前記反射係数が第2の閾値Th2を越えた場合は、ステップ905において、線形予測残差パワが算出される。線形予測残差パワは、量子化LSPを線形予測係数に変換してから算出される。
ステップ905に続いて、ステップ906において、前記線形予測残差パワが閾値Th4を越えているかどうかの判定が行われる。閾値Th4を越えていれば、無声区間と判定して有声無声判定処理を終了し、閾値Th4以下であれば、有声区間と判定して有声無声判定処理を終了する。
ステップ904において、前記反射係数が第3の閾値Th3を越えた場合は、ステップ907において、線形予測残差パワが算出される。
ステップ907に続いて、ステップ908において、前記線形予測残差パワが閾値Th5を越えているかどうかの判定が行われる。閾値Th5を越えていれば、無声区間と判定して有声無声判定処理を終了し、閾値Th5以下であれば、有声区間と判定して有声無声判定処理を終了する。
次に図10を参照して、モード判定手段621に用いられる、モード判定方法について説明する。
まず、ステップ1001において、音声区間検出結果が入力される。本ステップは音声区間検出処理を行うブロックそのものであっても良い。
次に、ステップ1002において、音声区間であるか否かの判定結果に基づいて定常雑音モードと判定するか否かが決定される。音声区間である場合は、ステップ1003に進み、音声区間でない(定常雑音区間である)場合には、定常雑音モードであるというモード判定結果を出力して、モード判定処理を終了する。
ステップ1002において、定常雑音区間モードではないと判定された場合は、続いてステップ1003において、有声無声判定結果の入力が行われる。本ステップは有声無声判定処理を行うブロックそのものであっても良い。
ステップ1003に続いて、ステップ1004において、有声無声判定結果に基づいて有声区間モードであるか、無声区間モードであるか、のモード判定が行われる。有声区間である場合には、有声区間モードであるというモード判定結果を出力してモード判定処理を終了し、無声区間である場合には、無声区間モードであるというモード判定結果を出力してモード判定処理を終了する。以上のように、音声区間検出結果と有声無声判定結果とを用いて、現在の処理単位ブロックにおける入力信号(または復号信号)のモードを3つのモードに分類する。
(実施の形態5)
図7に本発明の実施の形態5にかかる後処理器の構成を示す。本後処理器は、実施の形態4に示したモード判定器と組合わせて、実施の形態2に示した音声信号復号装置にて使用するものである。同図に示す後処理器は、モード切替スイッチ705、708、707、711、振幅スペクトル平滑化手段706、位相スペクトルランダム化手段709、710、閾値設定手段703、716をそれぞれ備える。
重み付け合成フィルタ701は、前記音声復号装置のLPC復号器201から出力される復号LPCを入力して聴覚重み付け合成フィルタを構築し、を前記音声復号装置の合成フィルタ209またはポストフィルタ210から出力される合成音声信号に対して重み付けフィルタ処理を行い、FFT処理手段702に出力する。
FFT処理手段702は、重み付け合成フィルタ701から出力された重み付け処理後の復号信号のFFT処理を行い、振幅スペクトルWSAiを第1の閾値設定手段703と第1の振幅スペクトル平滑化手段706と第1の位相スペクトルランダム化手段709とに、それぞれ出力する。
第1の閾値設定手段703は、FFT処理手段702にて算出された振幅スペクトルの平均値を全周波数成分を用いて算出し、この平均値を基準として閾値Th1を、第1の振幅スペクトル平滑化手段706と第1の位相スペクトルランダム化手段709とに、それぞれ出力する。
FFT処理手段704は、前記音声復号装置の合成フィルタ209またはポストフィルタ210から出力される合成音声信号のFFT処理を行い、振幅スペクトルを、モード切換スイッチ705、712、加算器715、第2の位相スペクトルランダム化手段710に、位相スペクトルを、モード切換スイッチ708に、それぞれ出力する。
モード切替スイッチ705は、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間と判定した場合は、モード切換スイッチ707に接続し、定常雑音区間と判定した場合は、第1の振幅スペクトル平滑化手段706に接続する。
第1の振幅スペクトル平滑化手段706は、モード切換スイッチ705を介して、FFT処理手段704から振幅スペクトルSAiを入力し、別途入力した第1の閾値Th1と重み付け振幅スペクトルWSAiとによって決定される周波数成分に対して平滑化処理を行い、モード切換スイッチ707に出力する。平滑化する周波数成分の決定方法は、重み付け振幅スペクトルWSAiが第1の閾値Th1以下であるかどうかによって、決定される。即ち、WSAiがTh1以下である周波数成分iに対してのみ平滑化処理が行われる。この平滑化処理によって、定常雑音区間における、符号化歪みに起因する振幅スペクトルの時間的不連続性が緩和される。この平滑化処理を、例えば(1)式の様なAR型で行った場合の係数αは、FFT点数128点、処理単位時間10msの場合で、0.1程度に設定できる。
モード切換スイッチ707は、モード切換スイッチ705と同様にして、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間と判定した場合は、モード切換スイッチ705に接続し、定常雑音区間と判定した場合は、第1の振幅スペクトル平滑化手段706に接続する。前記判定結果は、モード切換スイッチ705の判定結果と同一である。モード切換スイッチ707の他端はIFFT処理手段720に接続されている。
モード切換スイッチ708は、モード切換スイッチ705と連動して切り替わるスイッチであり、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間と判定した場合は、第2の位相スペクトルランダム化手段710に接続し、定常雑音区間と判定した場合は、第1の位相スペクトルランダム化手段709に接続する。前記判定結果は、モード切換スイッチ705の判定結果と同一である。即ち、モード切換スイッチ705が第1の振幅スペクトル平滑化手段706に接続されている場合は、モード切換スイッチ708は第1の位相スペクトルランダム化手段709に接続されており、モード切換スイッチ705がモード切換スイッチ707に接続されている場合は、モード切換スイッチ708は第2の位相スペクトルランダム化手段710に接続されている。
第1の位相ランダム化手段709は、モード切換スイッチ708を介して、FFT処理手段704から出力される位相スペクトルSPiを入力し、別途入力した第1の閾値Th1と重み付け振幅スペクトルWSAiとによって決定される周波数成分に対してランダム化処理を行い、モード切換スイッチ711に出力する。ランダム化する周波数成分の決定方法は、前記第1の振幅スペクトルの平滑化手段706において平滑化を行う周波数成分を決定する方法と同一である。即ち、WSAiがTh1以下である周波数成分iに対してのみ位相スペクトルSPiのランダム化処理が行われる。
第2の位相スペクトルランダム化手段710は、モード切換スイッチ708を介して、FFT処理手段704から出力される位相スペクトルSPiを入力し、別途入力した第2の閾値Th2iと振幅スペクトルSAiとによって決定される周波数成分に対してランダム化処理を行い、モード切換スイッチ711に出力する。ランダム化する周波数成分の決定方法は、前記第1の位相スペクトルランダム化手段709と同様である。即ち、SAiがTh2i以下である周波数成分iに対してのみ位相スペクトルSPiのランダム化処理が行われる。
モード切換スイッチ711は、モード切換スイッチ707と連動しており、モード切換スイッチ707と同様にして、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間と判定した場合は、第2の位相スペクトルランダム化手段710に接続し、定常雑音区間と判定した場合は、第1の位相スペクトルランダム化手段709に接続する。前記判定結果は、モード切換スイッチ708の判定結果と同一である。モード切換スイッチ711の他端はIFFT処理手段720に接続されている。
モード切換スイッチ712は、モード切換スイッチ705と同様にして、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間でない(定常雑音区間である)と判定した場合は、スイッチを接続して、第2の振幅スペクトル平滑化手段713に、FFT処理手段704から出力される振幅スペクトルSAiを出力する。音声区間と判定した場合は、モード切換スイッチ712は、開放され、第2の振幅スペクトル平滑化手段713に、振幅スペクトルSAiは出力されない。
第2の振幅スペクトル平滑化手段713は、モード切替スイッチ712を介して、FFT処理手段704から出力される振幅スペクトルSAiを入力し、全周波数帯域成分について平滑化処理を行う。この平滑化処理によって、定常雑音区間における平均的な振幅スペクトルが得られる。この平滑化処理は、第1の振幅スペクトル平滑化手段706で行われる処理と同様である。また、モード切換スイッチ712が開放されている時は、本手段において処理は行われず、最後に処理が行われたときの定常雑音区間の平滑化振幅スペクトルSSAiが出力される。第2の振幅スペクトル平滑化処理手段713によって平滑化された振幅スペクトルSSAiは遅延手段714、第2の閾値設定手段716、モード切換スイッチ718、にそれぞれ出力される。
遅延手段714は、第2の振幅スペクトル平滑化手段713から出力されるSSAiを入力し、1処理単位時間だけ遅延させて、加算器715に出力する。
加算器715は、1処理単位時間前の定常雑音区間平滑化振幅スペクトルSSAiと現在の処理単位時間における振幅スペクトルSAiとの距離Diffを算出し、モード切換スイッチ705、707、708、711、712、718、719、にそれぞれ出力する。
第2の閾値設定手段716は、第2の振幅スペクトル平滑化手段713から出力される、定常雑音区間平滑化振幅スペクトルSSAiを基準として閾値Th2iを設定して、第2の位相スペクトルランダム化手段710に出力する。
ランダム位相スペクトル生成手段717は、ランダムに生成した位相スペクトルを、モード切換スイッチ719に出力する。
モード切換スイッチ718は、モード切換スイッチ712と同様にして、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間であると判定した場合は、スイッチを接続して、第2の振幅スペクトル平滑化手段713の出力を、IFFT処理手段720に出力する。音声区間でない(定常雑音区間である)と判定した場合は、モード切換スイッチ718は、開放され、第2の振幅スペクトル平滑化手段713の出力は、IFFT処理手段720に出力されない。
モード切換スイッチ719は、モード切換スイッチ718と連動して切り替わり、モード切換スイッチ718と同様にして、前記音声復号装置のモード選択器202から出力されるモード情報(Mode)と、前記加算器715から出力される差分情報(Diff)と、を入力して、現在の処理単位時間における復号信号が音声区間か定常雑音区間かの判定を行い、音声区間であると判定した場合は、スイッチを接続して、ランダム位相生成手段717の出力を、IFFT処理手段720に出力する。音声区間でない(定常雑音区間である)と判定した場合は、モード切換スイッチ719は、開放され、ランダム位相生成手段717の出力は、IFFT処理手段720に出力されない。
IFFT処理手段720は、モード切換スイッチ707から出力される振幅スペクトルと、モード切換スイッチ711から出力される位相スペクトルと、モード切換スイッチ718から出力される振幅スペクトルと、モード切換スイッチ719から出力される位相スペクトルと、を夫々入力して、逆FFT処理を行い、後処理後の信号を出力する。モード切換スイッチ718、719が開放されている場合は、モード切換スイッチ707から入力される振幅スペクトルと、モード切換スイッチ711から入力される位相スペクトルとを、FFTの実部スペクトルと虚部スペクトルとに変換し、逆FFT処理を行い、結果の実部を時間信号として出力する。一方、モード切換スイッチ718、717が接続されている場合は、モード切換スイッチ707から入力される振幅スペクトルと、モード切換スイッチ711から入力される位相スペクトルとを、第1の実部スペクトルと第1の虚部スペクトルに変換したものに加えて、モード切換スイッチ718から入力される振幅スペクトルと、モード切換スイッチ719から入力される位相スペクトルとを、第2の実部スペクトルと第2の虚部スペクトルとに変換したものを加算して、逆FFT処理を行う。即ち、第1の実部スペクトルと第2の実部スペクトルとを加算したものを第3の実部スペクトルとし、第1の虚部スペクトルと第2の虚部スペクトルとを加算したものを第3の虚部スペクトルとすると、第3の実部スペクトルと第3の虚部スペクトルとを用いて逆FFT処理を行う。前記スペクトルの加算時には、第2の実部スペクトルおよび第2の虚部スペクトルは、定数倍あるいは適応的に制御される変数によって減衰される。例えば、前記スペクトルの加算において、第2の実部スペクトルは0.25倍された後に、第1の実部スペクトルと加算され、第2の虚部スペクトルは0.25倍された後に、第1の虚部スペクトルと加算されて、第3の実部スペクトルおよび第3の虚部スペクトルが夫々得られる。
次に、図11及び図12を用いて前記後処理方法について説明する。図11は本実施の形態における後処理方法の具体的処理を示した流れ図を示している。
まず、ステップ1101において、聴覚重み付けをした入力信号(復号音声信号)のFFT対数振幅スペクトル(WSAi)を計算する。
次に、ステップ1102において、第1の閾値Th1を計算する。Th1は、WSAiの平均値に定数k1を加えたものである。k1の値は経験的に決定し、例えば、常用対数領域で0.4程度である。FFT点数をNとし、FFT振幅スペクトルをWSAi(i=1,2,...N)とすると、WSAiはi=N/2とi=N/2+1を境に対称となるので、N/2本のWSAiの平均値を計算すれば、WSAiの平均値を求められる。
次に、ステップ1103において、聴覚重み付けをしない入力信号(復号音声信号)のFFT対数振幅スペクトル(SAi)とFFT位相スペクトル(SPi)を計算する。
次に、ステップ1104において、スペクトル変動(Diff)を計算する。スペクトル変動は、過去に定常雑音区間と判定された区間における平均的なFFT対数振幅スペクトル(SSAi)を現在のFFT対数振幅スペクトル(SAi)から減じて、得られた残差スペクトルの総和である。本ステップにおいて求められるスペクトル変動(Diff)は、現在のパワが定常雑音区間の平均的なパワと比較して大きくなっていないかどうかを判定するためのパラメータで、大きくなっていれば、定常雑音成分とは異なる信号が存在する区間であり、定常雑音区間ではないと判断できる。
次に、ステップ1105において、過去に定常雑音区間と判定された回数を示すカウンタをチェックする。カウンタの数が、一定値以上、即ち過去にある程度安定して定常雑音区間であると判定されている場合は、ステップ1107に進み、そうでない場合、即ち過去に定常雑音区間であると判定されたことがあまりない場合は、ステップ1106に進む。ステップ1106とステップ1107との違いは、スペクトル変動(Diff)を判定基準に用いるか用いないかの違いである。スペクトル変動(Diff)は過去に定常雑音区間と判定された区間における平均的なFFT対数振幅スペクトル(SSAi)を用いて算出される。この様な平均的なFFT対数振幅スペクトル(SSAi)を求めるには、過去にある程度十分な時間長の定常的雑音区間が必要となるため、ステップ1105を設けて、過去に十分な時間長の定常的雑音区間がない場合は、雑音区間の平均的FFT対数振幅スペクトル(SSAi)が十分平均化されていないと考えられるため、スペクトル変動(Diff)を用いないステップ1106に進むようにしている。カウンタの初期値は0である。
次に、ステップ1106またはステップ1107において、定常雑音区間か否かの判定が行われる。ステップ1106では、音声復号装置においてすでに決定されている音源モードが定常雑音区間モードである場合を定常雑音区間と判定し、ステップ1107では、音声復号装置において既に決定されている音源モードが定常雑音区間モードでかつ、ステップ1104で計算された振幅スペクトル変動(Diff)が閾値k3以下である場合を定常雑音区間と判定する。ステップ1106またはステップ1107において、定常雑音区間であると判定された場合は、ステップ1108へ進み、定常雑音区間でない、即ち音声区間であると判定された場合は、ステップ1113へ進む。
定常雑音区間であると判定された場合は、次に、ステップ1108において、定常雑音区間の平均的FFT対数スペクトル(SSAi)を求めるための平滑化処理が行われる。ステップ1108の式において、βは0.0〜1.0の範囲の平滑化の強さを示す定数で、FFT点数128点、処理単位時間10ms(8kHzサンプリングで80点)の場合には、β=0.1程度で良い。この平滑化処理は、全ての対数振幅スペクトル(SAi,i=1,…N,NはFFT点数)について行われる。
次に、ステップ1109において、定常雑音区間の振幅スペクトルの変動を滑らかにするためのFFT対数振幅スペクトルの平滑化処理が行われる。この平滑化処理は、ステップ1108の平滑化処理と同様だが、全ての対数振幅スペクトル(SAi)について行うのではなく、聴覚重み付け対数振幅スペクトル(WSAi)が閾値Th1より小さい周波数成分iについてのみ行われる。ステップ1109の式におけるγは、ステップ1108におけるβと同様であり、同じ値でも良い。ステップ1109にて、部分的に平滑化された対数振幅スペクトルSSA2iが得られる。
次に、ステップ1110おいて、FFT位相スペクトルのランダム化処理が行われる。このランダム化処理は、ステップ1109の平滑化処理と同様に、周波数選択的に行われる。即ち、ステップ1109と同様に、聴覚重み付け対数振幅スペクトル(WSAi)が閾値Th1より小さい周波数成分iについてのみ行われる。ここで、Th1はステップ1109と同じ値で良いが、より良い主観品質が得られるように調整された異なる値に設定しても良い。また、ステップ1110におけるrandom(i)は乱数的に生成した−2π〜+2πの範囲の数値である。random(i)の生成は、毎回新たに乱数を生成しても良いが、演算量を節約する場合は、予め生成した乱数をテーブルに保持しておき、処理単位時間毎に、テーブルの内容を巡回させて利用することも可能である。この場合、テーブルの内容をそのまま利用する場合と、テーブルの内容をオリジナルのFFT位相スペクトルに加算して用いる場合とが考えられる。
次に、ステップ1111において、FFT対数振幅スペクトルとFFT位相スペクトルとから、複素FFTスペクトルを生成する。実部はFFT対数振幅スペクトルSSA2iを対数領域から線形領域に戻した後に、位相スペクトルRSP2iの余弦を乗じて求められる。虚部はFFT対数振幅スペクトルSSA2iを対数領域から線形領域に戻した後に、位相スペクトルRSP2iの正弦を乗じて求められる。
次に、ステップ1112において、定常雑音区間と判定された区間のカウンタを1増やす。
一方、ステップ1106または1107において、音声区間(定常雑音区間ではない)と判定された場合は、次に、ステップ1113において、FFT対数振幅スペクトルSAiが平滑化対数スペクトルSSA2iにコピーされる。即ち、対数振幅スペクトルの平滑化処理は行わない。
次に、ステップ1114において、FFT位相スペクトルのランダム化処理が行われる。このランダム化処理は、ステップ1110の場合と同様にして、周波数選択的に行われる。ただし、周波数選択に用いる閾値はTh1ではなく、過去にステップ1108で求められているSSAiに定数k4を加えたものを用いる。この閾値は図7における第2の閾値Th2iに相当する。即ち、定常雑音区間における平均的な振幅スペクトルより小さい振幅スペクトルになっている周波数成分のみ、位相スペクトルのランダム化を行う。
次に、ステップ1115において、FFT対数振幅スペクトルとFFT位相スペクトルとから、複素FFTスペクトルを生成する。実部はFFT対数振幅スペクトルSSA2iを対数領域から線形領域に戻した後に、位相スペクトルRSP2iの余弦を乗じたものと、FFT対数振幅スペクトルSSAiを対数領域から線形領域に戻した後に、位相スペクトルrandom2(i)の余弦を乗じたものに、定数k5を乗じたものと、を加算して求められる。虚部はFFT対数振幅スペクトルSSA2iを対数領域から線形領域に戻した後に、位相スペクトルRSP2iの正弦を乗じたものと、FFT対数振幅スペクトルSSAiを対数領域から線形領域に戻した後に、位相スペクトルrandom2(i)の正弦を乗じたものに、定数k5を乗じたものと、を加算して求められる。定数k5は0.0〜1.0の範囲で、より具体的には、0.25程度に設定される。なお、k5は適応的に制御された変数でも良い。k5倍した、平均的な定常雑音を重畳することによって、音声区間における背景定常雑音の主観的品質が向上できる。random2(i)は、random(i)と同様の乱数である。
次に、ステップ1116において、ステップ1111または1115にて生成された複素FFTスペクトル(Re(S2)i、Im(S2)i)の逆FFTを行い、複素数(Re(s2)i、Im(s2)i)を得る。
最後に、ステップ1117において、逆FFTによって得られた複素数の実部Re(s2)iを出力信号として出力する。