(57)【要約】【課題】効率的に、かつ、正確に物体を認識する処理を行うことが可能な物体認識処理のプログラム、情報記憶媒体及び物体認識システムを提供すること。【解決手段】入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定し、特定領域において物体認識処理を行う。【選択図】図１８
2011215967.tif 000002
【特許請求の範囲】
【請求項１】
物体を認識する処理を行うプログラムであって、
撮像部によって撮像された入力画像を取得し、異なる時点で撮像された２つの入力画像に基づいて、入力画像の各画素の動きベクトルを算出する算出部と、
入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定する領域設定部と、
物体を認識する物体認識処理を行う物体認識処理部として、コンピュータを機能させ、
前記物体認識処理部が、
特定領域において物体認識処理を行うことを特徴とするプログラム。
【請求項２】
請求項１において、
前記物体認識処理部が、
特定領域における物体認識処理の精度を特定領域以外の領域の物体認識処理の精度よりも上げて、特定領域において物体認識処理を行うことを特徴とするプログラム。
【請求項３】
請求項１又は２において、
前記物体認識処理部が、
特定領域において物体認識処理を行う周期を特定領域以外の領域の物体認識処理の周期よりも短くして、特定領域において物体認識処理を行うことを特徴とするプログラム。
【請求項４】
請求項１〜３のいずれかにおいて、
前記物体認識処理部が、
特定領域の画像精度を特定領域以外の領域の画像精度よりも上げて、特定領域において物体認識処理を行うことを特徴とするプログラム。
【請求項５】
請求項１〜４のいずれかにおいて、
前記物体認識処理部が、
特定領域以外の領域において物体認識処理を行うと共に、
特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くすることを特徴とするプログラム。
【請求項６】
請求項１〜５のいずれかにおいて、
前記物体認識処理部が、
特定領域以外の領域において物体認識処理を行うと共に、
特定領域以外の領域の画像精度を特定領域の画像精度よりも低くすることを特徴とするプログラム。
【請求項７】
請求項１〜６のいずれかにおいて、
前記領域設定部が、複数の特定領域を設定した場合には、
前記物体認識処理部が、
少なくとも１つの特定領域について物体認識処理を行うことを特徴とするプログラム。
【請求項８】
請求項７において、
前記領域設定部が、各特定領域に優先度を付与し、
前記物体認識処理部が、
各特定領域において物体認識処理を行うと共に、
優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くすることを特徴とするプログラム。
【請求項９】
請求項７又は８において、
前記領域設定部が、各特定領域に優先度を付与し、
前記物体認識処理部が、
各特定領域において物体認識処理を行うと共に、
優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くすることを特徴とするプログラム。
【請求項１０】
請求項７において、
前記領域設定部が、各特定領域に優先度を付与し、
前記物体認識処理部が、
優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うことを特徴とするプログラム。
【請求項１１】
請求項１〜１０のいずれかにおいて、
前記領域設定部が、
入力画像の各画素の動きベクトルと色情報とに基づいて、入力画像において特定領域を設定することを特徴とするプログラム。
【請求項１２】
請求項１〜１１のいずれかにおいて、
前記領域設定部が、
入力画像の各画素の動きベクトルのうち大きさが所定値以上である動きベクトルに基づいて、入力画像において特定領域を設定することを特徴とするプログラム。
【請求項１３】
請求項１〜１２のいずれかにおいて、
前記物体認識処理部が、
ボーン情報に基づいて、前記特定領域における前記物体認識処理を行うことを特徴とするプログラム。
【請求項１４】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項１〜１３のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
【請求項１５】
物体を認識する処理を行う物体認識システムであって、
撮像部によって撮像された入力画像を取得し、異なる時点で撮像された２つの入力画像に基づいて、入力画像の各画素の動きベクトルを算出する算出部と、
入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定する領域設定部と、
物体を認識する物体認識処理を行う物体認識処理部とを含み、
前記物体認識処理部が、
特定領域において物体認識処理を行うことを特徴とする物体認識システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び物体認識システムに関する。
【背景技術】
【０００２】
従来から、入力画像の各画素の動きベクトルを求めて入力画像を解析し、入力画像上の物体を認識する処理を行う装置が存在する（特許文献１）。
【０００３】
しかし、特許文献１に示すような従来技術は、動いている対象が人であることを前提として作られたものであり、実際には被写体が人でない物体（例えば、「鳥」）などの動きも、人の動きであると誤認されてしまうことがあった。
【０００４】
また、動いている対象が「人」であるか否かを判断する従来技術も存在するが、このような従来技術は、入力画像全体において「人」の認識パターンを用いて認識処理を行うので、非常に効率が悪く処理負荷が高くなるものであった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１３７５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、以上のような問題に鑑みてなされたものであり、その目的とするところは、効率的に、かつ、正確に物体を認識する処理を行うことが可能な物体認識処理のプログラム、情報記憶媒体及び物体認識システムを提供することにある。
【課題を解決するための手段】
【０００７】
（１）本発明は、物体を認識する処理を行うプログラムであって、撮像部によって撮像された入力画像を取得し、異なる時点で撮像された２つの入力画像に基づいて、入力画像の各画素の動きベクトルを算出する算出部と、入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定する領域設定部と、物体を認識する物体認識処理を行う物体認識処理部として、コンピュータを機能させ、前記物体認識処理部が、特定領域において物体認識処理を行うプログラムに関する。また本発明は、コンピュータに読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。また、本発明は、上記各部を含む物体認識システムに関係する。
【０００８】
本発明によれば、特定領域に集中して物体認識処理を行うので、従来よりも正確に物体を認識することができる。また、本発明によれば、全画面ではなく特定領域において物体認識処理を行うので、無駄な処理を省略することができ、従来よりも効率よく物体認識処理を行うことができる。また、本発明によれば特定領域において物体認識処理を行うので特定領域以外の領域に別の物体が映りこんでいる場合に、その別の物体を誤って認識する事態を防止することができる。
【０００９】
（２）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、特定領域における物体認識処理の精度を特定領域以外の領域の物体認識処理の精度よりも上げて、特定領域において物体認識処理を行うようにしてもよい。本発明は、特定領域における物体認識処理の精度を特定領域以外の領域の物体認識処理の精度よりも上げて、特定領域において物体認識処理を行うので、より正確に物体を認識することができる。
【００１０】
（３）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、特定領域において物体認識処理を行う周期を特定領域以外の領域の物体認識処理の周期よりも短くして、特定領域において物体認識処理を行うようにしてもよい。本発明によれば、特定領域において物体認識処理を行う周期を特定領域以外の領域の物体認識処理の周期よりも短くするので、より正確に物体を認識することができる。
【００１１】
（４）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、特定領域の画像精度を特定領域以外の領域の画像精度よりも上げて、特定領域において物体認識処理を行うようにしてもよい。本発明によれば、特定領域の画像精度を特定領域以外の領域の画像精度よりも上げて、特定領域において物体認識処理を行うので、より正確に物体を認識することができる。
【００１２】
（５）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くするようにしてもよい。本発明によれば、特定領域以外の領域においても物体認識処理を行うことができる。また、本発明は、特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くするので、マシンパワー（コンピュータの総合的な処理能力）を主に特定領域の物体認識処理に注力することができ、特定領域の物体認識処理をより正確に行うことができる。
【００１３】
（６）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くするようにしてもよい。本発明によれば、特定領域以外の領域においても物体認識処理を行うことができる。また、本発明は、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くするので、マシンパワーを主に特定領域の物体認識処理に注力することができ、特定領域の物体認識処理をより正確に行うことができる。
【００１４】
（７）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、複数の特定領域を設定した場合には、前記物体認識処理部が、少なくとも１つの特定領域について物体認識処理を行うようにしてもよい。本発明によれば、複数の特定領域を設定した場合に、少なくとも１つの特定領域について物体認識処理を行うので、少なくとも１つの特定領域について、より正確に物体を認識することができる。
【００１５】
（８）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、各特定領域に優先度を付与し、前記物体認識処理部が、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くするようにしてもよい。本発明によれば、複数の特定領域において物体を認識する場合に、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くするので、優先度が高い特定領域ほどマシンパワーを注力することができ、効率よく物体認識処理を行うことができる。
【００１６】
（９）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、各特定領域に優先度を付与し、前記物体認識処理部が、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするようにしてもよい。本発明によれば、複数の特定領域において物体を認識する場合に、優先度の低い特定領域において物体認識処理を行う周期を、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするので、優先度が高い特定領域ほどマシンパワーを注力することができ、効率よく物体認識処理を行うことができる。
【００１７】
（１０）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、各特定領域に優先度を付与し、前記物体認識処理部が、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うようにしてもよい。本発明によれば、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うので、より効率よく物体認識処理を行うことができる。
【００１８】
（１１）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、入力画像の各画素の動きベクトルと色情報とに基づいて、入力画像において特定領域を設定するようにしてもよい。本発明によれば、入力画像の各画素の動きベクトルと色情報とに基づいて、入力画像において特定領域を設定するので、より正確に物体を認識すべき特定領域を設定することができる。
【００１９】
（１２）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記領域設定部が、入力画像の各画素の動きベクトルのうち大きさが所定値以上である動きベクトルに基づいて、入力画像において特定領域を設定するようにしてもよい。本発明によれば、入力画像の各画素の動きベクトルのうち大きさが所定値以上である動きベクトルに基づいて、入力画像において特定領域を設定するので、より正確に物体を認識すべき特定領域を設定することができる。
【００２０】
（１３）また、本発明のプログラム、情報記憶媒体及び物体認識システムは、前記物体認識処理部が、ボーン情報に基づいて、前記特定領域における前記物体認識処理を行うようにしてもよい。本発明によれば、ボーン情報に基づいて特定領域における物体認識処理を行うので、物体をより適確に認識することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態の第１の物体認識システムの概観図。
【図２】本実施形態の第１の物体認識システムの機能ブロック図。
【図３】動きベクトルの説明図。
【図４】図４（Ａ）〜（Ｇ）は、動きベクトルの説明図。
【図５】動きベクトルの向きを算出するためのフローチャート。
【図６】図６（Ａ）（Ｂ）（Ｃ）は、動きベクトルの説明図。
【図７】特定領域を設定する手法を説明するための図。
【図８】特定領域において物体認識処理を行う手法を説明するための説明図。
【図９】物体認識処理の周期を説明するための図。
【図１０】図１０（Ａ）（Ｂ）（Ｃ）は、動きベクトルの説明図。
【図１１】特定領域を設定する手法を説明するための図。
【図１２】特定領域において物体認識処理を行う手法を説明するための説明図。
【図１３】物体認識処理の周期を説明するための図。
【図１４】特定領域を設定する手法を説明するための図。
【図１５】各特定領域の優先度に関する説明図。
【図１６】特定領域において物体認識処理を行う手法を説明するための説明図。
【図１７】物体認識処理の周期を説明するための図。
【図１８】第１の実施形態のフローチャート。
【図１９】本実施形態の第２の物体認識システムの概観図。
【図２０】本実施形態の第２の物体認識システムの機能ブロック図。
【図２１】図２１（Ａ）（Ｂ）は、本実施形態の入力部に入力される入力画像の説明図。
【図２２】第２の実施形態の深度センサの説明図。
【図２３】第２の実施形態の深度センサの説明図。
【図２４】第２の実施形態の実空間における物体の位置と入力部の位置関係を示す説明図。
【図２５】図２５（Ａ）〜（Ｄ）は、物体認識処理の説明図。
【図２６】特定領域を設定する手法を説明するための図。
【図２７】特定領域において物体認識処理を行う手法を説明するための説明図。
【図２８】図２８（Ａ）（Ｂ）は、特定領域において物体認識処理を行う手法を説明するための説明図。
【図２９】特定領域を設定する手法を説明するための図。
【図３０】特定領域において物体認識処理を行う手法を説明するための説明図。
【図３１】特定領域において物体認識処理を行う手法を説明するための説明図。
【図３２】第２の実施形態のフローチャート。
【図３３】図３３（Ａ）（Ｂ）は、物体の動き認識処理の説明図。
【発明を実施するための形態】
【００２２】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２３】
１．第１の実施形態
１−１．第１の物体認識システム
図１は、第１の実施形態における第１の物体認識システム（第１のゲームシステム、第１の画像生成システム）の概略外観図である。本実施形態の第１の物体認識システムは、ゲーム画像を表示させる表示部９０と、物体認識処理、ゲーム処理等を行う物体認識装置１０（ゲーム機）と、入力部２０とを含む。そして、図１に示すように、表示部９０（表示画面９１）の周囲には、表示部９０と関連付けた位置に入力部２０が配置されている。例えば、入力部２０は、表示部９０の下部に配置してもよいし、表示部９０の上部に配置してもよい。
【００２４】
そして、物体認識装置１０は、静止状態にあるＲＧＢカメラ（撮像部）２１を備える入力部２０から取得した入力画像を解析し、入力画像上の物体を認識する。例えば、図１に示すように、物体認識装置１０は、プレーヤＰを被写体として撮像した入力画像と「人」（物体の一例）の認識パターンとを比較することによって、入力画像で「人」を認識できるか否かを判断する。そして、物体認識装置１０は、「人」を認識できた場合には、「人」の動きや、ジェスチャーを認識する処理を行う。これにより、さまざまなゲーム処理を行うことができる。第１の実施形態では、この入力部２０を用いた第１の物体認識システムの処理例について説明する。
【００２５】
１−２．構成
図２は、第１の物体認識システムの機能ブロック図の一例である。なお、第１の物体認識システムでは、図２の各部を全て含む必要はなく、その一部を省略した構成としてもよい。
【００２６】
第１の物体認識システムは、物体認識装置１０と、入力部２０と、表示部９０、スピーカー９２を含む。入力部２０は、ＲＧＢカメラ（撮像部）２１、処理部２２、記憶部２３によって構成されている。
【００２７】
ＲＧＢカメラ（撮像部）２１は、物体から発した光をレンズなどの光学系によって撮像素子の受光平面に結像させ、その像の光による明暗を電荷の量に光電変換し、それを順次読み出して電気信号に変換する。そして、ＲＧＢ化（カラー化）されたＲＧＢ画像（入力画像の一例）を記憶部２３に出力する処理を行う。ＲＧＢカメラ２１は、所定の周期で（例えば、１／６０秒毎に）、記憶部２３に出力する処理を行う。また、処理部２２は、ＲＧＢカメラ２１で撮像されたＲＧＢ画像を、物体認識装置１０に送信する処理などを行う。また、記憶部２３は、ＲＧＢカメラ２１によって出力されたＲＧＢ画像を逐次記憶する。
【００２８】
次に、本実施形態の物体認識装置１０について説明する。本実施形態の物体認識装置１０は、記憶部１７０、処理部１００、情報記憶媒体１８０、通信部１９６によって構成される。
【００２９】
記憶部１７０は、主記憶部１７１、描画バッファ１７２、認識パターン記憶部１７３、入力画像記憶部１７４、差分画像記憶部１７５とを含む。主記憶部１７１は、処理部１００のワーク領域であり、描画バッファ１７２は、画像生成部１２０において描画された画像を格納するための記憶領域である。
【００３０】
また、認識パターン記憶部１７３は、物体を特定するために予め用意されたパターン、テンプレートを格納するための記憶領域であり、物体それぞれに対応づけてパターンが記憶されている。例えば、視覚的特徴や画素値そのものを認識パターンとして認識パターン記憶部１７３に格納される。
【００３１】
なお、認識パターン記憶部１７３は、データベースとして構築される記憶領域でもよい。例えば、「人」、「手」、「足」、「腕」などの各物体に対応づけて、１または複数のパターンを関連づけて記憶するようにしてもよい。
【００３２】
また、入力画像記憶部１７４は、物体認識処理、動きベクトル算出処理を行うために所定周期で入力部２０が取得した入力画像を格納するための記憶領域である。また、差分画像記憶部１７５は、動きベクトル算出処理を行うために、異なる時点で撮像された２つの画像の各画素値の差分をとった差分画素値を格納するための記憶領域である。
【００３３】
そして、処理部１００は、この情報記憶媒体１８０に格納されるプログラムから読み出されたデータに基づいて本実施形態の種々の処理を行う。即ち、情報記録媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００３４】
通信部１９６は、ネットワーク（インターネット）を介して他のゲーム機と通信することができる。その機能は、各種プロセッサまたは通信用ＡＳＩＣ、ネットワーク・インタフェース・カードなどのハードウェアや、プログラムなどにより実現できる。
【００３５】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラムは、サーバが有する、記憶部、情報記憶媒体からネットワークを介して情報記憶媒体１８０（または、記憶部１７０）に配信するようにしてもよい。このようなサーバの情報記憶媒体の使用も本発明の範囲に含まれる。
【００３６】
処理部１００（プロセッサ）は、入力部２０から取得した情報や情報記憶媒体１８０から記憶部１７０に展開されたプログラム等に基づいて、物体認識処理、ゲーム処理、画像生成処理、或いは音制御の処理を行う。
【００３７】
特に、第１の物体認識システムの処理部１００は、取得部１１０、算出部１１１、領域決定部１１２、物体認識処理部１１３、ゲーム演算部１１４、画像生成部１２０、音制御部１３０として機能する。
【００３８】
取得部１１０は、ＲＧＢカメラ（撮像部）２１によって撮像された入力画像（ＲＧＢ画像）を取得する処理を行う。
【００３９】
算出部１１１は、異なる時点で撮像された２つの入力画像に基づいて、入力画像の各画素の動きベクトルを算出する。
【００４０】
領域設定部１１２は、入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定する。領域設定部１１２は、複数の特定領域を設定するようにしてもよい。複数の特定領域を設定した場合には、各特定領域に優先度（優先順位情報）を付与（設定）する。つまり、特定領域単位で優先度を付与する。なお、優先度は、優先度が上位である特定領域を、その特定領域より優先度が下位である特定領域に優先して特定領域の物体認識処理を行うための情報である。
【００４１】
また、領域設定部１１２は、入力画像の各画素の動きベクトルと色情報とに基づいて、入力画像において特定領域を設定するようにしてもよい。また、領域設定部１１２は、入力画像の各画素の動きベクトルのうち大きさが所定値以上である動きベクトルに基づいて、入力画像において特定領域を設定するようにしてもよい。
【００４２】
物体認識処理部１１３は、物体を認識する物体認識処理を行う。ここで、物体を認識する物体認識処理とは、物体自体を認識する処理、物体の動きを認識する処理、物体のジェスチャー（形、ポーズ）を認識する処理の少なくとも１つを含む。
【００４３】
例えば、物体認識処理部１１３は、入力画像の各画素の画素情報（画素の位置座標、画素の色情報、画素の動きベクトルの少なくとも１つ）に基づいて、認識パターン記憶部１７３に格納されている「人」の認識パターンを用いて、「人」を認識できるか否かを判断する。
【００４４】
具体的には、「人」の形（形状、シルエット）の認識パターンを用意し、入力画像において動きベクトルによって示される動き領域の形が、「人」の形であるか否かを判断する。そして、「人」の形であると判断した場合には、「人」を認識したと判定する処理を行う。一方、「人」を認識できない場合には、次の物体（例えば「手」）の認識パターンを用いて、次の物体（「手」）を認識できるか否かを判断する。そして、物体を認識できるまで、入力画像と次の認識パターンとを照合する処理を行う。
【００４５】
また、物体認識処理部１１３は、「人」を認識したと判定された場合には、入力画像の各画素の画素情報に基づいて、「人」の動きを認識する処理を行う。また、物体認識処理部１１３は、「人」を認識したと判定された場合には、入力画像の各画素の画素情報に基づいて、「人」のジェスチャーを認識する処理を行う。
【００４６】
特に、本実施形態の物体認識処理部１１３は、特定領域において物体認識処理を行う。例えば、物体認識処理部１１３は、特定領域における物体認識処理の精度を特定領域以外の領域の物体認識処理の精度よりも上げて、特定領域において物体認識処理を行うようにしてもよい。
【００４７】
より具体的に説明すると、物体認識処理部１１３は、特定領域において物体認識処理を行う周期を特定領域以外の領域の物体認識処理の周期よりも短くして、特定領域において物体認識処理を行う。また、物体認識処理部１１３は、特定領域の画像精度（精細度）を特定領域以外の領域の画像精度よりも上げて、特定領域において物体認識処理を行う。
【００４８】
また、物体認識処理部１１３は、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くする。また、物体認識処理部１１３は、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くする。
【００４９】
また、物体認識処理部１１３は、複数の（２以上の）特定領域を設定されている場合には、少なくとも１つの特定領域について物体認識処理を行う。
【００５０】
また、物体認識処理部１１３は、複数の特定領域を設定されている場合には、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くするようにしてもよい。
【００５１】
また、物体認識処理部１１３は、複数の特定領域を設定されている場合には、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするようにしてもよい。
【００５２】
また、物体認識処理部１１３は、複数の特定領域を設定されている場合には、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うようにしてもよい。
【００５３】
また、物体認識処理部１１３は、ボーン情報に基づいて、前記特定領域における前記物体認識処理を行うようにしてもよい。
【００５４】
ゲーム演算部１１４は、種々のゲーム演算を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００５５】
例えば、ゲーム演算部１１４は、入力部２０からの入力データやプログラムなどに基づいて、ゲーム処理を行う。本実施形態のゲーム演算部１１４は、例えば、物体認識処理部１１３の認識結果に基づいてゲーム演算処理を行う。つまり、物体認識処理部１１３において「人（プレーヤ）」を認識した場合には、物体認識処理部１１３が「人」の動きやジェスチャーを認識し、その「人」の動き（左右に人が動く動作）やジェスチャー（特定のポーズ）に基づいてゲーム演算処理を行うようにしてもよい。
【００５６】
なお、処理部１００は、仮想空間にオブジェクトを配置する処理、仮想空間に存在するオブジェクトを移動させる処理などを行うようにしてもよい。例えば、処理部１００は、オブジェクトを仮想空間（仮想３次元空間（オブジェクト空間）、仮想２次元空間）に配置する処理を行うようにしてもよい。例えば、キャラクタ、指示オブジェクトの他に、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を、仮想空間に配置する処理を行う。ここで仮想空間とは、仮想的なゲーム空間であり、例えば、仮想３次元空間の場合、ワールド座標系、仮想カメラ座標系のように、３次元座標（Ｘ，Ｙ，Ｚ）においてオブジェクトが配置される空間である。
【００５７】
例えば、処理部１００は、ワールド座標系にオブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）を配置する。また、例えば、ワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。なお、処理部１００は、スケーリングされたオブジェクトを仮想空間に配置する処理を行ってもよい。
【００５８】
また、処理部１００は、仮想空間にあるオブジェクトの移動・動作演算を行うようにしてもよい。すなわち入力部から受け付けた入力情報、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクトを仮想空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させたりする処理を行う。具体的には、オブジェクトの移動情報（移動速度、移動加速度、位置、向きなど）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求める処理を行う。なお、フレームは、オブジェクトの移動・動作処理や画像生成処理を行う時間の単位である。
【００５９】
画像生成部１２０は、処理部１００で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部９０に出力する。例えば、本実施形態の画像生成部１２０は、基準開始タイミングと基準判定期間とを指示する画像を生成する。
【００６０】
画像生成部１２０は、オブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００６１】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換（カメラ座標変換）、クリッピング処理、透視変換（投影変換）、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。
【００６２】
そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を画像バッファ１７２（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００６３】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００６４】
そして画像生成部１２０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００６５】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、記憶部１７０に保存される。
【００６６】
テクスチャマッピングは、記憶部１７０に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００６７】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファに格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【００６８】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。
【００６９】
例えば、αブレンディングでは、これから画像バッファ１７２に描画する描画色（上書きする色）Ｃ１と、既に画像バッファ１７２（レンダリングターゲット）に描画されている描画色（下地の色）Ｃ２とを、α値に基づいて線形合成処理を行う。つまり、最終的な描画色をＣとすると、Ｃ＝Ｃ１＊α＋Ｃ２＊（１−α）によって求めることができる。
【００７０】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００７１】
音制御部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、スピーカー９２に出力する。
【００７２】
なお、本実施形態の端末は、１人のプレーヤのみがプレイできるシングルプレーヤモード、或いは、複数のプレーヤがプレイできるマルチプレーヤモードでゲームプレイできるように制御してもよい。例えば、マルチプレーヤモードで制御する場合には、ネットワークを介して他の端末とデータを送受信してゲーム処理を行うようにしてもよいし、１つの端末が、複数の入力部からの入力情報に基づいて処理を行うようにしてもよい。
【００７３】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。
【００７４】
表示部９０は、処理部１００により生成された画像を出力するものであり、その機能は、ＣＲＴディスプレイ、ＬＣＤ（液晶ディスプレイ）、ＯＥＬＤ（有機ＥＬディスプレイ）、ＰＤＰ（プラズマディスプレイパネル）、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００７５】
スピーカー９２は、音制御部１３０により再生する音を出力するものであり、その機能は、スピーカー、或いはヘッドフォンなどのハードウェアにより実現できる。なお、スピーカー９２は、表示部に備えられたスピーカーとしてもよい。例えば、テレビ（家庭用テレビジョン受像機）を表示部としている場合には、テレビのスピーカーとすることができる。
【００７６】
なお、本実施形態は、物体認識装置１０の認識パターン記憶部１７３、入力画像記憶部１７４、差分画像記憶部１７５に記憶されるデータを、入力部２０の記憶部２３に記憶するようにし、本実施形態の算出部１１１、領域設定部１１２、物体認識処理部１１３の処理を、入力部２０の処理部２２が行うようにしてもよい。
【００７７】
１−３．動きベクトルの説明
本実施形態は、ＲＧＢカメラ２１（撮像部）により撮像された入力画像（ＲＧＢ画像）を取得する。例えば、図３に示すように、描画のフレームレートにあわせて所定周期（例えば、１／６０秒の周期）で、ＲＧＢカメラ２１からデジタル化された入力画像Ｆ１、Ｆ２、Ｆ３、Ｆ４を取得する処理を行う。
【００７８】
そして、本実施形態では、異なる時点で撮像された２つの入力画像において、同じ画素の対応付けを行い、その動き量（移動量）と動き方向（移動方向）とを示す動きベクトル（移動ベクトル、オプティカルフロー）を求める。図３の動きベクトルＶは、入力画像Ｆ１の画素Ｐ１に対応する入力画像Ｆ２の画素Ｐ２に向かうベクトルを示している。本実施形態では、入力画像の各画素について動きベクトルを求めている。
【００７９】
特に、本実施形態では、処理負荷を軽減するために、入力画像Ｆ１、Ｆ２との画素値（輝度値、カラー値）の差分をとった差分画像に基づいて動きベクトルを求めている。例えば、図４（Ａ）に示すように画素値が「５０」の領域が右下方向に動く例について説明する。本実施形態では、図４（Ｂ）に示すように前画像（入力画像Ｆ１）と、現画像（入力画像Ｆ２）とを入力画像記憶部１７４に記憶部し、前画像と現画像の画素値の差分をとり、図４（Ｃ）に示す差分画像を、差分画像記憶部１７５に記憶する。そして、差分画像に基づいて画素の動き量と動き方向とを求めている。つまり、本実施形態では、前画像と現画像との差分をとった各画素の差分画素値の絶対値を、各画素の動きベクトルＶの大きさ（動き量）とし、前画像と現画像との差分画素値に基づいて、画素における各方位（上方向、下方向、右方向、左方向）の推定方位を求める。
【００８０】
推定方位の求め方についてより詳しく図５に示すフローチャートを用いて説明する。まず、本実施形態では、前画像の画素Ｐ（ｘ１，ｙ１）の特定方位上の隣接する２つの画素値を比較する（ステップＳ１）。例えば、図４（Ｄ）に示すように、前画像の画素Ｐ（ｘ１，ｙ１）の左右方向上に隣接する画素（ｘ０，ｙ１）の画素値と（ｘ２，ｙ１）の画素値とを比較する。
【００８１】
そして、比較した画素値が等しいか否かを判断する（ステップＳ２）。そして、比較した画素値が等しくない場合は、ステップＳ３に進み、一方、比較した画素値が等しい場合には画素Ｐ（ｘ１，ｙ１）が動いていないものとみなし処理を終了する。例えば、画素（ｘ０，ｙ１）の画素値と画素（ｘ２，ｙ１）の画素値は異なるので、ステップＳ３に進む。
【００８２】
そして、小さい画素値を有する画素をＬとし、大きい画素値を有する画素をＧとする（ステップＳ３）。例えば、図４（Ｄ）の例では、画素（ｘ０，ｙ１）をＬとし、画素（ｘ２，ｙ１）をＧとする。
【００８３】
そして、画素Ｐ（ｘ１，ｙ１）での差分画像の差分画素値が０であるか否かを判断し（ステップＳ４）、差分画素値が０でない場合には、ステップＳ５に進み、差分画像の差分画素値が０である場合には、画素Ｐ（ｘ１，ｙ１）が動いていないものとみなし処理を終了する。例えば、図４（Ｄ）の例では、画素Ｐ（ｘ１，ｙ１）差分画像の差分画素値は「−４０」であるので、ステップＳ５に進む。
【００８４】
そして、差分画素値が０より小さいか否かを判断し（ステップＳ５）、差分画素値が０より小さい場合には、ステップＳ６に進み、Ｐ→Ｇの向きを選択する処理を行う（ステップＳ６）。一方、差分画素値が０より小さくない場合には、ステップＳ７に進み、Ｐ→Ｌの向きを選択する処理を行う（ステップＳ７）。図４（Ｄ）の例では、画素Ｐ（ｘ１，ｙ１）差分画像の差分画素値は「−４０」であり、０より小さいのでステップＳ６に進み、Ｐ→Ｇの右方向の向きが推定方向として選択される。以上で処理が終了する。
【００８５】
図４（Ｅ）は、全画素について、画素の４方位（上方向、下方向、右方向、左方向）の推定方向を求めた例である。本実施形態では、図４（Ｆ）に示すように、各画素において、画素の４方位（上方向、下方向、右方向、左方向）に関する推定方向の和をその画素Ｐ（ｘ１，ｙ１）の動き方向としてもよい。また、図４（Ｇ）に示すように、各画素において、画素の周辺８個を含む推定方向を平滑化した方向を動き方向としてもよい。
【００８６】
以上のようにして、本実施形態では、入力画像の各画素の動き量、及び動きベクトルを求めているが、いわゆる勾配法やブロックマッチング法によって求めてもよい。なお、本実施形態では、ＲＧＢ画像を入力画像としているが、輝度値を有するグレースケール画像を入力画像として用いてもよい。
【００８７】
１−４．物体認識処理
本実施形態では、記憶部に予め格納されている認識パターンを用いて、ＲＧＢカメラによって撮像された画像上の物体を認識する物体認識処理を行う。ここで、物体を認識する物体認識処理とは、物体自体を認識する処理、物体の動きを認識する処理、物体のジェスチャー（形、ポーズ）を認識する処理の少なくとも１つを含む。
【００８８】
例えば、入力画像の各画素の画素情報（画素の位置座標、画素の色情報、画素の動きベクトルの少なくとも１つ）に基づいて、認識パターン記憶部１７３に格納されている「人」の認識パターンを用いて、「人」を認識できるか否かを判断する。
【００８９】
具体的には、差分画像において差分画素値が２０以上の画素の領域、或いは、差分画像において差分画素値が０より大きい値の画素で区切られる領域を動き領域として設定し、「人」の形（形状）の認識パターンを用いて、動き領域の形が認識パターンで示される「人」の形と適合（一致）するか否かを判断する。そして、「人」の形と適合する場合には、「人」を認識したと判定する処理を行う。一方、「人」を認識できない場合には、次の物体（例えば「手」）の認識パターンを用いて、次の物体を認識できるか否かを判断する。そして、物体を認識できるまで、入力画像と次の認識パターンとを照合する処理を行う。そして、結果的に動き領域において物体を認識できない場合には、次の動き領域を特定して、次の動き領域において物体を認識する処理を行う。
【００９０】
本実施形態では、（Ａ）毎フレーム（１／６０秒間隔）で２つの画像の差分画像をとり、差分画像の差分画素値に基づいて、動き領域を特定してもよいし、（Ｂ）２フレーム（１／３０秒間隔）で２つの画像の差分画像をとり、差分画像の差分画素値に基づいて、動き領域を特定してもよいし、（Ｃ）１０フレーム（１／６秒間隔）で２つの画像の差分画像をとり、差分画像の差分画素値に基づいて、動き領域を特定してもよい。
【００９１】
なお、（Ａ）（Ｂ）（Ｃ）で特定した動き領域の平均的な領域を、動き領域として特定してもよい。例えば、１秒間の間に毎フレームでの差分画像の差分画素値の平均値Ａと、同じ１秒間の間に１／３０秒間隔での差分画像の差分画素値の平均値Ｂと、同じ１秒間の間に１／６秒間隔での差分画像の差分画素値の平均値Ｃの合計を、３で割った値を用いて、動き領域を設定するようにしてもよい。
【００９２】
１−５．特定領域において物体を認識する処理
本実施形態では、特定領域を設定し、特定領域において物体認識処理を行う。このようにすれば、効率的に、かつ、正確に物体を認識する処理を行うことができる。また、特定領域以外の領域に別の物体が映りこんでいる場合に、その別の物体を誤って認識する事態を防止することができる。
【００９３】
まず、本実施形態では、入力画像の各画素の動きベクトルに基づいて、入力画像において特定領域を設定する。例えば、図６（Ａ）に示すように入力画像Ｆ１と、図６（Ｂ）に示す入力画像Ｆ２（入力画像Ｆ１から１／６０秒後に取得した入力画像Ｆ２）とに基づいて、図６（Ｃ）に示すような入力画像Ｆ１、Ｆ２間の各画素の動きベクトルが得られた場合、入力画像Ｆ１、Ｆ２間の動きベクトルの方向、大きさに基づいて、特定領域を設定する。言い換えると、入力画像Ｆ１、Ｆ２間の差分画像の差分画素値に基づいて特定領域を設定する。
【００９４】
例えば、「所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が２００以上であって、動きベクトルが左又は右方向を向く領域」をルール１とし、図７に示すように、ルール１に基づいて決定される領域を、特定領域Ａ１として設定する。例えば、本実施形態では、ルール１などの規則情報に基づいて決定される領域を包囲する矩形の領域を特定領域Ａ１として設定する。なお、特定領域を設定するルールは記憶部７０に記憶されている。
【００９５】
なお、本実施形態では、入力画像の各画素の動きベクトルと色情報とに基づいて、入力画像において特定領域を設定するようにしてもよい。例えば、「黄色系統のカラー値を有する画素であって、所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が２００以上であって、動きベクトルが左又は右方向を向く領域」をルール１´とし、ルール１´に基づいて、特定領域Ａ１´を設定するようにしてもよい。
【００９６】
なお、一度、特定領域Ａ１を設定した場合、特定領域Ａ１の物体を認識する必要があるので、特定領域Ａ１を設定した時点から所与の期間（例えば６０秒間）、特定領域Ａ１を固定する。そして、所与の周期（例えば６０秒周期）で特定領域Ａ１を更新（変動、再設定）する。
【００９７】
そして、本実施形態では、図７に示す特定領域Ａ１において物体認識処理を行う。つまり、設定された特定領域Ａ１において、動き領域Ｓ１を設定し、動き領域の形が認識パターンと一致するか否かを判断すればよい。例えば、特定領域Ａ１の各画素において、動きベクトルの大きさ（差分画素値が）所定値以上である画素の集合を動き領域Ｓ１とする。
【００９８】
そして、本実施形態では、例えば、特定領域Ａ１の動き領域Ｓ１の形と、「人」の認識パターンとを比較し「人」であるか否かを判断する。図７の例では、「人」の認識パターンと一致しないと判断され、特定領域Ａ１の動き領域Ｓ１の形と「手」の認識パターンとを比較し「手」であるか否かを判断する。図７の例では、「手」の認識パターンと一致すると判断され、特定領域Ａ１において「手」を認識したと判定されることになる。
【００９９】
また、本実施形態では、入力画像の一部の特定領域Ａ１にマシンパワーを注ぐことができるので、特定領域Ａ１の画像精度を上げて物体を認識するようにしてもよい。画像精度とは、画像の解像度（画像の総画素数）や、画像の量子化レベル（画素が取り得る範囲、階調）であり、解像度が高いほど、より精細に物体を認識することができる。また、量子化レベルが高いほど、画素値（差分画素値）の取り得る値域が広がり、より精細に動き領域を設定する精度を上げることができる。
【０１００】
例えば、図８に示すように、特定領域Ａ１の解像度を上げて、特定領域Ａ１において各画素の動きベクトルを算出し直し、画像精度を上げた各画素の動きベクトルに基づいて、動き領域Ｓ１´を設定するようにしてもよい。このようにすれば、例えば、「手」を判断された場合に、「手」のジェスチャー（形状）や、「手」の動きをより詳しく認識することができる。図８の例では、特定領域Ａ１の動き領域Ｓ１´の形と、「手」の「グー」、「チョキ」、「パー」の３つの認識パターンそれぞれの一致度を判断し、「パー」の認識パターンに最も一致すると判断される。
【０１０１】
また、本実施形態では、図９に示すように、特定領域Ａ１において物体認識処理を行う周期を短くするようにしてもよい。例えば、特定領域Ａ１を設定する前において、１／６秒周期で取得した２つの入力画像の差分画像を求めていた場合、特定領域Ａ１を設定したｔ１０時点以後は、１／６０秒周期で取得した２つの入力画像の差分画像を求めるようにする。つまり、１／６０秒間隔で入力画像上の特定領域Ａ１の差分画像を求めるようにする。このようにすれば、より詳細に物体の動きを認識することができる。
【０１０２】
以上のように、本実施形態では、特定領域Ａ１にマシンパワーを注ぐことができるので、物体について詳細に物体認識処理を行うことができる。また、本実施形態では、特定領域について画像精度を上げ、さらに認識周期を短くすることによって物体の誤認識を軽減することができる、という効果もある。
【０１０３】
例えば、図１０（Ａ）に示す入力画像Ｆ１０と、図１０（Ｂ）に示す入力画像Ｆ１１との差分画像に基づき、図１０（Ｃ）に基づく動きベクトルが得られ、かかる場合において、図１１に示すように、ルール１に基づいて特定領域Ｂ１が設定されたとする。ここで、画像精度を上げない場合や、認識周期を短くしない場合は、特定領域Ｂ１の動き領域Ｓ２の形が「鳥」ではなく「手」であると判断されるおそれがある。
【０１０４】
しかし、特定領域Ｂ１では、図１０（Ａ）、（Ｂ）に示すように、実際は鳥が飛んでいるので、「鳥」と判断される方が自然である。そこで本実施形態では、図１２に示すように、特定領域Ｂ１について画像精度を上げ、また、認識周期を短くし、詳細に正しく物体認識処理を行うようにする。つまり、特定領域Ｂ１の解像度を上げて、動きベクトルを算出しなおし、特定領域Ｂ１において動き領域Ｓ２´を特定する。そして動き領域Ｓ２´の形が、「手」の認識パターンを一致せず、「鳥」の認識パターンと一致すると判断され、結果的に、特定領域Ｂ１において「鳥」を認識することができる。
【０１０５】
１−６．特定領域と特定領域以外の領域との関係
本実施形態では、図７の特定領域Ａ１以外の領域において物体認識処理を行うようにしてもよい。特定領域以外の領域において物体認識処理を行う場合には、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くする。このようにすれば、特定領域Ａ１よりも認識精度は劣るが、特定領域Ａ１以外に物体が存在する場合には、その物体を認識することができる。
【０１０６】
本実施形態では、特定領域Ａ１以外の領域の画像精度を特定領域の画像精度よりも低くするようにしてもよい。また、特定領域以外の領域において物体認識処理を行う周期を、特定領域Ａ１において物体認識処理を行う周期よりも長くする。例えば、図１３に示すように、特定領域Ａ１以外の領域においては、１／６秒の周期で物体認識処理を行い、特定領域Ａ１においては、１／６０秒の周期で物体認識処理を行う。このようにすれば、マシンパワー（コンピュータの総合的な処理能力）を主に特定領域Ａ１の物体認識処理に注力することができ、特定領域Ａ１の物体認識処理をより正確に行うことができる。
【０１０７】
１−７．複数の特定領域
本実施形態では、複数の特定領域を設定するようにしてもよい。例えば、「所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が２００以上であって、動きベクトルが左又は右方向を向く領域」をルール１とし、「所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が１００以上であって、動きベクトルが左又は右方向を向く領域」をルール２とした場合、図７に示すように、ルール１に基づいて決定される領域を、特定領域Ａ１として設定すると共に、図１４に示すように、ルール２に基づいて決定される領域を、特定領域Ａ２として設定する。なお、本実施形態では、３つ以上の特定領域を設定してもよい。
【０１０８】
そして、少なくとも１つの特定領域について物体認識処理を行う。例えば、ルール１、ルール２に基づいて設定された特定領域Ａ１、Ａ２のいずれか一方について物体認識処理を行うようにしてもよいし、特定領域Ａ１、Ａ２の両方について物体認識処理を行うようにしてもよい。例えば、特定領域Ａ２において物体認識処理を行う場合には、特定領域Ａ２の動き領域Ｓ３の形と、「人」の認識パターンとを比較し「人」であるか否かを判断する。図１４の例では、「人」の認識パターンと一致すると判断される。
【０１０９】
特に、本実施形態では、複数の特定領域を設定した場合には、各特定領域に優先度を設定する（付与する）。例えば、図１５に示すように、各ルールのＩＤに対応づけて（各領域に対応づけて）、優先度を設定する。本実施形態では、動きベクトルの大きさに従って優先度を決める。例えば、特定領域上の各画素の動きベクトルの大きさ（差分画素値）の平均値を算出し、平均値が高いほど優位になるように優先度を設定するようにしてもよい。
【０１１０】
そして、本実施形態では、優先度に基づいて、物体認識処理を行う。例えば、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするようにしてもよい。つまり、図１６に示すように、特定領域Ａ２について解像度を上げると共に、優先度の低い特定領域Ａ２の解像度を、優先度の高い特定領域Ａ１の解像度よりも低くする。このようにすれば、優先度の高い特定領域Ａ１について、マシンパワーを主に注力させて詳細に物体を認識することができ、優先度の低いものについて処理を簡素にし、効率よく特定領域Ａ１、Ａ２の物体認識処理を行うことができる。
【０１１１】
なお、図１６に示すように、特定領域Ａ２について解像度を上げた場合には、解像度を上げた特定領域Ａ２において動きベクトルを算出し直し、特定領域Ａ２の動き領域Ｓ３´の形と、「人」の認識パターンとを比較し「人」であるか否かを判断するようにしてもよい。図１６の例では、「人」の認識パターンと一致すると判断される。
【０１１２】
同様に、例えば、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くする。つまり、図１７に示すように、優先度の低い特定領域Ａ２において物体認識処理を行う周期を、優先度の高い特定領域Ａ１において物体認識処理を行う周期よりも長くする。このようにすれば、優先度の高い特定領域Ａ１についてより詳細に物体を認識することができる。
【０１１３】
また、本実施形態では、複数の特定領域を設定されている場合には、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うようにしてもよい。例えば、優先度の低い特定領域Ａ２において物体認識処理を行わずに、優先度の高い特定領域Ａ１において物体認識処理を行うようにしてもよい。
【０１１４】
１−８．フローチャート
最後に、本実施形態の処理の流れについて図１８を用いて説明する。まず、２つの入力画像の差分画像に基づいて、各画素の動きベクトルを算出する（ステップＳ１０）。そして、動きベクトルに基づいて、入力画像上の特定領域を設定する（ステップＳ１１）。そして、特定領域の画像精度を上げるとともに、特定領域の物体認識処理を行う周期を短くする（ステップＳ１２）。そして、特定領域において物体を認識する処理を行う（ステップＳ１３）。以上で処理が終了する。
【０１１５】
２．第２の実施形態
次に、本実施形態の第２の実施形態について説明する。なお、第２の実施形態は、第１の実施形態を応用したものである。第２の実施形態では、第１の実施形態と共通する点について説明を省略し、第１の実施形態と相違する点や第２の実施形態で追加した点等について説明する。
【０１１６】
２−１．第２の物体認識システム
図１９は、第２の実施形態における第２の物体認識システム（第１のゲームシステム、第１の画像生成システム）の概略外観図である。本実施形態の第２の物体認識システムは、ゲーム画像を表示させる表示部９０と、物体認識処理、ゲーム処理等を行う物体認識装置５０（ゲーム機）と、入力部６０とを含む。そして、図１９に示すように、表示部９０（表示画面９１）の周囲には、表示部９０と関連付けた位置に入力部６０が配置されている。例えば、入力部６０は、表示部９０の下部に配置してもよいし、表示部９０の上部に配置してもよい。
【０１１７】
第２の物体認識システムは、プレーヤＰの手や体の動きを認識することができる入力部６０（センサの一例）を備えている。この入力部６０は、発光部６１０、深度センサ６２０、ＲＧＢカメラ６３０、音入力部６４０（マルチアレイマイクロフォン）とを備え、プレーヤＰ（物体）と非接触で、実空間におけるプレーヤＰの手や体の３次元の位置や、形の情報をとらえることができる。第２の実施形態では、この入力部６０を用いた第２の物体認識システムの処理例について説明する。
【０１１８】
２−２．構成
図２０は、第２の物体認識システムの機能ブロック図の一例である。なお、第１の物体認識システムの構成例との共通する点については説明を省略し、第１の物体認識システムの構成例と相違する点について説明する。なお、第２の物体認識システムでは、図２０の各部を全て含む必要はなく、その一部を省略した構成としてもよい。
【０１１９】
第２の物体認識システムは、物体認識装置５０と、入力部６０と、表示部９０、スピーカー９２を含む。
【０１２０】
入力部６０は、発光部６１０、深度センサ６２０、ＲＧＢカメラ（撮像部）６３０、音入力部６４０、処理部６５０、記憶部６６０によって構成されている。
【０１２１】
発光部６１０は、光を物体（プレーヤ、被写体）に照射する処理を行う。例えば、発光部６１０は、ＬＥＤなどの発光素子による赤外線などの光を対象の物体に照射する。
【０１２２】
深度センサ６２０は、物体から反射光を受光する受光部を有する。深度センサ６２０は、発光部６１０が発光しているときに受光した光量と、発光部６１０が発光していないときに受光した光量の差をとることによって、発光部６１０から照射される物体の反射光を取り出す処理を行う。つまり、深度センサ６２０は、図２１（Ａ）に示すように、発光部６１０から照射される物体の反射光を取り出した反射光画像（入力画像の一例）を、所定単位時間で（例えば、１／６０秒単位で）、記憶部６６０に出力する処理を行う。反射光画像は画素単位で、入力部６０から物体までの距離（深度値）を取得することができる。
【０１２３】
ＲＧＢカメラ（撮像部）６３０は、物体（プレーヤＰ）から発した光をレンズなどの光学系によって撮像素子の受光平面に結像させ、その像の光による明暗を電荷の量に光電変換し、それを順次読み出して電気信号に変換する。そして、ＲＧＢ化（カラー化）されたＲＧＢ画像（入力画像の一例）を記憶部６６０に出力する処理を行う。例えば、図２１（Ｂ）に示すようなＲＧＢ画像を生成する。ＲＧＢカメラ６３０は、所定単位時間で（例えば、１／６０秒単位で）、記憶部６６０に出力する処理を行う。
【０１２４】
なお、深度センサ６２０とＲＧＢカメラ６３０とは、共通の受光部から光を受光するようにしてもよい。かかる場合、２つの受光部を有していてもよい。また、深度センサ６２０用の受光部と、ＲＧＢカメラ６３０用の受光部とをそれぞれ異ならせてもよい。
【０１２５】
音入力部６４０は、音声認識処理を行うものであり、例えばマルチアレイマイクロフォンとすることができる。
【０１２６】
処理部６５０は、発光部６１０に発光するタイミングを指示したり、深度センサ６２０によって出力された反射光画像や、ＲＧＢカメラ６３０で撮像されたＲＧＢ画像を、物体認識装置５０に送信する処理などを行う。
【０１２７】
記憶部６６０は、深度センサ６２０によって出力された反射光画像や、ＲＧＢカメラ６３０によって出力されたＲＧＢ画像を逐次記憶する。
【０１２８】
次に、本実施形態の物体認識装置５０について説明する。本実施形態の物体認識装置５０は、記憶部５７０、処理部５００、情報記憶媒体５８０、通信部５９６によって構成される。
【０１２９】
認識パターン記憶部５７３には、物体を特定するために予め用意されたパターン、テンプレートを格納するための記憶領域であり、物体それぞれに対応づけてパターンが記憶されている。例えば、視覚的特徴や画素値そのものを認識パターンとして認識パターン記憶部５７３に格納される。
【０１３０】
なお、認識パターン記憶部５７３は、データベースとして構築される記憶領域でもよい。例えば、「人」、「手」、「足」、「腕」などの各物体に対応づけて、１または複数の認識パターンを関連づけて記憶するようにしてもよい。
【０１３１】
特に、第２の物体認識システムの認識パターン記憶部５７３には、物体を特定するための深度値情報を認識パターンとして認識パターン記憶部５７３に記憶するようにしてもよい。
【０１３２】
また、第２の物体認識システムの認識パターン記憶部５７３は、複数のボーン情報（スケルトン情報、骨格情報）を記憶するようにしてもよい。例えば、人を認識するためのボーン情報や、手のボーン、腕のボーン、足のボーンのように、人物を構成する部位単位でボーン情報を認識パターン記憶部５７３に記憶するようにしてもよい。なお、ボーン情報は、人体の３次元の関節位置及び３次元の関節の回転角度を仮想的に定義したものである。
【０１３３】
また、入力画像記憶部５７４は、物体認識処理、動きベクトル算出処理を行うために所定周期で入力部２０が取得した入力画像を格納するための記憶領域である。また、差分画像記憶部５７５は、動きベクトル算出処理を行うために、異なる時点で撮像された２つの画像の各画素値の差分をとった差分画素値を格納するための記憶領域である。
【０１３４】
そして、処理部５００は、この情報記憶媒体５８０に格納されるプログラムから読み出されたデータに基づいて本実施形態の種々の処理を行う。即ち、情報記録媒体５８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【０１３５】
通信部５９６は、ネットワーク（インターネット）を介して他のゲーム機と通信することができる。その機能は、各種プロセッサまたは通信用ＡＳＩＣ、ネットワーク・インタフェース・カードなどのハードウェアや、プログラムなどにより実現できる。
【０１３６】
なお、本実施形態の各部としてコンピュータを機能させるためのプログラムは、サーバが有する、記憶部、情報記憶媒体からネットワークを介して情報記憶媒体５８０（または、記憶部５７０）に配信するようにしてもよい。このようなサーバの情報記憶媒体の使用も本発明の範囲に含まれる。
【０１３７】
処理部５００（プロセッサ）は、入力部６０から受信した情報や情報記憶媒体５８０から記憶部５７０に展開されたプログラム等に基づいて、ゲーム処理、画像生成処理、或いは音制御の処理を行う。
【０１３８】
特に、第２の物体認識システムの処理部５００は、取得部５１０、算出部５１１、領域決定部５１２、物体認識処理部５１３、ゲーム演算部５１４、画像生成部５２０、音制御部５３０として機能する。
【０１３９】
取得部５１０は、入力部５０からＲＧＢ画像、反射光画像などの入力画像を取得する処理を行う。つまり、取得部５１０は、深度カメラ６２０によって、発光部から照射された物体の反射光を受光することによって各画素の深度値を有する反射光画像（赤外線の反射結果）を取得する。
【０１４０】
算出部５１１は、異なる時点で取得した２つの入力画像（ＲＧＢ画像、反射光画像）に基づいて、入力画像の各画素の動きベクトルを算出する。例えば、算出部５１１は、算出部１１１と同じように、ＲＧＢカメラ６３０によって撮像された入力画像を取得し、異なる時点で撮像された２つの入力画像に基づいて、入力画像の各画素の動きベクトルを算出するようにしてもよい。
【０１４１】
領域設定部５１２は、入力画像の各画素の深度値に基づいて、入力画像において特定領域を設定する。また、領域設定部５１２は、複数の特定領域を設定するようにしてもよい。複数の特定領域を設定した場合には、各特定領域に優先度を付与（設定）する（特定領域単位で優先度を付与する）。
【０１４２】
また、領域設定部５１２は、入力画像の各画素の色情報と深度値とに基づいて、入力画像において特定領域を設定するようにしてもよい。また、領域設定部５１２は、入力画像の各画素の深度値のうち所定値以上である深度値に基づいて、入力画像において特定領域を設定するようにしてもよい。
【０１４３】
また、領域設定部５１２は、入力画像の各画素の動きベクトルと深度値とに基づいて、入力画像において特定領域を設定するようにしてもよい。
【０１４４】
物体認識処理部５１３は、物体を認識する物体認識処理を行う。ここで、物体を認識する物体認識処理とは、物体自体を認識する処理、物体の動きを認識する処理、物体のジェスチャー（形、ポーズ）を認識する処理の少なくとも１つを含む。
【０１４５】
特に、物体認識処理部５１３は、入力画像の各画素の画素情報（画素の深度値、画素の位置座標、画素の色情報、画素の動きベクトルの少なくとも１つ）に基づいて、認識パターン記憶部５７３に格納されている「人」の認識パターンを用いて、「人」を認識できるか否かを判断する。
【０１４６】
具体的には、物体認識処理部５１３は、入力画像（例えば、反射光画像、ＲＧＢ画像）の各画素の画素情報に基づいて３次元の人のシルエット（３次元の形状）を切り出す処理を行う。例えば、反射光画像の各画素の深度値（輝度値）、ＲＧＢ画像のカラー値に基づいて、３次元の人のシルエットを切り出す処理を行う。
【０１４７】
そして、物体認識処理部５１３は、ボーン情報に基づいて、前記特定領域における前記物体認識処理を行う。例えば、物体認識処理部５１３は、認識パターン記憶部５７３で記憶されている複数のボーン（スケルトン、骨格）と、シルエットとを照合し、最もシルエットに合致するボーンを設定する。物体認識処理部５１３は、設定されたボーンの動きを演算する処理を行う。つまり、ボーンの動きを、プレーヤＰの動作とみなす処理を行なう。本実施形態では、フレーム毎に、ボーンを特定しプレーヤＰの動作を取得する処理を行っている。なお、本実施形態では、腕のボーン、足のボーンのように、人物を構成する部位単位で処理を行う場合には、部位単位で、抽出されたシルエットが複数のボーンのうちいずれと合致するかを判定し、部位の動きを、プレーヤの部位の動作とする処理を行う。
【０１４８】
例えば、物体認識処理部５１３は、「人」のボーン情報を用意し、反射光画像から所定輝度値（所定深度値）以上の輝度値（深度値）を有する画素群領域の３次元のシルエットが、「人」のボーン情報に合致するか否かを判断する。そして、シルエットが「人」のボーン情報と合致する場合には、「人」を認識したと判定する処理を行う。一方、「人」を認識できない場合には、次の物体（例えば「手」）のボーン情報を用いて、次の物体を認識できるか否かを判断する。そして、物体（「手」）を認識できるまで、入力画像と次のボーン情報とを照合する処理を行う。
【０１４９】
また、物体認識処理部５１３は、フレーム毎にシルエットに合致するボーン情報に基づいて、シルエットの動作を認識する処理を行う。例えば、「人」のボーン情報に基づいて、「人」を認識したと判定された場合には、当該ボーン情報に基づいて「人」の動作、ジェスチャーを認識する処理を行う。
【０１５０】
また、本実施形態の物体認識処理部５１３は、特定領域において物体認識処理を行う。例えば、物体認識処理部５１３は、特定領域における物体認識処理の精度を特定領域以外の領域の物体認識処理の精度よりも上げて、特定領域において物体認識処理を行うようにしてもよい。
【０１５１】
より具体的に説明すると、物体認識処理部５１３は、特定領域において物体認識処理を行う周期を特定領域以外の領域の物体認識処理の周期よりも短くして、特定領域において物体認識処理を行う。また、物体認識処理部５１３は、特定領域の画像精度を特定領域以外の領域の画像精度よりも上げて、特定領域において物体認識処理を行う。
【０１５２】
また、物体認識処理部５１３は、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くする。また、物体認識処理部５１３は、特定領域以外の領域において物体認識処理を行うと共に、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くする。
【０１５３】
また、物体認識処理部５１３は、複数の（２以上の）特定領域を設定されている場合には、少なくとも１つの特定領域について物体認識処理を行う。
【０１５４】
また、物体認識処理部５１３は、複数の特定領域を設定されている場合には、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くするようにしてもよい。
【０１５５】
また、物体認識処理部５１３は、複数の特定領域を設定されている場合には、各特定領域において物体認識処理を行うと共に、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするようにしてもよい。
【０１５６】
また、物体認識処理部５１３は、複数の特定領域を設定されている場合には、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うようにしてもよい。
【０１５７】
また、物体認識処理部５１３は、所定タイミングで前記特定領域における画像の変化を認識する処理を行うようにしてもよい。
【０１５８】
ゲーム演算部５１４は、種々のゲーム演算を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【０１５９】
例えば、ゲーム演算部５１４は、入力部６０からの入力データやプログラムなどに基づいて、ゲーム処理を行う。本実施形態のゲーム演算部５１４は、例えば、物体認識処理部５１３の認識結果に基づいてゲーム演算処理を行う。つまり、物体認識処理部５１３において「人（プレーヤ）」を認識した場合には、物体認識処理部５１３が「人」の動きやジェスチャーを認識し、その「人」の動き（左右に人が動く動作）やジェスチャー（特定のポーズ）に基づいてゲーム演算処理を行うようにしてもよい。
【０１６０】
なお、処理部５００は、処理部１００と同じように、仮想空間にオブジェクトを配置する処理、仮想空間に存在するオブジェクトを移動させる処理などを行うようにしてもよい。
【０１６１】
また、処理部５００は、処理部１００と同じように、仮想空間にあるオブジェクトの移動・動作演算を行うようにしてもよい。
【０１６２】
画像生成部５２０は、画像生成部１２０と同じように、処理部５００で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部９０に出力する。
【０１６３】
音制御部５３０は、音制御部１３０と同じように、処理部５００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、スピーカー９２に出力する。
【０１６４】
なお、本実施形態の物体認識システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード、或いは、複数のプレーヤがプレイできるマルチプレーヤモードでゲームプレイできるように制御してもよい。例えば、マルチプレーヤモードで制御する場合には、ネットワークを介して他の端末とデータを送受信してゲーム処理を行うようにしてもよいし、１つの端末が、複数の入力部からの入力情報に基づいて処理を行うようにしてもよい。
【０１６５】
情報記憶媒体５８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。
【０１６６】
なお、物体認識装置５０の認識パターン記憶部５７３、入力画像記憶部５７４、差分画像記憶部５７５に記憶されるデータを、入力部６０の記憶部６６０に記憶するようにし、本実施形態の算出部５１１、領域設定部５１２、物体認識処理部５１３の処理を、入力部６０の処理部６５０が行うようにしてもよい。
【０１６７】
２−３．入力部の説明
第２の物体認識システムの入力部６０は、深度センサ６２０と、ＲＧＢカメラ６３０とを備え、コントローラなどの入力機器を必要とせず、物体（プレーヤ、プレーヤの手など）を画像処理することにより入力を受け付けることができる。これにより、従来にはない様々なゲーム処理を行うことができる。まず、入力部６０の深度センサ６２０、ＲＧＢカメラ６３０について説明する。
【０１６８】
２−３−１．深度センサ
本実施形態の深度センサ６２０について、図２１を用いて説明する。まず、図２１に示すように、入力部６０が備える発光部６１０は、タイミング信号にしたがって時間的に強度変動する光を発光する。発光される光は、光源の前方に位置するプレーヤＰ（物体の一例）に照射される。
【０１６９】
そして、深度センサ６２０は、発光部６１０が発光した光の反射光を受光する。つまり、深度センサ６２０は、反射光の空間的な強度分布を抽出した反射像画像を生成する。例えば、深度センサ６２０は、発光部６１０が発光しているときに受光した光量と、発光部６１０が発光していないときに受光した光量の差をとることによって、発光部６１０からの光の物体による反射光を取り出して反射光画像を得る。この反射光画像の各画素の値は、深度センサ６２０の入力部６０の位置ＧＰから物体までの距離（深度値）に対応する。なお、入力部６０の位置ＧＰは、深度センサ６２０の位置、深度センサ６０が備える受光位置と同義である。
【０１７０】
例えば、図２２の例では、プレーヤＰの手の部分が入力部６０の位置ＧＰに最も近くにあるので、図２１（Ａ）に示すようなプレーヤＰの手を示す領域が、もっとも受光量多い部分（高輝度部分）となる反射像画像を得ることになる。
【０１７１】
本実施形態では、反射光画像の各画素について、輝度値（受光量、画素値）が所定値以上である画素を、入力部６０の位置ＧＰに近い画素として抽出する。例えば、反射光画像の階調が２５６階調であれば、所定値（例えば２００）以上の画素を、高輝度の部分として抽出する。
【０１７２】
この深度センサで得られる反射光画像は、物体までの距離（深度値）に関係する。つまり、図２３に示すように、入力部６０の位置ＧＰから１メートル離れたところでプレーヤＰが位置する場合は、位置ＧＰから２メートル離れたところでプレーヤＰが位置する場合よりも、反射光画像の手の領域部分が高輝度となる（受光量が多くなる）。また、入力部６０の位置ＧＰから２メートル離れたところでプレーヤＰが位置する場合は、位置ＧＰから３メートル離れたところでプレーヤＰが位置する場合よりも、反射光画像の手の領域部分が高輝度となる（受光量が多くなる）。
【０１７３】
このような原理に基づき、本実施形態では、反射光画像で高輝度部分として抽出された画素の輝度値に基づいて、実空間におけるプレーヤＰの位置を算出する。例えば、反射光画像のうち、輝度値が最も高い画素を特徴点とし、特徴点の輝度値に基づいて位置ＧＰからプレーヤＰまでの距離を算出する。なお、特徴点は、予め用意された形状パターンや動きベクトル等に基づいて特定される手の領域の重心画素としてもよい。なお、反射光画像において高輝度部分が広い場合には、高輝度部分が狭い場合よりも例えば物体が入力部の近くに存在すると判定することもできる。
【０１７４】
また、本実施形態では、反射光画像に基づいて、入力部６０を基準とする実空間における物体の位置を特定することができる。例えば、反射光画像の中心に、特徴点がある場合には、物体が入力部６０の光源の発射方向上に位置しているものと特定できる。また、特徴点が反射光画像の上部にある場合には、入力部６０を基準に物体が上部にあるものと特定できる。また、特徴点が反射光画像の下部にある場合には、入力部６０を基準に物体が下部にあるものと特定できる。また、特徴点が反射光画像の左部にある場合には、入力部６０を基準に（入力部の正面（光源側）からみて）物体が右部にあるものと特定できる。また、特徴点が反射光画像の左部にある場合には、入力部６０を基準に物体が（入力部の正面（光源側）からみて）右部にあるものと特定できる。このように、本実施形態では、反射光画像に基づいて、物体と入力部６０との位置関係を特定できる。
【０１７５】
また、本実施形態では、反射光画像に基づいて、実空間における物体の移動方向を特定することができる。例えば、反射光画像の中心に特徴点があり、当該特徴点の輝度値が高くなる場合、物体が入力部６０の光源方向に近づいているものと特定できる。また、特徴点が反射光画像の上部から下部に移動している場合には、入力部６０を基準に物体が上部から下部に移動しているものと特定できる。また、特徴点が反射光画像の左部から右部に移動している場合には、入力部６０を基準に物体が右部から左部に移動しているものと特定できる。このように、本実施形態では、反射光画像に基づいて、入力部６０を基準に物体の移動方向を特定できる。
【０１７６】
なお、物体の反射光は、入力部６０の位置ＧＰから物体の距離が大きくなるにつれ大幅に減少する。例えば、反射光画像の１画素あたりの受光量は、物体までの距離の２乗に反比例して小さくなる。したがって、プレーヤＰが入力部６０から２０メートル程離れて位置する場合には、プレーヤＰからの反射光はほぼ無視できるくらいに受光量が小さくなり、プレーヤＰを特定できるような高輝度部分を抽出することができない。かかる場合には、入力がないものとして制御してもよい。また、高輝度部分を抽出することができない場合には、スピーカーから警告音を出力するようにしてもよい。
【０１７７】
２−３−２．ＲＧＢカメラの説明
本実施形態は、ＲＧＢカメラ（撮像部）６３０によりＲＧＢ画像を入力情報として取得する。ＲＧＢ画像は、反射光画像に対応しているため、物体の動きベクトル（移動ベクトル）や特定領域の設定処理、物体認識処理の精度を高めることができる。
【０１７８】
第２の本実施形態のＲＧＢカメラ６３０は、ＲＧＢカメラ２１と同様な処理を行うことができる。つまり、第２の実施形態においても、図３に示すように、異なる時点で撮像された２つの入力画像において、同じ画素の対応付けを行い、その動き量（移動量）と動き方向（移動方向）とを示す動きベクトル（移動ベクトル、オプティカルフロー）を求めることができる。第２の実施形態においても、入力画像Ｆ１、Ｆ２との画素値（輝度値、カラー値）の差分をとった差分画像に基づいて動きベクトルを求めているようにしてもよい。
【０１７９】
また、本実施形態では、深度センサ６２０によって、入力部６０からの物体までの距離（深度値）を特定でき、反射光画像やＲＧＢ画像の２次元平面上において高輝度部分の特徴点の位置座標（Ｘ、Ｙ）、特徴点の動きベクトルを抽出できる。したがって、入力部６０から物体までの距離（Ｚ）と、反射光画像及びＲＧＢ画像の位置座標（Ｘ、Ｙ）とに基づいて、実空間における入力部６０を基準とする物体の位置Ｑを特定できる。したがって、本実施形態では、図２４に示すように、反射光画像に基づいて算出された、入力部６０の位置ＧＰから物体の位置Ｑまでの距離Ｌに基づいて、特定領域の設定処理、物体認識処理、ゲーム演算を行うことができる。
【０１８０】
２−４．物体認識処理
本実施形態では、記憶部に予め格納されている認識パターンを用いて、入力画像（反射光画像、ＲＧＢ画像）上の物体を認識する物体認識処理を行う。ここで、物体を認識する物体認識処理とは、物体自体を認識する処理、物体の動きを認識する処理、物体のジェスチャー（形、ポーズ）を認識する処理の少なくとも１つを含む。
【０１８１】
第２の物体認識システムの物体認識処理について詳細に説明すると、例えば、図２５（Ａ）に示すように、深度カメラ６２０によって、発光部から照射された物体の反射光を受光した反射光画像（赤外線の反射結果）を取得する。
【０１８２】
そして、図２５（Ｂ）に示すように、反射光画像の各画素の輝度値に基づいて、シルエット（形状）を切り出す処理を行う。つまり、反射光画像の各画素の輝度値のうち所定輝度値（２００）以上である画素値の領域をシルエットＳＴ１として切り出す処理（抽出する処理）を行う。
【０１８３】
そして、認識パターン記憶部５７３に記憶されている複数のボーン情報（スケルトン、骨格）それぞれと、シルエットＳＴ１とを照合し、最もシルエットＳＴ１に合致するボーン情報を設定する。例えば、図２５（Ｃ）に示すように、「人」に関するボーン情報ＢＯ１、ＢＯ２、ＢＯ３が認識パターン記憶部５７３に記憶されており、シルエットＳＴ１が、ボーン情報ＢＯ１に最も合致すると判断されると、「人」を認識したと判定する処理を行う。
【０１８４】
一方、「人」を認識できない場合には、次の物体（例えば「手」）のボーン情報を用いて、次の物体（「手」）を認識できるか否かを判断する。そして、物体を認識できるまで、入力画像と次のボーン情報とを照合する処理を行う。図２５（Ｄ）の例では、シルエットＳＴ１が、ボーン情報ＢＯ１、ＢＯ２、ＢＯ３のうち、「人」のボーン情報ＢＯ１と最も合致すると判断され、「人」を認識したと判定する。
【０１８５】
また、本実施形態では、フレーム毎にシルエットに合致するボーン情報に基づいて、物体の動作を認識する処理、物体のジェスチャーを認識する処理を行う。例えば、ｓ０時点において、「人」のボーン情報ＢＯ１に基づいて、「人」を認識したと判定され、ｓ０時点から１０フレーム後のｓ１０時点において、「人」のボーン情報ＢＯ２に基づいて、「人」を認識したと判定され、ｓ１時点から２０フレーム後のｓ２０時点において「人」のボーン情報ＢＯ３に基づいて、「人」を認識したと判定された場合には、各ボーン情報ＢＯ１、ＢＯ２、ＢＯ３をキーフレームとし、キーフレーム間の動きを補間することによって、ｓ１時点からｓ２０時点までの「人」の動きを認識することができる。また、例えば、ｓ２０時点と、ｓ２０時点から１０フレーム後のｓ３０時点とにおいて、「人」のボーン情報ＢＯ３に基づいて、「人」を認識した場合には、ｓ２０時点からｓ３０時点までの間において、物体（人）が、ボーン情報ＢＯ３に基づくジェスチャーを行っていると認識する。
【０１８６】
また、本実施形態では、３次元のボーン情報と、３次元に抽出したシルエットとが一致するかを判断することによって、物体を認識しているので、３次元の物体、物体の動きやジェスチャーを認識することができる。
【０１８７】
なお、本実施形態では、人物を構成する部位単位（手、腕、顔、足）で物体認識処理を行うこともできる。かかる場合は、部位単位で予め複数のボーンを認識パターン記憶部５７３に格納し、抽出されたシルエットが複数のボーンのうちいずれと合致するかを判定してもよい。
【０１８８】
また、第２の物体認識システムは、第１の物体認識システムのように、差分画像に基づいて動き領域を設定し、「人」の形状の認識パターンを用いて、動き領域のシルエットが認識パターンで示される「人」の形状と適合（一致）するか否かを判断するようにしてもよい。
【０１８９】
２−５．特定領域において物体を認識する処理
本実施形態では、特定領域を設定し、特定領域において物体認識処理を行う。このようにすれば、効率的に、かつ、正確に物体を認識する処理を行うことができる。また、特定領域以外の領域に別の物体が映りこんでいる場合に、その別の物体を誤って認識する事態を防止することができる。
【０１９０】
つまり、本実施形態では、図２１（Ａ）に示す反射光画像（入力画像）の各画素の深度値に基づいて、入力画像において特定領域を設定する。例えば、図２１（Ａ）に示すような反射光画像が得られた場合、深度値に基づいて、高輝度部分を特定領域として設定する。
【０１９１】
例えば、「所与の期間（２秒間）において、反射光画像の各画素の輝度値の平均値がしきい値以上（例えば２２０以上）である領域」をルール１０とし、図２６に示すように、ルール１０に基づいて決定される領域を、特定領域Ｃ１として設定する。なお、特定領域を設定するルールは記憶部５７０に記憶されている。
【０１９２】
なお、本実施形態では、入力画像の各画素の深度値と色情報とに基づいて、入力画像において特定領域を設定するようにしてもよい。例えば、「黄色系統のカラー値を有する画素であって、所与の期間（２秒間）において、反射光画像の輝度値の平均値がしきい値以上（例えば２２０以上）である領域」をルール１０´とし、ルール１０´に基づいて、特定領域Ｃ１´を設定するようにしてもよい。
【０１９３】
なお、一度、特定領域Ｃ１を設定した場合、特定領域Ｃ１の物体を認識する必要があるので、特定領域Ｃ１を設定した時点から所与の期間（例えば６０秒間）、特定領域Ｃ１を固定する。そして、所与の周期（例えば６０秒周期）で特定領域Ｃ１を更新（変動、再設定）する。
【０１９４】
そして、本実施形態では、図２６に示す特定領域Ｃ１において物体認識処理を行う。つまり、設定された特定領域Ｃ１において、反射光画像の画素の輝度値がしきい値以上（例えば、２２０以上）である画素の領域のシルエットＳＴ２を切り出し、いずれのボーン情報と一致するか否かを判断すればよい。なお、特定領域においてシルエットを切り出す際のしきい値は、特定領域を設定するルールのしきい値と同じにしてもよい。
【０１９５】
例えば、特定領域Ｃ１のシルエットＳＴ２と、「人」のボーン情報とを比較し、シルエットＳＴ２と「人」のボーン情報とが一致するか否かを判断する。図２６の例では、シルエットＳＴ２が、「人」のボーン情報と一致しないと判断される。そして、特定領域Ｃ１のシルエットＳＴ２と、次のボーン情報である例えば「手」のボーン情報とを比較し、シルエットＳＴ２と「手」のボーン情報とが一致するか否かを判断する。図２６の例では、シルエットＳＴ２が「手」のボーン情報と一致すると判断され、特定領域Ｃ１において「手」を認識したと判定されることになる。
【０１９６】
なお、本実施形態では、入力画像の一部の特定領域Ｃ１にマシンパワーを注ぐことができるので、特定領域Ｃ１の画像精度を上げて物体を認識するようにしてもよい。画像精度とは、画像の解像度（画像の総画素数）や、画像の量子化レベル（画素が取り得る範囲、階調）、ボーン情報の関節数であり、解像度が高いほど、より精細に物体を認識することができる。また、量子化レベルが高いほど、画素値（差分画素値）の取り得る値域が広がり、より詳細にシルエットを切り出すことができる。
【０１９７】
例えば、図２７に示すように、特定領域Ｃ１の解像度を上げて、特定領域Ｃ１において各画素の輝度値（深度値）を算出し直し、特定領域Ｃ１の各画素の輝度値に基づいて、シルエットＳＴ２´を切り出す。例えば、輝度値が２２０以上の画素の領域をシルエットＳＴ２´として切り出す。このようにすれば、例えば、「手」と判断された場合に、「手」のジェスチャー（形状）や、「手」の動きをより詳しく認識することができる。
【０１９８】
また、特定領域Ｃ１のボーン情報の関節数を上げて、より詳細に物体を認識するようにしてもよい。より具体的に説明すると、図２７で抽出したシルエットＳＴ２´と関節数を多くしたボーン情報とを比較して、物体を認識するようにしてもよい。例えば、図２８（Ｂ）に示すように、シルエットＳＴ２´が「手」のボーン情報ＢＯＨ１と一致すると判断されると、特定領域Ｃ１において「手」を認識したと判定される。
【０１９９】
なお、本実施形態では、物体に対応づけて、関節数が異なる複数のボーン情報群を予め用意する。例えば、低、中、高のレベルを設け、レベルが高くになるにつれて関節数が多くなるようにボーン情報群を用意する。例えば、「人」の場合には、関節数が１３個のボーン情報群を低レベルとし、関節数が２８個のボーン情報群を中レベルとし、関節数が５６個のボーン情報群を高レベルとする。また、「手」の場合には、関節数が１個のボーン情報群を低レベルとし、関節数が５個のボーン情報群を中レベルとし、関節数が１５個のボーン情報群を高レベルとしている。
【０２００】
そして、本実施形態では、特定領域において物体認識処理を行う場合には、少なくとも中レベル以上のボーン情報群を用いて物体認識処理を行うようにする。例えば、特定領域Ｃ１において物体認識処理を行う場合には、特定領域Ｃ１のシルエットと、中レベルの「人」のボーン情報群の各ボーン情報とを比較し、「人」であるか否かを判断する。
【０２０１】
図２７の例で示す特定領域Ｃ１のシルエットＳＴ２´は、「人」のボーン情報と一致しないと判断され、次に、特定領域Ｃ１のシルエットＳＴ２´と高レベルの「手」のボーン情報群の各ボーン情報とを比較し、特定領域Ｃ１のシルエットＳＴ２´と、ボーン情報ＢＯＨ１とが一致すると判断され、特定領域Ｃ１にある物体は「手」であることを認識する。
【０２０２】
なお、本実施形態では、特定領域Ｃ１において物体自体を認識した場合には、特定領域Ｃ１において物体自体を認識した関節数レベルのボーン情報群に基づいて、特定領域Ｃ１の物体のジェスチャーや動きを認識する処理を行うようにしてもよい。例えば、高レベルの「手」のボーン情報に基づいて特定領域Ｃ１において、「手」自体を認識した場合には、高レベルの「手」のボーン情報群に基づいて、特定領域Ｃ１の「手」のジェスチャーや動きを認識する処理を行うようにしてもよい。
【０２０３】
また、本実施形態では、図９に示すように、特定領域Ｃ１において物体認識処理を行う周期を短くするようにしてもよい。例えば、特定領域Ｃ１を設定する前において、反射光画像を１／６秒周期で取得していた場合、特定領域Ｃ１を設定したｔ１０以後は、１／６０秒周期で取得するようにしてもよい。このようにすれば、より詳細に物体の動きを認識することができる。
【０２０４】
以上のように、本実施形態では、特定領域Ｃ１にマシンパワーを注ぐことができるので、物体について詳細に物体認識処理を行うことができる。また、本実施形態では、特定領域について画像精度を上げ、さらに認識周期を短くすることによって物体の誤認識を軽減することができる、という効果もある。
【０２０５】
２−６．特定領域と特定領域以外の領域との関係
本実施形態では、図２６の特定領域Ｃ１以外の領域において物体認識処理を行うようにしてもよい。特定領域以外の領域において物体認識処理を行う場合には、特定領域以外の領域の画像精度を特定領域の画像精度よりも低くする。このようにすれば、特定領域Ｃ１よりも認識精度は劣るが、特定領域Ｃ１以外に物体が存在する場合において物体を認識することができる。
【０２０６】
本実施形態では、特定領域Ｃ１以外の領域の画像精度を特定領域の画像精度よりも低くするようにしてもよい。また、特定領域以外の領域において物体認識処理を行う周期を、特定領域において物体認識処理を行う周期よりも長くするようにしてもよい。例えば、図１３に示すように、特定領域Ｃ１以外の領域においては、１／６秒の周期で物体認識処理を行い、特定領域Ｃ１においては、１／６０秒の周期で物体認識処理を行う。このようにすれば、マシンパワー（コンピュータの総合的な処理能力）を主に特定領域Ｃ１の物体認識処理に注力することができ、特定領域Ｃ１の物体認識処理をより正確に行うことができる。
【０２０７】
２−７．複数の特定領域
本実施形態では、複数の特定領域を設定するようにしてもよい。例えば、「所与の期間（２秒間）において、反射光画像の輝度値の平均値がしきい値以上（例えば２２０以上）である領域」をルール１０とし、「所与の期間（２秒間）において、反射光画像の輝度値の平均値がしきい値以上（例えば２００以上）である領域」をルール２０とした場合、図２６に示すように、ルール１０に基づいて決定される領域を、特定領域Ｃ１として設定すると共に、図２９に示すように、ルール２０に基づいて決定される領域を、特定領域Ｃ２として設定する。なお、本実施形態では、３つ以上の特定領域を設定してもよい。つまり、本実施形態では、反射光画像の輝度値は奥行き（物体との距離）に関係するので、物体の距離関係に応じた特定領域の設定を行う。
【０２０８】
そして、少なくとも１つの特定領域について物体認識処理を行う。例えば、ルール１０、ルール２０に基づいて設定された特定領域Ｃ１、Ｃ２のいずれか一方について物体認識処理を行うようにしてもよいし、特定領域Ｃ１、Ｃ２の両方について物体認識処理を行うようにしてもよい。
【０２０９】
例えば、図２９に示すように、特定領域Ｃ２について物体認識処理を行う場合には、特定領域Ｃ２において輝度値が２００以上の画素の領域をシルエットＳＴ３として切り出す。そして、シルエットＳＴ３とボーン情報とを対比して物体を特定する。図３１に示すように、例えば、シルエットＳＴ３と「人」のボーンとが一致する場合には、特定領域Ｃ２において「人」を認識したと判定する。
【０２１０】
また、本実施形態では、第１の物体認識システム同じように、各特定領域に優先度を設定する。本実施形態では、深度値に基づいて優先度を決める。例えば、特定領域上の各画素の深度値の平均値を算出し、平均値が高いほど優位になるように優先度を設定するようにしてもよい。このようにすれば、入力部６０に近い物体ほど優先的に物体認識処理を行うことができる。
【０２１１】
そして、本実施形態では、優先度に基づいて、物体認識処理を行う。例えば、優先度の低い特定領域の画像精度を、優先度の高い特定領域の画像精度よりも低くするようにしてもよい。
【０２１２】
例えば、特定領域Ｃ１の優先度が１であり、特定領域Ｃ２の優先度が２であるとすると、図３０に示すように、特定領域Ｃ２について解像度を上げると共に、優先度の低い特定領域Ｃ２の解像度を、優先度の高い特定領域Ｃ１において物体認識処理を行う解像度よりも低くする。
【０２１３】
また、優先度の高い特定領域Ｃ１については、図２８（Ｂ）に示すように、関節数を低レベルから高レベルに上げ、高レベルのボーン情報群に基づいて物体認識処理を行い、優先度が特定領域Ｃ１よりも低い特定領域Ｃ２については、図３１に示すように、関節数を低レベルから中レベルに上げて中レベルのボーン情報群に基づいて物体認識処理を行う。
【０２１４】
例えば、図２９に示すように、特定領域Ｃ２について物体認識処理を行う場合には、特定領域Ｃ２の解像度を上げて、特定領域Ｃ２において各画素の輝度値（深度値）を算出し直し、例えば、輝度値が２００以上の画素の領域をシルエットＳＴ３´として切り出す。そして、シルエットＳＴ３´とボーン情報とを対比して物体を特定する。図３１に示すように、例えば、シルエットＳＴ３´と「人」のボーンＢＯ５とが一致する場合には、特定領域Ｃ２において「人」を認識することができる。
【０２１５】
このようにすれば、優先度の高い特定領域Ｃ１についてより、マシンパワーを注いで詳細に物体を認識することができ、優先度の低いものについて処理を簡素にし、効率よく特定領域Ｃ１、Ｃ２の物体認識処理を行うことができる。
【０２１６】
同様に、例えば、優先度の低い特定領域において物体認識処理を行う周期を、優先度の高い特定領域において物体認識処理を行う周期よりも長くする。つまり、図１７に示すように、優先度の低い特定領域Ｃ２において物体認識処理を行う周期を、優先度の高い特定領域Ｃ１において物体認識処理を行う周期よりも長くする。このようにすれば、優先度の高い特定領域Ｃ１についてより詳細に物体を認識することができる。
【０２１７】
また、本実施形態では、複数の特定領域を設定している場合には、優先度の低い特定領域において物体認識処理を行わずに、優先度の高い特定領域において物体認識処理を行うようにしてもよい。つまり、優先度の低い特定領域Ｃ２において物体認識処理を行わずに、優先度の高い特定領域Ｃ１において物体認識処理を行うようにしてもよい。
【０２１８】
２−８．フローチャート
最後に、本実施形態の処理の流れについて図３２を用いて説明する。まず、入力画像の各画素の深度値に基づいて、入力画像上の特定領域を設定する（ステップＳ２０）。そして、特定領域の画像精度を上げると共に、特定領域の物体認識処理を行う周期を短くする（ステップＳ２１）。そして、特定領域において物体を認識する処理を行う（ステップＳ２２）。以上で処理が終了する。
【０２１９】
３．ゲーム演算処理例
本実施形態では、以上に示す物体認識処理を行うことによって、種々のゲームを行うことができる。
【０２２０】
３−１．野球ゲームの例
３−１−１．第１の物体認識システムで野球ゲームのゲーム演算を行う例
本実施形態において、第１の物体認識システムで野球ゲームのゲーム演算を行う例について説明する。まず、本実施形態では、オブジェクト空間に、プレーヤキャラクタを配置する。そして、プレーヤの動きやジェスチャーを認識し、認識したプレーヤの動きやジェスチャーに基づいて、プレーヤキャラクタがピッチャーとしてボールを投げる動作処理を行う。
【０２２１】
例えば、オブジェクト空間内においてプレーヤキャラクタがマウンド（所定区域）に立ったタイミングで、入力画像においてルール２（所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が１００以上であって、動きベクトルが左又は右方向を向く領域）に基づいて決定される特定領域Ａ２において、動きベクトルによって示される動き領域Ｓ３を抽出する。そして動き領域Ｓ３の形が「人」のパターン（「人」の形状、「人」の色情報）と一致するか否かを判断する。なお、人の認識処理を行う場合には、特定領域Ａ２において、画像精度を上げた各画素の動きベクトルに基づいて、動き領域Ｓ３´を設定し、動き領域Ｓ３´の形と、「手」の認識パターンの一致度を判断する。
【０２２２】
本実施形態では、特定領域Ａ２において「人」を認識した場合に、次に、入力画像に基づいて「手」を認識できるか否かを判断する。例えば、入力画像においてルール１（所与の期間（２秒間）において、動きベクトルの大きさ（差分画素値）の平均値が２００以上であって、動きベクトルが左又は右方向を向く領域）に基づいて決定される特定領域Ａ１の動き領域Ｓ１の形が、「手」のパターン（「手」の形状、「手」の色情報）と一致するか否かを判断する。例えば、手の認識処理を行う場合には、特定領域Ａ１において、画像精度を上げた各画素の動きベクトルに基づいて、動き領域Ｓ１´を設定し、動き領域Ｓ１´の形と、「手」の認識パターンの一致度を判断する。
【０２２３】
そして、特定領域Ａ１において、「手」を認識すると、次に、「手」のジェスチャーを認識する。本実施形態では、認識された「手」のジェスチャーに基づいて、プレーヤキャラクタがボールを投げる投球フォームを決定する。例えば、特定領域Ａ１の動き領域Ｓ１´の形と、「手」の「グー」、「チョキ」、「パー」の３つの認識パターンそれぞれの一致度を判断する。そして、動き領域Ｓ１´の形が「グー」の認識パターンと一致している場合には、プレーヤキャラクタの投球フォームを「ストレート」に決定し、動き領域Ｓ１´の形が「チョキ」の認識パターンと一致している場合には、プレーヤキャラクタの投球フォームを「フォーク」に決定し、動き領域Ｓ１´の形が「パー」の認識パターンと一致している場合には、プレーヤキャラクタの投球フォームを「スライダー」に決定する。
【０２２４】
そして、特定領域Ａ１（或いは、動き領域Ｓ１´）の各画素の動きベクトルの方向に基づいて「手」の動きを認識し、「手」の動きに基づいてオブジェクト空間のプレーヤキャラクタの動作演算を行う。例えば、「手」を認識した特定領域Ａ１において、動きベクトルの方向が画面下方向であって、その動きベクトルの大きさが所定値以上（例えば、差分画素値が２５０以上）であることを検出した場合に、オブジェクト空間に存在するプレーヤキャラクタが、決定された投球フォームでボールを投げる動作を行う。
【０２２５】
以上のように、第１の物体認識システムで野球ゲームのゲーム演算を行う場合には、全画面ではなく特定領域において、「人」や、「手」の物体認識、ジェスチャー、動きを認識する処理を行うので、無駄な処理を省略することができ、効率よく処理を行うことができる。
【０２２６】
３−１−２．第２の物体認識システムで野球ゲームのゲーム演算を行う例
次に、本実施形態の第２の物体認識システムで野球ゲームのゲーム演算を行う例について説明する。まず、本実施形態では、オブジェクト空間に、プレーヤキャラクタを配置し、プレーヤの動きやジェスチャーを認識し、認識したプレーヤの動きやジェスチャーに基づいて、プレーヤキャラクタがピッチャーとしてボールを投げる動作処理を行う。
【０２２７】
例えば、オブジェクト空間内においてプレーヤキャラクタがマウンドに立ったタイミングで、入力画像においてルール２０（所与の期間（２秒間）において、反射光画像の輝度値の平均値がしきい値以上（例えば２００以上）である領域）に基づいて決定されるシルエットを特定領域Ｃ２として設定し、特定領域Ｃ２のシルエットＳＴ３が「人」のボーン情報と一致するか否かを判断する。例えば、「人」を認識する場合には、特定領域Ｃ２の画像精度を上げて各画素情報に基づいて、シルエットＳＴ３´を設定し、シルエットＳＴ３´の形と「人」のボーン情報の一致度を判断する。
【０２２８】
そして、特定領域Ｃ２において「人」を認識した場合には、次に、入力画像に基づいて「手」を認識可能か否かを判断する。例えば、入力画像においてルール１０（所与の期間（２秒間）において、反射光画像の輝度値の平均値がしきい値以上（例えば２２０以上）である領域）に基づいて決定される領域を特定領域Ｃ１として設定し、特定領域Ｃ１のシルエットＳＴ２の形が「手」のボーン情報と一致するか否かを判断する。例えば、特定領域Ｃ１の画像精度を上げて各画素情報に基づいて、シルエットＳＴ２´を設定し、シルエットＳＴ２´の形と、「手」のボーン情報の一致度を判断する。
【０２２９】
そして、特定領域Ｃ１において、「手」を認識すると、次に、「手」のジェスチャーを認識する。例えば、本実施形態では、認識されたジェスチャーに基づいて、プレーヤキャラクタがボールを投げる投球フォームを決定する。例えば、特定領域Ｃ１のシルエットＳＴ２´の形と、「手」の「グー」、「チョキ」、「パー」の３つのボーン情報それぞれの一致度を判断する。そして、シルエットＳＴ２´の形が「グー」のボーン情報と一致する場合には、プレーヤキャラクタの投球フォームを「ストレート」に決定し、シルエットＳＴ２´の形が「チョキ」のボーン情報と一致する場合には、プレーヤキャラクタの投球フォームを「フォーク」に決定し、シルエットＳＴ２´の形が「パー」のボーン情報と一致する場合には、プレーヤキャラクタの投球フォームを「スライダー」に決定する。
【０２３０】
そして、本実施形態では、シルエットＳＴ３´に一致するボーン情報に基づいて、「人」の動きを認識する。例えば、本実施形態では、所定周期で更新するシルエットＳＴ３´に合致する「人」のボーン情報をキーフレームとし、キーフレーム間の動きを補間して、「人」の動作を認識し、認識した動作に基づいて、オブジェクト空間に存在するプレーヤキャラクタの動作処理（モーション処理）を行う。例えば、「人」を認識した特定領域Ｃ２において、「人」のボールを投げる動きをしていることを認識した場合に、決定された投球フォームに基づいて、オブジェクト空間に存在するプレーヤキャラクタがボールを投げる動作を行う。
【０２３１】
以上のように、第２の物体認識システムで野球ゲームのゲーム演算を行う場合には、全画面ではなく特定領域において、「人」や、「手」の物体認識、ジェスチャー、動きを認識する処理を行うので、無駄な処理を省略することができ、効率よく処理を行うことができる。
【０２３２】
３−２．対戦ゲームの例
３−２−１．第１の物体認識システムで対戦ゲームのゲーム演算を行う例
第１の物体認識システムで対戦ゲームのゲーム演算を行う例について説明する。まず、本実施形態では、オブジェクト空間に、プレーヤキャラクタを配置する。そして、プレーヤの動きやジェスチャーを認識し、認識したプレーヤの動きやジェスチャーに基づいて、プレーヤキャラクタが敵キャラクタに攻撃技、防御技などを決定する。
【０２３３】
例えば、オブジェクト空間内においてプレーヤキャラクタと敵キャラクタとの対戦ゲームが開始されると、入力画像においてルール２に基づいて決定される特定領域Ａ２において、動きベクトルによって示される動き領域Ｓ３の形が認識パターン記憶部１７３に記憶されている「人」のパターン（「人」の形状、「人」の色情報）と一致するか否かを判断する。例えば、特定領域Ａ２において画像精度を上げた各画素の動きベクトルに基づいて、動き領域Ｓ３´を設定し、動き領域Ｓ３´の形と、「人」の認識パターンの一致度を判断する。
【０２３４】
そして、特定領域Ａ２において「人」を認識した場合には、次に、入力画像に基づいて「手」を認識できるか否かを判断する。例えば、入力画像においてルール１に基づいて特定領域Ａ１を設定し、特定領域Ａ１の動き領域Ｓ１の形が「手」のパターン（「手」の形状、「手」の色情報）と一致するか否かを判断する。例えば、特定領域Ａ１において画像精度を上げた各画素の動きベクトルに基づいて、動き領域Ｓ１´を設定し、動き領域Ｓ１´の形と、「手」の認識パターンの一致度を判断する。
【０２３５】
そして、特定領域Ａ１において、「手」を認識すると、次に、「手」のジェスチャーを認識する。例えば、本実施形態では、認識されたジェスチャーに基づいて、プレーヤキャラクタの技を決定する。例えば、特定領域Ａ１の動き領域Ｓ１´の形と、「手」の「グー」、「チョキ」、「パー」の３つの認識パターンそれぞれの一致度を判断する。例えば、動き領域Ｓ１´の形が「グー」の認識パターンと一致する場合にはプレーヤキャラクタの技を「パンチ」に決定し、動き領域Ｓ１´の形が「チョキ」の認識パターンと一致する場合にはプレーヤキャラクタの技を「タックル」に決定し、「パー」の認識パターンと一致する場合にはプレーヤキャラクタの技を「投げ技」に決定する。
【０２３６】
そして、特定領域Ａ１（或いは、動き領域Ｓ１´）の各画素の動きベクトルの方向に基づいて「手」の動きを認識する。例えば、「手」を認識した特定領域Ａ１において、動きベクトルの方向が画面下方向であって、その動きベクトルの大きさが所定値以上（例えば、差分画素値が２５０以上）であることを検出した場合に、決定された「技」に基づいて、オブジェクト空間に存在するプレーヤキャラクタが敵キャラクタに攻撃を行う動作を行う。
【０２３７】
なお、本実施形態では、認識したプレーヤの人や手の動きに基づいて、プレーヤキャラクタを動作させる処理を行うようにしてもよい（モーション演算を行うようにしてもよい）。このようにすれば、例えば、プレーヤが行うパンチの動作をプレーヤキャラクタに反映させることができる。例えば、特定領域Ａ１（或いは、動き領域Ｓ１´）の各画素の動きベクトルの方向に基づいて「手」の動きを認識した場合に、その「手」の動きに基づいて、オブジェクト空間に存在するプレーヤキャラクタの手（腕）の動作処理を行う。例えば、「手」を認識した特定領域Ａ１において、動きベクトルの方向が画面下方向であって、その動きベクトルの大きさが所定値以上であることを検出した場合に、プレーヤの「手」が上から下へ動いたものと判断し、プレーヤキャラクタの手（腕）を上から下に振り下ろすモーション処理を行う。
【０２３８】
以上のように、第１の物体認識システムで対戦ゲームのゲーム演算を行う場合には、全画面ではなく特定領域において、「人」や、「手」の物体認識、ジェスチャー、動きを認識する処理を行うので、無駄な処理を省略することができ、効率よく処理を行うことができる。
【０２３９】
３−２−２．第２の物体認識システムで対戦ゲームのゲーム演算を行う例
次に、本実施形態の第２の物体認識システムで対戦ゲームのゲーム演算を行う例について説明する。まず、本実施形態では、プレーヤの動きやジェスチャーを認識し、認識したプレーヤの動きやジェスチャーに基づいて、プレーヤキャラクタが敵キャラクタに攻撃技、防御技などを決定する。
【０２４０】
例えば、オブジェクト空間内においてプレーヤキャラクタと敵キャラクタとの対戦ゲームが開始されると、入力画像においてルール２０に基づいて決定される特定領域Ｃ２において切り出されたシルエットＳＴ３が「人」のボーン情報と一致するか否かを判断する。例えば、「人」を認識する場合には、特定領域Ｃ２の画像精度を上げて各画素情報に基づいて、シルエットＳＴ３´を設定し、シルエットＳＴ３´の形と「人」のボーン情報の一致度を判断する。
【０２４１】
そして、シルエットＳＴ３が「人」のボーン情報と一致し、「人」であることを認識した場合には、次に、入力画像に基づいて「手」を認識できるか否かを判断する。例えば、入力画像においてルール１０に基づいて特定領域Ｃ１を設定し、特定領域Ｃ１のシルエットＳＴ２の形が「手」のボーン情報と一致するか否かを判断する。例えば、特定領域Ｃ１の画像精度を上げて各画素情報に基づいて、シルエットＳＴ２´を設定し、シルエットＳＴ２´の形と、「手」のボーン情報の一致度を判断する。
【０２４２】
そして、特定領域Ｃ１において、「手」を認識すると、次に、「手」のジェスチャーを認識する。例えば、本実施形態では、認識されたジェスチャーに基づいて、プレーヤキャラクタの技を決定する。例えば、シルエットＳＴ２´が「グー」のボーン情報と一致する場合にはプレーヤキャラクタの技を「パンチ」に決定し、シルエットＳＴ２´が「チョキ」のボーン情報と一致する場合にはプレーヤキャラクタの技を「タックル」に決定し、シルエットＳＴ２´が「パー」のボーン情報と一致する場合にはプレーヤキャラクタの技を「投げ技」に決定する。
【０２４３】
そして、特定領域Ｃ１（或いは、シルエットＳＴ２´）のボーン情報に基づいて「手」の動きを認識する。例えば、「手」を認識した特定領域Ｃ１において、「手」のボーンが、深度センサに対して前に突き出す動作（奥から手前へ手を前に出す動作）をしていることを検出した場合に、オブジェクト空間に存在するプレーヤキャラクタが、決定された「技」に基づいて、オブジェクト空間に存在するプレーヤキャラクタが敵キャラクタに攻撃を行う。
【０２４４】
なお、本実施形態では、プレーヤの動きやジェスチャーを認識し、プレーヤの動きやジェスチャーに基づいて、プレーヤキャラクタを動作させる処理を行うようにしてもよい（モーション演算を行う）。
【０２４５】
例えば、特定領域Ｃ２（或いは、シルエットＳＴ３´）のボーン情報に基づいて「人」の動きを認識した場合に、その「人」の動きに基づいて、オブジェクト空間に存在するプレーヤキャラクタの動作処理を行う。例えば、本実施形態では、所定周期で更新するシルエットＳＴ３´に合致する「人」のボーン情報をキーフレームとし、キーフレーム間の動きを補間して、「人」の動作を認識し、認識した動作に基づいて、オブジェクト空間に存在するプレーヤキャラクタの動作処理（モーション処理）を行う。このようにすれば、例えば、プレーヤが行うパンチの動作をプレーヤキャラクタに反映させることができる。
【０２４６】
以上のように、第２の物体認識システムで対戦ゲームのゲーム演算を行う場合には、全画面ではなく特定領域において、「人」や、「手」の物体認識、ジェスチャー、動きを認識する処理を行うので、無駄な処理を省略することができ、効率よく処理を行うことができる。
【０２４７】
３−３．その他のゲーム
本実施形態では、アクションゲーム、レーシングゲーム、シューティングゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、シミュレーションゲーム、音楽演奏ゲーム、ダンスゲームなど種々のゲームに適用できる。
【０２４８】
例えば、各ゲームにおいて適用する場合には、ゲーム進行に応じた所定のタイミングで、特定領域において物体認識処理を行うようにしてもよい。例えば、オブジェクト空間においてプレーヤの操作対象のプレーヤオブジェクトが敵オブジェクトと遭遇したタイミング（プレーヤオブジェクトの位置と敵オブジェクトの位置とが所定位置関係になったタイミング）で、特定領域において物体認識処理を行うようにしてもよい。
【０２４９】
また、レーシングゲーム、シューティングゲーム等においては、プレーヤがハンドルや操縦桿等を操作しているような動きを認識するようにしてもよい。例えば、レーシングゲーム等で手（或いは腕などでもよい）を認識するための特定領域を設定し、特定領域において手を認識できた場合には、その特定領域において、手の動き、手のジェスチャーを認識する処理を行う。
【０２５０】
また、音楽ゲームやダンスゲームでは、プレーヤの動作を認識し、プレーヤの動作が予め決められた動作に一致しているか否かを判断してもよい。例えば、人を認識するための特定領域を設定し、特定領域において人を認識できた場合には、その特定領域において、人の動き、人のジェスチャーを認識する処理を行う。
【０２５１】
また、本実施形態では、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレーター、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話などの種々のシステム（端末）に適用できる。
【０２５２】
４．応用例
本実施形態では、第１の物体認識システムの処理部１００の処理を、第２の物体認識システムの処理部５００に応用してもよいし、第２の物体認識システムの処理部５００の処理を、第１の物体認識システムの処理部１００に応用してもよい。例えば、第１の物体認識システムにおいて、ボーン情報を用いて物体認識処理を行うようにしてもよい。具体的には、第１の物体認識システムの認識パターン記憶部１７３に「人」に関するボーン情報を記憶させる。そして、認識パターン記憶部１７３で記憶されている複数のボーン（スケルトン、骨格）と入力画像の各画素の画素情報に基づいて設定された動き領域（２次元のシルエット）とを照合し、最も動き領域に合致するボーンを設定する。
【０２５３】
そして、本実施形態では、設定されたボーンの動きを演算する処理を行う。つまり、ボーンの動きを、プレーヤＰの動作とみなす処理を行なう。本実施形態では、所定間隔毎（例えば、フレーム毎）に、ボーンを特定しプレーヤＰの動作を取得する処理を行っている。
【０２５４】
なお、本実施形態では、人物を構成する部位単位（手、腕、顔、足）で物体認識処理を行うこともできる。かかる場合は、部位単位で予め複数のボーンを認識パターン記憶部１７３に格納し、抽出された動き領域が複数のボーンのうちいずれと合致するかを判定してもよい。
【０２５５】
５．物体の動きを認識する処理についての説明
本実施形態では、所定タイミングで画像の変化を認識する処理を行うようにしてもよい。つまり、本実施形態では、２つの異なる時点で取得した入力画像に基づいて、物体の動きを認識する処理を行うようにしてもよい。例えば、単純に２つの入力画像間の差分をとって物体の動き（物体の移動）を認識してもよい。このようにすれば、簡易な処理で物体の動きや移動等を認識することができる。
【０２５６】
より具体的に説明すると、図３３（Ａ）（Ｂ）に示すように、タイミングＴ２０で取得した入力画像Ｆ２０と、タイミングＴ２０時点から所定期間経過した所定タイミングでＴ２１時点（例えば、Ｔ２０時点から１秒後のＴ２１時点）において取得した入力画像Ｆ２１との差分をとって動きを認識してもよい。つまり、入力画像Ｆ２０の各画素値の合計値と、入力画像Ｆ２１の各画素値の合計値の差分値を算出し、差分値が動き認識のためのしきい値以上（所定値以上）であるか否かを判断し、差分値が動き認識のしきい値以上である場合に、動きがあったものと認識する。
【０２５７】
なお、入力画像はＲＧＢ画像でもよいし、反射光画像でもよい。例えば、Ｔ２０時点のＲＧＢ画像の各画素のカラー値の合計値と、Ｔ２１時点のＲＧＢ画像の各画素のカラー値の合計値の差分値を算出し、差分値がしきい値以上であるか否かを判断する。そして、差分値がしきい値以上である場合に、動きがあったものと認識する。
【０２５８】
また、Ｔ２０時点の反射光画像の各画素の深度値の合計値と、Ｔ２１時点の反射光画像の各画素の深度値の合計値の差分値を算出し、差分値がしきい値以上であるか否かを判断する。そして、差分値がしきい値以上である場合に、動きがあったものと認識する。特に、反射光画像を用いれば、物体が奥行き方向へ動いたことを認識することができる。
【０２５９】
また、本実施形態では入力画像において特定領域を設定するので、所定タイミングで特定領域における画像の変化を認識する処理を行うようにしてもよい。例えば、図３３（Ａ）（Ｂ）に示すように、Ｔ２０時点で取得した入力画像Ｆ２０の特定領域Ａ２０の各画素値の合計値と、Ｔ２１時点で取得した入力画像Ｆ２１の特定領域Ａ２１の各画素値の合計値の差分値を算出し、差分値がしきい値以上である場合に、動きがあったものと認識するようにしてもよい。このようにすれば、効率的に物体の動きを認識することができ、また、特定領域にマシンパワーを注ぐことができ、より正確に物体の動きを認識することができるからである。
【０２６０】
例えば、特定領域Ａ２０の各画素のカラー値の合計値と、特定領域Ａ２１の各画素のカラー値の合計値の差分値を算出し、差分値がしきい値以上であるか否かを判断する。そして、差分値がしきい値以上である場合に、動きがあったものと認識する。また、特定領域Ａ２０の各画素の深度値の合計値と、特定領域Ａ２１の各画素の深度値の合計値の差分値を算出し、差分値がしきい値以上であるか否かを判断する。そして、差分値がしきい値以上である場合に、動きがあったものと認識する。
【符号の説明】
【０２６１】
物体認識装置  １０、処理部  １００、取得部  １１０、算出部  １１１、
領域設定部  １１２、物体認識処理部  １１３、ゲーム演算部  １１４、
画像生成部  １２０、音制御部  １３０、記憶部  １７０、主記憶部  １７１、
描画バッファ  １７２、認識パターン記憶部  １７３、入力画像記憶部  １７４、
差分画像記憶部  １７５、情報記憶媒体  １８０、通信部  １９６、
入力部  ２０、ＲＧＢカメラ（撮像部）  ２１、処理部  ２２、記憶部  ２３、
物体認識装置  ５０、処理部  ５００、取得部  ５１０、算出部  ５１１、
領域設定部  ５１２、物体認識処理部  ５１３、ゲーム演算部  ５１４、
画像生成部  ５２０、音制御部  ５３０、記憶部  ５７０、主記憶部  ５７１、
描画バッファ  ５７２、認識パターン記憶部  ５７３、入力画像記憶部  ５７４、
差分画像記憶部  ５７５、情報記憶媒体  ５８０、通信部  ５９６、
入力部  ６０、発光部  ６１０、光源  ６１１、深度センサ  ６２０、
ＲＧＢカメラ（撮像部）  ６３０、音入力部  ６４０、処理部  ６５０、
記憶部  ６６０表示部  ９０、スピーカー  ９２、Ｐ  プレーヤ、
Ｆ１〜Ｆ４、Ｆ１０、Ｆ１１  入力画像、Ｐ１、Ｐ２  画素、Ｖ  動きベクトル、
Ａ１、Ａ２、Ｂ１、Ｃ１、Ｃ２  特定領域、Ｓ１、Ｓ１´、Ｓ２、Ｓ２´  動き領域、
ＧＰ  入力部の位置、Ｑ  物体の位置、Ｌ  物体から入力部までの距離、
ＢＯ１、ＢＯ２、ＢＯ３、ＢＯ４、ＢＯ５、ＢＯＨ１  ボーン、
ＳＴ１、ＳＴ２、ＳＴ２´、ＳＴ３、ＳＴ３´  シルエット
【図２】
2011215967.tif 000003
【図３】
2011215967.tif 000004
【図４】
2011215967.tif 000005
【図５】
2011215967.tif 000006
【図６】
2011215967.tif 000007
【図７】
2011215967.tif 000008
【図８】
2011215967.tif 000009
【図９】
2011215967.tif 000010
【図１０】
2011215967.tif 000011
【図１１】
2011215967.tif 000012
【図１２】
2011215967.tif 000013
【図１３】
2011215967.tif 000014
【図１４】
2011215967.tif 000015
【図１５】
2011215967.tif 000016
【図１６】
2011215967.tif 000017
【図１７】
2011215967.tif 000018
【図１８】
2011215967.tif 000019
【図２０】
2011215967.tif 000020
【図２２】
2011215967.tif 000021
【図２３】
2011215967.tif 000022
【図２８】
2011215967.tif 000023
【図３１】
2011215967.tif 000024
【図３２】
2011215967.tif 000025
【図３３】
2011215967.tif 000026
【図１】
2011215967.tif 000027
【図１９】
2011215967.tif 000028
【図２１】
2011215967.tif 000029
【図２４】
2011215967.tif 000030
【図２５】
2011215967.tif 000031
【図２６】
2011215967.tif 000032
【図２７】
2011215967.tif 000033
【図２９】
2011215967.tif 000034
【図３０】
2011215967.tif 000035