An embodiment will now be described more fully with reference to the accompanying drawings in which:
Turning now to
The projectile tracking apparatus 102 outputs two-dimensional projectile position data to the host computer 104 when the launched golf ball GB travels through a projectile tracking region monitored by the projectile tracking apparatus. The projectile launch area sensing unit 103 outputs image data representing the motion of the golf club through the launch area A before, during and after impact with the golf ball to host computer 104. The host computer 104 in turn processes the two-dimensional projectile position data and the projectile launch area sensing unit image data to determine the three-dimensional positions, launch velocity, acceleration, spin and launch angle of the golf ball so that the trajectory of the golf ball can be accurately calculated. The calculated trajectory is then used to determine a sports result and to update the image data conveyed to the projector 106 so that the presented video sequence shows a simulation of the golf ball travel into the visually apparent three-dimensional scene as well as the determined sports result. As a result, the projectile tracking apparatus 102, projectile launch area sensing unit 103, the host computer 104 and the projector 106 form a closed loop.
The screen 122 includes multiple layers and is designed to reduce projectile bounce as well as enhance protection behind the screen. The first or front layer of the screen 122 is formed of highly reflective nylon having some elasticity to resist permanent stretching/pocketing and abrasion. As a result, the front layer provides an excellent display surface 124 on which images projected by the projector 106 are presented. The second or intermediate layer of the screen 122 is formed of soft and thick material and is designed to absorb projectile energy with reduced elastic effect thereby to inhibit stretching and or damage to the front layer. The third or back layer of the screen 122 is formed of a tough heavy canvas to which the intermediate layer can transfer energy. The back layer also inhibits excess deformation of the intermediate layer when contacted by a launched projectile. As a result, if the projectile tracking apparatus 102 is placed adjacent a wall surface or the like, the back layer protects the surface behind the screen 122 from projectile strike thereby to inhibit damage to the surface and/or significant projectile rebound. If a space is provided behind the projectile tracking apparatus 102, the back layer provides ample protection for the space.
A pair of high speed digital cameras 128 is accommodated within the frame 110 with each camera being positioned adjacent a different top corner of the frame. Thus, the digital cameras 128 are positioned in front of the player and to the left side and right side of the anticipated projectile path. The digital cameras 128 are also angled to point downwardly and towards the player position so that the fields of view of the cameras are generally perpendicular and overlap in a region extending from the projectile launch point to the screen 122. In this manner, the path of the projectile can be tracked from its launch point until it impacts the screen and then as it rebounds from the screen 122.
In this embodiment, each digital camera 128 has at least a 640 by 480 pixel array and includes built-in processing capabilities comprising field programmable gate arrays, a high performance 32-bit microprocessor and high speed memory. The distributed processing capabilities achieved by using the digital cameras 128 and the host computer 104 allow the digital cameras to be operated at very high frame rates thereby allowing multiple images of a fast moving projectile to be captured as it travels through the projectile tracking region 120. This is due to the fact that the digital cameras 128 need only send data to the host computer 104 relating to images in which projectile motion has been detected allowing high speed projectiles to be tracked without excessive bandwidth between the host computer 104 and the digital cameras 128 being needed. For example, in the case of a projectile travelling through the projectile tracking region 120 at a speed of 200 miles per hour, the frame rates of the digital cameras 128 are selected such that at least four images of the projectile are captured by each digital camera 128. The viewing angles of the digital cameras 128 and the dimensions of the frame 110 are selected to provide the digital cameras 128 with a resolving accuracy of approximately 1 mm per pixel. As a result, a small projectile such as a golf ball will activate approximately 12 pixels per image. This resolving accuracy enables even small, very fast moving launched projectiles to be readily determined in captured images and as a result, reduces false projectile detection.
The on-board processors of the digital cameras 128 execute a motion detection routine to determine if a projectile exists in the captured images and if so, whether the projectile satisfies specified motion detection parameters defining a projectile characteristic signature. The projectile characteristic signature is used to ensure the detected projectile has characteristics matching the projectile in question, in this case, a struck golf ball. The projectile can therefore be distinguished from other objects captured in the images such as for example, the golf club head. In this example, the projectile characteristic signature specifies allowable projectile size, shape, reflectivity and speed.
Infrared (IR) light emitting diode (LED) arrays (not shown) are also positioned within the posts 112 beside the digital cameras 128. The illumination axes of the IR LED arrays are generally coincident with the optical axes OA of the digital cameras. Each IR LED array emits IR radiation that is directed into the projectile tracking region 120. As the digital cameras 128 are responsive to both visible and infrared light, providing the background IR illumination allows the projectile tracking apparatus 102 to work well in a variety of ambient lighting conditions. In situations where a small fast moving projectile is launched, the IR illumination allows for detection of the projectile without interfering with the visual quality of the displayed image presented on the screen 122.
Audio speakers 140 are provided on the posts 112 and are aimed forwardly toward the launch area A. The audio speakers 140 are driven by an audio amplifier (not shown) accommodated within the frame 110. The audio amplifier receives audio input from the host computer 104 during play that is conveyed to the audio speakers 140 for broadcast thereby to enhance the sports experience.
The projectile launch area sensing unit 103 is disposed directly over the launch area A and comprises an area-scan digital camera 160, a forty-five (45) degree mirror 162, a plurality of illuminators 164 in the form of halogen spotlights and a power supply (not shown) for the spotlights 164. The spotlights 164 are aimed to provide sufficient illumination in the launch area A to permit image capture without adversely affecting visibility of the image projected on the screen 122. The area-scan digital camera 160 is ceiling mounted horizontally approximately ten (10) feet above the launch area A. The optical axis of the digital camera 160 is in line with the center of the mirror 162 so that the field of view of the area-scan digital camera is re-directed downwardly over the center of the launch area A. In this embodiment, the field of view of the area-scan digital camera 160 encompasses a three (3) foot by three (3) foot region.
Similar to the digital cameras 128 in the projectile tracking apparatus 102, the area-scan digital camera 160 includes an on-board processor that executes a motion detection routine. During execution of the motion detection routine, as images are captured by the area-scan digital camera 160, the images are examined to determine if one or more moving objects exist therein that satisfy specified motion parameters. In this example, the motion parameters are selected to allow the on-board processor to detect when either a moving golf club and golf ball or both is in captured images. Captured images including one or more moving objects satisfying the specified motion parameters are sent to the host computer 104 for further processing.
The projector 106 preferably has a resolution of at least 800×600, at least 1200 ANSI Lumens brightness, a short throw lens, vertical ‘keystone’ correction, and the capacity to accept digital RGB computer video signals, and NTSC/PAL baseband television video signals. Projectors having this set of features include the Epson Powerlite 820P, the Toshiba TDP-DI-US, the InFocus LP650 and the Sanyo XP30 for example.
The host computer 104 is preferably an IBM compatible personal computer including an Intel Pentium® processor, at least 128 MB SDRAM, a high-speed hard drive, and a DVD player. The host computer 104 also includes a display adapter assembly including a reconfigurable 32-bit video memory buffer partitioned into three separate buffers. One of the buffers is used to store primary foreground image data representing one or more independent foreground action elements if appropriate for the sports scene being displayed. A second of the buffers is used to store background image data and the third buffer is used to store projectile trajectory image data. The display adapter assembly treats the foreground action, background and projectile trajectory image data as overlay image planes that are combined seamlessly to generate the video image data that is output to the projector 106. The overlay image planes are non-destructive so that when a foreground action element and/or projectile moves over an underlying image plane it is not necessary to redraw the underlying image plane. To reduce peak processing requirements, the host computer 104 updates the background image data less frequently than the foreground image data. The host computer 104 provides the output video image data to the projector 106 on a video output channel. The host computer 104 receives external video feeds on a television/satellite/cable input channel, a video game input channel and an Internet input channel.
The host computer 104 is mounted within a protective enclosure (not shown) having external connectors to enable the computer to be coupled to the projector 106, the projectile tracking apparatus 102 and the projectile launch area sensing unit 103. The enclosure also includes external connectors to allow the host computer 104 to receive the television/satellite/cable, external video game and Internet feeds. Input controls are also provided on the enclosure to allow a player to interact with the host computer 104.
A high speed digital serial interface such as IEEE1394 is used between the host computer 104, the projectile tracking apparatus 102 and the projectile launch area sensing unit 103. Using this standard interface provides a low cost, high performance solution while avoiding use of expensive analog frame grabbers. The interface also simplifies wiring as the cameras 128 can be daisy-chained without loss of signal integrity.
The host computer 104 executes sports simulation software stored in the SDRAM. In this example, the sports simulation software includes a golf simulation module that requires a player to hit the golf ball GB at the projectile tracking apparatus 102 in response to the video sequence displayed on the screen 122.
To provide a realistic playing experience, a high resolution elevation map of the golf course terrain is used. The course terrain elevation map is constructed from a combination of two-dimensional images that include overhead satellite and/or aerial photographs used in conjunction with digital photographs taken from ground level. Using photogrammetry techniques, these orthogonal views are combined together. Using common points in the images i.e. edges of sand hazards, trees etc., a three-dimensional model is synthesized without requiring reference targets to be applied to the terrain of interest.
During training, practice or game play, the host computer 104 outputs video image data to the projector 106 causing the projector 106 to project a video sequence portraying a visually apparent three-dimensional sports scene on the display surface 124 that includes a target at which the projectile is to be launched (see step 500 in
At this stage, the digital cameras 128 continually capture and process images to detect the existence of a projectile. When the player launches the projectile at the projectile tracking apparatus 102 by striking the golf ball with a golf club and the projectile enters the projectile tracking region 120, the projectile appears in the images captured by the digital cameras 128. Thus, the digital cameras 128 synchronously capture a series of images of the projectile as it travels through the projectile tracking region 120 (step 508). The captured images are in turn processed by the on-board processors of the digital cameras 128 to determine if the captured images include a detected projectile satisfying the projectile characteristic signature.
If the detected projectile satisfies the projectile characteristic signature, the images are further processed to determine the center of mass of the projectile in each image and its position in rectangular coordinates. As a result, a series of two-dimensional rectangular coordinates representing the two-dimensional positions of the projectile as it travels through the projectile tracking region 120 relative to each digital camera 128 is generated. The two-dimensional rectangular coordinates generated by the digital cameras 128 are in turn conveyed to the host computer 104.
At the same time, the area-scan digital camera 160 of the projectile launch area sensing unit 103 continually captures and processes images to look for the existence of a swinging golf club passing through the launch area A and the launched golf ball exiting the launch area A. When a swinging golf club and launched golf ball are detected, the area-scan digital camera 160 outputs the captured images to the host computer 104.
Upon receipt of the projectile coordinates from the projectile tracking apparatus 102, the host computer 104 calculates the positions of the projectile's center of mass in three-dimensional space throughout its travel through the projectile tracking region 120 including its collision and rebound with the screen 122 using triangulation techniques (see step 520 in
Upon receipt of the image data from the projectile launch area sensing unit 103, the host computer 104 analyzes the club head swing path 200 (see
With the three-dimensional positions, launch velocity, acceleration, spin and launch angle of the projectile known, the host computer 104 extrapolates an accurate trajectory for the projectile allowing a realistic simulation of curved and/or arcing projectiles to be generated (step 526). The computed projectile trajectory is then used to determine a sports result by computing the intersection of the calculated projectile trajectory with the displayed video image (step 528). With the projectile trajectory computed and the sports result determined, the host computer 104 updates the image data that is conveyed to the projector 106 so that the video sequence displayed on the display surface 124 of the screen 122 shows the simulated flight of the projectile and the sports result (step 530).
During video sequence display, when a simulation of the projectile flight is shown a graphical duplicate of the projectile is projected onto the display surface 124 of the screen 122 that begins its flight from the impact point of the projectile with the screen 122. In this manner, the projectile appears to continue its trajectory into the video scene thereby to achieve a realistic video effect. The three-dimensional scene is then updated in accordance with the sports result, allowing game play or practice to continue.
Although the sports simulation system 100 has been described as including a ceiling mounted front projector 106 in combination with a screen 122, those of skill in the art will appreciate that alternative projection devices may be used. For example, a rear video projector may be used to project images onto the rear surface of the display screen 122.
Those of skill in the art will appreciate that the projectile tracking apparatus 102 may include additional cameras at different locations to view the projectile tracking region and detect the existence of a launched projectile. Those of skill in the art will also appreciate that the number of processing stages may be increased or decreased as desired to handle processing of the digital camera image data effectively in real-time and provide a realistic projectile simulation.
If desired, the projectile launch area sensing unit 103 may include additional cameras. The projectile launch area sensing unit may include any number of illuminators or none at all if the ambient light conditions are sufficient to provide for adequate image capture.
While the sports simulation system is described as simulating golf, it will be appreciated that the sports simulation system may be used to simulate other sports where a projectile is launched. In such cases, the projectile characteristic signatures are updated to enable launched projectiles to be accurately tracked.
Although a preferred embodiment of the present invention has been described, those of skill in the art will appreciate that variations and modifications may be made without departing from the spirit and scope thereof as defined by the appended claims.
This application is related to U.S. patent application Ser. No. 10/629,945 filed on Jul. 30, 2003 for an invention entitled “Sports Simulation System” and to U.S. patent application Ser. No. 11/195,017 filed on Aug. 2, 2005 for an invention entitled “Sports Simulation System”, the content of which are incorporated herein by reference.