(57)【要約】【課題】動画像のみから該動画像に含まれる手のひらの３次元の姿勢を推定する画像認識装置及びプログラムを提供する。【解決手段】本発明の画像認識装置は、動画像の画像フレーム中の手のひら画像部分を肌色判定処理を施して手のひらのシルエット画像を抽出し、該シルエット画像における手のひらの画像部分から最小外接多角形処理及び円形抽出フィルタ処理を施して指先の画像座標を取得する指先画像座標取得部１２と、動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、該基準画像平面における各指先の画像座標に対して、指先の画像座標の平面射影行列を生成する平面射影変換行列生成部１５と、前記平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から前記世界座標における手のひらの姿勢情報を生成する位置姿勢算出部１６とを備える。【選択図】図１
2010113530.tif 000002
【特許請求の範囲】
【請求項１】
動画像のみから該動画像に含まれる手のひらの３次元の姿勢を推定する画像認識装置であって、
動画像の画像フレーム中の手のひら画像部分を肌色判定処理を施して手のひらのシルエット画像を抽出し、該シルエット画像における手のひらの画像部分から最小外接多角形処理及び円形抽出フィルタ処理を施して指先の画像座標を取得する指先画像座標取得部と、
動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、該基準画像平面における指先の基準座標に対して、前記指先の画像座標の平面射影行列を生成する平面射影変換行列生成部と、
前記平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から前記世界座標における手のひらの姿勢情報を生成する位置姿勢算出部と、
を備えることを特徴とする画像認識装置。
【請求項２】
抽出した各指先に対応する特徴点の画像座標間の距離をそれぞれ比較して指先の種類を特定する指先種別判定部と、
前記手のひらのシルエット画像における手のひらの画像部分から、中指と各指の重心とを結ぶ線分方向に該重心から移動しながら、該線分と直交するシルエット画像成分を計数し、この計数値の減少傾向を追跡して手首近辺の特徴点の画像座標を決定する手首画像座標取得部とを更に備え、
前記平面射影変換行列生成部は、当該世界座標の１平面に位置する基準画像平面における各指先の基準座標と手首の基準座標に対して、前記手首付近の特徴点の画像座標の平面射影行列を生成することを特徴とする、請求項１に記載の画像認識装置。
【請求項３】
前記平面射影変換行列生成部は、前記基準画像平面上に仮想的な正方形を設定し、前記位置姿勢算出部は、該正方形の４つの頂点に対して平面射影変換行列を用いて射影変換を施し、この射影変換で得られる４つの頂点の画像座標に基づいて基準画像平面に対する当該透視投影行列を生成し、手のひらの姿勢を推定することを特徴とする、請求項１又は２に記載の画像認識装置。
【請求項４】
前記指先画像座標取得部は、処理対象の画像フレーム中から取得した各指先の画像座標が、５つの指先の画像座標として取得したか否かを判別する手段を有し、５つの指先の画像座標として取得していないと判別した場合に、当該動画像における別の画像フレームを処理対象とすることを特徴とする、請求項１〜３のいずれか一項に記載の画像認識装置。
【請求項５】
動画像のみから該動画像に含まれる手のひらの３次元の姿勢を推定する画像認識装置として構成するコンピュータに、
動画像の画像フレーム中の手のひら画像部分を肌色判定処理を施して手のひらのシルエット画像を抽出し、該シルエット画像における手のひらの画像部分から最小外接多角形処理及び円形抽出フィルタ処理を施して指先の画像座標を取得するステップと、
動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、該基準画像平面における指先の基準座標に対して、前記指先の画像座標の平面射影行列を生成するステップと、
前記平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から前記世界座標における手のひらの姿勢情報を生成するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラで撮像した映像から手のひらの姿勢を推定する技術に関し、特に、手のひらの姿勢を推定する画像認識装置及びプログラムに関する。
【背景技術】
【０００２】
拡張現実感技術は、カメラの映像をコンピュータに入力し、その映像の中にＣＧ（Ｃｏｍｐｕｔｅｒ Ｇｒａｐｈｉｃ）などで生成した仮想物体を合成する技術である。従来、このような拡張現実感技術のシステムでは、マーカーを用いて、その位置や姿勢を推定し、マーカー上に仮想物体を合成する手法がとられていた（例えば、非特許文献１参照）。
【０００３】
また、マーカーを用いる代わりに２台のカメラを用いて、手の形状や姿勢を推定する技術も知られている（例えば、非特許文献２）。この文献では、マーカーを用いる代わりに、推定した手のひら上に仮想物体を合成することも開示している。
【０００４】
一方、マーカーを用いる代わりに１台のカメラを用いて、多数の方向から撮影した手のひらの画像を基準画像平面とし、これら基準画像平面の特徴点を予め学習しておき、システムに入力される画像の特徴点との比較を行うことにより手のひらの姿勢を推定する技術も知られている（例えば、非特許文献３参照）。
【０００５】
これらの技術以外にも、２次元画像中において、指の本数を推定する技術や、一本の指の画像上での方向を推定する技術が知られている（例えば、特許文献１、特許文献２参照）。
【０００６】
【非特許文献１】加藤  博一、「拡張現実感システム構築ツールＡＲＴｏｏｌＫｉｔの開発」、電子情報通信学会技術報告、Ｖｏｌ．１０１，Ｎｏ．６５２，ＰＲＭＵ，２００１−２３２，２００２年２月、ｐｐ．７９−８６
【非特許文献２】齋藤  真希子、佐藤  洋一、小池  英樹、「Ｐｅｒｃｅｐｔｕａｌ  Ｇｌｏｖｅ:多視点画像に基づく手形状・姿勢の実時間入力とその応用」、社団法人情報処理学会論文誌、Ｖｏ１．４３，Ｎｏ．１，２００２年１月、ｐｐ．１８５−１９４
【非特許文献３】加藤  喬、近藤  祐介、甲藤  二郎、「ＨａｎｄｙＡＲ：手をインターフェースとした拡張現実感システムＨａｎｄｙＡＲの開発」、ＦＩＴ２００５，Ｉ−０４５，２００５年９月、ｐｐ．１１１−１１２
【特許文献１】特許第３８６３８０９号
【特許文献２】特開平８−７６９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
マーカーを用いて映像を撮像し、映像中の物体の位置を推定する従来からの技術の典型的な例を図９に示す。図９において、物体１０３には、例えば正方形の４つの頂点を有する平面パターンのようなマーカー１０１が付与されている。カメラ１０２は、この物体１０３を撮像し、姿勢位置推定装置１００は、カメラ１０２で撮像した画像を入力する画像入力部１１１と、撮像画像中のマーカー１０１の位置を検出するマーカー検出部１１２と、マーカー１０１の位置及び姿勢を算出する位置・姿勢算出部１１３とを備える。この位置・姿勢算出部１１３は、撮像画像中のマーカー１０１の位置情報を入力するため、実際の３次元空間における物体の位置及び姿勢を特定することができ、更には仮想物体を合成するＣＧへと応用することができる。しかしながら、この技術では、マーカーがカメラの撮像画像に写り込むために現実感が損なわれる。
【０００８】
また、マーカーを用いる代わりに１台又は２台のカメラで多数方向の画像を取得する技術は、結果的に、多数の方向から撮影した手のひらの画像に基づいて、複数の基準画像平面を生成して解析又は学習しておくことになるため処理負担が大きく、且つ事実上のシステム構成も大規模なものとなるという課題がある。
【０００９】
特許文献１又は特許文献２に開示される技術では、２次元画像中において、指の本数を推定する技術や、一本の指の画像上での方向を推定することが可能であるとしても、手のひらの３次元の姿勢の推定を行うための情報が不足しており、手のひらの３次元の姿勢の推定へと応用することは容易ではない。
【００１０】
本発明の目的は、上記の問題を鑑みて、マーカーを用いることなく、事前学習することなく、一台のカメラで撮影した映像から手のひらの姿勢を推定する画像認識装置及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の画像認識装置は、動画像のみから該動画像に含まれる手のひらの３次元の姿勢を推定する画像認識装置であって、動画像の画像フレーム中の手のひら画像部分を肌色判定処理を施して手のひらのシルエット画像を抽出し、該シルエット画像における手のひらの画像部分から最小外接多角形処理及び円形抽出フィルタ処理を施して指先の画像座標を取得する指先画像座標取得部と、動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、該基準画像平面における各指先の画像座標に対して、前記指先の画像座標の平面射影行列を生成する平面射影変換行列生成部と、前記平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から前記世界座標における手のひらの姿勢情報を生成する位置姿勢算出部とを備えることを特徴とする。
【００１２】
また、本発明の画像認識装置において、抽出した各指先に対応する特徴点の画像座標間の距離をそれぞれ比較して指先の種類を特定する指先種別判定部と、前記手のひらのシルエット画像における手のひらの画像部分から、中指と各指の重心とを結ぶ線分方向に該重心から移動しながら、該線分と直交するシルエット画像成分を計数し、この計数値の減少傾向を追跡して手首近辺の特徴点の画像座標を決定する手首画像座標取得部とを更に備え、前記平面射影変換行列生成部は、当該世界座標の１平面に位置する基準画像平面における各指先の基準座標と手首の基準座標に対して、前記手首付近の特徴点の画像座標の平面射影行列を生成することを特徴とする。
【００１３】
また、本発明の画像認識装置において、前記平面射影変換行列生成部は、前記基準画像平面上に仮想的な正方形を設定し、前記位置姿勢算出部は、該正方形の４つの頂点に対して平面射影変換行列を用いて射影変換を施し、この射影変換で得られる４つの頂点の画像座標に基づいて基準画像平面に対する当該透視投影行列を生成し、手のひらの姿勢を推定することを特徴とする。
【００１４】
また、本発明の画像認識装置において、前記指先画像座標取得部は、処理対象の画像フレーム中から取得した各指先の画像座標が、５つの指先の画像座標として取得したか否かを判別する手段を有し、５つの指先の画像座標として取得していないと判別した場合に、当該動画像における別の画像フレームを処理対象とすることを特徴とする。
【００１５】
更に、本発明は、動画像のみから該動画像に含まれる手のひらの３次元の姿勢を推定する画像認識装置として構成するコンピュータに、動画像の画像フレーム中の手のひら画像部分を肌色判定処理を施して手のひらのシルエット画像を抽出し、該シルエット画像における手のひらの画像部分から最小外接多角形処理及び円形抽出フィルタ処理を施して指先の画像座標を取得するステップと、動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、該基準画像平面における各指先の基準座標に対して、前記指先の画像座標の平面射影行列を生成するステップと、前記平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から前記世界座標における手のひらの姿勢情報を生成するステップとを実行させるためのプログラムとしても特徴付けられる。
【発明の効果】
【００１６】
本発明によれば、マーカーを用いる代わりに、手のひらの指先抽出と指先種別の判定を用いて姿勢を推定することができる。
【００１７】
更に、推定した手のひらの位置や姿勢の情報を利用した仮想空間中の才ブジェクトの操作、又は電子ゲームなど様々な分野での応用も期待できる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明による実施例の画像認識装置を説明する。尚、同様な構成要素には、同一の参照番号を付している。
【００１９】
図１に、本発明による実施例の画像認識装置を用いたシステム例を示す。図１において、定義された世界座標に置かれる物理物体３（肌色以外）とその上部に位置する手のひら４とを含む被写体をカメラ２で撮像し、本実施例の画像認識装置１で、カメラ２で撮像した画像から手のひらの３次元の位置及び姿勢を推定する様子を示している。尚、物理物体３の有無は本願発明とは無関係であり、背景の一部として考えてよいが、本実施例の画像認識装置は、後述するように手のひら検出のために肌色抽出を行うため、背景及び物理物体は肌色以外の色を有するものとする。
【００２０】
画像認識装置１は、画像入力部１１と、指先画像座標取得部１２と、指先種別判定部１３と、手首画像座標取得部１４と、平面射影変換行列生成部１５と、位置姿勢算出部１６と、基準画像平面発生部１７とを備える。
【００２１】
画像入力部１１は、カメラ２で撮像した動画像を入力して、画像フレーム単位で指先画像座標取得部１２に送出する。
【００２２】
指先画像座標取得部１２は、動画像の画像フレーム中の手のひら画像部分を後述する肌色判定処理を施して手のひらのシルエット画像を抽出し、シルエット画像における手のひらの画像部分から円形抽出フィルタ処理を施して指先の画像座標を取得し、手のひら画像部分と指先の画像座標の情報とを指先種別判定部１３及び手首画像座標取得部１４に送出する。尚、指先画像座標取得部１２は、後述するように、手のひらのシルエット画像に外接する多角形の頂点の画像座標を求め、該多角形頂点座標に円形抽出フィルタを施すことにより指先以外の頂点を排除することで、手のひら画像部分からの指先の画像座標を取得する。
【００２３】
指先種別判定部１３は、入力した手のひら画像部分とその指先の画像座標の情報とから、抽出した各指先に対応する特徴点の画像座標間の距離をそれぞれ比較して指先の種類を特定し、入力した手のひら画像部分の指先画像と対応付けて、平面射影変換行列生成部１５に送出する。尚、指先種別判定部１３は、手のひらのシルエット画像から抽出した指先の画像座標について、各画像座標間の距離に基づいて指の種別を特定する。
【００２４】
手首画像座標取得部１４は、入力した手のひら画像部分とその指先位置の画像座標の情報とから、中指と各指の重心とを結ぶ線分方向に該重心から移動しながら、該線分と直交するシルエット画像成分を計数し、この計数値の減少傾向を追跡して、手首近辺の特徴点を決定し、この手首近辺の特徴点の画像座標を取得し、入力した手のひら画像部分の手首画像と対応付けて、平面射影変換行列生成部１５に送出する。尚、手首画像座標取得部１４は、処理対象の画像フレーム中から取得した各指先の画像座標が、５つの指先の画像座標として取得したか否かを判別し、５つの指先の画像座標として取得していないと判別した場合に、当該動画像における別の画像フレームを処理対象とする機能を有する。ここで云う「別の画像フレーム」とは、当該動画像における処理対象の画像フレームに連続する次の画像フレームでもよいし、所定数の後の画像フレームでもよいし、用途によっては、無秩序に別の画像フレームであってもよい。
【００２５】
平面射影変換行列生成部１５は、手のひら画像部分、指の種類毎の指先座標、及び好適には手首近辺の画像座標を入力するとともに、動画像の世界座標及び当該世界座標の１平面に位置する基準画像平面を設定し、基準画像平面発生部１７から供給される当該世界座標の１平面に位置する手のひらを正面から撮影して得られる基準画像平面における指先の基準座標に対して、指先の画像座標（及び手首の画像座標）の平面射影行列を算出して生成し、位置姿勢算出部１６に送出する。尚、後述するように、平面射影変換行列生成部１５は、手のひら画像部分、及び指の種類毎の指先座標のみから、基準画像平面発生部１７から供給される基準画像平面に対する指先の画像座標の平面射影行列を算出することができ、手首近辺の画像座標を更に用いるのは、平面射影行列のパラメータの計算精度を高めるためである。
【００２６】
位置姿勢算出部１６は、平面射影行列から基準画像平面に対する透視投影行列を生成し、動画像に含まれる手のひらの画像から世界座標における手のひらの姿勢情報を生成し、外部に送出する。外部に送出される手のひらの姿勢情報は、カメラ２で撮像した動画像を用いて、ＣＧなどの自然な合成映像を生成するのに利用することができる。
【００２７】
基準画像平面発生部１７は、任意のカメラを用いて正面から撮影して得られる手のひらの基準画像平面を平面射影変換行列生成部１５に送出する。特に、平面射影変換行列生成部１５は、この基準画像平面に、仮想的な正方形を設定し、位置姿勢算出部１６は、この正方形の４つの頂点に対して平面射影変換行列を用いて射影変換を施して透視投影行列を生成し、射影変換で得られる４つの頂点の画像座標に基づいてカメラ２で撮像する「手のひら」の姿勢を推定する。従って、基準画像平面発生部１７が送出する画像の「手のひら」は、代表的な任意に設定したものでよく、カメラ２で撮像する「手のひら」と同一物である必要はない。
【００２８】
図２に、本発明による実施例の画像認識装置を用いたシステム例における処理環境を示す。カメラ２で撮像する被写体の「手のひら」４は、手のひら部分４ａと手首近傍部分４ｂとを含み、手首と衣服の袖部５とは区別する。また、本実施例の画像認識装置１は、被写体の「手のひら」４に対して、世界座標（Ｘｗ，Ｙｗ，Ｚｗ）を設定し、世界座標（Ｘｗ，Ｙｗ）平面に、基準画像平面発生部１７が発生する基準画像平面ＲＳを設定する。一方、カメラ２は、カメラ座標（Ｘｃ，Ｙｃ，Ｚｃ）で定義され、カメラ２で撮像した画像座標ＣＳ（ｕ，ｖ）を有する。従って、本実施例の画像認識装置１は、世界座標（Ｘｗ，Ｙｗ，Ｚｗ）における基準画像平面ＲＳと画像座標（ｕ，ｖ）との間の変換行列（後述する平面射影変換行列で表すことができる）から、任意に変化する世界座標（Ｘｗ，Ｙｗ，Ｚｗ）の被写体の「手のひら」４と基準画像平面ＲＳとの間の変換行列（後述する透視投影行列で表すことができる）を特定し、世界座標（Ｘｗ，Ｙｗ，Ｚｗ）の被写体の「手のひら」４と画像座標（ｕ，ｖ）との間の射影変換を実現し、カメラ２で撮像する３次元の「手のひら」の姿勢を推定する。
【００２９】
尚、画像データと画像座標の対応付け、及び画像データと指先種別の対応付けは、任意のフォーマットで実現することができ、例えば画像の画素データ毎に座標データと指先種別の情報（５本の指であるので３ｂｉｔで表現できる）の付帯情報を付与するフォーマットで実現することができる。
【００３０】
次に、本発明による実施例の画像認識装置における、より詳細な動作を説明する。
【００３１】
図３に、本発明による実施例の画像認識装置の動作を表すフローチャートを示す。ステップＳ１で、画像入力部１１により、カメラ２で撮像した動画像を入力して、画像フレーム単位で指先画像座標取得部１２に送出する。
【００３２】
ステップＳ２で、指先画像座標取得部１２により、まず、カメラ映像の１つの画像フレーム中の手のひら領域を抜き出すために、色空間において肌色領域に対する閾値処理を施す。次に、指先画像座標取得部１２により、抜き出した手のひら領域の外接矩形を求める。更に、指先画像座標取得部１２により、その外接矩形の頂点近傍に円形抽出フィルタを施して指先のみを取得する。ステップＳ２の動作は、「処理１」として詳細に後述する。
【００３３】
ステップＳ３で、指先画像座標取得部１２により、処理対象の画像フレームに対して５つの指先の画像座標を取得できたか否かを判定し、指先の画像座標を取得できない場合は、例えば次の画像フレームに対してステップＳ２に戻り、指先の画像座標を取得できた場合は、現行の処理対象の画像フレームについてステップＳ３に移行する。尚、５つの指先の画像座標を取得できたか否かを判定するには、取得した指先の画像座標の各々が、所定の距離以上離れており、且つ取得した指先の画像座標が５つ存在するか否かで判定する。この指先の画像座標を取得できたか否かの情報は、画像フレーム単位で識別可能なフラグを付して記録するように用いてもよい。例えば撮像した動画像を動画ファイルとして記録する用途に本実施例の画像認識装置を適用した場合、このフラグ値を参照すればこの指先の画像座標を取得できたか否かの情報を直ちに識別できるようになる。
【００３４】
ステップＳ４で、指先種別判定部１３により、ステップＳ２で取得した指先の画像座標から、指先間距離の大小により、取得した指先座標がそれぞれ何指の座標なのかを特定する。ステップＳ４の動作は、「処理２」として詳細に後述する。
【００３５】
ステップＳ５で、手首画像座標取得部１４により、ステップＳ２で得られる中指の指先の画像座標から５つの指の重心画像座標に向かう直線上において、直線に直交する方向の肌色領域の幅を探索し、手首近傍の幅の変化から手首部分を推定し、推定した手首近辺の画像座標を取得する。尚、ステップＳ５の処理は、後述する平面射影行列のパラメータの計算精度を高めるためであるため、必ずしも行う必要は無い。また、ステップＳ５の処理は、ステップＳ４の処理の前に行うことや、ステップＳ４の処理と並行して行ってもよい。ステップＳ５の動作は、「処理３」として詳細に後述する。
【００３６】
ステップＳ６で、平面射影変換行列生成部１５により、ステップＳ２，Ｓ４，Ｓ５で得られた指先の画像座標（及び手首の画像座標）と、基準画像平面発生部１７から供給される手のひらの基準画像平面上の指先及び手首の基準座標とで構成される連立方程式を解いて、基準画像平面に対する指先の画像座標（及び手首の画像座標）の平面射影変換行列の各パラメータを決定する。ステップＳ６の動作は、「処理４」として詳細に後述する。
【００３７】
ステップ７で、位置姿勢算出部１６により、手のひらの基準画像平面上に仮想的に設置した正方形の４頂点の画像座標をステップＳ６で求めた平面射影変換行列で変換処理し、この変換処理で得られる４つの画像座標、及びカメラキャリブレーションにより予め求めた中心射影行列により、空間中の正方形の向かい合う辺を表す２つの直線の方程式を構成し、その２つの直線の法線の外積から平面を規定するｘベクトルを導出する。さらに、位置姿勢算出部１６により、空間中の正方形の向かい合う辺を表すもう一組の２つの直線の方程式を構成し、その２つの直線の法線の外積から平面を規定するｙベクトルを導出する。ここで得られるｘベクトル及びｙベクトルは直交しており、位置姿勢算出部１６によって、ｘベクトル及びｙベクトルの外積からｚベクトルを導出することにより、手のひらの姿勢を決定することができる。ｘベクトル、ｙベクトル、ｚベクトル、及びカメラキャリブレーションにより予め求めた中心射影行列から、手のひらの基準画像平面ＲＳに対するカメラ２の位置ベクトルを求めることができる。ステップＳ７の動作は、「処理５」として詳細に後述する。
【００３８】
以下、各処理を更に詳細に説明する。まず、処理１を説明する。
【００３９】
[処理１：指先の画像座標の取得]
（１）肌色領域の抽出
指先画像座標取得部１２は、まず、図４（ａ）に例示するカメラ２で撮影した画像フレームのＲＧＢ値を、ＨＱＶ表色系に変換し、ＨＱＶ空間内での閾値処理により肌色領域を抽出する。抽出の結果、図４（ｂ）のような手のひらのシルエット画像が得られる。
【００４０】
（２）指先の画像座標の取得
指先画像座標取得部１２は、次に、図４（ｂ）のシルエット画像に対して、最小外接多角形を求める処理を施す。２値画像の所定の幾何形状に対して最小外接多角形を求める処理は、計算幾何学として知られる最小外接多角形処理の関数を用いるのが好適である（例えば、参考文献：奈良先端科学技術大学院大学ＯｐｅｎＣＶプログラミングブック制作チーム／著、「ＯｐｅｎＣＶプログラミングブック」、毎日コミュニケーションズ、２００７年９月発行）。
【００４１】
一例として、この最小外接多角形処理は、下記のようなＧｒａｈａｍ’ｓ Ｓｃａｎアルゴリズムを用いて得られる。
（１）所定の幾何形状の外縁を所定間隔を有する複数のサンプリング点で表す。
（２）複数のサンプリング点のうち、ｖ座標が最小の点をＰ０と定める。
（３）Ｐ０から見た他のサンプリング点に対して、角度の低い順（又は高い順）にＰ１，Ｐ２，Ｐ３，…と定める。ただし、ほぼ同じ角度に複数のサンプリング点が位置する場合は、最遠点を選定する。
（４）まず、選定したサンプリング点Ｐ０，Ｐ１，Ｐ２を直線で結ぶ。
（５）続いて、サンプリング点Ｐ１，Ｐ２，Ｐ３を結んだ場合の角度（内角）が１８０度以上ならＰ２を接点とせずに、サンプリング点Ｐ１，Ｐ３を直接結ぶ。
（６）全サンプリング点を直線で結ぶまで、次のサンプリング点に対して上記の（５）を順次繰り返す。
【００４２】
図５（ａ）に最小外接多角形処理を施した一例を示す（理解を容易にするために、実画像の手のひら上に多角形を示す）。
【００４３】
図５（ａ）の○印は、外接多角形の各頂点の画像座標を示しているが、図４（ｂ）のシルエット画像に対して最小外接多角形を求めたために、衣服の袖と肌との境界部分も外接多角形の頂点として認識されてしまう。そこで、これらの頂点のうち、指先に対応する頂点を特定する必要がある。一般に、指先は丸みがあり、部分的に円形として近似できる。そこで、指先画像座標取得部１２は、円形抽出フィルタを外接多角形の頂点近傍に施す。具体的には、指先画像座標取得部１２は、予め定めたサイズの円形パターンを各頂点近傍に適用し、当該円形内で所定の頻度内に収まる位置を５箇所検出する。５箇所の位置を検出できない場合には、予め定めた別の円形パターンを適用する。この動作を予め定めた複数の円形パターンについて５箇所検出するまで繰り返し、検出できなかった場合は、別の画像フレームについての処理１に戻るようにする。円形抽出フィルタの出力画像の例を図５（ｂ）に示す。指先画像座標取得部１２は、各頂点近傍において得られる円形抽出フィルタの出力の最大値を、対象とする頂点のフィルタ出力値とする。つまり、指先画像座標取得部１２は、各頂点で得られるフィルタ出力値の最大値を選択し、この最大値を各指先の画像座標とする。その検出例を図５（ｃ）に示す（理解を容易にするために、実画像の手のひら上に検出例を示す）。
【００４４】
円形抽出フィルタについては、任意の既知の技法を用いることができる（例えば、参考文献：池谷、冨山、岩舘、「多視点映像における移動物体抽出とそのＣＧ表現に関する検討」、電子情報通信学会画像工学研究会、Ｖｏｌ．１０５，Ｎｏ．６１１，２００６年２月、ｐｐ．１６５−１７０参照）。
【００４５】
次に、処理２を説明する。
【００４６】
[処理２：指先の画像座標と指との対応付け]
処理１では、指先に対応する５つの画像座標を求めた。処理２では、実際の指との対応付けを行う。
【００４７】
指先種別判定部１３は、５つの画像座標のデータを、外接多角形上の任意の順の配列に特定し、画像の画素データ毎に座標データと指先種別の情報（５本の指であるので３ｂｉｔで表現できる）の付帯情報を付与する所定のフォーマットで保持する。図６に例示するように、指先の画像座標をＦ１〜Ｆ５の配列で保持する。まず、５つの画像座標の全ての組み合わせで、画像上の直線距離を計算する。最も大きな距離値が得られた直線の端に親指と小指の指先があるとして設定する。例えば、図６では、親指及び小指の候補は、Ｆ３，Ｆ４となる。次に、Ｆ３とＦ２、Ｆ４とＦ５の距離を計算して比較する。距離の大きい方が親指と人差し指間の距離であるとして定めると、Ｆ４が親指であることが特定できる。親指を特定できたので、順に他の指の配列を割り当てる。実際の指との対応付けは、手首の画像座標の取得に用いる。
【００４８】
次に、処理３を説明する。
【００４９】
[処理３：手首の画像座標の取得]
処理２の結果、手首画像座標取得部１４は、得られる「中指」の画像座標、及び５つの指の「重心」の画像座標を手がかりに、手首位置を推定する。図７に示すように、「中指」の画像座標から「重心」の画像座標に向かう方向を第１探索方向（図示する「探索方向１」）とし、手のひらのシルエット画像中で第１探索方向（図示する「探索方向２」）に直交する方向を第２探索方向とする。探索の際には、可能な限り探索処理時間を軽減することを考慮したとき、「重心」の画像座標から第１探索方向に向かって、「中指」の画像座標と「重心」の画像座標の距離だけ離れた点「Ａ」を探索出発点とするのが好適である。
【００５０】
出発点「Ａ」から第１探索方向に向かって１画素づつ位置を移動しながら、各位置で第２探索方向の直線上における手のひらのシルエット画像の領域の画素数を計数する。出発点「Ａ」から第１探索方向に向かってこの探索を続けることにより、第２探索方向における計数値は序々に小さくなり、手首を過ぎるとこの計数値の減少傾向がなくなってほぼ一定値となる。この性質に着目し、一定値になり始める第１探索方向の地点における第２探索方向での手のひらのシルエット画像の境界を手首位置として決定する。手首には２つの特徴点が得られる（図７に示す２つの○印）。この手首の特徴点の左右の対応付けは、小指や親指の指先の特徴点からの距離の大きさから区別することができる。
【００５１】
次に、図２を再び参照しながら、処理４を説明する。
【００５２】
[処理４：平面射影変換行列の生成]
一般的に、空間中の点Ｑの３次元位置を世界座標（Ｘｗ，Ｙｗ，Ｚｗ）、及びカメラ座標を（Ｘｃ，Ｙｃ，Ｚｃ）で与えた場合、両者の関係は式（１）で表される。
【００５３】
【数１】
2010113530.tif 000003
【００５４】
Ｆは、カメラ２の姿勢を表す３×４の行列であり、３×３の回転行列Ｒ、及びカメラ光学主点Ｏｐから世界座標原点までの３次元移動ベクトルＴで表すことができ、式（２）のように構成される。
【００５５】
【数２】
2010113530.tif 000004
【００５６】
カメラ座標（Ｘｃ，Ｙｃ，Ｚｃ）で点Ｑの位置を表すと、カメラ２の撮像画像上の点Ｑの投影点の画像座標（ｕ，ｖ）は式（３）により得られる。
【００５７】
【数３】
2010113530.tif 000005
【００５８】
ここで、ｗはカメラ光学主点Ｏｐから点Ｑまでの距離である。Ｐはカメラ２の中心射影を表す３×３の行列であり、次式のように表される。
【００５９】
【数４】
2010113530.tif 000006
【００６０】
以上の知識を本実施例に適用する。本実施例では基準画像平面ＲＳを平面物体と仮定し、基準画像平面ＲＳを世界座標の（Ｘｗ，Ｙｗ）平面を対応させる。まず、式（１）を式（３）に代入すると、世界座標で表された任意の点をカメラ画像上に投影する式（５）を得る。
【００６１】
【数５】
2010113530.tif 000007
【００６２】
Ｈは、式（２）及び式（４）の積で得られる３×４の行列である。世界座標の（Ｘｗ，Ｙｗ）平面上、即ち基準画像平面ＲＳ上の点ではＺｗ＝０であり、式（５）の行列Ｈの３列目は削除することができ、下記の式が得られる。
【００６３】
【数６】
2010113530.tif 000008
【００６４】
式（６）のｈｎｍ（ｎ＝１〜３，ｍ＝１〜４）は、行列Ｈ’のｎ行ｍ列の要素を示す。式（６）のｈｎｍで構成される３×３行列が、求めたい平面射影変換行列Ｈ’である。本実施例において、基準画像平面ＲＳの指先や手首の基準座標を（Ｘｗ，Ｙｗ）、処理１〜処理３で得られるカメラ画像上の１つの指先の画像座標を（ｕ，ｖ）として、式（６）に代入すると、Ｈ’に関する方程式が２つ得られる。従って、指先で５点の特徴点があるので１０個の方程式を作ることができ、手首で２点の特徴点があるので、指先の５点を加えて合計７点について、１４個の方程式を作ることができる。式（６）の来知数は９であるが、一つを１としても基準画像平面ＲＳに対する変位量を求めることになるので、実際にはｈ３４＝１として、それ以外の８つを来知数とする。従って、８つを来知数を決定するのに、１０個又は１４個の方程式を連立して、一般化逆行列を用いることにより、Ｈ’の最小二乗解を求めることができる。
【００６５】
このようにして、平面射影変換行列生成部１５は、指先の画像座標（及び手首の画像座標）と、基準画像平面発生部１７から供給される手のひらの基準画像平面上の指先及び手首の基準座標とで構成される連立方程式を解いて、基準画像平面ＲＳに対する指先の画像座標（及び手首の画像座標）を含む平面射影変換行列（式（６））の各パラメータｈｎｍを決定する。
【００６６】
次に、図２を再び参照しながら、処理５を説明する。
【００６７】
［処理５：手のひらの姿勢と位置の算出］
平面射影行列Ｈ’は基準画像平面ＲＳに対する手のひらの姿勢と位置を表しているが、この平面射影行列Ｈ’から世界座標の手のひらの姿勢を直接算出するのは容易ではない。そこで、位置姿勢算出部１６は、基準画像平面発生部１７から供給される基準画像平面ＲＳについて、図８（ａ）に示すように手のひらの基準画像平面上に仮想的な正方形を置き、その４つの頂点を平面射影行列Ｈ’で一旦射影変換し、世界座標の手のひらにおける対応する４つの頂点とカメラ画像上の投影点の座標との間の透視投影行列を求める。
【００６８】
具体的には、基準画像平面ＲＳ上の正方形の頂点を（Ｘｗ（ｉ），Ｙｗ（ｉ））、ｉ＝１〜４とすると、投影点の画像座標（ｕ（ｉ），ｖ（ｉ））は、式（６）から次式のように計算できる。
【００６９】
【数７】
2010113530.tif 000009
【００７０】
図８（ｂ）に画像上に投影された４つの頂点を示す。ここで、（ｕ（１），ｖ（１））から（ｕ（２），ｖ（２））に向かう画像上の直線Ｌ１の方程式は、式（８）のようになる。
【００７１】
【数８】
2010113530.tif 000010
【００７２】
ここで、ａ１，ｂ１，ｃ１の係数は、（ｕ（１），ｖ（１））と（ｕ（２），ｖ（２））から計算できる。また、式（４）を式（３）に代入して、カメラ座標と画像フレームの画像座標の関係を表すと、式（９）のようになる。
【００７３】
【数９】
2010113530.tif 000011
【００７４】
式（９）をｕ，ｖについて解き、式（８）に代入すると、式（１０）が得られる。
【００７５】
【数１０】
2010113530.tif 000012
【００７６】
式（１０）は、（ｕ（１），ｖ（１））と（ｕ（２），ｖ（２））、及びカメラ座標原点を結んだ三角形の平面方程式であり、Ｘｃ，Ｙｃ，Ｚｃにかかる係数は、平面の法線を表している。カメラ座標の原点を規定するカメラキャリブレーションを行うことによりＰｎｍが得られるので、法線ベクトルを計算することができる。
【００７７】
また、（ｕ（３），ｖ（３））から（ｕ（４），ｖ（４））で定義される直線Ｌ２についても、同様に法線ベクトルを算出する。
【００７８】
即ち、（ｕ（３），ｖ（３））から（ｕ（４），ｖ（４））に向かう画像上の直線Ｌ２の方程式は、式（１１）となる。
【００７９】
【数１１】
2010113530.tif 000013
【００８０】
ａ２，ｂ２，ｃ２の係数は、（ｕ（３），ｖ（３））と（ｕ（４），ｖ（４））から計算できる。
【００８１】
従って、式（９）をｕ，ｖについて解き、式（１１）に代入すると、式（１２）を得ることができる。
【００８２】
【数１２】
2010113530.tif 000014
【００８３】
式（１０）及び式（１２）の各係数で表された２つの法線べクトルの外積で得られる３次元ベクトルは、仮想的な正方形、即ち基準画像平面ＲＳの３次元空間中の面内ベクトルを表し、３次元空間中の面内ベクトルのうちのｘべクトルとなる。
【００８４】
式（１０）及び式（１２）と同様の計算を、（ｕ（１），ｖ（１））から（ｕ（４），ｖ（４））に向かう直線Ｌ３と（ｕ（２），ｖ（２））から（ｕ（３），ｖ（３））に向かう直線Ｌ４とについて、式（９）を用いて行い、これらの各係数で表された２つの法線べクトルの外積で得られる３次元ベクトルは、仮想的な正方形、即ち基準画像平面の３次元空間中の面内ベクトル（ｙべクトル）が得られる。
【００８５】
ｘベクトルとｙベクトルは、基準画像平面ＲＳ内で直交しているため、この双方のベクトルの外積から、基準画像平面ＲＳに直交するｚベクトルが得られる。これらの３つのベクトルが手のひらの姿勢を表し、式（３）の回転行列Ｒの行ベクトルとなる。
【００８６】
カメラの位置は、式（３）における（Ｔｘ，Ｔｙ，Ｔｚ）である。式（１）〜式（４）を用いて、世界座標から画像座標への変換式を式（１３）のように生成する。
【００８７】
【数１３】
2010113530.tif 000015
【００８８】
ここで、行列Ｐは例えばカメラ座標の原点を規定するカメラキャリブレーションを行うことにより事前に特定でき、回転行列Ｒも基準画像平面ＲＳに対するｘ，ｙ，ｚベクトルとして既に得られているから、仮想正方形の４つの頂点について、基準画像平面上の（Ｘｗ（ｉ），Ｙｗ（ｉ））と投影点の画像座標（ｕ（ｉ），ｖ（ｉ））を既知の情報として代入すると、８つの方程式が得られる。（Ｔｘ，Ｔｙ，Ｔｚ）を未知数として、この８つの連立方程式を解くことにより、基準画像平面に対するカメラの位置（Ｔｘ，Ｔｙ，Ｔｚ）を計算できる。これにより、式（１３）で表される透視投影行列を特定でき、世界座標の手のひらの姿勢を、基準画像平面ＲＳに対する手のひらの姿勢と位置に対する変位ベクトルとして、カメラ座標の手のひらの画像から算出することができるようになる。
【００８９】
以上の処理１〜処理５により、カメラ２で撮影した手のひらの画像から、３次元空間の手のひらの姿勢と位置を求めることができる。
【００９０】
本発明の一態様として、画像認識装置１をコンピュータとして構成することができ、前述した画像入力部１１、指先画像座標取得部１２、指先種別判定部１３、手首画像座標取得部１４、平面射影変換行列生成部１５、位置姿勢算出部１６、及び基準画像平面発生部１７の機能を実現させるためのプログラムは、各コンピュータの内部又は外部に備えられる記憶部（図示せず）に記憶される。また、基準画像平面発生部１７が用いる基準画像平面の指先、手首、及び正方形の計１１点の座標データと世界座標の設定情報もこの記憶部に記憶しておくことができる。このような記憶部は、外付けハードディスクなどの外部記憶装置、或いはＲＯＭ又はＲＡＭなどの内部記憶装置で実現することができる。プログラムを実行する制御部は、中央演算処理装置（ＣＰＵ）などで実現することができる。即ち、ＣＰＵが、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、記憶部から読み込んで、コンピュータ上で各装置を実現することができる。ここで、いずれかの手段の機能をハードウェアの全部又は一部で実現しても良い。
【００９１】
上述した実施例において、画像認識装置１の機能を実現するための処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくこともできる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録装置、半導体メモリ等どのようなものでもよい。
【００９２】
また、この処理内容を記述したプログラムを、例えばＤＶＤ又はＣＤ‐ＲＯＭなどの可搬型記録媒体の販売、譲渡、貸与等により流通させることができるほか、そのようなプログラムを、例えばＩＰなどのネットワーク上にあるサーバの記憶領域に記憶しておき、ネットワークを介してサーバから他のコンピュータにそのプログラムを転送することにより、流通させることができる。
【００９３】
また、そのようなプログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラム又はサーバから転送されたプログラムを、一旦、各コンピュータの記憶部に記憶することができる。また、このプログラムの別の実施態様として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、更に、このコンピュータにサーバからプログラムが転送される度に、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。尚、本態様におけるプログラムには、電子計算機の処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないが、コンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００９４】
上述の実施例の画像認識装置１は、カメラで撮像した画像を入力して処理する代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。例えば、画像認識装置１は、動画像をカメラ２を介して入力する代わりに、ネットワーク又は記憶媒体を介して得られる動画ファイルについても、行列Ｐが分かっている場合には、撮像画像と世界座標との間の行列Ｐを任意の初期値を設定して、「手のひら」の画像の姿勢を推定することができる。或いは又、画像認識装置１は、カメラ付き携帯電話にも適用することができる。従って、本発明は、上述の実施例によって制限するものと解するべきではなく、特許請求の範囲によってのみ制限される。
【産業上の利用可能性】
【００９５】
本発明によれば、マーカーを用いる代わりに、手のひらの指先抽出と指先種別の判定を用いて姿勢を推定するので、カメラの撮像画像にマーカーが映り込むこともなく、ＣＧなどの自然な合成映像を得るのに役立つ。例えば、放送番組での利用や、個人で映像コンテンツを作成する際に簡易なバーチャル効果装置として利用できる。また、マーカーが写り込むことのないカメラの撮像画像を得て手のひらの姿勢を推定することができるので、手のひらを利用したコンピュータ・インタラクションのインターフェースとしても利用することができる。更に、推定した手のひらの位置や姿勢の情報を利用した仮想空間中の才ブジェクトの操作、又は電子ゲームなど様々な分野での応用も期待でき、手のひらの位置や姿勢の推定した情報を利用する任意の用途に有用である。
【図面の簡単な説明】
【００９６】
【図１】本発明による実施例の画像認識装置を用いたシステム例を示す図である。
【図２】本発明による実施例の画像認識装置を用いたシステム例における処理環境を示す図である。
【図３】本発明による実施例の画像認識装置の動作を表すフローチャートである。
【図４】本発明による実施例の画像認識装置の動作説明図である。
【図５】本発明による実施例の画像認識装置の動作説明図である。
【図６】本発明による実施例の画像認識装置の動作説明図である。
【図７】本発明による実施例の画像認識装置の動作説明図である。
【図８】本発明による実施例の画像認識装置の動作説明図である。
【図９】従来の画像認識装置を用いたシステム例を示す図である。
【符号の説明】
【００９７】
１  画像認識装置
２  カメラ
３  物理物体
４  手のひら
４ａ  手のひら部分
４ｂ  手首近傍部分
５  衣服の袖
１１  画像入力部
１２  指先画像座標取得部
１３  指先種別判定部
１４  手首画像座標取得部
１５  平面射影変換行列生成部
１６  位置姿勢算出部
１７  基準画像平面発生部
１００  姿勢位置推定装置
１０１  マーカー
１０２  カメラ
１０３  物体
１１１  画像入力部
１１２  マーカー検出部
１１３  位置・姿勢算出部
【図１】
2010113530.tif 000016
【図２】
2010113530.tif 000017
【図３】
2010113530.tif 000018
【図９】
2010113530.tif 000019
【図４】
2010113530.tif 000020
【図５】
2010113530.tif 000021
【図６】
2010113530.tif 000022
【図７】
2010113530.tif 000023
【図８】
2010113530.tif 000024