JP2008198111A - 指示位置演算システム、指示体及びゲームシステム - Google Patents

指示位置演算システム、指示体及びゲームシステム Download PDF

Info

Publication number
JP2008198111A
JP2008198111A JP2007035227A JP2007035227A JP2008198111A JP 2008198111 A JP2008198111 A JP 2008198111A JP 2007035227 A JP2007035227 A JP 2007035227A JP 2007035227 A JP2007035227 A JP 2007035227A JP 2008198111 A JP2008198111 A JP 2008198111A
Authority
JP
Japan
Prior art keywords
pixel
unit
light
light emitting
position calculation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007035227A
Other languages
English (en)
Other versions
JP4861854B2 (ja
Inventor
Chun Liang Kuo
俊良 郭
Shing Lung Tai
興榮 戴
Tatsuji Kumabayashi
達二 熊林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHOKO JITSUGYO YUGENKOSHI
Bandai Namco Entertainment Inc
Zeroplus Technology Co Ltd
Original Assignee
SHOKO JITSUGYO YUGENKOSHI
Namco Bandai Games Inc
Zeroplus Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHOKO JITSUGYO YUGENKOSHI, Namco Bandai Games Inc, Zeroplus Technology Co Ltd filed Critical SHOKO JITSUGYO YUGENKOSHI
Priority to JP2007035227A priority Critical patent/JP4861854B2/ja
Priority to EP08151315A priority patent/EP1962103B1/en
Priority to US12/068,819 priority patent/US8290214B2/en
Priority to AT08151315T priority patent/ATE476672T1/de
Priority to ES08151315T priority patent/ES2350381T3/es
Priority to DE602008001997T priority patent/DE602008001997D1/de
Publication of JP2008198111A publication Critical patent/JP2008198111A/ja
Application granted granted Critical
Publication of JP4861854B2 publication Critical patent/JP4861854B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/219Input arrangements for video game devices characterised by their sensors, purposes or types for aiming at specific areas on the display, e.g. light-guns
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F41WEAPONS
    • F41GWEAPON SIGHTS; AIMING
    • F41G3/00Aiming or laying means
    • F41G3/26Teaching or practice apparatus for gun-aiming or gun-laying
    • F41G3/2616Teaching or practice apparatus for gun-aiming or gun-laying using a light emitting device
    • F41G3/2622Teaching or practice apparatus for gun-aiming or gun-laying using a light emitting device for simulating the firing of a gun or the trajectory of a projectile
    • F41G3/2627Cooperating with a motion picture projector
    • F41G3/2633Cooperating with a motion picture projector using a TV type screen, e.g. a CRT, displaying a simulated target
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F41WEAPONS
    • F41GWEAPON SIGHTS; AIMING
    • F41G3/00Aiming or laying means
    • F41G3/26Teaching or practice apparatus for gun-aiming or gun-laying
    • F41G3/2616Teaching or practice apparatus for gun-aiming or gun-laying using a light emitting device
    • F41G3/2622Teaching or practice apparatus for gun-aiming or gun-laying using a light emitting device for simulating the firing of a gun or the trajectory of a projectile
    • F41G3/2661Teaching or practice apparatus for gun-aiming or gun-laying using a light emitting device for simulating the firing of a gun or the trajectory of a projectile in which the light beam is sent from the target to the weapon
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • G01S5/163Determination of attitude
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0325Detection arrangements using opto-electronic means using a plurality of light emitters or reflectors or a plurality of detectors forming a reference frame from which to derive the orientation of the object, e.g. by triangulation or on the basis of reference deformation in the picked up image
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8076Shooting

Abstract

【課題】軽い処理負荷で高速かつ正確に指示位置を演算することができる指示位置演算システムを提供すること。
【解決手段】システム利用者により指示体16が発光部22に向けられると、指示体16に取り付けられた撮像部18が発光部22を含む所定領域の画像PAを撮像する。そして、画像PAを構成する各画素の受光情報に基づいて各画素が第1の条件を満たしているか判定し、第1の条件を満たす有効画素を発光部22に対応する画素として扱って、有効画素の画像における位置から指示体の指示位置を演算する。ここで、第2の条件を満たす有効画素と第2の条件を満たさない有効画素とで、有効画素の識別情報に対する重み付けを異ならせて有効画素の識別情報に基づいて有効画素の代表値を演算する。
【選択図】図6

Description

本発明は、指示位置演算システム、指示体及びゲームシステムに関する。
従来から、銃型コントローラを用いたシューティングゲームシステムや、ポインティングデバイスを用いたプレゼンテーションシステムなどのように、モニタやスクリーンなどの指示面における指示体の指示位置を演算する指示位置演算システムが知られている。このような指示位置演算システムでは、指示面の近傍に赤外光発光部などを配置し、これを指示体の先端に設けたイメージセンサ(受光センサ)で撮像し、撮像した画像における発光部の位置に基づいて指示体の指示位置を演算している。
このような指示位置演算システムでは、撮像した画像を構成する各画素の受光情報が所定の閾値よりも大きい場合に当該画素が発光部に対応する画素であると判定し、当該画素の位置に基づいて指示体の指示位置を演算する。かかる技術として、例えば特許第2961097号公報に開示される従来技術がある。
特許第2961097号公報
しかし従来の指示位置演算システムでは、所定の閾値よりも大きいと判定された画素を一律に扱って位置演算を行っていたため、例えば発光部に対応する画素のうち、発光部の中心部に対応する画素と、発光部の周辺部に対応する画素とを区別することができず、正確に指示体の指示位置を演算することができない場合があった。特にイメージセンサが設けられた指示体が高速に移動すると、イメージセンサが撮像した画像における発光部に対応する画素群が指示体の移動方向に延びるように変形する場合があるが、かかる画素群を発光部に対応する画素として一律に扱って指示体の指示位置を演算すると、正確な演算結果を得られない場合があった。
本発明は以上のような課題に鑑みてなされたものであり、その目的とするところは、軽い処理負荷で高速かつ正確に指示位置を演算することができる指示位置演算システム、指示体及びゲームシステムを提供することにある。
(1)本発明は、
指示体の指示位置を演算する指示位置演算システムであって、
発光部と、
撮像した画像の各画素の受光情報を出力する撮像部と、
前記撮像部が取り付けられている指示体と、
前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
を含み、
前記演算部が、
前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システムに関係する。
また本発明は、
発光部と、
撮像した画像の各画素の受光情報を出力する撮像部と、
前記撮像部が取り付けられている指示体と、
前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
を含む指示位置演算システム用の指示体であって、
前記演算部が、
前記有効画素のうち前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システム用の指示体に関係する。
本発明において、「画素の識別情報」とは、画像における画素の位置を特定することができる情報であって、例えば画素のアドレスデータやカウント値とすることができる。
本発明では、システム利用者により指示体が発光部に向けられると、指示体に取り付けられた撮像部が発光部を含む所定領域の画像を撮像する。そして、画像を構成する各画素の受光情報に基づいて各画素が第1の条件を満たしているか判定し、第1の条件を満たす有効画素を発光部に対応する画素として扱って、有効画素の画像における位置から指示体の指示位置を演算する。そして本発明によれば、第2の条件を満たす有効画素と第2の条件を満たさない有効画素とで、有効画素の識別情報に対する重み付けを異ならせて有効画素の識別情報に基づいて有効画素の代表値を演算する。
これにより本発明によれば、例えば受光情報が相対的に大きく明るい画素は発光部の中心に近い部分に対応する画素として、有効画素の代表値を演算する際の影響度を高め、受光情報が相対的に小さく暗い画素は発光部の周辺部分に対応する画素として、有効画素の代表値を演算する際の影響度を低めることによって、より正確に指示位置を演算することができる。特に撮像部が設けられた指示体が高速に移動して、撮像部が撮像した画像における発光部に対応する画素群が指示体の移動方向に延びるように変形するような場合であっても、残像に対応する画素については代表値を演算する際の影響度を低めることにより、正確に指示位置を演算することができる。
(2)また本発明に係る指示位置演算システム、指示体では、
前記判定部が、
前記受光情報が第1の閾値よりも大きい場合に前記画素が前記第1の条件を満たすと判定し、前記受光情報が前記第1の閾値よりも大きい第2の閾値よりも大きい場合に前記画素が前記第2の条件を満たすと判定し、
前記演算部が、
前記第2の条件を満たす有効画素の識別情報に対する重み付けを前記第2の条件を満たさない有効画素の識別情報に対する重み付けよりも大きくして前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うようにしてもよい。
本発明によれば、受光情報が相対的に大きく明るい画素は発光部の中心に近い部分に対応する画素として、有効画素の代表値を演算する際の影響度を高め、受光情報が相対的に小さく暗い画素は発光部の周辺部分に対応する画素として、有効画素の代表値を演算する際の影響度を低めることによって、より正確に指示位置を演算することができる。
(3)また本発明に係る指示位置演算システム、指示体では、
前記撮像部が、
撮像した画像の一端側を始点画素、他端側を終点画素として、前記始点画素から前記終点画素までの各画素の受光情報を連続的に出力し、前記指示体の基準姿勢において下方に前記始点画素が配置され上方に前記終点画素が配置される状態で前記指示体に取り付けられ、
前記演算部が、
前記有効画素が前記発光部に対応する画素である場合に前記指示体の指示位置が求められるように、最先に前記第1の条件を満たすと判定された第1の有効画素の識別情報に基づいて前記位置演算を行うようにしてもよい。
本発明において「指示体の基準姿勢」とは、予め定められた指示体の姿勢(向き、位置)であって、指示体に取り付けられた撮像部の始点画素が下方に位置し、終点画素が上方に位置する姿勢である。この「指示体の基準姿勢」は指示位置演算システムの態様や指示体の態様に応じて種々の姿勢とすることができ、通常の態様で指示体を用いた場合の平均的な姿勢とすることができる。ここで通常の態様とは、指示体の形状から定まる使用態様や、説明書などによりシステム利用者に告知した使用態様とすることができる。
本発明では、ノイズに対応する画素が存在する場合には、所与の条件を満たす画素が発光部に対応する画素かノイズに対応する画素かを判別しないと、ノイズに対応する画素についても発光部に対応する画素として扱って位置演算を行ってしまう。この場合には、正確に指示位置を演算することができない。
しかし本発明のような指示位置演算システムが設置される状況では、ノイズ発生源は現実空間において発光部よりも上方に存在する場合が多い。例えば発光部を赤外光光源とする場合には、外光が入射してくる窓や白熱電灯なども赤外光光源となるためノイズ発生源となるが、窓や電灯類は発光部よりも上方に存在する場合が多い。よって撮像部が撮像した画像では、発光部よりも上方を撮像した領域にノイズに対応する画素が発生する場合が多い。一方、発光部よりも下方を撮像した領域にはノイズに対応する画素は発生し難い。
そこで本発明ではかかる状況に着目し、指示体の基準姿勢において下方に始点画素が配置され上方に終点画素が配置される状態で、撮像部を指示体に取り付けている。そして、撮像部が撮像した画像の下方に対応する始点画素から各画素の受光情報を連続的に出力する。即ち指示体が基準姿勢にある場合に、ノイズに対応する画素が発生し難い下方に対応する画素から各画素の受光情報を連続的に出力する。
従って本発明では、指示体が基準姿勢であれば、撮像部から受光情報が出力された画素のうち最先に所与の条件を満たすと判定された第1の画素は、ノイズではなく発光部に対応する画素となるので、発光部に対応する画素かノイズに対応する画素かを判定しなくとも、第1の画素を発光部に対応する画素として扱って正確に指示位置を演算することができる。こうして本発明によれば、所与の条件を満たす画素が、発光部に対応する画素かノイズに対応する画素かを判定する必要がなく、軽い処理負荷で高速かつ正確に指示位置を演算することができる。
(4)また本発明に係る指示位置演算システム、指示体では、
前記演算部が、
前記第1の有効画素を含む所定範囲に判定領域を設定し、前記有効画素のうち前記判定領域に含まれる有効画素の識別情報に基づいて、前記位置演算を行うようにしてもよい。
本発明によれば、所定範囲の判定領域に含まれる画素を発光部に対応する画素として扱うことができる。従って、所定範囲の判定領域に含まれる複数の画素の識別情報を用いることによって、より正確に指示位置を演算することができる。
(5)また本発明に係る指示位置演算システム、指示体では、
前記発光部が、
所定の位置関係を有する複数の発光部から構成され、
前記演算部が、
前記第1の有効画素を含む所定範囲に第1の判定領域を設定するとともに、前記第1の判定領域以外の有効画素であって最先に前記第1の条件を満たすと判定された第2の有効画素を含む所定範囲に第2の判定領域を設定し、前記第1の判定領域に含まれる有効画素の識別情報と、前記第2の判定領域に含まれる有効画素の識別情報とに基づいて、前記位置演算を行うようにしてもよい。
本発明では、発光部が例えば第1の発光部と第2の発光部の2つの発光部から構成されている場合には、第1の判定領域に含まれる画素を第1の発光部に対応する画素として扱い、第2の判定領域に含まれる画素を第2の発光部に対応する画素として扱うことができる。更に第3、第4の発光部を有する場合には、第3、第4の判定領域を設定するようにしてもよい。従って本発明によれば、複数の発光部を設けて指示体の指示位置を演算する場合でも、各発光部について複数の画素の識別情報を用いることによって、より正確に指示位置を演算することができる。
(6)また本発明に係る指示位置演算システム、指示体では、
前記発光部に設けられ、前記発光部から水平方向よりも下方の所定範囲の方向に進行する光を遮蔽する遮蔽部を更に含むようにしてもよい。
本発明によれば、例えば発光部と撮像部(指示体)との間にガラステーブルが設置されている場合など、ノイズとなる発光部からの光の反射光を発生させる反射面が発光部の下方に存在する場合であっても、発光部よりも下方から撮像部に入射する反射光の発生を防止することができる。
(7)また本発明に係る指示位置演算システム、指示体では、
前記遮蔽部は、
前記発光部と前記撮像部とが所与の基準位置関係にある場合に、前記撮像部に入射する反射光を前記発光部よりも下方において発生させる方向に前記発光部からの光を進行させない位置に設けられているようにしてもよい。
本発明によれば、発光部と撮像部とが基準位置関係にある場合に、発光部よりも下方から撮像部に入射する反射光の発生を防止することができる。従って本発明によれば、指示位置演算システムの使用用途に応じた基本的な態様にある場合において、発光部よりも下方から撮像部に入射する反射光の発生を確実に防止することができる。
(8)また本発明に係る指示位置演算システム、指示体では、
前記発光部は、
前記発光部と前記撮像部とが所与の基準位置関係にある場合に、前記撮像部に入射する反射光を前記発光部よりも下方において発生させる方向に前記発光部からの光を進行させない方向に向けて設けられているようにしてもよい。
本発明によれば、遮蔽部を設けなくとも発光部を設ける向きにより、発光部と撮像部とが基準位置関係にある場合に、発光部よりも下方から撮像部に入射する反射光の発生を防止することができる。従って本発明によれば発光部を設ける向きにより、指示位置演算システムの使用用途に応じた基本的な態様にある場合において、発光部よりも下方から撮像部に入射する反射光の発生を確実に防止することができる。
(9)また本発明に係る指示位置演算システム、指示体では、
前記指示体に設けられ、前記発光部からの光と同じ波長帯の光を前記撮像部に透過させるフィルタを更に含むようにしてもよい。
本発明によれば、発光部からの光と異なる波長帯の光によるノイズを低減させることにより、より正確に指示位置を演算することができる。
(10)また本発明に係る指示位置演算システム、指示体では、
前記発光部が、
所定の位置関係を有する複数の発光部から構成され、
前記演算部が、
前記複数の発光部の各発光部に対応する代表値に基づいて前記位置演算を行うようにしてもよい。
本発明によれば、複数の代表値の位置関係を用いて指示位置を演算することにより、より正確に指示位置を演算することができる。
(11)また本発明は、
指示体の指示位置を演算するゲームシステムであって、
オブジェクトを表示させる表示部と、
前記表示部に対して所与の位置関係にある発光部と、
撮像した画像の各画素の受光情報を出力する撮像部と、
前記撮像部が取り付けられている指示体と、
前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
を含み、
前記演算部が、
前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とするゲームシステムに関係する。
本発明によれば、例えば受光情報が相対的に大きく明るい画素は発光部の中心に近い部分に対応する画素として、有効画素の代表値を演算する際の影響度を高め、受光情報が相対的に小さく暗い画素は発光部の周辺部分に対応する画素として、有効画素の代表値を演算する際の影響度を低めることによって、より正確に指示位置を演算することができるゲームシステムを実現することができる。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.システム概略
図1は、本実施形態の指示位置演算システムを適用したゲームシステム10の概略外観図である。本実施形態のゲームシステム10は、表示画面11に標的オブジェクトTOなどのゲーム画像を表示させる表示部12と、表示部12の上部に設けられ、赤外光LED等の赤外光光源を有する2個の発光部13、14からなる発光ユニット15と、プレーヤPが把持して位置、向きを任意に変更可能であって、表示画面11上の任意の位置を指示するコントローラ16(指示体、シューティングデバイス、ポインティングデバイス)と、ゲーム処理等を行うゲーム機17と、を含む。
本実施形態の発光部13、14はその前面に赤外光光源が設けられ、その前面をプレーヤの存在位置方向である表示画面11の向きに合わせ、表示部12の上面に所定間隔の距離をおいて固定設置される。そして発光部13、14は、光源から赤外光を前面方向に進行させる。
また本実施形態のコントローラ16は、銃の形状を模して成型されており、表示画面11に向けられる銃身GBと、銃身GBから延出しプレーヤPが手で把持するグリップGGと、グリップGGを把持した手の人差し指で操作可能なトリガGTとを有する。そして銃身GBの先端には、CMOSセンサなどのイメージセンサ18(受光部、撮像部)が設けられており、コントローラ16(銃身GB)の先端を向けた方向から入射する赤外光(発光部13、14が出射する光と同様の波長帯の光)を受光して、これを画像として取得(撮像)する。
ここで本実施形態では、イメージセンサ18の前面側(コントローラ16の更に先端側)に、赤外光に対応する波長帯の光(発光部13、14からの光と同様の波長の光)のみを透過させるフィルタFIを設け、イメージセンサ18に入射する光が所定の波長帯の光となるようにしている。なおフィルタFIを設けずに、赤外光(所定の波長の光)が含まれる所定範囲の波長帯の受光感度特性を有するイメージセンサをイメージセンサ18として用いるようにしてもよい。
そしてゲームシステム10は、イメージセンサ18が撮像した画像における発光部13、14の位置情報と、予め設定された基準位置情報とから、発光部13、14とコントローラ16との位置関係を求め、表示画面11上におけるコントローラ16の指示位置の情報を演算する。そしてゲームシステム10は、コントローラ16のトリガGTが引かれたときのコントローラ16の指示位置が、表示画面11に表示させた標的オブジェクトTOの位置と一致するか否かを判定して、画像の表示制御処理や得点演算処理などのゲーム処理を行う。
図2は、コントローラ16を表示画面11に向けたときにイメージセンサ18が撮像した画像PC1の一例を示す図である。本実施形態のイメージセンサ18は、矩形の面上に175×126の計22050個の受光素子(撮像素子)がマトリクス状に配列されており、1つの受光素子を1つの画素とする画像PC1を撮像する。本実施形態では画像PC1は、1/54秒ごとにコントローラ16の位置、向きに応じて更新される。そして画像PC1のうち、発光部13、14からの赤外光を撮像した領域である2つの赤外光源領域IrA1、IrA2の位置情報を用いて、表示画面11に対するコントローラ16の指示位置の情報を演算する。本実施形態では、画像PC1の中心点である原点Oをコントローラ16が指示する点とし、原点Oと、画像PC1における赤外光源領域IrA1、IrA2と、画像PC1における表示画面11に対応する領域である表示画面領域DpAとの位置関係から、表示画面11に対するコントローラ16の指示位置の情報を演算する。
図2の例では、画像PC1の中央よりもやや上方において、赤外光源領域IrA1とIrA2とを結ぶ直線lが画像PC1の基準線L(イメージセンサ18のX軸)に対して時計回りにω°回転された状態で、赤外光源領域IrA1、IrA2が形成されている。従って図2の例では、原点Oは表示画面領域DpAの右下部の所定位置に対応させることができ、表示画面11上におけるコントローラ16の指示位置の座標を求めることができる。そして、赤外光源領域IrA1、IrA2を結ぶ直線lの基準線Lに対する回転角度ωから、表示画面11に対するコントローラ16の指示方向軸回りの回転角度を求めることができる。また、コントローラ16が表示画面11と所定距離にあるときの赤外光源領域IrA1とIrA2との基準距離Dを予め設定しておくことにより、基準距離Dと、図2の例における赤外光源領域IrA1とIrA2との距離dとの比に基づき、図2の例における表示画面11に対するコントローラ16の距離を求めることができる。
こうして本実施形態では、図1に示すようにプレーヤPがコントローラ16を把持しながら手を動かしたり、プレーヤP自身が移動することによりコントローラ16の位置、向きを変化させても、表示画面11上におけるコントローラ16の指示位置等の情報を演算することができる。
なお図1の例では、ゲーム機17とコントローラ16とがケーブルにより接続されているが、ゲーム機17とコントローラ16との間で無線通信により情報を送受信するようにしてもよい。また発光部13、14の配置位置は表示部12の上部のみならず、表示部12の下部や側部など任意の位置とすることができる。即ちコントローラ16が表示画面11を指示した場合にイメージセンサ18が光を受光できる範囲において、表示部12に対して所与の位置関係を有する位置であればよい。
2.イメージセンサの構成
次に本実施形態のイメージセンサ18の構成の詳細について説明する。図3は、イメージセンサ18が取り付けられたコントローラ16を真横から見た状態と、イメージセンサ18を拡大して正面から見た状態とを示す図であり、コントローラ16に対するイメージセンサ18の取り付け状態を説明するための図である。図3に示すように本実施形態のイメージセンサ18は、その受光面SFが銃身GBの指示方向BDに対して直交するようにコントローラ16に取り付けられている。かつ、イメージセンサ18のX軸(基準線L)がグリップGGの取付方向GDに対して直交するように、コントローラ16に取り付けられている。
従って、グリップGGの取付方向GDを鉛直下方向に向けてプレーヤPがコントローラ16を把持すると、指示方向BDとイメージセンサ18のX軸(基準線L)とが水平となる。そして本実施形態では、このようなグリップGGの取付方向GDを鉛直下方向に向けた状態を、コントローラ16の基準姿勢としている。即ち、銃型をしたコントローラ16をプレーヤPが現実の銃を構えるように使用したときのコントローラ16の平均的な姿勢(向き、使用態様)を、コントローラ16の基準姿勢としている。
そしてイメージセンサ18は、矩形の受光面SF上に配列された175×126の計22050個の受光素子がそれぞれコントローラ16の先端を向けた方向から入射する赤外光を受光し、各画素の受光情報を連続的に出力する。するとコントローラ16は、各画素の受光情報が発光部13、14の光量に応じて設定された閾値よりも大きいか否か(所与の条件を満たす有効画素か否か)を判定することにより、各画素が赤外光に対応する画素か否かを判定する。しかし赤外光に対応する画素は、発光部13、14に対応する画素だけでなく、発光部13、14以外の赤外光光源(発光部13、14が出射する光と同様の波長帯の光源)に対応する画素である場合がある。
図4(A)は、表示画面11の正面側から見た発光部13、14の周辺の状況を示す図である。本実施形態のゲーム機17として家庭用ゲーム機を用い、表示部12として家庭にあるテレビモニタを用いて、ゲームシステム10を家庭の部屋などにおいて構成した場合には、発光部13、14以外の赤外光光源が存在する場合がある。例えば図4(A)に示すように、外光が入射してくる窓WDや白熱電灯WHなども赤外光光源となるため、窓WDや白熱電灯WHなどを光源とする赤外光をイメージセンサ18が受光すると、これがノイズとなって正確な指示位置を演算することができなくなる原因となる。
図4(B)は、図4(A)の状況においてコントローラ16を基準姿勢にして、表示画面11に向けたときにイメージセンサ18が撮像した画像PC2を示している。図4(A)に示すように、現実空間において窓WDや白熱電灯WHなどは、表示画面11の上部に配置した発光部13、14よりも更に上方に位置する場合が多い。従って図4(B)に示すように、イメージセンサ18が撮像した画像PC2では、発光部13、14よりも上方を撮像した領域UAに窓WDによるノイズ領域NA1や白熱電灯WHによるノイズ領域NA2に対応する画素が発生する場合が多い。
ここで従来の指示位置演算システムでは、図4(B)に示す画像PC2の図中左上隅の画素を始点とし図中右下隅の画素を終点として、上部の行から下部の行へと各行を走査しながら各画素について受光情報を連続的に出力し、各画素が光源に対応する画素か否かを判定していた。即ち従来の指示位置演算システムでは、コントローラ16の基準姿勢において上方に始点画素が配置され下方に終点画素が配置される状態で、コントローラ16にイメージセンサ18が取り付けられていた。このように従来の指示位置演算システムでは、ノイズに対応する画素が発生しやすい上方の画素から各画素について受光情報を連続的に出力していたため、光源に対応する画素には発光部13、14に対応する画素の他、ノイズ領域NA1、NA2に対応する画素も含まれていた。従って、光源に対応する画素のうち発光部13、14に対応する画素とノイズに対応する画素とを判別する処理を必要としていた。
しかし図4(B)に示すように、発光部13、14よりも下方を撮像した領域DAにはノイズに対応する画素は発生し難い。そこでかかる状況に着目し本実施形態では、コントローラ16の基準姿勢において下方に始点画素SPが配置され上方に終点画素EPが配置される状態で、イメージセンサ18をコントローラ16に取り付けている。そしてイメージセンサ18は、撮像した画像PC2の図中右下隅の画素を始点画素SPとして始点画素SPから左方向に水平走査し、下端の行の走査が終了すると一行上の行の画素を右端から左方向に水平走査する。こうして下部の行から上部の行へと各行を走査しながら、図中左上隅の終点画素EPまで各画素について受光情報を連続的に出力する。即ちコントローラ16が基準姿勢にある場合に、ノイズに対応する画素が発生し難い下方に対応する画素から各画素の受光情報を連続的に出力する。
従って本発明では、コントローラ16が基準姿勢であれば、イメージセンサ18から受光情報が出力された画素のうち最先に所与の条件を満たすと判定された第1の有効画素FPが発光部13、14のいずれかに対応する画素となるので、光源に対応する画素が発光部13、14に対応する画素かノイズに対応する画素かを判別しなくとも、第1の有効画素FPを発光部13、14に対応する画素として扱って正確に指示位置を演算することができる。こうして本発明によれば、所与の条件を満たす有効画素が、発光部13、14に対応する画素かノイズに対応する画素かを判定する必要がなく、軽い処理負荷で高速かつ正確に指示位置を演算することができる。
3.回路構成
図5は、本実施形態のコントローラ16に実装された指示位置検出部の機能ブロック図が示されている。この指示位置検出部は、イメージセンサ18と、ASIC200と、MCU300と、USB400とを含む。
イメージセンサ18は、MCU300からイニシャル信号を受信すると初期化され、コントローラ16の先端を向けた方向から入射する赤外光を受光することにより画素ごとに受光情報を取得して、コントローラ16の先端を向けた方向の画像を撮像する。本実施形態では、各画素の受光情報(受光量)を00〜FFまでの16進数2桁により取得する。そして、撮像した画像の一端側を始点画素、他端側を終点画素として、始点画素から終点画素までの各画素の受光情報をASIC200に連続的に出力する。
またイメージセンサ18は、ASIC200の制御部220にピクセルクロックと垂直同期信号を出力し、ピクセルカウンタ230にピクセルクロックを出力する。これにより制御部220とピクセルカウンタ230は、イメージセンサ18の各画素の受光情報の出力タイミングと同期がとられている。
ASIC200は、判定部210と、制御部220と、ピクセルカウンタ230とを含む。
判定部210は、イメージセンサ18から連続的に出力される各画素の受光情報に基づいて、各画素が所与の条件を満たすか否かを判定する。詳細には判定部210は、各画素の受光情報が80(16進数2桁)以上である場合に第1の条件を満たすと判定し、受光情報が80以上の画素が赤外光光源に対応する画素であるとしている。
更に本実施形態では判定部210は、各画素が第1の条件を満たすか否かを判定するとともに、第1の条件を満たす有効画素が第2の条件を満たすか否かを判定する。即ち光源に対応する画素を構成する画素群は、画素群の中心が明るく(ブライト)、その周囲に行くに従って輝度が落ちて暗くなる(ダーク)。そこで本実施形態では、有効画素の受光情報がF0以上である場合に第2の条件を満たすと判定し、80〜EFの画素は赤外光光源の周辺部に対応する暗画素であるとし、F0〜FFの画素は赤外光光源の中心部に対応する明画素であるとしている。
そして判定部210は、イメージセンサ18から連続的に出力される各画素の受光情報が第1の条件を満たしていると判定する間、イネーブル信号を制御部220に出力するとともに、各画素の受光情報が第2の条件を満たしている場合には当該画素がブライトであることを示す明信号をMCU300のピクセルFIFO340に出力する。
制御部220は、判定部210からイネーブル信号を受信している間、ピクセルカウンタ230から出力される15ビットのカウント値の、ピクセルFIFO340への書き込みを許可する。ここでピクセルカウンタ230は、制御部220からイメージセンサ18の垂直同期信号を受信してリセットされ、イメージセンサ18の始点画素を0とし終点画素の22050まで、各画素の受光情報の出力に同期して15ビットのカウント値を出力する。従って本実施形態では、受光情報が第1の条件を満たすと判定された有効画素のカウント値がピクセルFIFO340に書き込まれる。
更にこのとき、判定部210から明信号を受信している場合には15ビットのカウント値の更に上位ビットを0とし、判定部210から明信号を受信していない場合には15ビットのカウント値の更に上位ビットを1として、合計16ビットのデータをピクセルFIFO340に書き込む。即ちピクセルFIFO340には、受光情報が第1の条件を満たすと判定された有効画素のカウント値と、当該有効画素が第2の条件を満たすか否かを示すデータとが16ビットで表されて格納される。
MCU300は、ピクセルFIFO340と、光源位置演算部350と、指示位置演算部360とを含む。
ピクセルFIFO340は、ASIC200から出力されたデータに基づいて、1つの有効画素について16ビットのデータを128画素分記憶する。そして、各有効画素の16ビットのデータを先入れ先出しで光源位置演算部350に連続的に出力する。
光源位置演算部350は、イメージセンサ18が初期化されてから最先にピクセルFIFO340に格納されたデータ、即ち最先に第1の条件を満たすと判定された第1の有効画素のカウント値に基づいて、第1の有効画素を含む所定範囲に第1の判定領域を設定する。そして第1の判定領域以外の画素であって最先に第1の条件を満たすと判定された第2の有効画素のカウント値に基づいて、第2の有効画素を含む所定範囲に第2の判定領域を設定する。そして第1の条件を満たす有効画素のうち、第1の判定領域に含まれる有効画素のカウント値(識別情報)と、第2の判定領域に含まれる有効画素のカウント値とに基づいて位置演算を行う。
図6は、イメージセンサ18が撮像した画像の一部の拡大図であって、判定領域の代表値の演算について説明するための図である。図6において白色のマスは第1の条件を満たしかつ第2の条件をも満たす有効画素を示し、灰色のマスは第1の条件を満たすが第2の条件は満たさない有効画素を示し、黒色の領域は第1の条件を満たさない無効画素群を示している。図6に示すように、イメージセンサ18が右下の画素から水平方向に順に走査して各画素の受光情報を出力し、判定部210が各画素について第1の条件を判定すると、画素P1が最先に第1の条件を満たす第1の有効画素と判定される。そしてこの第1の有効画素P1の16ビットのデータがピクセルFIFO340から光源位置演算部350に入力されると、光源位置演算部350は、図6に示すように第1の有効画素を含む所定範囲の円形領域に第1の判定領域JA1を設定する。即ち第1の有効画素が発光部13、14のいずれかに対応する画素であった場合に、発光部13、14のいずれかに対応する他の有効画素が存在すると推定される範囲に第1の判定領域JA1を設定する。
そしてピクセルFIFO340から次々に入力されてくる有効画素のカウント値に基づいて、各有効画素が第1の判定領域JA1に含まれるか否か判定する。そして第1の判定領域JA1に含まれる有効画素のカウント値に基づいて、第1の判定領域JA1の代表値(重心座標)を求める。本実施形態では光源位置演算部350は、各有効画素のカウント値をイメージセンサ18が撮像した画像PCにおける各画素の座標値に変換してから、第1の判定領域JA1の重心座標を求める。
具体的には光源位置演算部350は、カウント値(0〜22050のいずれか)をイメージセンサ18のX軸上の画素数である175で割った余りを求めることにより、カウント値から当該画素の画像におけるX座標を算出し、カウント値を175で割った商を求めることにより、カウント値から当該画素の画像におけるY座標を算出する。例えば始点画素のカウント値0から、X=0mod175=0、Y=0/175=0のようにして、座標値(0,0)を求める。またカウント値14397から、X=14397mod175=47、Y=14397/175=82のようにして、座標値(47,82)を求める。
そして光源位置演算部350は、第1の判定領域JA1に含まれる有効画素のX座標成分の和を第1の判定領域JA1に含まれる有効画素数の和で割ることにより、第1の判定領域JA1の重心座標のX座標成分を求める。同様に第1の判定領域JA1に含まれる有効画素のY座標成分の和を第1の判定領域JA1に含まれる有効画素数の和で割ることにより、第1の判定領域JA1の重心座標のY座標成分を求める。ここで本実施形態では光源位置演算部350は、第1の判定領域JA1に含まれる各有効画素のうち第2の条件を満たす有効画素(明画素)と第2の条件を満たさない有効画素(暗画素)とで各有効画素の座標成分値に対する重み付けを異ならせて各有効画素の座標成分値に基づいて第1の判定領域JA1の重心座標を演算する。
具体的には光源位置演算部350は、明画素の座標成分値と明画素の数については2倍した上で前記演算を行う。例えば図6の例では、X座標成分値が45の画素については、画素P7、画素P13の2つの画素が明画素であるので座標成分値45×2が2倍されて他の座標成分値と加算され、明画素の数2が2倍されて他の画素数と加算される。一方、画素P19の1つの画素が暗画素であるので座標成分値45×1がそのまま他の座標成分値と加算され、明画素の数1がそのまま他の画素数と加算される。こうして他のX座標成分値の画素についても同様に演算すると、図6の例における第1の判定領域JA1の重心座標のX成分X1は、
X1=[2*(45*2+46*3+47*6+48*6+49*5+50*2)+(45+46*2+47+50)]
/[2*(2+3+6+6+5+2)+(1+2+1+1)]
=(2286+234)/(48+5)
=2520/53
=47.547
のようにして求められる。同様にして第1の判定領域JA1の重心座標のY成分Y1は、
Y1=[2*(81+82*3+83*5+84*6+85*5+86*3+87)+(81+82+83+85+86)]
/[2*(1+3+5+6+5+3+1)+(1++1+1+1)]
=(4032+417)/(48+5)
=2520/53
=84.962
のようにして求められる。即ち図6の例における第1の判定領域JA1の重心座標(X1,Y1)は、(47.547,84.962)と求めることができる。
更に光源位置演算部350は、第1の判定領域JA1以外の画素であって最先に第1の条件を満たすと判定された第2の有効画素を含む所定範囲に第2の判定領域JA2を設定し、第2の判定領域JA2についても第1の判定領域JA1と同様にして重心座標(X2,Y2)を演算する。そして第1の判定領域JA1の重心座標(X1,Y1)と第2の判定領域JA2の重心座標(X2,Y2)とを、指示位置演算部360に出力する。
指示位置演算部360は、第1の判定領域JA1の重心座標(X1,Y1)と第2の判定領域JA2の重心座標(X2,Y2)とに基づいて、コントローラ16の表示画面11に対する指示位置を演算する。具体的には指示位置演算部360は、第1の判定領域JA1の重心座標(X1,Y1)と第2の判定領域JA2の重心座標(X2,Y2)のうち、画像PCにおいて相対的に左側に位置する座標を、表示部12の左上部に配置された発光部13の中心座標として扱い、相対的に右側に位置する座標を、表示部12の右上部に配置された発光部14の中心座標として扱って、発光部13、14とコントローラ16との位置関係を求め、コントローラ16の表示画面11に対する指示位置を演算する。そして指示位置演算部360は、演算した指示位置をUSB400に出力する。
USB400は、USBインターフェース410と、キーファンクション部420とを含む。
USBインターフェース410は、MCU300から入力された指示位置データをゲーム機17に出力する。またキーファンクション部420は、コントローラ16のトリガ及びその他の操作キーの操作に基づいて操作信号を出力する。そしてゲーム機17では、トリガの操作信号が入力されたタイミングにおけるコントローラ16の指示位置データをゲーム画面(表示画面11)上における仮想弾の着弾位置として認識し、ターゲットに対する当たり外れの判定などのゲーム演算を行う。
4.位置演算処理の流れ
次に、上述したコントローラ16における位置演算処理の流れをフローチャートを用いて説明する。図7は、本実施形態の位置演算処理の概略の一例を示すフローチャートである。図7に示すように、まず判定部210が、イメージセンサ18から出力される各画素の受光情報に基づいて、各画素が所与の条件を満たすか否かを判定する(ステップS10)。そして光源位置演算部350が、第1の有効画素と第2の有効画素の識別情報に基づいて、2つ光源に対応する2つの判定領域の重心位置演算を行う(ステップS12)。すると指示位置演算部360が、2つの判定領域の重心位置に基づいて、コントローラ16の指示位置を演算する(ステップS14)。そしてコントローラ16の指示位置をゲーム機17に出力する(ステップS16)。そして本実施形態では、ステップS10〜ステップS16までの処理を1/54秒ごとに繰返し行う。
図8は、図7のステップS10の画素判定処理の詳細の一例を示すフローチャートである。図8に示すように、まず判定部210が、イメージセンサ18から画素ごとの受光情報を取得すると(ステップS100)、受光情報が第1の閾値以上(第1の条件を満たす)か判定し(ステップS102)、第1の閾値以上でない場合には(ステップS102のN)、イメージセンサ18から他の画素の受光情報を取得する(ステップS100)。一方、第1の閾値以上である場合には(ステップS102のY)、受光情報が第2の閾値以上(第2の条件を満たす)か判定し(ステップS104)、第1の閾値以上である場合には(ステップS104のY)、16ビットデータの最上位ビットを属性ビットとして0にする(ステップS106)。一方、第2の閾値以上でない場合には(ステップS104のN)、16ビットデータの最上位ビットを属性ビットとして1にする(ステップS108)。そして属性ビットを最上位ビットとし画素のカウント値を下位15ビットとした16ビットのデータをピクセルFIFO340に格納する(ステップS110)。そして本実施形態では、ステップS100〜ステップS110までの処理を、イメージセンサ18が出力するピクセルクロックに同期して、イメージセンサ18の各画素について繰返し行う。
図9は、図7のステップS12の光源位置演算処理の詳細の一例を示すフローチャートである。図9に示すように、まず光源位置演算部350が、ピクセルFIFO340から第1の有効画素についての16ビットのデータを取得すると、下位15ビットのカウント値をX成分の値とY成分の値に分解する(ステップS200)。そして、第1の判定領域が設定済みか否か判定する(ステップS202)。ここで第1の判定領域が設定済みでない場合には(ステップS202のN)、当該画素が第1の有効画素であるとして、第1の有効画素を含む所定範囲の領域に第1の判定領域を設定する(ステップS204)。
すると16ビットのデータの最上位ビットが0か否か判定する(ステップS206)。ここで最上位ビットが0の場合、即ち明画素である場合には(ステップS206のY)、X成分の値とY成分の値と画素数を2倍して(ステップS208)、レジスタRX1にX成分の値を、レジスタRY1にY成分の値を、レジスタRC1に画素数をそれぞれ加算する(ステップS210)。一方、最上位ビットが1の場合、即ち暗画素である場合には(ステップS206のN)、2倍せずにそのままレジスタRX1にX成分の値を、レジスタRY1にY成分の値を、レジスタRC1に画素数をそれぞれ加算する(ステップS210)。
そしてイメージセンサ18の0〜22050の画素(1フレーム分の画素)に含まれる全ての有効画素についてステップS200から始まる各処理を行ったか否か判定し(ステップS212)、全ての有効画素について各処理を行っていない場合には(ステップS212のN)、ステップS200に戻り、ピクセルFIFO340から次の画素についての16ビットのデータを取得し、ステップS200〜ステップS212までの処理を繰り返す。
ここで次の有効画素については、ステップS202において第1の判定領域が設定済みであると判定され(ステップS202のY)、当該有効画素の座標値に基づいて当該有効画素が第1の判定領域の範囲内か否か判定する(ステップS214)。そして当該有効画素が第1の判定領域の範囲内である場合には(ステップS214のY)、ステップS206〜ステップS212の各処理を行う。一方、当該有効画素が第1の判定領域の範囲内でない場合には(ステップS214のN)、第2の判定領域が設定済みか否か判定する(ステップS216)。
ここで第2の判定領域が設定済みでない場合には(ステップS216のN)、当該有効画素が第2の有効画素であるとして、第2の有効画素を含む所定範囲の領域に第2の判定領域を設定する(ステップS218)。するとステップS220〜ステップS224において、第1の判定領域の有効画素についてのステップS206〜ステップS210までの処理と同様の処理を行い、レジスタRX2にX成分の値を、レジスタRY2にY成分の値を、レジスタRC2に有効画素数をそれぞれ加算する(ステップS224)。
一方ステップS216において第2の判定領域が設定済みである場合には(ステップS216のY)、当該有効画素の座標値に基づいて当該有効画素が第2の判定領域の範囲内か否か判定する(ステップS226)。そして当該有効画素が第2の判定領域の範囲内である場合には(ステップS226のY)、ステップS220〜ステップS224の各処理を行う。一方、当該有効画素が第2の判定領域の範囲内でない場合には(ステップS226のN)、レジスタへの加算処理は行わず、全ての有効画素について各処理を行ったか判定する(ステップS212)。
こうして全ての有効画素について各処理を行うと(ステップS212のY)、2つの判定領域についてデータを取得したか否か判定する(ステップS228)。ここで2つの判定領域についてデータを取得している場合には(ステップS228のY)、レジスタRX1の総和をレジスタRC1の総和で割り、第1の判定領域の重心座標のX成分X1を求め、レジスタRY1の総和をレジスタRC1の総和で割り、第1の判定領域の重心座標のY成分Y1を求め、レジスタRX2の総和をレジスタRC2の総和で割り、第2の判定領域の重心座標のX成分X2を求め、レジスタRY2の総和をレジスタRC2の総和で割り、第2の判定領域の重心座標のY成分Y2を求める(ステップS230)。そして第1の判定領域の重心座標(X1,Y1)と、第2の判定領域の重心座標(X2,Y2)を指示位置演算部360に出力する(ステップS232)。
一方、2つの判定領域についてデータを取得していない、即ち第1の判定領域についてのデータしか取得していない場合には(ステップS228のN)、コントローラ16が検出範囲外を指示していることを示す範囲外設定を行い(ステップS234)、設定情報を指示位置演算部360に出力する(ステップS236)。
こうして指示位置演算部360にデータを出力すると、各レジスタと設定した判定領域とを初期化する(ステップS238)。そしてイメージセンサ18がイニシャライズされて次のフレームについての第1の有効画素がピクセルFIFO340から出力される度に、ステップS200〜ステップS238までの処理を繰り返す。
5.発光部の構成
次に、本実施形態の発光部の構成の詳細について説明する。
5−1.遮蔽部によるノイズ発生防止
図10(A)は、コントローラ16を表示画面11に向けた状態を真横から見た図である。本実施形態では、コントローラ16と発光部13、14との位置関係がある程度の範囲にある場合にイメージセンサ18が発光部13、14からの赤外光を受光できるように、発光部13、14には、ある程度の指向性を持ちつつ所与の範囲の方向に赤外光を進行させる光源22が設けられている。即ち発光部13、14は、光源22の向きとなる中心方向CDを中心として所与の範囲の進行方向に光源22から赤外光を進行させる。ここで光源22の中心方向は、例えば光源22の中心光度方向(最大光度方向)とすることができる。
そして図10(A)に示すように、例えばゲームシステム10を家庭の部屋などにおいて構成すると、光源22とイメージセンサ18との間に、鏡やガラステーブルなどのように光源22からの赤外光を反射するようなものが存在する場合がある。すると、光源22からは所与の範囲の進行方向に光が進行するので、光源22の位置とは異なる位置(鏡やガラステーブルなどの反射面)に、光源22からの直接光DLと同様の波長、同様の大きさの反射光RLが発生する場合がある。そしてイメージセンサ18がかかる反射光RLを受光すると、これがノイズとなって正確な指示位置を演算することができない。
図11(A)は、図10(A)の状態においてイメージセンサ18が撮像した画像PC3を示している。図10(A)の状態ではイメージセンサ18は、光源22からの直接光DLを受光するとともに反射光RLを受光しているので、図11(A)に示すように、光源22に対応する赤外光源領域IrA1、IrA2の下方に、反射光RLに対応するノイズ領域NA3、NA4が発生してしまう。
そこで本実施形態では図11(B)に示すように、光源22(発光部13、14)から下方向に進行する光を遮蔽する遮蔽部24を設けることにより、発光部13、14よりも下方における反射光RLの発生を防止している。即ち、光源22(発光部13、14)とイメージセンサ18(コントローラ16)とが所与の基準位置関係にある場合にイメージセンサ18に入射する反射光RLを発生させる方向に光源22からの直接光DLを進行させない位置に遮蔽部24を設けている。これにより所与の基準位置関係にある場合に、イメージセンサ18に光源22からの直接光DLを受光させつつ、反射光RLを受光させないようにすることができる。
具体的には本実施形態では光源22とイメージセンサ18との基準位置関係を、コントローラ16が前述した基準姿勢にあり、コントローラ16の位置が、発光部13、14から4メートル離れた基準位置にあり、かつコントローラ16の向きが、光源22を指示する基準向きにある場合としている。そしてかかる基準位置関係である場合に、イメージセンサ18の受光範囲である画角θ内に入射する反射光RLを発生させないように、遮蔽部24の位置、向き、大きさ、形状等を定めている。
ここで本実施形態では基準位置として、ゲームシステム10が正確な指示位置を演算するために必要な光量(光度、光束)をイメージセンサ18が光源22から得ることができる最大距離となる位置を設定し、また基準向きとして、プレーヤがコントローラ16を表示画面11に向けてゲームを行う際の平均的な(基本的な)コントローラ16の向きを設定して、遮蔽部24の位置、向き、大きさ、形状等を定めている。そして図10(B)の例では、光源22の近傍下方に板状の遮蔽部24を発光部13、14の前面側に延出させて設けている。従って遮蔽部24によって、光源22から水平方向よりも下方向に進行する光のうち、水平方向から離れた所定範囲の角度φ内の方向に進行する光を遮蔽することができる。
図11(B)は図10(B)の状態においてイメージセンサ18が受光した光、即ち画像データ領域PAに格納された画像データを示している。図10(B)の状態ではイメージセンサ18は、光源22からの直接光DLは受光するが反射光RLは受光していないので、図11(B)に示すように、光源22に対応する赤外光源領域IrA1、IrA2の下方には反射光RLに対応するノイズ領域NA3、NA4は発生しない。
こうして本実施形態では図10(B)に示すように、発光部13、14とコントローラ16との距離が4メートル以内であるゲームプレー範囲において、コントローラ16が表示画面11に向けられた場合にイメージセンサ18に入射する反射光RLを発生させないようにすることができる。ここで図10(B)においても一定の反射光RLが発生しているが、かかる反射光RLは、コントローラ16がゲームプレー範囲の外に位置しない限りイメージセンサ18に入射しないので問題とならない。
なお、基準位置関係は上述の例に限らず種々の位置関係を設定することができる。例えば基準位置は、光源22の強さ(正確な指示位置を演算するために必要な光量などを確保できる距離)や配光曲線、ビーム角(所定光量の拡散範囲)に応じて設定することができる。また基準向きは、指示位置演算システムの使用用途に応じて設定することができる。即ち指示体(コントローラ16)を把持する操作者(プレーヤP)の指示面(表示画面11)に対する基本的な位置に応じて種々の向きに設定することができる。例えば本実施形態の指示位置演算システムをプレゼンテーションシステムに適用した場合には、指示体を操作する操作者はスクリーンなどの指示面に対して正対することは少なく、斜め前などに位置することが多い。しかも操作者よりも上方に配置された指示面(光源)に指示体を向けることが多い。従ってこの場合には基準向きは、例えば指示面の斜め前の位置から上方向を指す向きを基準向きとすることができる。
5−2.遮蔽部の詳細
図12は、本実施形態の発光ユニット15を構成する1つの発光部13(14)の斜視図である。本実施形態では発光部13(14)は、筺体30の底面32を表示部12の上面に固定して設置される。そして筺体30は前面34と背面36とを有し、その前面34には、前面34側に赤外光を進行させる3つのLED光源22−1〜22−3が設けられている。本実施形態では光源22−1〜22−3は、光源22−1〜22−3の光の進行方向から見て逆三角形の各頂点となるように配置されている。従って光源22−1〜22−3とイメージセンサ18との距離が離れた場合でも、イメージセンサ18が光源22−1〜22−3からの赤外光を所定の面積を有する領域として確実に受光することができる。
また筺体30の前面34側には、光源22−1〜22−3からの赤外光を透過するカバー38が設けられており、光源22−1〜22−3を保護している。そして筺体30の前面34の下端部、即ち光源22−1〜22−3の近傍下方には、前面34から前面34側に延出する遮蔽部24が設けられている。本実施形態では遮蔽部24は、筺体30と一体成型されており、光源22−1〜22−3からの赤外光を透過しない素材が用いられている。従ってこの遮蔽部24により、光源22−1〜22−3から水平方向よりも下方向に進行する光のうち、水平方向から離れた所定範囲の方向に進行する光を遮蔽することができる。
図13は、図3の発光部13(14)を真横から見た図である。図13に示すように本実施形態では、遮蔽部24の上面である遮蔽面40と筺体30の前面34とがなす角の角度αが鋭角となっている。従って角度αが直角または鈍角である場合よりも、所定の範囲の方向に進行する光を遮蔽するために必要な、遮蔽部24の前面34からの延出距離lを小さくすることができる。具体的には本実施形態では、角度αを70度とし、延出距離lを7mmとしている。こうして図13の例によれば、遮蔽部24を設けても発光部13(14)に突出部材が発生することを避けつつ、しかも発光部13(14)の小型化を計ることができる。
5−3.光源の向きによるノイズ防止
以上は、発光部13、14の前面に遮蔽部24を設けることにより、光源22−1〜22−3から下方向に進行する光を遮蔽してノイズとなる反射光の発生を防止する例を挙げて説明したが、発光部13、14に配置される光源22−1〜22−3の向きにより、光源22−1〜22−3から下方向に光を進行させないようにしてノイズとなる反射光の発生を防止してもよい。即ち、光源22(発光部13、14)とイメージセンサ18(コントローラ16)とが所与の基準位置関係にある場合にイメージセンサ18に入射する反射光RLを発生させる方向に光源22からの直接光DLを進行させない方向に、光源22−1〜22−3の中心方向CDの向きを向けるようにしてもよい。
図14には、筺体30の底面32を表示部12の上面に固定して発光部13(14)を設置した場合に、光源22−1〜22−3の中心方向CDが水平方向(表示部12の表示画面11の法線方向)HDに対してβ度上方向に向くように光源22−1〜22−3を配置した発光部13(14)の例が示されている。図14の例では、光源22−1〜22−3の中心方向CDをβ度上方向に向けたことにより、イメージセンサ18に入射する反射光を発生させる方向に光源22からの直接光を進行させないようにしている。従って、図13の例と同様に、光源22−1〜22−3の下方においてノイズとなる反射光の発生を防止することができる。
6.イメージセンサの受光可能範囲
次に、本実施形態のゲームシステム10においてイメージセンサ18が光源22−1〜22−3からの光を受光することができる受光可能範囲について説明する。本実施形態では、コントローラ16と発光部13、14との位置関係がある程度の範囲にある場合に、イメージセンサ18が発光部13、14からの赤外光を受光できるようにするため、1つの発光部13(14)には3個の光源22−1〜22−3が、それぞれの中心方向を異ならせて配置されている。
図15(A)は本実施形態の発光部13(14)を正面から見た図であり、図15(B)は、発光部13(14)を真上から見た図である。図15(A)に示すように本実施形態の発光部13(14)の3個の光源22−1〜22−3は、逆三角形の各頂点となるように配置されている。そして最も下方に位置する第1の光源22−1は、図15(B)に示すように、発光部13(14)の基準方向SDである第1の方向D1に、光源22−1の中心方向CD1を向けて配置されている。
ここで本実施形態の発光部13(14)では基準方向SDを、コントローラ16を把持するプレーヤPの基本的な位置方向である表示画面11の正面方向としている。即ち、筺体30の底面32を表示部12の上面に固定して発光部13(14)を設置した場合に、表示部12の表示画面11の法線方向と平行になる方向を基準方向SDとしている。従って本実施形態では、第1の光源22−1から進行する光によって、プレーヤPの基本的な位置方向である表示画面11の正面方向を中心とした所定範囲を、イメージセンサ18の受光可能範囲とすることができる。
また、前述したようにイメージセンサ18は、撮像した画像PCを構成する画素の下部の行から上部の行へと各行を走査しながら各画素について受光情報を連続的に出力するので、画像PCにおける3個の光源22−1〜22−3に対応する画素の中では、最も下方に位置する第1の光源22−1に対応する画素の受光情報を最先に出力する。よって第1の光源22−1に対応する画素が、最先に所与の条件を満たすと判定される第1の有効画素となる。そして本実施形態では、かかる第1の光源22−1の中心方向CD1を表示画面11の正面方向に向けることにより、第1の有効画素に対応する第1の光源22−1の最大光度方向を表示画面11の正面方向(プレーヤPの基本的な位置方向)としている。従って本実施形態では、プレーヤPが表示画面11の正面方向からコントローラ16を表示画面11に向けた場合には、最も下方に位置する第1の光源22−1から進行する光によって確実に第1の有効画素を判定することができる。
一方、正面(光の進行方向)から見て左側に位置する第2の光源22−2は、図15(B)に示すように、基準方向SDと90度以内の角度差γで方向が異なる第2の方向D2に、光源22−2の中心方向CD2を向けて配置されている。本実施形態では第2の光源22−2は、正面から見て基準方向SDから60度左方向に中心方向CD2を向けて配置されている。従って本実施形態では、第2の光源22−2から進行する光によって、表示画面11の正面方向の左側方向をイメージセンサ18の受光可能範囲とすることができる。
また、正面(光の進行方向)から見て右側に位置する第3の光源22−3は、図15(B)に示すように、基準方向SDを対称軸として第2の方向D2と線対称となる第3の方向D3に、光源22−3の中心方向CD3を向けて配置されている。本実施形態では第3の光源22−3は、正面から見て基準方向SDから60度右方向に中心方向CD3を向けて配置されている。従って本実施形態では、第3の光源22−3から進行する光によって、表示画面11の正面方向の右側方向をイメージセンサ18の受光可能範囲とすることができる。
なお本実施形態のゲームシステム10では、プレーヤPは床面(水平面)に沿って移動するので、第2の方向D2と第3の方向D3とは、水平面と平行な方向で互いに向きが異なるようにする態様が好ましい。また下方向に発生する光源22−1〜22−3の反射光を防止する必要がある場合には、光源22−1〜22−3の中心方向CD1〜CD3の向きを水平方向HDよりも5度程度上方に向けるようにしてもよい。
7.機能ブロック
次に、図16を用いて本実施形態における指示位置演算システム(ゲームシステム)の構成について説明する。図16は、本実施形態における指示位置演算システムの機能ブロック図の一例である。なお、本実施形態の指示位置演算システムは、図16の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤが操作データを入力するためのものである。特に本実施形態では、プレーヤが操作部160を把持して操作部160自体の位置、向きを任意に変更可能であって、表示画面11などの指示面上の任意の位置を指示する指示体(コントローラ、シューティングデバイス、ポインティングデバイス)とすることができる。
また操作部160は、プレーヤがON/OFF入力を行うための操作子としてのトリガが設けられている。なおトリガの他に、ボタン、レバー(アナログパッド)、十字キー、ステアリング、マイク、タッチパネル型ディスプレイなどを備えるようにして、種々の操作データを入力できるようにしてもよい。
また操作部160は、撮像部162、判定部164、演算部166を含む。
撮像部162は、CMOSセンサやCCDカメラなどのイメージセンサにより実現することができ、撮像した画像の一端側を始点画素、他端側を終点画素として、始点画素から終点画素までの各画素の受光情報を連続的に出力する。ここで撮像部162は、ハードウェアの構成により各画素の受光情報を連続的に出力するようにしてもよいし、ソフトウェアによる制御により各画素の受光情報を連続的に出力するようにしてもよい。
判定部164は、各種プロセッサ(CPU、MPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現でき、撮像部162から連続的に出力される各画素の受光情報に基づいて、各画素が所与の条件を満たすか否かを判定する。
演算部166は、各種プロセッサ(CPU、MPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現でき、所与の条件を満たす画素が発光部13、14に対応する画素である場合に操作部160の指示位置が求められるように、所与の条件を満たす画素の識別情報に基づいて位置演算を行う。
なお判定部164と演算部166は、1つのプロセッサなどにより一体的に実現してもよい。また判定部164と演算部166とを操作部160に設けずに、処理部100の機能として実現するようにしてもよい。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。そして、本実施形態の記憶部170は、ワーク領域として使用される主記憶部171と、最終的な表示画像等が記憶されるフレームバッファ172と、オブジェクトのモデルデータが記憶されるオブジェクトデータ記憶部173と、各オブジェクトデータ用のテクスチャが記憶されるテクスチャ記憶部174と、オブジェクトの画像の生成処理時にZ値が記憶されるZバッファ176と、を含む。なお、これらの一部を省略する構成としてもよい。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。
この情報記憶媒体180には、処理部100において本実施形態の種々の処理を行うためのプログラム(データ)が記憶されている。即ち、この情報記録媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶されている。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイなどにより実現できる。特に本実施形態では、表示部190の表示画面の中や、その周辺に、操作部160と表示部190の表示画面の相対位置を演算するための発光ユニット15が設けられている。本実施形態ではこの発光ユニット15の光源として、不可視光を射出する赤外光LEDを用いている。
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
携帯型情報記憶装置194には、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお、本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(記憶部170)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここで、ゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は記憶部170をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
特に、本実施形態の処理部100は、表示制御部104、判定部106、評価部108、描画処理部120、音生成部130を含む。なお、これらの一部を省略する構成としてもよい。
表示制御部104は、表示部190に表示出力される表示物(オブジェクト)の表示制御を行う。具体的には、表示物(ゲームキャラクタ、背景、標的、車、ボール、アイテム、建物、樹木、柱、壁、マップ)を発生させたり、表示物の表示位置を指示したり、表示物を消滅させたりするなどの表示制御を行う。即ち発生した表示物を表示物リストに登録したり、表示物リストを描画処理部120等に転送したり、消滅した表示物を表示物リストから削除したりするなどの表示制御を行う。また表示制御部104は、表示画面11上における操作部160の指示位置の情報に基づいて、表示画面11に指示位置(着弾点)を示す表示物を表示させる。
判断部106は、操作部160に設けられた操作子(トリガ)の操作入力に応じて、表示部190の表示画面11上における操作部160の指示位置情報と、標的オブジェクトTOとの位置関係を判断する。具体的には判定部106は、操作子の操作入力を受け付けた時点での指示位置情報に基づいて、指示位置と標的オブジェクトTOの表示位置とがヒット(一致、着弾)したか否かを判断する。
評価部108は、ヒット判定の結果に基づいて、操作部160の操作に関する評価を行う。具体的には本実施形態では、標的オブジェクトTOに着弾した場合に、得点演算を行うなどして、操作者の操作を評価する処理を行う。
描画処理部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。この場合、描画処理部120が生成する画像は、いわゆる2次元画像であってもよいし、3次元画像であってもよい。そして3次元画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブデータ)に基づいて、透視変換後(ジオメトリ処理後)の表示物(1又は複数プリミティブ)を描画バッファ(フレームバッファあるいは中間バッファなどのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画する。これにより、ゲーム空間内において仮想カメラ(所与の視点)から見える画像が生成される。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
また、複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
また上述の発光ユニット15は、2つの発光部13、14が独立して構成されているものを例に挙げて説明したが、2つの発光部13、14を一体成型して発光ユニット15を構成するようにしてもよい。例えば発光ユニット15を横長の棒状部材として形成し、左右端に発光部13、14を配置するようにしてもよい。そして、発光部13、14間の長さを複数段階で図中矢印方向に伸縮させることができるようにしてもよい。例えば20インチモニタから50インチモニタまでの複数種類の大きさのモニタに対応させて、複数段階の長さに設定することができるようにしてもよい。
また上述の光源22は、不可視光である赤外光を発光する例を挙げて説明したが、他の不可視光としてもよいし、可視光としてもよい。また不可視光の光源と可視光の光源の双方を設けて、切り替え点灯可能に構成してもよい。特に発光部(光源)と指示体(受光部)との位置関係を初期設定するために、操作者に指示面を指示させる場合には、可視光を出力させるようにしてもよい。
また本発明は種々の画像生成システムに適用できる。上述の実施形態では、本発明をゲームシステムに適用した場合を例に挙げて説明したが、本発明は、プレゼンテーションシステムなども含む指示位置演算システム、及び指示位置演算システムに用いる指示体にも適用することができる。
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
本実施形態のシステムの概略外観の一例を示す図。 本実施形態で撮像された画像の一例を説明するための図。 本実施形態の指示体と撮像部の一例を説明するための図。 図4(A)は本実施形態のシステムが設置される状況の一例を説明するための図であり、図4(B)は本実施形態で撮像された画像の一例を説明するための図である。 本実施形態の指示体の機能ブロックの一例を示す図。 本実施形態で撮像された画像の一部の一例を説明するための図。 本実施形態の処理の一例を示すフローチャート図。 本実施形態の処理の一例を示すフローチャート図。 本実施形態の処理の一例を示すフローチャート図。 図10(A)、図10(B)は本実施形態の原理の一例を説明するための図。 図11(A)、図11(B)は本実施形態で撮像された画像の一例を説明するための図。 本実施形態の発光部の概略外観の一例を示す図。 本実施形態の発光部の概略外観の一例を示す図。 本実施形態の発光部の概略外観の一例を示す図。 図15(A)、図15(B)は本実施形態の発光部の概略外観の一例を示す図。 本実施形態の機能ブロックの一例を示す図。
符号の説明
P プレーヤ、TO 標的オブジェクト、GB 銃身、GG グリップ、GT トリガ、
PA 画像、IrA1・IrA2 赤外光源領域、DpA 表示画面領域、
BD 指示方向、GD グリップの取付方向、SP 始点画素、EP 終点画素、
SF 受光面、NA ノイズ領域、
DL 直接光、RL 反射光、CD 中心方向、HD 水平方向、SD 基準方向、
D1 第1の方向、D2 第2の方向、D3 第3の方向、
11 表示画面、12 表示部、13・14 発光部、15 発光ユニット、
16 コントローラ、17 ゲーム機、18 イメージセンサ、22 光源、
24 遮蔽部、30 筺体、32 底面、34 前面、36 背面、38 カバー、
100 処理部、104 表示制御部、106 判定部、108 評価部、
160 操作部、162 撮像部、164 判定部、166 演算部、170 記憶部、190 表示部

Claims (12)

  1. 指示体の指示位置を演算する指示位置演算システムであって、
    発光部と、
    撮像した画像の各画素の受光情報を出力する撮像部と、
    前記撮像部が取り付けられている指示体と、
    前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
    前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
    を含み、
    前記演算部が、
    前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システム。
  2. 請求項1において、
    前記判定部が、
    前記受光情報が第1の閾値よりも大きい場合に前記画素が前記第1の条件を満たすと判定し、前記受光情報が前記第1の閾値よりも大きい第2の閾値よりも大きい場合に前記画素が前記第2の条件を満たすと判定し、
    前記演算部が、
    前記第2の条件を満たす有効画素の識別情報に対する重み付けを前記第2の条件を満たさない有効画素の識別情報に対する重み付けよりも大きくして前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システム。
  3. 請求項1、2のいずれかにおいて、
    前記撮像部が、
    撮像した画像の一端側を始点画素、他端側を終点画素として、前記始点画素から前記終点画素までの各画素の受光情報を連続的に出力し、前記指示体の基準姿勢において下方に前記始点画素が配置され上方に前記終点画素が配置される状態で前記指示体に取り付けられ、
    前記演算部が、
    前記有効画素が前記発光部に対応する画素である場合に前記指示体の指示位置が求められるように、最先に前記第1の条件を満たすと判定された第1の有効画素の識別情報に基づいて前記位置演算を行うことを特徴とする指示位置演算システム。
  4. 請求項3において、
    前記演算部が、
    前記第1の有効画素を含む所定範囲に判定領域を設定し、前記有効画素のうち前記判定領域に含まれる有効画素の識別情報に基づいて、前記位置演算を行うことを特徴とする指示位置演算システム。
  5. 請求項4において、
    前記発光部が、
    所定の位置関係を有する複数の発光部から構成され、
    前記演算部が、
    前記第1の有効画素を含む所定範囲に第1の判定領域を設定するとともに、前記第1の判定領域以外の有効画素であって最先に前記第1の条件を満たすと判定された第2の有効画素を含む所定範囲に第2の判定領域を設定し、前記第1の判定領域に含まれる有効画素の識別情報と、前記第2の判定領域に含まれる有効画素の識別情報とに基づいて、前記位置演算を行うことを特徴とする指示位置演算システム。
  6. 請求項1〜5のいずれかにおいて、
    前記発光部に設けられ、前記発光部から水平方向よりも下方の所定範囲の方向に進行する光を遮蔽する遮蔽部を更に含むことを特徴とする指示位置演算システム。
  7. 請求項6において、
    前記遮蔽部は、
    前記発光部と前記撮像部とが所与の基準位置関係にある場合に、前記撮像部に入射する反射光を前記発光部よりも下方において発生させる方向に前記発光部からの光を進行させない位置に設けられていることを特徴とする指示位置演算システム。
  8. 請求項1〜5のいずれかにおいて、
    前記発光部は、
    前記発光部と前記撮像部とが所与の基準位置関係にある場合に、前記撮像部に入射する反射光を前記発光部よりも下方において発生させる方向に前記発光部からの光を進行させない方向に向けて設けられていることを特徴とする指示位置演算システム。
  9. 請求項1〜8のいずれかにおいて、
    前記指示体に設けられ、前記発光部からの光と同じ波長帯の光を前記撮像部に透過させるフィルタを更に含むことを特徴とする指示位置演算システム。
  10. 前記発光部が、
    所定の位置関係を有する複数の発光部から構成され、
    前記演算部が、
    前記複数の発光部の各発光部に対応する代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システム。
  11. 発光部と、
    撮像した画像の各画素の受光情報を出力する撮像部と、
    前記撮像部が取り付けられている指示体と、
    前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
    前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
    を含む指示位置演算システム用の指示体であって、
    前記演算部が、
    前記有効画素のうち前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とする指示位置演算システム用の指示体。
  12. 指示体の指示位置を演算するゲームシステムであって、
    オブジェクトを表示させる表示部と、
    前記表示部に対して所与の位置関係にある発光部と、
    撮像した画像の各画素の受光情報を出力する撮像部と、
    前記撮像部が取り付けられている指示体と、
    前記各画素の受光情報に基づいて、各画素が第1の条件を満たすか否かを判定するとともに、各画素が第2の条件を満たすか否かを判定する判定部と、
    前記第1の条件を満たすと判定された有効画素の識別情報に基づいて位置演算を行う演算部と、
    を含み、
    前記演算部が、
    前記第2の条件を満たす有効画素と前記第2の条件を満たさない有効画素とで前記有効画素の識別情報に対する重み付けを異ならせて前記有効画素の識別情報に基づいて前記有効画素の代表値を演算し、前記代表値に基づいて前記位置演算を行うことを特徴とするゲームシステム。
JP2007035227A 2007-02-15 2007-02-15 指示位置演算システム、指示体及びゲームシステム Active JP4861854B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2007035227A JP4861854B2 (ja) 2007-02-15 2007-02-15 指示位置演算システム、指示体及びゲームシステム
EP08151315A EP1962103B1 (en) 2007-02-15 2008-02-12 Indication position calculation system, controller for indication position calculation system, game system, and indication position calculation method
US12/068,819 US8290214B2 (en) 2007-02-15 2008-02-12 Indication position calculation system, indicator for indication position calculation system, game system, and indication position calculation method for user input in dynamic gaming systems
AT08151315T ATE476672T1 (de) 2007-02-15 2008-02-12 Anzeigepositionsberechnungssystem, steuereinheit für das anzeigepositionsberechnungssystem, spielsystem und anzeigepositionsverfahren
ES08151315T ES2350381T3 (es) 2007-02-15 2008-02-12 Sistema de cálculo de posiciones indicativas, controlador para un sistema de cálculo de posiciones indicativas, sistema de juegos y método de cálculo de posiciones indicativas.
DE602008001997T DE602008001997D1 (de) 2007-02-15 2008-02-12 Anzeigepositionsberechnungssystem, Steuereinheit für das Anzeigepositionsberechnungssystem, Spielsystem und Anzeigepositionsverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007035227A JP4861854B2 (ja) 2007-02-15 2007-02-15 指示位置演算システム、指示体及びゲームシステム

Publications (2)

Publication Number Publication Date
JP2008198111A true JP2008198111A (ja) 2008-08-28
JP4861854B2 JP4861854B2 (ja) 2012-01-25

Family

ID=39472861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007035227A Active JP4861854B2 (ja) 2007-02-15 2007-02-15 指示位置演算システム、指示体及びゲームシステム

Country Status (6)

Country Link
US (1) US8290214B2 (ja)
EP (1) EP1962103B1 (ja)
JP (1) JP4861854B2 (ja)
AT (1) ATE476672T1 (ja)
DE (1) DE602008001997D1 (ja)
ES (1) ES2350381T3 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4861855B2 (ja) * 2007-02-15 2012-01-25 株式会社バンダイナムコゲームス 指示位置演算システム、指示体及びゲームシステム
DE102008031498B4 (de) * 2008-07-03 2012-03-08 Infineon Technologies Ag Taktbestimmung eines Sensors
JP4863507B2 (ja) * 2007-08-22 2012-01-25 株式会社バンダイナムコゲームス 指示位置演算用のマークユニット
KR101624505B1 (ko) * 2009-09-24 2016-05-26 삼성전자주식회사 3-d 포인팅 감지 장치 및 방법
US20150276391A1 (en) * 2012-10-15 2015-10-01 Fujitsu Limited Direction discrimination device, direction discrimination method, and recording medium storing direction discrimination control program

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0490078A (ja) * 1990-08-02 1992-03-24 Juki Corp 重心検出装置
JPH06308879A (ja) * 1992-08-19 1994-11-04 Fujitsu Ltd 光学式ポインティングシステム
JPH0871252A (ja) * 1994-09-05 1996-03-19 Taito Corp 射撃ゲーム装置におけるビデオ画面とガンの相対位置を検出する方法及び装置
JPH08335136A (ja) * 1995-06-08 1996-12-17 Canon Inc 座標検出装置及び方法
JPH10249065A (ja) * 1997-01-10 1998-09-22 Konami Co Ltd 射的ビデオゲーム装置
JPH11305935A (ja) * 1998-04-24 1999-11-05 Image Tec Kk 位置検出システム
JP2001325069A (ja) * 2000-03-07 2001-11-22 Nikon Gijutsu Kobo:Kk 位置検出装置およびその方法
JP2006155248A (ja) * 2004-11-30 2006-06-15 Juki Corp 対象物の重心検出方法
JP2007041910A (ja) * 2005-08-04 2007-02-15 Shinsedai Kk 指示位置検出方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4586037A (en) * 1983-03-07 1986-04-29 Tektronix, Inc. Raster display smooth line generation
JP2681454B2 (ja) 1995-02-21 1997-11-26 コナミ株式会社 射的ゲーム装置
US6146278A (en) * 1997-01-10 2000-11-14 Konami Co., Ltd. Shooting video game machine
US6625305B1 (en) * 1999-08-16 2003-09-23 Hewlett-Packard Development Company, L.P. Image demosaicing method
US20010010514A1 (en) * 1999-09-07 2001-08-02 Yukinobu Ishino Position detector and attitude detector
US6727885B1 (en) 1999-09-07 2004-04-27 Nikon Corporation Graphical user interface and position or attitude detector
MY137246A (en) * 2002-04-30 2009-01-30 Jfe Steel Corp Method and instrument for measuring bead cutting shape of electric welded tube
JP4144378B2 (ja) * 2003-02-28 2008-09-03 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
JP2004329463A (ja) * 2003-05-06 2004-11-25 Nintendo Co Ltd ゲーム装置および仮想カメラの制御プログラム
JP3991011B2 (ja) * 2003-06-20 2007-10-17 キヤノン株式会社 画像信号処理装置
JP4392583B2 (ja) * 2003-06-27 2010-01-06 ソニー株式会社 信号処理装置および信号処理方法、並びにプログラムおよび記録媒体
US7148901B2 (en) * 2004-05-19 2006-12-12 Hewlett-Packard Development Company, L.P. Method and device for rendering an image for a staggered color graphics display
JP4794957B2 (ja) * 2005-09-14 2011-10-19 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
US7783096B2 (en) * 2005-10-17 2010-08-24 Siemens Corporation Device systems and methods for imaging
US7982744B2 (en) * 2007-02-02 2011-07-19 Seiko Epson Corporation Image processing device, image processing method, image processing program, recording medium storing image processing program, and image display device
JP4861855B2 (ja) * 2007-02-15 2012-01-25 株式会社バンダイナムコゲームス 指示位置演算システム、指示体及びゲームシステム
EP2006829A1 (en) * 2007-06-18 2008-12-24 Deutsche Thomson OHG Method and device for encoding video levels into subfield code word
JP5390093B2 (ja) * 2007-12-21 2014-01-15 任天堂株式会社 ゲームプログラムおよびゲーム装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0490078A (ja) * 1990-08-02 1992-03-24 Juki Corp 重心検出装置
JPH06308879A (ja) * 1992-08-19 1994-11-04 Fujitsu Ltd 光学式ポインティングシステム
JPH0871252A (ja) * 1994-09-05 1996-03-19 Taito Corp 射撃ゲーム装置におけるビデオ画面とガンの相対位置を検出する方法及び装置
JPH08335136A (ja) * 1995-06-08 1996-12-17 Canon Inc 座標検出装置及び方法
JPH10249065A (ja) * 1997-01-10 1998-09-22 Konami Co Ltd 射的ビデオゲーム装置
JPH11305935A (ja) * 1998-04-24 1999-11-05 Image Tec Kk 位置検出システム
JP2001325069A (ja) * 2000-03-07 2001-11-22 Nikon Gijutsu Kobo:Kk 位置検出装置およびその方法
JP2006155248A (ja) * 2004-11-30 2006-06-15 Juki Corp 対象物の重心検出方法
JP2007041910A (ja) * 2005-08-04 2007-02-15 Shinsedai Kk 指示位置検出方法

Also Published As

Publication number Publication date
DE602008001997D1 (de) 2010-09-16
JP4861854B2 (ja) 2012-01-25
EP1962103B1 (en) 2010-08-04
EP1962103A1 (en) 2008-08-27
US8290214B2 (en) 2012-10-16
US20080199047A1 (en) 2008-08-21
ATE476672T1 (de) 2010-08-15
ES2350381T3 (es) 2011-01-21

Similar Documents

Publication Publication Date Title
JP4861855B2 (ja) 指示位置演算システム、指示体及びゲームシステム
US11413525B2 (en) Device for interfacing with a computing program using a projected pattern
US10445884B2 (en) Control device for communicating visual information
US10220302B2 (en) Method and apparatus for tracking three-dimensional movements of an object using a depth sensing camera
US8784203B2 (en) Determination of controller three-dimensional location using image analysis and ultrasonic communication
EP2427811B1 (en) Base station movement detection and compensation
US20080100825A1 (en) Mapping movements of a hand-held controller to the two-dimensional image plane of a display screen
US20060282873A1 (en) Hand-held controller having detectable elements for tracking purposes
JP4861854B2 (ja) 指示位置演算システム、指示体及びゲームシステム
JP2009061161A (ja) プログラム、情報記憶媒体、及び、ゲームシステム
JP2008067853A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2009061159A (ja) プログラム、情報記憶媒体、及び、ゲームシステム
JP2008237398A (ja) シミュレーションプログラムおよびシミュレーション装置
JP2008129737A (ja) 指示位置演算システム、発光ユニット及びゲームシステム
JP2008234418A (ja) 指示位置演算システム、ゲームシステム及び指示体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110901

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111026

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111107

R150 Certificate of patent or registration of utility model

Ref document number: 4861854

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141111

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250