KR102584540B1 - Subject movement information generation device using artificial intelligence and method thereof - Google Patents

Subject movement information generation device using artificial intelligence and method thereof Download PDF

Info

Publication number
KR102584540B1
KR102584540B1 KR1020220161737A KR20220161737A KR102584540B1 KR 102584540 B1 KR102584540 B1 KR 102584540B1 KR 1020220161737 A KR1020220161737 A KR 1020220161737A KR 20220161737 A KR20220161737 A KR 20220161737A KR 102584540 B1 KR102584540 B1 KR 102584540B1
Authority
KR
South Korea
Prior art keywords
information
learning
image
artificial intelligence
images
Prior art date
Application number
KR1020220161737A
Other languages
Korean (ko)
Inventor
최완호
이태형
정범기
Original Assignee
디블라트 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 디블라트 주식회사 filed Critical 디블라트 주식회사
Priority to KR1020220161737A priority Critical patent/KR102584540B1/en
Application granted granted Critical
Publication of KR102584540B1 publication Critical patent/KR102584540B1/en

Links

Classifications

    • 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
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0021Tracking a path or terminating locations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • 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/0021Tracking a path or terminating locations
    • A63B2024/0028Tracking the path of an object, e.g. a ball inside a soccer pitch
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • A63B71/0619Displays, user interfaces and indicating devices, specially adapted for sport equipment, e.g. display mounted on treadmills
    • A63B2071/0647Visualisation of executed movements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30221Sports video; Sports image

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Graphics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Computer Hardware Design (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 영상에서 피사체 운동에 대한 정보를 자동으로 생성하는 장치 및 그 방법에 대한 것으로서, 보다 상세하게는 인공지능을 이용하여 영상 내 피사체 운동의 세부 정보를 자동으로 생성하는 장치 및 그 방법에 대한 것이다. 본 발명의 일 실시예에 따른 운동 정보 생성 장치는, 인공지능 알고리즘과 타겟영상이 저장되는 메모리 및 프로세서를 포함하되, 메모리는 프로세서에 의해 실행 가능한, 타겟영상의 피사체의 운동에 대한 타겟운동정보를 인공지능 알고리즘을 이용하여 자동으로 생성하는 프로그램 명령어들을 저장할 수 있다. 이때, 당해 인공지능 알고리즘은 미리 설정된 방법에 의해 가상으로 생성된 데이터셋(Data set)에 의해 학습된 것이고, 데이터셋은 자동으로 설정된 학습운동정보와 학습운동정보에 상응하여 자동으로 생성된 학습영상을 포함할 수 있다. The present invention relates to an apparatus and method for automatically generating information about subject movement in an image, and more specifically to an apparatus and method for automatically generating detailed information about subject movement in an image using artificial intelligence. will be. The motion information generating device according to an embodiment of the present invention includes a memory and a processor in which an artificial intelligence algorithm and a target image are stored, and the memory stores target motion information about the movement of a subject in the target image that is executable by the processor. You can store program instructions that are automatically generated using artificial intelligence algorithms. At this time, the artificial intelligence algorithm is learned from a data set virtually created by a preset method, and the data set is automatically set learning movement information and learning images automatically generated corresponding to the learning movement information. may include.

Description

인공지능을 이용한 피사체 운동 정보 생성 장치 및 그 방법{Subject movement information generation device using artificial intelligence and method thereof}Subject movement information generation device using artificial intelligence and method thereof}

본 발명은 영상에서 피사체 운동에 대한 정보를 자동으로 생성하는 장치 및 그 방법에 대한 것으로서, 보다 상세하게는 인공지능을 이용하여 영상 내 피사체 운동의 세부 정보를 자동으로 생성하는 장치 및 그 방법에 대한 것이다. The present invention relates to an apparatus and method for automatically generating information about subject movement in an image, and more specifically to an apparatus and method for automatically generating detailed information about subject movement in an image using artificial intelligence. will be.

코로나19의 전세계적인 유행에 따라 실외에서 적은 인원으로 즐길 수 있는 골프가 각광을 받고 있다. 실내 골프연습장에서 연습을 할 경우, 골퍼는 자신이 친 골프공에 대한 세부적인 정보를 정확히 알기 원한다. 자신이 친 골프공이 어느 정도의 거리를 날라간 것인지, 백스핀/사이드스핀의 양은 어느 정도였는지 궁금한 것이다. 이는 실외 골프장에서 라운드를 즐기는 경우에도 마찬가지일 수 있다. Due to the global spread of COVID-19, golf, which can be enjoyed outdoors with a small number of people, is gaining attention. When practicing at an indoor golf driving range, golfers want to know exactly detailed information about the golf ball they hit. I am curious about how far the golf ball I hit flew and what the amount of backspin/sidespin was. This may also be the case when enjoying a round at an outdoor golf course.

이러한 골퍼들의 궁금증을 해소하기 위하여, 내부에 자이로센서, GPS센서, 가속도센서 등의 센서, 메모리, 무선 충전 배터리 등이 형성된 '스마트 골프공'이 개시되어 있다(도 1 참조). 이러한 스마트 골프공은 고가이고, 충전이 필요하는 등 사용상 불편한 문제점이 있다. In order to resolve these questions of golfers, a 'smart golf ball' with sensors such as a gyro sensor, GPS sensor, and acceleration sensor, memory, and a wireless rechargeable battery formed inside has been disclosed (see Figure 1). These smart golf balls are expensive and have inconvenient problems in use, such as the need for charging.

또한, 초고속 카메라를 통해 골프공을 촬영하고, 촬영된 골프공의 위치 및 모양 변화를 통해 골프공의 움직임을 센싱하는 방법이 실내 골프연습장 등에 널리 사용되고 있다. 초고속 카메라는 미리 설정된 시간을 주기로 움직이는 골프공을 촬영하고, 초고속 카메라와 연결된 컴퓨터는 촬영된 영상을 분석하여 골프공의 속도, 회전량을 측정한 후, 이를 기반으로 미리 설정된 방법을 통해 당해 골프공의 비거리, 낙하 지점 등을 추정할 수 있다. In addition, a method of photographing a golf ball using a high-speed camera and sensing the movement of the golf ball through changes in the position and shape of the photographed golf ball is widely used in indoor golf driving ranges, etc. A high-speed camera captures a moving golf ball at preset intervals, and a computer connected to the high-speed camera analyzes the captured images to measure the speed and rotation of the golf ball, and then uses a preset method based on this to measure the golf ball. You can estimate the flying distance, falling point, etc.

도 2에는, 초고속 카메라(210)가 q주기 동안 골프공을 촬영한 예시가 도시되어 있다. 제1 골프공(220-1)은 제1 주기에 촬영된 골프공이고, 제2 골프공(220-2)은 제2 주기에 촬영된 골프공이며, 제q 골프공(220-q)은 제q 주기에 촬영된 골프공일 수 있다. 또한, 제1 그림자(230-1)는 제1 주기에 촬영된 골프공의 그림자이고, 제2 그림자(230-2)는 제2 주기에 촬영된 골프공의 그림자이며, 제q 그림자(230-q)는 제q 주기에 촬영된 골프공의 그림자일 수 있다. 초고속 카메라(210)와 연결된 컴퓨터(미도시)는 영상 내 골프공(220-1 내지 220-q)의 위치 및 크기, 초고속 카메라(210)의 셔터 스피드 등의 정보를 이용하여 골프공의 속도와 좌우 이동 각도를 측정할 수 있다. 또한 컴퓨터(미도시)는 영상 내 골프공 그림자(230-1 내지 230-q) 크기를 이용하여 골프공의 상하 각도를 측정할 수 있다. 컴퓨터(미도시)는 측정된 정보들을 이용하여 골프공의 비거리, 비행궤적 등을 시뮬레이션할 수 있다. Figure 2 shows an example in which the high-speed camera 210 photographs a golf ball for q period. The first golf ball 220-1 is a golf ball photographed in the first cycle, the second golf ball 220-2 is a golf ball photographed in the second cycle, and the q golf ball 220-q is a golf ball photographed in the second cycle. It may be a golf ball photographed in period q. In addition, the first shadow 230-1 is a shadow of a golf ball photographed in the first cycle, the second shadow 230-2 is a shadow of a golf ball photographed in the second cycle, and the q-th shadow 230- q) may be the shadow of a golf ball taken at the qth period. A computer (not shown) connected to the high-speed camera 210 uses information such as the position and size of the golf balls (220-1 to 220-q) in the image and the shutter speed of the high-speed camera 210 to determine the speed and speed of the golf ball. The left and right movement angle can be measured. Additionally, a computer (not shown) can measure the vertical angle of the golf ball using the size of the golf ball's shadow (230-1 to 230-q) in the image. A computer (not shown) can simulate the distance and flight trajectory of a golf ball using measured information.

한편, 초고속 카메라(210)가 골프공의 회전수를 측정하기 위해서는 골프공에 특징적인 모양(도 2에는 4개의 큰 점)이 형성되어야 한다. 컴퓨터(미도시)는 특징적 모양의 변화를 인지하여 골프공의 회전을 인지할 수 있다. 몰론 이론적으로는, 컴퓨터(미도시)가 큰 점과 같은 특징적 모양이 형성되지 않아도 골프공 표면에 프린트된 브랜드, 라인(Line), 로고, 딤플(Dimple) 등을 통해 골프공의 회전수를 인지할 수 있다고 하지만, 정확도가 현저히 떨어지는 문제점이 있다. Meanwhile, in order for the high-speed camera 210 to measure the rotation speed of the golf ball, a characteristic shape (four large dots in FIG. 2) must be formed on the golf ball. A computer (not shown) can recognize the rotation of a golf ball by recognizing changes in its characteristic shape. Of course, in theory, a computer (not shown) can recognize the rotation speed of a golf ball through the brand, line, logo, dimple, etc. printed on the surface of the golf ball even if a characteristic shape such as a large dot is not formed. They say it can be done, but there is a problem with the accuracy being significantly lower.

기타 라이다(Ladar)를 이용한 골프공 트래킹 방법도 널리 사용되고 있으나, 필요한 장비가 고가이므로 널리 사용되기 어려운 문제가 있다. Other golf ball tracking methods using lidar are also widely used, but there is a problem in that they are difficult to use widely because the necessary equipment is expensive.

본 발명은 인공지능을 이용하여 영상 내 피사체 운동의 세부 정보를 실시간으로 정확하게 생성할 수 있는 장치 및 그 방법을 제공하고자 한다. The present invention seeks to provide a device and method that can accurately generate detailed information on subject movement in an image in real time using artificial intelligence.

본 발명의 일 실시예에 따르면, 인공지능 알고리즘 및 타겟영상이 저장되는 메모리; 및 프로세서;를 포함하되, 상기 메모리는 상기 프로세서에 의해 실행 가능한, 상기 타겟영상의 피사체의 운동에 대한 타겟운동정보를 상기 인공지능 알고리즘을 이용하여 자동으로 생성하는 프로그램 명령어들을 저장하되, 상기 인공지능 알고리즘은 미리 설정된 방법에 의해 가상으로 생성된 데이터셋(Data set)에 의해 학습된 것이고, 상기 데이터셋은 자동으로 설정된 학습운동정보와 상기 학습운동정보에 상응하여 자동으로 생성된 학습영상을 포함하는, 운동 정보 생성 장치가 개시된다. According to one embodiment of the present invention, a memory in which an artificial intelligence algorithm and a target image are stored; And a processor; wherein the memory stores program instructions that are executable by the processor and automatically generate target motion information about the movement of the subject of the target image using the artificial intelligence algorithm, wherein the artificial intelligence The algorithm is learned by a data set virtually created by a preset method, and the data set includes automatically set learning exercise information and a learning image automatically generated corresponding to the learning exercise information. , an exercise information generating device is disclosed.

본 발명의 다른 실시예에 따르면, 인공지능 알고리즘이 저장된 운동 정보 생성 장치에서 수행되는, 영상 내 피사체의 운동에 대한 정보를 생성하는 방법에 있어서, 타겟영상이 입력되는 단계; 및 상기 인공지능 알고리즘을 이용하여 상기 타겟영상의 피사체의 운동에 대한 타겟운동정보를 자동으로 생성하는 단계;를 포함하되, 상기 인공지능 알고리즘은 미리 설정된 방법에 의해 가상으로 생성된 데이터셋(Data set)에 의해 학습된 것이고, 상기 데이터셋은 자동으로 설정된 학습운동정보와 상기 학습운동정보에 상응하여 자동으로 생성된 학습영상을 포함하는, 운동 정보 생성 방법이 개시된다. According to another embodiment of the present invention, a method of generating information about the movement of a subject in an image, which is performed in a movement information generating device storing an artificial intelligence algorithm, includes the steps of inputting a target image; And automatically generating target motion information about the movement of the subject of the target image using the artificial intelligence algorithm, wherein the artificial intelligence algorithm is a data set virtually created by a preset method. ), and the dataset includes automatically set learning exercise information and a learning image automatically generated corresponding to the learning exercise information. A method of generating exercise information is disclosed.

실시예에 따라, 상기 데이터셋은 가상으로 생성된 n개의 피사체를 이용하여 자동 생성된 것일 수 있다(단, 상기 n은 자연수임). Depending on the embodiment, the dataset may be automatically generated using n virtually created subjects (where n is a natural number).

실시예에 따라, 상기 학습운동정보는 자동으로 설정된 속도정보, 사이드스핀정보, 백스핀정보, 상하각도정보 및 좌우각도정보를 포함하고, 상기 학습영상은 상기 n개의 피사체 중 어느 하나가 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것일 수 있다. Depending on the embodiment, the learning exercise information includes automatically set speed information, side spin information, back spin information, up and down angle information, and left and right angle information, and the learning image includes any one of the n subjects in the learning exercise. It may be about performing an exercise corresponding to the information.

실시예에 따라, 상기 학습영상은 상기 n개의 피사체 중 어느 하나의 초기위치가 자동으로 설정된 후 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것일 수 있다. Depending on the embodiment, the learning image may be about a case where an exercise corresponding to the learning exercise information is performed after the initial position of any one of the n subjects is automatically set.

실시예에 따라, 상기 학습영상은 복수이고, 초기위치만 상이한 2개 이상의 것이 포함된 것일 수 있다.Depending on the embodiment, the learning images may be plural and may include two or more that differ only in initial positions.

실시예에 따라, 상기 학습영상은 상기 n개의 피사체 중 어느 하나의 렌더링정보가 변환된 복수의 영상을 포함하되, 상기 렌더링정보는 조명정보, 촬영각도정보 및 렌즈정보 중 하나 이상을 포함하는 것일 수 있다.Depending on the embodiment, the learning image includes a plurality of images in which rendering information of any one of the n subjects is converted, and the rendering information may include one or more of lighting information, shooting angle information, and lens information. there is.

실시예에 따라, 상기 학습영상은 상기 n개의 피사체 중 어느 하나의 3차원 영상과 상기 3차원 영상에 상응하는 하나 이상의 2차원 영상을 포함하는 것일 수 있다.Depending on the embodiment, the learning image may include a 3D image of one of the n subjects and one or more 2D images corresponding to the 3D image.

본 발명에 따르면, 가상으로 생성된 피사체의 운동과 그 운동에 대한 세부 정보를 통해 학습된 인공지능 알고리즘을 이용하여, 입력된 영상 내(內) 피사체 운동의 세부 정보를 빠르고 정확하게 생성할 수 있다. According to the present invention, detailed information on the subject's movement within an input image can be quickly and accurately generated using an artificial intelligence algorithm learned through the movement of a virtually created subject and detailed information about the movement.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1 및 도 2는 종래의 피사체(골프공)의 운동을 인식하기 위한 기술을 설명하기 위한 예시 사진이다.
도 3은 본 발명의 일 실시예에 따른 운동 정보 생성 시스템에 대한 구성도이다.
도 4는 본 발명의 일 실시예에 따른 운동 정보 생성 장치에 대한 블록 구성도이다.
도 5는 본 발명의 일 실시예에 따른 운동 정보 생성 장치의 동작을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 운동 정보 생성 장치에 저장된 인공지능 학습을 위한 데이터 셋(Data set) 생성 동작에 대한 순서도이다.
도 7은 여러 종류의 골프공의 색상과 모양을 예시한 도면이다.
도 8은 임의의 골프공의 다양한 초기위치를 설명하기 위한 예시도이다.
도 9는 본 발명의 일 실시예에 따른 학습용 데이터셋을 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 타겟영상 분석 동작을 설명하기 위한 도면이다.
In order to more fully understand the drawings cited in the detailed description of the present invention, a brief description of each drawing is provided.
Figures 1 and 2 are example photos to explain a conventional technology for recognizing the movement of a subject (golf ball).
Figure 3 is a configuration diagram of an exercise information generation system according to an embodiment of the present invention.
Figure 4 is a block diagram of an exercise information generating device according to an embodiment of the present invention.
Figure 5 is a flowchart for explaining the operation of the exercise information generating device according to an embodiment of the present invention.
Figure 6 is a flowchart of the operation of generating a data set for artificial intelligence learning stored in an exercise information generating device according to an embodiment of the present invention.
Figure 7 is a diagram illustrating the colors and shapes of various types of golf balls.
Figure 8 is an example diagram for explaining various initial positions of an arbitrary golf ball.
Figure 9 is a diagram for explaining a learning dataset according to an embodiment of the present invention.
Figure 10 is a diagram for explaining a target image analysis operation according to an embodiment of the present invention.

본 개시의 기술적 사상은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 그러나, 이는 본 개시의 기술적 사상을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 개시의 기술적 사상의 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the technical idea of the present disclosure can be subject to various changes and can have various embodiments, specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the technical idea of the present disclosure to specific embodiments, and should be understood to include all changes, equivalents, and substitutes included in the scope of the technical idea of the present disclosure.

본 개시의 기술적 사상을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 기술적 사상의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본원의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별 기호에 불과하다. In explaining the technical idea of the present disclosure, if it is determined that a detailed description of related known technology may unnecessarily obscure the gist of the technical idea of the present disclosure, the detailed description will be omitted. In addition, numbers (eg, first, second, etc.) used in the description process of the present application are merely identification symbols to distinguish one component from another component.

또한, 본원에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, herein, when a component is referred to as "connected" or "connected" to another component, the component may be directly connected or directly connected to the other component, but in particular, the contrary It should be understood that unless a base material exists, it may be connected or connected through another component in the middle.

또한, 본원에 기재된 "~부", "~기", "~자" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 프로세서(Processor), 마이크로 프로세서(Micro Processer), 마이크로 콘트롤러(Micro Controller), CPU(Central Processing Unit), GPU(Graphics Processing Unit), APU(Accelerate Processor Unit), DSP(Digital Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등과 같은 하드웨어나, 소프트웨어, 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as “unit”, “unit”, “unit”, etc. used herein refer to a unit that processes at least one function or operation, such as a processor, microprocessor, Micro Controller, CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Digital Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array) It may be implemented through hardware, software, or a combination of hardware and software.

그리고 본원에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.In addition, we would like to clarify that the division of components in this institution is merely a division according to the main function each component is responsible for. That is, two or more components, which will be described below, may be combined into one component, or one component may be divided into two or more components for more detailed functions. In addition to the main functions it is responsible for, each of the components described below may additionally perform some or all of the functions handled by other components, and some of the main functions handled by each component may be performed by other components. Of course, it can also be carried out exclusively by .

이하, 본 개시의 기술적 사상에 따른 다양한 실시예들을 차례로 상세히 설명한다.Hereinafter, various embodiments according to the technical idea of the present disclosure will be described in detail one by one.

도 3은 본 발명의 일 실시예에 따른 운동 정보 생성 시스템에 대한 구성도이다. Figure 3 is a configuration diagram of an exercise information generation system according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 운동 정보 생성 시스템(300)은 운동 정보 생성 장치(310) 및 카메라(320)를 포함할 수 있다. Referring to FIG. 3, the exercise information generating system 300 according to an embodiment of the present invention may include an exercise information generating device 310 and a camera 320.

카메라(320)는 미리 설정된 시간 동안 피사체(330)를 촬영한 영상데이터를 생성한 후, 이를 운동 정보 생성 장치(310)로 전송할 수 있다. 예를 들어, 카메라(320)는 1[sec] 동안 0.01[ms] 셔터 스피드로 피사체(330)를 촬영한 후 이를 운동 정보 생성 장치(310)로 전송할 수 있다. 이하, 카메라(320)가 촬영한 동영상 데이터 및/또는 이미지 데이터를 타겟영상이라 칭한다.The camera 320 may generate image data by capturing the subject 330 for a preset time and then transmit it to the exercise information generating device 310. For example, the camera 320 may photograph the subject 330 at a shutter speed of 0.01 [ms] for 1 [sec] and then transmit it to the exercise information generating device 310. Hereinafter, video data and/or image data captured by the camera 320 are referred to as target images.

운동 정보 생성 장치(310)는 카메라(320)로부터 타겟영상이 입력되면, 저장된 인공지능 알고리즘을 이용하여 피사체의 운동에 대한 정보(이하, '타겟운동정보'라 칭함)를 자동으로 생성할 수 있다. 즉, 운동 정보 생성 장치(310)는 미리 학습되어 저장된 인공지능 알고리즘을 이용하여 타겟영상 피사체의 타겟운동정보를 자동 생성할 수 있는 것이다. When a target image is input from the camera 320, the motion information generating device 310 can automatically generate information about the subject's motion (hereinafter referred to as 'target motion information') using a stored artificial intelligence algorithm. . That is, the motion information generating device 310 can automatically generate target motion information of the target image subject using an artificial intelligence algorithm that has been learned and stored in advance.

이하, 운동 정보 생성 장치(310)가 타겟운동정보를 생성하는 동작에 대해 인공지능 알고리즘의 학습을 중점으로 보다 설명한다. Hereinafter, the operation of the exercise information generating device 310 to generate target exercise information will be described with a focus on learning the artificial intelligence algorithm.

도 4는 본 발명의 일 실시예에 따른 운동 정보 생성 장치에 대한 블록 구성도이다.Figure 4 is a block diagram of an exercise information generating device according to an embodiment of the present invention.

도 4를 참조하면, 운동 정보 생성 장치(310)는 메모리(Memory, 410) 및 프로세서(Processor, 420)를 포함할 수 있다. Referring to FIG. 4 , the exercise information generating device 310 may include a memory 410 and a processor 420 .

메모리(410)는 자기 디스크(HDD), 에스에스디(SSD, Solid State Drive) 등과 같은 데이터 저장 매체일 수 있다. 메모리(410)에는 프로세서(420)에 의해 실행 가능한 프로그램 명령어들이 저장될 수 있다. 특히 메모리(410)에는 타겟영상 및 타겟영상에 상응하는 타겟운동정보를 생성할 수 있는 인공지능 알고리즘이 저장될 수 있다. The memory 410 may be a data storage medium such as a magnetic disk (HDD) or solid state drive (SSD). Program instructions executable by the processor 420 may be stored in the memory 410 . In particular, an artificial intelligence algorithm that can generate a target image and target motion information corresponding to the target image may be stored in the memory 410.

프로세서(420)는 운동 정보 생성 장치(310)의 전반적인 동작을 제어할 수 있는 중앙처리장치(CPU), 그래픽처리장치(GPU) 및/또는 이에 상응하는 연산장치로서, 특히 메모리(310)에 저장된 프로그램 명령어들을 이용하여 타겟영상 피사체에 상응하는 타겟운동정보를 자동으로 생성할 수 있다. 이하, 프로세서(420)의 제어에 의해 타겟운동정보가 생성되는 동작에 대해 설명한다. The processor 420 is a central processing unit (CPU), a graphics processing unit (GPU), and/or a corresponding computing device capable of controlling the overall operation of the exercise information generating device 310, and is particularly stored in the memory 310. Target motion information corresponding to the target image subject can be automatically generated using program commands. Hereinafter, the operation of generating target motion information under the control of the processor 420 will be described.

도 5는 본 발명의 일 실시예에 따른 운동 정보 생성 장치의 동작을 설명하기 위한 흐름도이다. Figure 5 is a flowchart for explaining the operation of the exercise information generating device according to an embodiment of the present invention.

도 5를 참조하면, 프로세서(420)에 의해 타겟운동정보가 자동 생성되기 위해, 메모리(410)에 저장된 인공지능 알고리즘(Artificial Intelligence Algorithm, AI))이 이용되는 것을 확인할 수 있다. 이때, 메모리(410)에 저장된 인공지능 알고리즘은 특정된 학습용 데이터셋(Data set)을 통해 미리 학습된 것일 수 있다. Referring to FIG. 5, it can be seen that an artificial intelligence algorithm (AI) stored in the memory 410 is used to automatically generate target motion information by the processor 420. At this time, the artificial intelligence algorithm stored in the memory 410 may have been learned in advance through a specified learning data set.

즉, 먼저 인공지능 알고리즘을 학습시키기 위한 학습자료인 데이터셋이 생성되고(Learning Data Generating, 510), 생성된 데이터셋을 이용하여 인공지능 알고리즘이 학습되고(Artificial Intelligence Learning, 520), 분석 및 판단의 대상이 되는 타겟영상이 생성되며(Target data Generating, 530), 학습된 인공지능 알고리즘을 이용하여 타겟영상이 분석 및 판단될 수 있다(Target Data Analysis, 540). That is, first, a dataset that is learning material for learning the artificial intelligence algorithm is created (Learning Data Generating, 510), then the artificial intelligence algorithm is learned using the generated dataset (Artificial Intelligence Learning, 520), and analysis and judgment are made. A target image is generated (Target data Generating, 530), and the target image can be analyzed and judged using a learned artificial intelligence algorithm (Target Data Analysis, 540).

학습자료 생성 동작(510) 및 인공지능 알고리즘 학습 동작(520)은 외부 장치(미도시)에서 수행된 후 메모리(410)에 저장될 수도 있다. 즉, 인공지능 알고리즘의 학습을 위한 동작들은 운동 정보 생성 장치(310)가 아닌 다른 장치에서 수행될 수도 있는 것이다. 이하 도 5의 각 동작에 대해 보다 상세하게 설명한다. The learning material creation operation 510 and the artificial intelligence algorithm learning operation 520 may be performed in an external device (not shown) and then stored in the memory 410. In other words, operations for learning the artificial intelligence algorithm may be performed in a device other than the exercise information generating device 310. Hereinafter, each operation in FIG. 5 will be described in more detail.

도 6은 본 발명의 일 실시예에 따른 운동 정보 생성 장치에 저장된 인공지능 학습을 위한 데이터 셋(Data set) 생성 동작에 대한 순서도이고, 도 7은 여러 종류의 골프공의 색상과 모양을 예시한 도면이고, 도 8은 임의의 골프공의 다양한 초기위치를 설명하기 위한 예시도이며, 도 9는 본 발명의 일 실시예에 따른 학습용 데이터셋을 설명하기 위한 도면이다. Figure 6 is a flowchart of the operation of generating a data set for artificial intelligence learning stored in an exercise information generating device according to an embodiment of the present invention, and Figure 7 illustrates the colors and shapes of various types of golf balls. It is a diagram, FIG. 8 is an example diagram for explaining various initial positions of an arbitrary golf ball, and FIG. 9 is a diagram for explaining a learning dataset according to an embodiment of the present invention.

이하, 도 6 내지 도 9를 참조하여 도 5의 인공지능 알고리즘 학습을 위한 데이터셋 생성 동작(510)을 상세하게 설명한다. 여기서 데이터셋은 메모리(410)에 저장된 인공지능 알고리즘을 학습시키기 위한 데이터로서 가상의 영상 데이터(2차원 및/또는 3차원 영상 데이터, 이하 '학습영상'이라 칭함)를 포함할 수 있다. 가상의 영상 데이터는 실제 피사체를 촬영한 영상이 아닌, 미리 설정된 방법에 따라 생성된 가상의 피사체에 대한 영상일 수 있다. Hereinafter, the dataset creation operation 510 for learning the artificial intelligence algorithm of FIG. 5 will be described in detail with reference to FIGS. 6 to 9. Here, the dataset is data for training the artificial intelligence algorithm stored in the memory 410 and may include virtual image data (2-dimensional and/or 3-dimensional image data, hereinafter referred to as 'learning image'). The virtual image data may not be an image of an actual subject, but may be an image of a virtual subject created according to a preset method.

또한, 도 6의 각 단계들은 운동 정보 생성 장치(410)에서 수행될 수 있고, 다른 장치에서 수행될 수도 있으므로, 도 6의 각 단계들이 수행되는 장치는 별도 한정하지 않고 설명한다. Additionally, since each step in FIG. 6 may be performed in the exercise information generating device 410 or another device, the device in which each step in FIG. 6 is performed will be described without further limitation.

단계 S610에서, 인공지능 알고리즘 학습을 위한 데이터셋 생성을 위해 가상으로 생성된 n개의 피사체에 대한 정보가 서버장치로 입력되거나, 관리자의 조작에 따라 서버장치 내에서 생성될 수 있다(단, n은 자연수임). 여기서, 피사체에 대한 정보는 실존 물체가 아닌, 가상의 3차원 객체에 대한 정보일 수 있다. 가상의 피사체는 골프공, 야구공, 탁구공 등 기타 관절이 없고 자체변형이 크지 않아 강체(ridid body)로 근사할 수 있는 모든 물체일 수 있다. 도 6에서는 이해와 설명의 편의를 위해 피사체가 가상의 볼(Virtual Ball)인 경우를 가정한다(제1 가상볼 내지 제n 가상볼). 가상의 3차원 볼(Virtual 3D Ball) 생성 방법은 공개된 방법과 대동소이하므로, 이에 대한 구체적인 설명은 생략될 수 있다. 예를 들어, n개의 가상볼은 현재 사용되고 있는 골프공이 구현될 것일 수 있다. In step S610, information on n subjects virtually created to create a dataset for learning an artificial intelligence algorithm may be input to the server device, or may be generated within the server device according to the administrator's operation (where n is natural number). Here, the information about the subject may be information about a virtual three-dimensional object, not a real object. The virtual subject may be any object that has no joints and does not undergo significant self-deformation, such as a golf ball, baseball ball, or table tennis ball, and can be approximated as a rigid body. In Figure 6, for convenience of understanding and explanation, it is assumed that the subject is a virtual ball (first virtual ball to nth virtual ball). Since the method for creating a virtual 3D ball is very similar to the published method, detailed description thereof may be omitted. For example, n virtual balls may be implemented as golf balls currently in use.

도 7을 참조하면, 3개의 가상볼이 예시된다. 제1 가상볼은 제1 상표의 가상골프공으로서, 정면(710-1)에는 메인 상표가, 후면(710-2)에는 서브 상표가 형성되어 있을 수 있다. 제2 가상볼은 제2 상표의 가상골프공으로서, 정면(720-1)에는 메인 상표가, 후면(720-2)에는 서브 상표가 형성되어 있을 수 있다. 마찬가지로, 제3 가상볼은 제3 상표의 가상골프공으로서, 정면(730-1)에는 메인 상표가, 후면(730-2)에는 서브 상표가 형성되어 있을 수 있다. 한편, 제3 가상볼은 정면(730-1)의 색상과 후면(730-2)의 색상이 상이할 수 있다. 또한, 도 7에는 도시되지 않았으나, 가상 골프공은 보다 다양한 색상으로 형성될 수 있음은 자명하다. Referring to Figure 7, three virtual balls are illustrated. The first virtual ball is a virtual golf ball of the first brand, and may have a main brand on the front (710-1) and a sub-brand on the back (710-2). The second virtual ball is a virtual golf ball of a second brand, and may have a main brand on the front (720-1) and a sub-brand on the back (720-2). Likewise, the third virtual ball is a virtual golf ball of a third brand, and may have a main brand on the front (730-1) and a sub-brand on the back (730-2). Meanwhile, the color of the front (730-1) and the back (730-2) of the third virtual ball may be different. In addition, although not shown in FIG. 7, it is obvious that virtual golf balls can be formed in more diverse colors.

단계 S620에서, 제1 가상볼의 제1 초기위치가 설정될 수 있다. 동일한 가상볼이라고 하여도 초기위치에 따라 생성되는 학습영상은 상이해질 수 있다. 따라서 서버장치는 n개의 가상볼 중 어느 하나인 제1 가상볼을 선택한 후, 제1 가상볼의 제1 초기위치를 설정할 수 있다. 도 8에는 3개의 가상볼(810 내지 830)의 다양한 초기위치에 대한 예시가 도시된다. 즉, 초기위치는 임의의 가상볼이 정지상태에서 정면 메인 상표의 위치에 대한 것일 수 있다. In step S620, the first initial position of the first virtual ball may be set. Even if it is the same virtual ball, the learning image generated may be different depending on the initial position. Therefore, the server device can select the first virtual ball, which is one of the n virtual balls, and then set the first initial position of the first virtual ball. Figure 8 shows examples of various initial positions of three virtual balls 810 to 830. That is, the initial position may be relative to the position of the front main mark when any virtual ball is at rest.

단계 S630에서, 제1 가상볼의 제1 초기위치 기준으로 속도정보 a[m/sec], 사이드스핀정보 b[rpm], 백스핀정보 c[rpm], 상하각도정보 d[°], 좌우각도정보 e[°](즉, 학습운동정보)가 설정될 수 있다. 여기서, a, b, c, d 및 e는 실수(實數)일 수 있다. 여기서, 속도정보는 제1 가상볼이 정지상태에서 움직이기 시작한 순간(이하, '출발시'라 칭함)의 속도에 대한 정보일 수 있다. 또한, 사이드스핀정보는 제1 가상볼의 출발시 사이드스핀에 대한 정보일 수 있다. 또한, 백스핀정보는 제1 가상볼의 출발시 백스핀에 대한 정보일 수 있다. 또한, 상하각도정보는 제1 가상볼의 출발시 상하 각도에 대한 정보일 수 있다. 또한, 좌우각도정보는 제1 가상볼의 출발시 좌우 각도에 대한 정보일 수 있다. In step S630, based on the first initial position of the first virtual ball, speed information a [m/sec], side spin information b [rpm], back spin information c [rpm], vertical angle information d [°], and left and right angles. Information e[°] (i.e., learning exercise information) may be set. Here, a, b, c, d, and e may be real numbers. Here, the speed information may be information about the speed at the moment when the first virtual ball starts moving from a stationary state (hereinafter referred to as 'at the time of departure'). Additionally, the side spin information may be information about the side spin at the start of the first virtual ball. Additionally, the backspin information may be information about the backspin at the time of departure of the first virtual ball. Additionally, the vertical angle information may be information about the vertical angle at the time of departure of the first virtual ball. Additionally, the left and right angle information may be information about the left and right angles at the time of departure of the first virtual ball.

서버장치는 상기 a, b, c, d 및 e를 임의로 또는 랜덤으로 설정할 수 있다. 다만, 정보의 종류에 따라 각 값의 범위가 미리 설정될 수 있다. 예를 들어, 사이드스핀, 백스핀, 좌우각도정보의 절대값은 최대값이 설정될 수 있을 것이다. 다른 예를 들어, 속도정보, 상하각도정보는 최대값이 설정될 수 있을 것이다. The server device can set a, b, c, d, and e arbitrarily or randomly. However, the range of each value may be set in advance depending on the type of information. For example, the absolute values of side spin, back spin, and left and right angle information may be set to maximum values. For another example, maximum values may be set for speed information and vertical angle information.

또한, 서버장치는 설정된 제1 초기위치를 기준으로 제1 가상볼이 설정된 a, b, c, d 및 e값에 상응하는 운동을 수행하는 가상의 제1-1-1 학습영상을 생성할 수 있다. 예를 들어, 서버장치는 구비된 게임 엔진(Game Engine)을 이용하여 제1 가상볼이 a속도, b사이드스핀, c백스핀, d상하각도, e좌우각도로 초기 운동하는 3차원 동영상을 자동으로 생성할 수 있다. 여기서, 게임 엔진은 3D 컴퓨터 게임 또는 모바일 게임을 개발할 때 사용되는 응용 프로그램으로서, 게임 엔진은 가상의 객체가 주어진 운동 정보에 상응하는 움직임을 구현하는 영상(3D 및/또는 2D)이 자동으로 생성되도록 하여 영상 개발 과정을 단축시켜 줄 수 있다. 제1 가상볼이 설정된 속도정보 a[m/sec], 사이드스핀정보 b[rpm], 백스핀정보 c[rpm], 상하각도정보 d[°], 좌우각도정보 e[°]의 운동을 수행하는 3D 동영상을 자동으로 생성하는 게임 엔진은 통상의 기술자에 의해 용이하게 구현될 수 있으므로 이에 대한 구체적인 설명은 생략될 수 있다. In addition, the server device can generate a virtual 1-1-1 learning image in which the first virtual ball performs movements corresponding to the set a, b, c, d and e values based on the set first initial position. there is. For example, the server device uses the provided game engine to automatically create a 3D video of the initial movement of the first virtual ball at a speed, b side spin, c back spin, d up and down angle, and e left and right angle. It can be created with Here, the game engine is an application used when developing a 3D computer game or mobile game. The game engine automatically generates images (3D and/or 2D) in which virtual objects implement movements corresponding to given motion information. This can shorten the video development process. The first virtual ball performs movements of set speed information a [m/sec], side spin information b [rpm], back spin information c [rpm], up and down angle information d [°], and left and right angle information e [°]. A game engine that automatically generates 3D video can be easily implemented by a person skilled in the art, so detailed description thereof may be omitted.

단계 S640에서, 제1 가상볼이 제1 초기위치에서 생성된 학습영상(즉, 제1-1-p 학습영상)이 미리 설정된 개수(Pth)에 상응하는지 판단될 수 있다(단, p는 자연수임). 예를 들어, Pth가 10,000으로 설정된 경우를 가정한다. 이때, 서버장치는 제1 가상볼이 제1 초기위치에서 생성된 학습영상의 개수가 10,000 미만이면, 속도정보, 사이드스핀정보, 백스핀정보, 상하각도정보 및 좌우각도정보 중 어느 하나 이상을 변경시킬 수 있다. 이때 서버장치는 이들 정보를 임의로 또는 랜덤으로 변경시킬 수 있을 것이다(단계 S645). In step S640, it may be determined whether the learning image (i.e., 1-1-p learning image) generated at the first initial position of the first virtual ball corresponds to a preset number (Pth) (where p is a natural acceptance). For example, assume that Pth is set to 10,000. At this time, if the number of learning images generated for the first virtual ball at the first initial position is less than 10,000, the server device changes one or more of speed information, side spin information, back spin information, up and down angle information, and left and right angle information. You can do it. At this time, the server device may change this information arbitrarily or randomly (step S645).

이 후 서버장치는 단계 S645에서 변경된 정보를 기반으로 제1 가상볼이 제1 초기위치에서의 학습영상을 게임엔진을 이용하여 생성할 수 있다. Afterwards, the server device may generate a learning image of the first virtual ball at the first initial position using the game engine based on the information changed in step S645.

단계 S650에서, 제1 가상볼이 제1 초기위치에서 생성된 학습영상(즉, 제1-1-p 학습영상)이 미리 설정된 개수(Pth)에 도달하면, 제1 가상볼의 초기위치가 제2 초기위치로 변경될 수 있다. 제2 초기위치는 제1 초기위치와 상이할 수 있다. 제1 가상볼의 초기위치가 변경되면, 서버장치는 속도정보, 사이드스핀정보, 백스핀정보, 상하각도정보 및 좌우각도정보를 임의로 또는 랜덤으로 설정할 수 있고, 설정된 값들을 기초로 게임 엔진을 이용하여 학습영상(즉, 제1-2-1 학습영상)을 생성할 수 있다. 서버장치는 이러한 동작을 제1 가상볼이 제2 초기위치에서 생성된 학습영상(즉, 제1-2-p 학습영상)의 개수가 미리 설정된 개수(Pth)에 도달할 때까지 수행할 수 있다. In step S650, when the training image (i.e., 1-1-p learning image) generated at the first initial position of the first virtual ball reaches a preset number (Pth), the initial position of the first virtual ball is changed to the first position. 2 Can be changed to the initial position. The second initial position may be different from the first initial position. When the initial position of the first virtual ball is changed, the server device can arbitrarily or randomly set the speed information, side spin information, back spin information, up and down angle information, and left and right angle information, and use the game engine based on the set values. Thus, a learning video (i.e., a 1-2-1 learning video) can be generated. The server device may perform this operation until the number of learning images (i.e., 1-2-p learning images) generated at the second initial position of the first virtual ball reaches a preset number (Pth). .

또한, 서버장치는 제1 가상볼이 제2 초기위치에서 생성된 학습영상의 개수가 미리 설정된 개수(Pth)에 도달하면, 제1 가상볼의 초기위치가 제3 초기위치로 변경될 수 있다. 서버장치는 이러한 동작을 제1 가상볼의 초기위치가 mth번 변경되고, 제mth 초기위치에서 생성된 학습영상(즉, 제1-mth-p 학습영상)의 개수가 미리 설정된 개수(Pth)에 도달할 때까지 수행할 수 있다. In addition, the server device may change the initial position of the first virtual ball to the third initial position when the number of learning images generated at the second initial position of the first virtual ball reaches a preset number (Pth). The server device performs this operation when the initial position of the first virtual ball is changed mth times, and the number of learning images (i.e., 1-mth-p learning images) generated at the mth initial position is adjusted to the preset number (Pth). You can do this until you reach it.

단계 S660에서, 제1 가상볼이 제mth 초기위치에서 생성된 학습영상(즉, 제1-mth-p 학습영상)이 미리 설정된 개수(Pth)에 도달하면, 제2 가상볼에 대한 학습영상이 생성될 수 있다. 제2 가상볼에 상응하는 학습영상도 제1 가상볼에 상응하는 학습영상 생성 동작과 대동소이하게 생성될 수 있다. 또한, 서버장치는 제nth 가상볼에 대한 학습영상이 모두 생성될 때까지 학습영상을 생성하는 단계 S620 내지 단계 S660의 동작을 반복할 수 있다. In step S660, when the learning image (i.e., 1-mth-p learning image) generated at the mth initial position of the first virtual ball reaches a preset number (Pth), the learning image for the second virtual ball is can be created. The learning image corresponding to the second virtual ball may also be generated in a completely similar manner to the operation of generating the learning image corresponding to the first virtual ball. Additionally, the server device may repeat the operations of steps S620 to S660 for generating learning images until all learning images for the nth virtual ball are generated.

이러한 방법으로 무수히 많은 학습영상이 자동으로 생성될 수 있고, 학습영상 중에는 초기위치만 상이한 2개 이상의 것이 포함될 수도 있다. 즉, 가상볼도 동일하고, 가상볼의 세부운동정보도 동일하지만 초기위치만 상이한 학습영상이 2개 이상 존재할 수 있는 것이다. In this way, countless learning images can be automatically generated, and among the learning images, two or more may be included that differ only in initial positions. In other words, there may be two or more learning images where the virtual ball is the same and the detailed motion information of the virtual ball is the same, but only the initial position is different.

이상에서는 제1 가상볼에 대한 학습영상이 생성된 후 제2 가상볼에 대한 학습영상이 생성되는 것으로 설명하였으나, 이들은 동시에 생성될 수도 있다. 따라서, 학습영상이 생성되는 순서는 본 발명의 권리범위를 제한할 수 없다. 또한, 이상에서는 학습영상이 게임엔진에서 1개씩 순차적으로 생성되는 것처럼 설명되었으나, 복수의 학습영상이 동시에 생성될 수도 있을 것이다. In the above, it has been explained that the learning image for the second virtual ball is generated after the learning image for the first virtual ball is generated, but these may be generated simultaneously. Therefore, the order in which learning videos are generated cannot limit the scope of the present invention. In addition, although the above description has shown that the learning images are generated sequentially one by one in the game engine, multiple learning images may be generated simultaneously.

단계 S670에서, 생성된 복수의 학습영상 각각의 렌더링정보가 변화되어 복수의 데이터셋(Data set)이 생성될 수 있다. 도 9를 참조하면, 데이터셋은 제1 가상볼 내지 제nth 가상볼의 학습영상 및 각 학습영상의 정답으로 속도정보(a), 사이드스핀정보(b), 백스핀정보(c), 상하각도정보(d) 및/또는 좌우각도정보(e)가 레이블(Label)된 것일 수 있다. 여기서 데이터셋의 학습영상은 3차원 동영상 및/또는 하나 이상의 2차원 동영상을 포함할 수 있고, 학습영상은 3차원 동영상과 3차원 동영상을 여러 각도에서 바라본 2차원 동영상을 포함할 수 있다(촬영각도 변경). In step S670, the rendering information of each of the generated plurality of training images may be changed to generate a plurality of data sets. Referring to FIG. 9, the dataset includes learning images of the first to nth virtual balls and the correct answers to each learning image, including speed information (a), side spin information (b), back spin information (c), and vertical angle. Information (d) and/or left and right angle information (e) may be labeled. Here, the training images of the dataset may include 3D videos and/or one or more 2D videos, and the training images may include 3D videos and 2D videos viewed from various angles (shooting angles) change).

또한, 개별 학습영상의 조명정보가 변경된 다양한 데이터셋이 생성될 수 있다. 동일한 피사체라고 하여도 촬영 조명의 위치, 조도, 종류 등에 따라 상이한 영상으로 생성되고 인식될 수 있다. 따라서, 서버장치는 학습영상에 상응하는 가상 조명의 위치정보, 조도정보, 종류정보(이하, 조명정보라 통칭함)를 변경하여 다양한 데이터셋을 생성할 수 있다. Additionally, various datasets in which the lighting information of individual learning images are changed can be created. Even if the subject is the same, different images may be generated and recognized depending on the location, illuminance, and type of shooting lighting. Accordingly, the server device can generate various data sets by changing the location information, illuminance information, and type information (hereinafter collectively referred to as lighting information) of virtual lighting corresponding to the learning image.

또한, 학습영상에 상응하는 가상 카메라의 렌즈정보를 변경하여 다양한 데이터셋이 생성될 수 있다. 동일한 피사체라고 하여도 그 피사체를 촬영하는 카메라 렌즈의 종류에 따라 상이한 영상으로 생성되고 인식될 수 있다. 따라서, 서버 장치는 가상볼을 촬영한 가상의 카메라 렌즈의 종류 정보(이하, 렌즈정보라 통칭함)를 변경하여 다양한 데이터셋을 생성할 수 있다. Additionally, various datasets can be created by changing the lens information of the virtual camera corresponding to the training image. Even if it is the same subject, different images may be generated and recognized depending on the type of camera lens that captures the subject. Accordingly, the server device can generate various data sets by changing the type information (hereinafter collectively referred to as lens information) of the virtual camera lens that photographed the virtual ball.

다시 도 5를 참조하면, 상술한 방법에 의해 생성된 데이터셋을 통해 학습된 인공지능 알고리즘이 메모리(410)에 저장될 수 있다(Artificial Intelligence Learning, 520). 따라서, 당해 인공지능 알고리즘에 2차원 영상 및/또는 3차원 영상(즉, 타겟영상)이 입력되면, 인공지능 알고리즘은 입력된 영상에 상응하는 운동정보(즉, 타겟운동정보)를 그 결과값으로 출력할 수 있을 것이다. 인공지능 알고리즘 학습용 데이터셋은 학습용 2차원 영상 및/또는 3차원 영상, 그리고 각 영상에 상응하는 학습운동정보로 레이블된 것들이기 때문이다. Referring again to FIG. 5, the artificial intelligence algorithm learned through the dataset generated by the above-described method may be stored in the memory 410 (Artificial Intelligence Learning, 520). Therefore, when a 2-dimensional image and/or a 3-dimensional image (i.e., target image) is input to the artificial intelligence algorithm, the artificial intelligence algorithm uses movement information (i.e., target movement information) corresponding to the input image as the result. You will be able to print it. This is because datasets for learning artificial intelligence algorithms are labeled with 2-dimensional and/or 3-dimensional images for learning, and learning motion information corresponding to each image.

따라서 카메라(320)로부터 타겟영상(Target Data)이 생성되면(530), 프로세서(420)는 인공지능 알고리즘에 타겟영상을 입력하여 타겟영상에 상응하는 타겟운동정보를 생성할 수 있다(540). Therefore, when a target image (target data) is generated from the camera 320 (530), the processor 420 can input the target image into an artificial intelligence algorithm to generate target motion information corresponding to the target image (540).

도 10은 본 발명의 일 실시예에 따른 타겟영상 분석 동작을 설명하기 위한 도면이다. Figure 10 is a diagram for explaining a target image analysis operation according to an embodiment of the present invention.

도 10을 참조하면, 카메라(320)에서 생성된 타겟영상(2차원 영상, 1010)이 운동 정보 생성 장치(310)로 전송된 경우가 예시된다. 운동 정보 생성 장치(310)의 프로세서(420)는 타겟영상(1010)을 인공지능 알고리즘의 입력으로 처리할 수 있다(540). 이를 통해 프로세서(420)는 타겟영상(1210)에 상응하는 타겟운동정보(1020)를 생성할 수 있을 것이다. Referring to FIG. 10 , a case in which a target image (2D image, 1010) generated by the camera 320 is transmitted to the exercise information generating device 310 is illustrated. The processor 420 of the exercise information generating device 310 may process the target image 1010 as an input to an artificial intelligence algorithm (540). Through this, the processor 420 will be able to generate target motion information 1020 corresponding to the target image 1210.

상술한 바와 같이, 게임엔진과 같은 3차원 그래픽 기술을 통해 가상의 데이터로부터 양질의 인공지능 알고리즘 학습용 데이터셋이 저렴한 비용으로 빠르게 생성될 수 있다(데이터 증강 기술, Data Augmentation). 따라서 본 발명에 따르면, 상술한 데이터 증강 기술에 따라 생성된 가상 피사체의 운동에 대한 학습영상을 통해 인공지능 알고리즘이 학습되고, 이러한 인공지능 알고리즘을 통해, 타겟영상 내(內) 피사체의 운동에 대한 정보(즉, 타겟운동정보)가 실시간으로 정확하게 생성될 수 있다. As described above, high-quality datasets for learning artificial intelligence algorithms can be quickly created from virtual data through 3D graphics technology such as game engines at low cost (data augmentation technology). Therefore, according to the present invention, an artificial intelligence algorithm is learned through a learning image about the movement of a virtual subject generated according to the above-described data augmentation technology, and through this artificial intelligence algorithm, a learning image about the movement of the subject within the target image is learned. Information (i.e., target exercise information) can be accurately generated in real time.

상술한 본 발명에 따른 운동 정보 생성 동작은 컴퓨터로 읽을 수 있는 기록 매체인 메모리(120)에 컴퓨터가 읽을 수 있는 코드로서 구현되어 방법적으로 수행되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다. 따라서, 프로세서(130)는 메모리(120)에 저장된 프로그램 명령어(코드)를 실행시켜 상술한 운동 정보 생성 방법이 단계적으로 수행되도록 할 수 있다. The exercise information generating operation according to the present invention described above can be implemented methodically by being implemented as computer-readable code in the memory 120, which is a computer-readable recording medium. Computer-readable recording media include all types of recording media storing data that can be deciphered by a computer system. For example, there may be Read Only Memory (ROM), Random Access Memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc. Additionally, the computer-readable recording medium can be distributed to computer systems connected through a computer communication network, and stored and executed as code that can be read in a distributed manner. Accordingly, the processor 130 may execute the program instructions (code) stored in the memory 120 so that the above-described method of generating exercise information is performed step by step.

이상, 본 발명을 바람직한 실시 예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시 예에 한정되지 않고, 본 발명의 기술적 사상 및 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러가지 변형 및 변경이 가능하다. Above, the present invention has been described in detail with preferred embodiments, but the present invention is not limited to the above embodiments, and various modifications and changes can be made by those skilled in the art within the technical spirit and scope of the present invention. This is possible.

300: 운동 정보 생성 시스템
310: 운동 정보 생성 장치
320: 카메라
410: 메모리
420: 프로세서
300: Exercise information generation system
310: Exercise information generating device
320: camera
410: memory
420: processor

Claims (14)

인공지능 알고리즘 및 타겟영상이 저장되는 메모리; 및
프로세서;
를 포함하되,
상기 메모리는 상기 프로세서에 의해 실행 가능한,
상기 타겟영상의 피사체의 운동에 대한 타겟운동정보를 상기 인공지능 알고리즘을 이용하여 자동으로 생성하는 프로그램 명령어들을 저장하되,
상기 인공지능 알고리즘은 미리 설정된 방법에 의해 가상으로 생성된 데이터셋(Data set)에 의해 학습된 것이고,
상기 데이터셋은 자동으로 설정된 학습운동정보와 상기 학습운동정보에 상응하여 자동으로 생성된 학습영상을 포함하고,
상기 데이터셋은 가상으로 생성된 n개의 피사체를 이용하여 자동 생성된 것이고(단, 상기 n은 자연수임),
상기 학습운동정보는 자동으로 설정된 속도정보, 사이드스핀정보, 백스핀정보, 상하각도정보 및 좌우각도정보 중 하나 이상을 포함하고,
상기 학습영상은 상기 n개의 피사체 중 어느 하나가 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것이며,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 렌더링정보가 변환된 복수의 영상을 포함하는, 운동 정보 생성 장치.
Memory where artificial intelligence algorithms and target images are stored; and
processor;
Including,
The memory is executable by the processor,
Store program instructions that automatically generate target motion information about the movement of the subject of the target image using the artificial intelligence algorithm,
The artificial intelligence algorithm is learned from a data set virtually created by a preset method,
The dataset includes automatically set learning exercise information and automatically generated learning images corresponding to the learning exercise information,
The dataset was automatically created using n virtually created subjects (where n is a natural number),
The learning exercise information includes one or more of automatically set speed information, side spin information, back spin information, up and down angle information, and left and right angle information,
The learning video is for a case where one of the n subjects performs a movement corresponding to the learning movement information,
The training image includes a plurality of images in which rendering information of one of the n subjects is converted.
삭제delete 삭제delete 제1항에 있어서,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 초기위치가 자동으로 설정된 후 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것인, 운동 정보 생성 장치.
According to paragraph 1,
The learning video is for a case where an exercise corresponding to the learning exercise information is performed after the initial position of any one of the n subjects is automatically set.
제4항에 있어서,
상기 학습영상은 복수이고, 초기위치만 상이한 2개 이상의 것이 포함된, 운동 정보 생성 장치.
According to paragraph 4,
The exercise information generating device includes a plurality of learning images and includes two or more images that differ only in initial positions.
제4항에 있어서,
상기 렌더링정보는 조명정보, 촬영각도정보 및 렌즈정보 중 하나 이상을 포함하는, 운동 정보 생성 장치.
According to paragraph 4,
The rendering information includes one or more of lighting information, shooting angle information, and lens information.
제1항, 제4항 내지 제6항 중 어느 한 항에 있어서,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 3차원 영상과 상기 3차원 영상에 상응하는 하나 이상의 2차원 영상을 포함하는, 운동 정보 생성 장치.
According to any one of claims 1, 4 to 6,
The training image includes a 3D image of one of the n subjects and one or more 2D images corresponding to the 3D image.
인공지능 알고리즘이 저장된 운동 정보 생성 장치에서 수행되는, 영상 내 피사체의 운동에 대한 정보를 생성하는 방법에 있어서,
타겟영상이 입력되는 단계; 및
상기 인공지능 알고리즘을 이용하여 상기 타겟영상의 피사체의 운동에 대한 타겟운동정보를 자동으로 생성하는 단계;
를 포함하되,
상기 인공지능 알고리즘은 미리 설정된 방법에 의해 가상으로 생성된 데이터셋(Data set)에 의해 학습된 것이고,
상기 데이터셋은 자동으로 설정된 학습운동정보와 상기 학습운동정보에 상응하여 자동으로 생성된 학습영상을 포함하고,
상기 데이터셋은 가상으로 생성된 n개의 피사체를 이용하여 자동 생성된 것이고(단, 상기 n은 자연수임),
상기 학습운동정보는 자동으로 설정된 속도정보, 사이드스핀정보, 백스핀정보, 상하각도정보 및 좌우각도정보 중 하나 이상을 포함하고,
상기 학습영상은 상기 n개의 피사체 중 어느 하나가 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것이며,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 렌더링정보가 변환된 복수의 영상을 포함하는, 운동 정보 생성 방법.
In a method of generating information about the movement of a subject in an image, which is performed in a movement information generating device in which an artificial intelligence algorithm is stored,
Inputting a target image; and
Automatically generating target motion information about the movement of the subject of the target image using the artificial intelligence algorithm;
Including,
The artificial intelligence algorithm is learned from a data set virtually created by a preset method,
The dataset includes automatically set learning exercise information and automatically generated learning images corresponding to the learning exercise information,
The dataset was automatically created using n virtually created subjects (where n is a natural number),
The learning exercise information includes one or more of automatically set speed information, side spin information, back spin information, up and down angle information, and left and right angle information,
The learning video is for a case where one of the n subjects performs a movement corresponding to the learning movement information,
The training image includes a plurality of images in which rendering information of one of the n subjects is converted.
삭제delete 삭제delete 제8항에 있어서,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 초기위치가 자동으로 설정된 후 상기 학습운동정보에 상응하는 운동을 수행하는 경우에 대한 것인, 운동 정보 생성 방법.
According to clause 8,
The learning video is for a case where an exercise corresponding to the learning exercise information is performed after the initial position of any one of the n subjects is automatically set.
제11항에 있어서,
상기 학습영상은 복수이고, 초기위치만 상이한 2개 이상의 것이 포함된, 운동 정보 생성 방법.
According to clause 11,
A method of generating exercise information in which the learning images are plural and include two or more images that differ only in initial positions.
제11항에 있어서,
상기 렌더링정보는 조명정보, 촬영각도정보 및 렌즈정보 중 하나 이상을 포함하는, 운동 정보 생성 방법.
According to clause 11,
The rendering information includes one or more of lighting information, shooting angle information, and lens information.
제8항, 제11항 내지 제13항 중 어느 한 항에 있어서,
상기 학습영상은 상기 n개의 피사체 중 어느 하나의 3차원 영상과 상기 3차원 영상에 상응하는 하나 이상의 2차원 영상을 포함하는, 운동 정보 생성 방법.
According to any one of claims 8, 11 to 13,
The training image includes a 3D image of one of the n subjects and one or more 2D images corresponding to the 3D image.
KR1020220161737A 2022-11-28 2022-11-28 Subject movement information generation device using artificial intelligence and method thereof KR102584540B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220161737A KR102584540B1 (en) 2022-11-28 2022-11-28 Subject movement information generation device using artificial intelligence and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220161737A KR102584540B1 (en) 2022-11-28 2022-11-28 Subject movement information generation device using artificial intelligence and method thereof

Publications (1)

Publication Number Publication Date
KR102584540B1 true KR102584540B1 (en) 2023-10-05

Family

ID=88293527

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220161737A KR102584540B1 (en) 2022-11-28 2022-11-28 Subject movement information generation device using artificial intelligence and method thereof

Country Status (1)

Country Link
KR (1) KR102584540B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102118519B1 (en) * 2018-11-22 2020-06-15 삼성전자주식회사 Electronic apparatus and controlling method thereof
KR20200117408A (en) * 2019-04-04 2020-10-14 한국전자통신연구원 Apparatus and method for reflecting lighting environment information in augumented reality
KR20210010408A (en) * 2019-07-17 2021-01-27 (주)포트러시 Apparatus and Method for Vision-Sensor Data Based Golf Swing Trace Tracking and Analysis
KR20210085124A (en) * 2019-12-30 2021-07-08 한국과학기술연구원 Virtual training data generating method to improve performance of pre-learned machine-learning model and device performing the same
KR102412652B1 (en) * 2021-12-30 2022-06-23 몬드리안에이아이 주식회사 Data generation system for artificial intelligence learning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102118519B1 (en) * 2018-11-22 2020-06-15 삼성전자주식회사 Electronic apparatus and controlling method thereof
KR20200117408A (en) * 2019-04-04 2020-10-14 한국전자통신연구원 Apparatus and method for reflecting lighting environment information in augumented reality
KR20210010408A (en) * 2019-07-17 2021-01-27 (주)포트러시 Apparatus and Method for Vision-Sensor Data Based Golf Swing Trace Tracking and Analysis
KR20210085124A (en) * 2019-12-30 2021-07-08 한국과학기술연구원 Virtual training data generating method to improve performance of pre-learned machine-learning model and device performing the same
KR102412652B1 (en) * 2021-12-30 2022-06-23 몬드리안에이아이 주식회사 Data generation system for artificial intelligence learning

Similar Documents

Publication Publication Date Title
JP6984698B2 (en) Virtual environment construction device, virtual environment construction method, and program
KR101385325B1 (en) Method and system for photographing object in movement with plural camera, and based on taken images therefor, obtaining actual movement trace of same object
CN108958475B (en) Virtual object control method, device and equipment
CN108735052B (en) Augmented reality free fall experiment method based on SLAM
CN102735100B (en) Individual light weapon shooting training method and system by using augmented reality technology
JP7051315B2 (en) Methods, systems, and non-temporary computer-readable recording media for measuring ball rotation.
CN102331840B (en) User selection and navigation based on looped motions
JP4109094B2 (en) Method for measuring the rotational and flight characteristics of a sphere
CN108875730A (en) A kind of deep learning sample collection method, apparatus, equipment and storage medium
JP7076955B2 (en) Methods, systems, and non-temporary computer-readable recording media for correcting the brightness of the ball's image.
US11850498B2 (en) Kinematic analysis of user form
JP7466287B2 (en) Learning-Based Ground Position Estimation
JP4109075B2 (en) Method for measuring the rotation characteristics and flight characteristics of a sphere, and a device for measuring the rotation characteristics and flight characteristics of a sphere
CN110787433A (en) Golf ball sensing system for golf simulator
KR102584540B1 (en) Subject movement information generation device using artificial intelligence and method thereof
JP2004061483A (en) Method and instrument for measuring rotation quantity and rotary axis direction of curved surface body, and method of specifying three-dimensional posture of curved surface body
US20230224576A1 (en) System for generating a three-dimensional scene of a physical environment
KR102129129B1 (en) Method, system and non-transitory computer-readable recording medium for measuring ball spin
CN110910489A (en) Monocular vision based intelligent court sports information acquisition system and method
JP6869826B2 (en) Methods, systems, and non-temporary computer-readable recording media for determining areas of interest for ball imaging.
CN102591456A (en) Detection of body and props
Malawski Immersive feedback in fencing training using mixed reality
TWI835289B (en) Virtual and real interaction method, computing system used for virtual world, and virtual reality system
KR20180056134A (en) Module type high speed photographing apparatus, apparatus and method for sensing of ball motion based on high speed photographing
Hansen Utilising computer vision to create an augmented reality training aid for basketball shooting: a thesis presented in partial fulfilment of the requirements for the degree of Master of Engineering at Massey University, Manawatū, New Zealand

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant