(57)【特許請求の範囲】
【請求項１】
人物の手の範囲を示す手領域が特定された手領域特定画像を入力し、前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における手のひら又は手の甲の中心位置を特定する中心特定部と、
前記中心特定部により特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定する半径決定部と、
前記中心特定部により特定された中心位置を中心とし、かつ、前記半径決定部により決定された半径を有する円を前記手領域特定画像上に描く描画部と、
前記描画部により描かれた円のうち前記手領域と重なる複数の円弧を特定し、特定された複数の円弧のうち、最大の長さを有する円弧の位置を前記手領域における手首の位置として決定する手首位置決定部と、
を備える画像認識装置。
【請求項２】
請求項１に記載の画像認識装置であって、
前記半径決定部は、前記中心特定部により特定された中心位置から前記手領域のエッジまでの最短距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定する画像認識装置。
【請求項３】
請求項２に記載の画像認識装置であって、
前記半径決定部は、前記最短距離に所定の係数の乗じて得た長さを、前記手領域特定画像上に描かれる円の半径として決定する画像認識装置。
【請求項４】
請求項２に記載の画像認識装置であって、
前記手領域特定画像において、複数の指先が特定されており、
前記半径決定部は、前記中心特定部により特定された中心位置に最も遠い指先を選択し、前記最短距離と前記中心位置から前記最も遠い指先までの距離とに基づいて、前記手領域特定画像上に描かれる円の半径を決定する画像認識装置。
【請求項５】
請求項１に記載の画像認識装置であって、
前記手領域特定画像において、複数の指先が特定されており、
前記半径決定部は、前記中心特定部により特定された中心位置から、前記複数の指先までのそれぞれの距離に基づいて、前記手領域特定画像に描かれる円の半径を決定する画像認識装置。
【請求項６】
請求項１に記載の画像認識装置であって、
前記半径決定部は、前記中心特定部により特定された中心位置と、前記中心位置から見て第１方向に位置する手領域のエッジとの間の第１距離を計算し、前記中心位置と、前記中心位置から見て前記第１方向と異なる第２方向に位置する前記手領域のエッジとの間の第２距離を計算し、前記第１距離と前記第２距離とに基づいて、前記手領域特定画像に描かれる円の半径を決定する画像認識装置。
【請求項７】
請求項１ないし請求項６のいずれかに記載の画像認識装置であって、
前記手領域特定画像において、複数の指先が特定されており、
前記画像認識装置は、さらに、
前記複数の指先のうち前記描画部により描画された円の外に位置する指先を、人物の指先として抽出する指先選択部、
を備える画像認識装置。
【請求項８】
請求項１ないし請求項６のいずれかに記載の画像認識装置であって、
前記手領域特定画像において、複数の指先が特定されており、
前記画像認識装置は、さらに、
前記複数の指先のうち、前記中心特定部により特定された中心位置から見て、前記手首位置決定部により決定された手首の位置に存在する指先を、人物の指先から除外する指先選択部、
を備える画像認識装置。
【請求項９】
人物の手の範囲を示す手領域が特定された手領域特定画像において、前記手領域内の手首の位置を特定する画像認識方法であって、
前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における手のひら又は手の甲の中心位置を特定するステップと、
特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定するステップと、
特定された中心位置を中心とし、かつ、決定された円の半径を有する円を前記手領域特定画像上に描くステップと、
描かれた円の円周のうち前記手領域と重なる複数の円弧を特定し、特定された複数の円弧のうち、最大の長さを有する円弧の位置を前記手領域における手首の位置として決定するステップと、
を備える画像認識方法。
【請求項１０】
人物の手の範囲を示す手領域が特定された手領域特定画像において、前記手領域内の手首の位置を特定する画像認識方法をコンピュータに実行させるプログラムであって、
前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における中心位置を特定するステップと、
特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定するステップと、
特定された中心位置を中心とし、かつ、決定された円の半径を有する円を前記手領域特定画像上に描くステップと、
描かれた円の円周のうち前記手領域と重なる複数の円弧を特定し、特定された複数の円弧のうち、最大の長さを有する円弧の位置を前記手領域における手首の位置として決定するステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像認識装置に関し、詳しくは、人物の手首の位置を検出する画像認識装置に関する。
【背景技術】
【０００２】
近年、様々な装置をジェスチャにより操作する方法が検討されている。例えば、ビデオの電源オフに対応する人間の手の形状として、ピースサインを予め対応付けておく。画像認識装置が、カメラにより撮影された画像からピースサインを検出した場合、ビデオは、画像認識装置の検出結果に応じて電源をオフにする。これにより、ユーザは、リモコンなどを用いなくても、ビデオなどの様々な機器を操作することが可能となる。
【０００３】
画像認識装置は、撮影画像において指先を検出し、検出した指先の位置に基づいて手の形状を認識する。具体的には、画像認識装置は、撮影画像内の肌色の画素を抽出することにより、撮影画像における肌色領域を特定する。画像認識装置は、一定の間隔で、肌色領域のエッジ上に位置する３つの画素を選択する。選択した３つの画素がなす角が鋭角である場合、画像認識装置は、選択した３つの画素が指先であると判断する。
【０００４】
しかし、このようにして特定した指先が、実際の指先ではない場合がある。例えば、手首及び洋服の袖口の位置関係によっては、鋭角が検出されることがある。また、撮影画像に含まれるノイズにより、実際の指先と異なる位置で鋭角が検出されることがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平９−１０２０４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従って、上記の方法で指先の位置を特定した場合、画像認識装置は、検出した指先が実際の指先に対応するか否かを判断しなければならない。例えば、画像認識装置は、撮影画像において手首の位置を特定し、特定した手首の位置を基準にすることで誤検出された指先を特定することができる。
【０００７】
上記特許文献１には、手首方向を推定する手形状認識方法が開示されている。この手形状認識方法は、肌色領域において得られる最大の長さの直線を基準軸として設定し、基準軸に平行な直線であり、かつ、肌色領域の重心を通る直線を重心線として設定する。この手形状認識方法は、重心線に垂直であり、かつ、重心を挟んで対向する２つの直線の長さを比較することにより、手首方向を推定する。
【０００８】
本発明の課題は、人間の手を含む画像において、手首の位置を特定することができる画像認識装置を提供することである。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、請求項１記載の発明は、画像認識装置であって、人物の手の範囲を示す手領域が特定された手領域特定画像を入力し、前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における手のひら又は手の甲の中心位置を特定する中心特定部と、前記中心特定部により特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定する半径決定部と、前記中心特定部により特定された中心位置を中心とし、かつ、前記半径決定部により決定された半径を有する円を前記手領域特定画像上に描く描画部と、前記描画部により描かれた円のうち前記手領域と重なる複数の円弧を特定し、特定した複数の円弧に基づいて、前記手領域における手首の位置を決定する手首位置決定部と、を備える。
【００１０】
請求項２記載の発明は、請求項１に記載の画像認識装置であって、前記手首位置決定部は、前記特定した複数の円弧のうち、最大の長さを有する円弧の位置を前記手領域における手首の位置として決定する。
【００１１】
請求項３記載の発明は、請求項１又は請求項２に記載の画像認識装置であって、前記半径決定部は、前記中心特定部により特定された中心位置から前記手領域のエッジまでの最短距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定する。
【００１２】
請求項４記載の発明は、請求項３に記載の画像認識装置であって、前記半径決定部は、前記最短距離に所定の係数の乗じて得た長さを、前記手領域特定画像上に描かれる円の半径として決定する。
【００１３】
請求項５記載の発明は、請求項３に記載の画像認識装置であって、前記手領域特定画像において、複数の指先が特定されており、前記半径決定部は、前記中心特定部により特定された中心位置に最も遠い指先を選択し、前記最短距離と前記中心位置から前記最も遠い指先までの距離とに基づいて、前記手領域特定画像上に描かれる円の半径を決定する。
【００１４】
請求項６記載の発明は、請求項２に記載の画像認識装置であって、前記手領域特定画像において、複数の指先が特定されており、前記半径決定部は、前記中心特定部により特定された中心位置から、前記複数の指先までのそれぞれの距離に基づいて、前記手領域特定画像に描かれる円の半径を決定する。
【００１５】
請求項７記載の発明は、請求項２に記載の画像認識装置であって、前記半径決定部は、前記中心特定部により特定された中心位置と、前記中心位置から見て第１方向に位置する手領域のエッジとの間の第１距離を計算し、前記中心位置と、前記中心位置から見て前記第１方向と異なる第２方向に位置する前記手領域のエッジとの間の第２距離を計算し、前記第１距離と前記第２距離とに基づいて、前記手領域特定画像に描かれる円の半径を決定する。
【００１６】
請求項８記載の発明は、請求項１ないし請求項７のいずれかに記載の画像認識装置であって、前記手領域特定画像において、複数の指先が特定されており、前記画像認識装置は、さらに、前記複数の指先のうち前記描画部により描画された円の外に位置する指先を、人物の指先として抽出する指先選択部、を備える。
【００１７】
請求項９記載の発明は、請求項１ないし請求項７のいずれかに記載の画像認識装置であって、前記手領域特定画像において、複数の指先が特定されており、前記画像認識装置は、さらに、前記複数の指先のうち、前記中心特定部により特定された中心位置から見て、前記手首位置決定部により決定された手首の位置に存在する指先を、人物の指先から除外する指先選択部、を備える。
【００１８】
請求項１０記載の発明は、人物の手の範囲を示す手領域が特定された手領域特定画像において、前記手領域内の手首の位置を特定する画像認識方法であって、前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における手のひら又は手の甲の中心位置を特定するステップと、特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定するステップと、特定された中心位置を中心とし、かつ、決定された円の半径を有する円を前記手領域特定画像上に描くステップと、描かれた円の円周のうち前記手領域と重なる複数の円弧を特定し、特定した複数の円弧に基づいて、前記手領域における手首の位置を決定するステップと、を備える。
【００１９】
請求項１１記載の発明は、人物の手の範囲を示す手領域が特定された手領域特定画像において、前記手領域内の手首の位置を特定する画像認識方法をコンピュータに実行させるプログラムであって、前記手領域特定画像において前記手領域に含まれる画素を用いて、前記手領域における中心位置を特定するステップと、特定された中心位置から前記手領域のエッジまでの距離に基づいて、前記手領域特定画像上に描かれる円の半径を決定するステップと、特定された中心位置を中心とし、かつ、決定された円の半径を有する円を前記手領域特定画像上に描くステップと、描かれた円の円周のうち前記手領域と重なる複数の円弧を特定し、特定した複数の円弧に基づいて、前記手領域における手首の位置を決定するステップと、を実行させる。
【発明の効果】
【００２０】
本発明に係る画像認識装置は、手領域が特定された手領域特定画像を入力し、手領域における手のひらの中心位置を特定する。画像認識装置は、特定した中心位置から手領域のエッジまでの距離に基づいて、手領域特定画像上に描かれる円の半径を決定する。画像認識装置は、決定した半径を有する円を描画する。画像認識装置は、描画された円において手領域と重複する複数の円弧を検出し、検出した複数の円弧の長さに基づいて、手領域における円弧の位置を決定する。これにより、本発明に係る画像認識装置は、手領域が特定された手領域特定画像において手首の位置を特定することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１の実施の形態に係る画像認識装置の構成を示す機能ブロック図である。
【図２】図１に示す画像認識装置のフローチャートである。
【図３】図１に示す手領域検出部により生成される手領域特定画像の一例を示す図である。
【図４】図３に示す手領域特定画像において特定された指先候補の位置を示す図である。
【図５】図１に示す中心特定部により実行される距離変換処理を説明する図である。
【図６】図１に示す描画部により手領域特定画像上に描かれた円の一例を示す図である。
【図７】図２に示す手首位置決定処理のフローチャートである。
【図８】図１に示す手首位置決定部１５により特定された複数の円弧を示す図である。
【図９】本発明の第２の実施の形態に係る画像認識装置の構成を示す機能ブロック図である。
【図１０】図９に示す半径決定部の動作を説明するための図である。
【図１１】本発明の第３の実施の形態に係る画像認識装置の構成を示す機能ブロック図である。
【図１２】図１１に示す半径決定部の動作を説明するための図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照しつつ、本発明の実施の形態を詳しく説明する。
【００２３】
［第１の実施の形態］
｛画像認識装置の構成｝
図１は、本発明の第１の実施の形態に係る画像認識装置１００の構成を示す機能ブロック図である。図１に示す画像認識装置１００は、カメラ９により撮影された動画像５０を入力し、動画像５０を構成する各フレーム５１に含まれる手の形状を認識する。画像認識装置１００は、手の形状の認識結果を示す結果データ５７をフレーム５１ごとに出力する。
【００２４】
以下の説明において、「手」とは、手首から指先にかけての人体の部位を指し、腕は含まない。
【００２５】
画像認識装置１００は、手領域特定部１１と、中心特定部１２と、半径決定部１３と、描画部１４と、手首位置決定部１５と、指先候補特定部１６と、指先選択部１７と、結果データ生成部１８とを備える。
【００２６】
手領域特定部１１は、カメラから入力したフレーム５１から、人間の手の範囲を示す手領域が特定された手領域特定画像５２を生成する。手領域特定部１１は、フレーム５１において肌色を有する画素を抽出し、肌色を有する画素により形成される手領域を特定した手領域特定画像５２を生成する。
【００２７】
中心特定部１２は、手領域特定画像５２内の手領域に含まれる画素の画素値を用いて、手領域における手のひらの中心位置Ｐｃを特定する。
【００２８】
半径決定部１３は、中心特定部１２により特定された中心位置Ｐｃから、手領域のエッジまでの最短距離に基づいて、手領域上に描かれる円の半径Ｒ１を決定する。
【００２９】
描画部１４は、中心特定部１２により特定された中心位置Ｐｃの座標と、半径決定部１３により決定された円の半径Ｒ１とを用いて、手領域上に円を描画する。
【００３０】
手首位置決定部１５は、描画部１４により描かれた円のうち、手領域と重複する複数の円弧を特定する。手首位置決定部１５は、特定した各円弧の長さを計算する。手首位置決定部１５は、計算した各円弧の長さのうち最大の長さを有する円弧の位置を、その手領域における手首の位置として決定する。
【００３１】
指先候補特定部１６は、手領域特定画像５２内の手領域の形状に基づいて、指先の可能性がある１つ以上の指先候補を特定する。指先候補特定部１６は、特定した指先候補のそれぞれの位置を示す指先候補データ５４を生成し、生成した指先候補データ５４を指先選択部１７に出力する。
【００３２】
指先選択部１７は、指先候補データ５４により示される指先候補の位置と、描画部１４により描かれた円の範囲とに基づいて、指先候補特定部１６により特定された１つ以上の指先候補の中から、実際の指先に対応する指先候補を選択する。
【００３３】
結果データ生成部１８は、中心特定部１２により特定された手のひらの中心位置Ｐｃと、手首位置決定部１５により決定された手首の位置と、指先選択部１７により選択された指先候補の位置とを含む結果データ５７を生成する。結果データ５７は、図示しない後処理部により、手領域における手の形状が決定される際に用いられる。
【００３４】
｛画像認識装置の動作｝
図２は、図１に示す画像認識装置１００の動作を示すフローチャートである。以下、図２を参照しながら、画像認識装置１００の動作について詳しく説明する。
【００３５】
画像認識装置１００は、カメラ９から１つのフレーム５１が入力された場合、図２に示す処理を開始する。
【００３６】
｛手領域特定（ステップＳ１）｝
手領域特定部１１は、フレーム５１から人物の手の範囲を示す手領域を特定する（ステップＳ１）。フレーム５１は、ＲＧＢ色空間を有するカラー画像である。手領域特定部１１は、フレーム５１の各画素の画素値に基づいて、各画素が肌色を有するか否かを判断する。手領域特定部１１は、肌色を有する画素により形成される領域のうち、予め定められたしきい値以上の面積を有する領域を肌色領域として特定する。
【００３７】
手のひらをカメラ９に向けたユーザをカメラ９が撮影した場合、手領域特定部１１は、フレーム５１において３つの肌色領域を特定する。手領域特定部１１は、３つの肌色領域を、ユーザの顔、右手、左手にそれぞれ対応づける。具体的には、手領域特定部１１は、特定した３つの肌色領域のうち、中央の肌色領域をユーザの顔に対応すると判断する。手領域特定部１１は、右に位置する肌色領域を左手領域に特定し、左に位置する肌色領域を右手領域に特定する。手領域特定部１１は、手領域内に位置する画素の画素値を１に設定し、手領域外に位置する画素の画素値を０に設定することにより、手領域特定画像５２を生成する。
【００３８】
図３は、フレーム５１から生成される手領域特定画像５２から、ユーザの右手に対応する手領域５２Ｒを含む矩形領域５２Ａを切り出した図である。図３において、手領域５２Ｒをハッチングで示している。手領域５２Ｒは、フレーム５１に含まれるノイズなどにより、実際の右手の形状と完全に一致しない。例えば、手領域５２Ｒにおいて、人差し指及び薬指において窪みが存在し、手のひらの左側に突起が存在する。
【００３９】
以下のステップＳ２〜Ｓ６の説明では、図３に示す手領域５２Ｒ（右手に対応する手領域）から指先及び手首を検出する場合を例に説明する。画像認識装置１００は、左手に対応する手領域に対してもステップＳ２〜Ｓ６の処理を実行することにより、左手に対応する手領域から指先及び手首の位置を検出する。
【００４０】
｛指先候補特定(ステップＳ２)｝
次に、指先候補特定部１６は、手領域特定部１１から手領域特定画像５２を入力する。指先候補特定部１６は、入力した手領域特定画像５２における手領域５２Ｒのエッジ上に位置する３つの画素を用いて、手領域５２Ｒにおける１つ以上の指先候補を特定する（ステップＳ２）。
【００４１】
図４は、図３に示す手領域５２Ｒにおいて特定された指先候補を示す図である。図４を参照しながら、指先候補を特定する処理を説明する。指先候補特定部１６は、手領域５２Ｒのエッジ上に位置する３つの画素Ｐ１〜Ｐ３を選択する。画素Ｐ１から画素Ｐ２までの線分Ｌ１の長さ、画素Ｐ２から画素Ｐ３までの線分Ｌ２の長さは、例えば、１０画素分である。線分Ｌ１，Ｌ２の長さは、１０画素分でなくてもよく、線分Ｌ１の長さが線分Ｌ２の長さに一致していなくてもよい。線分Ｌ１及びＬ２の長さは、実際には、図４に示す長さよりも短く設定されるが、指先候補を特定する処理を分かりやすく説明するために、線分Ｌ１及びＬ２の長さを図４では大きく示している。
【００４２】
指先候補特定部１６は、線分Ｌ１と線分Ｌ２とがなす二つの角のうち、手領域５２Ｒの内側に位置する角Ａ１が鋭角か否かを判断する。指先候補特定部１６は、角Ａ１が鋭角である場合、画素Ｐ１〜Ｐ３により形成される三角形が指先上に位置している可能性が高いと判断し、この三角形を指先候補として特定する。図４において、画素Ｐ１〜Ｐ３によりなす角Ａ１が鈍角であるため、画素Ｐ１〜Ｐ３により形成される三角形は、指先候補とならない。
【００４３】
図４に示す三角形ＴＲ１〜ＴＲ７が、指先候補特定部１６により特定された指先候補である。三角形ＴＲ２は、実際の指先の位置と異なる。つまり、三角形ＴＲ２は、ノイズの影響により誤って指先候補として特定される。また、三角形ＴＲ１の位置は、実際の指先の位置と異なる。この理由は、手首と洋服の袖口との位置関係によって、角Ａ１が鋭角となり、三角形ＴＲ１が、手首近傍で指先候補として誤って特定されたためである。このように誤検出される指先候補については、後述する処理により、実際の指先ではないと判断される。
【００４４】
指先候補特定部１６は、特定した指先候補の位置を示す指先候補データ５４（三角形ＴＲ１〜ＴＲ７の座標データ）を生成する。生成された指先候補データ５４は、指先選択部１７に出力される。
【００４５】
｛中心位置特定（ステップＳ３）｝
中心特定部１２は、手領域特定画像５２を手領域特定部１１から入力する。中心特定部１２は、手領域５２Ｒにおける手のひらの中心位置Ｐｃを特定する（ステップＳ３）。具体的には、中心特定部１２は、距離変換処理を実行して、手領域５２Ｒ内の各画素の画素値を、各画素から手領域５２Ｒのエッジまでの距離に置き換える。中心特定部１２は、距離変換された画素のうち、最大の画素値を有する画素の位置を中心位置Ｐｃとして特定する。
【００４６】
図５は、中心特定部１２により実行される距離変換処理を説明する図である。図５に示す手領域Ｅを例にして距離変換処理を説明する。図５において、破線は手領域Ｅを構成する画素の境界を示し、太線は手領域Ｅのエッジである。各画素中に示す数値は、距離変換処理後における、手領域Ｅを構成する各画素の画素値である。
【００４７】
中心特定部１２は、手領域Ｅ内の各画素の画素値を、各画素の現在位置から手領域Ｅの外の領域までの最短距離に変換する。最短距離は、画素単位で計算される。
【００４８】
例えば、画素Ｐ４は、左方向又は上方向へ１画素分移動することにより、手領域Ｅの外へ移動することができる。この場合、画素Ｐ４の画素値は、距離変換により「１」に変換される。画素Ｐ５は、左方向へ１画素分移動し、さらに上方向へ１画素分移動することにより、手領域Ｅの外へ移動することができる。この場合、移動回数が２回であるため、画素Ｐ５の画素値は、「２」に変換される。このようにして、手領域Ｅ内の各画素の画素値が、距離変換により得られる値に変更される。
【００４９】
この結果、図５に示すように、手領域Ｅを構成する画素の画素値の中で、画素Ｐ６の画素値が最大である。中心特定部１２は、画素Ｐ６の位置が手領域Ｅにおける手のひらの中心位置Ｐｃであると判断する。
【００５０】
図６は、図３に示す手領域５２Ｒにおいて特定された手のひらの中心位置Ｐｃを示す図である。中心特定部１２は、距離変換された手領域５２Ｒ内の全画素のうち最大の画素値を有する画素の位置を、手領域５２Ｒにおける手のひらの中心位置Ｐｃとして特定する。つまり、中心特定部１２は、手領域５２Ｒのエッジから最も遠い画素の位置を、手のひらの中心位置Ｐｃとして特定する。一般的に、手のひらをカメラ９に向けた場合、図３に示す手領域５２Ｒのように、手のひらの横幅は指の横幅より大きい。距離変換後の手領域内の各画素において、指部分に位置する画素が、最大値を有する可能性は小さい。中心特定部１２は、距離変換処理を用いることにより、ユーザの指の形状の影響を受けることなく、手のひらの中心位置Ｐｃを精度よく特定することができる。
【００５１】
中心特定部１２は、中心位置Ｐｃにおける画素の画素値（距離変換後の画素値）を、中心位置Ｐｃから手領域５２Ｒのエッジまでの最短距離Ｌｓとして取得する。最短距離Ｌｓは、後述する半径決定処理（ステップＳ４）で用いられる。
【００５２】
距離変換された手領域５２Ｒにおいて、複数の画素が最大の画素値を有する場合、中心特定部１２は、これら複数の画素の重心を計算する。計算された重心の位置が、手のひらの中心位置Ｐｃとして特定される。この場合、中心特定部１２は、重心の位置から手領域５２Ｒまでの距離を最短距離Ｌｓとして取得する。
【００５３】
｛半径決定（ステップＳ４）｝
半径決定部１３は、中心特定部１２により特定された手のひらの中心位置Ｐｃと最短距離Ｌｓとを取得する。半径決定部１３は、予め設定された１以上の係数ｋ（例えば、ｋ＝１．２）を最短距離Ｌｓに乗じた値を、中心位置Ｐｃを中心として手領域特定画像５２上に描かれる円の半径Ｒ１として決定する。半径決定部１３は、決定したＲ１を描画部１４に出力する。
【００５４】
なお、半径決定部１３は、後述するように、手首位置決定部１５により半径Ｒ１の再計算を指示される場合がある。この場合、半径決定部１３は、Ｒ１の計算に用いた係数に、予め設定された値（例えば、０．１）を加算して更新する。半径決定部１３は、係数の初期値（ｋ＝１．２）を用いて半径Ｒ１を決定した後に、半径Ｒ１の再計算を手首位置決定部１５により指示された場合、係数ｋの値を、１．３に変更する。
【００５５】
｛円の描画（ステップＳ５）｝
描画部１４は、手領域特定部１１により作成された手領域特定画像５２を取得する。また、描画部１４は、中心特定部１２により特定された手領域５２Ｒにおける手のひらの中心位置Ｐｃと、半径決定部１３により決定された半径Ｒ１とを取得する。
【００５６】
図６に示すように、描画部１４は、手領域特定画像５２上に新たなレイヤを配置し、新たなレイヤ上に、中心位置Ｐｃを中心にした半径Ｒ１の円Ｃ１を描画する（ステップＳ６）。これにより、検出円画像５３が、手領域特定画像５２から生成される。描画部１４は、検出円画像５３を手首位置決定部１５及び指先選択部１７に出力する。
【００５７】
｛手首位置決定（ステップＳ６）｝
手首位置決定部１５は、検出円画像５３に描かれた円Ｃ１を用いて、手領域５２Ｒにおける手首の位置を決定する(ステップＳ６)。手首位置決定部１５は、円Ｃ１を走査することにより、円Ｃ１において手領域５２Ｒと重複する複数の円弧を特定し、複数の円弧のうちいずれか１つの円弧の位置を手領域５２Ｒにおける手首の位置として決定する。
【００５８】
図７は、手首位置決定処理（ステップＳ６）のフローチャートである。図８は、円Ｃ１のうち、手首位置決定部１５により特定された複数の円弧を示す図である。以下、図７及び図８を参照しながら、手首位置決定部１５の動作を具体的に説明する。
【００５９】
手首位置決定部１５は、円Ｃ１上の画素を１つ選択する（ステップＳ６０１）。手首位置決定部１５は、手首位置決定処理（ステップＳ６）の開始時には、走査の始点である画素Ｐｓ１（円Ｃ１と中心位置Ｐｃから見て左方向に延びる直線との交点に位置する画素）を選択する。
【００６０】
過去に円Ｃ１上の画素が選択されていた場合、手首位置決定部１５は、選択済みの画素の中で最後に選択された画素（直前選択画素）から反時計回り方向に位置する画素を選択する。具体的には、手首位置決定部１５は、中心位置Ｐｃと直前選択画素とを結ぶ直線を、中心位置Ｐｃを中心にして１°反時計回りに回転させ、円Ｃ１と回転後の直線との交点に位置する画素を選択する。
【００６１】
手首位置決定部１５は、ステップＳ６０１で選択された画素（選択画素）が手領域５２Ｒ内に位置するか否かを判断する（ステップＳ６０２）。
【００６２】
選択画素が手領域５２Ｒ内に位置する場合（ステップＳ６０２においてＹｅｓ）、手首位置決定部１５は、直前選択画素が手領域５２Ｒ内に存在したか否かを確認する（ステップＳ６０３）。直前選択画素が手領域５２Ｒ内に存在していない場合（ステップＳ６０３においてＮｏ）、手首位置決定部１５は、選択画素が手領域５２Ｒに重複する円弧の始点であると判断する（ステップＳ６０４）。手首位置決定部１５は、現在の選択画素を円弧の始点として登録し、ステップＳ６１０に進む。一方、直前選択画素が手領域５２Ｒ内に存在している場合（ステップＳ６０３においてＹｅｓ）、手首位置決定部１５は、選択画素よりも前に選択された画素から、手領域５２Ｒに重複する円弧が継続していると判断する（ステップＳ６０５）。その後、手首位置決定部１５は、ステップＳ６１０に進む。
【００６３】
ステップＳ６０２において、選択画素が手領域５２Ｒ内に位置しない場合（ステップＳ６０２においてＮｏ）、手首位置決定部１５は、直前選択画素が手領域５２Ｒ内に存在したか否かを確認する（ステップＳ６０６）。
【００６４】
直前選択画素が手領域５２Ｒ内に存在していた場合（ステップＳ６０６においてＹｅｓ）、手首位置決定部１５は、直前選択画素が手領域５２Ｒと重複する円弧の終点であると判断する（ステップＳ６０７）。手首位置決定部１５は、円弧の始点として最後に登録された画素の位置と、終点であると判断された直前選択画素の位置とに基づいて、円弧の長さを計算する（ステップＳ６０８）。手首位置決定部１５は、終点を検出した円弧についてのデータ（始点及び終点の画素、円弧の長さ）を登録し（ステップＳ６０９）、ステップＳ６１０に進む。
【００６５】
一方、ステップＳ６０６において、直前選択画素が手領域５２Ｒ内に存在していなかった場合（ステップＳ６０６においてＮｏ）、手首位置決定部１５は、選択画素及び直前選択画素が手領域５２Ｒに重複する円弧と無関係であると判断し、ステップＳ６１０に進む。
【００６６】
手首位置決定部１５は、円Ｃ１の走査が終了したか否かを判断する（ステップＳ６１０）。円Ｃ１の走査が終了していない場合（ステップＳ６１０においてＮｏ）、手首位置決定部１５は、円Ｃ１上の次の画素を選択するために、ステップＳ６０１へ戻る。ステップＳ６０１〜Ｓ６１０が繰り返されることにより、円Ｃ１において手領域５２Ｒと重複する複数の円弧が特定される。
【００６７】
一方、円Ｃ１の走査が終了した場合（ステップＳ６１０においてＹｅｓ）、手首位置決定部１５は、最初に検出された円弧と最後に検出された円弧とが連続した円弧を形成しているか否かを確認する（ステップＳ６１１）。連続した円弧が形成されている場合、手首位置決定部１５は、最初に検出された円弧と最後に検出された円弧とを結合し、結合した円弧の情報を登録する。この場合、最初に検出された円弧と、最後に検出された円弧とは削除される。
【００６８】
次に、手首位置決定部１５は、円Ｃ１の走査により特定された複数の円弧のうち、最大の長さを有する円弧の位置を手領域５２Ｒにおける手首の位置と決定する（ステップＳ６１２）。
【００６９】
図８に示すように、手首位置決定部１５は、円Ｃ１上の各画素を走査することにより（ステップＳ６０１〜Ｓ６１０）、円弧ＡＲ１〜ＡＲ６を検出する。円弧ＡＲ１は、右手の手首と重複しており、円弧ＡＲ２〜ＡＲ６は、右手の５本の指と重複している。
【００７０】
一般的に、人間の手首の幅は、指の幅よりも大きい。従って、図８に示すように、右手の手のひらをカメラ９に向けたときに得られる手領域５２Ｒにおいて、手首の幅は、指の幅よりも大きくなると考えられる。この考えに基づいて、手首位置決定部１５は、特定された円弧ＡＲ１〜ＡＲ６の長さの中で、最大の長さを有する円弧ＡＲ１を特定し、特定した円弧ＡＲ１の位置を手領域５２Ｒにおける手首の位置であると決定する（ステップＳ６１２）。手首位置決定部１５は、手領域５２Ｒにおける手首位置を示すデータ（手首位置データ５５）を指先選択部１７及び結果データ生成部１８に出力する。
【００７１】
ここで、半径決定処理（ステップＳ４）において、係数ｋが１以上の値に設定される理由を説明する。上述のように、画像認識装置１００は、人間の手首の幅が指の幅よりも大きいという特徴を利用して、手領域５２Ｒにおける手首位置を検出する。従って、ステップＳ５において描画される円Ｃ１が手首と少なくとも１本の指と重複しなければ、手領域５２Ｒにおける手首の位置を特定することができない。
【００７２】
このため、半径決定部１３は、手領域特定画像５２に描画される円Ｃ１が手領域５２Ｒにおける手のひらよりも大きくなるように、半径Ｒ１を決定する。図６に示すように、中心位置Ｐｃから手領域５２Ｒのエッジまでの最短距離Ｌｓを形成する線分において、一方の端点は、中心位置Ｐｃであり、他方の端点は、手領域５２Ｒにおける手のひら部分のエッジである。最短距離Ｌｓは、手のひらの形状が略円形であると仮定した場合、手のひらの半径に相当する。従って、円Ｃ１が手首と少なくとも一本の指と重複するようにするために、最短距離Ｌｓに乗じる係数ｋは、１以上の値に設定される。
【００７３】
また、半径Ｒ１は、中心位置Ｐｃから指先までの距離よりも短くなるように設定される。半径Ｒ１が中心位置Ｐｃから指先までの距離以上に設定された場合、円Ｃ１が、手領域５２Ｒと重複しない可能性がある。あるいは、手領域５２Ｒに重複する円弧が、手首に対応する部分のみとなり、円弧の数が１つとなる可能性がある。この場合、手首位置決定部１５は、円弧の長さを比較することができないため、手首位置を決定することができない。従って、係数ｋの上限値は、人間の一般的な手のひらの大きさと指の長さとの関係に基づいて決定される。
【００７４】
なお、手首位置決定部１５は、ステップＳ６０１〜Ｓ６１０の処理により、円Ｃ１において手領域と重複する複数の円弧を特定することができなかった場合、半径決定部１３に半径Ｒ１の再計算を指示する。上述のように、手首位置決定部１５が複数の円弧の長さを比較することで円弧を決定するため、円弧の数が１つであるときには手首位置を決定することができないためである。この場合、描画部１４は、再計算された半径Ｒ１を用いて円Ｃ１を再び描画する。手首位置決定部１５は、半径を変えて再描画された円Ｃ１を用いて、手領域５２Ｒにおける手首位置を決定する。
【００７５】
この場合、半径Ｒ１の再計算のたびに、半径Ｒ１が大きくなる。半径Ｒ１の再計算を繰り返すことにより、半径Ｒ１が、中心位置Ｐｃから手領域５２Ｒにおける実際の指先までの距離よりも大きくなることを防ぐために、半径Ｒ１の再計算を指示する回数に上限を設けてもよい。
【００７６】
｛指先選択（ステップＳ７）｝
指先選択部１７は、指先候補特定部１６から指先候補データ５４を入力し、手首位置決定部１５から手首位置データ５５を入力する。さらに、指先選択部１７は、描画部１４から検出円画像５３を入力する。指先選択部１７は、指先候補データ５４に登録された三角形ＴＲ１〜ＴＲ７の中から、手領域５２Ｒにおける指先の条件を満たす指先候補を選択する（ステップＳ７）。以下、図８を参照しながら、指先の条件について説明する。
【００７７】
まず、指先選択部１７は、指先候補（三角形ＴＲ１〜ＴＲ７）のうち、円Ｃ１内に位置する三角形ＴＲ２を除外する。上述のように、円Ｃ１の半径Ｒ１は、中心位置Ｐｃから指先までの距離よりも短くなるように設定される。従って、円Ｃ１内に位置する指先候補は、手領域５２Ｒにおける実際の指先に対応していない。あるいは、円Ｃ１内に位置する指先候補は、手領域５２Ｒにおける実際の指先に対応していたとしても、手領域５２Ｒの形状を判断するために使用することができない。これらの考えに基づいて、円Ｃ１内に位置する指先候補（三角形ＴＲ２）は、実際の指先でないと判断される。
【００７８】
次に、指先選択部１７は、指先候補（三角形ＴＲ１〜ＴＲ７）のうち、中心位置Ｐｃから見て、手首位置（円弧ＡＲ１）よりも外側に位置する指先候補を除外する。具体的には、指先候補が、中心位置Ｐｃを起点として、円弧ＡＲ１の両端を通過する２本の直線により形成される領域のうち、中心位置Ｐｃからの距離が半径Ｒ１よりも遠い位置にある領域にある場合、この指先候補は除外される。図８に示す例では、三角形ＴＲ１が指先候補から除外される。上述のように、指先候補が手首近傍で誤って特定される場合がある。従って、円Ｃ１の外側に位置する指先候補であっても、中心位置Ｐｃから見て手首側に位置する指先候補は、指先選択部１７により除外される。
【００７９】
この結果、三角形ＴＲ３〜ＴＲ７が、手領域５２Ｒにおける指先として選択される。指先選択部１７は、三角形ＴＲ３〜ＴＲ７を示すデータ（指先データ５６）を、結果データ生成部１８に出力する。
【００８０】
結果データ生成部１８は、手首位置決定部１５から手首位置データ５５を入力し、指先選択部１７から指先データ５６を入力する。結果データ生成部１８は、手領域５２Ｒにおける手首の位置（円弧ＡＲ１）を示すデータと、指先（三角形ＴＲ３〜ＴＲ７）を示すデータとを含む結果データ５７を生成する。結果データ生成部１８は、手領域５２Ｒにおける手首位置及び指先位置を示すデータとして、結果データ５７を出力する。
【００８１】
以上説明したように、画像認識装置１００は、手領域における手のひらの中心位置Ｐｃを特定し、特定した中心位置Ｐｃを中心にした円を描画する。画像認識装置１００は、描画された円において手領域と重複する複数の円弧を検出し、検出した複数の円弧の中で最大の長さを有する円弧の位置を手首位置に決定する。これにより、画像認識装置１００は、手領域における手首の位置を精度よく決定することができる。
【００８２】
［第２の実施の形態］
図９は、第２の実施の形態に係る画像認識装置２００の構成を示す機能ブロック図である。図９に示す画像認識装置２００は、図１に示す画像認識装置１００が備える半径決定部１３に代えて、半径決定部２３を備える。
【００８３】
なお、図９に示す画像認識装置２００の構成要素のうち、画像認識装置１００の構成要素と同じものについては、同一符号を付し、詳細な説明を省略する。
【００８４】
半径決定部２３は、中心位置Ｐｃから手領域のエッジまでの最短距離Ｌｓに加えて、中心位置Ｐｃから最も遠い指先候補までの距離を用いて、半径Ｒ２を決定する。描画部１４は、半径決定部２３により決定された半径Ｒ２を用いて、中心位置Ｐｃを中心とした円を描画する。
【００８５】
図１０は、半径決定部２３が半径Ｒ２を決定する方法を説明するための図である。以下、図１０を参照しながら、半径決定部２３の動作について詳しく説明する。
【００８６】
半径決定部２３は、指先候補特定部１６から指先候補データ５４を入力し、中心特定部１２から中心位置Ｐｃを入力する。半径決定部２３は、中心位置Ｐｃと指先候補データ５４に記録された指先候補（三角形ＴＲ１〜ＴＲ７）との位置に基づいて、各指先候補から中心位置Ｐｃまでの距離を計算する。半径決定部２３は、計算した複数の距離の中で最大の値を有する距離Ｌｍを特定する。
【００８７】
半径決定部２３は、距離Ｌｍと最短距離Ｌｓとを用いた下記の式に従って、半径Ｒ２を計算する。下記式において、記号Ｒ２、Ｌｍ、及びＬｓは、半径Ｒ２、距離Ｌｍ及び最短距離Ｌｓのそれぞれの値を示している。係数ｋ２は、０以上１以下の実数である。
【００８８】
Ｒ２＝Ｌｓ＋ｋ２×（Ｌｍ−Ｌｓ）
上記式において、距離Ｌｍから最短距離Ｌｓを減じた値は、手領域５２Ｒにおいて最も長い指の長さに相当する。半径Ｒ２は、最も長い指の長さに係数ｋ２を乗じた値を最短距離Ｌｓに加算することにより得られる。従って、半径Ｒ２は、手のひらの半径（最短距離Ｌｓ）よりも長く、中心位置Ｐｃから最も長い指先までの距離Ｌｍよりも短くなる。
【００８９】
描画部１４は、半径決定部２３により計算される半径Ｒ２を用いて、中心位置Ｐｃを中心とした円Ｃ２を描画する。
【００９０】
上述のように、半径Ｒ２が、最短距離Ｌｓよりも長く、距離Ｌｍよりも短いため、円Ｃ２は、手領域５２Ｒにおける指の部分を通過するように描画される。従って、手首位置決定部１５は、円Ｃ２において、手領域５２Ｒと重複する複数の円弧を検出することができるため、上記第１の実施の形態と同様に、複数の円弧の長さを比較することにより手領域５２Ｒにおける手首の位置を決定することができる。
【００９１】
なお、本実施の形態において、半径決定部２３は、各指先候補から中心位置Ｐｃまでの距離の平均値を用いて、半径Ｒ２を計算してもよい。半径決定部２３は、計算した平均値を半径Ｒ２として取得する。この場合であっても、半径Ｒ２は、手のひらの半径（最短距離Ｌｓ）よりも長く、中心位置Ｐｃから最も長い指先までの距離Ｌｍよりも短くなる。
【００９２】
［第３の実施の形態］
図１１は、第３の実施の形態に係る画像認識装置３００の構成を示す機能ブロック図である。図１１に示す画像認識装置３００は、図１に示す画像認識装置１００が備える半径決定部１３に代えて、半径決定部３３を備える。
【００９３】
なお、図１１に示す画像認識装置３００の構成要素のうち、画像認識装置１００の構成要素と同じものについては、同一符号を付し、詳細な説明を省略する。
【００９４】
半径決定部３３は、中心位置Ｐｃから上下左右のそれぞれの方向に位置する手領域５２Ｒのエッジまでの距離を用いて、半径Ｒ３を決定する。半径決定部３３は、半径Ｒ３を決定する際に、中心位置Ｐｃから手領域５２Ｒのエッジまでの最短距離Ｌｓを使用しない。
【００９５】
図１２は、半径決定部１３が半径Ｒ３を決定する方法を説明するための図である。以下、図１２を参照しながら、半径決定部３３の動作について詳しく説明する。
【００９６】
半径決定部３３は、中心特定部１２から中心位置Ｐｃを入力する。半径決定部３３は、中心位置Ｐｃを起点にして左方向に延び、かつ、終点が手領域５２Ｒのエッジである線分Ｌａの長さを計算する。同様に、半径決定部３３は、中心位置Ｐｃを起点にして下方向に延びる線分Ｌｂと、中心位置Ｐｃを起点にして右方向に延びる線分Ｌｃと、中心位置Ｐｃを起点にして上方向に延びる線分Ｌｄの長さを計算する。線分Ｌｂ、Ｌｃ及びＬｄの終点は、いずれも手領域５２Ｒのエッジである。
【００９７】
半径決定部３３は、線分Ｌａ〜Ｌｄのそれぞれの長さの平均値を計算し、計算した平均値を半径Ｒ３に決定する。描画部１４は、中心位置Ｐｃを中心にして、半径Ｒ３を有する円Ｃ３を描画する。
【００９８】
線分Ｌａ、Ｌｂ、Ｌｃ及びＬｄは、いずれも、最短距離Ｌｓ以上の長さであり、中心位置Ｐｃから最も遠い位置にある指先候補までの距離（距離Ｌｍ）よりも短い。従って、線分Ｌａ、Ｌｂ、Ｌｃ及びＬｄの長さの平均値（半径Ｒ３）は、最短距離Ｌｓよりも長く、距離Ｌｍよりも短くなる。円Ｃ３が手領域５２Ｒにおける指の部分を通過するように描画されるため、手首位置決定部１５は、円Ｃ３において、手領域５２Ｒと重複する複数の円弧を検出する。この結果、手首位置決定部１５は、上記第１の実施の形態と同様に、複数の円弧の長さを比較することにより手領域５２Ｒにおける手首の位置を決定することができる。
【００９９】
なお、本実施の形態では、半径決定部３３が、線分Ｌａ〜Ｌｄの平均値を半径Ｒ３に決定する例を説明したが、これに限られない。半径決定部３３は、線分Ｌａ〜Ｌｄの中央値を半径Ｒ３として取得してもよい。つまり、半径決定部３３は、線分Ｌａ〜Ｌｄの長さの代表値を半径Ｒ３として取得すればよい。
【０１００】
また、半径決定部３３は、線分Ｌａ〜Ｌｄの一部のみを用いて半径Ｒ３を決定してもよい。例えば、半径決定部３３は、中心位置Ｐｃから下方向の延びる線分Ｌｂ及び中心位置Ｐｃから上方向の延びる線分Ｌｄの平均値を半径Ｒ３として取得してもよい。あるいは、半径決定部３３は、線分Ｌｂ及びＬｄのうち大きい方の線分の長さを半径Ｒ３として取得してもよい。
【０１０１】
また、半径決定部３３は、線分Ｌａ〜Ｌｄのうち、最大の長さを有する線分を除く３つの線分の長さを用いて、半径Ｒ３を計算してもよい。具体的には、半径決定部３３は、図１２に示す線分Ｌａ〜Ｌｄのうち、線分Ｌｄを除く線分Ｌａ〜Ｌｃの長さの平均値（又は中央値）を半径Ｒ３として取得してもよい。
【０１０２】
このように、上記実施の形態において、手領域５２Ｒにおける手のひらの中心位置Ｐｃを中心にした円の半径の決定方法を説明したが、円の半径は、手領域５２Ｒにおける手のひらの中心位置Ｐｃから、手領域５２Ｒのエッジまでの距離に基づいて決定されればよい。
【０１０３】
なお、上記実施の形態において、手領域特定部１１が、カラー画像であるフレーム５１から肌色領域を抽出することにより、手領域を特定する例を説明したが、これに限られない。例えば、手領域特定部１１は、被写体までの距離を計測することにより得られるデプス画像（距離画像）を用いて、手領域を特定してもよい。この場合、手領域特定部１１は、予め定められた距離の範囲に対応する画素値を有する画素の領域を、手領域として特定すればよい。
【０１０４】
上記実施の形態において、ユーザがカメラ９に向けて両手の手のひらを向ける例を説明したが、これに限られない。ユーザは、両手の少なくとも一方の手の甲をカメラ９に向けたとしても、本発明に係る画像認識装置は、上記と同様の処理により手首位置を決定することができる。
【０１０５】
上記実施の形態において、画像認識装置が、手領域特定部１１を備える例を説明したが、これに限られない。画像認識装置は、手領域特定部１１を備えていなくてもよい。この場合、画像認識装置は、フレーム５１に代えて、手領域が特定された手領域特定画像を入力すればよい。
【０１０６】
上記実施の形態において、画像認識装置が、指先候補特定部１６及び指先選択部１７を備える例を説明したが、これに限られない。画像認識装置は、手領域特定画像における手領域の手首の位置のみを決定してもよい。この場合、画像認識装置は、指先候補特定部１６及び指先選択部１７を備えなくてもよい。
【０１０７】
上記実施の形態において、中心特定部１２が、距離変換処理を実行することにより手のひらの中心位置Ｐｃを特定する例を説明したが、これに限られない。中心特定部１２は、距離変換処理を用いずに、手のひらの中心位置Ｐｃを決定してもよい。
【０１０８】
例えば、中心特定部１２は、手領域５２Ｒの重心を、手のひらの中心位置Ｐｃとして決定してもよい。中心特定部１２は、手領域５２Ｒに含まれる全画素のＸ座標の平均値と、Ｙ座標の平均値とを計算し、計算したＸ座標の平均値とＹ座標の平均値とで特定される座標の位置が手のひらの中心位置Ｐｃであると判断する。
【０１０９】
あるいは、中心特定部１２は、４辺の全てが手領域５２Ｒに内接する矩形（矩形手領域）を特定し、特定した矩形手領域の中心（２本の対角線の交点）を手のひらの中心位置Ｐｃとして特定してもよい。
【０１１０】
あるいは、中心特定部１２は、特定した矩形手領域を所定の比率（例えば、１／３）で縮小した矩形（探索用矩形）を、矩形手領域内でスキャンさせてもよい。この場合、中心特定部１２は、手領域５２Ｒと重複する面積が最も大きい探索用矩形の中心を手のひらの中心位置Ｐｃとして特定する。中心特定部１２は、特定した矩形手領域よりも小さい円（探索用円）を矩形手領域内でスキャンさせることにより、手のひらの中心位置Ｐｃを特定してもよい。
【０１１１】
上記実施の形態において、手首位置決定部１５が、検出された複数の円弧の長さに基づいて、手首の位置を決定する例を説明したが、これに限られない。例えば、手首位置決定部１５は、検出された複数の円弧の配置に基づいて、手首の位置を決定してもよい。具体的には、円弧ＡＲ２〜ＡＲ６は、指に対応しているため、これらの円弧間の距離は、比較的短い。一方、円弧ＡＲ１は、手首に対応しているため、円弧ＡＲ２〜ＡＲ６と比較的離れている。このように、円弧間の距離に基づいて、手首の位置を決定することも可能である。すなわち、手首位置決定部１５は、検出された複数の円弧に基づいて、手領域における手首の位置を決定すればよい。
【０１１２】
上記実施の形態の画像認識装置の一部または全部は、集積回路（例えば、ＬＳＩ、システムＬＳＩ等）として実現されるものであってもよい。
【０１１３】
上記実施の形態の各機能ブロックの処理の一部または全部は、プログラムにより実現されるものであってもよい。そして、上記実施形態の各機能ブロックの処理の一部または全部は、コンピュータにおいて、中央演算装置（ＣＰＵ）により行われる。また、それぞれの処理を行うためのプログラムは、ハードディスク、ＲＯＭなどの記憶装置に格納されており、ＲＯＭにおいて、あるいはＲＡＭに読み出されて実行される。
【０１１４】
また、上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェア（ＯＳ（オペレーティングシステム）、ミドルウェア、あるいは、所定のライブラリとともに実現される場合を含む。）により実現してもよい。さらに、ソフトウェアおよびハードウェアの混在処理により実現しても良い。なお、上記実施形態に係る画像認識装置をハードウェアにより実現する場合、各処理を行うためのタイミング調整を行う必要があるのは言うまでもない。上記実施形態においては、説明便宜のため、実際のハードウェア設計で生じる各種信号のタイミング調整の詳細については省略している。
【０１１５】
また、上記実施形態における処理方法の実行順序は、必ずしも、上記実施形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えることができるものである。
【０１１６】
前述した方法をコンピュータに実行させるコンピュータプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、大容量ＤＶＤ、次世代ＤＶＤ、半導体メモリを挙げることができる。
【０１１７】
上記コンピュータプログラムは、上記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
【符号の説明】
【０１１８】
１００，２００，３００  画像認識装置
１１  手領域特定部
１２  中心特定部
１３，２３，３３  半径決定部
１４  描画部
１５  手首位置決定部
１６  指先候補特定部
１７  指先選択部
１８  結果データ生成部
【図１】
0006606335.tif 000002
【図２】
0006606335.tif 000003
【図３】
0006606335.tif 000004
【図４】
0006606335.tif 000005
【図５】
0006606335.tif 000006
【図６】
0006606335.tif 000007
【図７】
0006606335.tif 000008
【図８】
0006606335.tif 000009
【図９】
0006606335.tif 000010
【図１０】
0006606335.tif 000011
【図１１】
0006606335.tif 000012
【図１２】
0006606335.tif 000013