US20060141433A1 - Method of detecting position of rectangular object and object detector - Google Patents
Method of detecting position of rectangular object and object detector Download PDFInfo
- Publication number
- US20060141433A1 US20060141433A1 US11/022,774 US2277404A US2006141433A1 US 20060141433 A1 US20060141433 A1 US 20060141433A1 US 2277404 A US2277404 A US 2277404A US 2006141433 A1 US2006141433 A1 US 2006141433A1
- Authority
- US
- United States
- Prior art keywords
- image
- axis
- edges
- recited
- axis coordinates
- 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.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000005070 sampling Methods 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 12
- 238000012935 Averaging Methods 0.000 claims description 6
- 238000012546 transfer Methods 0.000 description 7
- 230000009471 action Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000004566 IR spectroscopy Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004886 head movement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/36—Training appliances or apparatus for special sports for golf
- A63B69/3676—Training appliances or apparatus for special sports for golf for putting
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0003—Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/36—Training appliances or apparatus for special sports for golf
- A63B69/3614—Training appliances or apparatus for special sports for golf using electro-magnetic, magnetic or ultrasonic radiation emitted, reflected or interrupted by the golf club
-
- A63F13/10—
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/24—Constructional details thereof, e.g. game controllers with detachable joystick handles
- A63F13/245—Constructional details thereof, e.g. game controllers with detachable joystick handles specially adapted to a particular type of game, e.g. steering wheels
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/812—Ball games, e.g. soccer or baseball
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01P—MEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
- G01P3/00—Measuring linear or angular speed; Measuring differences of linear or angular speeds
- G01P3/64—Devices characterised by the determination of the time taken to traverse a fixed distance
- G01P3/68—Devices characterised by the determination of the time taken to traverse a fixed distance using optical means, i.e. using infrared, visible, or ultraviolet light
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/0002—Training appliances or apparatus for special sports for baseball
- A63B2069/0004—Training appliances or apparatus for special sports for baseball specially adapted for particular training aspects
- A63B2069/0008—Training appliances or apparatus for special sports for baseball specially adapted for particular training aspects for batting
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/05—Image processing for measuring physical parameters
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/806—Video cameras
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/807—Photo cameras
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2225/00—Miscellaneous features of sport apparatus, devices or equipment
- A63B2225/50—Wireless data transmission, e.g. by radio transmitters or telemetry
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B67/00—Sporting games or accessories therefor, not provided for in groups A63B1/00 - A63B65/00
- A63B67/04—Table games physically beneficial for the human body, modelled on outdoor sports, e.g. table tennis
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B69/00—Training appliances or apparatus for special sports
- A63B69/38—Training appliances or apparatus for special sports for tennis
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/90—Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
- A63F13/95—Storage media specially adapted for storing game information, e.g. video game cartridges
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/10—Features 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/1062—Features 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 being specially adapted to a type of game, e.g. steering wheel
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/10—Features 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/1087—Features 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
- A63F2300/1093—Features 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 using visible light
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/80—Features 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/8011—Ball
Definitions
- the present invention generally relates to a method and an apparatus for detecting a position of an object and its angle to a specific reference and, more particularly, it relates to a method and an apparatus that precisely detects a position and its angle of a tool used in computer games.
- the game program running on a CPU (Central Processing Unit) of a game apparatus creates virtual game situation where a user is supposed to be a player, generates a video image of the surroundings, and shows the image on a television set (TV).
- TV television set
- the player is requested to take an action using the tool.
- the game program changes the virtual situation, and the player is requested to take a next action.
- the golf game program creates a scene of a teeing ground.
- the green can be seen on the backside of the teeing ground and the virtual golf ball is placed at the center (or any other place) of the teeing ground.
- the player “addresses” an image sensor unit placed on the floor and try to hit the virtual with a club, i.e., swings the club above the image sensor unit.
- the image sensor detects the positions of the moving club head and associated computation program within the image sensor unit computes the speed and the direction of the club head. The detected speed and the movement are applied to the golf game program.
- the golf game program computes the direction and speed of the club head, computes the resultant trajectory of the imaginary golf ball hit by the imaginary golf club in accordance with the direction and the speed of the club head, and creates a new game situation in accordance with the new position of the golf ball.
- Japanese Patent Application Laying-Open (Tokkai) No. 2004-85524 discloses an apparatus for detecting such positions of a game tool.
- the apparatus is used in a computer golf game and includes a stroboscope having four LED's (light emitting diodes), a CMOS (Complementary Metal-Oxide-Silicon) image sensor (hereinafter “CIS”), and a processor.
- CIS Complementary Metal-Oxide-Silicon
- a retro-reflector is attached to the bottom (sole) of a club head or a putter head.
- the retro-reflector has a long rectangular shape with circular ends.
- the apparatus is connected to a TV monitor and a golf game program running on the processor generates the video image of a virtual golf course in response to the player's action with the club or the putter.
- the CIS captures two kinds of images: images during the stroboscope LED's are on (emitting light); and images during the stroboscope LED's are off.
- the image signals are applied to the processor, where necessary computation is carried out.
- the retro-reflector When LED's are emitting light, the retro-reflector reflects that light to the CIS; therefore, the CMOS sensor forms the image of the retro-reflector. Other light sources also form images on the CIS. When the LED's are off, the retro-reflector does not reflect the light; their images are not formed. Only other light sources form their images. By computing the difference between these two kinds of images in the processor, therefore, the processor can detect the images of the retro-reflectors separate from other images.
- the processor detects two points farthest from each other in an image of the retro-reflector. These two points indicate the two ends of the mid line of the retro-reflector; by knowing the X and Y coordinates of these points, the processor can know the position of the club head or the putter head as an average of these two points. By computing this point for each of the captured images, the processor computes the direction and the speed of the movement of the club head. Also, the processor can compute the angle ⁇ between the line connecting the two end points of the retro-reflector and a prescribed reference line. From this angle ⁇ , the angle of the head face can be computed.
- a golf game program running on the processor processes these data, determines the trajectory of the virtual golf ball, and creates next virtual situation.
- a processor with relatively high performance is necessary in order to carry out the computation necessary for the game in real time.
- the processor needs to have storage with a capacity large enough to store the data output from the CIS. This results in a computer game machine with a relatively high cost. Because children are the main users of the computer game machines, the game machines should be inexpensive although they should have enough performance to fully operate in real time.
- one of the objects of the present invention is to provide an object detector that detects a position of an object with a simple operation and a method thereof.
- Another object of the present invention is to provide an object detector that detects a position of an object with smaller amount of computation compared with the prior art and a method thereof.
- Yet another object of the present invention is to provide an object detector having simple structure that detects a position of an object with smaller amount of computation compared with the prior art and a method thereof.
- a method of detecting a position of a rectangular object includes the steps of: capturing an image of the object by an image sensor having a rectangular image plane having four edges; detecting, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and determining a position of a predefined point of the image of the object based on the detected distances.
- the distances of the four points closest to the respective edges of the image plane from the respective edges can be detected with simple operation and does not require a large amount of computation time. Therefore, a method that can detect a position of an object with a simple operation can be provided.
- the step of determining may include the step of determining a position of the center point of the image of the object based on the distances.
- a coordinate system having a first axis and a second axis is defined on the image plane.
- the first axis of the coordinate system is perpendicular to a first pair of opposite edges of the image plane, and the second axis of the coordinate system is perpendicular to a second pair of the edges of the image plane.
- the step of determining a position of the center point may include the step of: determining first-axis coordinates of points closest to respective edges of the first pair of edges; calculating a first-axis coordinate of the center point by averaging the first-axis coordinates determined in the step of determining first-axis coordinates; determining second-axis coordinates of points closest to respective edges of the second pair of edges; and calculating a second-axis coordinate of the center point by averaging the second-axis coordinates determined in the step of determining second-axis coordinates.
- Scanning the image plane searching for four points closest to the four edges from the edges can be implemented with simple algorithm. By detecting these four points, the center point of the image of the object is easily calculated. Therefore, a simple method for detecting a position of an object is provided.
- the method further includes the steps of calculating an angle ⁇ that one of the edges of the image of the object forms with one of the four edges of the rectangular image plane using the first-axis coordinates determined in the step of determining first-axis coordinates, and the second-axis coordinates determined in the step of determining second-axis coordinates.
- the first-axis coordinates determined in the step of determining first-axis coordinates includes coordinate values R 1 x and L 1 x where R 1 x >L 1 x ; and the second-axis coordinates determined in the step of determining second-axis coordinates includes coordinate values T 1 y and B 1 y where T 1 y >B 1 y .
- the angle ⁇ can be computed. There is no need to know the eight, full coordinate values of the four points.
- the objects includes a rectangular retro-reflective strip
- the step of capturing includes the steps of: turning on a lighting device; capturing and storing a first image of the object by the image sensor while the lighting device is on; turning off the lighting device; capturing and storing a second image of the object by the image sensor while the lighting device is off, and subtracting the second image from the first image.
- the image plane of the image sensor may have a plurality of pixels each producing a pixel signal having a plurality of signal levels, and the method further includes the step of down-sampling the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
- the step of detecting includes the steps of, for each edge of the four edges of the image plane, scanning the down-sampled rectangular image plane starting from the each edge in a direction to an opposite edge until a point having a predetermined first value is found.
- An object detector for detecting a position of a rectangular object in accordance with another aspect of the present invention includes: an image sensor having a rectangular image plane having four edges; a distance detector that detects, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and a position determiner that determines a position of a predefined point of the image of the object based on the detected distances.
- the object includes a rectangular retro-reflective strip
- the object detector further includes: a light source; a light source controller that causes the light source to periodically emit a light; an exposure controller that causes the image sensor to capture a first image while the light source is emitting a light and to capture a second image while the light source is not emitting a light; and an image subtracting device that subtracts the second image from the first image.
- the image plane of the image sensor has a plurality of pixels each producing a pixel signal having a plurality of signal levels; and the object detector further includes a down sampling circuit that down-samples the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
- the object detector further includes a wireless transmitter that transmits the position of the predetermined point of the image of the object via wireless communication.
- FIG. 1 illustrates an overall arrangement of a golf game system 30 in accordance with one embodiment of the present invention
- FIG. 2 shows a game cassette 76 including a CPU and a memory that stores a golf game program, and an adaptor 46 for the game cassette 76 having TV connection capabilities and IR communication capability;
- FIG. 3 is a perspective view of a swing detector 44 for detecting the direction and the speed of a club head as well as an angle of its face in accordance with the embodiment;
- FIG. 4 shows a golf club 42 for a golf game used with the swing detector 44 shown in FIG. 3 ;
- FIG. 5 shows a functional block diagram of the swing detector 44 ;
- FIG. 6 schematically shows the image plane of CIS 146 of the swing detector 44 shown in FIG. 5 and an image of a retro-reflector strip 124 of the golf club 42 shown in FIG. 4 ;
- FIG. 7 is a waveform diagram of the signals within swing detector 44 shown in FIG. 3 ;
- FIG. 8 is waveform diagrams of an image signal outputted from CIS 146 to down sampling comparator 150 shown in FIG. 5 and an image signal down-sampled by down sampling comparator 150 ;
- FIGS. 9 to 12 show the overall control structure of golf club detecting program running on the processor of swing detector 44 ;
- FIG. 13 shows directions of a clubface that can be detected by swing detector 44 ;
- FIG. 14 shows a detected direction 344 of the movement of the golf club with reference to a predetermined reference direction 342 ;
- FIG. 15 shows a conventional way of determining a direction of a golf ball movement hit by a golf club
- FIG. 16 shows a novel way of determining a direction of a golf ball in accordance with the first embodiment
- FIG. 17 shows the detected angle ⁇ 2 of the clubface in accordance with the first embodiment
- FIG. 18 shows how the direction of a golf ball in the screen is determined in the embodiment of the present invention.
- FIG. 1 shows an overall arrangement of a golf game system 30 in accordance with one embodiment of the present invention.
- golf game system 30 includes: an adaptor 46 having connection facility to TV 48 via a cable 52 and a wireless IR (Infrared) communication capability; and a game cassette 76 that is to be mounted on adaptor 46 .
- an adaptor 46 having connection facility to TV 48 via a cable 52 and a wireless IR (Infrared) communication capability
- a game cassette 76 that is to be mounted on adaptor 46 .
- adaptor 46 has a housing 72 and a receiving stage 74 that moves up and down within housing 72 .
- a connector is provided within the housing of adaptor 46 and by pushing down receiving stage 74 , the connector is exposed.
- Adaptor 46 further has an IR emitting/receiving window 70 for IR communication.
- Game cassette 76 has a connector 78 with connector pins Tn. When game cassette 76 is put on receiving stage 74 and pushed down, receiving stage 74 moves down and connector 78 will be coupled with the connector (not shown) of adaptor 46 .
- game cassette 76 includes a CPU and a memory that stores a golf game program. Through the connection of the connectors 78 and the connector of adaptor 46 not shown, the processor of game cassette 76 can utilize the IR communication capability of adaptor 46 . The processor can also apply video image of a golf game to TV 48 shown in FIG. 1 .
- golf game system 30 further includes: a golf club 42 which a player 40 uses to play the golf game; and a swing detector 44 for detecting the position of the head of golf club 42 as well as the angle of clubface of golf club 42 with reference to a predefined reference direction.
- Swing detector 44 also has a wireless IR communication capability and can transmit the detected position of the head of golf club 42 as well as the angle of the clubface to adaptor 46 through the IR light 50 .
- swing detector 44 includes a relatively flat housing 80 .
- Swing detector 44 further includes: an IR LED 106 for transmitting data; a power switch 90 ; four switches 98 , 100 , 102 , and 104 for adjusting the function of swing detector 44 ; a CIS 146 ; and two IR LED's 94 and 96 for exposure provided on either side of CIS 146 , all arranged on the upper surface of housing 80 .
- the arrangement of the circuitry within swing detector 44 will be described later with reference to FIG. 5 .
- golf club 42 includes a shaft 120 ; a club head 122 with a neck 121 that is connected to shaft 120 .
- a retro-reflector strip 124 On the bottom (sole) of club head 122 , a retro-reflector strip 124 having a rectangular shape is attached. Retro-reflector strip 124 has two sets of edges; longer ones and shorter ones. Retro-reflector strip 124 is attached to club head 122 so that its longer edges are parallel to the edge of the clubface.
- swing detector 44 includes as its inner circuitry: CIS 146 having 32H (Horizontal) ⁇ 32V (Vertical) resolution outputting VOUTS signal, which includes a series of pixel values quantized to 8 levels; a down sampling comparator 150 connected to receive the VOUTS signal from CIS 146 for down-sampling the VOUTS signal to a 1-bit binary signal; an MCU (Micro Controller Unit) 148 that receives the output of down sampling comparator 150 for computing the position of the center point of the club head as well as the angle of the clubface; and a power LED 152 embedded within power key 90 shown in FIG. 3 for the indication of power on and off.
- MCU 148 has an internal memory, registers, and a processor.
- Down sampling comparator 150 includes a Schmidt trigger.
- the positive going threshold and the negative going threshold of Schmidt trigger is the same: V TH
- the output of down sampling comparator 150 immediately goes High. If the level of the input signal falls to a level lower than the threshold V TH , the output of down sampling comparator 150 immediately falls to Low.
- the VOUTS signal which is a multi-level signal, is converted into a 1-bit binary signal.
- Swing detector 44 further includes: a battery box 140 operatively coupled to power key 90 ; a voltage regulator circuit 142 for regulating the voltage outputted by battery box 140 and for supplying power to MCU 148 and other circuits in swing detector 44 via power lines; and a power control switch 144 that, under control of MCU 148 , supplies the power from voltage regulator circuit 142 to CIS 146 so that CIS 146 captures images at prescribed timings.
- Power control switch 144 and CIS 146 receives control commands from MCU 148 via a control bus 149 .
- Outputs of CIS 146 and down sampling comparator 150 are connected to the input of MCU 148 via a data bus 151 .
- MCU 148 finds the angle ⁇ which one of the edge of the image 182 of retro-reflector strip 124 forms with one of the edges of the image plane of CIS 146 in the following manner.
- MCU 148 scans the image 180 captured by CIS 146 row by row from the top to the bottom searching for an image 182 of retro-reflector strip 124 .
- the first bright point at a row with a y-coordinate T 1 y indicates the top most corner 190 of the image 182 .
- a coordinate system is defined on the image 180 (i.e., on the image plane of CIS 146 ).
- MCU 148 scans image 180 column by column from the rightmost column until it finds the rightmost bright point.
- This point indicates the column with an x-coordinate value R 1 x of the corner 192 of image 182 .
- MCU 148 finds the leftmost bright point 196 at a point with x-coordinate L 1 x and the bottom bright point 194 with a y-coordinate B 1 y .
- T 1 y >B 1 y holds.
- R 1 x >L 1 x holds.
- Points 190 , 192 , 194 and 196 correspond to the four corners of image 180 of retro-reflector strip 124 .
- the position of the center point of retro-reflector strip 124 and its angle between the x-axis can be computed. This requires a relatively small amount of computation compared with the prior art.
- FIG. 7 shows the waveforms of the signals among CIS 146 , MCU 148 and down sampling comparator 150 shown in FIG. 5 .
- “FS” is the frame signal for synchronization of circuits external to CIS 146 .
- One cycle period of signal FS is predetermined by a clock signal (SCLK) and, in this embodiment, it equals to 12288 clock cycles.
- SCLK clock signal
- CIS 146 captures an image while signal FS is at the Low level. This period will be called an exposure time “Texp” hereinafter.
- signal FS is at the High level.
- the time period of CIS 146 for capturing an image depends on the settings of a specific 8-bit register E0(7:0) internal to CIS 146 .
- the settings may be externally changed.
- CIS 146 determines the internal exposure time by Texp times register value E0(7:0) divided by 255. Thus, if the register value E0(7:0) is 200, the internal exposure time will be Texp*200/255 as shown in FIG. 7 .
- CIS 146 When signal FS is at the High level, i.e., signal FS indicates the data transfer period, CIS 146 is ready to transfer the captured image data VOUTS.
- the rising edges of signal STR show the timings of data hold and sampling of VOUTS at down sampling comparator 150 .
- signal STR includes 32 ⁇ 32+1 pulses.
- down sampling comparator 150 samples the VOUTS signal 220 , compares the level of VOUTS signal 220 with the threshold level V TH 221 , and outputs the result as a 1-bit signal 222 .
- the first data is a dummy and is discarded; therefore, down sampling comparator 150 outputs 32 ⁇ 32 pixel data within the data transfer period.
- VOUTS signal 220 shows the intensity of the image quantized to 8 levels. This signal is reduced to the 1-bit signal and is supplied to MCU 148 .
- FIG. 8 shows the down sampling carried out by down sampling comparator 150 .
- VOUTS outputted from CIS 146 has 8-bit resolution as shown in waveforms 220 ( FIG. 8 ( b )).
- Down sampling comparator 150 compares the level of VOUTS with a predetermined threshold level 221 and outputs the resultant 1-bit binary signal as shown by the waveform 222 ( FIG. 8 ( a )).
- FIGS. 9 to 12 show the overall control structure of the program running on MCU 148 of swing detector 44 for controlling CIS 146 , capturing the image of retro-reflector strip 124 , and computing the position of its center point and its angle ⁇ with reference to the x-axis.
- the program starts at step 240 where registers of MCU 148 are initialized.
- MCU 148 clears its RAM (random access memory).
- PIO programmed input/output
- MCU 148 read option code setting and resets CIS 146 and set up registers of CIS 146 in accordance with the option code setting.
- watchdog timer is reset.
- step 250 it is determined whether the signal FS is Low or not. If not, the control returns to step 250 and the determination is repeated until the signal FS is Low.
- MCU 148 turns on the exposure IR LED's 94 and 96 (see FIGS. 3 and 5 ).
- step 254 exposure IR LED's 94 and 96 are kept on until the signal FS is High.
- exposure IR LED's 94 and 96 are turned off at step 256 .
- MCU 148 waits until the signal STR is at its falling edge at step 258 .
- MCU 148 reads the VOUTS down-sampled by down sampling comparator 150 at step 260 .
- step 262 it is determined whether all 32 ⁇ 32 data are received from CIS 146 . If not, the control returns to step 258 . When all of the 32 ⁇ 32 data are received, the control goes to step 264 , where RAM loaded with the received data within MCU 148 is organized. The 32 ⁇ 32 data received at steps 258 to 262 forms the exposure data.
- CIS 146 tries to get key press data.
- a sleep counter (not shown) within MCU 148 is checked ant it is determined whether the sleep counter has overflowed or not. If overflowed, the control goes to step 270 ; otherwise, it goes to step 280 ( FIG. 11 ).
- MCU 148 controls power control switch 144 to stop the power supply to CIS 146 and enters the sleep mode.
- MCU 148 turns on the sleep LED, which is power LED shown in FIGS. 3 and 5 .
- MCU 148 waits for a predetermined period by a delay loop. After the predetermined period, MCU 148 turns on the sleep LED at step 276 .
- step 280 MCU 148 waits until the signal FS is High.
- MCU 148 turns on power on LED 152 at step 282 and waits until the signal FS is Low at step 284 .
- MCU 148 indicates that MCU 148 and CIS 146 are operating.
- the signal FS is Low, MCU 148 turns off power on LED 152 .
- MCU 148 indicates that it will not receive any key input.
- step 288 MCU 148 waits until the signal STR is at is falling edge.
- MCU 148 again reads VOUTS data at step 290 .
- Steps 288 and 290 are repeated until it is determined that 32 ⁇ 32 data are received at step 292 .
- the 32 ⁇ 32 data received at steps 258 to 262 form the dark data.
- the control goes to step 294 , where MCU 148 subtracts the dark data from the exposure data. By this operation, images of light sources other than retro-reflector strip 124 are removed from the 32 ⁇ 32 exposure data. Control goes to step 296 shown in FIG. 12 .
- step 296 it is determined whether there is no blight point in the image or any key press. If there is a blight point or a key press, control goes to step 298 ; otherwise, control goes to step 318 .
- step 298 it is determined whether there is no bright point in the image but a key press. If there is no bright point but a key press, control goes to step 314 ; otherwise, control goes to step 300 .
- MCU 148 scans the 32 ⁇ 32 image from top to bottom row until it gets the topmost bright point T 1 y .
- MCU 148 scans the image from bottom to top row to get the bottommost bright point B 1 y .
- MCU 148 scans the image from left to right column to get the leftmost bright point L 1 x .
- MCU 148 scans the image from right to left column to get the rightmost bright point R 1 x.
- step 314 MCU 148 sets up the IR output pattern for the IR communication to adaptor 46 in accordance with the computed result.
- the data format of the position data and angle data for IR communication includes 22 bits.
- the first bit is a start bit, which is always is 1.
- the next thirteen bits represent the X and Y coordinates of the center point including parity bits. Because X and Y are in the range from 0 to 31 (32 pixels), it requires 5 bits to represent each of the X and Y coordinates.
- the parity bits include three bits.
- the next four bits represent the club angle.
- the angle computed at step 312 is rounded to the nearest 15 degrees (15°) as shown by the twelve angles ⁇ 1 to ⁇ 12 in FIG. 13 .
- the club angle requires 4 bits in transmission.
- the next three bits indicates the pressed key. If no key is pressed, these three bits are not transmitted.
- MCU 148 resets the sleep mode counter.
- MCU 148 outputs the IR data set up at step 314 .
- the golf game program running on adaptor 46 can then utilize the data and change the game situation.
- the control returns to step 248 shown in FIG. 9 .
- step 318 MCU 148 clears the IR output patterns. Then the control goes to step 320 where the cleared IR output pattern is output to adaptor 46 .
- Swing detector 44 of the present embodiment operates as follows. At the time of power-up, MCU 148 of swing detector 44 initializes its registers ( FIG. 9 , step 240 ), clears its RAM (step 242 ), sets up PIO settings (step 244 ), and reads option code setting and starts supplying power to CIS 146 (step 246 ). In response to the power supply, CIS 146 starts capturing images. During the exposure period, CIS 146 sets the signal FS at the Low level and during the transfer period, CIS 146 sets the signal FS at the High level.
- MCU 148 resets watchdog timer and waits for the signal FS from CIS 146 to be Low ( FIG. 9 , Step 250 ).
- the signal FS becomes Low, this indicates that CIS 146 is in the exposure period and CIS 146 turns on IR LED's 94 and 96 for exposure.
- CIS 146 captures the image during the exposure time.
- CIS 146 waits for the signal FS to be High at step 254 .
- CIS 146 is ready to output the VOUTS, it sets the signal FS to the Higher level and MCU 148 exits step 254 and turns off IR LED's 94 and 96 for exposure at step 256 .
- the signal FS and the signal STR attain the High level at the same time.
- the signal FS stays at the High level and the signal STR alternately attains the Low level and the High level at a specific time period.
- CIS 146 starts outputting data VOUTS showing the intensity of a pixel of the captured image quantized to eight levels as shown in FIG. 8 ( b ).
- the output of down sampling comparator 150 rises to the High level when the level of VOUTS is equal to or higher than the positive going threshold. It falls to the Low level when the level of VOUTS is lower than the negative going threshold.
- An example of the output of down sampling comparator 150 is shown in FIG. 8 ( a ).
- MCU 148 reads VOUTS down sampled by down sampling comparator 150 .
- MCU 148 organizes RAM and tries to get key data. The received data forms the exposure data.
- MCU 148 enters the sleep mode until any of the keys is pressed. If sleep counter has not overflowed, MCU 148 waits until the signal FS is Low at step 280 ( FIG. 11 ). When the signal FS is Low, CIS 146 is again in the exposure period and MCU 148 turn on power on LED 152 at step 282 ( FIG. 11 ) indicating that MCU 148 and CIS 146 are operating. Then, MCU 148 waits until the signal FS is High at step 284 . During this period, CIS 146 captures the image without IR LED's 94 and 96 lighting. When the signal FS is High, CIS 146 is now in transfer mode and MCU 148 turns off power on LED 152 indicating that MCU 148 will not accept any key.
- MCU 148 receives the 32 ⁇ 32 image VOUTS data outputted from CIS 146 and down sampled by down sampling comparator 150 .
- the image forms the dark data.
- MCU 148 subtracts the dark data from the exposure data received at steps 258 to 262 ( FIG. 10 ).
- the resulting data includes, if any, only the exposure data of retro-reflector strip 124 .
- MCU 148 determines whether the resulting image includes a bright point and if the image includes a bright point, referring to FIG. 6 , MCU 148 scans the image from top to bottom row to get the topmost bright point T 1 y at step 300 ( FIG. 12 ), from bottom to top to get the bottommost bright point B 1 y at step 302 , from left to right to get the leftmost bright point L 1 x at step 304 , and from right to left to get the rightmost bright point R 1 x at step 306 .
- MCU 148 calculates the coordinates (X, Y) of the image of retro-reflector strip 124 by equations (1). If the game is in the angle mode, MCU 148 calculates club angle by equation (2).
- MCU 148 sets up IR output pattern.
- it resets the sleep mode counter and outputs the IR data utilizing IR communication window 106 shown in FIGS. 3 and 5 to adaptor 46 .
- swing detector 44 can detect the position of retro-reflector strip 124 ( FIG. 4 ), i.e., the position of the head of golf club 42 , and the club angle and transmit the detected data to adaptor 46 .
- the adapter 46 receives the data, calculates the trajectory of the imaginary golf ball, and changes the game situation.
- the golf game program running on the CPU of adaptor 46 can use the information of the X and Y coordinates of center of the club head and the club angle as in the following manner. First, by computing the difference between the coordinates detected at different times, the game program can compute the position of the center point of the club head and the angle of the clubface. Using this information, the game program can compute the direction of the imaginary golf ball trajectory.
- the golf game program running on adaptor 46 adopts a novel way of determining the direction of the golf ball trajectory.
- the moving direction 344 of the club head (the movement of the center point of retro-reflector strip 124 ) in the 32 ⁇ 32 image plane 340 makes an angle OS with a reference line 342 , which is parallel to the y-axis of image plane 340 .
- the golf game program screen 360 would show a target arrow 364 directed to the golf hole (not shown) and, given the angle ⁇ s , determines the trajectory of the imaginary golf in the direction 366 that makes the angle ⁇ s with the reference line 362 , which is parallel to the y-axis of the screen 360 (Note here that the direction of y-axis is taken in a direction opposite to that of the y-axis in FIG. 6 ).
- the golf game program running on adaptor 46 determines the trajectory of the imaginary golf ball as in the following manner.
- the golf game program in this embodiment adds the angel ⁇ s not to the reference line 382 of the screen 380 but to the direction of the arrow 384 that is directed to the target golf hole, resulting in the direction 386 .
- the player can address the imaginary golf ball so that the swing line is on the line directed to the imaginary target golf hole. If the player swings the golf so that angle ⁇ s is zero, the imaginary golf ball will go in the direction of the target hole. Thus, the game will be much more like the real golf game.
- the club angle is further taken into consideration in a certain play mode (the “angle mode”) in this embodiment.
- the trajectory of the golf ball is determined as shown in FIGS. 17 and 18 .
- the club angle detected by swing detector 44 of the present embodiment is ⁇ 2 .
- the angle that a clubface 408 makes with the line 406 normal to the trajectory of the club head 404 is ⁇ 2 .
- the golf game program determines the trajectory of the imaginary golf ball 400 as in the following.
- an imaginary golf ball 422 is displayed on the screen 420 .
- Target arrow 424 is also shown directed to the target golf hole.
- the program Given the club angle ⁇ 2 and the deviation angle ⁇ s of the club head movement, the program first adds angles ⁇ s to the angle of arrow 424 . This results in the direction 426 . Further, the program adds the clubface angle ⁇ 2 to the direction 426 , resulting in a direction 428 further deviated from target arrow 424 .
- the golf game will be more realistic and the game will be much more amusing than the prior art golf games.
- swing detector 44 can detect the position of the center point of the club, and further the angle of the clubface. A sequence of these data is transmitted to adaptor 46 ( FIG. 1 ) via IR communication.
- adaptor 46 FIG. 1
- the golf game program running on the CPU of game cassette 76 mounted o adaptor 46 can utilize these data and the resultant golf game will be more amusing than the prior art.
- the present has been described using the embodiment directed to a computer golf game, it is not limited thereto.
- the present invention can be applied to any kind of position detector as long as the image of the object is rectangular. Further, there is no need to use retro-reflective strip. As long as the object can reflect a light and forms a rectangular image on the image plane of the image sensor, a detector in accordance with the present invention can detect the position and the angle of the object.
Abstract
A method of detecting a position of a rectangular object includes the steps of: capturing an image of the object by an image sensor having a rectangular image plane having four edges; detecting, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and determining a position of a predefined point of the image of the object based on the detected distances.
Description
- 1. Field of the Invention
- The present invention generally relates to a method and an apparatus for detecting a position of an object and its angle to a specific reference and, more particularly, it relates to a method and an apparatus that precisely detects a position and its angle of a tool used in computer games.
- 2. Description of the Background Art
- Sports computer games directed to baseball, football, golf, tennis, table tennis, bowling, and so on forms one of the categories of computer games. Most of these sports games require associated tools for playing. A bat for baseball, a racket for tennis or table tennis, a bowling ball for bowling, to name a few. The game program running on a CPU (Central Processing Unit) of a game apparatus creates virtual game situation where a user is supposed to be a player, generates a video image of the surroundings, and shows the image on a television set (TV). When a specific situation arises, the player is requested to take an action using the tool. In response to the player's action, the game program changes the virtual situation, and the player is requested to take a next action.
- Take a golf game as an example. At the start of a game, the golf game program creates a scene of a teeing ground. The green can be seen on the backside of the teeing ground and the virtual golf ball is placed at the center (or any other place) of the teeing ground. When the scene changes and the golf ball is displayed at the center of the screen, the player “addresses” an image sensor unit placed on the floor and try to hit the virtual with a club, i.e., swings the club above the image sensor unit.
- When the player swings the club, the image sensor detects the positions of the moving club head and associated computation program within the image sensor unit computes the speed and the direction of the club head. The detected speed and the movement are applied to the golf game program. In response, the golf game program computes the direction and speed of the club head, computes the resultant trajectory of the imaginary golf ball hit by the imaginary golf club in accordance with the direction and the speed of the club head, and creates a new game situation in accordance with the new position of the golf ball.
- Naturally, specific hardware is necessary for detecting the position of the club head. Japanese Patent Application Laying-Open (Tokkai) No. 2004-85524 discloses an apparatus for detecting such positions of a game tool. The apparatus is used in a computer golf game and includes a stroboscope having four LED's (light emitting diodes), a CMOS (Complementary Metal-Oxide-Silicon) image sensor (hereinafter “CIS”), and a processor. A retro-reflector is attached to the bottom (sole) of a club head or a putter head. The retro-reflector has a long rectangular shape with circular ends. The apparatus is connected to a TV monitor and a golf game program running on the processor generates the video image of a virtual golf course in response to the player's action with the club or the putter.
- In operation, the CIS captures two kinds of images: images during the stroboscope LED's are on (emitting light); and images during the stroboscope LED's are off. The image signals are applied to the processor, where necessary computation is carried out.
- When LED's are emitting light, the retro-reflector reflects that light to the CIS; therefore, the CMOS sensor forms the image of the retro-reflector. Other light sources also form images on the CIS. When the LED's are off, the retro-reflector does not reflect the light; their images are not formed. Only other light sources form their images. By computing the difference between these two kinds of images in the processor, therefore, the processor can detect the images of the retro-reflectors separate from other images.
- The processor detects two points farthest from each other in an image of the retro-reflector. These two points indicate the two ends of the mid line of the retro-reflector; by knowing the X and Y coordinates of these points, the processor can know the position of the club head or the putter head as an average of these two points. By computing this point for each of the captured images, the processor computes the direction and the speed of the movement of the club head. Also, the processor can compute the angle θ between the line connecting the two end points of the retro-reflector and a prescribed reference line. From this angle θ, the angle of the head face can be computed.
- A golf game program running on the processor processes these data, determines the trajectory of the virtual golf ball, and creates next virtual situation.
- However, in order to determine the two farthest points in the image of the retro-reflector, the processor have to compute the distance of each combination of two points in the image of the retro-reflector. This is relatively complicated operation and requires a considerable amount of computing time. Further, the CIS has a 32×32 pixel, 8 bits per pixel image plane. The data size of one image therefore amounts to 8192 bits=1024 bytes. The processor needs to receive the data from the CIS, store the data, and carry out the above-described computations on the stored data.
- Therefore, a processor with relatively high performance is necessary in order to carry out the computation necessary for the game in real time. Also, the processor needs to have storage with a capacity large enough to store the data output from the CIS. This results in a computer game machine with a relatively high cost. Because children are the main users of the computer game machines, the game machines should be inexpensive although they should have enough performance to fully operate in real time.
- Therefore, one of the objects of the present invention is to provide an object detector that detects a position of an object with a simple operation and a method thereof.
- Another object of the present invention is to provide an object detector that detects a position of an object with smaller amount of computation compared with the prior art and a method thereof.
- Yet another object of the present invention is to provide an object detector having simple structure that detects a position of an object with smaller amount of computation compared with the prior art and a method thereof.
- In accordance with a first aspect of the present invention, a method of detecting a position of a rectangular object includes the steps of: capturing an image of the object by an image sensor having a rectangular image plane having four edges; detecting, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and determining a position of a predefined point of the image of the object based on the detected distances.
- The distances of the four points closest to the respective edges of the image plane from the respective edges can be detected with simple operation and does not require a large amount of computation time. Therefore, a method that can detect a position of an object with a simple operation can be provided.
- The step of determining may include the step of determining a position of the center point of the image of the object based on the distances.
- Preferably, a coordinate system having a first axis and a second axis is defined on the image plane. The first axis of the coordinate system is perpendicular to a first pair of opposite edges of the image plane, and the second axis of the coordinate system is perpendicular to a second pair of the edges of the image plane. The step of determining a position of the center point may include the step of: determining first-axis coordinates of points closest to respective edges of the first pair of edges; calculating a first-axis coordinate of the center point by averaging the first-axis coordinates determined in the step of determining first-axis coordinates; determining second-axis coordinates of points closest to respective edges of the second pair of edges; and calculating a second-axis coordinate of the center point by averaging the second-axis coordinates determined in the step of determining second-axis coordinates.
- Scanning the image plane searching for four points closest to the four edges from the edges can be implemented with simple algorithm. By detecting these four points, the center point of the image of the object is easily calculated. Therefore, a simple method for detecting a position of an object is provided.
- More preferably, the method further includes the steps of calculating an angle θ that one of the edges of the image of the object forms with one of the four edges of the rectangular image plane using the first-axis coordinates determined in the step of determining first-axis coordinates, and the second-axis coordinates determined in the step of determining second-axis coordinates.
- Still more preferably, the first-axis coordinates determined in the step of determining first-axis coordinates includes coordinate values R1 x and L1 x where R1 x>L1 x; and the second-axis coordinates determined in the step of determining second-axis coordinates includes coordinate values T1 y and B1 y where T1 y>B1 y. The step of calculating an angle may include the step of calculating the angle θ by a following equation:
- By simply detecting four coordinate values T1 y, B1 y, R1 x and L1 x of the four points, the angle θ can be computed. There is no need to know the eight, full coordinate values of the four points.
- Further preferably, the objects includes a rectangular retro-reflective strip, and the step of capturing includes the steps of: turning on a lighting device; capturing and storing a first image of the object by the image sensor while the lighting device is on; turning off the lighting device; capturing and storing a second image of the object by the image sensor while the lighting device is off, and subtracting the second image from the first image.
- The image plane of the image sensor may have a plurality of pixels each producing a pixel signal having a plurality of signal levels, and the method further includes the step of down-sampling the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
- Preferably, the step of detecting includes the steps of, for each edge of the four edges of the image plane, scanning the down-sampled rectangular image plane starting from the each edge in a direction to an opposite edge until a point having a predetermined first value is found.
- An object detector for detecting a position of a rectangular object in accordance with another aspect of the present invention includes: an image sensor having a rectangular image plane having four edges; a distance detector that detects, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and a position determiner that determines a position of a predefined point of the image of the object based on the detected distances.
- Preferably, the object includes a rectangular retro-reflective strip, and the object detector further includes: a light source; a light source controller that causes the light source to periodically emit a light; an exposure controller that causes the image sensor to capture a first image while the light source is emitting a light and to capture a second image while the light source is not emitting a light; and an image subtracting device that subtracts the second image from the first image.
- More preferably, the image plane of the image sensor has a plurality of pixels each producing a pixel signal having a plurality of signal levels; and the object detector further includes a down sampling circuit that down-samples the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
- Still more preferably, the object detector further includes a wireless transmitter that transmits the position of the predetermined point of the image of the object via wireless communication.
- The foregoing and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.
-
FIG. 1 illustrates an overall arrangement of agolf game system 30 in accordance with one embodiment of the present invention; -
FIG. 2 shows agame cassette 76 including a CPU and a memory that stores a golf game program, and anadaptor 46 for thegame cassette 76 having TV connection capabilities and IR communication capability; -
FIG. 3 is a perspective view of aswing detector 44 for detecting the direction and the speed of a club head as well as an angle of its face in accordance with the embodiment; -
FIG. 4 shows agolf club 42 for a golf game used with theswing detector 44 shown inFIG. 3 ; -
FIG. 5 shows a functional block diagram of theswing detector 44; -
FIG. 6 schematically shows the image plane ofCIS 146 of theswing detector 44 shown inFIG. 5 and an image of a retro-reflector strip 124 of thegolf club 42 shown inFIG. 4 ; -
FIG. 7 is a waveform diagram of the signals withinswing detector 44 shown inFIG. 3 ; -
FIG. 8 is waveform diagrams of an image signal outputted fromCIS 146 to downsampling comparator 150 shown inFIG. 5 and an image signal down-sampled by down samplingcomparator 150; - FIGS. 9 to 12 show the overall control structure of golf club detecting program running on the processor of
swing detector 44; -
FIG. 13 shows directions of a clubface that can be detected byswing detector 44; -
FIG. 14 shows a detecteddirection 344 of the movement of the golf club with reference to apredetermined reference direction 342; -
FIG. 15 shows a conventional way of determining a direction of a golf ball movement hit by a golf club; -
FIG. 16 shows a novel way of determining a direction of a golf ball in accordance with the first embodiment; -
FIG. 17 shows the detected angle θ2 of the clubface in accordance with the first embodiment; and -
FIG. 18 shows how the direction of a golf ball in the screen is determined in the embodiment of the present invention. - Overall Arrangement of the System
-
FIG. 1 shows an overall arrangement of agolf game system 30 in accordance with one embodiment of the present invention. Referring to FIG. 1,golf game system 30 includes: anadaptor 46 having connection facility toTV 48 via acable 52 and a wireless IR (Infrared) communication capability; and agame cassette 76 that is to be mounted onadaptor 46. - Referring to
FIG. 2 ,adaptor 46 has ahousing 72 and a receivingstage 74 that moves up and down withinhousing 72. A connector is provided within the housing ofadaptor 46 and by pushing down receivingstage 74, the connector is exposed.Adaptor 46 further has an IR emitting/receivingwindow 70 for IR communication. -
Game cassette 76 has aconnector 78 with connector pins Tn. Whengame cassette 76 is put on receivingstage 74 and pushed down, receivingstage 74 moves down andconnector 78 will be coupled with the connector (not shown) ofadaptor 46. Although not illustrated,game cassette 76 includes a CPU and a memory that stores a golf game program. Through the connection of theconnectors 78 and the connector ofadaptor 46 not shown, the processor ofgame cassette 76 can utilize the IR communication capability ofadaptor 46. The processor can also apply video image of a golf game toTV 48 shown inFIG. 1 . - Referring again to
FIG. 1 ,golf game system 30 further includes: agolf club 42 which aplayer 40 uses to play the golf game; and aswing detector 44 for detecting the position of the head ofgolf club 42 as well as the angle of clubface ofgolf club 42 with reference to a predefined reference direction.Swing detector 44 also has a wireless IR communication capability and can transmit the detected position of the head ofgolf club 42 as well as the angle of the clubface toadaptor 46 through theIR light 50. - Structure of
Swing Detector 44 - Referring to
FIG. 3 ,swing detector 44 includes a relativelyflat housing 80.Swing detector 44 further includes: anIR LED 106 for transmitting data; apower switch 90; fourswitches swing detector 44; aCIS 146; and two IR LED's 94 and 96 for exposure provided on either side ofCIS 146, all arranged on the upper surface ofhousing 80. The arrangement of the circuitry withinswing detector 44 will be described later with reference toFIG. 5 . - Referring to
FIG. 4 ,golf club 42 includes ashaft 120; aclub head 122 with aneck 121 that is connected toshaft 120. On the bottom (sole) ofclub head 122, a retro-reflector strip 124 having a rectangular shape is attached. Retro-reflector strip 124 has two sets of edges; longer ones and shorter ones. Retro-reflector strip 124 is attached toclub head 122 so that its longer edges are parallel to the edge of the clubface. - Referring to
FIG. 5 , in addition toIR LED 106, IR LED's 94 and 96 and fourbuttons swing detector 44 includes as its inner circuitry:CIS 146 having 32H (Horizontal)×32V (Vertical) resolution outputting VOUTS signal, which includes a series of pixel values quantized to 8 levels; adown sampling comparator 150 connected to receive the VOUTS signal fromCIS 146 for down-sampling the VOUTS signal to a 1-bit binary signal; an MCU (Micro Controller Unit) 148 that receives the output of downsampling comparator 150 for computing the position of the center point of the club head as well as the angle of the clubface; and apower LED 152 embedded withinpower key 90 shown inFIG. 3 for the indication of power on and off. Although not shown,MCU 148 has an internal memory, registers, and a processor. - Down
sampling comparator 150 includes a Schmidt trigger. In this embodiment, the positive going threshold and the negative going threshold of Schmidt trigger is the same: VTH When the level of the input signal goes higher than the threshold VTH, the output of downsampling comparator 150 immediately goes High. If the level of the input signal falls to a level lower than the threshold VTH, the output of downsampling comparator 150 immediately falls to Low. Thus, the VOUTS signal, which is a multi-level signal, is converted into a 1-bit binary signal. -
Swing detector 44 further includes: abattery box 140 operatively coupled topower key 90; avoltage regulator circuit 142 for regulating the voltage outputted bybattery box 140 and for supplying power to MCU 148 and other circuits inswing detector 44 via power lines; and apower control switch 144 that, under control ofMCU 148, supplies the power fromvoltage regulator circuit 142 toCIS 146 so thatCIS 146 captures images at prescribed timings.Power control switch 144 andCIS 146 receives control commands fromMCU 148 via acontrol bus 149. Outputs ofCIS 146 and downsampling comparator 150 are connected to the input ofMCU 148 via adata bus 151. - Referring to
FIG. 6 ,MCU 148 finds the angle θ which one of the edge of theimage 182 of retro-reflector strip 124 forms with one of the edges of the image plane ofCIS 146 in the following manner. First,MCU 148 scans theimage 180 captured byCIS 146 row by row from the top to the bottom searching for animage 182 of retro-reflector strip 124. The first bright point at a row with a y-coordinate T1 y indicates the topmost corner 190 of theimage 182. For that purpose, a coordinate system is defined on the image 180 (i.e., on the image plane of CIS 146). Likewise,MCU 148scans image 180 column by column from the rightmost column until it finds the rightmost bright point. This point indicates the column with an x-coordinate value R1 x of thecorner 192 ofimage 182. In a similar manner,MCU 148 finds the leftmostbright point 196 at a point with x-coordinate L1 x and the bottombright point 194 with a y-coordinate B1 y. Here, T1 y>B1 y holds. Likewise, R1 x>L1 x holds. In other words, in this operation, the distances of the fourpoints image 180 from the respective edges are detected and then their x- or y-coordinate values are computed. -
Points image 180 of retro-reflector strip 124. The coordinates (X, Y) of thecenter point 198 of theimage 182 of retro-reflector strip 124 then are then computed by:
X=(L1x+R1x)/2
Y=(T1y+B1y)/2. - The angle θ, which the longer edge of
image 182 of retro-reflector strip 124 makes with the x-axis, is determined by: - By the above-described simple computation, the position of the center point of retro-
reflector strip 124 and its angle between the x-axis can be computed. This requires a relatively small amount of computation compared with the prior art. -
FIG. 7 shows the waveforms of the signals amongCIS 146,MCU 148 and downsampling comparator 150 shown inFIG. 5 . Referring toFIG. 7 , “FS” is the frame signal for synchronization of circuits external toCIS 146. One cycle period of signal FS is predetermined by a clock signal (SCLK) and, in this embodiment, it equals to 12288 clock cycles. In this embodiment,CIS 146 captures an image while signal FS is at the Low level. This period will be called an exposure time “Texp” hereinafter. WhenCIS 146 is ready to output the captured image signal, signal FS is at the High level. - The time period of
CIS 146 for capturing an image (hereinafter “internal exposure time”) depends on the settings of a specific 8-bit register E0(7:0) internal toCIS 146. The settings may be externally changed. The exposure time Texp is divided into 255 (=28) parts.CIS 146 determines the internal exposure time by Texp times register value E0(7:0) divided by 255. Thus, if the register value E0(7:0) is 200, the internal exposure time will be Texp*200/255 as shown inFIG. 7 . - When signal FS is at the High level, i.e., signal FS indicates the data transfer period,
CIS 146 is ready to transfer the captured image data VOUTS. The rising edges of signal STR show the timings of data hold and sampling of VOUTS at down samplingcomparator 150. During the data transfer period, signal STR includes 32×32+1 pulses. At each of the falling edges of these pulses, downsampling comparator 150 samples theVOUTS signal 220, compares the level ofVOUTS signal 220 with thethreshold level V TH 221, and outputs the result as a 1-bit signal 222. The first data is a dummy and is discarded; therefore, downsampling comparator 150outputs 32×32 pixel data within the data transfer period.VOUTS signal 220 shows the intensity of the image quantized to 8 levels. This signal is reduced to the 1-bit signal and is supplied toMCU 148. - Because the image signal is reduced to 1-
bit 32×32 pixel signals, memory capacity ofMCU 148 required for storing the image data is substantially reduced and an MCU with relatively low cost can be used. -
FIG. 8 shows the down sampling carried out by down samplingcomparator 150. VOUTS outputted fromCIS 146 has 8-bit resolution as shown in waveforms 220 (FIG. 8 (b)). Downsampling comparator 150 compares the level of VOUTS with apredetermined threshold level 221 and outputs the resultant 1-bit binary signal as shown by the waveform 222 (FIG. 8 (a)). - Program Structure of
Swing Detector 44 - FIGS. 9 to 12 show the overall control structure of the program running on
MCU 148 ofswing detector 44 for controllingCIS 146, capturing the image of retro-reflector strip 124, and computing the position of its center point and its angle θ with reference to the x-axis. - Referring to
FIG. 9 , after the power-on, the program starts atstep 240 where registers ofMCU 148 are initialized. Atstep 242,MCU 148 clears its RAM (random access memory). Then, atstep 244, PIO (programmed input/output) setting ofMCU 148 is carried out. Atstep 246,MCU 148 read option code setting and resetsCIS 146 and set up registers ofCIS 146 in accordance with the option code setting. Atstep 248, watchdog timer is reset. - At
step 250, it is determined whether the signal FS is Low or not. If not, the control returns to step 250 and the determination is repeated until the signal FS is Low. When signal FS is Low,MCU 148 turns on the exposure IR LED's 94 and 96 (seeFIGS. 3 and 5 ). Atstep 254, exposure IR LED's 94 and 96 are kept on until the signal FS is High. When the signal FS is found to be High, exposure IR LED's 94 and 96 are turned off atstep 256. - Referring to
FIG. 10 ,MCU 148 waits until the signal STR is at its falling edge atstep 258. When the STR is at its falling edge,MCU 148 reads the VOUTS down-sampled by down samplingcomparator 150 atstep 260. - At
step 262, it is determined whether all 32×32 data are received fromCIS 146. If not, the control returns to step 258. When all of the 32×32 data are received, the control goes to step 264, where RAM loaded with the received data withinMCU 148 is organized. The 32×32 data received atsteps 258 to 262 forms the exposure data. - At
step 266,CIS 146 tries to get key press data. Atstep 268, a sleep counter (not shown) withinMCU 148 is checked ant it is determined whether the sleep counter has overflowed or not. If overflowed, the control goes to step 270; otherwise, it goes to step 280 (FIG. 11 ). - At
step 270,MCU 148 controlspower control switch 144 to stop the power supply toCIS 146 and enters the sleep mode. Atstep 272,MCU 148 turns on the sleep LED, which is power LED shown inFIGS. 3 and 5 . Atstep 274,MCU 148 waits for a predetermined period by a delay loop. After the predetermined period,MCU 148 turns on the sleep LED atstep 276. Atstep 278, it is determined whether key is pressed or not. If there is no key press, then control returns to step 270 andMCU 148 enters sleep mode again. If there is a key press, the control jumps back to step 240 andMCU 148 carries out thesteps 240 and seq. again. - When it is determined at
step 268 that the sleep counter has not overflowed, control goes to step 280 shown inFIG. 11 . Referring toFIG. 11 , atstep 280,MCU 148 waits until the signal FS is High. When the signal FS is High,MCU 148 turns on power onLED 152 atstep 282 and waits until the signal FS is Low atstep 284. By turning on power onLED 152,MCU 148 indicates thatMCU 148 andCIS 146 are operating. When the signal FS is Low,MCU 148 turns off power onLED 152. By turning off the power onLED 152,MCU 148 indicates that it will not receive any key input. - Next, at
step 288,MCU 148 waits until the signal STR is at is falling edge. When the signal STR is at its falling edge,MCU 148 again reads VOUTS data atstep 290.Steps step 292. The 32×32 data received atsteps 258 to 262 form the dark data. Then, the control goes to step 294, whereMCU 148 subtracts the dark data from the exposure data. By this operation, images of light sources other than retro-reflector strip 124 are removed from the 32×32 exposure data. Control goes to step 296 shown inFIG. 12 . - At
step 296, it is determined whether there is no blight point in the image or any key press. If there is a blight point or a key press, control goes to step 298; otherwise, control goes to step 318. - At
step 298, it is determined whether there is no bright point in the image but a key press. If there is no bright point but a key press, control goes to step 314; otherwise, control goes to step 300. - At
step 300,MCU 148 scans the 32×32 image from top to bottom row until it gets the topmost bright point T1 y. Atstep 302,MCU 148 scans the image from bottom to top row to get the bottommost bright point B1 y. Atstep 304,MCU 148 scans the image from left to right column to get the leftmost bright point L1 x. Finally, atstep 306,MCU 148 scans the image from right to left column to get the rightmost bright point R1 x. - At
step 308,MCU 148 calculates center point (X, Y) of the image of retro-reflector strip 124 by the following equations (1):
X=(L1x+R1x)/2
Y=(T1y+B1y)/2 (1) - At
step 310, it is determined whether the game is in an angle mode where the angle of the clubface is considered in the golf game. If it is not in the angle mode, control goes to step 314; otherwise, control goes to step 312 where club angle θ is calculated by the following equation (2):
θ=tan−1(T1y−B1y)/(L1x−R1x) (2) - Then control goes to step 314. At
step 314,MCU 148 sets up the IR output pattern for the IR communication toadaptor 46 in accordance with the computed result. - The data format of the position data and angle data for IR communication includes 22 bits. The first bit is a start bit, which is always is 1. The next thirteen bits represent the X and Y coordinates of the center point including parity bits. Because X and Y are in the range from 0 to 31 (32 pixels), it requires 5 bits to represent each of the X and Y coordinates. The parity bits include three bits.
- The next four bits represent the club angle. The angle computed at
step 312 is rounded to the nearest 15 degrees (15°) as shown by the twelve angles θ1 to θ12 inFIG. 13 . Thus, the club angle requires 4 bits in transmission. - The next three bits indicates the pressed key. If no key is pressed, these three bits are not transmitted.
- Referring again to
FIG. 12 , atstep 316,MCU 148 resets the sleep mode counter. Atstep 320,MCU 148 outputs the IR data set up atstep 314. The golf game program running onadaptor 46 can then utilize the data and change the game situation. Afterstep 320, the control returns to step 248 shown inFIG. 9 . - When it is determined at
step 296 that there is no bright point in the 32×32 image nor a key press, control goes to step 318. Atstep 318,MCU 148 clears the IR output patterns. Then the control goes to step 320 where the cleared IR output pattern is output toadaptor 46. - Operation of
Swing Detector 44 -
Swing detector 44 of the present embodiment operates as follows. At the time of power-up,MCU 148 ofswing detector 44 initializes its registers (FIG. 9 , step 240), clears its RAM (step 242), sets up PIO settings (step 244), and reads option code setting and starts supplying power to CIS 146 (step 246). In response to the power supply,CIS 146 starts capturing images. During the exposure period,CIS 146 sets the signal FS at the Low level and during the transfer period,CIS 146 sets the signal FS at the High level. - At
step 248,MCU 148 resets watchdog timer and waits for the signal FS fromCIS 146 to be Low (FIG. 9 , Step 250). When the signal FS becomes Low, this indicates thatCIS 146 is in the exposure period andCIS 146 turns on IR LED's 94 and 96 for exposure.CIS 146 captures the image during the exposure time.CIS 146 waits for the signal FS to be High atstep 254. WhenCIS 146 is ready to output the VOUTS, it sets the signal FS to the Higher level andMCU 148 exits step 254 and turns off IR LED's 94 and 96 for exposure atstep 256. - Referring to
FIG. 7 , the signal FS and the signal STR attain the High level at the same time. During the transfer period, the signal FS stays at the High level and the signal STR alternately attains the Low level and the High level at a specific time period. At each of the falling edges of the signal STR,CIS 146 starts outputting data VOUTS showing the intensity of a pixel of the captured image quantized to eight levels as shown inFIG. 8 (b). - The output of down
sampling comparator 150 rises to the High level when the level of VOUTS is equal to or higher than the positive going threshold. It falls to the Low level when the level of VOUTS is lower than the negative going threshold. An example of the output of downsampling comparator 150 is shown inFIG. 8 (a). - Referring again to
FIG. 10 , atsteps 258 to 262, at each of the falling edges of the signal STR,MCU 148 reads VOUTS down sampled by down samplingcomparator 150. When 32×32 data are received,MCU 148 organizes RAM and tries to get key data. The received data forms the exposure data. - If sleep counter is found to have overflowed at
step 268,MCU 148 enters the sleep mode until any of the keys is pressed. If sleep counter has not overflowed,MCU 148 waits until the signal FS is Low at step 280 (FIG. 11 ). When the signal FS is Low,CIS 146 is again in the exposure period andMCU 148 turn on power onLED 152 at step 282 (FIG. 11 ) indicating thatMCU 148 andCIS 146 are operating. Then,MCU 148 waits until the signal FS is High atstep 284. During this period,CIS 146 captures the image without IR LED's 94 and 96 lighting. When the signal FS is High,CIS 146 is now in transfer mode andMCU 148 turns off power onLED 152 indicating thatMCU 148 will not accept any key. - At
steps 288 to 292,MCU 148 receives the 32×32 image VOUTS data outputted fromCIS 146 and down sampled by down samplingcomparator 150. The image forms the dark data. - At
step 294,MCU 148 subtracts the dark data from the exposure data received atsteps 258 to 262 (FIG. 10 ). The resulting data includes, if any, only the exposure data of retro-reflector strip 124. - At
steps 296 and 298 (FIG. 12 ),MCU 148 determines whether the resulting image includes a bright point and if the image includes a bright point, referring toFIG. 6 ,MCU 148 scans the image from top to bottom row to get the topmost bright point T1 y at step 300 (FIG. 12 ), from bottom to top to get the bottommost bright point B1 y atstep 302, from left to right to get the leftmost bright point L1 x atstep 304, and from right to left to get the rightmost bright point R1 x atstep 306. - At
step 308,MCU 148 calculates the coordinates (X, Y) of the image of retro-reflector strip 124 by equations (1). If the game is in the angle mode,MCU 148 calculates club angle by equation (2). - At
step 314,MCU 148 sets up IR output pattern. Atstep 316, it resets the sleep mode counter and outputs the IR data utilizingIR communication window 106 shown inFIGS. 3 and 5 toadaptor 46. - By repeating the above-described operation,
swing detector 44 can detect the position of retro-reflector strip 124 (FIG. 4 ), i.e., the position of the head ofgolf club 42, and the club angle and transmit the detected data toadaptor 46. Theadapter 46 receives the data, calculates the trajectory of the imaginary golf ball, and changes the game situation. - Use of the Club Angle
- The golf game program running on the CPU of
adaptor 46 can use the information of the X and Y coordinates of center of the club head and the club angle as in the following manner. First, by computing the difference between the coordinates detected at different times, the game program can compute the position of the center point of the club head and the angle of the clubface. Using this information, the game program can compute the direction of the imaginary golf ball trajectory. - In this connection, the golf game program running on
adaptor 46 adopts a novel way of determining the direction of the golf ball trajectory. Referring toFIG. 14 , assume that the movingdirection 344 of the club head (the movement of the center point of retro-reflector strip 124) in the 32×32image plane 340 makes an angle OS with areference line 342, which is parallel to the y-axis ofimage plane 340. - In the prior art, as shown in
FIG. 15 , the golfgame program screen 360 would show atarget arrow 364 directed to the golf hole (not shown) and, given the angle θs, determines the trajectory of the imaginary golf in thedirection 366 that makes the angle θs with thereference line 362, which is parallel to the y-axis of the screen 360 (Note here that the direction of y-axis is taken in a direction opposite to that of the y-axis inFIG. 6 ). - In contrast, the golf game program running on
adaptor 46 determines the trajectory of the imaginary golf ball as in the following manner. - Referring to
FIG. 16 , given the angle θs the golf game program in this embodiment adds the angel θs not to thereference line 382 of thescreen 380 but to the direction of thearrow 384 that is directed to the target golf hole, resulting in thedirection 386. By this arrangement, the player can address the imaginary golf ball so that the swing line is on the line directed to the imaginary target golf hole. If the player swings the golf so that angle θs is zero, the imaginary golf ball will go in the direction of the target hole. Thus, the game will be much more like the real golf game. - In determining the trajectory of the imaginary golf ball, the club angle is further taken into consideration in a certain play mode (the “angle mode”) in this embodiment. In the angle mode, the trajectory of the golf ball is determined as shown in
FIGS. 17 and 18 . - Referring to
FIG. 17 , let us assume that the club angle detected byswing detector 44 of the present embodiment is θ2. This means that the angle that aclubface 408 makes with theline 406 normal to the trajectory of theclub head 404, is θ2. Further assuming that the player tries to hit theimaginary golf ball 400 in the direction of thetarget arrow 402, but with a slight deviation of movement by an angle θs then the golf game program determines the trajectory of theimaginary golf ball 400 as in the following. - Referring to
FIG. 18 , animaginary golf ball 422 is displayed on thescreen 420.Target arrow 424 is also shown directed to the target golf hole. Given the club angle θ2 and the deviation angle θs of the club head movement, the program first adds angles θs to the angle ofarrow 424. This results in thedirection 426. Further, the program adds the clubface angle θ2 to thedirection 426, resulting in adirection 428 further deviated fromtarget arrow 424. - By this arrangement, the golf game will be more realistic and the game will be much more amusing than the prior art golf games.
- As has been described,
swing detector 44 can detect the position of the center point of the club, and further the angle of the clubface. A sequence of these data is transmitted to adaptor 46 (FIG. 1 ) via IR communication. Thus, the golf game program running on the CPU ofgame cassette 76 mountedo adaptor 46 can utilize these data and the resultant golf game will be more amusing than the prior art. - Although the present has been described using the embodiment directed to a computer golf game, it is not limited thereto. The present invention can be applied to any kind of position detector as long as the image of the object is rectangular. Further, there is no need to use retro-reflective strip. As long as the object can reflect a light and forms a rectangular image on the image plane of the image sensor, a detector in accordance with the present invention can detect the position and the angle of the object.
- The embodiments as have been described here are mere examples and should not be interpreted as restrictive. The scope of the present invention is determined by each of the claims with appropriate consideration of the written description of the embodiments and embraces modifications within the meaning of, and equivalent to, the languages in the claims.
Claims (20)
1. A method of detecting a position of a rectangular object comprising the steps of:
capturing an image of the object by an image sensor having a rectangular image plane having four edges;
detecting, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and
determining a position of a predefined point of the image of the object based on the detected distances.
2. A method as recited in claim 1 wherein the step of determining includes the step of determining a position of the center point of the image of the object based on the distances.
3. A method as recited in claim 2 wherein a coordinate system having a first axis and a second axis is defined on the image plane, the first axis of the coordinate system being perpendicular to a first pair of opposite edges of the image plane, and the second axis of the coordinate system being perpendicular to a second pair of the edges of the image plane, and
the step of determining a position of the center point includes the step of:
determining first-axis coordinates of points closest to respective edges of the first pair of edges;
calculating a first-axis coordinate of the center point by averaging the first-axis coordinates determined in the step of determining first-axis coordinates;
determining second-axis coordinates of points closest to respective edges of the second pair of edges; and
calculating a second-axis coordinate of the center point by averaging the second-axis coordinates determined in the step of determining second-axis coordinates.
4. A method as recited in claim 3 further comprising the steps of calculating an angle θ which one of the edges of the image of the object forms with one of the four edges of the rectangular image plane using the first-axis coordinates determined in the step of determining first-axis coordinates, and the second-axis coordinates determined in the step of determining second-axis coordinates.
5. A method as recited in claim 4 wherein
the first-axis coordinates determined in the step of determining first-axis coordinates includes coordinate values R1 x and L1 x where R1 x>L1 x; and
the second-axis coordinates determined in the step of determining second-axis coordinates includes coordinate values T1 y and B1 y where T1 y>B1 y; and wherein the step of calculating an angle includes the step of calculating the angle θ by a following equation:
6. A method as recited in claim 5 further comprising the step of rounding the angle θ to a nearest one of a predetermined set of angles.
7. A method as recited in claim 6 wherein the predetermined set of angles includes a series of angles increasing with a specific difference.
8. A method as recited in claim 1 wherein
the objects includes a rectangular retro-reflective strip, and
the step of capturing comprising the steps of:
turning on a lighting device;
capturing and storing a first image of the object by the image sensor while the lighting device is on;
turning off the lighting device;
capturing and storing a second image of the object by the image sensor while the lighting device is off; and
subtracting the second image from the first image.
9. A method as recited in claim 8 wherein the image plane of the image sensor has a plurality of pixels each producing a pixel signal having a plurality of signal levels;
the method further including a step of down-sampling the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
10. A method as recited in claim 9 wherein the step of detecting comprises the steps of, for each edge of the four edges of the image plane, scanning the down-sampled rectangular image plane starting from the each edge in a direction to an opposite edge until a point having a predetermined first value is found.
11. An object detector for detecting a position of a rectangular object comprising:
an image sensor having a rectangular image plane having four edges;
a distance detector that detects, for each edge of the four edges, a distance to a point of the image of the object closest to said each edge; and
a position determiner that determines a position of a predefined point of the image of the object based on the detected distances.
12. An object detector as recited in claim 11 wherein the position determiner includes a center position determiner that determines a position of the center point of the image of the object based on the distances.
13. An object detector as recited in claim 12 wherein a coordinate system having a first axis and a second axis is defined on the image plane, the first axis of the coordinate system being perpendicular to a first pair of opposite edges of the image plane, and the second axis of the coordinate system being perpendicular to a second pair of the edges of the image plane, and
the center position determiner includes:
a first-axis coordinate determiner that determines first-axis coordinates of points closest to respective edges of the first pair of edges;
a first-axis coordinate calculator that calculates a first-axis coordinate of the center point by averaging the first-axis coordinates determined by the first-axis coordinate determiner;
a second-axis coordinate determiner that determines second-axis coordinates of points closest to respective edges of the second pair of edges; and
a second-axis coordinate calculator that calculates a second-axis coordinate of the center point by averaging the second-axis coordinates determined by the second-axis coordinate determiner.
14. A n object detector as recited in claim 13 further including an angle calculator that calculates an angle θ which one of the edges of the image of the object forms with one of the four edges of the rectangular image plane using the first-axis coordinates determined by the first-axis coordinate determiner, and the second-axis coordinates determined by the second-axis coordinate determiner.
15. An object detector as recited in claim 14 wherein the first-axis coordinates determined by the first-axis coordinate determiner includes coordinate values R1 x and L1 x where R1 x>L1 x;
the second-axis coordinates determined by the second-axis coordinate determiner includes coordinate values T1 y and B1Y where T1 y>B1 y, and where
the angle calculator includes a calculator of the angle θ by following equation:
16. An object detector as recited in claim 14 further including a wireless transmitter that transmits the position of the predetermined point of the image of the object via wireless communication.
17. An object detector as recited in claim 11 , wherein the objects includes a rectangular retro-reflective strip,
the object detector further including:
a light source;
a light source controller that causes the light source to periodically emit a light;
an exposure controller that causes the image sensor to capture a first image while the light source is emitting a light and to capture a second image while the light source is not emitting a light;
and an image subtracting device that subtracts the second image from the first image.
18. An object detector as recited in claim 11 wherein the image plane of the image sensor has a plurality of pixels each producing a pixel signal having a plurality of signal levels;
the object detector further including a down sampling circuit that down-samples the pixel signals of the plurality of pixels of the image sensor to 1-bit signals.
19. An object detector as recited in claim 18 wherein the down sampling circuit includes a comparator having a first input connected to receive the pixel signals and a second input connected to a predetermined threshold level voltage.
20. An object detector as recited in claim 11 further including a wireless transmitter that transmits the position of the predetermined point of the image of the object via wireless communication.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/022,774 US20060141433A1 (en) | 2004-12-28 | 2004-12-28 | Method of detecting position of rectangular object and object detector |
US11/138,410 US7646934B2 (en) | 2004-12-28 | 2005-05-27 | Method and apparatus for detecting an image of a reflective object |
JP2007528491A JP2008525051A (en) | 2004-12-28 | 2005-12-21 | Method and apparatus for detecting a reflective object |
PCT/JP2005/024014 WO2006070850A1 (en) | 2004-12-28 | 2005-12-21 | Method and apparatus for detecting reflective object |
US12/606,698 US20100285874A1 (en) | 2004-12-28 | 2009-10-27 | Method and apparatus for detecting an image of a reflective object |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/022,774 US20060141433A1 (en) | 2004-12-28 | 2004-12-28 | Method of detecting position of rectangular object and object detector |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/138,410 Continuation-In-Part US7646934B2 (en) | 2004-12-28 | 2005-05-27 | Method and apparatus for detecting an image of a reflective object |
Publications (1)
Publication Number | Publication Date |
---|---|
US20060141433A1 true US20060141433A1 (en) | 2006-06-29 |
Family
ID=36611579
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/022,774 Abandoned US20060141433A1 (en) | 2004-12-28 | 2004-12-28 | Method of detecting position of rectangular object and object detector |
US11/138,410 Expired - Fee Related US7646934B2 (en) | 2004-12-28 | 2005-05-27 | Method and apparatus for detecting an image of a reflective object |
US12/606,698 Abandoned US20100285874A1 (en) | 2004-12-28 | 2009-10-27 | Method and apparatus for detecting an image of a reflective object |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/138,410 Expired - Fee Related US7646934B2 (en) | 2004-12-28 | 2005-05-27 | Method and apparatus for detecting an image of a reflective object |
US12/606,698 Abandoned US20100285874A1 (en) | 2004-12-28 | 2009-10-27 | Method and apparatus for detecting an image of a reflective object |
Country Status (2)
Country | Link |
---|---|
US (3) | US20060141433A1 (en) |
JP (1) | JP2008525051A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050096132A1 (en) * | 2003-09-22 | 2005-05-05 | Hiromu Ueshima | Music game with strike sounds changing in quality in the progress of music and entertainment music system |
CN112891926A (en) * | 2021-02-19 | 2021-06-04 | 西安万像电子科技有限公司 | Game terminal, cloud server, cloud game control method, and storage medium |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5109221B2 (en) * | 2002-06-27 | 2012-12-26 | 新世代株式会社 | Information processing device equipped with an input system using a stroboscope |
JP2005349048A (en) * | 2004-06-11 | 2005-12-22 | Konami Co Ltd | Game apparatus, golf game apparatus and method of determining shot result thereof |
US20060141433A1 (en) * | 2004-12-28 | 2006-06-29 | Hing Cheung C | Method of detecting position of rectangular object and object detector |
WO2007069752A1 (en) * | 2005-12-12 | 2007-06-21 | Ssd Company Limited | Exercise assisting method, exercise appliance, and information processor |
EP1927957A1 (en) * | 2006-11-29 | 2008-06-04 | Sick Ag | Method and apparatus for surveillance of an area |
CN102346020B (en) * | 2010-08-04 | 2013-10-23 | 原相科技股份有限公司 | Three-dimensional information generation device and method for interactive interface |
JP5639830B2 (en) * | 2010-09-29 | 2014-12-10 | 任天堂株式会社 | GAME DEVICE, GAME PROGRAM, GAME SYSTEM, AND GAME CONTROL METHOD |
JP6175750B2 (en) * | 2012-09-21 | 2017-08-09 | カシオ計算機株式会社 | State identification device, state identification method and program |
CN105139399A (en) * | 2015-08-25 | 2015-12-09 | 广州视源电子科技股份有限公司 | Diode polarity detection method and device |
CN110505814A (en) | 2017-02-20 | 2019-11-26 | 3M创新有限公司 | Optical goods and the system interacted |
EP3616764A1 (en) | 2017-06-22 | 2020-03-04 | Centurion VR, Inc. | Virtual reality simulation |
KR20200061370A (en) | 2017-09-27 | 2020-06-02 | 쓰리엠 이노베이티브 프로퍼티즈 캄파니 | Personal protective equipment management system using optical patterns for equipment and safety monitoring |
US11944887B2 (en) * | 2018-03-08 | 2024-04-02 | Sony Corporation | Information processing device and information processing method |
US11935299B2 (en) | 2022-04-08 | 2024-03-19 | Cisco Technology, Inc. | Decoding light-based messages to support device maintenance |
Citations (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2783999A (en) * | 1954-02-25 | 1957-03-05 | Reflectone Corp | Golf game |
US2933681A (en) * | 1955-04-28 | 1960-04-19 | Harry M Crain | Golf practice device |
US3160011A (en) * | 1962-07-31 | 1964-12-08 | Myer Schine J | Practice means |
US3513707A (en) * | 1966-10-24 | 1970-05-26 | Brunswick Corp | Golf game computing system |
US3563553A (en) * | 1969-04-29 | 1971-02-16 | Brunswick Corp | Automatic indexing of indexible tee for automatic lie selection |
US3918073A (en) * | 1974-03-18 | 1975-11-04 | James F Henderson | Golf teaching aid apparatus |
US3992012A (en) * | 1975-10-20 | 1976-11-16 | Campbell Ian R | Electrical golf club swing monitor |
US4063259A (en) * | 1975-10-29 | 1977-12-13 | Acushnet Company | Method of matching golfer with golf ball, golf club, or style of play |
US4136387A (en) * | 1977-09-12 | 1979-01-23 | Acushnet Company | Golf club impact and golf ball launching monitoring system |
US4137566A (en) * | 1977-09-12 | 1979-01-30 | Acushnet Company | Apparatus and method for analyzing a golf swing and displaying results |
US4158853A (en) * | 1977-09-12 | 1979-06-19 | Acushnet Company | Monitoring system for measuring kinematic data of golf balls |
US4160942A (en) * | 1977-09-12 | 1979-07-10 | Acushnet Company | Golf ball trajectory presentation system |
US4223891A (en) * | 1978-08-07 | 1980-09-23 | Richard Van Gaasbeek | Golf stroke analyzer |
US4306723A (en) * | 1978-11-21 | 1981-12-22 | Rusnak Thomas L | Golf swing training apparatus |
US4375887A (en) * | 1975-10-29 | 1983-03-08 | Acushnet Company | Method of matching golfer with golf ball, golf club, or style of play |
US4461477A (en) * | 1982-06-14 | 1984-07-24 | Stewart Eddie A | Method and apparatus for improving the performance of a batter |
US4477079A (en) * | 1982-08-16 | 1984-10-16 | White Arthur A | Golf swing training and practice device |
US4695891A (en) * | 1986-11-13 | 1987-09-22 | Eastman Kodak Company | Variable speed video camera |
US4695888A (en) * | 1986-11-13 | 1987-09-22 | Eastman Kodak Company | Video camera with automatically variable diaphragm and shutter speed control |
US4713686A (en) * | 1985-07-02 | 1987-12-15 | Bridgestone Corporation | High speed instantaneous multi-image recorder |
US4742556A (en) * | 1985-09-16 | 1988-05-03 | Davis Jr Ray E | Character recognition method |
US4802229A (en) * | 1983-04-12 | 1989-01-31 | Canon Kabushiki Kaisha | Image processing system |
US4858934A (en) * | 1988-04-27 | 1989-08-22 | Syntronix Systems Limited | Golf practice apparatus |
US4991850A (en) * | 1988-02-01 | 1991-02-12 | Helm Instrument Co., Inc. | Golf swing evaluation system |
US5054785A (en) * | 1990-12-18 | 1991-10-08 | Acushnet Company | Game ball support device and piezoelectric ball motion detector |
US5056791A (en) * | 1989-09-28 | 1991-10-15 | Nannette Poillon | Golf simulator and analyzer system |
US5101268A (en) * | 1989-12-05 | 1992-03-31 | Sony Corporation | Visual point position control apparatus |
US5111410A (en) * | 1989-06-23 | 1992-05-05 | Kabushiki Kaisha Oh-Yoh Keisoku Kenkyusho | Motion analyzing/advising system |
US5179441A (en) * | 1991-12-18 | 1993-01-12 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Near real-time stereo vision system |
US5210603A (en) * | 1992-01-21 | 1993-05-11 | Sabin Donald C | Automated video recording device for recording a golf swing |
US5297796A (en) * | 1992-04-03 | 1994-03-29 | Peterson Jon R | Golf swing monitoring system |
US5342054A (en) * | 1993-03-25 | 1994-08-30 | Timecap, Inc. | Gold practice apparatus |
US5401026A (en) * | 1992-01-22 | 1995-03-28 | Blackfox Technology Group | Method and apparatus for determining parameters of the motion of an object |
US5413345A (en) * | 1993-02-19 | 1995-05-09 | Nauck; George S. | Golf shot tracking and analysis system |
US5471383A (en) * | 1992-01-22 | 1995-11-28 | Acushnet Company | Monitoring systems to measure and display flight characteristics of moving sports object |
US5472205A (en) * | 1994-06-20 | 1995-12-05 | Thrustmaster, Inc. | Opto-electric golf club swing sensing system and method |
US5486001A (en) * | 1991-05-30 | 1996-01-23 | Baker; Rick | Personalized instructional aid |
US5501463A (en) * | 1992-11-20 | 1996-03-26 | Acushnet Company | Method and apparatus to determine object striking instrument movement conditions |
US5575719A (en) * | 1994-02-24 | 1996-11-19 | Acushnet Company | Method and apparatus to determine object striking instrument movement conditions |
US5589628A (en) * | 1995-12-19 | 1996-12-31 | Pga Tour | Golf ball striking device |
US5626526A (en) * | 1995-03-31 | 1997-05-06 | Pao; Yi-Ching | Golf training device having a two-dimensional, symmetrical optical sensor net |
US5718639A (en) * | 1994-06-20 | 1998-02-17 | Thrustmaster, Inc. | Opto-electric golf club swing sensing system having vertically offset sensors |
US5846139A (en) * | 1996-11-13 | 1998-12-08 | Carl J. Bair | Golf simulator |
US5988504A (en) * | 1997-07-14 | 1999-11-23 | Contex A/S | Optical scanner using weighted adaptive threshold |
US6011359A (en) * | 1998-01-16 | 2000-01-04 | Acushnet Company | Multiple flash/single lamp circuit for fast sequential strobing |
US6034723A (en) * | 1992-11-20 | 2000-03-07 | Sony Corporation | Image movement vector detection apparatus |
US6042483A (en) * | 1996-10-30 | 2000-03-28 | Bridgestone Sports Co., Ltd. | Method of measuring motion of a golf ball |
US6064758A (en) * | 1996-11-27 | 2000-05-16 | Daewoo Electronics Co., Ltd. | Mounting coordinate input method and apparatus for surface mount device |
US6144366A (en) * | 1996-10-18 | 2000-11-07 | Kabushiki Kaisha Toshiba | Method and apparatus for generating information input using reflected light image of target object |
US6201892B1 (en) * | 1997-02-26 | 2001-03-13 | Acuity Imaging, Llc | System and method for arithmetic operations for electronic package inspection |
US6226406B1 (en) * | 1997-12-31 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for hybrid sampling image verification |
US6241622B1 (en) * | 1998-09-18 | 2001-06-05 | Acushnet Company | Method and apparatus to determine golf ball trajectory and flight |
US6254492B1 (en) * | 2000-08-02 | 2001-07-03 | Michael Taggett | Sports training system and sports video game |
US6377703B1 (en) * | 1998-11-10 | 2002-04-23 | Seiko Epson Corporation | Apparatus and method for determining an area encompassing an image for scanning the image |
US6375579B1 (en) * | 1998-03-30 | 2002-04-23 | Lee David Hart | Golf swing analysis system and method |
US20020098897A1 (en) * | 2001-01-19 | 2002-07-25 | Callaway Golf Company | System and method for measuring a golfer's ball striking parameters |
US20020155896A1 (en) * | 2001-02-14 | 2002-10-24 | William Gobush | Launch monitor system and a method for use thereof |
US20020173367A1 (en) * | 2001-02-14 | 2002-11-21 | William Gobush | Performance measurement system with fluorescent markers for golf equipment |
US20030040373A1 (en) * | 2000-10-03 | 2003-02-27 | Chamberlain Stephen B. | Golf simulator |
US6533674B1 (en) * | 1998-09-18 | 2003-03-18 | Acushnet Company | Multishutter camera system |
US20030054327A1 (en) * | 2001-09-20 | 2003-03-20 | Evensen Mark H. | Repetitive motion feedback system and method of practicing a repetitive motion |
US6579190B2 (en) * | 2000-03-15 | 2003-06-17 | Sumitomo Rubber Industries, Ltd. | Ball motion measuring apparatus |
US20030231803A1 (en) * | 2002-05-31 | 2003-12-18 | Hua Huang | Smart scan |
US20040032970A1 (en) * | 2002-06-06 | 2004-02-19 | Chris Kiraly | Flight parameter measurement system |
US6720949B1 (en) * | 1997-08-22 | 2004-04-13 | Timothy R. Pryor | Man machine interfaces and applications |
US20040114033A1 (en) * | 2002-09-23 | 2004-06-17 | Eian John Nicolas | System and method for three-dimensional video imaging using a single camera |
US20040240754A1 (en) * | 2001-06-29 | 2004-12-02 | Smith Melvyn Lionel | Overhead dimensioning system and method |
US20050013467A1 (en) * | 2003-07-16 | 2005-01-20 | Mcnitt Michael J. | Method and system for physical motion analysis and training of a golf club swing motion using image analysis techniques |
US20050041217A1 (en) * | 2003-08-22 | 2005-02-24 | Nec Corporation | Image projection method and device |
US20050215335A1 (en) * | 2004-03-26 | 2005-09-29 | Christian Marquardt | Position detector and method of motion analysis |
US20050239548A1 (en) * | 2002-06-27 | 2005-10-27 | Hiromu Ueshima | Information processor having input system using stroboscope |
US7062082B2 (en) * | 2001-05-09 | 2006-06-13 | Mitsunori Miki | Method and apparatus of measuring three-dimensional posture of sphere and method of measuring rotational amount of sphere and direction of rotational axis thereof |
US7068855B2 (en) * | 2002-07-16 | 2006-06-27 | Hewlett-Packard Development Company, L.P. | System and method for manipulating a skewed digital image |
US20060204056A1 (en) * | 2003-06-26 | 2006-09-14 | Eran Steinberg | Perfecting the effect of flash within an image acquisition devices using face detection |
US7209576B2 (en) * | 2002-02-07 | 2007-04-24 | Accu-Sport International, Inc. | Methods, apparatus and computer program products for processing images of a golf ball |
US7214138B1 (en) * | 1999-01-29 | 2007-05-08 | Bgi Acquisition, Llc | Golf ball flight monitoring system |
US7744480B2 (en) * | 2004-01-20 | 2010-06-29 | Acushnet Company | One camera club monitor |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2223849A (en) * | 1939-05-04 | 1940-12-03 | Little Inc A | Means for analyzing motion |
US5249967A (en) * | 1991-07-12 | 1993-10-05 | George P. O'Leary | Sports technique video training device |
JPH05159061A (en) * | 1991-12-09 | 1993-06-25 | Matsushita Electric Ind Co Ltd | Moving body extracting device |
US5288080A (en) * | 1992-04-08 | 1994-02-22 | Tice David E | Stroboscopic practice golf club |
US5303924A (en) * | 1992-04-29 | 1994-04-19 | Accu-Sport International, Inc. | Golf game simulating apparatus and method |
JPH06223184A (en) | 1993-01-27 | 1994-08-12 | Matsushita Electric Ind Co Ltd | Method for detecting tilt of image pattern |
DE69434779T2 (en) * | 1993-09-20 | 2007-06-14 | Canon K.K. | video system |
WO1996011726A1 (en) * | 1994-10-17 | 1996-04-25 | Mizuno Corporation | Apparatus for selecting shaft having optimum flex for golfer |
US5833549A (en) * | 1995-11-14 | 1998-11-10 | Interactive Light, Inc. | Sports trainer and game |
US5938545A (en) * | 1997-06-05 | 1999-08-17 | The United States Of America As Represented By The Secretary Of The Navy | Video system for determining a location of a body in flight |
US5926780A (en) * | 1997-10-09 | 1999-07-20 | Tweed Fox | System for measuring the initial velocity vector of a ball and method of use |
US6227984B1 (en) * | 1998-05-01 | 2001-05-08 | Charles H. Blankenship | Golf swing analysis methods |
JP2000022097A (en) * | 1998-06-30 | 2000-01-21 | Fujitsu Ltd | Semiconductor storage device |
JP2003173435A (en) * | 2001-12-06 | 2003-06-20 | Tietech Co Ltd | Moving body detecting method and moving body detecting device |
US6506124B1 (en) * | 2001-12-21 | 2003-01-14 | Callaway Golf Company | Method for predicting a golfer's ball striking performance |
WO2003069556A1 (en) * | 2002-02-15 | 2003-08-21 | Fujitsu Limited | Image conversion method and device, image recognition device, robot control device and image projection device |
JP2004227527A (en) * | 2003-01-27 | 2004-08-12 | Fujitsu Ltd | Image processing method, program for making computer execute it, and recording medium for recording it |
JP2004265292A (en) * | 2003-03-04 | 2004-09-24 | Yamatake Corp | Image processing method and device thereof |
CA2444464A1 (en) * | 2003-10-15 | 2005-04-15 | Dimitri Petrov | Method and aparatus for locating the trajectory of a projectile in motion |
US20060141433A1 (en) * | 2004-12-28 | 2006-06-29 | Hing Cheung C | Method of detecting position of rectangular object and object detector |
-
2004
- 2004-12-28 US US11/022,774 patent/US20060141433A1/en not_active Abandoned
-
2005
- 2005-05-27 US US11/138,410 patent/US7646934B2/en not_active Expired - Fee Related
- 2005-12-21 JP JP2007528491A patent/JP2008525051A/en active Pending
-
2009
- 2009-10-27 US US12/606,698 patent/US20100285874A1/en not_active Abandoned
Patent Citations (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2783999A (en) * | 1954-02-25 | 1957-03-05 | Reflectone Corp | Golf game |
US2933681A (en) * | 1955-04-28 | 1960-04-19 | Harry M Crain | Golf practice device |
US3160011A (en) * | 1962-07-31 | 1964-12-08 | Myer Schine J | Practice means |
US3513707A (en) * | 1966-10-24 | 1970-05-26 | Brunswick Corp | Golf game computing system |
US3563553A (en) * | 1969-04-29 | 1971-02-16 | Brunswick Corp | Automatic indexing of indexible tee for automatic lie selection |
US3918073A (en) * | 1974-03-18 | 1975-11-04 | James F Henderson | Golf teaching aid apparatus |
US3992012A (en) * | 1975-10-20 | 1976-11-16 | Campbell Ian R | Electrical golf club swing monitor |
US4375887A (en) * | 1975-10-29 | 1983-03-08 | Acushnet Company | Method of matching golfer with golf ball, golf club, or style of play |
US4063259A (en) * | 1975-10-29 | 1977-12-13 | Acushnet Company | Method of matching golfer with golf ball, golf club, or style of play |
US4136387A (en) * | 1977-09-12 | 1979-01-23 | Acushnet Company | Golf club impact and golf ball launching monitoring system |
US4158853A (en) * | 1977-09-12 | 1979-06-19 | Acushnet Company | Monitoring system for measuring kinematic data of golf balls |
US4160942A (en) * | 1977-09-12 | 1979-07-10 | Acushnet Company | Golf ball trajectory presentation system |
US4137566A (en) * | 1977-09-12 | 1979-01-30 | Acushnet Company | Apparatus and method for analyzing a golf swing and displaying results |
US4223891A (en) * | 1978-08-07 | 1980-09-23 | Richard Van Gaasbeek | Golf stroke analyzer |
US4306723A (en) * | 1978-11-21 | 1981-12-22 | Rusnak Thomas L | Golf swing training apparatus |
US4461477A (en) * | 1982-06-14 | 1984-07-24 | Stewart Eddie A | Method and apparatus for improving the performance of a batter |
US4477079A (en) * | 1982-08-16 | 1984-10-16 | White Arthur A | Golf swing training and practice device |
US4802229A (en) * | 1983-04-12 | 1989-01-31 | Canon Kabushiki Kaisha | Image processing system |
US4713686A (en) * | 1985-07-02 | 1987-12-15 | Bridgestone Corporation | High speed instantaneous multi-image recorder |
US4742556A (en) * | 1985-09-16 | 1988-05-03 | Davis Jr Ray E | Character recognition method |
US4695888A (en) * | 1986-11-13 | 1987-09-22 | Eastman Kodak Company | Video camera with automatically variable diaphragm and shutter speed control |
US4695891A (en) * | 1986-11-13 | 1987-09-22 | Eastman Kodak Company | Variable speed video camera |
US4991850A (en) * | 1988-02-01 | 1991-02-12 | Helm Instrument Co., Inc. | Golf swing evaluation system |
US4858934A (en) * | 1988-04-27 | 1989-08-22 | Syntronix Systems Limited | Golf practice apparatus |
US5111410A (en) * | 1989-06-23 | 1992-05-05 | Kabushiki Kaisha Oh-Yoh Keisoku Kenkyusho | Motion analyzing/advising system |
US5056791A (en) * | 1989-09-28 | 1991-10-15 | Nannette Poillon | Golf simulator and analyzer system |
US5101268A (en) * | 1989-12-05 | 1992-03-31 | Sony Corporation | Visual point position control apparatus |
US5054785A (en) * | 1990-12-18 | 1991-10-08 | Acushnet Company | Game ball support device and piezoelectric ball motion detector |
US5486001A (en) * | 1991-05-30 | 1996-01-23 | Baker; Rick | Personalized instructional aid |
US5179441A (en) * | 1991-12-18 | 1993-01-12 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Near real-time stereo vision system |
US5210603A (en) * | 1992-01-21 | 1993-05-11 | Sabin Donald C | Automated video recording device for recording a golf swing |
US5471383A (en) * | 1992-01-22 | 1995-11-28 | Acushnet Company | Monitoring systems to measure and display flight characteristics of moving sports object |
US5401026A (en) * | 1992-01-22 | 1995-03-28 | Blackfox Technology Group | Method and apparatus for determining parameters of the motion of an object |
US5297796A (en) * | 1992-04-03 | 1994-03-29 | Peterson Jon R | Golf swing monitoring system |
US5501463A (en) * | 1992-11-20 | 1996-03-26 | Acushnet Company | Method and apparatus to determine object striking instrument movement conditions |
US6034723A (en) * | 1992-11-20 | 2000-03-07 | Sony Corporation | Image movement vector detection apparatus |
US5803823A (en) * | 1992-11-20 | 1998-09-08 | Acushnet Company | Method and apparatus to determine object striking instrument movement conditions |
US5413345A (en) * | 1993-02-19 | 1995-05-09 | Nauck; George S. | Golf shot tracking and analysis system |
US5342054A (en) * | 1993-03-25 | 1994-08-30 | Timecap, Inc. | Gold practice apparatus |
US5575719A (en) * | 1994-02-24 | 1996-11-19 | Acushnet Company | Method and apparatus to determine object striking instrument movement conditions |
US5472205A (en) * | 1994-06-20 | 1995-12-05 | Thrustmaster, Inc. | Opto-electric golf club swing sensing system and method |
US5718639A (en) * | 1994-06-20 | 1998-02-17 | Thrustmaster, Inc. | Opto-electric golf club swing sensing system having vertically offset sensors |
US5626526A (en) * | 1995-03-31 | 1997-05-06 | Pao; Yi-Ching | Golf training device having a two-dimensional, symmetrical optical sensor net |
US5589628A (en) * | 1995-12-19 | 1996-12-31 | Pga Tour | Golf ball striking device |
US6144366A (en) * | 1996-10-18 | 2000-11-07 | Kabushiki Kaisha Toshiba | Method and apparatus for generating information input using reflected light image of target object |
US6042483A (en) * | 1996-10-30 | 2000-03-28 | Bridgestone Sports Co., Ltd. | Method of measuring motion of a golf ball |
US5846139A (en) * | 1996-11-13 | 1998-12-08 | Carl J. Bair | Golf simulator |
US6064758A (en) * | 1996-11-27 | 2000-05-16 | Daewoo Electronics Co., Ltd. | Mounting coordinate input method and apparatus for surface mount device |
US6201892B1 (en) * | 1997-02-26 | 2001-03-13 | Acuity Imaging, Llc | System and method for arithmetic operations for electronic package inspection |
US5988504A (en) * | 1997-07-14 | 1999-11-23 | Contex A/S | Optical scanner using weighted adaptive threshold |
US6720949B1 (en) * | 1997-08-22 | 2004-04-13 | Timothy R. Pryor | Man machine interfaces and applications |
US6226406B1 (en) * | 1997-12-31 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for hybrid sampling image verification |
US6011359A (en) * | 1998-01-16 | 2000-01-04 | Acushnet Company | Multiple flash/single lamp circuit for fast sequential strobing |
US6375579B1 (en) * | 1998-03-30 | 2002-04-23 | Lee David Hart | Golf swing analysis system and method |
US6241622B1 (en) * | 1998-09-18 | 2001-06-05 | Acushnet Company | Method and apparatus to determine golf ball trajectory and flight |
US6533674B1 (en) * | 1998-09-18 | 2003-03-18 | Acushnet Company | Multishutter camera system |
US6377703B1 (en) * | 1998-11-10 | 2002-04-23 | Seiko Epson Corporation | Apparatus and method for determining an area encompassing an image for scanning the image |
US7214138B1 (en) * | 1999-01-29 | 2007-05-08 | Bgi Acquisition, Llc | Golf ball flight monitoring system |
US6579190B2 (en) * | 2000-03-15 | 2003-06-17 | Sumitomo Rubber Industries, Ltd. | Ball motion measuring apparatus |
US6254492B1 (en) * | 2000-08-02 | 2001-07-03 | Michael Taggett | Sports training system and sports video game |
US20030040373A1 (en) * | 2000-10-03 | 2003-02-27 | Chamberlain Stephen B. | Golf simulator |
US6561917B2 (en) * | 2001-01-19 | 2003-05-13 | Callaway Golf Company | System and method for measuring a golfer's ball striking parameters |
US20020098897A1 (en) * | 2001-01-19 | 2002-07-25 | Callaway Golf Company | System and method for measuring a golfer's ball striking parameters |
US6758759B2 (en) * | 2001-02-14 | 2004-07-06 | Acushnet Company | Launch monitor system and a method for use thereof |
US20020173367A1 (en) * | 2001-02-14 | 2002-11-21 | William Gobush | Performance measurement system with fluorescent markers for golf equipment |
US20020155896A1 (en) * | 2001-02-14 | 2002-10-24 | William Gobush | Launch monitor system and a method for use thereof |
US7062082B2 (en) * | 2001-05-09 | 2006-06-13 | Mitsunori Miki | Method and apparatus of measuring three-dimensional posture of sphere and method of measuring rotational amount of sphere and direction of rotational axis thereof |
US20040240754A1 (en) * | 2001-06-29 | 2004-12-02 | Smith Melvyn Lionel | Overhead dimensioning system and method |
US20030054327A1 (en) * | 2001-09-20 | 2003-03-20 | Evensen Mark H. | Repetitive motion feedback system and method of practicing a repetitive motion |
US7209576B2 (en) * | 2002-02-07 | 2007-04-24 | Accu-Sport International, Inc. | Methods, apparatus and computer program products for processing images of a golf ball |
US20030231803A1 (en) * | 2002-05-31 | 2003-12-18 | Hua Huang | Smart scan |
US20040032970A1 (en) * | 2002-06-06 | 2004-02-19 | Chris Kiraly | Flight parameter measurement system |
US20050239548A1 (en) * | 2002-06-27 | 2005-10-27 | Hiromu Ueshima | Information processor having input system using stroboscope |
US7068855B2 (en) * | 2002-07-16 | 2006-06-27 | Hewlett-Packard Development Company, L.P. | System and method for manipulating a skewed digital image |
US20040114033A1 (en) * | 2002-09-23 | 2004-06-17 | Eian John Nicolas | System and method for three-dimensional video imaging using a single camera |
US20060204056A1 (en) * | 2003-06-26 | 2006-09-14 | Eran Steinberg | Perfecting the effect of flash within an image acquisition devices using face detection |
US20050013467A1 (en) * | 2003-07-16 | 2005-01-20 | Mcnitt Michael J. | Method and system for physical motion analysis and training of a golf club swing motion using image analysis techniques |
US20050041217A1 (en) * | 2003-08-22 | 2005-02-24 | Nec Corporation | Image projection method and device |
US7744480B2 (en) * | 2004-01-20 | 2010-06-29 | Acushnet Company | One camera club monitor |
US20050215335A1 (en) * | 2004-03-26 | 2005-09-29 | Christian Marquardt | Position detector and method of motion analysis |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050096132A1 (en) * | 2003-09-22 | 2005-05-05 | Hiromu Ueshima | Music game with strike sounds changing in quality in the progress of music and entertainment music system |
US7682237B2 (en) * | 2003-09-22 | 2010-03-23 | Ssd Company Limited | Music game with strike sounds changing in quality in the progress of music and entertainment music system |
CN112891926A (en) * | 2021-02-19 | 2021-06-04 | 西安万像电子科技有限公司 | Game terminal, cloud server, cloud game control method, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
US20100285874A1 (en) | 2010-11-11 |
US7646934B2 (en) | 2010-01-12 |
JP2008525051A (en) | 2008-07-17 |
US20060140485A1 (en) | 2006-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7646934B2 (en) | Method and apparatus for detecting an image of a reflective object | |
US9925460B2 (en) | Systems and methods for control device including a movement detector | |
US7536033B2 (en) | Portable swing analyzer | |
US9498716B2 (en) | Video game device and storage medium storing video game program | |
JP5430246B2 (en) | GAME DEVICE AND GAME PROGRAM | |
EP2356546B1 (en) | Determining location and movement of ball-attached controller | |
US8427506B2 (en) | Image processing system, storage medium storing image processing program, image processing apparatus and image processing method | |
KR101308642B1 (en) | Determination of controller three-dimensional location using image analysis and ultrasonic communication | |
CN100528273C (en) | Information processor having input system using stroboscope | |
KR101179020B1 (en) | Information processing program | |
JP5420824B2 (en) | GAME DEVICE AND GAME PROGRAM | |
US20090061971A1 (en) | Object Tracking Interface Device for Computers and Gaming Consoles | |
EP2311538B1 (en) | Information processing program having computer-readable storage medium therein and information processing apparatus | |
US20060105842A1 (en) | Shooting game machine and method for performing it | |
CN102265241A (en) | Spherical ended controller with configurable modes | |
US8038531B2 (en) | Recording medium recording game program, and game system | |
KR102218993B1 (en) | Park golf club that detects swing motion and motion correcting system using the same | |
WO2006070850A1 (en) | Method and apparatus for detecting reflective object | |
JP5443832B2 (en) | GAME PROGRAM AND GAME DEVICE | |
JP5420954B2 (en) | GAME DEVICE AND GAME PROGRAM | |
JP5420955B2 (en) | GAME DEVICE AND GAME PROGRAM | |
CN107433030B (en) | Ball game training system, ball and intelligent motion tracking device | |
JP2004212163A (en) | Virtual sport system | |
US20230356029A1 (en) | System for automatic equipment id and performance evaluation and related methods | |
US20230310980A1 (en) | Game controller with displacement detecting device and displacement detecting device thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: SSD COMPANY LIMITED, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HING, CHEUNG CHUEN;UESHIMA, HIROMU;REEL/FRAME:016130/0309 Effective date: 20041215 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |