WO2023277381A1 - Swing analysis apparatus and swing analysis method - Google Patents

Swing analysis apparatus and swing analysis method Download PDF

Info

Publication number
WO2023277381A1
WO2023277381A1 PCT/KR2022/008166 KR2022008166W WO2023277381A1 WO 2023277381 A1 WO2023277381 A1 WO 2023277381A1 KR 2022008166 W KR2022008166 W KR 2022008166W WO 2023277381 A1 WO2023277381 A1 WO 2023277381A1
Authority
WO
WIPO (PCT)
Prior art keywords
swing
image
golfer
mission
error
Prior art date
Application number
PCT/KR2022/008166
Other languages
French (fr)
Korean (ko)
Inventor
윤성한
김진영
김지연
Original Assignee
주식회사 골프존
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 골프존 filed Critical 주식회사 골프존
Publication of WO2023277381A1 publication Critical patent/WO2023277381A1/en

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0059Exercising apparatus with reward systems
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • A63B2024/0009Computerised real time comparison with previous movements or motion sequences of the user
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • A63B2024/0012Comparing movements or motion sequences with a registered reference
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B2071/0675Input for modifying training controls during workout
    • A63B2071/0677Input by image recognition, e.g. video signals
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/80Special sensors, transducers or devices therefor
    • A63B2220/806Video cameras

Definitions

  • Embodiments disclosed herein relate to a swing analysis device and a swing analysis method, and more particularly, to analyze a swing image of a golfer's swing and provide a drill image and a mission according to the analysis result. and methods.
  • golfer's swing posture is important to improve the distance, etc.
  • golf pros are located at the site when golfers play golf, so they receive lessons separately, or swing video recorded golf swings. It is possible to deliver this to professional golfers and receive correction accordingly.
  • Korean Patent Publication No. 10-2001-0102751 which is a prior art document, takes a video of one's own swing form and sends the data to the Internet site founder via the Internet or by mail, and the Internet site creator who receives this information informs the professional golfer contracted with him/herself. It discloses a method of analyzing and requesting data and uploading the analyzed contents to the professional golfer's website.
  • Embodiments disclosed herein are aimed at presenting a swing analysis device and a swing analysis method.
  • embodiments disclosed herein are aimed at presenting a device and method for analyzing a swing image using artificial intelligence.
  • the embodiments disclosed herein are intended to provide an apparatus and method for improving a golfer's swing ability by providing a drill image based on a swing image analysis result.
  • the embodiments disclosed herein are aimed at providing a device and method for improving a golfer's swing ability by providing a mission based on a swing image analysis result.
  • an input/output unit for acquiring a swing image of a golfer and a program for performing machine learning are provided.
  • a method for a swing analysis device to analyze a golfer's swing a golfer's swing image from a swing image using a learned machine learning model.
  • the method may include detecting a swing error, recommending a drill image based on the swing error, and recommending a mission corresponding to the drill image.
  • FIG. 1 is a configuration diagram for explaining a swing analysis device according to an embodiment disclosed herein.
  • FIGS. 2 and 3 are block diagrams for explaining a swing analysis device according to an embodiment disclosed herein.
  • FIG. 4 is an exemplary view for explaining a swing analysis device according to an embodiment disclosed herein.
  • FIG. 5 is a flowchart illustrating a swing analysis method according to an embodiment disclosed herein.
  • FIGS. 2 and 3 are block diagrams for explaining a swing analysis device according to an embodiment disclosed herein.
  • the swing analysis device 100 acquires and analyzes a swing image of a golfer's swing, and recommends a drill image and mission based on the obtained swing image.
  • the swing analysis device 100 may be implemented in any form of a user terminal or a server-client system, and when implemented as a server, components constituting the swing analysis device 100 are physically separated from a plurality of servers. or can be performed on a single server.
  • the swing analysis device 100 may be implemented as a server-client system, and includes a user terminal 10 and a server 20 for this purpose, and the user terminal 10 and server 20 may communicate over network N.
  • the user terminal 10 may be implemented as a computer, portable terminal, television, wearable device, etc. capable of accessing a remote server through a network N or connecting to other terminals and servers.
  • the computer includes, for example, a laptop, desktop, or laptop equipped with a web browser
  • the portable terminal is, for example, a wireless communication device that ensures portability and mobility.
  • a wearable device is a type of information processing device that can be worn directly on the human body, such as, for example, a watch, glasses, accessories, clothes, shoes, etc. can be connected with
  • the server 20 may be implemented as a computer capable of communicating with the user terminal 10 on which an application for interaction with a golfer or a web browser is installed and a network, or implemented as a cloud computing server.
  • the server 20 may include a storage device capable of storing data or may store data through a third server.
  • the swing analysis device 100 may further include a kiosk (not shown).
  • a kiosk (not shown) may communicate with the server 20 via a network N.
  • such a kiosk may provide information on a recommended mission, determine whether or not the mission has been performed, whether the mission is successful, increase the golfer's level, and provide a reward accordingly.
  • the kiosk may output a swing error obtained by analyzing a swing image, and also output ball data (eg, spin value, flight distance, etc.) obtained by analyzing the movement of a detected golf ball or golf club, or Club data (for example, the type of golf club, etc.) related to the golf club used by the golfer may be output.
  • ball data eg, spin value, flight distance, etc.
  • Club data for example, the type of golf club, etc.
  • the swing analysis device 100 may include an input/output unit 210, a control unit 220, a communication unit 230, and a memory 240.
  • the input/output unit 210 may include an input unit for receiving an input from a golfer and an output unit for displaying information such as a work result or a state of the swing analysis device 100 .
  • the input/output unit 210 may include an operation panel for receiving a golfer's input and a display panel for displaying a screen.
  • the input unit may include devices capable of receiving various types of user inputs, such as a keyboard, a physical button, a touch screen, a camera, or a microphone.
  • the output unit may include a display panel or a speaker.
  • the input/output unit 210 is not limited thereto and may include a configuration supporting various input/output.
  • the output unit may output a recommended drill image or mission by analyzing the captured swing image.
  • control unit 220 controls the overall operation of the swing analysis device 100, and may include a processor such as a CPU or GPU.
  • the control unit 220 may control other components included in the swing analysis device 100 to perform an operation corresponding to a user input received through the input/output unit 210 .
  • the controller 220 may execute a program stored in the memory 240, read a file stored in the memory 240, or store a new file in the memory 240.
  • FIG. 4 is an exemplary diagram for explaining the swing analysis device 100 according to an embodiment disclosed herein.
  • the communication unit 230 may perform wired/wireless communication with other devices or networks.
  • the communication unit 230 may include a communication module supporting at least one of various wired/wireless communication methods.
  • the communication module may be implemented in the form of a chipset.
  • the wireless communication supported by the communication unit 230 may be, for example, Wireless Fidelity (Wi-Fi), Wi-Fi Direct, Bluetooth, Ultra Wide Band (UWB), or Near Field Communication (NFC).
  • wired communication supported by the communication unit 230 may be, for example, USB or High Definition Multimedia Interface (HDMI).
  • HDMI High Definition Multimedia Interface
  • Various types of data such as files, applications, and programs may be installed and stored in the memory 240 .
  • the controller 220 may access and use data stored in the memory 240 or may store new data in the memory 240 .
  • the controller 220 may execute a program installed in the memory 240 . 2, for example, a program for performing a swing analysis method may be installed in the memory 240, or a program for performing machine learning may be installed, or a learned machine learning model program. can be installed.
  • the controller 220 may execute a program for a swing analysis method stored in the memory 240.
  • control unit 220 may include a pre-processing unit 310, an error detection unit 320, a drill recommendation unit 330, and a mission recommendation unit 340.
  • the pre-processing unit 310 may acquire a swing image in order to extract a swing error of a golfer's posture from the swing image, and may perform pre-processing on the obtained swing image.
  • the pre-processing unit 310 may obtain a swing image through the input/output unit 110 .
  • the pre-processing unit 310 may perform pre-processing on the swing image by correcting brightness, resolution, size, etc. of the swing image.
  • the brightness and resolution of the swing video may vary depending on the amount of sunlight, etc. Resolution, size, etc. may vary for each screen golf system. Reflecting this reality, it is possible to perform pre-processing on the swing image so that the learned machine learning model can effectively output the result value.
  • the pre-processing unit 310 may perform pre-processing by extracting a region including a golfer from a swing image.
  • a region to be analyzed can be extracted as a swing image in the photographed image.
  • the pre-processing unit 310 may use a machine learning model. For example, using YOLO (You Only Look Once), a bounding box may be set for an object in a swing image and an image within the bounding box may be extracted, Alternatively, the object may be detected using a deep learning model in which feature points such as golf clubs are learned.
  • YOLO You Only Look Once
  • the error detection unit 320 may detect a swing error by analyzing the swing image. At this time, the error detection unit 320 may detect a swing error by analyzing the preprocessed swing image.
  • the error detection unit 320 may input a swing image using the learned machine learning model and obtain an error related to the input swing image.
  • the error detection unit 320 may train a machine learning model to output a swing error when a swing image is input.
  • a machine learning model may be trained to output a swing error indicating a problem in a golfer's posture when swinging.
  • the error detection unit 320 may train a machine learning model to output a reference image marked with a reference line when a swing image is input.
  • a machine learning model is trained to output a reference image when a swing image is input, and when a reference image with a reference line is collected by crawling through the web and an image from which the reference line is deleted is input as a swing image, the reference image is displayed.
  • a machine learning model can be trained to output this.
  • a machine learning model may be trained to extract a golfer's skeleton from the swing image, and accordingly, the error detection unit 320 extracts and identifies the golfer's joints and body parts. Reference lines connecting the affected joints or body parts can be displayed on the swing image. Accordingly, the error detection unit 320 may output a reference image in which a reference line is displayed for identifying problems in the golfer's posture.
  • the error detection unit 320 when the swing image 400 is input, the error detection unit 320, as shown in (b) of FIG. A reference image 401 in which each reference line 410 connecting the crown and the pelvis is displayed may be output.
  • the error detection unit 320 may analyze swing errors of the golfer based on the reference lines, and may determine possible swing errors by considering angles between a plurality of reference lines, distances between reference lines, and relative positions between reference lines. .
  • the error detection unit 320 may analyze that an early extension phenomenon has occurred as a swing error through an angle between the reference line 410 and the reference line 411 .
  • the error detection unit 320 may provide a reference image 401 in which reference lines 410 and 411 are displayed on the swing image, as shown in FIG. 4 , while outputting a swing error related to the swing image. Referring to the reference image 401, the golfer can check the basis for the swing error.
  • the error detection unit 320 may obtain golfer's feedback on the reference image, and when the feedback is obtained, a machine learning model may be trained again based on the feedback.
  • the golfer may determine that the reference lines 410 and 411 in the reference image 401 are incorrectly displayed and correct the reference line, and the error detection unit 320 may output the reference image reflecting the corrected reference line. You can retrain the running model.
  • the error detection unit 320 may extract one or more swing errors from the swing image.
  • the error detection unit 320 may extract a plurality of swing errors from the swing image, and when the plurality of swing errors are extracted, one swing error may be selected from among the extracted swing errors.
  • the error detection unit 320 may transmit the one error to the drill recommendation unit 330 so that it can be used as an error for recommending a drill image.
  • the swing error extracted from the swing image is referred to as a 'first swing error'
  • the swing error selected from among the first swing errors for recommending a drill image is referred to as a 'second swing error'.
  • the error detection unit 320 may select a second swing error from among one or more first swing errors based on swing errors extracted from past swing images of the golfer.
  • one of the remaining first swing errors excluding the first swing errors extracted from the past swing image may be selected as the second swing error. That is, when the error detection unit 320 diagnoses the slide and sway phenomena as the first swing error in the current swing image, the sway has been extracted as the first swing error in the golfer's past swing image. If so, the slide excluding the sway can be determined as the second swing error.
  • the first swing errors extracted from the current swing image the number of times extracted from the past swing image is counted, the first swing errors are sorted according to the number of extractions, and the first swing error extracted with the highest number of times can be selected as the second swing error.
  • the error detection unit 320 diagnoses a reverse pivot and a slide phenomenon as the first swing error in the current swing image, the reverse pivot phenomenon 2 times and the slide phenomenon 5 times from 5 past swing images of the golfer If extracted twice, the slide can be determined as the second swing error.
  • the past swing image selected for selection of the second swing error may be a swing image that was not used for recommendation of the drill image.
  • the error detection unit 320 may select a second swing error from one or more first swing errors based on the golfer's past mission performance information.
  • the past mission performance information is information about the golfer's reaction to the mission assigned to the golfer in the past, and may include, for example, information about whether or not the mission was accomplished, the degree of performance when the mission was performed, and the like.
  • the error detection unit 320 stores mission performance information as past mission performance information, and among the first swing errors, by referring to the past mission performance information, the past mission performance information is stored.
  • a second swing error may be selected as one of the first swing errors other than the swing errors related to the mission achieved by the golfer.
  • the error detection unit 320 receives a squat exercise mission as a past mission and if 'squat exercise mission complete' is stored as past mission performance information as the golfer performs the mission, the first swing error in which the mission related to the squat exercise is matched It is possible to select the second swing error from among the remaining first swing errors except for .
  • the error detection unit 320 may determine a third swing error based on the second swing error.
  • the third swing error is information indicating a golfer's body problem, and may include, for example, lack of flexibility for each body part, lack of muscle strength for each body part, lack of rotational power for each body part, lack of stability, and lack of balance.
  • the error detection unit 320 may store body problems that cause the second swing error as a table. For example, 'pelvic distortion' and 'lack of pelvic flexibility' may be stored as body problems in response to the second swing error of 'sway'.
  • the error detection unit 320 may provide the golfer with a body problem that causes the second swing error, and determine the problem selected by the golfer as the third swing error. For example, when 'lack of hip muscles' is selected as 'left and right arm imbalance', 'pelvic distortion', and 'lack of hip muscles', which cause the second swing error, the error detection unit 320 detects 'hip muscles' Insufficient' can be determined as the third swing error.
  • the error detection unit 320 may determine, as a third swing error, a body problem selected by another golfer determined to be similar to the golfer among body problems that cause the second swing error.
  • other golfers similar to the golfer have the same profile as the golfer (for example, gender, age, place of residence, etc.), have the same golf playing period, or have a geographical location where analysis of swing images is requested (for example, country club name, screen golf location, etc.) may be the same golfer.
  • the error detection unit 320 may determine 'insufficient waist flexibility' as the third swing error.
  • the error detection unit 320 can diagnose the golfer's body problem by amplifying the second swing error.
  • the drill recommendation unit 330 may recommend a drill image corresponding to the swing error.
  • the drill recommendation unit 330 may store a drill image.
  • the 'drill image' refers to an image including explanations or precautions for golf posture correction, or descriptions of exercises for golf posture correction
  • the drill recommendation unit 330 is the swing analysis device 100
  • a plurality of drill images may be stored by crawling the images posted on the third server, which is an external server.
  • the third server is a server that stores a plurality of images, and may be, for example, a portal site server, an OTT (Over The Top) server, and the like.
  • the drill recommendation unit 330 may match and store a drill image with a swing error.
  • the drill recommendation unit 330 may analyze which swing error the drill image is matched with, match the drill image to the corresponding swing error, and store the drill image as a table.
  • the drill recommendation unit 330 analyzes the title of the image collected as the drill image, the frame included in the drill image, or the audio included in the drill image to determine which swing error the corresponding image is related to. . For example, if 'slide' is included in the title of the collected image, the corresponding image is determined as an image for correcting the slide, and the drill recommendation unit 330 may store the corresponding image as a drill image in 'slide' as a swing error. . Alternatively, for example, if the word 'pelvis twist' is collected from the audio included in the collected image, the drill recommendation unit 330 may store the corresponding image as a drill image in 'pelvis twist' as a swing error.
  • a drill image corresponding to the swing error may be retrieved and output.
  • the drill recommendation unit 330 may train a machine learning model to output a drill image when a swing error is input.
  • the drill recommendation unit 330 may determine a drill image to be recommended according to input of the swing error using the learned machine learning model.
  • the drill recommendation unit 330 may additionally calculate a drill preference for each of the plurality of drill images, align the plurality of drill images, and provide the drill images to the golfer.
  • the 'drill preference' is a score representing a golfer's preference for a drill image.
  • drill preference may be determined when collecting drill images. For example, based on at least one of the number of views, the number of recommendations, and the number of likes in a third server platform on which the collected drill images are posted. It may be determined, and for example, drill preference may increase in proportion to the number of views, recommendations, or likes. Through this, you can provide popular videos to golfers online.
  • drill preference may be determined according to feedback from other golfers who have watched drill images.
  • the drill preference of the corresponding drill image may be calculated according to the number of views by counting the number of views.
  • the viewing time may be counted, and the drill preference of the corresponding drill image may be calculated according to the viewing time.
  • the drill preference of the corresponding drill image may be calculated by counting the number of times 'likes' are obtained from the golfer or recommendations to other golfers are input.
  • a swing error derived by acquiring and analyzing a swing image of a golfer who has been provided with a drill image after a predetermined period of time has elapsed since the provision of the drill image is irrelevant to the provided drill image If this is determined, it is determined that the posture of the golfer is corrected or the swing skill is improved due to the corresponding drill image, and the drill preference can be set high.
  • the drill preference may be calculated according to the mission achievement rate. For example, the higher the mission achievement rate, the higher the drill preference.
  • the drill recommendation unit 330 may arrange and recommend drill images. At this time, if a predetermined condition is satisfied, some of the drill images may not be recommended.
  • drill images having a predetermined capacity or more may be excluded and only the remaining drill images may be provided.
  • drill images that may aggravate the disease may be excluded from the aligned drill images and the remaining drill images may be provided.
  • a drill video containing the contents of bending the waist can be excluded.
  • the determination of whether the drill image may aggravate the disease record is determined by analyzing the comments, comments, audio, images, etc. included in the drill image when collecting the drill image for a predetermined motion, and the content related to the corresponding motion.
  • a positive disease ie, a disease that improves related to the content in the image
  • a negative disease ie, a disease that worsens related to the content in the image
  • the drill video can be provided to a golfer with a herniated disc You can exclude from the video and recommend it.
  • Drill preference can be used to relearn a machine learning model. For example, drill images are sorted according to drill preference, and when a swing error is input, machine learning outputs drill images within a predetermined rank according to the sorted order. The model can be retrained.
  • the mission recommendation unit 340 may recommend a mission based on the drill image.
  • the mission is information requesting the golfer to perform a predetermined action, and may include information about a specific action, the number of actions, and an action execution period.
  • the mission may be additionally stored, for example, one or more levels are matched, and even if the operation is the same, the strength of the operation may be changed according to the number of operations or operation duration for each level. Therefore, if the level of the same mission increases, the number of times may increase even if the same body part is trained. .
  • the mission recommendation unit 340 recommends performing the 'squat' operation in 3 sets of 20 times for 2 weeks as a mission, or as a level 1 squat, the basic squat in 3 sets of 20 times, 2 You can recommend a mission to do during the week.
  • Missions may be preset in the swing analysis device 100 or may be collected by crawling through the web.
  • intensity may be stored differently according to the level of each mission.
  • missions may be matched with drill images and stored as a table, and thus the mission recommendation unit 340 may recommend missions matched with the drill images recommended by the drill recommendation unit 330 .
  • the mission recommendation unit 340 may recommend a mission matched to the drill image recommended by the drill recommendation unit 330.
  • the drill recommendation unit 330 may output a recommended mission by inputting a drill image to the learned machine learning model.
  • the mission recommendation unit 340 may calculate the mission preference for each of the plurality of missions for which the recommendation is determined as described above, arrange the plurality of missions in the order of highest mission preference, and provide the golfer with the mission preference.
  • the mission preference may be calculated based on the mission recommended to the golfer in the past, and the mission recommendation unit 340 may calculate the mission preference according to the degree in which the corresponding mission is related to the previously recommended mission. For example, mission preference may be calculated low when the corresponding mission is related to a mission recommended in the past, and mission preference may be calculated high if the corresponding mission is unrelated to a mission recommended in the past. Accordingly, for example, if a mission is related to lower body training and a previously recommended mission is related to upper body training or flexibility, the mission preference for the corresponding mission may be set high.
  • the mission preference may be calculated in proportion to the number of selections by the golfer or other golfers, and the mission recommendation unit 204 determines the number of times a mission related to the mission is selected by the golfer, or other golfers for whom drill images such as the golfer are recommended.
  • the mission preference for the corresponding mission can be calculated based on the number of times the corresponding mission is selected. For example, if the number of missions related to 'Plank' selected by golfers in the past is higher than other missions, the mission preference for the 'Plank for 2 weeks, 1 minute every day' mission may be determined to be the highest among the plurality of missions. Alternatively, for example, when there are a plurality of other golfers who have been recommended the same drill image as the golfer, the highest mission preference may be set for a mission selected by the highest number of golfers.
  • the mission preference may be calculated based on past mission performance information of a mission related to the corresponding mission.
  • the mission recommendation unit 340 may calculate a mission preference low when it is determined that the golfer's achievement level for the mission related to the corresponding mission is low, and a mission preference high when it is determined that the golfer's achievement level is high. Therefore, for example, for the mission of 'Plank for 2 weeks, 1 minute every day', if it is determined that the past golfer performed the plank for 1 minute once a week for the mission 'Plank for 2 weeks, 3 times a week for 1 minute', the golfer for that mission It is determined that the degree of achievement of is low, and the mission preference may be calculated to have a lower value than the mission preference of other missions.
  • the mission recommendation unit 340 may arrange missions according to mission preference, select and recommend missions within a predetermined rank.
  • the mission recommendation unit 340 recommends a mission to the golfer and then determines whether or not the golfer has performed the mission.
  • the mission recommendation unit 340 may determine whether the golfer performs the mission selected by the golfer from among the recommended missions.
  • Whether or not the mission is performed can be determined using the function of the electronic terminal 10 included in the swing analysis device 100 implemented as a server-client system.
  • the mission recommendation unit 340 may analyze the mission performance video and count the number of squats performed by the golfer.
  • the golfer performing the mission carries out the mission carrying the user terminal, the golfer's movement may be detected by a gyro sensor built in the user terminal, and the number of squats performed by the golfer may be counted accordingly.
  • whether or not the mission is performed may be determined using a kiosk (not shown) included in the swing analysis device 100 .
  • whether or not the mission is performed may be determined through, for example, a sensor installed in the screen golf system.
  • whether or not the mission is performed may be determined by detecting a golfer's motion through a vision sensor.
  • whether or not the mission is performed can be determined, for example, through a sensor built into the golf club, and therefore, to determine whether or not to perform a mission such as a barbell squat or deadlift in which a golf club is used like a barbell to exercise, the golfer It is possible to determine whether the mission is performed by detecting whether the golf club is moved while holding the golf club horizontally.
  • a mission such as a barbell squat or deadlift in which a golf club is used like a barbell to exercise
  • the mission recommendation unit 340 may provide a reward according to the achievement of the mission.
  • the mission recommendation unit 340 may provide a virtual currency such as a predetermined point or an item as a reward, or increase the level of the golfer. Examples of compensation are not limited to the examples described above.
  • the mission recommendation unit 340 may impose a penalty if the golfer fails to achieve the mission, and for example, may demote the golfer's level or deduct the golfer's points by more than a predetermined value. Also, for example, the mission recommendation unit 340 may provide a comment for encouraging mission performance.
  • the mission recommendation unit 340 may increase a mission level to be matched with the golfer by determining whether the golfer has performed the mission.
  • the mission recommendation unit 340 determines that the golfer has performed level 1 of the mission, the level of the mission corresponding to the golfer is raised by one level, and the next time the same mission is recommended to the golfer, a level 2 mission is provided. can do.
  • the mission recommendation unit 340 determines that the golfer has performed level 1 of the mission, it provides a mission of the next level in succession so that the golfer can perform the mission of level 2, and the mission accordingly. Through this, you can repeatedly train the body part you want to train.
  • the mission recommendation unit 340 may additionally set a lesson curriculum suitable for the golfer based on the drill image or mission, and provide the golfer with lesson contents according to the curriculum.
  • the lesson content may be, for example, a lesson image, or may provide a virtual golf course to practice a predetermined shot and simulate a golfer's shot accordingly on the golf course.
  • the controller 220 including the mission recommendation unit 340 may further include a chatting unit (not shown) that provides an interface for chatting with golfers, and the chatting unit (not shown) is an artificial intelligence chatbot.
  • a chatting unit (not shown) that provides an interface for chatting with golfers
  • the chatting unit (not shown) is an artificial intelligence chatbot.
  • an artificial intelligence chatbot capable of processing text or voice in natural language and providing output values accordingly, for example, the degree to which the golfer watched the drill video, whether the golfer performed the mission, information about the golfer progress rate in the lesson curriculum, etc. can be provided as text or audio.
  • the machine learning model of each component constituting the control unit 220 may be implemented as a network model, such as a convolutional neural network (CNN), a recurrent neural network (RNN), or a deep neural network (DNN), for example.
  • CNN convolutional neural network
  • RNN recurrent neural network
  • DNN deep neural network
  • the machine learning models in each of the preprocessing 310, the error detection unit 320, the drill recommendation unit 330, and the mission recommendation unit 350 may be implemented in different networks or the same network.
  • the input/output unit 110 for obtaining a swing image of a golfer the memory 140 storing a program for performing machine learning, and machine learning for the swing image by executing the program
  • the swing analysis device 100 including a control unit 120 that performs detects a golfer's swing error from a swing image using a learned machine learning model, recommends a drill image based on the swing error, and A mission corresponding to the drill image may be recommended. Accordingly, the swing analysis device 100 may contribute to improving the golfer's golf skills by correcting the golfer's swing posture.
  • the swing analysis device 100 may analyze the golfer's swing as the golfer's golfer's play in the golf field is photographed, and may also analyze the golfer's swing as the golfer's golfer's play is photographed in the screen golf system.
  • the camera may generate a swing image as the camera captures the golfer's swing motion, or the camera may continuously photograph the golfer, and the swing motion may be framed.
  • a swing image can be generated by extracting .
  • the screen golf system may include a camera installed so that a golfer can photograph a turn at bat where a golfer can hit a golf ball, and the camera is installed in a simulator in which all data necessary for virtual golf simulation is stored and processed, or , or installed in a sensor that communicates with the simulator, or may be implemented as a separate device.
  • the camera or simulator detects at least one of the golfer, the golf ball, and the golf club through the sensor, the camera may generate a swing image as the camera captures the golfer's swing motion, or the camera may continuously photograph the golfer,
  • a swing image may be generated by extracting a frame having a swing motion.
  • the swing analysis device 100 is described in detail as being performed by analyzing a swing image as a golfer's swing is photographed in a screen golf system or a golf field, it is not necessarily limited thereto, and the golfer's swing It can be applied to all types of systems or devices that analyze the swing image when the swing image is obtained by shooting.
  • FIG. 5 is a flow chart for explaining a swing analysis method according to an embodiment.
  • the swing analysis method shown in FIG. 5 includes steps of time-sequential processing in the swing analysis device 100 shown in FIGS. 1 to 4 . Therefore, even if the content is omitted below, the information described above regarding the swing analysis device 100 may also be used in the swing analysis method according to the embodiment shown in FIG. 5 .
  • the swing analysis device 100 may receive a swing analysis request from the golfer (S510).
  • the swing analysis device 100 when obtaining a request for analysis of a swing image uploaded by a golfer or detecting at least one motion among the motions of the golfer, the golf ball, and the golf club, the swing analysis device 100 considers that the swing analysis has been requested. can judge
  • the swing analysis device 100 may detect a swing error by analyzing the swing image (S520).
  • the swing analysis device 100 may extract one or more first swing errors and select one of the one or more first swing errors as the second swing error. At this time, the swing analysis device 100 selects a second swing error from among the one or more first swing errors based on a swing error extracted from a golfer's past swing image, or selects a first swing error based on the golfer's past mission performance information. You can select the second swing error from among them.
  • the swing analysis device 100 may determine a third swing error indicating a physical problem of the golfer based on the second swing error.
  • the swing analysis device 100 may recommend a drill image based on the detected swing error (S530).
  • the swing analysis device 100 may recommend a drill image based on at least one of a first swing error, a second swing error, and a third swing error.
  • the swing analysis device 100 may recommend a mission (S540) and monitor whether the golfer performs the recommended mission. Accordingly, if it is determined that the golfer has performed the mission (S550), the swing analysis device 100 may provide a reward to the golfer (S560).
  • a golfer can easily find a problem in his/her swing pose and make efforts to improve it.
  • the virtual golf simulation method described above may be implemented in the form of a computer-readable medium storing instructions and data executable by a computer.
  • instructions and data may be stored in the form of program codes, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation.
  • computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media.
  • a computer-readable medium may be a computer recording medium, which is a volatile and non-volatile memory implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. It can include both volatile, removable and non-removable media.
  • the computer recording medium may be a magnetic storage medium such as HDD and SSD, an optical recording medium such as CD, DVD, and Blu-ray disc, or a memory included in a server accessible through a network.
  • the virtual golf simulation method described above may be implemented as a computer program (or computer program product) including instructions executable by a computer.
  • a computer program includes programmable machine instructions processed by a processor and may be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language.
  • the computer program may be recorded on a tangible computer-readable recording medium (eg, a memory, a hard disk, a magnetic/optical medium, or a solid-state drive (SSD)).
  • SSD solid-state drive
  • the virtual golf simulation method described above may be implemented by executing the computer program as described above by a computing device.
  • a computing device may include at least some of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device.
  • Each of these components are connected to each other using various buses and may be mounted on a common motherboard or installed in any other suitable manner.
  • the processor may process commands within the computing device, for example, to display graphic information for providing a GUI (Graphic User Interface) on an external input/output device, such as a display connected to a high-speed interface.
  • GUI Graphic User Interface
  • Examples include instructions stored in memory or storage devices.
  • multiple processors and/or multiple buses may be used along with multiple memories and memory types as appropriate.
  • the processor may be implemented as a chipset comprising chips including a plurality of independent analog and/or digital processors.
  • Memory also stores information within the computing device.
  • the memory may consist of a volatile memory unit or a collection thereof.
  • the memory may be composed of a non-volatile memory unit or a collection thereof.
  • Memory may also be another form of computer readable medium, such as, for example, a magnetic or optical disk.
  • a storage device may provide a large amount of storage space to the computing device.
  • a storage device may be a computer-readable medium or a component that includes such a medium, and may include, for example, devices in a storage area network (SAN) or other components, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, flash memory, or other semiconductor memory device or device array of the like.
  • SAN storage area network
  • ' ⁇ unit' used in the above embodiments means software or a hardware component such as a field programmable gate array (FPGA) or ASIC, and ' ⁇ unit' performs certain roles.
  • ' ⁇ part' is not limited to software or hardware.
  • ' ⁇ bu' may be configured to be in an addressable storage medium and may be configured to reproduce one or more processors. Therefore, as an example, ' ⁇ unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
  • components and ' ⁇ units' may be implemented to play one or more CPUs in a device or a secure multimedia card.
  • the above-described embodiments are for illustrative purposes, and those skilled in the art to which the above-described embodiments belong can easily transform into other specific forms without changing the technical spirit or essential features of the above-described embodiments. It should be understood. Therefore, it should be understood that the above-described embodiments are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

Abstract

Presented are a swing analysis apparatus and a swing analysis method. The swing analysis apparatus according to an embodiment comprises: an input/output unit for obtaining a swing image obtained by photographing the appearance of a golfer; a memory storing a program for carrying out machine learning; and a control unit which executes the program to carry out machine learning for the swing image, wherein the control unit detects a swing error of the golfer from the swing image by using a trained machine learning model, recommends a drill image on the basis of the swing error, and recommends a mission corresponding to the drill image.

Description

스윙 분석 장치 및 스윙 분석 방법Swing analysis device and swing analysis method
본 명세서에서 개시되는 실시예들은 스윙 분석 장치 및 스윙 분석 방법에 관한 것으로, 보다 상세하게는, 골퍼의 스윙 모습을 촬영한 스윙영상을 분석하고, 분석 결과에 따라 드릴영상 및 미션을 제공하기 위한 장치 및 방법에 관한 것이다.Embodiments disclosed herein relate to a swing analysis device and a swing analysis method, and more particularly, to analyze a swing image of a golfer's swing and provide a drill image and a mission according to the analysis result. and methods.
골프에 대한 인기가 높아짐에 따라 골프 실력을 향상시키고자 하는 골퍼들의 니즈가 커지고 있다. As the popularity of golf increases, the needs of golfers who want to improve their golf skills are growing.
한편 비거리 등을 개선하기 위해서는 골퍼의 스윙 자세가 중요한데, 스윙 자세에 문제점을 발견하고 교정 받기 위해서는 골퍼의 골프 플레이 시 그 현장에 골프 프로들이 위치하고 있어 별도로 교습을 받거나, 또는 골프 스윙을 녹화한 스윙영상을 프로 골퍼들에게 전달하고 그에 따라 교정을 받는 방법이 가능하다.On the other hand, golfer's swing posture is important to improve the distance, etc. In order to find and correct problems in swing posture, golf pros are located at the site when golfers play golf, so they receive lessons separately, or swing video recorded golf swings. It is possible to deliver this to professional golfers and receive correction accordingly.
다만, 위와 같이 자세의 교정을 수행하는 종래 기술은 프로 골퍼를 필요로 한다는 점에서 코칭하고자 하는 프로 골퍼가 없을 때 교정을 수행하기 어렵다는 문제점이 있고, 또한 프로 골퍼들의 실력 차로 인해 프로 골퍼 별로 상이한 질의 코칭을 받게 된다는 문제점이 있다. However, since the prior art for posture correction as described above requires a professional golfer, there is a problem in that it is difficult to correct the posture when there is no professional golfer to be coached. There is a problem with being coached.
관련하여 선행기술 문헌인 한국공개특허 제10-2001-0102751 호에서는 자신의 스윙폼을 비디오로 찍어 인터넷 사이트 개설자에게 인터넷이나 우편으로 자료를 보내고 이것을 받은 인터넷 사이트 개설자는 자신과 계약된 프로골퍼에게 이 자료를 분석 및 의뢰하여 프로골퍼가 분석한 내용을 자신의 사이트에 올리는 방법에 대해 개시하고 있다. In relation to this, Korean Patent Publication No. 10-2001-0102751, which is a prior art document, takes a video of one's own swing form and sends the data to the Internet site founder via the Internet or by mail, and the Internet site creator who receives this information informs the professional golfer contracted with him/herself. It discloses a method of analyzing and requesting data and uploading the analyzed contents to the professional golfer's website.
위 공개특허는 골퍼로 하여금 스윙 모습을 촬영하게 하고 촬영된 영상을 프로 골퍼에게 보내 분석을 의뢰하는데 그칠 뿐이어서 프로 골퍼와 컨택하기 어렵거나 프로 골퍼에게 자세 교정을 받는 데 있어 발생되는 비용이 부담스러운 골퍼는 자세 교정을 받기 어렵다는 문제점이 있다. 더군다나 자세 교정에 받는데 그칠 뿐 자세 교정을 위해 골퍼가 어떠한 노력을 기울여야 하는지에 대해 알기 어렵다는 문제점도 있다.The above published patent only allows the golfer to photograph the swing and sends the recorded video to the professional golfer for analysis, so it is difficult to contact the professional golfer or the cost incurred in receiving posture correction from the professional golfer is burdensome. Golfers have a problem in that it is difficult to correct their posture. Furthermore, there is a problem that it is difficult to know what kind of effort the golfer should make to correct the posture, only to receive posture correction.
따라서 위 문제점을 해결하기 위한 기술의 개발이 필요하게 되었다.Therefore, it is necessary to develop a technology to solve the above problems.
한편, 전술한 배경기술은 발명자가 본 발명의 도출을 위해 보유하고 있었거나, 본 발명의 도출 과정에서 습득한 기술 정보로서, 반드시 본 발명의 출원 전에 일반 공중에게 공개된 공지기술이라 할 수는 없다.On the other hand, the above-mentioned background art is technical information that the inventor possessed for derivation of the present invention or acquired in the process of derivation of the present invention, and cannot necessarily be said to be known art disclosed to the general public prior to filing the present invention. .
본 명세서에서 개시되는 실시예들은, 스윙 분석 장치 및 스윙 분석 방법을 제시하는데 목적이 있다.Embodiments disclosed herein are aimed at presenting a swing analysis device and a swing analysis method.
또한, 본 명세서에서 개시되는 실시예들은, 인공지능을 이용하여 스윙영상을 분석하는 장치 및 방법을 제시하는데 데 목적이 있다.In addition, the embodiments disclosed herein are aimed at presenting a device and method for analyzing a swing image using artificial intelligence.
또한, 본 명세서에서 개시되는 실시예들은, 스윙영상 분석 결과를 토대로 드릴영상을 제공함으로써 골퍼의 스윙 실력을 향상시킬 수 있도록 하는 장치 및 방법을 제시하는데 목적이 있다.In addition, the embodiments disclosed herein are intended to provide an apparatus and method for improving a golfer's swing ability by providing a drill image based on a swing image analysis result.
또한, 본 명세서에서 개시되는 실시예들은, 스윙영상 분석 결과를 토대로 미션을 제공함으로써 골퍼의 스윙 실력을 향상시킬 수 있도록 하는 장치 및 방법을 제시하는데 목적이 있다.In addition, the embodiments disclosed herein are aimed at providing a device and method for improving a golfer's swing ability by providing a mission based on a swing image analysis result.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 명세서에 기재된 일 실시예에 따르면, 스윙 분석 장치로서, 골퍼의 모습을 촬영한 스윙영상을 획득하기 위한 입출력부, 머신러닝을 수행하기 위한 프로그램이 저장되는 메모리, 및 상기 프로그램을 실행함으로써 스윙영상에 대한 머신러닝을 수행하는 제어부를 포함하며, 상기 제어부는, 학습된 머신러닝 모델을 이용하여 스윙영상으로부터 골퍼의 스윙오류를 검출하고, 상기 스윙오류에 기초하여 드릴영상을 추천하며, 상기 드릴영상에 대응되는 미션을 추천할 수 있다.As a technical means for achieving the above-mentioned technical problem, according to an embodiment described in this specification, as a swing analysis device, an input/output unit for acquiring a swing image of a golfer and a program for performing machine learning are provided. A memory to be stored, and a controller that executes machine learning on the swing image by executing the program, wherein the controller detects a golfer's swing error from the swing image using the learned machine learning model, and detects the swing error. Based on this, a drill image may be recommended, and a mission corresponding to the drill image may be recommended.
또한, 상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 명세서에 기재된 일 실시예에 따르면, 스윙 분석 장치가 골퍼의 스윙을 분석하는 방법으로서, 학습된 머신러닝 모델을 이용하여 스윙영상으로부터 골퍼의 스윙오류를 검출하는 단계, 상기 스윙오류에 기초하여 드릴영상을 추천하는 단계, 및 상기 드릴영상에 대응되는 미션을 추천하는 단계를 포함할 수 있다.In addition, as a technical means for achieving the above-described technical problem, according to an embodiment described in this specification, as a method for a swing analysis device to analyze a golfer's swing, a golfer's swing image from a swing image using a learned machine learning model. The method may include detecting a swing error, recommending a drill image based on the swing error, and recommending a mission corresponding to the drill image.
전술한 과제 해결 수단 중 하나에 의하면, 스윙 분석 장치 및 스윙 분석 방법을 제시할 수 있다.According to one of the above-described problem solving means, it is possible to present a swing analysis device and a swing analysis method.
전술한 과제 해결 수단 중 하나에 의하면, 인공지능을 이용하여 스윙영상을 분석하는 장치 및 방법을 제시할 수 있다.According to one of the above-described problem solving means, it is possible to present a device and method for analyzing a swing image using artificial intelligence.
전술한 과제 해결 수단 중 하나에 의하면, 스윙영상 분석 결과를 토대로 드릴영상을 제공함으로써 골퍼의 스윙 실력을 향상시킬 수 있도록 하는 장치 및 방법을 제시할 수 있다.According to one of the above-described problem solving means, it is possible to propose an apparatus and method for improving a golfer's swing ability by providing a drill image based on a swing image analysis result.
전술한 과제 해결 수단 중 하나에 의하면, 스윙영상 분석 결과를 토대로 미션을 제공함으로써 골퍼의 스윙 실력을 향상시킬 수 있도록 하는 장치 및 방법을 제시할 수 있다.According to one of the above-described problem solving means, it is possible to propose an apparatus and method for improving a golfer's swing ability by providing a mission based on a swing image analysis result.
개시되는 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 개시되는 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable from the disclosed embodiments are not limited to those mentioned above, and other effects not mentioned are clear to those skilled in the art from the description below to which the disclosed embodiments belong. will be understandable.
도 1은 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치를 설명하기 위한 구성도이다.1 is a configuration diagram for explaining a swing analysis device according to an embodiment disclosed herein.
도 2 내지 도 3은 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치를 설명하기 위한 블록도이다.2 and 3 are block diagrams for explaining a swing analysis device according to an embodiment disclosed herein.
도 4는 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치를 설명하기 위한 예시도이다. 4 is an exemplary view for explaining a swing analysis device according to an embodiment disclosed herein.
도 5는 본 명세서에 개시된 일 실시예에 따른 스윙 분석 방법을 설명하기 위한 순서도이다.5 is a flowchart illustrating a swing analysis method according to an embodiment disclosed herein.
아래에서는 첨부한 도면을 참조하여 다양한 실시예들을 상세히 설명한다. 아래에서 설명되는 실시예들은 여러 가지 상이한 형태로 변형되어 실시될 수도 있다. 실시예들의 특징을 보다 명확히 설명하기 위하여, 이하의 실시예들이 속하는 기술분야에서 통상의 지식을 가진 자에게 널리 알려져 있는 사항들에 관해서 자세한 설명은 생략하였다. 그리고, 도면에서 실시예들의 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한 이후의 설명에서, 동일한 구성 요소들은 비록 그들이 상이한 도면들에 도시되어 있더라도 동일한 도면 부호들에 의해 지시될 수 있다.Hereinafter, various embodiments will be described in detail with reference to the accompanying drawings. Embodiments described below may be modified and implemented in various different forms. In order to more clearly describe the characteristics of the embodiments, detailed descriptions of matters widely known to those skilled in the art to which the following embodiments belong are omitted. And, in the drawings, parts irrelevant to the description of the embodiments are omitted, and similar reference numerals are attached to similar parts throughout the specification. Also in the following description, like components may be indicated by like reference numerals even though they are shown in different drawings.
명세서 전체에서, 어떤 구성이 다른 구성과 "연결"되어 있다고 할 때, 이는 '직접적으로 연결'되어 있는 경우뿐 아니라, '그 중간에 다른 구성을 사이에 두고 연결'되어 있는 경우도 포함한다. 또한, 어떤 구성이 어떤 구성을 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한, 그 외 다른 구성을 제외하는 것이 아니라 다른 구성들을 더 포함할 수도 있음을 의미한다.Throughout the specification, when a component is said to be “connected” to another component, this includes not only the case of being “directly connected” but also the case of being “connected with another component intervening therebetween”. In addition, when a certain component "includes" a certain component, this means that other components may be further included without excluding other components unless otherwise specified.
이하 첨부된 도면을 참고하여 실시예들을 상세히 설명하기로 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.
도 1은 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치를 설명하기 위한 구성도이며, 도 2 내지 도 3은 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치를 설명하기 위한 블록도이다.1 is a configuration diagram for explaining a swing analysis device according to an embodiment disclosed herein, and FIGS. 2 and 3 are block diagrams for explaining a swing analysis device according to an embodiment disclosed herein.
스윙 분석 장치(100)는 골퍼의 스윙 모습을 촬영한 스윙영상을 획득하여 분석하고 그에 따른 드릴영상 및 미션을 추천한다.The swing analysis device 100 acquires and analyzes a swing image of a golfer's swing, and recommends a drill image and mission based on the obtained swing image.
이러한 스윙 분석 장치(100)는 사용자단말 또는 서버-클라이언트 시스템 중 어느 하나의 형태로 구현될 수 있으며, 서버로 구현될 경우, 스윙 분석 장치(100)를 구성하는 구성부는 물리적으로 분리된 복수의 서버에서 수행되거나 하나의 서버에서 수행될 수 있다.The swing analysis device 100 may be implemented in any form of a user terminal or a server-client system, and when implemented as a server, components constituting the swing analysis device 100 are physically separated from a plurality of servers. or can be performed on a single server.
일 실시예에 따르면 도 1에서 도시된 바와 같이, 스윙 분석 장치(100)는 서버-클라이언트 시스템으로 구현될 수 있으며, 이를 위해 사용자단말(10) 및 서버(20)를 포함하며 사용자단말(10) 및 서버(20)는 네트워크(N)를 통해 통신할 수 있다.According to one embodiment, as shown in FIG. 1, the swing analysis device 100 may be implemented as a server-client system, and includes a user terminal 10 and a server 20 for this purpose, and the user terminal 10 and server 20 may communicate over network N.
사용자단말(10)은 네트워크(N)를 통해 원격지의 서버에 접속하거나, 타 단말 및 서버와 연결 가능한 컴퓨터나 휴대용 단말기, 텔레비전, 웨어러블 디바이스(Wearable Device) 등으로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop)등을 포함하고, 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), GSM(Global System for Mobile communications), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet), 스마트폰(Smart Phone), 모바일 WiMAX(Mobile Worldwide Interoperability for Microwave Access) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 또한, 텔레비전은 IPTV(Internet Protocol Television), 인터넷 TV(Internet Television), 지상파 TV, 케이블 TV 등을 포함할 수 있다. 나아가 웨어러블 디바이스는 예를 들어, 시계, 안경, 액세서리, 의복, 신발 등 인체에 직접 착용 가능한 타입의 정보처리장치로서, 직접 또는 다른 정보처리장치를 통해 네트워크를 경유하여 원격지의 서버에 접속하거나 타 단말과 연결될 수 있다.The user terminal 10 may be implemented as a computer, portable terminal, television, wearable device, etc. capable of accessing a remote server through a network N or connecting to other terminals and servers. Here, the computer includes, for example, a laptop, desktop, or laptop equipped with a web browser, and the portable terminal is, for example, a wireless communication device that ensures portability and mobility. , PCS(Personal Communication System), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), GSM(Global System for Mobile communications), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet), Smart Phone, Mobile WiMAX (Mobile Worldwide Interoperability for Microwave Access), etc. (Handheld)-based wireless communication device may be included. In addition, television may include IPTV (Internet Protocol Television), Internet TV (Internet Television), terrestrial TV, cable TV, and the like. Furthermore, a wearable device is a type of information processing device that can be worn directly on the human body, such as, for example, a watch, glasses, accessories, clothes, shoes, etc. can be connected with
서버(20)는 골퍼와의 인터랙션을 위한 애플리케이션이나 웹브라우저가 설치된 사용자단말(10)과 네트워크를 통해 통신이 가능한 컴퓨터로 구현되거나 클라우드 컴퓨팅 서버로 구현될 수 있다. 또한, 서버(20)는 데이터를 저장할 수 있는 저장장치를 포함하거나 제3서버를 통해 데이터를 저장할 수 있다.The server 20 may be implemented as a computer capable of communicating with the user terminal 10 on which an application for interaction with a golfer or a web browser is installed and a network, or implemented as a cloud computing server. In addition, the server 20 may include a storage device capable of storing data or may store data through a third server.
추가로 스윙 분석 장치(100)는 키오스크(미도시)를 더 포함할 수 있다. 키오스크(미도시)는 네트워크(N)를 통해 서버(20)와 통신할 수 있다.Additionally, the swing analysis device 100 may further include a kiosk (not shown). A kiosk (not shown) may communicate with the server 20 via a network N.
이러한 키오스크(미도시)는 실시예에 따르면, 추천된 미션에 관한 정보를 제공하며, 미션의 수행 여부, 미션의 성공 여부를 판단하고, 그에 따라 골퍼의 레벨을 상승시키고 보상을 제공할 수 있다. 또한 키오스크(미도시)는 스윙영상을 분석한 스윙오류를 출력할 수 있으며, 또한 감지된 골프공 또는 골프클럽의 움직임을 분석한 볼 데이터(예를 들어 스핀값, 비거리 등)를 출력하거나, 또는 골퍼가 사용한 골프 클럽에 관한 클럽 데이터(예를 들어 골프 클럽의 종류 등)를 출력할 수 있다.According to an embodiment, such a kiosk (not shown) may provide information on a recommended mission, determine whether or not the mission has been performed, whether the mission is successful, increase the golfer's level, and provide a reward accordingly. In addition, the kiosk (not shown) may output a swing error obtained by analyzing a swing image, and also output ball data (eg, spin value, flight distance, etc.) obtained by analyzing the movement of a detected golf ball or golf club, or Club data (for example, the type of golf club, etc.) related to the golf club used by the golfer may be output.
이러한 스윙 분석 장치(100)는 도 2에서 도시된 바와 같이, 입출력부(210), 제어부(220), 통신부(230) 및 메모리(240)를 포함할 수 있다.As shown in FIG. 2 , the swing analysis device 100 may include an input/output unit 210, a control unit 220, a communication unit 230, and a memory 240.
입출력부(210)는 골퍼로부터 입력을 수신하기 위한 입력부와, 작업의 수행 결과 또는 스윙 분석 장치(100)의 상태 등의 정보를 표시하기 위한 출력부를 포함할 수 있다. 예를 들어, 입출력부(210)는 골퍼 입력을 수신하는 조작 패널(operation panel) 및 화면을 표시하는 디스플레이 패널(display panel) 등을 포함할 수 있다.The input/output unit 210 may include an input unit for receiving an input from a golfer and an output unit for displaying information such as a work result or a state of the swing analysis device 100 . For example, the input/output unit 210 may include an operation panel for receiving a golfer's input and a display panel for displaying a screen.
구체적으로, 입력부는 키보드, 물리 버튼, 터치 스크린, 카메라 또는 마이크 등과 같이 다양한 형태의 사용자 입력을 수신할 수 있는 장치들을 포함할 수 있다. 또한, 출력부는 디스플레이 패널 또는 스피커 등을 포함할 수 있다. 다만, 이에 한정되지 않고 입출력부(210)는 다양한 입출력을 지원하는 구성을 포함할 수 있다.Specifically, the input unit may include devices capable of receiving various types of user inputs, such as a keyboard, a physical button, a touch screen, a camera, or a microphone. Also, the output unit may include a display panel or a speaker. However, the input/output unit 210 is not limited thereto and may include a configuration supporting various input/output.
따라서 일 실시예에 따르면, 입력부로서 카메라에 의해 골퍼의 스윙 모습이 촬영되면, 촬영된 스윙영상을 분석함에 따라 추천되는 드릴영상, 또는 미션을 출력부가 출력할 수 있다.Accordingly, according to an embodiment, when a golfer's swing is captured by a camera as an input unit, the output unit may output a recommended drill image or mission by analyzing the captured swing image.
한편 제어부(220)는 스윙 분석 장치(100)의 전체적인 동작을 제어하며, CPU, GPU 등과 같은 프로세서를 포함할 수 있다. 제어부(220)는 입출력부(210)를 통해 수신한 사용자 입력에 대응되는 동작을 수행하도록 스윙 분석 장치(100)에 포함된 다른 구성들을 제어할 수 있다.Meanwhile, the control unit 220 controls the overall operation of the swing analysis device 100, and may include a processor such as a CPU or GPU. The control unit 220 may control other components included in the swing analysis device 100 to perform an operation corresponding to a user input received through the input/output unit 210 .
예를 들어, 제어부(220)는 메모리(240)에 저장된 프로그램을 실행시키거나, 메모리(240)에 저장된 파일을 읽어오거나, 새로운 파일을 메모리(240)에 저장할 수도 있다.For example, the controller 220 may execute a program stored in the memory 240, read a file stored in the memory 240, or store a new file in the memory 240.
제어부(220)에 관한 동작은 도 4를 참조하여 보다 상세히 후술되며, 도 4는 본 명세서에 개시된 일 실시예에 따른 스윙 분석 장치(100)를 설명하기 위한 예시도이다.Operations of the control unit 220 will be described in more detail with reference to FIG. 4 , and FIG. 4 is an exemplary diagram for explaining the swing analysis device 100 according to an embodiment disclosed herein.
통신부(230)는 다른 디바이스 또는 네트워크와 유무선 통신을 수행할 수 있다. 이를 위해, 통신부(230)는 다양한 유무선 통신 방법 중 적어도 하나를 지원하는 통신 모듈을 포함할 수 있다. 예를 들어, 통신 모듈은 칩셋(chipset)의 형태로 구현될 수 있다.The communication unit 230 may perform wired/wireless communication with other devices or networks. To this end, the communication unit 230 may include a communication module supporting at least one of various wired/wireless communication methods. For example, the communication module may be implemented in the form of a chipset.
통신부(230)가 지원하는 무선 통신은, 예를 들어 Wi-Fi(Wireless Fidelity), Wi-Fi Direct, 블루투스(Bluetooth), UWB(Ultra Wide Band) 또는 NFC(Near Field Communication) 등일 수 있다. 또한, 통신부(230)가 지원하는 유선 통신은, 예를 들어 USB 또는 HDMI(High Definition Multimedia Interface) 등일 수 있다.The wireless communication supported by the communication unit 230 may be, for example, Wireless Fidelity (Wi-Fi), Wi-Fi Direct, Bluetooth, Ultra Wide Band (UWB), or Near Field Communication (NFC). In addition, wired communication supported by the communication unit 230 may be, for example, USB or High Definition Multimedia Interface (HDMI).
메모리(240)에는 파일, 어플리케이션 및 프로그램 등과 같은 다양한 종류의 데이터가 설치 및 저장될 수 있다. 제어부(220)는 메모리(240)에 저장된 데이터에 접근하여 이를 이용하거나, 또는 새로운 데이터를 메모리(240)에 저장할 수도 있다. 또한, 제어부(220)는 메모리(240)에 설치된 프로그램을 실행할 수도 있다. 도 2를 참조하면, 예를 들어 메모리(240)에는 스윙 분석 방법을 수행하기 위한 프로그램이 설치될 수 있으며, 또는 머신러닝을 수행하기 위한 프로그램이 설치되어 있을 수 있고, 또는 학습된 머신러닝 모델 프로그램이 설치될 수 있다.Various types of data such as files, applications, and programs may be installed and stored in the memory 240 . The controller 220 may access and use data stored in the memory 240 or may store new data in the memory 240 . Also, the controller 220 may execute a program installed in the memory 240 . 2, for example, a program for performing a swing analysis method may be installed in the memory 240, or a program for performing machine learning may be installed, or a learned machine learning model program. can be installed.
일 실시예에 따르면, 입출력부(210)를 통해 골퍼로부터 스윙 자세 분석을 요청하는 입력을 수신하면, 제어부(220)는 메모리(240)에 저장된 스윙 분석 방법을 위한 프로그램을 실행시킬 수 있다.According to one embodiment, upon receiving an input requesting a swing posture analysis from a golfer through the input/output unit 210, the controller 220 may execute a program for a swing analysis method stored in the memory 240.
한편 도 3을 참조하면, 제어부(220)는 전처리부(310), 오류검출부(320), 드릴추천부(330) 및 미션추천부(340)를 포함할 수 있다.Meanwhile, referring to FIG. 3 , the control unit 220 may include a pre-processing unit 310, an error detection unit 320, a drill recommendation unit 330, and a mission recommendation unit 340.
일 실시예에 따른 전처리부(310)는, 스윙영상에서의 골퍼의 자세 스윙오류를 추출하기 위해 스윙영상을 획득하고, 획득된 스윙영상에 관한 전처리를 수행할 수 있다.The pre-processing unit 310 according to an embodiment may acquire a swing image in order to extract a swing error of a golfer's posture from the swing image, and may perform pre-processing on the obtained swing image.
예를 들어 전처리부(310)는 입출력부(110)를 통해 스윙영상을 획득할 수 있다.For example, the pre-processing unit 310 may obtain a swing image through the input/output unit 110 .
또한 예를 들어 전처리부(310)는 스윙영상의 밝기, 해상도, 사이즈 등을 보정함으로써 스윙영상에 대한 전처리를 수행할 수 있다. 골프 플레이가 야외에서 진행되는 경우 일조량 등에 따라 스윙영상의 밝기, 해상도 등이 촬영할 때마다 달라질 수 있고 또한 실내 스크린 골프에서 골프 플레이가 진행되는 경우 조명 밝기, 또는 촬영기기 등으로 인해 스윙영상의 밝기, 해상도, 사이즈 등이 스크린 골프 시스템 별로 달라질 수 있다. 이러한 현실을 반영하여, 학습된 머신러닝 모델이 효과적으로 결과값을 출력할 수 있도록 스윙영상에 대한 전처리를 수행할 수 있다.Also, for example, the pre-processing unit 310 may perform pre-processing on the swing image by correcting brightness, resolution, size, etc. of the swing image. When golf play is played outdoors, the brightness and resolution of the swing video may vary depending on the amount of sunlight, etc. Resolution, size, etc. may vary for each screen golf system. Reflecting this reality, it is possible to perform pre-processing on the swing image so that the learned machine learning model can effectively output the result value.
또한 예를 들어 전처리부(310)는 스윙영상에서 골퍼가 포함된 영역을 추출함으로써 전처리를 수행할 수 있다. 골퍼가 스윙하는 모습이 촬영될 때 골퍼 이외의 사람 또는 지형지물이 촬영되는 경우가 있어 촬영된 영상 내에서 분석의 대상이 되는 영역을 스윙영상으로서 추출할 수 있다.Also, for example, the pre-processing unit 310 may perform pre-processing by extracting a region including a golfer from a swing image. When the golfer's swing is photographed, a person or a feature other than the golfer may be photographed. Therefore, a region to be analyzed can be extracted as a swing image in the photographed image.
이를 위해 전처리부(310)는 머신러닝 모델을 이용할 수 있으며, 예를 들어, YOLO(You Only Look Once)를 이용하여 스윙영상 내 객체에 바운딩박스를 설정하고 바운딩박스 내의 영상을 추출해낼 수 있으며, 또는 골프클럽 등의 특징점을 학습시킨 딥러닝 모델을 이용하여 객체를 탐지해낼 수 있다.To this end, the pre-processing unit 310 may use a machine learning model. For example, using YOLO (You Only Look Once), a bounding box may be set for an object in a swing image and an image within the bounding box may be extracted, Alternatively, the object may be detected using a deep learning model in which feature points such as golf clubs are learned.
한편 오류검출부(320)는, 스윙영상을 분석하여 스윙오류를 검출할 수 있다. 이때 오류검출부(320)는 전처리된 스윙영상을 분석하여 스윙오류를 검출할 수 있다.Meanwhile, the error detection unit 320 may detect a swing error by analyzing the swing image. At this time, the error detection unit 320 may detect a swing error by analyzing the preprocessed swing image.
오류검출부(320)는 학습된 머신러닝 모델을 이용하여 스윙영상을 입력하고 입력된 스윙영상에 관한 오류를 획득할 수 있다.The error detection unit 320 may input a swing image using the learned machine learning model and obtain an error related to the input swing image.
일 실시예에 따르면 오류검출부(320)는 스윙영상을 입력하였을 때 스윙오류를 출력하도록 머신러닝 모델을 학습시킬 수 있다. According to an embodiment, the error detection unit 320 may train a machine learning model to output a swing error when a swing image is input.
예를 들어 스윙영상을 입력하였을 때, 골퍼가 스윙할 때 갖고 있는 자세의 문제점을 나타내는 스윙오류를 출력하도록 머신러닝 모델을 학습시킬 수 있다.For example, when a swing image is input, a machine learning model may be trained to output a swing error indicating a problem in a golfer's posture when swinging.
또 다른 실시예에 따르면 오류검출부(320)는 스윙영상을 입력하였을 때 기준선이 마킹된 기준영상을 출력하도록 머신러닝 모델을 학습시킬 수 있다.According to another embodiment, the error detection unit 320 may train a machine learning model to output a reference image marked with a reference line when a swing image is input.
예를 들어 스윙영상을 입력하였을 때 기준영상을 출력하도록 머신러닝 모델을 학습시키되, 기준선이 표시된 기준영상을 웹을 통해 크롤링하여 수집하고, 기준선을 삭제한 영상을 스윙영상으로서 입력하였을 때 해당 기준영상이 출력되도록 머신러닝 모델을 학습시킬 수 있다.For example, a machine learning model is trained to output a reference image when a swing image is input, and when a reference image with a reference line is collected by crawling through the web and an image from which the reference line is deleted is input as a swing image, the reference image is displayed. A machine learning model can be trained to output this.
또한 예를 들어 스윙영상을 입력하였을 때, 스윙영상 내에서 골퍼의 스켈레톤을 추출하도록 머신러닝 모델을 학습시킬 수 있으며, 그에 따라 오류검출부(320)는 골퍼의 관절 및 신체부위 지점을 추출하고, 식별된 관절 또는 신체부위를 잇는 기준선을 스윙영상 상에 표시할 수 있다. 그에 따라 오류검출부(320)는, 골퍼가 갖고 있는 자세의 문제점을 파악하기 위한 기준선이 표시된 기준영상을 출력할 수 있다.In addition, for example, when a swing image is input, a machine learning model may be trained to extract a golfer's skeleton from the swing image, and accordingly, the error detection unit 320 extracts and identifies the golfer's joints and body parts. Reference lines connecting the affected joints or body parts can be displayed on the swing image. Accordingly, the error detection unit 320 may output a reference image in which a reference line is displayed for identifying problems in the golfer's posture.
관련하여 도 4의 (a)에서 도시된 바와 같이, 스윙영상(400)을 입력하였을 때 도 4의 (b)에서 도시된 바와 같이 오류검출부(320)는, 양 어깨를 잇는 기준선(411) 및 정수리와 골반을 잇는 기준선(410) 각각이 표시된 기준영상(401)을 출력할 수 있다.In relation to this, as shown in (a) of FIG. 4, when the swing image 400 is input, the error detection unit 320, as shown in (b) of FIG. A reference image 401 in which each reference line 410 connecting the crown and the pelvis is displayed may be output.
또한 오류검출부(320)는 기준선을 토대로 골퍼가 갖고 있는 스윙오류를 분석할 수 있으며, 복수의 기준선 간의 각도, 또는 기준선 간의 거리, 기준선 간의 상대적인 위치 등을 고려하여 나타날 수 있는 스윙오류를 결정할 수 있다. 예를 들어 오류검출부(320)는 기준선(410) 및 기준선(411) 간의 각도를 통해 얼리 익스텐션(early extension) 현상이 스윙오류로서 발생하였음을 분석해낼 수 있다.In addition, the error detection unit 320 may analyze swing errors of the golfer based on the reference lines, and may determine possible swing errors by considering angles between a plurality of reference lines, distances between reference lines, and relative positions between reference lines. . For example, the error detection unit 320 may analyze that an early extension phenomenon has occurred as a swing error through an angle between the reference line 410 and the reference line 411 .
오류검출부(320)는 스윙영상에 관한 스윙오류를 출력하면서 도 4에서 도시된 바와 같이, 스윙영상 상에 기준선(410, 411)이 표시된 기준영상(401)을 제공할 수 있다. 기준영상(401)을 참조하여 골퍼는 스윙오류가 도출된 근거를 확인할 수 있다.The error detection unit 320 may provide a reference image 401 in which reference lines 410 and 411 are displayed on the swing image, as shown in FIG. 4 , while outputting a swing error related to the swing image. Referring to the reference image 401, the golfer can check the basis for the swing error.
또한 오류검출부(320)는 기준영상에 대한 골퍼의 피드백을 획득할 수 있으며, 피드백을 획득하면 피드백을 토대로 머신러닝 모델을 다시 학습시킬 수 있다. In addition, the error detection unit 320 may obtain golfer's feedback on the reference image, and when the feedback is obtained, a machine learning model may be trained again based on the feedback.
예를 들어 골퍼는 기준영상(401)에서의 기준선(410, 411)이 잘못 표시되었다고 판단하고 기준선을 정정할 수 있으며, 정정된 기준선이 반영된 기준영상을 출력할 수 있도록 오류검출부(320)는 머신러닝 모델을 다시 학습시킬 수 있다.For example, the golfer may determine that the reference lines 410 and 411 in the reference image 401 are incorrectly displayed and correct the reference line, and the error detection unit 320 may output the reference image reflecting the corrected reference line. You can retrain the running model.
한편 오류검출부(320)는 스윙영상으로부터 하나 이상의 스윙오류를 추출해낼 수 있다.Meanwhile, the error detection unit 320 may extract one or more swing errors from the swing image.
즉 오류검출부(320)는 스윙영상으로부터 복수개의 스윙오류를 추출할 수 있으며 복수 개의 스윙오류를 추출하면 추출된 스윙오류 중에서 하나의 스윙오류를 선택할 수 있다.That is, the error detection unit 320 may extract a plurality of swing errors from the swing image, and when the plurality of swing errors are extracted, one swing error may be selected from among the extracted swing errors.
반면 스윙영상으로부터 하나의 스윙오류를 추출한다면 오류검출부(320)는 하나의 오류를 드릴영상 추천을 위한 오류로 이용할 수 있도록 드릴추천부(330)에 전달할 수 있다.On the other hand, if one swing error is extracted from the swing image, the error detection unit 320 may transmit the one error to the drill recommendation unit 330 so that it can be used as an error for recommending a drill image.
이때 이하에서 설명의 편의상, 스윙영상으로부터 추출된 스윙오류를 '제1스윙오류', 제1스윙오류 중에서 드릴영상의 추천을 위해 선별된 스윙오류를 '제2스윙오류'라 칭한다.Hereinafter, for convenience of description, the swing error extracted from the swing image is referred to as a 'first swing error', and the swing error selected from among the first swing errors for recommending a drill image is referred to as a 'second swing error'.
일 실시예에 따르면 오류검출부(320)는 골퍼의 과거 스윙영상으로부터 추출된 스윙오류에 기초하여 하나 이상의 제1스윙오류 중에서 제2스윙오류를 선택할 수 있다.According to an embodiment, the error detection unit 320 may select a second swing error from among one or more first swing errors based on swing errors extracted from past swing images of the golfer.
예를 들어, 현재의 스윙영상으로부터 추출된 제1스윙오류 중에서, 과거 스윙영상으로부터 추출된 제1스윙오류를 제외한 나머지 제1스윙오류 중에서 하나를 제2스윙오류로 선택할 수 있다. 즉, 오류검출부(320)가 현재의 스윙영상에서 제1스윙오류로서, 슬라이드(slide) 및 스웨이(sway) 현상을 진단하였을 때, 골퍼의 과거의 스윙영상에서 제1스윙오류로서 스웨이를 추출한 적이 있다면 스웨이를 제외한 슬라이드를 제2스윙오류로서 결정할 수 있다.For example, among the first swing errors extracted from the current swing image, one of the remaining first swing errors excluding the first swing errors extracted from the past swing image may be selected as the second swing error. That is, when the error detection unit 320 diagnoses the slide and sway phenomena as the first swing error in the current swing image, the sway has been extracted as the first swing error in the golfer's past swing image. If so, the slide excluding the sway can be determined as the second swing error.
또는 예를 들어, 현재의 스윙영상으로부터 추출된 제1스윙오류 중에서, 과거 스윙영상으로부터 추출된 횟수를 카운팅하여 추출횟수에 따라 제1스윙오류를 정렬하고, 가장 많은 횟수로 추출된 제1스윙오류를 제2스윙오류로서 선택할 수 있다. 오류검출부(320)가 현재의 스윙영상에서 제1스윙오류로서, 역피봇(reverse pivot) 및 슬라이드 현상을 진단하였을 때, 골퍼의 과거 스윙영상 5개로부터 역피봇 현상을 2회, 슬라이드 현상을 5회 추출하면 슬라이드를 제2스윙오류로서 결정할 수 있다. 이때, 제2스윙오류의 선택을 위해 선택되는 과거 스윙영상은, 드릴영상의 추천에 이용되지 않았던 스윙영상일 수 있다.Alternatively, for example, among the first swing errors extracted from the current swing image, the number of times extracted from the past swing image is counted, the first swing errors are sorted according to the number of extractions, and the first swing error extracted with the highest number of times can be selected as the second swing error. When the error detection unit 320 diagnoses a reverse pivot and a slide phenomenon as the first swing error in the current swing image, the reverse pivot phenomenon 2 times and the slide phenomenon 5 times from 5 past swing images of the golfer If extracted twice, the slide can be determined as the second swing error. At this time, the past swing image selected for selection of the second swing error may be a swing image that was not used for recommendation of the drill image.
또 다른 실시예에 따르면 오류검출부(320)는 골퍼의 과거 미션 수행정보에 기초하여 하나 이상의 제1스윙오류 중에서 제2스윙오류를 선택할 수 있다. 이때 과거 미션수행정보는 과거, 골퍼에게 할당된 미션에 대한 골퍼의 반응에 관한 정보로서, 예를 들어 미션 달성 여부, 미션 수행 시 수행의 정도 등에 관한 정보를 포함할 수 있다.According to another embodiment, the error detection unit 320 may select a second swing error from one or more first swing errors based on the golfer's past mission performance information. At this time, the past mission performance information is information about the golfer's reaction to the mission assigned to the golfer in the past, and may include, for example, information about whether or not the mission was accomplished, the degree of performance when the mission was performed, and the like.
따라서 예를 들어, 골퍼가 과거 할당받은 미션을 수행하였을 때 미션 수행에 관한 정보를, 오류검출부(320)는 과거 미션 수행정보로서 저장하고, 제1스윙오류 중에서, 과거 미션 수행정보를 참조하여 과거 골퍼가 달성했던 미션과 관련된 스윙오류를 제외한 나머지 제1스윙오류 중에서 하나를 제2스윙오류를 선택할 수 있다. 오류검출부(320)는 골퍼가 과거 미션으로서 스쿼트 운동 미션을 받고 해당 미션을 수행함에 따라 과거 미션 수행정보로서 '스쿼트 운동 미션 완료'가 저장되어 있다면, 스쿼트 운동과 관련된 미션이 매칭된 제1스윙오류를 제외한 나머지 제1스윙오류 중에서 제2스윙오류를 선택할 수 있다. Therefore, for example, when a golfer performed a mission assigned in the past, the error detection unit 320 stores mission performance information as past mission performance information, and among the first swing errors, by referring to the past mission performance information, the past mission performance information is stored. A second swing error may be selected as one of the first swing errors other than the swing errors related to the mission achieved by the golfer. The error detection unit 320 receives a squat exercise mission as a past mission and if 'squat exercise mission complete' is stored as past mission performance information as the golfer performs the mission, the first swing error in which the mission related to the squat exercise is matched It is possible to select the second swing error from among the remaining first swing errors except for .
한편 오류검출부(320)는 제2스윙오류에 기초하여 제3스윙오류를 결정할 수 있다. 이때 제3스윙오류는 골퍼가 갖고 있는 신체 문제점을 나타내는 정보로서, 예를 들어, 신체 부위별 유연성 부족, 신체 부위별 근력 부족, 신체 부위별 회전력 부족, 안정성 부족, 균형감 부족 등일 수 있다. Meanwhile, the error detection unit 320 may determine a third swing error based on the second swing error. In this case, the third swing error is information indicating a golfer's body problem, and may include, for example, lack of flexibility for each body part, lack of muscle strength for each body part, lack of rotational power for each body part, lack of stability, and lack of balance.
이를 위해 오류검출부(320)는 제2스윙오류의 원인이 되는 신체 문제점을 테이블로서 저장할 수 있다. 예를 들어, '스웨이'의 제2스윙오류에 대응하여 '골반 틀어짐' 및 '골반 유연성 부족'을 신체 문제점으로 저장해둘 수 있다.To this end, the error detection unit 320 may store body problems that cause the second swing error as a table. For example, 'pelvic distortion' and 'lack of pelvic flexibility' may be stored as body problems in response to the second swing error of 'sway'.
일 실시예에 따르면 오류검출부(320)는 제2스윙오류의 원인이 되는 신체 문제점을 골퍼에게 제공하고, 골퍼에 의해 선택된 문제점을 제3스윙오류로서 결정할 수 있다. 예를 들어, 제2스윙오류의 원인이 되는 '좌우 팔 불균형', '골반 틀어짐', '엉덩이 근육 부족'을 제공함에 따라 '엉덩이 근육 부족'을 선택받으면, 오류검출부(320)는 '엉덩이 근육 부족'을 제3스윙오류로서 결정할 수 있다.According to an embodiment, the error detection unit 320 may provide the golfer with a body problem that causes the second swing error, and determine the problem selected by the golfer as the third swing error. For example, when 'lack of hip muscles' is selected as 'left and right arm imbalance', 'pelvic distortion', and 'lack of hip muscles', which cause the second swing error, the error detection unit 320 detects 'hip muscles' Insufficient' can be determined as the third swing error.
또 다른 실시예로서 오류검출부(320)는 제2스윙오류의 원인이 되는 신체 문제점 중에서, 골퍼와 유사하다고 판단되는 타 골퍼에 의해 선택되었던 신체 문제점을 제3스윙오류로서 결정할 수 있다. 이때 골퍼와 유사한 타 골퍼는, 골퍼와 프로필(예를 들어 성별, 연령, 거주지 등)이 동일하거나, 골프 플레이 기간이 동일하거나, 또는 스윙영상의 분석이 요청되는 지리학적 위치(예를 들어 컨트리클럽명, 스크린골프 지점 등)가 동일한 골퍼일 수 있다. 따라서 예를 들어, 골퍼의 제2스윙오류의 원인으로서 매칭되는 신체 문제점이 '골반 틀어짐', '허리 유연성 부족'일 때, 골퍼와 연령대가 같은 타 골퍼에 의해 선택되었던 문제점이 '허리 유연성 부족'일 때, 오류검출부(320)는 '허리 유연성 부족'을 제3스윙오류로서 결정할 수 있다.As another embodiment, the error detection unit 320 may determine, as a third swing error, a body problem selected by another golfer determined to be similar to the golfer among body problems that cause the second swing error. At this time, other golfers similar to the golfer have the same profile as the golfer (for example, gender, age, place of residence, etc.), have the same golf playing period, or have a geographical location where analysis of swing images is requested (for example, country club name, screen golf location, etc.) may be the same golfer. Therefore, for example, when the matched body problems as the cause of the golfer's second swing error are 'pelvic distortion' and 'lack of back flexibility', the problem selected by other golfers of the same age as the golfer is 'lack of back flexibility' When , the error detection unit 320 may determine 'insufficient waist flexibility' as the third swing error.
상술된 바와 같이 오류검출부(320)는 제2스윙오류를 증폭함으로써 골퍼의 신체 문제점을 진단할 수 있다.As described above, the error detection unit 320 can diagnose the golfer's body problem by amplifying the second swing error.
그리고 드릴추천부(330)는 스윙오류에 대응되는 드릴영상을 추천할 수 있다.The drill recommendation unit 330 may recommend a drill image corresponding to the swing error.
이를 위해 드릴추천부(330)는 드릴영상을 저장할 수 있다. 이때, '드릴영상'은 골프 자세 교정을 위한 설명 또는 주의사항이나, 골프 자세 교정을 위한 운동에 관한 설명 등이 포함된 영상을 지칭하며, 드릴추천부(330)는 스윙 분석 장치(100)의 외부 서버인 제3서버에 게시된 영상을 크롤링(crawl)함으로써 드릴영상을 복수개 저장할 수 있다. 이때 제3서버는 복수 개의 영상을 저장하는 서버로서, 예를 들어 포털사이트 서버, OTT(Over The Top) 서버 등일 수 있다.To this end, the drill recommendation unit 330 may store a drill image. At this time, the 'drill image' refers to an image including explanations or precautions for golf posture correction, or descriptions of exercises for golf posture correction, and the drill recommendation unit 330 is the swing analysis device 100 A plurality of drill images may be stored by crawling the images posted on the third server, which is an external server. At this time, the third server is a server that stores a plurality of images, and may be, for example, a portal site server, an OTT (Over The Top) server, and the like.
또한 드릴추천부(330)는 드릴영상을 스윙오류에 매칭하여 저장할 수 있다.In addition, the drill recommendation unit 330 may match and store a drill image with a swing error.
일 실시예에 따르면, 드릴추천부(330)는 드릴영상이 어떤 스윙오류에 매칭되는 영상인지를 분석하고, 드릴영상을 해당 스윙오류에 매칭시켜 테이블로 저장할 수 있다.According to an embodiment, the drill recommendation unit 330 may analyze which swing error the drill image is matched with, match the drill image to the corresponding swing error, and store the drill image as a table.
이를 위해 드릴추천부(330)는 드릴영상으로서 수집된 영상의 제목, 또는 드릴영상에 포함된 프레임, 또는 드릴영상에 포함된 오디오를 분석함으로써 해당 영상이 어떤 스윙오류와 관련된 영상인지를 결정할 수 있다. 예를 들어 수집된 영상의 제목에 '슬라이드'가 포함된다면 해당 영상은 슬라이드를 교정하기 위한 영상으로 판단하고 드릴추천부(330)는 스윙오류로서 '슬라이드'에 해당 영상을 드릴영상으로서 저장할 수 있다. 또는 예를 들어 수집된 영상에 포함된 오디오로부터 '골반 틀어짐'이라는 멘트를 수집하면, 드릴추천부(330)는 스윙오류로서 '골반 틀어짐'에 해당 영상을 드릴영상으로서 저장할 수 있다.To this end, the drill recommendation unit 330 analyzes the title of the image collected as the drill image, the frame included in the drill image, or the audio included in the drill image to determine which swing error the corresponding image is related to. . For example, if 'slide' is included in the title of the collected image, the corresponding image is determined as an image for correcting the slide, and the drill recommendation unit 330 may store the corresponding image as a drill image in 'slide' as a swing error. . Alternatively, for example, if the word 'pelvis twist' is collected from the audio included in the collected image, the drill recommendation unit 330 may store the corresponding image as a drill image in 'pelvis twist' as a swing error.
그에 따라 오류검출부(320)로부터 골퍼의 스윙오류를 획득하면 스윙오류에 대응되는 드릴영상을 검색하여 출력할 수 있다.Accordingly, when a golfer's swing error is acquired from the error detection unit 320, a drill image corresponding to the swing error may be retrieved and output.
또 다른 실시예에 따르면 드릴추천부(330)는 스윙오류를 입력하였을 때 드릴영상을 출력할 수 있도록 머신러닝 모델을 학습시킬 수 있다. According to another embodiment, the drill recommendation unit 330 may train a machine learning model to output a drill image when a swing error is input.
그리고 오류검출부(320)로부터 골퍼의 스윙오류를 획득하면, 드릴추천부(330)는 학습된 머신러닝 모델을 이용하여 스윙오류를 입력함에 따라 추천될 드릴영상을 결정할 수 있다.In addition, when the golfer's swing error is obtained from the error detection unit 320, the drill recommendation unit 330 may determine a drill image to be recommended according to input of the swing error using the learned machine learning model.
상술된 바에 따라 출력이 결정된 드릴영상이 복수 개이면, 드릴추천부(330)는 추가로 복수개의 드릴영상 각각에 관한 드릴선호도를 연산하여 복수 개의 드릴영상을 정렬시켜 골퍼에게 제공할 수 있다. If there are a plurality of drill images whose output is determined as described above, the drill recommendation unit 330 may additionally calculate a drill preference for each of the plurality of drill images, align the plurality of drill images, and provide the drill images to the golfer.
'드릴선호도'는 드릴영상에 대한 골퍼의 선호도를 나타내는 점수이다.The 'drill preference' is a score representing a golfer's preference for a drill image.
일 실시예에 따르면 드릴선호도는 드릴영상을 수집할 때 결정될 수 있는데, 예를 들어, 드릴영상으로서 수집된 영상이 게시된 제3서버 플랫폼에서의 조회수, 추천수, 및 좋아요 수 중 적어도 하나에 기초하여 결정될 수 있으며, 예를 들어 조회수, 또는 추천수, 또는 좋아요 수에 비례하여 드릴선호도가 높아질 수 있다. 이를 통해 온라인에서 골퍼들에게 인기있는 영상을 제공해줄 수 있다.According to an embodiment, drill preference may be determined when collecting drill images. For example, based on at least one of the number of views, the number of recommendations, and the number of likes in a third server platform on which the collected drill images are posted. It may be determined, and for example, drill preference may increase in proportion to the number of views, recommendations, or likes. Through this, you can provide popular videos to golfers online.
또 다른 실시예에 따르면 드릴선호도는 드릴영상을 시청한 타 골퍼의 피드백에 따라 결정될 수 있다. According to another embodiment, drill preference may be determined according to feedback from other golfers who have watched drill images.
예를 들어, 드릴영상을 골퍼에게 제공하였을 때 조회된 횟수를 카운팅하여 조회수에 따라 해당 드릴영상의 드릴선호도를 산출할 수 있다. 또는 예를 들어, 드릴영상을 골퍼에게 제공하였을 때 시청 시간을 카운팅하여 시청 시간에 따라 해당 드릴영상의 드릴선호도를 산출할 수 있다. 또는 예를 들어 드릴영상을 골퍼에게 제공하였을 때 골퍼로부터 '좋아요'를 획득하거나 또는 타 골퍼로의 추천을 입력한 횟수를 카운팅하여 해당 드릴영상의 드릴선호도를 산출할 수 있다.For example, when a drill image is provided to a golfer, the drill preference of the corresponding drill image may be calculated according to the number of views by counting the number of views. Alternatively, for example, when a drill image is provided to a golfer, the viewing time may be counted, and the drill preference of the corresponding drill image may be calculated according to the viewing time. Alternatively, for example, when a drill image is provided to a golfer, the drill preference of the corresponding drill image may be calculated by counting the number of times 'likes' are obtained from the golfer or recommendations to other golfers are input.
또는 예를 들어, 드릴영상을 제공받은 골퍼의 스윙영상을, 해당 드릴영상을 제공한 이후 소정의 기간이 경과된 이후에 획득하고 분석함에 따라 도출된 스윙오류가, 제공했던 드릴영상과 무관한 것임이 판단되면, 해당 드릴영상으로 인해 골퍼의 자세가 교정되거나 스윙 스킬이 향상된 것으로 판단하고 드릴선호도를 높게 설정할 수 있다. 또는 예를 들어, 드릴영상을 제공하고 드릴영상에 매칭되는 미션을 제공하였을 때 미션 달성율에 따라 드릴선호도를 산출할 수 있으며, 예를 들어 미션 달성율이 높을수록 드릴선호도를 높게 산출할 수 있다.Or, for example, a swing error derived by acquiring and analyzing a swing image of a golfer who has been provided with a drill image after a predetermined period of time has elapsed since the provision of the drill image is irrelevant to the provided drill image If this is determined, it is determined that the posture of the golfer is corrected or the swing skill is improved due to the corresponding drill image, and the drill preference can be set high. Alternatively, for example, when a drill image is provided and a mission matched to the drill image is provided, the drill preference may be calculated according to the mission achievement rate. For example, the higher the mission achievement rate, the higher the drill preference.
상술된 바에 따라 드릴선호도가 산출됨에 따라 드릴추천부(330)는 드릴영상을 정렬하여 추천할 수 있는데, 이때, 소정의 조건이 만족되면 드릴영상 중에 일부를 추천하지 않을 수 있다. As the drill preference is calculated as described above, the drill recommendation unit 330 may arrange and recommend drill images. At this time, if a predetermined condition is satisfied, some of the drill images may not be recommended.
예를 들어, 소정의 조건으로서, 골퍼 계정에 등록된 골퍼의 사용자단말의 기종, 골퍼의 사용자단말의 이용요금제(예를 들어, 종량제인지 정액제인지 여부)에 관한 정보를 토대로, 정렬된 드릴영상 중에서, 소정 이상의 용량을 갖는 드릴영상은 제외시키고 나머지 드릴영상만을 제공할 수 있다. For example, as a predetermined condition, based on information about the model of the golfer's user terminal registered in the golfer's account and the usage fee plan (for example, whether it is a volume-based system or a flat-rate system) of the golfer's user terminal, among the drill images sorted , drill images having a predetermined capacity or more may be excluded and only the remaining drill images may be provided.
또는 예를 들어 소정의 조건으로서 골퍼 계정에 등록된 골퍼의 질병 기록에 기초하여, 정렬된 드릴영상 중에서 질병을 악화시킬 수 있는 드릴영상을 제외시키고 나머지 드릴영상을 제공할 수 있는데, 그에 따라 허리디스크가 있는 골퍼에게는, 허리를 꺾는 내용을 담는 드릴영상은 제외시킬 수 있다. 이때, 질병 기록을 악화시킬 수 있는 드릴영상인지 여부의 판단은, 소정 동작에 관한 드릴영상 수집 시 드릴영상에 달린 코멘트, 댓글, 드릴영상에 포함된 오디오, 이미지 등을 분석함으로써 해당 동작에 관한 내용이 담긴 드릴영상에 대해 긍정적인 질병(즉 영상 내 콘텐츠 관련 개선이 되는 질병), 및 부정적인 질병(즉 영상 내 콘텐츠 관련 악화되는 질병)을 분류하여, 해당 드릴영상에 매칭시켜 저장할 수 있다. 일 예로, 허리 근육을 강화시키는 드릴영상에서 동작 시연자가 오디오로 '허리 디스크가 있는 분들은 이 동작을 하지 마세요'라는 멘트를 하였음을 분석하면 해당 드릴영상을, 허리디스크가 있는 골퍼에게 제공될 드릴영상 중에서 제외시키고 추천할 수 있다.Alternatively, for example, based on the golfer's disease record registered in the golfer account as a predetermined condition, drill images that may aggravate the disease may be excluded from the aligned drill images and the remaining drill images may be provided. For a golfer with a limb, a drill video containing the contents of bending the waist can be excluded. At this time, the determination of whether the drill image may aggravate the disease record is determined by analyzing the comments, comments, audio, images, etc. included in the drill image when collecting the drill image for a predetermined motion, and the content related to the corresponding motion. For the drill image containing this, a positive disease (ie, a disease that improves related to the content in the image) and a negative disease (ie, a disease that worsens related to the content in the image) can be classified, matched to the corresponding drill image, and stored. For example, in a drill video that strengthens the back muscles, if the motion demonstrator made the audio comment, 'Do not do this motion for those with a herniated disc', the drill video to be provided to a golfer with a herniated disc You can exclude from the video and recommend it.
드릴선호도는 머신러닝 모델을 재학습시키는데 이용될 수 있으며, 예를 들어 드릴선호도에 따라 드릴영상을 정렬하고, 스윙오류를 입력하였을 때 정렬된 순서에 따라 소정의 순위 내의 드릴영상이 출력하도록 머신러닝 모델을 재학습시킬 수 있다.Drill preference can be used to relearn a machine learning model. For example, drill images are sorted according to drill preference, and when a swing error is input, machine learning outputs drill images within a predetermined rank according to the sorted order. The model can be retrained.
한편 미션추천부(340)는 드릴영상에 기초하여 미션을 추천할 수 있다.Meanwhile, the mission recommendation unit 340 may recommend a mission based on the drill image.
이때 미션은 골퍼로 하여금 소정의 행동을 수행하도록 요청하는 정보이며, 특정 동작 및 동작 횟수, 동작 수행 기간 등에 관한 정보를 포함할 수 있다. 또한 미션은 추가로, 예를 들어 하나 이상의 레벨이 매칭되어 저장될 수 있으며, 동작이 동일하더라도 레벨별로 동작 횟수 또는 동작 수행 기간이 달라짐에 따라 동작의 수행 강도가 달라지도록 할 수 있다. 따라서 같은 미션이라도 레벨이 높아지게 되면, 같은 신체부위를 단련시키더라도 횟수가 높아질 수 있으며, 예를 들어, '기본 스쿼트' 10회가 1레벨이라면 '기본 스쿼트' 20회가 2레벨로 설정될 수 있다.At this time, the mission is information requesting the golfer to perform a predetermined action, and may include information about a specific action, the number of actions, and an action execution period. In addition, the mission may be additionally stored, for example, one or more levels are matched, and even if the operation is the same, the strength of the operation may be changed according to the number of operations or operation duration for each level. Therefore, if the level of the same mission increases, the number of times may increase even if the same body part is trained. .
따라서, 예를 들어 미션추천부(340)는 '스쿼트' 동작을, 20회씩 3세트로, 2주 동안 수행하는 것을 미션으로 추천하거나, 1레벨의 스쿼트로서 기본 스쿼트를 20회씩 3세트로, 2주 동안 수행하는 것을 미션으로 추천할 수 있다. Therefore, for example, the mission recommendation unit 340 recommends performing the 'squat' operation in 3 sets of 20 times for 2 weeks as a mission, or as a level 1 squat, the basic squat in 3 sets of 20 times, 2 You can recommend a mission to do during the week.
이러한 미션은 스윙 분석 장치(100)에 기설정되어 있을 수 있으며 또는 웹을 통해 크롤링됨으로써 수집될 수 있다. 미션이 기설정되거나 수집됨으로써 저장될 때 미션별 레벨에 따라 강도가 달리 저장될 수 있다.These missions may be preset in the swing analysis device 100 or may be collected by crawling through the web. When a mission is stored by being preset or collected, intensity may be stored differently according to the level of each mission.
따라서 예를 들어 드릴영상에 미션이 매칭되어 테이블로서 저장될 수 있고, 이에 미션추천부(340)는 드릴추천부(330)에 의해 추천된 드릴영상에 매칭된 미션을 추천할 수 있다.Therefore, for example, missions may be matched with drill images and stored as a table, and thus the mission recommendation unit 340 may recommend missions matched with the drill images recommended by the drill recommendation unit 330 .
또는 예를 들어, 드릴영상을 입력하였을 때 미션을 출력하도록 학습된 머신러닝 모델을 이용하여, 미션추천부(340)는 드릴추천부(330)에 의해 추천된 드릴영상에 매칭된 미션을 추천할 수 있다. 따라서 드릴추천부(330)는 학습된 머신러닝 모델에 드릴영상을 입력함으로써 추천될 미션을 출력할 수 있다.Alternatively, for example, by using a machine learning model learned to output a mission when a drill image is input, the mission recommendation unit 340 may recommend a mission matched to the drill image recommended by the drill recommendation unit 330. can Accordingly, the drill recommendation unit 330 may output a recommended mission by inputting a drill image to the learned machine learning model.
미션추천부(340)는 상술된 바에 따라 추천이 결정된 복수개의 미션 각각에 관한 미션선호도를 연산하고, 미션선호도가 높은 순서로 복수 개의 미션을 정렬시켜 골퍼에게 제공할 수 있다.The mission recommendation unit 340 may calculate the mission preference for each of the plurality of missions for which the recommendation is determined as described above, arrange the plurality of missions in the order of highest mission preference, and provide the golfer with the mission preference.
이때 미션선호도는 골퍼에게 과거 추천했던 미션에 기초하여 산출될 수 있으며, 미션추천부(340)는 해당 미션이 과거 추천했던 미션과 관련된 정도에 따라 미션선호도를 산출할 수 있다. 예를 들어, 해당 미션이, 과거 추천되었던 미션과 관련된 경우 미션선호도를 낮게 산출하고 과거 추천되었던 미션과 무관하면 미션선호도를 높게 산출할 수 있다. 이에 예를 들어 미션이 하체 훈련과 관련되고, 과거 추천되었던 미션이 상체 훈련 또는 유연성과 관련된 경우 해당 미션에 대한 미션선호도를 높게 설정할 수 있다.At this time, the mission preference may be calculated based on the mission recommended to the golfer in the past, and the mission recommendation unit 340 may calculate the mission preference according to the degree in which the corresponding mission is related to the previously recommended mission. For example, mission preference may be calculated low when the corresponding mission is related to a mission recommended in the past, and mission preference may be calculated high if the corresponding mission is unrelated to a mission recommended in the past. Accordingly, for example, if a mission is related to lower body training and a previously recommended mission is related to upper body training or flexibility, the mission preference for the corresponding mission may be set high.
또한 미션선호도는 골퍼 또는 타 골퍼에 의해 선택 횟수에 비례하여 산출될 수 있으며, 미션추천부(204)는 해당 미션과 관련된 미션이 골퍼에 의해 선택된 횟수, 또는 골퍼와 같은 드릴영상이 추천된 타 골퍼에 의해 해당 미션이 선택된 횟수에 기초하여 해당 미션에 대한 미션선호도를 산출할 수 있다. 예를 들어, '플랭크' 관련 미션이 과거 골퍼에 의해 선택된 횟수가 다른 미션에 비해 높다면, 복수 개의 미션 중에서 '플랭크 2주간 매일 1분'의 미션에 대한 미션선호도를 제일 높게 결정할 수 있다. 또는 예를 들어 골퍼와 동일한 드릴영상을 추천받은 타 골퍼가 복수 명일 때 가장 많은 수의 골퍼가 선택한 미션에 대해 가장 높은 미션선호도를 설정할 수 있다.In addition, the mission preference may be calculated in proportion to the number of selections by the golfer or other golfers, and the mission recommendation unit 204 determines the number of times a mission related to the mission is selected by the golfer, or other golfers for whom drill images such as the golfer are recommended. The mission preference for the corresponding mission can be calculated based on the number of times the corresponding mission is selected. For example, if the number of missions related to 'Plank' selected by golfers in the past is higher than other missions, the mission preference for the 'Plank for 2 weeks, 1 minute every day' mission may be determined to be the highest among the plurality of missions. Alternatively, for example, when there are a plurality of other golfers who have been recommended the same drill image as the golfer, the highest mission preference may be set for a mission selected by the highest number of golfers.
또한 미션선호도는 해당 미션과 관련된 미션의 과거 미션 수행정보에 기초하여 산출될 수 있다. 미션추천부(340)는 해당 미션과 관련된 미션에 대한 골퍼의 달성 정도가 낮다고 판단하면 미션선호도를 낮게, 골퍼의 달성 정도가 높다고 판단하면 미션선호도를 높게 산출할 수 있다. 따라서 예를 들어, '플랭크 2주간 매일 1분'의 미션에 대해, 과거 골퍼가 '플랭크 2주간 주 3회씩 1분' 미션에 대해 주1회씩 1분간 플랭크를 수행하였다고 판단하면 해당 미션에 대한 골퍼의 달성 정도가 낮다고 판단하고 미션선호도를 다른 미션의 미션선호도보다 낮은 값을 갖도록 산출할 수 있다.In addition, the mission preference may be calculated based on past mission performance information of a mission related to the corresponding mission. The mission recommendation unit 340 may calculate a mission preference low when it is determined that the golfer's achievement level for the mission related to the corresponding mission is low, and a mission preference high when it is determined that the golfer's achievement level is high. Therefore, for example, for the mission of 'Plank for 2 weeks, 1 minute every day', if it is determined that the past golfer performed the plank for 1 minute once a week for the mission 'Plank for 2 weeks, 3 times a week for 1 minute', the golfer for that mission It is determined that the degree of achievement of is low, and the mission preference may be calculated to have a lower value than the mission preference of other missions.
이와 같이 미션추천부(340)는 미션선호도에 따라 미션을 정렬시키고, 소정 순위 이내의 미션을 선택하여 추천할 수 있다. In this way, the mission recommendation unit 340 may arrange missions according to mission preference, select and recommend missions within a predetermined rank.
그리고 미션추천부(340)는 골퍼에게 미션을 추천하고 난 뒤 골퍼의 미션 수행 여부를 판단할 수 있다.In addition, the mission recommendation unit 340 recommends a mission to the golfer and then determines whether or not the golfer has performed the mission.
즉, 추천된 미션 중에서 골퍼에 의해 선택된 미션을 골퍼가 수행하는지 여부를 미션추천부(340)는 판단할 수 있다.That is, the mission recommendation unit 340 may determine whether the golfer performs the mission selected by the golfer from among the recommended missions.
미션 수행 여부는 서버-클라이언트 시스템으로 구현된 스윙 분석 장치(100)에 포함된 전자단말(10)의 기능을 이용하여 판단할 수 있다.Whether or not the mission is performed can be determined using the function of the electronic terminal 10 included in the swing analysis device 100 implemented as a server-client system.
예를 들어, 미션 수행 중인 골퍼를 촬영함으로써 획득된 미션수행영상을 분석함으로써 판단할 수 있으며, 예를 들어, 스쿼트 20개를 미션으로서 부여받은 골퍼가 스쿼트 운동 영상을 찍어 미션수행영상으로 업로드하였을 때, 미션추천부(340)는 미션수행영상을 분석하여 골퍼가 수행한 스쿼트 개수를 카운팅할 수 있다. 또는 예를 들어 미션 수행 중인 골퍼가 사용자단말을 들고 미션을 수행함에 따라 사용자단말에 내장된 자이로 센서에 의해 골퍼의 이동이 감지되고, 그에 따라 골퍼가 수행하는 스쿼트 개수를 카운팅할 수 있다.For example, it can be judged by analyzing mission performance video obtained by filming a golfer performing a mission. For example, when a golfer who has been given 20 squats as a mission takes a squat exercise video and uploads it as a mission performance video , The mission recommendation unit 340 may analyze the mission performance video and count the number of squats performed by the golfer. Alternatively, for example, as the golfer performing the mission carries out the mission carrying the user terminal, the golfer's movement may be detected by a gyro sensor built in the user terminal, and the number of squats performed by the golfer may be counted accordingly.
또는 미션 수행 여부는 스윙 분석 장치(100)에 포함된 키오스크(미도시)를 이용하여 판단할 수 있다.Alternatively, whether or not the mission is performed may be determined using a kiosk (not shown) included in the swing analysis device 100 .
또는 미션 수행 여부는, 예를 들어 스크린 골프 시스템에 설치된 센서를 통해 판단할 수 있으며, 일 예로, 비전 센서를 통해 골퍼의 움직임을 감지함으로써 미션 수행 여부를 판단할 수 있다.Alternatively, whether or not the mission is performed may be determined through, for example, a sensor installed in the screen golf system. For example, whether or not the mission is performed may be determined by detecting a golfer's motion through a vision sensor.
또는 미션 수행 여부는, 예를 들어 골프 클럽에 내장된 센서를 통해 판단할 수 있으며, 따라서 골프 클럽을 바벨처럼 활용하여 운동하도록 하는 바벨 스쿼트 또는 데드리프트 등의 미션의 수행 여부를 판단하기 위해, 골퍼가 골프 클럽을 수평으로 들고 움직였는지를 감지하여 미션 수행 여부를 판단할 수 있다.Alternatively, whether or not the mission is performed can be determined, for example, through a sensor built into the golf club, and therefore, to determine whether or not to perform a mission such as a barbell squat or deadlift in which a golf club is used like a barbell to exercise, the golfer It is possible to determine whether the mission is performed by detecting whether the golf club is moved while holding the golf club horizontally.
이와 같이 골퍼가 미션을 수행하였는지 여부를 판단함으로써, 미션추천부(340)는 미션 달성에 따른 보상을 제공할 수 있다.By determining whether the golfer has performed the mission in this way, the mission recommendation unit 340 may provide a reward according to the achievement of the mission.
예를 들어 미션추천부(340)는 골퍼가 미션을 달성하면, 보상으로서 소정의 포인트 등의 가상화폐를 지급하거나 아이템을 지급할 수 있고, 또는, 골퍼의 레벨을 상승시킬 수 있다. 보상의 예는 상술된 예에 한하지는 않는다.For example, when a golfer achieves a mission, the mission recommendation unit 340 may provide a virtual currency such as a predetermined point or an item as a reward, or increase the level of the golfer. Examples of compensation are not limited to the examples described above.
반면 예를 들어 미션추천부(340)는 골퍼가 미션 달성을 실패하면, 패널티를 부여할 수 있고 예를 들어 골퍼의 레벨을 강등시키거나, 또는 골퍼가 보유한 포인트를 소정 이상 차감할 수 있다. 또한 예를 들어 미션추천부(340)는 미션 수행을 격려하기 위한 멘트를 제공할 수 있다.On the other hand, for example, the mission recommendation unit 340 may impose a penalty if the golfer fails to achieve the mission, and for example, may demote the golfer's level or deduct the golfer's points by more than a predetermined value. Also, for example, the mission recommendation unit 340 may provide a comment for encouraging mission performance.
또한 미션추천부(340)는 골퍼가 미션을 수행하였는지 여부를 판단하여 골퍼에 매칭될 미션 레벨을 상향시킬 수 있다. In addition, the mission recommendation unit 340 may increase a mission level to be matched with the golfer by determining whether the golfer has performed the mission.
예를 들어 미션추천부(340)는 골퍼가 미션의 레벨1을 수행한 것으로 판단하면 골퍼에 대응되는 미션의 레벨을 한 단계 상승시켜 다음에 동일한 미션이 골퍼에게 추천될 때 레벨 2의 미션을 제공할 수 있다.For example, if the mission recommendation unit 340 determines that the golfer has performed level 1 of the mission, the level of the mission corresponding to the golfer is raised by one level, and the next time the same mission is recommended to the golfer, a level 2 mission is provided. can do.
또는 예를 들어, 미션추천부(340)는 골퍼가 미션의 레벨1을 수행한 것으로 판단하면 바로 연속해서 다음 단계 레벨의 미션을 제공함으로써 골퍼가 레벨 2의 미션을 수행할 수 있도록 하고 그에 따라 미션을 통해 단련시키고자 하는 신체 부위를 반복적으로 단련시킬 수 있다.Or, for example, if the mission recommendation unit 340 determines that the golfer has performed level 1 of the mission, it provides a mission of the next level in succession so that the golfer can perform the mission of level 2, and the mission accordingly. Through this, you can repeatedly train the body part you want to train.
반면 미션추천부(340)는 드릴영상 또는 미션에 기초하여 골퍼에게 적합한 레슨 커리큘럼을 해당 골퍼에 대해 추가로 설정하고, 커리큘럼에 따른 레슨콘텐츠를 골퍼에게 제공할 수 있다. 레슨콘텐츠는 예를 들어 레슨영상일 수 있으며, 또는 소정의 샷을 연습할 수 있도록 하는 가상의 골프 코스를 제공하고 그에 따른 골퍼의 샷을 골프 코스 상에서 시뮬레이션하는 것일 수도 있다.On the other hand, the mission recommendation unit 340 may additionally set a lesson curriculum suitable for the golfer based on the drill image or mission, and provide the golfer with lesson contents according to the curriculum. The lesson content may be, for example, a lesson image, or may provide a virtual golf course to practice a predetermined shot and simulate a golfer's shot accordingly on the golf course.
이러한 미션추천부(340)를 포함하는 제어부(220)는, 골퍼와 채팅할 수 있는 인터페이스를 제공하는 채팅부(미도시)를 더 포함할 수 있으며, 채팅부(미도시)는 인공지능 챗봇으로 구현될 수 있다. 즉, 텍스트 또는 음성 등을 자연어 처리하여 그에 따라 출력값을 제공할 수 있는 인공지능 챗봇이, 예를 들어, 골퍼가 드릴영상을 시청한 정도, 골퍼의 미션 수행 여부, 레슨 커리큘럼의 골퍼 진도율 등에 관한 정보를 텍스트 또는 오디오로 제공할 수 있다.The controller 220 including the mission recommendation unit 340 may further include a chatting unit (not shown) that provides an interface for chatting with golfers, and the chatting unit (not shown) is an artificial intelligence chatbot. can be implemented In other words, an artificial intelligence chatbot capable of processing text or voice in natural language and providing output values accordingly, for example, the degree to which the golfer watched the drill video, whether the golfer performed the mission, information about the golfer progress rate in the lesson curriculum, etc. can be provided as text or audio.
한편 제어부(220)를 구성하는 각 구성요소에서의 머신러닝 모델은 예를 들어, CNN(convolutional neural network), RNN(recurrent neural network), DNN(deep neural network) 등의 네트워크 모델로 구현될 수 있다. 이때 전처리(310), 오류검출부(320), 드릴추천부(330) 및 미션추천부(350) 각각에서의 머신러닝 모델은 서로 다른 네트워크로 구현될 수 있으며 또는 같은 네트워크로 구현될 수 있다.Meanwhile, the machine learning model of each component constituting the control unit 220 may be implemented as a network model, such as a convolutional neural network (CNN), a recurrent neural network (RNN), or a deep neural network (DNN), for example. . At this time, the machine learning models in each of the preprocessing 310, the error detection unit 320, the drill recommendation unit 330, and the mission recommendation unit 350 may be implemented in different networks or the same network.
상술된 바에 따라, 골퍼의 모습을 촬영한 스윙영상을 획득하기 위한 입출력부(110), 머신러닝을 수행하기 위한 프로그램이 저장되는 메모리(140), 및 상기 프로그램을 실행함으로써 스윙영상에 대한 머신러닝을 수행하는 제어부(120)를 포함하는 스윙 분석 장치(100)는, 학습된 머신러닝 모델을 이용하여 스윙영상으로부터 골퍼의 스윙오류를 검출하고, 상기 스윙오류에 기초하여 드릴영상을 추천하며, 상기 드릴영상에 대응되는 미션을 추천할 수 있다. 그에 따라 스윙 분석 장치(100)는 골퍼의 스윙 자세를 교정할 수 있도록 함으로써, 골퍼의 골프 실력 향상에 기여할 수 있다.As described above, the input/output unit 110 for obtaining a swing image of a golfer, the memory 140 storing a program for performing machine learning, and machine learning for the swing image by executing the program The swing analysis device 100 including a control unit 120 that performs detects a golfer's swing error from a swing image using a learned machine learning model, recommends a drill image based on the swing error, and A mission corresponding to the drill image may be recommended. Accordingly, the swing analysis device 100 may contribute to improving the golfer's golf skills by correcting the golfer's swing posture.
이때, 스윙 분석 장치(100)는 골프 필드에서의 골퍼의 골퍼 플레이를 촬영함에 따라 골퍼의 스윙을 분석할 수 있으며, 또한 스크린 골프 시스템에서의 골퍼의 골퍼 플레이를 촬영함에 따라 골퍼의 스윙을 분석할 수 있다. At this time, the swing analysis device 100 may analyze the golfer's swing as the golfer's golfer's play in the golf field is photographed, and may also analyze the golfer's swing as the golfer's golfer's play is photographed in the screen golf system. can
카메라가 골퍼, 골프공 및 골프 클럽 중 적어도 하나를 감지하면 카메라가 골퍼의 스윙 동작 촬영을 수행함에 따라 스윙영상을 생성할 수 있으며, 또는 카메라가 계속적으로 골퍼를 촬영할 수 있고, 스윙 동작이 있는 프레임을 추출하여 스윙영상을 생성할 수 있다.When the camera detects at least one of the golfer, the golf ball, and the golf club, the camera may generate a swing image as the camera captures the golfer's swing motion, or the camera may continuously photograph the golfer, and the swing motion may be framed. A swing image can be generated by extracting .
관련하여 스크린 골프 시스템은, 골퍼가 골프공을 타격할 수 있는 타석을 촬영할 수 있도록 설치되는 카메라를 포함할 수 있으며 카메라는 가상 골프 시뮬레이션에 필요한 모든 데이터의 저장 및 처리 등이 이루어지는 시뮬레이터에 설치되어 있거나, 또는 시뮬레이터와 통신하는 센서에 설치되어 있거나, 또는 별도의 장치로서 구현될 수 있다. 카메라 또는 시뮬레이터가 센서를 통해 골퍼, 골프공 및 골프 클럽 중 적어도 하나를 감지하면 카메라가 골퍼의 스윙 동작 촬영을 수행함에 따라 스윙영상을 생성할 수 있으며, 또는 카메라가 계속적으로 골퍼를 촬영할 수 있고, 스윙 동작이 있는 프레임을 추출하여 스윙영상을 생성할 수 있다.In relation to this, the screen golf system may include a camera installed so that a golfer can photograph a turn at bat where a golfer can hit a golf ball, and the camera is installed in a simulator in which all data necessary for virtual golf simulation is stored and processed, or , or installed in a sensor that communicates with the simulator, or may be implemented as a separate device. When the camera or simulator detects at least one of the golfer, the golf ball, and the golf club through the sensor, the camera may generate a swing image as the camera captures the golfer's swing motion, or the camera may continuously photograph the golfer, A swing image may be generated by extracting a frame having a swing motion.
본 명세서에 기재된 일 실시예에 따른 스윙 분석 장치(100)는 스크린 골프 시스템 또는 골프 필드에서 골퍼의 스윙을 촬영함에 따라 스윙영상을 분석함으로써 수행되는 것으로 상술하고 있으나 반드시 이에 한정되지 아니하고 골퍼의 스윙을 촬영하여 스윙영상을 획득하였을 때 해당 스윙영상을 분석하는 모든 형태의 시스템 내지는 장치에 적용 가능하다.Although the swing analysis device 100 according to an embodiment described in this specification is described in detail as being performed by analyzing a swing image as a golfer's swing is photographed in a screen golf system or a golf field, it is not necessarily limited thereto, and the golfer's swing It can be applied to all types of systems or devices that analyze the swing image when the swing image is obtained by shooting.
한편, 도 5는 일 실시예에 따른 스윙 분석 방법을 설명하기 위한 순서도이다. 도 5에 도시된 스윙 분석 방법은 도1 내지 도 4에 도시된 스윙 분석 장치(100)에서 시계열적으로 처리하는 단계들을 포함한다. 따라서 이하에서 생략된 내용이라고 하더라도 스윙 분석 장치(100)에 관하여 이상에서 기술한 내용은 도 5에 도시된 실시예에 따른 스윙 분석 방법에도 이용될 수 있다.On the other hand, Figure 5 is a flow chart for explaining a swing analysis method according to an embodiment. The swing analysis method shown in FIG. 5 includes steps of time-sequential processing in the swing analysis device 100 shown in FIGS. 1 to 4 . Therefore, even if the content is omitted below, the information described above regarding the swing analysis device 100 may also be used in the swing analysis method according to the embodiment shown in FIG. 5 .
도 5에서 도시된 바와 같이 스윙 분석 장치(100)는 골퍼로부터 스윙 분석을 요청받을 수 있다(S510). As shown in Figure 5, the swing analysis device 100 may receive a swing analysis request from the golfer (S510).
예를 들어 골퍼에 의해 업로드된 스윙영상의 분석요청을 획득하거나, 또는 골퍼, 골프공, 및 골프클럽의 움직임 중 적어도 하나의 움직임을 감지하면, 스윙 분석 장치(100)는 스윙 분석을 요청받은 것으로 판단할 수 있다.For example, when obtaining a request for analysis of a swing image uploaded by a golfer or detecting at least one motion among the motions of the golfer, the golf ball, and the golf club, the swing analysis device 100 considers that the swing analysis has been requested. can judge
스윙 분석 장치(100)는 스윙영상을 분석하여 스윙오류를 검출할 수 있다 (S520).The swing analysis device 100 may detect a swing error by analyzing the swing image (S520).
예를 들어 스윙 분석 장치(100)는 제1스윙오류를 하나 이상 추출하고 상기 하나 이상의 제1스윙오류 중에서 하나를 제2스윙오류로서 선택할 수 있다. 이때 스윙 분석 장치(100)는 골퍼의 과거 스윙영상으로부터 추출된 스윙오류에 기초하여 상기 하나 이상의 제1스윙오류 중에서 제2스윙오류를 선택하거나 또는 골퍼의 과거 미션 수행정보에 기초하여 제1스윙오류 중에서 제2스윙오류를 선택할 수 있다.For example, the swing analysis device 100 may extract one or more first swing errors and select one of the one or more first swing errors as the second swing error. At this time, the swing analysis device 100 selects a second swing error from among the one or more first swing errors based on a swing error extracted from a golfer's past swing image, or selects a first swing error based on the golfer's past mission performance information. You can select the second swing error from among them.
또한 예를 들어 스윙 분석 장치(100)는 제2스윙오류에 기초하여 골퍼의 신체 문제점을 나타내는 제3스윙오류를 결정할 수 있다. Also, for example, the swing analysis device 100 may determine a third swing error indicating a physical problem of the golfer based on the second swing error.
상술된 바와 같이 스윙오류를 검출하면 스윙 분석 장치(100)는 검출된 스윙오류에 기초하여 드릴영상을 추천할 수 있다 (S530). As described above, when a swing error is detected, the swing analysis device 100 may recommend a drill image based on the detected swing error (S530).
예를 들어 스윙 분석 장치(100)는 제1스윙오류, 제2스윙오류 및 제3스윙오류 중 적어도 하나에 기초하여 드릴영상을 추천할 수 있다.For example, the swing analysis device 100 may recommend a drill image based on at least one of a first swing error, a second swing error, and a third swing error.
그리고 추천된 드릴영상에 기초하여 스윙 분석 장치(100)는 미션을 추천할 수 있고(S540), 추천된 미션을 골퍼가 수행하는지 여부를 모니터링할 수 있다. 그에 따라 골퍼가 미션을 수행하였다고 판단하면(S550), 스윙 분석 장치(100)는 골퍼에게 보상을 제공할 수 있다(S560).Based on the recommended drill image, the swing analysis device 100 may recommend a mission (S540) and monitor whether the golfer performs the recommended mission. Accordingly, if it is determined that the golfer has performed the mission (S550), the swing analysis device 100 may provide a reward to the golfer (S560).
본 명세서에 기재된 일 실시예에 따른 스윙 분석 방법에 따르면 골퍼는 손쉽게 자신의 스윙 포즈에 문제점을 발견하고 개선하기 위한 노력을 기울일 수 있다.According to the swing analysis method according to an embodiment described in this specification, a golfer can easily find a problem in his/her swing pose and make efforts to improve it.
상기와 같이 설명된 가상 골프 시뮬레이션 방법은 컴퓨터에 의해 실행 가능한 명령어 및 데이터를 저장하는, 컴퓨터로 판독 가능한 매체의 형태로도 구현될 수 있다. 이때, 명령어 및 데이터는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소정의 프로그램 모듈을 생성하여 소정의 동작을 수행할 수 있다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터로 판독 가능한 매체는 컴퓨터 기록 매체일 수 있는데, 컴퓨터 기록 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함할 수 있다. 예를 들어, 컴퓨터 기록 매체는 HDD 및 SSD 등과 같은 마그네틱 저장 매체, CD, DVD 및 블루레이 디스크 등과 같은 광학적 기록 매체, 또는 네트워크를 통해 접근 가능한 서버에 포함되는 메모리일 수 있다.The virtual golf simulation method described above may be implemented in the form of a computer-readable medium storing instructions and data executable by a computer. In this case, instructions and data may be stored in the form of program codes, and when executed by a processor, a predetermined program module may be generated to perform a predetermined operation. Also, computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, a computer-readable medium may be a computer recording medium, which is a volatile and non-volatile memory implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. It can include both volatile, removable and non-removable media. For example, the computer recording medium may be a magnetic storage medium such as HDD and SSD, an optical recording medium such as CD, DVD, and Blu-ray disc, or a memory included in a server accessible through a network.
상기와 같이 설명된 가상 골프 시뮬레이션 방법은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 컴퓨터 프로그램(또는 컴퓨터 프로그램 제품)으로 구현될 수도 있다. 컴퓨터 프로그램은 프로세서에 의해 처리되는 프로그래밍 가능한 기계 명령어를 포함하고, 고레벨 프로그래밍 언어(High-level Programming Language), 객체 지향 프로그래밍 언어(Object-oriented Programming Language), 어셈블리 언어 또는 기계 언어 등으로 구현될 수 있다. 또한 컴퓨터 프로그램은 유형의 컴퓨터 판독가능 기록매체(예를 들어, 메모리, 하드디스크, 자기/광학 매체 또는 SSD(Solid-State Drive) 등)에 기록될 수 있다. The virtual golf simulation method described above may be implemented as a computer program (or computer program product) including instructions executable by a computer. A computer program includes programmable machine instructions processed by a processor and may be implemented in a high-level programming language, object-oriented programming language, assembly language, or machine language. . Also, the computer program may be recorded on a tangible computer-readable recording medium (eg, a memory, a hard disk, a magnetic/optical medium, or a solid-state drive (SSD)).
상기와 같이 설명된 가상 골프 시뮬레이션 방법은 상술한 바와 같은 컴퓨터 프로그램이 컴퓨팅 장치에 의해 실행됨으로써 구현될 수 있다. 컴퓨팅 장치는 프로세서와, 메모리와, 저장 장치와, 메모리 및 고속 확장포트에 접속하고 있는 고속 인터페이스와, 저속 버스와 저장 장치에 접속하고 있는 저속 인터페이스 중 적어도 일부를 포함할 수 있다. 이러한 성분들 각각은 다양한 버스를 이용하여 서로 접속되어 있으며, 공통 머더보드에 탑재되거나 다른 적절한 방식으로 설치될 수 있다.The virtual golf simulation method described above may be implemented by executing the computer program as described above by a computing device. A computing device may include at least some of a processor, a memory, a storage device, a high-speed interface connected to the memory and a high-speed expansion port, and a low-speed interface connected to a low-speed bus and a storage device. Each of these components are connected to each other using various buses and may be mounted on a common motherboard or installed in any other suitable manner.
여기서 프로세서는 컴퓨팅 장치 내에서 명령어를 처리할 수 있는데, 이런 명령어로는, 예컨대 고속 인터페이스에 접속된 디스플레이처럼 외부 입력, 출력 장치상에 GUI(Graphic User Interface)를 제공하기 위한 그래픽 정보를 표시하기 위해 메모리나 저장 장치에 저장된 명령어를 들 수 있다. 다른 실시예로서, 다수의 프로세서 및(또는) 다수의 버스가 적절히 다수의 메모리 및 메모리 형태와 함께 이용될 수 있다. 또한 프로세서는 독립적인 다수의 아날로그 및(또는) 디지털 프로세서를 포함하는 칩들이 이루는 칩셋으로 구현될 수 있다. Here, the processor may process commands within the computing device, for example, to display graphic information for providing a GUI (Graphic User Interface) on an external input/output device, such as a display connected to a high-speed interface. Examples include instructions stored in memory or storage devices. As another example, multiple processors and/or multiple buses may be used along with multiple memories and memory types as appropriate. Also, the processor may be implemented as a chipset comprising chips including a plurality of independent analog and/or digital processors.
또한 메모리는 컴퓨팅 장치 내에서 정보를 저장한다. 일례로, 메모리는 휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 다른 예로, 메모리는 비휘발성 메모리 유닛 또는 그들의 집합으로 구성될 수 있다. 또한 메모리는 예컨대, 자기 혹은 광 디스크와 같이 다른 형태의 컴퓨터 판독 가능한 매체일 수도 있다. Memory also stores information within the computing device. In one example, the memory may consist of a volatile memory unit or a collection thereof. As another example, the memory may be composed of a non-volatile memory unit or a collection thereof. Memory may also be another form of computer readable medium, such as, for example, a magnetic or optical disk.
그리고 저장장치는 컴퓨팅 장치에게 대용량의 저장공간을 제공할 수 있다. 저장 장치는 컴퓨터 판독 가능한 매체이거나 이런 매체를 포함하는 구성일 수 있으며, 예를 들어 SAN(Storage Area Network) 내의 장치들이나 다른 구성도 포함할 수 있고, 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치, 혹은 테이프 장치, 플래시 메모리, 그와 유사한 다른 반도체 메모리 장치 혹은 장치 어레이일 수 있다.Also, the storage device may provide a large amount of storage space to the computing device. A storage device may be a computer-readable medium or a component that includes such a medium, and may include, for example, devices in a storage area network (SAN) or other components, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, flash memory, or other semiconductor memory device or device array of the like.
이상의 실시 예들에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field programmable gate array) 또는 ASIC 와 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램특허 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다.The term '~unit' used in the above embodiments means software or a hardware component such as a field programmable gate array (FPGA) or ASIC, and '~unit' performs certain roles. However, '~ part' is not limited to software or hardware. '~bu' may be configured to be in an addressable storage medium and may be configured to reproduce one or more processors. Therefore, as an example, '~unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program patent code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.
구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로부터 분리될 수 있다.Functions provided within components and '~units' may be combined into smaller numbers of components and '~units' or separated from additional components and '~units'.
뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU 들을 재생시키도록 구현될 수도 있다. 상술된 실시예들은 예시를 위한 것이며, 상술된 실시예들이 속하는 기술분야의 통상의 지식을 가진 자는 상술된 실시예들이 갖는 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다.그러므로 상술된 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.In addition, components and '~units' may be implemented to play one or more CPUs in a device or a secure multimedia card. The above-described embodiments are for illustrative purposes, and those skilled in the art to which the above-described embodiments belong can easily transform into other specific forms without changing the technical spirit or essential features of the above-described embodiments. It should be understood. Therefore, it should be understood that the above-described embodiments are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.
본 명세서를 통해 보호받고자 하는 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태를 포함하는 것으로 해석되어야 한다.The scope to be protected through this specification is indicated by the following claims rather than the detailed description above, and should be construed to include all changes or modifications derived from the meaning and scope of the claims and equivalent concepts thereof. .

Claims (16)

  1. 스윙 분석 장치로서,As a swing analysis device,
    골퍼의 모습을 촬영한 스윙영상을 획득하기 위한 입출력부;an input/output unit for obtaining a swing image of a golfer;
    머신러닝을 수행하기 위한 프로그램이 저장되는 메모리; 및a memory in which a program for performing machine learning is stored; and
    상기 프로그램을 실행함으로써 스윙영상에 대한 머신러닝을 수행하는 제어부를 포함하며, And a control unit for performing machine learning on the swing image by executing the program,
    상기 제어부는, The control unit,
    학습된 머신러닝 모델을 이용하여 스윙영상으로부터 골퍼의 스윙오류를 검출하고, 상기 스윙오류에 기초하여 드릴영상을 추천하며, 상기 드릴영상에 대응되는 미션을 추천하는, 스윙 분석 장치.A swing analysis device that detects a golfer's swing error from a swing image using a learned machine learning model, recommends a drill image based on the swing error, and recommends a mission corresponding to the drill image.
  2. 제1항에 있어서,According to claim 1,
    상기 제어부는,The control unit,
    상기 스윙영상으로부터 제1스윙오류를 하나 이상 추출하고, 상기 제1스윙오류 중 하나를 제2스윙오류로서 선택하며, 상기 제2스윙오류에 기초하여 드릴영상을 추천하는, 스윙 분석 장치.A swing analysis device that extracts one or more first swing errors from the swing image, selects one of the first swing errors as a second swing error, and recommends a drill image based on the second swing error.
  3. 제2항에 있어서,According to claim 2,
    상기 제어부는,The control unit,
    상기 골퍼의 과거 스윙영상으로부터 추출된 스윙오류에 기초하여 상기 제1스윙오류 중에서 제2스윙오류를 선택하는, 스윙 분석 장치.Swing analysis device for selecting a second swing error from among the first swing errors based on the swing errors extracted from the past swing images of the golfer.
  4. 제2항에 있어서,According to claim 2,
    상기 제어부는,The control unit,
    상기 골퍼의 과거 미션 수행정보에 기초하여 상기 제1스윙오류 중에서 제2스윙오류를 선택하는, 스윙 분석 장치.Swing analysis device for selecting a second swing error from among the first swing errors based on the past mission performance information of the golfer.
  5. 제2항에 있어서,According to claim 2,
    상기 제어부는,The control unit,
    상기 제2스윙오류에 기초하여 상기 골퍼의 신체 문제점을 나타내는 제3스윙오류를 결정하며, 상기 제3스윙오류에 기초하여 드릴영상을 추천하는, 스윙 분석 장치.Based on the second swing error, a third swing error indicating a physical problem of the golfer is determined, and a drill image is recommended based on the third swing error.
  6. 제1항에 있어서,According to claim 1,
    상기 스윙 분석 장치는 제3서버와 통신하며,The swing analysis device communicates with a third server,
    상기 제어부는, The control unit,
    상기 제3서버에 저장된 영상을 크롤링함으로써 수집된 드릴영상 중에서 추천할 드릴영상을 선택하되, 상기 제3서버에서의 드릴영상 각각에 대한 조회수, 추천수 및 좋아요 수 중 적어도 하나에 기초하여 드릴영상을 선택하는, 스윙 분석 장치.A drill image to be recommended is selected from drill images collected by crawling images stored in the third server, and the drill image is selected based on at least one of the number of views, recommendations, and likes for each drill image in the third server. Swing analysis device.
  7. 제1항에 있어서.According to claim 1.
    상기 제어부는,The control unit,
    상기 드릴영상에 대응되는 미션을 추천하되, 상기 골퍼에게 과거 추천했던 미션에 기초하여 선택된 미션을 추천하는, 스윙 분석 장치.A swing analysis device that recommends a mission corresponding to the drill image and recommends a mission selected based on a mission previously recommended to the golfer.
  8. 제1항에 있어서,According to claim 1,
    상기 제어부는,The control unit,
    상기 골퍼의 상기 미션의 수행 여부를 판단하여 판단 결과, 상기 골퍼에게 보상을 제공하는, 스윙 분석 장치.Swing analysis device for determining whether the golfer has performed the mission and providing a reward to the golfer as a result of the determination.
  9. 스윙 분석 장치가 골퍼의 스윙을 분석하는 방법으로서,As a method for a swing analysis device to analyze a golfer's swing,
    학습된 머신러닝 모델을 이용하여 스윙영상으로부터 골퍼의 스윙오류를 검출하는 단계;Detecting a golfer's swing error from a swing image using a learned machine learning model;
    상기 스윙오류에 기초하여 드릴영상을 추천하는 단계; 및recommending a drill image based on the swing error; and
    상기 드릴영상에 대응되는 미션을 추천하는 단계를 포함하는, 스윙 분석 방법.Swing analysis method comprising the step of recommending a mission corresponding to the drill image.
  10. 제9항에 있어서,According to claim 9,
    상기 스윙오류를 검출하는 단계는,The step of detecting the swing error,
    상기 스윙영상으로부터 제1스윙오류를 하나 이상 추출하는 단계; 및Extracting one or more first swing errors from the swing image; and
    상기 제1스윙오류 중 하나를 제2스윙오류로서 선택하는 단계를 포함하고,Selecting one of the first swing errors as a second swing error,
    상기 드릴영상을 추천하는 단계는,The step of recommending the drill image,
    상기 제2스윙오류에 기초하여 드릴영상을 추천하는 단계를 포함하는, 스윙 분석 방법.Swing analysis method comprising the step of recommending a drill image based on the second swing error.
  11. 제10항에 있어서,According to claim 10,
    상기 제2스윙오류로서 선택하는 단계는,The step of selecting as the second swing error,
    상기 골퍼의 과거 스윙영상으로부터 추출된 스윙오류에 기초하여 상기 제1스윙오류 중에서 제2스윙오류를 선택하는 단계를 포함하는, 스윙 분석 방법.And selecting a second swing error from among the first swing errors based on a swing error extracted from a past swing image of the golfer.
  12. 제10항에 있어서,According to claim 10,
    상기 제2스윙오류로서 선택하는 단계는,The step of selecting as the second swing error,
    상기 골퍼의 과거 미션 수행정보에 기초하여 상기 제1스윙오류 중에서 제2스윙오류를 선택하는 단계를 포함하는, 스윙 분석 방법.And selecting a second swing error from among the first swing errors based on the past mission performance information of the golfer.
  13. 제10항에 있어서,According to claim 10,
    상기 스윙오류를 검출하는 단계는,The step of detecting the swing error,
    상기 제2스윙오류에 기초하여 상기 골퍼의 신체 문제점을 나타내는 제3스윙오류를 결정하는 단계를 더 포함하며, Further comprising determining a third swing error indicating a physical problem of the golfer based on the second swing error,
    상기 드릴영상을 추천하는 단계는,The step of recommending the drill image,
    상기 제3스윙오류에 기초하여 드릴영상을 추천하는 단계를 포함하는, 스윙 분석 방법.Swing analysis method comprising the step of recommending a drill image based on the third swing error.
  14. 제9항에 있어서,According to claim 9,
    상기 스윙 분석 장치는 제3서버와 통신하며,The swing analysis device communicates with a third server,
    상기 드릴영상을 추천하는 단계는,The step of recommending the drill image,
    상기 제3서버에 저장된 영상을 크롤링함으로써 수집된 드릴영상 중에서 추천할 드릴영상을 선택하되, 상기 제3서버에서의 드릴영상 각각에 대한 조회수, 추천수 및 좋아요 수 중 적어도 하나에 기초하여 드릴영상을 선택하는 단계를 포함하는, 스윙 분석 방법.A drill image to be recommended is selected from drill images collected by crawling images stored in the third server, and the drill image is selected based on at least one of the number of views, recommendations, and likes for each drill image in the third server. Swing analysis method comprising the step of doing.
  15. 제9항에 있어서.According to claim 9.
    상기 미션을 추천하는 단계는,The step of recommending the mission is,
    상기 드릴영상에 대응되는 미션을 추천하되, 상기 골퍼에게 과거 추천했던 미션에 기초하여 선택된 미션을 추천하는 단계를 포함하는, 스윙 분석 방법.A swing analysis method comprising the step of recommending a mission corresponding to the drill image, but recommending a mission selected based on a mission previously recommended to the golfer.
  16. 제9항에 있어서,According to claim 9,
    상기 골퍼의 상기 미션의 수행 여부를 판단하는 단계; 및determining whether the golfer performs the mission; and
    판단 결과, 상기 골퍼에게 보상을 제공하는 단계를 더 포함하는, 스윙 분석 방법.As a result of the determination, further comprising the step of providing a reward to the golfer, the swing analysis method.
PCT/KR2022/008166 2021-06-28 2022-06-09 Swing analysis apparatus and swing analysis method WO2023277381A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210084127A KR102633168B1 (en) 2021-06-28 2021-06-28 Apparatus and method for analyzing golf swing
KR10-2021-0084127 2021-06-28

Publications (1)

Publication Number Publication Date
WO2023277381A1 true WO2023277381A1 (en) 2023-01-05

Family

ID=84692852

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/008166 WO2023277381A1 (en) 2021-06-28 2022-06-09 Swing analysis apparatus and swing analysis method

Country Status (2)

Country Link
KR (1) KR102633168B1 (en)
WO (1) WO2023277381A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011189014A (en) * 2010-03-15 2011-09-29 Konami Sports & Life Co Ltd Training menu proposing system and computer program
JP2012139480A (en) * 2010-12-15 2012-07-26 Shinsedai Kk Physical condition evaluation device, physical condition evaluation method, and computer program
KR20130129558A (en) * 2012-05-21 2013-11-29 (주) 골프존 Method and apparatus for golf analysis
JP2019166311A (en) * 2018-03-25 2019-10-03 柏熊 誠治 Swing determination device, swing determination method and program
KR20210067590A (en) * 2019-11-29 2021-06-08 주식회사 모아이스 Method, device and non-transitory computer-readable recording medium for suggesting contents about golf

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101235286B1 (en) * 2011-06-22 2013-02-21 (주) 골프존 Virtual golf simulation device for providing user-customized practice environment, server connected with the same through network, and providing method for user-customized practice environment using virtual golf simulation

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011189014A (en) * 2010-03-15 2011-09-29 Konami Sports & Life Co Ltd Training menu proposing system and computer program
JP2012139480A (en) * 2010-12-15 2012-07-26 Shinsedai Kk Physical condition evaluation device, physical condition evaluation method, and computer program
KR20130129558A (en) * 2012-05-21 2013-11-29 (주) 골프존 Method and apparatus for golf analysis
JP2019166311A (en) * 2018-03-25 2019-10-03 柏熊 誠治 Swing determination device, swing determination method and program
KR20210067590A (en) * 2019-11-29 2021-06-08 주식회사 모아이스 Method, device and non-transitory computer-readable recording medium for suggesting contents about golf

Also Published As

Publication number Publication date
KR20230001356A (en) 2023-01-04
KR102633168B1 (en) 2024-02-02

Similar Documents

Publication Publication Date Title
US11132533B2 (en) Systems and methods for creating target motion, capturing motion, analyzing motion, and improving motion
AU2017331639B2 (en) A system and method to analyze and improve sports performance using monitoring devices
JP2852925B2 (en) Physical exercise proficiency education system
US10803762B2 (en) Body-motion assessment device, dance assessment device, karaoke device, and game device
US11113988B2 (en) Apparatus for writing motion script, apparatus for self-teaching of motion and method for using the same
US20220072381A1 (en) Method and system for training users to perform activities
KR20030085275A (en) Golf swing motion montoring method and system
US11145220B2 (en) System for peer-to-peer, self-directed or consensus human motion capture, motion characterization, and software-augmented motion evaluation
KR20200015890A (en) Information processing device, information processing method and program
KR102360799B1 (en) Artificial Intelligence-based Golfer Matching System for Golf Rounds and Golf Lessons
CN113384861A (en) Table tennis training device, table tennis training method, and computer-readable storage medium
Zou et al. Intelligent fitness trainer system based on human pose estimation
KR101221065B1 (en) Practicing method of golf swing motion using motion overlap and practicing system of golf swing motion using the same
US20210060385A1 (en) Advancement Manager In A Handheld User Device
WO2012091516A2 (en) Apparatus for providing golf content, system for providing golf content using same, apparatus for virtual golf simulation, method for providing golf content, and method for virtual golf simulation
Lin et al. The effect of real-time pose recognition on badminton learning performance
JP2009034360A (en) Training system, and apparatus for the same
WO2023277381A1 (en) Swing analysis apparatus and swing analysis method
KR20170140756A (en) Appratus for writing motion-script, appratus for self-learning montion and method for using the same
KR102095647B1 (en) Comparison of operation using smart devices Comparison device and operation Comparison method through dance comparison method
CN112057833A (en) Badminton forehand high-distance ball flapping motion identification method
KR20220036391A (en) Golf Lesson System using Smart Mirror
CN107592483B (en) Intelligent auxiliary learning system and method
Clark et al. Technology in sports coaching
Tokolyi et al. Internet of things in the game of basketball

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22833437

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE