(57)【特許請求の範囲】
【請求項１】
可搬型の情報処理装置であって、
撮像部と、
前記撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力する認識手段と、
前記情報処理装置の姿勢の変化を検出する検出手段と、
前記検出対象の認識位置の時間的変化に応じた処理を実行する処理手段と、
前記情報処理装置の姿勢の変化に応じて、前記認識手段により出力される前記検出対象の位置の時間的変化を補正する補正手段とを備え、
前記補正手段は、前記検出手段による検出値が予め定められた条件を満たしている場合に、前記検出対象の位置の時間的変化を補正し、
前記予め定められた条件は、前記情報処理装置の姿勢の単位時間あたりの変化量が予め定められた範囲内にあることを含む、情報処理装置。
【請求項２】
前記検出手段は、ジャイロセンサを含む、請求項１に記載の情報処理装置。
【請求項３】
前記補正手段は、前記認識手段による前記検出対象の認識開始時における姿勢を基準とした変化量を用いて、前記検出対象の位置の時間的変化を補正する、請求項１または２に記載の情報処理装置。
【請求項４】
画像を表示する表示手段と、
前記撮像部によって取得される画像内の所定位置に前記検出対象を位置付けるための情報を、前記撮像部によって取得される画像とともに、前記表示手段に表示するキャリブレーション手段とをさらに備える、請求項３に記載の情報処理装置。
【請求項５】
前記予め定められた条件は、前記撮像部によって取得された画像内のユーザ以外の背景の部分についての類似度が所定の信頼度を有していることを含む、請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
可搬型の情報処理装置で実行される情報処理プログラムであって、前記情報処理装置は撮像部を含んでおり、前記情報処理プログラムは前記情報処理装置に、
前記撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力するステップと、
前記情報処理装置の姿勢の変化を検出するステップと、
前記検出対象の認識位置の時間的変化に応じた処理を実行するステップと、
前記情報処理装置の姿勢の変化に応じて、出力される前記検出対象の位置の時間的変化を補正するステップとを実行させ、
前記補正するステップは、前記検出するステップによる検出値が予め定められた条件を満たしている場合に、前記検出対象の位置の時間的変化を補正するステップを含み、
前記予め定められた条件は、前記情報処理装置の姿勢の単位時間あたりの変化量が予め定められた範囲内にあることを含む、情報処理プログラム。
【請求項７】
可搬型の情報処理装置を含む情報処理システムであって、
撮像部と、
情報処理プログラムを実行するプロセッサとを備え、前記プロセッサは情報処理プログラムを実行することで、
前記撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力する認識手段と、
前記情報処理装置の姿勢の変化を検出する検出手段と、
前記検出対象の認識位置の時間的変化に応じた処理を実行する処理手段と、
前記情報処理装置の姿勢の変化に応じて、前記認識手段により出力される前記検出対象の位置の時間的変化を補正する補正手段とを実現し、
前記補正手段は、前記検出手段による検出値が予め定められた条件を満たしている場合に、前記検出対象の位置の時間的変化を補正し、
前記予め定められた条件は、前記情報処理装置の姿勢の単位時間あたりの変化量が予め定められた範囲内にあることを含む、情報処理システム。
【請求項８】
可搬型の情報処理装置で実行される情報処理方法であって、前記情報処理装置は撮像部を含んでおり、前記情報処理方法は、
前記撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力するステップと、
前記情報処理装置の姿勢の変化を検出するステップと、
前記検出対象の認識位置の時間的変化に応じた処理を実行するステップと、
前記情報処理装置の姿勢の変化に応じて、出力される前記検出対象の位置の時間的変化を補正するステップとを含み、
前記補正するステップは、前記検出するステップによる検出値が予め定められた条件を満たしている場合に、前記検出対象の位置の時間的変化を補正するステップを含み、
前記予め定められた条件は、前記情報処理装置の姿勢の単位時間あたりの変化量が予め定められた範囲内にあることを含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像された画像に応じた処理を実行する情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法に関する。
【背景技術】
【０００２】
特表２０１４−５２０３３９号公報（特許文献１）は、カメラの前でジェスチャを使用してカメラの視野内における現実世界との活動の範囲を拡大して、ユーザがより細かな粒度で現実世界および拡張世界の中に入り込み、対話できるようにする技術を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１４−５２０３３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の特許文献１に開示される方法は、基本的に、ユーザが片方の手で手持ち型機器を保持し、ふさがっていない方の手で手持ち型機器と対話するという形態が想定されている。
【０００５】
可搬型の情報処理装置をユーザが把持して操作する場合、その情報処理装置を固定することができず、ユーザと情報処理装置との間の相対位置が変化し得る。本実施の形態は、このような場合であっても、適切な認識処理を実行する。
【課題を解決するための手段】
【０００６】
ある実施の形態に従う可搬型の情報処理装置は、撮像部と、撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力する認識手段と、検出対象の認識位置の時間的変化に応じた処理を実行する処理手段と、情報処理装置の姿勢の変化に応じて、認識手段により出力される検出対象の位置の時間的変化を補正する補正手段とを含む。
【０００７】
好ましくは、情報処理装置は、情報処理装置の姿勢の変化を検出する検出手段をさらに含む。
【０００８】
さらに好ましくは、検出手段は、ジャイロセンサを含む。
好ましくは、補正手段は、検出手段による検出値が予め定められた条件を満たしている場合に、検出対象の位置の時間的変化を補正する。
【０００９】
好ましくは、補正手段は、認識手段による検出対象の認識開始時における姿勢を基準とした変化量を用いて、検出対象の位置の時間的変化を補正する。
【００１０】
別の実施の形態に従えば、可搬型の情報処理装置で実行される情報処理プログラムが提供される。情報処理装置は撮像部を含んでいる。情報処理プログラムは、情報処理装置に、撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力するステップと、検出対象の認識位置の時間的変化に応じた処理を実行するステップと、情報処理装置の姿勢の変化に応じて、出力される検出対象の位置の時間的変化を補正するステップとを実行させる。
【００１１】
さらに別の実施の形態に従う可搬型の情報処理装置を含む情報処理システムは、撮像部と、情報処理プログラムを実行するプロセッサとを含む。プロセッサは情報処理プログラムを実行することで、撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力する認識手段と、検出対象の認識位置の時間的変化に応じた処理を実行する処理手段と、情報処理装置の姿勢の変化に応じて、認識手段により出力される検出対象の位置の時間的変化を補正する補正手段とを実現する。
【００１２】
さらに別の実施の形態に従えば、可搬型の情報処理装置で実行される情報処理方法が提供される。情報処理装置は撮像部を含んでいる。情報処理方法は、撮像部によって取得された画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力するステップと、検出対象の認識位置の時間的変化に応じた処理を実行するステップと、情報処理装置の姿勢の変化に応じて、出力される検出対象の位置の時間的変化を補正するステップとを含む。
【発明の効果】
【００１３】
上述の新規な構成例によれば、ユーザと情報処理装置との間の相対位置が変化した場合であっても、適切な認識処理を実行できる。
【図面の簡単な説明】
【００１４】
【図１】本実施の形態に従う携帯型端末の使用形態の一例を示す模式図である。
【図２】本実施の形態に従う携帯型端末の使用形態の別の一例を示す模式図である。
【図３】従来の認識処理による誤認識を説明するための図である。
【図４】本実施の形態に従う携帯型端末の装置構成を示すブロック図である。
【図５】本実施の形態に従う携帯型端末において実行される認識処理の処理手順を示すフローチャートである。
【図６】本実施の形態に従う携帯型端末において実行される認識処理に含まれる認識位置の補正処理を説明する模式図である。
【図７】本実施の形態に従う携帯型端末の認識処理を実現するための機能構成を示す模式図である。
【図８】本実施の形態に従う携帯型端末において実行される画像処理技術を用いた携帯型端末の姿勢の変化を検出する方法を説明する模式図である。
【発明を実施するための形態】
【００１５】
本実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００１６】
可搬型の情報処理装置の代表例として、以下では、コンピュータでもある携帯型端末１について説明する。可搬型の情報処理装置としては、携帯型端末１に限られることなく、ゲーム装置、携帯電話、スマートフォン、タブレット、ファブレット、ＰＤＡ（Personal Digital Assistant/Personal Data Assistance）などとしても具現化することができる。さらに、後述するように、プログラムを格納した記録媒体と当該記録媒体を装着可能な本体装置とを含む情報処理システムとして具現化してもよい。
【００１７】
さらに、後述する処理の一部を他の装置（典型的には、ネットワークを介して接続されたサーバ装置）が実行するようにしてもよい。このような具現化の形態においては、情報処理装置は、例えば、ユーザからの操作を受付ける処理や表示処理のみを実行し、実質的な処理のほぼすべてをサーバ装置で実行させるようにしてもよい。
【００１８】
［Ａ．使用形態］
まず、本実施の形態に従う携帯型端末１の使用形態について説明する。図１は、本実施の形態に従う携帯型端末１の使用形態の一例を示す模式図である。
【００１９】
図１を参照して、携帯型端末１は、ユーザが片手でも把持可能な可搬型のコンピュータである。携帯型端末１は、筐体１０２と、筐体１０２の主面に配置されているディスプレイモジュール１１０と、筐体１０２の上部に配置されているカメラ１０４と、筐体１０２のしたに配置されている入力部１０８とを含む。
【００２０】
ディスプレイモジュール１１０は、タッチパネルを含んでおり、ユーザは、入力部１０８に加えて、ディスプレイモジュール１１０に対するタッチ操作によって、携帯型端末１へ各種指示を与える。
【００２１】
本実施の形態に従う携帯型端末１は、上述したような入力機能に加えて、いわゆるジェスチャ操作による入力機能を有しており、ユーザの動きを検出して、その動きに応じた処理を実行できる。ユーザの動きは、カメラ１０４によって撮像された画像（以下、「入力画像」とも称す。）に基づいて判断および検出される。カメラ１０４は、いわゆる内側カメラであり、撮像部に相当する。カメラ１０４は、携帯型端末１のユーザに向けて配置されることが好ましい。すなわち、カメラ１０４は、携帯型端末１を操作するユーザの少なくとも一部（典型的には、顔を含む上半身）がその視野内に含まれるように構成される。
【００２２】
図１に示すように、典型的な使用形態としては、ユーザが一方の手で携帯型端末１を把持しつつ、他方の手で目的の処理を実行するための操作（アクション）を行なう。このユーザの他方の手による動きは、カメラ１０４によって撮像され、その撮像によって取得された入力画像から当該ユーザの操作が検出される。すなわち、携帯型端末１は、認識処理として、カメラ１０４によって取得された入力画像内のユーザの一部を含む検出対象（図１に示す例では、指先）を認識するとともに、当該検出対象の認識位置の時間的変化を出力する。検出対象としては、指先だけではなく、手のひらや顔の位置や輪郭であってもよい。顔認識技術などを用いることで、入力画像内から人間の特定の部位を認識することもできるし、検出対象とすべき部位にマーカを装着して、そのマーカを認識するようにしてもよい。
【００２３】
携帯型端末１は、検出対象の認識位置の時間的変化に応じた処理を実行する。例えば、ユーザが指先をある視点位置から上側に移動させると、指先の認識位置は、当該視点位置から上側に向けて時間的に変化することになる。このような時間的な認識位置（座標）の変化（すなわち、検出対象の軌道）に応じて、ドキュメントを表示するアプリケーションなどでは、ページをめくるような処理を実行してもよい。
【００２４】
［Ｂ．課題および概要］
本実施の形態に従う携帯型端末１は、各種の計測技術を用いて、携帯型端末１を操作するユーザの体全体または一部（手など）の状態や動作（ジェスチャ）を認識し、その認識結果に応じた処理を実行する。
【００２５】
このような認識処理では、撮像部を固定して検出対象を撮像するのが本来的である。しかしながら、携帯型端末１などの可搬型の情報処理装置では、情報処理装置および検出対象のいずれもが動くことになる。すなわち、認識処理では、情報処理装置（すなわち、撮像部）と検出対象との間の相対位置を検出することになるが、検出対象が動かなくても、情報処理装置が動くと、検出対象が動いたとみなしてしまう。すなわち、移動や手振れが生じる可搬型の情報処理装置は、認識処理に不向きである。このような課題について、図２および図３を参照して、より詳細に説明する。
【００２６】
図２は、本実施の形態に従う携帯型端末１の使用形態の別の一例を示す模式図である。図３は、従来の認識処理による誤認識を説明するための図である。
【００２７】
図２（Ａ）には、ユーザが携帯型端末１を一方の手で把持して、他方の手でジェスチャ操作をしている状態を示す。ユーザがこのようなジェスチャ操作をしている状態において、何らかの拍子に携帯型端末１が回転してしまった状態を図２（Ｂ）に示す。図２（Ａ）の状態と図２（Ｂ）の状態とを比較すると、ユーザの立ち位置は変わらなくとも、携帯型端末１が向いている方向が変わってしまい、携帯型端末１から見えるユーザの指先の位置などは変化することになる。図３には、このような携帯型端末１とユーザとの相対位置の変化を模式的に示す。
【００２８】
図３（Ａ）には、携帯型端末１に相対するユーザの指先を検出して、入力画像のほぼ中央部が認識位置であると判断されている状態を示す。図３（Ｂ）には、携帯型端末１に相対するユーザが指先を紙面右側に移動させて、その移動に伴って、入力画像内の認識位置がほぼ中央部から紙面右側に移動している状態を示す。すなわち、認識処理が開始された後、携帯型端末１が動いていなければ、検出対象である指先が動いていなければ、認識位置はそのまま初期位置（この例では、入力画像の中央部）に維持され、指先が動けば、それに応じて認識位置は変化したと出力される。
【００２９】
一方、図３（Ｃ）には、検出対象である指先が静止した状態で、携帯型端末１が回転した状態を示す。このような場合、従来技術に従う認識処理では、携帯型端末１および検出対象のいずれが動いたのかを区別できておらず、その結果、入力画像内の認識位置は移動することになる。図３（Ｃ）に示す例では、携帯型端末１を紙面左側に傾けると、移動していない指先が紙面右側に移動したと誤認識する。
【００３０】
これに対して、本実施の形態に従う携帯型端末１は、図３（Ｄ）に示すように、携帯型端末１の動きを検出し、その検出した動きに応じて、認識位置を補正する。図３（Ｄ）に示す例では、携帯型端末１の右側への回転に応じて、認識位置を紙面左側に補正する。これによって、実際には動いていないユーザの指先が「動いた」と誤認識される可能性を低減する。このように、本実施の形態に従う携帯型端末１は、自端末の姿勢の変化に応じて、認識手段により出力される検出対象の位置の時間的変化を補正する補正機能を有している。すなわち、携帯型端末１は、出力される認識位置が変化したのは、検出対象が実際に動いたために生じたものであるのか、あるいは携帯型端末１自体が動いたために生じたものであるかを区分し、後者の場合には、出力される認識位置を補正する。
【００３１】
本明細書において、携帯型端末１の「姿勢」は、携帯型端末１に搭載されるカメラ１０４の視野範囲の変化に着目した用語であり、携帯型端末１の向いている向き（角度）および携帯型端末１の位置の少なくとも一方を含む概念である。携帯型端末１の姿勢の変化は、後述するような各種の方法を用いて取得できるが、典型的には、ジャイロセンサなどが用いられる。
【００３２】
以上説明したように、本実施の形態に従う携帯型端末１は、端末自体の移動や手振れが生じたとしても、ジェスチャ操作などを誤認識することを軽減できる。
【００３３】
［Ｃ．装置構成］
次に、本実施の形態に従う携帯型端末１の装置構成について説明する。図４は、本実施の形態に従う携帯型端末１の装置構成を示すブロック図である。
【００３４】
図１および図４を参照して、携帯型端末１は、主要な装置構成として、カメラ１０４と、入力部１０８と、ディスプレイモジュール１１０と、表示ドライバ１１２と、無線通信部１２０と、タッチ検出部１２４と、プロセッサ１３０と、フラッシュメモリ１３２と、メインメモリ１３４と、加速度センサ１３６と、ジャイロセンサ１３８とを含む。
【００３５】
ディスプレイモジュール１１０は、ＬＣＤパネル１１４と、タッチパネル１１６とを含む。
【００３６】
ＬＣＤパネル１１４は、ユーザに向けて画像を表示する表示部であり、マトリックス状に配置された画素群と、画素群の背面側に配置されたバックライトとを含む。
【００３７】
タッチパネル１１６は、ＬＣＤパネル１１４の表面を覆うように装着され、ユーザによる入力操作（位置指示操作、ポインティング操作など）を検出して、対応する２次元座標値を出力する。タッチパネル１１６としては、抵抗膜方式を採用してもよいし、押圧式を採用してもよい。
【００３８】
表示ドライバ１１２は、プロセッサ１３０からの指令に従って、ＬＣＤパネル１１４を駆動する。
【００３９】
無線通信部１２０は、任意の無線手段（無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、公衆回線、近距離通信など）などを用いて他の装置との間で通信を行なう。
【００４０】
タッチ検出部１２４は、タッチパネル１１６に接続され、ユーザからのタッチパネル１１６に対する操作を検出する。
【００４１】
プロセッサ１３０は、フラッシュメモリ１３２などに格納されているプログラム（ＯＳ（Operating System）、システムプログラム、各種アプリケーション（情報処理プログラム１３３を含む）など）を読出して、メインメモリ１３４に展開した上で、それらを実行する。それによって、以下に説明するような処理を実現する。
【００４２】
加速度センサ１３６は、携帯型端末１に生じる加速度を検出し、その検出結果をプロセッサ１３０へ出力する。ジャイロセンサ１３８は、携帯型端末１の傾きを検出し、その検出結果をプロセッサ１３０へ出力する。
【００４３】
［Ｄ．処理手順］
次に、本実施の形態に従う携帯型端末１において実行される認識処理の処理手順について説明する。
【００４４】
図５は、本実施の形態に従う携帯型端末１において実行される認識処理の処理手順を示すフローチャートである。図５に示す各ステップは、典型的には、プロセッサ１３０がフラッシュメモリ１３２などに格納されている情報処理プログラム１３３を実行することで、実現される。
【００４５】
図５を参照して、携帯型端末１は、認識処理の開始が指示されたか否かを判断する（ステップＳ２）。認識処理の開始の指示は、ユーザが明示的または黙示的に与えてもよいし、携帯型端末１で実行される任意のアプリケーションから内部的に与えられることもある。認識処理の開始が指示されるまでステップＳ２の処理は繰返される。
【００４６】
認識処理の開始が指示されると（ステップＳ２においてＹＥＳの場合）、携帯型端末１は、キャリブレーション処理を実行する（ステップＳ４）。キャリブレーション処理は、検出対象を予め登録する処理である。例えば、カメラ１０４での撮像によって取得された画像（リアルタイム画像）をディスプレイモジュール１１０（図１）に表示しつつ、検出対象とすべき部分を位置決めするための枠を画像上にオーバーレイ表示する。併せて、「検出対象を枠内に収まるように調整して下さい。」といったメッセージを表示する。ユーザは、検出対象とすべき部分（例えば、指先）が画面上に表示される枠内に収まるように、携帯型端末１に対する相対位置を調整する。ユーザは、その状態で決定ボタンなどを選択する。すると、その枠内にある部分画像が検出対象として登録される。
【００４７】
なお、ステップＳ４に示すキャリブレーション処理は、予め実行されていてもよいし、プリセットされたリストからユーザが選択するような形態を採用してもよい。
【００４８】
キャリブレーション処理が完了すると、以下の認識処理が開始される。すなわち、携帯型端末１は、カメラ１０４によりその視野内に含まれる被写体を撮像し、入力画像を取得する（ステップＳ６）。続いて、携帯型端末１は、入力画像内の検出対象を認識し、その検出対象の認識位置を出力する（ステップＳ８）。
【００４９】
続いて、携帯型端末１は、携帯型端末１の姿勢の変化を検出し（ステップＳ１０）、検出した姿勢の変化に応じて、認識手段により出力される検出対象の認識位置を補正する（ステップＳ１２）。なお、携帯型端末１の位置が変化していなければ、ステップＳ１２において検出対象の認識位置は補正されず、ステップＳ８において検出されたまま出力される。
【００５０】
続いて、携帯型端末１は、認識処理の終了が指示されたか否かを判断する（ステップＳ１４）。認識処理の終了の指示は、ユーザが明示的または黙示的に与えてもよいし、携帯型端末１で実行される任意のアプリケーションから内部的に与えられることもある。あるいは、認識処理の開始から予め定められた期間が経過後に自動的に終了するようにしてもよい。認識処理の終了が指示されていなければ（ステップＳ１４においてＮＯの場合）、ステップＳ６以下の処理が繰返される。
【００５１】
認識処理の終了が指示されていれば（ステップＳ１４においてＹＥＳの場合）、携帯型端末１は、先のステップＳ６〜Ｓ１４の繰返しによって取得された認識位置の時系列データに基づいて、入力されたジェスチャを判断する（ステップＳ１６）。この判断されたジェスチャに応じた処理が実行される（ステップＳ１８）。そして、処理は終了する。
【００５２】
［Ｅ．補正処理］
次に、本実施の形態に従う携帯型端末１において実行される認識処理に含まれる認識位置の補正処理（図５のステップＳ８〜Ｓ１２）について説明する。図６は、本実施の形態に従う携帯型端末１において実行される認識処理に含まれる認識位置の補正処理を説明する模式図である。図６の縦軸は、入力画像内での検出対象の変位量を１次元の量に換算した値を示し、図６の横軸は時間を示す。
【００５３】
図６を参照して、カメラ１０４により撮像された入力画像内の検出対象を認識し、その検出対象の認識位置（生）が出力される。この検出対象の認識位置の出力と並行して、携帯型端末１の姿勢の変化も検出される。携帯型端末１の姿勢の変化としては、認識処理の開始時における位置を基準とした偏差が出力される。この出力される偏差は、認識位置の出力方向とは符号が反対となるように値付けされている。最終的には、検出対象の認識位置の出力と、携帯型端末１の姿勢の変化との和が認識位置の補正値として出力される。言い換えれば、検出対象の認識位置の出力から携帯型端末１の姿勢の変化を差し引いた値が認識位置の補正値となる。図６に示すように、補正処理においては、検出対象の認識開始時における姿勢を基準とした変化量を用いて、検出対象の位置の時間的変化を補正することになる。
【００５４】
なお、携帯型端末１の姿勢の変化は、携帯型端末１の視野の変位に相当するので、認識処理の開始時からの変位量（変位の総和）を各演算サイクルにおいて加算／減算することになる。
【００５５】
このように、認識処理を実行する携帯型端末１にその姿勢の変化を検出する機能を搭載し、携帯型端末１の姿勢の時間的変化が取得される。そして、姿勢の変化分が検出対象の認識位置に対して、打ち消すように加算されることで、携帯型端末１が動いたとしても、ユーザが行なったジェスチャ操作についての誤認識を軽減できる。
【００５６】
［Ｆ．機能構成］
次に、本実施の形態に従う携帯型端末１の認識処理を実現するための機能構成について説明する。
【００５７】
図７は、本実施の形態に従う携帯型端末１の認識処理を実現するための機能構成を示す模式図である。図７に示す各モジュールは、典型的には、ハードウェアモジュールおよびフラッシュメモリ１３２に格納されている情報処理プログラム１３３によって提供される。なお、図７に示すモジュールの全部または一部をＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field-Programmable Gate Array）などのハードウェア回路を用いて実装してもよい。
【００５８】
図７を参照して、本実施の形態に従う携帯型端末１は、その機能構成として、認識モジュール１５０と、参照テーブル１５２と、補正モジュール１５８と、位置ずれ検出モジュール１５６と、ジェスチャ判断モジュール１６０と、処理実行モジュール１６２とを含む。
【００５９】
認識処理が開始されると、カメラ１０４による撮像によって生成された入力画像が認識モジュール１５０に入力される。認識モジュール１５０は、入力画像内の検出対象を認識し、その認識した検出対象の位置（認識位置）を補正モジュール１５８へ出力する。
【００６０】
認識モジュール１５０は、検出対象の認識に際して、参照テーブル１５２に格納されている認識対象特徴量情報１５４を参照する。認識対象特徴量情報１５４は、キャリブレーション処理（図５のステップＳ４）によって生成および格納される。認識モジュール１５０は、入力画像が与えられるたびに検出対象を認識してもよいし、複数フレームにわたる入力画像（すなわち、動画像）を用いて、検出対象の認識位置の時間的変化を出力してもよい。このように、認識モジュール１５０は、カメラ１０４によって取得された入力画像内のユーザの一部を含む検出対象を認識するとともに、当該検出対象の認識位置の時間的変化を出力する認識機能を提供する。
【００６１】
位置ずれ検出モジュール１５６は、携帯型端末１の姿勢の変化を検出し、その値を出力する。すなわち、位置ずれ検出モジュール１５６は、携帯型端末１の姿勢の変化を検出する検出機能を提供する。位置ずれ検出モジュール１５６としては、ハードウェア的およびソフトウェア的に実現可能な任意の手段を採用できる。典型的には、位置ずれ検出モジュール１５６は、ジャイロセンサ１３８（図４）を含む。
【００６２】
典型的には、位置ずれ検出モジュール１５６は、ジャイロセンサ１３８（図４）による検出値（ヨー・ピッチ・ロール）を用いて、携帯型端末１の姿勢を検出する。あるいは、加速度センサ１３６（図４）を用いて、あるいは、加速度センサ１３６とジャイロセンサ１３８とを組み合わせて、携帯型端末１の姿勢を検出するようにしてもよい。この場合、加速度センサ１３６としては、多軸を検出できるものが用いられる。
【００６３】
補正処理には、認識処理の開始時からの変位量（変位の総和）が必要であるので、各種センサで携帯型端末１の姿勢を検出する場合には、それに応じた前処理を行なう必要がある。例えば、角速度が出力される場合には、一段の時間積分により角度の変位量を算出する必要があり、角加速度が出力される場合には、二段の時間積分により角度の変位量を算出する必要がある。また、各種センサから各軸を中心とした変位量が出力される場合には、その変位量を入力画像内での変位量に換算する必要がある。この換算は、検出される角度の変位量とカメラ１０４の視野角とを用いて行なわれる。
【００６４】
あるいは、位置ずれ検出モジュール１５６は、画像処理技術を用いて、携帯型端末１の姿勢を検出する。例えば、認識処理の開始時に撮像された入力画像から、検出対象と背景とを分離し、その後に撮像される入力画像内の背景の位置を認識することで、携帯型端末１の姿勢を検出するようにしてもよい。特に、相対的に大きな特徴量を有するオブジェクトが背景に含まれていた場合などには、画像処理技術を用いる手法は効果的である。
【００６５】
補正モジュール１５８は、位置ずれ検出モジュール１５６からの携帯型端末１の姿勢の情報に基づいて、認識モジュール１５０から出力される認識位置を補正し、補正後の認識位置をジェスチャ判断モジュール１６０へ出力する。携帯型端末１の姿勢が変化しなければ、認識モジュール１５０から出力される認識位置がそのままジェスチャ判断モジュール１６０へ出力される。補正モジュール１５８からの補正後の認識位置は、入力画像の入力毎（すなわち、フレーム毎）に出力される。このように、補正モジュール１５８は、携帯型端末１の姿勢の変化に応じて、認識モジュール１５０により出力される検出対象の位置の時間的変化を補正する補正機能を提供する。
【００６６】
ジェスチャ判断モジュール１６０は、補正モジュール１５８からの補正後の認識位置に基づいて、ユーザが行なったジェスチャを判断する。典型的には、ジェスチャ判断モジュール１６０は、位置変化のパターンと対応するジェスチャとの組を予め複数登録しており、この登録された情報を参照して、ジェスチャを決定する。ジェスチャ判断モジュール１６０は、決定したジェスチャをジェスチャ出力として処理実行モジュール１６２へ与える。
【００６７】
処理実行モジュール１６２は、ジェスチャ判断モジュール１６０からのジェスチャ出力に基づいて、対象となる処理を実行する。処理実行モジュール１６２の一部または全部は、携帯型端末１で実行される各種アプリケーションに実装されてもよい。例えば、ドキュメントを表示するアプリケーションにおいて、横方向に移動するジェスチャがなされると、ページをめくる処理が実行される。
【００６８】
なお、ジェスチャ判断モジュール１６０および処理実行モジュール１６２を一体的に実装してもよい。この場合には、ジェスチャを個別に識別することは必ずしも必要ない。すなわち、検出対象の位置の時間的変化と実行されるアプリケーションまたはアプリケーション上の操作とを対応付けておき、入力される検出対象の位置の時間的変化（補正後）に応じて、対応する処理が実行されてもよい。
【００６９】
このように、ジェスチャ判断モジュール１６０、および／または、処理実行モジュール１６２は、検出対象の認識位置の時間的変化に応じた処理を実行する処理機能を提供する。
【００７０】
［Ｇ．変形例］
上述の補正処理では、携帯型端末１の姿勢が変化すれば、検出対象の認識位置をその変化に応じて補正する処理を例示した。但し、このような検出対象の認識位置を補正する処理を予め定められた条件に適合した場合にのみ実行するようにしてもよい。言い換えれば、携帯型端末１の姿勢が変化しても、ある条件に適合した場合には、認識位置を補正しないようにしてもよい。すなわち、補正モジュール１５８（図７）は、位置ずれ検出モジュール１５６による検出値が予め定められた条件を満たしている場合に、検出対象の位置の時間的変化を補正するようにしてもよい。以下、このような補正処理の実行を制限する処理例について説明する。
【００７１】
（ｇ１：補正条件１）
ジャイロセンサ１３８や加速度センサ１３６などの各種センサで検出された携帯型端末１の姿勢の情報が適切に検出されたものであるか否かを判断し、適切なものである場合に限って、認識モジュール１５０から出力される認識位置を補正するようにしてもよい。
【００７２】
姿勢の情報が適切に検出されたものであるか否かの判断基準として、例えば、単位時間当たりの姿勢の変化量が予め定められた範囲内に収まっているか否かを用いることができる。単位時間当たりの姿勢の変化量が予め定められた範囲を超える場合には、ノイズの混入などによる誤検出が発生している状態や、携帯型端末１が持ち運ばれている状態であることが想定されるので、このような場合には、認識位置の位置を補正しないようにしてもよい。
【００７３】
また、姿勢の情報が適切に検出されたものであるか否かの別の判断基準として、認識処理が開始されてからの姿勢の変化量の総計が予め定められた範囲内に収まっているか否かを用いることもできる。認識処理が開始されてからの姿勢の変化量の総計が予め定められた範囲を超える場合には、携帯型端末１の視野が当初の範囲から大きくずれていることが想定されるので、このような場合には、認識位置の位置を補正しないようにしてもよい。
【００７４】
（ｇ２：補正条件２）
画像処理技術を用いて携帯型端末１の姿勢を検出する場合には、その検出結果が適切なものであるか否かを判断し、適切なものである場合に限って、認識モジュール１５０から出力される認識位置を補正するようにしてもよい。
【００７５】
図８は、本実施の形態に従う携帯型端末１において実行される画像処理技術を用いた携帯型端末１の姿勢の変化を検出する方法を説明する模式図である。図８（Ａ）には、認識処理の開始時に、カメラ１０４によって撮像された入力画像の一例を示す。図８（Ａ）に示す入力画像内には、ユーザの手のオブジェクト２０２に加えて、背景にある窓のオブジェクト２１０が映り込んでいる。このような場合、オブジェクト２１０を背景のオブジェクトとして、オブジェクト２１０の変位量から携帯型端末１の姿勢の変化を検出することになる。
【００７６】
図８（Ｂ）には、図８（Ａ）に示す状態から、携帯型端末１の姿勢が紙面左右方向に変化した状態を示す。図８（Ｂ）に示す状態では、オブジェクト２０２およびオブジェクト２１０のいずれもが紙面右側に相対移動している。このような場合には、オブジェクト２１０の移動量から携帯型端末１の姿勢の変化を適切に検出できる。このとき、姿勢の変化前後で同一のオブジェクト２１０を探索するので、類似度（相関度）の値も高くなり、尤度（信頼度）が相対的に高いと判断できる。このような場合には、検出された携帯型端末１の姿勢の変化に応じて、検出対象の位置の時間的変化を補正することになる。
【００７７】
一方、図８（Ｃ）には、携帯型端末１を持ってユーザが移動したような状態を示す。この入力画像内には、認識処理の開始時に写っていた窓のオブジェクト２１０とは異なるテレビのオブジェクト２１２が写っている。この場合には、オブジェクト２１０とオブジェクト２１２との間の類似度（相関度）は相対的に低くなり、尤度（信頼度）が相対的に低いと判断できる。このような場合には、検出対象の位置の時間的変化を補正しないようにしてもよい。
【００７８】
［Ｈ．まとめ］
本実施の形態に従う携帯型端末１は、ジャイロセンサなどを用いて自端末の姿勢の変化を検出し、その姿勢の変化に応じて、認識される検出対象の位置の時間的変化を補正する。このような補正処理を実行することで、携帯型端末１を操作中にユーザが携帯型端末１の向きなどを変えたとしても、ジェスチャ操作を誤認識する可能性を低減できる。
【００７９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００８０】
１  携帯型端末、１０２  筐体、１０４  カメラ、１０８  入力部、１１０  ディスプレイモジュール、１１２  表示ドライバ、１１４  ＬＣＤパネル、１１６  タッチパネル、１２０  無線通信部、１２４  タッチ検出部、１３０  プロセッサ、１３２  フラッシュメモリ、１３３  情報処理プログラム、１３４  メインメモリ、１３６  加速度センサ、１３８  ジャイロセンサ、１５０  認識モジュール、１５２  参照テーブル、１５４  認識対象特徴量情報、１５６  位置ずれ検出モジュール、１５８  補正モジュール、１６０  ジェスチャ判断モジュール、１６２  処理実行モジュール。
【図１】
0006514889.tif 000002
【図２】
0006514889.tif 000003
【図３】
0006514889.tif 000004
【図４】
0006514889.tif 000005
【図５】
0006514889.tif 000006
【図６】
0006514889.tif 000007
【図７】
0006514889.tif 000008
【図８】
0006514889.tif 000009