(57)【特許請求の範囲】
【請求項１】
利用者を撮像した撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段と、
前記撮像画像から前記利用者の顔の向きを検出する向き検出手段と、
前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段と、
前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段と、
前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段と、
を備えた画像処理装置。
【請求項２】
前記表示画面は予め定められた複数個の画面領域により構成されると共に、前記基準位置は、前記複数個の画面領域の各々に個別に設定されており、
前記第２制御手段は、前記複数個の画面領域のうち、前記向き検出手段により前記予め定められた顔の向きが検出されたときの前記利用者の顔の位置に対応する画面領域に対して設定されている基準位置に、前記画像が配置されるように前記画像の表示を制御する
請求項１に記載の画像処理装置。
【請求項３】
利用者を撮像する撮像手段と、
前記撮像手段により撮像された撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段と、
前記撮像画像から前記利用者の顔の向きを検出する向き検出手段と、
前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段と、
前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段と、
前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段と、
を備えた画像処理システム。
【請求項４】
利用者を撮像した撮像画像から利用者の顔の特徴部を検出すると共に、前記利用者の顔の向きを検出し、
前記撮像画像から前記利用者の予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶し、
前記記憶手段に記憶された最新の基準点を基準とした前記特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御し、
前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する、
画像処理方法。
【請求項５】
コンピュータを、
利用者を撮像した撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段、
前記撮像画像から前記利用者の顔の向きを検出する向き検出手段、
前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段、
前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段、及び
前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、利用者の顔の特徴部の動きを認識する画像処理装置、画像処理システム、画像処理方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、例えば、図８に示すように、カメラ２１０等の撮像手段で、利用者の顔を撮像し、撮像した画像に基づいて、顔の中の鼻や口等の動きを認識し、その動き応じて表示画面２１６中に表示された画像（ポインタ等）２１８を移動させる手法が提案されている（例えば、特許文献１及び特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平７−９３０８９号公報
【特許文献２】特開２００９−３１３６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の手法によれば、ポインタ２１８を動かしている際に、利用者が（画像２１８を動かす目的ではなく）体勢を変えた場合にも、ポインタ２１８が移動してしまうため、不便が生じることがあった。
【０００５】
具体的には、例えば、利用者が姿勢を正した状態から、椅子に深く腰をかけて左下に沈んだ体勢をとった場合には、その体勢変更によって、認識対象の鼻等が動いてしまうため、その動きと共にポインタ２１８が表示画面２１６の左端に移動してしまい、利用者が、その体勢のままポインタ２１８を表示画面２１６の右上に移動させようとして通常通りの量だけ顔を動かしても、意図する位置まで届かない、或いは利用者がポインタ２１８を見失う等の問題が生じていた。
【０００６】
本発明は、上述した課題を解決するために提案されたものであり、利用者が顔を動かすことにより表示画面中の画像を移動させている際に、利用者が体勢等を変更しても、容易に表示画面の基準位置に該画像を配置させることができ、体勢変更後も画像の移動を容易に継続することができる画像処理装置、画像処理システム、画像処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の画像処理装置は、利用者を撮像した撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段と、前記撮像画像から前記利用者の顔の向きを検出する向き検出手段と、前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段と、前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段と、前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段と、を備えている。
【０００８】
また、本発明の画像処理システムは、利用者を撮像する撮像手段と、前記撮像手段により撮像された撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段と、前記撮像画像から前記利用者の顔の向きを検出する向き検出手段と、前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段と、前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段と、前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段と、を備えている。
【０００９】
また、本発明の画像処理方法は、利用者を撮像した撮像画像から利用者の顔の特徴部を検出すると共に、前記利用者の顔の向きを検出し、前記撮像画像から前記利用者の予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶し、前記記憶手段に記憶された最新の基準点を基準とした前記特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御し、前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御するものである。
【００１０】
また、本発明のプログラムは、コンピュータを、利用者を撮像した撮像画像から該利用者の顔の特徴部を検出する特徴部検出手段、前記撮像画像から前記利用者の顔の向きを検出する向き検出手段、前記向き検出手段によって予め定められた顔の向きが検出される毎に、該予め定められた顔の向きが検出されたときに前記特徴部検出手段により検出された特徴部の位置を最新の基準点として識別可能に記憶手段に記憶する記憶処理手段、前記記憶手段に記憶された最新の基準点を基準とした前記特徴部検出手段により検出された特徴部の相対位置に基づいて、表示画面に表示された予め定められた画像が移動するように該画像の表示を制御する第１制御手段、及び前記向き検出手段により前記予め定められた顔の向きが検出されたときに、前記表示画面の予め定められた基準位置に前記画像が配置されるように前記画像の表示を制御する第２制御手段、として機能させるためのプログラムである。
【発明の効果】
【００１１】
以上説明したように、本発明によれば、利用者が顔を動かすことにより表示画面中の画像を移動させている際に、利用者が体勢等を変更しても、容易に表示画面の基準位置に該画像を配置させることができ、体勢変更後も画像の移動を容易に継続することができる、という効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】実施の形態に係る画像処理システム、画像処理システムに接続された処理装置及びモニタを示す図である。
【図２】画像処理装置の構成の一例を示す図である。
【図３】画像処理装置で行われる顔検出処理の流れを示すフローチャートの一例である。
【図４】顔及び顔パーツ検出について説明する説明図である。
【図５】検出された利用者の顔パーツ領域及び顔領域を模式的に示すと共に、該検出結果に応じたポインタの表示位置を模式的に示す図である。
【図６】（Ａ）は顔を傾けた状態で顔全体を移動させたときのポインタの表示制御例を示す図であり、（Ｂ）は、顔が正面を向いた状態で顔全体を移動させたときのポインタの表示制御例を示す図である。
【図７】モニタの表示画面を複数個の画面領域により構成し、基準位置が複数個の画面領域の各々に個別に設定されている様子を示す図である。
【図８】利用者が顔を動かすことによりポインタを動かす従来の技術を説明するための説明図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【００１４】
図１には、本実施の形態に係る画像処理システム１と、画像処理システム１に接続された処理装置１４と、モニタ１６とが示されている。
【００１５】
画像処理システム１は、カメラ１０及び画像処理装置１２を備えている。画像処理システム１において、まず、カメラ１０により利用者の顔を認識対象物３０として撮像し（図１では、利用者の後頭部が図示されているが、本実施の形態では、カメラ１０に向けられた利用者の顔が認識対象物３０とされる）、画像処理装置１２において撮像された画像から利用者の顔を検出し、検出結果を処理装置１４に出力する。処理装置１４は、出力された検出結果に基づいて、表示手段としてのモニタ１６の表示画面１６ａに表示する画像（本実施の形態ではポインタ）１８を移動する。処理装置１４は、例えば、パーソナルコンピュータであってもよい。
【００１６】
図２には、画像処理装置１２の構成が示されている。
【００１７】
画像処理装置１２は、ＣＰＵ（Central Processing Unit）２０、ＲＯＭ（Read Only Memory）２２、及びＲＡＭ（Random Access Memory）２４を備え、それらがバス（不図示）を介して相互に接続されて構成された一般的なコンピュータにより構成されている。更に又、画像処理装置１２は、画像処理用メモリ２６を備えている。
【００１８】
ＲＯＭ２２に記憶されているプログラムはＣＰＵ２０の起動時にＲＡＭ２４にロードされ、ＣＰＵ２０がＲＯＭ２２に記憶されたプログラムを実行することで、画像処理装置１２全体を制御すると共に後述する顔検出処理（図３も参照。）を実行するよう構成されている。ＲＯＭ２２はフラッシュメモリにより構成されていてもよい。なお、ＣＰＵ２０が実行するプログラム格納用の記憶媒体はＲＯＭ２２に限定されない。例えば、ＨＤＤ(Hard Disk Drive)であってもよいし、着脱可能なＵＳＢメモリであってもよいし、通信ネットワークに接続された記憶装置であってもよい。
【００１９】
画像処理用メモリ２６には、カメラ１０で撮像された撮像画像を表わす画像データが一時的に記憶される。ＣＰＵ２０は、画像処理用メモリ２６に記憶された画像データを対象として画像処理を行って、処理結果（検出結果）を処理装置１４に出力する。
【００２０】
なお、図示は省略するが、処理装置１４は、ＣＰＵ、ＲＡＭ、ＲＯＭ、及び各種設定を指定するための指定手段を備えて構成されている。システム管理者は、例えば、モニタ１６の表示画面１６ａの大きさや、顔検出の精度等の各種設定を指定手段により指定し、指定された設定は、処理装置１４から画像処理装置１２に入力される。画像処理装置１２は、入力された設定に従って動作する。例えば、入力された表示画面１６ａの大きさの情報に基づいて、処理装置１４に対して出力する認識結果の座標値のスケールを調整するようにしてもよい。また、入力された顔検出の精度を示す精度情報が、例えば、精度優先であるか、速度優先であるかに応じて、顔検出の際の解像度を調整したり、或いは検出する顔サイズに制限を設けたりしてもよい。なお、こうした設定は一例であって、これらに限定されるものではない。
【００２１】
なお、処理装置１４に画像処理装置１２からカメラ１０で撮像された撮像画像の画像データが入力されるようにしてもよい。これにより、モニタ１６において、カメラ１０で撮像された撮像画像の表示も可能となる。なお、撮像画像は、モニタ１６の表示画面１６ａに表示してもよいし、表示しなくてもよい。
【００２２】
撮像画像を撮影するカメラ１０は、例えば、ＣＣＤ（Charge Coupled Device）やＣＭＯＳ（Complementary Metal Oxide Semiconductor）等を含んでおり、被写体を連続的に撮像可能に構成されている。撮像された撮像画像を表わす画像データは、逐次画像処理装置１２に入力され、画像処理用メモリ２６に一時的に格納される。
【００２３】
図３は、画像処理装置１２で行われる顔検出処理の流れを示すフローチャートの一例である。本処理は、顔検出処理の開始指令が処理装置１４から入力された場合など、本システムの機能が開始されたときに起動される。なお、下記ステップ１１６が開始されて利用者が顔を動かすまでは、モニタ１６の表示画面１６ａの予め定められた基準位置（本実施の形態ではモニタ１６の表示画面１６ａの中心の座標位置）にポインタ１８が表示された状態が継続するものとする。また、以下で、単に「位置」といった場合には、ＸＹ座標系における絶対位置を示し、「何らかの点を基準とした位置」といった場合、或いは、「相対位置」といった場合には、ＸＹ座標系において何らかの点を基準とする相対位置を示すものとする。
【００２４】
ステップ１００では、カメラ１０から入力された画像データを画像処理用メモリ２６から読み出し、該画像データに画像処理を施すことで、該画像データが表わす撮像画像から顔があると予測される予測顔検出領域４０を求める（顔領域予測）。ここで処理した撮像画像を初期画像と呼称する。
【００２５】
ここでは、Hue(色相)と、Sat(彩度)と、Lum(輝度)とを用いて、顔の位置と大きさを予測する。具体的には、色相、彩度及び輝度の各々について、撮像画像に含まれる人の顔（肌色）に相当する画素値（色相値、彩度値、輝度値）を有する画素の度数分布を示すヒストグラムをＸ軸及びＹ軸の各々の方向で生成し、色相、彩度及び輝度の各々のヒストグラムの論理和をとって、人の顔が存在すると予測される領域を求める。このような処理により、図４（Ａ）に示すように、認識対象物３０に対して予測顔検出領域４０が定まる。
【００２６】
続いて、ステップ１０２では、上記予測顔検出領域４０から、目、鼻、口（以下、顔パーツと称する）があると予測される予測顔パーツ領域４２を求める（顔パーツ領域予測）。これは、人の顔であれば、顔の上部の左右に目があり、中心付近に鼻があり、下部に口がある、といったように、顔に対する各顔パーツのおおよその相対位置は定まるため、この相対的な位置情報を予めＲＯＭ２２に記憶しておき、この位置情報と、上記予測顔検出領域４０の顔の大きさとに応じて予測する。これにより、図４（Ｂ）に示すように、予測顔検出領域４０に対して、目、鼻、口に対応した予測顔パーツ領域４２が求められる。なお、ここでは、目、鼻、口を顔パーツの具体例として説明するが、これに限定されるものではなく、これ以外の顔パーツとして、例えば、眉が含まれていてもよい。
【００２７】
ステップ１０４では、初期画像における上記予測顔パーツ領域４２から、各顔パーツ（顔パーツ領域４４）を検出する。例えば、ステップ１００と同様に、目を検出する場合には、目があると予測される予測顔パーツ領域４２において、色相、彩度及び輝度の各々について、撮像画像に含まれる目に相当する画素値（色相値、彩度値、輝度値）を有する画素の度数分布を示すヒストグラムをＸ軸及びＹ軸の各々の方向で生成し、色相、彩度及び輝度の各々のヒストグラムの論理和をとって、目が存在すると予測される領域を求める。或いは、パターンマッチング等の手法を用いてもよい。これにより、図４（Ｃ）に示すように、各顔パーツについて、顔パーツ領域４４が検出される。
【００２８】
ステップ１０６では、初期画像から全ての顔パーツが検出できたか否かを判断する。ここで否定判断した場合には、利用者の顔が、カメラ１０に対して正面を向いていなかったと判断されるため、再度ステップ１００に戻り、上記処理を繰り返す。
【００２９】
ステップ１０６で肯定判断した場合には、利用者の顔がカメラ１０に対して正面を向いた状態で顔パーツの各々が検出されたと判断されるため、ステップ１０８に進み、検出した顔パーツ領域４４を示す領域情報をＲＡＭ２４に記憶して設定する。領域情報には位置を示す情報や大きさを示す情報などが含まれる。この領域情報は、後述するトラッキング中、変化がある毎に逐次更新される。
【００３０】
続いて、ステップ１１０では、設定された顔パーツ領域４４の各々に基づいて、顔領域４６を設定する。前述したように、人の顔であれば、顔の上部の左右に目があり、中心付近に鼻があり、下部に口がある、といった、各顔パーツの顔に対するおおよその相対位置は定まるため、該位置情報に従って、上記ステップ１０２とは逆に、顔パーツ領域４４から正確な顔の領域を求める。そして、検出した顔領域４６を示す領域情報をＲＡＭ２４に記憶して設定する。なお、この領域情報も後述するトラッキング中、変化がある毎に更新される。
【００３１】
ステップ１１２では、上記初期画像から検出された複数の顔パーツ領域４４のうち、予め定められた顔パーツ領域４４（本実施の形態では、鼻領域とする）の位置（本実施の形態では、重心位置）を基準点４８とし、該基準点４８の位置情報をＲＡＭ２４に記憶して設定する。鼻領域は本願発明の顔の特徴部に対応する。
【００３２】
なお、ここでは、顔の特徴部として鼻領域を例に挙げたが、特徴部は、口領域であってもよいし、左目領域、或いは右目領域であってもよい。また、左目領域と右目領域に挟まれた領域（例えば、左目領域の左端と、右目領域の右端の中間点を含む領域或いは中間点そのもの）であってもよい。
【００３３】
また、鼻領域の位置を鼻領域の重心位置としたが、これに限定されず、例えば、鼻領域の左上端部の位置としてもよいし、右下端部の位置としてもよいし、鼻が有する２つの外鼻孔の中間点の位置としてもよい。
【００３４】
ステップ１１４では、上記設定した基準点４８の上記顔領域４６に対する相対位置の情報（以下、基準点相対位置情報）をＲＡＭ２４に記憶して保持する。初期画像から全ての顔パーツの顔パーツ領域４４が検出された場合には、利用者はカメラ１０に対して正面を向いていると考えられ、従って、以下では、この基準点４８の相対位置を、利用者がカメラ１０に対して正面を向いた状態における相対位置であるものとして取り扱う。
【００３５】
これにより基準点更新領域５０が定まる（図６も参照。）。本実施の形態では、基準点更新領域５０は、検出された最新の顔領域４６に対する基準点相対位置情報が示す相対位置から定まる位置を重心位置とする予め定められた大きさの正方形状の領域である。なお、基準点更新領域５０は、顔がカメラ１０に対して正面を向いているか否かを判断するために用いられる領域であるが、顔が正面を向いていることが検出されたときには後述するように基準点４８が更新されるため、ここでは、該領域を基準点更新領域と呼称している。
【００３６】
ステップ１１６では、顔パーツ及び顔のトラッキングを開始する。ここで、顔パーツ及び顔のトラッキングとは、カメラ１０で連続的に或いは間欠的に撮影された撮影画像の各々から、上記検出した顔パーツ領域４４及び顔領域４６を検出して追跡することをいう。利用者の顔が動けば、それに従って、顔パーツ領域４４及び顔領域４６の位置も移動する。トラッキング方法は特に限定されず、例えば、顔パーツ領域４４及び顔領域４６について周知の輪郭追跡処理を行ってトラッキングしてもよいし、ステップ１０４及びステップ１１０の処理を繰り返し行ってトラッキングしてもよい。
【００３７】
ステップ１１８で、トラッキング期間中に検出した顔パーツ領域４４及び顔領域４６に基づいて、顔が正面を向いているか否かを判断する。この判断方法の具体例については後述する。ここで、顔が正面を向いていないと判断した場合には、ステップ１２０に進み、顔パーツ領域４４のいずれかが不検出になったか否かを判断する。ここで、上記顔パーツ（左目、右目、鼻、口）のいずれかの領域が検出されなくなったと判断した場合には、利用者の顔を見失ったとして、ステップ１２４でトラッキングを中止して、ステップ１００に戻り、再度利用者の顔領域及び顔パーツの検出を行う。このとき、ポインタ１８の表示位置が基準位置でない場合には、基準位置に戻るように制御される。
【００３８】
本実施の形態では、顔パーツのうち鼻のみをトラッキングするだけでは、利用者とカメラ１０との間を人が通った場合等においては鼻領域を誤検出する場合もあることから、本実施の形態では各顔パーツを検出するようにして、少なくとも１つが検出されなかった場合に、ステップ１００に戻るようにしている。
【００３９】
しかしながら、例えば、誤検出の可能性が低くなるような運用（例えば、利用者とカメラ１０との間を人が通らない、等）においては、「少なくとも２つ」或いは「少なくとも３つ」が検出されなくなった場合に、ステップ１００に戻るようにしてもよい。また、顔パーツのうち少なくともポインタ１８を操作するために用いられる顔パーツ領域４４（ここでは鼻領域）のみが検出されていればステップ１００に戻らずに継続してポインタ１８の操作が可能なように構成してもよい。
【００４０】
一方、ステップ１２０で否定判断した場合には、ステップ１２４に進み、上記ＲＡＭ２４に記憶されている最新の基準点４８を基準とした鼻領域の位置（基準点４８に対する鼻領域の相対位置）を求め、該相対位置を示す情報（以下、相対位置情報）を、処理装置１４に入力する。ここでは、鼻領域の位置を、鼻領域の重心位置としているが、前述したように重心位置に限定されないのはもちろんである。処理装置１４は、表示画面１６ａの該入力された相対位置情報に応じた座標位置にポインタ１８を移動させる。このように、画像処理装置１２は、相対位置情報を処理装置１４に入力することにより、モニタ１６の表示画面１６ａに表示されたポインタ１８が移動するように制御している。
【００４１】
ここで、トラッキングによるポインタ１８の表示制御について図５を参照して説明する。図５は、検出された利用者の顔パーツ領域４４及び顔領域４６を模式的に示すと共に、該検出結果に応じたポインタ１８の表示結果を模式的に示す図である。
【００４２】
利用者が正面を向いた状態にあり、まだ顔を動かしていない初期段階では、図５（Ａ）に示すように、モニタ１６の表示画面１６ａの基準位置にポインタ１８が配置される。
【００４３】
ここで、利用者が自分の顔を、カメラ１０に対して向かって右側に回転させて顔の向きを変更したとする。これにより、図５（Ｂ）に示すように、鼻領域の位置４８ａが移動する。画像処理装置１２は処理装置１４に対して、この移動に応じた相対位置情報を入力し、処理装置１４は、該相対位置情報に応じて、表示画面１６ａの基準位置から相対位置情報に応じた距離だけ右側の位置にポインタ１８を移動させる。
【００４４】
また、利用者が上側を向いた場合には、図５（Ｃ）に示すように、鼻領域の位置４８ｂが移動する。画像処理装置１２は処理装置１４に対して、この移動に応じた相対位置情報を入力し、処理装置１４は、該相対位置情報に応じて、表示画面１６ａの基準位置から相対位置情報に応じた距離だけ上側の位置にポインタ１８を移動させる。
【００４５】
なお、本実施の形態では、顔の向きを変えるだけでも、ポインタ１８を移動させることができるが、顔を傾けた状態で顔全体を移動させることによっても、鼻領域を移動させることができる。後者の場合、顔全体の動きと顔の傾きの両方により鼻領域が移動することとなるため、各々の動きによる移動量が加算された移動量でポインタ１８を移動させることができる。従って、利用者は、細かいポインタ操作或いは移動量の少ないポインタ操作を行う場合には、顔の向きを正面向きから異なる向きに傾けることでポインタ操作を行えばよいし、移動量の大きなポインタ操作を行う場合には、顔を該異なる向きに傾けた状態で、顔全体を移動させることでポインタ操作を行えばよい。
【００４６】
ステップ１２４の後は、ステップ１１８に戻る。
【００４７】
一方、ステップ１１８で、顔が正面を向いていると判断した場合には、ステップ１２６に進み、現在の鼻領域の重心位置の位置情報を基準点４８として、ＲＡＭ２４に記憶して設定する。ここでは、ＲＡＭ２４の基準点４８の位置情報を上書きして更新してもよいし、既に記憶されている位置情報とは別の記憶領域に記憶してもよい。ただし、後者の場合には、最新の基準点４８の位置情報にフラグを立てる等して、最新の基準点４８を識別可能に構成することが必要である。
【００４８】
ステップ１２８では、ポインタ１８の位置をリセットする。ここでは、ポインタ１８が、モニタ１６の表示画面１６ａの基準位置に配置されるように基準位置に相当する座標情報（或いはリセット命令）を処理装置１４に入力して制御する。これにより、ポインタ１８は、表示画面１６ａの基準位置に配置される。そして、ステップ１１８に戻る。
【００４９】
すなわち、本実施の形態では、利用者が正面を向いている状態では、利用者がいくら顔を移動させて鼻領域の位置（ここでは重心位置）を移動させたとしても、基準点４８がその移動と共に更新されるため、ポインタ１８の表示位置は表示画面１６ａの基準位置から動かないのである。一方、利用者が正面方向とは異なる方向に顔を動かして顔の向きを変えた場合には、鼻領域の位置の移動に伴ってポインタ１８の表示位置も移動することになる。
【００５０】
なお、本実施の形態において、利用者の顔がカメラ１０に対して正面を向いているか否かの判断は次のようにして行う。
【００５１】
前述したように、ＲＡＭ２４に記憶されている基準点相対位置情報と顔領域４６の位置から基準点更新領域５０が定まるが、上記トラッキングにより検出される現在の鼻領域の重心位置が該基準点更新領域５０外に存在する場合（図６（Ａ）の上段の図も参照。）には、顔が正面を向いていないと判断し、鼻領域の重心位置が該基準点更新領域５０以内に存在する場合（図６（Ｂ）の上段の図も参照。）には、顔が正面を向いていないと判断する。
【００５２】
なお、図３に示すフローチャートに従えば、図６（Ａ）に示すように、顔が正面を向いておらず且つ各顔パーツが検出されている状態で認識対象物３０が移動して（図６（Ａ）の３０ａも参照。）、鼻領域の位置が変化した場合には、ステップ１１８、１２０で否定判断されるため、最新の基準点４８に対する変化後の鼻領域の位置４８ａの相対位置に応じてポインタ１８の位置が移動する。
【００５３】
また、図６（Ｂ）に示すように、顔が正面を向いた状態で、鼻領域の位置が変化した場合（顔全体がカメラ１０に対して正面を向いたまま移動した場合。図６（Ｂ）の３０ｂも参照。）には、ステップ１１８で肯定判断されるため、変化後の鼻領域の位置４８ｂが最新の基準点４８となるように更新されて、ポインタ１８は、表示画面１６ａの基準位置に配置されて表示される。すなわち、ポインタ１８を基準位置に静止させたままとすることができる。
【００５４】
以上説明したように、本実施の形態によれば、予め定められた顔の向きが検出されたときに、基準点４８を更新し、且つ表示画面１６ａの予め定められた基準位置にポインタ１８が配置されるように制御するよう構成したため、利用者が体勢等を変更しても、利用者が手を使って何らかのリセットボタン等を押下することなく、容易に表示画面の基準位置に該画像を配置させることができ、体勢変更後も画像の移動を容易に継続することができる。
【００５５】
なお、本実施の形態では、ポインタ１８の基準位置を、表示画面１６ａの中心の位置としたが、これに限定されず、例えば、中心から若干ずれた位置であってもよいし、画像処理システム１が適用されるアプリケーションに応じて予め定めてもよいし、管理者が手動で指定してもよく、特に限定されない。
【００５６】
また、本実施の形態では、画像処理用メモリ２６を、カメラ１０で撮像された撮像画像を表わす画像データを一時的に記憶するためのメモリとする例について説明したが、これに限定されるものではない。例えば、画像処理用メモリ２６が、画像処理の過程で発生した情報を記憶する一時記憶領域として使用されるメモリであってもよい。より具体的には、例えば、撮像画像から顔があると予測される予測顔検出領域を求める際に取り出した、色相、彩度及び輝度の各々の情報を一時的に記憶するためのメモリとして使用する等である。
【００５７】
また、撮像画像を表わす画像データ等は、例えば、ＣＰＵを構成するＬＳＩ内で保持することもできるため、顔パーツ検出処理等の処理過程で過去の画像データを参照しないアルゴリズムとする場合には、画像処理用メモリ２６を設けない構成とすることもできる。
【００５８】
また、本実施の形態では、利用者がカメラ１０に対して正面を向いた状態を、「予め定められた向き」として説明したが、これに限定されるものではなく、正面向きとは異なる向きとしてもよい。
【００５９】
また、ポインタ１８を表示するモニタ１６は、パーソナルコンピュータ等に接続されるモニタ１６であってもよいし、広告等の用途で街頭に設置され、通行人等が閲覧可能な大型のモニタ１６としてもよい。
【００６０】
後者の場合において、例えば、図７に示すように、モニタ１６の表示画面１６ａが複数個の画面領域１７により構成され、上記基準位置が、該複数個の画面領域１７の各々に個別に設定されているようにしてもよい。この場合、ポインタ１８を基準位置に配置する際に、どの基準位置に配置するかは、例えば、以下のようにして定めても良い。
【００６１】
予め、複数個の画面領域を示す複数の識別情報の各々に対応させて、基準位置の情報と顔領域の位置を示す位置情報とを登録したテーブルを予めＲＯＭ２２に記憶しておく。
【００６２】
そして、上記複数個の画面領域のうち、カメラ１０に対して正面方向を向いている顔の向きが検出されたときの該利用者の顔領域４６の位置を示す位置情報に対応する画面領域を上記テーブルを参照して抽出し、該抽出した画面領域に対応して上記テーブルに記憶されている基準位置にポインタ１８が配置されるように、該基準位置を示す情報を処理装置１４に入力して、表示を制御するようにしてもよい。
【００６３】
これにより、例えば、上記テーブルで、顔領域の位置と画面領域の位置とが略同じような位置となるように対応付けて登録しておけば、顔検出により、利用者の顔領域４６が、カメラ１０の撮像画像の右端に近い領域に存在することが検出された場合において、利用者が正面を向いたことが検出されたときには、上記複数個の画面領域のうち、右端に配置された画面領域の基準位置にポインタ１８が配置されるように制御することができる。これにより、利用者の顔から遠い画面領域の基準位置にポインタ１８が配置されることを抑制でき、利用者がポインタ１８を見失うことを防止できる。
【００６４】
なお、上記実施の形態では、ポインタ１８を操作するときに用いられる顔パーツ領域４４と、顔の向きを検出するために用いられる基準点更新領域５０の元となる顔パーツ領域４４とが共に鼻領域である場合について説明したが、これに限定されない。例えば、ポインタ１８を操作するときに用いられる顔パーツ領域４４と、顔の向きを検出するために用いられる基準点更新領域５０の元となる顔パーツ領域４４とが異なるものであってもよい。例えば、ポインタ１８を操作するときに用いられる顔パーツ領域４４は鼻領域とし、顔の向きを検出するために用いられる基準点更新領域５０の元となる顔パーツ領域４４は口領域とする、等である。この場合、例えば、ステップ１１４において、検出された口領域の重心位置の顔領域４６に対する相対位置の情報（以下、顔パーツ相対位置情報）をＲＡＭ２４に記憶して保持しておき、基準点更新領域５０を、検出された最新の顔領域４６に対する上記顔パーツ相対位置情報が示す相対位置から定まる位置を重心位置とする予め定められた大きさの正方形状の領域としてもよい。そして、ステップ１１８では、検出された最新の口領域の重心位置が該基準点更新領域５０外か否かに応じて、利用者の顔が正面を向いているか否かを判断してもよい。一方、ポインタ１８の移動に用いられる基準点４８は鼻領域の重心位置として、上記実施の形態と同様に制御することができる。
【００６５】
更にまた、顔の向きを検出するために用いられる基準点更新領域５０を、異なる２つの顔パーツ領域４４の各々の位置（例えば重心位置）の中間点を重心位置とする、予め定められた大きさの領域としてもよい。
【００６６】
また、基準点更新領域５０は正方形状でなくてもよく、長方形状であってもよいし、円形状であってもよい。
【００６７】
更に又、顔の向きを検出するための手法は上記で説明した例に限定されない。例えば、特開２００３−１４１５５１号公報に記載されている手法を用いてもよい。この手法を簡便に説明すると、カメラで人物の顔を撮影して得た画像データを入力して、この画像データと顔の向きに関する情報が予め記憶されている複数の顔向きテンプレートとを比較して、その画像データに撮影されている顔の向きを計算するか、又は、この画像データの特徴点を抽出してその特徴点の位置関係から顔の向きを計算する顔向き計算方法であって、３次元空間の回転における一つの回転軸を身体の中心軸とし、この中心軸回りの回転である回旋の回転角をψとし、他の２つの回転軸回りの回転角をθ，φとした場合の回転角ψ，θ，φで顔の向きを出力するものであり、上記入力された画像データの中から、最も頻度の高い顔の向きを正面向きと定義すると共に、該定義された正面向きの顔に対しては、３つの回転角ψ，θ，φの全てについて０を出力し、上記入力された画像データの中から、上記中心軸を中心にのみ回転した顔に対しては、その回転角ψを出力し、他の２つの回転角θ，φについて０に近い値を出力するものである。これにより、回転角が全て０となれば、利用者が正面を向いていると判断し、それ以外であれば、顔の向きは正面を向いていないと判断することができる。
【００６８】
また、上記実施の形態では、カメラ１０と画像処理装置１２とを独立した装置として説明したが、カメラ１０と画像処理装置１２とを一体化したモジュールとして画像処理システム１を構成してもよい。更に、このモジュールが処理装置１４と共通の接続インタフェースを備え、該接続インタフェースを介して処理装置１４に対して着脱可能に構成されていてもよい。より具体的には、例えば、このモジュール及び処理装置１４の各々が、例えばＵＳＢ（ユニバーサルシリアルバス）インタフェースを備え、ＵＳＢインタフェースにより接続することで、利用者の顔を撮像してポインタの操作を行う機能の実行を可能とする構成してもよい。
【００６９】
なお、本実施の形態に係る画像処理システム１は、様々なアプリケーションに適用可能であり、例えば、上述した街頭の大型モニタで広告や標識等を表示するアプリケーションに適用してもよい。その際、例えば、利用者がモニタに近づいたことを検知したときに、上記図３に示す顔検出処理のプログラムが起動して、表示画面１６ａにポインタ１８が出現するように制御し、その後は、利用者が顔を上述したように動かすことでポインタ１８を移動させる。更に、例えば、ポインタ１８に移動により表示画面１６ａに表示されている広告の種別を指定し、表示させたい広告を切替える等のアプリケーション等にも適用できる。
【００７０】
このような構成によれば、例えば、買い物等により手がふさがっている利用者も、顔を動かせば、ポインタ１８を操作して表示の切り替えができるため、手を使って操作することなく所望の広告を閲覧することができ、操作性が格段に向上する。
【００７１】
更に又、パーソナルコンピュータを手が不自由な人が操作する場合にも、本実施の形態の画像処理システム１は有用である。手が不自由な人であっても、顔さえ動かせば、ポインタ１８を移動させることができるため、パソコン等を容易に操作することができる。
【００７２】
また、ポインタ１８を移動させて座標位置を指定する指定操作だけでなく、例えば、ジェスチャ操作等にも上記画像処理システム１を適用することも可能である。ジェスチャ操作は、例えば、ポインタ１８で１回丸を描いた場合には、クリック、ポインタ１８で２回丸を描いた場合には、ダブルクリック等のように、利用者が顔を動かして、ポインタ１８を移動させて、予め定められた軌跡を描くことで、何らかの命令を入力する操作をいう。このように、上記画像処理システム１は様々なアプリケーションに適用することができる。
【符号の説明】
【００７３】
１     画像処理システム
１０   カメラ
１２   画像処理装置
１４   処理装置
１６   モニタ
１６ａ 表示画面
１７   画面領域
１８   ポインタ
２０   ＣＰＵ
２２   ＲＯＭ
２４   ＲＡＭ
２６   画像処理用メモリ
３０   認識対象物
４０   予測顔検出領域
４２   予測顔パーツ領域
４４   顔パーツ領域
４６   顔領域
４８   基準点
５０   基準点更新領域
【図１】
0005951966.tif 000002
【図２】
0005951966.tif 000003
【図３】
0005951966.tif 000004
【図４】
0005951966.tif 000005
【図５】
0005951966.tif 000006
【図６】
0005951966.tif 000007
【図７】
0005951966.tif 000008
【図８】
0005951966.tif 000009