KR102670939B1 - Sportrs posture evaluation system and method using sensor data - Google Patents

Sportrs posture evaluation system and method using sensor data Download PDF

Info

Publication number
KR102670939B1
KR102670939B1 KR1020230090130A KR20230090130A KR102670939B1 KR 102670939 B1 KR102670939 B1 KR 102670939B1 KR 1020230090130 A KR1020230090130 A KR 1020230090130A KR 20230090130 A KR20230090130 A KR 20230090130A KR 102670939 B1 KR102670939 B1 KR 102670939B1
Authority
KR
South Korea
Prior art keywords
candidate
information
time
data
score
Prior art date
Application number
KR1020230090130A
Other languages
Korean (ko)
Inventor
하승재
최현진
민태남
이상혁
Original Assignee
주식회사 에이아이비즈
최현진
민태남
이상혁
Filing date
Publication date
Application filed by 주식회사 에이아이비즈, 최현진, 민태남, 이상혁 filed Critical 주식회사 에이아이비즈
Application granted granted Critical
Publication of KR102670939B1 publication Critical patent/KR102670939B1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/34Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B24/00Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
    • A63B24/0003Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
    • A63B24/0006Computerised comparison for qualitative assessment of motion sequences or the course of a movement
    • A63B2024/0012Comparing movements or motion sequences with a registered reference
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B2220/00Measuring of physical parameters relating to sporting activity
    • A63B2220/62Time or time measurement used for time reference, time stamp, master time or clock signal
    • 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

Abstract

센서 데이터를 활용한 운동 자세 평가 시스템 및 방법이 제공된다. 본 발명의 다양한 실시예에 따르면, 소정의 공간에서 진행되는 운동 심사에 참가한 응시자의 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하는 적어도 하나의 센서 모듈 및 기 학습된 인공지능 모델을 이용하여, 상기 센서 모듈로부터 생성된 상기 센서 데이터를 분석함에 따라 상기 응시자에 대한 점수를 산출하는 서버를 포함한다.A system and method for evaluating exercise posture using sensor data is provided. According to various embodiments of the present invention, using at least one sensor module and a previously learned artificial intelligence model that generates at least one sensor data by scanning the posture of a candidate participating in an exercise screening conducted in a predetermined space, and a server that calculates a score for the test taker by analyzing the sensor data generated from the sensor module.

Description

센서 데이터를 활용한 운동 자세 평가 시스템 및 방법{SPORTRS POSTURE EVALUATION SYSTEM AND METHOD USING SENSOR DATA}Exercise posture evaluation system and method using sensor data {SPORTRS POSTURE EVALUATION SYSTEM AND METHOD USING SENSOR DATA}

본 발명의 다양한 실시예는 영상 및 센서 데이터를 활용한 운동 자세 판단 시스템 및 방법에 관한 것이다.Various embodiments of the present invention relate to a system and method for determining exercise posture using images and sensor data.

태권도는 대한민국에서 창안되고 발전한 현대 무술로, 맨 손과 맨 발을 이용해 공격 또는 방어하는 무도이다. 또한 태권도는, 빠르고 강력한 발차기 기술을 특징으로 하는 현대에 형성된 전통무예 무술이다. 또한, 태권도는 1988년 하계 올림픽에서 시범 종목으로 채택되었고, 2000년 하계 올림픽부터 정식 종목으로 채택되었다.Taekwondo is a modern martial art created and developed in Korea. It is a martial art that uses bare hands and feet to attack or defend. Taekwondo is also a modern, traditional martial art characterized by fast and powerful kicking techniques. Additionally, Taekwondo was adopted as a demonstration sport at the 1988 Summer Olympics, and was adopted as an official sport starting at the 2000 Summer Olympics.

태권도는 크게 품새(형), 겨루기(대련) 및 격파(단련)로 구분될 수 있다. 이 중 품새는 공격과 방어의 기본기들을 일정 순서로 배열하여 가상의 상대와 겨루는 연습을 하는 수련 방식 또는 경기를 의미한다. 품새의 종류로 태극 1장 ~ 8장, 고려, 금강, 태백, 평원, 십진, 지태, 천권, 한수, 일여 등이 있다.Taekwondo can be largely divided into Poomsae (form), Gyeorugi (sparring), and Gyeongpa (training). Among these, Poomsae refers to a training method or game in which the basic techniques of attack and defense are arranged in a certain order and practiced against an imaginary opponent. Types of Poomsae include Taegeuk 1 to 8 Jang, Goryeo, Geumgang, Taebaek, Pyeongwon, Sipjin, Jitae, Cheongwon, Hansu, and Ilyeo.

현재 국기원에서는 응시자의 품새 자세의 정확도. 숙련도, 균형을 평가하고, 이 평가를 기반으로 승단 심사가 이루어진다. 구체적으로, 승단 심사에서는 심사평가위원이 완성도(예를 들어, 품새 완결, 정확성, 공방목표, 자세의 굴신), 숙련도(예를 들어, 속도의 완급, 몸의 중심이동, 힘의 강유, 기의 집중, 호흡, 기합), 품위(예를 들어, 태도, 예절, 차림새) 등의 평가요소를 각각 평가한다.Currently, at Kukkiwon, the accuracy of the candidate’s Poomsae posture is monitored. Skills and balance are evaluated, and promotions are made based on this evaluation. Specifically, in the Sangdan screening, the judges evaluate completeness (e.g., Poomsae perfection, accuracy, attack and defense goals, flexibility in posture) and proficiency (e.g., slowness of speed, movement of the body's center of gravity, strength of power, and energy). Evaluation factors such as concentration, breathing, and spirit) and dignity (e.g., attitude, manners, and appearance) are evaluated separately.

승단 심사를 위한 품새의 평가에서 정확성과 공정성을 위해 복수(3인 이상)의 심사평가위원이 관여하지만, 육안으로만 응시자를 평가하기 때문에, 응시자의 동작과 자세를 정확하게 평가하기 어려운 점이 있다. In the evaluation of Poomsae for the Dandan evaluation, multiple judges (three or more) are involved to ensure accuracy and fairness, but since the candidates are evaluated only with the naked eye, it is difficult to accurately evaluate the candidate's movements and posture.

구체적으로 응시자의 자세를 정확히 평가하기 위해서는 응시자의 동작 중에 신체 각도를 정확하게 파악하여 이를 이상적인 품새 자세에 비교해야 하지만, 도복에 응시자의 신체 관절이 가려져 있기 때문에, 눈대중으로 신체 각도를 파악할 수 밖에 없으며, 설혹 신체 각도를 파악했다 하더라도 이를 이상적인 신체 각도에 비교 판단하기 어렵다. Specifically, in order to accurately evaluate the candidate's posture, it is necessary to accurately determine the body angle during the candidate's movements and compare it to the ideal Poomsae posture. However, since the candidate's body joints are hidden by the gi, the body angle can only be identified with the eyes. Even if you know the body angle, it is difficult to compare it to the ideal body angle.

또한, 통상의 승단심사에서, 8인 이하 또는 6인 이하(최소 6인 이상 다수)의 응시자가 동시에 품새 동작을 시연하기 때문에, 복수의 심사평가위원이 투입되다 하더라도 응시자의 동작을 순간적으로 놓치는 상황이 발생할 수 있다. 더욱이 품새의 시연 속도, 중심 이동, 연결성 등은 응시자가 연속적으로 동작하는 평가요소에 해당하고, 응시자의 동작을 놓치게 되면 이러한 평가요소를 평가할 수 없게 된다. 따라서, 복수의 응시자가 동시에 품새를 시연하게 되면 부정확한 평가가 나올 수 밖에 없다In addition, in a normal promotion examination, 8 or less or 6 or fewer candidates (at least 6 or more) demonstrate the Poomsae movements at the same time, so even if multiple judges are assigned, the movements of the candidates are momentarily missed. This can happen. Moreover, Poomsae's performance speed, center of gravity movement, connectivity, etc. are evaluation elements that the test taker moves continuously, and if the test taker's movements are missed, these evaluation factors cannot be evaluated. Therefore, if multiple candidates demonstrate Poomsae at the same time, inaccurate evaluations are bound to occur.

결론적으로, 인간의 육안으로만 품새의 동작을 평가하는 현재의 시스템에서는, 휴먼 에러의 발생 가능성을 완전히 배제하기 어렵다는 문제가 있다. 대한민국의 국기인 태권도의 승(품)단 심사제도를 AI알고리즘을 통해 국기원에서 제정한 심사 규정에 맞춰 다수의 응시자를 심사하는 과정을 보다 체계적이고, 효율적으로 운영하며, 그에 따른 심사결과 정보를 신속하고, 정확하게 공표한 이후 응시자의 이의제기 등은 심사영상판독 시스템을 적용하여 완성도를 확립한다. 본 솔루션은 국기원의 승(품)단 심사제도을 비롯하여 국기원에 등록된 국가 별 태권도 관련 단체의 승(품)단 심사제도를 통합 평준화하기 위한 과제임을 알 수 있다.In conclusion, in the current system that evaluates Poomsae movements only with the human eye, there is a problem that it is difficult to completely exclude the possibility of human error. The evaluation system for Taekwondo, the national sport of the Republic of Korea, operates more systematically and efficiently through the process of screening multiple applicants in accordance with the screening regulations established by Kukkiwon through AI algorithms, and promptly provides information on the results of the evaluation. After it has been accurately announced, the candidate's objections, etc., are assessed by applying the screening video review system to establish completeness. It can be seen that this solution is a task to integrate and standardize the Kukkiwon's Poom Dan examination system as well as the Poom Dan examination system of each country's Taekwondo-related organizations registered with Kukkiwon.

한국등록특허 제10-2244696호 (2021.04.26.)Korean Patent No. 10-2244696 (2021.04.26.)

본 발명이 해결하고자 하는 과제는 상술된 종래의 문제점을 해결하기 위한 것이다. 구체적으로, 경기장에 설치된 적어도 하나의 센서 모듈을 통해 응시자의 동작과 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하고, 서버에 저장된 인공지능 모델이 센서 데이터를 분석하여 응시자들에 대한 점수를 산출한다. The problem to be solved by the present invention is to solve the above-mentioned conventional problems. Specifically, at least one sensor data is generated as the motion and posture of the test taker is scanned through at least one sensor module installed in the stadium, and an artificial intelligence model stored in the server analyzes the sensor data to calculate the score for the test taker. do.

이와 같이 스포츠 동작과 자세에 대한 평가(경기, 심사)를 서버(인공지능)가 판단함으로써, 보다 정확하게 응시자의 동작과 자세를 인식하고 평가함에 따라 휴먼 에러를 배제할 수 있다.In this way, by having the server (artificial intelligence) determine the evaluation (game, judging) of sports movements and postures, human error can be excluded by more accurately recognizing and evaluating the candidate's movements and postures.

본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 특히 태권도에 국한되지 않고, 선수의 동작과 자세를 평가하는 다른 스포츠 경기(예를 들어, 기계체조, 피겨 스케이팅 등)에도 본 과제가 적용될 수 있다. The problems to be solved by the present invention are not limited to the problems mentioned above, and are not particularly limited to Taekwondo, but can also be applied to other sports competitions (e.g., artistic gymnastics, figure skating, etc.) that evaluate the movements and postures of athletes. Tasks can be applied.

또한 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Additionally, other problems not mentioned will be clearly understood by those skilled in the art from the description below.

상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 시스템에 있어서, 소정의 공간에서 진행되는 운동 심사에 참가한 응시자의 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하는 적어도 하나의 센서 모듈; 및 기 학습된 인공지능 모델을 이용하여, 상기 센서 모듈로부터 생성된 상기 센서 데이터를 분석함에 따라 상기 응시자에 대한 점수를 산출하는 서버;를 포함한다.In the exercise posture evaluation system using sensor data according to an embodiment of the present invention to solve the above-described problem, at least one sensor data is collected by scanning the posture of the candidate who participated in the exercise examination conducted in a predetermined space. At least one sensor module that generates; and a server that calculates a score for the applicant by analyzing the sensor data generated from the sensor module using a previously learned artificial intelligence model.

다양한 실시예에서, 상기 센서 모듈은 소정의 공간 내에 설치되는 적어도 하나의 카메라 모듈을 포함하고, 상기 센서 데이터는 적어도 하나의 영상 데이터를 포함하고, 상기 영상 데이터는 상기 카메라 모듈이 상기 소정의 공간을 촬영함에 따라 생성되는 복수의 프레임을 포함하고, 상기 서버는 상기 복수의 프레임 각각으로부터 상기 응시자에 대한 스켈레톤 정보를 추출하고, 추출된 상기 스켈레톤 정보를 이용해서 상기 응시자의 자세 정보를 생성하고, 생성된 상기 응시자의 자세 정보와 기 설정된 기준 데이터에 의거하여 상기 응시자에게 점수를 부여할 수 있다.In various embodiments, the sensor module includes at least one camera module installed in a predetermined space, the sensor data includes at least one image data, and the image data includes the camera module installed in the predetermined space. It includes a plurality of frames generated during filming, wherein the server extracts skeleton information about the candidate from each of the plurality of frames, generates posture information of the candidate using the extracted skeleton information, and generates the generated A score may be given to the candidate based on the candidate's posture information and preset standard data.

다양한 실시예에서, 상기 서버는 상기 스켈레톤 정보를 이용하여 상기 자세 정보로서 상기 응시자의 신체 각도를 산출하고, 상기 신체 각도를 기반으로 상기 응시자의 동작을 분류하고, 상기 기준 데이터는 분류된 상기 동작에 관한 기 설정된 신체 각도 정보를 포함하고, 상기 서버는 분류된 상기 동작에서의, 상기 응시자의 신체 각도와 기준 데이터의 신체 각도를 비교한 결과에 의거하여 응시자에게 점수를 부여할 수 있다.In various embodiments, the server calculates the body angle of the candidate as the posture information using the skeleton information, classifies the motion of the candidate based on the body angle, and applies the reference data to the classified motion. It includes preset body angle information, and the server can give a score to the test taker based on a result of comparing the test taker's body angle in the classified motion with the body angle of reference data.

다양한 실시예에서, 상기 서버는, 상기 프레임 간격을 이용해서 상기 응시자의 동작에 소요되는 시간 정보를 생성하고, 상기 기준 데이터에는 동작에 소요되는 시간 정보가 기 설정되고, 상기 서버는 상기 응시자의 시간 정보와 상기 기준 데이터의 시간 정보를 고려하여 응시자에게 점수를 부여할 수 있다.In various embodiments, the server generates information on the time required for the candidate's motion using the frame interval, information on the time required for the motion is preset in the reference data, and the server generates information on the time required for the candidate's motion. A score can be given to the test taker by considering information and time information of the reference data.

다양한 실시예에서, 상기 서버는, 상기 스켈레톤 정보를 이용해서 상기 응시자의 신체 각도를 상기 자세 정보로서 산출하고, 시간에 따라 변화하는 신체 각도의 정보가 포함된 상기 응시자의 시계열 데이터를 신체 부위 별로 생성하고, 상기 기준 데이터는 기 설정된 시계열 데이터를 신체 부위 별로 포함하고, 상기 서버는, 신체 부위 별로 상기 응시자의 시계열 데이터와 기준 데이터를 비교한 결과에 의거하여 응시자에게 점수를 부여할 수 있다.In various embodiments, the server calculates the body angle of the candidate as the posture information using the skeleton information, and generates time series data of the candidate including information on the body angle that changes with time for each body part. The reference data includes preset time series data for each body part, and the server may grant a score to the test taker based on a result of comparing the test taker's time series data and the reference data for each body part.

다양한 실시예에서, 상기 서버는, 상기 응시자의 신체 각도를 상기 프레임 단위로 산출하고, 상기 프레임 간격을 이용해서 시간에 따라 변화하는 신체 각도의 변화량이 포함된 응시자의 시계열 데이터를 생성할 수 있다.In various embodiments, the server may calculate the candidate's body angle in units of the frame, and use the frame interval to generate time series data of the candidate including the amount of change in the body angle that changes over time.

다양한 실시예에서, 상기 센서 모듈은 상기 소정의 공간을 서로 다른 각도로 촬영하는 복수의 카메라 모듈을 포함하고, 상기 서버는, 서로 다른 카메라 모듈로부터 생성된 복수의 프레임 각각으로부터 상기 스켈레톤 정보를 추출하고, 상기 스켈레톤 정보를 병합하여 상기 응시자의 3차원 좌표 정보를 생성하고, 상기 기준 데이터는 기 설정된 3차원 좌표 정보를 포함하고, 상기 응시자의 3차원 좌표 정보와 기준 데이터를 비교한 결과에 의거하여 응시자에게 점수를 부여할 수 있다.In various embodiments, the sensor module includes a plurality of camera modules that photograph the predetermined space at different angles, and the server extracts the skeleton information from each of a plurality of frames generated from different camera modules. , The skeleton information is merged to generate 3D coordinate information of the candidate, the reference data includes preset 3D coordinate information, and the candidate is identified based on the results of comparing the 3D coordinate information of the candidate and the reference data. points can be awarded.

다양한 실시예에서, 상기 서버는 시간에 따른 좌표 변화량이 포함된 상기 응시자의 3차원 좌표 정보를 생성하고, 상기 기준 데이터는 시간에 따른 좌표 변화량이 포함된 기 설정된 3차원 좌표 정보를 포함할 수 있다.In various embodiments, the server generates 3D coordinate information of the candidate including the amount of coordinate change over time, and the reference data may include preset 3D coordinate information including the amount of coordinate change over time. .

다양한 실시예에서, 상기 카메라 모듈은 복수의 응시자를 동시에 촬영하고, 상기 서버는 상기 영상 데이터로부터 복수의 응시자 각각을 인식하고, 각 응시자에 대한 점수를 독립적으로 산출할 수 있다.In various embodiments, the camera module may simultaneously photograph a plurality of test takers, and the server may recognize each of the plurality of test takers from the image data and independently calculate a score for each test taker.

상술한 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 센서 데이터를 활용한 운동 자세를 평가하는 방법에 있어서, 적어도 하나의 센서 모듈을 통해 소정의 공간에서 진행되는 운동 심사에 참가한 응시자의 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하는 단계; 및 서버에 기록된 기 학습된 인공지능 모델을 이용하여, 상기 센서 모듈로부터 생성된 적어도 하나의 센서 데이터를 분석한 결과에 기초하여 상기 응시자에 대한 점수를 산출하는 단계;를 포함할 수 있다.In a method of evaluating exercise posture using sensor data according to another embodiment of the present invention to solve the above-described problem, the posture of a candidate participating in an exercise examination conducted in a predetermined space is evaluated through at least one sensor module. generating at least one sensor data as scanned; and calculating a score for the applicant based on a result of analyzing at least one sensor data generated from the sensor module, using a previously learned artificial intelligence model recorded in the server.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

본 발명의 다양한 실시예에 따르면, 소정의 공간에 설치된 적어도 하나의 센서 모듈을 통해 응시자의 동작과 자세를 스캔함에 따라 복수의 센서 데이터를 생성하고, 이를 분석하여 응시자들에 대한 점수를 산출한다. According to various embodiments of the present invention, a plurality of sensor data is generated by scanning the motion and posture of the test taker through at least one sensor module installed in a predetermined space, and the data is analyzed to calculate scores for the test takers.

이에 따라, 복수의 응시자가 승단심사에 참가하더라도 응시자마다 객체를 검출하고 판단하기 때문에, 평가심사위원이 순간적으로 응시자의 동작을 놓치더라도 놓친 동작을 누락되지 않고 정확하게 평가할 수 있다.Accordingly, even if multiple candidates participate in the promotion evaluation, objects are detected and judged for each candidate, so even if the evaluation committee member momentarily misses the candidate's motion, the missed motion can be accurately evaluated without being omitted.

또한, 응시자의 신체 각도를 기반으로 동작을 판단하기 때문에 기존의 육안으로 평가하는 것 보다 높은 평가의 정확성을 확보할 수 있다.In addition, because the motion is judged based on the angle of the candidate's body, it is possible to secure higher evaluation accuracy than existing visual evaluations.

또한, 서버를 통해서 센서 모듈의 영상 데이터를 분석하기 때문에 판정의 논란을 줄일 수 있고, 응시자의 이의제기시 각 항목의 점수의 근거를 명확하게 제시할 수 있기 때문에 판정의 높은 공정성을 기대할 수 있다.In addition, since the image data of the sensor module is analyzed through the server, controversy over the decision can be reduced, and the basis for the score for each item can be clearly presented when the test taker raises an objection, so a high level of fairness in the decision can be expected.

또한, 응시자의 신체 각도와 동작에 소요되는 시간을 기반으로 자세를 판단하기 때문에 기존의 육안으로 평가하는 것 보다 높은 정확성을 확보할 수 있다.In addition, since the posture is judged based on the candidate's body angle and the time required for movement, higher accuracy can be secured than existing visual evaluations.

또한, 응시자의 자세를 이상적인 자세에 대비하여 평가하기 때문에 객관적인 심사 평가가 가능하다.In addition, objective screening and evaluation is possible because the candidate's posture is evaluated against the ideal posture.

결과적으로, 본 발명의 다양한 실시예에 따르면, 심사 평가에서 휴먼 에러를 배제할 수 있다. As a result, according to various embodiments of the present invention, human error can be excluded from screening evaluation.

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다. The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

본 발명의 효과는 특히 태권도 승단심사에 국한되지 않고, 선수의 동작과 자세를 평가하는 다른 스포츠 경기(예를 들어, 기계체조, 피겨 스케이팅 등)에서도 동일하게 발휘될 수 있다. The effect of the present invention is not limited to Taekwondo promotions, but can also be equally applied in other sports competitions (e.g., artistic gymnastics, figure skating, etc.) that evaluate athlete's movements and posture.

도 1은 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 방법을 수행하는 서버의 하드웨어 구성을 도시한 도면이다.
도 3은 본 발명의 다양한 실시예에서, 승단심사가 진행되는 경기장에 적어도 하나의 센서 모듈이 설치된 배치 구조를 예시적으로 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 영상 데이터를 활용한 운동 자세 평가 방법의 순서도이다.
도 5는 본 발명의 다양한 실시예에서, 적어도 하나의 센서 데이터를 분석하여 응시자의 합격, 불합격을 판정하는 방법을 구체적으로 설명하기 위한 순서도이다.
도 6은 본 발명의 다양한 실시예에서, 영상 데이터 내에서 적어도 하나의 객체를 검출하는 것을 예시적으로 도시한 도면이다.
도 7은 본 발명의 다양한 실시예에서, 검출된 객체와 응시자 사이를 매칭하는 것을 예시적으로 도시한 도면이다.
도 8은 본 발명의 다양한 실시예에서, 영상 데이터로부터 추출된 스켈레톤 정보를 예시적으로 도시한 도면이다.
도 9는 본 발명의 다양한 실시예에서, 2차원 스켈레톤 정보에서 신체 각도를 추출하는 것을 예시적으로 도시한 도면이다.
도 10은 본 발명의 다양한 실시예에서, 응시자의 동작을 구분하는 것과 점수를 산출하는 것을 예시적으로 도시한 도면이다.
도 11은 본 발명의 다양한 실시예에서, 복수의 영상 데이터를 이용하여 점수를 산출하는 방법을 설명하기 위한 순서도이다.
도 12는 본 발명의 다양한 실시예에서, 응시자의 신체 부위별 시계열적 데이터를 도시한 도면이다
도 13은 본 발명의 다양한 실시예에서, 신체부위 별로 산출한 점수표를 도시한 도면이다.
Figure 1 is a diagram illustrating an exercise posture evaluation system using sensor data according to an embodiment of the present invention.
Figure 2 is a diagram showing the hardware configuration of a server that performs an exercise posture evaluation method using sensor data according to an embodiment of the present invention.
Figure 3 is a diagram illustrating an arrangement structure in which at least one sensor module is installed in a stadium where promotions are conducted in various embodiments of the present invention.
Figure 4 is a flowchart of a method for evaluating exercise posture using image data according to an embodiment of the present invention.
FIG. 5 is a flowchart illustrating in detail a method of determining whether a candidate passes or fails by analyzing at least one sensor data in various embodiments of the present invention.
FIG. 6 is a diagram illustrating detection of at least one object within image data according to various embodiments of the present invention.
Figure 7 is a diagram illustrating matching between a detected object and a test taker in various embodiments of the present invention.
Figure 8 is a diagram illustrating skeleton information extracted from image data in various embodiments of the present invention.
Figure 9 is a diagram illustrating extraction of body angles from two-dimensional skeleton information in various embodiments of the present invention.
Figure 10 is a diagram illustrating classification of a test taker's movements and calculation of scores in various embodiments of the present invention.
Figure 11 is a flowchart illustrating a method of calculating a score using a plurality of image data in various embodiments of the present invention.
Figure 12 is a diagram showing time-series data for each body part of the test taker in various embodiments of the present invention.
Figure 13 is a diagram showing a score table calculated for each body part in various embodiments of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure of the present invention is complete and to provide a general understanding of the technical field to which the present invention pertains. It is provided to fully inform the skilled person of the scope of the present invention, and the present invention is only defined by the scope of the claims.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for describing embodiments and is not intended to limit the invention. As used herein, singular forms also include plural forms, unless specifically stated otherwise in the context. As used in the specification, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other elements in addition to the mentioned elements. Like reference numerals refer to like elements throughout the specification, and “and/or” includes each and every combination of one or more of the referenced elements. Although “first”, “second”, etc. are used to describe various components, these components are of course not limited by these terms. These terms are merely used to distinguish one component from another. Therefore, it goes without saying that the first component mentioned below may also be a second component within the technical spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used with meanings commonly understood by those skilled in the art to which the present invention pertains. Additionally, terms defined in commonly used dictionaries are not to be interpreted ideally or excessively unless clearly specifically defined.

명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used in the specification, the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and the “unit” or “module” performs certain roles. However, “part” or “module” is not limited to software or hardware. A “unit” or “module” may be configured to reside on an addressable storage medium and may be configured to run on one or more processors. Thus, as an example, a “part” or “module” refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functionality provided within components and “parts” or “modules” can be combined into smaller components and “parts” or “modules” or into additional components and “parts” or “modules”. Could be further separated.

공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms such as “below”, “beneath”, “lower”, “above”, “upper”, etc. are used as a single term as shown in the drawing. It can be used to easily describe the correlation between a component and other components. Spatially relative terms should be understood as terms that include different directions of components during use or operation in addition to the directions shown in the drawings. For example, if a component shown in a drawing is flipped over, a component described as "below" or "beneath" another component will be placed "above" the other component. You can. Accordingly, the illustrative term “down” may include both downward and upward directions. Components can also be oriented in other directions, so spatially relative terms can be interpreted according to orientation.

본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations that operate on the hardware device. For example, a computer can be understood to include, but is not limited to, a smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.

본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and depending on the embodiment, at least part of each step may be performed in a different device.

도 1은 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 시스템을 도시한 도면이다.Figure 1 is a diagram illustrating an exercise posture evaluation system using sensor data according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 시스템은 서버(100), 적어도 하나의 센서 모듈(200), 사용자 단말(300), 외부 서버(400) 및 네트워크(500)를 포함할 수 있다.Referring to FIG. 1, the exercise posture evaluation system using sensor data according to an embodiment of the present invention includes a server 100, at least one sensor module 200, a user terminal 300, an external server 400, and It may include a network 500.

여기서, 도 1에 도시된 센서 데이터를 활용한 운동 자세 평가 시스템은 하나의 실시예에 따른 것이고, 그 구성 요소가 도 1에 도시된 실시예에 한정되는 것은 아니며, 필요에 따라 부가, 변경 또는 삭제될 수 있다.Here, the exercise posture evaluation system using the sensor data shown in FIG. 1 is according to one embodiment, and its components are not limited to the embodiment shown in FIG. 1, and may be added, changed, or deleted as necessary. It can be.

일 실시예에서, 서버(100)는 소정의 공간(예컨대, 승단 심사가 진행되는 심사장)에서 진행되는 응시자의 품새 자세를 스캔함에 따라 생성되는 센서 데이터를 분석하여, 승단 심사를 신청한 응시자들에 대한 평가를 진행할 수 있다. In one embodiment, the server 100 analyzes the sensor data generated by scanning the Poomsae posture of the candidate in a predetermined space (e.g., an examination room where the promotion examination is conducted) to identify candidates who have applied for the promotion examination. Evaluation can be carried out.

다양한 실시예에서, 서버(100)는 기 학습된 인공지능 모델을 이용하여 적어도 하나의 센서 모듈(200)를 이용하여 소정의 공간을 스캔함에 따라 생성되는 복수의 센서 데이터를 분석함에 따라 승단 심사를 진행하는 응시자들에 대한 점수를 산출할 수 있다.In various embodiments, the server 100 performs a selection process by analyzing a plurality of sensor data generated by scanning a predetermined space using at least one sensor module 200 using a pre-learned artificial intelligence model. Scores can be calculated for the candidates taking the test.

여기서 기 학습된 인공지능 모델은, 객체를 포함하고 객체에 대한 좌표 정보가 레이블링된 복수의 센서 데이터를 학습 데이터로 하여 학습된 모델로, 특정 센서 데이터를 입력 데이터로 하여 특정 센서 데이터에 포함된 객체에 대응하는 좌표 정보를 추출하는 모델 즉, 스켈레톤 추출 모델일 수 있다. 그러나, 이에 한정되지 않고, 기 학습된 인공지능 모델은 스켈레톤 추출 모델과 스켈레톤 추출 모델을 통해 추출된 2차원 스켈레톤 정보를 기반으로 3차원 좌표 정보를 모델링하는 모델, 3차원 좌표 정보를 기반으로 동작 및 자세를 판단하는 모델 및 판단된 동작 및 자세에 기초하여 점수를 부여하는 룰베이스(rule-base) 모델을 더 포함할 수 있다.Here, the previously learned artificial intelligence model is a model learned using as learning data a plurality of sensor data containing objects and labeled with coordinate information for the objects, and using specific sensor data as input data to identify objects included in specific sensor data. It may be a model that extracts coordinate information corresponding to , that is, a skeleton extraction model. However, it is not limited to this, and the previously learned artificial intelligence model includes a skeleton extraction model, a model that models 3D coordinate information based on 2D skeleton information extracted through the skeleton extraction model, and a model that models 3D coordinate information based on 3D coordinate information. It may further include a model for determining posture and a rule-base model for awarding scores based on the determined motion and posture.

인공지능 모델(예: 신경망)은 하나 이상의 네트워크 함수로 구성되며, 하나 이상의 네트워크 함수는 일반적으로 '노드'라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 '노드'들은 '뉴런(neuron)'들로 지칭될 수도 있다. 하나 이상의 네트워크 함수는 적어도 하나 이상의 노드들을 포함하여 구성된다. 하나 이상의 네트워크 함수를 구성하는 노드(또는 뉴런)들은 하나 이상의 '링크'에 의해 상호 연결될 수 있다.An artificial intelligence model (e.g. a neural network) consists of one or more network functions, and one or more network functions may consist of a set of interconnected computational units, which may generally be referred to as 'nodes'. These 'nodes' may also be referred to as 'neurons'. One or more network functions are composed of at least one or more nodes. Nodes (or neurons) that make up one or more network functions may be interconnected by one or more 'links'.

인공지능 모델 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 전술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다. Within an artificial intelligence model, one or more nodes connected through a link can form a relative input node and output node relationship. The concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa. As described above, input node to output node relationships can be created around links. One or more output nodes can be connected to one input node through a link, and vice versa.

하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호 연결하는 노드는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 인공지능 모델이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.In a relationship between an input node and an output node connected through one link, the value of the output node may be determined based on data input to the input node. Here, the nodes connecting the input node and the output node may have a weight. Weights may be variable and may be varied by the user or algorithm in order for the artificial intelligence model to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.

전술한 바와 같이, 인공지능 모델은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호연결 되어 인공지능 모델 내에서 입력 노드 및 출력 노드 관계를 형성한다. 인공지능 모델 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 인공지능 모델의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 인공지능 모델이 존재하는 경우, 두 개의 인공지능 모델들은 서로 상이한 것으로 인식될 수 있다.As described above, in an artificial intelligence model, one or more nodes are interconnected through one or more links to form an input node and output node relationship within the artificial intelligence model. The characteristics of the artificial intelligence model can be determined according to the number of nodes and links within the artificial intelligence model, the correlation between nodes and links, and the weight value assigned to each link. For example, if there are two artificial intelligence models with the same number of nodes and links and different weight values between the links, the two artificial intelligence models may be recognized as different from each other.

인공지능 모델을 구성하는 노드들 중 일부는, 최초 입력 노드로부터의 거리들에 기초하여, 하나의 레이어(layer)를 구성할 수 있다. 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은, n 레이어를 구성할 수 있다. 최초 입력 노드로부터 거리는, 최초 입력 노드로부터 해당 노드까지 도달하기 위해 거쳐야 하는 링크들의 최소 개수에 의해 정의될 수 있다. 그러나, 이러한 레이어의 정의는 설명을 위한 임의적인 것으로서, 인공지능 모델 내에서 레이어의 차수는 전술한 것과 상이한 방법으로 정의될 수 있다. 예를 들어, 노드들의 레이어는 최종 출력 노드로부터 거리에 의해 정의될 수도 있다.Some of the nodes constituting the artificial intelligence model may form one layer based on the distances from the initial input node. For example, a set of nodes with a distance n from the initial input node may constitute n layers. The distance from the initial input node can be defined by the minimum number of links that must be passed to reach the node from the initial input node. However, this definition of the layer is arbitrary for explanation purposes, and the order of the layer within the artificial intelligence model may be defined in a different way from that described above. For example, a layer of nodes may be defined by distance from the final output node.

최초 입력 노드는 인공지능 모델 내의 노드들 중 다른 노드들과의 관계에서 링크를 거치지 않고 데이터가 직접 입력되는 하나 이상의 노드들을 의미할 수 있다. 또는, 인공지능 모델 네트워크 내에서, 링크를 기준으로 한 노드 간의 관계에 있어서, 링크로 연결된 다른 입력 노드들 가지지 않는 노드들을 의미할 수 있다. 이와 유사하게, 최종 출력 노드는 인공지능 모델 내의 노드들 중 다른 노드들과의 관계에서, 출력 노드를 가지지 않는 하나 이상의 노드들을 의미할 수 있다. 또한, 히든 노드는 최초 입력 노드 및 최후 출력 노드가 아닌 인공지능 모델을 구성하는 노드들을 의미할 수 있다. 본 발명의 일 실시예에 따른 인공지능 모델은 입력 레이어의 노드가 출력 레이어에 가까운 히든 레이어의 노드보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 인공지능 모델일 수 있다.The initial input node may refer to one or more nodes in the artificial intelligence model into which data is directly input without going through links in relationships with other nodes. Alternatively, in an artificial intelligence model network, in the relationship between nodes based on links, it may mean nodes that do not have other input nodes connected by links. Similarly, the final output node may refer to one or more nodes that do not have an output node in their relationship with other nodes among the nodes in the artificial intelligence model. Additionally, hidden nodes may refer to nodes that constitute an artificial intelligence model rather than the first input node and the last output node. The artificial intelligence model according to an embodiment of the present invention may have more nodes in the input layer than the nodes in the hidden layer close to the output layer, and is an artificial intelligence model in which the number of nodes decreases as it progresses from the input layer to the hidden layer. You can.

인공지능 모델은 하나 이상의 히든 레이어를 포함할 수 있다. 히든 레이어의 히든 노드는 이전의 레이어의 출력과 주변 히든 노드의 출력을 입력으로 할 수 있다. 각 히든 레이어 별 히든 노드의 수는 동일할 수도 있고 상이할 수도 있다. 입력 레이어의 노드의 수는 입력 데이터의 데이터 필드의 수에 기초하여 결정될 수 있으며 히든 노드의 수와 동일할 수도 있고 상이할 수도 있다. 입력 레이어에 입력된 입력 데이터는 히든 레이어의 히든 노드에 의하여 연산될 수 있고 출력 레이어인 완전 연결 레이어(FCL: fully connected layer)에 의해 출력될 수 있다.An artificial intelligence model may include one or more hidden layers. The hidden node of the hidden layer can take the output of the previous layer and the output of surrounding hidden nodes as input. The number of hidden nodes for each hidden layer may be the same or different. The number of nodes in the input layer may be determined based on the number of data fields of the input data and may be the same as or different from the number of hidden nodes. Input data input to the input layer can be operated by the hidden node of the hidden layer and output by the fully connected layer (FCL), which is the output layer.

다양한 실시예에서, 인공지능 모델은 딥러닝(Deep learning) 모델일 수 있다.In various embodiments, the artificial intelligence model may be a deep learning model.

딥러닝 모델(예를 들어, 딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 인공지능 모델을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다.A deep learning model (e.g., deep neural network (DNN)) may refer to an artificial intelligence model that includes multiple hidden layers in addition to the input layer and output layer. Using a deep neural network, The latent structures of data can be identified, that is, the latent structures of photos, text, video, voice, and music (e.g., what objects are in the photo, what the content and emotion of the text are). You can understand the content of the voice and the emotions, etc.).

딥 뉴럴 네트워크는 컨벌루셔널 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크 등을 포함할 수 있으나, 이에 한정되지 않는다.Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBMs). Boltzmann machine), deep belief network (DBN), Q network, U network, Siamese network, etc., but are not limited to these.

다양한 실시예에서, 서버(100)는 네트워크(500)를 통해 사용자 단말(300)과 연결될 수 있으며, 본 발명의 다양한 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 방법을 수행함에 따라 도출되는 결과를 사용자 단말(300)로 제공할 수 있다.In various embodiments, the server 100 may be connected to the user terminal 300 through the network 500, and the results obtained by performing the exercise posture evaluation method using sensor data according to various embodiments of the present invention. Can be provided to the user terminal 300.

일례로, 사용자 단말(300)은 소정의 공간에서 진행되는 응시자의 단말일 수 있다. 서버(100)는 센서 데이터를 활용한 운동 자세 평가 방법을 수행함에 따라 산출되는 응시자들의 점수에 관한 정보를 사용자 단말(300)로 제공할 수 있다. 이에 따라 응시자는 승단 심사의 결과를 편리하게 확인할 수 있다. 또한, 응시자는 품새의 각 동작 또는 신체 부위에 대한 점수도 확인할 수 있기 때문에, 심사 결과 내역을 투명하게 확인할 수 있으며, 그 결과 심사 평가의 공정성과 신뢰성을 기대할 수 있다.For example, the user terminal 300 may be a test taker's terminal where the process is conducted in a predetermined space. The server 100 may provide the user terminal 300 with information about test takers' scores calculated by performing an exercise posture evaluation method using sensor data. Accordingly, candidates can conveniently check the results of the promotion screening. In addition, applicants can check the scores for each Poomsae movement or body part, so they can transparently check the details of the examination results, and as a result, fairness and reliability of the examination evaluation can be expected.

다른 예로, 사용자 단말(300)는 소정의 공간(예를 들어, 승단 심사가 진행되는 경기장)에 배치되며, 소정의 공간에서 진행되는 승단 심사에 관한 정보를 출력하는 디스플레이 장치일 수 있다. 서버(100)는 센서 데이터를 활용한 운동 자세 평가 방법을 수행함에 따라 산출되는 응시자들의 점수에 관한 정보를 사용자 단말(300)로 제공함으로써, 승단 심사를 관람하는 관람객들이 응시자들의 점수를 실시간으로 확인할 수 있다.As another example, the user terminal 300 may be a display device that is placed in a predetermined space (for example, a stadium where a promotion examination is conducted) and outputs information regarding the promotion examination conducted in a predetermined space. The server 100 provides information about the candidates' scores calculated by performing the exercise posture evaluation method using sensor data to the user terminal 300, so that visitors watching the promotion screening can check the candidates' scores in real time. You can.

여기서, 사용자 단말(300)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 엔티티(들)를 의미할 수 있다. 예를 들어, 이러한 사용자 단말(300)은 PC(personal computer), 노트북(note book), 모바일 단말기(mobile terminal), 스마트 폰(smart phone), 태블릿 PC(tablet pc) 및 웨어러블 디바이스(wearable device) 등을 포함할 수 있으며, 유/무선 네트워크에 접속할 수 있는 모든 종류의 단말을 포함할 수 있다. 또한, 사용자 단말(300)은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 컴퓨팅 장치를 포함할 수도 있다. 또한, 사용자 단말(300)은 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다.Here, the user terminal 300 may refer to any type of entity(s) in the system that has a mechanism for communication with the server 100. For example, the user terminal 300 includes a personal computer (PC), a note book, a mobile terminal, a smart phone, a tablet PC, and a wearable device. etc., and may include all types of terminals that can access wired/wireless networks. Additionally, the user terminal 300 may include any computing device implemented by at least one of an agent, an application programming interface (API), and a plug-in. Additionally, the user terminal 300 may include an application source and/or a client application.

또한, 여기서, 네트워크(500)는 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미할 수 있다. 예를 들어, 네트워크(500)는 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷(WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함할 수 있다.Also, here, the network 500 may mean a connection structure that allows information exchange between nodes, such as a plurality of terminals and servers. For example, the network 500 includes a local area network (LAN), a wide area network (WAN), the World Wide Web (WWW), a wired and wireless data communication network, a telephone network, and a wired and wireless television communication network. can do.

무선 데이터 통신망은 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), 5GPP(5th Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), RF(Radio Frequency), 블루투스(Bluetooth) 네트워크, NFC(Near-Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등을 포함할 수 있으나, 이에 한정되지는 않는다.Wireless data communication networks include 3G, 4G, 5G, 3GPP (3rd Generation Partnership Project), 5GPP (5th Generation Partnership Project), LTE (Long Term Evolution), WIMAX (World Interoperability for Microwave Access), Wi-Fi, and Internet. (Internet), LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), RF (Radio Frequency), Bluetooth (Bluetooth) network, NFC (Near- Field Communication) network, satellite broadcasting network, analog broadcasting network, DMB (Digital Multimedia Broadcasting) network, etc., but is not limited thereto.

일 실시예에서, 적어도 하나의 센서 모듈(200)은 소정의 공간 내에 서로 다른 위치에 설치될 수 있으며, 소정의 공간에서 진행되는 격투기 경기를 스캔함에 따라 센서 데이터를 생성할 수 있다.In one embodiment, at least one sensor module 200 may be installed at different locations within a predetermined space, and may generate sensor data by scanning a martial arts game taking place in a predetermined space.

여기서, 도 1을 참조하면, 적어도 하나의 센서 모듈(200)은 소정의 공간 내에 서로 다른 위치에 설치되는 적어도 하나의 카메라 모듈일 수 있다. 적어도 하나의 센서 데이터는 적어도 하나의 카메라 모듈을 통해 소정의 공간을 서로 다른 시점(point of view)으로 촬영함에 따라 생성되는 적어도 하나의 영상 데이터일 수 있다. 또한, 적어도 하나의 영상 데이터는 소정의 공간을 촬영한 복수의 프레임을 포함할 수 있다. 복수의 프레임은 일정 간격으로 생성되기 때문에(예를 들어, 1초에 60장 프레임 생성), 프레임 간격을 이용해서 촬영한 시간을 산출할 수 있다.Here, referring to FIG. 1, at least one sensor module 200 may be at least one camera module installed at different locations within a predetermined space. At least one sensor data may be at least one image data generated by photographing a predetermined space from different points of view through at least one camera module. Additionally, at least one piece of image data may include a plurality of frames captured in a predetermined space. Since multiple frames are generated at regular intervals (for example, 60 frames are generated per second), the shooting time can be calculated using the frame interval.

다만, 이에 한정되지 않고, 라이다 센서 모듈을 통해 소정의 공간을 스캔함에 따라 생성되는 적어도 하나의 포인트 클라우드 데이터 등 다양한 종류의 센서와 센서 데이터가 적용될 수 있다. 적어도 하나의 센서 모듈(200)의 구체적인 배치는 도 3을 참조하여 후술하도록 한다.However, the application is not limited to this, and various types of sensors and sensor data, such as at least one point cloud data generated by scanning a predetermined space through a LiDAR sensor module, may be applied. The specific arrangement of at least one sensor module 200 will be described later with reference to FIG. 3.

일 실시예에서, 외부 서버(400)는 네트워크(500)를 통해 서버(100)와 연결될 수 있으며, 서버(100)가 센서 데이터를 활용한 운동 자세 평가 방법을 수행하기 위해 필요한 각종 정보 및 데이터를 저장 및 관리하거나, 서버(100)가 센서 데이터를 활용한 운동 자세 평가 방법을 수행함에 따라 도출된 결과를 제공받아 저장 및 관리할 수 있다. 예컨대, 외부 서버(400)는 서버(100)의 외부에 별도로 구비되는 저장 서버일 수 있으나, 이에 한정되지 않는다. In one embodiment, the external server 400 may be connected to the server 100 through the network 500, and may provide various information and data necessary for the server 100 to perform an exercise posture evaluation method using sensor data. Alternatively, the results obtained as the server 100 performs an exercise posture evaluation method using sensor data may be provided and stored and managed. For example, the external server 400 may be a storage server separately provided outside the server 100, but is not limited thereto.

이하, 도 2를 참조하여, 센서 데이터를 활용한 운동 자세 평가 방법을 수행하는 서버(100)의 하드웨어 구성에 대해 설명하도록 한다.Hereinafter, with reference to FIG. 2, the hardware configuration of the server 100 that performs the exercise posture evaluation method using sensor data will be described.

도 2는 본 발명의 일 실시예에 따른 서버(100)의 하드웨어 구성을 도시한 도면이다. 서버(100)는 하나 이상의 프로세서(110), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램(151)을 로드(Load)하는 메모리(120), 버스(130), 통신 인터페이스(140) 및 컴퓨터 프로그램(151)을 저장하는 스토리지(150)를 포함할 수 있다. 여기서, 도 2에는 본 발명의 실시예와 관련 있는 구성요소들만 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 2에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.Figure 2 is a diagram showing the hardware configuration of the server 100 according to an embodiment of the present invention. The server 100 includes one or more processors 110, a memory 120 that loads a computer program 151 executed by the processor 110, a bus 130, a communication interface 140, and a computer program ( It may include a storage 150 for storing 151). Here, only components related to the embodiment of the present invention are shown in Figure 2. Accordingly, anyone skilled in the art to which the present invention pertains will know that other general-purpose components may be included in addition to the components shown in FIG. 2.

프로세서(110)는 서버(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(110)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다.The processor 110 controls the overall operation of each component of the server 100. The processor 110 includes a Central Processing Unit (CPU), Micro Processor Unit (MPU), Micro Controller Unit (MCU), Graphic Processing Unit (GPU), or any other type of processor well known in the art of the present invention. It can be.

또한, 프로세서(110)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있으며, 서버(100)는 하나 이상의 프로세서를 구비할 수 있다.Additionally, the processor 110 may perform operations on at least one application or program for executing methods according to embodiments of the present invention, and the server 100 may include one or more processors.

다양한 실시예에서, 프로세서(110)는 프로세서(110) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(110)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.In various embodiments, the processor 110 includes random access memory (RAM) (not shown) and read memory (ROM) that temporarily and/or permanently store signals (or data) processed within the processor 110. -Only Memory, not shown) may be further included. Additionally, the processor 110 may be implemented in the form of a system on chip (SoC) that includes at least one of a graphics processing unit, RAM, and ROM.

메모리(120)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(120)는 본 발명의 다양한 실시예에 따른 방법/동작을 실행하기 위하여 스토리지(150)로부터 컴퓨터 프로그램(151)을 로드할 수 있다. 메모리(120)에 컴퓨터 프로그램(151)이 로드되면, 프로세서(110)는 컴퓨터 프로그램(151)을 구성하는 하나 이상의 인스트럭션들을 실행함으로써 상기 방법/동작을 수행할 수 있다. 메모리(120)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.Memory 120 stores various data, commands and/or information. Memory 120 may load a computer program 151 from storage 150 to execute methods/operations according to various embodiments of the present invention. When the computer program 151 is loaded into the memory 120, the processor 110 can perform the method/operation by executing one or more instructions constituting the computer program 151. The memory 120 may be implemented as a volatile memory such as RAM, but the technical scope of the present disclosure is not limited thereto.

버스(130)는 서버(100)의 구성 요소 간 통신 기능을 제공한다. 버스(130)는 주소 버스(address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 130 provides communication functions between components of the server 100. The bus 130 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.

통신 인터페이스(140)는 서버(100)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(140)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(140)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 몇몇 실시예에서, 통신 인터페이스(140)는 생략될 수도 있다.The communication interface 140 supports wired and wireless Internet communication of the server 100. Additionally, the communication interface 140 may support various communication methods other than Internet communication. To this end, the communication interface 140 may be configured to include a communication module well known in the technical field of the present invention. In some embodiments, communication interface 140 may be omitted.

스토리지(150)는 컴퓨터 프로그램(151)을 비 임시적으로 저장할 수 있다. 서버(100)를 통해 영상 정보를 활용한 격투기 인공지능 판정 프로세스를 수행하는 경우, 스토리지(150)는 영상 정보를 활용한 격투기 인공지능 판정 프로세스를 제공하기 위하여 필요한 각종 정보를 저장할 수 있다.Storage 150 may store the computer program 151 non-temporarily. When performing a martial arts artificial intelligence decision process using video information through the server 100, the storage 150 can store various information necessary to provide a martial arts artificial intelligence judgment process using video information.

스토리지(150)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 150 is a non-volatile memory such as Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, a hard disk, a removable disk, or a device well known in the art to which the present invention pertains. It may be configured to include any known type of computer-readable recording medium.

컴퓨터 프로그램(151)은 메모리(120)에 로드될 때 프로세서(110)로 하여금 본 발명의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(110)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 상기 방법/동작을 수행할 수 있다.The computer program 151, when loaded into the memory 120, may include one or more instructions that cause the processor 110 to perform methods/operations according to various embodiments of the present invention. That is, the processor 110 can perform the method/operation according to various embodiments of the present invention by executing the one or more instructions.

일 실시예에서, 컴퓨터 프로그램(151)은 소정의 공간에서 진행되는 승단 심사의 응시자의 동작을 스캔함에 따라 적어도 하나의 센서 데이터를 수집하는 단계 및 기 학습된 인공지능 모델을 이용하여 수집된 적어도 하나의 센서 데이터를 분석함에 따라 승단심사에 참여한 응시자에 대한 점수를 산출하고 합격/불합격을 판정하는 단계를 포함하는 센서 데이터를 활용한 운동 자세 평가 방법을 수행하도록 하는 하나 이상의 인스트럭션을 포함할 수 있다.In one embodiment, the computer program 151 includes collecting at least one sensor data by scanning the motion of a candidate for a promotion examination conducted in a predetermined space and at least one sensor data collected using a previously learned artificial intelligence model. It may include one or more instructions to perform an exercise posture evaluation method using sensor data, including the step of calculating scores for candidates who participated in the promotion examination and determining pass/fail by analyzing the sensor data.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.

본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.

도 3은, 승단 심사가 진행되는 경기장에 복수의 센서 모듈이 설치된 배치를 위에서 아래로 내려다 본 도면이다.Figure 3 is a top-down view of the arrangement of a plurality of sensor modules installed in the stadium where the promotion examination is taking place.

도 3에 도시된 바와 같이, 소정의 공간 내에 8대의 센서 모듈(200)이 설치될 수 있으나, 센서 모듈(200)의 설치 위치와 설치 대수는 이에 한정되지 않는다. 8대의 센서 모듈(200)은 전방, 후방, 좌측, 우측, 네 꼭지점에서 설치되어, 응시자 모습을 서로 다른 각도로 촬영할 수 있다. 다양한 실시예에서, 센서 모듈(200)은 지면을 기준으로 약 1m 내지 1.5m 높이에 설치될 수 있으나, 이에 한정되지 않는다.As shown in FIG. 3, eight sensor modules 200 can be installed in a predetermined space, but the installation location and number of sensor modules 200 are not limited to this. Eight sensor modules 200 are installed at four vertices: front, rear, left, and right, and can capture the applicant's appearance from different angles. In various embodiments, the sensor module 200 may be installed at a height of approximately 1 m to 1.5 m relative to the ground, but is not limited thereto.

이하, 도 4 내지 도 13을 참조하여, 서버(100)에 의해 수행되는 센서 데이터를 활용한 운동 자세 평가 방법에 대해 구체적으로 설명하도록 한다.Hereinafter, with reference to FIGS. 4 to 13, a method for evaluating exercise posture using sensor data performed by the server 100 will be described in detail.

도 4는 본 발명의 일 실시예에 따른 센서 데이터를 활용한 운동 자세 평가 방법의 순서도이다Figure 4 is a flowchart of a method for evaluating exercise posture using sensor data according to an embodiment of the present invention.

도 4을 참조하면, S100 단계에서, 서버(100)는 승단 심사가 진행되는 소정의 공간에 대한 적어도 하나의 센서 데이터를 수집할 수 있다. 예컨대, 적어도 하나의 센서 모듈(200)은 도 3에 도시된 바와 같이, 소정의 공간 내에 서로 다른 위치, 각도 및 높이로 설치될 수 있으며, 서버(100)는 소정의 공간 내의 설치된 적어도 하나의 센서 모듈(200)과 연결되어, 센서 모듈(200)이 소정의 공간을 스캔함에 따라 생성되는 적어도 하나의 센서 데이터를 수집할 수 있다.Referring to FIG. 4, in step S100, the server 100 may collect at least one sensor data for a predetermined space where the promotion examination is conducted. For example, as shown in FIG. 3, at least one sensor module 200 may be installed at different positions, angles, and heights within a predetermined space, and the server 100 may be installed at least one sensor installed within a predetermined space. By being connected to the module 200, at least one sensor data generated as the sensor module 200 scans a predetermined space can be collected.

S200 단계에서, 서버(100)는 S100 단계를 거쳐 수집된 적어도 하나의 센서 데이터를 분석함에 따라 소정의 공간에서 진행되는 승단 심사에 대한 합격/불합격 판정을 수행할 수 있다. 여기서, 승단 심사에 대한 판정을 수행한다는 것은 응시자의 품새 자세에 대한 점수를 산출하는 것을 의미할 수 있다.In step S200, the server 100 may analyze at least one sensor data collected through step S100 to make a pass/fail decision for the promotion examination conducted in a predetermined space. Here, performing a judgment on the promotion examination may mean calculating a score for the candidate's poomsae posture.

다양한 실시예에서, 서버(100)는 기 학습된 인공지능 모델을 이용하여 적어도 하나의 센서 데이터를 분석함에 따라 승단 심사에 참여한 응시자에게 부여하는 점수를 산출할 수 있다. In various embodiments, the server 100 may analyze at least one sensor data using a previously learned artificial intelligence model to calculate scores to be awarded to candidates who participated in the selection process.

도 5는 다양한 실시예에서, 적어도 하나의 센서 데이터를 분석하여 응시자의 합격과 불합격을 판정하는 방법을 구체적으로 설명하기 위한 순서도 이다.FIG. 5 is a flowchart illustrating in detail a method of determining whether a candidate passes or fails by analyzing at least one sensor data, in various embodiments.

도 5를 참조하면, 센서 모듈(200)로부터 적어도 하나의 센서 데이터(예를 들어, 영상 데이터)를 수집하는 S100단계 다음으로, 서버(100)는 적어도 하나의 센서 데이터로부터 적어도 하나의 객체를 검출할 수 있다(S210 단계). 도 6은 센서 데이터 내에서 적어도 하나의 객체를 검출하는 것을 예시적으로 도시한 도면이다. 도 6을 참조하면, 이미지에 포함된 복수의 응시자를 객체로 검출하고, 이를 경계 박스(Bouncing box)로 구분할 수 있다. 객체를 검출하는 방법으로서 머신러닝 알고리즘이 적용될 수 있으며, 구체적으로 CNN알고리즘, Faster R-CNN, R_FCN, FPN-FRCN, YOLO, SSD, RetinaNET이 적용될 수 있다. 다만, 본 발명은 상술한 알고리즘에만 한정되지 않고, 이미지나 영상 내에서 객체를 검출할 수 있는 기술이라면 본 발명에 적용가능하다.Referring to FIG. 5, following step S100 of collecting at least one sensor data (e.g., image data) from the sensor module 200, the server 100 detects at least one object from the at least one sensor data. It can be done (step S210). Figure 6 is a diagram illustrating detection of at least one object within sensor data. Referring to FIG. 6, a plurality of people included in the image can be detected as objects and divided into bounding boxes. Machine learning algorithms can be applied as a method of detecting objects, and specifically, CNN algorithms, Faster R-CNN, R_FCN, FPN-FRCN, YOLO, SSD, and RetinaNET can be applied. However, the present invention is not limited to the above-described algorithm, and any technology that can detect an object in an image or video is applicable to the present invention.

S210 단계의 다음으로, 검출된 객체와 응시자 사이을 매칭할 수 있다(S220 단계). 검출된 객체와 심사자 사이의 매칭을 예시적으로 도시한 도 7을 참조하면, 경계 박스로 구분된 객체만을 분리하고, 이를 응시자와 매칭할 수 있다. 도 7에서는 예시적으로 제1 응시자의 매칭과 제2 응시자의 매칭을 위한 크롭(Crop)을 예시적으로 도시하였다. 따라서, 본 발명의 다양한 실시예에 따르면 응시자 각각을 구분하여 독립적으로 데이터를 생성하기 때문에, 복수의 응시자들이 동시에 승단 심사에 참가하더라도 각 응시자의 품새 동작을 정확하게 인식할 수 있다.Next to step S210, matching can be performed between the detected object and the test taker (step S220). Referring to Figure 7, which exemplarily illustrates the matching between detected objects and examiners, only objects separated by bounding boxes can be separated and matched with the examinee. In Figure 7, a crop for matching the first test taker and the second test taker is shown as an example. Therefore, according to various embodiments of the present invention, since each candidate is identified and data is independently generated, the poomsae movements of each candidate can be accurately recognized even if a plurality of candidates participate in the promotion examination at the same time.

S220 단계의 다음으로, 승단 심사에 참여한 응시자들에 대한 스켈레톤(Skeleton) 정보를 추출할 수 있다(S230 단계). 스켈레톤 정보는 응시자들의 신체에 대해 복수의 포인트 및 두 포인트를 잇는 선으로 표시한 것을 의미할 수 있다.Next to step S220, skeleton information about candidates who participated in the promotion screening can be extracted (step S230). Skeleton information may mean that the test taker's body is displayed with a plurality of points and a line connecting two points.

보다 구체적으로, 영상 데이터로부터 스켈레톤 정보를 추출하는 방식을 도 8을 참조하여 설명하도록 한다. 도 8의 좌측 도면은 프레임(11, 12, 13)에 표시된 응시자를 도시한 도면이고, 도 8의 우측 도면은 응시자에 대응하는 스켈레톤 정보(20)를 도시한 도면을 의미한다. 먼저, 영상 데이터는 복수의 프레임(11, 12, 13)으로 구성되어 있고, 각 프레임에는 응시자의 자세가 시계열적으로 표시되어 있다.More specifically, a method of extracting skeleton information from image data will be described with reference to FIG. 8. The left drawing of FIG. 8 is a drawing showing test takers displayed in the frames 11, 12, and 13, and the right drawing of FIG. 8 is a drawing showing skeleton information 20 corresponding to the test takers. First, the image data consists of a plurality of frames 11, 12, and 13, and each frame displays the examinee's posture in time series.

스켈레톤 정보의 포인트는 신체의 부위와 대응되는 위치에 생성될 수 있다. 예를 들어, 머리 영역에 있어서 포인트는 코(또는 인중)에 대응되는 부분을 나타낼 수 있고, 다른 포인트는 좌측(또는 우측) 귀(또는 관자놀이)에 대응되는 부분을 나타낼 수 있으며, 또 다른 포인트는 좌측(또는 우측) 눈에 대응되는 대응되는 부분을 나타낼 수 있고, 또 다른 포인트는 턱 끝에 대응되는 부분을 나타낼 수 있다.Points of skeleton information can be created at locations corresponding to body parts. For example, in the head area, a point may represent the part corresponding to the nose (or philtrum), another point may represent the part corresponding to the left (or right) ear (or temple), and another point may represent the part corresponding to the left (or right) ear (or temple). It can represent a corresponding part corresponding to the left (or right) eye, and another point can represent a part corresponding to the tip of the chin.

다음으로, 팔 영역에 있어서, 포인트는 좌측(또는 우측) 팔꿈치에 대응되는 부분을 나타낼 수 있고, 다른 포인트는 좌측(또는 우측) 손목에 대응되는 부분을 나타낼 수 있다.Next, in the arm area, a point may represent a portion corresponding to the left (or right) elbow, and another point may represent a portion corresponding to the left (or right) wrist.

위와 같은 방식으로 몸통 영역, 하체 영역을 포인트로 표시할 수 있고, 각 포인트는 에지(edge)라고 표현할 수도 있다.In the same way as above, the torso area and lower body area can be displayed as points, and each point can also be expressed as an edge.

여기서, 영상 데이터(예컨대, 이미지)로부터 객체의 스켈레톤 정보를 추출하는 방법은 "이철민, and 이동명. "욜로-오픈포즈 환경에서 사용자의 행동 인식을 위한 신체의 관절 좌표 추출에 관한 연구." 한국통신학회 학술대회논문집 (2020): 174-175." 및 "조윤민, 이승규.(2019).머신러닝을 이용한 2차원 사람 관절 추출 및 Kinect를 활용한 3차원 움직임 적용.한국정보과학회 학술발표논문집,1711-1713." 등 다양한 기술들이 공지되어 있고, 이러한 공지 기술들을 선택적으로 적용할 수 있는 바, 본 명세서에서 스켈레톤 정보를 추출하는 구체적인 방법에 대해서는 서술하지 않는다.Here, the method for extracting the skeleton information of an object from video data (e.g., image) is "Cheol-min Lee, and Dong-myeong Lee. "Study on extracting body joint coordinates for user action recognition in YOLO-Open Pose environment." Korea News Agency. Proceedings of the Society's Conference (2020): 174-175." and "Yunmin Cho, Seunggyu Lee. (2019). Extraction of 2D human joints using machine learning and application of 3D movement using Kinect. Proceedings of the Korea Information Science Society, 1711-1713." Various technologies such as these are known, and since these known technologies can be selectively applied, a specific method for extracting skeleton information is not described in this specification.

S230 단계의 다음으로, 응시자의 자세 정보(예를 들어, 신체 각도)를 스켈레톤 정보로부터 추출할 수 있다(S240 단계). 전술한 바와 같이 스켈레톤 정보는 두 포인트를 잇는 선을 포함하기 때문에, 선과 선 사이의 각도를 산출함으로써, 신체 각도를 획득할 수 있다. Next to step S230, the candidate's posture information (for example, body angle) can be extracted from the skeleton information (step S240). As described above, since skeleton information includes a line connecting two points, the body angle can be obtained by calculating the angle between the lines.

스켈레톤 정보로부터 신체 각도를 추출하는 것을 도 9를 참조하여 설명하도록 한다. 도 9에서는 예시적으로 몸통과 양 팔사이의 각도와, 좌측 허벅지와 종아리 사이의 각도와, 양 허벅지 사이의 각도를 점선으로 도시하였다. 즉, 스켈레톤 정보에 포함된 선과 선 사이의 각도를 추출함으로써, 응시자의 신체 각도를 획득할 수 있다. 신체 각도를 추출하는 방식으로, 포인트와 선의 좌표 정보를 먼저 산출하고, 이 좌표 정보를 이용하여 각도를 산출하는 방식을 적용할 수 있다. 또한, 신체 각도를 추출할 때는 특정한 기술에 국한되지 않으며, 통상의 기술자가 적용가능한 범위 내에 속하는 기술이라면 활용할 수 있다. Extracting body angles from skeleton information will be described with reference to FIG. 9. In Figure 9, the angle between the torso and both arms, the angle between the left thigh and calf, and the angle between both thighs are shown as dotted lines. In other words, the angle of the candidate's body can be obtained by extracting the angle between the lines included in the skeleton information. As a method of extracting body angles, a method of first calculating the coordinate information of points and lines and then calculating the angle using this coordinate information can be applied. Additionally, extracting body angles is not limited to a specific technology, and any technology that falls within the applicable range can be utilized by a person skilled in the art.

S240 단계의 다음으로, 응시자의 신체 각도로부터 응시자의 동작을 분류할 수 있다(S250 단계). 신체 각도의 변화량을 통해서 응시자의 동작을 인식할 수 있다. 예를 들어, 우측 상완과 전완의 각도(즉, 팔꿈치 각도)가 급격히 증가하였다가 급격히 감소하였다면, 우측 팔이 펴졌다가 접은 것을 알 수 있고, 이를 앞지르기 동작으로 간주할 수 있다. 프레임은 일정 간격으로 생성되기 때문에, 프레임 간격을 기반으로 시간을 산출할 수 있다. 따라서, 소정의 동작이 시작된 프레임과, 소정의 동작이 종료된 프레임을 알 수 있다면, 소정의 동작에 소요된 시간을 알 수 있다. 이에 따라 소정의 동작을 시간 별로 분류할 수 있다. 품새는 복수의 동작으로 이루어져 있기 때문에, 품새의 각 동작 별로 응시자의 동작을 분류할 수 있다. Next to step S240, the candidate's motion can be classified based on the candidate's body angle (step S250). The candidate's movements can be recognized through the amount of change in body angle. For example, if the angle between the right upper arm and forearm (i.e., elbow angle) suddenly increases and then suddenly decreases, it can be seen that the right arm is extended and then folded, and this can be considered a forward movement. Since frames are generated at regular intervals, time can be calculated based on the frame interval. Therefore, if the frame in which a predetermined operation starts and the frame in which the predetermined operation ends are known, the time taken for the predetermined operation can be known. Accordingly, certain operations can be classified by time. Since Poomsae consists of multiple movements, the candidate's movements can be classified according to each Poomsae movement.

도 10의 (a)는 상술한 동작 분류를 예시적으로 표현한 표이다. 도 10의 (a)에서 1 ~ 3초 사이에서는 응시자는 앞차기를 시연하였다. 응시자의 무릎 관절을 중심으로 허벅지와 종아리 사이의 각도의 변화량을 통해 앞차기 여부를 파악할 수 있다. 또한, 3 ~ 5초 사이에서는 응시자는 앞지르기를 시연하였다. 응시자의 상완과 전완 사이의 각도의 변화량을 통해 앞지르기 여부를 파악할 수 있다. 또한, 5 ~ 7초 사이에서는 응시자는 막기를 시연하였다. 응시자의 어깨 관절의 각도의 변화량을 통해 앞지르기 여부를 파악할 수 있다. 이와 같이 시간별 신체각도를 통해서 품새의 동작을 인식하여 분류할 수 있다.Figure 10(a) is a table illustrating the above-described operation classification. In Figure 10(a), between 1 and 3 seconds, the test taker demonstrated a front kick. Whether the test is a front kick can be determined through the change in the angle between the thigh and calf, centered on the test taker's knee joint. Additionally, between 3 and 5 seconds, the test taker demonstrated overtaking. Through the change in the angle between the test taker's upper arm and forearm, it is possible to determine whether the candidate is overtaking. Additionally, between 5 and 7 seconds, the test taker demonstrated blocking. It is possible to determine whether a candidate is overtaking by looking at the change in the angle of the candidate's shoulder joint. In this way, Poomsae movements can be recognized and classified through body angles over time.

S250 단계의 다음으로, 기준 데이터와 동작 별 신체 각도를 기반으로 동작 별 점수를 산출할 수 있다(S260 단계). 여기서 기준 데이터는 이상적인 품새 동작에서의 시간 별 신체 각도를 의미할 수 있다. 기준 데이터를 획득하는 방법의 일례로서, 숙련된 전문가의 품새 동작에 대한 영상 데이터를 생성하고, 앞서 설명한 S210 단계 내지 S250단계를 거쳐 전문가의 시간 별 신체 각도를 획득할 수 있다. 이러한 전문가의 시간 별 신체 각도는 기준 데이터가 될 수 있다. 또한 다른 방법으로 품새의 이상적인 자세를 AI알고리즘을 통해서 생성하고, 이를 바탕으로 시간 별 신체 각도를 획득할 수 있다. 기준 데이터의 획득 방법은 상술한 방법에 국한되지 않는다. 기준 데이터는 승단 심사의 규정에 따라 다양하게 변경될 수 있다. 기준 데이터는 시간 별 신체 각도를 포함하기 때문에, 응시자의 시간 별 신체 각도와 비교할 수 있다. 비교 결과 응시자의 동작이 기준 데이터와 얼마나 일치하느냐에 따라 각 동작의 점수가 결정된다. 예를 들어, 소정의 동작에 소요하는 시간과 소정의 동작시 신체 각도가 기준 데이터와 일치하는 정도를 기반으로 점수가 결정되고, 도 10의 (b)에 도시된 것과 같이 각 동작 별로 점수가 결정될 수 있다.Next to step S250, scores for each movement can be calculated based on the reference data and the body angle for each movement (step S260). Here, the reference data may mean the body angle over time in the ideal Poomsae movement. As an example of a method of acquiring reference data, image data of a skilled expert's Poomsae movements can be generated, and the expert's body angle by time can be obtained through steps S210 to S250 described above. These experts' body angles over time can serve as reference data. Additionally, in another way, the ideal Poomsae posture can be created through an AI algorithm, and based on this, the body angle can be obtained by time. The method of acquiring reference data is not limited to the method described above. The standard data can be changed in various ways depending on the regulations for promotion examination. Because the reference data includes body angles over time, it can be compared to the test taker's body angles over time. As a result of the comparison, the score for each movement is determined depending on how well the candidate's movement matches the reference data. For example, a score is determined based on the time spent on a given movement and the extent to which the body angle during the given movement matches the reference data, and a score is determined for each movement as shown in (b) of FIG. 10. You can.

S260 단계의 다음으로, 응시자의 동작 별 점수를 합하여 총점을 산출하고, 이를 바탕으로 응시자의 합격 여부가 결정된다(S270 단계). 합격과 불합격의 기준은 승단 심사의 규정에 의해 결정된다.Next to step S260, the total score is calculated by adding up the test taker's scores for each movement, and based on this, whether or not the test taker passes is determined (step S270). The criteria for passing and failing are determined by the regulations for promotion examination.

본 발명의 일실시예에 따르면, 복수의 응시자가 승단심사에 참가하더라도 응시자마다 객체를 검출하고 판단하기 때문에, 평가심사위원이 순간적으로 응시자의 동작을 놓치더라도 놓친 동작을 누락되지 않고 정확하게 평가할 수 있다.According to one embodiment of the present invention, even if a plurality of candidates participate in the promotion examination, objects are detected and judged for each candidate, so even if the evaluation judge momentarily misses the candidate's motion, the missed motion can be accurately evaluated without missing it. .

또한, 본 발명의 일실시예에 따르면, 응시자의 신체각도를 기반으로 동작을 판단하기 때문에 기존의 육안으로 평가하는 것 보다 높은 평가의 정확성을 확보할 수 있다.In addition, according to one embodiment of the present invention, since the motion is judged based on the candidate's body angle, it is possible to secure higher evaluation accuracy than existing evaluations with the naked eye.

또한, 본 발명의 일실시예에 따르면, 서버(100)를 통해서 센서 모듈(200)의 영상 데이터를 분석하기 때문에 판정의 논란을 줄일 수 있고, 응시자의 이의제기시 각 점수의 근거를 명확하게 제시할 수 있기 때문에 판정의 높은 공정성을 기대할 수 있다.In addition, according to one embodiment of the present invention, since the image data of the sensor module 200 is analyzed through the server 100, controversy over judgment can be reduced, and the basis for each score is clearly presented when the test taker raises an objection. Because this can be done, high fairness in judgment can be expected.

또한, 본 발명의 일실시예에 따르면, 응시자의 신체 각도를 기반으로 동작을 판단하기 때문에 기존의 육안으로 평가하는 것 보다 높은 평가의 정확성을 확보할 수 있다.In addition, according to one embodiment of the present invention, since the motion is judged based on the angle of the test taker's body, higher evaluation accuracy can be secured than existing evaluation with the naked eye.

또한, 본 발명의 일실시예에 따르면, 이상적인 품새 자세를 기반으로 응시자의 자세를 평가하기 때문에 객관적인 심사 평가가 가능하다.Additionally, according to one embodiment of the present invention, objective screening and evaluation is possible because the candidate's posture is evaluated based on the ideal Poomsae posture.

도 11을 참조하여, 센서 데이터를 활용한 운동 자세 평가 방법을 수행하는 본 발명의 또 다른 실시예를 설명하도록 한다.Referring to FIG. 11, another embodiment of the present invention that performs a method of evaluating exercise posture using sensor data will be described.

도 11에 도시된 실시예에는 도 5에 도시된 S210 내지 S230 단계가 동일하게 적용될 수 있다. 다만 이에 한정되는 것은 아니고, 응시자의 스켈레톤 정보를 추출할 수 있는 구성이라면 도 11에 도시된 실시예에 적용할 수 있다.Steps S210 to S230 shown in FIG. 5 may be equally applied to the embodiment shown in FIG. 11 . However, it is not limited to this, and any configuration that can extract the candidate's skeleton information can be applied to the embodiment shown in FIG. 11.

응시자의 스켈레톤 정보를 추출한 다음으로, 복수의 프레임 별로 신체 각도를 산출할 수 있다(S241 단계), 앞서 설명한 도 5의 S240 단계와 같이 신체 각도를 산출할 수 있으며, 이외에 다른 신체 각도를 산출할 수 있는 구성이 사용될 수도 있다. After extracting the candidate's skeleton information, the body angle can be calculated for each of the plurality of frames (step S241). The body angle can be calculated as in step S240 of FIG. 5 described above, and other body angles can be calculated. Any configuration that exists may also be used.

S241 단계에서 각 프레임 별로 신체 각도를 산출하였기 때문에, 프레임 간격을 기반으로 시계열 데이터를 구할 수 있다(S251 단계). 여기서 시계열 데이터는 시간에 따라 변화하는 신체 각도의 변화량으로 정의될 수 있다. 예를 들어, t=0에서 dt까지 총 2개의 프레임이 생성되었고, 제1 프레임 내에 우측 팔꿈치 각도가 180° 이고, 제2 프레임 내의 우측 팔꿈치 각도가 160°이라면, dt 동안에 60°만큼 팔꿈치 각도가 변화되었음을 확인할 수 있다. 이와 같이 각 프레임 사이의 신체 각도 변화량과 프레임 간격을 알고 있다면, 시간에 따른 신체 각도 변화량을 산출할 수 있고, 이를 도 12에 도시된 것과 같은 시계열 데이터로 변환할 수 있다. 도 12의 상단의 그래프는 우측 팔꿈치의 시계열 데이터 그래프이고, 하단의 그래프는 좌측 팔꿈치의 시계열 데이터의 그래프이다. S251 단계를 통해서 신체 각도에 대한 시계열 데이터를 산출할 수 있고, 이러한 시계열 데이터를 응시자의 신체 부위 별로(예를 들어, 우측 팔꿈치, 좌측 무릎) 구할 수 있다.Since the body angle is calculated for each frame in step S241, time series data can be obtained based on the frame interval (step S251). Here, time series data can be defined as the amount of change in body angle that changes over time. For example, if a total of two frames are created from t=0 to dt, and the right elbow angle in the first frame is 180° and the right elbow angle in the second frame is 160°, the elbow angle is increased by 60° during dt. You can confirm that it has changed. In this way, if the amount of change in body angle between each frame and the frame interval are known, the amount of change in body angle over time can be calculated and converted into time series data as shown in FIG. 12. The upper graph of FIG. 12 is a graph of time series data of the right elbow, and the lower graph is a graph of time series data of the left elbow. Through step S251, time series data on body angles can be calculated, and such time series data can be obtained for each body part of the candidate (for example, right elbow, left knee).

S251 단계의 다음으로, 기준 데이터와 응시자의 시계열 데이터를 바탕으로 점수를 산출한다(S261 단계). 도 11의 기준 데이터는 기 설정된 시계열 데이터를 포함할 수 있다. 그리고 기 설정된 시계열 데이터는 앞서 도 5의 S260 단계의 기준 데이터와 유사한 방식으로 생성할 수 있다. 즉, 기준 데이터에 포함된 시계열 데이터는 이상적인 품새 동작에서 신체 각도의 변화량으로 이해할 수 있다. 기 설정된 시계열 데이터를 획득하는 방법의 일례로서, 숙련된 전문가의 품새 동작에 대한 영상 데이터를 생성하고, 앞서 설명한 S210 단계 내지 S251단계를 거쳐 전문가의 시계열적 데이터를 획득할 수 있다. 또한 다른 방법으로 품새의 이상적인 자세를 AI알고리즘을 통해서 생성하고, 이를 바탕으로 시계열적인 신체 각도의 변화량을 획득할 수 있다. 기 설정된 시계열 데이터의 획득 방법은 상술한 방법에 국한되지 않으며, 승단 심사의 규정에 따라 다양하게 변경될 수 있다. Following step S251, a score is calculated based on the standard data and the candidate's time series data (step S261). The reference data in FIG. 11 may include preset time series data. And the preset time series data can be generated in a similar manner to the reference data in step S260 of FIG. 5. In other words, the time series data included in the reference data can be understood as the amount of change in body angle in the ideal Poomsae movement. As an example of a method of acquiring preset time series data, image data of a skilled expert's poomsae movements may be generated, and the expert's time series data may be obtained through steps S210 to S251 described above. Additionally, in another way, the ideal posture of Poomsae can be created through an AI algorithm, and based on this, the amount of change in body angle over time can be obtained. The method of acquiring preset time series data is not limited to the above-mentioned method, and may be changed in various ways according to the regulations of the promotion examination.

기준 데이터에 포함된 시계열 데이터는 시간에 따른 신체 각도의 변화량을 포함하기 때문에, 응시자의 시계열 데이터와 비교할 수 있다. 비교 결과 응시자의 동작이 기준 데이터와 얼마나 일치하느냐에 따라 각 동작의 점수가 결정된다. 예를 들어, 신체 부위 별로 기준 시계열 데이터와 응시자의 시계열 데이터가 일치하는 정도를 기반으로 점수가 결정되고, 도 13에 도시된 것과 같이 각 신체 부위 별로 점수가 결정된다. Since the time series data included in the reference data includes the amount of change in body angle over time, it can be compared with the test taker's time series data. As a result of the comparison, the score for each movement is determined depending on how well the candidate's movement matches the reference data. For example, a score is determined for each body part based on the degree to which the standard time series data matches the test taker's time series data, and a score is determined for each body part as shown in FIG. 13.

S261 단계의 다음으로, 응시자의 신체부위 별 점수를 합하여 총점을 산출하고, 이를 바탕으로 응시자의 합격 여부가 결정된다(S271 단계). 합격과 불합격의 기준은 승단 심사의 규정에 의해 결정된다.Next to step S261, the test taker's scores for each body part are added to calculate the total score, and based on this, whether the test taker passes is determined (step S271). The criteria for passing and failing are determined by the regulations for promotion examination.

다음으로 도5의 S230 단계에서 추출된 스켈레톤 정보를 이용하여 응시자의 3차원 좌표 정보를 생성하고, 이를 본 발명의 다양한 실시예에 적용하는 방법을 설명한다. Next, a method of generating 3D coordinate information of a candidate using the skeleton information extracted in step S230 of Figure 5 and applying this to various embodiments of the present invention will be described.

S230 단계에서 추출된 복수의 스켈레톤 정보를 이용하여 서버(100)는 3차원 좌표 정보를 생성할 수 있다. 예컨대, 센서 모듈(200)은 복수의 카메라로 구성될 수 있고, 각 카메라는 특정 응시자를 서로 다른 각도에서 촬영할 수 있다. 서버(100)는 특정 응시자를 서로 다른 시점(point of view)으로 촬영한 영상 데이터들로부터 추출된 스켈레톤 정보를 병합함으로써, 특정 선수에 대한 하나의 3차원 좌표 정보를 생성할 수 있다. 즉, 서버(100)는 특정 객체에 대한 복수의 2차원 스켈레톤 정보를 이용하여 특정 객체에 대한 3차원 모델링을 수행할 수 있다.The server 100 may generate 3D coordinate information using the plurality of skeleton information extracted in step S230. For example, the sensor module 200 may be composed of a plurality of cameras, and each camera may photograph a specific applicant from a different angle. The server 100 may generate one 3D coordinate information for a specific player by merging skeleton information extracted from image data captured from different points of view of a specific candidate. That is, the server 100 may perform 3D modeling on a specific object using a plurality of 2D skeleton information on the specific object.

다음으로 서버(100)는 3차원 모델링 정보를 이용하여 응시자의 동작 정보를 추출할 수 있다. 여기서, 3차원 좌표 정보로부터 추출되는 응시자의 동작 정보는 응시자의 움직임 및 행동에 관한 정보뿐만 아니라, 응시자가 현재 취하고 있는 자세에 관한 정보를 포함할 수 있다.Next, the server 100 can extract the candidate's motion information using the 3D modeling information. Here, the motion information of the candidate extracted from the 3D coordinate information may include information about the candidate's movement and behavior as well as information about the posture the candidate is currently taking.

일례로, 서버(100)는 특정 시점(time)에 특정 선수를 촬영함에 따라 생성된 영상 데이터들을 이용하여 3차원 좌표 정보를 생성하고, 3차원 좌표 정보를 이용하여, 특정 시점에 특정 선수가 취하고 있는 자세를 판단하고, 특정 응시자의 자세에 대한 3차원 좌표 정보를 기준 3차원 좌표 정보에 대비하여 자세를 평가할 수 있다. 여기서 기준 3차원 좌표 정보는 이상적인 품새 동작에 대응하는 3차원 좌표 정보를 의미할 수 있다.For example, the server 100 generates 3D coordinate information using image data generated by filming a specific athlete at a specific time, and uses the 3D coordinate information to determine the number of images taken by a specific athlete at a specific time. The posture can be determined and the posture can be evaluated by comparing the 3D coordinate information about the posture of a specific candidate with the reference 3D coordinate information. Here, the reference 3D coordinate information may mean 3D coordinate information corresponding to the ideal Poomsae movement.

다른 예로, 서버(100)는 소정의 기간 동안에 특정 응시자를 촬영함에 따라 생성된 영상 데이터들을 이용하여 복수의 3차원 좌표 정보를 생성하고, 복수의 3차원 좌표의 변화량을 이용하여 응시자에 대한 자세 정보를 추출할 수 있으며, 자세 정보를 시계열에 따라 분석함에 따라 소정 기간 동안의 특정 선수의 움직임 및 행동 정보를 판단할 수 있다. 그리고 이를 기준 데이터에 포함된 시계열적인 3차원 좌표 정보에 대비하여, 응시자의 자세를 평가할 수 있다. 다시 말해, 여기서 응시자의 3차원 좌표 정보는 시간에 따른 3차원 좌표 변화량을 포함할 수 있고, 기준 데이터는 이상적인 품새 자세를 시연하는 중에 시간에 따라 변화되는 3차원 좌표 변화량을 포함할 수 있다.As another example, the server 100 generates a plurality of 3D coordinate information using image data generated by photographing a specific candidate over a predetermined period of time, and generates posture information about the candidate using the amount of change in the plurality of 3D coordinates. can be extracted, and by analyzing the posture information according to time series, the movement and behavior information of a specific player over a certain period of time can be determined. And by comparing this with the time-series 3D coordinate information included in the reference data, the candidate's posture can be evaluated. In other words, here, the candidate's 3D coordinate information may include the amount of 3D coordinate change over time, and the reference data may include the amount of 3D coordinate change that changes over time while demonstrating the ideal Poomsae posture.

전술한 센서 데이터를 활용한 운동 자세 평가 시스템과 방법은 도면에 도시된 순서도를 참조하여 설명하였다. 간단한 설명을 위해 센서 데이터를 활용한 운동 자세 평가 시스템은 일련의 블록들로 도시하여 설명하였으나, 본 발명은 상기 블록들의 순서에 한정되지 않고, 몇몇 블록들은 본 명세서에 도시되고 시술된 것과 상이한 순서로 수행되거나 또는 동시에 수행될 수 있다. 또한, 본 명세서 및 도면에 기재되지 않은 새로운 블록이 추가되거나, 일부 블록이 삭제 또는 변경된 상태로 수행될 수 있다.The exercise posture evaluation system and method using the above-described sensor data was explained with reference to the flow chart shown in the drawing. For simple explanation, the exercise posture evaluation system using sensor data is illustrated and described as a series of blocks, but the present invention is not limited to the order of the blocks, and some blocks are arranged in an order different from that shown and performed herein. may be performed or may be performed simultaneously. Additionally, new blocks not described in the specification and drawings may be added, or some blocks may be deleted or changed.

이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.Above, embodiments of the present invention have been described with reference to the attached drawings, but those skilled in the art will understand that the present invention can be implemented in other specific forms without changing its technical idea or essential features. You will be able to understand it. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive.

10, 11, 12, 13 : 프레임
20 : 스켈레톤 정보
100 : 서버
200 : 센서 모듈
300 : 사용자 단말
400 : 외부 서버
500 : 네트워크
10, 11, 12, 13: Frame
20: Skeleton information
100: server
200: sensor module
300: user terminal
400: external server
500: Network

Claims (10)

센서 데이터를 활용한 운동 자세 평가 시스템에 있어서,
소정의 공간에서 진행되는 운동 심사에 참가한 응시자의 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하는 적어도 하나의 센서 모듈; 및
기 학습된 인공지능 모델을 이용하여, 상기 센서 모듈로부터 생성된 상기 센서 데이터를 분석함에 따라 상기 응시자에 대한 점수를 산출하는 서버;를 포함하고,
상기 센서 모듈은 소정의 공간 내에 설치되며, 서로 다른 각도로 촬영하는 복수의 카메라 모듈을 포함하고,
상기 센서 데이터는 적어도 하나의 영상 데이터를 포함하고,
상기 영상 데이터는 상기 카메라 모듈이 상기 소정의 공간을 촬영함에 따라 생성되는 복수의 프레임을 포함하고,
기 설정된 기준 데이터는 동작에 소요되는 시간 정보가 기 설정되고, 기 설정된 시계열 데이터를 신체 부위 별로 포함하고,
상기 서버는,
상기 복수의 프레임에서 상기 응시자에 대한 스켈레톤 정보를 추출하고, 추출된 상기 스켈레톤 정보를 이용해서 상기 응시자의 자세 정보를 생성하고, 생성된 상기 응시자의 자세 정보와 상기 기준 데이터에 의거하여 상기 응시자에게 점수를 부여하고,
상기 프레임 간격을 이용해서 상기 응시자의 동작에 소요되는 시간 정보를 생성하고, 상기 응시자의 시간 정보와 상기 기준 데이터의 시간 정보를 고려하여 응시자에게 점수를 부여하고,
상기 스켈레톤 정보를 이용해서 상기 응시자의 신체 각도를 상기 자세 정보로서 산출하고, 시간에 따라 변화하는 신체 각도의 정보가 포함된 상기 응시자의 시계열 데이터를 신체 부위 별로 생성하고, 신체 부위 별로 상기 응시자의 시계열 데이터와 기준 데이터를 비교한 결과에 의거하여 응시자에게 신체 부위 별로 점수를 부여하고,
상기 서버는,
상기 운동 심사가 품새 심사인 경우, 상기 스켈레톤 정보를 이용하여 상기 응시자의 신체 각도의 변화량을 산출하고, 상기 산출된 신체 각도의 변화량을 통해 상기 응시자의 동작들을 인식하되, 상기 인식된 동작들이 시작된 프레임과 상기 인식된 동작이 종료된 프레임의 간격을 이용하여 상기 인식된 동작들을 시간별로 분류하고, 상기 시간별로 분류된 동작들을 상기 품새에 포함된 복수의 동작 중 어느 하나의 동작으로 분류하고,
상기 기준 데이터는 이상적인 품새 동작에서의 시간 별 신체 각도를 포함하고,
상기 시간별로 분류된 동작들과 상기 기준 데이터에 포함된 이상적인 품새 동작에서의 시간 별 신체 각도가 일치하는 정도를 기반으로 상기 응시자에게 동작 별로 점수를 부여하고,상기 서버는,
상기 응시자의 신체 각도를 상기 프레임 단위로 산출하고, 상기 프레임 간격을 이용해서 시간에 따라 변화하는 신체 각도의 변화량이 포함된 응시자의 시계열 데이터를 생성하고,
상기 생성된 시계열 데이터에 포함된 시간에 따라 변화하는 신체 각도의 변화량과 상기 기준 데이터에 포함된 시간에 따라 변화하는 신체 각도의 변화량을 비교하여 상기 응시자에게 점수를 부여하고,
상기 서버는,
상기 복수의 카메라 모듈로부터 생성된 복수의 프레임 각각으로부터 상기 스켈레톤 정보를 추출하고, 상기 스켈레톤 정보를 병합하여 상기 응시자의 3차원 좌표 정보를 상기 자세 정보로서 생성하고,
상기 기준 데이터는 기 설정된 3차원 좌표 정보를 포함하고,
상기 응시자의 3차원 좌표 정보와 기준 데이터를 비교한 결과에 의거하여 응시자에게 점수를 부여하고,
상기 서버는,
시간에 따른 3차원 좌표 변화량이 포함된 상기 응시자의 3차원 좌표 정보를 생성하고,
상기 기준 데이터는 시간에 따른 3차원 좌표 변화량이 포함된 기 설정된 3차원 좌표 정보를 포함하고,
상기 응시자의 3차원 좌표 정보에 포함된 시간에 따른 3차원 좌표 변화량과 상기 기준 데이터의 기 설정된 3차원 좌표 정보에 포함된 시간에 따른 3차원 좌표 변화량을 비교하여 응시자에게 점수를 부여하는,
센서 데이터를 활용한 운동 자세 평가 시스템.
In an exercise posture evaluation system using sensor data,
at least one sensor module that generates at least one sensor data by scanning the posture of a candidate participating in an exercise screening conducted in a predetermined space; and
A server that calculates a score for the applicant by analyzing the sensor data generated from the sensor module using a previously learned artificial intelligence model;
The sensor module is installed in a predetermined space and includes a plurality of camera modules that take pictures at different angles,
The sensor data includes at least one image data,
The image data includes a plurality of frames generated as the camera module photographs the predetermined space,
The preset reference data includes preset information on the time required for movement, and includes preset time series data for each body part,
The server is,
Extract skeleton information about the candidate from the plurality of frames, generate posture information of the candidate using the extracted skeleton information, and score the candidate based on the generated posture information of the candidate and the reference data. Grant,
Using the frame interval, time information required for the candidate's movements is generated, and a score is given to the candidate considering the time information of the candidate and the time information of the reference data,
Using the skeleton information, the applicant's body angle is calculated as the posture information, the applicant's time series data containing information on the body angle that changes with time is generated for each body part, and the applicant's time series is generated for each body part. Based on the results of comparing the data with the standard data, the test taker is given a score for each body part,
The server is,
When the exercise examination is a poomsae examination, the amount of change in the body angle of the candidate is calculated using the skeleton information, and the movements of the candidate are recognized through the calculated change in the body angle, and the frame in which the recognized movements start is and classify the recognized movements by time using the interval of the frame in which the recognized movement ends, and classify the movements classified by time into any one of a plurality of movements included in the poomsae,
The reference data includes body angles over time in ideal Poomsae movements,
The test taker is given a score for each movement based on the degree to which body angles by time match the movements classified by time and the ideal Poomsae movement included in the reference data, and the server,
Calculate the candidate's body angle in units of the frame, and use the frame interval to generate time series data of the candidate including the amount of change in the body angle that changes over time,
Comparing the amount of change in body angle that changes with time included in the generated time series data with the amount of change in body angle that changes with time included in the reference data, and assigning a score to the candidate,
The server is,
Extracting the skeleton information from each of the plurality of frames generated from the plurality of camera modules, merging the skeleton information to generate 3D coordinate information of the applicant as the posture information,
The reference data includes preset three-dimensional coordinate information,
A score is given to the candidate based on the results of comparing the candidate's 3D coordinate information with reference data,
The server is,
Generate 3D coordinate information of the applicant including the amount of change in 3D coordinates over time,
The reference data includes preset 3D coordinate information including the amount of change in 3D coordinates over time,
Comparing the amount of change in 3D coordinates over time included in the 3D coordinate information of the candidate and the amount of change in 3D coordinates over time included in preset 3D coordinate information of the reference data to give a score to the candidate.
Exercise posture evaluation system using sensor data.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete ◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈◈Claim 9 was abandoned upon payment of the setup registration fee.◈ 제 1 항에 있어서,
상기 카메라 모듈은 복수의 응시자를 동시에 촬영하고,
상기 서버는 상기 영상 데이터로부터 복수의 응시자 각각을 인식하고, 각 응시자에 대한 점수를 독립적으로 산출하는
센서 데이터를 활용한 운동 자세 평가 시스템.
According to claim 1,
The camera module simultaneously photographs a plurality of test takers,
The server recognizes each of a plurality of test takers from the video data and independently calculates the score for each test taker.
Exercise posture evaluation system using sensor data.
센서 데이터를 활용한 운동 자세를 평가하는 방법에 있어서,
적어도 하나의 센서 모듈을 통해 소정의 공간에서 진행되는 운동 심사에 참가한 응시자의 자세를 스캔함에 따라 적어도 하나의 센서 데이터를 생성하는 단계; 및
서버에 기록된 기 학습된 인공지능 모델을 이용하여, 상기 센서 모듈로부터 생성된 적어도 하나의 센서 데이터를 분석한 결과에 기초하여 상기 응시자에 대한 점수를 산출하는 단계;를 포함하고,
상기 센서 모듈은 소정의 공간 내에 설치되며, 서로 다른 각도로 촬영하는 복수의 카메라 모듈을 포함하고,
상기 센서 데이터는 적어도 하나의 영상 데이터를 포함하고,
상기 영상 데이터는 상기 카메라 모듈이 상기 소정의 공간을 촬영함에 따라 생성되는 복수의 프레임을 포함하고,
기 설정된 기준 데이터는 동작에 소요되는 시간 정보가 기 설정되고, 기 설정된 시계열 데이터를 신체 부위 별로 포함하고,
상기 점수를 산출하는 단계는,
상기 복수의 프레임에서 상기 응시자에 대한 스켈레톤 정보를 추출하고, 추출된 상기 스켈레톤 정보를 이용해서 상기 응시자의 자세 정보를 생성하고, 생성된 상기 응시자의 자세 정보와 상기 기준 데이터에 의거하여 상기 응시자에게 점수를 부여하는 단계;
상기 프레임 간격을 이용해서 상기 응시자의 동작에 소요되는 시간 정보를 생성하고, 상기 응시자의 시간 정보와 상기 기준 데이터의 시간 정보를 고려하여 응시자에게 점수를 부여하는 단계;
상기 스켈레톤 정보를 이용해서 상기 응시자의 신체 각도를 상기 자세 정보로서 산출하고, 시간에 따라 변화하는 신체 각도의 정보가 포함된 상기 응시자의 시계열 데이터를 신체 부위 별로 생성하고, 신체 부위 별로 상기 응시자의 시계열 데이터와 기준 데이터를 비교한 결과에 의거하여 응시자에게 신체 부위 별로 점수를 부여하는 단계;
상기 운동 심사가 품새 심사인 경우, 상기 스켈레톤 정보를 이용하여 상기 응시자의 신체 각도의 변화량을 산출하고, 상기 산출된 신체 각도의 변화량을 통해 상기 응시자의 동작들을 인식하되, 상기 인식된 동작들이 시작된 프레임과 상기 인식된 동작이 종료된 프레임의 간격을 이용하여 상기 인식된 동작들을 시간별로 분류하고, 상기 시간별로 분류된 동작들을 상기 품새에 포함된 복수의 동작 중 어느 하나의 동작으로 분류하고, 상기 기준 데이터는 이상적인 품새 동작에서의 시간 별 신체 각도를 포함하고, 상기 시간별로 분류된 동작들과 상기 기준 데이터에 포함된 이상적인 품새 동작에서의 시간 별 신체 각도가 일치하는 정도를 기반으로 상기 응시자에게 동작 별로 점수를 부여하는 단계;
상기 응시자의 신체 각도를 상기 프레임 단위로 산출하고, 상기 프레임 간격을 이용해서 시간에 따라 변화하는 신체 각도의 변화량이 포함된 응시자의 시계열 데이터를 생성하고, 상기 생성된 시계열 데이터에 포함된 시간에 따라 변화하는 신체 각도의 변화량과 상기 기준 데이터에 포함된 시간에 따라 변화하는 신체 각도의 변화량을 비교하여 상기 응시자에게 점수를 부여하는 단계; 및
상기 복수의 카메라 모듈로부터 생성된 복수의 프레임 각각으로부터 상기 스켈레톤 정보를 추출하고, 상기 스켈레톤 정보를 병합하여 상기 응시자의 3차원 좌표 정보를 상기 자세 정보로서 생성하고, 상기 기준 데이터는 기 설정된 3차원 좌표 정보를 포함하고, 상기 응시자의 3차원 좌표 정보와 기준 데이터를 비교한 결과에 의거하여 응시자에게 점수를 부여하는 단계를 포함하며,
상기 응시자의 3차원 좌표 정보와 기준 데이터를 비교한 결과에 의거하여 응시자에게 점수를 부여하는 단계는,
시간에 따른 3차원 좌표 변화량이 포함된 상기 응시자의 3차원 좌표 정보를 생성하고, 상기 기준 데이터는 시간에 따른 3차원 좌표 변화량이 포함된 기 설정된 3차원 좌표 정보를 포함하고, 상기 응시자의 3차원 좌표 정보에 포함된 시간에 따른 3차원 좌표 변화량과 상기 기준 데이터의 기 설정된 3차원 좌표 정보에 포함된 시간에 따른 3차원 좌표 변화량을 비교하여 응시자에게 점수를 부여하는 단계를 포함하는,
센서 데이터를 활용한 운동 자세 평가 방법.
In a method of evaluating exercise posture using sensor data,
Generating at least one sensor data by scanning the posture of a candidate participating in an exercise screening conducted in a predetermined space through at least one sensor module; and
Comprising: calculating a score for the candidate based on a result of analyzing at least one sensor data generated from the sensor module, using a previously learned artificial intelligence model recorded in the server,
The sensor module is installed in a predetermined space and includes a plurality of camera modules that take pictures at different angles,
The sensor data includes at least one image data,
The image data includes a plurality of frames generated as the camera module photographs the predetermined space,
The preset reference data includes preset information on the time required for movement, and includes preset time series data for each body part,
The step of calculating the score is,
Extract skeleton information about the candidate from the plurality of frames, generate posture information of the candidate using the extracted skeleton information, and score the candidate based on the generated posture information of the candidate and the reference data. granting;
generating time information required for the test taker's movements using the frame interval, and awarding a score to the test taker by considering the time information of the test taker and the time information of the reference data;
Using the skeleton information, the applicant's body angle is calculated as the posture information, the applicant's time series data containing information on the body angle that changes with time is generated for each body part, and the applicant's time series is generated for each body part. A step of awarding scores for each body part to the test taker based on the results of comparing the data and reference data;
When the exercise examination is a poomsae examination, the amount of change in the body angle of the candidate is calculated using the skeleton information, and the movements of the candidate are recognized through the calculated change in the body angle, and the frame in which the recognized movements start is and classify the recognized movements by time using the interval of the frame at which the recognized movement ends, classify the movements classified by time into any one of a plurality of movements included in the poomsae, and apply the criteria The data includes body angles by time in the ideal Poomsae movement, and the examinee is sent to each movement based on the degree to which the movements classified by time match the body angles by time in the ideal Poomsae movement included in the reference data. assigning points;
The applicant's body angle is calculated in units of the frame, the frame interval is used to generate time series data of the applicant including the amount of change in the body angle that changes with time, and according to the time included in the generated time series data. Comparing the amount of change in the body angle that changes with the amount of change in the body angle that changes with time included in the reference data and granting a score to the test taker; and
The skeleton information is extracted from each of the plurality of frames generated from the plurality of camera modules, the skeleton information is merged to generate 3D coordinate information of the candidate as the posture information, and the reference data is preset 3D coordinates. It includes information, and includes the step of awarding a score to the candidate based on the results of comparing the candidate's 3D coordinate information with reference data,
The step of awarding a score to the candidate based on the results of comparing the candidate's 3D coordinate information and reference data is,
Generating 3D coordinate information of the candidate including the amount of 3D coordinate change over time, the reference data includes preset 3D coordinate information including the amount of 3D coordinate change over time, and generating 3D coordinate information of the candidate Comprising the step of awarding a score to the test taker by comparing the amount of change in 3D coordinates over time included in the coordinate information with the amount of change in 3D coordinates over time included in preset 3D coordinate information of the reference data.
Method for assessing exercise posture using sensor data.
KR1020230090130A 2023-07-12 Sportrs posture evaluation system and method using sensor data KR102670939B1 (en)

Publications (1)

Publication Number Publication Date
KR102670939B1 true KR102670939B1 (en) 2024-06-03

Family

ID=

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102304641B1 (en) * 2020-12-15 2021-09-24 (주)나노아이티 Artificial intelligence Taekwondo Poomsae reading and education system
KR102477479B1 (en) * 2021-12-29 2022-12-14 광주과학기술원 system and method for enabling content-based multi-party games by recognizing and classifying omnidirectional movements of multiple participants without errors using multiple sensors or devices
KR102510014B1 (en) * 2022-10-07 2023-03-15 주식회사 에이아이태권도 Method for evaluating taekwondo competition according to training level of user using artificial intelligence

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102304641B1 (en) * 2020-12-15 2021-09-24 (주)나노아이티 Artificial intelligence Taekwondo Poomsae reading and education system
KR102477479B1 (en) * 2021-12-29 2022-12-14 광주과학기술원 system and method for enabling content-based multi-party games by recognizing and classifying omnidirectional movements of multiple participants without errors using multiple sensors or devices
KR102510014B1 (en) * 2022-10-07 2023-03-15 주식회사 에이아이태권도 Method for evaluating taekwondo competition according to training level of user using artificial intelligence

Similar Documents

Publication Publication Date Title
WO2021057810A1 (en) Data processing method, data training method, data identifying method and device, and storage medium
US10748376B2 (en) Real-time game tracking with a mobile device using artificial intelligence
CN108256433B (en) Motion attitude assessment method and system
Jalal et al. A wrist worn acceleration based human motion analysis and classification for ambient smart home system
US9183431B2 (en) Apparatus and method for providing activity recognition based application service
CN111414839B (en) Emotion recognition method and device based on gesture
KR102377561B1 (en) Apparatus and method for providing taekwondo movement coaching service using mirror dispaly
CN111191599A (en) Gesture recognition method, device, equipment and storage medium
Anilkumar et al. Pose estimated yoga monitoring system
WO2017161734A1 (en) Correction of human body movements via television and motion-sensing accessory and system
US11568617B2 (en) Full body virtual reality utilizing computer vision from a single camera and associated systems and methods
CN111507301B (en) Video processing method, video processing device, computer equipment and storage medium
Yuan et al. Adaptive recognition of motion posture in sports video based on evolution equation
Nouredanesh et al. Chasing feet in the wild: a proposed egocentric motion-aware gait assessment tool
CN110334609A (en) A kind of real-time body-sensing method for catching of intelligence
Sunney et al. A real-time machine learning framework for smart home-based Yoga Teaching System
CN109407826A (en) Ball game analogy method, device, storage medium and electronic equipment
Hou et al. Dancing like a superstar: Action guidance based on pose estimation and conditional pose alignment
KR102670939B1 (en) Sportrs posture evaluation system and method using sensor data
Chariar et al. AI trainer: Autoencoder based approach for squat analysis and correction
Zhang et al. [Retracted] Research on Pose Recognition Algorithm for Sports Players Based on Machine Learning of Sensor Data
Wong Developing an intelligent assistant for table tennis umpires
KR102619792B1 (en) System and method for judging martial arts using image information based on artificial intelligence
Zaidi et al. Mae Mai Muay Thai Layered Classification Using CNN and LSTM Models
CN115273243B (en) Fall detection method, device, electronic equipment and computer readable storage medium