The present invention is related to a spin calculation method for golf ball moving by being hit and spin calculation apparatus using same that spin information of the golf ball can be calculated through the analysis of markers displayed on the surface of the golf ball in the image taken for the golf ball moving as the user hits the golf ball with the golf club.
In the case of ball-based sports games, especially golf, there have always been attempts to apply the results of calculating the physical characteristics of the moving ball by sensing the ball moving by the golfer's swing to the so-called screen golf field.
In particular, it is quite difficult to measure the spin of the ball flying by a golf shot because the flying ball rotates at very high speed around the axis in three-dimensional space. quite expensive equipment is required to accurately measure the spin of the flying ball, and there is a typical method of using a radar sensor.
However, expensive sensing devices such as a radar sensor are not suitable as sensing devices commonly used for so-called screen golf or ball moving analysis on golf practice courses that sense the ball hit by a golf swing to calculate the trajectory of the ball and implement golf simulation images on a virtual golf course. It is necessary to develop a technology that can quickly and accurately sense the spin of the ball even in a relatively inexpensive and low-functional system.
In addition to the radar sensor as described above, a sensing system using cameras is used as a device for sensing the spin of the flying ball.
The camera sensing system calculates the spin of the golf ball, which is the subject, by capturing an image, extracting and analyzing a part corresponding to the golf ball from the captured image when the golf ball is hit and moved.
Since the golf ball has a significant high-speed spin when being hit and moved, a high-speed camera with a high frame rate should be used when calculating the spin of the golf ball using the camera sensing system as described above.
There are two main methods of sensing the spin of the golf ball using a camera sensing system. One is a method of calculating spin by extracting from a golf ball image a specific marker that is marked artificially on the golf ball for a spin calculation and analyzing how the extracted marker moved. The other is a method of detecting and analyzing logos or dimples of the golf ball originally provided on the golf ball through the golf ball image, and calculating spin based on the result of the analysis.
In the latter case, there are problems that cameras having high-resolutions and high frame rate are needed because the unspecified indicia such as logos or dimples on the golf ball must be analyzed, and that the accuracy of the spin calculation results is not constant because each time the golf ball is sensed, the unspecified indicia on the golf ball must be found in the captured image to determine whether indicia on a ball and another indicia on another ball are similar.
As prior arts corresponding to the former, Korean Patent No. 10-1386793, Korean Patent No. 10-1182393, Japanese Patent No. 3235987, and U.S. Pat. No. 732,463 are disclosed.
The prior arts as described above matches based on the shape characteristics of specific markers marked on golf balls. In other words, it has the advantage of being able to calculate spins accurately to some extent because specific markers of each of the two consecutive ball images are compared with each other and the two markers are matched with each other based on shape similarities.
However, when matching based on the shape characteristics of the specific markers on the golf balls for spin calculation, there is a problem of using an expensive camera device with very high frame rate because a specific marker on the golf ball must be secured on the captured image despite the fast spin speed. And in order to calculate spin, the specific markers must be extracted through image processing for the captured images and the shape similarity between the markers on the two ball images must be determined, which has a problem of slow computation speed due to the large amount of computation.
It is an object of the present invention to provide a spin calculation method for golf ball moving by being hit and spin calculation apparatus using same that when the camera captures a hit golf ball with a plurality of markers marked on the golf ball, it can quickly and accurately match markers between two consecutive ball images using the relative relationship between the plurality of the markers detected in the captured ball image so that it can increase the processing speed and the calculation accuracy of the spin of the moving golf ball.
In accordance with an aspect of the present invention, the above and other objects can be accomplished by the provision of a spin calculation method for a golf ball moving by being hit, the method comprising: acquiring a first image and a second image, which are consecutive images for the golf ball with a plurality of markers to be hit and moved, respectively; processing to obtain information on a reference marker and a plurality of peripheral markers around the reference marker for a plurality of markers on a first ball image corresponding to a golf ball in the first image; specifying a combination of markers corresponding to the reference marker and the peripheral markers on the first ball image among markers in a second ball image corresponding to a golf ball in a second image; and processing to calculate a spin axis and a spin amount of the moving golf ball using each center point of a pair of markers corresponding to each other on the first ball image and the second ball image.
Preferably, the specifying the combination of markers includes specifying a combination of markers on the second ball image having a relative relationship being matched with a relative relationship of each of the plurality of peripheral markers to the reference marker on the first ball image.
Preferably, the specifying the combination of markers includes: processing to calculate relative angle information on slope of each of the plurality of peripheral markers based on a slope of the reference marker on the first ball image as feature information; processing to calculate relative angle information on slope of markers in each combination for every combination of an arbitrarily selected reference marker and a plurality of peripheral markers based on the selected reference marker on the second ball image; and specifying a combination of markers on the second ball image matched by matching the feature information on the first ball image with relative angle information on the markers on the second ball image.
Preferably, the processing to calculate the spin axis and the spin amount includes: representing each center point of a pair of markers corresponding to each other on the first ball image and the second ball image, on a single sphere; and determining a line where a line connecting each center point of each of the pairs of markers corresponding to each other and two or more planes derived from the center point of the sphere meet as the spin axis.
Preferably, the processing to calculate the spin axis and the spin amount includes: processing to calculate vectors each of which is in a direction perpendicular to the spin axis from each center point of the pair of markers corresponding to each other; projecting each of the calculated vectors on a reference plane perpendicular to the spin axis; and processing to calculate the spin amount centered on the spin axis using the vectors projected on the reference plane.
Preferably, the method further comprises: processing to calculate an amount of gaze rotation by position in the acquired image according to the camera's view fixed; and subtracting the calculated amount of gaze rotation from the calculated spin amount.
In accordance with another aspect of the present invention, there is provided a spin calculation apparatus for a golf ball moving by being hit, the apparatus comprising: a single camera that acquires a first image and a second image, which are consecutive images for the golf ball with a plurality of markers to be hit and moved, respectively, wherein the single camera is provided separately from a camera system of a sensing device that detects a motion of the golf ball; a marker matching processor that processes to obtain information on a reference marker and a plurality of peripheral markers around the reference marker for a plurality of markers on a first ball image corresponding to a golf ball in the first image, and specifies a combination of markers corresponding to the reference marker and the peripheral markers on the first ball image among markers in a second ball image corresponding to a golf ball in a second image; and a spin calculator that processes to calculate a spin axis and a spin amount of the moving golf ball by geometric calculation using each center point of a pair of markers corresponding to each other on the first ball image and the second ball image.
In accordance with another aspect of the present invention, there is provided a spin calculation apparatus for a golf ball moving by being hit, the apparatus comprising: a marker matching processor that receives a first image and a second image, which are consecutive images for the golf ball with a plurality of markers to be hit and moved from a camera of a sensing device that detects a motion of the moving golf ball so as to process to obtain information on a reference marker and a plurality of peripheral markers around the reference marker for a plurality of markers on a first ball image corresponding to a golf ball in the first image, and specify a combination of markers corresponding to the reference marker and the peripheral markers on the first ball image among markers in a second ball image corresponding to a golf ball in a second image; and a spin calculator that processes to calculate a spin axis and a spin amount of the moving golf ball by geometric calculation using each center point of a pair of markers corresponding to each other on the first ball image and the second ball image.
Preferably, the marker matching processor is configured to receive coordinate information on which the golf ball is placed from the sensing device, set a region of an image to be acquired by the single camera as a region of interest based on the coordinate information, and obtain the set region of interest as the first image and the second image.
Preferably, the marker matching processor is configured to: process to calculate relative angle information on slope of each of the plurality of peripheral markers based on a slope of the reference marker on the first ball image as feature information, process to calculate relative angle information on slope of markers in each combination for every combination of an arbitrarily selected reference marker and a plurality of peripheral markers based on the selected reference marker on the second ball image, and specify a combination of markers on the second ball image matched by matching the feature information on the first ball image with relative angle information on the markers on the second ball image.
Preferably, the spin calculator is configured to: represent each center point of a pair of markers corresponding to each other on the first ball image and the second ball image, on a single sphere, and determine a line where a line connecting each center point of each of the pairs of markers corresponding to each other and two or more planes derived from the center point of the sphere meet as the spin axis, and process to calculate vectors each of which is in a direction perpendicular to the spin axis from each center point of the pair of markers corresponding to each other, project each of the calculated vectors on a reference plane perpendicular to the spin axis, and process to calculate the spin amount centered on the spin axis using the vectors projected on the reference plane.
The spin calculation method for golf ball moving by being hit and spin calculation apparatus using same according to the present invention have an advantageous effect that when the camera captures a hit golf ball with a plurality of markers marked on the golf ball, it can quickly and accurately match markers between two consecutive ball images using the relative relationship between the plurality of the markers detected in the captured ball image so that it can increase the processing speed and the calculation accuracy of the spin of the moving golf ball.
(a) of
A spin calculation method for golf ball moving by being hit and spin calculation apparatus using same according to the present invention will be more specifically described with reference to the drawings.
The present invention can basically calculate spin of a flying golf ball hit by a user by capturing images the hit golf ball with a predetermined camera and analyzing the captured image. The spin calculation apparatus according to the present invention may be implemented as a spin calculation function executed by a sensing device that senses the movement of the golf ball, or may be implemented as a device that calculates spin using a single camera for spin calculation.
An example of the former is shown in
First, an embodiment of the present invention shown in
Wherein the sensing device SD may be a device that calculates the three-dimensional coordinates of the golf ball moving in space by capturing images of the golf ball moving as the user P hits the golf ball and analyzing the captured images, and calculates information on kinetic characteristics such as an initial speed of the golf ball, a direction angle of the golf ball, and a height angle of the golf ball based on the three-dimensional coordinates of the golf ball moving in space.
The sensing device SD can be applied to various fields such as analysis of balls hit and flying according to the user's golf swing or virtual golf using virtual reality-based simulation images.
The sensing device SD may include cameras 110 and 120 and a sensing processor 200.
The camera of the sensing device SD is configured to consecutively acquire images at a field of view looking at the moving golf ball. In order to calculate position information on a three-dimensional space for the moving golf ball, a plurality of cameras need to acquire images for the same object at different locations. For example, as shown in
By configuring the cameras of the sensing device in the stereoscopic manner in which the cameras 110, 120 are synchronized with each other, two-dimensional information of the golf ball extracted from each of the images acquired through the first camera 110 and the second camera 120 for the same object (golf ball) can be converted into three-dimensional information.
The sensing processor 200 of the sensing device SD may include an image processor 210 that collects images from the cameras 110 and 120 and performs a predetermined image processing to extract the golf ball, and an information calculator 220 that calculates three-dimensional position information from the two-dimensional position information extracted from the image.
The sensing processor 200 may extract the moving golf ball from each image captured by each camera 110 and 120, calculate the position information of each extracted golf ball, and transmit it to the client 300. The client 300 may perform functions implemented by the client 300, such as calculating new information or calculating analysis information using the position information of the golf ball transmitted from the sensing processor.
For example, in the case that the client 300 is implemented as a simulator used in a screen golf system, the simulator can receive the position information of the golf ball and the golf club from the sensing processor 200 and use it to implement a simulation image of the trajectory in which the virtual golf ball flies on a virtual golf course.
In addition, in the case that the client 300 is implemented as a golf swing analysis device, the analysis device can receive the position information of the golf ball and golf club from the sensing processor 200 and use it to provide analysis information on the user's golf swing, diagnosis of swing problems, and problem solving.
The image processor 210 may be configured to perform image processing to extract a difference image of each of the images consecutively acquired by the cameras 110, 120 based on a reference image, and the information calculator 220 may be configured to calculate position information of the moving golf ball from each of the difference images extracted by the image processor.
As a method of extracting the moving golf ball from the acquired image, in addition to using the difference image as described above, a template image for the golf ball may be prepared in advance and a part corresponding to the golf ball may be extracted through similarity between an object on each acquired image and the template.
The spin calculation apparatus according to the embodiment described in
Meanwhile, the spin calculation apparatus according to another embodiment described in
One of the plurality of the cameras 110, 120 of the sensing device SD or the single camera 600 of the embodiment shown in
For example, the image of the n-th frame of the camera or the single camera may be referred to as a first image, and the image of the n+1-th frame may be referred to as a second image.
A part corresponding to the golf ball included in the first image may be extracted to generate a first ball image, and a part corresponding to the golf ball included in the second image may be extracted to generate a second ball image. The marker matching processor 510 and the spin calculator 520 may calculate spin by analyzing the first ball image and the second ball image, respectively.
The marker matching processor 510 may find and specify a plurality of markers on each ball image. In addition, the marker matching processor 510 may calculate information on a reference marker and a plurality of peripheral markers around the reference marker among the plurality of markers specified on the first ball image. In addition, the marker matching processor 510 may find and specify a combination of markers corresponding to the reference marker and the peripheral markers of the first ball image in the second ball image.
The spin calculator 520 may calculate the spin axis and the spin amount by geometric calculation using each center point of pairs of corresponding markers between the first ball image and the second ball image.
Specific operations of the marker matching processor and the spin calculator will be described later.
Meanwhile, the method for spin calculation according to an embodiment of the present invention will be described with reference to a flowchart shown in
First, by a camera of the sensing device or a single camera, consecutive images including a first image of a golf ball with a plurality of markers and a second image continuous thereto are obtained (S110).
Using the acquired images as described above, the marker matching processor extracts and analyzes the plurality of the markers on the golf ball from the images to determine a combination of markers corresponding between the markers of the golf ball on the first image and the markers of the golf ball on the second image. This may be performed through steps S120 to S160 on the flowchart of
After acquiring the first image and the second image in step S110, a part corresponding to the golf ball on the first image is extracted as the first ball image, and a part corresponding to the golf ball on the second image is extracted as the second ball image (S120).
The marker matching processor defines or specifies a reference marker and a plurality of peripheral markers among a plurality of markers on the first ball image (S130). The marker matching processor may process to calculate information on a relative relationship of each of the plurality of the peripheral markers with respect to the reference marker on the first ball image.
The relative relationship of each of the peripheral markers to the above reference marker can be defined according to the shape or phase of the plurality of markers on the golf ball. For example, if a plurality of markers on a golf ball have different phases, that is, they are inclined at different slopes, the above relative relationship of each of the peripheral markers to the reference marker can be implemented as relative angle information of each of the peripheral markers to the reference marker.
That is, the marker matching processor specifies or defines a reference marker and a plurality of peripheral markers for a plurality of markers on the first ball image (S130). In addition, the marker matching processor may process to calculate relative angle information on the slope of each of the peripheral markers for the reference marker on the first ball image as ‘feature information’ (S140).
The marker matching processor processes to calculate relative angle information on the slope in each combination which has an arbitrarily selected reference marker and peripheral markers based on the selected reference marker on the second ball image (S150). In this way, the feature information on the markers on the first ball image can be matched with the relative angle information on the markers on the second ball image so that the matched combination of markers on second ball image can be specified (S160).
Specific examples related to matching of markers as described above are shown in
First, with reference to
As shown in
The plurality of the markers on the golf ball may be a plurality of markers with the same shape or a plurality of markers with different shapes as shown in
In any case, it is preferable that the plurality of the markers are formed to produce relative information through relationships with other markers based on one reference marker.
For example, as shown in
In the ball image BI shown in
As shown in
In the case of
In the case of
In addition, not only the center point coordinates of each specified marker but also the slope information of each marker may be calculated.
The slope angle of each marker may extract the main component of the direction gradient formed by pixels in the marker region, and define the extracted pixel gradient as the slope angle of the marker. The method of extracting the main component of the pixel gradient may use singular value decomposition (SVD).
As described above, an example of a result of calculating the slope angle of each of the plurality of markers specified in the ball image is shown in
In this way, calculating the slope angle information of each of the markers shown on the ball image is applied to both the first ball image and the second ball image.
Meanwhile, referring to
For the matching of markers as described above, conventionally, each of the plurality of markers has been set as a figure having a different shape, and the same markers on the first ball image and the second ball image were matched with the similarity of the shape of the figure.
However, in order to match the same markers according to the similarity of the shape of the figures, there is a problem that the resolution of the camera to acquire the ball image must be quite high. In addition, even if the camera's resolution is high, the shape of the markers on the image often does not appear completely, so matching the markers to each other by the similarity of the shape is less accurate.
The present invention does not process matching markers on the basis of the shape of a figure, but process matching markers using the slope information of each of the plurality of markers described above, which can significantly speed up the operation for marker matching processing. At the same time, it has the advantage of being able to match markers quite accurately.
In the case of marker matching based on the shape of a figure of the marker, a computer must process the two-dimensional data of the figure's shape, so the speed of the operation is very slow. On the other hand, when marker matching is performed using the slope information of the marker according to the present invention, since the slope information is calculated as a single value, the calculation speed can be significantly increased in that marker matching is performed using such a slope value.
Describing in more detail with reference to
For example, as shown in
The present invention can process to find a combination of reference marker-peripheral markers on the second ball image 620 that match the reference marker 711 and the peripheral markers 712 to 715 defined for the markers on the first ball image 610 as described above.
To this end, relative angle information can be calculated using the slope angle information of each of the reference marker 711 and the peripheral markers 712 to 715 on the first ball image 610 as follows, which is referred to as “feature information”.
That is, marker matching can be achieved by finding a combination of reference marker-peripheral markers with relative angle information according to the above feature information for the plurality of markers on the second ball image.
The second ball image 620 is a state rotated from the first ball image 610. Since the combination of the reference marker-peripheral markers on the first ball image 610 cannot be immediately specified, and all markers on the second ball image 620 can be the reference marker, by arbitrarily selecting a reference marker on the second ball image 620 and determining peripheral markers based on the selected reference marker, relative angle information for the reference marker and peripheral markers needs to be calculated in all cases.
For example, as shown in
In
Comparing the feature information in Table 1 and the relative angle information in the case of S1 in Table 2, since they do not match each other, the case of S1 is excluded.
Comparing the feature information in Table 1 and the relative angle information in the case of S2 in Table 3, it can be seen that they match each other. Accordingly, it may be seen that the combination of the markers on the second ball image matched with the feature information on the first ball image is the case of S2.
That is, in the case of S2 in
The process as shown in
Meanwhile, as shown in
For the calculation of the spin axis and the spin amount, each center point of each of pairs of markers corresponding to each other on the first ball image and the second ball image may be represented in a single sphere (S210).
Wherein a line where a line connecting each center point of each of the pairs of markers corresponding to each other and two or more planes derived from the center point of the sphere meet can be determined as the spin axis (S220).
After determining the spin axis as described above, the spin calculator may process to calculate vectors each of which is in a direction perpendicular to the spin axis from each center point of each of the pairs of markers corresponding to each other (S230). And, each of the calculated vectors may be projected on a reference plane perpendicular to the spin axis (S240).
As described above, the spin amount centered on the spin axis may be calculated using the vectors projected on the reference plane (S250).
As described above, as the spin axis and the spin amount are calculated, the spin calculator may process to calculate spin information from the first ball image to the second ball image.
However, the change from the first ball image to the second ball image is not only due to the spin of the actual golf ball. This is because the camera's gaze is fixed, and an amount of rotation is occurred by a non-rotation movement from the first ball image to the second ball image in the field of view of the camera according to movement from a position of the golf ball when capturing the first ball image to a position of the golf ball when capturing the second ball image.
As such, the amount of rotation, that is the amount of gaze rotation caused by the non-rotation movement from the first ball image to the second ball image is caused by the camera's fixed view. Accordingly, the exact spin amount of the golf ball can be calculated by calculating the amount of gaze rotation by position in the image according to the camera's view fixed, and then subtracting the calculated amount of gaze rotation from the calculated spin amount (S260).
Specific examples of calculating the spin as described above are shown in
Referring to
Referring to
Wherein the spin axis and the spin amount according to the rotation to Ca1→Cb1 and the spin axis and the spin amount according to the rotation to Ca2→Cb2 may not match each other.
The mismatch as described above may be due to an error occurring in the image analysis process because some pixels representing the marker may be lost during the analysis process of the marker.
As shown in
In
As shown in
Wherein, if the intersection of the planes PL1 and PL2 can be calculated as the spin axis SA.
The spin axis may be calculated for each of the entire combinations by calculating the spin axis by the method as described above selecting by two pairs of center points of markers among combinations of three or more pairs of center points of markers. The final spin axis may be determined using the plurality of spin axes calculated in this way. For example, the average value of the plurality of spin axes may be determined as the final spin axis.
Meanwhile, when the spin axis is calculated as described above, vectors each of which is in a direction perpendicular to the spin axis are calculated from each of center points of a pair of markers corresponding to each other. And the calculated vectors are projected on the reference plane perpendicular to the spin axis, respectively. A spin amount centered on the spin axis may be calculated using the vectors each of which is projected on the reference plane.
As shown in
As shown in
Accordingly, the spin amount Q1 can be calculated around the spin axis Cp using the vectors v1 and v2 projected on the reference plane PO, and the spin amount Q2 can be calculated around the spin axis Cp using the vectors v3 and v4 projected on the reference plane PO.
A value of the spin amount Q1 may be calculated using an angle formed by vectors v1 and v2 around the center point Cp on the reference plane PO and a circumference of a circle to which the sphere is projected on the reference plane. Alternatively, a length of an arc of Pa1-PM can be calculated as the value of the spin amount Q1 using a central angle in a triangle connecting Pa1-Pb1-Cp. Similarly, a value of spin amount Q2 can be calculated using an angle formed by vectors v3 and v4 around the center point Cp on the reference plane PO and the circumference of the circle. Alternatively, a length of an arc of Pa2-Pb2 can be calculated as the value of the spin amount Q2 using a central angle in a triangle connecting Pa2-Pb2-Cp.
An average value for the spin amount values Q1 and Q2 calculated as described above may be calculated as a final spin amount. If the number of spin amount values is calculated more, statistically accurate spin amount values can be calculated using statistical analysis (e.g., an average, a variance, a standard deviation, etc.) of each of these spin amount values.
However, as described above, because the camera's view is fixed, the spin amount from the first ball image to the second ball image includes the amount of rotation caused by the non-rotation movement from the first ball image to the second ball image (i.e., the amount of gaze rotation depending on the position in the image). Accordingly, it is necessary for the amount of gaze rotation to be subtracted from the previously calculated spin amount.
It may be seen from
While a golf ball is fixed to one side of a jig ZG as shown in
Accordingly, the amount of rotation (the amount of gaze rotation) occurred during the non-rotation movement from the first ball image B1 to the second ball image B2 can be measured and preset. An accurate spin amount may be finally calculated by a correction for subtracting the preset amount of gaze rotation from the spin amount calculated in the manner described in
Such the amount of gaze rotation may be pre-measured, and the pre-measured amount of gaze rotation may be preset to be considered in the camera calibration process. Alternatively, whenever the user takes a golf shot, the amount of gaze rotation as described above can be calculated and the spin amount can be corrected using the calculated amount of gaze rotation.
As described above, the spin calculation method for golf ball moving by being hit and spin calculation apparatus using same according to the present invention have features that when the camera captures a hit golf ball with a plurality of markers marked on the golf ball, it can quickly and accurately match markers between two consecutive ball images using the relative relationship between the plurality of the markers detected in the captured ball image so that it can speed up the spin calculation processing and increase the calculation accuracy of the spin of the moving golf ball.
The spin calculation method for golf ball moving by being hit and spin calculation apparatus using same according to the present invention is available in the field of golf analysis or virtual golf simulation systems based on analysis of ball hit by golf club during golf swing.
Number | Date | Country | Kind |
---|---|---|---|
10-2021-0040978 | Mar 2021 | KR | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/KR2022/004180 | 3/25/2022 | WO |