米国特許情報 | 欧州特許情報 | 国際公開(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−221999(P2002−221999A)
公開日 平成14年8月9日(2002.8.9)
出願番号 特願2001−16868(P2001−16868)
出願日 平成13年1月25日(2001.1.25)
代理人 【識別番号】100082131
【弁理士】
【氏名又は名称】稲本 義雄
【テーマコード(参考)】
5D045
5J064
【Fターム(参考)】
5D045 CA01 
5J064 AA01 BA01 BA13 BB01 BB03 BC01 BC06 BC08 BC09 BC11 BD02
発明者 近藤 哲二郎 / 渡辺 勉 / 木村 裕人
要約 目的


構成
特許請求の範囲
【請求項1】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するデータ処理装置であって、前記符号化データを復号した復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、所定の処理に用いるタップを生成するタップ生成手段と、前記タップを用いて、所定の処理を行う処理手段とを備えることを特徴とするデータ処理装置。
【請求項2】 学習を行うことにより求められたタップ係数を取得するタップ係数取得手段をさらに備え、前記タップ生成手段は、前記タップ係数との所定の予測演算を行う予測タップを生成し、前記処理手段は、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより、前記学習において教師として用いられた教師データに対応する予測値を求めることを特徴とする請求項1に記載のデータ処理装置。
【請求項3】 前記処理手段は、前記予測タップとタップ係数とを用いて、線形1次予測演算を行うことにより、前記予測値を求めることを特徴とする請求項2に記載のデータ処理装置。
【請求項4】 前記タップ生成手段は、前記注目データをクラス分けするクラス分類を行うのに用いられるクラスタップを生成し、前記処理手段は、前記クラスタップに基づき、前記注目データについて、クラス分類を行うことを特徴とする請求項1に記載のデータ処理装置。
【請求項5】 前記処理手段は、前記クラスタップを構成する復号情報に対して、前記所定の単位ごとに重みを付して、クラス分類を行うことを特徴とする請求項4に記載のデータ処理装置。
【請求項6】 前記処理手段は、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報に対して重みを付して、クラス分類を行うことを特徴とする請求項5に記載のデータ処理装置。
【請求項7】 前記処理手段は、前記所定の単位ごとの復号情報に対して、前記クラス分類により得られる全クラス数が一定になるような重みを付して、クラス分類を行うことを特徴とする請求項5に記載のデータ処理装置。
【請求項8】 前記タップ生成手段は、学習を行うことにより求められたタップ係数との所定の予測演算を行う予測タップを生成するとともに、前記注目データをクラス分けするクラス分類を行うのに用いられるクラスタップを生成し、前記処理手段は、前記クラスタップに基づき、前記注目データについて、クラス分類を行い、そのクラス分類の結果得られるクラスに対応する前記タップ係数と、前記予測タップとを用いて、所定の予測演算を行うことにより、前記学習において教師として用いられた教師データに対応する予測値を求めることを特徴とする請求項1に記載のデータ処理装置。
【請求項9】 前記タップ生成手段は、前記注目データに近い位置にある前記復号データまたは前記所定の単位ごとの復号情報を抽出することを特徴とする請求項1に記載のデータ処理装置。
【請求項10】 前記符号化データは、音声を符号化したものであることを特徴とする請求項1に記載のデータ処理装置。
【請求項11】 前記符号化データは、音声を、CELP(Code Excited Liner Prediction coding)方式によって符号化したものであることを特徴とする請求項10に記載のデータ処理装置。
【請求項12】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するデータ処理方法であって、前記符号化データを復号した復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、所定の処理を行う処理ステップとを備えることを特徴とするデータ処理方法。
【請求項13】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを、コンピュータに処理させるプログラムであって、前記符号化データを復号した復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、所定の処理を行う処理ステップとを備えることを特徴とするプログラム。
【請求項14】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを、コンピュータに処理させるプログラムが記録されている記録媒体であって、前記符号化データを復号した復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、所定の処理に用いるタップを生成するタップ生成ステップと、前記タップを用いて、所定の処理を行う処理ステップとを備えるプログラムが記録されていることを特徴とする記録媒体。
【請求項15】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するのに用いる所定のタップ係数を学習するデータ処理装置であって、教師となる教師データを、前記所定の単位ごとの復号情報を有する符号化データに符号化し、その符号化データを復号することにより、生徒となる生徒データとしての復号データを生成する生徒データ生成手段と、前記生徒データとしての復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成手段と、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習手段とを備えることを特徴とするデータ処理装置。
【請求項16】 前記学習手段は、前記予測タップとタップ係数とを用いて、線形一次予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことを特徴とする請求項15に記載のデータ処理装置。
【請求項17】 前記注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、前記注目データをクラス分けするクラス分類を行うのに用いられるクラスタップを生成するクラスタップ生成手段と、前記クラスタップに基づき、前記注目データについて、クラス分類を行うクラス分類手段とをさらに備え、前記学習手段は、前記クラス分類手段によるクラス分類の結果得られるクラスごとに、前記タップ係数を求めることを特徴とする請求項15に記載のデータ処理装置。
【請求項18】 前記クラス分類手段は、前記クラスタップを構成する復号情報に対して、前記所定の単位ごとに重みを付して、クラス分類を行うことを特徴とする請求項17に記載のデータ処理装置。
【請求項19】 前記クラス分類手段は、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報に対して重みを付して、クラス分類を行うことを特徴とする請求項18に記載のデータ処理装置。
【請求項20】 前記クラス分類手段は、前記所定の単位ごとの復号情報に対して、前記クラス分類により得られる全クラス数が一定になるような重みを付して、クラス分類を行うことを特徴とする請求項18に記載のデータ処理装置。
【請求項21】 前記タップ生成手段は、前記注目データに近い位置にある前記復号データまたは前記所定の単位ごとの復号情報を抽出することを特徴とする請求項15に記載のデータ処理装置。
【請求項22】 前記教師データは、音声データであることを特徴とする請求項15に記載のデータ処理装置。
【請求項23】 生徒データ生成手段は、前記教師データとしての音声データを、CELP(Code Excited Liner Prediction coding)方式によって符号化することを特徴とする請求項22に記載のデータ処理装置。
【請求項24】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するのに用いる所定のタップ係数を学習するデータ処理方法であって、教師となる教師データを、前記所定の単位ごとの復号情報を有する符号化データに符号化し、その符号化データを復号することにより、生徒となる生徒データとしての復号データを生成する生徒データ生成ステップと、前記生徒データとしての復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えることを特徴とするデータ処理方法。
【請求項25】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するのに用いる所定のタップ係数を学習するデータ処理を、コンピュータに行わせるプログラムであって、教師となる教師データを、前記所定の単位ごとの復号情報を有する符号化データに符号化し、その符号化データを復号することにより、生徒となる生徒データとしての復号データを生成する生徒データ生成ステップと、前記生徒データとしての復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えることを特徴とするプログラム。
【請求項26】 復号に用いられる情報である復号情報を、所定の単位ごとに有する符号化データを処理するのに用いる所定のタップ係数を学習するデータ処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、教師となる教師データを、前記所定の単位ごとの復号情報を有する符号化データに符号化し、その符号化データを復号することにより、生徒となる生徒データとしての復号データを生成する生徒データ生成ステップと、前記生徒データとしての復号データのうちの注目している注目データと所定の位置関係にある前記復号データを抽出するとともに、前記注目データの、前記所定の単位における位置に応じて、前記所定の単位ごとの復号情報を抽出することにより、教師データを予測するのに用いる予測タップを生成する予測タップ生成ステップと、前記予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、前記タップ係数を求める学習ステップとを備えるプログラムが記録されていることを特徴とする記録媒体。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明は、データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体に関し、特に、特に、例えば、CELP(Code Excited Liner Predictioncoding)方式で符号化された音声を、高音質の音声に復号することができるようにするデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体に関する。
【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’が用いられるため、即ち、量子化誤差を含む線形予測係数α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に出力する。即ち、適応コードブック記憶部9は、例えば、メモリで構成され、演算器14からの残差信号eを、7ビットのレコードが表す値に対応するサンプル分だけ遅延して、演算器12に出力する。
【0020】ここで、適応コードブック記憶部9は、残差信号eを、Lコードに対応する時間だけ遅延して出力することから、その出力信号は、その遅延時間を周期とする周期信号に近い信号となる。この信号は、線形予測係数を用いた音声合成において、主として、有声音の合成音を生成するための駆動信号となる。
【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、および図13においても同様)では、各変数に、[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】即ち、適応処理では、例えば、CELP方式により復号された合成音と、所定のタップ係数との線形結合により、真の高音質の音声の予測値が求められる。
【0058】具体的には、例えば、いま、真の高音質の音声(のサンプル値)を教師データとするとともに、その真の高音質の音声を、CELP方式によって、Lコード、Gコード、Iコード、およびAコードに符号化し、それらのコードを、図2に示した受信部でCELP方式により復号することによって得られる合成音を生徒データとして、教師データである高音質の音声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では、以上のようなクラス分類適応処理により、コードデータをCELP方式により復号して得られる合成音を、さらに、高音質の音声に復号するようになっている。
【0078】即ち、図5は、図4の受信部114の構成例を示している。なお、図中、図2における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【0079】タップ生成部121と122には、音声合成フィルタ29が出力する、サブフレームごとの合成音データと、チャネルデコーダ21が出力する、サブフレームごとのLコード、Gコード、Iコード、AコードのうちのIコードとが供給されるようになっている。タップ生成部121と122は、そこに供給される合成音データとIコードから、高音質の音声の予測値を予測するのに用いる予測タップとするものと、クラス分類に用いるクラスタップとするものを、それぞれ抽出する。予測タップは、予測部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処理の結果得られる、クラスタップを構成する各データのKビットの値を所定の順番で並べたビット列が、クラスコードとされる。
【0084】なお、その他、クラス分類は、例えば、クラスタップを、それを構成する各データを要素とするベクトルと見なして、そのベクトルとしてのクラスタップをベクトル量子化すること等によって行うことも可能である。
【0085】係数メモリ124は、後述する図13の学習装置において学習処理が行われることにより得られる、クラスごとのタップ係数を記憶しており、クラス分類部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に供給する。さらに、Iコードは、タップ生成部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において、その注目サブフレームの合成音と、後述するサブフレームのIコードとから、予測タップを生成し、予測部125に供給する。さらに、ステップS1では、タップ生成部122は、やはり、注目サブフレームの合成音と、後述するサブフレームのIコードとから、クラスタップを生成し、クラス分類部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を参照して、図5のタップ生成部121での予測タップの生成方法について説明する。
【0099】タップ生成部121は、例えば、図7に示すように、サブフレームの各合成音データ(音声合成フィルタ29が出力する合成音データ)を注目データとして、その注目データから過去のNサンプルの合成音データ(図7において、Aで示す範囲の合成音データ)や、注目データを中心とする過去と未来の合計Nサンプルの合成音データ(図7において、Bで示す範囲の合成音データ)を、予測タップとして抽出する。
【0100】さらに、タップ生成部121は、例えば、注目データが位置するサブフレーム(図7の実施の形態においては、サブフレーム#3)、即ち、注目サブフレームに配置されたIコードをも、予測タップとして抽出する。
【0101】従って、この場合、予測タップは、注目データを含むNサンプルの合成音データと、注目サブフレームのIコードとから構成される。
【0102】なお、タップ生成部122においても、例えば、タップ生成部121における場合と同様にして、合成音データとIコードからなるクラスタップが抽出される。
【0103】但し、予測タップやクラスタップの構成パターンは、上述したパターンのものに限定されるものではない。即ち、予測タップやクラスタップとしては、注目データについて、上述のようなNサンプルすべての合成音データを抽出する他、1サンプルおき等の合成音データを抽出するようにすることが可能である。
【0104】また、上述の場合には、同一のクラスタップおよび予測タップを構成するようにしたが、クラスタップと予測タップとは、異なる構成とすることができる。
【0105】ところで、予測タップやクラスタップは、合成音データだけから構成することが可能であるが、上述のように、予測タップやクラスタップを、合成音データの他、その合成音データに関係する情報としてのIコードをも用いて構成することによって、より高音質の音声を復号することが可能となる。
【0106】しかしながら、上述の場合のように、注目データが位置するサブフレーム(注目サブフレーム)に配置されたIコードだけを、予測タップやクラスタップに含めるようにした場合には、その予測タップやクラスタップを構成する合成音データと、Iコードとの、いわば釣り合いがとれず、そのため、クラス分類適応処理による音質の改善効果を、十分に得られなくなるおそれがある。
【0107】即ち、例えば、図7において、注目データから過去のNサンプルの合成音データ(図7において、Aで示す範囲の合成音データ)を、予測タップに含める場合、その予測タップとなる合成音データには、注目サブフレームの合成音データだけでなく、その直前のサブフレームの合成音データも含まれる。従って、この場合、注目サブフレームに配置されたIコードを予測タップに含めるのならば、その直前のサブフレームに配置されたIコードも、予測タップに含めなければ、予測タップ構成する合成音データと、Iコードとの関係が釣り合いのとれたものとならないおそれがある。
【0108】そこで、予測タップやクラスタップを構成させるIコードのサブフレームは、注目データの、注目サブフレームの位置に応じて可変にするようにすることが可能である。
【0109】即ち、例えば、注目データについて構成される予測タップに含まれる合成音データが、注目サブフレームの直前または直後に隣接するサブフレーム(以下、隣接サブフレームという)にまで亘る場合や、注目サブフレームの、隣接サブフレームに近い位置にまで亘る場合には、注目サブフレームのIコードだけでなく、隣接サブフレームのIコードも含めて、予測タップを構成するようにすることが可能である。クラスタップも同様にして構成することが可能である。
【0110】このように、予測タップやクラスタップを、それを構成する合成音データとIコードとの釣り合いがとれるように構成することで、クラス分類適応処理による音質の改善効果を、十分に得ることが可能となる。
【0111】図8は、上述のように、予測タップを構成させるIコードのサブフレームを、注目データの、注目サブフレームの位置に応じて可変にすることによって、予測タップを、それを構成する合成音データとIコードとの釣り合いがとれるように構成するタップ生成部121の構成例を示している。なお、クラスタップを構成するタップ生成部122も、図8と同様に構成することができる。
【0112】メモリ41Aには、図5の音声合成フィルタ29が出力する合成音データが供給されるようになっており、メモリ41Aは、そこに供給される合成音データを一時記憶する。なお、メモリ41Aは、少なくとも、1つの予測タップを構成するNサンプルの合成音データを記憶することのできる記憶容量を有している。また、メモリ41Aは、そこに供給される合成音データの最新のサンプルを、最も古い記憶値に上書きする形で順次記憶するようになっている。
【0113】そして、データ抽出回路42Aは、注目データについて、予測タップを構成する合成音データを、メモリ41Aから読み出すことで抽出し、合成回路43に出力する。
【0114】即ち、データ抽出回路42Aは、例えば、メモリ41Aに記憶された最新の合成音データを注目データとする場合、その最新の合成音データから過去のNサンプルの合成音データを、メモリ41Aから読み出すことで抽出し、合成回路43に出力する。
【0115】なお、図7においてBで示したように、注目データを中心とする過去と未来のNサンプルの合成音データを、予測タップとする場合には、メモリ41Aに記憶された合成音データのうちの、最新の合成音データから、N/2(小数点以下繰り上げ)サンプルだけ過去のものを、注目データとして、その注目データを中心とする過去と未来の合計Nサンプルの合成音データを、メモリ41Aから読み出すようにすれば良い。
【0116】一方、メモリ41Bには、図5のチャネルデコーダ21が出力するサブフレーム単位のIコードが供給されるようになっており、メモリ41Bは、そこに供給されるIコードを一時記憶する。なお、メモリ41Bは、少なくとも、1つの予測タップを構成しうる分のIコードを記憶することのできる記憶容量を有している。また、メモリ41Bは、メモリ41Aと同様に、そこに供給される最新のIコードを、最も古い記憶値に上書きする形で順次記憶するようになっている。
【0117】そして、データ抽出回路42Bは、データ抽出回路42Aが注目データとする合成音データの、注目サブフレームにおける位置に応じて、注目サブフレームのIコードだけ、または注目サブフレームのIコードと、それに隣接するサブフレーム(隣接サブフレーム)のIコードとを、メモリ41Bから読み出すことで抽出し、合成回路43に出力する。
【0118】合成回路43は、データ抽出回路42Aからの合成音データと、データ抽出回路42BからのIコードとを、1セットのデータに合成(結合)し、予測タップとして出力する。
【0119】ところで、タップ生成部121において、以上のように予測タップを生成する場合には、その予測タップを構成する合成音データは、Nサンプルで一定であるが、Iコードについては、注目サブフレームのIコードだけの場合と、注目サブフレームのIコード、およびそれに隣接するサブフレーム(隣接サブフレーム)のIコードの場合とがあるため、その数が変化する。このことは、タップ生成部122において生成されるクラスタップについても同様である。
【0120】予測タップについては、それを構成するデータの数(タップ数)が変化しても、その予測タップと同一の数のタップ係数を、後述する図13の学習装置において学習し、係数メモリ124に記憶させておけば良いから問題はない。
【0121】一方、クラスタップについては、それを構成するタップ数が変化すると、そのクラスタップによって得られる全クラス数が変化することから、処理が複雑になるおそれがある。そこで、クラスタップのタップ数が変化しても、そのクラスタップにより得られるクラス数が変化しないようなクラス分類を行うのが望ましい。
【0122】このように、クラスタップのタップ数が変化しても、そのクラスタップにより得られるクラス数が変化しないようなクラス分類を行う方法としては、クラスを表すクラスコードに、例えば、注目データの、注目サブフレームにおける位置を考慮する方法がある。
【0123】即ち、本実施の形態では、注目データの、注目サブフレームにおける位置によって、クラスタップのタップ数が増減する。例えば、いま、クラスタップのタップ数がS個の場合と、それより多いL(>S)個の場合とが存在し、タップ数がS個の場合に、nビットのクラスコードが得られ、タップ数がL個の場合に、n+mビットのクラスコードが得られるとする。
【0124】この場合、クラスコードとして、n+m+1ビットを用いるとともに、そのn+m+1ビットのうちの、例えば、最上位ビットなどの1ビットを、クラスタップのタップ数がS個の場合とL個の場合とで、それぞれ、例えば、0と1に設定することにより、タップ数がS個とL個のいずれであっても、全クラス数が2n+m+1クラスのクラス分類が可能となる。
【0125】即ち、クラスタップのタップ数がL個の場合には、n+mビットのクラスコードが得られるクラス分類を行い、そのn+mビットのクラスコードに、その最上位ビットとして、タップ数がL個であることを表す”1”を付加したn+m+1ビットを最終的なクラスコードとすれば良い。
【0126】また、クラスタップのタップ数がS個の場合には、nビットのクラスコードが得られるクラス分類を行い、そのnビットのクラスコードに、その上位ビットとして、mビットの”0”を付加してn+mビットとし、さらに、そのn+mビットに、その最上位ビットとして、タップ数がS個であることを表す”0”を付加したn+m+1ビットを最終的なクラスコードとすれば良い。
【0127】ところで、上述のようにすることで、クラスタップのタップ数がS個とL個のいずれの場合であっても、全クラス数が2n+m+1クラスとなるクラス分類が可能となるが、タップ数がS個の場合においては、最上位ビットから数えて2ビット目から、m+1ビット目までのビットは、常に”0”になる。
【0128】従って、上述のように、n+m+1ビットのクラスコードを出力するクラス分類を行った場合には、使用されないクラス(を表すクラスコード)が生じること、即ち、いわば無駄なクラスが生じることになる。
【0129】そこで、そのような無駄なクラスが生じることを防止して、全クラス数を一定にするために、クラス分類は、クラスタップを構成するデータに重みを付して行うことが可能である。
【0130】即ち、例えば、図7においてAで示した、注目データから過去Nサンプルの合成音データをクラスタップに含めるとともに、注目データの、注目サブフレームにおける位置に応じて、注目サブフレーム(以下、適宜、注目サブフレーム#nと記載する)のIコード、または直前のサブフレーム#n−1のIコードのいずれか一方または両方を、クラスタップに含める場合においては、そのクラスタップを構成する注目サブフレーム#nのIコードに対応するクラス数と、直前のサブフレーム#n−1のIコードに対応するクラス数に対して、それぞれ、例えば、図9(A)と図9(B)に示すような重み付けを行うことにより、全クラス数を一定にすることができる。
【0131】即ち、図9(A)は、注目データが、注目サブフレーム#nの右方向(未来方向)に位置するほど、注目サブフレーム#nのIコードに対応するクラス数が増大するような、クラス分類が行われることを表している。また、図9(B)は、注目データが、注目サブフレーム#nの右方向に位置するほど、注目サブフレーム#nの直前のサブフレーム#n−1のIコードに対応するクラス数が減少するような、クラス分類が行われることを表している。そして、図9(A)と図9(B)のような重み付けが行われることにより、全体としては、クラス数が一定になるクラス分類が行われる。
【0132】また、例えば、図7においてBで示した、注目データを中心とする過去と未来の合計Nサンプルの合成音データを、クラスタップに含めるとともに、注目データの、注目サブフレームにおける位置に応じて、注目サブフレーム#nのIコードと、その直前のサブフレーム#n−1若しくは直後のサブフレーム#n+1のIコードのいずれか一方または両方とを、クラスタップに含める場合においては、そのクラスタップを構成する注目サブフレーム#nのIコードに対応するクラス数、直前のサブフレーム#n−1のIコードに対応するクラス数、直後のサブフレーム#n+1のIコードに対応するクラス数に対して、それぞれ、例えば、図9(C)、図9(D)、図9(E)に示すような重み付けを行うことにより、全クラス数を一定にすることができる。
【0133】即ち、図9(C)は、注目データが、注目サブフレーム#nの中心位置に近いほど、注目サブフレーム#nのIコードに対応するクラス数が増大するような、クラス分類が行われることを表している。また、図9(D)は、注目データが、注目サブフレーム#nの左方向(過去方向)に位置するほど、注目サブフレーム#nの直前のサブフレーム#n−1のIコードに対応するクラス数が増大するような、クラス分類が行われることを表している。さらに、図9(E)は、注目データが、注目サブフレーム#nの右方向(未来方向)に位置するほど、注目サブフレーム#nの直後のサブフレーム#n+1のIコードに対応するクラス数が増大するような、クラス分類が行われることを表している。そして、図9(C)乃至図9(E)のような重み付けが行われることにより、全体としては、クラス数が一定になるクラス分類が行われる。
【0134】次に、図10は、Iコードに対応するクラス数が、例えば、512クラスで一定となるように、クラス分類を行う場合の重み付けの例を示している。
【0135】即ち、図10(A)は、注目データの、注目サブフレームにおける位置に応じて、注目サブフレーム#nのIコード、または直前のサブフレーム#n−1のIコードのいずれか一方または両方を、クラスタップに含める場合の、図9(A)および図9(B)に示した重み付けの具体例を示している。
【0136】また、図10(B)は、注目データの、注目サブフレームにおける位置に応じて、注目サブフレーム#nのIコードと、その直前のサブフレーム#n−1若しくは直後のサブフレーム#n+1のIコードのいずれか一方または両方とを、クラスタップに含める場合の、図9(C)乃至図9(D)に示した重み付けの具体例を示している。
【0137】図10(A)において、その最左欄は、注目サブフレームにおける注目データの左端からの位置を、左から2番目の欄は、注目サブフレームの直前のサブフレームのIコードによるクラス数を、左から3番目の欄は、注目サブフレームのIコードによるクラス数を、最右欄は、クラスタップを構成するIコードによるクラス数(注目サブフレームのIコードと、その直前のサブフレームのIコードとによるクラス数)を、それぞれ示している。
【0138】ここで、サブフレームは、例えば、前述したように、40サンプルで構成されるため、注目サブフレームにおける注目データの左端からの位置(最左欄)は、1乃至40の範囲の値をとる。また、Iコードは、例えば、前述したように、9ビットであるため、その9ビットを、そのままクラスコードとした場合が、クラス数が最大となる場合となる。従って、Iコードによるクラス数(左から2番目と3番目の欄)は、29(=512)以下の値となる。
【0139】さらに、上述のように、1つのIコードを、そのままクラスコードとして用いた場合には、そのクラス数は、512(=29)となることから、図10(A)では(後述する図10(B)においても同様)、クラスタップを構成するすべてのIコードによるクラス数(注目サブフレームのIコードと、その直前のサブフレームのIコードとによるクラス数)が、512クラスとなるように、即ち、注目サブフレームのIコードによるクラス数と、その直前のサブフレームのIコードによるクラス数との積が、512クラスとなるように、注目サブフレームのIコードによるクラス数と、その直前のサブフレームのIコードによるクラス数とに、重み付けが行われている。
【0140】図10(A)においては、図9(A)で説明したように、注目データが、注目サブフレーム#nの右方向に位置するほど(注目データの位置を表す値が大きくなるほど)、注目サブフレーム#nのIコードに対応するクラス数が増大するとともに、図9(B)で説明したように、注目サブフレーム#nの直前のサブフレーム#n−1のIコードに対応するクラス数が減少している。
【0141】また、図10(B)において、その最左欄、左から2番目の欄、3番目の欄、および最右欄は、図10(A)における場合と同様の内容を示している。そして、左から4番目の欄は、注目サブフレームの直後のサブフレームのIコードによるクラス数を示している。
【0142】図10(B)においては、図9(C)で説明したように、注目データが、注目サブフレーム#nの中心位置からずれるほど(注目データの位置を表す値が大きくまたは小さくなるほど)、注目サブフレーム#nのIコードに対応するクラス数が減少している。また、図9(D)で説明したように、注目データが、注目サブフレーム#nの左方向に位置するほど、注目サブフレーム#nの直前のサブフレーム#n−1のIコードに対応するクラス数が増大している。さらに、図9(E)で説明したように、注目データが、注目サブフレーム#nの右方向に位置するほど、注目サブフレーム#nの直後のサブフレーム#n+1のIコードに対応するクラス数が増大している。
【0143】次に、図11は、上述のような重み付けを伴うクラス分類を行う、図5のクラス分類部123の構成例を示している。
【0144】なお、ここでは、クラスタップは、例えば、図7においてAで示した、注目データから過去Nサンプルの合成音データと、注目サブフレームおよびその直前のサブフレームのIコードとから構成されるものとする。
【0145】タップ生成部122(図5)が出力するクラスタップは、合成音データ切り出し部51とコード切り出し部53に供給される。
【0146】合成音データ切り出し部51は、そこに供給されるクラスタップから、そのクラスタップを構成する複数サンプルの合成音データを切り出し(抽出し)、ADRC回路52に供給する。ADRC回路52は、合成音データ切り出し部51から供給される複数の合成音データ(ここでは、Nサンプルの合成音データ)に対して、例えば、1ビットADRC処理を施し、その結果得られる複数の合成音データについての1ビットを所定の順番で並べたビット列を、合成回路56に供給する。
【0147】一方、コード切り出し部53は、そこに供給されるクラスタップから、そのクラスタップを構成するIコードを切り出す(抽出する)。さらに、コード切り出し部53は、その切り出したIコードのうち、注目サブフレームのIコードと、直前のサブフレームのIコードを、縮退部54Aと54Bに、それぞれ供給する。
【0148】縮退部54Aは、後述するテーブル作成処理によって作成された縮退テーブルを記憶しており、その縮退テーブルを用い、図9および図10で説明したようにして、注目データの注目サブフレームにおける位置にしたがって、注目サブフレームのIコードによって表されるクラス数を縮退(減少)させ、合成回路55に出力する。
【0149】即ち、縮退部54Aは、注目データの注目サブフレームにおける位置が、左から1乃至4番目のいずれかである場合には、例えば、図10(A)に示したように、注目サブフレームのIコードによって表される512のクラス数を、512クラスにするように縮退処理して、即ち、注目サブフレームの9ビットのIコードを、特に処理せずに、そのまま出力する。
【0150】また、縮退部54Aは、注目データの注目サブフレームにおける位置が、左から5乃至8番目のいずれかである場合には、例えば、図10(A)に示したように、注目サブフレームのIコードによって表される512のクラス数を、256クラスにするように縮退処理して、即ち、注目サブフレームの9ビットのIコードを、縮退テーブルを用いて、8ビットで表されるコードに変換して出力する。
【0151】さらに、縮退部54Aは、注目データの注目サブフレームにおける位置が、左から9乃至12番目のいずれかである場合には、例えば、図10(A)に示したように、注目サブフレームのIコードによって表される512のクラス数を、128クラスにするように縮退処理して、即ち、注目サブフレームの9ビットのIコードを、縮退テーブルを用いて、7ビットで表されるコードに変換して出力する。
【0152】縮退部54Aは、以下、同様に、注目データの注目サブフレームにおける位置にしたがって、注目サブフレームのIコードによって表されるクラス数を、例えば、図10(A)の左から2番目の欄に示したように縮退させて、合成回路55に出力する。
【0153】縮退部54Bも、縮退部54Aと同様に、縮退テーブルを記憶しており、その縮退テーブルを用い、注目データの注目サブフレームにおける位置にしたがって、注目サブフレームの直前のサブフレームのIコードによって表されるクラス数を、例えば、図10(A)の左から3番目の欄に示したように縮退させて、合成回路55に出力する。
【0154】合成回路55は、縮退部54Aからの、クラス数が適宜縮退された注目サブフレームのIコードと、縮退部54Bからの、クラス数が適宜縮退された注目サブフレームの直前のサブフレームのIコードとを、1つのビット列に合成し、合成回路56に出力する。
【0155】合成回路56は、ADRC回路52が出力するビット列と、合成回路55が出力するビット列とを結合して、1つのビット列とし、クラスコードとして出力する。
【0156】次に、図12のフローチャートを参照して、図11の縮退部54Aおよび54Bで用いられる縮退テーブルを作成するテーブル作成処理について説明する。
【0157】縮退テーブル作成処理では、まず最初に、ステップS11において、縮退後のクラス数Mが設定される。なお、ここでは、Mは、説明を簡単にするために、例えば、2累乗の値とする。さらに、ここでは、9ビットのIコードによって表されるクラス数を縮退するための縮退テーブルを作成するので、Mは、9ビットのIコードによって表される最大のクラス数である512以下の値とする。
【0158】その後、ステップS12に進み、縮退後のクラスコードを表す変数cに0をセットし、ステップS13に進む。ステップS13では、Iコードすべて(最初は、9ビットのIコードによって表される数すべて)を、処理の対象とする対象Iコードに設定し、ステップS14に進む。ステップS14では、対象Iコードのうちの1つを、注目Iコードとして選択し、ステップS15に進む。
【0159】ステップS15では、注目Iコードによって表される波形(励起信号の波形)と、注目Iコードを除く、すべての対象コードによって表される波形それぞれとの自乗誤差が計算される。
【0160】即ち、前述したように、Iコードは、所定の励起信号と対応付けられており、ステップS15では、注目Iコードによって表される励起信号の波形の各サンプル値と、対象Iコードによって表される励起信号の波形の、対応するサンプル値との自乗誤差の総和が求められる。ステップS15では、このような注目Iコードについての自乗誤差の総和が、対象Iコードすべてを対象として求められる。
【0161】その後、ステップS16に進み、注目Iコードについての自乗誤差の総和を最小にする対象Iコード(以下、適宜、自乗誤差最小Iコードという)が検出され、注目Iコードと、自乗誤差最小Iコードとが、変数cによって表されるコードに対応付けられる。即ち、これにより、注目Iコードと、対象Iコードのうち、注目Iコードによって表される波形と最も近似する波形を表すもの(自乗誤差最小Iコード)とが、同一のクラスcに縮退される。
【0162】ステップS16の処理後は、ステップS17に進み、注目Iコードによって表される波形の各サンプル値と、自乗誤差最小Iコードによって表される波形の、対応するサンプル値との、例えば平均値が求められ、その平均値による波形が、変数cが表す励起信号の波形として、変数cに対応付けられる。
【0163】そして、ステップS18に進み、注目Iコードと、自乗誤差最小Iコードとが、対象Iコードが除外され、ステップS19に進み、変数cが1だけインクリメントされて、ステップS20に進む。
【0164】ステップS20では、対象IコードとなっているIコードが、まだ存在するかどうかが判定され、存在すると判定された場合、ステップS14に戻り、対象IコードとなっているIコードから、注目Iコードが選択され、以下、同様の処理が繰り返される。
【0165】また、ステップS20において、対象IコードとなっているIコードが存在しないと判定された場合、即ち、直前のステップS13において、対象IコードとされたIコードが、その総数の1/2の数の変数cに対応付けられた場合、ステップS21に進み、変数cが、縮退後のクラス数Mに等しいかどうかが判定される。
【0166】ステップS21において、変数cが、縮退後のクラス数Mに等しくないと判定された場合、即ち、9ビットのIコードによって表されるクラス数が、まだMクラスに縮退されていない場合、ステップS22に進み、変数cによって表される各値が、新たに、Iコードとみなされ、ステップS12に戻り、その新たなIコードを対象として、以下、同様の処理が繰り返される。
【0167】なお、この新たなIコードについては、ステップS17で求められた波形が、その新たなIコードが表す励起信号の波形として、ステップS15における自乗誤差の計算が行われる。
【0168】一方、ステップS21において、変数cが、縮退後のクラス数Mに等しいと判定された場合、即ち、9ビットのIコードによって表されるクラス数が、Mクラスに縮退された場合、ステップS23に進み、変数cの各値と、その値に対応付けられている9ビットのIコードとの対応表が作成され、この対応表が、縮退テーブルとして出力されて、処理を終了する。
【0169】図11の縮退部54Aおよび54Bでは、そこに供給される9ビットのIコードが、上述のようにして作成された縮退テーブルにおいて、その9ビットのIコードと対応付けられている変数cに変換されることで縮退される。
【0170】なお、9ビットのIコードによるクラス数の縮退は、その他、例えば、単に、Iコードの下位ビットを削除することによって行うことも可能である。但し、クラス数の縮退は、類似するクラスどうしをまとめるように行うのが望ましく、従って、Iコードの下位ビットを単に削除するよりは、図12で説明したように、波形が似ている励起信号の信号を表すIコードどうしを、同一のクラスに割り当てるようにする方が望ましい。
【0171】次に、図13は、図5の係数メモリ124に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。
【0172】マイク201乃至コード決定部215は、図1のマイク1乃至コード決定部15とそれぞれ同様に構成される。マイク1には、学習用の高音質の音声信号が入力されるようになっており、従って、マイク201乃至コード決定部215では、その学習用の音声信号に対して、図1における場合と同様の処理が施される。
【0173】但し、コード決定部215は、Lコード、Gコード、Iコード、およびAコードのうち、本実施の形態において予測タップやクラスタップを構成するIコードだけを出力するようになっている。
【0174】そして、タップ生成部131と132には、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときの音声合成フィルタ206が出力する合成音が供給される。さらに、タップ生成部131と132には、コード決定部215が、自乗誤差最小判定部208から確定信号を受信したときに出力するIコードも供給される。また、正規方程式加算回路134には、A/D変換部202が出力する音声が、教師データとして供給される。
【0175】タップ生成部131は、音声合成フィルタ206が出力する合成音データと、コード決定部215が出力するIコードとから、図5のタップ生成部121における場合と同一の予測タップを生成し、生徒データとして、正規方程式加算回路134に供給する。
【0176】タップ生成部132も、音声合成フィルタ206が出力する合成音と、コード決定部215が出力するIコードとから、図5のタップ生成部122における場合と同一のクラスタップを生成し、クラス分類部133に供給する。
【0177】クラス分類部133は、タップ生成部132からのクラスタップに基づいて、図5のクラス分類部123における場合と同様のクラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路134に供給する。
【0178】正規方程式加算回路134は、A/D変換部202からの音声を、教師データとして受信するとともに、タップ生成部131からの予測タップを、生徒データとして受信し、その教師データおよび生徒データを対象として、クラス分類部133からのクラスコードごとに足し込みを行う。
【0179】即ち、正規方程式加算回路134は、クラス分類部133から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)を用い、式(13)の行列Aにおける各コンポーネントとなっている、生徒データどうしの乗算(xinim)と、サメーション(Σ)に相当する演算を行う。
【0180】さらに、正規方程式加算回路134は、やはり、クラス分類部133から供給されるクラスコードに対応するクラスごとに、生徒データおよび教師データを用い、式(13)のベクトルvにおける各コンポーネントとなっている、生徒データと教師データの乗算(xini)と、サメーション(Σ)に相当する演算を行う。
【0181】正規方程式加算回路134は、以上の足し込みを、そこに供給される学習用の音声のサブフレームすべてを注目サブフレームとして行い、これにより、各クラスについて、式(13)に示した正規方程式をたてる。
【0182】タップ係数決定回路135は、正規方程式加算回路134においてクラスごとに生成された正規方程式を解くことにより、クラスごとに、タップ係数を求め、係数メモリ136の、各クラスに対応するアドレスに供給する。
【0183】なお、学習用の音声信号として用意した音声信号によっては、正規方程式加算回路134において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路135は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【0184】係数メモリ136は、タップ係数決定回路135から供給されるクラスごとのタップ係数を、そのクラスに対応するアドレスに記憶する。
【0185】次に、図14のフローチャートを参照して、図13の構成される学習装置で行われる、高音質の音声を復号するためのタップ係数を求める学習処理について説明する。
【0186】即ち、学習装置には、学習用の音声信号が供給され、ステップS31では、その学習用の音声信号から、教師データと生徒データが生成される。
【0187】即ち、学習用の音声信号は、マイク201に入力され、マイク201乃至コード決定部215は、図1のマイク1乃至コード決定部15における場合とそれぞれ同様の処理を行う。
【0188】その結果、A/D変換部202で得られるディジタル信号の音声は、教師データとして、正規方程式加算回路134に供給される。また、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときに、音声合成フィルタ206が出力する合成音データが、生徒データとして、タップ生成部131と132に供給される。さらに、自乗誤差最小判定部208において自乗誤差が最小になったと判定されたときに、コード決定部215が出力するIコードも、生徒データとして、タップ生成部131と132に供給される。
【0189】その後、ステップS32に進み、タップ生成部131は、音声合成フィルタ206から生徒データとして供給される合成音のサブフレームを注目サブフレームとし、さらに、その注目サブフレームの合成音データを、順次、注目データとして、各注目データについて、音声合成フィルタ206からの合成音データと、コード決定部215からのIコードとから、図5のタップ生成部121における場合と同様にして、予測タップを生成し、正規方程式加算回路134に供給する。さらに、ステップS32では、タップ生成部132が、やはり、合成音データと、Iコードとから、図5のタップ生成部122における場合と同様にして、クラスタップを生成し、クラス分類部133に供給する。
【0190】ステップS32の処理後は、ステップS33に進み、クラス分類部133が、タップ生成部132からのクラスタップに基づいて、クラス分類を行い、その結果得られるクラスコードを、正規方程式加算回路134に供給する。
【0191】そして、ステップS34に進み、正規方程式加算回路134は、A/D変換器202からの教師データとしての学習用の音声のうちの注目データに対応するもの、およびタップ生成部132からの生徒データとしての予測タップ(注目データについて生成された予測タップ)を対象として、式(13)の行列Aとベクトルvの、上述したような足し込みを、クラス分類部133からの注目データについてのクラスコードごとに行い、ステップS35に進む。
【0192】ステップS35では、まだ、注目サブフレームとして処理すべき次のサブフレームがあるかどうかが判定される。ステップS35において、まだ、注目サブフレームとして処理すべき次のサブフレームがあると判定された場合、ステップS31に戻り、次のサブフレームを新たに注目サブフレームとして、以下、同様の処理が繰り返される。
【0193】また、ステップS35において、注目サブフレームとして処理すべきサブフレームがないと判定された場合、ステップS36に進み、タップ係数決定回路135は、正規方程式加算回路134で各クラスごとに生成された正規方程式を解くことにより、各クラスごとに、タップ係数を求め、係数メモリ136の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【0194】以上のようにして、係数メモリ136に記憶された各クラスごとのタップ係数が、図5の係数メモリ124に記憶されている。
【0195】以上のように、図5の係数メモリ124に記憶されたタップ係数は、線形予測演算を行うことにより得られる高音質の音声の予測値の予測誤差(自乗誤差)が、統計的に最小になるように学習を行うことにより求められたものであるから、図5の予測部125が出力する音声は、高音質のものとなる。
【0196】なお、例えば、図5および図13の実施の形態では、予測タップやクラスタップに、音声合成フィルタ206が出力する合成音データの他、符号化データに含まれる(符号化データとなる)Iコードを含めるようにしたが、予測タップやクラスタップには、図5および図13において点線で示すように、Iコードに替えて、あるいはIコードの他に、Lコードや、Gコード、Aコード、Aコードから得られる線形予測係数αp、Gコードから得られるゲインβ,γ、その他の、Lコード、Gコード、Iコード、またはAコードから得られる情報(例えば、残差信号eや、残差信号eを得るためのl,n、さらには、l/β,n/γなど)のうちの1以上を含めるようにすることが可能である。また、CELP方式では、符号化データとしてのコードデータに、リスト補間ビットやフレームエネルギが含められる場合があるが、この場合、予測タップやクラスタップは、ソフト補間ビットやフレームエネルギを用いて構成することが可能である。
【0197】次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0198】そこで、図15は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0199】プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク305やROM303に予め記録しておくことができる。
【0200】あるいはまた、プログラムは、フロッピー(登録商標)ディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体311に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体311は、いわゆるパッケージソフトウエアとして提供することができる。
【0201】なお、プログラムは、上述したようなリムーバブル記録媒体311からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部308で受信し、内蔵するハードディスク305にインストールすることができる。
【0202】コンピュータは、CPU(Central Processing Unit)302を内蔵している。CPU302には、バス301を介して、入出力インタフェース310が接続されており、CPU302は、入出力インタフェース310を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部307が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)303に格納されているプログラムを実行する。あるいは、また、CPU302は、ハードディスク305に格納されているプログラム、衛星若しくはネットワークから転送され、通信部308で受信されてハードディスク305にインストールされたプログラム、またはドライブ309に装着されたリムーバブル記録媒体311から読み出されてハードディスク305にインストールされたプログラムを、RAM(Random Access Memory)304にロードして実行する。これにより、CPU302は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU302は、その処理結果を、必要に応じて、例えば、入出力インタフェース310を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部306から出力、あるいは、通信部308から送信、さらには、ハードディスク305に記録等させる。
【0203】ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0204】また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0205】なお、本実施の形態においては、学習用の音声信号として、どのようなものを用いるかについては、特に言及しなかったが、学習用の音声信号としては、人が発話した音声の他、例えば、曲(音楽)等を採用することが可能である。そして、上述したような学習処理によれば、学習用の音声信号として、人の発話を用いた場合には、そのような人の発話の音声の音質を向上させるようなタップ係数が得られ、曲を用いた場合には、曲の音質を向上させるようなタップ係数が得られることになる。
【0206】また、図5の実施の形態では、係数メモリ124には、タップ係数をあらかじめ記憶させておくようにしたが、係数メモリ124に記憶させるタップ係数は、携帯電話機101において、図3の基地局102(あるいは交換局103)や、図示しないWWW(World Wide Web)サーバ等からダウンロードするようにすることができる。即ち、上述したように、タップ係数は、人の発話用や曲用等のように、ある種類の音声信号に適したものを、学習によって得ることができる。さらに、学習に用いる教師データおよび生徒データによっては、合成音の音質に差が生じるタップ係数を得ることができる。従って、そのような各種のタップ係数を、基地局102等に記憶させておき、ユーザには、自身の所望するタップ係数をダウンロードさせるようにすることができる。そして、このようなタップ係数のダウンロードサービスは、無料で行うこともできるし、有料で行うこともできる。さらに、タップ係数のダウンロードサービスを有料で行う場合には、タップ係数のダウンロードに対する対価としての代金は、例えば、携帯電話機101の通話料等とともに請求するようにすることが可能である。
【0207】また、係数メモリ124は、携帯電話機101に対して着脱可能なメモリカード等で構成することができる。この場合、上述したような各種のタップ係数それぞれを記憶させた、異なるメモリカードを提供するようにすれば、ユーザは、場合に応じて、所望のタップ係数が記憶されたメモリカードを、携帯電話機101に装着して使用することが可能となる。
【0208】さらに、本発明は、例えば、VSELP(Vector Sum Excited Liner Prediction),PSI−CELP(Pitch Synchronous Innovation CELP),CS−ACELP(Conjugate Structure Algebraic CELP)等のCELP方式による符号化の結果得られるコードから合成音を生成する場合に、広く適用可能である。
【0209】また、本発明は、CELP方式による符号化の結果得られるコードから合成音を復号する場合に限らず、復号に用いられる情報(復号情報)を、所定の単位ごとに有する符号化データから、元のデータを復号する場合に広く適用可能である。即ち、本発明は、例えば、画像を、所定のブロック単位でDCT(Discrete Cosine Transform)係数とするJPEG(Joint Photographic Experts Group)方式により符号された符号化データ等にも適用可能である。
【0210】さらに、本実施の形態では、タップ係数を用いた線形1次予測演算によって、残差信号や線形予測係数の予測値を求めるようにしたが、この予測値は、その他、2次以上の高次の予測演算によって求めることも可能である。
【0211】なお、例えば、特開平8−202399号公報には、合成音を、高域強調フィルタに通すことによって、その音質を改善する方法が開示されているが、本発明は、タップ係数が学習により得られる点や、予測計算に用いられるタップ係数が、クラス分類結果によって適応的に決まる点、さらには、予測タップ等が、合成音だけでなく、符号化データに含まれるIコード等から生成される点等において、特開平8−202339号公報に記載の発明とは異なる。
【0212】
【発明の効果】本発明の第1のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体によれば、符号化データを復号した復号データのうちの注目している注目データと所定の位置関係にある復号データを抽出するとともに、注目データの、所定の単位における位置に応じて、所定の単位ごとの復号情報を抽出することにより、所定の処理に用いるタップが生成され、そのタップを用いて、所定の処理が行われる。従って、例えば、品質の良い復号データを得ることが可能となる。
【0213】本発明の第2のデータ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体によれば、教師となる教師データを、所定の単位ごとの復号情報を有する符号化データに符号化し、その符号化データを復号することにより、生徒となる生徒データとしての復号データが生成される。さらに、生徒データとしての復号データのうちの注目している注目データと所定の位置関係にある復号データを抽出するとともに、注目データの、所定の単位における位置に応じて、所定の単位ごとの復号情報を抽出することにより、教師データを予測するのに用いる予測タップが生成される。そして、予測タップとタップ係数とを用いて、所定の予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習が行われ、タップ係数が求められる。従って、符号化データから、品質の良い復号データを復号するためのタップ係数を得ることが可能となる。




 

 


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

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


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