JP2015043141A - ジェスチャ認識装置および制御プログラム - Google Patents
ジェスチャ認識装置および制御プログラム Download PDFInfo
- Publication number
- JP2015043141A JP2015043141A JP2013174440A JP2013174440A JP2015043141A JP 2015043141 A JP2015043141 A JP 2015043141A JP 2013174440 A JP2013174440 A JP 2013174440A JP 2013174440 A JP2013174440 A JP 2013174440A JP 2015043141 A JP2015043141 A JP 2015043141A
- Authority
- JP
- Japan
- Prior art keywords
- gesture
- motion
- subject
- gesture recognition
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Image Analysis (AREA)
Abstract
【課題】ジェスチャ動作の誤検出又は誤認識が生じた場合に、画像に不自然な被写体の動作が残ることを防ぐ。【解決手段】ジェスチャ動作の認識を行う際、ジェスチャ認識部109は予め設定された動作モデルとジェスチャ動作とを比較してその類似度を求め、類似度が第1の類似閾値未満でかつ当該第1の類似閾値よりも小さい第2の類似閾値以上であると、ジェスチャ動作を示すジェスチャ情報をメモリ102に記憶する。類似度が第1の類似閾値以上であると、CPU101はジェスチャ動作に対応付けられた制御命令を実行し、メモリに記憶されたジェスチャ情報に基づいて制御命令が行われたジェスチャ動作から所定の時間以内に存在するジェスチャ動作までの期間を動画像において予め定められた画像処理を施す効果対象期間とする。【選択図】図7
Description
本発明は、ジェスチャ認識装置および制御プログラムに関し、特に、ジェスチャ認識によって認識された人の動きに基づいて電子機器などの各種機器の制御を行う技術に関する。
一般に、人間の身振り又は手振りを認識する技術は、柔軟なMan−Machine Interface System(マンマシンインタフェースシステム)を構築する上で重要な技術である。特に、電子機器の1つであるデジタルカメラなどの撮像装置において、被写体にデータグローブなどの接触型センサ又はマーカーを装着させることなく、撮像の結果得られた画像に応じて被写体の動作を認識して撮影制御を行うものが知られている。
このような撮像装置においては、例えば、「頭の上で手を振る」という動作に対して「静止画撮影」という制御情報が関連付けてメモリなどに登録され、撮像中に被写体が頭の上で手を振る動作を行うことによって、静止画撮影の制御が行われる。
さらに、このような撮像装置によって動画撮影を行う際、明暗および露出などの画質調整、ズーム操作、および録画停止などの撮像制御を実行するために行われる被写体の動作が画像として記録されることを防止することが行われている。
ここでは、撮影中および撮影後に被写体認識技術およびマッチング技術を用いて不自然な被写体の動作について画像処理を行って、撮像制御を実行するために行われる被写体の動作が画像として記録されることを防止するようにしている。
例えば、画像(以下映像ともいう)に対して、予めセットした処理パラメータと編集したい映像情報および置換情報とを用いて映像から編集したい映像情報と類似する箇所を抽出して置換情報で置換した映像を作成するようにしたものがある(特許文献1参照)。
ところで、人間の身振り又は手振りを認識するジェスチャ認識技術においては、撮影環境又は被写体の些細な動き、そして、ジェスチャ認識の精度などによって不可避的に誤検出又は誤認識が起こりうる。このような場合には、被写体は意図した制御命令を実行するため被写体動作を何度か行うことになる。
このような状況においては、特許文献1に記載のように、不自然な被写体の動作について画像処理を行ったとしても、編集したい映像情報と類似すると判定されない誤判定のため置換処理が行われず、映像に不自然な被写体の動作が残ってしまうことになる。
さらに、前述のように、ジェスチャ認識による制御では、特定のジェスチャを認識して当該ジェスチャに対応した制御が実行される。例えば、記録制御と特定のジェスチャとを対応付けておけば、当該ジェスチャを認識すると画像の記録が開始される。
同様に、記録停止についても特定のジェスチャを対応付けておけばジェスチャ認識の後に記録停止が行われる。
ところが、記録停止のためジェスチャを被写体が行っている期間も画像記録期間に含まれるので、記録すべき画像と異なる不要期間における画像、つまり、不自然な被写体の動作が記録されることになってしまう。
また、手の動き又はウインクなどの被写体の特定の部位のジェスチャによって撮像制御を行うことがあるが、画像における被写体の位置および大きさによってはジェスチャ認識ができないことがある。例えば、被写体の顔領域が大きく撮影されていれば、ウインク又は視線など目を特徴部位としたジェスチャ認識を行うことができるものの、このような画像の場合、手などは画像内に存在しない可能性が高く、目以外の特徴部位のジェスチャ認識を行うことは困難である。
一方、被写体の顔領域が小さく撮影されている状況では、手は画像に存在している可能性が高く手を特徴部位としたジェスチャ認識を行うことは可能であるものの、目については十分な画像解像度が得られず、検出が困難である可能性が高い。よって、ウインク又は視線など目を特徴部位としたジェスチャ認識を行うことは困難である。
加えて、慣性センサの1つである加速度センサを備える撮像装置が知られており、このような撮像装置ではジェスチャと関連付けて制御命令を登録する際、ユーザは撮像装置を把持した状態でジェスチャを行う。そして、当該ジェスチャ動作によって生じる撮像装置の動きを加速度センサで検知して制御命令とジェスチャとを関連付けてメモリに関連情報として登録する。
その後、ユーザは撮像装置を把持した状態でジェスチャを行えば、当該ジェスチャによる撮像装置の動きが加速度センサで検出されて、ジェスチャに対応する制御命令が実行される。
しかしながら、この場合には、ジェスチャの大きさが異なっても同一のジェスチャと認識されてしまい、さらには、ジェスチャの身体における相対的位置が異なっても同一のジェスチャとして認識されてしまう。つまり、ジェスチャの大きさ又は身体に対する相対的位置を区別して別のジェスチャとして認識することができない。
さらに、辞書に登録済のジェスチャがユーザの癖と同一であるなどの理由で、ユーザ創作のジェスチャに差し替えたいという要望がある。この際には、ユーザ創作のジェスチャを登録する必要がある。
一方、撮像装置を操作する用途で慣性センサを用いたいことがある。この様な場合には、つまり、撮像装置が慣性センサを備えている場合には、ユーザ創作のジェスチャを登録する際に、ユーザは撮像装置を把持してジェスチャを行う必要がある。
言い換えると、ユーザは撮像装置を振らなければならず、その結果、ユーザは撮像装置に備えられた表示部を確認すること又は撮像装置でユーザ自身を撮影することができない。
このため、ジェスチャを辞書に登録する際にのみ慣性センサを用いて、撮像装置を操作する際にはジェスチャを画像認識によって検出することが行われている。これによって、登録したいジェスチャを簡単にできるばかりでなく、撮像装置を操作する際においてもジェスチャによる操作を行うことができる。
ところが、ジェスチャを辞書に登録する際には、当該ジェスチャは慣性センサによって3次元で検出されることになる。一方、画像認識によってジェスチャを検出する際には2次元でジェスチャを検出することになる。このため、三次元で登録されたジェスチャを2次元のジェスチャに変換する必要がある。
この際、その変換処理が十分でないと、撮像装置に向いているつもりで演じたジェスチャと登録されたジェスチャとが一致せず、精度よくジェスチャ操作を行うことができないという課題がある。
さらに、ユーザ自身を撮影しつつ指で化粧をするようにレタッチ処理を行う撮像装置が知られている。このような撮像装置において、顔の器官と指との位置関係からレタッチ処理を選択する際、手又は指が顔に被っているとライブビューに表示される顔画像が見づらくなってレタッチ処理を選択することが難しくなってしまう。
従って、本発明の第1の目的は、ジェスチャの誤検出又は誤認識が生じた場合においても、画像処理の際に映像(画像)に不自然な被写体の動作が残ることを低減することのできるジェスチャ認識装置および制御プログラムを提供することにある。
本発明の第2の目的は、画像における被写体の位置又は大きさなどの被写体状態に依存することなくジェスチャ認識を行うことのできるジェスチャ認識装置および制御プログラムを提供することにある。
本発明の第3の目的は、3次元で登録されたジェスチャ動作を用いて、画像認識によって検出されたジェスチャによる制御を行うことのできるジェスチャ認識装置および制御プログラムを提供することにある。
本発明の第4の目的は、ユーザ自身を撮影しつつレタッチ処理を行う際、容易にレタッチ処理を選択することのできるジェスチャ認識装置および制御プログラムを提供することにある。
上記の目的を達成するため、本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該認識したジェスチャ動作に応じて制御命令を実行するジェスチャ認識装置であって、前記ジェスチャ動作の認識を行う際、予め設定された動作モデルと前記ジェスチャ動作とを比較してその類似度を求める照合手段と、前記類似度が予め定められた第1の類似閾値未満でかつ当該第1の類似閾値よりも小さい第2の類似閾値以上であると、前記ジェスチャ動作を示すジェスチャ情報をメモリに記憶し、前記類似度が前記第1の類似閾値以上であると、前記ジェスチャ動作に対応付けられた制御命令を実行するとともに、前記メモリに記憶された前記ジェスチャ情報に基づいて、前記制御命令が行われたジェスチャ動作から所定の時間以内に存在するジェスチャ動作までの期間を、前記画像において予め定められた画像処理を施す効果対象期間とする制御手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、前記ジェスチャ動作が開始された際に、前記機器の現在の状態を示す状態情報を記憶する状態記憶手段と、前記ジェスチャ動作に応じた制御命令の属性が停止制御および開始制御のいずれであるかを判定する判定手段と、前記判定手段によって前記制御命令の属性が開始制御であると判定されると、前記ジェスチャ動作が認識されたタイミングで当該制御命令を実行し、前記判定手段によって前記制御命令の属性が停止制御であると判定されると、前記状態情報が示す機器の状態と等価となるように前記制御命令を実行する制御手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、前記画像における前記被写体の状況に応じて前記ジェスチャ動作の認識に用いる被写体の特定部位を決定する決定手段と、前記決定手段によって決定された特定部位の動作に応じて前記ジェスチャ動作の認識を行う認識手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作を検出する第1の検出手段と、前記ジェスチャ動作に応じて前記被写体の動きの大きさを検出する第2の検出手段と、前記ジェスチャ動作に関連付けて前記制御命令をメモリに登録するするとともに、前記被写体の動きの大きさに応じて、前記被写体に対する前記被写体の動きの相対的大きさをメモリに登録する登録手段と、前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記被写体の動きの相対的大きさを参照して、前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作の軌跡をジェスチャ軌跡として検出する第1の検出手段と、前記ジェスチャ軌跡の前記被写体の身体に対する相対的位置をジェスチャ位置として設定する設定手段と、前記ジェスチャ軌跡に関連付けて前記制御命令をおよび前記ジェスチャ位置をメモリに登録する登録手段と、前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記ジェスチャ位置を参照して、前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、前記機器の移動軌跡を3次元ジェスチャ動作として検出する検出手段と、前記3次元ジェスチャ動作を平面に投影した面積が最大となる方向に応じて前記3次元ジェスチャ動作を2次元ジェスチャ動作に変換する正面方向を決定する決定手段と、前記正面方向に基づいて前記3次元ジェスチャ動作を前記2次元ジェスチャ動作に変換する手段と、前記ジェスチャ動作と前記2次元ジェスチャ動作とを比較して前記制御命令を実行する制御手段と、を有することを特徴とする。
本発明によるジェスチャ認識装置は、予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じてレタッチ処理を行う制御命令を実行するジェスチャ認識装置であって、前記ジェスチャ動作として前記画像において所定の指示部によって前記被写体の所定の領域を指し示す指示動作を検出する検出手段と、前記指示部と前記所定の領域との位置関係に応じて前記所定の領域に前記レタッチ処理を行うか否かを選択する選択手段と、前記選択手段によって前記レタッチ処理が選択された際、前記指示部によって前記所定の領域が被われていると、前記指示部によって前記所定の領域が被われる直前のフレームにおける画像について前記レタッチ処理を行う制御手段と、を有することを特徴とする。
本発明によれば、被写体によるジェスチャ動作について誤検出又は誤認識があった場合に、認識されたジェスチャ動作を基準としてその前後に存在する誤認識のジェスチャ動作を含む期間について所定の画像処理を行う期間である効果対象領域を設定するようにした。よって、画像に不自然な被写体の動作が残ったまま記録されることを防ぐことができる。
さらに、本発明によれば、画像における被写体の位置又は大きさなどの被写体の状態に依存することなくジェスチャ認識を行うことができる。
本発明によれば、加速度センサなどの慣性センサを用いて登録したジェスチャを参照して、ジェスチャ動作の大きさを考慮してジェスチャ動作を認識しているので同一のジェスチャ動作であってもジェスチャ動作を区別することができる。また、ジェスチャ動作の身体における相対的位置を考慮しているので、同一のジェスチャ動作であってもジェスチャ動作を区別することができる。
また、本発明によれば、3次元で登録されたジェスチャ動作を用いて、画像認識によって検出されたジェスチャによる制御を行うことができる。そして、ユーザ自身を撮影しつつレタッチ処理を行う際、指示部によって所定の領域が被われていても、常にライブビュー画像においては指示部によって所定の領域が被われていない状態でレタッチ処理の効果を確認することができる。
以下、本発明の形態によるジェスチャ認識装置の一例について図面を参照して説明する。
[第1の実施形態]
図1は、本発明の第1の実施形態によるジェスチャ認識装置の一例についてその構成を示すブロック図である。
図1は、本発明の第1の実施形態によるジェスチャ認識装置の一例についてその構成を示すブロック図である。
図示のジェスチャ認識装置100は、CPU101、メモリ102、不揮発性メモリ103、画像処理部104、撮像部105、記憶媒体I/F106、被写体検出部108、ジェスチャ認識部109、外部I/F(インタフェース)110、および通信I/F111を有している。そして、これらブロックは内部バス150によって相互に接続されている。
CPU101は、不揮発性メモリ103に格納されたプログラムに応じて、メモリ102をワーク用メモリとして用いてジェスチャ認識装置100の全体を制御する。なお、メモリ102は、例えば、RAMである。
不揮発性メモリ103は、電気的に消去・記録可能なメモリであって、例えば、EEPROMが用いられる。そして、不揮発性メモリ103には、前述のように、CPU101が動作するための各種プログラムなどが格納される。
画像処理部104は、CPU101の制御下でメモリ102又は記録媒体107に格納された画像データ、撮像部105による撮像の結果得られた映像信号(画像信号ともいう)、および外部I/F110又は通信I/F111を介して取得した画像データなどに対して各種の画像処理を施す。
画像処理部104で行われる画像処理には、例えば、A/D変換処理、D/A変換処理、符号化処理、圧縮処理、デコード処理、拡大/縮小処理(リサイズ)、ノイズ低減処理、および色変換処理などがある。
なお、図示の例では、画像処理部104は、特定の画像処理を施すための専用の回路ブロックで構成されているが、画像処理によっては画像処理部104を用いることなくCPU101が画像処理を行うようにしてもよい。
図示はしないが、撮像部105は、複数のレンズを備える光学系と撮像センサ(例えば、CCD又はCMOSセンサ)とを有しており、ユーザによるジェスチャが撮影可能な方向に向けて配置されている。撮像部105による撮像の結果得られた画像(映像信号)は、画像処理部104に送られる。
記憶媒体I/F106は、メモリカード、ハードディスク、CD、又はDVDなどの記録媒体107が装着される。そして、記憶媒体I/F106は、CPU101の制御下で記録媒体107から画像データを読み出すとともに、記録媒体107に画像データを書き込む。
被写体検出部108は、画像処理部104の出力である画像データを受けて、当該画像データにおいて被写体領域を検出する。ここでは、後述するジェスチャ認識部109はジェスチャである人物の身振り又は手振りを認識し、被写体検出部108は被写体領域として人物領域を検出する。
被写体検出部108で用いられる検出手法として、例えば、特開2009−211311号公報に記載の手法が用いられる。つまり、被写体検出部108は局所的な被写体の輪郭についてそのエッジ強度を局所特徴量として検出する。
なお、画像データから特徴量を抽出する手法として、例えば、Sobelフィルタ処理、Prewittフィルタ処理、およびHaarフィルタ処理などの様々な手法が知られている。そして、被写体検出部108は、局所特徴量に応じて人物判別器によって被写体領域が人物領域又は非人物領域のいずれであるかを判別する。人物判別器における判別には、例えば、AdaBoost学習などのような機械学習が用いられる。
ジェスチャ認識部109は、被写体検出部108によって検出された人物領域に基づいて人物の動作特徴量を抽出する。ここでは、ジェスチャ認識部109は、人物領域において顔および腕などの人体を構成する各パーツの領域を推定するため、人物領域に所定の形状モデルを当てはめる。
この形状モデルとは、予め単純化された3次元パーツモデル(円筒、楕円体、super−quadricsなど)によって近似された人体各部のモデルである。ジェスチャ認識部109は、例えば、顔部(頭部)の位置および姿勢を基準として、腕、手、足、および胴体などの存在範囲を推定する。
そして、ジェスチャ認識部109は、対象となる人物領域を構成するパーツ毎の特徴量(局所的かつ幾何学的な特徴、動きベクトル、および色成分特徴など)をパーツの代表点付近における平均的特徴量として内蔵メモリに格納して、パーツ単位における代表点位置を動作特徴量として抽出する。
さらに、ジェスチャ認識部109は、抽出した動作特徴量とメモリ102又は不揮発性メモリ103などに記憶された動作モデルとを照合する。ここで、動作モデルとは、1つ以上のパーツによる時系列的な特徴量を示すモデルである。
なお、メモリ102又は不揮発性メモリ103に記憶される動作モデルは1つに限定されず、複数の動作モデルを記憶するようにしてもよい。また、ジェスチャ認識部109は記録媒体107から動作モデルを読み込むようにしてもよいし、さらには、後述する外部I/F110又は通信I/F111を用いて動作モデルを取得することもできる。
ジェスチャ認識部109は、照合の結果として、動作特徴量と動作モデルとの類似度を算出する。そして、ジェスチャ認識部109は当該類似度に基づいて、抽出された動作特徴量と動作モデルとが同一の動作を示すか否かを判定する。
なお、人物動作の抽出手法については、例えば、文献(星野、「人物動作における個性の抽出と再構成」画像電子学会誌第30巻、pp.631−640, 2001)に記載の手法が用いられる。
また、動作モデルとのマッチング処理の基本的な手法として、例えば、入力画像の遷移系列とモデルとの対応付けをDynamic time warpingで行う手法がある(T.J.Darell and A.P.Pentland, 1993 “Space−Time Gestures,”)。
さらに、動作の状態遷移を確率モデルで行う隠れマルコフモデルを用いた手法(J.Yamato, J.Ohya, and K.Ishii, 1992 “Recognizing Human Action in Time−Sequential Images Using Hidden Markov Model,” Proc. CVPR, pp. 379−385)、そして、時空間エッジ画像ベクトル列の連続動的計画法(Continuous Dynamic Programming)による手法(西村、岡「ジェスチャ動画像の逆時間動作や静止動作をスポッティング認識するためのNon−monotonic連続DP」、信学技報、PRMU96−32、pp. 49−56, 1996)などがある。
ジェスチャ認識部109は、動作特徴量と動作モデルとが同一の動作であるか否かを判定する際、例えば、照合結果である類似度が第1の閾値以上(第1の類似閾値以上)であるか否かによって同一の動作であるかを判定する。
なお、上記の動作モデルは制御命令と対応付けられてメモリ102又は不揮発性メモリ103などに記憶されている。
第1の閾値以上である類似度の動作モデルが存在すると、ジェスチャ認識部109は第1の閾値以上となる類似度についてその類似度が最大となる動作モデルに対応付けられた制御命令を示す識別情報をCPU101に出力する。そして、CPU101は、当該識別情報に基づいて制御命令を実行する。
さらに、CPU101は当該動作特徴量に対応する被写体動作の開始と終了および後述するメモリ102に記憶された動作特徴量に対応する被写体動作の開始と終了に基づいて、入力された画像データ(時系列画像)において画像処理およびスキップ処理を施す期間を設定する。
一方、第1の閾値以上となる類似度の動作モデルが存在しないと、ジェスチャ認識部109は類似度が第1の閾値(第1の類似閾値)よりも小さい第2の閾値(第2の類似閾値)以上であるか否かを判定する。第1の類似閾値未満で第2の類似閾値以上である類似度、つまり、動作モデルが存在すると、ジェスチャ認識部109は、その動作特徴量を取得した開始時刻と終了時刻および当該類似度をメモリ102に記憶する。以後、メモリ102に記憶されるデータを総称してジェスチャ情報と呼ぶ。
類似度が第2の閾値以上となる動作モデルが複数存在する場合には、ジェスチャ認識部109は第2の閾値以上である動作モデルに対応するジェスチャ情報をメモリ102登録してもよい。さらに、第2の閾値以上である動作モデルにおいてその類似度が最大の動作モデルに対応するジェスチャ情報のみをメモリ102に登録するようにしてもよい。
なお、以下の説明では、第2の閾値以上である動作モデルにおいて類似度が最大の動作モデルに対応するジェスチャ情報のみをメモリ102に登録する場合について説明する。
第2の閾値以上である動作モデルが存在しないと、ジェスチャ認識部109はその後の処理を行わない。このようにして、撮影された被写体(ここでは人物)のジェスチャに基づいて、CPU101は各種制御を行う。
外部I/F111は、外部機器と有線ケーブル又は無線によって接続され、画像データおよび音声信号の入出力を行うためのインタフェースである。通信I/F112は、外部機器又はインターネットなどと通信を行って、画像ファイルおよびコマンドなどの各種データの送受信を行うためのインタフェースである。
図1に示すジェスチャ認識装置100では、撮像部105によって得られた映像信号(つまり、予め定められた間隔(フレームレート)で与えられる時系列画像)に基づいて、被写体検出部108が被写体(人物)を検出する。そして、ジェスチャ認識部109は、検出された被写体の手振り又は身振りなどのジェスチャを認識する。CPU101は、認識されたジェスチャに対応する制御命令を実行するとともに、時系列画像に対して画像処理又はスキップ処理を施す期間を設定する。
図2は、図1に示すジェスチャ認識装置の認識動作を説明するためのフローチャートである。なお、図2に示すフローチャートに係る処理は、CPU101の制御下で行われる。
認識動作を開始すると、CPU101の制御下で、被写体検出部108は、画像処理部104から撮像部105による撮像の結果得られた画像データを取得して、当該画像について被写体領域の検出処理を行う(ステップS201)。そして、被写体検出部108はその検出結果をCPU101に出力する。
続いて、CPU101は、被写体検出部108による検出結果に基づいて被写体領域が存在するか否かを判定する(ステップS202)。被写体領域が存在すると(ステップS202において、NO)、CPU101はステップS201の処理に戻る。
一方、被写体領域が存在すると(ステップS202において、YES)、ジェスチャ認識部109は、CPU101の制御下で被写体領域に基づいて被写体動作の特徴量を抽出する(ステップS203)。そして、CPU101は、ジェスチャ認識部109によって複数フレームに亘って抽出された特徴量に応じて、被写体動作候補が存在するか否か、つまり、被写体動作候補が抽出されたか否かを判定する(ステップS204)。
被写体動作候補が存在しないと(ステップS204において、NO)、CPU101はステップS201の処理に戻る。一方、被写体動作候補が存在すると(ステップS204において、YES)、CPU101の制御下で、ジェスチャ認識部109は、抽出された被写体動作の特徴量とメモリ102に登録されているジェスチャ動作との照合を行う。そして、照合の結果として類似度を出力する(ステップS205)。
続いて、ジェスチャ認識部109は、各動作モデルとの類似度の各々について、その類似度が所定の第1の閾値TH1以上である動作モデルが存在するか否かを判定する(ステップS206)。類似度が第1の閾値TH1以上である動作モデルが存在すると(ステップS206において、YES)、ジェスチャ認識部109は当該動作モデルに対応付けられた制御命令の識別情報をCPU101に出力する。そして、CPU101は当該制御命令の識別情報に応じて、制御命令を実行する(ステップS207)。
ここで、制御命令の例として、例えば、撮像中に実行可能な「静止画撮影」、ズーム操作の「ズームイン」および「ズームアウト」、画質調整の明るさおよび露出の変更がある。
次に、CPU101はメモリ102に記憶されているジェスチャ情報に基づいて、所定の期間内に行われた被写体動作を抽出する(ステップS208)。つまり、CPU101は効果対象期間に設定するための被写体動作を抽出することになる。
なお、ステップS208で抽出される被写体動作とは、ステップS207で実行された制御命令に対応する被写体動作の検出開始時刻又は終了時刻から所定の時間内に行われた被写体動作をいう。
続いて、CPU101は、抽出した被写体動作に応じて効果対象期間を設定する(ステップS209)。その後、CPU101はステップS201の処理に戻る。
類似度が第1の閾値TH1以上である動作モデルが存在しないと(ステップS206において、NO)、ジェスチャ認識部109は照合結果である類似度が所定の第2の閾値TH2以上となる動作モデルが存在するか否かを判定する(ステップS210)。
類似度が所定の第2の閾値TH2以上となる動作モデルが存在すると(ステップS210において、YES)、ジェスチャ認識部109は被写体動作の特徴量に係る取得開始時刻と取得終了時刻、そして、第2の閾値TH2以上である類似度をジェスチャ情報としてCPU101に出力する。
CPU101は、上記のジェスチャ情報をメモリ102に記憶して(ステップS211)、ステップS201の処理に戻る。一方、類似度が所定の第2の閾値TH2以上となる動作モデルが存在しないと判定されると(ステップS210において、NO)、CPU101はステップS201の処理に戻る。
図3は、図1に示すジェスチャ認識装置によって認識される被写体の動作を時系列的に示す図である。そして、図3(a)は被写体動作の第1の例を示す図であり、図3(b)は被写体動作の第2の例を示す図である。
まず、図2および図3(a)を参照して、いま、ジェスチャ認識装置が、図3(a)に示す被写体動作1について認識処理を行って、動作モデルとの照合結果である類似度R1が第1の閾値TH1以上であるものとする。
図3(a)に示す例では、被写体動作1の前においては、被写体動作が存在せず、CPU101は、効果対象期間として被写体動作1の開始時刻t1から終了時刻t2までを画像処理又はスキップ処理を行う対象期間に設定することになる。
図3(b)に示す例では、被写体(つまり、ユーザ)が制御命令を実行させるため被写体動作1および被写体動作2を行ったにも拘わらず、誤検出又は誤認識などに起因して動作モデルとの照合結果である類似度が第1の閾値TH1未満で第2の閾値TH2以上であるものとする。
なお、第2の閾値TH2は、被写体動作と動作モデルとの類似度が制御命令を実行させる類似度には達していないものの、被写体の自然な動作とは異なって被写体が動作モデルと同一の被写体動作を行った可能性があることを判定するために用いられる。また、ここでは、被写体動作2に続く被写体動作3と動作モデルとの照合結果である類似度が第1の閾値TH1以上であるものとする。
図3(b)においては、図2に示すステップS206において、被写体動作1と動作モデルとの照合結果である類似度が第1の閾値TH1未満であると判定されるので、ジェスチャ認識装置はステップS210の処理に移る。そして、ステップS210において、被写体動作1と動作モデルとの類似度が第2の閾値TH2以上であると判定されるので、ジェスチャ認識装置は被写体動作1に係る取得開始時刻t1と取得終了時刻t2、その類似度R1をジェスチャ情報として記憶することになる。
同様にして、被写体動作2に係る類似度R2も第1の閾値TH1未満で、かつ第2の閾値TH2以上であるので、ジェスチャ認識装置は被写体動作2に係る取得開始時刻t3と取得終了時刻t4、その類似度R2をジェスチャ情報として記憶することになる。
被写体動作3については、その類似度R3が第1の閾値TH1以上であるので、ジェスチャ認識装置、つまり、CPU101は、ステップS207で類似度R3の動作モデルに対応付けられた制御命令の識別情報に応じた制御命令を実行する。そして、CPU101は、ステップS208においてメモリ102に記憶されているジェスチャ情報に基づいて、効果対象期間に設定する被写体動作を抽出する。
前出のように、メモリ102には被写体動作1および被写体動作2に係るジェスチャ情報が記憶されている。ここで、ジェスチャ情報に基づいて抽出される被写体動作とは、ステップS207において実行された制御命令に対応する被写体動作の開始時刻又は終了時刻から所定時間内に開始又は終了した被写体動作である。
例えば、CPU101は制御命令が実行された被写体動作3の開始時刻t5を基準として、ジェスチャ情報のから所定時間以内に開始された被写体動作を抽出する。
図4は、図1に示すジェスチャ認識装置によって認識された被写体動作に応じて設定される効果対象期間を説明するための図である。そして、図4(a)は効果対象期間の第1の例を示す図であり、図4(b)は効果対象期間の第2の例を示す図である。また、図4(c)は効果対象期間の第3の例を示す図である。
図4(a)に示す例では、CPU101は、実行した制御命令に対応する被写体動作3の開始時刻t5を基準として、所定時間M以内に開始された被写体動作1および被写体動作2を抽出する。
ここでは、例えば、CPU101は、まず被写体動作2に係るジェスチャ情報である被写体動作2の開始時刻t3が開始時刻t5から所定時間M以内であることを判別する。
続いて、CPU101は被写体動作1の開始時刻t1が開始時刻t5から所定時間M以内であることを判別する。そして、被写体動作1の前に記憶された被写体動作に係るジェスチャ情報が存在しないので、CPU101は被写体動作1および被写体動作2を抽出して、前述のステップS209に進む。
図4(b)に示す例では、開始時刻t5から所定時間Mに開始時刻(ここでは、開始時刻t3)が存在するのは被写体動作2のみであるので、CPU101は被写体動作2のみを抽出してステップS209に進む。
図4(a)および図4(b)に示す例では、CPU101は、実行した制御命令に対応する被写体動作の「開始時刻」を用いたが、「終了時刻」を用いるようにしてもよい。この場合、図4(b)に示す被写体動作1の終了時刻t2は、被写体動作3の開始時刻t5を基準とすると所定時間M以内であるので、CPU101は被写体動作1も効果対象期間に設定される被写体動作として抽出することになる。
また、「ジェスチャ情報の開始時刻が所定時間M以内」ではなく、「ジェスチャ情報の終了時刻が所定時間M以内」である被写体動作を抽出するようにしてもよい。この場合、図4(c)に示す例では、被写体動作1の開始時刻t1および被写体動作2の開始時刻t3は、被写体動作3の終了時刻t6を基準とするとともに所定時間M以内に存在しない。よって、CPU101は、被写体動作1および被写体動作2をともに効果対象期間に設定される被写体動作として抽出しない。なお、ジェスチャ情報を用いた被写体情報の抽出は、図4に示す例示に限られない。
上述のようにして、被写体動作を抽出した後、CPU101は、ステップS209において、抽出した被写体動作に基づいて効果対象期間を設定する。図4(a)に示す例では、被写体動作1および被写体動作2が抽出される結果、CPU101は被写体動作1および被写体動作2を含む被写体動作1の開始時刻t1から被写体動作3の終了時刻t6を効果対象期間として設定する。
図4(b)に示す例では、被写体動作2が抽出される結果、CPU101は被写体動作2の開始時刻t3から被写体動作3の終了時刻t6を効果対象期間として設定する。また、図4(c)に示す例では、被写体動作1および被写体動作2のいずれも抽出されないので、CPU101は被写体動作3の開始時刻t5から終了時刻t6を効果対象期間として設定する。
なお、上述した処理が行われた時系列画像はメモリ102に一旦記憶された後、撮影データとしてエンコードされて記録媒体107に記憶される。
ここで、メモリ102のサイズに応じたジェスチャ認識装置100の処理動作について説明する。
まず、メモリ102に記憶可能な時系列画像が前述の所定時間M以上であるとする。この場合、CPU101は、メモリ102に記録された時系列画像に対して、効果対象期間の開始時刻と終了時刻に対して画像処理又はスキップ処理を実施するためのタグの付与を行うことができる。
さらに、CPU101はメモリ102に記録された時系列画像に対して、画像処理部104による画像処理、スキップ処理、又は削除処理などを行って、処理後の時系列画像に基づいて生成された映像データをエンコードして記録媒体107に記憶することも可能である。
次に、メモリ102が記憶可能な時系列画像が所定時間M未満であるとする。この場合には、効果対象期間に設定する被写体動作がメモリ102に記憶されている場合と記録媒体107に記憶されている場合によってその処理が異なる。
効果対象期間に設定する被写体動作がメモリ102に記憶されている場合には、CPU101は、前述の場合と同様に、メモリ102に記録された時系列画像に対してタグの付与、そして、画像処理、スキップ処理、又は削除処理などを行うことができる。
効果対象期間に設定する被写体動作が記録媒体107に記録されている場合には、CPU101は、記録媒体107に記憶されている画像データをデコードする。そして、CPU101はデコード後の画像データに含まれる効果対象期間に設定する被写体動作の開始時刻又は終了時刻にタグの付与、そして、画像処理、スキップ処理、又は削除処理を行う。その後、CPU101は再度エンコード処理を行って記録媒体107に画像データを記憶する。
このように、本発明の第1の実施形態では、被写体動作の特徴量と動作モデルとの類似度が第1の閾値TH1未満で、かつ第2の閾値TH2以上であると、当該被写体動作に係るジェスチャ情報をメモリに記憶する。そして、類似度が第1の閾値TH1以上である被写体動作に係る制御命令が実行された際に、当該被写体動作の開始時刻又は終了時刻から所定時間M以内に開始時刻又は終了時刻がある被写体動作を抽出する。続いて、制御命令が実行された被写体動作と抽出された被写体動作とを含む期間を画像処理又はスキップ処理を施す効果対象期間として設定する。
これによって、記録画像データにおける被写体動作を意識させることがない画像データを提供することができる。
なお、第1の実施形態では、実行した制御命令の前に行われた被写体動作のみを効果対象期間として設定する手法について説明したが、実行した制御命令の後に行われた被写体動作を効果対象期間に設定することも可能である。
例えば、実行した制御命令の終了から所定時間内に開始又は終了した被写体動作を抽出する。そして、抽出した被写体動作を含む期間を効果対象期間に設定する。このようにすれば、類似度が第1の閾値TH1未満であって、実行した制御命令の後に存在する被写体動作を効果対象期間として設定できるばかりでなく、実行した制御命令の前後に存在する被写体動作を効果対象期間として設定することもできる。
[第2の実施形態]
次に、本発明の第2の実施形態によるジェスチャ認識装置の一例について説明する。なお、第2の実施形態によるジェスチャ認識装置の構成は図1に示すジェスチャ認識装置と同様である。
次に、本発明の第2の実施形態によるジェスチャ認識装置の一例について説明する。なお、第2の実施形態によるジェスチャ認識装置の構成は図1に示すジェスチャ認識装置と同様である。
図5は、本発明の第2の実施形態によるジェスチャ認識装置の認識動作を説明するためのフローチャートである。なお、図5に示すフローチャートにおいて、図2に示すフローチャートのステップと同一のステップについては同一の参照符号を付して説明を省略する。
ステップS208において、前述のように、CPU101はジェスチャ情報に基づいて、効果対象期間に設定するための被写体動作を抽出する。そして、CPU101は、抽出した被写体動作からステップS207で実行した制御命令に対応する被写体動作と同一の被写体動作を抽出する(ステップS501)。その後、ステップS209において、CPU101はステップS501で抽出した被写体動作に応じて効果対象期間を設定する。
図6は、本発明の第2の実施形態に示すジェスチャ認識装置によって認識された被写体動作に応じて設定される効果対象期間を説明するための図である。
図6に示す例において、被写体動作1はズームインを指示するジェスチャであり、被写体動作2および被写体動作3の各々は静止画撮影を指示するジェスチャであるとする。まず、時刻t1からt2において被写体(つまり、ユーザ)はズームイン操作を行うための被写体動作1を行った。
ところが、被写体動作1はジェスチャ認識装置による誤検出又は誤認識などによって、その類似度R1が第2の閾値TH2以上でかつ第1の閾値TH1未満であったので、被写体動作1に対応する制御命令(ここでは、ズームイン)は実行されなかったものとする。
同様に、時刻t3からt4において、静止画撮影のために行われた被写体動作2についても誤検出又は誤認識などによってその類似度R2が第2の閾値TH2以上でかつ第1の閾値TH1未満であったので、制御命令(ここでは静止画撮影)は行われなかったものとする。
そして、被写体動作2の後、時刻t5からt6において行われた被写体動作3は、その類似度R3が第1の閾値TH以上であったので、被写体動作3に応じた制御命令(ここでは、静止画撮影)が実行されたものとする。
この場合、ステップS211において、被写体動作1および被写体動作2に係るジェスチャ情報がメモリ102に記憶されることになる。但し、第2の実施形態においては、ジェスチャ認識部109は被写体動作1および被写体動作2に係る開始時刻および終了時刻と動作モデルとの類似度の他に、動作モデルの識別情報をジェスチャ情報としてCPU101に出力する。
なお、動作モデルの識別情報とは、被写体動作1および被写体動作2に対応付けられた制御命令である「ズームイン」および「静止画撮影」又は制御命令に関連付けられた制御命令IDなどである。
前述のように、被写体動作2の後に行われた被写体動作3に応じた制御命令がステップS207で行われて、ステップS208でジェスチャ情報に基づいて被写体動作が抽出される。図6に示す例では、被写体動作1および被写体動作2の開始時刻t1およびt3は被写体動作3の開始時刻t5から所定時間M以内に存在するので、ここでは、被写体動作1および被写体動作2が抽出される。
その後、ステップS501において、CPU101は、被写体動作1および被写体動作2から、ステップS207で実行した制御命令に対応する被写体動作3と同一の被写体動作を抽出する。つまり、ここでは、CPU101はジェスチャ情報に含まれる動作モデルの識別情報に基づいて、制御命令(静止画撮影)を示す被写体動作3と同一の被写体動作である被写体動作2を抽出することになる。
続いて、ステップS209において、CPU101は、ステップS501において抽出された被写体動作2に応じて、被写体動作2の開始時刻t3から被写体動作3の終了時刻t6までを効果対象期間として設定する。
このように、本発明の第2の実施形態では、類似度が第1の閾値TH1未満でかつ第2の閾値TH2以上である被写体動作について対応する動作モデルに係る識別情報もジェスチャ情報として記憶する。そして、実行された制御命令に係る被写体動作から所定時間以内にありかつ当該被写体動作と同一の制御命令を示す被写体動作をジェスチャ情報に応じて抽出する。
その後、制御命令が実行された被写体動作と抽出された被写体動作とを含む期間を画像処理又はスキップ処理を行う効果対象期間として設定する。
これによって、第2の実施形態では、記録された画像データから、誤検出又は誤認識などに起因して行われた被写体動作を適切に取り除くことができ、被写体動作を意識させない画像データを得ることができる。
なお、第2の実施形態においても、第1の実施形態と同様に、実行された制御命令の後に行われた被写体動作を効果対象期間に設定するようにしてもよい。
[第3の実施形態]
続いて、本発明の第3の実施形態によるジェスチャ認識装置の一例について説明する。
続いて、本発明の第3の実施形態によるジェスチャ認識装置の一例について説明する。
なお、第3の実施形態によるジェスチャ認識装置の構成は図1に示すジェスチャ認識装置と同様であるが、ジェスチャ認識部109の構成が異なる。また、図示はしないが、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置で用いられる。
図7は、本発明の第3の実施形態によるジェスチャ認識装置に備えられたジェスチャ認識部109の構成についてその一例を示すブロック図である。
ジェスチャ認識部109は、特徴部位検出部701、初期姿勢照合部702、動作特徴抽出部703、動作照合部704、およびジェスチャ辞書記憶部705を備えている。特徴部位検出部701は、被写体検出部108で検出された被写体におけるジェスチャを認識するために用いる特徴部位を検出する。特徴部位は、例えば、被写体の手である。
この特徴部位(ここでは、手)の検出に当たっては、特徴部位検出部701は、例えば、肌色情報などの色特徴又はSobelフィルタ処理などによるエッジ強度を用いて形状特徴を抽出する。そして、特徴部位検出部701は、手判別器によって形状特徴について手又は非手領域を判別する。手判別器による判別には、例えば、AdaBoost学習などのような機械学習が用いられる。
なお、色特徴を用いて特徴部位の検出を行う際には、特徴部位検出部701は被写体検出部108で検出された顔領域における色情報を肌色情報として参照して、個人差および環境光の差に頑健な色特徴を抽出する。また、被写体検出部108によって検出された顔領域の位置および大きさに応じて手の検出範囲および検出する手の大きさに制限を設けることができる。
特徴部位検出部701は、検出した特徴部位である手の重心位置などを示す特徴部位情報を出力する。初期姿勢照合部702は、特徴部位情報とジェスチャ辞書記憶部705で記憶されたジェスチャの初期姿勢とが一致するか否かを判定する。一致すると判定するとジェスチャ開始の可能性があるので、初期姿勢照合部702はその時の撮像装置の状態をメモリ102に記憶する。
動作特徴抽出部703は、特徴部位情報に基づいて動作特徴を抽出する。被写体検出部108は画像処理部104より逐次与えられる画像データについて被写体検出を行っており、特徴部位検出部701から逐次特徴部位情報が動作特徴抽出部703に与えられる。動作特徴抽出部703は、特徴部位情報における変化を動作ベクトルとして蓄積することによって動作特徴量を抽出する。
動作照合部704は、動作特徴抽出部703によって抽出された動作特徴量とジェスチャ辞書記憶部705に記憶された動作特徴量とを照合する。ジェスチャ辞書記憶部705には、ジェスチャ辞書データとして動作特徴量と制御命令とが関連付けて記憶されている。
動作特徴量のマッチング処理を行う際には、前述の入力画像の遷移系列とモデルとの対応付けをDynamic time warpingという手法で行う方法が用いられる。また、動作の状態遷移を確率モデルで行う隠れマルコフモデルを用いた手法を用いるようにしてもよい。さらには、時空間エッジ画像ベクトル列の連続動的計画法を用いるようにしてもよい。
ジェスチャ辞書記憶部705に記憶された動作特徴量と動作特徴抽出部703によって抽出された動作特徴量とが一致すると、動作照合部704は動作特徴量とこれに対応する制御命令をCPU101に出力する。
CPU101は、動作照合部704から送られた動作特徴量および制御命令に基づいて、認識したジェスチャに対応する制御命令が停止制御又は開始制御であるか否かを判定する。制御命令が開始制御であれば、CPU101は当該制御命令を実行する。一方、制御命令(つまり、制御属性)が停止制御であれば、CPU101はメモリ102に記憶された撮像装置の状態と同等(つまり、等価)なるように制御命令を実行する。
図8は、本発明の第3の実施形態によるジェスチャ認識装置における認識動作の一例を説明するためのフローチャートである。
なお、図示のフローチャートに係る処理は、CPU101の制御下で行われる。また、このフローチャートに係る処理は、画像処理部104からジェスチャ認識部109に画像データが供給される度に行われる。
認識動作を開始すると、被写体検出部108は画像処理部104から送られた画像データについて被写体の検出を行う(ステップS801)。次に、特徴部位検出部701は、被写体検出部108で検出された被写体についてジェスチャ認識のための特徴部位を検出する(ステップS802)。そして、CPU101はジェスチャ認識途中であるか否かを判定する(ステップS803)。
例えば、ここでは、ジェスチャ認識途中であるか否かを判定するためのフラグ(ジェスチャ認識途中フラグ)を準備して、CPU101は当該フラグがONであるか否かを判定する。
ジェスチャ認識途中でなければ(ステップS803において、NO)、CPU101の制御下で初期姿勢照合部702は、検出された特徴部位とジェスチャ辞書記憶部705に記憶されたジェスチャの初期姿勢とを照合する(ステップS804)。そして、初期姿勢照合部702は照合結果に応じて特徴部位と初期姿勢とが一致しているか否かを判定する(ステップS805)。
特徴部位と初期姿勢とが一致していないと(ステップS805において、NO)、CPU101の制御下で、初期姿勢照合部702は認識処理を終了する。
一方、特徴部位と初期姿勢とが一致していると(ステップS805において、YES)、初期姿勢照合部702はメモリ102に撮像装置の状態(例えば、現在時刻)を記憶する(状態記憶:ステップS806)。そして、初期姿勢照合部702は、CPU101の制御下でジェスチャ認識途中としてジェスチャ認識途中フラグをONにセットして(ステップS807)、認識処理を終了する。
ジェスチャ認識途中であると、つまり、ジェスチャ認識途中フラグがONであると(S803において、YES)、動作特徴抽出部703は特徴部位情報に応じて動作特徴量を抽出する(ステップS808)。そして、動作照合部704は、抽出された動作特徴量とジェスチャ辞書記憶部705に記憶された動作特徴量(辞書データ)とを照合する(ステップS809)。
動作照合部704は、照合結果に応じて、抽出された動作特徴量とジェスチャ辞書記憶部705に記憶された動作特徴量とが一致するか否かを判定する(ステップS810)。一致する判定されると(ステップS810において、YES)、CPU101は当該ジェスチャに対応する制御命令の属性を判定する(ステップS811)。ここで、制御命令の属性判定は、開始に関する制御か又は停止に関する制御かを判定するものである。
例えば、ジェスチャの認識に対応した特定の制御命令Aを実行中に、制御命令Aに係るジェスチャが認識されるとCPU101は当該制御命令を停止するため、この制御命令の属性を停止属性と判定する。
一方、制御命令Aが実行されていない状態で、制御命令Aに係るジェスチャが認識されると、CPU101は当該制御命令を開始するため、この制御命令の属性を開始属性と判定する。
制御命令の属性が開始属性であると判定すると(ステップS811において、開始属性)、CPU101はジェスチャに対応する制御命令を実行する(ステップS812)。制御命令の属性が停止属性であると判定すると(ステップS811において、停止属性)、CPU101はジェスチャに対応する制御に関し、メモリ102に記憶された撮像装置の状態と同等となるように制御を実行する(ステップS813)。
ステップS812又はS813の処理に続いて、CPU101は、メモリ102に記憶されたジェスチャ認識装置100の状態(つまり、状態情報)は不要であるので、当該状態情報をクリアする(ステップS814)。さらに、ジェスチャ認識が完了したので、CPU101はジェスチャ認識途中フラグをOFFとして(ステップS815)、認識処理を終了する。
抽出された動作特徴量とジェスチャ辞書記憶部705に記憶された動作特徴量とが一致しないと判定すると(ステップS810において、NO)、動作照合部704は抽出した動作特徴量が全ての辞書データの動作特徴量と不一致であるか否かを判定する(S816)。
全てが不一致であると判定されると(ステップS816において、YES)、CPU101は、ステップS814の処理に進んで、メモリ102に記憶された撮像装置の状態(状態情報)は不要であるので、当該状態情報をクリアする。
一方、全てが不一致でないと判定されると(ステップS816において、NO)、CPU101は認識処理を終了する。
なお、全てが不一致でない状態では、ジェスチャ認識途中であって処理中の動作特徴量が辞書データと一致/不一致であるかを判定できない状況であることを示す。
図9は、本発明の第3の実施形態によるジェスチャ認識装置におけるジェスチャと画像記録期間との関係を説明するための図である。そして、図9(a)は従来のジェスチャ認識装置におけるジェスチャと画像記録期間との関係を示す図であり、図9(b)は本発明の第3の実施形態によるジェスチャ認識装置におけるジェスチャと画像記録期間との関係を示す図である。
ここでは、撮像装置で得られた画像(映像ともいう)の記録に関する制御はジェスチャ認識部109による認識結果に基づいて行われる。つまり、ジェスチャ辞書記憶部705には、特定のジェスチャと記録制御(記録制御命令)とが対応付けられて記憶されている。
まず、図9(a)を参照して、時刻901からジェスチャが開始されて、時刻902でジェスチャ認識部109がジェスチャの認識に成功したとする。この認識タイミングで、CPU101はジェスチャに対応する制御命令を実行する。ここでは、ジェスチャとして撮像装置の映像の記録開始に関する制御命令を認識したものとして、映像の記録が開始される。
次に、時刻903で映像記録停止の制御命令に対応するジェスチャが開始されて、時刻904において、ジェスチャ認識部109が当該ジェスチャを認識したものとする。図9(a)に示す例では、ジェスチャ認識を成功したタイミングで、当該ジェスチャに対応する制御命令が実行されるので、時刻904で映像記録に関する制御(ここでは、記録停止制御)が実行されることとなる。
よって、時刻902から時刻904までの期間が記録映像となる。時刻903から時刻904の期間は、記録停止のためのジェスチャを実施している期間であって、当該機関に係る映像は記録したい映像とはいえない。つまり、ユーザにとっては不要な映像が記録されてしまうことになる。
図9(b)においては、時刻905からジェスチャが開始され、時刻906でジェスチャ認識部109がジェスチャの認識に成功したものとする。ここでは、時刻905(つまり、ジェスチャ開始時)における撮像装置の状態(状態情報)がメモリ102に記憶される。例えば、状態情報として撮像装置における現在時刻が記憶される。
次に、時刻906(つまり、ジェスチャ認識完了時)において、CPU101は認識されたジェスチャに対応する制御命令が制御停止であるか又は制御開始であるかの属性を判定する。例えば、撮像装置が映像を記録しない非記録状態である場合に、記録制御命令に対応するジェスチャが認識されると、CPU101は映像記録を開始するための開始属性であると判定する。
一方、撮像装置が映像を記録する記録状態である場合に、記録制御命令に対応するジェスチャが認識されると、CPU101は映像記録を停止するための停止属性であると判定することになる。図9(b)においては、時刻906において開始属性として判定されて、CPU101は時刻906から映像記録に関する制御を実行する。
次に、時刻907において、映像記録の制御命令に対応するジェスチャが開始されて、時刻908において、ジェスチャ認識部109が当該ジェスチャを認識したものとする。上述のようにして、時刻907においてメモリ102に撮像装置の現在時刻が記憶される。また、時刻908において、CPU101は制御命令の属性が停止属性であると判定する。この結果、CPU101は時刻907における撮像装置の状態と同等となるように制御を実行する。
ここでは、時刻907においてジェスチャの認識が完了したとするため、CPU101は時刻907までを映像記録の期間とする。メモリ102には時刻907に対応する状態情報(現在時刻)が記録されているので、CPU101は上記の制御を行うことができる。例えば、CPU101は時刻907から時刻よ08までの映像を消去又は再生の際に再生不可として、時刻906から時刻907までの期間に係る映像を記録することになる。
なお、映像が記録される記録媒体107の残容量に応じて、時刻907から時刻908までの期間の映像を消去か又は画像データとしては記録するが再生しない画像データとするかを切り替えるようにしてもよい。
上述の第3の実施形態では、映像記録に関する制御をジェスチャの認識に基づいて実行する例について説明したが、他の制御をジェスチャの認識に応じて行うようにしてもよい。例えば、撮像装置のズーム制御をジェスチャ認識に基づいて実行する場合についても、第3の実施形態を提供することができる。
この際には、メモリ102にズーム値に関するズーム情報がジェスチャの開始の際に記憶される。そして、ジェスチャ認識部109がズーム制御に対応するジェスチャを認識して、CPU101は開始属性と判定するとズームイン又はズームアウトの制御を実行する。
さらに、ジェスチャ認識部109がズーム制御に対応するジェスチャを認識して、CPU101は停止属性と判定するとメモリ102に記憶されたズーム状態と同等になるように制御を実行することになる。
加えて、画像を再生する際においても第3の実施形態を適用することができる。例えば、記録媒体107に記憶された映像の再生制御(つまり、再生制御命令)をジェスチャ認識に基づいて実行する場合において、再生制御として再生映像(再生画像)を早送りするとする。この場合、メモリ102には再生映像(再生画像)の再生時刻に関する時刻情報がジェスチャの開始の際に記憶される。
ジェスチャ認識部109が再生制御に対応するジェスチャを認識して、CPU101は開始属性と判定すると、早送りなどの再生制御を実行する。再生制御に関しては、ジェスチャ辞書記憶部705に記憶されたジェスチャと制御命令との対応付けに依存する。
一方、ジェスチャ認識部109が再生制御に対応するジェスチャを認識して、CPU101は停止属性と判定すると、メモリ102に記憶された再生時刻と同等になるように制御を実行する。つまり、当該制御ではジェスチャ開始タイミングの時刻からの通常再生に戻ることとなる。
このように、本発明の第3の実施形態では、映像においてジェスチャに要する期間の影響をなくして、ジェスチャ認識を用いた操作性の高い制御を行うことができる。
[第4の実施形態]
続いて、本発明の第4の実施形態によるジェスチャ認識装置の一例について説明する。なお、第4の実施形態によるジェスチャ認識装置の構成は図1に示すジェスチャ認識装置と同様であるが、ジェスチャ認識部109の構成が異なる。また、図示はしないが、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置で用いられる。
続いて、本発明の第4の実施形態によるジェスチャ認識装置の一例について説明する。なお、第4の実施形態によるジェスチャ認識装置の構成は図1に示すジェスチャ認識装置と同様であるが、ジェスチャ認識部109の構成が異なる。また、図示はしないが、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置で用いられる。
図10は、本発明の第4の実施形態によるジェスチャ認識装置に備えられたジェスチャ認識部109の構成についてその一例を示すブロック図である。
なお、図10に示すジェスチャ認識部109において、図7に示すジェスチャ認識部と同一の構成要素については同一の参照番号を付して説明を省略する。
ジェスチャ認識部109は、特徴部位判定部1001、第1の特徴部位検出部1002、第2の特徴部位検出部1003、動作特徴抽出部1004、動作照合部704、およびジェスチャ辞書記憶部705を有している。ここでは、第1の特徴部位検出部1002は特徴部位(特定部位ともいう)として人物の手を検出し、第2の特徴部位検出部1003は特徴部位(特定部位)として人物の視線を検出するものとのする。
なお、第1の特徴部位検出部1002および第2の特徴部位検出部1003は上記の特徴部位の検出に限定されるものではなく、手および視線などのように人物被写体の互いに異なる特徴部位を検出すればよい。
特徴部位判定部1001は、被写体検出部108で検出された被写体におけるジェスチャを認識するために用いる特徴部位を判定する。例えば、特徴部位判定部1001は第1の特徴部位である手を検出するか又は第2の特徴部位である視線を検出するかを判定する。特徴部位の判定に当たっては、被写体検出部108で検出された被写体の画像中の位置および大きさを用いる。なお、特徴部位の判定手法については後述する。
第1の特徴部位検出部1002は、ジェスチャ認識のための特徴部位(特定部位)として被写体検出部108で検出された被写体の手を検出する。前述のように、手を検出する際には、肌色情報などの色特徴又はSobelフィルタ処理などが用いられる。そして、第1の特徴部位検出部1002は検出結果として手の重心位置などを示す第1の特徴部位情報を出力する。
第2の特徴部位検出部1003は、ジェスチャ認識のための特徴部位として被写体検出部108で検出された被写体の視線を検出する。視線の検出に当たっては、第2の特徴部位検出部1003は、被写体検出部108で検出された顔領域から目の画像領域を抽出する。なお、目の画像領域を抽出する際には、被写体検出部108で検出された顔領域に対して、目、鼻、および口などの顔の特徴点によって構成される3次元モデルをフィッティングすることによって抽出する。
次に、第2の特徴部位検出部1003は、抽出された目の画像領域における輝度値の分布状況に基づいて視線を検出する。そして、第2の特徴部位検出部1003は検出結果として視線の位置などを示す第2の特徴部位情報を出力する。
動作特徴抽出部1004は、第1の特徴部位情報又は第2の特徴部情報に基づいて動作特徴量を抽出する。前述のように、被写体検出部108は画像処理部104より逐次与えられる画像データについて被写体検出を行っており、第1の特徴部位検出部1002又は第2の特徴部位検出部1003から逐次第1の特徴部位情報又は第2の特徴部位情報が動作特徴抽出部1004に与えられる。
動作特徴抽出部1004は、第1の特徴部位情報又は第2の特徴部位情報における変化を動作ベクトルとして蓄積することによって動作特徴量を抽出する。
なお、動作照合部704およびジェスチャ辞書記憶部705については、図7で説明したようにして動作する。
図11は、本発明の第4の実施形態によるジェスチャ認識装置による認識動作の一例を説明するためのフローチャートである。
なお、図示のフローチャートに係る処理は、CPU101の制御下で行われる。また、このフローチャートに係る処理は、画像処理部104からジェスチャ認識部109に画像データが供給される度に行われる。
認識動作を開始すると、被写体検出部108は、CPU101の制御下で画像処理部104から送られた画像データにおいて被写体領域(例えば、人物の顔領域)を検出する(ステップS1101)。続いて、特徴部位判定部1001は、後述するようにして、顔領域の画像における位置および大きさに応じてジェスチャ認識のための特徴部位を判定する(ステップS1102)。
被写体における顔領域が大きい場合には、視線など顔領域に存在する部位を検出することは可能であるが、手など顔に含まれない人物の部位が画像内に存在せずに検出できない可能性がある。一方、被写体における顔領域が小さい場合には、被写体の手は画像内に存在している可能性が高いが、視線については十分な画像解像度が得られずに検出が困難な可能性が高い。
また、被写体の顔領域が画像の端に存在する場合には、手など顔領域に含まれない人物の部位については画像内に存在せずに検出できない可能性がある。よって、特徴部位判定部1001は検出可能性の高い部位を特徴部位として判定する。
図12は、図10に示す特徴部位判定部1001で行われる特徴部位判定を説明するためのフローチャートである。
特徴部位判定を開始すると、特徴部位判定部1001は、被写体検出結果(つまり、顔領域)の大きさが所定の閾値(以下顔閾値という)未満であるか否かを判定する(ステップS1201)。顔検出結果(顔領域検出結果ともいう)の大きさが顔閾値未満であれば(ステップS1201において、YES)、特徴部位判定部1001は手を特徴部位として設定して(ステップS1202)、特徴部位判定を終了する。
図13は、図10に示す特徴部位判定部1001で用いられる顔閾値の設定を説明するための図である。そして、図13(a)は顔領域と目領域との相対関係を示す図であり、図13(b)は顔領域と手領域との相対関係を示す図である。
図13(a)において、いま、被写体検出部108によって顔領域1301が検出され、当該顔領域1301には視線検出のための目領域1302が含まれている。顔領域1301と目領域1302との大きさの比を1:N(0<N<1)として、特徴部位判定部1001は当該比で示す関係性を保持する。
ここで、第2の特徴部位検出部1003において視線を検出可能な目領域の大きさは、G(Gは2以上の整数) pixel四方の大きさであるとする。この場合、視線を検出するためには、顔領域の大きさがG/N以上である必要がある。よって、顔閾値はG/Nを基準として設定される。つまり、顔検出結果(顔領域)の大きさがG/N未満であれば、目領域において十分な画像解像度が得られず視線検出が困難となるので、手を特徴部位として設定することが望ましい。
再び図12を参照して、顔検出結果の大きさが顔閾値以上であれば(ステップS1201において、NO)、特徴部位判定部1001は顔検出結果の位置および大きさに基づいて、推測される手の存在可能位置が画像の範囲内に存在するか否かを判定する(ステップS1203)。
顔検出結果の位置および大きさに応じて推測される手の存在可能位置が画像の範囲内に存在すると(ステップS1203において、YES)、特徴部位判定部1001は手を特徴部位として設定して(ステップS1204)、特徴部位判定を終了する。
一方、顔検出結果の位置および大きさに応じて推測される手の存在可能位置が画像の範囲外である場合には(ステップS1203において、NO)、特徴部位判定部1001はステップS1202の処理に進んで視線を特徴部位として設定する。
図13(b)を参照すると、いま、被写体検出部108によって顔領域1303が検出され、顔領域1303の中心位置と手との最大距離1304がDであるとする。そして、特徴部位判定部1001は、予め顔の大きさで正規化した顔領域から手領域までの最大距離αを保持して、被写体検出部108による被写体検出結果によって手の位置の範囲を推測する。
例えば、被写体検出部108によって検出された顔領域の大きさをSとすると、距離DはS×αとして求めることができる。画像の左上を原点として顔検出結果(顔領域)の座標位置を(X、Y)とした場合、手の存在可能範囲は(S*α±X、S*α±Y)となる。
特徴部位判定部1001は手の存在可能範囲が画像の範囲であるか否かを判定する。当手の存在可能範囲が画像の範囲外であれば、手を検出できない可能性があるため、特徴部位として視線を設定ことが望ましい。
図11を参照して、特徴部位判定部1001は、特徴部位判定結果に応じてジェスチャ認識に用いる特徴部位を判定する(ステップS1103)。手を特徴部位とすると判定すると(ステップS1103において、手)、特徴部位判定部1001は、被写体検出部108による被写体検出結果(つまり、顔領域を含む画像)を第1の特徴部位検出部1002に送る。
これによって、第1の特徴部位検出部1002は被写体検出結果に応じて手の領域を特徴部位として検出して第1の特徴部位情報を出力する(ステップS1104)。
一方、視線を特徴部位とすると判定すると(ステップS1103において、視線)、特徴部位判定部1001は、被写体検出部108による被写体検出結果(つまり、顔領域を含む画像)を第2の特徴部位検出部1003に送る。
これによって、第2の特徴部位検出部1003は被写体検出結果に応じて視線を特徴部位として検出して第2の特徴部位情報を出力する(ステップS1105)。
ステップS1104又はS1105の処理に続いて、動作照合部704は、前述したようにして、第1の特徴部位情報又は第2の特徴部情報に基づいて動作特徴量を抽出する(ステップS1106)。そして、動作照合部704は抽出された動作特徴量とジェスチャ辞書記憶部705に記憶された動作特徴量とを照合して、類似度を得る(ステップS1107)。動作照合部704は類似度の各々について所定の閾値(以下類似度閾値という)以上であるか否かを判定する(ステップS1108)。
類似度が類似度閾値以上であれば(ステップS1108においてYES)、動作照合部704は動作特徴量と対応する制御命令をCPU101に送る。そして、CPU101は制御命令に応じた制御を実行して(ステップS1109)、認識動作を終了する。全ての類似度が類似度閾値未満であると判定されると(ステップS1108においてNO)、CPU101は認識動作を終了する。
なお、制御命令としては、例えば、画像記録の開始を命令する記録命令、撮像レンズに備えられたズームレンズを駆動制御するズームアウトおよびズームイン命令などのズーム命令がある。
ところで、ジェスチャ認識に用いられる特徴部位が頻繁に切り替わると、ジェスチャ認識が正確に行われない恐れがある。このため、特徴部位判定部1001において、過去に判定された特徴部位の種別を保持して、現在の判定の際に過去に判定された特徴部位の種別に応じて特徴部位を選択するようにしてもよい。
このように、本発明の第4の実施形態では、画像における被写体の位置および大きさに応じて、ジェスチャ認識のための特徴部位を選択するようにしたので、被写体の撮影状況に依存することなくジェスチャ認識による制御を精度よく行うことができる。
[第5の実施形態]
続いて、本発明の第5の実施形態によるジェスチャ認識装置の一例について説明する。
続いて、本発明の第5の実施形態によるジェスチャ認識装置の一例について説明する。
なお、図示はしないが、第5の実施形態によるジェスチャ認識装置の構成は、図1に示すジェスチャ認識装置の構成に加えて音声検出部および加速度センサ部を備えており、これら音声検出部および加速度センサ部は内部バス150に接続されている。さらに、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置で用いられる。
前述の音声検出部は、CPU101の制御下で撮像装置の周囲における音(音響)を集音して記録媒体I/F106を介して記録媒体107に音声データとして記録する。また、加速度センサ部は、互いに直交する3軸方向に対して独立する加速度センサを有しており、撮像装置に掛かる3軸方向の加速度を検出する。
図14は、本発明の第4の実施形態によるジェスチャ認識装置を備える撮像装置の外観を示す図である。そして、図14(a)は正面側からみた図であり、図14(b)は背面側からみた図である。
撮像装置1400の正面側には撮影レンズ部1414が配置されており、この撮影レンズ部1414は撮像部105(図1)の一部を構成する。撮像部105は、例えば、CCD又はCMOSセンサなどの撮像素子を有しており、撮影レンズ部1414を介して撮像素子に光学像(被写体像)が結像し、撮像素子は当該光学像に応じた画像信号を出力する。
図示のように、撮像装置1400の筐体の上面にはシャッターボタン1405が設けられ、背面側には表示部である液晶パネルが配置されている。そして、当該表示部1402には撮影の結果得られた画像が表示されるとともに、各種アイコン1415がCPU101の制御下で表示される。
図15は、本発明の第5の実施形態によるジェスチャ認識装置におけるジェスチャ登録処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理はCPU101の制御下で行われる。
いま、撮像装置の電源を投入すると、CPU101は撮像装置の初期化処理を行う。そして、ユーザが操作部(図示せず)などによってジェスチャ登録処理の開始を指示すると、CPU101はジェスチャ登録処理を開始する。
この際には、CPU101は不揮発性メモリ103に格納されたプログラムをメモリ102に展開して、登録処理を実行する。ジェスチャ登録処理を開始すると、CPU101はユーザに対する操作説明(操作指示ともいう)を表示部1402に表示する(ステップS1502)。
図16は、本発明の第5の実施形態によるジェスチャ認識装置においてジェスチャ登録の際に表示部に表示される画面を説明するための図である。そして、図16(a)は操作説明を示す図であり、図16(b)はジェスチャ動作の入力を示す図である。
ステップS1502においては、CPU101は、図16(a)に示す画面を表示部1402に表示する。図示の例では、当該画面には「カメラの上下を固定したまま、腕を水平横に曲げ伸ばししてください」との文言が表示される。そして、ユーザは、操作部に備えられたボタン(ここでは開始ボタン)を押下げた後、当該文言に応じてカメラの上下を垂直方向に固定したまま手を水平横に伸ばす動作を行う。さらに、ユーザは当該動作を行った後に、操作部に備えられたボタン(終了ボタン)を押下げる。
開始ボタンの押下げによって、CPU101の制御下で、ジェスチャ認識部109は加速度センサ部によって検知された3軸方向の加速度を検出する(ステップS1504)。そして、ジェスチャ認識部109は、後述する撮像装置1400の軌跡算出処理を行う(第1の検出:ステップS1505)。
図17は、図15に示す軌跡算出処理を説明するためのフローチャートである。
軌跡算出処理を開始すると、ジェスチャ認識部109は前回の加速度検出から予め設定されたサンプリング時間Δtが経過したか否かを判定する(ステップS1701)。サンプリング時間Δtが経過しないと(ステップS1701において、NO)、ジェスチャ認識部109は待機する。
一方、サンプリング時間Δtが経過すると(ステップS1701において、YES)、ジェスチャ認識部109は、加速度センサ部によってユーザの動きに応じて撮像装置1400に掛かる現在の加速度を検出する(ステップS1702)。
図18は、本発明の第5の実施形態によるジェスチャ認識装置における加速度の検出を説明するための図である。そして、図18(a)は3軸方向の定義を示す図であり、図18(b)は撮像装置の移動を示す図である。
いま、図18(a)に示すように、表示部1402の長辺方向をZ方向、短辺方向をX方向、そして、奥行方向をY方向と定義する。前述の図16(a)に関連して説明したように、ユーザには撮像装置1400のZ方向を重力方向と平行させるように指示を行っているので、Z軸方向にのみ重力加速度が掛かることになる。
現在、加速度センサ部によって検知されるX、Y、およびZ方向の加速度をそれぞれβx、βy、βzとし、重力加速度をGとする。この際、ユーザの動作によって撮像装置1400に掛かるX、Y、およびZ方向の加速度をそれぞれαx、αy、およびαzとすると、加速度αx、αy、およびαzは式(1)で示される。
続いて、ジェスチャ認識部109は、撮像装置1400が移動する際の現在速度を算出する(ステップS1703)。
図18(b)において、撮像装置1400はサンプリング時間Δt毎にA、B、C、D、およびEの順に移動しているものとする。なお、ここでは、サンプリング時間Δt毎のサンプル番号をnとする。
サンプリング番号n=0で示す地点はユーザが操作部に備えられたボタンを押下げた時点に対応しており、当該時点において撮像装置1400は停止しているものとする。この際、X、Y、およびZ方向の速度をそれぞれvx(n)、vy(n)、およびvz(n)とすると、これら速度vx(n)、vy(n)、およびvz(n)は式(2)で示される。
前述のように、サンプリング番号n=0の地点においては、撮像装置1400は停止しているので、vx(0)=0、vy(0)=0、vz(0)=0となる。
続いて、ジェスチャ認識部109は現在の加速度のサンプリング時点から、次のサンプリング時間Δt後のサンプリング時点までの微小変位を算出する(ステップS1704)。この際、X、Y、およびZ方向の微小変位をそれぞれLx(n)、Ly(n)、およびLz(n)とすると、微小変位Lx(n)、Ly(n)、およびLz(n)は式(3)で示される。
これら微小変位Lx(n)、Ly(n)、およびLz(n)は撮像装置1400の軌跡を表し、微小変位Lx(n)、Ly(n)、およびLz(n)がジェスチャ動作情報として用いられる。
次に、ジェスチャ認識部109は撮像装置1400の現在位置を算出する(ステップS1705)。X、Y、およびZ方向の現在位置をそれぞれX(n)、Y(n)、およびZ(n)とすると、現在位置X(n)、Y(n)、およびZ(n)は式(4)で示される。
上述のようにして、撮像装置1400の現在位置が算出された後、CPU101は軌跡算出処理を終了する。
再び図15を参照して、軌跡算出処理が行われた後、CPU101はユーザが操作部に備えられた終了ボタンを押下げたか否かを判定する(ステップS1506)。所定の時間を経過しても終了ボタンが押下げられないと(ステップS1506において、NO)、CPU101はステップS1504の処理に戻る。
一方、終了ボタンが押下げられると(ステップS1506において、YES)、CPU101の制御下で、ジェスチャ認識部109はユーザの腕の長さを算出する(第2の検出:ステップS1507)。
図19は、図16(a)に示す指示に応じたユーザ動作の一例を示す図である。
いま、ユーザが大人であるとし、図15に示すステップS1503〜S1507においては、ユーザは大人1901および1902で示すように、撮像装置1400を持ってその腕を伸ばし、続いて縮める動作を行う。この際、大人1901に示す撮像装置1400の位置から大人1902に示す撮像装置1400の位置までの距離L(ここでは、D1)は次の式(5)によって求めることができる。
図19に示すように、ユーザが大人1901および1902である場合と子供1903および1904である場合とでは、式(5)によって求められる腕距離D1およびD2は異なることになる。
腕長さが算出された後、CPU101は、表示部1402にユーザによるジェスチャ動作を指示する画面を表示する(ステップS1508)。ステップS1508においては、CPU101は、例えば、16(b)に示す画面を表示部1402に表示する。
図示の例では、当該画面には「カメラの上下を固定、身体と平行のままジェスチャ動作を行ってください」との文言が表示される。そして、ユーザは、操作部に備えられたボタン(開始ボタン)を押下げた後、当該文言に応じて撮像装置1400のZ方向を重力方向、そして、X方向を身体の両肩と平行な方向に固定して、ジェスチャ動作を行うことになる。さらに、ユーザはジェスチャ動作を行った後に、操作部に備えられたボタン(終了ボタン)を押下げる。
開始ボタンが押下げられると(ステップS1509)、CPU101はジェスチャ動作の検出を開始する。そして、CPU101の制御下で、ジェスチャ認識部109は加速度センサ部によって検知された3軸方向の加速度を検出し(ステップS1510)、続いて、撮像装置1400の軌跡算出処理を行う(ステップS1511)。
なお、ステップS1510およびS1511に係る処理は、それぞれステップS1504およびS1505の処理と同様の処理である。
続いて、CPU101はユーザが操作部に備えられた終了ボタンを押下げたか否かを判定する(ステップS1512)。所定の時間を経過しても終了ボタンが押下げられないと(ステップS1512において、NO)、CPU101はステップS1510の処理に戻る。
一方、終了ボタンが押下げられると(ステップS1512において、YES)、CPU101の制御下で、ジェスチャ認識部109は腕の長さ、操作コマンド、およびジェスチャ動作を関連付けて、例えば、不揮発性メモリ103に登録して(ステップS1513)、ジェスチャ登録処理を終了する。
登録の際には、上記の微小変位Lx(n)、Ly(n)、およびLz(n)がジェスチャ動作情報になるが、ジェスチャを検出する際に用いるジェスチャ動作は2次元情報であるので、ここでは、微小変位Lx(n)、Ly(n)、およびLz(n)の内微小変位Lx(n)およびLz(n)で示す2次元方向の軌跡が登録ジェスチャ動作情報として用いられる。
なお、ステップS1513においては、ステップS1507で算出した腕の長さおよびステップS1509〜S1512で算出されたジェスチャ軌跡が関連付けられる。そして、ユーザが希望する撮像装置1400に対する操作コマンドもともに登録される。
ところで、加速度センサ部によって検出されたジェスチャ動作は、絶対的大きさを有しており、ジェスチャ動作と腕の長さの絶対的長さとを比較すれば、人体に対する相対的な大きさ(相対的大きさ)を決定することができる。
図20は、本発明の第5の実施形態によるジェスチャ認識装置におけるジェスチャ動作の区別を示す図である。
いま、人物2001がジェスチャ動作2002を行った場合とジェスチャ動作2003を行った場合について考えると、前述のように、ジェスチャ動作2002および2003と腕の長さの絶対的長さとを比較すれば、ジェスチャ動作2002および2003の人体に対する相対的な大きさを決定することができる。よって、ジェスチャ認識部109はジェスチャ動作2002および2003を区別することかことができる。
図21は、本発明の第5の実施形態によるジェスチャ認識装置を備える撮像装置による撮像の際に被撮影者のジェスチャ動作が検出された場合のコマンド操作の一例を示す図である。
また、図22は、本発明の第5の実施形態によるジェスチャ認識装置によるジェスチャ検出処理を説明するためのフローチャートである。
図21および図22を参照して、いま、撮像装置1400によって被撮影者2101が撮影されているものとする。撮像動作を開始すると、撮像部105に電源が供給されて画像が逐次表示部1402に表示される。
CPU101の制御下で、被写体検出部108は現在の撮像領域(つまり、画像)に被写体である人物を検出して、被写体検出結果を出力する(ステップS2202)。そして、CPU101の制御下で、ジェスチャ認識部109は被写体検出結果に応じて人物が検出されたか否かを判定する(ステップS2203)。
人物が検出されないと判定されると(ステップS2203において、NO)、CPU101はステップS2202の処理に戻る。一方、人物が検出されると(ステップS2203において、YES)、ジェスチャ認識部109は、検出された人物の大きさを検出する(ステップS2204)。ここでは、ジェスチャ認識部109は、図21に示す肩幅2102を検出して、人物の大きさを得る。
続いて、ジェスチャ認識部109は、検出した人物における手の部分を検出する(ステップS2205)。ここでは、ジェスチャ認識部109は、画像における人物の位置および人物の大きさに基づいて、手の部分が存在する領域(手領域)を推定する。そして、ジェスチャ認識部109は、推定の結果得られた手領域において手の形状特徴量を備える部位を検出する。この処理によって、例えば、図21に示す手部分2103が検出される。
続いて、ジェスチャ認識部109は手部分が存在するか否かを判定する(ステップS2206)。手部分が存在しないと判定されると(ステップS2206において、NO)、CPU101はステップS2202の処理に戻る。手部分が存在すると(ステップS2206において、YES)、ジェスチャ認識部109は手軌跡算出処理によって、画像における手部分の時系列的な軌跡(手軌跡)を求める(ステップS2207)。そして、この手軌跡がジェスチャ動作となる。
続いて、ジェスチャ認識部109は、ステップS2204で得られた人物の大きさに応じて、手軌跡の大きさを人体に対する相対的な大きさに変換する(ステップS2208)。そして、ジェスチャ認識部109は、前述のようにして予め登録された登録ジェスチャ動作と手軌跡(つまり、ジェスチャ動作)とのマッチング検索を行う(ステップS2209)。
この際には、手軌跡(つまり、ジェスチャ動作)および登録ジェスチャ動作ともに、人体に対する相対的な大きさが分かっているので、ジェスチャ認識部109は、例えば、図20に示すジェスチャ動作2002とジェスチャ動作2003とを異なるジェスチャ動作として区別することができる。
次に、ジェスチャ認識部109はジェスチャ動作にマッチングする登録ジェスチャ動作が存在するか否かを判定する(ステップS2210)。ジェスチャ動作にマッチングする登録ジェスチャ動作が存在しないと判定されると(ステップS2210において、NO)、CPU101はステップS2202の処理に戻る。
一方、ジェスチャ動作にマッチングする登録ジェスチャ動作が存在すると判定されると(ステップS2210において、YES)、CPU101はマッチングした登録ジェスチャ動作に関連付けられた操作コマンドを実行して撮像装置1400を制御する(ステップS2211)。そして、CPU101はステップS2202の処理に戻る。
図23は、図22で説明したジェスチャ検出処理によるジェスチャ検出の一例を示す図である。
いま、撮像装置1400から同一の距離に大人2301および子供2303が位置し、それぞれ身体に対して同一の比率の円状のジェスチャ動作2302およびジェスチャ動作2304を行ったとする。この場合、図22で説明したジェスチャ検出処理を行うと、ジェスチャ認識部109はジェスチャ動作2302およびジェスチャ動作2304を同様のジェスチャ動作と判定する。この結果、CPU101はいずれのジェスチャ動作についても同様の操作コマンドを実行することになる。
図24は、図22で説明したジェスチャ検出処理によるジェスチャ検出の他の例を示す図である。
いま、撮像装置1400から互いに異なるに大人2401および子供2403が位置し、それぞれ身体に対して同一の比率の円状のジェスチャ動作2402およびジェスチャ動作2404を行ったとする。この場合においても、図22で説明したジェスチャ検出処理を行うと、ジェスチャ認識部109はジェスチャ動作2402およびジェスチャ動作2404を同様のジェスチャ動作と判定する。
この結果、CPU101はいずれのジェスチャ動作についても同様の操作コマンドを実行することになる。
図25は、本発明の第5の実施形態によるジェスチャ認識装置における身体的特徴量を入力する画面の一例を示す図である。
上述の例では、腕の曲げ伸ばし動作に応じて腕の長さを算出し人体の絶対的大きさの基準としたが、図25に示すように、CPU101は表示部1402に身体的特徴量入力画面を表示して、ユーザなどに身長などの身体的特徴量を直接入力するようにしてもよい。そして、CPU101はユーザが入力した身体的特徴量を絶対的大きさの基準とするようにしてもよい。
このように、本発明の第5の実施形態では、ジェスチャ動作の検知によって撮像装置から遠く離れた人物又は複数の人物によるジェスチャ動作に応じて操作コマンドを実行することができる。その結果、ユーザが意図したように撮像装置などの機器を制御することができる。
なお、上述の説明では、2次元平面においてジェスチャ動作を登録するようにしたが、3次元軌跡としてジェスチャ動作を登録して、認識処理の際に登録ジェスチャ動作を2次元軌跡に変換するようにしてもよい。
さらに、上述の説明では、撮像装置1400のZ方向を重力加速度方向と一致させて、撮像装置1400を動かす場合を例に挙げたが、撮像装置1400が停止している状態から重力加速度方向を監視して撮像装置1400の回転動作も検知するようにしてもよい。このようにすれば、撮像装置1400の向きが制限されることがない。
また、上述の例では、加速度センサ部を用いてユーザのジェスチャ登録を行う場合について説明したが、角加速度センサを用いるようにしてもよく、さらには加速度センサおよび角加速度センサの双方を用いるようにしてもよい。
[第6の実施形態]
続いて、本発明の第6の実施形態によるジェスチャ認識装置の一例について説明する。
続いて、本発明の第6の実施形態によるジェスチャ認識装置の一例について説明する。
なお、第6の実施形態によるジェスチャ認識装置の構成は、図1に示すジェスチャ認識装置の構成に加えて音声検出部および加速度センサ部を備えている。さらに、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置で用いられる(撮像装置の外観は図14に示す例と同様である)。
図26は、本発明の第6の実施形態によるジェスチャ認識装置におけるジェスチャ登録処理を説明するためのフローチャートである。
なお、図26に示すフローチャートにおいて、図15に示すフローチャートのステップと同一のステップについては同一の参照符号を付して説明を省略する。また、図示のフローチャートに係る処理はCPU101の制御下で行われる。
いま、撮像装置の電源を投入すると、CPU101は撮像装置の初期化処理を行う。そして、ユーザが操作部(図示せず)などによってジェスチャ登録処理の開始を指示すると、CPU101はジェスチャ登録処理を開始する。
この際には、CPU101は不揮発性メモリ103に格納されたプログラムをメモリ102に展開して、ジェスチャ登録処理を実行する。ジェスチャ登録処理を開始すると、CPU101は撮像装置1400の初期位置を選択する画面(ジェスチャ位置候補画面)を表示部1402に表示する(ステップS2602)。
図27は、本発明の第6の実施形態によるジェスチャ認識装置においてジェスチャ登録の際に表示部に表示される画面の一例を説明するための図である。そして、図27(a)は初期位置を選択する画面の一例を示す図であり、図27(b)は初期位置を選択する画面の他の例を示す図である。
ステップS2602の処理においては、CPU101は、図27(a)に示す画面を表示部1402に表示する。図示の例では、画面には「初期位置を選択してください」との文言が表示されるとともに、撮像装置1400を把持した複数の姿勢(ジェスチャ位置候補)が初期位置として表示される。なお、ジェスチャ位置候補は相対的位置候補とも呼ばれる。
なお、図27(a)に示す例では、ユーザに対する撮像装置1400の位置として4つの候補が挙げられる。つまり、ユーザは4つの候補からのみ初期位置の選択を行うことができる。
図28は、本発明の第6の実施形態によるジェスチャ認識装置においてジェスチャ登録の際に表示部に表示される画面の他の例を説明するための図である。そして、図28(a)は表示部に最初に表示される画面を示す図であり、図28(b)はユーザによる変更操作後の画面を示す図である。
図示の例では、CPU101は、まず表示部1402に図28(a)に示す画面を表示する。図28(a)では人体2801と撮像装置1400との関係が予め設定された初期状態で表示される。ユーザは当該画面を見て操作部によって画面上で所望の位置に撮像装置1400を示すマーカー2802を移動させて、初期位置を決定するようにしてもよい(図28(b)参照)。
続いて、ユーザが、図27(a)に示す画面から所望の初期位置(つまり、ジェスチャ位置候補)を選択すると(ステップS2603)、CPU101は、前述の図16(b)に示すジェスチャ動作指示画面を表示部1402に表示制御する(ステップS2604)。そして、ユーザが撮像装置1400を手に把持して、ステップS2603で選択した初期位置に手を移動させ、操作部に備えられた開始ボタンを押下する(ステップS2605)。
これによって、CPU101の制御下で、ジェスチャ認識部109は、図15および図17で説明したステップS1504〜S1506の処理を行う。
ステップS1506において、終了ボタンが押下げられると、CPU101の制御下で、ジェスチャ認識部109はステップS1505までの処理で登録されたジェスチャ動作と予め登録されたジェスチャ動作群と比較して類似するジェスチャ動作が存在するか否かを検索する(ステップS2609)。そして、ジェスチャ認識部109は類似するジェスチャ動作が存在するか否かを判定する(ステップS2610)。
類似するジェスチャ動作が存在すると判定されると(ステップS2610において、YES)、CPU101は、表示部1402に図27(b)に示す画面(ジェスチャ位置候補画面)を表示制御する(ステップS2611)。ここでは、CPU101は、初期位置の変更を行うと類似のジェスチャ動作とならないジェスチャ位置候補を表示して、ユーザにジェスチャ位置候補の選択を催促する。
図27(b)に示す例では、ステップS2603で選択したジェスチャ位置候補が画面の左上に表示され、当該ジェスチャ位置候補をグレイアウト(斜線で示す)して選択を禁止する。
ユーザがグレイアウトされていないジェスチャ位置候補の1つを選択すると(ステップS2612)、CPU101はステップS2610の処理に戻る。類似するジェスチャ動作が存在しないと(ステップS2610において、NO)、CPU101の制御下で、ジェスチャ認識部109はジェスチャ動作および身体に対する撮像装置1400の相対位置を登録するとともに、当該ジェスチャ動作に対応する操作コマンドをユーザに選択させる。そして、ジェスチャ認識部109は、相対位置、操作コマンド、およびジェスチャ動作を関連付けて、例えば、不揮発性メモリ103に登録する(ステップS2613)。その後、CPU101はジェスチャ登録処理を終了する。
図29は、本発明の第6の実施形態によるジェスチャ認識装置を備える撮像装置による撮像の際に被撮影者のジェスチャ動作が検出された場合のコマンド操作の一例を示す図である。
図30は、本発明の第6の実施形態によるジェスチャ認識装置によるジェスチャ検出処理を説明するためのフローチャートである。なお、図30に示すフローチャートにおいて、図22に示すフローチャートと同一のステップについては同一の参照符号を付して説明を省略する。
図29および図30を参照して、ステップS2203において、人物が検出されると(ステップS2203において、YES)、ジェスチャ認識部109は、検出された人物における顔(顔領域)の位置を検出する(ステップS3004)。ここでは、ジェスチャ認識部109は、図29に示す人物の顔部2902を検出して、当該人物2901の画面上における位置を求める。
その後、ジェスチャ認識部109は、CPU101の制御下でステップS2205〜S2207の処理を行って、図29に示す手部分2903を検出するとともに、画像における手部分2903の時系列的な軌跡(移動軌跡:つまり、ジェスチャ動作)2904を求める。
ステップS2207の処理に続いて、ジェスチャ認識部109は、ステップS3004で求めた人物の顔の位置を用いて、手軌跡2904の人体2901に対する相対的な位置(相対的位置)を求める(ステップS3008)。その後、ジェスチャ認識部109はステップS2209およびS2210の処理を行う。
図31は、本発明の第6の実施形態によるジェスチャ認識装置におけるジェスチャ動作の区別を示す図である。
いま、人物3101がジェスチャ動作3102を行った場合とジェスチャ動作3103を行った場合について考えると、ジェスチャ動作(つまり、手軌跡)については人体に対する相対的な位置(相対的位置)が予め判明しているので、ジェスチャ認識部109はジェスチャ動作3102および3103を区別することかことができる。
ステップS2110において、ジェスチャ動作にマッチングする登録ジェスチャ動作が存在すると判定されると、CPU101は、ステップS2211において、マッチングした登録ジェスチャ動作に関連付けられた操作コマンドを実行して撮像装置1400を制御する。
図32は、図30で説明したジェスチャ検出処理によるジェスチャ検出の一例を説明するための図である。そして、図32(a)はジェスチャ検出の一例を示す図であり、図32(b)はジェスチャ検出の他の例を示す図である。
図32(a)および図32(b)に示す例では、ともに大人3201は撮像装置1400から同一の距離に位置する。この際、図32(a)においては、左側で円状のジェスチャ動作3202を行い、図32(b)においては右側で円状のジェスチャ動作3203を行っている。
この場合に、図30で説明したジェスチャ検出処理を行うと、ジェスチャ認識部109はジェスチャ動作3202およびジェスチャ動作3204を互いに異なるジェスチャ動作と判定することになる。
このように、本発明の第6の実施形態では、被写体のジェスチャ動作に応じた操作コマンドを確実に実行することができ、その結果、被写体であるユーザが意図した操作を行うことができる。
なお、第6の実施形態においても、2次元平面においてジェスチャ動作を登録するようにしたが、3次元軌跡としてジェスチャ動作を登録して、認識処理の際に登録ジェスチャ動作を2次元軌跡に変換するようにしてもよい。
さらに、上述の説明では、説明の便宜上撮像装置1400のZ方向を重力加速度方向と一致させて、撮像装置1400を動かす場合を例に挙げて説明したが、撮像装置1400が停止している状態から重力加速度方向を監視して撮像装置1400の回転動作も検知するようにしてもよい。このようにすれば、撮像装置1400の向きが制限されることがない。
また、上述の例では、加速度センサ部を用いてユーザのジェスチャ登録を行う場合について説明したが、角加速度センサを用いるようにしてもよく、さらには加速度センサおよび角加速度センサの双方を用いるようにしてもよい。
[第7の実施形態]
続いて、本発明の第7の実施形態によるジェスチャ認識装置の一例について説明する。
続いて、本発明の第7の実施形態によるジェスチャ認識装置の一例について説明する。
なお、図示はしないが、第7の実施形態によるジェスチャ認識装置は、図1に示すジェスチャ認識装置の構成に加えて3次元動作検出部を有している。さらに、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置1400で用いられる。そして、撮像装置1400には各種コマンドなどを入力するための操作部が備えられている。操作部としてタッチパネルを用いる場合には、操作部と表示部1402とを一体的に構成することができる。
例えば、タッチパネルを光の透過率が表示部1402の表示を妨げないように構成して、表示部1402の表示面に取り付ける。そして、タッチパネルにおける入力座標と表示部1402上の表示座標とを対応付ける。これによって、恰もユーザが表示部1402上に表示された画面を直接的に操作可能であるかのようなGUI(グラフィックユーザインタフェース)を構成することができる。
操作部としてタッチパネルを用いた際には、CPU101はタッチパネルに対する次の操作を検出する。例えば、タッチパネルを指又はペンで触れたこと(以下タッチダウンという)。タッチパネルを指又はペンで触れている状態であること(以下タッチオンという)。タッチパネルを指又はペンで触れたままの状態で移動させること(以下ムーブという)。タッチパネルに触れていた指又はペンを離したこと(以下タッチアップという)。タッチパネルに何も触れていない状態(以下タッチオフという)。
これらの操作、そして、タッチパネルに指又はペンが触れる位置座標は、内部バス150を介して位置情報としてCPU101に通知される。CPU101は当該位置情報に基づいてタッチパネルでどのような操作が行なわれたかを判定する。
ムーブについては、CPU101はタッチパネル上で移動する指又はペンの移動方向についても位置座標の変化に基づいて、タッチパネル上の垂直成分および水平成分毎に判定する。さらに、タッチパネル上においてタッチダウンから一定のムーブを経てタッチアップをした際、これをストロークを描いたとする。
素早くストロークを描く操作をフリックと呼ぶ。フリックはタッチパネル上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すという操作である。言い換えると、フリックはタッチパネル上を指ではじくように素早くなぞる操作である。所定の距離以上を所定速度以上でムーブしたことを検出してそのままタッチアップを検出すると、CPU101はフリックが行なわれたと判定する。
また、所定距離以上を所定速度未満でムーブしたことを検出すると、CPU101はドラッグが行なわれたと判定する。ジェスチャ認識部に備えられた3次元動作検出部は、例えば、慣性センサの1つである加速度センサ、コンパス、傾斜センサ、および角速度センサなどを用いて3次元的な姿勢変化および位置変化を検出する。
CPU101の制御下で、ジェスチャ認識部109は3次元動作検出部で得られた検出信号(以下3次元検出信号又は加速度検出信号と呼ぶ)に応じて撮像装置1400の3次元な動作を検出して、その検出結果をメモリ102に記録する。
図33は、本発明の第7の実施形態によるジェスチャ認識装置における加速度検出信号の処理を説明するための図である。そして、図33(a)は撮像装置の動作方向と加速度センサ方向の一例を示す図であり、図33(b)は図33(a)に対応する動作量を示す図である。さらに、図33(c)は撮像装置の動作方向と加速度センサ方向の他の例を示す図であり、図33(d)は図33(c)に対応する動作量を示す図である。また、図33(e)は撮像装置の動作方向と加速度センサ方向のさらに他の例を示す図であり、図33(f)は図33(e)に対応する動作量を示す図である。
まず、図33(a)および図33(b)を参照して、ここでは、横方向軸(X軸)と奥行き方向軸(Y軸)に関する処理について説明する。図33(a)では動作方向3300においてY軸の加速度センサ方向が参照番号3301の場合が示されている。そして、図33(b)には、図33(a)に示す加速度が検出される動作をした際の動作量が示されている。
図33(a)においては動作方向3300とY軸加速度センサ方向3301とが一致していないので、加速度3303は、Y軸加速度センサ方向3301におけるY軸加速度センサ出力3304とX軸加速度センサ方向3302におけるX軸加速度センサ出力3305に分解されて検出される。
Y軸加速度センサ方向3301とX軸加速度センサ方向3302との角度は90度であるので、次の式(6)で示すようにY軸加速度センサ出力3304の二乗とX軸加速度センサ出力3305の二乗とを加算したものの平方根を求めれば、加速度3303の絶対値を得ることができる。
このように、X軸およびY軸からなる2軸のベクトル合成演算を行えば、3次元動作検出部の検出軸取り付け方向と動作方向がたとえ一致していない場合であっても、動作方向の加速度3303の絶対値を求めることができる。
続いて、ジェスチャ認識部109は加速度3303に対して二階積分演算を行って撮像装置1400の動作量を求める。Y軸加速度センサ方向3301とX軸加速度センサ方向3302との角度は90度であるので、次の式(7)で示すように、Y軸加速度センサ出力3304とX軸加速度センサ出力3305とを用いて逆正接関数演算を行って、加速度3303とX軸加速度センサ方向3302とのなす角度3306を求める。
このようにして、X軸およびY軸からなる2軸の逆正接関数演算を行えば、3次元動作検出部の検出軸取り付け方向と動作方向がたとえ一致していな意場合であっても、加速度3303とX軸加速度センサ方向3302とのなす角度3306を求めることができる。
なお、3次元動作の検出に際しては、例えば、夫々直交する横方向、奥行き方向、および高さ方向の加速度を検出して軸合成処理を3軸に対して繰り返せば、3次元動作を検出することができる。
図33(b)においては、動作開始位置を原点oとして、Y軸加速度センサ方向3301をy軸、X軸加速度センサ方向3302をx軸とする座標系を設定した際、x軸から角度3306の向きに動作量としての軌跡3307が定義される。
図33(c)では動作方向3308においてY軸の加速度センサ方向が参照番号3301の場合が示されている。そして、図33(d)には、図33(c)に示す加速度が検出される動作をした際の動作量が示されている。図33(c)においては、動作方向3308とY軸加速度センサ方向3301とが一致していないので、加速度3309はY軸加速度センサ方向3301におけるY軸加速度センサ出力3310とX軸加速度センサ方向3302におけるX軸加速度センサ出力3311に分解されて検出される。
Y軸加速度センサ方向3301とX軸加速度センサ方向3302との角度は90度であるので、Y軸加速度センサ出力3310の二乗とX軸加速度センサ出力3311の二乗とを加算したものの平方根を演算することによって、加速度3309の絶対値を求めることができる。Y軸加速度センサ方向3301とX軸加速度センサ方向3302との角度は90度であるので、Y軸加速度センサ出力3310とX軸加速度センサ出力3311を用いて、逆正接関数演算を行えば加速度3309とX軸加速度センサ方向3302とのなす角度3312を求めることができる。
図33(d)においては、軌跡3307の終点を動作開始位置(スタート位置)として原点o1として、Y軸加速度センサ方向3301をy1軸、X軸加速度センサ方向3302をx1軸とする座標系を設定した際、x1軸から角度3312の向きに動作量としての軌跡3313が定義される。
図33(e)では動作方向3314においてY軸の加速度センサ方向が参照番号3315の場合が示されている。そして、図33(f)には、図33(e)に示す加速度が検出される動作をした際の動作量が示されている。図33(e)においては、動作方向3314とY軸加速度センサ方向3315とが一致していないので、加速度3317はY軸加速度センサ方向3315におけるY軸加速度センサ出力3318とX軸加速度センサ方向3316におけるX軸加速度センサ出力3319とに分解されて検出される。
Y軸加速度センサ方向3315とX軸加速度センサ方向3316との角度は90度であるので、Y軸加速度センサ出力3318の二乗とX軸加速度センサ出力3319の二乗とを加算したものの平方根を演算することによって、加速度3317の絶対値を求めることができる。
Y軸加速度センサ方向3315とX軸加速度センサ方向3316との角度は90度であるので、Y軸加速度センサ出力3318とX軸加速度センサ出力3319とを用いて逆正接関数演算を行うと加速度3317とX軸加速度センサ方向3316とのなす角度3320を求めることができる。
図33(c)においてはY軸加速度センサ方向3301であるが、図33(e)ではY軸加速度センサ方向3315に回転している。この回転角3321は3次元動作検出部の他のセンサ、例えば、ジャイロセンサの角速度信号又は電子コンパスの方位信号、水平および縦撮りを検出する傾斜センサの傾斜度信号から求めることができる。
図33(f)においては、軌跡3313終点を動作開始位置として原点o2として、y1軸に対して回転角3321で回転してY軸加速度センサ方向3315をy2軸、X軸加速度センサ方向3316をx2軸とする座標系を設定した際、x2軸から角度3320の向きに動作量としての軌跡3322が定義される。
このようにして、動作量と動作方向とを繋いでいけばジェスチャ動作を軌跡として検出することができる。3次元ジェスチャ動作の検出に際しては、例えば、夫々直交する横方向、奥行き方向、および高さ方向の加速度を検出して、動作量と動作方向を繋ぐようにすればよい。
CPU101の制御下で、ジェスチャ認識部109はメモリ102に記録したデータに応じて動きベクトルを検出して、その結果をメモリ102に記録する。動きベクトルの検出に当たっては、例えば、勾配法又はブロックマッチングなどの既知の動きベクトル検出手法が用いられる。
ジェスチャ認識部109は、当該動きベクトルについて、例えば、記録媒体107に記憶された画像認識用2次元ジェスチャ動作の辞書データと相似であるか否かを照合する。この照合においては、数学的な相似演算を行うか又はパターンマッチなどの既知の照合手法が用いられる。
図34は、本発明の第7の実施形態によるジェスチャ認識装置で行われる動きベクトル変化の解析処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、CPU101の制御下で行われる。
動きベクトル変化の解析処理を開始すると、CPU101の制御下で、ジェスチャ認識部109は前回フレームから今回フレームの間で動きベクトルが検出されているか否かを判定する(ステップS3401)。動きベクトルが検出されないと(ステップS3401において、NO)、ジェスチャ認識部109は動きベクトル変化の解析処理を終了する。
一方、動きベクトルが検出されると(ステップS3401において、YES)、ジェスチャ認識部109は動きベクトルの中から判定対象とする動きベクトルを選択する(ステップS3402)。そして、ジェスチャ認識部109は所定のフレームにおいて過去に遡り判定対象の動きベクトルの始点近傍が終点近傍となる動きベクトルが存在するか否かを判定する(ステップS3403)。
終点近傍となる動きベクトルが存在すると(ステップS3403において、YES)、ジェスチャ認識部109は今回検出された動きベクトルが過去に検出された動きベクトルの継続動作である判定する(ステップS3404)。そして、ジェスチャ認識部109は今回検出された動きベクトルに係る動きベクトル情報を継続動作とされた過去の動きベクトル変化履歴に追加してメモリ102に保存する(ステップS3405)。
終点近傍となる動きベクトルが存在しないと(ステップS3403において、NO)、ジェスチャ認識部109は今回検出された動きベクトルが過去と継続性の無い新規動作である判定する(ステップS3406)。そして、ジェスチャ認識部109は今回検出された動きベクトルに係る動きベクトル情報について、新規の動きベクトル変化履歴を作成してメモリ102保存する(ステップS3407)。
ステップS3405又はS3407の処理に続いて、ジェスチャ認識部109は、検出した動きベクトル全てについて継続動作である又は新規動作であるかの解析が終了したか否かを判定する(ステップS3408)。全ての動きベクトルについて解析が終了すると(ステップS3408において、YES)、ジェスチャ認識部109は動きベクトル変化の解析処理を終了する。
一方、全ての動きベクトルについて解析が終了していない(ステップS3408において、NO)、ジェスチャ認識部109は、検出された動きベクトルから判定対象とする次の動きベクトルを選択する(ステップS3409)。そして、ジェスチャ認識部109はステップS3403の処理に戻る。
このようにして、ジェスチャ認識部109は所定フレームにおいて過去に遡りジェスチャ動作の可能性がある動きベクトル変化履歴を保存する。
図35は、本発明の第7の実施形態によるジェスチャ認識装置で行われるジェスチャ認識処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、CPU101の制御下で行われる。
ジェスチャ認識処理を開始すると、CPU101の制御下で、ジェスチャ認識部109は保存した動きベクトル変化履歴から認識対象の動きベクトル変化履歴を選択する(ステップS3501)。そして、ジェスチャ認識部109は選択した動きベクトル変化履歴について所定の第1特徴動作まで類似するジェスチャが辞書に存在するか否かを判定する(ステップS3502)。
図36は、本発明の第7の実施形態によるジェスチャ認識装置においてジェスチャ認識に用いる連続画像を説明するための図である。そして、図36(a)〜図36(d)はそれぞれ時刻の経過に応じた画像の一例を示す図である。
図36において、図36(a)は時刻Tにおける画像を示し、図26(b)は時刻TからX時間経過後の時刻T2における画像を示す。そして、図36(c)は時刻T2からX時間経過後の時刻T3にお画像を示し、図36(d)は時刻T3からX時間経過後の時刻T4にお画像を示す。図示の画像では、撮像範囲3601において被写体(ここでは人物)3602および3603が写されている。
図37は、図36に示す画像において検出された動きベクトルを説明するための図である。そして、図37(a)〜図37(c)は動きベクトルの一例を示す図である。
図37(a)には図36(a)に示す画像と図36(b)に示す画像との間における動きベクトルが示され、被写体3602において動きベクトル3701が検出されている。また、被写体3603において動きベクトル3702が検出されている。
図37(b)には図36(b)に示す画像と図36(c)に示す画像との間における動きベクトルが示され、被写体3602において動きベクトル3703が検出されている。同様に、図37(c)には図36(c)に示す画像と図36(d)に示す画像との間における動きベクトルが示され、被写体3602において動きベクトル3704が検出されている。また、被写体3603において動きベクトル3705が検出されている。
図38は、図34で説明した動きベクトル変化の解析処理後の動きベクトルを説明するための図である。そして、図38(a)〜図38(c)は解析処理後の動きベクトルの一例を示す図である。
図38(a)には時刻T2までの動きベクトル3701および3702が示され、図38(b)には時刻T3までの動きベクトル3703が示されている。そして、図38(c)には時刻T4までの動きベクトル3704が示されている。
図37に示す例のように、動きベクトル変化があると、図38(a)においては動きベクトル3702および3703が新規動作として保存される。そして、図38(b)においては、動きベクトル3701の継続動作として動きベクトル3703が追加で保存される。
図38(c)においては、動きベクトル3701の継続動作である動きベクトル3703の継続動作として動きベクトル3704が追加で保存される。そして、動きベクトル3701、3703、および3704は一連の動作として扱われる。
図39は、本発明の第7の実施形態によるジェスチャ認識装置に2次元ジェスチャ動作として記録されたジェスチャ認識用辞書データに登録された動きベクトルを説明するための図である。そして、図39(a)〜図39(c)はその一例を示す図である。
図39(a)には第1特徴動作3901が示されており、この第1特徴動作3901は、図中上側から下側に向かう動くベクトルである。図39(b)には第2特徴動作3902が示されており、この第2特徴動作3902は、図中下側から上側に向かう動くベクトルである。そして、図39(c)には第3特徴動作3903が示されており、この第3特徴動作3903は、図中上側から斜め下側に向かう動くベクトルである。
図40は、図39に示す特徴動作として登録された動きベクトルが発生する具体的なジェスチャ動作を説明するための図である。そして、図40(a)〜図40(c)はその一例を示す図である。
図40(a)には、腕を上から下へ下ろすような動作が示されており、図40(b)には腕を下から上へ上げるような動作が示されている。そして、図40(c)には腕を上から斜めに下げるような動作が示されている。
図36(a)〜図36(b)に示す画像には、図40(a)に示す動作が含まれており、図39(a)に示す第1特徴動作3901と類似している。そこで、図38(a)に示す動きベクトル3701および3702が検出されると、ジェスチャ認識部109は類似するジェスチャが辞書に存在すると判定することになる。
再び図35を参照して、選択した動きベクトル変化履歴について所定の第1特徴動作まで類似するジェスチャが辞書に存在しないと(ステップS3502において、NO)、ジェスチャ認識部109は当該動きベクトル変化履歴を削除する(ステップS3503)。
一方、選択した動きベクトル変化履歴について所定の第1特徴動作まで類似するジェスチャが辞書に存在すると(ステップS3502において、YES)、ジェスチャ認識部109は選択した動きベクトル変化履歴について第2特徴動作まで類似するジェスチャが辞書に存在するか否かを判定する(ステップS3504)。
図36(b)〜図36(c)においては、図40(b)に示す動作が含まれており、図39(b)に示す第2特徴動作と類似している。そこで、ジェスチャ認識部109は、図38(b)のに示す動きベクトル3701に続く動きベクトル3703が存在すると類似するジェスチャが辞書に存在する判定する。
選択した動きベクトル変化履歴について第2特徴動作まで類似するジェスチャが辞書に存在しないと(ステップS3504において、NO)、ジェスチャ認識部109は選択された動きベクトル変化履歴においてまだ第2特徴動作が出現していないかを判定する(ステップS3505)。第2特徴動作が出現していれば(ステップS3505において、NO)、ジェスチャ認識部109はステップS3503の処理に進む。
図38(b)に示すように、図38(a)に示す動きベクトル3702に続く動作が検出されていない場合には、ジェスチャ認識部109は動きベクトル3702に続く第2特徴動作がまだ出現していないと判定する。
一方、第2特徴動作が出現していないと(ステップS3505において、YES)、ジェスチャ認識部109は、選択した動きベクトル変化履歴が第1特徴動作を継続中であるか又は第2特徴動作に移る前に一時停止している可能性があるので、次回再判定するべく選択した動きベクトル変化履歴を再保存する(ステップS3506)。
選択した動きベクトル変化履歴について第2特徴動作まで類似するジェスチャが辞書に存在すると(ステップS3504において、YES)、ジェスチャ認識部109は、選択した動きベクトル変化履歴が辞書のジェスチャに対して途中動作の第2特徴動作まで類似しさらに第3特徴動作まで一致する可能性があるとして、ジェスチャ認識途中フラグをオンとする(ステップS3507)。そして、ジェスチャ認識部109は選択した動きベクトル変化履歴について第3特徴動作まで一致するジェスチャが辞書にあるか否かを判定する(ステップS3508)。
選択した動きベクトル変化履歴について第3特徴動作まで一致するジェスチャが辞書にないと(ステップS3508において、NO)、ジェスチャ認識部109は選択した動きベクトル変化履歴にまだ第3特徴動作が出現していないかを判定する(ステップS3509)。選択した動きベクトル変化履歴にまだ第3特徴動作が出現していないと(ステップS3509において、YES)、ジェスチャ認識部109は、選択した動きベクトル変化履歴を再保存する(ステップS3510)。
一方、選択した動きベクトル変化履歴に第3特徴動作が出現していると(ステップS3509において、NO)、ジェスチャ認識部109は、選択した動きベクトル変化履歴に一致するジェスチャは辞書に登録されていないとして、選択した動きベクトル変化履歴を削除する(ステップS3511)。
選択した動きベクトル変化履歴について第3特徴動作まで一致するジェスチャが辞書にあると(ステップS3508において、YES)、ジェスチャ認識部109は、選択した動きベクトル変化履歴が辞書データのジェスチャに関して最終動作の第3特徴動作まで一致しているのでジェスチャ認識に成功する。
その後、ジェスチャ認識部109はジェスチャ認識途中フラグをオフとする(ステップS3512)。そして、ジェスチャ認識部109はジェスチャ認識に成功したとして、現在保存中の他の動きベクトル変化履歴を全て削除し(ステップS3513)、ジェスチャ認識処理を終了する。
ステップS3503、S3506、S3510、又はS3511の処理に続いて、ジェスチャ認識部109は保存中の動きベクトル変化履歴の全てについてジェスチャ認識処理が終了したか否かを判定する(ステップS3514)、全ての動きベクトル変化履歴についてジェスチャ認識処理が終了すると(ステップS3514において、YES)、ジェスチャ認識部109はジェスチャ認識処理を終了する。
一方、全ての動きベクトル変化履歴についてジェスチャ認識処理が終了すると(ステップS3514において、YES)、ジェスチャ認識部109は、保存された動きベクトル変化履歴から認識対象とする次の動きベクトルを選択する(ステップS3515)。そして、ジェスチャ認識部109はステップS3502の処理に戻る。
続いて、ジェスチャ認識装置を備える撮像装置がビデオカメラであり、記録トリガボタンを押し続けている間に検出された3次元ジェスチャ動作を2次元ジェスチャ動作に変換する例について説明する。
図41は、本発明の第7の実施形態におけるジェスチャ認識装置を備えるビデオカメラにおいてジェスチャ動作を登録させる際の処理を説明するためのフローチャートである。なお、図示のフローチャートに係る処理はCPU101の制御下で行われる。
ジェスチャ登録処理を開始すると、CPU101は操作部においてジェスチャ登録処理の開始を確定する操作が行われたか否かを判定する(ステップS4101)。ジェスチャ登録処理の確定操作が行われないと(ステップS4101において、NO)、CPU101は待機する。
ジェスチャ登録処理の確定操作が行われると(ステップS4101において、YES)、CPU101は、ユーザにジェスチャ軌跡の回転方向の検知有無を選択するためのメッセージを表示部1402に表示する(ステップS4102)。そして、CPU101は操作部でジェスチャ軌跡の回転方向の検知有無に係る選択操作が行われたか否かを判定する(ステップS4103)。
なお、例えば、三角形、四角形、円、又は星のような単純な形状を軌跡して検出するだけであれば、軌跡の天地方向を決定する必要はないので、回転方向を検知しないと選択すればよい。
回転方向の検知有無に係る選択操作が行われないと(ステップS4103において、NO)、CPU101は待機する。一方、回転方向の検知有無に係る選択操作が行われないと(ステップS4103において、NO)、CPU101は、ユーザに対して序盤に入力されたジェスチャ軌跡を正面方向決定の際に重視するか否かを選択するメッセージを表示部1402に表示する(ステップS4104)。そして、CPU101は操作部によって序盤に入力された軌跡を重視か否かの選択操作が行われたか否かを判定する(ステップS4105)。
序盤に入力された軌跡を重視か否かの選択操作が行われないと(ステップS4105において、NO)、CPU101は待機する。一方、序盤に入力された軌跡を重視か否かの選択操作が行われると(ステップS4105において、YES)、CPU101は記録トリガボタンを押してアラーム音が鳴るまでは静止している旨およびアラーム音が鳴ったらジェスチャ入力開始可能を示す操作方法を表示部1402に表示する(ステップS4106)。
続いて、CPU101は、操作部において記録トリガボタンを押す操作が行われたか否かを判定する(ステップS4107)。記録トリガボタンを押す操作が行われないと(ステップS4107において、NO)、CPU101は待機する。
一方、記録トリガボタンを押す操作が行われると(ステップS4107において、YES)、CPU101の制御下で、ジェスチャ認識部109は前述の3次元動作検出部107で得られた検出信号の処理を開始する(ステップS4108)。
続いて、ジェスチャ認識部109は3次元動作検出部107で得られた検出信号に応じて重力方向の検知処理を開始する(ステップS4109)。そして、ジェスチャ認識部109は重力方向の検知処理が終了したか否かを判定する(ステップS4110)。重力方向の検知処理が終了しないと(ステップS4110において、NO)、ジェスチャ認識部109はステップS4109の処理に戻って、重力方向の検知処理を継続する。
なお、ここで、重力方向の検知処理とは、静止状態において重力加速度が検出される方向を検知する処理であり、現在の座標系において重力方向を定義するために行うものである。
一方、重力方向の検知処理が終了したと判定されると(ステップS4110において、YES)、CPU101は所定の時間アラームを鳴動させる(ステップS4111)。そして、CPU101は操作部において記録トリガボタンを離す操作が行われたか否かを判定する(ステップS4112)。
記録トリガボタンを離す操作が行われないと(ステップS4112において、NO)、CPU101は待機する。一方、記録トリガボタンを離す操作が行われると(ステップS4112において、YES)、CPU101の制御下で、ジェスチャ認識部109は3次元動作検出部で得られた検出信号の処理を停止した後、正面方向決定処理を行う(ステップS4113)。
その後、CPU101は回転方向検知有りが選択されているか否かを判定する(ステップS4114)。回転方向検知有りが選択されていると(ステップS4114において、YES)、CPU101の制御下で、ジェスチャ認識部109は検出した3次元ジェスチャ動作が重力方向に動かず水平動作のみであるか否かを判定する(ステップS4115)。
3次元ジェスチャ動作が水平動作のみでないと、つまり、3次元ジェスチャ動作に重力方向の動きが含まれていると(ステップS4115において、NO)、ジェスチャ認識部109は鉛直方向(つまり、重力方向)に対する傾斜方向が分かるので、回転方向決定処理において当該傾斜方向に応じて回転方向を決定する(ステップS4116)。
3次元ジェスチャ動作が水平動作のみであると判定されると(ステップS4115において、YES)、CPU101はユーザに対して重力方向の動きを加えてジェスチャ動作をやり直すか又は画面操作によって回転方向を決定するかのいずれかを選択するメッセージを表示部1402に表示する(ステップS4117)。そして、CPU101は操作部によってジェスチャ動作のやり直しが選択されたか否かを判定する(ステップS4118)。
ジェスチャ動作のやり直しが選択されると(ステップS4118において、YES)、CPU101はステップS4106の処理に戻る。一方、ジェスチャ動作のやり直しが選択されないと(ステップS4118において、NO)、CPU101は登録候補である2次元ジェスチャ動作を操作画面として表示部1402に表示する(ステップS4119)。
続いて、CPU101は操作部によって回転方向を確定するための確定操作が行われたか否かを判定する(ステップS4120)。確定操作が行われないと(ステップS4120において、NO)、CPU101はステップS4119の処理に戻る。一方、確定操作が行われると(ステップS4120において、YES)、CPU101は、後述するステップS4122の処理に進む。
ステップS4116の処理が行われた後、CPU101は登録候補である2次元ジェスチャ動作を表示部1402に表示する(ステップS4121)。なお、回転方向検知有りが選択されていないと(ステップS4114において、NO)、CPU101はステップS4121の処理に進む。
図42は、本発明の第7の実施形態によるジェスチャ認識装置を備えるビデオカメラにおいて回転方向確定操作中の操作画面を説明するための図である。そして、図42(a)〜図42(c)は操作画面による操作を示す図である。
図42(a)においては、タッチパネルを備える表示部1402に登録候補である2次元ジェスチャ動作4201が表示されるとともに、タッチパネル上に操作ボタンとして確定ボタン4202および回転ボタン4203が表示される。
図42(b)では、図42(a)に示す状態から回転ボタン4203を用いて右回転の操作が行われている。これによって、登録候補である2次元ジェスチャ動作4201は図42(a)に示す状態よりも右回転した状態で表示される。
図42(c)では、図42(a)に示す状態から回転ボタン4203を用いて左回転の操作が行われている。これによって、登録候補である2次元ジェスチャ動作4201は図42(a)に示す状態よりも左回転した状態で表示される。
ステップS4120又はS4121の処理に続いて、CPU101は操作部において登録承諾の選択操作が行われたか否かを判定する(ステップS4122)。登録承諾の選択操作が行われると(ステップS4122において、YES)、CPU101は2次元ジェスチャ動作を、例えば、記録媒体107に辞書登録して(ステップS4123)、ジェスチャ登録処理を終了する。
一方、登録承諾の選択操作が行われないと(ステップS4122において、NO)、CPU101はステップS4106の処理に戻る。
図43は、図41に示す正面方向決定処理を説明するためのフローチャートである。
正面方向決定処理を開始すると、CPU101の制御下で、ジェスチャ認識部109は、前述のステップS4105において序盤軌跡重視有が選択されているかどうか否かを判定する(ステップS4301)。
図44は、XYZ座標上で検出された3次元ジェスチャ動作を説明するための図である。そして、図44(a)はXY平面への投影を示す図であり、図44(b)はXZ平面への投影を示す図である。また、図44(c)はYZ平面への投影を示す図である。
図44(a)には、XYZ座標(XYZ軸)上で検出された3次元ジェスチャ動作においてX軸4401とY軸4402とからなる平面への投影が示されている。同様に、図44(b)には、X軸4401とZ軸4403とからからなる平面への投影が示されている。そして、図44(c)には、Y軸4402とZ軸4403とからなる平面への投影が示されている。
そして、ここでは、第1軌跡4404、第2軌跡4405、第3軌跡4406、および第4軌跡4407が示されている。第1軌跡4404は(x,y,z)の座標で表現すると、座標(1,1,7)から座標(1,4,4)への移動を示し、第2軌跡4405は、座標(1,4,4)から座標(7,4,1)への移動を示す。また、第3軌跡4406は、座標(7,4,1)から座標(1,1,7)への移動を示し、第4軌跡4407は、座標(1,1,7)から座標(7,1,4)への移動を示している。
再び図43を参照して、序盤軌跡重視有が選択されていないと(ステップS4301において、NO)、ジェスチャ認識部109は投影方向をZ軸方向として投影面積を求める(ステップS4302)。
図45および図46は投影方向に応じた投影面積を説明するための図である。そして、図45(a)〜図45(f)および図46(a)〜図46(h)はその一例を示す図である。
図45(a)は、図44(c)についてZ軸方向を投影方向4501とする図である。そして、図45(b)においては、図45(a)に示すX軸4401とY軸4402からなる平面への投影面4502が座標系の単位で4.5面積分として投影されている。
再び図43を参照して、ジェスチャ認識部109は投影方向をX軸回りに所定の角度だけ回転して投影した投影面積を求める(ステップS4303)。そして、ジェスチャ認識部109は投影方向がY軸に平行になったか否かを判定する(ステップS4304)。
ここで、図45(c)は図44(C)ついてX軸回りに15度回転させて投影方向4503とした図である。そして、図45(d)においては、図45(c)に示すX軸4401とY1軸4504とからなる平面への投影面4505が座標系の単位で5.5面積分として投影されている。
図45(e)は図44(C)についてX軸回りに30度回転させて投影方向4506とした図である。図45(f)においては、図45(e)に示すX軸4401とY2軸4507とからなる平面への投影面4508が座標系の単位で6.1面積分として投影されている。
図46(a)は図44(c)についてX軸回りに45度回転させて投影方向4509とした図である。そして、図46(b)においては、図46(a)に示すX軸4401とY3軸4510とからなる平面への投影面4511が座標系の単位で6.3面積分として投影されている。
図46(c)は図44(c)についてX軸回りに60度回転させて投影方向4512とした図である。そして、図46(d)においては、図46(d)に示すX軸4401とY4軸4513とからなる平面への投影面4514が座標系の単位で6.1面積分として投影されている。
図46(e)は図44(c)についてX軸回りに75度回転させて投影方向4515とした図である。そして、図46(f)においては。図46(e)に示すX軸4401とY5軸4516とからなる平面への投影面4517として座標系の単位で5.5面積分として投影されている。
図46(g)は図44(c)についてX軸回りに90度回転させて投影方向4518とした図である。ここでは、投影方向はY軸に平行となっている。そして、図46(h)においては、図46(g)に示すX軸4401とY6軸4519とからなる平面への投影面4520が座標系の単位で4.5面積分として投影されている。
再び図43を参照して、投影方向がY軸に平行になると(ステップS4304において、YES)、ジェスチャ認識部109は投影面積が最大であった回転角度(回転量ともいう)をθとしてメモリ102保存する(ステップS4305)。ここでは、図46(b)に示す投影面積が最大であるので、ジェスチャ認識部109は、図46(a)に示す投影方向4509への回転量4521を回転量θとする。
続いて、ジェスチャ認識部109は、Z軸Y軸をX軸回りに回転角度θだけ回転してその軸をZθ軸X軸Yθ軸とする(ステップS4306)。このことは、Z軸X軸Y軸で規定される座標が回転角度θだけ回転されたことを意味する。そして、ジェスチャ認識部109は、投影方向をZθ軸方向として投影面積を求める(ステップS4307)。当該投影面積は、X軸とYθ軸からなる平面を真上から投影した面積に相当する。
続いて、ジェスチャ認識部109は、投影方向をYθ軸回りに所定の角度、回転させて投影した投影面積を求める(ステップS4308)。そして、ジェスチャ認識部109は、投影方向がX軸と平行になったか否かを判定する(ステップS4309)。
投影方向がX軸と平行でないと(ステップS4309において、NO)、ジェスチャ認識部109はステップS4308の処理に戻って、投影方向をYθ軸回りに所定の角度、回転させて投影した投影面積を求める。一方、投影方向がX軸と平行であると(ステップS4309において、YES)、ジェスチャ認識部109は、投影面積が最大であった回転角(回転量)をγとしてメモリ102に保存する(ステップS4310)。
次に、ジェスチャ認識部109はZθ軸およびX軸をYθ軸回りに回転量γだけ回転して、その軸をZθγ軸、Xγ軸、およびYθ軸とする(ステップS4311)。そして、ジェスチャ認識部109はZθγ軸、Xγ軸、およびYθ軸の座標においてZθγ軸方向を正面方向する(ステップS4312)。
続いて、ジェスチャ認識部109はZθγ軸方向に投影したXγ軸およびYθ軸の座標を得て2次元ジェスチャ動作の軌跡候補として(ステップS4313)、正面方向決定処理を終了する。
序盤軌跡重視有が選択されていると(ステップS4301において、YES)、ジェスチャ認識部109は第1軌跡をZ軸とY軸からなる平面に投影した軌跡とZ軸が直角(直交)となるようにZ軸およびY軸をX軸回りに回転して、それぞれZA軸、X軸、およびYA軸とする(ステップS4314)。
ここでは、図44(c)に示す第1軌跡4404とZ軸4403とが直角になるようにZ軸4403およびY軸4402をX軸4401の回りに回転する。
次に、ジェスチャ認識部109は投影方向をZA軸方向として投影面積を求める(ステップS4315)。そして、ジェスチャ認識部109は、投影方向をX軸回りに所定の角度、回転して投影した投影面積を求める(ステップS4316)。その後、ジェスチャ認識部109は、投影面積が増加しているか否かを判定する(ステップS4317)。
投影面積が増加していると(ステップS4317において、YES)、ジェスチャ認識部109はステップS4316の処理に戻って、投影方向をX軸回りに所定の角度、回転して投影した投影面積を求める。一方、投影面積が増加していないと(ステップS4317において、NO)、ジェスチャ認識部109は投影方向をX軸回りに所定の角度、反転して投影した投影面積を求める(ステップS4318)。そして、ジェスチャ認識部109は再び投影面積が増加しているか否かを判定する(ステップS4319)。
投影面積が増加していると(ステップS4319において、YES)、ジェスチャ認識部109はステップS4318の処理に戻って、投影方向をX軸回りに所定の角度、反転して投影した投影面積を求める。投影面積が増加していないと(ステップS4319において、NO)、ジェスチャ認識部109は1回前の回転角(つまり、回転量)θの場合に投影面積が最大であったとして回転量θをメモリ102に保存する(ステップS4320)。
続いて、ジェスチャ認識部109は第1軌跡を重視して投影面積が最大である投影方向を探索するため、第1軌跡に直角な投影方向から先に開始して山登り手法で投影方向を探索する。なお、第1軌跡を重視する場合、投影面積が最大である投影方向の探索中に、第1軌跡(特定の軌跡)に直角な投影方向で求められる面積には所定の係数を乗算して、他の投影方向における投影面積に対して重みを付けるようにしてもよい。
さらには、正面方向を決定する際、特定の軌跡がなす面の投影面積の算出を優先して行うようにしてもよい。また、3次元ジェスチャ動作の軌跡において重力方向への移動が存在しないと、警告を行うか又は再度のジェスチャ動作を催促するようにしてもよい。
ジェスチャ認識部109はZA軸およびYA軸をX軸回りに回転量θだけ回転して、その軸をZθ軸、X軸、およびYθ軸とする(ステップS4321)。そして、ジェスチャ認識部109はステップS4307の処理に進む。
図47は、図41に示す回転方向決定処理を説明するためのフローチャートである。
回転方向決定処理を開始すると、ジェスチャ認識部109は、図41に示すステップS4109において得た重力方向をZ軸方向としたXYZ座標に3次元ジェスチャ動作の第1軌跡を配置する(ステップS4701)。そして、ジェスチャ認識部109はZ軸と3次元ジェスチャ動作の第1軌跡とのなす角度αを求める(ステップS4702)。
続いて、ジェスチャ認識部109は2次元ジェスチャ軌跡を第1軌跡の始点を中心として重力方向から角度αだけ回転させる。そして、ジェスチャ認識部109は回転方向決定処理を終了する。
このように、本発明の第7の実施形態では、3次元ジェスチャ動作の投影面積が最大になる方向を正面とするようにしたので、ユーザが空間的にどこを向いても撮像装置に向いているつもりで演じたジェスチャ動作イメージと一致するように、3次元ジェスチャ動作を2次元ジェスチャに変換することができる。
なお、第7の実施形態では、登録の際に3次元ジェスチャ動作の検出から2次元ジェスチャ動作への変換までを一連の処理として行っているが、3次元ジェスチャ動作の検出結果を一旦記録媒体107などのメモリに保存して、2次元ジェスチャ動作の認識の前に3次元ジェスチャ動作をメモリから読みだして2次元ジェスチャ動作に変換するようにしてもよい。
[第8の実施形態]
続いて、本発明の第8の実施形態によるジェスチャ認識装置の一例について説明する。
続いて、本発明の第8の実施形態によるジェスチャ認識装置の一例について説明する。
なお、第8の実施形態によるジェスチャ認識装置は、図1に示すジェスチャ認識装置と同様の構成を備えている。さらに、当該ジェスチャ認識装置は、例えば、デジタルカメラなどの撮像装置1400で用いられる。そして、撮像装置1400には各種コマンドなどを入力するための操作部が備えられている。操作部としてタッチパネルを用いる場合には、操作部と表示部1402とを一体的に構成される。
第8の実施形態によるジェスチャ認識装置では、ジェスチャ認識部109は撮像の結果得られた画像データから被写体の指示であるジェスチャ動作を検出する。ここでは、ジェスチャ動作とは、被写体の手又は指などの指示部による指示をいう。
ジェスチャ動作(ここでは、指示動作ともいう)は、指示部を規定する画素群の座標で表される。なお、ジェスチャ認識部109は、例えば、手又は指などの指示部の輪郭を基準としてテンプレートマッチングによって指示動作を検出するようにしてもよい。
第8の実施形態によるジェスチャ認識装置において、被写体検出部108は、撮像の結果得られた画像データに存在する顔領域を検出する。顔領域は、例えば、顔の中心および顔の縦横の大きさで表され顔枠として表示部1402に表示される。
なお、被写体検出部108は、例えば、顔の輪郭を基準としてテンプレートマッチングによって顔領域を検出するようにしてもよい。
さらに、被写体検出部108は顔領域から器官領域を検出する。ここで、器官領域とは、顔領域において器官を構成する領域であって、例えば、器官とは顔を構成する目、鼻、および口などのパーツをいう。そして、器官領域は、例えば、器官を構成する画素群の座標で表される。なお、被写体検出部108は、例えば、目、鼻、および口などの輪郭を基準としてテンプレートマッチングによって器官領域を検出するようにしてもよい。
第8の実施形態によるジェスチャ認識装置では、CPU101はジェスチャ認識部109でされた指示動作と被写体検出部106で検出された器官領域とに応じて、被写体に施すレタッチ処理を選択する。例えば、CPU101は、ジェスチャ認識部109で検出された手の位置座標が被写体検出部106で検出された目の領域を表わす座標に存在すると、被写体の目を大きくする画像処理をレタッチ処理として選択する。
CPU101は画像データにおける器官領域に対してレタッチ処理を行う。例えば、CPU101は、選択されたレタッチ処理に応じて被写体の該当する器官領域に対してレタッチ処理を行う。
上述のジェスチャ認識装置を備える撮像装置1400では、所謂中央1点AF又は顔AFを用いた撮影を行うことができる。中央1点AFとは撮影画面内の中央位置1点に対してAFを行うことであり、顔AFとは上記の顔検出機能によって検出された撮影画面内の顔に対してAFを行うことである。
図48は、本発明の第8の実施形態によるジェスチャ認識装置を備える撮像装置におけるレタッチ処理の一例を説明するためのフローチャートである。なお、図示のフローチャートに係る処理は、CPU101の制御下で行われる。
ここでは、手の指示動作および顔の器官領域のうち目領域をそれぞれジェスチャ認識部109および被写体検出部106で検出する。そして、CPU101は手の座標と顔領域の座標とから表示部1402に表示する画像を選択する。さらに、CPU101は手の座標と目領域の座標とに応じてレタッチ処理を選択して、後述のレタッチ機能がONであると目を大きく見せるレタッチ処理を被写体に施して表示部1402に表示する。
レタッチ処理を開始すると、CPU101は現フレームにおいて画像データ(以下単に画像と呼ぶ)をキャプチャする(ステップS4801)。続いて、CPU101は、キャプチャした画像の直前のフレームにおいて表示部1402に表示した画像をメモリ102に保存する(ステップS4802)。
次に、CPU101の制御下で、被写体検出部106はキャプチャされた画像について被写体の顔領域を検出する。そして、CPU101は顔領域が検出されたか否かを判定する(ステップS4803)。顔領域が検出されると(ステップS4803において、YES)、CPU101の制御下で、被写体検出部106は当該顔領域について目領域を検出する器官検出を行う。そして、CPU101は器官の1つである目領域が検出されたか否かを判定する(ステップS4804)。
目領域が検出されると(ステップS4804において、YES)、CPU101の制御下で、ジェスチャ認識部109は被写体における手の指示動作を検出する。そして、ジェスチャ認識部109は所定の指示動作が検出されたか否かを判定する(ステップ4805)。所定の指示動作が検出されると(ステップS4805において、YES)、CPU101は顔領域の座標と手領域の座標とを比較して、手領域が顔領域と被っているか否かを判定する(ステップS4806)。
手領域が顔領域を被っていると(ステップS4806において、YES)、CPU101は目領域の座標と手領域の座標とを比較し、手領域が目領域を指し示しているか否かを判定する。つまり、ここでは、CPU101は、手領域と目領域との位置関係に応じてレタッチ処理が選択されたか否かを判定することになる(ステップS4807)。レタッチ処理が選択されたと判定すると(ステップS4807において、YES)、CPU101はレタッチ機能の切り替えを行う(ステップS4808)。
ここでは、CPU101はレタッチ機能がOFFであればレタッチ機能をONに切り替える処理を行う。また、CPU101はレタッチ機能がONであればレタッチ機能をOFFに切り替える。
続いて、CPU101はレタッチ機能がONであるか否かを判定する(ステップS4809)。レタッチ機能がONであると(ステップS4809において、YES)、レタッチ機能はONであるがステップS4801でキャプチャした画像においては手領域が顔領域を被っていので、CPU101はステップS4802でメモリ102に保存した直前のフレームの画像を読み込む。
その後、CPU101は当該直前のフレームの画像において被写体の目を大きくするレタッチ処理を行って、メモリ102に規定された表示用画像領域にレタッチ処理した画像を保存する(ステップS4810)。
続いて、CPU101はメモリ102の表示用画像領域に−保存された画像を表示部1402に表示する(ステップS4811)。そして、CPU101はレタッチ処理を終了する。なお、レタッチ処理が選択されないと(ステップS4807において、NO)、CPU101はステップS4809の処理に進む。
レタッチ機能がOFFであると(ステップS4809において、NO)、レタッチ機能がOFFの状態で、ステップS4801においてキャプチャした画像においては手領域が顔領域を被っていので、CPU101はステップS4802でメモリ102に保存した直前のフレームの画像を表示用画像領域に保存する(ステップS4812)。そして、CPU101はステップS4811の処理に進む。
手領域が顔領域を被っていないと(ステップS4806において、NO)、CPU101はレタッチ機能がONであるか否かを判定する(ステップS4813)。レタッチ機能がONであると(ステップS4813において、YES)、レタッチ機能がONの状態でキャプチャした画像では手領域と顔領域を被っていないので、CPU101はステップS4801でキャプチャした画像について被写体の目を大きくするレタッチ処理を行う。そして、CPU101はレタッチ処理後の画像をメモリ102の表示用画像領域に保存する(ステップS4814)。その後、CPU101はステップS4811の処理に進む。
レタッチ機能がOFFであると(ステップS4813において、NO)、レタッチ機能がOFFの状態でキャプチャした画像では手領域と顔領域を被っていないので、CPU101はステップS4801でキャプチャした画像をメモリ102の表示用画像領域に保存する。そして、CPU101はステップS4811の処理に進む。ここでは、ステップS3801においてキャプチャした画像が表示部1402に表示されることになる。
なお、所定の指示動作が検出されないと(ステップS4805において、NO)、CPU101はステップS4813の処理に進む。また、顔領域が検出されない場合(ステップS4803において、NO)又は目領域が検出されない場合(ステップS4804において、YES)には、CPU101はステップS4815の処理に進む。
次に、図48で説明した処理を行った際の被写体の状態と表示部に表示される画像の変化について説明する。
図49は、図48に示す処理を行った際の処理タイミングと表示部の状態遷移を説明するための図である。
いま、時刻tにおいて、ステップS4803の処理でキャプチャされた画像において顔領域が検出され、ステップS4804の処理で当該顔領域から目領域が検出される(状態(a)参照)。状態(a)では、キャプチャした画像には手領域が写っていないので、ステップS4805の処理では指示動作は検出されない。また、ここでは、レタッチ機能がOFFであるので、ステップS4813の処理からステップS4815の処理に進む。この結果、表示部1402にはライブビュー画像としてキャプチャした画像がそのまま表示されることになる。
時刻(t+1)において、ステップS4803の処理でキャプチャされた画像において顔領域が検出され、ステップS4804の処理で当該顔領域から目領域が検出される(状態(b)参照)。状態(b)では、キャプチャした画像には手領域が写っているので、ステップS4805の処理では指示動作は検出される。
一方、ここでは、手領域が顔領域を被っておらず、レタッチ機能がOFFであるので、ステップS4813の処理からステップS4815の処理に進む。この結果、表示部1402にはライブビュー画像としてキャプチャした画像がそのまま表示されることになる。
時刻(t+2)において、ステップS4803の処理でキャプチャされた画像において顔領域が検出され、ステップS4804の処理で当該顔領域から目領域が検出される(状態(c)参照)。状態(c)では、キャプチャした画像には手領域が写っているので、ステップS4805の処理では指示動作が検出される。
ここでは、手領域が顔領域を被っているので、ステップS4807の処理において目領域の座標と手領域の座標とが比較されて、その結果、手領域は目領域を指し示していないので、目領域に対するレタッチ処理は選択されない。そして、レタッチ機能がOFFであるので、ステップS4812の処理においては、手領域が顔領域を被っていない直前の時刻(t+1)でライブビュー表示された画像が時刻(t+2)においてライブビュー表示される。
時刻(t+3)において、ステップS4803の処理でキャプチャされた画像において顔領域が検出され、ステップS4804の処理で当該顔領域から目領域が検出される(状態(d)参照)。状態(d)では、キャプチャした画像には手領域が写っているので、ステップS4805の処理では指示動作が検出される。
ここでは、手領域が顔領域を被っているので、ステップS4807の処理において目領域の座標と手領域の座標とが比較されて、その結果、手領域は目領域を指し示しているので、目領域に対するレタッチ処理が選択される。そして、レタッチ機能がONであるので、ステップS4812の処理においては、手領域が顔領域を被っていない時刻(t+1)でライブビュー表示された画像について被写体の目領域を大きくするレタッチ処理が行われた画像がライブビュー表示される。
時刻(t+4)において、ステップS4803の処理でキャプチャされた画像において顔領域が検出され、ステップS4804の処理で当該顔領域から目領域が検出される(状態(e)参照)。状態(e)では、キャプチャした画像には手領域が写っていないので、ステップS4805の処理では指示動作が検出されない。
ここでは、手領域が顔領域を被っているので、ステップS4807の処理において目領域の座標と手領域の座標とが比較されて、その結果、手領域は目領域を指し示しているので、目領域に対するレタッチ処理が選択される。
一方、レタッチ機能はONの状態に保持されているので、ステップS4812の処理においては、時刻(t+4)でキャプチャした画像について被写体の目領域を大きくするレタッチ処理が行われた画像がライブビュー表示されることになる。
なお、目にレタッチ処理を施す際に、手が目の領域を被っている場合には、前述のように直前のフレームにおける画像にレタッチ処理が施されるが、この際、CPU101は手の周辺を拡大した画像を表示部1402の別の領域に表示するようにしてもよい。CPU101は現在のフレームの画像を表示部1402の別の領域に表示するようにしてもよい。
さらに、ジェスチャ認識部109は、例えば、被写体による画像の確認が可能な状態に表示部1402が位置づけられている場合に有効とされるようにしてもよい。
このように、本発明の第8の実施形態では、被写体自身による指示動作に応じて顔領域にレタッチ処理を行うか否かを選択する際に、当該指示動作を検出した場合に指などの指示部が顔に被っていても、常にライブビュー表示においては指などの指示部が顔に被っていない状態でレタッチ処理を行うことができる。
以上、本発明について実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
例えば、上記の実施の形態の機能を制御方法として、この制御方法をジェスチャ認識装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムをジェスチャ認識が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
また、本発明は、以下の処理を実行することによっても実現される。つまり、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPUなど)がプログラムを読み出して実行する処理である。
101 CPU
102 メモリ
103 不揮発性メモリ
104 画像処理部
105 撮像部
106 記憶媒体I/F
107 記憶媒体
108 被写体検出部
109 ジェスチャ認識部
110 外部I/F
102 メモリ
103 不揮発性メモリ
104 画像処理部
105 撮像部
106 記憶媒体I/F
107 記憶媒体
108 被写体検出部
109 ジェスチャ認識部
110 外部I/F
Claims (49)
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該認識したジェスチャ動作に応じて制御命令を実行するジェスチャ認識装置であって、
前記ジェスチャ動作の認識を行う際、予め設定された動作モデルと前記ジェスチャ動作とを比較してその類似度を求める照合手段と、
前記類似度が予め定められた第1の類似閾値未満でかつ当該第1の類似閾値よりも小さい第2の類似閾値以上であると、前記ジェスチャ動作を示すジェスチャ情報をメモリに記憶し、前記類似度が前記第1の類似閾値以上であると、前記ジェスチャ動作に対応付けられた制御命令を実行するとともに、前記メモリに記憶された前記ジェスチャ情報に基づいて、前記制御命令が行われたジェスチャ動作から所定の時間以内に存在するジェスチャ動作までの期間を、前記画像において予め定められた画像処理を施す効果対象期間とする制御手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記制御手段は、少なくとも前記ジェスチャ動作の開始時刻、前記ジェスチャ動作の終了時刻、および前記類似度を前記ジェスチャ情報として前記メモリに記憶することを特徴とする請求項1に記載のジェスチャ認識装置。
- 前記制御手段は、前記メモリに記憶された前記ジェスチャ情報に応じてそのジェスチャ動作の開始時刻又は終了時刻が、前記制御命令が実行されたジェスチャ動作の開始時刻又は終了時刻から前記所定の時間以内であると、前記ジェスチャ情報に対応するジェスチャ動作の開始から前記制御命令が実行されたジェスチャ動作の終了までの期間を前記効果対象期間とすることを特徴とする請求項2に記載のジェスチャ認識装置。
- 前記制御手段は、さらに前記ジェスチャ情報として前記動作モデルを識別するための識別情報を前記メモリに記憶しており、
前記制御手段は、前記制御命令が実行される前に、前記ジェスチャ情報に含まれる前記動作モデルの識別情報に応じて前記制御命令が実行されるジェスチャ動作と同一のジェスチャ動作が検出されると、前記同一のジェスチャ動作の開始から前記制御命令が実行されるジェスチャ動作の終了までの期間を前記効果対象期間とすることを特徴とする請求項2に記載のジェスチャ認識装置。 - 前記制御手段は、さらに前記ジェスチャ情報として前記動作モデルを識別するための識別情報を前記メモリに記憶しており、
前記制御手段は、前記制御命令が実行された後に、前記ジェスチャ情報に含まれる前記動作モデルの識別情報に応じて前記制御命令が実行されたジェスチャ動作と同一のジェスチャ動作が検出されると、前記制御命令が実行されたジェスチャ動作の開始から前記同一のジェスチャ動作の終了までの期間を前記効果対象期間とすることを特徴とする請求項2に記載のジェスチャ認識装置。 - 前記制御手段は、前記制御命令が実行されたジェスチャ動作の開始又は終了から所定の時間以内に、その類似度が前記第1の類似閾値未満でかつ前記第2の類似閾値以上であるジェスチャ動作の開始又は終了を検出すると、前記制御命令が実行されたジェスチャ動作の開始からその類似度が前記第1の類似閾値未満でかつ前記第2の類似閾値以上であるジェスチャ動作の終了までの期間を前記効果対象期間とすることを特徴とする請求項2〜5のいずれか1項に記載のジェスチャ認識装置。
- 前記予め定められた画像処理はスキップ処理又は削除処理であることを特徴とする請求項1〜6のいずれか1項に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、
前記ジェスチャ動作が開始された際に、前記機器の現在の状態を示す状態情報を記憶する状態記憶手段と、
前記ジェスチャ動作に応じた制御命令の属性が停止制御および開始制御のいずれであるかを判定する判定手段と、
前記判定手段によって前記制御命令の属性が開始制御であると判定されると、前記ジェスチャ動作が認識されたタイミングで当該制御命令を実行し、前記判定手段によって前記制御命令の属性が停止制御であると判定されると、前記状態情報が示す機器の状態と等価となるように前記制御命令を実行する制御手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記機器は、被写体を撮像して前記画像を得る撮像手段と、前記画像を記録する画像記録手段とを少なくとも備える撮像装置であり、
前記状態記憶手段は、前記状態情報として、前記ジェスチャ動作が開始された際の前記撮像装置における現在時刻を記憶し、
前記映像記録手段による前記画像の記録を命令する記録命令を示す制御命令の属性が前記停止制御であると、前記制御手段は前記画像記録手段を制御して前記現在時刻の後の画像を記録しない状態とすることを特徴とする請求項8に記載のジェスチャ認識装置。 - 前記機器は、少なくともズームレンズを備える撮像レンズと、当該撮像レンズを介して結像された光学像に応じて前記画像を得る撮像手段と有する撮像装置であり、
前記状態記憶手段は、前記状態情報として前記ジェスチャ動作が開始された際の前記ズームレンズのズーム値を記憶し、
前記ズームレンズを制御するズーム命令を示す制御命令の属性が前記停止制御であると、前記制御手段は前記状態記憶手段によって記憶された前記ズーム値と等価に前記ズームレンズを制御することを特徴とする請求項8に記載のジェスチャ認識装置。 - 前記機器は、メモリに記憶された画像を再生して再生画像として表示部に表示する再生装置であり、
前記状態記憶手段は、前記状態情報として前記ジェスチャ動作が開始された際の前記再生画像が再生された再生時刻を記憶し、
前記再生装置を再生制御する再生制御命令を示す制御命令の属性が前記停止制御であると、前記制御手段は前記再生装置を制御して前記再生時刻における画像を前記表示部に表示することを特徴とする請求項8に記載のジェスチャ認識装置。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、
前記画像における前記被写体の状況に応じて前記ジェスチャ動作の認識に用いる被写体の特定部位を決定する決定手段と、
前記決定手段によって決定された特定部位の動作に応じて前記ジェスチャ動作の認識を行う認識手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記決定手段は、前記被写体の状況として前記画像における前記被写体の大きさに応じて前記特定部位を決定することを特徴とする請求項12に記載のジェスチャ認識装置。
- 前記被写体における顔領域を検出する顔領域検出手段を備え、
前記画像における前記顔領域の大きさが所定の閾値未満であると、前記決定手段は予め設定された特定部位として手を選択することを特徴とする請求項12又は13に記載のジェスチャ認識装置。 - 前記画像における前記顔領域の大きさが所定の閾値以上であると、前記決定手段は前記画像における前記顔領域の位置および大きさに応じて手の領域が前記画像に存在するか否かを判定して、前記手の領域が画像に存在しないと判定すると前記特徴部位として視線を選択することを特徴とする請求項14に記載のジェスチャ認識装置。
- 前記決定手段は前記手の領域が画像に存在すると判定すると前記特徴部位として前記手を選択することを特徴とする請求項15に記載のジェスチャ認識装置。
- 前記決定手段は、過去に決定された前記特定部位の種別をメモリに記憶し、現在における特定部位を決定する際、前記メモリに記憶された特徴部位の種別を参照して特徴部位を選択することを特徴とする請求項12〜16のいずれか1項に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、
前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作を検出する第1の検出手段と、
前記ジェスチャ動作に応じて前記被写体の動きの大きさを検出する第2の検出手段と、
前記ジェスチャ動作に関連付けて前記制御命令をメモリに登録するするとともに、前記被写体の動きの大きさに応じて、前記被写体に対する前記被写体の動きの相対的大きさをメモリに登録する登録手段と、
前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記被写体の動きの相対的大きさを参照して、前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記第2の検出手段は、前記被写体が前記ジェスチャ認識装置を把持した状態でその腕の曲げ伸ばし動作を行った際の腕の距離を前記被写体の動きの大きさとすることを特徴とする請求項18に記載のジェスチャ認識装置。
- 前記被写体の身体的特徴量を入力する操作手段を有し、
前記第2の検出手段は、前記操作手段で入力された前記身体的特徴量に応じて前記被写体の動きの大きさを検出することを特徴とする請求項18に記載のジェスチャ認識装置。 - 前記判定手段によって前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とが同一であると判定されると、前記登録されたジェスチャ動作に関連付けられた制御命令を実行する制御手段を有することを特徴とする請求項18〜20のいずれか1項に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、
前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作の軌跡をジェスチャ軌跡として検出する第1の検出手段と、
前記ジェスチャ軌跡の前記被写体の身体に対する相対的位置をジェスチャ位置として設定する設定手段と、
前記ジェスチャ軌跡に関連付けて前記制御命令をおよび前記ジェスチャ位置をメモリに登録する登録手段と、
前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記ジェスチャ位置を参照して、前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記ジェスチャ軌跡と前記身体との相対的位置の候補である複数の相対的位置候補を表示部に表示する表示制御手段を備え、
前記設定手段は前記複数の相対的位置候補から選択された1つの候補を前記ジェスチャ位置とすることを特徴とする請求項22に記載のジェスチャ認識装置。 - 前記ジェスチャ軌跡と前記身体との相対的位置を示すマーカーを表示部に表示して、ユーザの操作に応じて前記表示部において前記マーカを移動する表示制御手段を有し、
前記設定手段は、ユーザの操作によって決定された前記マーカーの位置を前記ジェスチャ位置とすることを特徴とする請求項22に記載のジェスチャ認識装置。 - 前記設定手段は、前記ジェスチャ軌跡のスタート位置と身体との相対的位置を前記ジェスチャ位置とすることを特徴とする請求項22に記載のジェスチャ認識装置。
- 前記設定手段は前記ジェスチャ軌跡の重心位置と身体との相対的位置を前記ジェスチャ位置とすることを特徴とする請求項22に記載のジェスチャ認識装置。
- 前記判定手段によって前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とが同一であると判定されると、前記登録されたジェスチャ軌跡に関連付けられた制御命令を実行する制御手段を有することを特徴とする請求項22〜26のいずれか1項に記載のジェスチャ認識装置。
- 前記慣性センサは加速度を検出するための加速度センサであることを特徴とする請求項18〜27のいずれか1項に記載のジェスチャ認識装置。
- 前記慣性センサは角速度を検出するための角加速度センサであることを特徴とする請求項18〜27のいずれか1項に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置であって、
前記機器の移動軌跡を3次元ジェスチャ動作として検出する検出手段と、
前記3次元ジェスチャ動作を平面に投影した面積が最大となる方向に応じて前記3次元ジェスチャ動作を2次元ジェスチャ動作に変換する正面方向を決定する決定手段と、
前記正面方向に基づいて前記3次元ジェスチャ動作を前記2次元ジェスチャ動作に変換する変換手段と、
前記ジェスチャ動作と前記2次元ジェスチャ動作とを比較して前記制御命令を実行する制御手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記決定手段は、2次元ジェスチャ動作を登録する際、前記3次元ジェスチャ動作の重力方向に対する相対的な移動方向に応じて前記2次元ジェスチャ動作の回転方向を決定することを特徴とする請求項30に記載のジェスチャ認識装置。
- 前記決定手段は、前記3次元ジェスチャ動作の軌跡における特定の軌跡がなす面の投影面積に重み付けをして正面方向を決定することを特徴とする請求項30に記載のジェスチャ認識装置。
- 前記決定手段は、前記正面方向を決定する際、前記特定の軌跡がなす面の投影面積の算出を優先して行うことを特徴とする請求項32に記載のジェスチャ認識装置。
- 前記決定手段は、前記3次元ジェスチャ動作の軌跡において重力方向への移動が存在しないと、警告を行うか又は再度のジェスチャ動作を催促することを特徴とする請求項32に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じてレタッチ処理を行う制御命令を実行するジェスチャ認識装置であって、
前記ジェスチャ動作として前記画像において所定の指示部によって前記被写体の所定の領域を指し示す指示動作を検出する検出手段と、
前記指示部と前記所定の領域との位置関係に応じて前記所定の領域に前記レタッチ処理を行うか否かを選択する選択手段と、
前記選択手段によって前記レタッチ処理が選択された際、前記指示部によって前記所定の領域が被われていると、前記指示部によって前記所定の領域が被われる直前のフレームにおける画像について前記レタッチ処理を行う制御手段と、
を有することを特徴とするジェスチャ認識装置。 - 前記選択手段によって前記レタッチ処理が選択された際、前記制御手段は、前記指示部によって前記所定の領域が被われていないと、前記指示動作が検出されたフレームにおける画像について前記レタッチ処理を行うことを特徴とする請求項35に記載のジェスチャ認識装置。
- 前記被写体の所定の領域は顔領域における特定の部位であることを特徴とする請求項35又は36に記載のジェスチャ認識装置。
- 前記指示部は前記被写体の手であり、前記特定の部位は目であることを特徴とする請求項37に記載のジェスチャ認識装置。
- 前記画像を表示する表示部を備え、
前記検出手段は前記被写体による前記画像の確認が可能な状態に前記表示部が位置づけられている場合に有効となることを特徴とする請求項35〜38のいずれか1項に記載のジェスチャ認識装置。 - 前記選択手段によって前記レタッチ処理が選択されない場合、前記制御手段は、前記指示部によって前記所定の領域が被われていると、前記指示部によって前記所定の領域が被われる直前のフレームにおける画像を表示部に表示することを特徴とする請求項35〜39のいずれか1項に記載のジェスチャ認識装置。
- 前記選択手段によって前記レタッチ処理が選択されると、前記制御手段は、前記指示部によって前記所定の領域が被われている場合には、前記指示部の周辺を拡大して表示部の別の領域に表示するようにしたことを特徴とする請求項35〜39のいずれか1項に記載のジェスチャ認識装置。
- 前記選択手段によって前記レタッチ処理が選択されると、前記制御手段は、前記指示部によって前記所定の領域が被われている場合には、現在のフレームの画像を表示部の別の領域に表示するようにしたことを特徴とする請求項35〜39のいずれか1項に記載のジェスチャ認識装置。
- 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該認識したジェスチャ動作に応じて制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置に備えられたコンピュータに、
前記ジェスチャ動作の認識を行う際、予め設定された動作モデルと前記ジェスチャ動作とを比較してその類似度を求める照合ステップと、
前記類似度が予め定められた第1の類似閾値未満でかつ当該第1の類似閾値よりも小さい第2の類似閾値以上であると、前記ジェスチャ動作を示すジェスチャ情報をメモリに記憶し、前記類似度が前記第1の類似閾値以上であると、前記ジェスチャ動作に対応付けられた制御命令を実行するとともに、前記メモリに記憶された前記ジェスチャ情報に基づいて、前記制御命令が行われたジェスチャ動作から所定の時間以内に存在するジェスチャ動作までの期間を、前記画像において予め定められた画像処理を施す効果対象期間とする制御ステップと、
を実行させることを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記ジェスチャ動作が開始された際に、前記機器の現在の状態を示す状態情報をメモリに記憶する状態記憶ステップと、
前記ジェスチャ動作に応じた制御命令の属性が停止制御および開始制御のいずれであるかを判定する判定ステップと、
前記判定ステップで前記制御命令の属性が開始制御であると判定されると、前記ジェスチャ動作が認識されたタイミングで当該制御命令を実行し、前記判定ステップで前記制御命令の属性が停止制御であると判定されると、前記状態情報が示す機器の状態と等価となるように前記制御命令を実行する制御ステップと、
を実行させることを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記画像における前記被写体の状況に応じて前記ジェスチャ動作の認識に用いる被写体の特定部位を決定する決定ステップと、
前記決定ステップで決定された特定部位の動作に応じて前記ジェスチャ動作の認識を行う認識ステップと、
を実行させることを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作を検出する第1の検出ステップと、
前記ジェスチャ動作に応じて前記被写体の動きの大きさを検出する第2の検出ステップと、
前記ジェスチャ動作に関連付けて前記制御命令をメモリに登録するするとともに、前記被写体の動きの大きさに応じて、前記被写体に対する前記被写体の動きの相対的大きさをメモリに登録する登録ステップと、
前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記被写体の動きの相対的大きさを参照して、前記メモリに登録されたジェスチャ動作と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定ステップと、
を実行させることを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記被写体が前記ジェスチャ認識装置を把持した状態で慣性センサによって前記ジェスチャ動作の軌跡をジェスチャ軌跡として検出する第1の検出ステップと、
前記ジェスチャ軌跡の前記被写体の身体に対する相対的位置をジェスチャ位置として設定する設定ステップと、
前記ジェスチャ軌跡に関連付けて前記制御命令をおよび前記ジェスチャ位置をメモリに登録する登録ステップと、
前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とを比較して前記制御命令を実行する際、前記ジェスチャ位置を参照して、前記メモリに登録されたジェスチャ軌跡と前記機器を制御する際に行われたジェスチャ動作とのマッチングを判定する判定ステップと、
を実行させることを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じて機器の制御を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記機器の移動軌跡を3次元ジェスチャ動作として検出する検出ステップと、
前記3次元ジェスチャ動作を平面に投影した面積が最大となる方向に応じて前記3次元ジェスチャ動作を2次元ジェスチャ動作に変換する正面方向を決定する決定ステップと、
前記正面方向に基づいて前記3次元ジェスチャ動作を前記2次元ジェスチャ動作に変換する変換ステップと、
前記ジェスチャ動作と前記2次元ジェスチャ動作とを比較して前記制御命令を実行する制御ステップと、
を実行することを特徴とする制御プログラム。 - 予め定められた間隔で与えられる画像において被写体の所定の動作をジェスチャ動作として認識して、当該ジェスチャ動作に応じてレタッチ処理を行う制御命令を実行するジェスチャ認識装置で用いられる制御プログラムであって、
前記ジェスチャ認識装置が備えるコンピュータに、
前記ジェスチャ動作として前記画像において所定の指示部によって前記被写体の所定の領域を指し示す指示動作を検出する検出ステップと、
前記指示部と前記所定の領域との位置関係に応じて前記所定の領域に前記レタッチ処理を行うか否かを選択する選択ステップと、
前記選択ステップで前記レタッチ処理が選択された際、前記指示部によって前記所定の領域が被われていると、前記指示部によって前記所定の領域が被われる直前のフレームにおける画像について前記レタッチ処理を行う制御ステップと、
を実行させることを特徴とする制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013174440A JP2015043141A (ja) | 2013-08-26 | 2013-08-26 | ジェスチャ認識装置および制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013174440A JP2015043141A (ja) | 2013-08-26 | 2013-08-26 | ジェスチャ認識装置および制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015043141A true JP2015043141A (ja) | 2015-03-05 |
Family
ID=52696646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013174440A Pending JP2015043141A (ja) | 2013-08-26 | 2013-08-26 | ジェスチャ認識装置および制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015043141A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016157299A1 (ja) * | 2015-03-27 | 2016-10-06 | 三菱電機株式会社 | 撮像装置及び方法、操作装置及び方法、並びにプログラム及び記録媒体 |
JP2018005752A (ja) * | 2016-07-07 | 2018-01-11 | 株式会社日立システムズ | 振る舞い検知システム |
JP2019096252A (ja) * | 2017-11-28 | 2019-06-20 | Kddi株式会社 | 撮影映像から人の行動を表すコンテキストを推定するプログラム、装置及び方法 |
CN111880927A (zh) * | 2017-12-05 | 2020-11-03 | 创新先进技术有限公司 | 一种资源分配方法、装置及设备 |
JP2021175175A (ja) * | 2020-04-28 | 2021-11-01 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co., Ltd | 人間の身体表示に基づいて可動物体を操作するための方法、プログラムおよび装置 |
-
2013
- 2013-08-26 JP JP2013174440A patent/JP2015043141A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016157299A1 (ja) * | 2015-03-27 | 2016-10-06 | 三菱電機株式会社 | 撮像装置及び方法、操作装置及び方法、並びにプログラム及び記録媒体 |
JPWO2016157299A1 (ja) * | 2015-03-27 | 2017-09-21 | 三菱電機株式会社 | 撮像装置及び方法、操作装置及び方法、並びにプログラム及び記録媒体 |
US10460195B2 (en) | 2015-03-27 | 2019-10-29 | Mitsubishi Electric Corporation | Imaging apparatus and method, operation apparatus and method, and program and recording medium |
JP2018005752A (ja) * | 2016-07-07 | 2018-01-11 | 株式会社日立システムズ | 振る舞い検知システム |
JP2019096252A (ja) * | 2017-11-28 | 2019-06-20 | Kddi株式会社 | 撮影映像から人の行動を表すコンテキストを推定するプログラム、装置及び方法 |
CN111880927A (zh) * | 2017-12-05 | 2020-11-03 | 创新先进技术有限公司 | 一种资源分配方法、装置及设备 |
CN111880927B (zh) * | 2017-12-05 | 2024-02-06 | 创新先进技术有限公司 | 一种资源分配方法、装置及设备 |
JP2021175175A (ja) * | 2020-04-28 | 2021-11-01 | エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co., Ltd | 人間の身体表示に基づいて可動物体を操作するための方法、プログラムおよび装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4508257B2 (ja) | 構図判定装置、構図判定方法、プログラム | |
CN106489113B (zh) | Vr控制的方法、装置及电子设备 | |
JP2015043141A (ja) | ジェスチャ認識装置および制御プログラム | |
CN108292364A (zh) | 在全向视频中的跟踪感兴趣对象 | |
WO2013036233A1 (en) | Augmented reality based on imaged object characteristics | |
US20030214524A1 (en) | Control apparatus and method by gesture recognition and recording medium therefor | |
KR20120058454A (ko) | 디스플레이를 포함하는 휴대용 전자 장치 및 그러한 장치를 제어하기 위한 방법 | |
KR20150005270A (ko) | 전자 장치에 의해 촬영된 이미지들을 프리뷰하는 방법 및 이를 위한 전자 장치 | |
US11573627B2 (en) | Method of controlling device and electronic device | |
JP2011078009A (ja) | 撮像装置および撮像装置用プログラム | |
CN110968190B (zh) | 用于触摸检测的imu | |
JP6150652B2 (ja) | 撮像装置、撮像装置の制御方法及びプログラム並びに記録媒体 | |
US11886643B2 (en) | Information processing apparatus and information processing method | |
WO2015136952A1 (ja) | ジェスチャー認識装置、ヘッドマウントディスプレイ、および携帯端末 | |
JP2020523668A (ja) | 仮想カメラを構成するシステム及び方法 | |
EP3528024A1 (en) | Information processing device, information processing method, and program | |
KR20160088719A (ko) | 이미지를 촬영하는 전자 장치 및 방법 | |
JP6021488B2 (ja) | 制御装置、制御方法、および制御プログラム | |
US10444825B2 (en) | Drift cancelation for portable object detection and tracking | |
KR101835531B1 (ko) | 얼굴 인식 기반의 증강현실 영상을 제공하는 디스플레이 장치 및 이의 제어 방법 | |
JP2017126899A (ja) | 画像処理装置および画像処理方法 | |
US20160171297A1 (en) | Method and device for character input | |
JP6102445B2 (ja) | 表示装置、表示方法、および表示プログラム | |
JP2013004001A (ja) | 表示制御装置、表示制御方法、およびプログラム | |
CN110045896A (zh) | 电子设备及其控制方法和计算机可读介质 |