KR20160121379A - Apparatus and method for analyzing golf motion - Google Patents

Apparatus and method for analyzing golf motion Download PDF

Info

Publication number
KR20160121379A
KR20160121379A KR1020160006966A KR20160006966A KR20160121379A KR 20160121379 A KR20160121379 A KR 20160121379A KR 1020160006966 A KR1020160006966 A KR 1020160006966A KR 20160006966 A KR20160006966 A KR 20160006966A KR 20160121379 A KR20160121379 A KR 20160121379A
Authority
KR
South Korea
Prior art keywords
image
user
dimensional image
depth
depth image
Prior art date
Application number
KR1020160006966A
Other languages
Korean (ko)
Other versions
KR102514697B1 (en
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 한국전자통신연구원
Priority to US15/078,280 priority Critical patent/US10186041B2/en
Publication of KR20160121379A publication Critical patent/KR20160121379A/en
Application granted granted Critical
Publication of KR102514697B1 publication Critical patent/KR102514697B1/en

Links

Images

Classifications

    • G06K9/00342
    • 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
    • A63B24/0062Monitoring athletic performances, e.g. for determining the work of a user on an exercise apparatus, the completed jogging or cycling distance
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B60/00Details or accessories of golf clubs, bats, rackets or the like
    • A63B60/46Measurement devices associated with golf clubs, bats, rackets or the like for measuring physical parameters relating to sporting activity, e.g. baseball bats with impact indicators or bracelets for measuring the golf swing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B69/00Training appliances or apparatus for special sports
    • A63B69/36Training appliances or apparatus for special sports for golf
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Psychiatry (AREA)

Abstract

Disclosed are a technology for analyzing a golf motion, which can implement high-speed photographing and can provide a user with more accurate and various information by minutely analyzing a motion through extraction of skeleton information. To this end, according to an embodiment of the present invention, a method for analyzing a golf motion comprises: a step of obtaining a 2D image of a users motion by an image sensor of a camera unit; a step of obtaining a depth image including a depth value of each pixel of the 2D image by a depth sensor of the camera unit temporarily and alternately with the obtaining of the 2D image; a photographing speed increase step of generating a corresponding depth image or a corresponding 2D image corresponding to a reference 2D image or a reference depth image obtained at a certain time; a step of outputting the reference 2D image and the corresponding depth image, or the reference depth image and the corresponding 2D image as output data for analyzing motion; a step of extracting the users skeleton information through the analysis on the output data; and a step of displaying the users motion on a display unit based on the skeleton information.

Description

골프 동작 분석 장치 및 방법{APPARATUS AND METHOD FOR ANALYZING GOLF MOTION}[0001] APPARATUS AND METHOD FOR ANALYZING GOLF MOTION [0002]

본 발명은 골프 동작 분석 장치 및 방법에 관한 것으로, 특히 본 발명은 효율적으로 고속 촬영을 구현하였으며, 스켈레톤 정보 추출로 동작을 세밀하게 분석함으로써 사용자에게 보다 정확하고 다양한 정보를 제공할 수 있는 골프 동작 분석 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and a method for analyzing a golf motion, and more particularly, to an apparatus and method for analyzing a golf motion that can efficiently provide high-speed shooting and provide more accurate and versatile information to a user by analyzing operations by skeleton information extraction Apparatus and method.

골프는 힘보다 자세가 중요한 운동이다. 골프의 자세는 근육 기억법(Muslce Memory)을 통해 내재화되는데, 정확히 자세를 내재화시키기 위해서는 연습과 교정의 과정이 부단히 반복되어야 한다.Golf is a sport where posture is more important than strength. Golf's attitude is internalized through Muslce Memory, and the process of practice and correction must be repeated in order to accurately internalize the posture.

한편, 종래 전문가들의 코칭에 의해 이루어지던 교정 과정이 자가 학습에 의해 이루어질 수 있도록 도와주고 있는 것이 최근 도입되고 있는 카메라 기반 골프 동작 분석 시스템들이다. 이러한 카메라 기반 골프 동작 분석 시스템은 골프 동작을 촬영하는 카메라부와 촬영된 영상을 분석하는 분석부로 이루어지는데, 종래의 카메라 기반 골프 동작 분석 시스템에는 몇 가지 문제점들이 있었다.On the other hand, the camera-based golf motion analysis systems that have been recently introduced to help the calibration process performed by the coaches of the prior arts to be performed by self-learning. The camera-based golf motion analyzing system includes a camera unit for photographing a golf operation and an analyzing unit for analyzing the photographed image. The conventional camera-based golf motion analyzing system has some problems.

먼저, 골프 스윙 중 일부 동작은 고속으로 진행되는데 종래 카메라 기반 골프 동작 분석 시스템은 카메라 촬영속도의 한계로 이러한 일부 고속 동작을 제대로 촬영하지 못하는 문제가 있었다. 이러한 문제를 개선하기 위해 고속 카메라를 적용한 골프 동작 분석 시스템이 개발되기도 하였으나 이 또한 비용적인 측면에서 상용화의 한계를 가지고 있었다.First, some operations of the golf swing proceed at a high speed. However, the conventional camera-based golf motion analysis system has a problem in that it can not photograph some high-speed operations properly due to the limitation of the camera shooting speed. In order to solve this problem, a golf motion analysis system using a high-speed camera has been developed, but it has also been limited in terms of cost.

골프 스윙에서의 일부 고속 동작에 따른 문제는 분석부에서도 나타났다. 사용자에게 실시간 정보를 제공하기 위해서는 분석부가 카메라의 촬영속도 이상의 영상 처리 성능을 보유하고 있어야 하는데, 컴퓨팅 장비가 이러한 영상 처리 성능을 보유하지 못해 사용자에게 실시간 정보를 제공하지 못하는 문제가 있었다. 이러한 문제의 개선을 위해 고성능 컴퓨팅 장비가 포함된 시스템이 제시되기도 하였으나 이 또한 비용, 효율화 등의 측면에서 상용화의 한계를 가지고 있었다.The problem with some high-speed motion in the golf swing also appeared in the analysis department. In order to provide real-time information to the user, the analysis unit must have image processing performance higher than the photographing speed of the camera. However, since the computing equipment does not have such image processing capability, the user can not provide real-time information. In order to improve these problems, a system including high-performance computing equipment has been proposed, but this has also been limited in terms of cost and efficiency.

종래 시스템은 촬영된 영상을 분석하는 기법에 있어서도 한계를 가지고 있었는데, 이는 시스템이 영상에서 추출하는 정보가 동작 분석에는 적합하지 않았기 때문이다. 예를 들어, 종래 시스템은 신체의 외곽 라인을 인식하여 신체 부위를 추출하고 이렇게 특정된 신체 부위들의 위치에 선 혹은 도형을 표시하는 방식으로 골프 동작을 분석하였다. 그런데, 이러한 방식에 의하면 신체가 겹치는 부분(예를 들어, 정면 촬영시 어드레스 자세에서 팔과 상체가 겹치는 부분)에서 신체 부위를 정확히 분리해 내지 못하거나 팔의 굽혀진 각도를 정확히 인식하지 못하는 한계가 있었다.Conventional systems also have limitations in techniques for analyzing photographed images because the information that the system extracts from the images is not suitable for motion analysis. For example, the conventional system recognizes the outline of the body, extracts the body part, and analyzes the golf operation in such a manner that a line or a figure is displayed at the position of the specified body parts. However, according to this method, there is a limitation that the body part can not be accurately separated from the overlapping part of the body (for example, the part where the upper body overlaps with the arm at the address posture in the frontal photographing) there was.

관련하여 한국공개특허 제2012-0021848호는 '골프스윙의 자세분석 시스템'을 개시한다.Korean Patent Publication No. 2012-0021848 discloses a 'golf swing posture analysis system'.

본 발명의 목적은 효율적으로 고속 촬영을 구현한 골프 동작 분석 시스템을 제공하는 것이다. SUMMARY OF THE INVENTION An object of the present invention is to provide a golf motion analysis system that efficiently implements high-speed shooting.

그리고, 본 발명은 사용자의 동작을 세밀하게 분석함으로써 사용자에게 보다 정확하고 다양한 정보를 제공하는 것을 목적으로 한다. In addition, the present invention aims to provide more precise and diverse information to the user by finely analyzing the operation of the user.

또한, 본 발명은 고속 동작을 포함하고 있는 골프 스윙의 분석에 있어서, 사용자에게 실시간 정보를 제공하면서도 고속 동작 구간에 대한 안정적인 분석을 가능케 하는 것을 목적으로 한다.It is another object of the present invention to provide stable analysis of a high-speed operation section while providing real-time information to a user in the analysis of a golf swing including a high-speed operation.

상기한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 골프 동작 분석 방법은 카메라부의 영상 센서에서 사용자의 동작에 대한 2차원 영상을 획득하는 단계; 상기 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 카메라부의 깊이 센서에서 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 단계; 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 촬영 속도 증가 단계; 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상을 동작 분석을 위한 출력 데이터로 출력하는 단계; 상기 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 단계; 및 상기 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시부에 표시하는 단계를 포함한다. According to another aspect of the present invention, there is provided a golf motion analyzing method including: obtaining a two-dimensional image of a motion of a user in an image sensor of a camera; Acquiring the two-dimensional image and a depth image including a depth value of each pixel of the two-dimensional image in a temporally alternate depth sensor of the camera unit; An imaging speed increasing step of generating a corresponding depth image or a corresponding two-dimensional image corresponding to a reference two-dimensional image or a reference depth image acquired at a predetermined time; Outputting the reference two-dimensional image and the corresponding depth image or the reference depth image and the corresponding two-dimensional image as output data for motion analysis; Extracting skeleton information of the user through analysis of the output data; And displaying the operation of the user on the display unit based on the skeleton information.

이 때, 상기 촬영 속도 증가 단계는, 상기 깊이 센서가 제1 시각에 제1 뎁스 영상을 획득하는 단계; 상기 영상 센서가 제1 시각 이후의 제2 시각에 상기 기준 2차원 영상으로 제1 2차원 영상을 획득하는 단계; 상기 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 상기 제1 시각의 제2 뎁스 영상을 생성하는 단계; 상기 제1 2차원 영상과 상기 제2 뎁스 영상 사이의 모션 벡터를 추정하는 단계; 상기 모션 벡터를 이용하여 상기 제2 뎁스 영상으로부터 상기 제2 시각에서의 투사된 제3 뎁스 영상을 렌더링하는 단계; 및 상기 제3 뎁스 영상을 상기 깊이 센서 시점으로 투사하여 상기 대응 뎁스 영상으로 상기 제2 시각에서의 제4 뎁스 영상을 생성하는 단계를 포함하며, 상기 출력하는 단계에서는 상기 제1 2차원 영상과 상기 제4 뎁스 영상을 출력 데이터로 출력할 수 있다. At this time, the photographing speed increasing step may include: the depth sensor obtaining a first depth image at a first time; The image sensor acquiring a first two-dimensional image as the reference two-dimensional image at a second time after the first time; Generating a second depth image of the first time by projecting the first depth image to a viewpoint of the image sensor; Estimating a motion vector between the first two-dimensional image and the second depth image; Rendering the projected third depth image at the second time from the second depth image using the motion vector; And projecting the third depth image to the depth sensor point to generate a fourth depth image at the second time with the corresponding depth image, and in the outputting step, the first two- The fourth depth image can be output as output data.

이 때, 상기 촬영 속도 증가 단계는, 상기 영상 센서가 제1 시각에 제1 2차원 영상을 획득하는 단계; 상기 깊이 센서가 제1 시각 이후의 제2 시각에 상기 기준 뎁스 영상으로 제1 뎁스 영상을 획득하는 단계; 상기 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 제2 뎁스 영상을 생성하는 단계; 상기 제1 2차원 영상과 상기 제2 뎁스 영상 사이의 모션 벡터를 추정하는 단계; 및 상기 모션 벡터를 이용하여 상기 제1 2차원 영상으로부터 상기 대응 2차원 영상으로 상기 제2 시각에서의 제2 2차원 영상을 렌더링하는 단계를 포함하며, 상기 출력하는 단계에서는 상기 제1 뎁스 영상과 상기 제2 2차원 영상을 출력 데이터로 출력할 수 있다.At this time, the photographing speed increasing step may include: obtaining the first two-dimensional image at the first time by the image sensor; The depth sensor acquiring a first depth image with the reference depth image at a second time after the first time; Generating a second depth image by projecting the first depth image to a viewpoint of the image sensor; Estimating a motion vector between the first two-dimensional image and the second depth image; And rendering the second two-dimensional image at the second time from the first two-dimensional image to the corresponding two-dimensional image using the motion vector, wherein in the outputting step, And output the second two-dimensional image as output data.

이 때, 상기 스켈레톤 정보를 추출하는 단계는, 상기 출력 데이터의 픽셀 데이터를 추출하는 단계; 상기 픽셀 데이터에 기초하여, 상기 사용자에 해당하는 영역의 픽셀을 선정하는 사용자 영역화 단계; 사용자 영역화 된 픽셀들 각각에 대하여 스켈레톤 관절에 해당하는지에 대한 확률 분포값을 산정하는 단계; 상기 확률 분포값에 따라, 소정의 픽셀들에 대하여 스켈레톤 관절로 정의하는 단계; 상기 스켈레톤 관절로 정의된 소정의 픽셀들에서의 중심점을 정의하는 단계; 및 상기 중심점에 기초하여 상기 스켈레톤 정보를 완성하여 추출하는 단계를 포함할 수 있다. The extracting of the skeleton information may include extracting pixel data of the output data; A user region selection step of selecting a pixel in an area corresponding to the user based on the pixel data; Estimating a probability distribution value for each of the user-domain pixels as to whether the pixel corresponds to a skeleton joint; Defining a skeleton joint for predetermined pixels according to the probability distribution value; Defining a center point at predetermined pixels defined by the skeleton joint; And completing and extracting the skeleton information based on the center point.

이 때, 상기 스켈레톤 관절을 정의하는 단계 및 상기 중심점을 정의하는 단계는, 상기 픽셀 데이터의 해상도를 낮추는 단계; 낮은 해상도에 기초하여 스켈레톤 관절 및 중심점을 정의하는 단계; 상기 픽셀 데이터의 해상도를 높이는 단계; 상기 낮은 해상도에 기초하여 도출된 중심점에서의 소정 거리만큼의 영역을 설정하는 단계; 및 상기 영역내에서의 픽셀에 기초하여 스켈레톤 관절 및 중심점을 재차 정의하는 단계를 포함할 수 있다. In this case, the step of defining the skeleton joint and the step of defining the center point may include: lowering the resolution of the pixel data; Defining a skeleton joint and a center point based on a lower resolution; Increasing the resolution of the pixel data; Setting an area of a predetermined distance at a center point derived based on the lower resolution; And redefining the skeleton joint and the center point based on the pixels in the region.

이 때, 상기 픽셀 데이터는 각 픽셀의 깊이 정보, RGB값, 및 조도 값 중 적어도 하나일 수 있다. At this time, the pixel data may be at least one of depth information, RGB value, and illuminance value of each pixel.

이 때, 상기 출력하는 단계에서는, 상기 사용자의 동작 속도에 따라 동작 분석을 위한 출력 데이터의 양을 조절할 수 있다.At this time, in the outputting step, the amount of output data for operation analysis can be adjusted according to the operation speed of the user.

이 때, 상기 출력하는 단계에서, 상기 사용자의 동작 속도가 기 설정된 수치 미만인 경우, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 전부를 실시간으로 동작 분석을 위한 출력 데이터로 출력하고, 상기 사용자의 동작 속도가 기 설정된 수치 이상인 경우, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력할 수 있다.At this time, in the outputting step, if the operation speed of the user is less than a predetermined value, motion analysis is performed on all of the reference two-dimensional image and the corresponding depth image, the reference depth image, Dimensional image, the corresponding depth image, the reference depth image, and the corresponding two-dimensional image when the operation speed of the user is equal to or greater than a predetermined value, and outputs an output Data can be output.

이 때, 상기 출력하는 단계에서, 상기 사용자의 동작 속도가 기 설정된 수치 이상이어서, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력한 경우, 잔여 데이터를 저장 후 상기 사용자의 동작 속도가 기 설정된 수치 미만으로 변경된 경우 동작 분석을 위한 출력 데이터로 출력할 수 있다. At this time, in the outputting step, the operation speed of the user is not less than a predetermined value, and a part of the reference two-dimensional image and the corresponding depth image, the reference depth image, and the corresponding two- The output data for the operation analysis can be output when the operation speed of the user is changed to less than the preset value after storing the remaining data.

이 때, 상기 표시하는 단계에서는, 상기 사용자의 동작 중 기 설정된 기준 동작과 소정치 이상 다른 상기 사용자의 동작을 표시할 수 있다. At this time, in the displaying step, an operation of the user that is different from a preset reference operation by a predetermined value or more may be displayed.

그리고, 상기한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 골프 동작 분석 방법은 카메라부의 영상 센서에서 사용자의 골프 동작에 대한 2차원 영상을 획득하는 단계; 상기 카메라부의 깊이 센서에서 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 단계; 상기 2차원 영상 및 상기 뎁스 영상을 기초로 한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 단계; 및 상기 2차원 영상 및 상기 스켈레톤 정보에 기초하여 상기 사용자의 관절 위치를 표시부에 표시하는 단계를 포함한다. According to another aspect of the present invention, there is provided a golf motion analyzing method including: obtaining a two-dimensional image of a user's golf motion in an image sensor of a camera; Acquiring a depth image including a depth value of each pixel of the two-dimensional image from a depth sensor of the camera unit; Extracting skeleton information of the user through analysis based on the two-dimensional image and the depth image; And displaying the joint position of the user on the display unit based on the two-dimensional image and the skeleton information.

이 때, 상기 뎁스 영상을 획득하는 단계에서는, 상기 2차원 영상을 획득하는 것과 교대로 상기 뎁스 영상을 획득하도록 진행되며, 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 촬영 속도 증가 단계를 더 포함할 수 있다. At this time, in the step of acquiring the depth image, the depth image is acquired to acquire the depth image alternately with acquiring the two-dimensional image, and the corresponding depth image corresponding to the reference two- Or a shooting speed increasing step of generating a corresponding two-dimensional image.

이 때, 상기 추출하는 단계에서는, 상기 사용자의 스켈레톤 정보로 스켈레톤 머리 정보를 포함하여 추출하고, 상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 어드레스 구간으로부터 임팩트 구간까지의 머리 이동을 표시할 수 있다. At this time, in the extracting step, skeleton head information is extracted as the skeleton information of the user, and in the displaying step, head movement from the address section to the impact section during the golf operation of the user can be displayed .

이 때, 상기 추출하는 단계에서는, 상기 출력 데이터에 대한 분석을 통해 상기 사용자의 발목 관절의 위치 값에 기반하여 발 간격에 해당하는 값을 계산하고, 상기 표시하는 단계에서는, 상기 사용자의 골프 동작에서 상기 발 간격을 표시할 수 있다.At this time, in the extracting step, a value corresponding to the foot interval is calculated based on the position value of the ankle joint of the user through analysis of the output data, and in the displaying step, The foot interval can be displayed.

이 때, 상기 추출하는 단계에서는, 상기 사용자의 무게중심의 좌표와 오른발 혹은 왼발 관절의 좌표를 계산하고, 상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 백스윙 구간 혹은 다운스윙 구간에서 상기 무게중심 및 상기 오른발 혹은 왼발 관절의 위치를 표시할 수 있다. In the extracting step, the coordinates of the center of gravity of the user and the coordinates of the right foot or the left foot joint are calculated. In the displaying step, in the backswing section or the downswing section of the user's golf operation, The position of the right foot or the left foot joint can be displayed.

이 때, 상기 추출하는 단계에서는, 어깨, 팔꿈치, 손 관절의 좌표에 기반하여 팔각도에 해당되는 값을 계산하고, 상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 임팩트 구간에서 상기 어깨, 팔꿈치, 손 관절을 이은 선을 표시할 수 있다. At this time, in the extracting step, a value corresponding to the octagon is calculated based on the coordinates of the shoulder, the elbow and the hand joint, and in the displaying step, the shoulder, elbow, You can mark the line after the joint.

이 때, 상기 추출하는 단계에서는, 머리 및 좌우측 골반의 좌표에 기초하여 역척추각에 해당되는 값을 계산하고, 상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 백스윙 구간에서 왼발 혹은 오른발과 좌우측 골반의 중점을 이은 선을 표시할 수 있다. At this time, in the extracting step, a value corresponding to the inverse vertebral angle is calculated based on the coordinates of the head and the left and right pelvis, and in the displaying step, in the backswing section of the user's golf, Can be displayed.

또한, 상기한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 상기한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 골프 동작 분석 장치는 사용자의 동작에 대한 2차원 영상을 획득하는 영상 센서 및 상기 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 깊이 센서를 포함하는 카메라부; 상기 카메라부에서 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 제어부; 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상을 출력 데이터로 출력하는 출력부; 상기 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 추출부; 및 상기 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시하는 표시부를 포함한다.According to another aspect of the present invention, there is provided an apparatus for analyzing a golf motion according to an embodiment of the present invention. The apparatus includes an image sensor for acquiring a two- And a depth sensor for acquiring the depth image including acquiring the two-dimensional image and containing a depth value for each pixel of the two-dimensional image alternately in time; A control unit for generating a corresponding depth image or a corresponding two-dimensional image corresponding to a reference two-dimensional image or a reference depth image acquired at a predetermined time by the camera unit; An output unit for outputting the reference two-dimensional image and the corresponding depth image, the reference depth image, and the corresponding two-dimensional image as output data; An extracting unit for extracting the skeleton information of the user through analysis of the output data; And a display unit for displaying an operation of the user based on the skeleton information.

본 발명에 따르면, 효율적으로 고속 촬영을 구현한 골프 동작 분석 시스템을 제공할 수 있다. According to the present invention, it is possible to provide a golf motion analysis system that efficiently implements high-speed shooting.

그리고, 본 발명은 스켈레톤 정보를 추출하여 동작을 세밀하게 분석함으로써 사용자에게 보다 정확하고 다양한 정보를 제공할 수 있다. In addition, the present invention extracts skeleton information and analyzes operations in detail, thereby providing more accurate and diverse information to the user.

또한, 본 발명은 고속 동작을 포함하고 있는 골프 스윙의 분석에 있어서, 사용자에게 실시간 정보를 제공하면서도 고속 동작 구간에 대한 안정적인 분석을 가능케 한다.In addition, the present invention enables stable analysis of a high-speed operation section while providing real-time information to a user in analysis of a golf swing including a high-speed operation.

도 1은 본 발명의 실시예에 따른 골프 동작 분석 방법을 설명하기 위한 플로우챠트이다.
도 2는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 카메라부의 깊이 센서 및 영상 센서의 영상 획득 타이밍에 대하여 설명하기 위한 도면이다.
도 3은 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 촬영 속도를 증가하기 위한 단계를 추가 설명하기 위한 플로우챠트의 일 실시예이다.
도 4는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 촬영 속도를 증가하기 위한 단계를 추가 설명하기 위한 플로우챠트의 다른 실시예이다.
도 5는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 스켈레톤 정보 추출 단계를 보다 구체적으로 설명하기 위한 플로우챠트이다.
도 6 및 도 7은 스켈레톤 정보 추출 단계에 있어서, 사용자 영역화 단계를 설명하기 위한 도면이다.
도 8은 스켈레톤 정보 추출 단계에 있어서, 확률 분포를 산정하는 방법을 설명하기 위한 도면이다.
도 9는 스켈레톤 정보 추출 단계의 계산량을 줄이기 위한 다중 스케일 기법을 설명하기 위한 도면이다.
도 10 내지 도 12는 사용자의 동작 속도에 따른 본 발명의 모드 변경에 대하여 설명하기 위한 도면이다.
도 13은 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 표시부에의 표시의 예시를 나타낸 도면이다.
도 14 내지 도 16은 분석된 사용자의 동작이 기준 동작에 맞는 경우와 맞지 않았을 경우의 표시부에서의 표시의 예시를 나타낸 것이다.
도 17은 표시하는 단계에서 발 간격을 표시하는 일 예이다.
도 18 및 도 19는 사용자의 동작 분석을 통해 스웨이(Sway)를 판별하는 일 예를 도시한 것이다.
도 20 및 도 21은 사용자의 동작 분석을 통해 행잉 백(Hanging Back)을 판별하는 일 예를 도시한 것이다.
도 22 및 도 23은 사용자의 동작 분석을 통해 치킨 윙(Chicken wing)을 판별하는 일 예를 도시한 것이다.
도 24 및 도 25는 사용자의 동작 분석을 통해 역척추각(Reverse spine angle)을 판별하는 일 예를 도시한 것이다.
도 26은 사용자의 동작 분석을 통해 슬라이드(Slide)를 판별하는 일 예를 도시한 것이다.
도 27 및 도 28은 사용자의 동작 분석을 통해 평평한 어깨(Flat shoulder plane)을 판별하는 일 예를 도시한 것이다.
도 29는 사용자의 동작 분석을 통해 머리가 고정되어 있는지를 판별하는 일 예를 도시한 것이다.
도 30은 본 발명의 실시예에 따른 골프 동작 분석 장치의 구성을 나타낸 블록도이다.
1 is a flow chart for explaining a golf operation analysis method according to an embodiment of the present invention.
FIG. 2 is a diagram for explaining image acquisition timings of a depth sensor and an image sensor of a camera unit in a golf operation analysis method according to an embodiment of the present invention.
FIG. 3 is a flow chart for further illustrating a step for increasing a photographing speed in a golf operation analyzing method according to an embodiment of the present invention.
4 is another embodiment of a flowchart for further illustrating a step for increasing a photographing speed in a golf operation analyzing method according to an embodiment of the present invention.
FIG. 5 is a flow chart for explaining the skeleton information extracting step in more detail in the golf operation analyzing method according to the embodiment of the present invention.
FIGS. 6 and 7 are views for explaining the user regionization step in the skeleton information extraction step.
FIG. 8 is a diagram for explaining a method of calculating a probability distribution in the skeleton information extracting step. FIG.
9 is a view for explaining a multi-scale technique for reducing the amount of calculation of the skeleton information extraction step.
10 to 12 are diagrams for explaining the mode change of the present invention according to the operation speed of the user.
13 is a diagram showing an example of a display on a display unit in the golf operation analysis method according to the embodiment of the present invention.
Figs. 14 to 16 show examples of display on the display unit when the analyzed user's operation is not suitable for the reference operation or not.
FIG. 17 shows an example of displaying the foot interval in the displaying step.
FIGS. 18 and 19 show an example of determining a Sway through an operation analysis of a user.
20 and 21 show an example of determining hanging back by analyzing the operation of the user.
22 and 23 illustrate an example of determining a chicken wing through an analysis of a user's action.
FIGS. 24 and 25 show an example in which the reverse spine angle is discriminated by analyzing the motion of the user.
FIG. 26 shows an example of determining a slide through analysis of a user's action.
27 and 28 illustrate an example of discriminating a flat shoulder plane through an analysis of a user's action.
FIG. 29 illustrates an example of determining whether a head is fixed through an operation analysis of a user.
30 is a block diagram showing a configuration of a golf motion analyzing apparatus according to an embodiment of the present invention.

본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.

이하, 본 발명의 일 실시예에 따른 골프 동작 분석 방법에 대하여 설명하도록 한다. Hereinafter, a golf operation analysis method according to an embodiment of the present invention will be described.

도 1은 본 발명의 실시예에 따른 골프 동작 분석 방법을 설명하기 위한 플로우챠트이다.1 is a flow chart for explaining a golf operation analysis method according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 골프 동작 분석 방법은 먼저, 카메라부의 영상 센서에서 사용자의 동작에 대한 2차원 영상을 획득한다(S100).Referring to FIG. 1, a golf motion analyzing method according to an embodiment of the present invention acquires a two-dimensional image of a user's operation in an image sensor of a camera unit (S100).

그리고, S100 단계에서 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 카메라부의 깊이 센서에서 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득한다(S200). 도 2는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 카메라부의 깊이 센서 및 영상 센서의 영상 획득 타이밍에 대하여 설명하기 위한 도면이다. 도 2에서 각 화살표는 영상을 획득하는 시점을 표현하는 것이며, S100 단계와 S200 단계를 통해 깊이 센서와 영상 센서가 시간적으로 상호 교대하여 영상을 획득하는 개념이 도시되어 있다. 예를 들어, 만약 시간 t-1 에서 2차원 영상이 획득되었다면 시간 t 에서는 뎁스 영상이 획득되며, 만약 시간 t-1에서 뎁스 영상이 획득되었다면 시간 t 에서는 2차원 영상이 획득될 수 있다.In step S200, a depth image including a depth value for each pixel of the two-dimensional image is acquired from the depth sensor of the camera unit in order to obtain a two-dimensional image in step S200. FIG. 2 is a diagram for explaining image acquisition timings of a depth sensor and an image sensor of a camera unit in a golf operation analysis method according to an embodiment of the present invention. In FIG. 2, each arrow represents a time point at which an image is acquired, and the concept of acquiring an image by mutually alternating between the depth sensor and the image sensor in steps S100 and S200 is shown. For example, if a two-dimensional image is acquired at time t-1, a depth image is acquired at time t, and if a depth image is acquired at time t-1, a two-dimensional image can be acquired at time t.

이 후, 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성한다(S300). 즉, S300 단계에서 카메라부는 영상 센서로부터 획득한 2차원 영상, 예를 들어, RGB 영상과 깊이 센서로부터 획득한 뎁스 영상을 합성하여 각 영상의 프레임율(frame rate, 시간당 프레임 수)을 증가시킬 수 있다. 카메라부는 교대 촬영에 의해 번갈아 가며 획득되는 제1 2차원 영상과 제1 뎁스 영상 각각에 대해 대응하는 제2 뎁스 영상과 제2 2차원 영상을 합성하여 함께 출력함으로써, 실제적인 촬영속도를 두 배 증가시킬 수 있다.Thereafter, a corresponding depth image or a corresponding two-dimensional image corresponding to the reference two-dimensional image or the reference depth image acquired at a predetermined time is generated (S300). That is, in step S300, the camera unit synthesizes a two-dimensional image obtained from the image sensor, for example, an RGB image and a depth image acquired from the depth sensor, thereby increasing the frame rate of each image have. The camera unit synthesizes the second depth image and the second two-dimensional image corresponding to the first two-dimensional image and the first depth image, which are alternately obtained by the alternate photographing, and outputs them together, thereby doubling the actual photographing speed .

S300 단계 이후에는, 기준 2차원 영상 및 대응 뎁스 영상 혹은 기준 뎁스 영상 및 대응 2차원 영상을 동작 분석을 위한 출력 데이터로 출력한다(S400). 이 때, S400 단계에서는 사용자의 동작 속도에 따라 동작 분석을 위한 출력 데이터의 양을 조절할 수 있다. 이의 구체적인 내용에 대하여는 도 10 내지 도 12와 함께 후술하도록 한다. After step S300, the reference two-dimensional image and the corresponding depth image or the reference depth image and the corresponding two-dimensional image are output as output data for operation analysis (S400). At this time, in step S400, the amount of output data for operation analysis can be adjusted according to the operation speed of the user. Specific details thereof will be described later in conjunction with FIG. 10 to FIG.

이 후, S400 단계의 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출한다(S500). 이 때, 스켈레톤 정보는, 스켈레톤 관절 정보 및 스켈레톤 머리 정보를 포함할 수 있다. 스켈레톤 관절 정보로는 예를 들어, 목, 좌우 어깨, 좌우 팔꿈치, 좌우 손목, 좌우 엉치, 좌우 무릎, 좌우 발목에 대한 정보들이 포함될 수 있다. 그리고, RDF(Randomized Decision Forest) 기법을 이용하여 스켈레톤 정보를 추출할 수 있다. 픽셀 데이터로부터 배경 영역과 사용자 영역을 깊이 정보 값에 기초하여 설정하고, 설정된 사용자 영역 내로 데이터 범위가 축소된 픽셀데이터만을 기초하여 설정된 사용자 영역 내의 픽셀이 사용자 신체 내의 스켈레톤 관절들에 해당될 스켈레톤 관절들에 대한 확률 분포를 도출하고, 높은 확률 분포 값의 스켈레톤 관절을 픽셀의 영역으로 분류하여 사용자 신체 내의 특정 위치에 해당하는 픽셀을 추정할 수 있다.Thereafter, the skeleton information of the user is extracted through analysis of the output data of step S400 (S500). At this time, the skeleton information may include skeleton joint information and skeleton head information. The skeleton joint information may include, for example, information about the neck, left and right shoulders, left and right elbows, left and right wrists, right and left unilateral, left and right knees, and left and right ankles. Then, the skeleton information can be extracted using RDF (Randomized Decision Forest). A method of setting a background region and a user region from pixel data based on a depth information value and setting a pixel in a user region set based only on pixel data whose data range is reduced within a set user region to be a skeleton joint And classifies the skeleton joint of the high probability distribution value into the area of the pixel to estimate a pixel corresponding to a specific position in the user's body.

S500 단계에서는, 사용자의 스켈레톤 정보로 머리 정보를 포함하여 추출하고, 출력 데이터에 대한 분석을 통해 사용자의 발목 관절의 위치 값에 기반하여 발 간격에 해당하는 값을 계산할 수 있다. 그리고, S500 단계에서는, 사용자의 무게중심의 좌표와 오른발 혹은 왼발 관절의 좌표를 계산하고, 어깨, 팔꿈치, 손 관절의 좌표에 기반하여 팔각도에 해당되는 값을 계산하며, 머리 및 좌우측 골반의 좌표에 기초하여 역척추각에 해당되는 값을 계산할 수 있다. 또한, S500 단계에서는, 머리, 좌우측 골반, 좌우측 어깨의 좌표에 기반하여 머리와 골반을 연결하는 선과 양 어깨를 연결하는 선 사이의 각도를 계산하고, 출력 데이터의 픽셀 데이터에 기반하여 3차원 포인트 클라우드를 계산할 수 있다. In step S500, the skeleton information of the user is extracted including the head information, and the value corresponding to the foot interval can be calculated based on the position value of the ankle joint of the user through analysis of the output data. In step S500, the coordinates of the center of gravity of the user and the coordinates of the right foot or the left foot joint are calculated. Based on the coordinates of the shoulder, elbow, and hand joints, values corresponding to the octagon are calculated. The value corresponding to the inverse vertebra angle can be calculated. In step S500, the angle between the line connecting the head and the pelvis to the line connecting the head and the pelvis based on the coordinates of the head, the left and right pelvis, and the right and left shoulders is calculated. Based on the pixel data of the output data, Can be calculated.

그리고, 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시부에 표시한다(S600). S600 단계에서는 사용자의 동작 중 기 설정된 기준 동작과 소정치 이상 다른 상기 사용자의 동작을 표시부에 표시할 수 있다. 그리고 S600 단계에서는, 사용자의 골프 동작 중 어드레스 구간으로부터 임팩트 구간까지의 머리 이동을 표시할 수 있고, 사용자의 골프 동작에서 상기 발 간격을 표시할 수 있다. 또한, S600 단계에서는, 사용자의 골프 동작 중 백스윙 구간 혹은 다운스윙 구간에서 상기 무게중심 및 상기 오른발 혹은 왼발 관절의 위치를 표시할 수 있고, 사용자의 골프 동작 중 임팩트 구간에서 상기 어깨, 팔꿈치, 손 관절을 이은 선을 표시할 수 있으며, 사용자의 골프 동작 중 백스윙 구간에서 왼발 혹은 오른발과 좌우측 골반의 중점을 이은 선을 표시할 수 있다. 또한, S600 단계에서는, 사용자의 골프 동작 중 백스윙탑 구간에서 머리와 골반을 연결하는 선과, 양 어깨를 연결하는 선을 표시할 수 있고, 표시부에 3차원 포인트 클라우드로 상기 스켈레톤 정보를 표시할 수 있다. Then, the operation of the user is displayed on the display unit based on the skeleton information (S600). In operation S600, the operation of the user, which is different from the predetermined reference operation by a predetermined value, may be displayed on the display unit. In step S600, the head movement from the address section to the impact section during the golf operation of the user can be displayed, and the foot interval can be displayed in the user's golf operation. In step S600, the center of gravity and the position of the right or left foot joint may be displayed in the backswing section or the downswing section of the user's golf operation. In the impact section of the user's golf operation, the shoulder, elbow, And a line connecting the center of the left foot or the right foot and the center of the left and right pelvis in the backswing section during the golfing operation of the user can be displayed. In step S600, a line connecting the head and the pelvis and a line connecting both shoulders in the back swing top section of the user's golf swing can be displayed, and the skeleton information can be displayed on the display section in a three-dimensional point cloud .

본 발명의 실시예에 따른 골프 동작 분석 방법은 도 1의 S100 단계, S200 단계, S500 단계 및 S600 단계를 포함하여 수행될 수 있다. 즉, 본 발명의 다른 실시예에 따른 골프 동작 분석 방법은 카메라부의 영상 센서에서 사용자의 골프 동작에 대한 2차원 영상을 획득하는 단계, 카메라부의 깊이 센서에서 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 단계, 2차원 영상 및 뎁스 영상을 기초로 한 분석을 통해 사용자의 스켈레톤 정보를 추출하는 단계, 및 2차원 영상 및 스켈레톤 정보에 기초하여 사용자의 관절 위치를 표시부에 표시하는 단계를 포함할 수 있다. The method for analyzing a golf operation according to an embodiment of the present invention may be performed by including step S100, step S200, step S500, and step S600 of FIG. That is, the golf motion analyzing method according to another embodiment of the present invention includes the steps of acquiring a two-dimensional image of a user's golf operation in an image sensor of a camera unit, acquiring a depth value of each pixel of the two- Extracting the skeleton information of the user through analysis based on the two-dimensional image and the depth image, and displaying the joint position of the user on the display unit based on the two-dimensional image and skeleton information Step < / RTI >

이하에서는 도 1의 S300 단계에 따른 촬영 속도 증가를 위한 방법을 보다 구체적으로 설명하도록 한다. Hereinafter, a method for increasing the photographing speed according to step S300 of FIG. 1 will be described in more detail.

도 3은 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 촬영 속도를 증가하기 위한 단계를 추가 설명하기 위한 플로우챠트의 일 실시예이다. FIG. 3 is a flow chart for further illustrating a step for increasing a photographing speed in a golf operation analyzing method according to an embodiment of the present invention.

도 3을 참조하면, S300 단계의 일 실시예에서는 먼저, 깊이 센서가 제1 시각에 제1 뎁스 영상을 획득하고(S311), 영상 센서가 제1 시각 이후의 제2 시각에 기준 2차원 영상으로 제1 2차원 영상을 획득한다(S312). 이의 S311 단계 및 S312 단계에서 획득한 제1 뎁스 영상 및 제1 2차원 영상은 상기 S100 단계와 S200 단계를 통해 획득한 뎁스 영상 및 2차원 영상일 수 있다. Referring to FIG. 3, in operation S300, the depth sensor acquires a first depth image at a first time (S311), and the image sensor acquires a reference two-dimensional image at a second time after the first time And acquires the first two-dimensional image (S312). The first depth image and the first two-dimensional image acquired in steps S311 and S312 may be a depth image and a two-dimensional image obtained through steps S100 and S200.

S312 단계 이 후, 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 상기 제1 시각의 제2 뎁스 영상을 생성한다(S313).After step S312, the first depth image is projected to the viewpoint of the image sensor to generate a second depth image of the first view (S313).

그리고, 1 2차원 영상과 제2 뎁스 영상 사이의 모션 벡터를 추정한다(S314).Then, a motion vector between the one-dimensional image and the second depth image is estimated (S314).

이 후, 모션 벡터를 이용하여 상기 제2 뎁스 영상으로부터 상기 제2 시각에서의 투사된 제3 뎁스 영상을 렌더링한다(S315).Thereafter, the projected third depth image at the second time is rendered from the second depth image using the motion vector (S315).

그리고, 제3 뎁스 영상을 상기 깊이 센서 시점으로 투사하여 상기 대응 뎁스 영상으로 상기 제2 시각에서의 제4 뎁스 영상을 생성한다(S316). 도 1의 S400 단계에서는 상기 제1 2차원 영상과 상기 제4 뎁스 영상을 출력 데이터로 출력할 수 있다. Then, a third depth image is projected to the depth sensor view to generate a fourth depth image at the second time with the corresponding depth image (S316). In step S400 of FIG. 1, the first two-dimensional image and the fourth depth image may be output as output data.

도 4는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 촬영 속도를 증가하기 위한 단계를 추가 설명하기 위한 플로우챠트의 다른 실시예이다.4 is another embodiment of a flowchart for further illustrating a step for increasing a photographing speed in a golf operation analyzing method according to an embodiment of the present invention.

도 4를 참조하면, S300 단계의 다른 실시예에서는 먼저, 영상 센서가 제1 시각에 제1 2차원 영상을 획득하고(S321), 깊이 센서가 제1 시각 이후의 제2 시각에 기준 뎁스 영상으로 제1 뎁스 영상을 획득한다(S322). 이의 S321 단계 및 S322 단계에서 획득한 제1 2차원 영상 및 제1 뎁스 영상은 상기 S100 단계와 S200 단계를 통해 획득한 뎁스 영상 및 2차원 영상일 수 있다.Referring to FIG. 4, in another embodiment of S300, the image sensor acquires a first two-dimensional image at a first time (S321), and the depth sensor acquires a reference depth image at a second time after the first time And acquires the first depth image (S322). The first two-dimensional image and the first depth image acquired in steps S321 and S322 may be the depth image and the two-dimensional image obtained through steps S100 and S200.

S322 단계 이 후, 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 제2 뎁스 영상을 생성한다(S323).After step S322, the first depth image is projected to the viewpoint of the image sensor to generate a second depth image (S323).

그리고, 제1 2차원 영상과 상기 제2 뎁스 영상 사이의 모션 벡터를 추정한다(S324).Then, a motion vector between the first two-dimensional image and the second depth image is estimated (S324).

이 후, 모션 벡터를 이용하여 상기 제1 2차원 영상으로부터 상기 대응 2차원 영상으로 상기 제2 시각에서의 제2 2차원 영상을 렌더링한다(S325). 도 1의 S400 단계에서는 상기 제1 뎁스 영상과 상기 제2 2차원 영상을 출력 데이터로 출력할 수 있다. Thereafter, the second two-dimensional image at the second time is rendered from the first two-dimensional image to the corresponding two-dimensional image using the motion vector (S325). In step S400 of FIG. 1, the first depth image and the second two-dimensional image may be output as output data.

S313 단계 및 S323 단계는 깊이 센서의 내부 파라미터를 활용하여 뎁스 영상의 각 픽셀에 대응하는 3차원 좌표를 계산하는 방법일 수 있다. 이 경우, 3차원 좌표를 영상 센서와 깊이 센서 사이의 외부 파라미터를 활용하여 영상 센서의 영상 평면(Image Plane)으로 투사한다.Steps S313 and S323 may be a method of calculating three-dimensional coordinates corresponding to each pixel of the depth image using internal parameters of the depth sensor. In this case, the 3D coordinates are projected onto the image plane of the image sensor using the external parameters between the image sensor and the depth sensor.

S314 단계 및 S324 단계에서는 제1 2차원 영상과 투사된 제2 뎁스 영상 사이의 모션 정보를 추정할 수 있다. 일 실시예에 있어서, 제1 RGB 영상의 각 픽셀에 대하여 뎁스 영상의 탐색 영역 내에 존재하는 픽셀들과 매칭을 수행하여 모션 벡터를 계산할 수 있다. 두 영상의 모달리티(Modality)가 다르므로 매칭 대상인 두 패치 사이의 상호 정보량(Mutual Information)을 사용하여 대응 관계를 찾아낼 수 있다:In step S314 and step S324, motion information between the first two-dimensional image and the projected second depth image may be estimated. In one embodiment, motion vectors may be calculated by matching pixels in the search region of the depth image with respect to each pixel of the first RGB image. Since the modalities of the two images are different, we can use mutual information between two matching patches to find the correspondence:

Figure pat00001
.
Figure pat00001
.

상기 S315 단계 및 S325 단계에서는 시간 t-1 에서의 영상과 모션 정보를 사용하여 시간 t 에서의 영상을 렌더링을 통해 생성할 수 있다:In steps S315 and S325, the image at time t may be generated through rendering using the image and motion information at time t-1:

Figure pat00002
.
Figure pat00002
.

여기서 x 는 픽셀 좌표이며, m(x) 는 픽셀 x 에서의 모션 벡터이다.Where x is the pixel coordinate and m (x) is the motion vector at pixel x .

이하에서는 도 1의 S500 단계에 따른 스켈레톤 정보 추출의 단계를 보다 구체적으로 설명하도록 한다. Hereinafter, the step of skeleton information extraction according to step S500 of FIG. 1 will be described in more detail.

도 5는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 스켈레톤 정보 추출 단계를 보다 구체적으로 설명하기 위한 플로우챠트이다. FIG. 5 is a flow chart for explaining the skeleton information extracting step in more detail in the golf operation analyzing method according to the embodiment of the present invention.

도 5를 참조하면, 도 1의 S400을 통해 획득한 출력 데이터에서 픽셀 데이터를 추출한다(S511). 이 때, 픽셀 데이터는 각 픽셀의 깊이 정보, RGB값, 및 조도 값 중 적어도 하나일 수 있다. Referring to FIG. 5, pixel data is extracted from the output data acquired through S400 of FIG. 1 (S511). At this time, the pixel data may be at least one of depth information, RGB value, and illuminance value of each pixel.

그리고, 픽셀 데이터에 기초하여, 사용자에 해당하는 영역의 픽셀을 선정한다(S512). S512 단계는 사용자 영역화 단계이며, 도 6 및 도 7을 참조하면, 사용자 영역화 된 것의 예시들이 도시된다. S512 단계는 다양한 방법에 의해 구현될 수 있다. 예를 들어, 각 픽셀의 거리 값의 최대 값과 최소 값 사이의 분포를 얻고, 학습된 특정 분포의 값들의 군을 사용자 영역으로 추정할 수 있다. Then, based on the pixel data, a pixel of an area corresponding to the user is selected (S512). Step S512 is a user zoning step, and referring to Figs. 6 and 7, examples of user zoning are shown. Step S512 may be implemented by various methods. For example, a distribution between the maximum value and the minimum value of the distance value of each pixel can be obtained, and the group of values of the learned specific distribution can be estimated as the user area.

S512 단계 이후, 사용자 영역화 된 픽셀들 각각에 대하여 스켈레톤 관절에 해당하는지에 대한 확률 분포값을 산정한다(S513). S513 단계에서 확률 분포 값을 얻는 방법은, Randomized Decision Forest(이하, RDF) 기법에 의할 수 있다. 상기 RDF에 기초한 확률 분포 값은, 하나 이상의 결정 트리를 순회하여 리프 노드에 저장되어 있는 확률 분포 값을 합산하여 얻어진다. 결정 트리는 루트 노드 및 상기 루트 노드(root node)로부터 1차 분류된 제 1 자식 노드 및 상기 제 1 자식 노드로부터 분류된 제 2 자식 노드와 같은 방식으로 여러 단계로 분류된 자식 노드를 트리 형식으로 포함한다. 가장 하부에 위치하는 자식 노드를 리프 노드(leaf node)로 정의한다. 상위 노드의 하부 노드로의 분리는 하나 이상의 픽셀 정보에 기초한 특징 변수와 미리 정의된 문턱치 변수를 포함하는 노드 분리 변수에 의한다. 도 8은 확률 분포를 산정하는 방법을 설명하기 위한 도면으로, 입력 뎁스 영상과 테스트 픽셀이 주어진 경우 결정 트리를 통해 확률 분포를 얻는 과정을 도시한 것이다. After step S512, a probability distribution value of whether each of the user-domain pixels corresponds to a skeleton joint is calculated (S513). The method of obtaining the probability distribution value in step S513 can be performed by the Randomized Decision Forest (RDF) technique. The RDF-based probability distribution value is obtained by summing the probability distribution values stored in the leaf node by traversing one or more decision trees. The decision tree includes a root node and child nodes classified into a plurality of stages in the same manner as a first child node first classified from the root node and a second child node classified from the first child node in a tree format do. The child node at the bottom is defined as a leaf node. The separation of an ancestor into a child node is by a node separation variable that includes a feature variable based on one or more pixel information and a predefined threshold variable. FIG. 8 is a diagram for explaining a method of calculating a probability distribution. FIG. 8 illustrates a process of obtaining a probability distribution through a decision tree when an input depth image and a test pixel are given.

뎁스 영상 I 와 픽셀 x 가 결정 트리에 주어졌다고 가정하면, 루트 노드에서부터 시작하여 리프 노드에 도달할 때까지 다음과 같은 약-분류 규칙(weak classification rule)을 각각의 노드에 대해 반복 적용하여 트리를 순회(traverse)한다:Assuming that the depth image I and pixel x are given in the decision tree, we apply the following weak classification rule to each node, starting from the root node until reaching the leaf node, Traverse:

Figure pat00003
Figure pat00003

특징(feature)으로는 다음과 같은 간단한 뎁스 비교 특징을 사용한다:We use the following simple depth comparison feature as a feature:

Figure pat00004
Figure pat00004

여기서 θ = (u, v) 는 두 옵셋(offset) 벡터로 이루어진 특징 변수(feature parameter)를 의미한다. 우리는 트리 t 의 리프 노드에서 관절 클래스들에 대한 이산 확률 분포(discrete probability distribution)인 Pt(c|I,x)를 얻게 되는데, 랜덤 포레스트의 모든 트리에 대해 이러한 분포를 결합하여 다음과 같은 최종 분포를 계산한다:Here, θ = (u, v) denotes a feature parameter consisting of two offset vectors. We obtain the discrete probability distribution Pt (c | I, x) for the joint classes at the leaf node of the tree t, combining these distributions for all the trees in the random forest, Calculate the distribution:

Figure pat00005
Figure pat00005

랜덤 포레스트를 학습하는 알고리즘은 다음과 같다. 각각의 트리에 대해서 기존 학습 영상 데이터에서 교체를 포함하여(with replacement) 균일하게(uniformly) 샘플링하여 새로운 학습 영상 데이터를 구성한다. 이러한 새로운 학습 데이터를 사용하여 특정한 정지 조건(stopping criteria)이 만족될 때까지 다음과 같은 절차를 재귀적으로(recursively) 적용하여 트리를 확장시킨다:The algorithm for learning the random forest is as follows. For each tree, new learning image data is composed by uniformly sampling with existing replacement training image data with replacement. Using this new learning data, the following procedure is recursively applied to extend the tree until certain stopping criteria are satisfied:

a. 특징 변수 θ 와 문턱치 변수 τ 로 구성된 노드 분리 변수 φ = (θ, τ) 의 집합을 랜덤하게 생성한다.a. We randomly generate a set of node separation variables φ = (θ, τ) consisting of a feature variable θ and a threshold variable τ.

b. 각각의 분리 변수 φ 에 대하여 학습 데이터 Q = {(I, x)} 를 다음과 같이 좌/우 집합으로 분리한다:b. For each separate variable φ, we separate the learning data Q = {(I, x)} into a left / right set as follows:

Figure pat00006
Figure pat00006

c. 분리 변수에 대응하는 좌/우 집합에 대하여 다음과 같은 정보량 증가치(information gain)을 계산한다:c. The following information gain is calculated for the left / right set corresponding to the separation variable:

Figure pat00007
Figure pat00007

여기에서 H(Q) 는 집합 Q 의 정규화된 히스토그램 PQ 의 Shannon 엔트로피를 나타낸다.Where H (Q) represents the Shannon entropy of the normalized histogram PQ of set Q.

d. 최대 정보량 증가치를 가지는 노드 분리 변수를 선택하고 이를 현재 노드에 할당한다:d. Select a node separation variable with the maximum amount of information increase and assign it to the current node:

Figure pat00008
Figure pat00008

e. 만약 최대 정보량 증가치가 사전에 정의된 문턱치보다 작거나 트리에서의 현재 노드에 대한 깊이가 최대값에 도달하였다면 알고리즘을 중단하고 트리를 반환한다. 그렇지 않다면 위의 단계 a-d를 왼쪽 및 오른쪽 노드에 재귀적으로 적용한다.e. If the maximum amount of information increase is less than the predefined threshold or the depth for the current node in the tree reaches the maximum value, the algorithm is aborted and the tree is returned. Otherwise, apply steps a-d above recursively to the left and right nodes.

S513 단계를 통해 산정된 확률 분포값에 따라, 소정의 픽셀들에 대하여 스켈레톤 관절로 정의한다(S514).In step S514, the predetermined pixels are defined as skeleton joints according to the calculated probability distribution values in step S513.

그리고, 스켈레톤 관절로 정의된 소정의 픽셀들에서의 중심점을 정의한다(S515).Then, a center point in predetermined pixels defined by the skeleton joint is defined (S515).

S514 단계 및 S515 단계는, 상기 픽셀 데이터의 해상도를 낮추는 단계, 낮은 해상도에 기초하여 스켈레톤 관절 및 중심점을 정의하는 단계, 상기 픽셀 데이터의 해상도를 높이는 단계, 상기 낮은 해상도에 기초하여 도출된 중심점에서의 소정 거리만큼의 영역을 설정하는 단계, 및 상기 영역내에서의 픽셀에 기초하여 스켈레톤 관절 및 중심점을 재차 정의하는 단계가 진행되어 스켈레톤 관절 및 중심점을 정의할 수 있다. 도 9는 스켈레톤 정보 추출 단계의 계산량을 줄이기 위한 다중 스케일 기법을 설명하기 위한 도면으로, 해상도 조절에 의하여 스켈레톤 관절 및 중심점을 정의하는 단계의 예시를 나타낸다. 저해상도에서 적은 수의 픽셀에 기초하여 RDF 방법에 의해 중심점을 찾고, 중심점으로부터 일정 영역에 대해서만 고해상도로 RDF 방법에 의해 중심점을 찾는 방법으로서, 분석 신뢰도의 변동 없이, 사용되는 픽셀의 수를 줄여 효율을 증대할 수 있다.Steps S514 and S515 may include: lowering the resolution of the pixel data; defining a skeleton joint and a center point based on a lower resolution; increasing a resolution of the pixel data; Establishing an area of a predetermined distance, and defining a skeleton joint and a center point based on the pixels in the area, to define a skeleton joint and a center point. FIG. 9 is a view for explaining a multi-scale technique for reducing the amount of calculation in the skeleton information extracting step, and shows an example of a step of defining a skeleton joint and a center point by resolution adjustment. A method of finding the center point by the RDF method based on a small number of pixels at a low resolution and finding the center point by the RDF method at a high resolution only for a certain region from the center point. Can be increased.

한편, 제어부는 RDF의 계산 효율을 증대하기 위해 제 n차 자식 노드에 있어서의 각각의 확률 분포 값이 미리 정한 값을 넘지 않는 노드는 더 이상 분류하지 아니하도록 하는 방법으로서, 모든 결정 트리에서 리프 노드 값을 얻는 것이 아닌 높은 확률 값의 노드에서만 리프 노드 값을 도출하는 방법을 적용할 수 있다.In order to increase the computation efficiency of the RDF, the control unit does not classify a node whose probability distribution value in the n-th child node does not exceed a predetermined value, It is possible to apply a method of deriving a leaf node value only from a node having a high probability value rather than obtaining a value.

좀더 자세히 설명하면, 스켈레톤 추출 알고리즘에서 랜덤 포레스트의 역할은 입력 영상의 각각의 픽셀에 대해 특정한 스켈레톤 관절에 대응하는 확률 값을 계산하는 것이다. 이는 각각의 결정 트리를 순회(traverse)하여 리프 노드에 저장되어 있는 확률 값을 합산함으로써 얻어진다. 이러한 확률 값은 관절별 확률 밀도 함수에 대한 3차원 점 각각의 공헌도를 의미한다. 캐스케이드 기법의 기본적인 아이디어는 작은 공헌도를 가지는 점들을 무시하는 것이다. 그러한 작은 공헌도의 점들에 대해서는 결정 트리를 완전히 순회할 필요가 없으므로, 리프 노드에 도달하기 전에 랜덤 포레스트 계산을 종료할 수 있다. 그러한 아이디어를 구현하기 위해 다음과 같이 결정 트리 t 의 각각의 노드 n 에 대한 auxiliary 확률 벡터 Ptn을 재귀적으로 정의한다:More specifically, the role of the random forest in the skeleton extraction algorithm is to calculate a probability value corresponding to a particular skeleton joint for each pixel of the input image. This is obtained by traversing each decision tree and summing the probability values stored in the leaf nodes. This probability value represents the contribution of each of the three-dimensional points to the joint density function. The basic idea of the cascade technique is to ignore points of small contribution. For such small contribution points, it is not necessary to traverse the decision tree completely, so it is possible to terminate the random forest calculation before reaching the leaf node. To implement such an idea, we recursively define an auxiliary probability vector Ptn for each node n of the decision tree t as follows:

Figure pat00009
Figure pat00009

여기에서 Pt 는 원래의 랜덤 포레스트 분류기의 리프 노드에 저장되어 있는 확률 분포를, 그리고 Pt l 과 Pt r 은 각각 노드 n 의 두 자식 노드에 대한 auxiliary 확률 벡터를 나타낸다. 입력 뎁스 I 와 픽셀 x 에 대한 랜덤 포레스트 계산 과정 중 노드 n 에 도달 하여 Pt n(c) = ρ 라고 가정하면, 이는 현재 노드 n에서 어떠한 경로를 선택하든 관절 클래스 c 에 대한 확률 Pt(c|I,x) 이 ρ 를 넘지 않는다는 것을 의미한다. 따라서 만약 ρ 가 사전에 정의된 작은 문턱치 ρnode 보다 작다면, 캐스케이드 알고리즘은 계산량을 줄이기 위해 트리 순회를 더 이상 진행시키지 않고 0의 확률값을 반환하게 된다.Where Pt is the probability distribution stored in the leaf node of the original random forest classifier and P t l and P t r are the auxiliary probability vectors for the two child nodes of node n, respectively. Assuming that P t n (c) = ρ is reached at node n during the random forest computation for input depth I and pixel x, this means that no matter what path is selected at current node n, the probability Pt (c | I, x) does not exceed ρ. Thus, if ρ is smaller than the predefined small threshold ρ node , the cascade algorithm will return a probability of zero without further processing the tree traversal to reduce the amount of computation.

한편, 제어부는 모든 스켈레톤 관절 클래스를 하나의 관절 클래스로 결합함에 의한 관절 또는 비관절 클래스로 분류하는 거절 트리를 추가 정의하며, 상기 거절 트리를 RDT의 도입 트리로 사용하고, 거절 트리에 따른 출력 확률이 미리 정한 값보다 큰 경우에 RDT를 진행하는 방법을 적용할 수 있다.Meanwhile, the control unit further defines a rejection tree for classifying all the skeleton joint classes into one joint class, and classifies the rejection tree as a joint or non-joint class. The rejection tree is used as an introduction tree of the RDT, and the output probability Is greater than the predetermined value, the method of proceeding with RDT can be applied.

구체적으로 설명하면, 상기한 캐스케이드 아이디어를 트리 레벨로 확장한 것이다. 기본적인 아이디어는 빠른 종료 확인의 역할을 하는 새로운 분류기를 정의하고 이를 랜덤 포레스트의 앞 단에 위치시키는 것이다. 새로운 분류기로 인한 추가적인 계산량 부담을 줄이기 위해서, 이러한 분류기는 간단한 구조를 가져야 하며, 또한 빠른 테스트가 가능해야 한다. 이를 위해 우리는 입력 픽셀을 관절 혹은 비-관절 클래스로 분류하는 랜덤화된 결정 트리를 정의하고, 이를 거절 트리(rejection tree)라 정의한다. 이러한 이진 결정 트리(binary decision tree)는 앞 절에서 랜덤 포레스트를 위해 도입한 학습 데이터에서 모든 스켈레톤 관절 클래스를 하나의 관절 클래스로 결합하여 사용함으로써 학습이 가능하다. 거절 트리의 출력 확률을 P0(c|I,x) 라고 하자. 개발된 트리 캐스케이드 기법은 P0(c|I,x) 가 작은 문턱치 ρtree 보다 클 때에만 랜덤 포레스트 계산을 수행한다. 스켈레톤 관절 포인트로부터 멀리 떨어져 있는 많은 픽셀들에 대해서 이 확률값은 추가적인 랜덤 포레스트 계산에 있어서 이러한 픽셀들을 무시해도 될 정도로 작은 값을 가진다.Specifically, the above-described cascade idea is extended to a tree level. The basic idea is to define a new classifier that serves as a quick end check and place it at the front end of the random forest. In order to reduce the additional computational burden of the new classifier, this classifier should have a simple structure and also be capable of quick testing. To do this, we define a randomized decision tree that classifies input pixels into joint or non-joint classes and defines them as rejection trees. This binary decision tree can be learned by combining all the skeleton joint classes into one joint class in the training data introduced for the random forest in the previous section. Let the output probability of the rejection tree be P 0 (c | I, x). The developed tree cascade technique performs random forest computation only when P 0 (c | I, x) is larger than the small threshold ρ tree . For many pixels far away from the skeleton joint point, this probability value is small enough to ignore these pixels in an additional random forest calculation.

이 후, 중심점에 기초하여 상기 스켈레톤 정보를 완성하여 추출한다(S516).Thereafter, the skeleton information is completed and extracted based on the center point (S516).

이하에서는 사용자의 동작 속도에 따라 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 출력 데이터를 출력할 때의 모드 변경에 대하여 설명하도록 한다. Hereinafter, the mode change when outputting the output data in the golf operation analyzing method according to the embodiment of the present invention will be described according to the operation speed of the user.

도 10 내지 도 12는 사용자의 동작 속도에 따른 본 발명의 모드 변경에 대하여 설명하기 위한 도면이다. 10 to 12 are diagrams for explaining the mode change of the present invention according to the operation speed of the user.

도 10을 참조하면, 사용자의 동작 속도가 기 설정된 수치 미만인 경우, 기준 2차원 영상 및 대응 뎁스 영상 혹은 기준 뎁스 영상 및 대응 2차원 영상 중 전부를 실시간으로 동작 분석을 위한 출력 데이터로 출력할 수 있다. 이는 실시간 동작인식 모드로 카메라부를 통해 n hz로 사용자를 촬영하고 촬영된 정보가 바로 상기 제어부를 거쳐 실시간으로 분석될 수 있다. 따라서 영상 저장 메모리나 결과 저장 메모리를 사용하지 않는다. 해당 모드의 장점은 사용자의 동작을 실시간으로 확인할 수 있다. 본 발명의 제어부는 이러한 실시간 동작인식모드에서의 사용자 동작을 분석해서 고속 동작을 취할 준비가 되어 있는지 여부를 실시간으로 확인할 수 있다는 것이다. 더 구체적일 예로서, 상기 고속 동작 중 하나인 골프 스윙이 이루어 지기 전에 두 손을 모아 클럽을 쥐는 어드레스자세를 취하게 되는데, 제어부가 상기 어드레스자세를 실시간으로 분석하여 사용자가 어드레스 자세를 취하고 있다면 곧 고속동작이 이루어질 것이라 예측할 수 있다. Referring to FIG. 10, when the operation speed of the user is less than a preset value, all of the reference 2D image and the corresponding depth image or the reference depth image and the corresponding two-dimensional image can be output as output data for motion analysis in real time . This is a real-time motion recognition mode in which the user is photographed at n hz through the camera unit and the photographed information can be directly analyzed through the control unit. Therefore, no image storage memory or result storage memory is used. The advantage of this mode is that it can check the user's operation in real time. The controller of the present invention analyzes the user's operation in the real-time operation recognition mode and can confirm in real time whether or not the user is ready to take a high-speed operation. As a more specific example, before the golf swing, which is one of the high-speed operations, is performed, the two hands are gathered to take an address posture holding the club. When the control section analyzes the address posture in real time and the user takes an address posture It can be predicted that a high-speed operation will be performed.

도 11을 참조하면, 사용자의 동작 속도가 기 설정된 수치 이상인 경우, 기준 2차원 영상 및 대응 뎁스 영상 혹은 기준 뎁스 영상 및 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력할 수 있다. 이는 고속 동작인식모드로 촬영된 영상이 실시간으로 작동하기 위해서는 고속 촬영 주기 시간 안에 영상처리, 동작인식을 모두 적용시켜 결과를 출력해야 하는데 이는 현실적으로 힘들기 때문에 이의 모드에서는 고속으로 촬영된 영상을 저장하고 그 일부를 실시간 동작인식 결과 분석에 활용한다. 예를 들어, 사용자가 고속 동작을 취하고 있을 때 카메라부는 실시간 모드보다 빠른 주기(2n hz)로 촬영을 하고 이를 영상 저장 메모리에 저장한다. 저장된 영상 저장 메모리 중 홀수 번째 영상만 추출하여 상기 제어부에서 영상처리 및 동작인식을 수행할 수 있다. 동작인식결과는 상기 결과 저장메모리에 저장됨과 동시에 표시부에 의해 실시간으로 출력될 수 있다. 상기 첫 번째 모드와 다른 점은 고속의 영상을 추후 분석을 할 수 있도록 영상 저장 메모리에 저장한다는 점, 저장된 고속의 영상 중 일부를 분석한 결과를 출력함과 동시에 결과 메모리에 저장해 둔다는 점에 있다. 고속 동작인식모드의 장점은 첫 번째로 사용자가 고속동작을 종료했는지 여부를 확인하여 종료되었다면 고속 동작인식모드를 종료함으로써 카메라부가 효율적으로 필요부분만 고속으로 촬영하도록 할 수 있고, 두 번째로 영상 저장 메모리, 결과 저장 메모리에도 고속동작부분만 저장되어 메모리를 효율적으로 관리할 수 있다는 것이다.11, when the operation speed of the user is equal to or greater than a preset value, a part of the reference 2D image and the corresponding depth image or the reference depth image and the corresponding 2D image may be extracted and output as output data for operation analysis . In order to operate an image photographed in the high-speed motion recognition mode in real time, it is necessary to apply the image processing and motion recognition within the high-speed shooting cycle time and output the result. Some of them are used to analyze real-time motion recognition results. For example, when the user is taking a high-speed operation, the camera section shoots at a faster period (2n hz) than the real-time mode and stores it in the image storage memory. Only the odd-numbered images among the stored image storage memories are extracted and the controller can perform image processing and motion recognition. The motion recognition result may be stored in the result storage memory and output by the display unit in real time. The difference from the first mode is that a high-speed image is stored in an image storage memory for later analysis, and a result of analyzing a part of the stored high-speed images is output and stored in a result memory . The advantage of the high-speed motion recognition mode is that the user can first check whether or not the high-speed motion has been completed, and if it is finished, end the high-speed motion recognition mode, Memory and result storage memory are stored only in the high-speed operation part, so that the memory can be efficiently managed.

도 12를 참조하면, 사용자의 동작 속도가 기 설정된 수치 이상이어서, 기준 2차원 영상 및 대응 뎁스 영상 혹은 기준 뎁스 영상 및 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력한 경우, 잔여 데이터를 저장 후 사용자의 동작 속도가 기 설정된 수치 미만으로 변경된 경우 동작 분석을 위한 출력 데이터로 출력할 수 있다. 이는 잔여 고속동작분석 모드로 카메라부를 통해 촬영한 상기 고속동작 전체를 분석하고, 상기 결과 저장 메모리에는 상기 고속동작 전체를 분석한 결과가 저장되며, 상기 분석된 결과를 출력할 수 있다. 표시부는 잔여 고속동작분석 모드에서 사용자가 골프 스윙이 끝났음을 알리는 피니쉬 자세 후에 잔여고속동작을 분석함과 동시에 사용자의 스윙을 느린 화면으로 재생해서 제공할 수 있다. 또한, 표시부는 모범이 되는 골프 스윙을 느린 화면으로 재생할 수 있으며, 골프에 관련된 팁들을 보여줄 수도 있다. 이와 같은 표시를 통해 잔여 고속동작들이 분석될 때까지의 대기 시간에 대한 사용자가 체감 시간을 줄여 줄 수 있다.12, when the operation speed of the user is equal to or greater than a predetermined value and a part of the reference 2D image and the corresponding depth image or the reference depth image and the corresponding 2D image are extracted and output as output data for operation analysis, After storing the remaining data, if the operation speed of the user is changed to less than the preset value, it can be outputted as output data for motion analysis. It analyzes the entire high-speed operation taken through the camera unit in the remaining high-speed operation analysis mode, and stores the result of analyzing the entire high-speed operation in the result storage memory, and can output the analyzed result. The display unit analyzes the remaining high-speed motion after the finishing posture in which the user informs that the golf swing is over in the remaining high-speed motion analysis mode, and at the same time, the user can reproduce and provide the slow swing of the user's swing. In addition, the display unit can reproduce the exemplary golf swing on a slow screen, and can display tips related to golf. Through such a display, the user can reduce the time taken to wait for the remaining high-speed operations to be analyzed.

이하에서는 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 스켈레톤 정보에 기반하여 사용자의 동작을 표시부에 표시하는 단계에 대하여 구체적으로 설명하도록 한다. Hereinafter, the step of displaying the user's action on the display unit based on the skeleton information will be described in detail in the golf operation analysis method according to the embodiment of the present invention.

도 13은 본 발명의 실시예에 따른 골프 동작 분석 방법에 있어서, 표시부에의 표시의 예시를 나타낸 도면이다. 13 is a diagram showing an example of a display on a display unit in the golf operation analysis method according to the embodiment of the present invention.

도 13을 참조하면, 표시부에는 사용자의 골프 동작의 각 단계별(ADDRESS, TAKE-BACK, BACKSWING TOP, DOWNSWING, IMPACT, FOLLOW THROUGH, FINISH)로 사용자의 동작 촬영 2차원 영상에 스켈레톤 정보가 표시될 수 있다. 그리고, 동작에 있어서의 머리 위치 변화 즉, 머리가 고정되었는지와 리딩 팔의 각도를 표시할 수 있다. 또한, 골프 동작에 있어서 주요한 포인트(ex; 발 넓이, 머리 고정, 균형) 및 주의해야할 포인트(ex; 스웨이, 행잉 백, 역척추각, 슬라이드) 즉, 골프 동작 교정을 위한 분석 결과들이 표시부에 표시될 수 있다. 예를 들어, 제어부는 스켈레톤 관절 및 스켈레톤 머리 정보를 추출할 수 있는데, 표시부는 이러한 스켈레톤 관절의 위치를 2차원 영상 상에 포인트(점)로서 표시할 수 있다. 또한, 표시부는 스켈레톤 머리의 위치를 원으로서 표시할 수 있다.Referring to FIG. 13, skeleton information may be displayed on a two-dimensional motion picture taken by a user at each step of the user's golf operation (ADDRESS, TAKE-BACK, BACKSWING TOP, DOWNSWING, IMPACT, FOLLOW THROUGH, FINISH) . In addition, it is possible to display the change of the head position in the operation, that is, whether the head is fixed and the angle of the leading arm. In addition, the analysis results for calibration of the golf operation, that is, points (ex: swing, hanging back, inverted vertebra, slide) . For example, the control unit can extract skeleton joint and skeleton head information, and the display unit can display the position of the skeleton joint as a point (point) on the two-dimensional image. Further, the display unit can display the position of the skeleton head as a circle.

또한, 실시예에 따라서는 둘 이상의 스켈레톤 관절 혹은 스켈레톤 머리를 연결하는 선을 2차원 영상 상에 표시할 수도 있다. 예를 들어, 표시부는 양어깨 관절, 양팔 관절 및 손목 관절 포인트를 연결하는 선 또는 도형을 2차원 영상 상에 표시할 수 있다. 제어부가 구간별로 골프 동작을 구분하는 경우, 표시부는 어드레스 구간 혹은 임팩트 구간에서 취득된 2차원 영상 상에 양어깨, 양팔 관절 및 손목 관절 포인트를 연결하는 선 또는 도형을 표시할 수 있는데, 이는 어드레스 구간 및 임팩트 구간에서 양어깨 및 양팔이 이루는 각도가 일정한 형태의 역삼각형을 이루도록 하는 안내선 역할을 한다.Also, according to an embodiment, a line connecting two or more skeleton joints or skeleton heads may be displayed on a two-dimensional image. For example, the display unit may display a line or a graphic on a two-dimensional image that connects both shoulder joints, both arm joints, and wrist joint points. When the control unit distinguishes the golf operation by intervals, the display unit may display a line or a figure connecting the two shoulders, the arms and the wrist joint points on the two-dimensional image obtained in the address period or the impact period, And serves as a guide line for forming an inverted triangle having a constant angle formed by both shoulders and arms in the impact section.

스켈레톤 관절 포인트 사이에 연결된 선 또는 도형의 위치 혹은 형상은 제어부에 의해 미리 설정된 기준과 비교될 수 있다. 이러한 비교 결과에 따라, 표시부는 선 또는 도형의 색상 혹은 표현 방식을 다르게 표시할 수 있다.The position or shape of the line or figure connected between the skeleton joint points can be compared with a preset reference by the control unit. According to the comparison result, the display unit can display the color or the expression of the line or the figure differently.

예를 들어, 제어부는 팔꿈치를 기준으로 어깨-팔꿈치-손목이 이루는 각도를 계산할 수 있는데, 이때, 계산된 각도가 기준 범위 이내에 있으면 해당 스켈레톤 관절을 연결하는 선을 녹색으로 표시할 수 있다. 그렇지 않은 경우, 제어부는 기준 범위를 벗어난 정도에 따라, 해당 선을 황색 혹은 적색으로 표시할 수 있다.For example, the controller can calculate the angle formed by the shoulder-elbow-wrist with respect to the elbow. If the calculated angle is within the reference range, the line connecting the skeleton joints can be displayed in green. Otherwise, the control unit can display the line in yellow or red, depending on the degree of deviation from the reference range.

스켈레톤 머리의 위치를 표시하는 원에 대해서도 원의 위치가 기준 범위 이내에 있으면 해당 스켈레톤 머리를 나타내는 원의 색상을 녹색으로 표시하고, 그렇지 않은 경우, 기준 범위를 벗어난 정도에 따라 해당 선을 황색 혹은 적색으로 표시할 수 있다. 도 14 내지 도 16은 분석된 사용자의 동작이 기준 동작에 맞는 경우와 맞지 않았을 경우의 표시부에서의 표시의 예시를 나타낸 것이다. 도 14에서는 사용자의 머리 위치가 정상범주이기 때문에 실선 원으로 표현하고, 도 15 및 도 16에서는 사용자의 머리 위치가 정상범주를 벗어났기 때문에 점선원으로 표현된다. 제어부가 구간별로 골프 동작을 구분하는 경우, 표시부는 각 구간 사이의 스켈레톤 관절 및 스켈레톤 머리의 위치 변화량(이동 거리)을 표시할 수 있다. 예를 들어, 표시부는 어드레스 구간으로부터 임팩트 구간까지의 스켈레톤 머리의 위치 변화량을 표시할 수 있다. 한편, 제어부가 스켈레톤 정보에 있어서 3차원 위치 정보를 추출할 수 있기 때문에 이러한 위치 변화량은 3차원 위치 변화량일 수 있다.For the circle indicating the position of the skeleton head, if the circle position is within the reference range, the color of the circle representing the skeleton head is indicated in green. Otherwise, the corresponding line is changed to yellow or red Can be displayed. Figs. 14 to 16 show examples of display on the display unit when the analyzed user's operation is not suitable for the reference operation or not. In Fig. 14, the head position of the user is represented by a solid line circle because it is a normal category, and in Fig. 15 and Fig. 16, the head position of the user is out of the normal category. In the case where the control unit distinguishes the golf operation by intervals, the display unit can display the position change amount (moving distance) of the skeleton joint and the skeleton head between the respective intervals. For example, the display unit can display a change amount of the position of the skeleton head from the address section to the impact section. On the other hand, since the control unit can extract the three-dimensional position information in the skeleton information, this position change amount can be a three-dimensional position change amount.

도 17은 표시하는 단계에서 발 간격을 표시하는 일 예이다. 골프 동작에 있어서, 발 넓이는 기본적으로 어깨 넓이 정도를 유지해야하기 때문에 표현되는 것으로 계산은 다음에 기초하여 이루어진다. FIG. 17 shows an example of displaying the foot interval in the displaying step. In the golf operation, the foot width is basically represented because it is required to maintain the shoulder width, and the calculation is based on the following.

- 양 발 관절의 3D 좌표:

Figure pat00010
,
Figure pat00011
- 3D coordinates of both joints:
Figure pat00010
,
Figure pat00011

- 양 어깨 관절의 3D 좌표:

Figure pat00012
,
Figure pat00013
- 3D coordinates of both shoulder joints:
Figure pat00012
,
Figure pat00013

- 판별식:

Figure pat00014
- Discrimination formula:
Figure pat00014

도 18 및 도 19는 사용자의 동작 분석을 통해 스웨이(Sway)를 판별하는 일 예를 도시한 것이다. 스웨이는 백스윙 중에 하체가 목표점으로부터 과도하게 움직여 무게중심이 발 뒤쪽 바깥으로 나가는 것을 의미한다. 도 18은 바른자세, 도 19는 스웨이를 표현한 것으로, 계산은 다음에 기초하여 이루어진다. FIGS. 18 and 19 show an example of determining a Sway through an operation analysis of a user. The swing means that during the backswing the lower body moves excessively from the target point and the center of gravity goes out the back of the foot. Fig. 18 shows the right posture, and Fig. 19 shows the sway. The calculation is performed based on the following.

- 포인트 클라우드:

Figure pat00015
- Point cloud:
Figure pat00015

- 무게 중심의 3D 좌표:

Figure pat00016
- 3D coordinates of the center of gravity:
Figure pat00016

- 오른발 관절의 3D 좌표:

Figure pat00017
- 3D coordinates of the right foot joint:
Figure pat00017

- 판별식:

Figure pat00018
- Discrimination formula:
Figure pat00018

도 20 및 도 21은 사용자의 동작 분석을 통해 행잉 백(Hanging Back)을 판별하는 일 예를 도시한 것이다. 행잉백은 다운스윙을 할 때 체중을 리드하는 쪽으로 보내지 못하는 것을 의미한다. 도 20은 바른자세 도 21은 행잉백을 표현한 것으로, 계산은 다음에 기초하여 이루어진다. 20 and 21 show an example of determining hanging back by analyzing the operation of the user. A hanging bag means you can not send your weight to the lead when you are doing a downswing. Fig. 20 shows a right posture. Fig. 21 shows a hanging bag. The calculation is made based on the following.

- 포인트 클라우드:

Figure pat00019
- Point cloud:
Figure pat00019

- 무게 중심의 3D 좌표:

Figure pat00020
- 3D coordinates of the center of gravity:
Figure pat00020

- 왼발 관절의 3D 좌표:

Figure pat00021
- 3D coordinates of the left foot joint:
Figure pat00021

- 판별식:

Figure pat00022
- Discrimination formula:
Figure pat00022

도 22 및 도 23은 사용자의 동작 분석을 통해 치킨 윙(Chicken wing)을 판별하는 일 예를 도시한 것이다. 치킨 윙은 임팩트 시에 팔꿈치가 펴지지 않는 것을 의미한다. 도 22는 바른자세, 도 23은 치킨 윙을 표현한 것으로, 계산은 다음에 기초하여 이루어진다. 22 and 23 illustrate an example of determining a chicken wing through an analysis of a user's action. The chicken wing means that the elbow does not stretch at impact. Fig. 22 shows the right posture, and Fig. 23 shows the chicken wing. The calculation is made based on the following.

- 왼어깨의 3D 좌표:

Figure pat00023
- 3D coordinates of left shoulder:
Figure pat00023

- 왼팔꿈치의 3D 좌표:

Figure pat00024
- 3D coordinates of left elbow:
Figure pat00024

- 왼손의 3D 좌표:

Figure pat00025
- 3D coordinates of the left hand:
Figure pat00025

- 어깨-팔꿈치 직선과 팔꿈치-손 직선이 이루는 각도:

Figure pat00026
- Shoulder - Elbow straight and elbow - Angle of hand straight line:
Figure pat00026

- 판별식:

Figure pat00027
- Discrimination formula:
Figure pat00027

- 위의 과정을 오른쪽에 대해서도 반복- Repeat the above procedure for the right

도 24 및 도 25는 사용자의 동작 분석을 통해 역척추각(Reverse spine angle)을 판별하는 일 예를 도시한 것이다. 역척추각은 백스윙 중에 상체가 과도하게 뒤로 제껴지는 것을 의미한다. 도 24는 바른자세, 도 25는 역척추각을 표현한 것으로, 계산은 다음에 기초하여 이루어진다. FIGS. 24 and 25 show an example in which the reverse spine angle is discriminated by analyzing the motion of the user. An inverted vertebral angle means that the upper body is overturned backwards during the backswing. Fig. 24 shows the right posture, and Fig. 25 shows the inverse vertebra angles. The calculation is made based on the following.

- 머리의 3D 좌표:

Figure pat00028
- 3D coordinates of head:
Figure pat00028

- 왼쪽 골반의 3D 좌표:

Figure pat00029
- 3D coordinates of the left pelvis:
Figure pat00029

- 오른쪽 골반의 3D 좌표:

Figure pat00030
- 3D coordinates of the right pelvis:
Figure pat00030

- 골반 중심의 3D 좌표:

Figure pat00031
- 3D coordinates of pelvis center:
Figure pat00031

- 판별식:

Figure pat00032
- Discrimination formula:
Figure pat00032

도 26은 사용자의 동작 분석을 통해 슬라이드(Slide)를 판별하는 일 예를 도시한 것이다. 슬라이드는 임팩트 시에 하체가 목표방향으로 과도하게 측면이동 하는 것을 의미한다. 도 26은 슬라이드를 표현한 것으로, 계산은 다음에 기초하여 이루어진다.FIG. 26 shows an example of determining a slide through analysis of a user's action. The slide means that the lower body is excessively moved laterally in the target direction at the time of impact. Fig. 26 represents a slide, and calculation is performed based on the following.

- 왼쪽 골반의 3D 좌표:

Figure pat00033
- 3D coordinates of the left pelvis:
Figure pat00033

- 오른쪽 골반의 3D 좌표:

Figure pat00034
- 3D coordinates of the right pelvis:
Figure pat00034

- 골반 중심의 3D 좌표:

Figure pat00035
- 3D coordinates of pelvis center:
Figure pat00035

- 왼발 관절의 3D 좌표:

Figure pat00036
- 3D coordinates of the left foot joint:
Figure pat00036

- 판별식:

Figure pat00037
- Discrimination formula:
Figure pat00037

도 27 및 도 28은 사용자의 동작 분석을 통해 평평한 어깨(Flat shoulder plane)을 판별하는 일 예를 도시한 것이다. 평평한 어깨는 백스윙의 탑에서 어깨가 지면과 평행을 이루는 것을 의미한다. 도 27은 바른자세, 도 28은 평평한 어깨를 표현한 것으로, 계산은 다음에 기초하여 이루어진다. 27 and 28 illustrate an example of discriminating a flat shoulder plane through an analysis of a user's action. A flat shoulder means that the shoulders are parallel to the ground at the top of the backswing. Fig. 27 shows the right posture, and Fig. 28 shows the flat shoulder. The calculation is made based on the following.

- 머리의 3D 좌표: - 3D coordinates of head:

- 골반 중심의 3D 좌표:

Figure pat00039
- 3D coordinates of pelvis center:
Figure pat00039

- 왼쪽 어깨의 3D 좌표:

Figure pat00040
- 3D coordinates of left shoulder:
Figure pat00040

- 오른쪽 어깨의 3D 좌표:

Figure pat00041
- 3D coordinates of the right shoulder:
Figure pat00041

- 머리-골반 직선과 양 어깨 직선이 이루는 각도:

Figure pat00042
- The angle between the head - pelvic straight line and both shoulder lines:
Figure pat00042

- 판별식:

Figure pat00043
- Discrimination formula:
Figure pat00043

도 29는 사용자의 동작 분석을 통해 머리가 고정되어 있는지를 판별하는 일 예를 도시한 것이다. 골프 동작 중 어드레스-백스윙-백스윙탑-다운스윙-임팩트의 과정 중에 머리의 위치가 되도록이면 변하지 않아야 한다. 도 29에서는 사용자의 머리 위치에 머리 위치의 변화를 표시할 수 있으며, 계산은 다음에 기초하여 이루어진다. FIG. 29 illustrates an example of determining whether a head is fixed through an operation analysis of a user. Address - Backswing - Backswing Top - Downswing during Golfing - The position of the head during the course of the impact should not change. In FIG. 29, a change in head position can be displayed at the head position of the user, and the calculation is made based on the following.

- 어드레스 시점에서의 머리의 3D 좌표:

Figure pat00044
- 3D coordinates of head at address:
Figure pat00044

- 백스윙탑 시점에서의 머리의 3D 좌표:

Figure pat00045
- 3D coordinates of the head at the top of the backswing:
Figure pat00045

- 임팩트 시점에서의 머리의 3D 좌표:

Figure pat00046
- 3D coordinates of the head at impact time:
Figure pat00046

- 판별식:

Figure pat00047
- Discrimination formula:
Figure pat00047

이러한 본 발명에 따른 골프 동작 분석 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 모든 형태의 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.  이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The golf operation analysis method according to the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded on a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Includes all types of hardware devices that are specially configured to store and execute magneto-optical media and program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions may include machine language code such as those generated by a compiler, as well as high-level language code that may be executed by a computer using an interpreter or the like. Such a hardware device may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

본 발명의 원리들의 교시들은 하드웨어와 소프트웨어의 조합으로서 구현될 수 있다. 또한, 소프트웨어는 프로그램 저장부 상에서 실재로 구현되는 응용 프로그램으로서 구현될 수 있다. 응용 프로그램은 임의의 적절한 아키텍쳐를 포함하는 머신에 업로드되고 머신에 의해 실행될 수 있다. 바람직하게는, 머신은 하나 이상의 중앙 처리 장치들(CPU), 컴퓨터 프로세서, 랜덤 액세스 메모리(RAM), 및 입/출력(I/O) 인터페이스들과 같은 하드웨어를 갖는 컴퓨터 플랫폼 상에 구현될 수 있다. 또한, 컴퓨터 플랫폼은 운영 체제 및 마이크로 명령 코드를 포함할 수 있다. 여기서 설명된 다양한 프로세스들 및 기능들은 마이크로 명령 코드의 일부 또는 응용 프로그램의 일부, 또는 이들의 임의의 조합일 수 있고, 이들은 CPU를 포함하는 다양한 처리 장치에 의해 실행될 수 있다. 추가로, 추가 데이터 저장부 및 프린터와 같은 다양한 다른 주변 장치들이 컴퓨터 플랫폼에 접속될 수 있다.The teachings of the principles of the present invention may be implemented as a combination of hardware and software. In addition, the software can be implemented as an application program that is actually implemented on the program storage unit. The application program can be uploaded to and executed by a machine that includes any suitable architecture. Advantageously, the machine may be implemented on a computer platform having hardware such as one or more central processing units (CPUs), a computer processor, a random access memory (RAM), and input / output (I / . In addition, the computer platform may include an operating system and microinstruction code. The various processes and functions described herein may be part of microcommand codes or a portion of an application program, or any combination thereof, and they may be executed by various processing devices including a CPU. In addition, various other peripheral devices such as additional data storage and printers may be connected to the computer platform.

첨부 도면들에서 도시된 구성 시스템 컴포넌트들 및 방법들의 일부가 바람직하게는 소프트웨어로 구현되므로, 시스템 컴포넌트들 또는 프로세스 기능 블록들 사이의 실제 접속들은 본 발명의 원리들이 프로그래밍되는 방식에 따라 달라질 수 있다는 점이 추가로 이해되어야 한다. 여기서의 교시들이 주어지면, 관련 기술분야의 당업자는 본 발명의 원리들의 이들 및 유사한 구현예들 또는 구성들을 참작할 수 있을 것이다.It is to be understood that the actual connections between system components or process functional blocks may vary depending on how the principles of the present invention are programmed, as some of the constituent system components and methods illustrated in the accompanying drawings are preferably implemented in software It should be further understood. Given the teachings herein, those skilled in the relevant art (s) will be able to contemplate these and similar implementations or configurations of the principles of the invention.

이하에서는 본 발명의 실시예에 따른 골프 동작 분석 장치의 구성 및 동작에 대하여 설명하도록 한다. Hereinafter, the configuration and operation of a golf game analyzing apparatus according to an embodiment of the present invention will be described.

도 30은 본 발명의 실시예에 따른 골프 동작 분석 장치의 구성을 나타낸 블록도이다. 30 is a block diagram showing a configuration of a golf motion analyzing apparatus according to an embodiment of the present invention.

도 30을 참조하면, 본 발명의 실시예에 따른 골프 동작 분석 장치(100)는 카메라부(110), 제어부(120), 출력부(130), 추출부(140) 및 표시부(150)를 포함하여 구성될 수 있다. 이의 골프 동작 분석 장치(100)는 도 1 내지 도 29와 함께 설명한 기술 내용을 공유하며, 이하에서는 주요 기술 내용 중심으로 설명하도록 한다. 30, the apparatus 100 for analyzing a golf operation according to an embodiment of the present invention includes a camera unit 110, a control unit 120, an output unit 130, an extraction unit 140, and a display unit 150 . The golf motion analyzing apparatus 100 of the present invention shares the description with reference to FIG. 1 to FIG. 29, and will be described below with reference to main technical contents.

카메라부(110)는 사용자의 동작에 대한 2차원 영상을 획득하는 영상 센서 및 상기 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 깊이 센서를 포함한다. The camera unit 110 includes an image sensor for acquiring a two-dimensional image of a user's operation and a depth image including a depth value for each pixel of the two-dimensional image alternately in time And a depth sensor for measuring the temperature of the substrate.

제어부(120)는 카메라부(110)에서 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성한다.The control unit 120 generates a corresponding depth image or a corresponding two-dimensional image corresponding to the reference two-dimensional image or the reference depth image acquired at a predetermined time by the camera unit 110.

출력부(130)는 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상을 출력 데이터로 출력한다. The output unit 130 outputs the reference two-dimensional image and the corresponding depth image, the reference depth image, and the corresponding two-dimensional image as output data.

추출부(140)는 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출한다. The extraction unit 140 extracts the skeleton information of the user through analysis of the output data.

표시부(150)는 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시한다. The display unit 150 displays the operation of the user based on the skeleton information.

한편, 표시부(150)는 카메라부(110)로부터 획득된 2차원 영상을 연속으로 표시함으로써 사용자의 골프 동작에 대한 연속 동작-동영상-을 표시할 수 있다.On the other hand, the display unit 150 can continuously display the two-dimensional images obtained from the camera unit 110, thereby continuously displaying the user's golf motion.

제어부(120)는 카메라부(110)로부터 획득된 뎁스 영상으로부터 3차원 포인트 클라우드(3D point cloud)를 추출하고, 표시부(150)는 이러한 3차원 포인트 클라우드를 화면으로 출력할 수 있다.The control unit 120 extracts a 3D point cloud from the depth image acquired from the camera unit 110 and the display unit 150 outputs the 3D point cloud to the screen.

뎁스 영상은 D(x,y) 라는 2차원 함수로서 (x,y) 라는 pixel coordinate로부터 D 라는 그 픽셀에 해당하는 실제 물체까지의 물리적 거리를 대응시키는 함수로 정의될 수 있다.The depth image can be defined as a function that maps the physical distance from the pixel coordinate (x, y) as D (x, y) to the actual object corresponding to the pixel.

이 때 뎁스 영상에 대한 카메라 파라메터(camera parameter)가 알려졌다면, 이를 활용해서 각 픽셀에 대응하는 3차원 포인트의 3차원 좌표를 계산할 수 있다.At this time, if the camera parameter for the depth image is known, it is possible to calculate the three-dimensional coordinates of the three-dimensional point corresponding to each pixel.

간단한 바늘구멍 사진기(pinhole camera) 모델을 가정하고, 카메라의 초점거리(focal length)을 f, 주점(principal point)의 픽셀 좌표를 (px, py)라고 한다면, 3차원 포인트 (X, Y, Z)와 뎁스 영상으로 투사된 2차원 픽셀 좌표 (x, y)와의 관계는 다음과 같이 표시될 수 있다.Assuming a simple pinhole camera model and assuming that the focal length of the camera is f and the pixel coordinates of the principal point are (px, py), three-dimensional points (X, Y, Z ) And the two-dimensional pixel coordinates (x, y) projected from the depth image can be expressed as follows.

Figure pat00048
Figure pat00048

이는 다음과 같은 두 개의 식으로 정리된다.This is summarized in the following two equations.

Figure pat00049
Figure pat00049

따라서 뎁스 영상의 픽셀 (x, y)의 뎁스 D 가 주어졌다면, 그 픽셀에 대응하는 3차원 포인트의 좌표는 다음과 같이 계산된다.Therefore, given the depth D of the pixel (x, y) of the depth image, the coordinates of the three-dimensional point corresponding to the pixel are calculated as follows.

Figure pat00050
Figure pat00050

제어부(120)가 이러한 과정을 통해 3차원 포인트 클라우드 추출하여 표시부(150)로 전달하면 표시부(150)는 이러한 3차원 포인트 클라우드를 화면으로 출력하게 된다. 이 때, 표시부(150)는 사용자의 조작 입력(예를 들어, 마우스 입력)에 따라 3차원 포인트 클라우드의 표시 시점을 다르게 제어할 수 있다.When the control unit 120 extracts the three-dimensional point cloud through the process and transmits the extracted three-dimensional point cloud to the display unit 150, the display unit 150 outputs the three-dimensional point cloud to the screen. At this time, the display unit 150 may control the display time of the three-dimensional point cloud differently according to a user's operation input (for example, a mouse input).

골프 동작 분석에서 허리를 굽히고, 팔이 어떤 각도를 유지하고 있는지 등의 정보 또한 중요한데, 이는 정면에 대한 2차원 영상만으로는 판단하기 쉽지 않은 요소들이다. 본 발명에 따르면 제어부(120)가 3차원 포인트 클라우드를 계산하고, 표시부(150)가 이를 시각화 해주기 때문에 위와 같은 정보를 사용자에게 쉽게 전달할 수 있다.It is also important to know the angle of the arm and bend the waist in golf motion analysis, which is not easy to judge by the two-dimensional image of the front face alone. According to the present invention, the control unit 120 calculates a three-dimensional point cloud, and the display unit 150 visualizes the three-dimensional point cloud, so that the above information can be easily transmitted to the user.

이상에서와 같이 본 발명에 따른 골프 동작 분석 방법 및 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the method and apparatus for analyzing golf motion according to the present invention are not limited to the configuration and method of the embodiments described above, but the embodiments may be modified in various ways, All or some of them may be selectively combined.

100; 골프 동작 분석 장치
110; 카메라부
120; 제어부
130; 출력부
140; 추출부
150; 표시부
100; Golf motion analyzer
110; Camera part
120; The control unit
130; Output portion
140; The extraction unit
150; Display portion

Claims (20)

카메라부의 영상 센서에서 사용자의 동작에 대한 2차원 영상을 획득하는 단계;
상기 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 카메라부의 깊이 센서에서 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 단계;
소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 촬영 속도 증가 단계;
상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상을 동작 분석을 위한 출력 데이터로 출력하는 단계;
상기 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 단계; 및
상기 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시부에 표시하는 단계를 포함하는 것을 특징으로 하는 골프 동작 분석 방법.
Acquiring a two-dimensional image of a user's operation in an image sensor of a camera unit;
Acquiring the two-dimensional image and a depth image including a depth value of each pixel of the two-dimensional image in a temporally alternate depth sensor of the camera unit;
An imaging speed increasing step of generating a corresponding depth image or a corresponding two-dimensional image corresponding to a reference two-dimensional image or a reference depth image acquired at a predetermined time;
Outputting the reference two-dimensional image and the corresponding depth image or the reference depth image and the corresponding two-dimensional image as output data for motion analysis;
Extracting skeleton information of the user through analysis of the output data; And
And displaying the operation of the user on the display unit based on the skeleton information.
청구항 1에 있어서,
상기 촬영 속도 증가 단계는,
상기 깊이 센서가 제1 시각에 제1 뎁스 영상을 획득하는 단계;
상기 영상 센서가 제1 시각 이후의 제2 시각에 상기 기준 2차원 영상으로 제1 2차원 영상을 획득하는 단계;
상기 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 상기 제1 시각의 제2 뎁스 영상을 생성하는 단계;
상기 제1 2차원 영상과 상기 제2 뎁스 영상 사이의 모션 벡터를 추정하는 단계;
상기 모션 벡터를 이용하여 상기 제2 뎁스 영상으로부터 상기 제2 시각에서의 투사된 제3 뎁스 영상을 렌더링하는 단계; 및
상기 제3 뎁스 영상을 상기 깊이 센서 시점으로 투사하여 상기 대응 뎁스 영상으로 상기 제2 시각에서의 제4 뎁스 영상을 생성하는 단계를 포함하며,
상기 출력하는 단계에서는 상기 제1 2차원 영상과 상기 제4 뎁스 영상을 출력 데이터로 출력하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
Wherein the photographing speed increasing step comprises:
The depth sensor acquiring a first depth image at a first time;
The image sensor acquiring a first two-dimensional image as the reference two-dimensional image at a second time after the first time;
Generating a second depth image of the first time by projecting the first depth image to a viewpoint of the image sensor;
Estimating a motion vector between the first two-dimensional image and the second depth image;
Rendering the projected third depth image at the second time from the second depth image using the motion vector; And
And projecting the third depth image to the depth sensor point to generate a fourth depth image at the second time with the corresponding depth image,
Wherein the outputting step outputs the first two-dimensional image and the fourth depth image as output data.
청구항 1에 있어서,
상기 촬영 속도 증가 단계는,
상기 영상 센서가 제1 시각에 제1 2차원 영상을 획득하는 단계;
상기 깊이 센서가 제1 시각 이후의 제2 시각에 상기 기준 뎁스 영상으로 제1 뎁스 영상을 획득하는 단계;
상기 제1 뎁스 영상을 상기 영상 센서의 시점으로 투사하여 제2 뎁스 영상을 생성하는 단계;
상기 제1 2차원 영상과 상기 제2 뎁스 영상 사이의 모션 벡터를 추정하는 단계; 및
상기 모션 벡터를 이용하여 상기 제1 2차원 영상으로부터 상기 대응 2차원 영상으로 상기 제2 시각에서의 제2 2차원 영상을 렌더링하는 단계를 포함하며,
상기 출력하는 단계에서는 상기 제1 뎁스 영상과 상기 제2 2차원 영상을 출력 데이터로 출력하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
Wherein the photographing speed increasing step comprises:
The image sensor acquiring a first two-dimensional image at a first time;
The depth sensor acquiring a first depth image with the reference depth image at a second time after the first time;
Generating a second depth image by projecting the first depth image to a viewpoint of the image sensor;
Estimating a motion vector between the first two-dimensional image and the second depth image; And
And rendering the second two-dimensional image at the second time from the first two-dimensional image to the corresponding two-dimensional image using the motion vector,
Wherein the outputting step outputs the first depth image and the second two-dimensional image as output data.
청구항 1에 있어서,
상기 스켈레톤 정보를 추출하는 단계는,
상기 출력 데이터의 픽셀 데이터를 추출하는 단계;
상기 픽셀 데이터에 기초하여, 상기 사용자에 해당하는 영역의 픽셀을 선정하는 사용자 영역화 단계;
사용자 영역화 된 픽셀들 각각에 대하여 스켈레톤 관절에 해당하는지에 대한 확률 분포값을 산정하는 단계;
상기 확률 분포값에 따라, 소정의 픽셀들에 대하여 스켈레톤 관절로 정의하는 단계;
상기 스켈레톤 관절로 정의된 소정의 픽셀들에서의 중심점을 정의하는 단계; 및
상기 중심점에 기초하여 상기 스켈레톤 정보를 완성하여 추출하는 단계를 포함하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
The step of extracting the skeleton information includes:
Extracting pixel data of the output data;
A user region selection step of selecting a pixel in an area corresponding to the user based on the pixel data;
Estimating a probability distribution value for each of the user-domain pixels as to whether the pixel corresponds to a skeleton joint;
Defining a skeleton joint for predetermined pixels according to the probability distribution value;
Defining a center point at predetermined pixels defined by the skeleton joint; And
And completing and extracting the skeleton information based on the center point.
청구항 4에 있어서,
상기 스켈레톤 관절을 정의하는 단계 및 상기 중심점을 정의하는 단계는,
상기 픽셀 데이터의 해상도를 낮추는 단계;
낮은 해상도에 기초하여 스켈레톤 관절 및 중심점을 정의하는 단계;
상기 픽셀 데이터의 해상도를 높이는 단계;
상기 낮은 해상도에 기초하여 도출된 중심점에서의 소정 거리만큼의 영역을 설정하는 단계; 및
상기 영역내에서의 픽셀에 기초하여 스켈레톤 관절 및 중심점을 재차 정의하는 단계를 포함하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 4,
Wherein defining the skeleton joint and defining the center point comprise:
Lowering the resolution of the pixel data;
Defining a skeleton joint and a center point based on a lower resolution;
Increasing the resolution of the pixel data;
Setting an area of a predetermined distance at a center point derived based on the lower resolution; And
And redefining the skeleton joint and the center point based on the pixels in the region.
청구항 4에 있어서,
상기 픽셀 데이터는 각 픽셀의 깊이 정보, RGB값, 및 조도 값 중 적어도 하나인 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 4,
Wherein the pixel data is at least one of depth information, RGB value, and illuminance value of each pixel.
청구항 1에 있어서,
상기 출력하는 단계에서는,
상기 사용자의 동작 속도에 따라 동작 분석을 위한 출력 데이터의 양을 조절하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
In the outputting step,
Wherein the amount of output data for operation analysis is adjusted according to the operation speed of the user.
청구항 1에 있어서,
상기 출력하는 단계에서,
상기 사용자의 동작 속도가 기 설정된 수치 미만인 경우, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 전부를 실시간으로 동작 분석을 위한 출력 데이터로 출력하고,
상기 사용자의 동작 속도가 기 설정된 수치 이상인 경우, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
In the outputting step,
Dimensional image, the corresponding depth image, the reference depth image, and the corresponding two-dimensional image as output data for motion analysis in real time when the operation speed of the user is less than a predetermined value,
And extracts a part of the reference two-dimensional image and the corresponding depth image or the reference depth image and the corresponding two-dimensional image to output as output data for operation analysis, when the operation speed of the user is not less than a predetermined value, Of the golf course.
청구항 8에 있어서,
상기 출력하는 단계에서,
상기 사용자의 동작 속도가 기 설정된 수치 이상이어서, 상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상 중 일부를 추출하여 동작 분석을 위한 출력 데이터로 출력한 경우, 잔여 데이터를 저장 후 상기 사용자의 동작 속도가 기 설정된 수치 미만으로 변경된 경우 동작 분석을 위한 출력 데이터로 출력하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 8,
In the outputting step,
When the operation speed of the user is not less than a preset value and a part of the reference two-dimensional image and the corresponding depth image, the reference depth image, and the corresponding two-dimensional image are extracted and output as output data for operation analysis, And outputting the output data for operation analysis when the operation speed of the user is changed to less than a predetermined value after storing the data.
청구항 1에 있어서,
상기 표시하는 단계에서는,
상기 사용자의 동작 중 기 설정된 기준 동작과 소정치 이상 다른 상기 사용자의 동작을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method according to claim 1,
In the displaying step,
Wherein the operation of the user is different from the predetermined reference operation during the operation of the user.
카메라부의 영상 센서에서 사용자의 골프 동작에 대한 2차원 영상을 획득하는 단계;
상기 카메라부의 깊이 센서에서 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 단계;
상기 2차원 영상 및 상기 뎁스 영상을 기초로 한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 단계; 및
상기 2차원 영상 및 상기 스켈레톤 정보에 기초하여 상기 사용자의 관절 위치를 표시부에 표시하는 단계를 포함하는 것을 특징으로 하는 골프 동작 분석 방법.
Acquiring a two-dimensional image of a user's golf motion in an image sensor of a camera unit;
Acquiring a depth image including a depth value of each pixel of the two-dimensional image from a depth sensor of the camera unit;
Extracting skeleton information of the user through analysis based on the two-dimensional image and the depth image; And
And displaying the joint position of the user on the display unit based on the two-dimensional image and the skeleton information.
청구항 11에 있어서,
상기 뎁스 영상을 획득하는 단계에서는,
상기 2차원 영상을 획득하는 것과 교대로 상기 뎁스 영상을 획득하도록 진행되며,
소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 촬영 속도 증가 단계를 더 포함하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
In the step of acquiring the depth image,
Dimensional image and acquiring the depth image alternately with acquiring the two-dimensional image,
Further comprising a shooting speed increasing step of generating a corresponding depth image or a corresponding two-dimensional image corresponding to the reference two-dimensional image or the reference depth image acquired at a predetermined time.
청구항 11에 있어서,
상기 추출하는 단계에서는, 상기 사용자의 스켈레톤 정보로 스켈레톤 머리 정보를 포함하여 추출하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 어드레스 구간으로부터 임팩트 구간까지의 머리 이동을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
Wherein the extracting includes extracting skeleton head information including the skeleton information of the user,
Wherein the displaying step displays the head movement from the address section to the impact section during the golf operation of the user.
청구항 11에 있어서,
상기 추출하는 단계에서는, 상기 출력 데이터에 대한 분석을 통해 상기 사용자의 발목 관절의 위치 값에 기반하여 발 간격에 해당하는 값을 계산하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작에서 상기 발 간격을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
Calculating a value corresponding to a foot interval based on a position value of the ankle joint of the user through analysis of the output data,
Wherein the displaying step displays the foot spacing in the golf operation of the user.
청구항 11에 있어서,
상기 추출하는 단계에서는, 상기 사용자의 무게중심의 좌표와 오른발 혹은 왼발 관절의 좌표를 계산하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 백스윙 구간 혹은 다운스윙 구간에서 상기 무게중심 및 상기 오른발 혹은 왼발 관절의 위치를 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
In the extracting step, the coordinates of the center of gravity of the user and the coordinates of the right foot or left foot joint are calculated,
Wherein the displaying step displays the position of the center of gravity and the position of the right foot or the left foot joint in a backswing section or a downswing section of the golf operation of the user.
청구항 11에 있어서,
상기 추출하는 단계에서는, 어깨, 팔꿈치, 손 관절의 좌표에 기반하여 팔각도에 해당되는 값을 계산하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 임팩트 구간에서 상기 어깨, 팔꿈치, 손 관절을 이은 선을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
In the extracting step, a value corresponding to the octagon is calculated based on the coordinates of the shoulder, the elbow, and the hand joint,
Wherein the displaying step displays a line connecting the shoulder, the elbow, and the hand joint in the impact period of the golf operation of the user.
청구항 11에 있어서,
상기 추출하는 단계에서는, 머리 및 좌우측 골반의 좌표에 기초하여 역척추각에 해당되는 값을 계산하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 백스윙 구간에서 왼발 혹은 오른발과 좌우측 골반의 중점을 이은 선을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
In the extracting step, a value corresponding to an inverse vertebra angle is calculated based on the coordinates of the head and the left and right pelvis,
Wherein the displaying step displays a line connecting a center point of the left foot or the right foot and the left and right pelvis in the backswing section of the golf operation of the user.
청구항 11에 있어서,
상기 추출하는 단계에서는, 머리, 좌우측 골반, 좌우측 어깨의 좌표에 기반하여 머리와 골반을 연결하는 선과 양 어깨를 연결하는 선 사이의 각도를 계산하고,
상기 표시하는 단계에서는, 상기 사용자의 골프 동작 중 백스윙탑 구간에서 머리와 골반을 연결하는 선과, 양 어깨를 연결하는 선을 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
In the extraction step, an angle between a line connecting the head and the pelvis and a line connecting the both shoulders is calculated based on the coordinates of the head, the left and right pelvis, and the left and right shoulders,
Wherein the displaying step displays a line connecting the head and the pelvis and a line connecting both shoulders in the backswing top section of the user's golf operation.
청구항 11에 있어서,
상기 출력하는 단계에서는, 상기 출력 데이터의 픽셀 데이터에 기반하여 3차원 포인트 클라우드를 계산하고,
상기 표시하는 단계에서는, 표시부에 3차원 포인트 클라우드로 상기 스켈레톤 정보를 표시하는 것을 특징으로 하는 골프 동작 분석 방법.
The method of claim 11,
Wherein the outputting step calculates a three-dimensional point cloud based on the pixel data of the output data,
Wherein the displaying step displays the skeleton information in a three-dimensional point cloud on the display unit.
사용자의 동작에 대한 2차원 영상을 획득하는 영상 센서 및 상기 2차원 영상을 획득하는 것과 시간적으로 교대로 상기 2차원 영상의 각 픽셀에 대한 깊이 값을 포함하는 뎁스 영상을 획득하는 깊이 센서를 포함하는 카메라부;
상기 카메라부에서 소정 시각에 획득한 기준 2차원 영상 혹은 기준 뎁스 영상에 대응하는 대응 뎁스 영상 혹은 대응 2차원 영상을 생성하는 제어부;
상기 기준 2차원 영상 및 상기 대응 뎁스 영상 혹은 상기 기준 뎁스 영상 및 상기 대응 2차원 영상을 출력 데이터로 출력하는 출력부;
상기 출력 데이터에 대한 분석을 통해 상기 사용자의 스켈레톤 정보를 추출하는 추출부; 및
상기 스켈레톤 정보에 기반하여 상기 사용자의 동작을 표시하는 표시부를 포함하는 것을 특징으로 하는 골프 동작 분석 장치.
An image sensor for acquiring a two-dimensional image of the user's motion, and a depth sensor for acquiring the two-dimensional image and acquiring a depth image including a depth value for each pixel of the two- A camera section;
A control unit for generating a corresponding depth image or a corresponding two-dimensional image corresponding to a reference two-dimensional image or a reference depth image acquired at a predetermined time by the camera unit;
An output unit for outputting the reference two-dimensional image and the corresponding depth image, the reference depth image, and the corresponding two-dimensional image as output data;
An extracting unit for extracting the skeleton information of the user through analysis of the output data; And
And a display unit for displaying an operation of the user based on the skeleton information.
KR1020160006966A 2015-04-09 2016-01-20 Apparatus and method for analyzing golf motion KR102514697B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/078,280 US10186041B2 (en) 2015-04-09 2016-03-23 Apparatus and method for analyzing golf motion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150050019 2015-04-09
KR20150050019 2015-04-09

Publications (2)

Publication Number Publication Date
KR20160121379A true KR20160121379A (en) 2016-10-19
KR102514697B1 KR102514697B1 (en) 2023-03-29

Family

ID=57251010

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160006966A KR102514697B1 (en) 2015-04-09 2016-01-20 Apparatus and method for analyzing golf motion

Country Status (1)

Country Link
KR (1) KR102514697B1 (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109508688A (en) * 2018-11-26 2019-03-22 平安科技(深圳)有限公司 Behavioral value method, terminal device and computer storage medium based on skeleton
KR20190030947A (en) 2017-09-15 2019-03-25 (주) 아이디 Interactive curved hologram-based public display system with lenticular lens
KR20190048693A (en) * 2017-10-31 2019-05-09 대구대학교 산학협력단 Method for estimating joint angle of user using a gradient of golf club
KR20200115729A (en) * 2019-03-17 2020-10-08 이상국 Method and apparatus of analyzing golf motion
WO2021066392A3 (en) * 2019-10-02 2021-05-27 주식회사 모아이스 Method, device, and non-transitory computer-readable recording medium for estimating information about golf swing
KR20210089997A (en) * 2020-01-09 2021-07-19 주식회사 엘지유플러스 Method and apparatus for multi-playing videos
KR102358331B1 (en) * 2021-09-08 2022-02-08 아이디어링크 주식회사 Method and apparatus for assisting exercise posture correction using action muscle information according to movement
WO2022045645A1 (en) * 2020-08-31 2022-03-03 주식회사 모아이스 Method, device, and non-transitory computer-readable recording medium for estimating information regarding golf swing
WO2022080678A1 (en) * 2020-10-15 2022-04-21 주식회사 모아이스 Method, system, and non-transitory computer-readable recording medium for estimating information on golf swing posture
KR20220067741A (en) * 2020-11-18 2022-05-25 정의정 Pipeline for video based golf posture analysis and posture correction technique using thereof
KR20220067965A (en) * 2020-11-18 2022-05-25 한국전자통신연구원 Method and apparatus for Virtual training based on tangible interaction
WO2022149811A1 (en) * 2021-01-08 2022-07-14 주식회사 모아이스 Method and device for estimating information about golf swing, and non-transitory computer-readable recording medium
KR20220129762A (en) 2021-03-17 2022-09-26 주식회사 케이티 Server, method and computer program for analyzing swing motion
WO2023191374A1 (en) * 2022-04-01 2023-10-05 주식회사 엘지경영개발원 Artificial intelligence device for recognizing image of structural formula, and method for same
KR20240104664A (en) * 2022-12-28 2024-07-05 한국신체정보(주) Device for evaluating movement of user using matching between skeleton information and virtual objects

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101394279B1 (en) * 2013-12-16 2014-05-13 (주) 골프존 Method for recognition of user's motion by analysis of depth image and apparatus for analyzing user's motion using the same
KR101394276B1 (en) * 2013-12-31 2014-05-13 (주) 골프존 Image generating method for analysis of user's golf swing motion through depth image analysis, and method and apparatus for analysis of golf swing motion using the same
KR20140073664A (en) * 2012-12-06 2014-06-17 한국전자통신연구원 3d screen golf apparatus for recognizing user's appearance and pose

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140073664A (en) * 2012-12-06 2014-06-17 한국전자통신연구원 3d screen golf apparatus for recognizing user's appearance and pose
KR101394279B1 (en) * 2013-12-16 2014-05-13 (주) 골프존 Method for recognition of user's motion by analysis of depth image and apparatus for analyzing user's motion using the same
KR101394276B1 (en) * 2013-12-31 2014-05-13 (주) 골프존 Image generating method for analysis of user's golf swing motion through depth image analysis, and method and apparatus for analysis of golf swing motion using the same

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190030947A (en) 2017-09-15 2019-03-25 (주) 아이디 Interactive curved hologram-based public display system with lenticular lens
KR20190048693A (en) * 2017-10-31 2019-05-09 대구대학교 산학협력단 Method for estimating joint angle of user using a gradient of golf club
CN109508688A (en) * 2018-11-26 2019-03-22 平安科技(深圳)有限公司 Behavioral value method, terminal device and computer storage medium based on skeleton
CN109508688B (en) * 2018-11-26 2023-10-13 平安科技(深圳)有限公司 Skeleton-based behavior detection method, terminal equipment and computer storage medium
KR20200115729A (en) * 2019-03-17 2020-10-08 이상국 Method and apparatus of analyzing golf motion
WO2021066392A3 (en) * 2019-10-02 2021-05-27 주식회사 모아이스 Method, device, and non-transitory computer-readable recording medium for estimating information about golf swing
KR20210089997A (en) * 2020-01-09 2021-07-19 주식회사 엘지유플러스 Method and apparatus for multi-playing videos
KR20220028740A (en) * 2020-08-31 2022-03-08 주식회사 모아이스 Method, device and non-transitory computer-readable recording medium for estimating information about golf swing
WO2022045645A1 (en) * 2020-08-31 2022-03-03 주식회사 모아이스 Method, device, and non-transitory computer-readable recording medium for estimating information regarding golf swing
WO2022080678A1 (en) * 2020-10-15 2022-04-21 주식회사 모아이스 Method, system, and non-transitory computer-readable recording medium for estimating information on golf swing posture
KR20220067741A (en) * 2020-11-18 2022-05-25 정의정 Pipeline for video based golf posture analysis and posture correction technique using thereof
KR20220067965A (en) * 2020-11-18 2022-05-25 한국전자통신연구원 Method and apparatus for Virtual training based on tangible interaction
US11887257B2 (en) 2020-11-18 2024-01-30 Electronics And Telecommunications Research Institute Method and apparatus for virtual training based on tangible interaction
WO2022149811A1 (en) * 2021-01-08 2022-07-14 주식회사 모아이스 Method and device for estimating information about golf swing, and non-transitory computer-readable recording medium
KR20220129762A (en) 2021-03-17 2022-09-26 주식회사 케이티 Server, method and computer program for analyzing swing motion
KR102358331B1 (en) * 2021-09-08 2022-02-08 아이디어링크 주식회사 Method and apparatus for assisting exercise posture correction using action muscle information according to movement
WO2023191374A1 (en) * 2022-04-01 2023-10-05 주식회사 엘지경영개발원 Artificial intelligence device for recognizing image of structural formula, and method for same
KR20240104664A (en) * 2022-12-28 2024-07-05 한국신체정보(주) Device for evaluating movement of user using matching between skeleton information and virtual objects

Also Published As

Publication number Publication date
KR102514697B1 (en) 2023-03-29

Similar Documents

Publication Publication Date Title
KR102514697B1 (en) Apparatus and method for analyzing golf motion
US10186041B2 (en) Apparatus and method for analyzing golf motion
US10417775B2 (en) Method for implementing human skeleton tracking system based on depth data
Xu et al. Denserac: Joint 3d pose and shape estimation by dense render-and-compare
US9159134B2 (en) Method and apparatus for estimating a pose
US9330470B2 (en) Method and system for modeling subjects from a depth map
JP7311640B2 (en) Behavior prediction method and device, gait recognition method and device, electronic device, and computer-readable storage medium
CN105631861B (en) Restore the method for 3 D human body posture from unmarked monocular image in conjunction with height map
US9842405B2 (en) Visual target tracking
JP5820366B2 (en) Posture estimation apparatus and posture estimation method
CN108475439B (en) Three-dimensional model generation system, three-dimensional model generation method, and recording medium
WO2017092196A1 (en) Method and apparatus for generating three-dimensional animation
CN106600626B (en) Three-dimensional human motion capture method and system
CN110544301A (en) Three-dimensional human body action reconstruction system, method and action training system
US8577085B2 (en) Visual target tracking
KR20110139694A (en) Method and system for gesture recognition
JP2019096113A (en) Processing device, method and program relating to keypoint data
US8565477B2 (en) Visual target tracking
KR20110032352A (en) Image processing apparatus and method
WO2019196313A1 (en) Robot walking obstacle detection method and apparatus, computer device, and storage medium
CN110544302A (en) Human body action reconstruction system and method based on multi-view vision and action training system
KR102371127B1 (en) Gesture Recognition Method and Processing System using Skeleton Length Information
CN106529399A (en) Human body information acquisition method, device and system
JP5503510B2 (en) Posture estimation apparatus and posture estimation program
Shere et al. 3D Human Pose Estimation From Multi Person Stereo 360 Scenes.

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right