(57)【要約】      （修正有）【課題】実時間で頭部の３次元的な動きを計測し、ＣＧキャラクタの頭部の動きおよび表情を制御する。【解決手段】入力される映像から両目および口を含む各部位の候補領域を抽出し各部位の位置を検出する部位検出追跡手段と、検出した両目、口の検出位置に基づいて頭部の３次元姿勢および両目および口の開閉状態を計測する頭部３次元姿勢・表情を計測してＣＧキャラクタの動きを制御するリアルタイム表情追跡装置であって、前記部位検出追跡手段は、前記部位領域候補抽出手段によって検出された両目、口の候補領域から両目および口の領域を夫々特定する部位検出手段と、前記部位検出手段によって、両目および口の領域が特定できない場合に、現フレームで特定された部位領域の位置と、この特定された部位領域の前フレームでの位置とを用いて移動ベクトルを求め、この移動ベクトルを用いて前記特定できなかった部位の位置を特定する部位追跡手段とを備える。【選択図】        図１
2006053944.tif 000002
【特許請求の範囲】
【請求項１】
順次所定のフレームレートで入力される映像をキャプチャする映像入力手段と、
前記キャプチャした画像から頭部画像を抽出する頭部領域検出手段と、
前記抽出した頭部領域から両目および口を含む各部位の候補領域を抽出する部位領域候補抽出手段と、
抽出した候補領域の中から各部位の位置を検出する部位検出追跡手段と、
前記検出した両目、口の検出位置に基づいて頭部の３次元姿勢を計測するとともに、両目および口の開閉状態を計測する頭部３次元姿勢・表情計測手段とを備え、前記計測した頭部の３次元姿勢および両目および口の開閉状態に基づいてＣＧキャラクタの動きを制御するリアルタイム表情追跡装置であって、
前記部位検出追跡手段は、
前記部位領域候補抽出手段によって検出された両目、口の候補領域から両目および口の領域を夫々特定する部位検出手段と、
前記部位検出手段によって、両目および口の領域が特定できない場合に、現フレームで特定された部位領域の位置と、この特定された部位領域の前フレームでの位置とを用いて移動ベクトルを求め、この移動ベクトルを用いて前記特定できなかった部位の位置を特定する部位追跡手段と、
を備えることを特徴とするリアルタイム表情追跡装置。
【請求項２】
前記部位検出手段は、前フレームについての部位領域の中心座標を中心に一定の大きさの矩形領域を設定し、その矩形領域中に存在する現フレーム候補領域を求め、求めた候補領域夫々について、判別式Ｅ＝｜ＳＰ−ＳＣ｜＋ＯＰ＋Ｄを用いて評価値Ｅを夫々取得し、
ＳＰ：前フレームおける部位領域の画素数、
ＳＣ：現フレームにおける候補領域の画素数、
ＯＰ：現フレームにおける候補領域のみを非肌色に対応する論理値レベルとした部位領域マスク画像と、前フレームにおける部位領域のみを非肌色に対応する論理値レベルとした部位領域マスク画像との排他的論理和を求めたときに、画素値が非肌色に対応する論理値レベルとなる画素数、
Ｄ：前フレームにおける部位領域の中心と候補領域の中心との距離、
評価値Ｅが最も小さな候補領域を各部位領域として特定することを特徴とする請求項１に記載のリアルタイム表情追跡装置。
【請求項３】
順次所定のフレームレートで入力される映像をキャプチャする映像入力手段と、
前記キャプチャした画像から頭部画像を抽出する頭部領域検出手段と、
前記抽出した頭部領域から両目および口を含む各部位の候補領域を抽出する部位領域候補抽出手段と、
抽出した候補領域の中から各部位の位置を検出する部位検出追跡手段と、
前記検出した両目、口の検出位置に基づいて頭部の３次元姿勢を計測するとともに、両目および口の開閉状態を計測する頭部３次元姿勢・表情計測手段とを備え、前記計測した頭部の３次元姿勢および両目および口の開閉状態に基づいてＣＧキャラクタの動きを制御するリアルタイム表情追跡装置であって、
前記部位領域候補抽出手段は、
前記頭部領域検出手段によって抽出された頭部領域の輝度を平均化・正規化する頭部領域輝度平均化手段と、
この輝度平均化・正規化後の画像を用いて頭部領域中の両目および口の候補領域を抽出する画素選別手段と、
を備えることを特徴とするリアルタイム表情追跡装置。
【請求項４】
前記頭部領域輝度平均化手段は、頭部領域を複数の小領域に分割し、各小領域毎にヒストグラム平均化処理を行うことを特徴とする請求項３に記載のリアルタイム表情追跡装置。
【請求項５】
前記ヒストグラム平均化処理では、所定の閾値を越えた頻度をもつ画素値の頻度を他の画素値に分散させる処理を加えることを特徴とする請求項４に記載のリアルタイム表情追跡装置。
【請求項６】
目または口の初期状態を記憶する初期位置設定手段と、
撮影された頭部の姿勢情報に基づいて前記頭部が正面を向いた場合における目または口の画像を推定し、前記推定された目または口の画像と、前記初期位置設定手段に記憶された目または口の初期状態とを比較して前記目または口の開閉状態を求める開閉状態計測手段とを備えた事を特徴とする表情追跡装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本人の顔を送信する代わりにＣＧキャラクタの映像を相手に送信することによって人物映像を互いに通信するテレビ電話など通信システムに適用され、特にカメラによって撮像された顔の映像から頭部の３次元的な姿勢情報と顔の表情を計測し、この計測結果に基づいてＣＧキャラクタの動きを制御する代理応答によるリアルタイム表情追跡装置に関するものである。
【背景技術】
【０００２】
例えば、図３０は、特許文献１に示された従来の仮想変身装置（第１の従来技術）を示すものであり、この仮想変身装置は、顔画像を入力するビデオカメラと、ビデオカメラを回転させる電動雲台と、ビデオカメラから入力された顔画像から顔の軸の回転、あるいは顔の軸周りの回転と視線方向を検出し、両目および口の形状変化を検出する顔画像認識装置と、この計測結果に基づいてＣＧ（コンピュータグラフィックス）で構築された仮想空間のキャラクタを制御する仮想環境合成装置とを備えている。
【０００３】
この第１の従来技術では、ビデオカメラから入力された顔画像を、予め設定したＲＧＢ空間上に構築された肌色モデルに従って肌色を１、肌色以外を０とする２値化処理を行う。次に、２値化した顔領域の重心を求め、重心が画像の中心になるように電動雲台装置を制御し、カメラのアングルを修正する。次に、重心位置に基づき顔領域内に存在する穴を両目および口として検出する。次に、予め設定したテンプレートを用いたテンプレートマッチングにより目領域を追跡し、黒目の位置から視線方向を求める。また、両目を結んだ直線と画像の水平軸との角度を計測し、さらに、両目間の距離から、顔の軸周りの回転を検出する。そして、両目および口の周囲画像を離散コサイン変換したときの各周波数帯域での電力変化を捉えることで、両目および口の形状変化を計測する。以上の計測結果に基づいてＣＧで構築された仮想空間のキャラクタの頭部および表情を制御する。
【０００４】
また、特許文献２の表情検出装置（第２の従来技術）では、連続する各フレームの画像において、選択した複数の特徴点を追跡し、各フレーム毎に前記複数の特徴点を頂点とするドロネー網を構成し、このドロネー網を用いて表情筋モデルを特徴点の移動に基づき変位させることにより、表情筋モデルの変化を求めるようにしている。
【０００５】
また、特許文献３（第３の従来技術）においては、大きさが固定のウィンドウマスクを画像全体に走査し、マスク内の輝度分散を正規化することにより、照明条件が変化しても安定して対象物の特徴量を抽出可能とした対象物検出装置に関する発明が開示されている。
【０００６】
【特許文献１】特開２０００−３３１１９０号公報
【特許文献２】特開２０００−２５９８３１号公報
【特許文献３】特開平１１−３０６３４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
第１の従来技術では、カメラで撮影した顔画像を肌色モデルに基づいて２値化し、顔領域内の穴を見つけ、顔領域の重心位置からそれらを目および口に対応させている。しかしながら、本来、顔の凹凸から生じる影やハイライトの影響があるので、第１の従来技術では、照明条件を慎重に設定しなければ目および口のみを穴として検出するのは非常に困難である。また、この第１の従来技術は、頭部の３軸（Ｘ軸、Ｙ軸、Ｚ軸）周りの回転を同時に計測することができず、さらに、顔の軸周りの回転を、両目間の距離により求めているため、例えば顔がカメラから遠ざかるあるいは近づくと、必然的に両目間の距離が変化することから、実際には回転させていないのにも関わらず、回転しているとみなされるなど問題があった。
【０００８】
また、第２の従来技術では、３次元姿勢を計測するために顔画像中の多数の特徴点を追跡する必要があるため、計算能力の低いハードウェアではリアルタイム処理が困難である問題があった。
【０００９】
また、第３の従来技術では、大きさが固定されたマスク領域を用いることから、個人差や撮影距離によって顔領域の大きさが変化することへの対応処理が困難である。
【００１０】
この発明は上記に鑑みてなされたもので、計算能力が低いハードウェアでも実時間で頭部の３次元的な動きを計測し、かつ両目および口の開閉状態を計測し、その結果を用いてＣＧキャラクタの頭部の動きおよび表情をリアルタイム制御するリアルタイム表情追跡装置を得ることを目的としている。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明は、順次所定のフレームレートで入力される映像をキャプチャする映像入力手段と、前記キャプチャした画像から頭部画像を抽出する頭部領域検出手段と、前記抽出した頭部領域から両目および口を含む各部位の候補領域を抽出する部位領域候補抽出手段と、抽出した候補領域の中から各部位の位置を検出する部位検出追跡手段と、前記検出した両目、口の検出位置に基づいて頭部の３次元姿勢を計測するとともに、両目および口の開閉状態を計測する頭部３次元姿勢・表情計測手段とを備え、前記計測した頭部の３次元姿勢および両目および口の開閉状態に基づいてＣＧキャラクタの動きを制御するリアルタイム表情追跡装置であって、前記部位検出追跡手段は、前記部位領域候補抽出手段によって検出された両目、口の候補領域から両目および口の領域を夫々特定する部位検出手段と、前記部位検出手段によって、両目および口の領域が特定できない場合に、現フレームで特定された部位領域の位置と、この特定された部位領域の前フレームでの位置とを用いて移動ベクトルを求め、この移動ベクトルを用いて前記特定できなかった部位の位置を特定する部位追跡手段とを備えることを特徴とする。
【発明の効果】
【００１２】
この発明によれば、部位検出手段によって両目および口の領域が特定できない場合には、現フレームで特定された部位領域の位置と、この特定された部位領域の前フレームでの位置とを用いて移動ベクトルを求め、この移動ベクトルを用いて特定できなかった部位の位置を特定しているので、部位を１つ検出できれば、例え他の部位を検出漏れしても、この検出漏れした部位を検出することができ、これにより頑強な部位追跡が行える。さらに、隠れなどにより映像中に対象となる部位が現れない場合でも暫定的な部位領域を設定するようにすれば、隠れた部位が出現したときにその部位を即座に追跡可能となり、頭部の滑らかな動きを再現可能となるという効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に添付図面を参照して、この発明にかかるリアルタイム表情追跡装置の好適な実施の形態を詳細に説明する。このリアルタイム表情追跡装置は、本人の顔を送信する代わりにＣＧキャラクタの映像を相手に送信することによって人物映像を互いに通信するテレビ電話など通信システムに適用される。
【００１４】
以下、本発明の実施の形態を図１〜図２０を用いて説明する。図１は、本実施の形態のリアルタイム表情追跡装置の概念的構成を示すものである。
【００１５】
この図１に示すリアルタイム表情追跡装置は、例えばパーソナルコンピュータ、ワークステーションに実行させるプログラムの機能構成を示すものである。この図１に示すリアルタイム表情追跡装置は、ビデオカメラ８０などの映像取込手段から入力された映像を取り込むための映像入力手段１と、映像入力手段１を介して入力された人物映像から頭部領域を検出する頭部領域検出手段２と、頭部領域検出手段２で抽出された頭部領域から両目および口となる候補領域を抽出する部位領域候補抽出手段３と、部位領域候補抽出手段３で抽出した候補領域から両目、口領域を検出し、毎時変化する位置を追跡し、さらに各部位の開閉状態を計測する部位検出追跡手段４と、部位検出追跡手段４で検出した両目および口位置から頭部の３次元姿勢および表情を計測する頭部３次元姿勢・表情計測手段５とを備えている。
【００１６】
さらに、頭部領域検出手段２は、撮影される環境下（照明環境下など）で人物の肌色をサンプリングする肌色サンプリング手段６と、肌色サンプリング手段６でサンプリングした肌色情報に基づいて肌色抽出パラメータを調整する肌色抽出パラメータ調整手段７と、肌色抽出パラメータ調整手段７で調整された肌色抽出パラメータに基づいて入力映像から肌色画素を抽出し、抽出した画素を塊（領域）ごとに分類する肌色領域抽出手段８と、抽出した肌色領域の中から頭部領域を選択し頭部領域中の穴、裂け目などの小領域などを全て埋める（肌色に置換する）ことにより人物の頭部に関わる全ての画素を領域として抽出する頭部領域抽出手段９とを備えている。
【００１７】
部位領域候補抽出手段３は、頭部領域の輝度値を平均化する頭部領域輝度平均化手段１０と、両目および口の候補領域を抽出する画素選別手段１１とを備えている。
【００１８】
部位検出追跡手段４は、部位領域候補抽出手段３で抽出された両目および口の候補領域からそれぞれに対応する領域を特定する部位検出手段１２と、部位検出手段１２で検出した両目および口の初期位置を記憶する初期位置設定手段１３と、前フレームまでに記憶した各部位の位置から現フレームにおける位置を検出する部位追跡手段１４とを備えている。
【００１９】
頭部３次元姿勢・表情計測手段５は、初期位置設定手段１３で設定された各部位の初期位置に基づき頭部３次元姿勢を求めるための基準となるアフィン基底を設定するアフィン基底設定手段１５と、頭部の水平軸および垂直軸周りの暫定的な回転量を求める頭部回転量推定手段１６と、部位検出手段１２で検出した各部位の位置からアフィン基底設定手段１５で設定した仮想３次元空間上の点に対応する映像中の２次元の点から頭部の３次元姿勢を計測する姿勢計測手段１７と、各部位（両目、口）の開閉状態を計測することで表情を追跡する開閉状態計測手段１８とを備えている。
【００２０】
キャラクタ制御装置９０は、頭部３次元姿勢・表情計測手段５から入力された頭部の３次元姿勢および各部位（両目、口）の開閉状態を用いて三次元のＣＧキャラクタを制御することで、ビデオカメラ８０で撮像した利用者の動き、表情に追従させてＣＧキャラクタの動き、表情をリアルタイムに変化させる。
【００２１】
図２は、図１のリアルタイム表情追跡装置のキャリブレーションフェーズの動作の概要を説明するためのフローチャートである。図３は、図１のリアルタイム表情追跡装置のトラッキングフェーズの動作の概要を説明するためのフローチャートである。これら図２および図３を用いてリアルタイム表情追跡装置の動作の概略を説明する。
【００２２】
リアルタイム表情追跡装置で行われる動作手順には、頭部の動きを追跡するための情報として両目および口の位置および無表情時の状態等を取得するキャリブレーションフェーズと、実際に頭部の動きおよび両目および口を追跡し、頭部姿勢と両目および口の開閉状態つまり表情を計測するトラッキングフェーズがある。
【００２３】
キャリブレーションフェーズでは、まず、映像入力手段１によってビデオカメラ８０からの映像をキャプチャする（ステップＳ１００）。なお、人物の映像をビデオカメラ８０で撮像する際に、ユーザに対して「カメラに対して正面を向き、両目を開け、口を閉じる」ように指示することで、無表情時の人物映像を得る。つぎに、頭部領域検出手段２において、撮影環境下におけるユーザの肌色をサンプリングし（ステップＳ１１０）、このサンプリングデータを用いて予め設定した肌色抽出パラメータの調整を行う（ステップＳ１２０）。そして、調整した肌色抽出パラメータを用いて実際に肌色領域を抽出し（ステップＳ１３０）、抽出した領域の中から頭部領域を検出する（ステップＳ１４０）。次に、部位領域候補抽出手段３において、抽出した頭部領域から両目、口の候補領域を抽出し（ステップＳ１５０）、部位検出追跡手段４において両目領域および口領域をそれぞれ検出し（ステップＳ１６０）、検出した両目および口領域から各部位の位置、大きさ、テンプレートの初期値を記憶する（ステップＳ１７０）。最後に、頭部３次元姿勢・表情計測手段５において、求めた両目および口の位置に基づき、トラッキングフェーズにおいて頭部の３次元的姿勢情報を求めるためのアフィン基底（３次元空間上の仮想点）を設定する（ステップＳ１８０）。
【００２４】
トラッキングフェーズでは、映像入力手段１によってビデオカメラ８０からの映像をキャプチャする（ステップＳ２００）。頭部領域検出手段２においては、キャリブレーションフェーズで設定した肌色抽出パラメータを用いてキャプチャした映像中から肌色を抽出し（ステップＳ２１０）、抽出した領域から頭部領域を検出する（ステップＳ２２０）。次に、部位領域候補抽出手段３において、両目および口の候補領域を抽出する（ステップＳ２３０）。つぎに、部位検出追跡手段４は、前フレームで検出した両目および口位置に基づき、部位領域候補抽出手段３で抽出した候補領域の中から現フレームにおける両目および口領域を検出する（ステップＳ２４０）。次に、頭部３次元姿勢・表情計測手段５において、部位検出追跡手段４で検出した両目および口位置（２次元画像点）と予め設定した３次元空間上の仮想点から頭部の３次元的姿勢情報を計測し（ステップＳ２５０）、その計測情報に基づいて両目および口の開閉状態を計測する（ステップＳ２６０）。最後に、計測した両目および口の開閉状態情報及び頭部の姿勢情報はキャラクタ制御装置９０に入力され、キャラクタ制御装置９０によってＣＧキャラクタの頭部の動きおよび表情が制御される（ステップＳ２７０）。
【００２５】
［キャリブレーションフェーズ］
次に、図１のリアルタイム表情追跡装置のキャリブレーションフェーズにおける動作を図４〜図１７を用いて詳細に説明する。
【００２６】
（ａ）頭部領域検出手段２での処理
まず、図４〜図１０を用いて頭部領域検出手段２が行う図２のステップＳ１１０〜Ｓ１４０の処理の詳細について説明する。
【００２７】
図４は、頭部領域検出手段２における肌色サンプリング手段６の動作を説明するための図である。図５は、肌色サンプリング手段６および肌色抽出パラメータ調整手段７の動作を説明するためのフローチャートである。
【００２８】
まず、使用する照明環境下におけるユーザの肌色をサンプリングするために、図４に示すように、キャプチャ映像１９に重ねて、サンプリング領域を指定するためのサンプリングウィンドウ２０を表示する（ステップＳ３００）。次に、ユーザは、マウスあるいはその他のポインティングデバイスやキーボード等を用いて、サンプリングウィンドウ２０を頬あるいは額などの肌色のみ抽出可能な位置に移動させ、サンプリング可能であることをシステムに伝える（ステップＳ３１０）。なお、最初に表示したサンプリングウィンドウ２０の位置に合わせてユーザ自身が頭を動かして位置を調整しても良い。
【００２９】
次に、サンプリングウィンドウ２０内の全ての画素の色を肌色抽出のための色空間（肌色モデル空間）に写像し（ステップＳ３２０）、写像画素の写像空間での最大値および最小値を用いて予め設定した肌色抽出パラメータを調整する（ステップＳ３３０）。
【００３０】
ここで、肌色抽出空間は、例えば、輝度変化に比較的ロバストな色空間を新たに構築するとか、画素の色データ空間（Ｒ、Ｇ、Ｂ空間）上で構築するなどの方法を用いる。ここでは、下記のような、輝度変化に比較的ロバストな色空間を用いることにする。
【００３１】
Ｒ（レッド），Ｇ（グリーン），Ｂ（ブルー）を各画素の色の３原色の成分だとすると、まず、次式により色を正規化する。
ｃ１＝arctan（Ｒ／max（Ｇ，Ｂ））......式（１）
ｃ２＝arctan（Ｇ／max（Ｒ，Ｂ））......式（２）
ｃ３＝arctan（Ｂ／max（Ｒ，Ｇ））......式（３）
【００３２】
上記式で正規化した色をさらに次式で変換する。
Ｃ１＝ｃ２／ｃ１                  ......式（４）
Ｃ２＝ｃ３／ｃ２                  ......式（５）
【００３３】
肌色領域抽出手段８では、式（４）および式（５）でＲＧＢ空間からＣ１−Ｃ２空間に変換した色が、次式（６），（７）で定義した肌色範囲に入っているか否かを判断することにより入力画像から肌色領域を抽出する。
ｔｈ１＜Ｃ１＜ｔｈ２              ......式（６）
ｔｈ３＜Ｃ２＜ｔｈ４              ......式（７）
【００３４】
肌色抽出パラメータ調整手段７では、この肌色抽出の際に用いる肌色抽出パラメータ（閾値）ｔｈ１〜ｔｈ４を、肌色サンプリング手段６のサンプリングデータを用いて異なる照明条件あるいは各人の肌色の違いに適応して可変するようにしている。すなわち、肌色抽出パラメータ調整手段７は、肌色サンプリング手段６でサンプリングした画素のＲＧＢデータをＣ１-Ｃ２空間に写像し、その時の最大値、最小値をＣ１、Ｃ２についてそれぞれ求め、Ｃ１についての最小値で閾値ｔｈ１を、Ｃ１についての最大値で閾値ｔｈ２を、Ｃ２についての最小値で閾値ｔｈ３を、Ｃ２についての最大値で閾値ｔｈ４を夫々変更する。
【００３５】
以上のように、使用する照明環境下において利用者の肌色をサンプリングすることにより肌色抽出性能を向上させることができ、また、照明の輝度変化に頑強な色空間を用いることにより簡易なパラメータ調整でも肌色抽出性能をさらに向上させることが可能となる。
【００３６】
次に図６〜図１０を用いて肌色領域抽出手段８および頭部領域抽出手段９の動作を説明する。図６は、肌色領域抽出手段８と頭部領域抽出手段９の動作を説明するためのフローチャートである。
【００３７】
肌色抽出パラメータ調整手段７で調整した肌色抽出パラメータを用いてもなお照明環境によっては顔の一部にハイライトが発生したり、皺や影などにより頭部領域を肌色抽出のみで正確に抽出することは困難である。そのため、肌色領域抽出手段８で抽出された肌色領域の中で最も大きい領域を頭部領域として判定し、抽出漏れによる穴や裂け目などの目、鼻、口などの部位以外の小領域を頭部領域から除去する頭部領域修復処理を行うことにより頭部全体を適切に抽出可能とする。
【００３８】
肌色領域抽出手段８においては、キャプチャした画像の全ての画素の色データを肌色モデル空間に写像し（ステップＳ４００）、式（６）および式（７）で定めた閾値ｔｈ１〜ｔｈ４内にある画素を抽出し（ステップＳ４１０）、抽出した画素を４連結あるいは８連結で統合するラベリング処理（連続した図形をグループ分けして番号付けする処理）を実行することにより、個々のブロック領域（塊）に領域分割する（ステップＳ４２０）。そして、ラベリング処理の結果、得られるブロック領域の中から面積（画素数）が最大の領域を選択し、それを頭部領域とする（ステップＳ４３０）。
【００３９】
図７に、このようにして選択された頭部領域を含む画像を示す。この時点では、ハイライトや影、両目、口、鼻などの暗い部分が抽出されていないため、頭部領域には、図７に示すように、穴や裂け目などの小領域２１が発生している場合が多い。
【００４０】
そこで、頭部領域抽出手段９は、まず裂け目部分を修復する。裂け目部分の修復は、肌色領域抽出後の肌色画素を１、それ以外を０とした２値画像に対して、膨張収縮処理を行うことで達成する。膨張収縮処理は、図８に示すような膨張マスク２２および収縮マスク２３を設定し、以下の膨張処理と収縮処理を繰り返し行うことで、前述の裂け目や小さい穴などを埋めるものである。膨張処理は、注目画素の近傍の画素値を膨張マスク２２で設定した画素値に置き換えることにより領域を膨張させるものである。収縮処理は、注目画素の近傍画素の内、収縮マスク２３で設定した０でない画素の画素値が収縮マスク２３の画素値と同値である場合に注目画素を残し、同値で無い場合に注目画素の値を０とすることにより領域を収縮するものである。上記膨張収縮処理により、図９（ａ）に示すような裂け目２４が修復され、図９（ｂ）のようになる。また、この処理により微小の穴も埋めることが可能である。
【００４１】
膨張収縮処理により頭部領域に発生した裂け目が修復されたことにより、後は頭部領域内の全ての穴に対応する小領域を埋めることにより頭部全体を一領域として抽出することが可能となる。この穴埋め処理には、図１０に示すような、論理演算処理が用いられる。
【００４２】
まず、裂け目修復処理により得られた頭部領域画像２６と、画素値が全て１のマスク２７との排他的論理和を求める。その結果、背景領域と頭部領域内の穴が得られる。次に、得られた画像２８から、画像の外辺に接している領域（背景領域）を除去し、除去した画像２９と元の頭部領域画像２６との論理和を求めることにより、頭部全体を一領域として抽出することが可能となる（３０が論理和がとられた画像、ステップＳ４４０）。このように、簡単な論理演算処理により頭部領域を抽出できるので、高速処理が可能となる。
【００４３】
（ｂ）部位領域候補抽出手段３での処理
つぎに、図１１および図１２を用いて部位領域候補抽出手段３が行う図２のステップＳ１５０の処理の詳細について説明する。図１１は、部位領域候補抽出手段３の動作を説明するためのフローチャートである。
【００４４】
部位領域候補抽出手段３では、照明条件が変化することに応じた輝度変化に頑強に対応可能とするために、頭部領域検出手段２によって抽出された頭部領域に対して適応型ヒストグラム平均化法を用いて頭部領域のコントラストを一定に保つ処理を行う。まず、頭部領域輝度平均化手段１０は、頭部領域の外接矩形を求め、その外接矩形領域を例えば８×８の小領域に分割する（ステップＳ５００）。つぎに、頭部領域輝度平均化手段１０は、各小領域毎にヒストグラム平均化処理を行う（ステップＳ５１０）。
【００４５】
ヒストグラム平均化処理は、次のようにして行う。まず、各小領域毎に画素値と頻度の関係を示すヒストグラムを求める。次に、累積頻度（頻度の各階級（画素値）までの累計）を求め、各累積頻度を累積頻度の最大値で割って、各累積頻度の比率を求める。そして、求めた比率に小領域内の画素値の最大値を掛け合わせ、四捨五入により小数点以下を丸める。ここで得られた値が、平均化後の画素値となる。最後に、平均化後の画素値の頻度を、平均化前の頻度から求める。
【００４６】
例えば、図１３に示すように小領域内の画素値が０から７の範囲内にあり、その頻度が図１３に示す通りであった場合、平均化後のそれぞれの画素値の頻度は図１４に示す通りになる。例えば、平均化後の画素値が４の場合、画素値４に対応する平均前の画素値は２と３であるため、その頻度は、９＋２＝１１となる。
【００４７】
ここで、上記のとおり適応型ヒストグラム平均化法では、特にコントラストが低い小領域において、領域内の大半の画素値がヒストグラムの極大点に割り当てられることから、ノイズが多く発生する可能性がある。そこで、図１２（ａ）に示すようにある閾値を超えた頻度をもつ画素値３１が存在する場合には、図１２（ｂ）に示すように、それらの頻度を他の画素値に分散させる処理を行うようにしており、これによりノイズの発生を抑えることが可能である。
【００４８】
以上の処理により、常に一定のコントラストを得られることから、画素選別手段１１では、一定の閾値ｔｈａを用い、頭部領域内の輝度値が閾値ｔｈａ以下の画素（暗い画素）を論理レベル１とし、それ以外を論理レベル０とし（ステップＳ５２０）、さらに、画素値が１の画素を４連結あるいは８連結で結合し領域分割する（ステップＳ５３０）。最後に、微小領域を除去することにより、各部位（両目と口と鼻）の候補領域を抽出できる（ステップＳ５４０）。
【００４９】
以上のように、頭部全体を一領域として抽出し、その頭部領域のコントラストを常に一定にする処理を施すことにより、両目や口の部位領域の抽出処理を固定の閾値ｔｈａを用いて実行することができる。したがって、高速処理が可能となり、かつ輝度変化に頑強なシステムを構築することができる。
【００５０】
（ｃ）部位検出追跡手段４での処理
次に、図１５および図１６を用いて部位検出追跡手段４がキャリブレーションフェーズにおいて行う図２のステップＳ１６０およびＳ１７０の動作を説明する。図１５は、キャリブレーションフェーズにおける部位検出追跡手段４の動作を説明するためのフローチャートである。
【００５１】
まず、部位検出手段１２は、頭部領域検出手段２で抽出した頭部領域の重心を求める（ステップＳ６００）。この重心位置は、周知の距離変換処理などを用いて求める。
【００５２】
距離変換処理とは、画像中のオブジェクトの各画素値を、各画素位置から背景領域への最短距離に置き換える変換処理である。距離の概念としては、最も単純な市街地距離（４連結距離）とチェス盤距離（８連結距離）がよく使われる。ここでは、市街地距離を用いたアルゴリズムを説明する。
【００５３】
Step1.  まず、入力画像を二値化した各画素データをｆi,jとし、Ｄi,jを初期化変換された多値データとした場合、次のように初期化変換する。すなわち、画素値が１の頭部領域内の画素は、多値データ∞（実際には、１００などの大きな値）に置換し、画素値が０の背景画素は、０に置換する。
【数１】
2006053944.tif 000003
Step2.  初期化した画像を左上から右下に向かって走査し、次の規則で逐次Ｄ´i,jを更新する。
Ｄ″i,j＝min（Ｄ′i,j,Ｄ″i-1,j＋１，Ｄ″i,j-1＋１）......式（９）
Step3.  先のStep2で得られたＤ″i,jに対して、右下から左上に向かって走査し、次の規則で逐次Ｄ″i,jを更新する。
Ｄi,j＝min（Ｄ′i,j,Ｄ″i+1,j＋１，Ｄ″i,j+1＋１）......式（１０）
【００５４】
上式（１０）によって得られたＤi,jが距離画像の各画素データとなる。したがって、これら得られた距離画像から、距離値が最大となる画素を求め、この画素を頭部領域の重心とする。
【００５５】
距離画像変換の特徴は、領域の形が変化しても安定した重心位置を求めることがある。なお、距離画像変換を用いず、画素の座標値の平均により重心を求めても良い。
【００５６】
部位検出手段１２は、部位領域候補抽出手段３で抽出された両目、口、鼻についての候補領域の中から、先のステップＳ６００で求めた頭部領域の重心に最も近い候補領域を鼻領域とみなす（ステップＳ６１０）。
【００５７】
つぎに、部位検出手段１２は、図１６に示すように、上記特定した鼻領域から一定の方向と距離に頭部領域の大きさに比例した大きさの左目マスク３３、右目マスク３４、口マスク３５を設定する。
【００５８】
設定したマスク領域の中からそれぞれ重心位置に最も近い領域をそれぞれ右目、左目、口領域とする（ステップＳ６２０）。
【００５９】
次に初期位置設定手段１３において、各部位領域の中心位置と両目の外側の端点３６ａ、３７ａの位置を記憶する（ステップＳ６３０）。最後に、右目、左目および鼻に関する検出領域のうち、右目、左目、口領域内の画素値を１とし、それ以外を０とした部位領域マスク画像を各部位について夫々生成し、これらの部位領域マスク画像を記憶する。（ステップＳ６４０）。この部位領域マスク画像は、トラッキングフェーズでの第１番目のフレームについての部位追跡処理に用いられる。また、部位検出手段１２は、各部位領域（左目、右目、口）の、中心位置における画像垂直方向（Ｙ方向）の長さを測定し、これら測定値を初期位置設定手段１３に記憶する。この記憶された各部位領域（左目、右目、口）の画像垂直方向（Ｙ方向）の長さは、その後のトラッキングフェーズで、各部位の開閉状態情報を得るために利用される。
【００６０】
（ｄ）頭部３次元姿勢・表情計測手段５での処理
次に、図１７〜図１９を用いて頭部３次元姿勢・表情計測手段５がキャリブレーションフェーズにおいて行う図２のステップＳ１８０の動作を説明する。図１７は、キャリブレーションフェーズにおける頭部３次元姿勢・表情計測手段５の動作を説明するためのフローチャートである。
【００６１】
アフィン基底設定手段１５は、図１８に示すように、部位検出追跡手段４で求めた両目の外側の端点３６ａ，３７ａを結ぶ直線３８を求める（ステップＳ７００）。次に、左目あるいは右目どちらかの端点を基準に直線３８が水平になるように画像を回転させる（ステップＳ７１０）。そして、口の中心位置を通り、求めた直線に平行でかつ同じ長さの直線３９を求める（ステップＳ７２０）。この２つの直線３８，３９の両端点、すなわち４点３６ａ，３７ａ，３６ｂ，３７ｂでできる矩形の中心座標４０を求める（ステップＳ７３０）。さらに、矩形３９の中心４０を基準に、矩形の４頂点の相対座標を求め、これらを３次元空間上の仮想点として記憶する（ステップＳ７４０）。
【００６２】
この３次元空間上の仮想点は、トラッキングフェーズにおける頭部３次元姿勢計測のための基準点となる。
【００６３】
次に、頭部回転量推定手段１６は、図１９に示すように、両目の端点３６ａ，３７ａを結ぶ直線をＸ軸、口の中心を通りＸ軸に垂直な直線をＹ軸として座標系を規定し、頭部領域に外接する外接矩形のＸ軸方向の長さを１としたときに、左目あるいは右目の内側の端点と外接矩形の左右の辺との距離Ｌａ，Ｌｂを求める（ステップＳ７５０）。同様に、外接矩形のＹ軸方向の長さを１としたときに、口の中心位置から外接矩形の上下の辺までの距離Ｌｃ、Ｌｄを求める（ステップＳ７６０）。
【００６４】
この相対位置がトラッキングフェーズにおける頭部の上下左右方向の回転量を予測するための基準となる。
以上がキャリブレーションフェーズにおけるリアルタイム表情追跡装置の動作である。
【００６５】
［トラッキングフェーズ］
次に、図１のリアルタイム表情追跡装置のトラッキングフェーズにおける動作を図２０〜図２９を用いて詳細に説明する。
（ａ）′頭部領域検出手段２での処理
頭部領域検出手段２では、肌色領域抽出手段８と頭部領域抽出手段９を動作させることで、映像入力手段１を介して所定のフレームレートで順次入力される現フレームの映像に対し、キャリブレーションフェーズ同様の処理を行い、肌色領域を抽出し、頭部領域を抽出する（図３ステップＳ２００〜Ｓ２２０）。ただし、このトラッキングフェーズでは、肌色サンプリング手段６による肌色サンプリングおよび肌色抽出パラメータ調整手段７による肌色パラメータの調整は行わない。
【００６６】
（ｂ）′部位領域候補抽出手段３での処理
部位領域候補抽出手段３では、キャリブレーションフェーズと同様の処理を実行することにより、現フレームの映像から部位（目、口、鼻）領域候補を抽出する（図３ステップＳ２３０）。すなわち、頭部領域検出手段２によって抽出された頭部領域に対して適応型ヒストグラム平均化法を用いて頭部領域のコントラストを一定に保つ処理を行い、さらに、一定の閾値ｔｈａを用い、頭部領域内の輝度値が閾値ｔｈａ以下の画素（暗い画素）を１、それ以外を０とし、さらに、画素値が１の画素を４連結あるいは８連結で結合して領域分割し、最後に、微小領域を除去することにより、各部位（両目と口と鼻）の候補領域を抽出する。
【００６７】
（ｃ）′部位検出追跡手段４での処理
図２０〜図２３を用いて部位検出追跡手段４のトラッキングフェーズにおける動作を詳細に説明する。図２０および図２１は、トラッキングフェーズにおける部位検出追跡手段４の動作を説明するためのフローチャートである。
【００６８】
部位追跡手段１４では、記憶されている前フレームについての部位領域の中心座標を中心に、一定の大きさの矩形領域を設定する。その矩形領域に存在する現フレームの候補領域を求める（ステップＳ８２０）。つぎに、各候補領域に対して次に示すような判別式（１１）を用いて評価値Ｅを得る。
【数２】
2006053944.tif 000004
【００６９】
ここで、Ｅは評価値、ＳＰは前フレームにおける部位領域の画素数、ＳＣは現フレームにおける候補領域の画素数、ＯＰは現フレームにおける候補領域のマスク画像（候補領域の画素のみが１で、それ以外は０の画像）と前フレームにおける部位領域のマスク画像（部位領域の画素のみが１で、それ以外は０の画像）との排他的論理和を求めたときに、画素値が１となる画素数、Ｄは前フレームにおける部位領域の中心と候補領域の中心との距離である。
【００７０】
上記式（１１）で求めた値Ｅが最も小さいものを対象領域として選択することにより、前フレームの部位領域の位置を基準とした一定範囲内に存在する現フレームの候補領域の中から対象領域を特定する（ステップＳ８３０）。すなわち、図２２に示すような小さいノイズ領域４７が前フレームの部位領域に完全に包含されたとしても、その場合は式（１１）の｜ＳＰ−ＳＣ｜とＯＰの値が大きくなるため、このようなノイズ領域を除去できる。
【００７１】
このような処理を、左目、右目、口の領域について夫々実行する（ステップＳ８１０〜Ｓ８４０）。
【００７２】
以上の処理により全ての部位を検出できた場合は、部位領域マスク画像を、現在のフレームのもので更新し、かつ各部位（左目、右目、口）についての検出領域の中心位置を求め、これを記憶する（ステップＳ８５０およびＳ８６０）。
【００７３】
見つからない部位が存在した場合は（ステップＳ８７０）、現フレームで検出された部位の移動ベクトルから、検出できなかった部位の現フレームでの位置を予測する。例えば、図２３に示すように、現フレームで検出できなかった部位（対象部位）５４が存在した場合、現フレームで検出された他の部位４８の位置とその部位の前フレームでの位置４９からフレーム間の移動ベクトル５０を求める。そして、対象部位５４の前フレームにおける位置５１に、他の部位の検出位置から求めた移動ベクトル５０を加算して、現フレームでの推定位置を求める（ステップＳ８９０）。そして、求めた位置を含む所定の矩形領域（例えば１６×１６）５３中の画素に着目し、この矩形領域中の画素に対し前述したステップＳ８２０およびステップＳ８３０の処理を実行することで、対象部位５４を検出する（ステップＳ９００）。
【００７４】
矩形領域５３内に全く候補領域が存在しない場合は、顔の傾きなどによる隠れが生じているものとし、ステップＳ８９０で推定した位置を現フレームでの対象部位の位置とし、矩形領域５３自体をその部位領域として記憶する（ステップＳ９１０，Ｓ９２０）。
【００７５】
なお、ステップＳ８７０で、現フレームの部位領域を全く検出できなかった場合は、部位検出手段１２によって図１５のステップＳ６００〜Ｓ６４０の処理を再度行い、部位領域を再検出する（ステップＳ８８０）。
【００７６】
このように、部位を１つ検出できれば、他の部位を検出漏れしても、検出した部位の移動ベクトルから検出漏れした部位の現フレームでの位置を予測しているので、頑強な部位追跡が行える。さらに、隠れなどにより映像中に対象となる部位が現れない場合でも暫定的な部位領域を設定することから、隠れた部位が出現したときにその部位を即座に追跡可能となり、つまりは、頭部の各部位の滑らかな動きを再現可能となる。
【００７７】
（ｄ）′頭部３次元姿勢・表情計測手段５での処理
次に、図２４〜図２９を用いて頭部３次元姿勢・表情計測手段５のトラッキングフェーズにおける動作を詳細に説明する。図２４および図２７は、トラッキングフェーズにおける頭部３次元姿勢・表情計測手段５の動作を説明するためのフローチャートである。
【００７８】
まず、頭部回転量推定手段１６においては、図２５に示すように、部位検出追跡手段４で求められた現フレームの両目領域から、両目の外側の端点７０，７１を求め、これら端点７０，７１を結ぶ直線５５を求める（ステップＳ１０００）。また、直線５５に直交し、口の中心位置５９を通る直線５６を求める（ステップＳ１０１０）。求めた直線５５をＸ軸とし、直線５６をＹ軸とするローカル座標系を設定し、Ｘ軸５５およびＹ軸５６のそれぞれに平行な辺を持ち、抽出された頭部領域に外接する外接矩形５７を求める（ステップＳ１０２０）。外接矩形５７のＸ軸方向の辺の長さを１とし、キャリブレーションフェーズで計測した方の目の内側の端点５８とＹ軸に並行な２辺７２，７３までの相対距離Ｌａ′，Ｌｂ′を夫々求める（ステップＳ１０３０）。同様に、外接矩形のＹ軸方向の長さを１とし、口の中心５９とＸ軸に平行な２辺７４，７５までの相対距離Ｌｃ′，Ｌｄ′を夫々求める（ステップＳ１０４０）。
【００７９】
次に、両目の外側の端点７０，７１と、端点７０，７１を通りＹ軸に平行な直線と口の中心を通りＸ軸に平行な直線との交点（２点）７６，７７とでできる矩形６０を求める（ステップＳ１０５０）。
【００８０】
ここで、Ｘ軸については右方向を正方向、Ｙ軸については上方向を正方向としたとき、片目のＸ軸正方向の相対距離ｄｅｃ（＝Ｌｂ′）と、キャリブレーションフェーズで記憶したＸ軸正方向の相対距離ｄｅｉ（＝Ｌｂ）とから次式（１２）で頭部の左右方向の回転量を求める。
ＲｆE＝ｄｅｃ／ｄｅｉ              ......式（１２）
ここで、ＲｆEは左右方向の回転量、ｄｅｃは現フレームでの目のＸ軸正方向の相対距離、ｄｅｉはキャリブレーションフェーズで記憶した目のＸ軸正方向の相対距離である。
【００８１】
もし、回転量ＲｆEが１よりも大きい場合、頭部は左方向に回転していることになる。逆に回転量ＲｆEが１よりも小さい場合、頭部は右方向に回転していることになる。
【００８２】
同様に、口のＹ軸正方向の相対距離ｄｍｃ（＝Ｌｄ′）と、キャリブレーションフェーズで記憶したＹ軸正方向の相対距離ｄｍｉ（＝Ｌｄ）とから次式（１３）で頭部の上下方向の回転量を求める。
Ｒｆm＝ｄｍｃ／ｄｍｉ            ......式（１３）
ここで、Ｒｆmは上下方向の回転量、ｄｍｃは現フレームでの口のＹ軸正方向の相対距離、ｄｍｉはキャリブレーションフェーズで記憶した口のＹ軸正方向の相対距離である。
【００８３】
もし、回転量Ｒｆmが１よりも大きい場合、頭部は下方向に回転していることになる。逆に１よりも小さい場合、頭部は上方向に回転していることになる。
【００８４】
つぎに、式（１２）および式（１３）で求めた左右上下の回転量ＲｆE，Ｒｆmに基づき次のようにして矩形６０を歪ませる（ステップＳ１０６０）。
【００８５】
ＲｆE＞１の場合：
矩形の左側の辺（Ｙ軸に平行な辺でＸ軸の負方向にある辺）の長さを次式（１４）を用いて短くする。
ｌ＝ｗ・ＲｆE・ｏｌ                ......式（１４）
ｌは計算した長さ、ｏｌは元の長さ、ｗは重み係数である。
【００８６】
ＲｆE＜１の場合：
矩形の右側の辺（Ｙ軸に平行な辺でＸ軸の正方向にある辺）の長さを式（１４）を用いて短くする。
【００８７】
Ｒｆm＞１の場合：
矩形の下側の辺（Ｘ軸に平行な辺でＹ軸の負方向にある辺）の長さを次式（１５）を用いて短くする。
ｌ＝ｗ・Ｒｆm・ｏｌ                  ......式（１５）
ｌは計算した長さ、ｏｌは元の長さ、ｗは重み係数である。
【００８８】
Ｒｆm＜１の場合：
矩形の上側の辺（Ｘ軸に平行な辺でＹ軸の正方向にある辺）の長さを式（１５）を用いて短くする。
【００８９】
例えば、図２６（ａ）に示すように、左方向に頭部を回転した場合、矩形６０は左側の辺が短くなり、図２６（ｂ）に示すように、上方向に回転した場合、矩形６０は上側の辺が短くなる。そして、このようにして変形した矩形の各頂点座標を変形前の矩形６０の中心座標を基準にして求める。
【００９０】
つぎに、姿勢計測手段１７は、以上のようにして求めた４つの頂点座標（２次元座標）と、それらに対応するアフィン基底設定手段１５で設定された３次元空間上の仮想点を基に、頭部の３次元姿勢計測を行う。ここでは、つぎのような手法を用いて、３次元姿勢計測を行う。
【００９１】
カメラで撮影された画像と３次元空間上のオブジェクトとの関係は図２８のようになっている。図２８において６３は、アフィン基底設定手段１５で設定した３次元空間上の平面、６４はカメラ画像平面、６５はカメラ座標系である。
【００９２】
３次元空間上の平面６３の座標系における点（Ｘf，Ｙf，Ｚf）と、それに対応するカメラ座標系６５における点（Ｘc，Ｙc，Ｚc）は次式（１６）の関係がある。
【数３】
2006053944.tif 000005
式（１６）におけるＲが回転成分を、Ｔが並進成分を表しており、これが、頭部の３次元姿勢情報に等しい。
【００９３】
一方、カメラ座標系６５における３次元空間上の点（Ｘc，Ｙc，Ｚc）とカメラ画像平面６４における２次元の点（ｄＸc，ｄＹc）とは、次式（１７）に示す関係がある。
【数４】
2006053944.tif 000006
ここで、Ｐを含む行列は使用するビデオカメラ８０の透視投影行列であり、周知のカメラキャリブレーション技術を用いて予め求めることができる。
【００９４】
さて、頭部回転量推定手段１６で得られた矩形（カメラ画像平面６４）は、３次元空間上では上下と左右の辺は平行している。この二組の平行した辺から矩形の３次元空間上の上下方向と左右方向の方向ベクトル（Ｘ軸、Ｙ軸）を求めることができる。
【００９５】
平行する辺のカメラ画像平面６４上における直線の方程式を
ａ1ｘ＋ｂ1ｙ＋ｃ1＝０              ......式（１８）
ａ2ｘ＋ｂ2ｙ＋ｃ2＝０              ......式（１９）
とすると、カメラ座標系６５におけるこれらの各直線を含む３次元の平面の方程式は次式（２０）（２１）であらわすことができる。
【００９６】
ａ1Ｐ11Ｘc＋（ａ1Ｐ12＋ｂ1Ｐ22）Ｙc
＋（ａ1Ｐ13＋ｂ1Ｐ23＋ｃ1）Ｚc＝０    ......式（２０）
ａ2Ｐ11Ｘc＋（ａ2Ｐ12＋ｂ1Ｐ22）Ｙc
＋（ａ2Ｐ13＋ｂ2Ｐ23＋ｃ2）Ｚc＝０    ......式（２１）
これら２つの平面の法線ベクトル（Ｘ、Ｙ、Ｚの係数）の外積を求めると上記方向ベクトル（Ｘ軸、Ｙ軸）を求めることができる。
【００９７】
以上で、カメラ座標系６５における矩形のＸ軸、Ｙ軸に相当する方向ベクトルを求めることができるが、画像から得られる情報の誤差により、得られた方向ベクトルが図２９に示すように直交していない場合がある。そこで、求めた方向ベクトルをＳ１、Ｓ２としたとき、そのベクトルＳ１、Ｓ２を基に直交ベクトルＶ１、Ｖ２を求める。Ｚ軸方向のベクトルは、求めたＶ１とＶ２の外積から求められる。この３つの方向ベクトルが式（１６）における回転成分Ｒとなる。
【００９８】
回転成分Ｒが分かれば、２次元座標と３次元座標の対応点を式（１６）と式（１７）に代入することにより並進成分Ｔを求めることができる。
【００９９】
姿勢計測手段１７では、まず頭部回転量推定手段１６で求めた矩形の４頂点の座標から式（１８）に示す各辺の直線パラメータ（方程式）を求め（ステップＳ１１００）、求めた直線パラメータを用いて式（２０）および式（２１）に基づき、アフィン基底設定手段１５で設定した仮想３次元平面のＸ軸、Ｙ軸を求める（ステップＳ１１１０）。そして、前述したように、求めた軸が直交するように修正し、更にこの修正したＸ軸、Ｙ軸からＺ軸を求め、これら３軸（Ｘ軸、Ｙ軸、Ｚ軸）の方向ベクトルから回転行列（回転成分）Ｒを求め（ステップＳ１１２０）、さらにこの回転成分Ｒを用いて得られた２次元座標と３次元座標の対応点を式（１６）（１７）に代入することで、並進行列（並進成分）Ｔを求める（ステップＳ１１３０）。
【０１００】
以上のようにして求めた投影行列を用いて、実際に３次元空間上の仮想点をカメラ画像平面に投影したときの誤差に応じて投影行列を修正し（ステップＳ１１４０）、誤差が閾値以下になったときの投影行列を頭部の３次元姿勢情報とし（ステップＳ１１５０）、この３次元姿勢情報をキャラクタ制御装置９０に出力することで、ＣＧキャラクタの頭部の３次元姿勢を制御する。
【０１０１】
このように、顔画像から検出する両目および口の３点から３次元空間上の矩形（仮想平面）を規定し、追跡時に両目および口の３点から作成した矩形を頭部の動きに応じて歪ませることにより、３次元平面を２次元に投影したときの歪みを擬似的に再現し、本来４点以上の３次元と２次元の対応点がなければ求めることができない３次元姿勢情報を画像から得られる両目および口の３点のみで推定するようにしている。
【０１０２】
次に開閉状態計測手段１８の動作を説明する。開閉状態計測手段１８では、姿勢計測手段１７で求めた投影行列、すなわち頭部の３次元姿勢情報を用いて、ユーザが正面を向いたときのカメラ画像における両目および口領域を再現し、再現した領域の画像垂直方向（Ｙ方向）の長さと、初期位置設定手段１３に記憶されている初期状態における各部位領域の画像垂直方向の長さとの比率を求める。この比率が、両目および口がどの程度開閉しているかを示す開閉状態情報となる。
【０１０３】
このように３次元姿勢情報を用いてユーザが正面を向いたときのカメラ画像における両目および口領域を推定しているので、例えば頭部が横や上を向いている画像においても正面を向いた場合の画像を推定でき、２次元画像のみから両目および口の開閉状態をより正確に求めることができる。
【０１０４】
このようにして、求められた頭部の３次元姿勢情報および両目および口の開閉状態情報は、キャラクタ制御装置９０に入力される。キャラクタ制御装置９０は、入力された頭部の３次元姿勢情報および両目および口の開閉状態情報を用いてＣＧキャラクタの頭部の動きおよび両目および口の開閉状態を可変制御することで、ビデオカメラ８０で撮像した利用者の動き、表情に追従させてＣＧキャラクタの動き、表情をリアルタイムに変化させる。
【０１０５】
この実施の形態によれば、部位検出手段によって両目および口の領域が特定できない場合には、現フレームで特定された部位領域の位置と、この特定された部位領域の前フレームでの位置とを用いて移動ベクトルを求め、この移動ベクトルを用いて特定できなかった部位の位置を特定しているので、部位を１つ検出できれば、例え他の部位を検出漏れしても、この検出漏れした部位を検出することができ、これにより頑強な部位追跡が行える。さらに、隠れなどにより映像中に対象となる部位が現れない場合でも暫定的な部位領域を設定するようにすれば、隠れた部位が出現したときにその部位を即座に追跡可能となり、頭部の滑らかな動きを再現可能となる。
【０１０６】
また、前フレームについての部位領域の中心座標を中心に一定の大きさの矩形領域を設定し、その矩形領域中に存在する現フレーム候補領域を求め、求めた候補領域夫々について、判別式Ｅ＝｜ＳＰ−ＳＣ｜＋ＯＰ＋Ｄを用いて評価値Ｅを夫々取得し、評価値Ｅが最も小さな候補領域を各部位領域として特定するようにしているので、簡単な演算処理で各部位を特定することができ、高速処理が可能となり、計算能力が低いハードウェアを用いてもリアルタイムかつ頑強な処理が可能である。
【０１０７】
また、抽出された頭部領域の輝度を平均化・正規化し、該輝度平均化・正規化された画像を用いて頭部領域中の両目および口の候補領域を抽出するようにしているので、グラデーションや影、ハイライトなどの影響を抑えて輝度変化に影響されることなく候補領域の抽出が実現でき、また両目や口の部位領域の抽出を固定の閾値処理で行えることから、高速処理が可能となり、計算能力が低いハードウェアを用いてもリアルタイムかつ頑強な処理が可能である。
【０１０８】
また、頭部領域を複数の小領域に分割し、各小領域毎にヒストグラム平均化処理を行うようにしているので、グラデーションや影、ハイライトなどを影響を抑えて輝度変化に影響されることなく候補領域の抽出が実現でき、また両目や口の部位領域の抽出を固定の閾値処理で行えることから、高速処理が可能となり、計算能力が低いハードウェアを用いてもリアルタイムかつ頑強な処理が可能である。
【０１０９】
また、ヒストグラム平均化処理では、所定の閾値を越えた頻度をもつ画素値の頻度を他の画素値に分散させるようにしているので、ノイズの発生を抑えることができる。
【０１１０】
また、撮影された頭部の姿勢情報に基づいて頭部が正面を向いた場合における目または口の画像を推定し、前記推定された目または口の画像と、初期記憶された目または口の初期状態とを比較して目または口の開閉状態を求めるようにしているので、例えば頭部が横や上を向いている画像においても正面を向いた場合の画像を推定でき、２次元画像のみから両目および口の開閉状態をより正確に求めることができる。
【図面の簡単な説明】
【０１１１】
【図１】この発明にかかるリアルタイム表情追跡装置の実施の形態を示すブロック図である。
【図２】図１のリアルタイム表情追跡装置のキャリブレーションフェーズの動作の概要を説明するためのフローチャートである。
【図３】図１のリアルタイム表情追跡装置のトラッキングフェーズの動作の概要を説明するためのフローチャートである。
【図４】肌色サンプリングを説明するための図である。
【図５】肌色サンプリング手段および肌色抽出パラメータ調整手段の動作を説明するためのフローチャートである。
【図６】肌色領域抽出手段と頭部領域抽出手段９の動作を説明するためのフローチャートである。
【図７】肌色領域抽出手段で肌色領域を抽出した結果の一例を示した図である。
【図８】膨張マスクおよび収縮マスクを例示する図である。
【図９】検出した頭部領域に発生した裂け目を埋める処理を説明するための図である。
【図１０】頭部領域内の全ての穴を埋める論理演算処理を説明するための図である。
【図１１】部位領域候補抽出手段の動作を説明するためのフローチャートである。
【図１２】適応型ヒストグラム平均化法の欠点であるノイズ発生を抑える処理を説明するための図である。
【図１３】適応型ヒストグラム平均化法を説明するための図である。
【図１４】適応型ヒストグラム平均化法を説明するための図である。
【図１５】キャリブレーションフェーズにおける部位検出追跡手段の動作を説明するためのフローチャートである。
【図１６】部位検出手段において両目および口領域を特定する際に用いるマスク領域を示した図である。
【図１７】キャリブレーションフェーズにおける頭部３次元姿勢・表情計測手段５動作を説明するためのフローチャートである。
【図１８】アフィン基底設定手段で設定する３次元空間上の仮想点を示した図である。
【図１９】頭部移動量推定手段で求める両目の端点および口の中心点の頭部領域の外接矩形に対する相対位置を説明するための図である。
【図２０】トラッキングフェーズにおける部位検出追跡手段の動作を説明するためのフローチャートである（その１）。
【図２１】トラッキングフェーズにおける部位検出追跡手段の動作を説明するためのフローチャートである（その２）。
【図２２】部位追跡手段での現フレームにおける部位領域の追跡方法を説明するための図である。
【図２３】検出できなかった部位領域を検出できた部位領域の位置から予測する処理を説明するための図である。
【図２４】トラッキングフェーズにおける頭部３次元姿勢・表情計測手段の動作を説明するためのフローチャートである。
【図２５】頭部回転量推定手段での左右上下方向の頭部回転量を推定する処理を説明するための図である。
【図２６】頭部回転量推定手段において３次元空間上の仮想点（アフィン基底）に対応する対応点を求める処理を説明するための図である。
【図２７】トラッキングフェーズにおける頭部３次元姿勢・表情計測手段の動作を説明するためのフローチャートである。
【図２８】姿勢計測手段での３次元と２次元の対応点から頭部の３次元姿勢情報を求める処理を説明するための図である。
【図２９】姿勢情報を求める際の誤差を補正する処理を説明するための図である。
【図３０】従来技術を示す図である。
【符号の説明】
【０１１２】
１  映像入力手段
２  頭部領域検出手段
３  部位領域候補抽出手段
４  部位検出追跡手段
５  ３次元姿勢・表情計測手段
６  肌色サンプリング手段
７  肌色抽出パラメータ調整手段
８  肌色領域抽出手段
９  頭部領域抽出手段
１０  頭部領域輝度平均化手段
１１  画素選別手段
１２  部位検出手段
１３  初期位置設定手段
１４  部位追跡手段
１５  アフィン基底設定手段
１６  頭部回転量推定手段
１７  姿勢計測手段
１８  開閉状態計測手段
２０  サンプリングウィンドウ
２２  膨張マスク
２３  収縮マスク
３３  左目マスク
３４  右目マスク
３５  口マスク
５０  移動ベクトル
５３  矩形領域
５７  外接矩形
６４  カメラ画像平面
８０  ビデオカメラ
９０  キャラクタ制御装置
【図１】
2006053944.tif 000007
【図２】
2006053944.tif 000008
【図３】
2006053944.tif 000009
【図４】
2006053944.tif 000010
【図５】
2006053944.tif 000011
【図６】
2006053944.tif 000012
【図７】
2006053944.tif 000013
【図８】
2006053944.tif 000014
【図９】
2006053944.tif 000015
【図１０】
2006053944.tif 000016
【図１１】
2006053944.tif 000017
【図１２】
2006053944.tif 000018
【図１３】
2006053944.tif 000019
【図１４】
2006053944.tif 000020
【図１５】
2006053944.tif 000021
【図１６】
2006053944.tif 000022
【図１７】
2006053944.tif 000023
【図１８】
2006053944.tif 000024
【図１９】
2006053944.tif 000025
【図２０】
2006053944.tif 000026
【図２１】
2006053944.tif 000027
【図２２】
2006053944.tif 000028
【図２３】
2006053944.tif 000029
【図２４】
2006053944.tif 000030
【図２５】
2006053944.tif 000031
【図２６】
2006053944.tif 000032
【図２７】
2006053944.tif 000033
【図２８】
2006053944.tif 000034
【図２９】
2006053944.tif 000035
【図３０】
2006053944.tif 000036