(57)【特許請求の範囲】
【請求項１】
２つの画像から差分画像を生成する生成手段と、
前記差分画像の差分がある領域に対して、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出する抽出手段と、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、前記第１領域に対して手の動きか否かを判定する判定手段と
を備える画像処理装置。
【請求項２】
前記判定手段は、
前記差分画像をブロックに分割する分割手段と、
少なくとも前記第２領域を含むブロック数を計数する計数手段と、
前記第２領域の動き量を表す、前記第２領域を含むブロック数と、前記第１領域に対する前記第２領域の面積比とを用いて、前記第１領域に対して手の動きか否かを判定する動き判定手段と
を有する請求項１記載の画像処理装置。
【請求項３】
前記動き判定手段は、
前記第２領域を含むブロック数が第１閾値以下、又は、前記面積比が第２閾値以下の少なくともいずれかであれば、前記第１領域を手の動きと判定する請求項２記載の画像処理装置。
【請求項４】
前記分割手段は、
前記第１領域を含む矩形の線分を延長することで、前記差分画像を分割する請求項２又は３記載の画像処理装置。
【請求項５】
前記計数手段は、
前記第２領域を含むブロックの面積に対する該ブロック内の前記第２領域の画素数の割合が、第３閾値以上であるブロック数を計数する請求項２乃至４いずれか一項に記載の画像処理装置。
【請求項６】
前記抽出手段により、前記第１領域が複数抽出された場合、
前記判定手段は、
それぞれの第１領域に対して、手の動きの判定処理を行う請求項１乃至５いずれか一項に記載の画像処理装置。
【請求項７】
前記判定手段は、
前記第１領域の面積が第４閾値より大きいか否かにさらに基づき、手の動きか否かを判定する請求項１乃至６いずれか一項に記載の画像処理装置。
【請求項８】
２つの画像から差分画像を生成し、
前記差分画像の差分がある領域に対し、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出し、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、前記第１領域に対して手の動きか否かを判定する処理をコンピュータが実行する画像処理方法。
【請求項９】
２つの画像から差分画像を生成し、
前記差分画像の差分がある領域に対し、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出し、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、前記第１領域に対して手の動きか否かを判定する処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジェスチャ判定を行う画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
最近、ＰＣ（Personal Computer）や携帯型端末（携帯電話、スマートフォン、タブレット端末等）を操作する際、手が汚れていたり、手袋をはめたりしている状況では端末を触らずに操作したいというニーズがある。
【０００３】
例えば、台所で料理しながらＰＣでＴＶ閲覧する場合や、料理レシピサイトをＷｅｂ閲覧する場合や、あるいは、機械の保守などにおいて手袋をはめた状態でマニュアルを閲覧する場合等が考えられる。
【０００４】
また、スマートフォンやタブレットＰＣでジェスチャ認識を行うことも可能であるが、スマートフォンやタブレットＰＣのＣＰＵ（Central Processing Unit）は、一般のＰＣに比べて処理能力が劣る。
【０００５】
そのため、一般のＰＣで手の動きを認識するために行なっている、肌色部分の中から手の形状を認識して、手の形状の動きからジェスチャを判断する処理を行うのは困難である。また、認識に用いるカメラのフレームレートをリソース節約のために落としたいという要望もある。
【０００６】
しかし、フレームレートを落とした場合には、動かされた手の形状を上手く認識できない場合が多くなる。そこで従来は、ＣＰＵの能力やフレームレートが低くてもジェスチャを認識できるように、肌色の部分を手と見なして、その動きからジェスチャの判断をしていた。
【０００７】
例えば、ハンドジェスチャ認識技術として、顔認識を行い、顔以外の肌色領域を手領域とみなしたり、閉領域となる肌色領域の面積、長径／短径の比が閾値以上のものを腕領域とみなしたりして、ハンドジェスチャを認識する技術がある。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００２−１４９３０２号公報
【特許文献２】特開２００５−６３２２５号公報
【特許文献３】特開２００４−２８０１４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、顔認識を前提とする技術では、ユーザと端末との距離が近い場合や、カメラの画角が狭い場合には画像中にユーザの顔が写り込まないため、対象とする画像に制約があり汎用性が少ない。
【００１０】
また、腕領域を面積比で検出する従来技術では、ユーザが、半袖やノースリーブを着ている場合には、肌の露出部分が多いため、手の動きなのか、体の動きに起因する顔や腕の動きなのかの判別が容易ではない。
【００１１】
よって、従来技術では、対象画像に制約があったり、手振り動作（ハンドジェスチャ）と、体の動きに起因する顔や腕の動きとを区別することが困難であったり、ユーザが意図した手の動きを適切に判定することができないという問題点があった。
【００１２】
そこで、開示の技術では、手の動きを適切に判定し、手の動きの誤判定を低減することができる画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
開示の一態様における画像処理装置は、２つの画像から差分画像を生成する生成手段と、前記差分画像の差分がある領域に対して、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出する抽出手段と、前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、第１領域に対して手の動きか否かを判定する判定手段とを備える。
【発明の効果】
【００１４】
開示の技術によれば、手の動きを適切に判定し、手の動きの誤判定を低減することができる。
【図面の簡単な説明】
【００１５】
【図１】手振り動作と体の動きとの違いを説明するための図。
【図２】実施例における画像処理装置の構成の一例を示すブロック図。
【図３】前処理を行う場合に撮影された画像の一例を示す図。
【図４】手の動き判定対象の画像の一例を示す図。
【図５】差分画像の一例を示す図。
【図６】差分画像のブロック分割例（その１）を示す図。
【図７】差分画像のブロック分割例（その２）を示す図。
【図８】実施例における画像処理装置の処理の一例を示すフローチャート。
【図９】実施例における動き判定処理の一例を示すフローチャート。
【図１０】実施例における画像処理装置のハードウェアの一例を示す図。
【発明を実施するための形態】
【００１６】
以下、各実施例について、添付図面を参照しながら説明する。開示の実施例では、手の動き、例えば手振り動作と、体の動きに起因する顔や腕の動きとを区別するために、画像中の肌領域以外の領域の動きを考慮する。
【００１７】
まず、手振り動作と体の動きとの違いについて説明する。図１は、手振り動作と体の動きとの違いを説明するための図である。図１（Ａ）は、手振り動作の一例を示す図である。図１（Ｂ）は、体の動きの一例を示す図である。
【００１８】
図１（Ａ）に示す例では、領域ａｒ１０２，１０６が手領域を示し、領域ａｒ１０４，１０８が手領域に連なった腕領域を示す。図１（Ａ）に示すように、手振り動作の場合は、手領域ａｒ１０２，１０６の動きに連なって、腕領域ａｒ１０４，１０８が動く。
【００１９】
図１（Ｂ）に示す例では、人物がカメラを横切る例であり、領域ａｒ２０２が顔領域を示し、領域ａｒ２０４が髪領域を示し、領域ａｒ２０６が体領域を示す。図１（Ｂ）に示すように、体が動く場合は、顔領域ａｒ２０２、髪領域ａｒ２０４、及び体領域ａｒ２０６が広い範囲で動く。
【００２０】
図１（Ａ）と図１（Ｂ）と比較すると、領域ａｒ１０２、ａｒ１０６、ａｒ２０２などの肌領域以外の領域ａｒ１０４、ａｒ１０８、ａｒ２０４、ａｒ２０６（非肌領域とも呼ぶ）の動き量に差がある。図１（Ａ）では、非肌領域は一部分で動くが、図１（Ｂ）では、非肌領域は広い範囲で動く。
【００２１】
よって、非肌領域の動き量を用いて、図１（Ａ）の肌領域の動きと、図１（Ｂ）の肌領域の動きとを区別する。以下、上記考えに基づく実施例について説明する。
【００２２】
［実施例］
＜構成＞
図２は、実施例における画像処理装置１０の構成の一例を示すブロック図である。図２に示す画像処理装置１０は、画像取得手段１０２と、生成手段１０４と、前処理手段１０６と、抽出手段１０８と、判定手段１１０と、認識手段１１８とを備える。
【００２３】
画像取得手段１０２は、少なくとも２つの画像を取得する。これらの画像には、好ましくは、手領域が含まれるとよい。この２つの画像は、カメラで撮影された連続画像のうちの連続する２つの画像でもよいし、所定時間の差がある２つの画像でもよい。
【００２４】
例えば、画像取得手段１０２は、１秒で３０フレーム撮影されるカメラから取得される連続画像のうちの、連続する２フレームや、所定時間の差がある２フレームを取得し、生成手段１０４に出力する。
【００２５】
生成手段１０４は、画像取得手段１０２から取得した、少なくとも人物を含む２つの画像から差分画像を生成する。差分画像は、例えば２つの画像の対応する画素同士に対して差分をとることで生成される。生成手段１０４は、生成した差分画像を抽出手段１０８に出力する。
【００２６】
前処理手段１０６は、抽出手段１０８で使用する所定の色を設定する。前処理手段１０６は、手の動きを判定する前に、ジェスチャ対象のものを撮影した画像から、抽出対象の所定の色を特定する。前処理手段１０６は、特定した所定の色を抽出手段１０８に通知する。
【００２７】
抽出手段１０８は、生成手段１０４から取得した差分画像の差分がある領域に対して、所定の色に対応する第１領域と、この第１領域以外の第２領域とを抽出する。第１領域は、例えば肌色の手領域や所定色の手袋領域などに対応し、第２領域は、服を着ている体領域や、髪領域などに対応する。抽出手段１０８は、抽出した各領域を判定手段１１０に出力する。
【００２８】
判定手段１１０は、抽出手段１０８により抽出された第２領域の面積から判断される第２領域の動き量と、第１領域の大きさと、第２領域の大きさとに基づき、第１領域に対して手の動きか否かを判定する。判定手段１１０は、手の動きと判定された場合、認識手段１１８にその旨を通知する。判定手段１１０は、例えば、判定対象の第１領域に隣接する第２領域の動き量や大きさを用いる。
【００２９】
認識手段１１８は、判定手段１１０により手の動きと判定された対象物に注目し、生成手段１０４から連続する差分画像を取得し、対象物を追跡して手の動きの方向を認識することができる。例えば、認識手段１１８は、手の動きにより上、下、左、右の４方向を識別することができる。よって、画像処理装置１０は、認識された方向に対応した機能を実行することができる。
【００３０】
＜手の動き判定処理＞
次に、手の動き判定処理について説明する。以下では、前処理手段１０６と、抽出手段１０８と、判定手段１１０との処理について詳細に説明する。
【００３１】
《前処理》
前処理手段１０６は、例えば、ジェスチャ対象の手、又は特定色の手袋をした手が大きく撮影された画像などから、画像内で所定割合以上を有する色や、画像の中心を含む所定領域（中心領域とも呼ぶ）に位置する画素の平均画素値を所定の色に設定する。
【００３２】
図３は、前処理を行う場合に撮影された画像の一例を示す図である。図３に示すように画像には、手が撮像されている。前処理手段１０６は、例えば、この画像の中心領域の色を抽出し、その色を所定の色とする。
【００３３】
また、前処理手段１０６は、例えば、画像内に対してエッジ抽出を行い、エッジにより形成される閉領域が所定のサイズ以上であれば、その閉領域の画素値の平均を所定の色としてもよい。
【００３４】
前処理手段１０６は、設定した所定の色を抽出手段１０８に通知する。なお、前処理手段１０６は、必ずしも必要ではなく、所定の色を抽出手段１０８に予め設定しておいてもよい。
【００３５】
《差分画像生成処理》
生成手段１０４は、２つの画像から差分画像を生成する。例えば、画像処理装置１０により、ジェスチャ認識モードが実行された後に取得された２つの画像に対して差分画像を生成する。
【００３６】
図４は、手の動き判定対象の画像の一例を示す図である。図４に示す画像は、ジェスチャする前の画像を示す。図４に示す例では、手は矢印方向に振られる。例えば、生成手段１０４は、図４に示す手の位置から矢印方向に移動した手を含む画像と、図４に示す画像とから差分画像を生成する。
【００３７】
図５は、差分画像の一例を示す図である。図５に示す差分画像は、図４に示す画像に基づいて生成される。図５に示すように生成手段１０４により生成された差分画像は、抽出手段１０８に出力される。
【００３８】
《抽出処理》
抽出手段１０８は、生成手段１０４から取得した差分画像の差分がある位置に対応する元画像（２つの画像のいずれか）の画素値を、ＹＵＶ表色系に変換する。抽出手段１０８は、変換したＹ、Ｕ、Ｖそれぞれの各画素に対して上限、下限を定めた閾値処理により、例えば肌領域を抽出する。閾値のｔｈ１〜ｔｈ６は、所定の色に対応して決定される。なお、抽出手段１０８は、ＲＧＢ表色系で閾値（ｔｈ１〜ｔｈ６）を設定してもよい。
【００３９】
抽出手段１０８は、所定の色をＹＵＶ表色系に変換し、変換したＹ，Ｕ，Ｖの値を含む所定範囲を設定することで、閾値ｔｈ１〜ｔｈ６を設定することができる。
【００４０】
抽出手段１０８は、次の条件１〜３を満たす画素値を含む第１領域をとみなす。
ｔｈ１＜Ｙ＜ｔｈ２  ・・・条件１
ｔｈ３＜Ｕ＜ｔｈ４  ・・・条件２
ｔｈ５＜Ｖ＜ｔｈ６  ・・・条件３
一方、ユーザが特定の色の手袋をはめることが事前にわかっているような場合では、前処理手段１０６による前処理を行っておくことで、抽出手段１０８は、肌領域の代わりに手袋領域を見つけることができる。この場合、抽出手段１０８は、ＲＧＢ表色系を用いた閾値処理により、肌領域の代わりに手袋領域を求める。
【００４１】
なお、ＹＵＶ表色系とＲＧＢ表色系の間には、次の式（１）の関係がある。
【００４２】
【数１】
0005895637.tif 000002
【００４３】
抽出手段１０８は、式（１）を用いてＲＧＢをＹＵＶ表色系に変換する。抽出手段１０８は、差分画像の差分がある領域に対して抽出した第１領域と、第１領域以外であり、差分がある第２領域とを判定手段１１０に出力する。
【００４４】
これにより、抽出手段１０８は、差分画像を用いて動きのあるところに対して第１領域の抽出処理を行うことで、原画像から第１領域を抽出し、動きがあるか否かを判定するよりも、効率良く動きのある第１領域を抽出することができる。
【００４５】
《判定手段》
次に、判定手段１１０の処理について説明する。図２に示す例では、判定手段１１０は、手の動きを判定するため、分割手段１１２と、計数手段１１４と、動き判定手段１１６とを有する。
【００４６】
分割手段１１２は、例えば、抽出された第１領域を中心として差分画像全体を９分割する。分割手段１１２は、例えば、第１領域を含む矩形の線分を延長することで、差分画像を９つに分割する。
【００４７】
分割手段１１２は、横方向、縦方向のそれぞれで第１領域を囲む２本の線を引く。中心にくるのが第１領域で、それ以外を他の領域とする。
【００４８】
図６は、差分画像のブロック分割例（その１）を示す図である。図６に示す例では、分割手段１１２は、第１領域を中心として差分画像全体を９つに分割する。図６に示す例では、ブロック５は第１領域を含み、ブロック７，８は、第２領域を含む。これにより、第１領域は中央のブロックに位置し、また、１つのブロックに対応させることができる。
【００４９】
また、分割手段１１２は、差分画像に対し、予め設定された所定サイズで分割するようにしてもよい。
【００５０】
図７は、差分画像のブロック分割例（その２）を示す図である。図７に示す例では、分割手段１１２は、差分画像を縦、横にそれぞれ８分割する。以降では、分割手段１１２は、図６に示す分割を行うこととする。
【００５１】
計数手段１１４は、第２領域を含むブロック数をカウントする。例えば、計数手段１１４は、分割手段１１２により分割された各ブロックのうち、中心部（第１領域のブロック）を除く各ブロックで、ブロックの面積に対するブロック内における差分のある画素数の割合を計算する。
【００５２】
計数手段１１４は、計算した割合が所定値以上のときは、そのブロックを動きのあるブロックとみなす。以降では、動きのあるブロックを動きブロックとも呼ぶ。例えば、計数手段１１４は、次の条件４を満たすブロックを動きブロックとして計数（カウント）する。
ｉｆ（Ｄ／Ａｒｅａ）≧Ｔｈ１０（第３閾値）  ・・・条件４
Ａｒｅａ：ブロック面積
Ｄ：差分のある画素数
ジェスチャ対象のものだけが動き、背景に動くものなどがなければ、２フレームの差分画像では、Ｄ＝０となるため動きブロックはない。
【００５３】
第３閾値Ｔｈ１０は、動きの速さに起因するパラメータであり、事前にユーザ毎の手振り速度（ｖ）を学習しておくことができれば、計数手段１１４は、次の式（２）を用いて新たな閾値を設定しても良い。
Ｔｈ１０'＝Ｔｈ１０×（ｖ／ｖ１）  ・・・式（２）
Ｔｈ１０'：新たな閾値
ｖ１：事前に定めた基準速度
これにより、ユーザの動きに応じた閾値を設定することができ、計数手段１１４は、動きブロックを適切にカウントすることができる。計数手段１１４は、動きブロックのカウント値を動き判定手段１１６に通知する。
【００５４】
動き判定手段１１６は、動きブロックとしてカウントされた第２領域を含むブロック数（カウント値）が閾値Ｔｈ１１（第１閾値）以下であり、かつ、第１領域に対する第２領域の面積比が閾値Ｔｈ１２（第２閾値）以下であれば、第１領域を手の動きと判定する。つまり、動き判定手段１１６は、第１領域により生じた差は、手の動きにより生じた差であると判定する。
【００５５】
第１領域及び第２領域の面積は、簡易的にブロック数で表してもよい。これにより、処理数を削減することができる。また、図７に示すような分割の場合、動き判定手段１１６は、第１領域を含むブロック数を、式（２）を用いてカウントする。
【００５６】
第２領域のカウント値が閾値Ｔｈ１１以下の場合は、第１領域に連動して動く領域（第２領域）の動き量が小さいことを表す（図１（Ａ）参照）。第１領域に対する第２領域の面積比が閾値Ｔｈ１２以下の場合は、第１領域が顔である場合などを排除することができる。
【００５７】
これにより、動き判定手段１１６は、体を動かした場合の顔の動きではなく、ユーザが意図的に手を動かした場合の手の動きを適切に判定することができる。
【００５８】
また、動き判定手段１１６は、必要に応じて、次の処理を行ってもよい。動き判定手段１１６は、抽出された第１領域に対し、人物背景から誤検出されたノイズ成分を除去するために、閾値Ｔｈ１３（第４閾値）より大きい面積の第１領域についてのみ、動き判定処理を行う。
【００５９】
動き判定手段１１６は、閾値Ｔｈ１３より多い画素数を有する第１領域についてのみ、動き判定処理を行ってもよい。
【００６０】
これにより、ジェスチャ対象の背景で、人が横切った場合などの顔領域を排除することができ、誤判定を低減することができる。
【００６１】
また、動き判定手段１１６は、閾値Ｔｈ１３を、距離に依存するパラメータとし、式（３）により求めてもよい。
Ｔｈ１３'＝Ｔｈ１３×（α／ｄ＾２）  ・・・式（３）
Ｔｈ１３'：新たな閾値
ｄ：カメラとユーザの間の距離
α：事前設定した係数
式（３）は、カメラとユーザ間の距離が事前に分かる場合は、センサなどを用いて距離ｄを検出することができる場合に適用できる。これにより、カメラとユーザとの距離に応じた閾値を設定するので、より誤判定を低減することができる。
【００６２】
また、動き判定手段１１６は、顔認識技術を援用できる場合には、顔認識技術を援用してもよい。動き判定手段１１６は、顔認識処理により、顔らしさの信頼度が閾値Ｔｈ１４（第５閾値）より低い（＝顔ではないと判断された）第１領域について動き判定処理を行う。「顔らしさの信頼度が低い」とは、顔ではないと判定されることを意味する。
【００６３】
なお、顔認識技術は、様々な方式が提案されており、動き判定手段１１６は、例えば、次のサーベイ論文等の技術を使えばよい。
"A Survey of Face Recognition Techniques,"Rabia Jafri and Hamid R.Arbuia,Journal of Information Processing Systems, Vol.5, No.2, pp.41-68, June 2009.
なお、動き判定手段１１６は、第１領域の面積判定処理と、顔認識処理とは、ブロック分割を行う前に行ってもよい。これにより、複数の第１領域が抽出された場合、顔ではないと推定される領域に対してのみ、動き判定処理を行うことができる。
【００６４】
なお、閾値Ｔｈ１２（第２閾値）については、固定された閾値を用いる以外に、適応的に変更される閾値を用いてよい。第１領域や第２領域の面積は、手の大きさや体の大きさによって変動しうる。そのため、動き判定手段１１６は、顔認識結果を用いて男女別の閾値Ｔｈ１２の設定をしてもよい。
【００６５】
あるいは、動き判定手段１１６は、手の動きの誤判定があった際に、ユーザにフィードバックを返してもらい、それに応じて、閾値Ｔｈ１２の値を大きくしたり、小さくしたりして、適切な閾値にするよう調整してもよい。
【００６６】
《繰り返し処理》
抽出手段１０８により、第１領域が複数抽出された場合、判定手段１１０は、第１領域１つずつに対して、動き判定処理を行う。判定手段１１０は、最終的に手の動きと判定されたものが少なくとも１つあれば、その第１領域を手の動きと判定する。
【００６７】
判定手段１１０は、手の動きと判定した第１領域が複数ある場合、第１領域が最大のものを、つまり、動きが一番大きいものを手の動きと判定する。これは、ユーザがジェスチャ認識を行う際は、カメラに向かって手を大きく振ることが考えられるからである。さらに、判定手段１１０は、同じ大きさの手の動きで、動きの方向が異なるものがあれば、このフレームでは判断は困難なため、判定をリジェクトし、その後のフレームから手の動きを検出するようにすればよい。
【００６８】
以上の構成を有することで、手の動きを適切に判定し、手の動きの誤判定を低減することができる。
【００６９】
＜動作＞
次に、画像処理装置１０の動作について説明する。図８は、実施例における画像処理装置１０の処理の一例を示すフローチャートである。図８に示す例では、２つのフレーム画像から手の動きが行われたか否かを判定する。
【００７０】
ステップＳ１０１で、画像取得手段１０２は、カメラなどから入力された複数のフレームのうち、２つのフレーム画像（フレームとも呼ぶ）を取得する。
【００７１】
ステップＳ１０２で、生成手段１０４は、画像取得手段１０２から入力された２つの画像から差分画像を生成する。これにより、差分画像を用いることで、動きがあった部分を特定することができる。
【００７２】
ステップＳ１０３で、抽出手段１０８は、差分画像で差分があった部分に対する元画像に対し、所定の色を有する第１領域と、第１領域以外の第２領域とを抽出する。
【００７３】
ステップＳ１０４で、分割手段１１２は、差分画像を複数のブロックに分割する。例えば、図６や図７に示す分割の仕方がある。
【００７４】
ステップＳ１０５で、計数手段１１４は、第１領域を含むブロック数、第２領域を含むブロック数を計数する。
【００７５】
ステップＳ１０６で、動き判定手段１１６は、第２領域の動き量と、第１領域の大きさと、第２領域の大きさとに基づいて、手の動きか否かを判定する。
【００７６】
これにより、手の動きであると適切に判定された第１領域部分を追跡することで、ジェスチャ認識を行うことができるようになる。
【００７７】
図９は、実施例における動き判定処理の一例を示すフローチャートである。図９に示す処理は、図８に示すステップＳステップＳ１０４〜１０６の処理を詳細に説明するものであり、図６によるブロック分割を用いる場合の処理である。また、図９に示す処理は、１つの第１領域に対する処理であり、複数の第１領域がある場合は、図９に示す処理が複数回繰り返される。
【００７８】
ステップＳ２０１で、動き判定手段１１６は、第１領域の画素数又は面積が閾値Ｔｈ１３（第４閾値）より大きいか否かを判定する。この条件を満たせば（ステップＳ２０１−ＹＥＳ）ステップＳ２０２に進み、この条件を満たさなければ（ステップＳ２０１−ＮＯ）ステップＳ２０８に進む。
【００７９】
これにより、ジェスチャを行う人の背後で人がカメラを横切った場合など、比較的小さい肌色の動きがあった部分を判定対象から除外することができる。
【００８０】
ステップＳ２０２で、動き判定手段１１６は、第１領域に対して顔認識を行う。顔認識の技術は、公知の技術を用いればよい。
【００８１】
ステップＳ２０３で、動き判定手段１１６は、顔認識により得られた顔らしさの信頼度が、閾値Ｔｈ１４（第５閾値）より小さいかを判定する。この条件を満たせば（ステップＳ２０３−ＹＥＳ）ステップＳ２０４に進み、この条件を満たさなければ（ステップＳ２０３−ＮＯ）ステップＳ２０８に進む。
【００８２】
これにより、動きがあった部分が顔であるとみなされた場合は、その動きがあった部分を判定対象から除外することができる。
【００８３】
ステップＳ２０４で、分割手段１１２は、例えば差分画像を、第１領域を外接する矩形の線分を延長することで、９つのブロックに分割する。
【００８４】
ステップＳ２０５で、計数手段１１４は、第２領域を含むブロック数を計数する。計数手段１１４は、例えば、条件４を満たすブロックをカウントする。
【００８５】
ステップＳ２０６で、動き判定手段１１６は、計数手段１１４によりカウントされたカウント値（ブロック数）が閾値Ｔｈ１１（第１閾値）より大きいか否かを判定する。この条件を満たせば（ステップＳ２０６−ＹＥＳ）、ステップＳ２０７に進み、この条件を満たさなければ（ステップＳ２０６−ＮＯ）、ステップＳ２０９に進む。
【００８６】
ステップＳ２０７で、動き判定手段１１６は、第１領域に対する第２領域の面積比が閾値Ｔｈ１２（第２閾値）より大きいか否かを判定する。この条件を満たせば（ステップＳ２０７−ＹＥＳ）ステップＳ２０８に進み、この条件を満たさなければ（ステップＳ２０７−ＮＯ）ステップＳ２０９に進む。
【００８７】
ステップＳ２０８で、動き判定手段１１６は、第１領域を手の動き以外の動きにより生じた領域であると判定する。
【００８８】
ステップＳ２０９で、動き判定手段１１６は、第１領域を手の動きにより生じた領域であると判定する。
【００８９】
判定手段１１０は、１つの第１領域に対して動き判定処理が終わると、次の第１領域に対して、ステップＳ２０１から処理を行う。
【００９０】
なお、第１領域の面積判定（ステップＳ２０１）や、顔認識判定（ステップＳ２０２、Ｓ２０３）は、動き判定手段１１６で行うようにしたが、それぞれ別途の手段で行うようにしてもよい。
【００９１】
また、手の動き判定処理では、ステップＳ２０６がＮＯの場合であり、かつ、ステップＳ２０７がＮＯの場合に、ステップＳ２０９の処理を行うようにしてもよい。つまり、動き判定手段１１６は、第２領域のブロック数が閾値Ｔｈ１１以下であり、かつ、第１領域に対する第２領域の面積比が閾値Ｔｈ１２以下である場合に、第１領域を手の動きと判定してもよい。
【００９２】
＜ハードウェア＞
次に、実施例における画像処理装置１０のハードウェア構成について説明する。図１０は、実施例における画像処理装置１０のハードウェアの一例を示す図である。図１０に示す画像処理装置１０は、制御部２０２と、主記憶部２０４と、補助記憶部２０６と、通信部２０８と、記録媒体Ｉ／Ｆ部２１０と、撮像部２１２とを少なくとも有する。各部は、バスを介して相互にデータ送受信可能に接続されている。
【００９３】
制御部２０２は、コンピュータの中で、各装置の制御やデータの演算、加工を行うＣＰＵ（Central Processing Unit）である。また、制御部２０２は、主記憶部２０４や補助記憶部２０６に記憶されたプログラムを実行する演算装置であり、通信部２０８や各記憶部からデータを受け取り、演算、加工した上で、出力部や各記憶部に出力する。
【００９４】
また、制御部２０２は、例えば補助記憶部２０６に記憶される動き判定を行うためのプログラムを実行することで、上述した処理を実行することができる。
【００９５】
主記憶部２０４は、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などであり、制御部２０２が実行する基本ソフトウェアであるＯＳやアプリケーションソフトウェアなどのプログラムやデータを記憶又は一時保存する記憶装置である。
【００９６】
補助記憶部２０６は、ＨＤＤ（Hard Disk Drive）などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。また、補助記憶部２０６は、記録媒体２１４などから取得された複数の画像や動き判定を行うためのプログラムを記憶しておいてもよい。
【００９７】
通信部２０８は、有線又は無線で通信を行う。通信部２０８は、例えば、サーバなどから複数の画像を取得し、例えば補助記憶部２０６に記憶させる。
【００９８】
記録媒体Ｉ／Ｆ（インターフェース）部２１０は、ＵＳＢ（Universal Serial Bus）などのデータ伝送路を介して接続された記録媒体２１４（例えば、フラッシュメモリなど）と画像処理装置１０とのインターフェースである。
【００９９】
また、記録媒体２１４に、所定のプログラムを格納し、この記録媒体２１４に格納されたプログラムは記録媒体Ｉ／Ｆ部２１０を介して画像処理装置１０にインストールされる。インストールされた所定のプログラムは、画像処理装置１０により実行可能となる。
【０１００】
なお、記録媒体２１４を例えばＳＤカードとした場合は、記録媒体Ｉ／Ｆ部２１０は、ＳＤカードスロットである。
【０１０１】
撮像部２１２は、例えば、ＣＣＤ（Charge Coupled Device）センサ、又はＣＭＯＳ（Complementary Metal Oxide Semiconductor）センサを有するカメラである。撮像部２１２は、例えば人物を含む画像を取得し、制御部２０２に出力する。
【０１０２】
なお、画像処理装置１０は、必ずしも撮像部２１２を必要とするわけではなく、カメラと接続され、そのカメラから画像を取得できる構成であればよい。
【０１０３】
図２に示す各手段は、例えば制御部２０２及びワーキングメモリとしての主記憶部２０４により実現されうる。
【０１０４】
以上、実施例によれば、手の動きを適切に判定し、手の動きの誤判定を低減することができる。また、実施例では、ハンドジェスチャを検出するにあたり、手の動きとそれ以外の体の動きを区別するために、第１領域抽出と、第２領域抽出を行い、それらの動きの大きさや割合を考慮する。
【０１０５】
これにより、立ち座りの際の顔の動きや、カメラの前を人が横切った場合等を手の動きと誤判定することなく、ユーザが意図的に動かした手の動きを判定し、ハンドジェスチャを認識することができる。
【０１０６】
また、実施例では、ジェスチャを行うロボットなどを撮影した画像からも、ジェスチャ認識を行うことができる。例えば、ロボットの腕の部分とボディの部分との色が異なる場合に、実施例によれば、ロボットの腕の動きを認識することもできる。
【０１０７】
なお、前述した実施例で説明した動き判定処理、ジェスチャ認識処理を実現するためのプログラムを記録媒体に記録することで、実施例での動き判定処理、ジェスチャ認識処理をコンピュータに実施させることができる。
【０１０８】
例えば、このプログラムを記録媒体に記録し、このプログラムが記録された記録媒体をコンピュータや携帯端末、スマートフォン、タブレット端末、デジタルサイネージなどの大型端末に読み取らせて、前述した動き判定処理、ジェスチャ認識処理を実現させることも可能である。また、上記実施例では、単眼のカメラで実現することができ、コスト面からも効率的である。
【０１０９】
なお、記録媒体は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリー等、様々なタイプの記録媒体を用いることができる。また、記録媒体は、搬送波を含まない。
【０１１０】
以上、実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した各実施例の構成要素を全部又は複数を組み合わせることも可能である。
【０１１１】
なお、以上の各実施例に関し、さらに以下の付記を開示する。
（付記１）
２つの画像から差分画像を生成する生成手段と、
前記差分画像の差分がある領域に対して、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出する抽出手段と、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、手の動きか否かを判定する判定手段と
を備える画像処理装置。
（付記２）
前記判定手段は、
前記差分画像をブロックに分割する分割手段と、
少なくとも前記第２領域を含むブロック数を計数する計数手段と、
前記第２領域の動き量を表す、前記第２領域を含むブロック数と、前記第１領域に対する前記第２領域の面積比とを用いて、前記第１領域に対して手の動きか否かを判定する動き判定手段と
を有する付記１記載の画像処理装置。
（付記３）
前記動き判定手段は、
前記ブロック数が第１閾値以下、又は、前記面積比が第２閾値以下の少なくともいずれかであれば、前記第１領域を手の動きと判定する付記２記載の画像処理装置。
（付記４）
前記分割手段は、
前記第１領域を含む矩形の線分を延長することで、前記差分画像を分割する付記２又は３記載の画像処理装置。
（付記５）
前記計数手段は、
前記第２領域を含むブロックの面積に対する該ブロック内の前記第２領域の画素数の割合が、第３閾値以上であるブロック数を計数する付記２乃至４いずれか一項に記載の画像処理装置。
（付記６）
前記抽出手段により、前記第１領域が複数抽出された場合、
前記判定手段は、
それぞれの第１領域に対して、手の動きの判定処理を行う付記１乃至５いずれか一項に記載の画像処理装置。
（付記７）
前記判定手段は、
前記第１領域の面積が第４閾値より大きいか否かにさらに基づき、手の動きか否かを判定する付記１乃至６いずれか一項に記載の画像処理装置。
（付記８）
前記判定手段は、
前記第１領域に対して顔認識処理を行い、前記第１領域が顔であるか否かにさらに基づき、手の動きか否かを判定する付記１乃至７いずれか一項に記載の画像処理装置。
（付記９）
前記第４閾値は、前記画像を撮影したカメラと、前記人物との距離に応じて変更される付記７記載の画像処理装置。
（付記１０）
２つの画像から差分画像を生成し、
前記差分画像の差分がある領域に対し、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出し、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、前記第１領域に対して手の動きか否かを判定する処理をコンピュータが実行する画像処理方法。
（付記１１）
２つの画像から差分画像を生成し、
前記差分画像の差分がある領域に対し、所定の色に対応する第１領域と、前記第１領域以外の第２領域とを抽出し、
前記第２領域の面積から判断される該第２領域の動き量と、前記第１領域及び前記第２領域の大きさとに基づき、前記第１領域に対して手の動きか否かを判定する処理をコンピュータに実行させるためのプログラム。
【符号の説明】
【０１１２】
１０  画像処理装置
１０２  画像取得手段
１０４  生成手段
１０６  抽出手段
１０８  前処理手段
１１０  判定手段
１１２  分割手段
１１４  計数手段
１１６  動き判定手段
１１８  認識手段
２０２  制御部
２０４  主記憶部
２１２  撮像部
【図１】
0005895637.tif 000003
【図２】
0005895637.tif 000004
【図３】
0005895637.tif 000005
【図４】
0005895637.tif 000006
【図５】
0005895637.tif 000007
【図６】
0005895637.tif 000008
【図７】
0005895637.tif 000009
【図８】
0005895637.tif 000010
【図９】
0005895637.tif 000011
【図１０】
0005895637.tif 000012