米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 楽器;音響 -> ソニー株式会社

発明の名称 データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2002−222000(P2002−222000A)
公開日 平成14年8月9日(2002.8.9)
出願番号 特願2001−16870(P2001−16870)
出願日 平成13年1月25日(2001.1.25)
代理人 【識別番号】100082131
【弁理士】
【氏名又は名称】稲本 義雄
【テーマコード(参考)】
5D045
5J064
【Fターム(参考)】
5D045 CA01 
5J064 AA01 BB03 BC14 BC28 BD03
発明者 近藤 哲二郎 / 木村 裕人 / 渡辺 勉 / 服部 正明
要約 目的


構成
特許請求の範囲
【請求項1】 所定のデータと、周期を表す周期情報とを処理するデータ処理装置であって、前記所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成手段と、前記タップを用いて、前記注目データについて、所定の処理を行う処理手段とを備えることを特徴とするデータ処理装置。
【請求項2】 学習を行うことにより求められたタップ係数を取得するタップ係数取得手段をさらに備え、前記タップ生成手段は、前記タップ係数との所定の予測演算を行う予測タップを生成し、前記処理手段は、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより、前記学習において教師として用いられた教師データに対応する予測値を求めることを特徴とする請求項1に記載のデータ処理装置。
【請求項3】 前記処理手段は、前記予測タップとタップ係数とを用いて、線形1次予測演算を行うことにより、前記予測値を求めることを特徴とする請求項2に記載のデータ処理装置。
【請求項4】 前記タップ生成手段は、前記注目データをクラス分けするクラス分類を行うのに用いるクラスタップを生成し、前記処理手段は、前記クラスタップに基づき、前記注目データについて、クラス分類を行うことを特徴とする請求項1に記載のデータ処理装置。
【請求項5】 前記タップ生成手段は、学習を行うことにより求められたタップ係数との所定の予測演算を行う予測タップを生成するとともに、前記注目データをクラス分けするクラス分類を行うのに用いられるクラスタップを生成し、前記処理手段は、前記クラスタップに基づき、前記注目データについて、クラス分類を行い、そのクラス分類の結果得られるクラスに対応する前記タップ係数と、前記予測タップとを用いて、所定の予測演算を行うことにより、前記学習において教師として用いられた教師データに対応する予測値を求めることを特徴とする請求項1に記載のデータ処理装置。
【請求項6】 前記所定のデータと周期情報は、音声を符号化した符号化データから得られるものであることを特徴とする請求項1に記載のデータ処理装置。
【請求項7】 前記符号化データは、音声を、CELP(Code Excited Liner Prediction coding)方式によって符号化したものであることを特徴とする請求項6に記載のデータ処理装置。
【請求項8】 前記周期情報は、CELP方式で規定されている長期予測ラグであることを特徴とする請求項7に記載のデータ処理装置。
【請求項9】 前記所定のデータは、前記符号化データを復号した復号音声データであることを特徴とする請求項6に記載のデータ処理装置。
【請求項10】 前記所定のデータは、前記符号化データを音声データに復号するのに用いられる残差信号であることを特徴とする請求項6に記載のデータ処理装置。
【請求項11】 前記所定のデータは、時系列のデータであり、前記タップ生成手段は、前記注目データから、前記周期情報に対応する時間だけ離れた位置の前記所定のデータを抽出することにより、前記タップを生成することを特徴とする請求項1に記載のデータ処理装置。
【請求項12】 前記タップ生成手段は、前記注目データから、前記周期情報に対応する時間だけ過去方向もしくは未来方向に離れた位置の前記所定のデータのうちの一方または両方を抽出することにより、前記タップを生成することを特徴とする請求項11に記載のデータ処理装置。
【請求項13】 前記所定のデータの波形の推移を判定する判定手段をさらに備え、前記タップ生成手段は、前記判定手段による判定結果に基づいて、前記周期情報に対応する時間だけ過去方向もしくは未来方向に離れた位置の前記所定のデータのうちの一方または両方を抽出することを特徴とする請求項12に記載のデータ処理装置。
【請求項14】 前記判定手段は、前記所定のデータのパワーに基づいて、その波形の推移を判定することを特徴とする請求項13に記載のデータ処理装置。
【請求項15】 所定のデータと、周期を表す周期情報とを処理するデータ処理方法であって、前記所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、前記注目データについて、所定の処理を行う処理ステップとを備えることを特徴とするデータ処理方法。
【請求項16】 所定のデータと、周期を表す周期情報とを、コンピュータに処理させるプログラムであって、前記所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、前記注目データについて、所定の処理を行う処理ステップとを備えることを特徴とするプログラム。
【請求項17】 所定のデータと、周期を表す周期情報とを、コンピュータに処理させるプログラムが記録されている記録媒体であって、前記所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、前記注目データについて、所定の処理を行う処理ステップとを備えるプログラムが記録されていることを特徴とする記録媒体。
【請求項18】 所定のデータと、周期を表す周期情報とを処理するのに用いられる所定のタップ係数を学習するデータ処理装置であって、学習の教師となる教師データから、前記所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成手段と、前記生徒データとしての所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、前記教師データを予測するのに用いる予測タップを生成する予測タップ生成手段と、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習手段とを備えることを特徴とするデータ処理装置。
【請求項19】 前記学習手段は、前記予測タップとタップ係数とを用いて、線形一次予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことを特徴とする請求項18に記載のデータ処理装置。
【請求項20】 前記生徒データとしての所定のデータから、前記注目データをクラス分けするクラス分類を行うのに用いるクラスタップとするものを生成するクラスタップ生成手段と、前記クラスタップに基づき、前記注目データについて、クラス分類を行うクラス分類手段とをさらに備え、前記学習手段は、前記クラス分類手段によるクラス分類の結果得られるクラスごとに、前記タップ係数を求めることを特徴とする請求項18に記載のデータ処理装置。
【請求項21】 前記クラスタップ生成手段は、前記注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、前記クラスタップを生成することを特徴とする請求項20に記載のデータ処理装置。
【請求項22】 前記教師データは、音声データであり、前記所定のデータと周期情報は、前記教師データとしての音声データを符号化した符号化データから得られるものであることを特徴とする請求項18に記載のデータ処理装置。
【請求項23】 前記符号化データは、音声データを、CELP(Code Excited Liner Prediction coding)方式によって符号化したものであることを特徴とする請求項22に記載のデータ処理装置。
【請求項24】 前記周期情報は、CELP方式で規定されている長期予測ラグであることを特徴とする請求項23に記載のデータ処理装置。
【請求項25】 前記所定のデータは、前記符号化データを復号した復号音声データであることを特徴とする請求項22に記載のデータ処理装置。
【請求項26】 前記所定のデータは、前記符号化データを音声データに復号するのに用いられる残差信号であることを特徴とする請求項22に記載のデータ処理装置。
【請求項27】 前記所定のデータは、時系列のデータであり、前記予測タップ生成手段は、前記注目データから、前記周期情報に対応する時間だけ離れた位置の前記所定のデータを抽出することにより、前記予測タップを生成することを特徴とする請求項18に記載のデータ処理装置。
【請求項28】 前記予測タップ生成手段は、前記注目データから、前記周期情報に対応する時間だけ過去方向もしくは未来方向に離れた位置の前記所定のデータのうちの一方または両方を抽出することにより、前記予測タップを生成することを特徴とする請求項27に記載のデータ処理装置。
【請求項29】 前記所定のデータの波形の推移を判定する判定手段をさらに備え、前記予測タップ生成手段は、前記判定手段による判定結果に基づいて、前記周期情報に対応する時間だけ過去方向もしくは未来方向に離れた位置の前記所定のデータのうちの一方または両方を抽出することを特徴とする請求項28に記載のデータ処理装置。
【請求項30】 前記判定手段は、前記所定のデータのパワーに基づいて、その波形の推移を判定することを特徴とする請求項29に記載のデータ処理装置。
【請求項31】 所定のデータと、周期を表す周期情報とを処理するのに用いられる所定のタップ係数を学習するデータ処理方法であって、学習の教師となる教師データから、前記所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、前記生徒データとしての所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、前記教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えることを特徴とするデータ処理方法。
【請求項32】 所定のデータと、周期を表す周期情報とを処理するのに用いられる所定のタップ係数を学習するデータ処理を、コンピュータに行わせるプログラムであって、学習の教師となる教師データから、前記所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、前記生徒データとしての所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、前記教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えることを特徴とするプログラム。
【請求項33】 所定のデータと、周期を表す周期情報とを処理するのに用いられる所定のタップ係数を学習するデータ処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、学習の教師となる教師データから、前記所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、前記生徒データとしての所定のデータのうちの注目している注目データにつき、前記周期情報に応じて、前記所定のデータを抽出することにより、前記教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えるプログラムが記録されていることを特徴とする記録媒体。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は、データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体に関し、特に、例えば、CELP(Code Excited Liner Prediction coding)方式で符号化された音声を、高音質の音声に復号することができるようにするデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体に関する。
【0002】
【従来の技術】図1および図2は、従来の携帯電話機の一例の構成を示している。
【0003】この携帯電話機では、音声を、CELP方式により所定のコードに符号化して送信する送信処理と、他の携帯電話機から送信されてくるコードを受信して、音声に復号する受信処理とが行われるようになっており、図1は、送信処理を行う送信部を、図2は、受信処理を行う受信部を、それぞれ示している。
【0004】図1に示した送信部では、ユーザが発話した音声が、マイク(マイクロフォン)1に入力され、そこで、電気信号としての音声信号に変換され、A/D(Analog/Digital)変換部2に供給される。A/D変換部2は、マイク1からのアナログの音声信号を、例えば、8kHz等のサンプリング周波数でサンプリングすることにより、ディジタルの音声信号にA/D変換し、さらに、所定のビット数で量子化を行って、演算器3とLPC(Liner Prediction Coefficient)分析部4に供給する。
【0005】LPC分析部4は、A/D変換部2からの音声信号を、例えば、160サンプル分の長さを1フレームとし、その1フレームを40サンプルごとのサブフレームに分割して、サブフレームごとにLPC分析し、P次の線形予測係数α1,α2,・・・,αPを求める。そして、LPC分析部4は、このP次の線形予測係数αp(p=1,2,・・・,P)を要素とするベクトルを、音声の特徴ベクトルとして、ベクトル量子化部5に供給する。
【0006】ベクトル量子化部5は、線形予測係数を要素とするコードベクトルとコードとを対応付けたコードブックを記憶しており、そのコードブックに基づいて、LPC分析部4からの特徴ベクトルαをベクトル量子化し、そのベクトル量子化の結果得られるコード(以下、適宜、Aコード(A_code)という)を、コード決定部15に供給する。
【0007】さらに、ベクトル量子化部5は、Aコードに対応するコードベクトルα’を構成する要素となっている線形予測係数α1’,α2’,・・・,αP’を、音声合成フィルタ6に供給する。
【0008】音声合成フィルタ6は、例えば、IIR(Infinite Impulse Response)型のディジタルフィルタで、ベクトル量子化部5からの線形予測係数αp’(p=1,2,・・・,P)をIIRフィルタのタップ係数とするとともに、演算器14から供給される残差信号eを入力信号として、音声合成を行う。
【0009】即ち、LPC分析部4で行われるLPC分析は、現在時刻nの音声信号(のサンプル値)sn、およびこれに隣接する過去のP個のサンプル値sn-1,sn-2,・・・,sn-Pに、式n+α1n-1+α2n-2+・・・+αPn-P=en ・・・(1)
で示す線形1次結合が成立すると仮定し、現在時刻nのサンプル値snの予測値(線形予測値)sn’を、過去のP個の標本値sn-1,sn-2,・・・,sn-Pを用いて、式n’=−(α1n-1+α2n-2+・・・+αPn-P) ・・・(2)
によって線形予測したときに、実際のサンプル値snと線形予測値sn’との間の自乗誤差を最小にする線形予測係数αpを求めるものである。
【0010】ここで、式(1)において、{en}(・・・,en-1,en,en+1,・・・)は、平均値が0で、分散が所定値σ2の互いに無相関な確率変数である。
【0011】式(1)から、サンプル値snは、式n=en−(α1n-1+α2n-2+・・・+αPn-P
・・・(3)
で表すことができ、これを、Z変換すると、次式が成立する。
【0012】
S=E/(1+α1-1+α2-2+・・・+αP-P
・・・(4)
但し、式(4)において、SとEは、式(3)におけるsnとenのZ変換を、それぞれ表す。
【0013】ここで、式(1)および(2)から、enは、式n=sn−sn’ ・・・(5)
で表すことができ、実際のサンプル値snと線形予測値sn’との間の残差信号と呼ばれる。
【0014】従って、式(4)から、線形予測係数αpをIIRフィルタのタップ係数とするとともに、残差信号enをIIRフィルタの入力信号とすることにより、音声信号snを求めることができる。
【0015】そこで、音声合成フィルタ6は、上述したように、ベクトル量子化部5からの線形予測係数αp’をタップ係数とするとともに、演算器14から供給される残差信号eを入力信号として、式(4)を演算し、音声信号(合成音データ)ssを求める。
【0016】なお、音声合成フィルタ6では、LPC分析部4によるLPC分析の結果得られる線形予測係数αpではなく、そのベクトル量子化の結果得られるコードに対応するコードベクトルとしての線形予測係数αp’が用いられるため、音声合成フィルタ6が出力する合成音信号は、A/D変換部2が出力する音声信号とは、基本的に同一にはならない。
【0017】音声合成フィルタ6が出力する合成音データssは、演算器3に供給される。演算器3は、音声合成フィルタ6からの合成音データssから、A/D変換部2が出力する音声信号sを減算し、その減算値を、自乗誤差演算部7に供給する。自乗誤差演算部7は、演算器3からの減算値の自乗和(第kサブフレームのサンプル値についての自乗和)を演算し、その結果得られる自乗誤差を、自乗誤差最小判定部8に供給する。
【0018】自乗誤差最小判定部8は、自乗誤差演算部7が出力する自乗誤差に対応付けて、長期予測ラグを表すコードとしてのLコード(L_code)、ゲインを表すコードとしてのGコード(G_code)、および符号語(励起コードブック)を表すコードとしてのIコード(I_code)を記憶しており、自乗誤差演算部7が出力する自乗誤差に対応するLコード、Gコード、およびLコードを出力する。Lコードは、適応コードブック記憶部9に、Gコードは、ゲイン復号器10に、Iコードは、励起コードブック記憶部11に、それぞれ供給される。さらに、Lコード、Gコード、およびIコードは、コード決定部15にも供給される。
【0019】適応コードブック記憶部9は、例えば7ビットのLコードと、所定の遅延時間(ラグ)とを対応付けた適応コードブックを記憶しており、演算器14から供給される残差信号eを、自乗誤差最小判定部8から供給されるLコードに対応付けられた遅延時間(長期予測ラグ)だけ遅延して、演算器12に出力する。
【0020】ここで、適応コードブック記憶部9は、残差信号eを、Lコードに対応する時間だけ遅延して出力することから、その出力信号は、その遅延時間を周期とする周期信号に近い信号となる。この信号は、線形予測係数を用いた音声合成において、主として、有声音の合成音を生成するための駆動信号となる。従って、Lコードは、概念的には、音声のピッチ周期を表す。なお、CELPの規格によれば、レコードは、20乃至146の範囲の整数値をとる。
【0021】ゲイン復号器10は、Gコードと、所定のゲインβおよびγとを対応付けたテーブルを記憶しており、自乗誤差最小判定部8から供給されるGコードに対応付けられたゲインβおよびγを出力する。ゲインβとγは、演算器12と13に、それぞれ供給される。ここで、ゲインβは、長期フィルタ状態出力ゲインと呼ばれるものであり、また、ゲインγは、励起コードブックゲインと呼ばれるものである。
【0022】励起コードブック記憶部11は、例えば9ビットのIコードと、所定の励起信号とを対応付けた励起コードブックを記憶しており、自乗誤差最小判定部8から供給されるIコードに対応付けられた励起信号を、演算器13に出力する。
【0023】ここで、励起コードブックに記憶されている励起信号は、例えば、ホワイトノイズ等に近い信号であり、線形予測係数を用いた音声合成において、主として、無声音の合成音を生成するための駆動信号となる。
【0024】演算器12は、適応コードブック記憶部9の出力信号と、ゲイン復号器10が出力するゲインβとを乗算し、その乗算値lを、演算器14に供給する。演算器13は、励起コードブック記憶部11の出力信号と、ゲイン復号器10が出力するゲインγとを乗算し、その乗算値nを、演算器14に供給する。演算器14は、演算器12からの乗算値lと、演算器13からの乗算値nとを加算し、その加算値を、残差信号eとして、音声合成フィルタ6と適応コードブック記憶部9に供給する。
【0025】音声合成フィルタ6では、以上のようにして、演算器14から供給される残差信号eを入力信号が、ベクトル量子化部5から供給される線形予測係数αp’をタップ係数とするIIRフィルタでフィルタリングされ、その結果得られる合成音データが、演算器3に供給される。そして、演算器3および自乗誤差演算部7において、上述の場合と同様の処理が行われ、その結果得られる自乗誤差が、自乗誤差最小判定部8に供給される。
【0026】自乗誤差最小判定部8は、自乗誤差演算部7からの自乗誤差が最小(極小)になったかどうかを判定する。そして、自乗誤差最小判定部8は、自乗誤差が最小になっていないと判定した場合、上述のように、その自乗誤差に対応するLコード、Gコード、およびLコードを出力し、以下、同様の処理が繰り返される。
【0027】一方、自乗誤差最小判定部8は、自乗誤差が最小になったと判定した場合、確定信号を、コード決定部15に出力する。コード決定部15は、ベクトル量子化部5から供給されるAコードをラッチするとともに、自乗誤差最小判定部8から供給されるLコード、Gコード、およびIコードを順次ラッチするようになっており、自乗誤差最小判定部8から確定信号を受信すると、そのときラッチしているAコード、Lコード、Gコード、およびIコードを、チャネルエンコーダ16に供給する。チャネルエンコーダ16は、コード決定部15からのAコード、Lコード、Gコード、およびIコードを多重化し、コードデータとして出力する。このコードデータは、伝送路を介して送信される。
【0028】以上から、コードデータは、復号に用いられる情報であるAコード、Lコード、Gコード、およびIコードを、サブフレーム単位ごとに有する符号化データとなっている。
【0029】なお、ここでは、Aコード、Lコード、Gコード、およびIコードは、サブフレームごとに求められるものとしているが、例えば、Aコードについては、フレームごとに求められる場合があり、この場合、そのフレームを構成する4つのサブフレームの復号には、同一のAコードが用いられる。但し、この場合でも、その1フレームを構成する4つのサブフレームそれぞれが、同一のAコードを有していると見ることができ、そのように考えることによって、コードデータは、復号に用いられる情報であるAコード、Lコード、Gコード、およびIコードを、サブフレーム単位ごとに有する符号化データとなっているとみなすことができる。
【0030】ここで、図1(後述する図2、図5、図9、図11、図16、図18、および図21においても同様)では、各変数に、[k]が付され、配列変数とされている。このkは、サブフレーム数を表すが、明細書中では、その記述は、適宜省略する。
【0031】次に、以上のようにして、他の携帯電話機の送信部から送信されてくるコードデータは、図2に示した受信部のチャネルデコーダ21で受信される。チャネルデコーダ21は、コードデータから、Lコード、Gコード、Iコード、Aコードを分離し、それぞれを、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、フィルタ係数復号器25に供給する。
【0032】適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、演算器26乃至28は、図1の適応コードブック記憶部9、ゲイン復号器10、励起コードブック記憶部11、演算器12乃至14とそれぞれ同様に構成されるもので、図1で説明した場合と同様の処理が行われることにより、Lコード、Gコード、およびIコードが、残差信号eに復号される。この残差信号eは、音声合成フィルタ29に対して、入力信号として与えられる。
【0033】フィルタ係数復号器25は、図1のベクトル量子化部5が記憶しているのと同一のコードブックを記憶しており、Aコードを、線形予測係数αp’に復号し、音声合成フィルタ29に供給する。
【0034】音声合成フィルタ29は、図1の音声合成フィルタ6と同様に構成されており、フィルタ係数復号器25からの線形予測係数αp’をタップ係数とするとともに、演算器28から供給される残差信号eを入力信号として、式(4)を演算し、これにより、図1の自乗誤差最小判定部8において自乗誤差が最小と判定されたときの合成音データを生成する。この合成音データは、D/A(Digital/Analog)変換部30に供給される。D/A変換部30は、音声合成フィルタ29からの合成音データを、ディジタル信号からアナログ信号にD/A変換し、スピーカ31に供給して出力させる。
【0035】なお、コードデータにおいて、Aコードが、サブフレーム単位でなく、フレーム単位で配置されている場合、図2の受信部では、フレームを構成する4つのサブフレームすべての復号に、そのフレームに配置されたAコードに対応する線形予測係数を用いることができる他、各サブフレームについて、隣接するフレームのAコードに対応する線形予測係数を用いて補間を行い、その補間の結果得られる線形予測係数を、各サブフレームの復号に用いることが可能である。
【0036】
【発明が解決しようとする課題】以上のように、携帯電話機の送信部では、受信部の音声合成フィルタ29に与えられる入力信号としての残差信号と線形予測係数がコード化されて送信されてくるため、受信部では、そのコードが、残差信号と線形予測係数に復号される。しかしながら、この復号された残差信号や線形予測係数(以下、適宜、それぞれを、復号残差信号または復号線形予測係数という)には、量子化誤差等の誤差が含まれるため、音声をLPC分析して得られる残差信号と線形予測係数には一致しない。
【0037】このため、受信部の音声合成フィルタ29が出力する合成音データは、歪み等を有する、音質の劣化したものとなる。
【0038】本発明は、このような状況に鑑みてなされたものであり、高音質の合成音等を得ることができるようにするものである。
【0039】
【課題を解決するための手段】本発明の第1のデータ処理装置は、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成手段と、タップを用いて、注目データについて、所定の処理を行う処理手段とを備えることを特徴とする。
【0040】本発明の第1のデータ処理方法は、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、タップを用いて、注目データについて、所定の処理を行う処理ステップとを備えることを特徴とする。
【0041】本発明の第1のプログラムは、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、タップを用いて、注目データについて、所定の処理を行う処理ステップとを備えることを特徴とする。
【0042】本発明の第1の記録媒体は、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、タップを用いて、注目データについて、所定の処理を行う処理ステップとを備えるプログラムが記録されていることを特徴とする。
【0043】本発明の第2のデータ処理装置は、学習の教師となる教師データから、所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成手段と、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成手段と、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習手段とを備えることを特徴とする。
【0044】本発明の第2のデータ処理方法は、学習の教師となる教師データから、所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習ステップとを備えることを特徴とする。
【0045】本発明の第2のプログラムは、学習の教師となる教師データから、所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習ステップとを備えることを特徴とする。
【0046】本発明の第2の記録媒体は、学習の教師となる教師データから、所定のデータと周期情報を、学習の生徒となる生徒データとして生成する生徒データ生成ステップと、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習ステップとを備えるプログラムが記録されていることを特徴とする。
【0047】本発明の第1のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体においては、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップが生成され、そのタップを用いて、注目データについて、所定の処理が行われる。
【0048】本発明の第2のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体においては、学習の教師となる教師データから、所定のデータと周期情報が、学習の生徒となる生徒データとして生成される。そして、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップが生成され、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習が行われ、タップ係数が求められる。
【0049】
【発明の実施の形態】図3は、本発明を適用した伝送システム(システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない)の一実施の形態の構成を示している。
【0050】この伝送システムでは、携帯電話機1011と1012が、基地局1021と1022それぞれとの間で、無線による送受信を行うとともに、基地局1021と1022それぞれが、交換局103との間で送受信を行うことにより、最終的には、携帯電話機1011と1012との間において、基地局1021および1022、並びに交換局103を介して、音声の送受信を行うことができるようになっている。なお、基地局1021と1022は、同一の基地局であっても良いし、異なる基地局であっても良い。
【0051】ここで、以下、特に区別する必要がない限り、携帯電話機1011と1012を、携帯電話機101と記述する。
【0052】次に、図4は、図3の携帯電話機101の構成例を示している。
【0053】この携帯電話機101では、CELP方式によって、音声の送受信が行われるようになっている。
【0054】即ち、アンテナ111は、基地局1021または1022からの電波を受信し、その受信信号を、変復調部112に供給するとともに、変復調部112からの信号を、電波で、基地局1021または1022に送信する。変復調部112は、アンテナ111からの信号を復調し、その結果得られる、図1で説明したようなコードデータを、受信部114に供給する。また、変復調部112は、送信部113から供給される、図1で説明したようなコードデータを変調し、その結果得られる変調信号を、アンテナ111に供給する。送信部113は、図1に示した送信部と同様に構成され、そこに入力されるユーザの音声を、CELP方式によって、コードデータに符号化して、変復調部112に供給する。受信部114は、変復調部112からのコードデータを受信してCELP方式により復号し、さらに、高音質の音声を復号して出力する。
【0055】即ち、受信部114では、例えば、クラス分類適応処理を利用して、CELP方式で復号された合成音が、さらに、真の高音質の音声(の予測値)に復号される。
【0056】ここで、クラス分類適応処理は、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものであり、適応処理は、以下のような手法のものである。
【0057】即ち、適応処理では、例えば、合成音と、所定のタップ係数との線形結合により、高音質の音声の予測値が求められる。
【0058】具体的には、例えば、いま、高音質の音声(のサンプル値)を教師データとするとともに、その高音質の音声を、CELP方式によって、Lコード、Gコード、Iコード、およびAコードに符号化し、それらのコードを、図2に示した受信部で復号することにより得られる合成音を生徒データとして、教師データである高音質の音声yの予測値E[y]を、幾つかの合成音(のサンプル値)x1,x2,・・・の集合と、所定のタップ係数w1,w2,・・・の線形結合により規定される線形1次結合モデルにより求めることを考える。この場合、予測値E[y]は、次式で表すことができる。
【0059】
E[y]=w11+w22+・・・ ・・・(6)
【0060】式(6)を一般化するために、タップ係数wjの集合でなる行列W、生徒データxijの集合でなる行列X、および予測値E[yj]の集合でなる行列Y’を、【数1】

で定義すると、次のような観測方程式が成立する。
【0061】
XW=Y’ ・・・(7)
ここで、行列Xの成分xijは、i件目の生徒データの集合(i件目の教師データyiの予測に用いる生徒データの集合)の中のj番目の生徒データを意味し、行列Wの成分wjは、生徒データの集合の中のj番目の生徒データとの積が演算されるタップ係数を表す。また、yiは、i件目の教師データを表し、従って、E[yi]は、i件目の教師データの予測値を表す。なお、式(6)の左辺におけるyは、行列Yの成分yiのサフィックスiを省略したものであり、また、式(6)の右辺におけるx1,x2,・・・も、行列Xの成分xijのサフィックスiを省略したものである。
【0062】そして、この観測方程式に最小自乗法を適用して、真の高音質の音声yに近い予測値E[y]を求めることを考える。この場合、教師データとなる真の高音質の音声yの集合でなる行列Y、および高音質の音声yに対する予測値E[y]の残差eの集合でなる行列Eを、【数2】

で定義すると、式(7)から、次のような残差方程式が成立する。
【0063】
XW=Y+E ・・・(8)
【0064】この場合、元の高音質の音声yに近い予測値E[y]を求めるためのタップ係数wjは、自乗誤差【数3】

を最小にすることで求めることができる。
【0065】従って、上述の自乗誤差をタップ係数wjで微分したものが0になる場合、即ち、次式を満たすタップ係数wjが、元の高音質の音声yに近い予測値E[y]を求めるため最適値ということになる。
【0066】
【数4】

・・・(9)
【0067】そこで、まず、式(8)を、タップ係数wjで微分することにより、次式が成立する。
【0068】
【数5】

・・・(10)
【0069】式(9)および(10)より、式(11)が得られる。
【0070】
【数6】

・・・(11)
【0071】さらに、式(8)の残差方程式における生徒データxij、タップ係数wj、教師データyi、および誤差eiの関係を考慮すると、式(11)から、次のような正規方程式を得ることができる。
【0072】
【数7】

・・・(12)
【0073】なお、式(12)に示した正規方程式は、行列(共分散行列)Aおよびベクトルvを、【数8】

で定義するとともに、ベクトルWを、数1で示したように定義すると、式 AW=v ・・・(13)
で表すことができる。
【0074】式(12)における各正規方程式は、生徒データxijおよび教師データyiのセットを、ある程度の数だけ用意することで、求めるべきタップ係数wjの数Jと同じ数だけたてることができ、従って、式(13)を、ベクトルWについて解くことで(但し、式(13)を解くには、式(13)における行列Aが正則である必要がある)、最適なタップ係数(ここでは、自乗誤差を最小にするタップ係数)wjを求めることができる。なお、式(13)を解くにあたっては、例えば、掃き出し法(Gauss-Jordanの消去法)などを用いることが可能である。
【0075】以上のようにして、最適なタップ係数wjを求めておき、さらに、そのタップ係数wjを用い、式(6)により、真の高音質の音声yに近い予測値E[y]を求めるのが適応処理である。
【0076】なお、例えば、教師データとして、高いサンプリング周波数でサンプリングした音声信号、または多ビットを割り当てた音声信号を用いるとともに、生徒データとして、その教師データとしての音声信号を間引いたり、低ビットで再量子化したした音声信号をCELP方式により符号化し、その符号化結果を復号して得られる合成音を用いた場合、タップ係数としては、高いサンプリング周波数でサンプリングした音声信号、または多ビットを割り当てた音声信号を生成するのに、予測誤差が、統計的に最小となる高音質の音声が得られることになる。従って、この場合、より高音質の合成音を得ることが可能となる。
【0077】図4の受信部114では、以上のようなクラス分類適応処理により、コードデータを復号して得られる合成音を、さらに、高音質の音声に復号するようになっている。
【0078】即ち、図5は、図4の受信部114の第1の構成例を示している。なお、図中、図2における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【0079】タップ生成部121と122には、音声合成フィルタ29が出力する、サブフレームごとの合成音データと、チャネルデコーダ21が出力する、サブフレームごとのLコード、Gコード、Iコード、AコードのうちのLコードとが供給されるようになっている。タップ生成部121と122は、そこに供給される合成音データから、高音質の音声の予測値を予測するのに用いる予測タップとするものと、クラス分類に用いるクラスタップとするものを、Lコードに基づいて、それぞれ抽出する。予測タップは、予測部125に供給され、クラスタップは、クラス分類部123に供給される。
【0080】クラス分類部123は、タップ生成部122から供給されるクラスタップに基づいて、クラス分類を行い、そのクラス分類結果としてのクラスコードを、係数メモリ124に供給する。
【0081】ここで、クラス分類部123におけるクラス分類の方法としては、例えば、KビットADRC(Adaptive Dynamic Range Coding)処理を利用した方法等がある。
【0082】ここで、KビットADRC処理においては、例えば、クラスタップを構成するデータの最大値MAXと最小値MINが検出され、DR=MAX-MINを、集合の局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する各データがKビットに再量子化される。即ち、クラスタップを構成する各データから、最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。そして、以上のようにして得られる、クラスタップを構成する各データのKビットの値を、所定の順番で並べたビット列が、ADRCコードとして出力される。
【0083】このようなKビットADRC処理を、クラス分類に利用する場合には、例えば、そのKビットADRC処理の結果得られるADRCコードを、クラスコードとすることが可能である。
【0084】なお、クラス分類は、その他、例えば、クラスタップを、それを構成する各データを要素とするベクトルと見なして、そのベクトルとしてのクラスタップをベクトル量子化すること等によって行うことも可能である。
【0085】係数メモリ124は、後述する図9の学習装置において学習処理が行われることにより得られる、クラスごとのタップ係数を記憶しており、クラス分類部123が出力するクラスコードに対応するアドレスに記憶されているタップ係数を、予測部125に供給する。
【0086】予測部125は、タップ生成部121が出力する予測タップと、係数メモリ124が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、式(6)に示した線形予測演算を行う。これにより、予測部125は、注目している注目サブフレームについて、高音質の音声(の予測値)を求めて、D/A変換部30に供給する。
【0087】次に、図6のフローチャートを参照して、図5の受信部114の処理について説明する。
【0088】チャネルデコーダ21は、そこに供給されるコードデータから、Lコード、Gコード、Iコード、Aコードを分離し、それぞれを、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、フィルタ係数復号器25に供給する。さらに、Lコードは、タップ生成部121および122にも供給される。
【0089】そして、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、演算器26乃至28は、図2における場合と同様の処理を行い、これにより、Lコード、Gコード、およびIコードが、残差信号eに復号される。この残差信号は、音声合成フィルタ29に供給される。
【0090】さらに、フィルタ係数復号器25は、図2で説明したように、そこに供給されるAコードを、線形予測係数に復号し、音声合成フィルタ29に供給する。音声合成フィルタ29は、演算器28からの残差信号と、フィルタ係数復号器25からの線形予測係数を用いて音声合成を行い、その結果得られる合成音を、タップ生成部121と122に供給する。
【0091】タップ生成部121は、音声合成フィルタ29が順次出力する合成音のサブフレームを、順次、注目サブフレームとし、ステップS1において、その注目サブフレームの合成音データを抽出するとともに、その注目サブフレームから見て時間的に過去方向または未来方向の合成音データを、そこに供給されるLコードに基づいて抽出することにより、予測タップを生成し、予測部125に供給する。さらに、ステップS1では、タップ生成部122が、例えば、やはり、注目サブフレームの合成音データを抽出するとともに、その注目サブフレームから見て時間的に過去方向または未来方向の合成音データを、そこに供給されるLコードに基づいて抽出することにより、クラスタップを生成し、クラス分類部123に供給する。
【0092】そして、ステップS2に進み、クラス分類部123は、タップ生成部122から供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、係数メモリ124に供給して、ステップS3に進む。
【0093】ステップS3では、係数メモリ124は、クラス分類部123から供給されるクラスコードに対応するアドレスから、タップ係数を読み出し、予測部125に供給する。
【0094】そして、ステップS4に進み、予測部125は、係数メモリ124が出力するタップ係数を取得し、そのタップ係数と、タップ生成部121からの予測タップとを用いて、式(6)に示した積和演算を行い、注目サブフレームの高音質の音声データ(の予測値)を得る。
【0095】なお、ステップS1乃至S4の処理は、注目サブフレームの合成音データのサンプル値それぞれを、注目データとして行われる。即ち、サブフレームの合成音データは、前述したことから、40サンプルで構成されるから、その40サンプルの合成音データそれぞれについて、ステップS1乃至S4の処理が行われる。
【0096】以上のようにして得られた高音質の音声データは、予測部125から、D/A変換部30を介して、スピーカ31に供給され、これにより、スピーカ31からは、高音質の音声が出力される。
【0097】ステップS4の処理後は、ステップS5に進み、まだ、注目サブフレームとして処理すべきサブフレームがあるかどうかが判定され、あると判定された場合、ステップS1に戻り、次に注目サブフレームとすべきサブフレームを、新たに注目サブフレームとして、以下、同様の処理を繰り返す。また、ステップS5において、注目サブフレームとして処理すべきサブフレームがないと判定された場合、処理を終了する。
【0098】次に、図7および図8を参照して、図5のタップ生成部121での予測タップの生成方法について説明する。
【0099】タップ生成部121は、例えば、図7に示すように、注目サブフレームにおける40サンプルの合成音データを抽出するとともに、注目サブフレームから、その注目サブフレームに配置されているLコードが表すラグだけ過去の位置を始点とする40サンプルの合成音データ(以下、適宜、ラグ対応の過去データという)を抽出し、注目データについての予測タップとする。
【0100】あるいは、タップ生成部121は、例えば、図8に示すように、注目サブフレームの40サンプルの合成音データを抽出するとともに、Lコードが表すラグだけ過去の位置が注目サブフレーム内の合成音データ(例えば、注目データ等)の位置となるLコードが配置された、注目サブフレームから見て未来方向のサブフレームに配置された40サンプルの合成音データ(以下、適宜、ラグ対応の未来データという)を抽出し、注目データについての予測タップとする。
【0101】また、タップ生成部121は、例えば、注目サブフレームの合成音データ、ラグ対応の過去データ、およびラグ対応の未来データを抽出し、注目データについての予測タップとする。
【0102】ここで、注目データを、クラス分類適応処理によって予測するにあたり、注目サブフレームの合成音データの他、注目サブフレーム以外のサブフレームの合成音データを、予測タップとして用いることにより、より高音質の音声を得ることができると考えられる。そして、この場合、予測タップは、例えば、単純に、注目サブフレームの合成音データの他、注目サブフレームの直前と直後のサブフレームの合成音データによって構成することが考えられる。
【0103】しかしながら、このように、予測タップを、単純に、注目サブフレームの合成音データ、および注目サブフレームの直前と直後のサブフレームの合成音データによって構成する場合には、予測タップの構成の仕方に、合成音データの波形特性がほとんど考慮されていないことから、その分、高音質化に影響が生じると考えられる。
【0104】そこで、タップ生成部121は、上述のように、予測タップとする合成音データを、Lコードに基づいて抽出するようになっている。
【0105】即ち、サブフレームに配置されているLコードが表すラグ(長期予測ラグ)は、注目データ部分の合成音の波形が、過去のどの時点における合成音の波形に類似しているかを表すので、注目データの部分の波形と、ラグ対応の過去データやラグ対応の未来データの部分の波形とは、大きな相関性を有する。
【0106】従って、予測タップを、注目サブフレームの合成音データと、その合成音データに対して大きな相関を有するラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方とによって構成することにより、さらに高音質の音声を得ることが可能となる。
【0107】ここで、図5のタップ生成部122においても、例えば、タップ生成部121における場合と同様にして、注目サブフレームの合成音データと、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方とからクラスタップを生成することが可能であり、図5の実施の形態では、そのようになっている。
【0108】なお、予測タップやクラスタップの構成パターンは、上述したパターンのものに限定されるものではない。即ち、予測タップやクラスタップには、注目サブフレームのすべての合成音データを含める他、1サンプルおき等の合成音データだけを含めるようにしたり、注目サブフレームに配置されているLコードが表すラグだけ過去の位置のサブフレームから、そのサブフレームに配置されているLコードが表すラグだけ過去の位置のサブフレームの合成音データ等を含めるようにすること等が可能である。
【0109】また、上述の場合には、クラスタップと予測タップを同一構成にするようにしたが、クラスタップと予測タップは、異なる構成とすることができる。
【0110】さらに、上述の場合には、Lコードが表すラグだけ過去の位置が注目サブフレーム内の合成音データ(例えば、注目データ等)の位置となるLコードが配置された、注目サブフレームから見て未来方向のサブフレームに配置された40サンプルの合成音データを、ラグ対応の未来データとして、予測タップに含めるようにしたが、ラグ対応の未来データとしては、その他、例えば、次のような合成音データを用いるようにすることも可能である。
【0111】即ち、CELP方式において符号化データに含まれるLコードは、上述したように、そのLコードが配置されているサブフレームの合成音データの波形と類似する過去の合成音データの位置を表すが、符号化データには、そのような過去の類似波形の位置を表すLコードの他、未来の類似波形の位置を表すLコード(以下、適宜、未来Lコードという)を含めるようにすることが可能である。この場合、注目データについてのラグ対応の未来データとしては、注目サブフレームに配置されている未来Lコードが表すラグだけ未来の位置にある合成音データを始点とする1以上のサンプルを用いることが可能である。
【0112】次に、図9は、図5の係数メモリ124に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。
【0113】マイク201乃至コード決定部215は、図1のマイク1乃至コード決定部15とそれぞれ同様に構成される。マイク1には、学習用の音声信号が入力されるようになっており、従って、マイク201乃至コード決定部215では、その学習用の音声信号に対して、図1における場合と同様の処理が施される。
【0114】但し、コード決定部215は、Lコード、Gコード、Iコード、およびAコードのうち、本実施の形態において予測タップやクラスタップを構成する合成音データを抽出するのに用いられるLコードだけを出力するようになっている。
【0115】そして、タップ生成部131と132には、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときの音声合成フィルタ206が出力する合成音データが供給される。さらに、タップ生成部131と132には、コード決定部215が、自乗誤差最小判定部208から確定信号を受信したときに出力するLコードも供給される。また、正規方程式加算回路134には、A/D変換部202が出力する音声データが、教師データとして供給される。
【0116】タップ生成部131は、音声合成フィルタ206が出力する合成音データから、コード決定部215が出力するLコードに基づいて、図5のタップ生成部121における場合と同一の予測タップを生成し、生徒データとして、正規方程式加算回路134に供給する。
【0117】タップ生成部132も、音声合成フィルタ206が出力する合成音データから、コード決定部215が出力するLコードに基づいて、図5のタップ生成部122における場合と同一のクラスタップを生成し、クラス分類部133に供給する。
【0118】クラス分類部133は、タップ生成部132からのクラスタップに基づいて、図5のクラス分類部123における場合と同様のクラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路134に供給する。
【0119】正規方程式加算回路134は、A/D変換部202からの音声データを、教師データとして受信するとともに、タップ生成部131からの予測タップを、生徒データとして受信し、その教師データおよび生徒データを対象として、クラス分類部133からのクラスコードごとに足し込みを行う。
【0120】即ち、正規方程式加算回路134は、クラス分類部133から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)を用い、式(13)の行列Aにおける各コンポーネントとなっている、生徒データどうしの乗算(xinim)と、サメーション(Σ)に相当する演算を行う。
【0121】さらに、正規方程式加算回路134は、やはり、クラス分類部133から供給されるクラスコードに対応するクラスごとに、生徒データおよび教師データを用い、式(13)のベクトルvにおける各コンポーネントとなっている、生徒データと教師データの乗算(xini)と、サメーション(Σ)に相当する演算を行う。
【0122】正規方程式加算回路134は、以上の足し込みを、そこに供給される学習用の音声データのサブフレームすべてを注目サブフレームとし、かつその注目サブフレームの音声データすべてを注目データとして行い、これにより、各クラスについて、式(13)に示した正規方程式をたてる。
【0123】タップ係数決定回路135は、正規方程式加算回路134においてクラスごとに生成された正規方程式を解くことにより、クラスごとに、タップ係数を求め、係数メモリ136の、各クラスに対応するアドレスに供給する。
【0124】なお、学習用の音声信号として用意した音声信号によっては、正規方程式加算回路134において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路135は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【0125】係数メモリ136は、タップ係数決定回路135から供給されるクラスごとのタップ係数を、そのクラスに対応するアドレスに記憶する。
【0126】次に、図10のフローチャートを参照して、図9の学習装置で行われる、高音質の音声を復号するためのタップ係数を求める学習処理について説明する。
【0127】学習装置には、学習用の音声信号が供給され、ステップS11では、その学習用の音声信号から、教師データと生徒データが生成される。
【0128】即ち、学習用の音声信号は、マイク201に入力され、マイク201乃至コード決定部215は、図1のマイク1乃至コード決定部15における場合とそれぞれ同様の処理を行う。
【0129】その結果、A/D変換部202で得られるディジタル信号の音声データは、教師データとして、正規方程式加算回路134に供給される。また、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときに、音声合成フィルタ206が出力する合成音データは、生徒データとして、タップ生成部131と132に供給される。さらに、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときに、コード決定部215が出力するLコードも、生徒データとして、タップ生成部131と132に供給される。
【0130】その後、ステップS12に進み、タップ生成部131は、音声合成フィルタ206から生徒データとして供給される合成音のサブフレームを注目サブフレームとし、さらに、その注目サブフレームの合成音データを、順次、注目データとして、各注目データについて、音声合成フィルタ206からの合成音データを用い、コード決定部215からのLコードに基づいて、図5のタップ生成部121における場合と同様にして、予測タップを生成し、正規方程式加算回路134に供給する。さらに、ステップS12では、タップ生成部132が、やはり、合成音データを用い、Lコードに基づいて、図5のタップ生成部122における場合と同様にして、クラスタップを生成し、クラス分類部133に供給する。
【0131】ステップS12の処理後は、ステップS13に進み、クラス分類部133が、タップ生成部132からのクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路134に供給する。
【0132】そして、ステップS14に進み、正規方程式加算回路134は、A/D変換器202からの教師データとしての高音質の音声データである学習用の音声データのうちの注目データに対応するもの、およびタップ生成部132からの生徒データとしての予測タップを対象として、式(13)の行列Aとベクトルvの、上述したような足し込みを、クラス分類部133からの注目データについてのクラスコードごとに行い、ステップS15に進む。
【0133】ステップS15では、まだ、注目サブフレームとして処理すべきサブフレームがあるかどうかが判定される。ステップS15において、まだ、注目サブフレームとして処理すべきサブフレームがあると判定された場合、ステップS11に戻り、次のサブフレームを新たに注目サブフレームとして、以下、同様の処理が繰り返される。
【0134】また、ステップS15において、注目サブフレームとして処理すべきサブフレームがないと判定された場合、ステップS16に進み、タップ係数決定回路135は、正規方程式加算回路134で各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、タップ係数を求め、係数メモリ136の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【0135】以上のようにして、係数メモリ136に記憶された各クラスごとのタップ係数が、図5の係数メモリ124に記憶されている。
【0136】以上のように、図5の係数メモリ124に記憶されたタップ係数は、線形予測演算を行うことにより得られる高音質の音声予測値の予測誤差(自乗誤差)が、統計的に最小になるように学習を行うことにより求められたものであるから、図5の予測部125が出力する音声は、高音質のものとなる。
【0137】なお、例えば、図5および図9の実施の形態では、予測タップやクラスタップを、音声合成フィルタ206が出力する合成音データから構成するようにしたが、予測タップやクラスタップは、図5および図9において点線で示すように、Iコードや、Lコード、Gコード、Aコード、Aコードから得られる線形予測係数αp、Gコードから得られるゲインβ,γ、その他の、Lコード、Gコード、Iコード、またはAコードから得られる情報(例えば、残差信号eや、残差信号eを得るためのl,n、さらには、l/β,n/γなど)のうちの1以上を含めて構成することが可能である。また、CELP方式では、符号化データとしてのコードデータに、リスト補間ビットやフレームエネルギ等が含められる場合があるが、この場合、予測タップやクラスタップは、ソフト補間ビットやフレームエネルギ等を含めて構成することも可能である。
【0138】次に、図11は、図4の受信部114の第2の構成例を示している。なお、図中、図5における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図11の受信部114は、タップ生成部121と122に替えて、タップ生成部301と302がそれぞれ設けられている他は、図5における場合と同様に構成されている。
【0139】図5の実施の形態においては、タップ生成部121や122において(図9のタップ生成部131と132においても同様)、予測タップやクラスタップが、注目サブフレームにおける40サンプルの合成音データの他、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方から構成されるが、ラグ対応の過去データだけ、ラグ対応の未来データだけ、またはその両方のうちのいずれを予測タップやクラスタップに含めるかを、特に制御するようにはなっていないことから、いずれを含めるかを、あらかじめ決めておき、固定にしておく必要がある。
【0140】しかしながら、注目サブフレームを含むフレーム(以下、適宜、注目フレームという)等が、例えば、発話の開始時等に相当する場合には、図12(A)に示すように、注目フレームよりも過去のフレーム等は、無音の状態(雑音だけが存在するのと等しい状態)となっていると考えられる。同様に、注目フレームが、例えば、発話の終了時等に相当する場合には、図12(B)に示すように、注目フレームよりも未来のフレーム等は、無音の状態となっていると考えられる。そして、このような無音部分については、予測タップやクラスタップに含めても、音質の向上にほとんど寄与せず、むしろ、最悪の場合には、音質の向上を妨げるおそれがある。
【0141】一方、注目フレームが、発話の開始時や終了時等以外の定常な発話が行われている状態に相当する場合には、図12(C)に示すように、注目フレームから過去方向および未来方向のいずれにも、定常的な音声に相当する合成音データが存在すると考えられる。そして、このような場合には、ラグ対応の過去データと、ラグ対応の未来データのうちのいずれか一方だけでなく、その両方を、予測タップやクラスタップに含めることによって、さらなる音質の向上を図ることができると考えられる。
【0142】そこで、図11のタップ生成部301と302は、合成音データの波形の推移が、例えば、図12(A)乃至図12(C)に示したうちのいずれであるかを判定し、その判定結果に基づいて、予測タップとクラスタップを、それぞれ生成するようになっている。
【0143】即ち、図13は、図11のタップ生成部301の構成例を示している。
【0144】合成音メモリ311には、音声合成フィルタ29(図11)が出力する合成音データが順次供給されるようになっており、合成音メモリ311は、その合成音データを、順次記憶する。なお、合成音メモリ311は、注目データとされる合成音データについて予測タップとされる可能性のある合成音データのうちの、最も過去のサンプルから、最も未来のサンプルまでの間の合成音データを記憶することのできる記憶容量を少なくとも有している。また、合成音メモリ311は、その記憶容量分だけ、合成音データを記憶すると、次に供給される合成音データを、最も古い記憶値に上書きする形で記憶するようになっている。
【0145】Lコードメモリ312には、チャネルデコーダ21(図11)が出力するサブフレーム単位のLコードが順次供給されるようになっており、Lコードメモリ312は、そのLコードを、順次記憶する。なお、Lコードメモリ312は、注目データとされる合成音データについて予測タップとされる可能性のある合成音データのうちの、最も過去のサンプルが配置されるサブフレームから、最も未来のサンプルが配置されるサブフレームまでの間のLコードを記憶することのできる記憶容量を少なくとも有しており、また、その記憶容量分だけ、Lコードを記憶すると、次に供給されるLコードを、最も古い記憶値に上書きする形で記憶するようになっている。
【0146】フレームパワー計算部313は、合成音メモリ311に記憶された合成音データを用い、所定のフレーム単位で、そのフレームにおける合成音データのパワーを求め、バッファ314に供給する。なお、フレームパワー計算部313でパワーを求める単位であるフレームは、CELP方式におけるフレームやサブフレームに一致していても良いし、一致していなくても良い。従って、フレームパワー計算部313でパワーを求める単位であるフレームは、CELP方式におけるフレームを構成する160サンプルや、サブフレームを構成する40サンプル以外の値である、例えば、128サンプル等で構成することが可能である。但し、本実施の形態では、説明を簡単にするため、フレームパワー計算部313でパワーを求める単位であるフレームは、CELP方式におけるフレームと一致するものとする。
【0147】バッファ314は、フレームパワー計算部313から順次供給される合成音データのパワーを、順次記憶する。なお、バッファ314は、少なくとも、注目フレーム、およびその直前と直後のフレームの、合計で3フレーム分の合成音データのパワーを記憶することができるようになっており、また、その記憶容量分だけ、パワーを記憶すると、次にフレームパワー計算部313から供給されるパワーを、最も古い記憶値に上書きする形で記憶するようになっている。
【0148】状態判定部315は、バッファ314に記憶されたパワーに基づき、注目データ付近の合成音データの波形の推移を判定する。即ち、状態判定部315は、注目データ付近の合成音データの波形の推移が、図12(A)に示したように、注目フレームの直前のフレームが無音の状態(以下、適宜、立ち上がり状態という)、図12(B)に示したように、注目フレームの直後のフレームが無音の状態(以下、適宜、たち下がり状態という)、または図12(C)に示したように、注目フレームの直前から直後にかけて定常になっている状態(以下、適宜、定常状態という)のうちのいずれの状態になっているかを判定する。そして、状態判定部315は、その判定結果を、データ抽出部316に供給する。
【0149】データ抽出部316は、合成音メモリ311から、注目サブフレームの合成音データを読み出すことにより抽出する。さらに、データ抽出部316は、状態判定部315からの波形の推移の判定結果に基づき、Lコードメモリ312を参照して、合成音メモリ311から、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方を読み出すことにより抽出する。そして、データ抽出部316は、合成音メモリ311から読み出した注目サブフレームの合成音データと、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方とを、予測タップとして出力する。
【0150】次に、図14のフローチャートを参照して、図13のタップ生成部301の処理について説明する。
【0151】合成音メモリ311には、音声合成フィルタ29(図11)が出力する合成音データが順次供給され、合成音メモリ311は、その合成音データを、順次記憶する。また、Lコードメモリ312には、チャネルデコーダ21(図11)が出力するサブフレーム単位のLコードが順次供給され、Lコードメモリ312は、そのLコードを、順次記憶する。
【0152】一方、フレームパワー計算部313は、合成音メモリ311に記憶された合成音データを、フレーム単位で順次読み出し、各フレームにおける合成音データのパワーを求めて、バッファ314に記憶させている。
【0153】そして、状態判定部315は、ステップS21において、バッファ314から、注目フレームのパワーPn、その直前のフレームのパワーPn-1、およびその直後のフレームのパワーPn+1を読み出し、注目フレームのパワーPnと、直前のフレームのパワーPn-1との差分値Pn−Pn-1を計算するとともに、直後のフレームのパワーPn+1と、注目フレームのパワーPnとの差分値Pn+1−Pnとを計算して、ステップS22に進む。
【0154】ステップS22では、状態判定部315は、差分値Pn−Pn-1の絶対値、および差分値Pn+1−Pnの絶対値が、いずれも、所定の閾値εよりも大であるか(以上であるか)どうかを判定する。
【0155】ステップS22において、差分値Pn−Pn-1の絶対値、または差分値Pn+1−Pnの絶対値のうちの少なくとも一方が、所定の閾値εより大でないと判定された場合、状態判定部315は、注目データ付近の合成音データの波形の推移が、図12(C)に示したように、注目フレームの直前から直後にかけて定常になっている定常状態になっていると判定し、その旨を表す「定常状態」メッセージを、データ抽出部316に供給して、ステップS23に進む。
【0156】ステップS23では、データ抽出部316は、状態判定部315から「定常状態」メッセージを受信すると、合成音メモリ311から、注目サブフレームの合成音データを読み出すとともに、さらに、Lコードメモリ312を参照して、タグ対応の過去データおよびタグ対応の未来データとしての合成音データを読み出す。そして、データ抽出部316は、これらの合成音データを予測タップとして出力し、処理を終了する。
【0157】また、ステップS22において、差分値Pn−Pn-1の絶対値、および差分値Pn+1−Pnの絶対値が、いずれも、所定の閾値εより大であると判定された場合、ステップS24に進み、状態判定部315は、差分値Pn−Pn-1と、差分値Pn+1−Pnが、いずれも正であるかどうかを判定する。ステップS24において、差分値Pn−Pn-1と、差分値Pn+1−Pnが、いずれも正であると判定された場合、状態判定部315は、注目データ付近の合成音データの波形の推移が、図12(A)に示したように、注目フレームの直前のフレームが無音の状態である立ち上がり状態になっていると判定し、その旨を表す「立ち上がり状態」メッセージを、データ抽出部316に供給して、ステップS25に進む。
【0158】ステップS25では、データ抽出部316は、状態判定部315から「立ち上がり状態」メッセージを受信すると、合成音メモリ311から、注目サブフレームの合成音データを読み出すとともに、さらに、Lコードメモリ312を参照して、タグ対応の未来データとしての合成音データを読み出す。そして、データ抽出部316は、これらの合成音データを予測タップとして出力し、処理を終了する。
【0159】一方、ステップS24において、差分値Pn−Pn-1と、差分値Pn+1−Pnのうちの少なくとも一方が、正でないと判定された場合、ステップS26に進み、状態判定部315は、差分値Pn−Pn-1と、差分値n+1−Pnが、いずれも負であるかどうかを判定する。ステップS26において、差分値Pn−Pn-1と、差分値Pn+1−Pnのうちの少なくとも一方が、負でないと判定された場合、状態判定部315は、注目データ付近の合成音データの波形の推移が、定常状態になっていると判定し、その旨を表す「定常状態」メッセージを、データ抽出部316に供給して、ステップS23に進む。
【0160】ステップS23では、データ抽出部316は、上述したように、合成音メモリ311から、注目サブフレームの合成音データと、タグ対応の過去データおよびタグ対応の未来データを読み出し、予測タップとして出力して、処理を終了する。
【0161】また、ステップS26において、差分値Pn−Pn-1と、差分値Pn+1−Pnが、いずれも負であると判定された場合、状態判定部315は、注目データ付近の合成音データの波形の推移が、図12(B)に示したように、注目フレームの直後のフレームが無音の状態である立ち下がり状態になっていると判定し、その旨を表す「立ち下がり状態」メッセージを、データ抽出部316に供給して、ステップS27に進む。
【0162】ステップS27では、データ抽出部316は、状態判定部315から「立ち下がり状態」メッセージを受信すると、合成音メモリ311から、注目サブフレームの合成音データを読み出すとともに、さらに、Lコードメモリ312を参照して、タグ対応の過去データとしての合成音データを読み出す。そして、データ抽出部316は、これらの合成音データを予測タップとして出力し、処理を終了する。
【0163】なお、図11のタップ生成部302も、図13に示したタップ生成部301と同様に構成することができ、この場合、図14で説明したようにして、クラスタップを構成させることができる。但し、図13において、合成音メモリ311、Lコードメモリ312、フレーパワー計算部313、バッファ314、および状態判定部315は、タップ生成部301と302とで兼用することが可能である。
【0164】また、上述の場合には、注目フレームと、その直前または直後のフレームそれぞれとにおけるパワーを比較して、注目データ付近の合成音データの波形の推移を判定するようにしたが、注目データ付近の合成音データの波形の推移を判定は、その他、例えば、注目フレームと、より過去または未来に亘るフレームそれぞれとにおけるパワーを比較して行うことも可能である。
【0165】さらに、上述の場合には、注目データ付近の合成音データの波形の推移を、「定常状態」、「立ち上がり状態」、または「たち下がり状態」の3つの状態のうちのいずれかに判定するようにしたが、4以上の状態のいずれかに判定することも可能である。即ち、例えば、図14では、ステップS22において、差分値Pn−Pn-1の絶対値、および差分値Pn+1−Pnの絶対値を、いずれも、1つの閾値εと比較し、その大小関係を判定しているが、差分値Pn−Pn-1の絶対値や、差分値Pn+1−Pnの絶対値を、複数の閾値と比較するようにすることで、注目データ付近の合成音データの波形の推移を、4以上の状態のいずれかに判定することが可能である。
【0166】そして、このように、注目データ付近の合成音データの波形の推移を、4以上の状態のいずれかに判定する場合においては、予測タップは、注目サブフレームの合成音データと、タグ対応の過去データまたはタグ対応の未来データの他、例えば、そのタグ対応の過去データまたはタグ対応の未来データを注目データとしたときに、タグ対応の過去データまたはタグ対応の未来データとなる合成音データを含めて構成すること等が可能である。
【0167】ところで、タップ生成部301において、以上のように予測タップを生成する場合には、その予測タップを構成する合成音データのサンプル数は変化する。このことは、タップ生成部302において生成されるクラスタップについても同様である。
【0168】予測タップについては、それを構成するデータの数(タップ数)が変化しても、その予測タップと同一の数のタップ係数を、後述する図16の学習装置において学習し、係数メモリ124に記憶させておけば良いから問題はない。
【0169】一方、クラスタップについては、それを構成するタップ数が変化すると、各タップ数のクラスタップごとに得られる全クラス数が変化することから、処理が複雑になるおそれがある。そこで、クラスタップのタップ数が変化しても、そのクラスタップにより得られるクラス数が変化しないようなクラス分類を行うのが望ましい。
【0170】このように、クラスタップのタップ数が変化しても、そのクラスタップにより得られるクラス数が変化しないようなクラス分類を行う方法としては、クラス分類において、例えば、クラスタップの構成を考慮する方法がある。
【0171】即ち、本実施の形態では、クラスタップが、注目サブフレームの合成音データの他に、タグ対応の過去データもしくはタグ対応の未来データの一方または両方を含めて構成されることによって、クラスタップのタップ数が増減する。そこで、例えば、いま、クラスタップが、注目サブフレームの合成音データと、タグ対応の過去データもしくはタグ対応の未来データの一方とから構成される場合に、そのタップ数がS個であるとし、クラスタップが、注目サブフレームの合成音データと、タグ対応の過去データおよびタグ対応の未来データの両方とから構成される場合に、そのタップ数がL(>S)個であるとする。そして、タップ数がS個の場合は、nビットのクラスコードが得られ、タップ数がL個の場合は、n+mビットのクラスコードが得られるとする。
【0172】この場合、クラスコードとして、n+m+2ビットを用いるとともに、そのn+m+2ビットのうちの、例えば、上位ビットの2ビットを、クラスタップが、タグ対応の過去データを含む場合、タグ対応の未来データを含む場合、その両方を含む場合の3つの場合とで、それぞれ、例えば、”00”,”01”,”10”に設定することにより、タップ数がS個とL個のいずれであっても、全クラス数が2n+m+2クラスのクラス分類が可能となる。
【0173】即ち、クラスタップが、タグ対応の過去データと、タグ対応の未来データの両方を含み、そのタップ数がL個の場合には、n+mビットのクラスコードが得られるクラス分類を行い、そのn+mビットのクラスコードに、その上位2ビットとして、クラスタップが、タグ対応の過去データと、タグ対応の未来データの両方を含むことを表す”10”を付加したn+m+2ビットを最終的なクラスコードとすれば良い。
【0174】また、クラスタップが、タグ対応の過去データを含み、そのタップ数がS個の場合には、nビットのクラスコードが得られるクラス分類を行い、そのnビットのクラスコードに、その上位ビットとして、mビットの”0”を付加してn+mビットとし、さらに、そのn+mビットに、上位ビットとして、クラスタップが、タグ対応の過去データを含むことを表す”00”を付加したn+m+2ビットを最終的なクラスコードとすれば良い。
【0175】さらに、クラスタップが、タグ対応の未来データを含み、そのタップ数がS個の場合には、nビットのクラスコードが得られるクラス分類を行い、そのnビットのクラスコードに、その上位ビットとして、mビットの”0”を付加してn+mビットとし、さらに、そのn+mビットに、上位ビットとして、クラスタップが、タグ対応の未来データを含むことを表す”01”を付加したn+m+2ビットを最終的なクラスコードとすれば良い。
【0176】次に、図13のタップ生成部301では、フレームパワー計算部313において、合成音データから、そのフレーム単位のパワーを計算するようにしたが、CELP方式によって、音声を符号化した符号化データ(コードデータ)には、上述したように、フレームエネルギが含められる場合があり、この場合には、そのフレームエネルギを、そのフレームにおける合成音のパワーとして採用することが可能である。
【0177】図15は、フレームエネルギを、そのフレームにおける合成音のパワーとして採用する場合の、図11のタップ生成部301の構成例を示している。なお、図中、図13における場合と対応する部分については、同一の符号を付してある。即ち、図15のタップ生成部301は、フレームパワー計算部313が設けられていない他は、図13における場合と同様に構成されている。
【0178】但し、バッファ314には、受信部114(図11)に供給される符号化データ(コードデータ)に含まれる、フレームごとのフレームエネルギが供給されているようになっており、バッファ314は、このフレームエネルギを記憶するようになっている。そして、状態判定部315は、このフレームエネルギを、上述した、合成音データから求められるフレーム単位のパワーと同様に用いて、注目データ付近の合成音データの波形の推移を判定する。
【0179】ここで、符号化データに含まれる、フレームごとのフレームエネルギは、チャネルエンコーダ21において、符号化データから分離され、タップ生成部301に供給される。
【0180】なお、タップ生成部302も、図15に示したように構成することが可能である。
【0181】次に、図16は、受信部114が図11に示したように構成される場合に、その係数メモリ124に記憶されるタップ係数を学習する学習装置の一実施の形態の構成例を示している。なお、図中、図9における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図16の学習装置は、タップ生成部131と132に替えて、タップ生成部321と322がそれぞれ設けられている他は、図9における場合と同様に構成される。
【0182】タップ生成部321と322は、図11のタップ生成部301と302における場合とそれぞれ同様にして、予測タップとクラスタップを構成する。
【0183】従って、この場合、より高音質の音声を復号することのできるタップ係数を得ることができる。
【0184】なお、学習装置において、予測タップやクラスタップの生成にあたり、注目データ付近の合成音データの波形の推移の判定を、図15で説明したように、フレームごとのフレームエネルギを用いて行う場合には、そのフレームエネルギは、LPC分析部204におけるLPC分析の過程で得られる自己相関係数を用いて計算することができる。
【0185】そこで、図17は、自己相関係数からフレームエネルギを求める場合の図16のタップ生成部321の構成例を示している。なお、図中、図13のタップ生成部301における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図17のタップ生成部321は、フレームパワー計算部313に替えてフレームエネルギ計算部331が設けられている他は、図13におけるタップ生成部301と同様に構成されている。
【0186】フレームエネルギ計算部331には、図16のLPC分析部204がLPC分析を行う過程で求められる音声の自己相関係数が供給されるようになっており、フレームエネルギ計算部331は、その自己相関係数から、符号化データ(コードデータ)に含められるフレームエネルギを計算し、バッファ314に供給する。
【0187】従って、図17の実施の形態では、状態判定部315は、このフレームエネルギを、上述した、合成音データから求められるフレーム単位のパワーと同様に用いて、注目データ付近の合成音データの波形の推移を判定する。
【0188】なお、図16のクラスタップを生成するタップ生成部322も、図17に示したように構成することが可能である。
【0189】次に、図18は、図4の受信部114の第3の構成例を示している。なお、図中、図5または図11における場合と対応する部分については、同一の符号を付してあり、その説明は、適宜省略する。
【0190】図5や図11の受信部114は、音声合成フィルタ29が出力する合成音データに対して、クラス分類適応処理を施すことによって、高音質の音声を復号するようになっていたが、図18の受信部114は、音声合成フィルタ29に入力される残差信号(復号残差信号)と、線形予測係数(復号線形予測係数)に対して、クラス分類適応処理を施すことによって、高音質の音声を復号するようになっている。
【0191】即ち、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、および演算器26乃至28において、Lコード、Gコード、およびIコードから復号される残差信号である復号残差信号や、フィルタ係数復号器25において、Aコードから復号される線形予測係数である復号線形予測係数は、前述したように、誤差を含むものとなっており、そのまま音声合成フィルタ29に入力したのでは、音声合成フィルタ29から出力される合成音データの音質が劣化する。
【0192】そこで、図18の受信部114では、学習により求めたタップ係数を用いた予測演算を行うことにより、真の残差信号と線形予測係数の予測値を求め、これらを音声合成フィルタ29に与えることで、高音質の合成音を生成するようになっている。
【0193】即ち、図18の受信部114では、例えば、クラス分類適応処理を利用して、復号残差信号が、真の残差信号(の予測値)に復号されるとともに、復号線形予測係数が、真の線形予測係数(の予測値)に復号され、その残差信号と線形予測係数を、音声合成フィルタ29に与えることで、高音質の合成音データが求められる。
【0194】そのために、演算器28が出力する復号残差信号は、タップ生成部341と32に供給される。また、タップ生成部341と342には、チャネルデコーダ21が出力するLコードも供給されるようになっている。
【0195】そして、タップ生成部341は、図5のタップ生成部121や図11のタップ生成部301と同様にして、そこに供給される復号残差信号から、予測タップとするサンプルを、Lコードに基づいて抽出し、予測部345に供給する。
【0196】タップ生成部342も、図5のタップ生成部122や図11のタップ生成部302と同様にして、そこに供給される復号残差信号から、クラスタップとするサンプルを、Lコードに基づいて抽出し、予測部345に供給する。
【0197】クラス分類部343は、タップ生成部342から供給されるクラスタップに基づいて、クラス分類を行い、そのクラス分類結果としてのクラスコードを、係数メモリ344に供給する。
【0198】係数メモリ344は、後述する図21の学習装置において学習処理が行われることにより得られる、クラスごとの残差信号についてのタップ係数w(e)を記憶しており、クラス分類部343が出力するクラスコードに対応するアドレスに記憶されているタップ係数を、予測部345に供給する。
【0199】予測部345は、タップ生成部341が出力する予測タップと、係数メモリ344が出力する残差信号についてのタップ係数とを取得し、その予測タップとタップ係数とを用いて、式(6)に示した線形予測演算を行う。これにより、予測部345は、注目サブフレームの残差信号(の予測値)emを求めて、音声合成フィルタ29に、入力信号として供給する。
【0200】タップ生成部351と352には、フィルタ係数復号器25が出力する、サブフレームごとの復号線形予測係数αp’が供給されるようになっており、タップ生成部351と352は、その復号線形予測係数から、予想タップとクラスタップとするものをそれぞれ抽出する。ここで、タップ生成部351と352は、例えば、注目サブフレームの線形予測係数すべてを、それぞれ、予測タップとクラスタップとする。予測タップは、タップ生成部351から予測部355に供給され、クラスタップは、タップ生成部352からクラス分類部353に供給される。
【0201】クラス分類部353は、タップ生成部352から供給されるクラスタップに基づいて、クラス分類を行い、そのクラス分類結果としてのクラスコードを、係数メモリ354に供給する。
【0202】係数メモリ354は、後述する図21の学習装置において学習処理が行われることにより得られる、クラスごとの線形予測係数についてのタップ係数w(a)を記憶しており、クラス分類部353が出力するクラスコードに対応するアドレスに記憶されているタップ係数を、予測部355に供給する。
【0203】予測部355は、タップ生成部351が出力する予測タップと、係数メモリ354が出力する線形予測係数についてのタップ係数とを取得し、その予測タップとタップ係数とを用いて、式(6)に示した線形予測演算を行う。これにより、予測部355は、注目サブフレームの線形予測係数(の予測値)mαpを求めて、音声合成フィルタ29に供給する。
【0204】次に、図19のフローチャートを参照して、図18の受信部114の処理について説明する。
【0205】チャネルデコーダ21は、そこに供給されるコードデータから、Lコード、Gコード、Iコード、Aコードを分離し、それぞれを、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、フィルタ係数復号器25に供給する。さらに、Lコードは、タップ生成部341と342にも供給される。
【0206】そして、適応コードブック記憶部22、ゲイン復号器23、励起コードブック記憶部24、演算器26乃至28では、図1の適応コードブック記憶部9、ゲイン復号器10、励起コードブック記憶部11、演算器12乃至14における場合と同様の処理が行われ、これにより、Lコード、Gコード、およびIコードが、残差信号eに復号される。この復号残差信号は、演算器28からタップ生成部341と342に供給される。
【0207】さらに、フィルタ係数復号器25は、図2で説明したように、そこに供給されるAコードを、復号線形予測係数に復号し、タップ生成部351と352に供給する。
【0208】そして、ステップS31において、予測タップとクラスタップが生成される。
【0209】即ち、タップ生成部341は、そこに供給される復号残差信号のサブフレームを、順次、注目サブフレームとし、さらに、その注目サブフレームの復号残差信号のサンプル値を、順次、注目データとして、注目サブフレームにおける復号残差信号を抽出するとともに、チャネルデコーダ21が出力する注目サブフレームに配置されたLコード等に基づいて、注目サブフレーム以外の復号残差信号を抽出し、即ち、注目サブフレームに配置されているLコードが表すラグだけ過去の位置を始点とする40サンプルの復号残差信号(これも、以下、適宜、ラグ対応の過去データという)、またはLコードが表すラグだけ過去の位置が注目データの位置となるLコードが配置された、注目サブフレームから見て未来方向のサブフレームに配置された40サンプルの復号残差信号(これも、以下、適宜、ラグ対応の未来データという)を抽出し、予測タップを生成する。タップ生成部342も、タップ生成部341と同様にして、クラスタップを生成する。
【0210】さらに、ステップS31では、タップ生成部351と352が、フィルタ係数復号器35が出力する注目サブフレームの復号線形予測係数を、それぞれ、予測タップとクラスタップとして抽出する。
【0211】そして、タップ生成部341で得られた予測タップは予測部345に、タップ生成部342で得られたクラスタップはクラス分類部343に、タップ生成部351で得られた予測タップは予測部355に、タップ生成部352で得られたクラスタップはクラス分類部353に、それぞれ供給される。
【0212】そして、ステップS32に進み、クラス分類部343が、タップ生成部342から供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、係数メモリ344に供給するとともに、クラス分類部353が、タップ生成部352から供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、係数メモリ354に供給して、ステップS33に進む。
【0213】ステップS33では、係数メモリ344が、クラス分類部343から供給されるクラスコードに対応するアドレスから、残差信号についてのタップ係数を読み出し、予測部345に供給するとともに、係数メモリ354が、クラス分類部343から供給されるクラスコードに対応するアドレスから、線形予測係数についてのタップ係数を読み出し、予測部355に供給する。
【0214】そして、ステップS34に進み、予測部345は、係数メモリ344が出力する残差信号についてのタップ係数を取得し、そのタップ係数と、タップ生成部341からの予測タップとを用いて、式(6)に示した積和演算を行い、注目サブフレームの真の残差信号(の予測値)を得る。さらに、ステップS34では、予測部355は、係数メモリ344が出力する線形予測係数についてのタップ係数を取得し、そのタップ係数と、タップ生成部351からの予測タップとを用いて、式(6)に示した積和演算を行い、注目サブフレームの真の線形予測係数(の予測値)を得る。
【0215】以上のようにして得られた残差信号および線形予測係数は、音声合成フィルタ29に供給され、音声合成フィルタ29では、その残差信号および線形予測係数を用いて、式(4)の演算が行われることにより、注目サブフレームの注目データに対応する合成音データが生成される。この合成音データは、音声合成フィルタ29から、D/A変換部30を介して、スピーカ31に供給され、これにより、スピーカ31からは、その合成音データに対応する合成音が出力される。
【0216】予測部345と355において、残差信号と線形予測係数がそれぞれ得られた後は、ステップS35に進み、まだ、注目サブフレームとして処理すべきサブフレームのLコード、Gコード、Iコード、およびAコードがあるかどうかが判定される。ステップS35において、まだ、注目サブフレームとして処理すべきフレームのLコード、Gコード、Iコード、およびAコードがあると判定された場合、ステップS31に戻り、次に注目サブフレームとすべきサブフレームを、新たに注目サブフレームとして、以下、同様の処理を繰り返す。また、ステップS35において、注目サブフレームとして処理すべきフレームのLコード、Gコード、Iコード、およびAコードがないと判定された場合、処理を終了する。
【0217】次に、図18のタップ生成部341においては(クラスタップを生成するタップ生成部342についても同様)、予測タップが、注目サブフレームの復号残差信号と、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方から構成されるが、その構成は、固定とすることもできるが、残差信号の波形の推移に基づいて可変にすることもできる。
【0218】図20は、残差信号の波形の推移に基づいて、予測タップの構成を可変にする場合のタップ生成部341の構成例を示している。なお、図中、図13における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図20のタップ生成部341は、合成音メモリ311とフレームパワー計算部313に替えて、残差信号メモリ361とフレームパワー計算部363が設けられている他は、図13のタップ生成部301と同様に構成されている。
【0219】残差信号メモリ361には、演算器28(図18)が出力する復号残差信号が順次供給されるようになっており、残差信号メモリ361は、その復号残差信号を、順次記憶する。なお、残差信号メモリ361は、注目データについて予測タップとされる可能性のある復号残差信号のうちの、最も過去のサンプルから、最も未来のサンプルまでの間の復号残差信号を記憶することのできる記憶容量を少なくとも有している。また、残差信号メモリ361は、その記憶容量分だけ、復号残差信号を記憶すると、次に供給される復号残差信号のサンプル値を、最も古い記憶値に上書きする形で記憶するようになっている。
【0220】フレームパワー計算部363は、残差信号メモリ361に記憶された残差信号を用い、所定のフレーム単位で、そのフレームにおける残差信号のパワーを求め、バッファ314に供給する。なお、フレームパワー計算部363でパワーを求める単位であるフレームは、図13のフレームパワー計算部313における場合と同様に、CELP方式におけるフレームやサブフレームに一致していても良いし、一致していなくても良い。
【0221】従って、図20のタップ生成部341では、合成音データのパワーでなく、復号残差信号のパワーが求められ、そのパワーに基づいて、残差信号の波形の推移が、例えば、図12で説明したように、立ち上がり状態、たち下がり状態、定常状態のうちのいずれであるかが判定される。そして、その判定結果に基づいて、注目サブフレームの復号残差信号の他、ラグ対応の過去データもしくはラグ対応の未来データのうちの一方または両方が抽出され、予測タップが生成される。
【0222】なお、図18のタップ生成部342も、図20に示したタップ生成部341と同様に構成することができる。
【0223】また、図18の実施の形態では、復号残差信号についてだけ、Lコードに基づいて、予測タップやクラスタップを生成するようにしたが、復号線形予測係数についても、Lコードに基づいて、注目サブフレーム以外の復号線形予測係数を抽出し、予測タップやクラスタップを生成するようにすることが可能である。この場合、図18において点線で示すように、チャネルデコーダ21が出力するLコードを、タップ生成部351や352に供給するようにすれば良い。
【0224】さらに、上述の場合においては、予測タップやクラスタップを、合成音データから生成するときには、合成音データのパワーを求め、そのパワーに基づき、合成音データの波形の推移を判定し、また、復号残差信号から生成するときには、復号残差信号のパワーを求め、そのパワーに基づき、合成音データの波形の推移を判定するようにしたが、合成音データの波形の推移は、残差信号のパワーに基づいて判定することが可能であり、同様に、残差信号の波形の推移は、合成音データのパワーに基づいて判定することが可能である。
【0225】次に、図21は、図18の係数メモリ344と354に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。なお、図中、図16における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【0226】予測フィルタ370には、A/D変換部202が出力する、ディジタル信号とされた学習用の音声信号と、LPC分析部204が出力する線形予測係数が供給される。また、タップ生成部371と372には、演算器214が出力する復号残差信号(音声合成フィルタ206に供給されるのと同一の残差信号)、およびコード決定部215が出力するLコードが供給され、タップ生成部381と382には、ベクトル量子化部205が出力する復号線形予測係数(ベクトル量子化に用いられるコードブックのコードベクトル(セントロイドベクトル)を構成する線形予測係数)が供給される。さらに、正規方程式加算回路384には、LPC分析部204が出力する線形予測係数が供給される。
【0227】予測フィルタ370は、A/D変換部202から供給される学習用の音声信号のサブフレームを、順次、注目サブフレームとして、その注目サブフレームの音声信号と、LPC分析部204から供給される線形予測係数を用いて、例えば、式(1)にしたがった演算を行うことにより、注目フレームの残差信号を求める。この残差信号は、教師データとして、正規方程式加算回路374に供給される。
【0228】タップ生成部371は、演算器214から供給される復号残差信号を用い、コード決定部215が出力するLコードに基づいて、図18のタップ生成部341における場合と同一の予測タップを生成し、正規方程式加算回路374に供給する。タップ生成部372も、演算器214から供給される復号残差信号を用い、コード決定部215が出力するLコードに基づいて、図18のタップ生成部342における場合と同一のクラスタップを生成し、クラス分類部373に供給する。
【0229】クラス分類部373は、タップ生成部371から供給されるクラスタップに基づき、図18のクラス分類部343における場合と同様にのクラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路374に供給する。
【0230】正規方程式加算回路374は、予測フィルタ370からの注目サブフレームの残差信号を、教師データとして受信するとともに、タップ生成部371からの予測タップを、生徒データとして受信し、その教師データおよび生徒データを対象として、クラス分類部373からのクラスコードごとに、図9や図16の正規方程式加算回路134における場合と同様の足し込みを行うことにより、各クラスについて、残差信号に関する式(13)に示した正規方程式をたてる。
【0231】タップ係数決定回路375は、正規方程式加算回路374においてクラスごとに生成された正規方程式それぞれを解くことにより、クラスごとに、残差信号についてのタップ係数をそれぞれ求め、係数メモリ376の、各クラスに対応するアドレスにそれぞれ供給する。
【0232】係数メモリ376は、タップ係数決定回路375から供給されるクラスごとの残差信号についてのタップ係数を記憶する。
【0233】タップ生成部381は、ベクトル量子化部205から供給される、コードベクトルの要素となっている線形予測係数、即ち、復号線形予測係数を用いて、図18のタップ生成部351における場合と同一の予測タップを生成し、正規方程式加算回路384に供給する。タップ生成部382も、ベクトル量子化部205から供給される復号線形予測係数を用い、図18のタップ生成部352における場合と同一のクラスタップを生成し、クラス分類部383に供給する。
【0234】なお、図18の実施の形態において、復号線形予測係数につき、Lコードに基づいて、注目サブフレーム以外の復号線形予測係数を抽出して、予測タップやクラスタップを生成する場合には、図21のタップ生成部381や382においても、同様にして、予測タップやクラスタップを生成する必要があり、この場合、タップ生成部381や382には、図21において点線で示すように、コード決定部215が出力するLコードが供給される。
【0235】クラス分類部383は、図18のクラス分類部353における場合と同様に、タップ生成部382からのクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路384に供給する。
【0236】正規方程式加算回路384は、LPC分析部204からの注目サブフレームの線形予測係数を、教師データとして受信するとともに、タップ生成部381からの予測タップを、生徒データとして受信し、その教師データおよび生徒データを対象として、クラス分類部383からのクラスコードごとに、図9や図16の正規方程式加算回路134における場合と同様の足し込みを行うことにより、各クラスについて、線形予測係数に関する式(13)に示した正規方程式をたてる。
【0237】タップ係数決定回路385は、正規方程式加算回路384においてクラスごとに生成された正規方程式を解くことにより、クラスごとに、線形予測係数についてのタップ係数をそれぞれ求め、係数メモリ386の、各クラスに対応するアドレスに供給する。
【0238】係数メモリ386は、タップ係数決定回路385から供給されるクラスごとの線形予測係数についてのタップ係数を記憶する。
【0239】なお、学習用の音声信号として用意する音声信号によっては、正規方程式加算回路374や384において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路375と385は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【0240】次に、図22のフローチャートを参照して、図21の学習装置が行う、残差信号と線形予測係数それぞれについてのタップ係数を求める学習処理について説明する。
【0241】学習装置には、学習用の音声信号が供給され、ステップS41において、その学習用の音声信号から、教師データと生徒データが生成される。
【0242】即ち、学習用の音声信号は、マイク201に入力され、マイク201乃至コード決定部215は、図1のマイク1乃至コード決定部15における場合とそれぞれ同様の処理を行う。
【0243】その結果、LPC分析部204で得られる線形予測係数は、教師データとして、正規方程式加算回路384に供給される。また、この線形予測係数は、予測フィルタ370にも供給される。さらに、演算器214で得られる復号残差信号は、生徒データとして、タップ生成部371および372に供給される。
【0244】また、A/D変換部202が出力するディジタルの音声信号は、予測フィルタ370に供給され、ベクトル量子化部205が出力する復号線形予測係数は、生徒データとして、タップ生成部381および382に供給される。さらに、コード決定部215は、自乗誤差最小判定部208から確定信号を受信したときの、自乗誤差最小判定部208からのLコードを、タップ生成部371および372に供給する。
【0245】そして、予測フィルタ370は、A/D変換部202から供給される学習用の音声信号のサブフレームを、順次、注目サブフレームとして、その注目サブフレームの音声信号と、LPC分析部204から供給される線形予測係数(注目サブフレームの音声信号から求められた線形予測係数)を用いて、式(1)にしたがった演算を行うことにより、注目サブフレームの残差信号を求める。この予測フィルタ370で得られる残差信号は、教師データとして、正規方程式加算回路374に供給される。
【0246】以上のようにして、教師データと生徒データが得られた後は、ステップS42に進み、タップ生成部371と372が、演算器214から供給される復号残差信号を用い、コード決定部215からのLコードに基づいて、残差信号についての予測タップとクラスタップをそれぞれ生成する。即ち、タップ生成部371と372は、演算器214からの注目サブフレームの復号残差信号と、ラグ対応の過去データまたはラグ対応の未来データとから、残差信号についての予測タップとクラスタップをそれぞれ生成する。
【0247】さらに、ステップS42では、タップ生成部381と382が、ベクトル量子化部205から供給される注目サブフレームの線形予測係数から、線形予測係数についての予測タップとクラスタップを生成する。
【0248】そして、残差信号についての予測タップは、タップ生成部371から正規方程式加算回路374に供給され、残差信号についてのクラスタップは、タップ生成部372からクラス分類部373に供給される。また、線形予測係数についての予測タップは、タップ生成部381から正規方程式加算回路384に供給され、線形予測係数についてのクラスタップは、タップ生成部382からクラス分類回路383に供給される。
【0249】その後、ステップS43において、クラス分類部373と383が、そこに供給されるクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路384と374に、それぞれ供給する。
【0250】そして、ステップS44に進み、正規方程式加算回路374が、予測フィルタ370からの教師データとしての注目サブフレームの残差信号、およびタップ生成部371からの生徒データとしての予測タップを対象として、式(13)の行列Aとベクトルvの、上述したような足し込みを、クラス分類部373からのクラスコードごとに行う。さらに、ステップS44では、正規方程式加算回路384が、LPC分析部204からの教師データとしての注目サブフレームの線形予測係数、およびタップ生成部381からの生徒データとしての予測タップを対象として、式(13)の行列Aとベクトルvの、上述したような足し込みを、クラス分類部383からのクラスコードごとに行い、ステップS45に進む。
【0251】ステップS45では、まだ、注目サブフレームとして処理すべきフレームの学習用の音声信号があるかどうかが判定される。ステップS45において、まだ、注目サブフレームとして処理すべきサブフレームの学習用の音声信号があると判定された場合、ステップS41に戻り、次のサブフレームを新たに注目サブフレームとして、以下、同様の処理が繰り返される。
【0252】また、ステップS45において、注目サブフレームとして処理すべきサブフレームの学習用の音声信号がないと判定された場合、ステップS46に進み、タップ係数決定回路375は、各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、残差信号についてのタップ係数を求め、係数メモリ376の、各クラスに対応するアドレスに供給して記憶させる。さらに、タップ係数決定回路385も、各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、線形予測係数についてのタップ係数を求め、係数メモリ386の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【0253】以上のようにして、係数メモリ376に記憶された各クラスごとの残差信号についてのタップ係数が、図18の係数メモリ344に記憶され、係数メモリ386に記憶された各クラスごとの線形予測係数についてのタップ係数が、図18の係数メモリ354に記憶されている。
【0254】従って、図18の係数メモリ344と354に記憶されたタップ係数は、それぞれ、線形予測演算を行うことにより得られる真の残差信号と線形予測係数の予測値の予測誤差(自乗誤差)が、統計的に最小になるように学習を行うことにより求められたものであるから、図18の予測部345と355が出力する残差信号と線形予測係数は、それぞれ真の残差信号と線形予測係数にほぼ一致することとなり、その結果、これらの残差信号と線形予測係数によって生成される合成音は、歪みの少ない、高音質のものとなる。
【0255】次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0256】そこで、図23は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0257】プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク405やROM403に予め記録しておくことができる。
【0258】あるいはまた、プログラムは、フロッピー(登録商標)ディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体411に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体411は、いわゆるパッケージソフトウエアとして提供することができる。
【0259】なお、プログラムは、上述したようなリムーバブル記録媒体411からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部408で受信し、内蔵するハードディスク405にインストールすることができる。
【0260】コンピュータは、CPU(Central Processing Unit)402を内蔵している。CPU402には、バス401を介して、入出力インタフェース410が接続されており、CPU402は、入出力インタフェース410を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部407が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)403に格納されているプログラムを実行する。あるいは、また、CPU402は、ハードディスク405に格納されているプログラム、衛星若しくはネットワークから転送され、通信部408で受信されてハードディスク405にインストールされたプログラム、またはドライブ409に装着されたリムーバブル記録媒体411から読み出されてハードディスク405にインストールされたプログラムを、RAM(Random Access Memory)404にロードして実行する。これにより、CPU402は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU402は、その処理結果を、必要に応じて、例えば、入出力インタフェース410を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部406から出力、あるいは、通信部408から送信、さらには、ハードディスク405に記録等させる。
【0261】ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0262】また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0263】なお、本実施の形態においては、学習用の音声信号として、どのようなものを用いるかについては、特に言及しなかったが、学習用の音声信号としては、人が発話した音声の他、例えば、曲(音楽)等を採用することが可能である。そして、上述したような学習処理によれば、学習用の音声信号として、人の発話を用いた場合には、そのような人の発話の音声の音質を向上させるようなタップ係数が得られ、曲を用いた場合には、曲の音質を向上させるようなタップ係数が得られることになる。
【0264】また、係数メモリ124等には、タップ係数をあらかじめ記憶させておくようにしたが、係数メモリ124等に記憶させるタップ係数は、携帯電話機101において、図3の基地局102(あるいは交換局103)や、図示しないWWW(World Wide Web)サーバ等からダウンロードするようにすることができる。即ち、上述したように、タップ係数は、人の発話用や曲用等のように、ある種類の音声信号に適したものを、学習によって得ることができる。さらに、学習に用いる教師データおよび生徒データによっては、合成音の音質に差が生じるタップ係数を得ることができる。従って、そのような各種のタップ係数を、基地局102等に記憶させておき、ユーザには、自身の所望するタップ係数をダウンロードさせるようにすることができる。そして、このようなタップ係数のダウンロードサービスは、無料で行うこともできるし、有料で行うこともできる。さらに、タップ係数のダウンロードサービスを有料で行う場合には、タップ係数のダウンロードに対する対価としての代金は、例えば、携帯電話機101の通話料等とともに請求するようにすることが可能である。
【0265】また、係数メモリ124等は、携帯電話機101に対して着脱可能なメモリカード等で構成することができる。この場合、上述したような各種のタップ係数それぞれを記憶させた、異なるメモリカードを提供するようにすれば、ユーザは、場合に応じて、所望のタップ係数が記憶されたメモリカードを、携帯電話機101に装着して使用することが可能となる。
【0266】さらに、本発明は、例えば、VSELP(Vector Sum Excited Liner Prediction),PSI−CELP(Pitch Synchronous Innovation CELP),CS−ACELP(Conjugate Structure Algebraic CELP)等のCELP方式による符号化の結果得られるコードから合成音を生成する場合に、広く適用可能である。
【0267】また、本発明は、CELP方式による符号化の結果得られるコードから合成音を生成する場合に限らず、あるコードから、残差信号と線形予測係数を得て、合成音を生成する場合に、広く適用可能である。
【0268】さらに、本発明は、音声に限らず、例えば、画像等にも適用可能である。即ち、本発明は、Lコードのような、周期を表す周期情報を用いて処理されるデータに、広く適用可能である。
【0269】また、本実施の形態では、タップ係数を用いた線形1次予測演算によって、高音質の音声や、残差信号、線形予測係数の予測値を求めるようにしたが、この予測値は、その他、2次以上の高次の予測演算によって求めることも可能である。
【0270】さらに、本実施の形態では、係数メモリ124等に、タップ係数自体を記憶させておくようにしたが、係数メモリ124等には、その他、例えば、無段階の調整が可能な(アナログ的な変化が可能な)タップ係数の元(種)となる情報としての係数種を記憶させておき、ユーザの操作に応じて、その係数種から、ユーザの所望する音質の音声が得られるようなタップ係数を生成するようにすることが可能である。
【0271】
【発明の効果】本発明の第1のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体によれば、所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、所定の処理に用いるタップが生成され、そのタップを用いて、注目データについて、所定の処理が行われる。従って、従って、例えば、品質の良いデータの復号等が可能となる。
【0272】本発明の第2のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体によれば、学習の教師となる教師データから、所定のデータと周期情報が、学習の生徒となる生徒データとして生成される。そして、生徒データとしての所定のデータのうちの注目している注目データにつき、周期情報に応じて、所定のデータを抽出することにより、教師データを予測するのに用いる予測タップが生成され、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習が行われ、タップ係数が求められる。従って、例えば、品質の良いデータを得るためのタップ係数を得ることが可能となる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013