(57)【要約】      （修正有）【課題】２次元コードの使用態様の変更又は追加を図ることができる方法及び装置を提供する。【解決手段】光学系を介して２次元コードをイメージセンサーで撮像してイメージデータを生成し、イメージデータに含まれる２次元コードのファインダーパターンに基づいてイメージセンサーの撮像エリアに対応する空間における２次元コードの平面的な位置を決定するステップと、２次元コードが第１平面に配される時にイメージセンサーにより撮像される２次元コード内の第１像に関する第１情報と、２次元コードが第１平面とは異なる第２平面に配される時にイメージセンサーにより撮像される第１像に対応する第２像に関する第２情報に基づいて、第１平面と第２平面に交差する方向における２次元コードの位置を決定するステップを含む。【選択図】図１３
2015191531.tif 000002
【特許請求の範囲】
【請求項１】
少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定する方法であって、
光学系を介して前記２次元コードをイメージセンサーで撮像してイメージデータを生成し、前記イメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定するステップと、
前記イメージセンサーから前記光学系を介して離間した第１平面に前記２次元コードが配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するステップを含む、方法。
【請求項２】
前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する前記ステップが、
事前に記憶された前記第１像に関する前記第１情報を読み出すステップと、
前記イメージデータに基づいて前記第２像に関する前記第２情報を取得するステップを含む、請求項１に記載の方法。
【請求項３】
前記第１像に関する前記第１情報が前記第１像の寸法であり、前記第２像に関する前記第２情報が前記第２像の寸法である、請求項１又は２に記載の方法。
【請求項４】
前記第１像及び前記第２像が前記ファインダーパターンに含まれる、請求項１乃至３のいずれか一項に記載の方法。
【請求項５】
前記第１像及び前記第２像が正円形状である、請求項１乃至４のいずれか一項に記載の方法。
【請求項６】
前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えてオリエンテーションパターンが含まれ、
前記イメージデータに含まれる前記ファインダーパターンと前記オリエンテーションパターンに基づいて前記２次元コードの回転角度を決定するステップを更に含む、請求項１乃至５のいずれか一項に記載の方法。
【請求項７】
前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えて枠パターンが含まれ、
前記イメージデータに含まれる前記枠パターンに基づいて前記２次元コードの前記第１平面又は前記第２平面に対する傾きを決定するステップを更に含む、請求項１乃至６のいずれか一項に記載の方法。
【請求項８】
前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えて符号パターンが含まれ、
前記イメージデータに含まれる前記符号パターンをデコードするステップを更に含む、請求項１乃至７のいずれか一項に記載の方法。
【請求項９】
請求項１乃至８のいずれか一項に記載の方法をコンピューターに実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムがコンピューターにより読み取り可能に記録された記録媒体。
【請求項１１】
少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定するための装置であって、
光学系を介して前記２次元コードを撮像可能であるイメージセンサーと、
前記イメージセンサーから供給されるイメージデータを処理可能である処理部を備え、
前記処理部は、
前記イメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定し、
前記イメージセンサーから前記光学系を介して離間した第１平面に前記２次元コードが配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するように構成される、装置。
【請求項１２】
前記処理部が、事前に記憶された前記第１像に関する前記第１情報を読み出し、前記イメージデータに基づいて前記第２像に関する前記第２情報を取得し、前記第１情報及び前記第２情報に基づいて前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する、請求項１１に記載の装置。
【請求項１３】
少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定するための装置であって、
イメージセンサーから供給されるイメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定し、
前記２次元コードが第１平面に配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するように構成される、装置。
【請求項１４】
事前に記憶された前記第１像に関する前記第１情報を読み出し、前記イメージデータに基づいて前記第２像に関する前記第２情報を取得し、前記第１情報及び前記第２情報に基づいて前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する、請求項１３に記載の装置。
【請求項１５】
請求項１１乃至１４のいずれか一項に記載の装置を含むゲーム機。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、２次元コードの空間位置を決定する方法及びそのための装置に関する。
【背景技術】
【０００２】
２次元コードは、１次元コード、いわゆるバーコードと比較してより多くの情報量を持つことができ、現在において多方面で活用されている。例えば、特許文献１、２には、２次元コードが付与されたカードを活用してゲームを提供するゲーム装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３７３６４４０号公報
【特許文献２】特許第３９０１１６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
２次元コードは、イメージセンサー若しくは光学系から所定距離だけ離れた基準面上に配されることが前提となって用いられている。本願発明者は、このような２次元コードの使用態様が限定的であることに着目し、２次元コードの使用態様の変更又は追加を図ることを課題として見出した。なお、現状においても、イメージセンサーにより撮像され、その認識のために処理可能である２次元コードの位置（イメージセンサー又は光学系からの２次元コードの距離）にはある程度の幅が許容されている。
【課題を解決するための手段】
【０００５】
本発明の一態様に係る方法は、少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定する方法である。この方法は、光学系を介して前記２次元コードをイメージセンサーで撮像してイメージデータを生成し、前記イメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定するステップと、前記イメージセンサーから前記光学系を介して離間した第１平面に前記２次元コードが配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するステップを含む。
【０００６】
幾つかの形態においては、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する前記ステップが、事前に記憶された前記第１像に関する前記第１情報を読み出すステップと、前記イメージデータに基づいて前記第２像に関する前記第２情報を取得するステップを含む。第１情報は、イメージデータに基づく情報、若しくはイメージデータに基づかない情報である。第１情報がプログラムに書き込まれる形態においては、プログラムのコードの読み出しが第１情報の読み出しに対応する。
【０００７】
幾つかの形態においては、前記第１像に関する前記第１情報が前記第１像の寸法であり、前記第２像に関する前記第２情報が前記第２像の寸法である。
【０００８】
幾つかの形態においては、前記第１像及び前記第２像が前記ファインダーパターンに含まれる。
【０００９】
幾つかの形態においては、前記第１像及び前記第２像が正円形状である。
【００１０】
幾つかの形態においては、前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えてオリエンテーションパターンが含まれ、前記イメージデータに含まれる前記ファインダーパターンと前記オリエンテーションパターンに基づいて前記２次元コードの回転角度を決定するステップを更に含む。
【００１１】
幾つかの形態においては、前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えて枠パターンが含まれ、前記イメージデータに含まれる前記枠パターンに基づいて前記２次元コードの前記第１平面又は前記第２平面に対する傾きを決定するステップを更に含む。
【００１２】
幾つかの形態においては、前記イメージデータに含まれる前記２次元コードには前記ファインダーパターンに加えて符号パターンが含まれ、前記イメージデータに含まれる前記符号パターンをデコードするステップを更に含む。
【００１３】
本発明の別態様に係るプログラムは、上記したいずれかの方法をコンピューターに実行させるためのプログラムである。
【００１４】
本発明の更なる別態様に係る記録媒体は、上記したプログラムがコンピューターにより読み取り可能に記録された記録媒体である。記録媒体には、ハードディスクドライブ、光学ディスク、磁気ディスク、磁気テープ、メモリー等の多様な記録媒体が含まれる。
【００１５】
本発明の更なる別態様に係る装置は、少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定するための装置であって、光学系を介して前記２次元コードを撮像可能であるイメージセンサーと、前記イメージセンサーから供給されるイメージデータを処理可能である処理部を備え、前記処理部は、前記イメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定し、前記イメージセンサーから前記光学系を介して離間した第１平面に前記２次元コードが配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するように構成される。
【００１６】
幾つかの形態においては、前記処理部が、事前に記憶された前記第１像に関する前記第１情報を読み出し、前記イメージデータに基づいて前記第２像に関する前記第２情報を取得し、前記第１情報及び前記第２情報に基づいて前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する。
【００１７】
本発明の更なる別態様に係る装置は、少なくともファインダーパターンを含む少なくとも一つの２次元コードの空間位置を決定するための装置であって、イメージセンサーから供給されるイメージデータに含まれる前記２次元コードの前記ファインダーパターンに基づいて前記イメージセンサーの撮像エリアに対応する空間における前記２次元コードの平面的な位置を決定し、前記２次元コードが第１平面に配される時に前記イメージセンサーにより撮像される前記２次元コード内の第１像に関する第１情報と、前記２次元コードが前記第１平面とは異なる第２平面に配される時に前記イメージセンサーにより撮像される前記第１像に対応する第２像に関する第２情報に基づいて、前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定するように構成される。
【００１８】
幾つかの形態においては、装置が、事前に記憶された前記第１像に関する前記第１情報を読み出し、前記イメージデータに基づいて前記第２像に関する前記第２情報を取得し、前記第１情報及び前記第２情報に基づいて前記第１平面と前記第２平面に交差する方向における前記２次元コードの位置を決定する。
【００１９】
本発明の更なる別態様に係る装置は、上記した装置を含むゲーム機である。
【発明の効果】
【００２０】
本発明によれば、２次元コードの使用態様の変更又は追加を図ることができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の第１実施形態に用いられる２次元コードを示す概略図である。
【図２】本発明の第１実施形態に用いられる２次元コードが埋め込まれたカードの概略的な断面構成を示す概略図である。
【図３】本発明の第１実施形態に係るゲーム機の概略的な斜視図である。
【図４】本発明の第１実施形態に係るゲーム機の概略的な構成図である。
【図５】本発明の第１実施形態に係るゲーム機において、イメージセンサーとプレイフィールドとの関係を示す模式図である。
【図６】本発明の第１実施形態に係るゲーム機に含まれるコード情報取得部の概略的なシステム構成を示すブロック図である。
【図７】本発明の第１実施形態に係るコード情報取得部が２次元コードを認識する幾つかの方法を示す説明図である。
【図８】本発明の第１実施形態に係るコード情報取得部が２次元コードの回転角を検知する方法を示す説明図である。
【図９】本発明の第１実施形態に係るコード情報取得部が２次元コードの高さを検知する方法を示す説明図である。
【図１０】本発明の第１実施形態に係るコード情報取得部が２次元コードの高さを検知する方法を示す説明図である。
【図１１】本発明の第１実施形態に係るコード情報取得部が２次元コードの傾きを検知する方法を示す説明図である。
【図１２】本発明の第１実施形態に係るコード情報取得部が２次元コードの傾きを検知する方法の基礎の理解のための説明図である。
【図１３】本発明の第１実施形態に係るゲーム機／コード情報取得部の動作を示す概略的なフローチャートである。
【図１４】本発明の第１実施形態に係るコード情報取得部のパターン検出動作を示す概略図である。
【図１５】本発明の第１実施形態に係るコード情報取得部の計算動作を示す概略図である。
【図１６】別例の２次元コードを示す概略図である。
【図１７】別例のゲーム機を示す概略図である。
【図１８】２種類の２次元コードを用いる別例を示す模式図である。
【図１９】プロセッサーが移動情報も求めることを説明するための概略的なブロック図である。
【図２０】本発明の第２実施形態に係るコード情報取得部が２次元コードの高さを検知する方法を示す説明図である。
【発明を実施するための形態】
【００２２】
以下、図面を参照しつつ、本発明の実施の形態について説明する。各実施形態は、個々に独立したものではなく、過剰説明をするまでもなく、当業者をすれば、適宜、組み合わせることが可能であり、この組み合わせによる相乗効果も把握可能である。実施形態間の重複説明は、原則的に省略する。
【００２３】
＜用語の説明＞  
まず本願明細書において用いられる用語について説明する。
【００２４】
「２次元コード」
２次元コードは、任意の形状の１以上の単位（例えば、塗りつぶし／非塗りつぶし／濃淡の円形、塗りつぶし／非塗りつぶし／濃淡の矩形、塗りつぶし／非塗りつぶし／濃淡の三角形、若しくはこれらの任意の組み合わせ）が平面的に配列されたマトリックス式の２次元コードを包含する。２次元コードは、マトリックス式に限らず、１次元バーコードが所定方向に重ねられたスタック式も包含し、またこれらに分類されない形式の２次元コードも包含する。例えば、２次元コードは、Datamatrix、Maxicode、QRcode、AZteccode、JAGTAG、ShotCode、Trillcode、Quickmark、Beetaggといったマトリックス式コードを包含する。更に、２次元コードは、PDF417、EAN.UCCコンポジット、Code49、MicrosoftTagといったコードも包含する。
【００２５】
「ファインダーパターン」
ファインダーパターンは、２次元コード自体の認識若しくは２次元コードの位置の検出のために設けられる。実施形態によっては、ファインダーパターンから２次元コードの回転角度を検出することができるが、これはオプションの機能／性能であり、ファインダーパターンに必須のものではない。基本的には、ファインダーパターンは、異なる情報が付与される２次元コード間に共通のパターンである。ファインダーパターンは、塗りつぶし／非塗りつぶし／濃淡の円形、塗りつぶし／非塗りつぶし／濃淡の矩形、塗りつぶし／非塗りつぶし／濃淡の三角形、又はマークを含んで構成される場合があるが、その具体的な態様は任意である。ファインダーパターンの位置も同じく様々であり、２次元コードの中心に設けられる場合もあれば、２次元コードの外周に設けられる場合もある。ファインダーパターンは、２次元コードの外枠の一部又は全部に沿って設けられる場合もある。スタック型の２次元コードにおいても、異なる情報が付与された２次元コード間に共通のパターンがあれば、これをファインダーパターンとして活用することができる。例えば、一形態においては、スタック型の２次元コードに含まれる最も太い線がファインダーパターンとして活用される。
【００２６】
「オリエンテーションパターン」
オリエンテーションパターンは、ファインダーパターンと協調して２次元コードの回転角度を読み取れるようにするために設けられる。基本的には、オリエンテーションパターンは、ファインダーパターンと同様、異なる情報が付与された２次元コード間に共通のパターンである。オリエンテーションパターンは、塗りつぶし／非塗りつぶし／濃淡の円形、塗りつぶし／非塗りつぶし／濃淡の矩形、塗りつぶし／非塗りつぶし／濃淡の三角形、又はマークを含んで構成される場合があるが、その具体的な態様は任意である。オリエンテーションパターンの位置も同じく様々であり、２次元コードの中心に設けられる場合もあれば、２次元コードの外周に設けられる場合もある。オリエンテーションパターンは、ファインダーパターンの近傍に設けられる場合もあれば、ファインダーパターンから相対的に離間して設けられる場合もある。
【００２７】
「符号パターン」
符号パターンは、２次元コードに付与される情報が符号化されたものであり、付与される情報に応じて異なる様々なパターンを示す。２次元コードに付与される情報が同一であれば、符号パターンが同一のパターンとなり、２次元コードに付与される情報が異なれば、符号パターンが非同一のパターンとなる。符号パターンは、塗りつぶし／非塗りつぶし／濃淡の円形、塗りつぶし／非塗りつぶし／濃淡の矩形、塗りつぶし／非塗りつぶし／濃淡の三角形、又はマークを含んで構成される場合があるが、その具体的な態様は任意である。符号パターンの位置も同じく様々であり、２次元コードの中心側に設けられる場合もあれば、２次元コードの外周側に設けられる場合もある。ファインダーパターンやオリエンテーションパターンの外側に符号パターンが設けられる形態や、ファインダーパターンやオリエンテーションパターンの内側に符号パターンが設けられる形態が想定される。
【００２８】
＜第１実施形態＞
図１乃至図１９を参照して第１実施形態について説明する。図１は、２次元コードを示す概略図である。図２は、２次元コードが埋め込まれたカードの概略的な断面構成を示す概略図である。図３は、ゲーム機の概略的な斜視図である。図４は、ゲーム機の概略的な構成図である。図５は、ゲーム機において、イメージセンサーとプレイフィールドとの関係を示す模式図である。図６は、ゲーム機に含まれるコード情報取得部の概略的なシステム構成を示すブロック図である。図７は、コード情報取得部が２次元コードを認識する幾つかの方法を示す説明図である。図８は、コード情報取得部が２次元コードの回転角を検知する方法を示す説明図である。図９は、コード情報取得部が２次元コードの高さを検知する方法を示す説明図である。図１０は、コード情報取得部が２次元コードの高さを検知する方法を示す説明図である。図１１は、コード情報取得部が２次元コードの傾きを検知する方法を示す説明図である。図１２は、コード情報取得部が２次元コードの傾きを検知する方法の基礎の理解のための説明図である。図１３は、ゲーム機／コード情報取得部の動作を示す概略的なフローチャートである。図１４は、コード情報取得部のパターン検出動作を示す概略図である。図１５は、コード情報取得部の計算動作を示す概略図である。図１６は、別例の２次元コードを示す概略図である。図１７は、別例のゲーム機を示す概略図である。図１８は、２種類の２次元コードを用いる別例を示す模式図である。図１９は、プロセッサーが移動情報も求めることを説明するための概略的なブロック図である。
【００２９】
図１に示すように本実施形態において一例として採用する２次元コード５０は、非塗りつぶしの円形の中心に塗りつぶしの円形が配されたファインダーパターン５１を含む。２次元コード５０は、更に、ファインダーパターン５１から所定距離だけ離れた斜め４５°の位置の非塗りつぶし円形のオリエンテーションパターン５２を含む。２次元コード５０は、更に、ファインダーパターン５１やオリエンテーションパターン５２とは重なり合わないようにファインダーパターンの中心周りの同心円（不図示）上に配された塗りつぶし円形の多数の符号パターン５３を含む。符号パターン５３は、個々の単一の塗りつぶし円形のことを意味する用語として用いている。図１に示す符号パターン５３の分布は、一例であり、２次元コード５０に付与される情報が変われば、これに応じて符号パターン５３の分布に変更が生じる。他方、２次元コード５０に付与される情報が変わっても、ファインダーパターン５１とオリエンテーションパターン５２には変更がない。
【００３０】
２次元コード５０は、ファインダーパターン５１、オリエンテーションパターン５２、及び符号パターン５３に加え、オプションの枠パターン５４を含む。枠パターン５４は、２次元コード５０の外形を規定する閉じた枠であるが、必ずしもこの限りではなく、２次元コード５０の矩形状の外形の３辺のみを延びる開いた枠であっても構わない。別の実施形態においては、枠パターン５４がファインダーパターンとして活用される。
【００３１】
２次元コード５０は、カード等の任意の様々な対象物（単に対象とも呼ぶ）に埋め込まれる。例えば、図２に示すカード６０は、厚紙の基板６１上に非可視コード層６２及び可視印刷層６３がこの順で積層された積層物であり、２次元コード５０が非可視コード層６２に印刷されている。可視印刷層６３は、４色インクと白色インクを含むインク層であり、インクに応じた絵柄が表示される。可視印刷層６３は、特定波長光（本例においては、赤外線）を透過する。２次元コード５０は、特定波長光（赤外線）を吸収するインクで印刷されている。可視印刷層６３を透過した特定波長光（赤外線）が２次元コード５０のインクにより吸収される。２次元コード５０のインクが無い領域を通過した特定波長光（赤外線）は、基板６１により反射される。特定波長光（赤外線）をその特定波長光に十分な感度があるイメージセンサーで検出することで可視印刷層６３により被覆されてヒトが視認することができない２次元コード５０を撮像することができる。
【００３２】
２次元コード５０が埋め込まれたカード６０は、図３に例示のゲーム機のプレイフィールド１０１上に置かれる。プレイヤーは、プレイフィールド１０１上でカード６０の位置を変更し、若しくは保有するカード６０を新たにプレイフィールド１０１上に配置し、これらに応じてゲームが進行する。なお、プレイヤーの数は、一人以上であれば足り、必ずしも二人以上のプレイヤーが要求されるわけではない。
【００３３】
本実施形態においては、プレイフィールド１０１上でカード６０の高さが変わることをゲーム機１００が検知できる。例えば、特定波長光に透明なブロックを介在してプレイフィールド１０１上にカード６０を配置すれば、カード６０がプレイフィールド１０１からブロックの個数に応じた高さだけ離れる。ゲーム機１００は、後述のメカニズムにより、このカード６０の高さを検出することができる。別例においては、プレイヤーがゲーム過程でカード６０を持ち上げてプレイフィールド１０１上から離間させ、カード６０に対応して画面上に表示中のキャラクターにジャンプを指示することができる。この場合、ゲーム機１００は、カード６０の高さを検出し、この検出に応じて表示されるべきキャラクターの挙動を決定する。なお、本段落で述べた例は、あくまで例示であり、この他の様々なゲーム機１００の挙動が予期される。
【００３４】
なお、図３に示すようにプレイフィールド１０１上にはＸＹＺ座標が設定される。ユーザーは、この３次元座標系を意識することなくカード６０を置き、移動し、除き、また交換することができる。ＸＹＺ座標におけるカード６０の位置が、後述のメカニズムにより検知され、ゲーム機１００によるゲーム進行のために用いられる。
【００３５】
図４に示すようにゲーム機１００は、プレイフィールド１０１が上面に設けられた筐体内に光源１１０、カメラモジュール１２０、及びコード情報取得部１３０を含む。ゲーム機１００は、更にゲーム用コンピューター１４０、及び表示部１５０を含む。
【００３６】
光源１１０は、特定波長光（赤外線）を出射可能である任意の種類の光源であり、例示すれば、赤外ＬＥＤ素子、又は赤外レーザー素子であり、必要に応じて適切な光学系（例えば、レンズ、拡散板等）も包含する。同一種類の光源１１０をプレイフィールド１０１の外周に沿って一定間隔で配置し、プレイフィールド１０１の全域に亘るように均一な強度の照明を提供することが望ましい。光源１１０は、必要に応じて光散乱手段を具備するが、必ずしもこの限りではない。
【００３７】
カメラモジュール１２０は、フィルター１２１、集光レンズ１２２、及びイメージセンサー１２３を含む。フィルター１２１は、特定波長光（赤外線）を選択的に透過する。特定波長が赤外帯域の波長の時、フィルター１２１が、可視域波長光を遮断若しくは減衰させるフィルター特性を持つ。ゲーム機１００が配置される空間の照明状況にも依存するが、一般的にはヒトが感知できる可視光線が外乱光として存在する。この外乱光を除去して２次元コード５０の撮像精度を高めることが望ましい。
【００３８】
集光レンズ１２２は、プレイフィールド１０１に存在する像のイメージセンサー１２３の撮像エリア上への投影を介在する。イメージセンサー１２３は、複数のピクセルがＸＹ平面にマトリクス配列された撮像エリアを有する撮像素子であり、典型的には、ＣＭＯＳイメージセンサーやＣＣＤイメージセンサー等の固体撮像素子である。なお、個々のピクセルにはＰＮ接合が形成されており、入射光量に応じた電気信号を生成可能である。集光レンズ１２２の焦点距離とイメージセンサーのサイズを適切に設定することによりプレイフィールド１０１の全域に対応する視野を設定することができる。
【００３９】
図５に示すように、プレイフィールド１０１に対して設定されたＸＹ座標にイメージセンサー１２３の行列が平行になるように置かれる。例えば、プレイフィールド１０１のＸ軸がイメージセンサー１２３の行に平行であり、プレイフィールド１０１のＹ軸がイメージセンサー１２３の列に平行である。イメージセンサー１２３上の５行５列のピクセルが、プレイフィールド１０１のＸＹ空間座標に容易に変換できる。もちろん、このような変換を行わず、イメージセンサー１２３の行番号と列番号の組み合わせをプレイフィールド１０１のＸＹ座標と見なすこともできる。なお、集光レンズ１２２を介してイメージセンサー１２３の撮像エリアに投影される像は反転する点に留意が必要である。
【００４０】
コード情報取得部１３０は、イメージセンサー１２３から供給されるイメージデータを処理してイメージデータに含まれる２次元コード５０に基づいてコード情報を含む様々な情報を取得し、取得した情報をゲーム用コンピューター１４０に送信する。例えば、コード情報取得部１３０は、イメージデータに含まれる２次元コード５０を特定し、この２次元コード５０の位置を決定し、更にカード６０の位置を決定し、また２次元コード５０の符号パターンをデコードし、これらのデータが、コード情報取得部１３０からゲーム用コンピューター１４０に送信される。コード情報取得部１３０とゲーム用コンピューター１４０は、有線又は無線で接続されており、実施形態によってはネットワークを介して接続される。
【００４１】
ゲーム用コンピューター１４０は、プロセッサーによるゲームプログラムの実行によりゲームを提供するコンピューターであり、コード情報取得部１３０から供給される情報（２次元コードの位置・姿勢情報、カードの位置・姿勢情報、デコードデータ等）に応じた内容のゲーム進行を提供する。ゲーム用コンピューター１４０は、プロセッサー（ＣＰＵ）と記憶装置を含み、記憶装置上に記憶されたプログラムをプロセッサーで実行し、ゲーム機能を提供する。プロセッサー数は、１つに限らず、２つ以上であっても良い。記憶装置は、ＲＡＭ（ＤＲＡＭ、ＳＲＡＭ）、ＲＯＭ、ハードディスク、光学ディスクなどの様々な媒体を包含する。ゲーム用コンピューター１４０は、一台以上のコンピューターから構成される場合もある。ゲーム用コンピューター１４０に搭載されるＯＳは任意である。
【００４２】
表示部１５０は、ゲーム用コンピューター１４０から供給されるゲーム画像を表示する表示部である。表示部１５０は、典型的には、ブラウン管ディスプレイ、液晶ディスプレイ、有機ＥＬディスプレイなどの表示装置である。表示部１５０は、必ずしも固定されて配置される必要はなく、ＨＤＭＩ（登録商標）等の任意の手段でプレイヤーのスマートフォンの表示部で代用する形態も考えられる。
【００４３】
図６を参照するとコード情報取得部１３０の例示的な構成が開示される。コード情報取得部１３０は、Ａ／Ｄ変換器１３１、バッファーメモリー１３２、イメージ処理部１３３、プロセッサー１３４、第１メモリー１３５、第２メモリー１３６、及びインターフェイス１３７を含む。
【００４４】
Ａ／Ｄ変換器１３１は、イメージセンサー１２３から供給されるアナログ信号をデジタル信号に変換する。イメージセンサー１２３の個々のピクセルが受光した特定波長光（赤外線）の光量に応じた大きさのアナログ信号（例えば、電圧値）がイメージセンサー１２３から出力される。Ａ／Ｄ変換器１３１は、イメージセンサー１２３から供給されるアナログ信号をそのアナログ値の大きさを示すデジタル信号に変換して出力する。例えば、イメージセンサー１２３は、１行目のピクセル値を読み出して出力し、これをＮ行目まで繰り返す。Ａ／Ｄ変換器１３１は、イメージセンサー１２３から順次供給されるアナログのピクセル値をデジタル変換して出力する。Ａ／Ｄ変換器１３１がイメージセンサー１２３に組み込まれる場合、コード情報取得部１３０にＡ／Ｄ変換器１３１が組み込まれない。
【００４５】
バッファーメモリー１３２は、Ａ／Ｄ変換器１３１から供給される１以上のフレーム分のイメージデータをバッファーする。バッファーメモリー１３２は、アドレス空間を有するメモリーであり、Ａ／Ｄ変換器１３１から供給されるデジタルのピクセル値が規則に従いアドレス空間にバッファーされる。これにより、イメージセンサー１２３が取得した１フレームの像がバッファーメモリー１３２のアドレス空間に移される。
【００４６】
イメージ処理部１３３は、バッファーメモリー１３２に記憶された１以上のフレーム分のイメージデータに対して様々な画像処理を実行する。例えば、イメージ処理部１３３は、バッファーメモリー１３２上に記憶された１フレーム分のイメージデータに対して輝度調整、コントラスト補正、及び２値化処理をする。輝度調整やコントラスト補正は、デジタルのピクセル信号の値を規則に従い変更する処理である。
【００４７】
２値化処理に関しては、イメージ処理部１３３は、２値化のために調整可能な判定閾値を記憶し、バッファーメモリー１３２のアドレス空間から読み出すデジタルのピクセル値と判定閾値を比較する。例えば、イメージ処理部１３３は、バッファーメモリー１３２のアドレス空間から読み出したデジタルのピクセル値が判定閾値よりも大きければ「１」のデジタル値を出力し、ピクセル値が判定閾値以下であれば「０」のデジタル値を出力する（「１」と「０」の関係を逆転させても良い）。イメージ処理部１３３から出力される２値化されたピクセル値は、プロセッサー１３４を介して第２メモリー１３６のアドレス空間に記憶される。イメージセンサー１２３により撮像された像が、イメージ処理部１３３により２値化された後、第２メモリー１３６のアドレス空間に移される。２値化処理は、ハードウェア的に実現しても、ソフトウェア的に実現しても構わない。
【００４８】
イメージ処理部１３３に対して様々な画像処理フィルター機能を持たせても構わない。このような画像処理フィルター機能は、平滑化フィルター、エッジフィルター等を含む。
【００４９】
プロセッサー１３４は、第２メモリー１３６に記憶された２値化されたイメージデータを処理し、イメージデータに含まれる２次元コード５０に基づいて２次元コード５０（若しくはカード６０）の位置を決定し、また２次元コード５０の符号化された情報をデコードする。プロセッサー１３４は、第２メモリー１３６に記憶された２値化されたイメージデータを処理する際、第１メモリー１３５に記憶された情報（寸法又は形状などに関する条件、テーブル化された情報等の様々な情報を含む）を参照する。
【００５０】
プロセッサー１３４は、第２メモリー１３６に記憶された２値化されたイメージデータに含まれる２次元コード５０を特定する。図７（ａ）に示すように、ファインダーパターンは、非塗りつぶしの円形の中心に塗りつぶしの円形が配置された特徴的な形状を有している。第１メモリー１３５には、ファインダーパターンを識別するための情報が保持されている。例えば、プロセッサー１３４は、第１メモリー１３５に記憶された条件に合致するイメージデータの領域を特定する。例えば、円形の中に円形があるのがファインダーパターンであるとの条件が第１メモリー１３５に記憶されている。プロセッサー１３４は、第１メモリー１３５から読み出したこの条件に従い、第２メモリー１３６に記憶されたイメージデータを対象としてまず円形を示す「１」の連続を探索する処理を行い、次に「１」の連続の円形の中において更に円形を示す「１」の連続を探索する処理を行う。これによりプロセッサー１３４は、第２メモリー１３６に記憶されたイメージデータの中にある２次元コード５０の特定をすることができる。
【００５１】
ファインダーパターン５１の特定は、イメージセンサー１２３の撮像エリア／第２メモリー１３６のアドレス空間に対応する実際の空間における２次元コード５０若しくはファインダーパターン５１の平面的な位置の特定に等しい。２次元コード５０のファインダーパターン５１の位置を２次元コード５０が埋め込まれたカード６０の位置に一致すると見なす場合、プロセッサー１３４は、ファインダーパターン５１の位置をカード６０の位置として決定することができる。２次元コード５０のファインダーパターン５１の位置を２次元コード５０が埋め込まれたカード６０の位置とは見なさない場合、プロセッサー１３４は、ファインダーパターン５１の位置をオフセットした位置をカード６０の位置として決定することができる。
【００５２】
図７（ｂ）に示す別形態の場合、３つのエッジの存在がファインダーパターンであると設定されている。図１に示した枠パターン５４のエッジが代替又は追加のファインダーパターンである。３つのエッジを有することがファインダーパターンであるとの条件が第１メモリー１３５に記憶されている。プロセッサー１３４は、第１メモリー１３５から読み出したこの条件に従い、第２メモリー１３６に記憶されたイメージデータを対象としてエッジ抽出を行う。イメージデータにおけるエッジは、他の輪郭とは異なる特徴的な「１」の分布が存在する。第１メモリー１３５には、この特徴を指定する「１」の分布に関する条件が格納されており、プロセッサー１３４が、その「１」の分布に一致又は近似する領域を特定する。
【００５３】
図７（ｃ）に示す場合、四角形の一辺の存在がファインダーパターンであると設定されている。図１に示した枠パターン５４の一辺が代替又は追加のファインダーパターンである。四角形の一辺がファインダーパターンであるとの条件が第１メモリー１３５に記憶されている。プロセッサー１３４は、第１メモリー１３５から読み出したこの条件に従い、第２メモリー１３６に記憶されたイメージデータを対象として長い辺の抽出を行う。四角形の辺は、「１」が直線的に並んだ辺であり、所定の長さ以上の長さを持つ。プロセッサー１３４は、連続的に並ぶ「１」のピクセル値の長さを判定することでファインダーパターンを認識することができる。より精度を高めるためには四角形の二辺、三辺、又は四辺を対象とすることが望ましい。一辺を構成する幾つかのピクセルから辺の近似式を求め、これを活用してファインダーパターンの特定を行っても構わない。
【００５４】
プロセッサー１３４は、第１メモリー１３５に記憶された条件に従い、オリエンテーションパターン５２を特定する（プログラムに条件が書き込まれていても良い）。ファインダーパターン５１の特定後にオリエンテーションパターン５２を特定することが望ましい。オリエンテーションパターン５２を特定する際、ファインダーパターン５１が特定されていれば、ファインダーパターン５１の周囲の領域に限定してオリエンテーションパターン５２の探索を行っても良い。オリエンテーションパターン５２は、非塗りつぶしの円形であり、「１」のピクセル値が円形を描くように連続し、これが条件として第１メモリー１３５に記憶され、プロセッサー１３４により活用される。なお、条件の判定は、一致に限らず、近似により行っても構わなく、この点は、他についても同様である。
【００５５】
図８に示すように、ファインダーパターン５１とオリエンテーションパターン５２の関係から２次元コード５０（カード６０）の回転角度を求めることができる。図８においては、Ｌ１の線が撮像素子のピクセル列に平行であり、Ｌ２が撮像素子のピクセル行に平行であるものとする。ファインダーパターン５１の座標とオリエンテーションパターン５２の座標に基づいて数１からθを算出することができる。
【数１】
2015191531.tif 000003
【００５６】
図８（ａ）の場合、２次元コード５０（カード６０）の回転角度が０°である。図８（ｂ）の場合、２次元コード５０（カード６０）の回転角度が４５°である。図８（ｃ）の場合、２次元コード５０（カード６０）の回転角度が９０°である。このようにしてファインダーパターン５１とオリエンテーションパターン５２の関係から２次元コード５０及びカード６０の回転角度を決定することができる。
【００５７】
プロセッサー１３４は、プレイフィールド１０１の基準面からの２次元コード５０（カード６０）の高さも決定する。この点に関し、図９及び図１０を参酌して説明を加える。図９に示すようにプレイフィールド１０１の基準面からカード６０の２次元コード５０が離れるに応じてイメージセンサー１２３により撮像される２次元コード５０の大きさが小さくなる。図９（ａ）に示す時に図９（ｄ）に示すファインダーパターン５１がイメージセンサー１２３により撮像される。図９（ｄ）のファインダーパターン５１が基準として用いられる。図９（ｂ）に示す時に図９（ｅ）に示すファインダーパターン５１がイメージセンサー１２３により撮像される。図９（ｃ）に示す時に図９（ｆ）に示すファインダーパターン５１がイメージセンサー１２３により撮像される。図９（ｄ）のファインダーパターン５１の内側の円の直径をｒ０とし、図９（ｅ）のファインダーパターン５１の内側の円の直径をｒ１とし、図９（ｆ）のファインダーパターン５１の内側の円の直径をｒ２とする。ｒ１＝ｒ０／ｋ、ｋ＝ｒ０／ｒ１との比が得られる。同様に、ｒ２＝ｒ０／ｋ’、ｋ’＝ｒ０／ｒ２の比が得られる。
【００５８】
図１０に示すように、ｈ１＝ｋｔ−ｔ＝ｔ（ｋ−１）＝ｔ（（ｒ０／ｒ１）−１）の関係が成り立つ。従って、プレイフィールド１０１からの２次元コード５０（カード６０）の高さは、図９（ｄ）のファインダーパターン５１の内側の円の直径、サンプルの図９（ｅ）のファインダーパターン５１の内側の円の直径、及びのレンズとプレイフィールド１０１間の距離ｔから求めることができる。カード６０が基準面上にある時のファインダーパターン５１の内側の円の直径と、距離ｔは既知の値である。イメージセンサー１２３に写るファインダーパターン５１の内側の円の直径は、イメージセンサー１２３のピクセル数から定めることができる。なお、直径は、幅の概念に含まれ、また寸法の一形態である。
【００５９】
第１メモリー１３５には、図９（ｄ）のファインダーパターン５１の内側の円の直径、距離ｔが組み込まれた関係式が記憶されている（プログラムに関係式が組み込まれていても良い）。プロセッサー１３４は、まず処理対象のイメージデータに関し、そこに含まれるファインダーパターン５１の内側の円の直径を求め、これを第１メモリー１３５に記憶された関係式に代入し、これによりプレイフィールド１０１上のカード６０の高さを決定する。ここで決定するカード６０の高さは、推定値であるが、ある程度の分解能のイメージセンサー１２３を用い、若しくは歪みの少ない集光レンズ１２２を用い、十分な信頼性を確保することができる。
【００６０】
図９においては、ファインダーパターン５１の内側の円を活用し、基準面からのカード６０の高さを求めている。ファインダーパターン５１の内側の円は、カード６０の回転角に依存せず、一定の直径を有するため、活用しやすく、また、２次元コード５０の認識のために既に認識済みのファインダーパターン５１を活用することが処理負荷の低減の観点からしても好ましい。別形態においては、ファインダーパターン５１以外のパターン、例えば、オリエンテーションパターン５２の直径、枠パターン５４の一辺の長さ、ファインダーパターン５１とオリエンテーションパターン５２の間の間隔等が高さの決定のために用いられる。なお、本願明細書においては、パターンとは可視又は可視化できるパターンに限らず、幾何学的に観念することができるパターンを意味する。ファインダーパターン５１とオリエンテーションパターン５２の間の間隔は、ファインダーパターン５１の中心とオリエンテーションパターン５２の中心を結ぶ直線として観念することができ、従って、これも本願明細書で言うパターンに含まれる。
【００６１】
プロセッサー１３４は、プレイフィールド１０１の基準面に対するカード６０（２次元コード５０）の傾きも決定する。この点に関し、図１１及び図１２を参酌して説明を加える。図１１（ａ）に示す時、基準面に対するカード６０の傾きα０＝０°である。図１１（ｂ）に示す時、基準面に対するカード６０の傾きα１＝２０°である。図１１（ｃ）に示す時、基準面に対するカード６０の傾きα２＝４５°である。基準面に対してカード６０が傾く時、イメージセンサー１２３においては２次元コード５０の枠パターン５４が歪んで見える。例えば、図１１（ａ）〜（ｃ）のように傾きが大きくなると、イメージセンサー１２３には、図１１（ｄ）〜（ｆ）のように基準面から離れるに応じて平行であった辺同士が非平行に写る。枠パターン５４の形状は正方形と既知であるため、イメージセンサー１２３が取得する枠パターン５４の形状の変形に基づいて傾きを求めることができる。枠パターン５４の実際の傾きとイメージセンサー１２３が取得する歪んだ枠パターン５４の関係を事前に試験的に明らかにしておくことが求められる。なお、枠パターン５４の検知は、４つのエッジの検出をもって足りる。
【００６２】
イメージセンサー１２３の撮像面で得られた枠パターン５４の空間処理で精密に傾きを求めることができる。まず、イメージセンサー１２３が取得した２次元の枠パターン５４を３次元空間へ復元する。図１２の透視射影モデルのように、レンズから焦点距離ｆだけ離れた仮想的な撮像面にはレンズの中心Ｏと物体の座標Ｑ（Ｘ、Ｙ、Ｚ）を結ぶ直線ＯＱが交差し、これが物体Ｑの撮像面での射影である。従って、射影点ｑ（ｘ、ｙ）については、ｘ＝ｆ（Ｘ／Ｚ）、ｙ＝ｆ（Ｙ／Ｚ）で定まる。この関係を用いれば、枠パターン５４のエッジの座標を３次元空間に復元することができる。３次元空間に復元された枠パターン５４の座標を如何なる方向に如何なる角度だけ回転させれば、基準面上のカード６０の傾きα＝０°の枠パターン５４に合致するのかを求めることができる。この場合、計算コストの観点から回転行列や並進行列を活用しても良い。イメージセンサー１２３が取得する像には歪みやノイズが含まれる。撮像面の座標点をカメラ座標の座標点に変換する際には、事前に試験的に両者の関係を求めておくことが望ましい（カメラキャリブレーションとも呼ばれる）。
【００６３】
図１３乃至図１５を参照してゲーム機１００の動作について説明する。図１３に示すように、プレイヤーがゲーム機１００に硬貨などを投入すると、ゲーム機１００がゲーム動作を開始する。ゲーム機１００のゲーム用コンピューター１４０は、表示部１５０にゲームの開始に応じてゲーム内容に応じた表示を開始する。詳細には、ゲーム用コンピューター１４０のプロセッサーがハードディスクからプログラムのコードを読み出し、プログラムのコードを解釈し、表示制御し、またプレイヤーからの入力に応じた対応を提供する。ゲーム用コンピューター１４０は、光源１１０を点灯させ（Ｓ１０１）、光源１１０から赤外線が出射され、これがプレイフィールド１０１を照明し、プレイフィールド１０１上に配置されるカード６０の２次元コード５０の像がイメージセンサー１２３で取得可能になる。ゲーム機１００の始動と共に、カメラモジュール１２０やコード情報取得部１３０等の入力側の装置も稼働状態になる。
【００６４】
イメージセンサー１２３は、毎秒数十フレームから数百フレームでイメージを取得する（Ｓ１０２）。イメージセンサー１２３により取得されたイメージは、コード情報取得部１３０により処理される（Ｓ１０３）。イメージセンサー１２３から転送されるイメージデータは、Ａ／Ｄ変換器１３１によりデジタル化され、バッファーメモリー１３２に記憶される。バッファーメモリー１３２の構成は任意であり、１フレーム分のイメージデータを保持するメモリーがシリアル接続した構成やフレーム毎にアドレス空間が割り当てられた１つのメモリーの構成を包含する。イメージ処理部１３３がバッファーメモリー１３２にバッファーしたイメージデータを処理、代表的には２値化処理する。２値化処理されたイメージデータが第２メモリー１３６に記憶される。イメージ処理部１３３は、集光レンズ１２２を介してイメージセンサー１２３の撮像エリア上に投影される像に生じる歪みを除去又は低減する処理をしても良い。例えば、集光レンズ１２２のレンズ特性のためにイメージセンサー１２３の矩形の撮像エリアの中心から四隅に近づくにつれて大きな歪みが生じる場合、イメージ処理部１３３は、これを除去又は低減する。
【００６５】
プロセッサー１３４は、第１メモリー１３５に記憶された条件（又はプログラムに書き込まれた条件）を用いて、第２メモリー１３６に記憶された２値のイメージデータを処理し、これにより、パターンを検出する（Ｓ１０４）。パターンの検出には、図１４に示すように、枠パターン検出（Ｓ１０４ａ）、ファインダーパターン検出（Ｓ１０４ｂ）、オリエンテーションパターン検出（Ｓ１０４ｃ）、符号パターン検出（Ｓ１０４ｄ）が含まれ、順不同である。好適な形態においては、プロセッサー１３４は、まずファインダーパターン５１を認知し、次に、オリエンテーションパターン５２を認知し、次に符号パターン５３を認知する。
【００６６】
プロセッサー１３４は、カード６０のＸＹＺ座標を求め、回転角度θを求め、更に傾きαを求める（Ｓ１０５）。この位置・姿勢情報の検出には、図１５に示すように、Ｘ、Ｙ座標の算出（Ｓ１０５ａ）、Ｚ座標の算出（Ｓ１０５ｂ）、回転角度θの算出（Ｓ１０５ｃ）、傾きαの算出（Ｓ１０５ｄ）を含む。Ｘ、Ｙ座標に関しては、イメージセンサー１２３の撮像エリア上の２次元コードの位置とプレイフィールド１０１上の対象物の位置の相関関係を前提として、イメージセンサー１２３の撮像エリア上の２次元コードの位置でプレイフィールド１０１上の対象物の位置を代用しても構わない。Ｚ座標の算出（Ｓ１０５ｂ）、回転角度θの算出（Ｓ１０５ｃ）、傾きαの算出（Ｓ１０５ｄ）に際しては、プロセッサー１３４は、第１メモリー１３５の条件を用いるが、必ずしもこの限りでは無く、プログラムに組み込まれた条件に従って算出処理を行っても良い。
【００６７】
次に、プロセッサー１３４は、符号パターン５３をデコードする。符号パターン５３は、ファインダーパターン５１を中心とする異径の同心円上に配置される。オリエンテーションパターン５２から定まる基準位置から仮想の同心円上の符号パターンを順に検知することにより「１」と「０」のデジタル列を作成することができる。ファインダーパターン５１側の内側から反対側の外側へ同じ処理をすれば、符号パターン５３のデコードが完了する。次に、プロセッサー１３４は、ステップＳ１０５で得た位置・姿勢情報とステップＳ１０６で得たデコードデータをインターフェイス１３７に出力する（Ｓ１０７）。インターフェイス１３７を介してデータがゲーム用コンピューター１４０に送信される。ゲーム用コンピューター１４０は、受信したデータに応じたゲームの進行を提供する（Ｓ１０８）。
【００６８】
図１６に別例の２次元コード５０を示す。図１６の２次元コードを用いる場合、ファインダーパターン５１が３点あるため、オリエンテーションパターンを省略することができる。符号パターン５３は、矩形ドットであり、このデコード方法は周知のとおりである。
【００６９】
図１７にゲーム機１００の別例を示す。図１７に示す場合、基準面のプレイフィールド１０１がプレイヤーにとって横ではなく縦に配置される。プレイヤーの首には、２次元コードが付与された円形プレートをチェーン内に含むネックレスがかけられている。ゲーム機１００は、上述と同じ手法でプレイフィールド１０１までの各プレイヤーの距離を推定することができる。このように様々なゲーム機１００への活用が見込まれる。ゲーム機以外への活用も検討されている。
【００７０】
図１８は、２種類の２次元コードを用いる場合を示す。図１８（ａ）（ｂ）の例のように、ファインダーパターン５１の内側の円形の直径を変化させることで、プレイフィールド１０１上で同じ高さにあるカード６０であっても、カード６０に付与された２次元コード５０のファインダーパターン５１の内側の円形の直径の違いにより、プレイフィールド１０１上で異なる高さに存在するかのようにゲーム機１００に認識させることができる。ゲーム内容に応じて２次元コード５０の種類を増やし、これによりゲーム内容の多様化を図ることもできる。
【００７１】
図１９は、プロセッサー１３４が、各フレームについて算出した２次元コード５０又はカード６０のＸＹＺ座標を第３メモリー１３７に記憶する。例えば、プロセッサー１３４は、Ｎ＋１（Ｎは１以上の自然数）番目のフレームのイメージデータから２次元コード５０のＸＹＺ座標を算出した後、Ｎ番目のフレームのイメージデータから求めた対応の２次元コード５０のＸＹＺ座標と比較する。３次元空間において各ＸＹＺ座標点を結ぶことで移動量（移動距離）と移動方向を示すベクトルを求めることができる。フレーム間の時間間隔が既知である。従って、移動量（移動距離）をフレーム間隔の時間で除算することで移動速度を求めることができる。プロセッサー１３４は、あるフレームに関する２次元コード５０又はカード６０の位置・姿勢情報（ＸＹＺ、θ、α）に加えて移動情報（移動量、移動方向、移動速度）も加えてデコードデータと共に情報を提供可能である。
【００７２】
＜第２実施形態＞
図２０を参照して第２実施形態について説明する。図２０は、コード情報取得部が２次元コードの高さを検知する方法を示す説明図である。第１実施形態においては、図９（ａ）に示すプレイフィールド１０１上にカード６０が置かれた時に撮像されるファインダーパターン５１の内側の円の幅との比較において図９（ｂ）や図９（ｃ）に示す時のカード６０の高さを推定していた。しかし、プレイフィールド１０１上でカード６０が時間的に連続的に動き、この動きを検知すれば良い場合、図９（ａ）の時に撮像される像を基準として用いる必要はない。本実施形態では、時間的に前後するフレーム間においてファインダーパターン５１の内側の円の大きさを比較し、これによりＺ軸方向の２次元コード５０又はカード６０の変位を求める。このような場合においても第１実施形態と同様の効果を得ることができる。
【００７３】
図２０（ａ）に示す時の高さｈ１は不問とする。図２０（ａ）から図２０（ｂ）に示すようにカードが移動されるものとする。図２０（ｃ）は、図２０（ａ）の時に撮像されたイメージデータに含まれるファインダーパターン５１を示す。図２０（ｄ）は、図２０（ｂ）の時に撮像されたイメージデータに含まれるファインダーパターン５１を示す。図２０（ｃ）、（ｄ）のファインダーパターン５１の内側の円の直径ｒ１、ｒ２を比較し、その比ｋを求めることができる。図１０に関して説明した論理に基づけば、ｈ２を算出できる。
【００７４】
上述の教示を踏まえると、当業者をすれば、各実施形態に対して様々な変更を加えることができる。２次元コードの空間位置から２次元コードが付与された対象の空間位置が決定されることは明らかである。一つの２次元コードの位置を決定することに関して説明したが、１フレーム中に複数の２次元コードが含まれる場合も同様に処理することは当業者が理解できるところである。具体的なプログラムの記述やシステム構成は当業者が適宜決定することができる。図６に示した構成図は、説明のためのものであり、実際のハードウェア構成とは異なる場合がある。コード情報取得部１３０ではなく、ゲーム用コンピューター１４０が、符号パターン５３の位置に基づいてカード６０の位置を決定しても良い。
【符号の説明】
【００７５】
１００  ゲーム機
５０  ２次元コード
６０  カード
１２３  イメージセンサー
１３０  コード情報取得部
【図１】
2015191531.tif 000004
【図２】
2015191531.tif 000005
【図３】
2015191531.tif 000006
【図５】
2015191531.tif 000007
【図６】
2015191531.tif 000008
【図７】
2015191531.tif 000009
【図８】
2015191531.tif 000010
【図１３】
2015191531.tif 000011
【図１４】
2015191531.tif 000012
【図１５】
2015191531.tif 000013
【図１６】
2015191531.tif 000014
【図１７】
2015191531.tif 000015
【図１８】
2015191531.tif 000016
【図１９】
2015191531.tif 000017
【図４】
2015191531.tif 000018
【図９】
2015191531.tif 000019
【図１０】
2015191531.tif 000020
【図１１】
2015191531.tif 000021
【図１２】
2015191531.tif 000022
【図２０】
2015191531.tif 000023