The present disclosure relates golf simulators or golf-related game units that measure a trajectory of a golf ball.
Golf simulators provide users with an indoor alternative to practice their golf game. Conventional golf simulators rely on expensive equipment to accurately predict the trajectory of a golf ball and display that trajectory on a screen. The conventional golf simulators are also cumbersome and not portable. Therefore, it is desirable to have a golf simulator or game unit that accurately and inexpensively predicts the trajectory of a golf ball.
Golf simulators also lack functional means for the user to navigate or interact with the simulation or game. Instead, conventional golf simulators rely on buttons and physical general or special purpose controllers for user navigation and interaction, which provides the user with another object to manipulate. Therefore, it is desirable to have a golf simulator that utilizes the user's golf club to navigate or interact with the golf simulation or game.
In one aspect, the present disclosure is directed to a system for monitoring a trajectory of a golf ball is disclosed. The system comprises a first camera configured to capture a first image of the golf ball after the golf ball is struck by a golf club. The system further comprises a second camera configured to capture a second image of the golf ball after the first image is captured. The system further comprises a radar having a detection field. The radar is configured to detect flight characteristics of the golf club or golf ball within the detection field. The system further comprises a processor in communication with the first camera, the second camera, and the radar. The processor is configured to trigger the first camera to capture the first image of the golf ball based on the radar detecting a flight characteristic of the golf club or golf ball. The processor is further configured to trigger the second camera to capture the second image of the golf ball after the first camera captures the first image. The processor is further configured to present the trajectory of the golf ball to an interface, wherein the trajectory is based on the first image, the second image, and the flight characteristic of the golf club or golf ball.
In another aspect, the present disclosure is directed to a computing device for determining a trajectory of a golf ball. The computing device configured to receive information associated with flight characteristics of the golf club or golf ball, which are used to determine a speed of the golf club or golf ball. The computing device determines a speed of the golf ball after the golf ball is struck by the golf club. The computing device is configured to transmit a first command to a first camera to capture a first image of the golf ball after the golf ball is struck by the golf club. The computing device is also configured to transmit a second command to a second camera to capture a second image of the golf ball. The computing device receives the first image and the second image. The computing device determines the trajectory of the golf ball based on the first image, the second image, the flight characteristics of the golf club or golf ball, and the speed of the golf ball. The computing device presents the trajectory of the golf ball to an interface.
The foregoing aspects and many of the attendant advantages of the present technology will become more readily appreciated by reference to the following Detailed Description, when taken in conjunction with the accompanying simplified drawings of example embodiments. The drawings, briefly described here below, are presented for ease of explanation and do not limit the scope of the claimed subject matter.
The system 100 further comprises a radar 104 having a detection field 118. The radar 104 is configured to detect flight characteristics of the golf club or golf ball, or both, within the detection field 118. The radar 104 comprises a transmitter (not pictured), a switch (not pictured), and a radar antenna behind lens 106. The transmitter generates the pulse that is transmitted by the antenna 106 into the environment. The switch controls the transmission of the antenna at 106. The radar 104 can be configured to transmit pulses within a predefined detection field 118. It is advantageous to define the boundaries of the detection field 118 because it avoids detecting extraneous objects that would inhibit detection of the golf club and/or golf ball 114.
The system 100 further comprises a processor 108 in communication with the first camera 110A, the second camera 110B, and the radar 104. The processor 108 is configured to trigger the first camera 110A to capture the first image of the golf ball 114 based on the radar 104 detecting a flight characteristic of the golf club, golf ball, or both. The processor 108 is further configured to trigger the second camera 110B to capture the second image of the golf ball 114 after the first camera 110A captures the first image. The second camera is triggered based on the golf ball speed or trajectory measured by the radar, the golf ball image characteristics captured by the first camera, or both. The processor 108 is further configured to present the trajectory of the golf ball 114 to an interface or display (not pictured). The trajectory is based on the first image, the second image, and the flight characteristics of the golf club or golf ball detected by the radar.
The system 100 may further comprise a control bar 112 for controlling actions on the interface or display. In some embodiments, the radar 104, the processor 108, the cameras 110, and the control bar 112 may be configured as a singular device 102. In such embodiments, the cameras 110 and the processor 108 may be located in the same housing. Configuring the components (104, 108, 110, 112) into a singular device 102 is beneficial because it increases the portability of the system 100. The singular device may, in one embodiment, be foldable at a hinge provided between the radar housing and the camera housing to provide for more compact storage and transportation.
With continued reference to
Turning to
With reference to
Turning to
With reference to
Turning to
The plurality of lights 634 on the strip may be divided into sections 636. For example, in
The position of the club head over the control bar 612 is determined using one or more proximity sensors above the strip of lights, for example, one or more infrared proximity sensors. In one embodiment, the control bar 612 is used with two infrared-based proximity sensors (not pictured). For example, one proximity sensor can be positioned on each end of the light strip, and the detected position of each sensor can be interpolated to provide an accurate composite position.
In one embodiment, when the golf club (specifically, the head of a golf club) is positioned over the control bar 612, the lights 634 corresponding to the position of the golf club can be configured to light up. In this embodiment, as the golf club is moved along the length of the control bar 612, the corresponding lights 634 below the club's current position can illuminate to demonstrate the position of the golf club, while the lights 634 that are not below the club's current position are not illuminated. The length of the control bar 612 may be between about 0.3 meters and about 3.0 meters.
The control bar can facilitate various types of inputs into a golf simulator or golf video game. Providing virtual buttons using the control bar has already been described above. Other types of inputs include swipe gestures, where moving the club head one direction or the other over the control bar can provide different inputs into the golf simulator or video game. For example, if the golf simulator or video game includes the option to change the aim or shot direction of the next shot, moving the club head to the left or right over the control bar can move the shot direction on the simulator or game left or right accordingly. Swipe gestures can also be used to change other options in the simulation or game, such as the selection of different menu options, selection of which golf club to use, or manipulate the slice or hook spin imparted to the golf ball when it is struck. The control bar can also be manipulated using different types of objects, such as the foot or hand of the user, or the end of a stick.
With reference to
The simulator or game device 701 includes a radar 704, cameras 710, a control bar 712, and a processor 708. The processor 708 is communicatively coupled with the radar 704, the cameras 710, and the control bar 712. As explained herein the radar 704 is configured to detect motion properties of the golf club and/or the golf ball. The cameras 710 are configured to capture images of the golf ball in flight. The control bar 712 is configured to enable control of or provide inputs into the simulation or game. The processor 708 is configured to control the radar 704, the cameras 710, and the control bar 712. The processor 708 is capable of receiving, generating, storing, processing, and/or providing information associated with the golf simulation or golf game. For example, the processor 708 may include a computing device, a server, a group of servers, a user device (e.g., a laptop computer, a desktop computer, etc.), and/or the like.
The platform 740 includes one or more computing resources 742 capable of receiving, generating, storing, processing, and/or providing information associated with the golf simulation or game. For example, the platform 740 may include a server, a group of servers, and/or the like. In some embodiments, the platform 740 may be partially or entirely implemented in a cloud computing environment.
A cloud computing environment includes an environment that delivers computing as a service, whereby shared resources, services, etc. may be provided to the processor 708 and/or platform 740. A cloud computing environment may provide computation, software, data access, storage, and/or other services that do not require end-user knowledge of a physical location and configuration of a system and/or a device that delivers the services.
The number and arrangement of devices and networks shown in
In a preferred embodiment, the game device 701 communicates data gathered from the radar 704, cameras 710, control bar 712, or processor 708 directly to platform 740 via network 738, forming a chain of trust between the game device 701 and the platform 740. The chain of trust is established from the game device 701 to ensure that the game device 701 has not been tampered with by the end user, and to ensure that the data received by the platform 740 accurately reflects the data gathered from the tamper-free game device 701. In one embodiment, the network 738 is the internet, and the platform 740 is in the cloud.
The data communicated from the game device 701 to the platform 740 is then used to generate golf game or golf simulation data, which is then transmitted to one or more user devices, which display the game or simulation data or result of such data. In this arrangement, users in different locations can play the same game or simulation and trust that the results of the game or simulation are not the result of tampering with the game device or otherwise based on inaccurate or fabricated data. In one embodiment, the raw data gathered from the cameras or radar is transmitted via the network 738 to the platform 740 for further processing to determine ball flight characteristics, such as speed or launch angle. In another embodiment, at least some of the raw data processing occurs at the processor 708 of the game device 701 before being sent via network 738 to platform 740. In every aspect of this embodiment, data from the game device 701 is transmitted via network 738 to platform 740 before any involvement by a user device (i.e. before any data is transferred to a user device that is outside the chain of trust between the game device 701 and the platform 740. Again, this ensures the trustworthiness of the data and the accuracy of the game or simulation results.
In another embodiment, the platform 740 is running on the end user's own electronic device, which is connected to the game device 701 via a network 738. In this embodiment, the user's device is made a part of the chain of trust and processes the data to generate the golf game or golf simulation data. The user's device in this embodiment would be running an executable program with a digital certificate that ensures no data has been manipulated to be inconsistent with the raw data or accurately processed data. The game device can be configured to transmit the raw data to a separate verification platform running in the cloud, which can analyze the raw data to determine whether the user's device has accurately processed the raw data and generated trustworthy golf game or golf simulation data. This separate verification can occur simultaneously with the processing on the user's device or can occur later in time to verify game or simulation results that have already been displayed on a user's device.
Turning to
The process 800 includes receiving 802 information associated with flight characteristics of the golf club, golf ball, or both. The flight characteristics of the golf club or golf ball may include radar readings of the golf club or golf ball at one or more positions in a detection field. The process includes determining 804 the speed of the golf club or golf ball based on the flight characteristics of the golf club. In at least one embodiment, the speed of the golf club or golf ball is determined by applying a fast Fourier Transform to the radar readings to convert the radar readings into a speed of the golf club or golf ball. The speed of the golf club or golf ball may be determined at time and/or position when the golf club strikes the golf ball. The process continues with determining 806 the speed of the golf ball after the golf ball is struck by the golf club. In one embodiment, the speed of the golf ball is determined based on radar readings of the golf ball. In an alternative embodiment, the speed of the golf ball is determined based on a factor of the speed of the golf club when the golf club strikes the golf ball. The factor can be between about 1.2 and about 1.5 times the speed of the golf club. In another alternate embodiment, the speed of the golf ball is determined based on a distance the golf ball travels between the first and second images and the amount of time between the first and second images.
A first command is transmitted 808 to the first camera to capture a first image of the golf ball after being struck by the golf club. In one embodiment, the first command is based on the speed of the golf club or golf ball when the golf club strikes the golf ball. In one embodiment, the first camera captures the first image when the golf ball is centrally located within the field of view of the first camera. A second command is transmitted 810 to a second camera to capture a second image of the golf ball. In one embodiment, the second command is based on the speed of the golf ball after the golf club strikes the golf ball. Additionally, or alternatively, the second command is transmitted to the second camera an amount of time after the first camera captures the first image, where the amount of time is based on the speed of the golf ball. For example, if the golf ball has a detected speed of 50 m/s, the corresponding amount of time would be about 1 millisecond. In another embodiment the second camera captures the second image when the golf ball is centrally located within the field of view of the second camera. In yet another embodiment, the second camera captures the second image when the golf ball travels for an amount of time after the first camera captures the first image. The amount of time may be, for example, between about 1 millisecond and about 10 milliseconds.
The process continues with receiving 812 the first image and the second image and determining 814 the trajectory of the golf ball based on the first image, the second image, the flight characteristics of the golf club, and/or the speed of the golf ball. In one embodiment, the launch angle of the golf ball is determined based on the first image and the second image. For example, the distance the golf ball has traveled (Δx, Δy) over the first image and the second image can be used to determine the launch angle of the golf ball. Accordingly, the trajectory of the golf ball is further based on the launch angle of the golf ball.
In another embodiment, the spin rate of the golf ball is determined based on the first image and the second image. For example, the difference in the orientation of the golf ball between the first image and the second image can be used to determine the spin rate of the golf ball. Accordingly, the trajectory of the golf ball is further based on the spin rate of the golf ball. In yet another embodiment, the lateral distance traveled by the golf ball is determined based on the first image and the second image. For example, the lateral movement of the golf ball may be determined based on the area of the golf ball and/or the pixel change in the golf ball. Accordingly, the trajectory of the golf ball is further based on the lateral distance. The process further includes presenting 816 the trajectory of the golf ball to an interface or display as part of a golf simulation or golf-related game.
Referring to
Bus 910 includes a component that permits communication among the components of the device 900. Processor 920 is implemented in hardware, firmware, or a combination of hardware and software. The processor 920 is a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field-programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or another type of processing component. In some embodiments, the processor 920 includes one or more processors capable of being programmed to perform a function. Memory 930 includes a random-access memory (RAM), a read only memory (ROM), and/or another type of dynamic or static storage device (e.g., a flash memory, a magnetic memory, and/or an optical memory) that stores information and/or instructions for use by processor 920.
Storage component 940 stores information and/or software related to the operation and use of device 900. For example, storage component 940 may include a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optic disk, and/or a solid-state disk), a compact disc (CD), a digital versatile disc (DVD), a floppy disk, a cartridge, a magnetic tape, and/or another type of non-transitory computer-readable medium, along with a corresponding drive.
Input component 950 includes a component that permits the device 900 to receive information, such as via user input (e.g., a control bar, a touch screen display, a keyboard, a keypad, a mouse, a button, a switch, and/or a microphone). Additionally, or alternatively, input component 950 may include a sensor for sensing information (e.g., a global positioning system (GPS) component, an accelerometer, a gyroscope, and/or an actuator). Output component 960 includes a component that provides output information from device 900 (e.g., a display, a speaker, and/or one or more light-emitting diodes (LEDs)).
Communication interface 970 includes a transceiver-like component (e.g., a transceiver and/or a separate receiver and transmitter) that enables device 900 to communicate with other devices, such as via a wired connection, a wireless connection, or a combination of wired and wireless connections. Communication interface 970 may permit device 900 to receive information from another device and/or provide information to another device. For example, communication interface 970 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency (RF) interface, a universal serial bus (USB) interface, a Wi-Fi interface, a cellular network interface, or the like.
Device 900 may perform one or more processes described herein. Device 900 may perform these processes based on the processor 920 executing software instructions stored by a non-transitory computer-readable medium, such as memory 930 and/or storage component 940. A computer-readable medium is defined herein as a non-transitory memory device. A memory device includes memory space within a single physical storage device or memory space spread across multiple physical storage devices.
Software instructions may be read into memory 930 and/or storage component 940 from another computer-readable medium or from another device via communication interface 970. When executed, software instructions stored in memory 930 and/or storage component 940 may cause processor 920 to perform one or more processes described herein. Additionally, or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to perform one or more processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
The number and arrangement of components shown in
Additionally, the section headings herein are provided for consistency with the suggestions under 37 C.F.R. 1.77 or otherwise to provide organizational cues. These headings shall not limit or characterize the invention(s) set out in any claims that may issue from this disclosure. Specifically, and by way of example, although the headings refer to a “Technical Field,” the claims should not be limited by the language chosen under this heading to describe the so-called field. Further, a description of a technology as background information is not to be construed as an admission that certain technology is prior art to any embodiment(s) in this disclosure. Neither is the “Summary” to be considered as a characterization of the embodiment(s) set forth in issued claims. Furthermore, any reference in this disclosure to “invention” in the singular should not be used to argue that there is only a single point of novelty in this disclosure. Multiple embodiments may be set forth according to the limitations of the multiple claims issuing from this disclosure, and such claims accordingly define the embodiment(s), and their equivalents, that are protected thereby. In all instances, the scope of such claims shall be considered on their own merits in light of this disclosure but should not be constrained by the headings set forth herein.
Moreover, the Abstract is provided to comply with 37 C.F.R. § 1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment.
This application claims the benefit of provisional U.S. Application No. 63/417,222 entitled “Golf Ball Trajectory Monitor” filed Oct. 18, 2022, the technical disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63417222 | Oct 2022 | US |