説明

アバタ通信システム

【課題】 立体アバタを用いた自然な通信を実現する。
【解決手段】 受信手段30は、携帯電話装置2からの音声および動画像を受信する。音声認識手段32は、受信した音声について音声認識を行い、音素に対応する口唇形状を生成する。動画像認識手段34は、受信した動画像に基づいて、口唇形状を含む顔の表情を認識する。アバタ動作決定手段36は、音声認識手段32の出力と動画像認識手段34の出力とに基づいて、アバタの動作を示すアバタ動作データを生成する。アバタ動作決定手段36は、さらに、属性データに基づいて、アバタ動作を修正する。送信手段40は、得られたアバタ動作データを相手方の携帯電話装置に送信する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明はアバタ通信システムに関し、特にそのアバタ動作の制御に関するものである。
【背景技術】
【0002】
アバタ画像を用いて通信を行う方法が提案されている。ここで、「アバタ」とは、通信者の分身として相手方通信者に提示される画像であり、通信者の動作に対応して動作するものをいう。
【0003】
たとえば、画像撮像機能および表示機能を有する端末装置に3次元モデル表示ソフトウエアを用意しておく。3次元モデルソフトウエアは、3次元モデルのパラメータデータを受けて、3次元モデル画像を生成して表示するソフトウエアである。さらに、通話者の端末装置間の通信に、サーバ装置を介在させる。サーバ装置は、通話者の画像データに基づいて、予め、アバタ画像を記録している。サーバ装置は、通話者の音声を受信し、当該音声にあわせてアバタの口の動きを生成し、アバタ動作データを、相手方の端末装置に送信する。併せて、音声も送信する。
【0004】
相手方の端末装置では、受信したアバタ動作データに基づいて、アバタ画像の表情を変化させるとともに、音声を出力する。このようなアバタ通信システムが、例えば、特許文献1に開示されている。
【0005】
【特許文献1】特開2001−110434
【発明の開示】
【発明が解決しようとする課題】
【0006】
このように、アバタ通信システムは、通信者の表情の変化などに応じてアバタの表情なども変化させることができ、プライバシーを配慮しつつ臨場感の高い通信を行うことができる。しかし、アバタの動作は、通信者の動作によって一義的に決定されるものであった。このため、アバタの動作に限界があり、より表現力の高いアバタが求められていた。
【0007】
そこで、この発明では、自由度の高いアバタ動作を実現し、表現力のあるアバタ通信を実現することを目的としている。
【課題を解決するための手段】
【0008】
(1)この発明に係るアバタ通信システムは、第1の端末装置、第2の端末装置、サーバ装置を備えたアバタ通信システムであって、
前記第1の端末装置は、
第1の操作者の画像を撮像する撮像手段と、撮像手段によって取得した第1の操作者の画像を、サーバ装置に送信するための送信手段と、を備えており、
前記サーバ装置は、
第1の端末装置から送信されてきた画像を受信する受信手段と、アバタデータを記録するアバタデータ記録手段と、属性データを記録した属性データ記録手段と、送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定するとともに、前記属性データに基づいて当該アバタ動作を修正するアバタ動作決定手段と、前記アバタ動作を示す情報を第2の端末装置に送信するための送信手段と、を備えており、
前記第2の端末装置は、
サーバ装置から送信されてきたアバタ動作を示す情報を受信する受信手段と、受信したアバタ動作を示す情報に基づいて、アバタ画像を変化させてアバタ動画像を生成するアバタ動画像生成手段と、生成されたアバタ動画像を、第2の操作者に提示するための表示手段と、を備えることを特徴としている。
【0009】
したがって、アバタの動作に属性を与えることができ、より表現力の高いアバタ通信を実現できる。
【0010】
(2)この発明に係るサーバ装置は、第1の端末装置および第2の端末装置と通信可能なサーバ装置であって、アバタデータを記録するアバタデータ記録手段と、属性データを記録した属性データ記録手段と、第1の端末装置から送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定するとともに、前記属性データに基づいて当該アバタ動作を修正するアバタ動作決定手段と、前記アバタ動作を示す情報を第2の端末装置に送信するための送信手段とを備えている。
【0011】
したがって、アバタの動作に属性を与えることができ、より表現力の高いアバタ通信を実現できる。
【0012】
(3)この発明に係るアバタ動作決定プログラムは、アバタデータおよび属性データに基づいてアバタ動作を決定する処理をコンピュータに行わせるためのプログラムであって、第1の端末装置から送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定する処理と、前記属性データに基づいて当該アバタ動作を修正する処理と、をコンピュータに実行させるためのアバタ動作決定プログラムである。
【0013】
したがって、アバタの動作に属性を与えることができ、より表現力の高いアバタ通信を実現できる。
【0014】
(4)この発明に係るアバタ通信システムは、サーバ装置には、複数の属性データ記録されており、サーバ装置は、第1の端末装置から属性決定データを受け取り、受け取った属性決定データに基づいて、何れの属性データを用いるかを選択することを特徴としている。
【0015】
したがって、通話者の選択によりアバタの属性を決定することができ、所望の性格等を有するアバタ動作を選択することができる。
【0016】
この発明において、「アバタデータ」とは、少なくともアバタの基本画像を含むデータをいい、3次元画像であると2次元画像であるとを問わない。実施形態では、図7に示すデータがこれに該当する。
【0017】
「プログラム」とは、CPUによって直接実行可能なプログラムだけでなく、ソース形式のプログラム、圧縮されたプログラム、暗号化されたプログラムやハードディスク等によってインストールして動作可能となるプログラムなどを含む概念である。
【発明を実施するための形態】
【0018】
1.第1の実施形態
(1)システムの全体構成
図1に、この発明の一実施形態によるアバタ通信システムの全体構成を示す。このシステムは、操作者の有する携帯電話装置2、8、およびこれら携帯電話装置2、8と通信回線4を介して接続されたサーバ装置6を備えている。携帯電話装置2、8は、いずれも、動画を撮像し、表示する機能を有している。
【0019】
アバタ通信を行う操作者は、携帯電話装置2からサーバ装置6に接続して予め用意されている立体アバタ画像を選択する。携帯電話装置8を有する相手方の操作者も同様にして、サーバ装置6に記録されている立体アバタ画像を選択する。
【0020】
携帯電話装置2において撮像された操作者の動画像および入力された音声は、通信回線4(電話回線網、インターネットなど)を介して、サーバ装置6に送信される。サーバ装置6は、携帯電話装置2の操作者が選択した立体アバタ画像を、相手方の携帯電話装置8に、通信回線4を介して送信する。この立体アバタ画像は、携帯電話装置8において表示される。
【0021】
サーバ装置6は、携帯電話装置2から送られてきた動画像および音声に基づいて、アバタ画像の動きを表すアバタ動作データを生成し、携帯電話装置8に送信する。また、携帯電話装置2からの音声も送信する。携帯電話装置8は、このアバタ動作データに基づいて、アバタ画像を動かしてアバタ動画像とするとともに、音声を出力する。
【0022】
上記のようにして、アバタを用いた通信を行うことができる。なお、携帯電話装置8から携帯電話装置2に対しても、同様に、アバタの動きおよび音声を送信することができる。
【0023】
(2)携帯電話装置の機能ブロック図
図2に、携帯電話装置2の機能ブロック図を示す。なお、携帯電話装置8も同様の構成である。音声取得手段10は、操作者の音声を電気信号に変換する。撮像手段12は、操作者の動画を撮像して電気信号に変換する。送信手段14は、これら音声および動画像を、通信回線4を介してサーバ装置6に送信するものである。
【0024】
受信手段22は、通信回線4を介して、サーバ装置6から相手方の音声およびアバタ動作データを受信する。アバタ動画像生成手段20は、受信したアバタ動作データに基づいて、アバタ画像を動かしてアバタの動画像を生成する。表示手段16は、これを表示する。また、音声出力手段18は、受信した音声を出力する。なお、この実施形態では、携帯電話装置2からサーバ装置6に対し、音声および動画像を送信するために、電話回線網およびインターネットを使用している。
【0025】
(3)サーバ装置の機能ブロック図
図3に、サーバ装置6の機能ブロック図を示す。受信手段30は、携帯電話装置2からの音声および動画像を受信する。音声認識手段32は、受信した音声について音声認識を行い、音素に対応する口唇形状を生成する。動画像認識手段34は、受信した動画像に基づいて、口唇形状を含む顔の表情を認識する。
【0026】
アバタ動作決定手段36は、音声認識手段32の出力と動画像認識手段34の出力とに基づいて、アバタの動作を示すアバタ動作データを生成する。アバタ動作決定手段36は、口唇形状決定手段38を含んでいる。口唇形状決定手段38は、音声認識手段32による口唇形状と、動画像認識手段34による口唇形状とを統合して口唇動作データ(アバタ動作データの一部)を決定する。送信手段40は、得られたアバタ動作データを携帯電話装置8に送信する。
【0027】
(4)携帯電話装置のハードウエア構成
図4に、携帯電話装置2のハードウエア構成を示す。なお、携帯電話装置8も同じ構成である。CPU50には、ディスプレイ52、スピーカ54、通信回路56、キー58、マイク60、カメラ62、メモリ64が接続されている。
【0028】
表示手段であるディスプレイ52は、画像を表示するためのものである。音声出力手段であるスピーカ54は、音声を出力するためのものである。送信手段および受信手段である通信回路56は、通信回路4を介して、サーバ装置6と通信するためのものである。キー58は、テキストデータを入力するためのものである。音声取得手段であるマイク60は、操作者などの音声を取得して音声信号に変換するものである。撮像手段であるカメラ62は、操作者などの動画像を取得して画像信号に変換するものである。メモリ64は、立体アバタ動画像を表示するためのプログラムを記録している。
【0029】
このプログラムは、アバタの表面を定義した面、当該面のテクスチャーおよび各面の動きのデータに基づいて、アバタ動画像を表示する。
【0030】
(5)サーバ装置のハードウエア構成
図5に、サーバ装置6のハードウエア構成を示す。CPU70には、ディスプレイ72、メモリ74、通信回路76、キーボード/マウス78、ハードディスク80、CD−ROMドライブ82が接続されている。ハードディスク80には、オペレーティングシステム90、アバタ通信プログラム94、アバタデータ96などが記録されている。アバタ通信プログラム94は、オペレーティングシステム90と協働して、機能を発揮するものである。また、アバタデータ96は、図7に示すように、複数種類の立体アバタ画像を備えている。各立体アバタ画像には、アバタIDが付されている。また、立体アバタ画像として、基本形態だけでなく、笑った形態、微笑んだ形態、怒った形態など、様々な形態が記録されている。
【0031】
基本形態の立体アバタ画像の例を図16に示す。この図に示すものでは、特徴点a〜wの3次元座標によって、画像が定義されている。なお、実際には、さらに多くの特徴点が設けられているが、図では省略している。各特徴点によって形成される面には、所定のテクスチャーが与えられている。たとえば、特徴点jを中心とし、特徴点iとkを通る楕円面は、黒目のテクスチャーが与えられている。また、特徴点a、a1、a4、a3によって形成される面は、肌のテクスチャーが与えられる。
【0032】
図7では、イメージとして示しているが、実際には、特徴点の3次元座標と、テクスチャーによって、立体アバタ画像のデータが記録されている。
【0033】
(6)アバタ通信処理
図6に、アバタ通信プログラム94のうちの、アバタ画像選択処理の部分のフローチャートを示す。
【0034】
まず、CPU70は、携帯電話装置2から、アバタ画面選択のための画面送信要求を受ける(ステップS1)。これに対し、CPU70は、ハードディスク80に記録されている複数のアバタデータ96のそれぞれにつき、基本形態を読み出して、携帯電話装置2に送信する(ステップS2)。すなわち、CPU70は、複数のアバタを提示して、ユーザにいずれかを選択させるための画面を送信する。この時、携帯電話装置2に表示される選択画面を、図8に示す。
【0035】
この画面により、ユーザがアバタ選択情報を携帯電話装置2に入力すると、CPU70は、この選択情報を受信する(ステップS3)。次に、CPU70は、ユーザによって選択されたアバタのアバタIDを、当該ユーザのユーザID(ここでは、ユーザの携帯電話装置2の電話番号)に対応付けて、ハードディスク80に記録する(ステップS4)。図9に、ハードディスク80に記録された、ユーザ・アバタ対応テーブルを示す。
【0036】
なお、上記のアバタ選択処理は、各ユーザについて一度だけ行えばよい。2度目からは、前回選択したアバタを使用するようにする。これにより、ユーザは、通信の都度、アバタを選択する煩わしさがない。なお、アバタを変更したい場合のみ、上記のアバタ選択処理を行うようにする。
【0037】
また、通信の都度、アバタを選択させるようにしてもよい。
【0038】
図10に、アバタ通信プログラム94のうち、通信処理の部分のフローチャートを示す。CPU70は、携帯電話装置2の電話番号を取得し、図9のテーブルの中から対応するアバタ画像を取得する。これを、相手方の携帯電話装置8に送信する(ステップS10)。同様にして、携帯電話装置2に対しても、携帯電話装置8の操作者のアバタ画像が送信される。以下、携帯電話装置2から携帯電話装置8への通信処理について説明するが、携帯電話装置8から携帯電話装置2への通信処理も同様である。
【0039】
CPU70は、ステップS11において、携帯電話装置2からの音声および動画像を受信する。次に、CPU70は、受信した動画像(連続した静止画像)につき画像認識を行う(ステップS12)。
【0040】
まず、CPU70は、受信した画像に基づいて、ユーザの頭の向き(図11におけるX軸、Y軸、Z軸に対する回転角度)を算出する。その処理のフローチャートを図12に示す。
【0041】
CPU70は、色彩の違いを利用して、毛髪部分と肌色部分を取り出す(ステップS21)。この毛髪部分と肌色部分の外形を、楕円によって近似する(ステップS22)。CPU70は、この楕円の傾きを算出し(図13参照)、Z軸まわりの回転角を得る(ステップS23)。
【0042】
次にY軸回転角を算出する。この実施形態では、頭全体(毛髪部分と肌色部分の全体)の重心座標Wfと、肌色部分のみの重心座標Wsとの差Sxに基づいて、Y軸回転角を算出している。図14に示すように、Y軸を中心とした回転が大きくなると、後ろにある髪の毛が画像として現れ、その結果、重心Wfと重心WsのX軸方向の座標差Sxも大きくなる。
【0043】
CPU70は、まず、重心座標Wfと、肌色部分のみの重心座標WsとのX軸方向の座標差Sxを算出する(ステップS24)。この実施形態では、顔の標準モデル(平均的な毛髪部分と肌色部分を有するモデル)について、予め、座標差SxとY軸回転角との対応を算出しておき、テーブルとして記録している。CPU70は、このテーブルに基づいて、座標差Sxに対応するY軸回転角を得る(ステップS25)。
【0044】
次に、X軸回転角を算出する。X軸回転角についても、予め、標準モデルについて、座標差Sy(Y軸方向への座標差)とY軸回転角との対応を算出しておき、テーブルとして記録している。CPU70は、重心座標Wfと重心座標WsとのY軸方向の座標差Syを算出する(ステップS26)。次に、テーブルを参照して、X軸回転角を得る(ステップS27)。
【0045】
この実施形態では、毛髪部分と肌色部分に基づいて、ユーザの頭の向きを算出している。このような手法は、呉海元他「色彩動画像からの頭部ジェスチャー認識システム」情報処理学会論文誌37巻6号(1996年6月)1234頁以下に示されている。
【0046】
なお、両目の位置に基づいて、顔の向きを算出するようにしてもよい。
【0047】
次に、CPU70は、上記のようにして算出したX回転角、Y回転角、Z回転角に基づいて、ユーザが正面を向いた画像(X、Y、Z軸への回転角度が0)を生成する(ステップS28)。なお、撮像した画像は平面画像であるから、CPU70は、標準モデルと同じような顔の表面形状を有する立体であると推定して、回転処理を行う。この回転処理により、図15に示すようなユーザの正面画像を得ることができる。
【0048】
続いて、CPU70は、図15の特徴点A〜W等の抽出を行い、その座標を取得する(ステップS29)。
【0049】
次に、CPU70は、抽出した特徴点に基づいて、アバタの動作を生成する(ステップS13)。ここでは、図7に記録されている当該アバタ画像(基本、笑う、微笑む、怒る・・)のうち、上記で抽出した特徴点A〜Wに最も合致するものを1つ選択する。図16に、アバタ画像の基本画像を示す。CPU70は、アバタ画像の基本画像やその他の表情についても、図15と同じようにして特徴点a〜wを算出する。なお、特徴点aは特徴点Aに対応し、特徴点bは特徴点Bに、・・・・それぞれ対応するものとする。そして、両特徴点の比較パラメータを比較して最もよく類似しているものを選択する。比較するパラメータとしては、たとえば、口の開き度合い(特徴点D、F(d、f)の距離と特徴点E、G(e、g)の距離の比)、右目の角度(特徴点H、L(h、l)を結ぶ直線の角度)、左目の角度(特徴点M、Q(m、q)を結ぶ直線の角度)、右目の開き度合い(特徴点H、L(h、l)の距離と特徴点I、K(i、k)の距離の比)、左目の開き度合い(特徴点M、Q(m、q)の距離と特徴点N、P(n、p)の距離の比)などを用いることができる。
【0050】
上記のようにして、ユーザの画像に対応したアバタ画像の表情を選択する。ユーザの画像は刻々変化するので、この変化にあわせて、アバタ画像も変化することになる。CPU70は、このようにして算出した画像認識によるアバタ画像を時刻とともにメモリ74に記録する。なお、メモリ74には、所定秒前までの画像認識によるアバタ画像が連続的に記録されている。
【0051】
次に、CPU70は、受信した音声の音声認識を行い、音素のテキストデータを得る(ステップS14)。次に、CPU70は、認識した音素に対応するアバタの口唇形状を生成する(ステップS15)。この実施形態では、各音素に対して、基本となるアバタ画像(図8に記録されたもの)の口唇形状(特徴点D〜G)が、どのように変化するかを示すテーブルをハードディスク80に記録している。
【0052】
図17に、音素/o/を例としたテーブルを示す。最上欄の「1」「2」「3」「4」は、時間経過(所定の時間間隔)を示す。第2欄は、アバタ画像の特徴点eと特徴点gとの距離の変化を、基本となる口唇形状との比として示している。第3欄はアバタ画像の特徴点dと特徴点fとの距離の変化を、基本となる口唇形状との比として示している。音素/o/を発音する場合、特徴点eと特徴点gとの距離が大きくなり、特徴点dと特徴点fとの距離が小さくなることが示されている。
【0053】
CPU70は、このテーブルに基づいて、認識した各音素に基づいて、対応する口唇形状を生成する。生成した口唇形状は、時刻とともにメモリ74に記録する。なお、メモリ74には、所定秒前までの音声認識による口唇形状が記録されている。ただし、口唇形状が記録されるのは、音素が認識できた期間だけであり、無音期間などにおいては生成されない。
【0054】
次に、CPU70は、画像認識による口唇形状と音声認識による口唇形状とを統合する(ステップS16)。図18に、メモリ74に記録された画像認識による口唇形状と、音声認識による口唇形状とを示す。時間経過は、t1からt10へと進行している。CPU70は、各時刻における口唇形状を、メモリ74に記録された画像認識による口唇形状と音声認識による口唇形状の時間的推移に基づいて決定する。たとえば、時刻t10における口唇形状の決定には、時刻t1〜t10の画像認識および音声認識の口唇形状が用いられる。
【0055】
この実施形態では、音声認識による口唇形状を基本とし、音声認識の口唇形状が存在しない部分を、画像認識による口唇形状にて補完するようにしている。具体的には、所定時刻分の画像認識による口唇形状と音声認識による口唇形状を入力とし、適切な口唇形状を教師信号として与えることによって学習させたニューラルネットワークによって決定する。
【0056】
たとえば、音声認識による口唇形状が存在する部分はこれをそのまま用い、音声認識による口唇形状が存在しない部分については、画像認識による口唇形状に自然と連続するように口唇形状が変化するようにニューラルネットワークを形成するとよい。
【0057】
図18に示されているように、時刻t5では、画像認識処理の誤りにより、発話があるにもかかわらず口が閉じてしまっている。この実施形態では、音声認識による口唇形状を主体としているので、決定された口唇形状では、開いた口の形となっており、不自然さが解消されている。また、時刻t7の音声認識による口唇形状と、時刻t8の画像認識による口唇形状とは大きく異なっており、これをそのまま接続すると、極めて不自然な口の動きになってしまうが、決定した口唇形状では、緩やかな変化となっている。
【0058】
次に、CPU70は、上記のようにして決定した口唇形状を含むアバタ画像を、携帯電話装置8に送信する。既に、ステップS10において、面の情報、テクスチャーの情報は送信しているので、ここでは、基本となるアバタ画像との差だけを送信する。つまり、アバタ動作データとして送信する(ステップS17)。
【0059】
たとえば、顔の表情が全く変わらず、顔の向きだけが変わった場合には、顔の上下左右方向の向き(上記のX軸回転角、Y軸回転角、Z軸回転角)だけを送信するだけで、携帯電話装置8においてアバタを動作させることができる。また、テクスチャーは基本的に変化しないので、送信する必要はない。面情報については、その形状が変化した場合には、面を構成する点の座標を送信する。面自体の形状に変化はなく、面全体が移動した場合には、その移動量と方向のみを送信すればよい。
【0060】
さらに、CPU70は、携帯電話装置2から受信した音声を、携帯電話装置8に送信する(ステップS18)。なお、アバタ動作データだけでなく音声データについても、通常の電話回線で送信するのではなく、インターネット回線を介して送信することが好ましい。両者の同期をとるために、時刻データを付けたデジタルデータとして送信するためである。
【0061】
上記の一連の処理が終了すると、ステップS11以下の処理を繰り返す。これにより、立体アバタ動画像を用いた通信を行うことができる。
【0062】
なお、上記では、ニューラルネットワークによって口唇形状を統合しているが、音声認識による口唇形状と、画像認識による口唇形状とを、所定の比率によって合成するようにしてもよい。この場合においても、上記のように、音声認識による口唇形状を基本とし、これを画像認識による口唇形状によって補正することが好ましい。
【0063】
(7)その他の形態
7-1 アバタ画像の動作決定
上記実施形態では、特徴点A〜Wの比較パラメータが最も類似するアバタ画像の表情を選択するようにしている。しかし、次のようにして、アバタ画像の動作を決定するようにしてもよい。
【0064】
予め、ユーザの正面の画像(基本画像)に基づいて、その特徴点を取得しておく。ユーザの画像を取得し、その特徴点を算出する。この特徴点と、基本画像における特徴点との差を算出する。アバタ画像の基本画像の特徴点を、ここで算出した差に基づいて、移動させる。このようにすれば、アバタ画像の基本画像を用意するだけでよく、全ての表情についてのアバタ画像を用意する必要がない。
【0065】
7-2 アバタ画像の生成
また、上記各実施形態では、予め用意したアバタを、ユーザが選択するようにしている。しかし、携帯電話端末装置2から送信されてきたユーザの画像に基づいて、当該ユーザの画像を変形してアバタを生成するようにしてもよい。この場合には、通信に先立って、アバタの生成を行う必要がある。
【0066】
図19に、アバタ生成プログラムのフローチャートを示す。このプログラムは、サーバ装置のハードディスク80に記録される。
【0067】
CPU70は、ステップS31において、携帯電話装置2からの操作者の顔の画像を受信し、メモリ74に記録する(ステップS32)。なお、この実施形態では、操作者が正面の画像を送信するようにしている。次に、CPU70は、当該画像について、図20に示すように、特徴点A〜Wの認識を行って、その座標を記録する(ステップS33)。図において、直線αは、特徴点Jと特徴点Oとを結ぶ直線βにおける、点Jと点δの距離と、点Oと点δの距離とが等しくなるような点δと、あごの輪郭の中心点Bとを結ぶ直線である。直線γは、特徴点Dと特徴点Fとを結ぶ直線である。特徴点Aと特徴点Cは、この直線γとあごの輪郭との交わる点である。なお、説明のために特徴点を少なくしているが、実際には、より多くの特徴点を設けることが好ましい。
【0068】
また、この実施形態において、各特徴点の認識は3次元座標において行う。図20では平面的に表現しているが、各特徴点のデータは、図21に示すように、X,Y,Zの3次元座標のデータとして記録される。なお、平面画像に基づいて、3次元座標を得る手法は、上記実施形態と同様である。
【0069】
上記の結果、図21に示すように、操作者(ユーザ)のIDに対応付けて、特徴点A〜Wの座標がハードディスク80に記録される。次に、CPU70は、これら特徴点A〜Wに基づいて、アバタ画像を生成する(ステップS34)。たとえば、図22に示すようなアバタ画像が生成される。
【0070】
以下、アバタ画像生成の処理を説明する。まず、CPU70は、図20の特徴点A〜Wに対応する特徴点a〜wを決定する。この実施形態では、特徴点a〜gは、特徴点A〜Gと同じ座標位置に配置している。また、特徴点h〜wは、特徴点H〜Wに対して所定の関係となるような位置に配置している。つまり、目が大きくなるように、特徴点の座標位置を変更している。さらに、CPU70は、配置した特徴点a〜wに基づいて、これら特徴点を補完するように特徴点a1〜a4、b1、c1〜c4などを配置する。たとえば、特徴点b1は、特徴点gと特徴点bとの中間位置の座標に配置される。なお、図22においては、補完される特徴点の一部だけを示している。
【0071】
次に、CPU70は、各特徴点によって形成される面に、所定のテクスチャーを与える。いずれの面に、どのようなテクスチャーを与えるかは、予め定められている。たとえば、特徴点jを中心とし、特徴点iとkを通る楕円面は、黒目のテクスチャーが与えられる。たとえば、特徴点a、a1、a4、a3によって形成される面は、肌のテクスチャーが与えられる。
【0072】
以上のようにして生成されたアバタ画像のデータは、図21に示すように、各特徴点a〜wの座標、各面のテクスチャーとしてハードディスク80に、アバタデータ96として記録される。なお、この実施形態では、操作者の有する携帯電話装置2の電話番号を、ユーザIDとして記録するようにしている。
【0073】
このように、ユーザの画像に基づいてアバタを生成した場合には、ユーザ画像の特徴点A〜Wの動きに対応付けて、アバタの特徴点a〜wを動かすようにしてもよい。
【0074】
7-3 口唇形状の決定
なお、上記実施形態では、音声認識に基づいてテキストを得て、口唇形状を生成しているが、音声に変えてキー58から入力されたテキストに基づいて口唇形状を生成してもよい。この場合、画像認識に基づく口唇形状の決定は行わず、テキストに基づく口唇形状だけを用いてアバタを動作させることができる。また、画像認識のための画像を別途撮像し、この画像認識に基づく口唇形状と、テキストに基づく口唇形状を統合して口唇形状を決定し、アバタを動作させるようにしてもよい。
【0075】
2.第2の実施形態
上記実施形態では、図17に示すように、各音素に対しての口唇の形状は一定である。しかし、操作者の選択した性格に応じて、同じ音素であっても口唇形状を変えるようにしてもよい。これにより、「豪放」な印象を与える口唇の動き、「しとやか」な印象を与える口唇の動きなどを表現することができる。さらに、性格に応じて、アバタの表情を変化させるようにしてもよい。
【0076】
以下、このように操作者の選択した性格に基づいてアバタの表情を変えることのできる実施形態を示す。
【0077】
この実施形態におけるアバタ通信システムの機能ブロック図を図23に示す。受信手段30、動画像認識手段34、送信手段40は、第1の実施形態と同じである。
【0078】
この実施形態における音声認識手段32は、音素決定手段32a、音声口唇形状選択手段32b、性格対応テーブル32cを備えている。口唇形状テーブル32cには、各音素に対応する口唇形状のセットが、基本となる口唇形状に基づいて予め算出されて記録されている。さらに、この口唇形状セットが、用意された性格ごとに算出され記録されている。
【0079】
音素決定手段32aは、与えられた音声に基づいて音素を決定する。音声口唇形状選択手段32bは、音素に基づいて、操作者が通信開始時などに選択した性格に対応する口唇形状を口唇形状テーブル32cから読み出し、アバタ動作決定手段36に与える。
【0080】
アバタ動作決定手段36は、口唇形状決定手段38、性格付与手段42、表情パターンテーブル44を備えている。口唇形状決定手段38は、第1の実施形態と同じものである。性格付与手段42は、操作者が選択した性格に基づいて、表情パターンテーブル44を参照し、アバタの表情を修正する。上記のようにして、操作者が希望する性格をアバタに与えることができる。
【0081】
サーバ装置6のハードウエア構成は、第1の実施形態と同じである。この実施形態では、各音素の一連の口唇形状を予め生成し、口唇形状テーブル32cとしてハードディスク80に記録するようにしている。これにより、処理を迅速にすることができる。さらに、図24に示すように、それぞれの音素について、各性格「豪放」「しとやか」「おおげさ」・・・に対応する口唇形状を予め生成して、口唇形状テーブル32cに記録している。図では、音素/o/についてのみ口唇形状を示しているが、他の音素についても同様に記録されている。なお、この口唇形状テーブル32cは、各アバタごとに生成されて記録されている。
【0082】
図25および図26に、この実施形態によるアバタ通信処理プログラムのフローチャートを示す。CPU70は、通信の開始とともに、携帯電話装置2に対して、アバタの性格を何れにするかを質問する画面を、インターネットを介して送信する。携帯電話装置2によって選択された性格(属性決定データ)が返信されてくると、これをメモリ74に記録する(ステップS8)。なお、この性格選択は、通信のたびに毎回問い合わせをするのではなく、ディフォルトとして、操作者(ユーザ)ごとにハードディスク80に記録するようにしてもよい。
【0083】
次に、CPU70は、操作者の選択した性格(属性決定データ)に基づいて、図24に示す口唇形状テーブルのいずれかを選択する(ステップS9)。ステップS10でアバタ画像を相手方の携帯電話装置8に送信し、その後、画像認識に基づいて、アバタの動作を生成する点は、第1の実施形態と同じである(ステップS10〜S13)。
【0084】
ステップS14において、CPU70は、受信した音声に基づいて音素を認識する。なお、この実施形態では、発話された文が疑問文であるか否かを判断する。また、どの音素にアクセントがあるのかも判断する。これらの処理は、酒向慎司他「ピクセルベースアプローチによるHMMに基づいた唇動画像の生成」信学技報PRMU99-157(1999年)に記載された手法によって実現することができる。次に、この音素に対応する口唇動作を生成する(ステップS15)。この際、ステップS9において選択した口唇形状テーブル(属性データ)を用いる。これにより、操作者の選択した性格に対応した口唇形状を得ることができる。
【0085】
次に、実施形態1と同じようにして、画像認識に基づく口唇の動作と、音声認識に基づく口唇の動作とを統合する(ステップS16)。次に、操作者の選択した性格に基づいて、アバタ動画像の表情を修正する(ステップS165)。
【0086】
この実施形態では、図27に示すような表情パターンテーブル44(属性データ)を、ハードディスク80に予め記録している。この表情パターンテーブル44は、図28に示すように、顔の外形を正規化して示したものである。各位置は、目や口などの重心座標として示されている。口の位置A、目の位置A・・・は、基本的な位置を示している。口の位置B・・・は、音素/a/や/o/につき、当該部分にアクセントがある場合に用いる位置である。口の位置C・・・は、疑問文の語尾の場合に用いる位置である。性格「豪放」「しとやか」・・・により、それぞれ異なった位置が定義されている。
【0087】
CPU70は、このテーブルに基づいて、口、目などの位置を修正する。なお、図27において示されている位置は、2次元座標上での位置である。よって、3次元位置に換算して用いる必要がある。また、正規化された座標にて示されているので、実際のアバタ上での位置を計算する必要がある。このようにして、性格に応じてアバタの表情が修正される。
【0088】
続いて、CPU70は、アバタの動作指令を生成して送信し(ステップS17)、音声を送信する(ステップS18)。
【0089】
なお、上記実施形態では、画像認識に基づく口唇の動作と音声認識に基づく口唇の動作とを統合した後に、表情パターンテーブル44に基づく表情の修正を行っている。しかし、口唇形状については、統合を行う前に修正をしておいてもよい。
【0090】
また、表情パターンテーブル44において、各性格、各状況(基本、アクセントがある場合、疑問文などの場合)ごとに目や口などについて異なる形状を記録しておいて、用いるようにしてもよい。
【0091】
なお、ステップS16において行った統合を行わずに、画像または音声に基づく口唇動作を用いてアバタの動作を決定し、性格に基づく表情の修正(ステップS165)を行うようにしてもよい。
【0092】
上記実施形態では、属性として性格を用いているが、年齢、性別などの属性を用いるようにしてもよい。
【0093】
上記各実施形態では、3次元アバタを用いているが、2次元アバタを用いるようにしてもよい。
【0094】
上記各実施形態では、アバタ動作決定のために、音声認識の結果を用いているが、画像のみに基づいてアバタ動作を決定し、属性データによって修正するようにしてもよい。
【図面の簡単な説明】
【0095】
【図1】この発明の一実施形態によるアバタ通信システムの構成を示す図である。
【図2】携帯電話装置の機能ブロック図である。
【図3】サーバ装置の機能ブロック図である。
【図4】携帯電話装置のハードウエア構成図である。
【図5】サーバ装置のハードウエア構成図である。
【図6】アバタ通信処理プログラムのフローチャートである。
【図7】アバタデータの一例を示す図である。
【図8】アバタ選択画面を示す図である。
【図9】ユーザとアバタとの対応を記録したテーブルである。
【図10】アバタ通信処理プログラムのフローチャートである。
【図11】顔の向きをX軸、Y軸、Z軸の回転によって決定することを示すための図である。
【図12】画像認識の部分の詳細を示すフローチャートである。
【図13】顔のZ軸まわりへの傾きを示す図である。
【図14】X軸、Y軸まわりへの回転を算出するために用いる重心WfとWsとを示す図である。
【図15】ユーザの正面画像と特徴点を示す図である。
【図16】アバタ画像とその特徴点を示す図である。
【図17】音素に対する口唇形状を示すテーブルである。
【図18】口唇形状の統合を説明するための図である。
【図19】アバタ生成プログラムのフローチャートである。
【図20】画像認識によって得られる特徴点を示す図である。
【図21】アバタ画像テーブルを示す図である。
【図22】アバタ画像を示す図である。
【図23】第2の実施形態によるサーバ装置の機能ブロック図を示す図である。
【図24】口唇形状テーブルを示す図である。
【図25】アバタ通信処理プログラムのフローチャートである。
【図26】アバタ通信処理プログラムのフローチャートである。
【図27】表情パターンテーブルを示す図である。
【図28】表情の正規化を示す図である。
【符号の説明】
【0096】
30・・・受信手段
32・・・音声認識手段
34・・・動画像認識手段
36・・・アバタ動作決定手段
38・・・口唇形状決定手段
40・・・送信手段

【特許請求の範囲】
【請求項1】
第1の端末装置、第2の端末装置、サーバ装置を備えたアバタ通信システムであって、
前記第1の端末装置は、
第1の操作者の画像を撮像する撮像手段と、
撮像手段によって取得した第1の操作者の画像を、サーバ装置に送信するための送信手段と、
を備えており、
前記サーバ装置は、
第1の端末装置から送信されてきた画像を受信する受信手段と、
アバタデータを記録するアバタデータ記録手段と、
属性データを記録した属性データ記録手段と、
送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定するとともに、前記属性データに基づいて当該アバタ動作を修正するアバタ動作決定手段と、
前記アバタ動作を示す情報を第2の端末装置に送信するための送信手段と、
を備えており、
前記第2の端末装置は、
サーバ装置から送信されてきたアバタ動作を示す情報を受信する受信手段と、
受信したアバタ動作を示す情報に基づいて、アバタ画像を変化させてアバタ動画像を生成するアバタ動画像生成手段と、
生成されたアバタ動画像を、第2の操作者に提示するための表示手段と、
を備えていることを特徴とするアバタ通信システム。
【請求項2】
第1の端末装置および第2の端末装置と通信可能なサーバ装置であって、
アバタデータを記録するアバタデータ記録手段と、
属性データを記録した属性データ記録手段と、
第1の端末装置から送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定するとともに、前記属性データに基づいて当該アバタ動作を修正するアバタ動作決定手段と、
前記アバタ動作を示す情報を第2の端末装置に送信するための送信手段と、
を備えたサーバ装置。
【請求項3】
アバタデータおよび属性データに基づいてアバタ動作を決定する処理をコンピュータに行わせるためのプログラムであって、
第1の端末装置から送信されてきた画像に基づいて、前記アバタデータによるアバタの動作を決定する処理と、
前記属性データに基づいて当該アバタ動作を修正する処理と、
をコンピュータに実行させるためのアバタ動作決定プログラム。
【請求項4】
請求項1〜3のいずれかのシステム、装置またはプログラムにおいて、
サーバ装置には、複数の属性データ記録されており、
サーバ装置は、第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

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate


【公開番号】特開2006−65684(P2006−65684A)
【公開日】平成18年3月9日(2006.3.9)
【国際特許分類】
【出願番号】特願2004−249071(P2004−249071)
【出願日】平成16年8月27日(2004.8.27)
【出願人】(596100812)京セラコミュニケーションシステム株式会社 (38)
【出願人】(504327063)ザクリタエ・アクチアニェルナエ・オプシチェストヴァ・シーストーム (2)
【Fターム(参考)】