説明

口唇動作パラメータ生成装置及びコンピュータプログラム

【課題】実音声に基づいて、アバターの口唇を見る人に違和感なく動かせる口唇動作パラメータの生成装置を提供する。
【解決手段】生成装置は、発話者の音声から得られる音声信号をフレーム化し、各フレームから第1フォルマントF1及び第2フォルマントF1を抽出するフォルマント抽出部80と、F1及びF2について、話者による母音空間の相違を補償するようにフォルマント空間の原点を移動させる原点移動処理部84と、F1及びF2の線形写像により、F1を補正するよう、フォルマント空間を原点周りに回転させる回転処理部86と、各フレームに対し、回転処理部86が出力する補正後の第1フォルマントの値の関数として、発話者の音声と同期して口唇形状を上下方向に変化させるためのパラメータを生成して出力する形状推定部88を含む。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は発話にあわせてアンドロイド等の口唇の動きを合成する技術に関し、特に、発話に対する口唇の上下方向への開き量を自然なものにできる発話分析技術に関する。
【背景技術】
【0002】
音声分析、音声合成、通信技術、及びロボット制御技術の進展に伴って、実際の人間の発話音声にあわせてロボットに発話させる技術が開発されつつある。ロボットの中でも人間型のロボット(アンドロイドと呼ぶ。)に対してこうした技術を適用するケースが今後多くなると思われる。例えば、カウンセリングの現場において、カウンセラーが遠隔地におり、カウンセリングを受ける人の前にカウンセラーの身代わりとしてアンドロイドをおく場合等が考えられる。アンドロイドを使用するのであれば、患者と医師とが遠く離れていても、患者がアンドロイドを介して医師と対話できる。
【0003】
このような用途には、映像を用いることも多い。しかし2次元の映像と3次元のアンドロイドとでは、対話者が受ける印象が異なり、得られる効果にも大きな相違が生ずるものと考えられる。
【0004】
このような用途でアンドロイドを使用する場合、様々な問題が生じることが考えられる。特に、アンドロイドと対話しようとする人に違和感を生じさせないよう、アンドロイドの表情を制御することが要求される。
【0005】
特に大きな問題は発話時の口唇の動きである。アンドロイドが何らかの発話をしているときに、その口唇が発話音声と無関係に動くようでは、対話者が大きな違和感を抱いてしまう。そのような違和感が生じないような口唇の制御方法が求められている。アンドロイドが利用される場面として、アンドロイドが人間と対話する、というものがある。この場合、実際に人間と対話するのはアンドロイドではなく、どこか別の場所にいる、アンドロイドの操作者である。こうした応用では、操作者の発話にあわせてリアルタイムでアンドロイドが発話するようにしなければならず、あわせてアンドロイドの口唇も発話内容にあわせてリアルタイムで動かす必要がある。
【0006】
このような技術に関連する技術として、テキストから顔画像のアニメーションを作成する技術が例えば後掲の特許文献1に開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2009−087328号公報(発明の名称:リップシンクアニメーション作成装置、コンピュータプログラム及び顔モデル作成方法)
【発明の概要】
【発明が解決しようとする課題】
【0008】
特許文献1に開示された技術は、予め音素に対応する顔画像モデル(視覚素)を準備し、テキストから得られた音素列に対して、音素列に対応する視覚素列に基づいて顔画像のアニメーションを作成する、というものである。特許文献1に記載の技術により、口の動きの早さ、音素の並び等に基づいて補正された、自然な口の動きが生成できる。
【0009】
しかし、特許文献1に記載された技術は、テキストに基づいて顔画像を生成するものである。したがって、音声認識技術を適用しない限り、上記したようなリアルタイムの応用に使用することはできない。音声認識技術を適用したとしても、音声認識の結果が誤っていれば、口唇の動きも大きく異なり、大きな違和感を生ずるおそれがある。
【0010】
このような問題は、アンドロイドの場合に限らない。アニメーションを用いたリアルタイムの場合でも生じ得る。すなわち、アンドロイドにせよ、アニメーションにせよ、実際の発話者の身代わりとなる、いわゆるアバターには、このような問題が生じる可能性がある。そのような問題を解決するにあたり、発話者の性別を考慮する必要もある。
【0011】
それゆえに本発明の目的は、実音声に基づいて、アバターの口唇を見る人に違和感なく動かすことができるような、口唇動作パラメータの生成装置及びそのためのコンピュータプログラムを提供することである。
【0012】
本発明の他の目的は、実音声に基づいて、発話者の性別に応じて、アバターの口唇を、見る人に違和感なく上下方向に動かすことができるような、口唇動作パラメータの生成装置及びそのためのコンピュータプログラムを提供することである。
【課題を解決するための手段】
【0013】
本発明の第1の局面に係る口唇動作パラメータ生成装置は、発話者の音声から得られる音声信号をフレーム化して一連のフレーム信号を出力するフレーム化手段と、フレーム化手段から出力される各フレームから、音声の第1フォルマント及び第2フォルマントを抽出するフォルマント抽出手段と、フォルマント抽出手段により各フレームから抽出された第1フォルマント及び第2フォルマントについて、話者によるフォルマント空間内の母音空間の相違を補償するように正規化する正規化手段と、正規化手段により正規化された第1フォルマント及び第2フォルマントの線形写像により、第1フォルマントを補正する補正手段とを含む。フォルマント空間は、第1フォルマント軸と第2フォルマント軸とにより規定される。線形写像は、補正後の第1フォルマントと発話者の口の上下方向の開き量との相関が、正規化された第1フォルマントと発話者の口の上下方向の開き量との相関より高くなるように選ばれる。口唇動作パラメータ生成装置はさらに、フレーム化手段から出力される各フレームに対し、補正手段により出力される補正後の第1フォルマントの値の関数として、発話者の音声と同期して口唇形状を上下方向に変化させるためのパラメータを生成して出力するパラメータ生成手段を含む。
【0014】
発話者の音声の各フレームから第1フォルマントと第2フォルマントとが抽出される。これらフォルマントについて、話者による母音空間の相違を補償するように正規化される。正規化された第1フォルマントについて、発話時の口の上下方向の開き量と相関が高くなるように、第1フォルマントと第2フォルマントとの線形写像により第1フォルマントが補正される。補正後の第1フォルマントの関数としてアバターの口の開き量を制御することにより、アバターの口の開き量が、発話の音声にあわせて決められ、アバターの発話時の口の形が自然なものとなる。
【0015】
好ましくは、正規化手段は、各フレームについて、第1フォルマントと第2フォルマントとについてそれぞれ、所定の第1及び第2の定数を減算する減算手段を含む。
【0016】
正規化を減算により行なうので、正規化処理が簡単に行なえる。
【0017】
より好ましくは、補正手段は、フレーム化手段から出力される各フレームの第1フォルマント及び第2フォルマントの値により定められるベクトルについて、第1フォルマント軸を所定角度だけフォルマント空間の原点周りに回転させる線形変換を行ない、変換後のベクトルの、第1フォルマントの値に対応する要素を補正後の第1フォルマントの値として出力する回転手段を含む。所定角度は、原点に対して第2フォルマントが増加する方向に19度より大きく31度より小さく選ばれる。
【0018】
第1フォルマントと第2フォルマントとの線形写像は、フォルマント空間の第1フォルマント軸を19度より大きく31度より小さい回転量だけ回転させる変換で得られる。このような変換を行なうと、補正後の第1フォルマントの値と口の開き量との相関が高くなることが実験により判明した。
【0019】
さらに好ましくは、口唇動作パラメータ生成装置は、第1及び第2の定数と、所定角度とを各々が含むパラメータの組を複数個記憶するパラメータ記憶手段と、パラメータ記憶手段に記憶されたパラメータの組のいずれかを操作者による操作に応答して選択し、選択されたパラメータの組の第1及び第2の定数を減算手段に与え、所定角度を回転手段に与えるパラメータ選択手段とをさらに含む。
【0020】
たとえば発話者ごとに、又は男性と女性とにより、身体的な相違に起因して第1フォルマント及び第2フォルマントの範囲が異なる。それらを複数組記憶しておき、発話者にあわせて選択することで、発話者に適した補正を行なうことができ、アバターの口の動きも自然なものとなる。
【0021】
複数個のパラメータの組は、発話者が男性であるときに選択される第1のパラメータの組と、発話者が女性であるときに選択される第2のパラメータの組とを含み、第1のパラメータの組の第1の定数は、第2のパラメータの組の第1の定数よりも小さく選ばれていてもよい。
【0022】
好ましい実施の形態では、第1の組の所定角度は、第2の組の所定角度よりも大きく選ばれている。
【0023】
好ましくは、パラメータ生成手段は、フレームの各々について、フォルマント抽出手段により抽出された第1フォルマントの値が第1の有限範囲内にあり、フォルマント抽出手段により抽出された第2フォルマントの値が第2の有限範囲内にあり、かつフレームの音声信号のパワーがしきい値より大きい、という条件が成立しているか否かを判定する第1の判定手段と、第1の判定手段による判定が肯定であるときに、第1フォルマントの関数により口唇の上下方向の開き量を算出する第1のパラメータ算出手段と、第1の判定手段による判定が否定であるときに、フレームの音声パワーがしきい値を連続して下回っている期間が、処理対象のフレームを含めて一定時間未満か否かを判定する第2の判定手段と、第2の判定手段による判定が肯定のときに、口唇の上下方向の開き量を、当該開き量の変動可能な範囲の中央を含む範囲内の一定値に設定する第2のパラメータ算出手段と、第2の判定手段による判定が否定のときに、口唇の上下方向の開き量を一定値より小さな値に定数に設定する第3のパラメータ算出手段とを含む。第1の有限範囲の下限は第2の有限範囲の下限より小さく、第1の有限範囲の上限は、第2の有限範囲の下限より大きく上限より小さい。
【0024】
口唇パラメータ生成装置は、正規化手段により正規化された第2フォルマントの値の関数として、発話者の口唇部の左右への開き量の、予め定められた標準状態からの差を求め、当該差に基づいて、発話者の音声と同期して口唇形状を左右方向に変化させるためのパラメータを生成して出力する開き量パラメータ生成手段をさらに含んでもよい。
【0025】
本発明の第2の局面に係るコンピュータプログラムは、音声をキャプチャする機能を備えたコンピュータにより実行されると、当該コンピュータを、発話者の音声から得られる音声信号をフレーム化して一連のフレーム信号を出力するフレーム化手段と、フレーム化手段から出力される各フレームから、音声の第1フォルマント及び第2フォルマントを抽出するフォルマント抽出手段と、フォルマント抽出手段により各フレームから抽出された第1フォルマント及び第2フォルマントについて、話者による母音空間の相違を補償するように正規化する正規化手段と、正規化手段により正規化された第1フォルマント及び第2フォルマントの線形写像により、第1フォルマントを補正する補正手段として機能させる。フォルマント空間は、第1フォルマント軸と第2フォルマント軸とにより規定される。線形写像は、補正後の第1フォルマントと発話者の口の上下方向の開き量との相関が、正規化された第1フォルマントと発話者の口の上下方向の開き量との相関より高くなるように選ばれる。コンピュータプログラムはさらに、コンピュータを、フレーム化手段から出力される各フレームに対し、補正手段により出力される補正後の第1フォルマントの値の関数として、発話者の音声と同期して口唇形状を上下方向に変化させるためのパラメータを生成して出力するパラメータ生成手段として機能させる。
【図面の簡単な説明】
【0026】
【図1】本発明の1実施の形態に係る対話システムの概略構成を示す模式図である。
【図2】図1に示す対話システムのうち、アバター制御情報を生成する装置のブロック図である。
【図3】図2に示す装置のうち、操作者の音声の第1及び第2フォルマントを抽出するフォルマント抽出部のブロック図である。
【図4】フォルマント抽出のため、音声信号に対して行われる窓掛け処理の効果を示すグラフである。
【図5】生の音声エネルギに基づいて得られるスペクトルを示すグラフである。
【図6】LPC係数に基づいて得られるLPCスペクトルを示すグラフである。
【図7】男女の性別によるフォルマント空間の相違を説明するためのグラフである。
【図8】発話とアンドロイドの口唇の動きとの相関を高めるために、発話者の音声から得られるフォルマント軸の移動及び回転を説明するための模式図である。
【図9】図8に示す処理が行われた第1及び第2フォルマントの値からアンドロイドの唇の形状を推定する処理を実現するプログラムの制御構造を示すフローチャートである。
【図10】図1に示すアンドロイドのブロック図である。
【図11】図1に示すアバター制御情報生成装置を実現するコンピュータの外観を示す模式図である。
【図12】図11に示すコンピュータのハードウエア構成を示すブロック図である。
【発明を実施するための形態】
【0027】
以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。
【0028】
[構成]
図1を参照して、本願発明の1実施の形態に係るアンドロイドによる対話システム30は、人間の顔を模して作られた頭部と、人間の体を模した胴体とを有するアンドロイド40と、アンドロイド40から離れた場所に存在し、アンドロイド40と通信路56により通信することにより、操作者52による発話と、口唇部の動作を制御する制御指令をアンドロイド40に伝える制御システム42とを含む。
【0029】
アンドロイド40は上唇及び下唇を模して作られた口唇部60を持つ。口唇部60は、制御システム42から送信されてくる制御パラメータにしたがって上下の開口量が制御される。口唇部60の口角部の左右の動きも制御システム42からの制御パラメータにしたがって制御される。
【0030】
制御システム42は、コンピュータからなる、アンドロイド40の口唇部の制御パラメータ生成装置50と、制御パラメータ生成装置50上で動作するソフトウェアとにより、操作者52の発話音声をアンドロイド40に送信する処理と、発話音声から得られる口唇部60の制御パラメータを発話音声から算出してアンドロイド40に送信する処理とを実行する。そのために、制御パラメータ生成装置50には、マイクロフォン付きのヘッドフォン54が接続される。操作者52がヘッドフォン54を装着して発話することにより、その発話音声からアンドロイド40の口唇部60に関する制御パラメータが算出され、アンドロイド40に送信される。なお、制御システム42は、アンドロイド40とは離れた位置に設けられる。アンドロイド40の周囲がどのようになっているかを知るために、アンドロイド40の周辺又はアンドロイド40の頭部には、カメラ(図示せず)が設けられ、映像を制御パラメータ生成装置50に送信する。また、対話をするためにはアンドロイド40の前にいる人物の音声を聞く必要がある。そのため、アンドロイド40にはマイクロフォン(図示せず)が設けられ、音声を制御パラメータ生成装置50に送信する。操作者52は、ヘッドフォン54を介してこの音声を聞くことができる。
【0031】
図2を参照して、制御パラメータ生成装置50は、発話者の音声信号から発話者の音声の第1フォルマント及び第2フォルマントの周波数を抽出するフォルマント抽出部80と、フォルマント抽出部80により抽出された第1及び第2フォルマントに対し、予め準備されていた、話者に依存したフォルマントの調整用のパラメータにしたがって、第1及び第2フォルマントよりなる空間(フォルマント空間)の原点を移動させる原点移動処理部84と、原点移動処理部84による原点移動処理がされた後の第1及び第2フォルマント情報について、移動後の原点を中心に、所定量フォルマント空間を回転させる処理を行なう回転処理部86と、原点移動処理部84による原点の移動量、及び回転処理部86によるフォルマント空間の回転量を予め記憶する、調整用パラメータ記憶部82とを含む。なお、第1フォルマントが口の上下方向の開き量と比較的相関が高く、第2フォルマントが口角方向の移動量と相関が高いことは既に知られている。本実施の形態では、口の上下方向の開き量との相関が第1フォルマントよりもさらに高くなるよう、上記した回転を行なって第1フォルマントを補正する。第2フォルマントについては、フォルマント空間の回転を行なう前の値を用いる。
【0032】
原点移動処理部84による原点の移動とは、第1フォルマント及び第2フォルマントの値を要素とする2次元ベクトルの各要素から、それぞれ所定の値を減算することに相当する。
【0033】
一方、回転処理部86による回転は平面内の回転である。平面内においてベクトル(a、b)を原点周りに角θだけ回転させた場合、新たなベクトルを(x、y)とすれば、(x、y)は次の式により表される。
【0034】
【数1】

回転処理部86による処理は、軸を原点周りにθだけ回転させるので、上の式でθの符号をマイナスにしたものにより表される。
【0035】
【数2】

第1フォルマントをa、第2フォルマントをbとすると、回転後の、すなわち補正後の第1フォルマントxは、x=acosθ+bsinθで表すことができる。すなわち、補正後の第1フォルマントは、補正前の第1フォルマント及び第2フォルマントの線形和からなる、第1フォルマント及び第2フォルマント空間内の線形写像で表される。
【0036】
制御パラメータ生成装置50はさらに、回転処理部86により回転されたフォルマント空間における、補正後の第1フォルマント、及び原点移動処理部84による移動処理がされた後の第2フォルマントとに基づいて、アンドロイド40の口唇部60の形状を推定し、形状パラメータを出力する形状推定部88と、形状推定部88の出力する形状パラメータに基づき、口唇部60が当該形状を形成するように口唇部60のアクチュエータを駆動するための制御指令を生成する制御指令生成部90と、制御指令生成部90の出力する制御指令を所定時間間隔で通信路56を介してアンドロイド40に送信する制御指令送信部92と、発話者の音声信号から生成した音声パケットを制御指令送信部92と同じ時間間隔で通信路56を介してアンドロイド40に送信するための音声パケット送信部100とを含む。本実施の形態では、制御システム42とアンドロイド40とはTCP/IPで通信する。また、後述するようにフォルマント抽出部80から制御指令生成部90までによる制御指令の生成は、10ミリ秒ごとに繰返し実行される。したがって、制御指令送信部92及び音声パケット送信部100は、10ミリ秒ごとに、TCP/IPによるソケット通信で音声パケット及び制御指令をアンドロイド40に送信する。
【0037】
原点移動処理部84によるフォルマント空間における原点の移動、及び回転処理部86によるフォルマント空間の回転は、話者に依存したパラメータのキャリブレーションに相当する。本実施の形態では、これらキャリブレーションに必要な情報は、話者に依存したパラメータとして後述するように予め設定されている。ただし、このパラメータの設定は、例えば男女及び年齢別に設定すれば十分な場合もあり、必ずしも個々の話者について設定する必要はない可能性もある。これらをどのようにすべきかは設計に依存する。
【0038】
図3を参照して、フォルマント抽出部80は、16kHz、16ビットでキャプチャされた音声信号に対し、プリエンファシス等の前処理と、10ミリ秒ごとに、32ミリ秒幅のハミング・ウィンドウによる窓掛け処理とを行なってフレーム化した音声信号を出力する前処理部110と、前処理部110により出力される各フレームに対しLPC(Linear Prediction Coefficients)分析を行なってLPCパラメータを出力するLPC分析部112と、LPC分析部112により出力されるLPCパラメータを用い、処理対象の音声フレームのLPCスペクトルを算出するLPCスペクトル算出部114と、LPCスペクトル算出部114により算出されたLPCスペクトルのスペクトル包絡から、公知の手順にしたがってピークを検出することで、音声の第1フォルマント(F1)及び第2フォルマント(F2)の周波数情報を出力するピーク検出部116とを含む。
【0039】
図4を参照して、前処理部110による窓掛け処理について説明する。以下の図4〜図6に示すグラフは、鹿野清宏他編著、「音声認識システム」、平成13年5月15日発行、株式会社オーム社、東京、日本、の第9ページに記載されているものを引用した。図4において、入力音声は波形130により示されている。ハミング・ウィンドウは波形132により示されている。前処理部110は、波形130に波形132を乗ずることで音声信号の窓掛けを行なう。窓掛け後の音声信号は波形134により示されている。
【0040】
本実施の形態では、LPC係数として第0次〜第18次まで(a,k=0,…,18)の、19次元の係数を用いる。
【0041】
図5を参照して、一般に、音声信号に対して単純に単時間フーリエスペクトル分析を行なって得られる音声のパワースペクトル150には、細かい変動が重なっており、ピークが明確でなく、フォルマント抽出に適さない。しかし、図6を参照して、LPCスペクトル160ではそのような細かい変動が除かれ、滑らかでかつピークが明確なスペクトル包絡が得られる。このようにして得られたLPCスペクトル160の第1ピーク及び第2ピークに対応する周波数がそれぞれ第1フォルマント及び第2フォルマントである。
【0042】
なお、フォルマント抽出部80を構成する各部で行なわれる処理は、上記した教科書にも記載されているとおり、本発明が属する技術分野においては周知技術に属する。
【0043】
図7を参照して、話者によるフォルマント空間の相違及びその調整について説明する。図7左側はある男性話者の5つの単母音(a、e、i、o、u)発声から得られたF1及びF2を、F1及びF2の対数を2つの軸とする空間(フォルマント空間)にプロットしたものである。図7右側は女性によるものである。5つの母音に対応するプロット点の近傍に、各母音のアルファベット表示と、そのときの口の形とを示してある。
【0044】
図7を参照して、男性と女性とでは、声道の長さの相違に起因して、プロットされる点の位置に相違がある。これら母音が分布する点を母音空間と呼ぶことにする。母音空間は、性別だけでなく、話者の年齢、身長等によっても相違する。ここで説明するのは、このような話者による相違を補償するように、話者のフォルマントを正規化するための処理である。ただし、話者として話者ごとに正規化してもよいし、ある共通の特性を持つ手段ごとに話者を正規化してもよい。例えば女性と男性とは、それぞれ異なる音声的特徴を示す。したがって、これらを別々の2組として、それぞれ正規化するようにしてもよい。
【0045】
図7左側には日本人男性の平均母音空間192を示し、図7右側には日本人女性の平均母音空間202を示す。本実施の形態では、これら母音空間の中心(図7左側の点190及び図7右側の点200)がフォルマント空間の原点となるように、フォルマント空間の原点を移動させる。この処理をするのが図2に示す原点移動処理部84である。この中心位置は、英語のいわゆる「シュワー」母音に相当する。本実施の形態では、性別による調整のみを行なうこととする。したがって、原点の移動量は、女性及び男性の各々について、予め多数の話者の単母音発声をプロットして得られた点の集合から得られる。本実施の形態では、この集合の中心を手作業で特定し、この位置を、新たなフォルマント空間の原点とする。フォルマント空間の原点の移動量はこの点の座標により決まる。なお、実際にはこの処理により決められるのはF1の中心座標(これを「centerF1」と呼ぶ。)である。F2の中心座標(これを本実施の形態では「centerF2」と呼ぶ。)は、centerF2=2.9*centerF1により計算できる。なお、容易に理解できるように、原点のlogF1軸方向の移動量は、男性の方が女性より小さい。
【0046】
図7を参照して、回転後のlogF1軸及びlogF2軸をそれぞれlogF1´軸194及び204及びlogF2´軸196及び206と呼ぶことにすると、ここでの回転量は、口の上下方向への開き具合とlogF1´軸194及び204上の値との相関が高くなるようにすることにより定めるべきであることが分かる。上記した5母音についていうと、各母音の発声時の口の上下方向の開き量には、a>e>i=o>uという関係がある。したがって、logF1´軸194及び204の回転量は、logF1´軸194及び204上でのこれら母音のlogF1の値がこの順で並ぶようにすることにより定められる。
【0047】
実験の結果、男性の場合には軸を反時計回りに28度程度、女性の場合には同じく反時計回りに22程度回転させると、回転後のlogF1´軸194及び204上でのlogF1の値が、上記した母音の順番とほぼ一致することが見出された。もちろん、この回転量には幅があり、男性の場合には25度〜31度程度、女性の場合には19度〜25度程度が好適であると考えられる。いずれにせよ、男性と女性とを区別するときは、男性のための回転角度の方が、女性のための回転角度よりも大きい。男性、女性を区別しない場合には25度程度が好ましい。
【0048】
以上をまとめると図8のようになる。図8上を参照して、フォルマント空間の原点210について、上のようにして定めた点190の位置まで移動させ、LogF1軸及びLogF2軸も同様に平行移動させて新たなLogF1軸212及びLogF2軸214とする。次に、図8下を参照して、上のようにして個別の話者、若しくは男性又は女性の別に応じて定めた角度αだけLogF1軸212及びLogF2軸214を反時計軸方向に回転し、新たなLogF1´軸194及びLogF2´軸196を定める。そして、音声のF1及びF2により定まる点の、LogF1´軸194上の座標値と、回転前のLogF2軸214上の座標値との関数として、それぞれ口の上下方向及び水平方向の開き量(標準状態からの差異)を求める。以上が、図2に示す原点移動処理部84及び回転処理部86の行なう処理である。
【0049】
一旦これらの値が決まると、アンドロイド40の構成にしたがって、形状推定部88と制御指令生成部90とによる制御指令の生成を行なうことができる。
【0050】
図9を参照して、図2に示す形状推定部88による口の形状の推定処理を実現するプログラムの制御構造について説明する。このプログラムは、図2に示す回転処理部86から1フレーム分の音声信号に関する補正後のフォルマント情報が出力されるたびに起動される。なお、以後に記載するフォルマント情報のうち、F1及びF2はそれぞれ、原点の移動及び座標軸の回転による補正前のF1及びF2であり、F1´は原点の移動及び座標軸の回転により補正された後のF1を示す。
【0051】
図9を参照して、このプログラムはステップ230で開始し、ステップ230ではF1が250Hzより大きく1500Hzより小さい範囲にあり、かつF2が500Hzより大きく4000Hzより小さい範囲にあり、かつ当該フレームのパワーPowが予め定められたしきい値Pthreshより大きいか否かを判定する。判定が肯定なら制御はステップ232に進み、判定が否定なら制御はステップ234に進む。
【0052】
ステップ232では、該当フレームが母音又は半母音からなる音声区間であると考えられるため、唇の上下方向の開き(H)及び唇の左右方向の開き(ここでは標準となるシュワー母音からの変移量:DW)を以下の式(1)及び(2)により定める。
【0053】
【数3】

ただしH(標準母音)はシュワー母音発話時の唇の上下方向の開き量であり、Sは上下方向の開きを算出するための係数であり、Sは左右方向の開きを算出するための係数である。H(標準母音)は通常は0.6程度である。Sは、男性では1.8〜2.3程度、女性では1.2〜1.8程度である。汎用的には、男性についてはS=2程度とし、女性については1.5とするとよい。Sは男性及び女性の双方について0.5程度がよい。centerF2は前述したシュワー母音のF2周波数であり、話者の音声空間の中心のF2の値を示す。DWは、/i/及び/e/では正の値、/o/及び/u/では負の値となる。
【0054】
再び図9を参照して、ステップ232の処理の後、このプログラムの実行は終了する。
【0055】
一方、ステップ230の判定が否定の場合、ステップ234において、上記したフレームのパワーPowがしきい値Pthreshより大きい区間が200ミリ秒未満か否かが判定される。判定が肯定の場合はこのフレームが子音区間であると考えられ、ステップ236で子音区間に対応する口形状の決定が行なわれる。より具体的には、ステップ236では、H=0.5に固定され、DWはその前のフレームでの値と同じ値とする。又はDWについては前後のフレームの値を内挿することで算出してもよい。
【0056】
一方、ステップ234の判定が否定の場合、すなわちパワーが低い区間がある一定の時間(本実施の形態では200ミリ秒)を越えると、当該フレームは無音区間であるとみなされる。H及びDWの双方ともゼロとする。
【0057】
上記した判定により、母音及び半母音以外の子音区間と考えられるフレームでは、唇が半開きとなり、詳細に見ると中途半端な印象を受けるのではないかと考えられる。しかし、アンドロイドの口の動きに関しては、このように子音区間で唇を半開きとしてもそれほど違和感がないことが分かっている。
【0058】
図10を参照して、アンドロイド40の構成のうち、唇の動きと発声とに関する部分は以下のような構造を持つ。すなわち、アンドロイド40は、制御システム42から10ミリ秒ごとにそれぞれ送信されてくる音声パケット及び制御指令を受信する音声パケット受信部250及び制御指令受信部270と、音声パケット受信部250が受信した音声パケットに対し、制御指令に応答してアンドロイドのアクチュエータが動き始めるまでの時間的遅延に相当する遅延の後に音声再生処理を行ない音声信号を出力する音声再生回路252と、音声再生回路252の出力する音声信号を音声に変換するスピーカ254と、制御指令受信部270の受信した制御指令に基づいて、アクチュエータに対する制御信号を出力するアクチュエータ制御回路272と、アクチュエータ制御回路272の出力に応答して動作し、アンドロイド40の口唇部の各部を動かす複数のアクチュエータ274とを含む。
【0059】
なお、制御システム42の処理能力と、アンドロイド40における情報の処理能力とに差があり、アンドロイド40が制御システム42からの音声パケット及び制御情報を全て時間内に処理できなかったり、制御システム42から次の情報が送信されてくる前に音声パケット及び制御情報に基づく処理を全て終わってしまったりする場合が考えられる。そのため、制御システム42の動作とアンドロイド40の動作とが同期しなくなる可能性がある。そうした問題を回避するため、前者の場合には、アンドロイド40から制御システム42に送信されてくる情報の一部を捨てる処理が必要となり、後者の場合には、例えば既に処理済みの情報を繰返して処理するような処理が必要となる。このような処理は、リアルタイムで遠隔地の間で通信を行なうシステムでは通常行なわれているものである。
【0060】
[動作]
上記した対話システム30は以下のように動作する。対話システム30が動作するためには、前処理として、フォルマント補正のための、話者に依存したパラメータを実験等により得て、調整用パラメータ記憶部82に記憶させる必要がある。本実施の形態では、複数の男性又は複数の女性による上記した5つの単母音の発声からF1及びF2を算出し、その母音空間の中心を求める。これにより男性及び女性の各々について、フォルマント空間の原点の移動量が定められる。さらに、男女の各々について、既に述べた手法にしたがい、原点移動後のフォルマント空間のLogF1軸を回転させ、上記した5つの単母音がa>e>i=o>uの順番で並ぶような角度を求める。回転後のLogF1軸がLogF1´軸である。
【0061】
このようにして男性と女性との各々に対し、フォルマント空間の原点の移動量と、LogF1軸の回転量とが算出される。これらの値は男性と女性とに区別して調整用パラメータ記憶部82に記憶される。さらに、無音区間とそれ以外とを識別するためのしきい値についても、実験により定めて、調整用パラメータ記憶部82に格納しておく。式(1)及び(2)に出現する係数S及びSについても同様である。
【0062】
実際のアンドロイド40の動作時には対話システム30は以下のように動作する。最初に、操作者が男性か女性かにより、調整用パラメータ記憶部82に格納されたパラメータのうち、適切なものが選択される。制御システム42の前には操作者52が控え、マイクロフォン付ヘッドフォン54を装着する。制御パラメータ生成装置50とアンドロイド40とを通信路56上のTCP/IP通信により接続する。アンドロイド40の周辺にあるビデオカメラ及びマイクロフォンにより得た映像及び音声をアンドロイド40から制御パラメータ生成装置50に送信し、映像は制御パラメータ生成装置50のモニタ上に表示し、音声はヘッドフォン54により再生する。
【0063】
操作者52がアンドロイド40に何かを発声させようとする場合、操作者52はその発話内容にしたがった発声を行なう。音声はヘッドフォン54のマイクロフォンによりキャプチャされ、図2に示すフォルマント抽出部80に与えられる。図3に示す前処理部110は、音声信号に対してプリエンファシス等の前処理を行なった上で、10ミリ秒のシフト量及び32ミリ秒のウィンドウ長のハミング・ウィンドウで窓掛け処理を行なって音声のフレーム化処理を行ない、10ミリ秒ごとに音声信号のフレームをLPC分析部112に与える。
【0064】
LPC分析部112は、与えられた音声信号のフレームに対するLPC分析により、19次元のLPC係数を求め、LPCスペクトル算出部114に与える。LPCスペクトル算出部114は、与えられたLPC係数に基づいて、そのフレームのLPCスペクトルを求めて、ピーク検出部116に与える。ピーク検出部116は、このLPCスペクトルのピークのうち、周波数の低い方から2つのピークを定め、その周波数を求めてF1及びF2としてそれぞれ図2に示す原点移動処理部84に与える。
【0065】
原点移動処理部84は、調整用パラメータ記憶部82に記憶された原点移動量にしたがって、フォルマント空間の原点を移動させる。回転処理部86は、移動後の原点を中心に、LogF1軸及びLogF2軸を調整用パラメータ記憶部82に記憶された、操作者52に対応した回転角だけ回転させてLogF1´軸を定め、フォルマント抽出部80により抽出されたF1に基づいて、補正後のLogF1´の値を求める。このLogF1´の値は、F2及び原点移動処理部84における原点の移動量(特にcenterF2)とともに形状推定部88に与えられる。形状推定部88は、与えられたLogF1´の値、F2、centerF2、並びに調整用パラメータ記憶部82に記憶されていたS,S及びPthreshを用い、図9に制御構造を示すプログラムにより、唇の形状(唇の上下方向への開き量H、及び左右への開き量の標準状態からの差DW)を推定し、制御指令生成部90に与える。
【0066】
制御指令生成部90は、与えられた開き量H及び差DWにしたがった位置にアンドロイド40の口唇部60が来るようなアクチュエータの制御指令を生成し、制御指令送信部92に与える。制御指令送信部92は、この制御指令をアンドロイド40に送信する。この送信は10ミリ秒ごとに行なわれる。
【0067】
一方、音声パケット送信部100は、音声信号をキャプチャして生成した音声パケットを、10ミリ秒ごとにアンドロイド40に送信する。
【0068】
したがって、制御指令送信部92の送信する制御指令と、音声パケット送信部100の送信する音声信号との間には、多少の時間的ズレが生ずる。しかしこのズレは、後述するようにアンドロイド40でのアクチュエータの駆動に要する遅延時間により実質的に補償されるので、ここで特に問題とする必要はない。
【0069】
図10を参照して、アンドロイド40の音声パケット受信部250は、制御パラメータ生成装置50から音声パケットを受信すると、受信した音声パケットを音声再生回路252に与える。音声再生回路252は、与えられた音声パケットに基づいて、スピーカ254を駆動するための音声信号を生成し、その音声信号をスピーカ254に与える。スピーカ254はこの音声信号を音声に変換する。音声パケット受信部250が音声パケットを受信してからスピーカ254がその音声パケットに基づく音声を発生するまでの処理はいずれも電気的なものであり、その間の時間的遅延は僅かな量である。
【0070】
一方、制御指令受信部270は制御パラメータ生成装置50からの制御指令を受信すると、アクチュエータ制御回路272にその制御指令を与える。アクチュエータ制御回路272は、与えられた制御指令に基づいて、複数のアクチュエータ274に対する制御信号を発生してアクチュエータ274に与える。アクチュエータ274は、この制御信号に応答して、口唇部60の各部を制御指令により指定された量だけ移動させる。
【0071】
この制御指令受信部270からアクチュエータ274による処理のうち、特にアクチュエータ274による処理は機械的なものである。そのため、アクチュエータ274に対する制御信号をアクチュエータ制御回路272が出力してからアクチュエータ274が実際に指定された量だけ口唇部60の各部を移動させるまでの間には、どうしてもある程度の時間を要する。この時間は、音声を処理するのに要する時間と比較してはるかに長い。したがって、音声に対する処理とアクチュエータ駆動の処理との間を同期させないと、口唇部60の動きが音声より遅れることになる。したがって、音声再生回路252による音声信号の発生は、上記した時間のずれに相当する時間だけ、遅延させる。さらにこの遅延時間に、制御パラメータ生成装置50側で音声と制御指令との生成に要する時間を補償する時間を加えることで、両者を同期させることができる。
【0072】
以上のように本実施の形態によれば、アンドロイド40の口唇部60を、遠隔地にいる操作者52の発話にしたがって動かし、その動きに同期してアンドロイド40において操作者52の発話を再生できる。特に口唇部60の上下方向の開口量が、フォルマント空間の移動及び回転により補正した後の第1フォルマントF1´によって制御されるため、第1フォルマントF1´の値と高い相関で口唇部60の口が開くようにアンドロイド40を制御できる。その結果、実音声に基づいて、操作者52のアバターであるアンドロイド40の口唇部60を、見る人に違和感なく動かすことができる、アバターの口唇制御を実現できる。
【0073】
なお、上記実施の形態では、第1フォルマントF1の調整のためのパラメータを予め求め、記憶装置に記憶させておくが、本発明はそのような実施の形態に限定されるわけではない。例えば、起動後に上記した5母音を操作者に発話させ、これら発声からF1の中心座標を求め、さらにLogF1軸の回転量を自動的に求めることで、パラメータ調整を自動化することもできる。この場合、F1の中心座標は各母音のF1の値の平均値でもよい。LogF1軸の回転量を求める際には、/i/及び/o/のLogF1´の値がほぼ等しくなるように、かつLogF1´の値がa>e>i=o>uという順番となるように定めればよい。最も単純な方法は、/i/及び/o/のフォルマント空間上の点を結んだ線がLogF2´軸と平行になるように回転量を定める、というものである。
【0074】
ただし、中心座標の決定及びLogF1軸の回転量の決定の方法がこの方法に限定されるわけでないことはもちろんである。
【0075】
また、上記実施の形態では、母音及び半母音の区間と、子音の区間と、無音区間との区別を図9に制御構造を示すプログラムにより実現している。しかし、図9に示す数値及びアルゴリズムは一例に過ぎず、多少異なる数値を用いたり、子音又は母音をさらに細かく分類するアルゴリズムを採用したりしてもよい。無音区間を定めるためのしきい値Pthreshについても、応用により、環境によりその数値は変化すると考えられる。
【0076】
[コンピュータによる実現]
上記した対話システム30のうち、制御システム42側の制御パラメータ生成装置50はコンピュータハードウェア及び当該コンピュータハードウェア上で実行されるプログラムにより実現することができる。図11は、この実施の形態において、制御システム42を構成する制御パラメータ生成装置50を実現するコンピュータシステム530の外観を示し、図12はコンピュータシステム530の内部構成を示す。
【0077】
図11を参照して、このコンピュータシステム530は、メモリポート552及びDVDドライブ550を有するコンピュータ540と、キーボード546と、マウス548と、モニタ542と、音声入力に用いられるマイクロフォン570と一対のスピーカとを有する、図1に示したヘッドフォン54とを含む。
【0078】
図12を参照して、コンピュータ540は、メモリポート552、DVDドライブ550、マイクロフォン570及びヘッドフォン54に加えて、CPU(中央処理装置)556と、CPU556、メモリポート552及びDVDドライブ550に接続されたバス566と、ブートアッププログラム等を記憶する読出専用メモリ(ROM)558と、バス566に接続され、プログラム命令、システムプログラム、及び作業データ等を記憶するランダムアクセスメモリ(RAM)560と、バス566に接続され、マイクロフォン570及びヘッドフォン54を用いた音声処理を行なうサウンドボード568と、TCP/IPを用いた通信により通信路56を介して他装置への接続を提供するネットワークインタフェースカード(NIC)574とを含む。
【0079】
サウンドボード568は、マイクロフォン570からの音声をキャプチャしたり、CPU556により処理されたデジタルの音声信号をアナログの音声信号に変換してヘッドフォン54に与えたりすることができる。
【0080】
コンピュータシステム530を制御パラメータ生成装置50として機能させるためのコンピュータプログラムは、DVDドライブ550又はメモリポート552にそれぞれ挿入されるDVD562又は不揮発性半導体メモリ564に記憶され、さらにハードディスク554に転送される。又は、プログラムは図示しないネットワークを通じてコンピュータ540に送信されハードディスク554に記憶されてもよい。プログラムは実行の際にRAM560にロードされる。DVD562から、不揮発性半導体メモリ564から、又はネットワークを介して、直接にRAM560にプログラムをロードしてもよい。
【0081】
このプログラムは、コンピュータ540をこの実施の形態の制御パラメータ生成装置50として機能させる複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ540上で動作するオペレーティングシステム(OS)もしくはサードパーティのプログラム、又はコンピュータ540にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施の形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又は「ツール」を呼出すことにより、上記した制御パラメータ生成装置50としての動作を実行する命令のみを含んでいればよい。コンピュータシステム530の動作は周知であるので、ここでは繰返さない。
【0082】
なお、上記した実施の形態では、特定の式を挙げて計算方法を示した。しかし、本発明を実現する上では、ここに挙げた式のみが利用可能なわけではない。論理的に本実施の形態で行なったのと同じ計算結果が結論として得られるのであれば、それらもまた本発明の技術的範囲に含まれる。
【0083】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【0084】
30 対話システム
40 アンドロイド
42 制御システム
50 制御パラメータ生成装置
52 操作者
54 ヘッドフォン
56 通信路
60 口唇部
80 フォルマント抽出部
82 調整用パラメータ記憶部
84 原点移動処理部
86 回転処理部
88 形状推定部
90 制御指令生成部
92 制御指令送信部
100 音声パケット送信部

【特許請求の範囲】
【請求項1】
発話者の音声から得られる音声信号をフレーム化して一連のフレーム信号を出力するフレーム化手段と、
前記フレーム化手段から出力される各フレームから、音声の第1フォルマント及び第2フォルマントを抽出するフォルマント抽出手段と、
前記フォルマント抽出手段により前記各フレームから抽出された前記第1フォルマント及び第2フォルマントについて、話者によるフォルマント空間内の母音空間の相違を補償するように正規化する正規化手段と、
前記正規化手段により正規化された第1フォルマント及び第2フォルマントの線形写像により、第1フォルマントを補正する補正手段とを含む口唇動作パラメータ生成装置であって、
前記フォルマント空間は、第1フォルマント軸と第2フォルマント軸とにより規定され、
前記線形写像は、補正後の第1フォルマントと発話者の口の上下方向の開き量との相関が、正規化された第1フォルマントと発話者の口の上下方向の開き量との相関より高くなるように選ばれており、
前記口唇動作パラメータ生成装置はさらに、
前記フレーム化手段から出力される各フレームに対し、前記補正手段により出力される補正後の第1フォルマントの値の関数として、発話者の音声と同期して口唇形状を上下方向に変化させるためのパラメータを生成して出力するパラメータ生成手段を含む、口唇動作パラメータ生成装置。
【請求項2】
前記正規化手段は、
前記各フレームについて、第1フォルマントと第2フォルマントとについてそれぞれ、所定の第1及び第2の定数を減算する減算手段を含む請求項1に記載の口唇動作パラメータ生成装置。
【請求項3】
前記補正手段は、
前記フレーム化手段から出力される各フレームの第1フォルマント及び第2フォルマントの値により定められるベクトルについて、前記第1フォルマント軸を所定角度だけ前記フォルマント空間の原点周りに回転させる線形変換を行ない、変換後のベクトルの、前記第1フォルマントの値に対応する要素を前記補正後の第1フォルマントの値として出力する回転手段を含み、
前記所定角度は、前記原点に対して第2フォルマントが増加する方向に19度より大きく31度より小さく選ばれる、請求項2に記載の口唇動作パラメータ生成装置。
【請求項4】
前記第1及び第2の定数と、前記所定角度とを各々が含むパラメータの組を複数個記憶するパラメータ記憶手段と、
前記パラメータ記憶手段に記憶された前記パラメータの組のいずれかを操作者による操作に応答して選択し、選択されたパラメータの組の前記第1及び第2の定数を前記減算手段に与え、前記所定角度を前記回転手段に与えるパラメータ選択手段とをさらに含む、請求項3に記載の口唇動作パラメータ生成装置。
【請求項5】
前記複数個の前記パラメータの組は、
前記発話者が男性であるときに選択される第1のパラメータの組と、
前記発話者が女性であるときに選択される第2のパラメータの組とを含み、
前記第1のパラメータの組の前記第1定数は、前記第2のパラメータの組の前記第1の定数よりも小さく選ばれている、請求項4に記載の口唇動作パラメータ生成装置。
【請求項6】
前記第1の組の前記所定角度は、前記第2の組の前記所定角度よりも大きく選ばれている、請求項4又は請求項5に記載の口唇動作パラメータ生成装置。
【請求項7】
前記パラメータ生成手段は、
前記フレームの各々について、前記フォルマント抽出手段により抽出された第1フォルマントの値が第1の有限範囲内にあり、前記フォルマント抽出手段により抽出された第2フォルマントの値が第2の有限範囲内にあり、かつフレームの音声信号のパワーがしきい値より大きい、という条件が成立しているか否かを判定する第1の判定手段と、
前記第1の判定手段による判定が肯定であるときに、以下の式により口唇の上下方向の開き量を算出する第1のパラメータ算出手段と、
前記第1の判定手段による判定が否定であるときに、フレームの音声パワーが前記しきい値を連続して下回っている期間が、処理対象のフレームを含めて一定時間未満か否かを判定する第2の判定手段と、
前記第2の判定手段による判定が肯定のときに、口唇の上下方向の開き量を、当該開き量の変動可能な範囲の中央を含む範囲内の一定値に設定する第2のパラメータ算出手段と、
前記第2の判定手段による判定が否定のときに、口唇の上下方向の開き量を前記一定値より小さな値に定数に設定する第3のパラメータ算出手段とを含み、
前記第1の有限範囲の下限は前記第2の有限範囲の下限より小さく、
前記第1の有限範囲の上限は、前記第2の有限範囲の下限より大きく上限より小さい、請求項1〜請求項6のいずれかに記載の口唇動作パラメータ生成装置。
【請求項8】
前記正規化手段により正規化された前記第2フォルマントの値の関数として、発話者の口唇部の左右への開き量の、予め定められた標準状態からの差を求め、当該差に基づいて、発話者の音声と同期して口唇形状を左右方向に変化させるためのパラメータを生成して出力する開き量パラメータ生成手段をさらに含む、請求項1〜請求項7のいずれかに記載の口唇動作パラメータ生成装置。
【請求項9】
音声をキャプチャする機能を備えたコンピュータにより実行されると、当該コンピュータを、
発話者の音声から得られる音声信号をフレーム化して一連のフレーム信号を出力するフレーム化手段と、
前記フレーム化手段から出力される各フレームから、音声の第1フォルマント及び第2フォルマントを抽出するフォルマント抽出手段と、
前記フォルマント抽出手段により前記各フレームから抽出された前記第1フォルマント及び第2フォルマントについて、話者によるフォルマント空間内の母音空間の相違を補償するように正規化する正規化手段と、
前記正規化手段により正規化された第1フォルマント及び第2フォルマントの線形写像により、第1フォルマントを補正する補正手段として機能させるコンピュータプログラムであって、
前記フォルマント空間は、第1フォルマント軸と第2フォルマント軸とにより規定され、
前記線形写像は、補正後の第1フォルマントと発話者の口の上下方向の開き量との相関が、正規化された第1フォルマントと発話者の口の上下方向の開き量との相関より高くなるように選ばれており、
前記コンピュータプログラムはさらに、前記コンピュータを、
前記フレーム化手段から出力される各フレームに対し、前記補正手段により出力される補正後の第1フォルマントの値の関数として、発話者の音声と同期して口唇形状を上下方向に変化させるためのパラメータを生成して出力するパラメータ生成手段として機能させる、コンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2012−173389(P2012−173389A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−33083(P2011−33083)
【出願日】平成23年2月18日(2011.2.18)
【国等の委託研究の成果に係る記載事項】(出願人による申告)JST戦略的創造研究推進事業/チーム型研究(CREST)、研究領域「共生社会に向けた人間調和型情報技術の構築」、研究課題名「人の存在を伝達する携帯型遠隔操作アンドロイドの研究開発」
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】