(58)【調査した分野】(Int.Cl.,DB名)
前記変換処理手段は、前記第2の音声特徴情報選択手段によって選択された前記第2の音声特徴情報から、前記第1の音声特徴情報選択手段によって選択された前記第1の音声特徴情報を減算した音声変換情報と、前記ユーザーの音声特徴情報または前記選択された第1の音声特徴情報とから新たな第2の音声特徴情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする請求項1に記載の音声変換装置。
前記変換処理手段は、前記音声変換情報に、前記ユーザーの音声特徴情報と前記選択された第1の音声特徴情報との近似度に対応する所定の係数を乗算し、前記所定の係数が乗算された前記音声変換情報と前記ユーザーの音声特徴情報または前記選択された第1の音声特徴情報とから新たな第2の音声変換情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする請求項2に記載の音声変換装置。
前記第1の音声特徴情報選択手段は、前記音声特徴情報算出手段によって求められた前記ユーザーの音声特徴情報に近い所定数の前記第1の音声特徴情報を、近い順に前記第1の音声特徴テーブルから選択し、
前記第2の音声特徴情報選択手段は、前記第1の音声特徴情報選択手段によって選択された所定数の前記第1の音声特徴情報にそれぞれ対応付けられた前記第2の音声特徴情報を前記第2の音声特徴テーブルから選択し、
前記変換処理手段は、前記所定数の前記第2の音声特徴情報から前記所定数の前記第1の音声特徴情報をそれぞれ減算した前記音声変換情報を求め、求められた前記音声変換情報を合成した情報である合成情報と前記ユーザーの音声特徴情報または前記選択された所定数の第1の音声特徴情報とから新たな第2の音声特徴情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする請求項2乃至4の何れか1項に記載の音声変換装置。
【発明を実施するための形態】
【0012】
(実施形態1)
本発明の実施形態1について図面を参照して説明する。水中通話装置100として、ここでは
図1に示すように、ユーザーの視界を確保する水中マスク(ゴーグル)のタイプのものを説明する。
【0013】
はじめに水中通話装置100の構成を説明する。
水中通話装置100は、その一部に水中マスクが設けられた本体部1と、弾性部材で形成されるバンド部2と、を備える。水中通話装置100は、弾性部材で形成されたバンド部2をユーザーの頭部に取り付け、本体部1に設けられた水中マスクをユーザーの両眼に合わせることにより装着される。また、本体部1は、ユーザーによって発せられた音声を変換する音声変換機能(本発明に係る音声変換装置の例)を備える。音声変換装置は、例えば、本体部1の側縁部に内蔵されている。
【0014】
ユーザー(ダイバー)は、潜水時に、水中マスクを装着し、マウスピースをつけたレギュレーターを咥えて潜水する。このとき、水中マスクによって、ユーザーの鼻は塞がれる。また、ユーザーがレギュレーターを咥えることによって、ユーザーの口唇の動きは制限されてしまう。このような発音が制限される器材(水中マスク、レギュレーター)が使用された状態でユーザーが発話すると、ユーザーの発音(特に、両唇音)が不明瞭になる場合がある。本体部1に備えられた音声変換機能は、ユーザーにより発せられた不明瞭な音声を明瞭な音声に変換する。
【0015】
次に、
図2を参照して、
図1に示した本体部1の構成を説明する。本体部1は、音声インターフェイス3と、送受信部4と、音声変換部10とを備える。
【0016】
音声インターフェイス3は、骨導/咽喉マイクロホン部31と、骨導スピーカ部32とを備える。
【0017】
骨導/咽喉マイクロホン部31は、ユーザーの声帯振動を、頭骨を介して検知し、検知した振動を電気的に変換して音声信号を生成する。骨導/咽喉マイクロホン部31は、生成した音声信号を音声変換部10に供給する。なお、骨導/咽喉マイクロホン部31は、骨導マイクロホン、咽喉マイクロホンの何れか一方から構成される。
【0018】
骨導スピーカ部32は、送受信部4から供給される音声信号に相当する振動を発生する。骨導スピーカ部32で発生した振動は、ユーザーの骨を介して耳(蝸牛管)に伝達され、ユーザーは、これを音として認識する。なお、骨導スピーカ部32は、例えば、マグネチック型のスピーカから構成される。
【0019】
送受信部4は、送信部41と受信部42とを備える。
【0020】
送信部41は、音声変換部10から供給される音声信号を変調する送信回路と、送信回路によって変調された音声信号を超音波に変換して外部(水中)に出力する送信アンテナと、から構成される。なお、水中では電磁波の到達距離が短いため、超音波が採用されている。
【0021】
受信部42は、外部(水中)の超音波を受信し、これを電気信号に変換する受信アンテナと、受信アンテナで変換された電気信号を復調し、復調して得られた音声信号を骨導スピーカ部32に供給する受信回路と、から構成される。
【0022】
音声変換部10は、骨導/咽喉マイクロホン部31から供給された音声信号に基づいて音声変換処理を行う。音声変換部10は、音声変換処理を行って得られた音声信号を送信部41に供給する。この音声変換部10によって、本発明の一例に係る音声変換装置が実現される。
【0023】
次に、
図3を参照して、音声変換部10の構成を説明する。
音声変換部10は、制御部11と、記憶部12と、音声信号入力部13と、音声信号出力部14と、操作部15とを備える。
【0024】
制御部11は、例えば、CPU(Central Processing Unit)、CPUのメインメモリとして機能するRAM(Random Access Memory)、タイマ等から構成される。なお、制御部11は、一部がASIC(Application Specific Integrated Circuit)等の専用回路から構成されてもよい。制御部11は、音声変換部10全体を制御する。
【0025】
また、制御部11は、記憶部12に記憶されたプログラムを実行することにより、特徴ベクトル算出部111、代表ベクトル選択部112、対応ベクトル選択部113、変換処理部114として機能する。各部111〜114は、後述の各種処理を行う。
【0026】
記憶部12は、例えば、HDD(Hard Disk Drive)、ROM(Read Only Memory)、フラッシュメモリ等の記憶装置から構成される。記憶部12は、制御部11が各種処理を行うために使用する各種プログラム及びデータ、制御部11が各種処理を行うことにより生成又は取得した各種データを記憶する。
【0027】
また、記憶部12は、プログラム記憶部121と、コードブック記憶部122とを備える。
【0028】
プログラム記憶部121は、各種プログラムを記憶する。プログラム記憶部121には、制御部11の実行によって、制御部11を、特徴ベクトル算出部111、代表ベクトル選択部112、対応ベクトル選択部113、変換処理部114として機能させるプログラムが記憶されている。
【0029】
コードブック記憶部122は、
図4に示すように、代表コードブックと対応コードブックとを記憶する。代表コードブックと対応コードブックとは、不特定多数の発話者によって発話された長時間分の音声に対応する多量の音声データから生成され、不特定多数のユーザーによって発話される音声に適合するよう汎用化されたものである。なお、ユーザーが特定されている場合、コードブック記憶部122は、特定の発話者によって発せられた音声を基に生成された代表コードブックと対応コードブックとを記憶しても良い。例えば、ユーザーが女性に限定される場合、コードブック記憶部122は、女性によって発せられた音声を基に生成された代表コードブックと対応コードブックとを記憶しても良い。また、コードブック記憶部122は、ユーザー本人によって発せられた音声を基に生成された代表コードブックと対応コードブックとを記憶しても良い。
【0030】
代表コードブックは、水中マスクやレギュレーター(発音が制限される器材)が使用された状態(鼻が塞がれ、口唇の動きが制限された状態)で発せられた音声(水中での音声)の特徴を定量的に表す代表ベクトルを複数有する。代表ベクトルは、これらの器材が使用された状態で、所定の音素バランス文が読みあげられたときに求められる多数の特徴ベクトルをベクトル量子化したものである。
【0031】
ここでは、特徴ベクトルは、メルケプストラムを採用する。ただし、特徴ベクトルは、メルケプストラム以外に、LPC係数やケプストラムを採用しても良い。特徴ベクトルは、後述の音声変換処理と同様の処理により求められる。また、特徴ベクトルをベクトル量子化するためのアルゴリズムとしては、例えば、LBGアルゴリズム、k−meansアルゴリズムを使用できる。また、音素バランス文は、複数種類の音素がバランス良く含まれた多量の文章が使用される。
【0032】
一方、対応コードブックは、水中マスクやレギュレーターが使用されていない状態(鼻が塞がれず、口唇の動きが制限されていない状態)で発せられた音声(陸上での音声)の特徴を定量的に表す対応ベクトルを複数有する。対応ベクトルは、これらの器材が使用されていない状態で音素バランス文が読み上げられたときに求められる多数の特徴ベクトルに基づいて得られる。対応ベクトルを求める際は、代表ベクトルを求める際に用いた音素バランス文と同じ音素バランス文が用いられる。
【0033】
対応ベクトルは、音素バランス文が読み上げられたときに算出された多数の特徴ベクトルを、代表ベクトルが求められたときに算出された多数の特徴ベクトルとDPマッチングを行うことにより求められる。ここでいうDPマッチングは、それぞれ時系列的に並べられた代表ベクトルと対応ベクトルとの対応付けを行う処理である。
【0034】
DPマッチングによって対応付けられた代表ベクトルと対応ベクトルとは、複数通り(例えば256通り)の量子化符号によって表される。なお、双方のベクトルの対応付けを正確に行うために、双方で同じ発話がされる時間軸上の位置(例えば、音素バランス文中の特定の単語)に共通のラベルをユーザーの操作等によって付しても良い。また、DPマッチング以外の手法を採用することによって、代表ベクトルと対応ベクトルとの対応付け(マッチング)を行っても良い。例えば、水中マスクやレギュレーターが使用されている状態と、それらが使用されていない状態とで、それぞれ発話されたときの発話者の口唇の動きをカメラで撮影、または、発話者の口唇の開閉状態をセンサで検知する。そして、それぞれの状態の音声データから得られる代表ベクトルと対応ベクトルとの対応付け(マッチング)は、映像データ、センサデータを基に、双方で同じ発話がされる時間軸上の位置を特定することにより行っても良い。また、代表ベクトルと対応ベクトルとの対応付けは、水中マスクやレギュレーターが使用されていない状態にて、2種のマイク(骨導マイク、気導マイク)によって同時に録音して得られた各音声データを基に、双方で同じ発話がされる時間軸上の位置を特定することにより行っても良い。さらに、GMM(Gaussian mixture model)を採用しても良い。具体的には、水中マスクやレギュレーターが使用された状態と、それらが使用されていない状態との各特徴ベクトルを対応付ける。つづいて、対応付けられた各特徴ベクトルを連結することにより結合ベクトルを作成し、作成した結合ベクトルを学習データとして、結合確率密度をGMMでモデル化する。GMMの各種パラメータは、EMアルゴリズムによって最適化される。GMMを用いた変換関数は、例えば入力が与えられた場合の出力の条件付期待値を求める式を利用する。
【0035】
音声信号入力部13は、制御部11の制御のもと、骨導/咽喉マイクロホン部31から出力された音声信号をデジタル変換し、変換した音声信号を制御部11に供給する。
【0036】
音声信号出力部14は、制御部11の制御によって変換された音声信号をアナログ変換し、これを送信部41に供給する。
【0037】
操作部15は、発話者からの各種操作を受け付け、各種操作にそれぞれ対応する操作信号を制御部11に供給する。
【0038】
次に、
図5を参照して、上記構成を備えた音声変換部10の動作を説明する。水中通話装置100の電源がオンになって音声変換部10に電源が供給されたとき、制御部11はプログラム記憶部121からプログラムを読み出して実行する。これにより制御部11は、特徴ベクトル算出部111、代表ベクトル選択部112、対応ベクトル選択部113、変換処理部114として機能し、各部111〜114は、水中通話装置100の電源がオフになるまで、以下の音声変換処理を繰り返し行う。
【0039】
特徴ベクトル算出部111は、骨導/咽喉マイクロホン部31から音声信号入力部13に入力された音声信号が、所定長のフレーム(例えば20ms)の音声信号に切り出されたか否かを判別する(ステップS101)。特徴ベクトル算出部111は、所定長のフレームの音声信号が切り出されたと判別するまで待機状態となる(ステップS101;NO)。
【0040】
特徴ベクトル算出部111は、所定長のフレームの音声信号が切り出されたと判別した場合(ステップS101;YES)、切り出された音声信号にプリエンファシス(高域強調)を行う(ステップS102)。
【0041】
特徴ベクトル算出部111は、フレーム間の不連続性を最小に抑えるために、プリエンファシスされた音声信号に所定の窓関数を乗算する(ステップS103)。
【0042】
その後、特徴ベクトル算出部111は、窓掛けされた音声信号から音声の高低を表すピッチ情報(基本周波数)を抽出する(ステップS104)。
【0043】
さらに、特徴ベクトル算出部111は、窓掛けされた音声信号から特徴ベクトル(メルケプストラム)を求める(ステップS105)。
【0044】
代表ベクトル選択部112は、特徴ベクトル算出部111によって求められた特徴ベクトルに最も近い代表ベクトル(メルケプストラム距離が最も近いもの)を、コードブック記憶部122に記憶された代表コードブックから選択する(ステップS106)。例えば、ここでは、
図4に示す代表コードブックから「代表ベクトル2」が選択されたものとする。
【0045】
対応ベクトル選択部113は、代表ベクトル選択部112によって選択された代表ベクトルに対応付けられた対応ベクトルをコードブック記憶部122に記憶された対応コードブックから選択する(ステップS107)。例えば、ここでは、対応コードブックから「対応ベクトル2」が選択される。
【0046】
変換処理部114は、特徴ベクトル算出部111によって抽出されたピッチ情報と、対応ベクトル選択部113によって選択された対応ベクトル(ここでは対応ベクトル2)とを合成する(ステップS108)。これにより、所定長のフレームに切り出された音声信号が変換される。また、変換処理部114は、変換後の音声信号にディエンファシスを行う(ステップS109)。
【0047】
変換処理部114は、ディエンファシスされた音声信号を音声信号出力部14に供給する。変換処理部114は、音声信号出力部14に供給した音声信号を音声信号出力部14でアナログ変換させる制御を行い、音声信号出力部14によって変換された音声信号を送信部41に供給する制御を行う。
【0048】
その後、特徴ベクトル算出部111は、ステップS101に戻り、次に、所定長のフレーム(20ms)の音声信号が切り出されたと判別するまで待機状態となる(ステップS101;NO)。
【0049】
以上、実施形態1に係る音声変換部10によれば、ユーザーが、発音が制限される器材が使用された状態(鼻が塞がれ、口唇の動きが制限された状態)で発せられた音声を、自由に発話できる状態(鼻が塞がれず、口唇の動きが制限されていない状態)で発話されたような音声に変換できる。
【0050】
なお、コードブック記憶部122に記憶された、代表コードブックが汎用的なものであっても、ユーザーの音声が一般的な音声と比べて大きく異なる場合には、ユーザーの音声から求められる特徴ベクトルに最も近い代表ベクトルが、ユーザーの音声(原音)に対応しない場合も考えられる。つまり、特徴ベクトルに最も近い代表ベクトルが選択されたとしても、その代表ベクトルが特徴ベクトルと完全に一致している場合を除いて、代表ベクトルは、特徴ベクトルとの間に量子化誤差(特徴ベクトルとの誤差)が含まれる。この量子化誤差が大きいほど、正常な音声変換ができなくなる。
【0051】
そこで、特徴ベクトルと代表ベクトルとの近似度に基づいて、フレームに対応するユーザーの音声を変換しても良い。変換処理部114は、メルケプストラム距離を近似度として求める。変換処理部114は、代表ベクトルと特徴ベクトルとのメルケプストラム距離が、予め設定された閾値より短いと判別した場合には、対応ベクトル選択部113によって選択された対応ベクトルによって、フレームに対応するユーザーの音声を変換しても良い。一方、変換処理部114は、メルケプストラム距離が閾値より長いと判別した場合は、フレームに対応するユーザーの音声を変換しなくても良い。
【0052】
また、上記の手法以外に、特徴ベクトルと代表ベクトルとのメルケプストラム距離に対応する重み付け係数に基づいて、フレームに対応するユーザーの音声を変換しても良い。重み付け係数は、例えば、
図6に示すように、特徴ベクトルと代表ベクトルとのメルケプストラム距離と重み付け係数との関係を表した重み付け情報から得られる。重み付け情報には、例えば、シグモイド関数がある。また、この場合、音声変換に用いられる新たな対応ベクトルを求める。新たな対応ベクトルを求める手順について、以下説明する。
【0053】
変換処理部114は、対応ベクトル選択部113によって選択された対応ベクトルから、代表ベクトル選択部112によって選択された代表ベクトルを減算した変換ベクトル(対応ベクトル−代表ベクトル)を求める。変換ベクトルは、代表ベクトルの終点から対応ベクトルの終点に向かうベクトルを表す。変換処理部114は、求められた変換ベクトルに、メルケプストラム距離に対応する重み付け係数を乗算する。例えば、
図6に示すように、メルケプストラム距離が「1.0」だった場合、これに対応する重み付け係数「50%」が変換ベクトルに乗算される。
【0054】
代表ベクトルに対応付けられた対応ベクトルは、代表ベクトルと変換ベクトルとの和に等しい。よって、新たな対応ベクトルは、代表ベクトルと、重み付け係数が乗算された変換ベクトルとの和によって求めることもできる(代表ベクトル+重み付け係数×変換ベクトル)。ただし、上述したように、代表ベクトルは、特徴ベクトルとの間に量子化誤差が含まれている。そこで、この量子化誤差の低減を図るため、特徴ベクトル算出部111によって求められた特徴ベクトルと、重み付け係数が乗算された変換ベクトルとの和(特徴ベクトル+重み付け係数×変換ベクトル)を求め、これを新たな対応ベクトルとして用いる。
【0055】
その後、変換処理部114は、新たな対応ベクトルとピッチ情報とを合成することにより、所定長のフレームに切り出された音声信号を変換する。これにより、量子化誤差が低減された新たな対応ベクトルによって、代表コードブックとは異なる声質を有する音声にも柔軟に変換できる。
【0056】
(実施形態2)
本発明の実施形態2について
図7を参照して説明する。実施形態2に係る音声変換部10のコードブック記憶部122には、量子化符号(または代表ベクトル)毎に、上述したDPマッチングが行われたときに代表ベクトルが選択された回数(代表ベクトルに対応する対応ベクトルの学習回数)を有する。重み付け係数は、例えば、
図8に示すように、代表ベクトルが選択された回数と重み付け係数との関係を表した重み付け情報から得られる。重み付け情報には、例えば、シグモイド関数がある。
【0057】
特徴ベクトル算出部111、代表ベクトル選択部112、対応ベクトル選択部113によって、
図5に示すステップS101〜ステップS107の処理が行われた後、変換処理部114は、対応ベクトル選択部113によって選択された対応ベクトルから、代表ベクトル選択部112によって選択された代表ベクトルを減算した変換ベクトル(対応ベクトル−代表ベクトル)を求める。変換処理部114は、変換ベクトルに、代表ベクトル選択部112によって選択された代表ベクトルに対応付けられた重み付け係数を乗算する。例えば、選択された回数が「10回」である代表ベクトルが代表ベクトル選択部112によって選択された場合、変換処理部114は、回数「10回」に対応する重み付け係数「50%」を、変換ベクトルに乗算する。
【0058】
つづいて、変換処理部114は、特徴ベクトル算出部111によって求められた特徴ベクトルと、重み付け係数が乗算された変換ベクトルとの和(特徴ベクトル+重み付け係数×変換ベクトル)を求め、これを新たな対応ベクトルとして用いる。なお、変換処理部114は、代表ベクトルと、重み付け係数が乗算された変換ベクトルとの和(代表ベクトル+重み付け係数×変換ベクトル)を求め、これを新たな対応ベクトルとして用いてもよい。
【0059】
その後、変換処理部114は、新たな対応ベクトルとピッチ情報とを合成することにより、所定長のフレームに切り出された音声信号を変換する(
図5に示すステップS108)。また、変換処理部114は、変換後の音声信号にディエンファシスを行った後(
図5に示すステップS109)、ディエンファシスされた音声信号を、音声信号出力部14を介して送信部41に供給する制御を行う。
【0060】
以上、実施形態2に係る音声変換部10によれば、DPマッチングが行われたときの代表ベクトルが選択された回数、すなわち代表ベクトルに対応する対応ベクトルの学習回数に基づいて、フレームに対応する音声を柔軟に変換でき、音声の誤変換を防止できる。
【0061】
なお、重み付け情報は、代表ベクトルが選択された回数が、予め設定された閾値を超えたか否かで、1か0を返す関数でも良い。この場合、変換処理部114は、代表ベクトル選択部112によって選択された代表ベクトルに対応付けられた重み付け値が、1の場合は音声変換を行い、0の場合は音声変換を行わない。これにより、音声変換部10は、代表ベクトルが選択された回数に基づいて、フレームに対応する音声を択一的に変換でき、音声の誤変換を防止できる。
【0062】
(実施形態3)
本発明の実施形態3について
図3を参照して説明する。本実施形態3に係る音声変換部10の構成は、上記実施形態1と同一の構成を備える。上記実施形態1及び2に係る音声変換部10は、所定長のフレームに切り出された音声信号から求められた特徴ベクトルに最も近い1つの代表ベクトルを選択している。
【0063】
しかし、代表ベクトルと対応ベクトルとの対応付けが正確に行われていない場合(誤学習された場合)や、上述したように、特徴ベクトルと代表ベクトルとの間に量子化誤差(特徴ベクトルとの誤差)が含まれる場合には、1つの代表ベクトルに対応付けられた対応ベクトルによって正常な音声変換を行うことができない。本実施形態に係る音声変換部10は、このような音声の誤変換の防止や量子化誤差の低減を図るものである。
【0064】
特徴ベクトル算出部111によって、
図5に示すステップS101〜ステップS105の処理が行われた後、ステップS106において、代表ベクトル選択部112は、特徴ベクトル算出部111によって求められた特徴ベクトルに近い代表ベクトルを、コードブック記憶部122に記憶された代表コードブックから、近い順に、予め設定された複数(例えば4つ)選択する。
【0065】
対応ベクトル選択部113は、ステップS107において、代表ベクトル選択部112によって選択された複数の代表ベクトルそれぞれに対応付けられた対応ベクトルを、コードブック記憶部122に記憶された対応コードブックから選択する。
【0066】
変換処理部114は、対応ベクトル選択部113によって選択された複数の対応ベクトルから、代表ベクトル選択部112によって選択された複数の代表ベクトル、それぞれ減算した変換ベクトル(対応ベクトル−代表ベクトル)を求める。
【0067】
また、変換処理部114は、それぞれ求められた複数の変換ベクトルを合成する。複数の変換ベクトルの合成は、例えば、単に、各変換ベクトルの平均によって求められても良い。あるいは、特徴ベクトルと各代表ベクトルとの距離に応じた重み付け係数を各変換ベクトルに乗算し、重み付け係数が乗算された各変換ベクトルの平均によって求められても良い。また、特徴ベクトルに近い順に、予め設定された重み付け係数を各変換ベクトルに乗算し、重み付け情報が乗算された変換ベクトルの平均によって求められても良い。
【0068】
さらに、変換処理部114は、特徴ベクトル算出部111によって求められた特徴ベクトルと、複数の変換ベクトルが合成されたベクトル(合成変換ベクトル)との和(特徴ベクトル+合成変換ベクトル)を求め、これを新たな対応ベクトルとして用いる。新たな対応ベクトルは、複数の代表ベクトルそれぞれに対応付けられた対応ベクトルが平均化(変換点が平滑化)されたベクトルを表す。その後、変換処理部114は、新たな対応ベクトルとピッチ情報とを合成することにより、所定長のフレームに切り出された音声信号を変換する(
図5に示すステップS108)。また、変換処理部114は、変換後の音声信号にディエンファシスを行い(ステップS109)、ディエンファシスされた音声信号を、音声信号出力部14を介して送信部41に供給する制御を行う。
【0069】
以上、実施形態3に係る音声変換部10は、ユーザーの音声の特徴を表す特徴ベクトルに近い複数の代表ベクトルそれぞれに対応付けられた対応ベクトルを平均化し、量子化誤差を補間する新たな対応ベクトルを求める。これにより、フレームに対応する音声の誤変換が防止され、また、量子化誤差が低減される。
【0070】
なお、変換処理部114によって求められた複数の変換ベクトルの向きが、それぞれ極端に異なる場合には、変換処理部114は、全ての変換ベクトルを合成しなくても良い。この場合、例えば、ベクトルの向きが他のベクトルから基準値以上異なる変換ベクトルを複数の変換ベクトルから除いたものを合成した合成変換ベクトルを求め、この合成変換ベクトルと特徴ベクトルとの和によって、新たな対応ベクトルを求めても良い。また、複数の変換ベクトルの向きが、それぞれ極端に(基準値以上)異なる場合には、変換処理部114は、そのフレームに対応する音声を変換しなくても良い。
【0071】
なお、変換処理部114は、代表ベクトル選択部112によって選択された複数(例えば4つ)の代表ベクトルと、複数の変換ベクトルが合成されたベクトル(合成変換ベクトル)とから、新たな対応ベクトルを求めても良い。この場合、変換処理部114は、選択された複数(例えば4つ)の代表ベクトルのうち、ユーザーの特徴ベクトルに最も近い代表ベクトルを選択し、選択された代表ベクトルと複数の変換ベクトルが合成されたベクトル(合成変換ベクトル)との和(代表ベクトル+合成変換ベクトル)を求め、これを新たな対応ベクトルとして求めても良い。また、変換処理部114は、複数の代表ベクトルの平均(合成代表ベクトル)を求め、求めた合成代表ベクトルと合成変換ベクトルとの和(合成代表ベクトル+合成変換ベクトル)を新たな対応ベクトルとして求めても良い。さらに、ユーザーの特徴ベクトルと各代表ベクトルとの距離に応じた重み付け係数を各代表ベクトルに乗算し、重み付け係数が乗算された各代表ベクトルの平均(合成代表ベクトル)を求め、求めた合成代表ベクトルと合成変換ベクトルとの和(合成代表ベクトル+合成変換ベクトル)を新たな対応ベクトルとして求めても良い。さらに、予め設定された重み付け係数を各代表ベクトルに乗算し、重み付け情報が乗算された代表ベクトルの平均(合成代表ベクトル)と合成変換ベクトルとの和(合成代表ベクトル+合成変換ベクトル)を新たな対応ベクトルとして求めても良い。
【0072】
(実施形態4)
本発明の実施形態4について
図9A,
図9Bを参照して説明する。上記実施形態1乃至3の音声変換部10は、コードブック記憶部122に、代表コードブック及び対応コードブックを記憶し、これらを用いて音声変換を行っている。この構成では、代表コードブックと対応コードブックとが、発話されたときの状態や声質が互いに大きく異なる条件で生成された場合、上述したマッチング(DPマッチング以外の手法も含む)によって、代表ベクトルと対応ベクトルの対応付けが正確に行われないこともあり得る。この場合、音声変換部10は、正常な音声変換を行うことができなくなる。本実施形態に係る音声変換部10は、このような音声の誤変換を防止するためのものである。
【0073】
音声変換部10のコードブック記憶部122は、
図9Aに示すように、代表コードブック及び中間コードブックを記憶し、
図9Bに示すように、中間コードブック及び対応コードブックを記憶する。
【0074】
代表コードブックは、発音が制限される器材が使用された状態で、一般ダイバーによって発話されたときの音声(水中での音声)の特徴を表す特徴ベクトル(代表ベクトル)を複数有する。
【0075】
中間コードブックは、発音が制限される器材が使用された状態でも、発話が比較的に上手くできる上級ダイバーによって発話されたときの音声(水中での音声)の特徴を表す特徴ベクトル(中間ベクトル)を複数有する。
【0076】
対応コードブックは、発音が制限される器材が使用されていない状態で、不特定多数の発話者によって発話されたときの音声(陸上での音声)の特徴を表す特徴ベクトル(対応ベクトル)を複数有する。
【0077】
代表ベクトル1〜mは、例えば、DPマッチングによって、それぞれ中間ベクトル1〜mと対応付けられる。
図9Aに示すように、代表ベクトル1〜m及び中間ベクトル1〜mは、共通の量子化符号によって表される。代表コードブックと中間コードブックとは、それぞれ発話されたときの状態(何れも水中)が互いに共通しているので、代表ベクトル及び中間ベクトルの対応付けを精度良く行うことができる。
【0078】
対応ベクトル1〜nは、例えば、DPマッチングによって、それぞれ中間ベクトル1〜nと対応付けられる。
図9Bに示すように、対応ベクトル1〜n及び中間ベクトル1〜nは、共通の量子化符号によって表される。対応コードブックと中間コードブックとは、それぞれ声質が互いに類似しているので、対応ベクトル及び中間ベクトルの対応付けを精度良く行うことができる。
【0079】
特徴ベクトル算出部111によって、
図5に示すステップS101〜ステップS105の処理が行われた後、ステップS106において、代表ベクトル選択部112は、指定された代表コードブックから、特徴ベクトル算出部111によって求められた特徴ベクトルに最も近い代表ベクトル(例えば代表ベクトル1)を選択する。
【0080】
また、代表ベクトル選択部112は、代表コードブックと共通の量子化符号を有する中間コードブックから、選択された代表ベクトル(ここでは代表ベクトル1)と対応付けられた中間ベクトル(ここでは中間ベクトル1)を選択する。
【0081】
対応ベクトル選択部113は、ステップS107において、中間コードブックと共通の量子化符号を有する対応コードブックから、代表ベクトル選択部112によって選択された中間ベクトル(ここでは中間ベクトル1)に対応付けられた対応ベクトル(ここでは対応ベクトル1)を選択する。その後、変換処理部114は、特徴ベクトル算出部111によって抽出されたピッチ情報と、対応ベクトル選択部113によって選択された対応ベクトル(ここでは対応ベクトル1)とを合成することにより、所定長のフレームに切り出された音声信号を変換する(
図5に示すステップS108)。また、変換処理部114は、変換後の音声信号にディエンファシスを行い(ステップS109)、ディエンファシスされた音声信号を、音声信号出力部14を介して送信部41に供給する制御を行う。
【0082】
以上、実施形態4に係る音声変換部10によれば、コードブック記憶部122において、代表コードブックまたは対応コードブックと、共通の量子化符号によって精度良く対応付けを行うことができる中間用のコードブックを記憶し、各コードブックにおいて、互いに対応付けられたベクトルを多段階的に選択することにより、音声の誤変換を防ぐことができる。また、互いに、収録環境や音声の特徴の差異が小さいコードブックを多段階で用いることにより、音声変換の精度を向上させることができる。
【0083】
なお、本実施形態では、コードブック記憶部122において、1つの中間コードブックを記憶した例を説明したが、2つ以上の中間コードブックを記憶しても良い。この場合、各中間コードブックが有する複数の中間ベクトルは、共に使用される他の中間コードブックとの間で行うマッチング(DPマッチング以外の手法も含む)により、それぞれ共通の量子化符号によって互いに対応付けられる。
【0084】
また、各コードブックにおいて、互いに対応付けられたベクトルを多段階的に選択する際に、上記実施形態1乃至3において求められた、変換ベクトルや合成変換ベクトルを求め、これに基づいて新たなベクトルを求めても良い。例えば、ユーザーの音声の特徴ベクトルを基に、
図9Aに示した代表コードブックと中間コードブックとから、変換ベクトルや合成変換ベクトルを求め、これに基づいて、新たなベクトルを求めても良い。また、新たなベクトルを基に、中間コードブックと対応コードブックとから、変換ベクトルや合成変換ベクトルを求め、これに基づいて、さらに新たなベクトルを求めても良い。
【0085】
また、中間コードブックは、共に使用される代表コードブック、対応コードブックのサイズに応じて、異なるサイズ(量子化符号の数)の中間ベクトルを記憶しても良い。
【0086】
その他、コードブック記憶部122には、ユーザーによって発話された音声に基づいて生成された代表コードブック、対応コードブック、中間コードブックを記憶しても良く、これらのコードブックは、音声変換部10以外の装置から取得されたものでも良い。
【0087】
また、コードブック記憶部122には、声質、性別、年齢、出身地、言語、方言等の属性に対応する代表コードブック、対応コードブック、中間コードブックを記憶しても良く、これらのコードブックは、音声変換部10以外の装置から取得されたものでも良い。
【0088】
また、代表ベクトル選択部112は、コードブック記憶部122に記憶された各種コードブックから、代表コードブックを選択する操作を受け付けても良い。また、対応ベクトル選択部113は、コードブック記憶部122に記憶された各種コードブックから、対応コードブックを選択する操作を受け付けても良い。代表ベクトル選択部112は、操作部15を用いたユーザーの操作によって選択された代表コードブックを代表ベクトルの選択に用いるものとして指定する。また、対応ベクトル選択部113は、操作部15を用いたユーザーの操作によって選択された対応コードブックを対応ベクトルの選択に用いるものとして指定する。
【0089】
また、コードブック記憶部122に新たに記憶されるコードブックが有する複数の特徴ベクトルは、コードブック記憶部122に既に記憶された代表コードブック、対応コードブック、中間コードブックの何れかとの間で行うマッチングにより、それぞれ共通の量子化符号によって互いに対応付けられても良い。
【0090】
さらに、コードブック記憶部122は、音声変換部10に内蔵されたものでなくても良く、USBメモリ等の外部記憶媒体でも良い。
【0091】
(実施形態5)
本発明の実施形態5に係る音声変換部10を説明する。音声変換部10は、上記各実施形態において特徴ベクトルとして求められたメルケプストラム(第1の特徴量)、1次デルタケプストラム(第2の特徴量)及び2次デルタケプストラム(第3の特徴量)の計3種の特徴量をマルチフレームに対応する情報として用い、これらの特徴量に基づいて、ユーザーによって発話された音声の特徴を求める。
【0092】
メルケプストラムは、母音のように、同一波形が繰り返される時間的に一定以上の変化がない、静的な音声の識別に適する。また、1次デルタケプストラムは、破裂音、鼻音等の同一波形が繰り返されない時間的に一定以上の変化がある、動的な音声(子音から母音への過度部分)の識別に適する。さらに、2次デルタケプストラムは、1フレームに収まる破裂音等の局所的に変化する音声の識別に適する。
【0093】
これら3種の特徴量を用いる場合、コードブック記憶部122に記憶された代表コードブックは、
図10に示すように、3種の特徴量を複数有する。3種の特徴量は、それぞれ、発音が制限される器材が使用された状態で発話された音声から得られる。なお、3種の特徴量は、この器材が使用された状態で、所定の音素バランス文が読みあげられたときに求められる多数のメルケプストラムをベクトル量子化したものである。なお、メルケプストラムは、上記実施形態1と同様の処理により求められる。
【0094】
一方、対応コードブックは、複数の対応ベクトルを有する。対応ベクトルは、発音が制限される器材が使用されていない状態で発話された音声から得られる3種の特徴量と、3種の特徴量それぞれの標準パターンとに基づいて算出される。対応ベクトルは、例えば、第2の特徴量、第3の特徴量の標準パターンに基づいて、3種の特徴量それぞれに重み付けを行い、これらを所定の演算式を用いて算出される。
【0095】
ユーザーによって発話された場合には、特徴ベクトル算出部111は、所定長のフレームに切り出された音声信号から第1の特徴量(メルケプストラム)を求める。また、特徴ベクトル算出部111は、連続する前段の所定数(例えば2つ)のフレームから求められた第1の特徴量の差分から第2の特徴量(1次デルタケプストラム)を求める。さらに、特徴ベクトル算出部111は、第2の特徴量の差分から第3の特徴量(2次デルタケプストラム)を求める。
【0096】
特徴ベクトル算出部111によって、
図5に示すステップS101〜ステップS105の処理が行われた後、ステップS106において、代表ベクトル選択部112は、特徴ベクトル算出部111によって求められた3種の特徴量それぞれに対応する特徴量を、コードブック記憶部122に記憶された代表コードブックから量子化符号毎に選択し、選択された3種の特徴量それぞれの差を求める。代表ベクトル選択部112は、求められた各特徴量の差が最小になる3種の特徴量(例えば、a2,b2,c2)を選択し、その3種の特徴量に付与された量子化符号(ここでは符号2)を選択する。
【0097】
また、対応ベクトル選択部113は、ステップS107において、代表ベクトル選択部112によって選択された量子化符号が付与された対応ベクトル(ここでは対応ベクトル2)をコードブック記憶部122に記憶された対応コードブックから選択する。その後、変換処理部114は、特徴ベクトル算出部111によって抽出されたピッチ情報と、対応ベクトル選択部113によって選択された対応ベクトルとを合成することにより、所定長のフレームに切り出された音声信号を変換する(
図5に示すステップS108)。また、変換処理部114は、変換後の音声信号にディエンファシスを行い(ステップS109)、ディエンファシスされた音声信号を、音声信号出力部14を介して送信部41に供給する制御を行う。
【0098】
以上、実施形態6に係る音声変換部10によれば、静的な音声の識別に適する第1の特徴量(メルケプストラム)の他、動的な音声の識別に適する第2特徴量(1次デルタケプストラム)及び第3特徴量(2次デルタケプストラム)を考慮することにより、音声の誤変換を防ぐことができる。
【0099】
なお、本実施形態では、連続する所定数(例えば3つ)のフレームの生データから3種の特徴量を求め、これをマルチフレームに対応する情報(マルチフレームの時系列変化を表す情報)として用いた。ただし、マルチフレームに対応する情報は、これに限定されるものではない。例えば、マルチフレームからフレーム毎に求められる1種の特徴量(例えばケプストラム)をマルチフレームに対応する情報として用いても良い。また、マルチフレームから求められる、ケプストラムの要素(次元)毎の単回帰係数をマルチフレームに対応する情報として用いても良い。
【0100】
(変形例)
その他、変換処理部114は、ユーザーによって発話された音声を変換した後の音声を、音声変換部10本体に接続されたスピーカ(
図2に示す骨導スピーカ部32)にリアルタイム(例えば100ms以内)に出力する制御を行っても良い。これにより、ユーザーは、変換後の自身の音声をリアルタイムに聞くことにより変換後の音声を明瞭な発音に近づけようとするユーザーの学習効果が期待できる。なお、変換処理部114は、ユーザーによって発話された音声を、スピーカに出力する制御を行っても良い。
【0101】
また、音声変換部10の操作部15には、ユーザーの操作によって、音声変換機能の使用(オン)、不使用(オフ)を切り替えるスイッチを備えても良い。例えば、フルフェイスマスクやハーフマスクなどの器材が使用されている場合には、この器材の使用によって発音は制限されず、ユーザーは明瞭な発音により発話できる。よって、このような器材が使用されている場合には、ユーザーは、スイッチを用いて、音声変換機能をオフに切り替える。
【0102】
なお、本発明に係る音声変換装置(音声変換部10)は、通常のコンピュータにより実現できる。この場合、上記の各実施形態で説明した、プログラムは、コンピュータにより実行される。また、コンピュータは、プログラムに従って、それぞれ、上記の各実施形態で説明した動作を行う。また、プログラムは、持ち運び可能な記憶媒体等に記憶されたものでもよい。持ち運び可能な記憶媒体には、例えば、CD−ROM、DVD−ROM、BD−ROM等がある。また、プログラムは、持ち運び可能な記憶媒体から各種読取装置を介して、音声変換部10にインストールされたものでも良い。さらに、プログラムは、インターネット等を介して、音声変換部10にダウンロード及びインストールされたものでもよい。また、プログラムは、音声変換部10と通信可能なサーバ等の記憶装置に格納されたものでも良い。
【0103】
その他、本発明は、上記の各実施形態の説明及び図面によって限定されるものではなく、上記実施形態及び図面に適宜変更等を加えることは可能である。
【0104】
本発明には、請求の範囲に記載された発明とその均等の範囲が含まれる。以下には、本願の出願当初の請求の範囲に記載された発明を記す。
【0105】
(付記1)
発音が制限される器材が使用された状態で発せられた音声の特徴を表す第1の音声特徴情報を複数有する第1の音声特徴テーブルと、
前記器材が使用されていない状態で発せられた音声の特徴を表し、前記第1の音声特徴情報と対応付けられた第2の音声特徴情報を複数有する第2の音声特徴テーブルと、
前記器材が使用された状態でユーザーによって発せられた音声の特徴を表すユーザーの音声特徴情報をフレーム毎に求める音声特徴情報算出手段と、
前記音声特徴情報算出手段によって求められた前記ユーザーの音声特徴情報に最も近い前記第1の音声特徴情報を、前記第1の音声特徴テーブルから選択する第1の音声特徴情報選択手段と、
前記第1の音声特徴情報選択手段によって選択された前記第1の音声特徴情報と対応付けられた前記第2の音声特徴情報を、前記第2の音声特徴テーブルから選択する第2の音声特徴情報選択手段と、
前記第2の音声特徴情報選択手段によって選択された前記第2の音声特徴情報によって、前記フレームに対応する前記音声を変換する変換処理手段と、を備える、
ことを特徴とする音声変換装置。
【0106】
(付記2)
前記変換処理手段は、前記第2の音声特徴情報選択手段によって選択された前記第2の音声特徴情報から、前記第1の音声特徴情報選択手段によって選択された前記第1の音声特徴情報を減算した音声変換情報と、前記ユーザーの音声特徴情報または前記選択された第1の音声特徴情報とから新たな第2の音声特徴情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする付記1に記載の音声変換装置。
【0107】
(付記3)
前記変換処理手段は、前記音声変換情報に、前記ユーザーの音声特徴情報と前記選択された第1の音声特徴情報との近似度に対応する所定の係数を乗算し、前記所定の係数が乗算された前記音声変換情報と前記ユーザーの音声特徴情報または前記選択された第1の音声特徴情報とから新たな第2の音声変換情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする付記2に記載の音声変換装置。
【0108】
(付記4)
前記第1の音声特徴テーブルが有する前記第1の音声特徴情報には、所定のマッチングが行われたときの前記第1の音声特徴情報が選択された回数が対応付けられ、
前記変換処理手段は、前記音声変換情報に、前記選択された第1の音声特徴情報の前記回数に対応する所定の係数を乗算し、前記所定の係数が乗算された前記音声変換情報と前記ユーザーの音声特徴情報または前記選択された第1の音声特徴情報とから新たな第2の音声特徴情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする付記2に記載の音声変換装置。
【0109】
(付記5)
前記第1の音声特徴情報選択手段は、前記音声特徴情報算出手段によって求められた前記ユーザーの音声特徴情報に近い所定数の前記第1の音声特徴情報を、近い順に前記第1の音声特徴テーブルから選択し、
前記第2の音声特徴情報選択手段は、前記第1の音声特徴情報選択手段によって選択された所定数の前記第1の音声特徴情報にそれぞれ対応付けられた前記第2の音声特徴情報を前記第2の音声特徴テーブルから選択し、
前記変換処理手段は、前記所定数の前記第2の音声特徴情報から前記所定数の前記第1の音声特徴情報をそれぞれ減算した前記音声変換情報を求め、求められた前記音声変換情報を合成した情報である合成情報と前記ユーザーの音声特徴情報または前記選択された所定数の第1の音声特徴情報とから新たな第2の音声特徴情報を求め、前記新たな第2の音声特徴情報によって、前記音声を変換する、
ことを特徴とする付記1乃至4の何れか一つに記載の音声変換装置。
【0110】
(付記6)
前記第1の音声特徴テーブルは、複数の前記フレームに対応する前記第1の音声特徴情報を複数有し、
前記第2の音声特徴テーブルは、複数の前記フレームに対応する前記第2の音声特徴情報を複数有し、前記第2の音声特徴情報が前記第1の音声特徴情報と互いに対応付けられ、
前記音声特徴情報算出手段は、複数の前記フレームに対応する前記ユーザーの音声特徴情報を求め、
前記第1の音声特徴情報選択手段は、前記音声特徴情報算出手段によって求められた前記複数のフレームに対応する前記ユーザーの音声特徴情報に最も近い前記第1の音声特徴情報を前記第1の音声特徴テーブルから選択し、
前記第2の音声特徴情報選択手段は、前記第1の音声特徴情報選択手段によって選択された前記第1の音声特徴情報と対応付けられた前記第2の音声特徴情報を、前記第2の音声特徴テーブルから選択する、
ことを特徴とする付記1乃至5の何れか一つに記載の音声変換装置。
【0111】
(付記7)
前記第1の音声特徴テーブル、前記第2の音声特徴テーブルの少なくとも何れかを複数備える、
ことを特徴とする付記1乃至6の何れか一つに記載の音声変換装置。
【0112】
(付記8)
前記第1の音声特徴情報または前記第2の音声特徴情報との間で、前記発話されたときの状態または声質が互いに共通又は類似する第3の音声特徴情報を複数有する第3の音声特徴テーブルを少なくとも1つ備え、
少なくとも1つ備えられた前記第3の音声特徴テーブルのうち1つは、前記第3の音声特徴情報が前記第1の音声特徴情報と互いに対応付けられ、
前記少なくとも1つ備えられた前記第3の音声特徴テーブルのうち1つは、前記第3の音声特徴情報が前記第2の音声特徴情報と互いに対応付けられ、
前記第1の音声特徴情報選択手段は、前記第1の音声特徴テーブルから選択された前記第1の音声特徴情報と対応付けられた前記第3の音声特徴情報を前記第3の音声特徴テーブルから選択し、
前記第2の音声特徴情報選択手段は、前記第3の音声特徴テーブルから選択された前記第3の音声特徴情報と対応付けられた前記第2の音声特徴情報を前記第2の音声特徴テーブルから選択する、
ことを特徴とする付記1乃至7の何れか一つに記載の音声変換装置。
【0113】
(付記9)
前記変換処理手段は、変換された前記ユーザーによって発せられた音声を、装置本体に接続されたスピーカにリアルタイムに出力する制御を行う、
ことを特徴とする付記1乃至8の何れか一つに記載の音声変換装置。
【0114】
(付記10)
装置の使用、不使用を切り替える切り替え手段を備える、
ことを特徴とする付記1乃至9の何れか一つに記載の音声変換装置。
【0115】
(付記11)
コンピュータを、
発音が制限される器材が使用された状態で発せられた音声の特徴を表す第1の音声特徴情報を複数有する第1の音声特徴テーブル、
前記器材が使用されていない状態で発せられた音声の特徴を表し、前記第1の音声特徴情報と対応付けられた第2の音声特徴情報を複数有する第2の音声特徴テーブル、
前記器材が使用された状態でユーザーによって発せられた音声の特徴を表すユーザーの音声特徴情報をフレーム毎に求める音声特徴情報算出手段、
前記音声特徴情報算出手段によって求められた前記ユーザーの音声特徴情報に最も近い前記第1の音声特徴情報を、前記第1の音声特徴テーブルから選択する第1の音声特徴情報選択手段、
前記第1の音声特徴情報選択手段によって選択された前記第1の音声特徴情報と対応付けられた前記第2の音声特徴情報を、前記第2の音声特徴テーブルから選択する第2の音声特徴情報選択手段、
前記第2の音声特徴情報選択手段によって選択された前記第2の音声特徴情報によって、前記フレームに対応する前記音声を変換する変換処理手段、として機能させる、
ことを特徴とするプログラム。