(57)【要約】【課題】高い精度でポインティング位置の検出が可能な位置検出システム、プログラム、情報記憶媒体、画像生成装置の提供。【解決手段】位置検出システム１０は、位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像のうち、ポインティング位置ＰＰに対応する撮像領域ＩＭＲの画像がカメラ１２（撮像デバイス）により撮像された場合に、撮像デバイス１２からの撮像画像を取得する画像取得部２０と、取得された撮像画像に基づいて、撮像画像に埋め込まれたマーカ画像を検出する演算処理を行うことで、撮像領域ＩＭＲに対応するポインティング位置ＰＰを求める位置検出処理部２４を含む。【選択図】図１
2009245349.tif 000002
【特許請求の範囲】
【請求項１】
ポインティング位置を検出するための位置検出システムであって、
位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像のうち、前記ポインティング位置に対応する撮像領域の画像が撮像デバイスにより撮像された場合に、前記撮像デバイスからの撮像画像を取得する画像取得部と、
取得された前記撮像画像に基づいて、前記撮像画像に埋め込まれた前記マーカ画像を検出する演算処理を行うことで、前記撮像領域に対応する前記ポインティング位置を求める位置検出処理部と、
を含むことを特徴とする位置検出システム。
【請求項２】
請求項１において、
前記表示画像は、前記原画像の各画素データを前記マーカ画像の各画素データで変換することで生成された画像であることを特徴とする位置検出システム。
【請求項３】
請求項２において、
前記表示画像は、前記原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ及び輝度成分データの少なくとも１つを、前記マーカ画像の各画素データにより変換することで生成された画像であることを特徴とする位置検出システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記マーカ画像は、前記表示画像の各分割領域単位においてユニークなデータパターンとなる画素データにより構成されることを特徴とする位置検出システム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記マーカ画像の各画素データは、Ｍ系列を用いた乱数データにより生成されることを特徴とする位置検出システム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記撮像デバイスは、前記表示画像の表示領域よりも狭い一部の領域を前記撮像領域として、画像を撮像することを特徴とする位置検出システム。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記位置検出処理部は、
前記撮像画像と前記マーカ画像との相互相関を演算し、前記相互相関の演算結果に基づいて前記ポインティング位置を求めることを特徴とする位置検出システム。
【請求項８】
請求項７において、
前記位置検出処理部は、
前記相互相関の演算結果又は前記マーカ画像に対してハイパスフィルタ処理を行うことを特徴とする位置検出システム。
【請求項９】
請求項７又は８において、
前記相互相関の最大値と前記相互相関の値の分布とに基づいて、前記相互相関の演算結果の信頼度を求める信頼度演算部を含むことを特徴とする位置検出システム。
【請求項１０】
請求項１乃至９のいずれかにおいて、
前記撮像画像に対して画像補正を行う画像補正部を含み、
前記位置検出処理部は、
前記画像補正部での画像補正後の撮像画像に基づいて、前記ポインティング位置を求めることを特徴とする位置検出システム。
【請求項１１】
位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像を生成して表示部に出力する画像生成部と、
前記表示画像の撮像画像に基づいて、前記撮像画像に埋め込まれた前記マーカ画像が検出され、前記撮像画像の撮像領域に対応するポインティング位置が求められた場合に、求められた前記ポインティング位置に基づいて、演算処理を行う処理部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項１２】
請求項１１において、
前記処理部は、
前記ポインティング位置に基づいて、ゲーム成績演算処理を含むゲーム処理を行うことを特徴とするプログラム。
【請求項１３】
請求項１１又は１２において、
前記画像生成部は、
前記原画像の各画素データを前記マーカ画像の各画素データで変換することで、前記表示画像を生成することを特徴とするプログラム。
【請求項１４】
請求項１３において、
前記画像生成部は、
前記原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ及び輝度成分データの少なくとも１つを、前記マーカ画像の各画素データにより変換することで、前記表示画像を生成することを特徴とするプログラム。
【請求項１５】
請求項１１乃至１４のいずれかにおいて、
前記マーカ画像は、前記表示画像の各分割領域単位においてユニークなデータパターンとなる画素データにより構成されることを特徴とするプログラム。
【請求項１６】
請求項１１乃至１５のいずれかにおいて、
前記マーカ画像の各画素データは、Ｍ系列を用いた乱数データにより生成されることを特徴とするプログラム。
【請求項１７】
請求項１１乃至１６のいずれかにおいて、
前記処理部は、
前記マーカ画像を、時間経過に応じて変化させる処理を行うことを特徴とするプログラム。
【請求項１８】
請求項１１乃至１７のいずれかにおいて、
前記処理部は、
前記ポインティング位置を求めるために前記撮像画像と前記マーカ画像との相互相関が演算され、前記相互相関の演算結果の信頼度が求められた場合に、求められた前記信頼度に基づいて、前記マーカ画像を変化させる処理を行うことを特徴とするプログラム。
【請求項１９】
請求項１１乃至１８のいずれかにおいて、
前記処理部は、
前記マーカ画像を、前記原画像に応じて変化させる処理を行うことを特徴とするプログラム。
【請求項２０】
請求項１１乃至１９のいずれかにおいて、
外乱の測定情報を取得する外乱測定情報取得部として、
コンピュータを機能させ、
前記処理部は、
前記マーカ画像を、前記外乱測定情報に基づいて変化させる処理を行うことを特徴とするプログラム。
【請求項２１】
請求項１１乃至２０のいずれかにおいて、
前記画像生成部は、
特定条件が満たされていない場合には、マーカ画像が埋め込まれていない原画像を前記表示画像として出力し、前記特定条件が満たされた場合には、前記マーカ画像が埋め込まれた画像を前記表示画像として出力することを特徴とするプログラム。
【請求項２２】
請求項２１において、
前記画像生成部は、
前記特定条件が満たされた場合に、前記原画像として位置検出用原画像を生成し、前記位置検出用原画像に対して前記マーカ画像が埋め込まれた画像を前記表示画像として出力することを特徴とするプログラム。
【請求項２３】
請求項２１又は２２において、
前記画像生成部は、
ポインティングデバイスからの指示情報に基づいて、位置検出を行うタイミングであると判断した場合に、前記マーカ画像が埋め込まれた画像を前記表示画像として出力することを特徴とするプログラム。
【請求項２４】
請求項２１乃至２３のいずれかにおいて、
前記処理部は、
前記ポインティング位置に基づいて、ゲーム成績演算処理を含むゲーム処理を行い、
前記画像生成部は、
前記ゲーム処理において特定のゲームイベントが発生した場合に、前記マーカ画像が埋め込まれた画像を前記表示画像として出力することを特徴とするプログラム。
【請求項２５】
請求項１１乃至２０のいずれかにおいて、
特定条件が満たされた際の前記表示画像の前記撮像画像に基づいて、前記ポインティング位置が求められることを特徴とするプログラム。
【請求項２６】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１１乃至２５のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項２７】
位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像を生成して表示部に出力する画像生成部と、
前記表示画像の撮像画像に基づいて、前記撮像画像に埋め込まれた前記マーカ画像が検出され、前記撮像画像の撮像領域に対応するポインティング位置が求められた場合に、求められた前記ポインティング位置に基づいて、演算処理を行う処理部と、
を含むことを特徴とする画像生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置検出システム、プログラム、情報記憶媒体及び画像生成装置等に関する。
【背景技術】
【０００２】
従来より、ガン型コントローラを用いて画面上のターゲットオブジェクトをシューティングして楽しむガンゲームと呼ばれる分野のゲームが人気を博している。このガンゲームでは、プレーヤ（操作者）がガン型コントローラの引き金を引くと、ショットの着弾位置（ポインティング位置）が、ガン型コントローラが内蔵する光センサを利用して光学的に検出される。そして、検出された着弾位置にターゲット（標的）オブジェクトが存在する場合には当たりと判定され、ターゲットオブジェクトが存在しない場合には外れと判定される。このようなガンゲームをプレイすることによりプレーヤは、現実世界における射撃を仮想体験できるようになる。
【０００３】
このようなガンゲームに用いられる位置検出システムの従来例として、特許文献１、２に開示される従来技術がある。
【０００４】
例えば特許文献１の従来技術では、表示画面の近傍に少なくとも１つの目標を設け、この目標の位置を撮像画像から検出し、その目標の検出位置に基づいてガン型コントローラによる着弾位置を検出する。また特許文献２の従来技術では、モニタ画面の枠を表示し、この枠の検出位置に基づいてガン型コントローラによる着弾位置を検出する。
【０００５】
しかしながら、これらの従来技術では、目標や枠の検出位置に基づいて着弾位置を検出するため、検出精度が低いという課題がある。また、ゲーム開始前の初期設定として、目標の位置を特定するためのキャリブレーションが必要になるため、プレーヤに煩雑な作業を強いてしまうという課題がある。
【０００６】
また、画像に対して秘匿データを埋め込む電子透かしと呼ばれる技術が知られている。しかしながら、この電子透かしにおいて埋め込まれるデータは、位置検出用のデータではなく、ガンゲーム等の位置検出システムに電子透かしの技術を適用した例については知られていない。
【特許文献１】特開平８−２２６７９３号公報
【特許文献２】特開平１１−３１９３１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明の幾つかの態様によれば、高い精度でポインティング位置の検出が可能な位置検出システム、プログラム、情報記憶媒体及びゲーム装置を提供できる。
【課題を解決するための手段】
【０００８】
本発明は、ポインティング位置を検出するための位置検出システムであって、位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像のうち、前記ポインティング位置に対応する撮像領域の画像が撮像デバイスにより撮像された場合に、前記撮像デバイスからの撮像画像を取得する画像取得部と、取得された前記撮像画像に基づいて、前記撮像画像に埋め込まれた前記マーカ画像を検出する演算処理を行うことで、前記撮像領域に対応する前記ポインティング位置を求める位置検出処理部とを含む位置検出システムに関係する。
【０００９】
本発明によれば、マーカ画像が原画像に対して埋め込まれた表示画像が、撮像デバイスにより撮像されると、その撮像画像が取得される。そして取得された撮像画像に基づいて、マーカ画像を検出する演算処理が行われて、撮像領域に対応するポインティング位置が求められる。このようにすれば、撮像画像に埋め込まれたマーカ画像を検出することで、ポインティング位置が求められるため、高い精度でのポインティング位置の検出が可能になる。
【００１０】
また本発明では、前記表示画像は、前記原画像の各画素データを前記マーカ画像の各画素データで変換することで生成された画像であってもよい。
このようにすれば、原画像の状態を維持しつつ、マーカ画像の埋め込み処理を実現できる。
【００１１】
また本発明では、前記表示画像は、前記原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ及び輝度成分データの少なくとも１つを、前記マーカ画像の各画素データにより変換することで生成された画像であってもよい。
このようにすれば、原画像の各画素のＲ、Ｇ、Ｂ成分や色差成分や輝度成分のデータに対して、マーカ画像のデータを埋め込むことが可能になる。
【００１２】
また本発明では、前記マーカ画像は、前記表示画像の各分割領域単位においてユニークなデータパターンとなる画素データにより構成されてもよい。
このようにすれば、マーカ画像のデータパターンが各分割領域単位でユニークであることを利用して、ポインティング位置を特定できる。
【００１３】
また本発明では、前記マーカ画像の各画素データは、Ｍ系列を用いた乱数データにより生成されてもよい。
このようにすれば、マーカ画像のユニークなデータパターンを簡素な手法で生成できる。
【００１４】
また本発明では、前記撮像デバイスは、前記表示画像の表示領域よりも狭い一部の領域を前記撮像領域として、画像を撮像するようにしてもよい。
このようにすれば、例えば撮像デバイスの撮像画素数が少ない場合にも、広い領域を撮像する場合に比べて、相対的な解像度を高くでき、ポインティング位置の検出精度を向上できる。
【００１５】
また本発明では、前記位置検出処理部は、前記撮像画像と前記マーカ画像との相互相関を演算し、前記相互相関の演算結果に基づいて前記ポインティング位置を求めてもよい。
このようにすれば、撮像画像とマーカ画像との相互相関演算により、高い精度でのポインティング位置の検出が可能になる。
【００１６】
また本発明では、前記位置検出処理部は、前記相互相関の演算結果又は前記マーカ画像に対してハイパスフィルタ処理を行ってもよい。
このようにすれば、原画像に起因するノイズのパワーを低減できるため、検出精度を向上できる。
【００１７】
また本発明では、前記相互相関の最大値と前記相互相関の値の分布とに基づいて、前記相互相関の演算結果の信頼度を求める信頼度演算部を含んでもよい。
このようにすれば、求められた信頼度を利用した様々な処理が可能になる。
【００１８】
また本発明では、前記撮像画像に対して画像補正を行う画像補正部を含み、前記位置検出処理部は、前記画像補正部での画像補正後の撮像画像に基づいて、前記ポインティング位置を求めてもよい。
このような画像補正を行えば、撮像デバイスとの位置関係等が変化した場合にも、適正な位置検出を実現できる。
【００１９】
また本発明は、位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像を生成して表示部に出力する画像生成部と、前記表示画像の撮像画像に基づいて、前記撮像画像に埋め込まれた前記マーカ画像が検出され、前記撮像画像の撮像領域に対応するポインティング位置が求められた場合に、求められた前記ポインティング位置に基づいて、演算処理を行う処理部とを含む画像生成装置に関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【００２０】
本発明によれば、マーカ画像が原画像に対して埋め込まれた表示画像が生成されて、表示部に表示される。そして、この表示画像の撮像画像に基づいてマーカ画像が検出されて、ポインティング位置が求められると、求められたポインティング位置に基づいて、様々な演算処理が行われるようになる。このようにすれば、撮像画像に埋め込まれたマーカ画像を検出することで、ポインティング位置が求められるため、高い精度でポインティング位置を検出して、様々な演算処理に利用することが可能になる。
【００２１】
また本発明では、前記処理部は、前記ポインティング位置に基づいて、ゲーム成績演算処理を含むゲーム処理を行ってもよい。
このようにすれば、高い精度で求められたポインティング位置を用いたゲーム成績演算処理等のゲーム処理が可能になる。
【００２２】
また本発明では、前記画像生成部は、前記原画像の各画素データを前記マーカ画像の各画素データで変換することで、前記表示画像を生成してもよい。
【００２３】
また本発明では、前記画像生成部は、前記原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ及び輝度成分データの少なくとも１つを、前記マーカ画像の各画素データにより変換することで、前記表示画像を生成してもよい。
【００２４】
また本発明では前記マーカ画像は、前記表示画像の各分割領域単位においてユニークなデータパターンとなる画素データにより構成されてもよい。
【００２５】
また本発明では、前記マーカ画像の各画素データは、Ｍ系列を用いた乱数データにより生成されてもよい。
【００２６】
また本発明では、前記処理部は、前記マーカ画像を、時間経過に応じて変化させる処理を行ってもよい。
このようにすれば、マーカ画像のトータルの情報量を増やすことができ、検出精度を向上できる。
【００２７】
また本発明では、前記処理部は、前記ポインティング位置を求めるために前記撮像画像と前記マーカ画像との相互相関が演算され、前記相互相関の演算結果の信頼度が求められた場合に、求められた前記信頼度に基づいて、前記マーカ画像を変化させる処理を行ってもよい。
このようにすれば、位置検出の信頼度が高いマーカ画像が原画像に埋め込まれるようになるため、検出精度を向上できる。
【００２８】
また本発明では、前記処理部は、前記マーカ画像を、前記原画像に応じて変化させる処理を行ってもよい。
このようにすれば原画像の状態に適合したマーカ画像を埋め込むことが可能になる。
【００２９】
また本発明では、外乱の測定情報を取得する外乱測定情報取得部を含み、前記処理部は、前記マーカ画像を、前記外乱測定情報に基づいて変化させる処理を行ってもよい。
このようにすれば、外乱の測定情報に応じて最適なマーカ画像を埋め込むことができるため、適正な位置検出を実現できる。
【００３０】
また本発明では、前記画像生成部は、特定条件が満たされていない場合には、マーカ画像が埋め込まれていない原画像を前記表示画像として出力し、前記特定条件が満たされた場合には、前記マーカ画像が埋め込まれた画像を前記表示画像として出力してもよい。
このようにすれば、特定条件が満たされた場合にだけ、マーカ画像が埋め込まれた画像表示されるようになるため、マーカ画像の存在を目立たなくすることが可能になり、表示画像の品質を向上できる。
【００３１】
また本発明では、前記画像生成部は、前記特定条件が満たされた場合に、前記原画像として位置検出用原画像を生成し、前記位置検出用原画像に対して前記マーカ画像が埋め込まれた画像を前記表示画像として出力してもよい。
このようにすれば、位置検出用原画像を利用した演出等の実現も可能になる。
【００３２】
また本発明では、前記画像生成部は、ポインティングデバイスからの指示情報に基づいて、位置検出を行うタイミングであると判断した場合に、前記マーカ画像が埋め込まれた画像を前記表示画像として出力してもよい。
このようにすれば、ポインティングデバイスからの指示情報に基づいて、位置検出を行うタイミングであると判断された場合に、マーカ画像が埋め込まれた画像が表示されるようになるため、マーカ画像の存在を目立たなくすることが可能になり、表示画像の品質を向上できる。
【００３３】
また本発明では、前記処理部は、前記ポインティング位置に基づいて、ゲーム成績演算処理を含むゲーム処理を行い、前記画像生成部は、前記ゲーム処理において特定のゲームイベントが発生した場合に、前記マーカ画像が埋め込まれた画像を前記表示画像として出力してもよい。
このようにすれば、特定のゲームイベントが発生した場合に、マーカ画像が埋め込まれた画像が表示されるようになるため、ゲームイベントに応じたマーカ画像の埋め込み処理を実現できる。
【００３４】
また本発明では、特定条件が満たされた際の前記表示画像の前記撮像画像に基づいて、前記ポインティング位置が求められてもよい。
このようにすれば、例えば特定条件が満たされたか否かに依らずにマーカ画像が埋め込まれた表示画像を常に表示しておき、特定条件が満たされた際の表示画像の撮像画像を取得することで、ポインティング位置を求めることができる。例えば、ポインティングデバイスからの指示情報に基づいて、位置検出を行うタイミングであると判断した場合や、ゲーム処理において特定のゲームイベントが発生した場合に、特定条件が満たされたと判断し、そのタイミングでの撮像画像を用いて、ポインティング位置を求めることが可能になる。
【発明を実施するための最良の形態】
【００３５】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３６】
１．位置検出システム
図１に本実施形態の位置検出システムの構成例を示す。図１において、ＣＲＴ、ＬＣＤ等で構成される表示部１９０には、マーカ画像が埋め込まれた表示画像が表示されている。例えば、ゲーム画像等の原画像（ゲームキャラクタ等のオブジェクトが表示される画像、背景画像）に対して、位置検出用パターンであるマーカ画像（位置検出用画像、電子透かし画像）を埋め込むことで（マーカ画像を合成することで）、表示画像が生成されて、表示部１９０に表示される。具体的には、この表示画像は、原画像の各画素データ（ＲＧＢデータやＹＵＶデータ）を、マーカ画像の各画素データ（原画像の各画素に対応したデータ）で変換することで生成された画像である。更に具体的には、表示画像は、原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ及び輝度成分データの少なくとも１つを、マーカ画像の各画素データ（Ｍ配列等）により変換することで生成された画像である。この場合、例えばマーカ画像は、表示画像（表示画面）の各分割領域単位（複数行、複数列の画素の領域単位）においてユニークなデータパターンとなる画素データにより構成される。即ち表示画像の任意の第１の分割領域と第２の分割領域において、マーカ画像の位置検出用パターンは異なったパターンになっている。また、マーカ画像の各画素データは、例えばＭ系列を用いた乱数データ（疑似乱数データ）により生成してもよい。
【００３７】
位置検出システム１０は、画像取得部２０、画像補正部２２、位置検出処理部２４、信頼度演算部２６を含む。なお、本実施形態の位置検出システム１０は図１の構成に限定されず、これらの一部の構成要件（例えば画像補正部、信頼度演算部等）を省略したり、他の構成要件（例えば画像合成部）を追加するなどの様々な変形実施が可能である。例えば、後述する画像生成装置で生成されるゲーム画像等の原画像に対して、マーカ画像を埋め込む機能（合成機能）を、位置検出システム１０に持たせてもよい。
【００３８】
画像取得部２０は、カメラ１２（広義には撮像デバイス）により撮像（撮影）された撮像画像を取り込んで取得する。具体的には、位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像（原画像とマーカ画像の合成画像）のうち、ポインティング位置ＰＰ（別の言い方をすれば撮像位置）に対応する撮像領域ＩＭＲの画像が、カメラ１２により撮像された場合に、その撮像画像を取得する。
【００３９】
なお、ポインティング位置ＰＰは、例えば撮像領域ＩＭＲ内の位置であり、撮像領域ＩＭＲの中心位置（注視点位置）であってもよいし、四隅の位置等であってもよい。また図１では、説明の都合上、撮像領域ＩＭＲは、大きな領域になっているが、実際には表示画面に対して十分に小さな領域になる。また、カメラ１２の実際の撮像領域のうち、カメラ１２の注視点位置付近の領域を、位置検出用の撮像領域に設定し、その撮像領域の撮像画像に基づいてポインティング位置ＰＰを検出することができる。
【００４０】
即ちカメラ１２が内蔵する撮像デバイスは、表示画像の表示領域よりも狭い一部の領域を撮像領域ＩＭＲとして、画像を撮像する。そして画像取得部２０が、このようにして撮像された撮像画像を取得し、位置検出処理部２４が、この一部の領域である撮像領域ＩＭＲでの撮像画像に基づいてポインティング位置ＰＰを検出する。こうすれば、撮像デバイスの画素数が少なくても、相対的に解像度を高くでき、ポインティング位置ＰＰの検出精度を向上できる。
【００４１】
画像補正部２２は、撮像画像に対する画像補正処理を行う。具体的には、例えば撮像画像の回転処理、スケーリング処理の少なくとも一方を行う。例えばカメラ１２のパン、チルト、視軸回りの回転、表示画面との距離の変化に対応して、それを打ち消すための回転処理やスケーリング処理などの画像補正を行う。例えばカメラ１２に回転等を検出するためのセンサを設け、画像補正部２２は、このセンサからの検出情報に基づいて、撮像画像の補正処理を行う。或いは、表示画面の画素やブラックマトリックスなどの直線部分の傾きを、撮像画像に基づいて検出し、この検出結果に基づいて撮像画像の補正処理を行ってもよい。
【００４２】
位置検出処理部２４は、取得された撮像画像（例えば画像補正後の撮像画像）に基づいて、ポインティング位置ＰＰ（指示位置）の検出処理を行う。例えば、取得された撮像画像に基づいて、撮像画像に埋め込まれたマーカ画像を検出する演算処理を行うことで、撮像領域ＩＭＲに対応するポインティング位置ＰＰ（指示位置）を求める。
【００４３】
位置検出処理部２４が行う演算処理としては、撮像画像とマーカ画像のマッチングの度合いを調べる画像マッチング処理がある。例えば撮像画像と、マーカ画像の各分割領域との画像マッチング処理を行い、画像のマッチング度合いが最も大きくなる分割領域の位置を、ポインティング位置ＰＰとして検出する。
【００４４】
更に具体的には位置検出処理部２４は、画像マッチング処理として、撮像画像とマーカ画像との相互相関を演算する処理を行う。そして相互相関の演算結果（相互相関値、相互相関の最大値）に基づいて、ポインティング位置ＰＰを求める。なおこの場合に、相互相関の演算結果や、マーカ画像に対して、ハイパスフィルタ処理を行ってもよい。このようにすれば、相互相関の演算結果の高周波数領域だけを利用することができ、検出精度を向上できる。即ち、原画像は低周波数領域に大きなパワーを持っていると考えられるため、この低周波数成分をハイパスフィルタ処理で除去することで、検出精度を向上できる。
【００４５】
信頼度演算部２６は信頼度の演算処理を行う。例えば撮像画像とマーカ画像との画像マッチング処理の結果に対する信頼度を求める。そして、信頼度が高い場合には、得られたポインティング位置の情報を正常な情報として出力し、信頼度が低い場合には、エラー情報等を出力する。例えば位置検出処理部２４が、画像マッチング処理として相互相関の演算処理を行う場合には、信頼度演算部２６は、相互相関の最大値と相互相関の値の分布とに基づいて、相互相関の演算結果の信頼度を求めればよい。
【００４６】
図２に本実施形態の第１の比較例の手法を示す。この第１の比較例では、表示部（ディスプレイ）の４隅等に赤外線ＬＥＤ５０１、５０２、５０３、５０４を配置する。そして図２のＡ１に示すように、カメラ１２により撮像された画像から、これらの赤外線ＬＥＤ５０１〜５０４の位置を検出し、これらの位置に基づいて、Ａ２に示すようにカメラ１２のポインティング位置ＰＰを求める。
【００４７】
しかしながら、この第１の比較例では、カメラ１２以外に、赤外線ＬＥＤ５０１〜５０４を用意する必要がある。このため、コストの増加等を招く。また、赤外線ＬＥＤ５０１〜５０４の配置位置をカメラ１２に認識させるために、ゲームプレイの開始前に、初期設定としてキャリブレーションを行う必要がある。従って、プレーヤに対して煩雑な作業を強いることになるという問題がある。また、限られた個数の赤外線ＬＥＤ５０１〜５０４に基づいてポインティング位置を検出しているため、検出精度が低いと共に、外乱耐性も低いという問題もある。
【００４８】
この点、本実施形態の位置検出手法によれば、図２に示すような赤外線ＬＥＤ５０１〜５０４を設けなくても済むため、低コスト化を図れる。また、キャリブレーション処理は行わなくても済むため、プレーヤの利便性を向上できる。また、マーカ画像が埋め込まれた表示画像を用いて、ポインティング位置が検出されるため、図２の第１の比較例に比べて検出精度や外乱耐性を向上できる。
【００４９】
図３（Ａ）、図３（Ｂ）に本実施形態の第２の比較例の手法を示す。この第２の比較例では、マーカ画像の埋め込み処理は行わずに、原画像についての画像マッチング処理だけを行っている。即ち図３（Ａ）に示すように、カメラ１２が内蔵する撮像デバイスにより、撮像領域ＩＭＲの撮像画像を取得し、この撮像画像と原画像との画像マッチング処理を行って、ポインティング位置ＰＰを求める。
【００５０】
この第２の比較例では、例えば図３（Ｂ）のＢ１に示すような撮像領域ＩＭＲ１がカメラ１２により撮像された場合には、Ｂ２に示すようにその撮像位置を特定できる。しかしながら、Ｂ３に示すような撮像領域ＩＭＲ２が撮像された場合には、Ｂ４、Ｂ５、Ｂ６のいずれの位置が撮像されたのかを特定できないという問題がある。
【００５１】
そこで本実施形態では、図４に示すような位置検出用パターンであるマーカ画像を用意する。そして、このマーカ画像を原画像に対して埋め込む（合成する）。例えば電子透かしなどの手法と同様の手法でデータを埋め込んで、表示画像を生成し、この表示画像を表示部１９０に表示する。
【００５２】
そして、図５のＣ１に示すようにカメラ１２（撮像デバイス）により撮像領域ＩＭＲ１の撮像画像が撮像されると、この撮像画像とマーカ画像とのパターンマッチングにより、Ｃ２に示すように撮像領域ＩＭＲ１の撮像位置であるポインティング位置ＰＰ１が特定される。またＣ３に示すようにカメラ１２により撮像領域ＩＭＲ２の撮像画像が撮像されると、この撮像画像とマーカ画像とのパターンマッチングにより、Ｃ４に示すように撮像領域ＩＭＲ２の撮像位置であるポインティング位置ＰＰ２が特定される。即ち図３（Ｂ）のＢ３、Ｂ４、Ｂ５、Ｂ６では特定できなかったポインティング位置の特定が、マーカ画像を用いることで可能になる。従って、赤外線ＬＥＤ等を設けることなく、高い精度でのポインティング位置の特定が可能になる。
【００５３】
図６（Ａ）に本実施形態のマーカ画像を概念的に示す。このマーカ画像は、表示画面上の位置を検出するためのパターンである。例えば電子透かしでは、ユーザに見られたくない秘匿情報を埋め込むが、本実施形態では、このような秘匿情報ではなく、位置検出用のパターンを埋め込む。
【００５４】
この場合の位置検出用パターンは図６（Ａ）に模式的に示されるように、表示画像（表示画面）の各分割領域においてユニークなデータのパターンになっている。例えば図６（Ａ）では、表示画像の領域が８行、８列の分割領域に分割され、各分割領域は、例えば複数行、複数列の画素の領域になっている。また各分割領域には００〜７７というようにユニークなマーカ画像のデータが設定されている。即ち、任意の２つの撮像領域の撮像画像に対して埋め込まれたマーカ画像が異なるような、特殊なパターンを設定する。
【００５５】
例えば図６（Ｂ）のＤ１では、撮像領域ＩＭＲの撮像画像から、「５５」となるマーカ画像のデータが抽出（検出）されている。そしてマーカ画像のデータが「５５」となる分割領域は、Ｄ２に示す領域となる。これにより、ポインティング位置ＰＰが特定される。
【００５６】
この場合、撮像画像と原画像とがマッチングする必要はなく、撮像画像に埋め込まれたマーカ画像と、それに対応する分割領域でのマーカ画像とがマッチングすればよい。即ち、図６（Ｂ）のＤ１に示す撮像領域ＩＭＲの撮像画像に埋め込まれたマーカ画像と、このＤ１に示す分割領域でのマーカ画像とがマッチングすると、Ｄ２に示すようにポインティング位置ＰＰが特定される。
【００５７】
２．位置検出処理
次に位置検出処理の一例について説明する。なお本実施形態の位置検出処理は以下に示す手法に限定されず、種々の画像マッチング処理を用いた様々な変形実施が可能である。
【００５８】
２．１  Ｍ配列のマーカ画像を用いた位置検出
マーカ画像のデータパターンはＭ系列（maximal-length sequence）の乱数を用いて設定できる。具体的にはＭ系列を２次元に拡張したＭ配列によってマーカ画像の各画素データを設定する。なおマーカ画像のデータ生成に使用する乱数データは、Ｍ系列に限定されず、例えばＧｏｌｄ系列などの種々のＰＮ系列を採用できる。
【００５９】
Ｍ系列は、ある長さのシフトレジスタとフィードバックにより生成される符号系列のうち、その周期が最長となる系列である。例えばｋ次（ｋはシフトレジスタの段数に相当）のＭ系列の周期はＬ＝２ｋ−１と表される。そしてＭ配列とは、Ｍ系列乱数の２次元配列である。
【００６０】
具体的には、ｋ次のＭ系列ａ０〜ａＬ−１を作成し、これを次の規則でＭ行Ｎ列の配列であるＭ配列に配置する。
（Ｉ）ａ０を、Ｍ行Ｎ列の配列の一番左上に配置する。
（II）ａ０の右下にａ１を配置し、以下、順に右下に並べて行く。
（III）配列の上端と下端はつながっているものとして取り扱う。つまり、最下行まで来たら、次は最上行に移る。同様に、配列の左端と右端もつながっているものとして取り扱う。
【００６１】
例えばｋ＝４、Ｌ＝１５、Ｍ＝３、Ｎ＝５の場合には、下記に示すような３行、５列のＭ配列が生成される。
【数１】
2009245349.tif 000003
【００６２】
本実施形態では、このようにして生成されたＭ配列をマーカ画像の各画素データに設定する。そして原画像の各画素データを、Ｍ配列により設定されたマーカ画像の各画素データで変換することで、マーカ画像の埋め込み処理を実現する。
【００６３】
例えば図７に、Ｍ配列により生成されたマーカ画像の位置検出用パターンのデータ例を示す。各マスが画素を表し、各マスに設定される「０」、「１」がマーカ画像の画素データを表す。Ｍ系列の乱数（疑似乱数）は「０」と「１」の２値をとる乱数列であり、これを２次元化したＭ配列も「０」と「１」の２値をとるが、図７では、「０」を「−１」と表している。原画像とマーカ画像の合成処理のためには、このように「０」を「−１」とすることが、処理の都合上、好ましい。
【００６４】
図８は、原画像（ゲーム画像）の左上の一部分でのデータ例である。各マスが画素を表し、各マスに設定される数値が、原画像の画素データを表す。この画素データとしては、例えば原画像の各画素のＲ成分データ、Ｇ成分データ、Ｂ成分データ、色差成分データ（Ｕ、Ｖ）、輝度成分データ（Ｙ）等が考えられる。
【００６５】
図９は、原画像にマーカ画像を埋め込むことで得られる表示画像の左上の一部分でのデータ例である。図９の表示画像データでは、図８の原画像の各画素データが、Ｍ配列によって＋１又は−１されている。即ち原画像の各画素データが、Ｍ配列により設定されたマーカ画像の各画素データで変換されている。
【００６６】
図１０は、撮像デバイス（カメラ）の撮像画像のデータ例である。具体的には図９のＥ１に示す部分を撮像した場合の撮像画像のデータ例である。
【００６７】
本実施形態では図１０の撮像画像のデータから、撮像位置であるポインティング位置を検出する。具体的には撮像画像とマーカ画像との相互相関を演算し、相互相関の演算結果に基づいてポインティング位置を検出する。
【００６８】
例えば図１１に撮像画像とマーカ画像との相互相関演算により得られた相互相関値の例を示す。図１１のＥ２に示す部分が図９のＥ１に示す部分に対応する。そして図１１のＥ３に示す位置での値が最大値＝２５５になっている。このＥ３に示す位置が撮像位置に対応することになる。即ち撮像画像とマーカ画像の相互相関値の最大値を探索することで、撮像位置に対応するポインティング位置を検出できる。なお図１１のＥ３では、撮像領域の左上の位置がポインティング位置として特定されているが、撮像領域の中心位置や右上、左下、右下の位置であってもよい。
【００６９】
２．２  処理フロー
次に本実施形態の位置検出手法の処理フローについて図１２〜図１５のフローチャートを用いて説明する。
【００７０】
図１２はマーカ画像の埋め込み処理のフローチャートである。まず、原画像（ゲーム画像）を取得（生成）する（ステップＳ１）。次に、図４に示すように原画像に対してマーカ画像（Ｍ配列）を合成して、図９に例示される、マーカ画像が合成された表示画像を生成する（ステップＳ２）。このような原画像へのマーカ画像の合成（埋め込み）は、後述する画像生成装置（ゲーム装置）が実行してもよいし、ガン型コントローラ等のポインティングデバイス（位置検出装置）が、画像生成装置から原画像を受けて、実行してもよい。
【００７１】
図１３は位置検出処理のフローチャートである。まず撮像デバイス（カメラ）により、図５、図１０で説明したように、表示部１９０の表示画面を撮像する（ステップＳ１１）。次に、撮像画像に対して回転、スケーリング等の画像補正を行う（ステップＳ１２）。即ち撮像デバイスの位置や方向のずれを担保するための画像補正を行う。そして、撮像画像とマーカ画像の相互相関演算処理を行い（ステップＳ１３）、図１１で説明したような相互相関値を求める。
【００７２】
次に、相互相関値の最大値の位置を探索して、ポインティング位置（指示位置）を求める（ステップＳ１４）。例えば図１１ではＥ３に示す位置において相互相関値が最大値になっているため、この位置がポインティング位置として求められる。
【００７３】
次に、ポインティング位置の信頼度の演算処理を行う（ステップＳ１５）。そして、そのポインティング位置の信頼度が高い場合には、そのポインティング位置の情報を、後述する画像生成装置（ゲーム装置）等に出力する（ステップＳ１６、Ｓ１７）。一方、信頼度が低い場合にはエラー情報を出力する（ステップＳ１８）。
【００７４】
図１４は、図１３のステップＳ１３の相互相関演算処理のフローチャートである。まず、図１０で説明した撮像画像に対して２次元ＤＦＴ処理を行う（ステップＳ２１）。また図７で説明したマーカ画像に対して２次元ＤＦＴ処理を行う（ステップＳ２２）。
【００７５】
次に、マーカ画像の２次元ＤＦＴ処理結果に対してハイパスフィルタ処理を行う（ステップＳ２３）。ゲーム画像等の原画像は、低周波数領域に大きなパワーを持つ一方で、Ｍ配列の画像は全周波数領域で等しいパワーを持つ。そして原画像の低周波数領域でのパワーは、位置検出のノイズになる。従って、低周波成分を除去するハイパスフィルタ処理により、低周波数領域のパワーを減少させれば、ノイズのパワーが減少し、誤検出を低減できる。
【００７６】
なお、相互相関演算の結果に対してハイパスフィルタ処理を行ってもよいが、相互相関をＤＦＴで実現する場合、Ｍ配列であるマーカ画像の２次元ＤＦＴの結果に対してハイパスフィルタ処理を行った方が、処理を高速化できる。またマーカ画像をリアルタイムに変化させない場合には、マーカ画像に対する２次元ＤＦＴ処理や、２次元ＤＦＴの処理結果に対するハイパスフィルタ処理は、初期化時に１回だけ行えばよい。
【００７７】
次に、ステップＳ２１で得られた撮像画像の２次元ＤＦＴの処理結果と、ステップＳ２３で得られたハイパスフィルタ処理後のマーカ画像の２次元ＤＦＴの処理結果の乗算処理を行う（ステップＳ２４）。そして乗算結果に対して逆２次元ＤＦＴ処理を行って、図１１に示すような相互相関値を求める（ステップＳ２５）。
【００７８】
図１５は、図１３のステップＳ１５の信頼度演算処理のフローチャートである。まず相互相関値を、平均＝０、分散＝１に正規化する（ステップＳ３１）。そして、図１１のＥ３で説明したように、相互相関値の最大値を探索する（ステップＳ３２）。
【００７９】
次に、相互相関値の分布が正規分布であると仮定して、相互相関値の最大値の出現確率を求める（ステップＳ３３）。そして、相互相関値の最大値の出現確率と、相互相関値の個数に基づき、信頼度を求める（ステップＳ３４）。
【００８０】
２．３  相互相関演算
次に、図１４の相互相関の演算処理の詳細について説明する。まず２次元ＤＦＴについて説明する。
【００８１】
例えばＭ×Ｎ画素の画像データｘ（ｍ，ｎ）の２次元ＤＦＴ（２次元離散フーリエ変換）であるＸ（ｋ，ｌ）は下式（１）のように表される。
【数２】
2009245349.tif 000004
【００８２】
但し、ｋ＝０、１、・・・・・・、Ｍ−１、ｌ＝０、１、・・・・、Ｎ−１であり、ｉは虚数単位である。
【００８３】
この２次元ＤＦＴは、１次元ＤＦＴを用いて求めることができる。まず、ｘ（ｍ，ｎ）の行方向に１行ずつ１次元ＤＦＴを行って、配列Ｘ’を作成する。つまり、配列ｘ（ｍ，ｎ）の１行目ｘ（０，ｎ）の１次元ＤＦＴを行い、下式（２）に示すように、その１次元ＤＦＴの結果を配列Ｘ’の１行目に設定する。
【数３】
2009245349.tif 000005
【００８４】
同様に、２行目の１次元ＤＦＴを行い、その結果をＸ’の２行目に設定する。以下、この処理をＮ行分だけ繰り返すことで、配列Ｘ’が得られる。次に、配列Ｘ’を、列方向に１列ずつ１次元ＤＦＴを行う。その結果が、２次元ＤＦＴであるＸ（ｋ，ｌ）になる。逆２次元ＤＦＴについても、同様に、逆１次元ＤＦＴを行・列ごとに適用すればよい。
【００８５】
１次元ＤＦＴとしては、様々な高速フーリエ変換（ＦＦＴ）アルゴリズムが知られている。これらのアルゴリズムを用いることで、高速に２次元ＤＦＴ処理を実行することができる。
【００８６】
なおＸ（ｋ、ｌ）は、画像データｘ（ｍ，ｎ）のスペクトルに対応している。例えば画像データにハイパスフィルタ処理を行う場合には、Ｘ（ｋ、ｌ）の低域成分を削除すればよい。即ち、低域成分は、Ｘ（ｋ、ｌ）の配列の４隅に相当するので、その４隅の部分の値を０に置き換えることで、ハイパスフィルタ処理を実現できる。
【００８７】
次に相互相関について説明する。二つのＭ行Ｎ列の２次元配列Ａ、Ｂがあったとする。この配列Ａ、Ｂの相互相関Ｒ（ｉ，ｊ）は下式（３）のように表される。
【数４】
2009245349.tif 000006
【００８８】
但し、ｍ＋ｉ＞Ｍ−１になったときには、ｍ＋ｉ−Ｍに設定する。つまり、配列Ｂの右端と左端は循環的につながっているものと考える。上端、下端についても同様である。
【００８９】
ＡとＢが同一のＭ配列のときは、Ｒ（０，０）だけが突出して大きな値をとり、他は０に近い値になる。Ａをｉ行、ｊ列だけずらすと、Ｒ（ｉ，ｊ）だけが突出して大きな値をとる。この性質を利用すれば、２つのＭ配列の位置のずれを、Ｒの最大値から求めることができる。
【００９０】
相互相関Ｒを上式（３）で直接計算する代わりに、２次元ＤＦＴを用いて求めることもできる。この場合、高速フーリエ変換アルゴリズムを用いることができるので、直接計算する場合よりも、高速に処理できる。
【００９１】
まず、ＡとＢに対して、それぞれ2次元ＤＦＴ処理を行い、得られた結果をＡ’、Ｂ’とする。次に、Ａ’とＢ’の対応する値を乗算し、Ｃを作成する。つまり、Ａ’のｍ行ｎ列目の値とＢ’のｍ行ｎ列目の値を乗算（複素数であるため複素乗算）し、Ｃのｍ行ｎ列目の値とする。即ちＣ（ｍ，ｎ）＝Ａ’（ｍ，ｎ）×Ｂ’（ｍ，ｎ）となる。このＣ（ｍ，ｎ）に対して逆２次元ＤＦＴを行えば、Ｒ（ｉ，ｊ）が求まる。
【００９２】
２．４  信頼度
次に、図１５に示す信頼度の演算処理の詳細について説明する。ここで、図１６に示すように相互相関は正規分布になっていると仮定する。
【００９３】
まず相互相関Ｒ（ｉ，ｊ）に含まれるＮ×Ｍ個のデータの平均と分散を求め、これを用いて、Ｒ（ｉ，ｊ）を、平均＝０、分散＝１に正規化する。そして図１６のＦ１に示すように、正規化されたデータの最大値（これが、ポインティング位置に対応するデータである）をｕとする。この最大値ｕの正規分布における上側確率Ｐ（ｕ）を求める。即ち最大値ｕの正規分布における生起確率を求める。
【００９４】
例えば平均＝０、分散＝１の正規分布の上側確率Ｐ（ｕ）は下式（４）のように表される。
【数５】
2009245349.tif 000007
【００９５】
この上側確率Ｐ（ｕ）を求めるには、例えば下式（５）に示されるShentonの連分数展開を用いる。
【数６】
2009245349.tif 000008
【００９６】
この時、信頼度ｓを下式（６）のように定義する。
【数７】
2009245349.tif 000009
【００９７】
この信頼度ｓは、０〜１の値であり、信頼度ｓが１に近いほど、最大値ｕから求められた位置情報（ポインティング位置、撮像位置）が信頼できることを意味する。この信頼度ｓは、位置情報が正確である確率ではない。即ちＰ（ｕ）は、マーカ画像の透かしを挿入しない場合に、この位置情報の値が出てくる確率に相当し、信頼度ｓは、１−Ｐ（ｕ）に応じた値であり、例えば上式（６）のようにｓ＝｛１−Ｐ（ｕ）｝Ｎ×Ｍと表される。つまり、信頼度ｓが１に近い場合には、マーカ画像の透かしが挿入されていないとは考えづらいため、マーカ画像の透かしが検出されており、位置情報は信頼できると考える。
【００９８】
なお、確率Ｐ（ｕ）をそのまま信頼度として利用することも可能である。即ち、信頼度の大小関係と、Ｐ（ｕ）の大小関係は一致するため、単に「信頼度が所定値以上の場合にだけ、それに対応する位置情報を信頼する」という使い方であれば、Ｐ（ｕ）をそのまま信頼度として使用できる。
【００９９】
３．画像生成装置
次に本実施形態の位置検出システムが適用される画像生成装置やポインティングデバイス（ガン型コントローラ）の構成例について図１７を用いて説明する。なお本実施形態の画像生成装置等は図１７の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。例えば図１７では、画像補正部４４、位置検出処理部４６、信頼度演算部４８が、ガン型コントローラ３０側に設けられているが、これらを画像生成装置９０側に設けてもよい。
【０１００】
図１７では、プレーヤは、銃を模して作られたガン型コントローラ３０（広義にはポインティングデバイス、シューティングデバイス）を持ち、表示部１９０の画面上に映し出されるターゲットオブジェクト（標的）を狙って、引き金（トリガ）３４を引く。すると、ガン型コントローラ３０の撮像デバイス３８により、ガン型コントローラ３０のポインティング位置に対応する撮像領域ＩＭＲの画像が撮像される。そして得られた撮像画像に基づいて図１〜図１６で説明した手法により、ガン型コントローラ３０（ポインティングデバイス）のポインティング位置ＰＰ（指示位置）が検出される。そしてガン型コントローラ３０のポインティング位置ＰＰが、画面上に表示されるターゲットオブジェクトの位置と一致した場合には当たりと判定され、一致しなかった場合には外れと判定される。
【０１０１】
ガン型コントローラ３０は、銃の形を模して形成された指示体３２（ケーシング）と、指示体３２の握り部に設けられた引き金３４と、指示体３２の銃口付近に内蔵されるレンズ３６（光学系）及び撮像デバイス３８を含む。また処理部４０や通信部５０を含む。なお、ガン型コントローラ３０（ポインティングデバイス）は図１７の構成に限定されず、これらの構成要素の一部を省略したり、他の構成要素（記憶部等）を追加するなどの種々の変形実施が可能である。
【０１０２】
撮像デバイス３８は、ＣＣＤやＣＭＯＳセンサなどの画像の撮像が可能なセンサにより構成される。処理部４０（制御回路）は、ガン型コントローラ全体の制御や指示位置の演算などを行う。通信部５０は、本体装置である画像生成装置９０との間でのデータの通信処理を行う。なお、処理部４０や通信部５０の機能は、例えば、ＡＳＩＣなどのハードウェアにより実現してもよいし、各種プロセッサ（ＣＰＵ）とソフトウェアの組み合わせにより実現してもよい。
【０１０３】
処理部４０は、画像取得部４２、画像補正部４４、位置検出処理部４６、信頼度演算部４８を含む。
【０１０４】
画像取得部４２は、撮像デバイス３８からの撮像画像を取得する。具体的には、マーカ画像が原画像に対して合成された表示画像のうち、ポインティング位置ＰＰに対応する撮像領域ＩＭＲの画像が撮像デバイス３８により撮像された場合に、その撮像画像を取り込む。画像補正部４４は、撮像画像に対して回転処理やスケーリング処理などの画像補正を行う。
【０１０５】
位置検出処理部４６は、撮像画像に基づいて、撮像画像に合成されたマーカ画像を検出する演算処理を行って、撮像領域ＩＭＲに対応するポインティング位置ＰＰを求める。具体的には撮像画像とマーカ画像との相互相関演算により、ポインティング位置ＰＰを求める。信頼度演算部４８はポインティング位置ＰＰの信頼度を演算する。具体的には、相互相関の最大値と相互相関の値の分布とに基づいて、信頼度を求める。
【０１０６】
画像生成装置９０（本体装置）は、処理部１００、画像生成部１５０、記憶部１７０、インターフェース（Ｉ／Ｆ）部１７８、通信部１９６を含む。なお、これらの構成要素の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【０１０７】
処理部１００（プロセッサ）は、ガン型コントローラ３０などの操作部からのデータや、プログラムなどに基づいて、装置全体の制御やゲーム処理などの種々の処理を行う。具体的には処理部１００は、表示部１９０の表示画像の撮像画像に基づいて、撮像画像に埋め込まれたマーカ画像が検出され、撮像領域ＩＭＲに対応するポインティング位置ＰＰが求められた場合に、求められたポインティング位置ＰＰに基づいて、種々の演算処理を行う。例えばポインティング位置に基づいて、ゲーム成績演算処理を含むゲーム処理を行う。この処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＧＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【０１０８】
画像生成部１５０（描画部）は、処理部１００で行われる種々の処理の結果に基づいて描画処理を行い、ゲーム画像を生成し、表示部１９０に出力する。例えば、いわゆる３次元ゲームの画像を生成する場合には、まず、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ（プリミティブ面の頂点（構成点）に付与される位置座標、テクスチャ座標、色（輝度）データ、法線ベクトル或いはα値等）が作成される。そして、この描画データ（プリミティブ面データ）に基づいて、ジオメトリ処理後のオブジェクト（１又は複数プリミティブ面）の画像が、描画バッファ１７６（フレームバッファ、ワークバッファ等の画素単位で画像情報を記憶できるバッファ）に描画される。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成されるようになる。なお、本実施形態により生成されて表示部１９０に表示される画像は、３次元画像であってもよいし、２次元画像であってもよい。
【０１０９】
そして本実施形態では画像生成部１５０は、位置検出用パターンであるマーカ画像が原画像に対して埋め込まれた表示画像を生成して、表示部１９０に出力する。具体的には、画像生成部１５０が有する変換部１５２が、原画像の各画素データをマーカ画像の各画素データ（Ｍ配列）で変換することで、表示画像を生成する。例えば原画像の各画素のＲ、Ｇ、Ｂ成分データの少なくとも１つや、ＹＵＶにおける色差成分及び輝度成分データの少なくとも１つを、マーカ画像の各画素データにより変換することで、表示画像を生成する。
【０１１０】
また画像生成部１５０は、特定条件が満たされていない場合には、原画像を表示画像として出力し、特定条件が満たされた場合には、マーカ画像が原画像に対して埋め込まれた画像を表示画像として出力してもよい。例えば、特定条件が満たされた場合に、原画像として位置検出用原画像（位置検出用の専用の画像）を生成し、位置検出用原画像に対してマーカ画像が埋め込まれた画像を表示画像として出力してもよい。或いは、ガン型コントローラ３０（ポインティングデバイス）からの指示情報（トリガ入力情報）に基づいて、位置検出を行うタイミングであると判断した場合に、マーカ画像が埋め込まれた画像を表示画像として出力してもよい。更に、ゲーム処理において特定のゲームイベントが発生した場合に、マーカ画像が埋め込まれた画像を表示画像として出力してもよい。
【０１１１】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＤＲＡＭ、ＶＲＡＭ）などにより実現できる。この記憶部１７０は、マーカ画像記憶部１７２、描画バッファ１７６などを含む。
【０１１２】
インターフェース（Ｉ／Ｆ）部１７８は、情報記憶媒体１８０との間のインターフェースを行うものであり、情報記憶媒体１８０にアクセスして、プログラムやデータを読み出す。
【０１１３】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、ＨＤＤ（ハードディスクドライブ）、或いはメモリ（ＲＯＭ等）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータ（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【０１１４】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【０１１５】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイなどにより実現できる。
【０１１６】
通信部１９６は、有線や無線のネットワークを介して外部（例えばガン型コントローラ３０等）との間で通信を行うものであり、その機能は、通信用ＡＳＩＣ又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
【０１１７】
処理部１００は、ゲーム処理部１０２、変化処理部１０４、外乱測定情報取得部１０６、条件判断部１０８を含む。
【０１１８】
ゲーム処理部１０２は、ゲーム成績演算処理などの各種のゲーム処理を行う。この場合のゲーム処理としては、ゲーム成績演算処理の他に、ゲームの内容やゲームモードを決定する処理、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【０１１９】
例えばゲーム処理部１０２は、ガン型コントローラ３０で検出されたポインティング位置ＰＰに基づいて、ヒットチェック処理を行う。即ち、ガン型コントローラ３０（武器型コントローラ）からの仮想弾（ショット）とターゲットオブジェクト（標的）とのヒットチェック処理を行う。
【０１２０】
更に具体的には、ゲーム処理部１０２（ヒット処理部）は、撮像画像から求められたポインティング位置ＰＰに基づいて、仮想弾の軌道を決定し、この軌道が、オブジェクト空間内のターゲットオブジェクトに交わったか否かを判定する。そして、交わった場合には、ターゲットオブジェクトに仮想弾がヒットしたと判定し、ターゲットオブジェクトの耐久値（体力値）を減らす処理や、爆発エフェクトを発生する処理や、ターゲットオブジェクトの位置、方向、モーション、色又は形状を変化させる処理などを行う。一方、軌道がターゲットオブジェクトに交わらなかった場合には、仮想弾がターゲットオブジェクトにヒットしなかったと判定し、仮想弾を削除し消滅させる処理などを行う。なお、ターゲットオブジェクトの形状を簡略化して表した簡易オブジェクト（バウンディングボリューム、バウンディングボックス）を用意し（ターゲットオブジェクトの位置に配置し）、この簡易オブジェクトと仮想弾（仮想弾の軌道）とのヒットチェックを行うようにしてもよい。
【０１２１】
変化処理部１０４は、マーカ画像等を変化させる処理を行う。例えばマーカ画像を、時間経過に応じて変化させる処理を行う。例えばゲーム処理部１０２のゲーム処理により進行するゲームの状況等に応じて、マーカ画像を変化させる。或いは、ポインティング位置ＰＰの信頼度等に基づいてマーカ画像を変化させる。また、例えば撮像画像とマーカ画像との相互相関が演算され、相互相関の演算結果の信頼度が求められた場合に、求められた信頼度に基づいて、マーカ画像を変化させる処理を行う。或いは、マーカ画像を、原画像に応じて変化させる処理を行ってもよい。例えばゲームステージに応じて、生成されるゲーム画像が異なる場合には、これに応じてマーカ画像も変化させる。なお、マーカ画像として複数種類のマーカ画像を用いる場合には、これらのマーカ画像のデータはマーカ画像記憶部１７２に記憶される。
【０１２２】
外乱測定情報取得部１０６は、太陽光などの外乱の測定情報を取得する。即ち、図示しない外乱測定センサから、外乱測定情報を取り込む。そして変化処理部１０４は、マーカ画像を、取得された外乱測定情報に基づいて変化させる処理を行う。例えば、周囲の光の強さや色などに応じて、マーカ画像を変化させる。
【０１２３】
条件判断部１０６は、シューティング動作が行われたり、ゲームイベントが発生して、マーカ画像を変更するための特定条件が満たされたか否かを判断する。そして変化処理部１０４は、特定条件が満たされた場合に、マーカ画像を変化させる処理（切り替える処理）を行う。また画像生成部１５０は、特定条件が満たされていない場合には、原画像を表示画像として出力し、特定条件が満たされた場合には、マーカ画像が埋め込まれた画像を表示画像として出力する。
【０１２４】
４．マーカ画像の変化処理
本実施形態では、原画像に埋め込むマーカ画像のパターンを変化させることもできる。例えば図１８（Ａ）では、マーカ画像を時間経過に伴い変化させている。具体的には、フレームｆ１ではマーカ画像ＭＩ１を埋め込んだ表示画像を生成し、フレームｆ２（ｆ１＜ｆ２）ではＭＩ１とは異なるマーカ画像ＭＩ２を埋め込んだ表示画像を生成し、フレームｆ３（ｆ２＜ｆ３）ではマーカ画像ＭＩ１を埋め込んだ表示画像を生成している。
【０１２５】
例えばマーカ画像ＭＩ１は、第１のＭ配列Ｍ１を用いて生成し、マーカ画像ＭＩ２は、第２のＭ配列Ｍ２を用いて生成する。例えば第１のＭ配列Ｍ１としては、前述の図７に示すような配列を用い、第２のＭ配列Ｍ２としては、図１９に示すような配列を用いる。これらの第１、第２のＭ配列Ｍ１、Ｍ２は異なったパターンの配列になっている。
【０１２６】
図２０は、第１のＭ配列Ｍ１のマーカ画像ＭＩ１のイメージ図であり、図２１は、第２のＭ配列Ｍ２のマーカ画像ＭＩ２のイメージ図である。図２０、図２１では、「１」を黒画素として模式的に表し、「−１」を白画素として模式的に表している。
【０１２７】
このようにマーカ画像を時間経過に応じて変化させれば、マーカ画像のトータルの情報量が増えるため、検出精度を向上できる。例えば周囲の環境等の条件により、第１のＭ配列Ｍ１のマーカ画像ＭＩ１では、ポインティング位置の検出精度を高くできない場合にも、第２のＭ配列Ｍ２のマーカ画像ＭＩ２を埋め込んだ画像を表示することで、検出精度を向上できる。このようにマーカ画像を変化させることは、例えば印刷物にマーカ画像を埋め込む手法では実現できないが、マーカ画像が埋め込まれた画像を表示部１９０に表示する本実施形態の手法によれば実現できる。
【０１２８】
なお図１８（Ａ）のようにマーカ画像を変化させる場合には、図１７の画像生成装置９０（処理部）は、ガン型コントローラ３０に対して、表示部１９０に現在表示される画像に使用されているマーカ画像の種別を知らせるデータを送ればよい。即ち、ガン型コントローラ３０側において位置検出を行うためには、表示画像に埋め込まれたマーカ画像の情報が必要である。従って、ガン型コントローラ３０側にも、マーカ画像記憶部１７２に相当する機能を持たせ、現在使用されているマーカ画像の種別を示す何らかの情報を、画像生成装置９０からガン型コントローラ３０に送る必要がある。この場合に、毎回、マーカ画像の情報を送ることは処理の無駄であるため、例えばゲーム開始時等に、当該ゲームに使用するマーカ画像のＩＤとパターン情報を送って、ガン型コントローラ３０の図示しない記憶部に記憶させればよい。
【０１２９】
また、例えば図１５等で説明した信頼度に基づいて、埋め込むマーカ画像を変化させてもよい。例えば図１８（Ｂ）において、フレームｆ１では、第１のＭ配列Ｍ１によるマーカ画像ＭＩ１が埋め込まれている。そして、このマーカ画像ＭＩ１を用いた場合の信頼度が計算され、その信頼度が所定の基準値よりも低かった場合には、その後のフレームｆ２では、第２のＭ配列Ｍ２によるマーカ画像ＭＩ２を埋め込んで、ポインティング位置を検出する。このようにすれば、周囲環境が変化した場合にも、それに応じた最適なマーカ画像を選択されて原画像に埋め込まれるようになるため、１種類のマーカ画像を用いる場合に比べて、検出精度を格段に向上できる。
【０１３０】
なお、図１８（Ａ）、図１８（Ｂ）では、２種類のマーカ画像を切り替える場合について示しているが、３種類以上のマーカ画像を切り替えてもよい。また複数種類のマーカ画像は、図２０、図２１のように、その生成に使用される配列パターン自体が異なるものであってもよいし、そのパターンの濃さを異ならせたものであってもよい。
【０１３１】
例えば図２２（Ａ）では、濃いパターンのマーカ画像ＭＩ１を使用しており、図２２（Ｂ）では薄いパターンのマーカ画像ＭＩ２を使用している。このように、濃さが異なるマーカ画像ＭＩ１、ＭＩ２を時間経過に応じて切り替えて使用してもよい。
【０１３２】
即ち図２２（Ａ）のように濃いパターンを使用すると、プレーヤにとって、マーカ画像の存在が目立ってしまうが、図２２（Ｂ）のように薄いパターンを使用すれば、マーカ画像の存在が目立たなくなる。図２２（Ａ）の濃いパターンは、原画像のＲ、Ｇ、Ｂのデータ値（輝度）に対して加減算するマーカ画像のデータ値を大ききすることで生成でき、図２２（Ｂ）の薄いパターンは、原画像のＲ、Ｇ、Ｂのデータ値に対して加減算するマーカ画像のデータ値を小さくすることで生成できる。
【０１３３】
表示部１９０の表示画像の高品質化のためには、マーカ画像の存在がなるべく目立たないようにすることが望ましく、図２２（Ｂ）のような薄いパターンが望ましい。そして、マーカ画像の存在を更に目立たなくするためには、原画像の色差成分に対してマーカ画像のデータ値を加算することが望ましい。具体的には原画像のＲＧＢデータを公知の手法によりＹＵＶデータに変化する。そしてＹＵＶデータのうちの色差データＵ、Ｖ（Ｃｂ、Ｃｒ）の少なくとも一方に対して、マーカ画像のデータ値を加減算して、マーカ画像を埋め込む。このようにすれば、人間にとって、輝度の変化よりも、色差の変化の方が気づきにくいという性質を利用して、マーカ画像の存在を目立たなくすることができる。
【０１３４】
また本実施形態では、原画像に応じてマーカ画像を変化させてもよい。例えば図２３（Ａ）、図２３（Ｂ）では、原画像であるゲーム画像が、ゲームにおける昼のステージの画像なのか、夜のステージの画像なのかに応じて、原画像に埋め込むマーカ画像を異ならせている。
【０１３５】
即ち昼のステージでは、原画像の輝度が全体的に明るいため、輝度が高い濃いパターンのマーカ画像を埋め込んでも、それほど目立たない。また、原画像の周波数成分が全体的に高域側にシフトしているため、輝度が高い濃いパターンのマーカ画像を埋め込むことで、位置検出の精度を向上できる。そこで図２３（Ａ）のように昼のステージでは濃いパターンのマーカ画像を使用する。
【０１３６】
一方、夜のステージでは、原画像の輝度が全体的に暗いため、輝度が高い濃いパターンのマーカ画像を埋め込むと、昼のステージに比べてマーカ画像の存在が目立ってしまう。また、原画像の周波数帯域が全体的に低域側にシフトしているため、マーカ画像の輝度がそれほど高くなくても、適正な位置検出を実現できる。そこで図２３（Ａ）のように夜のステージでは薄いパターンのマーカ画像を使用する。
【０１３７】
なお図２３（Ａ）では、ステージの種類に応じてマーカ画像を変更しているが、本実施形態の手法はこれに限定されない。例えば各フレームでの原画像の全体的な輝度をリアルタイムに演算し、その演算結果に基づいて、原画像に埋め込むマーカ画像を変更してもよい。例えば、原画像の全体的な輝度が高い場合には、輝度が高いマーカ画像を埋め込み、原画像の全体的な輝度が低い場合には、輝度が低いマーカ画像を埋め込む。或いは、ゲームステージの切り替え以外のゲームイベントの発生（例えばストーリーの切り替えイベント、キャラクタの発生イベント）によって、使用するマーカ画像を変更してもよい。また、マーカ画像の存在が目立つことが予めわかっている原画像に対しては、薄いパターンのマーカ画像を対応づけておき、そのような原画像が表示される時に、薄いパターンのマーカ画像を選択して埋め込むようにしてもよい。
【０１３８】
また、表示部１９０の周囲の状況に応じて、マーカ画像を変更してもよい。例えば図２３（Ｂ）では、フォトセンサ等の外乱測定センサ６０により、表示画像に対する外乱となる周囲光の強さ等を測定している。そして、この外乱測定センサ６０からの外乱測定情報に基づいて、マーカ画像を変化させる。
【０１３９】
例えば、昼の時間帯であり、部屋が明るいことが検知されると、輝度が高い濃いパターンのマーカ画像を原画像に埋め込む。即ち、部屋が明るい場合には、マーカ画像の輝度が高くても、マーカ画像の存在がそれほど目立たない。また部屋の明るさに応じてマーカ画像の輝度を高くすることで、位置検出の精度を高めることができる。そこでこの場合には、高い輝度のマーカ画像を埋め込む。
【０１４０】
一方、夜の時間帯であり、部屋が暗いことが検知されると、輝度が低い薄いパターンのマーカ画像を原画像に埋め込む。即ち、部屋が暗い場合には、マーカ画像の輝度が高いと、マーカ画像の存在が目立ってしまう。また、マーカ画像の輝度をそれほど高くしなくても、適正な位置検出を実現できる。そこでこの場合には、低い輝度のマーカ画像を埋め込む。
【０１４１】
以上の手法によれば、表示部１９０の周囲の状況に応じて最適なマーカ画像が選択されて埋め込まれるため、適正な位置検出を実現できる。
【０１４２】
５．特定条件によるマーカ画像の埋め込み
マーカ画像の埋め込みを常に行うことは、必ずしも必要ではなく、特定条件が満たされた場合にのみ、マーカ画像を埋め込んで出力するようにしてもよい。具体的には、特定条件が満たされていない場合には、マーカ画像が埋め込まれていない原画像を表示画像として出力し、特定条件が満たされた場合には、マーカ画像が埋め込まれた画像を表示画像として出力する。
【０１４３】
例えば図２４（Ａ）において、フレームｆ１では、マーカ画像が埋め込まれていない原画像のみが表示されている。そしてフレームｆ１の後のフレームｆ２では、ガン型コントローラ３０のトリガ３４が引かれたと判断され、原画像に対してマーカ画像が埋め込まれた画像が表示される。そして、フレームｆ２の後のフレームｆ３では、マーカ画像が埋め込まれていない原画像のみが表示される。
【０１４４】
このように図２４（Ａ）では、ガン型コントローラ３０のトリガ３４が引かれたという特定条件が満たされた場合にのみ、マーカ画像が原画像に埋め込まれた画像を表示する。このようにすれば、シューティングのタイミングにおいてのみ、マーカ画像が原画像に埋め込まれて表示されるため、マーカ画像の存在を目立たなくすることが可能になり、表示画像の品質を向上できる。即ち、トリガ３４を引いた一瞬のタイミングにだけ、マーカ画像が表示されるようになるため、マーカ画像が埋め込まれたことを、プレーヤに気づかれにくくすることが可能になる。
【０１４５】
なお、トリガ３４を引いたフレームと、マーカ画像が埋め込まれた画像が表示されるフレームは、必ずしも同じフレームである必要はなく、例えばトリガ３４を引いたフレームから、数フレーム遅れて、マーカ画像が埋め込まれた画像を表示してもよい。また、本実施形態における特定条件は、図２３（Ａ）に示すようなトリガ３４が引かれたという条件には限定されない。例えばトリガ３４を引くという操作以外の他の操作により、特定条件が満たされたと判断してもよい。即ち、ガン型コントローラ３０などのポインティングデバイスからの指示情報に基づいて、位置検出を行うタイミングであると判断された場合に、特定条件が満たされたと判断して、マーカ画像が埋め込まれた画像を表示してもよい。例えば音楽ゲームにおいて、音符がラインに重なったタイミングでプレーヤがボタン等を押した場合に、マーカ画像が埋め込まれた画像を表示してもよい。
【０１４６】
或いは、特定のゲームイベントが発生した場合に、特定条件が満たされたと判断して、マーカ画像が埋め込まれた画像を表示してもよい。この場合の特定イベントとしては、ゲームのストーリーの変化イベント、ゲームステージの変化イベント、キャラクタの発生イベント、ターゲットオブジェクトのロックオンイベント、或いはオブジェクトとの接触イベントなどがある。
【０１４７】
例えば、標的であるターゲットオブジェクトの出現前では、シューティングのヒットチェックのためのマーカ画像は不要であるため、原画像だけを表示する。一方、ターゲットオブジェクトであるキャラクタが発生すると、特定条件が満たされたと判断して、マーカ画像が埋め込まれた画像を表示して、ターゲットオブジェクトと仮想弾（ショット）とのヒットチェック処理が可能な状態にする。そして、ターゲットオブジェクトが画面から消えると、ヒットチェック処理は不要になるため、マーカ画像を埋め込まず、原画像だけを表示するようにする。或いは、ターゲットオブジェクトがロックオンされる前では、原画像のみを表示し、ターゲットオブジェクトのロックオンイベントが発生した場合に、マーカ画像が埋め込まれた画像を表示して、仮想弾とターゲットオブジェクトとのヒットチェック処理を行えるようにしてもよい。
【０１４８】
また、このようにトリガ３４等が引かれて、特定条件が満たされた場合に、図２４（Ｂ）に示すように、位置検出用原画像（位置検出用に専用の画像）を表示してもよい。例えば図２４（Ｂ）では、トリガ３４が引かれると、仮想弾の発射を演出する画像が、位置検出用原画像として生成され、この位置検出用原画像に対してマーカ画像が埋め込まれて表示される。
【０１４９】
以上のようにすれば、プレーヤは、マーカ画像が埋め込まれた位置検出用原画像を、演出画像であると認識するため、マーカ画像の存在を更に目立たなくすることが可能になる。
【０１５０】
なお、位置検出用原画像は、図２４（Ｂ）に示すような画像に限定されず、例えば、図２４（Ｂ）とは異なる表示形態の演出画像であってもよいし、全画面が所定色（例えば白）になるような画像であってもよい。
【０１５１】
また例えば、特定条件が満たされたか否かに依らずに、マーカ画像が埋め込まれた画像を常に表示しておき、特定条件が満たされた際の表示画像の撮像画像に基づいて、ポインティング位置ＰＰを求めるようにしてもよい。例えば、図１７の表示部１９０には、マーカ画像が埋め込まれた表示画像を常に表示しておく。そして、ガン型コントローラ３０のトリガ３４が引かれるなどの特定条件が満たされると、そのタイミングで取得された表示画像の撮像画像に基づいて、位置検出処理部４６（或いは処理部１００に設けられる図示しない位置検出処理部）が、ポインティング位置ＰＰを求める。このようにすれば、例えばガン型コントローラ３０のトリガ３４が引かれたタイミングでの撮像画像に基づいて、ポインティング位置ＰＰを求めることが可能になる。
【０１５２】
６．画像生成装置の処理
次に本実施形態の画像生成装置９０の詳細な処理例について、図２５のフローチャートを用いて説明する。
【０１５３】
まず、フレーム（１／６０秒）の更新タイミングか否かを判断する（ステップＳ４１）。そしてフレーム更新タイミングである場合には、ガン型コントローラ３０のトリガ３４が引かれたか否かを判断し（ステップＳ４２）、引かれた場合には図２４（Ａ）、図２４（Ｂ）で説明したように、マーカ画像の埋め込み処理を行う（ステップＳ４３）。
【０１５４】
次に、着弾位置（ポインティング位置）の取り込みタイミングか否かを判断し（ステップＳ４４）、取り込みタイミングである場合には、ガン型コントローラ３０から着弾位置を取り込む（ステップＳ４５）。そして、取り込んだ着弾位置の信頼度が高いか否かを判断し（ステップＳ４６）、信頼度が高い場合には、今回に取り込まれた着弾位置を採用する（ステップＳ４７）。一方、信頼度が低い場合には、前回に取り込まれて記憶部に保存されている着弾位置を採用する（ステップＳ４８）。そして、採用された着弾位置に基づいて、ヒットチェック処理やゲーム成績演算処理などのゲーム処理を行う（ステップＳ４９）。
【０１５５】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語（ポインティングデバイス、ポインティング位置等）として引用された用語（ガン型コントローラ、着弾位置等）は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【０１５６】
また、ポインティング位置の検出手法、マーカ画像の埋め込み手法、マーカ画像の変化手法等は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含むことができる。また本発明は種々のゲームに適用でき、またゲーム以外の用途にも適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成装置に適用できる。
【図面の簡単な説明】
【０１５７】
【図１】本実施形態の位置検出システムの構成例。
【図２】第１の比較例の手法の説明図。
【図３】図３（Ａ）、図３（Ｂ）は第２の比較例の手法の説明図。
【図４】原画像へのマーカ画像の埋め込み手法の説明図。
【図５】本実施形態の位置検出手法の説明図。
【図６】図６（Ａ）、図６（Ｂ）は本実施形態のマーカ画像の説明図。
【図７】本実施形態で使用されるＭ配列のデータ例。
【図８】原画像のデータ例。
【図９】原画像にマーカ画像が埋め込むことで得られる表示画像のデータ例。
【図１０】撮像画像のデータ例。
【図１１】撮像画像とマーカ画像との相互相関演算により得られた相互相関値の例。
【図１２】マーカ画像の埋め込み処理のフローチャート。
【図１３】位置検出処理のフローチャート。
【図１４】相互相関の演算処理のフローチャート。
【図１５】信頼度の演算処理のフローチャート。
【図１６】信頼度の説明図。
【図１７】本実施形態の画像生成装置、ガン型コントローラの構成例。
【図１８】図１８（Ａ）、図１８（Ｂ）はマーカ画像を変化させる処理の説明図。
【図１９】第２のＭ配列のデータ例。
【図２０】第１のＭ配列のマーカ画像のイメージ図。
【図２１】第２のＭ配列のマーカ画像のイメージ図。
【図２２】図２２（Ａ）、図２２（Ｂ）は異なる濃さのマーカ画像の使用例。
【図２３】図２３（Ａ）、図２３（Ｂ）はマーカ画像を変化させる手法の説明図。
【図２４】図２４（Ａ）、図２４（Ｂ）は特定条件が満たされた場合にマーカ画像が埋め込まれた画像を表示する手法の説明図。
【図２５】画像生成装置の処理のフローチャート。
【符号の説明】
【０１５８】
ＩＭＲ、ＩＭＲ１、ＩＭＲ２  撮像領域、ＰＰ、ＰＰ１、ＰＰ２  ポインティング位置、
１０  位置検出システム、１２  カメラ（撮像デバイス）、２０  画像取得部、
２２  画像補正部、２４  位置検出処理部、２６  信頼度演算部、
３０  ガン型コントローラ（ポインティングデバイス）、３２  指示体、
３４  トリガ、３６  レンズ、３８  撮像デバイス、４０  処理部、
４２  画像取得部、４４  画像補正部、４６  位置検出処理部、４８  信頼度演算部、
５０  通信部、９０  画像生成装置、１００  処理部、１０２  ゲーム処理部、
１０４  変化処理部、１０６  外乱測定情報取得部、１０８  条件判断部、
１５０  画像生成部、１５２  変換部、１７０  記憶部、１７２  マーカ画像記憶部、
１７６  描画バッファ、１７８  Ｉ／Ｆ部、１８０  情報記憶媒体、１９６  通信部
【図３】
2009245349.tif 000010
【図６】
2009245349.tif 000011
【図７】
2009245349.tif 000012
【図８】
2009245349.tif 000013
【図９】
2009245349.tif 000014
【図１０】
2009245349.tif 000015
【図１１】
2009245349.tif 000016
【図１２】
2009245349.tif 000017
【図１３】
2009245349.tif 000018
【図１４】
2009245349.tif 000019
【図１５】
2009245349.tif 000020
【図１６】
2009245349.tif 000021
【図１８】
2009245349.tif 000022
【図１９】
2009245349.tif 000023
【図２０】
2009245349.tif 000024
【図２１】
2009245349.tif 000025
【図２３】
2009245349.tif 000026
【図２５】
2009245349.tif 000027
【図１】
2009245349.tif 000028
【図２】
2009245349.tif 000029
【図４】
2009245349.tif 000030
【図５】
2009245349.tif 000031
【図１７】
2009245349.tif 000032
【図２２】
2009245349.tif 000033
【図２４】
2009245349.tif 000034