KR20220058790A - Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method - Google Patents
Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method Download PDFInfo
- Publication number
- KR20220058790A KR20220058790A KR1020200143714A KR20200143714A KR20220058790A KR 20220058790 A KR20220058790 A KR 20220058790A KR 1020200143714 A KR1020200143714 A KR 1020200143714A KR 20200143714 A KR20200143714 A KR 20200143714A KR 20220058790 A KR20220058790 A KR 20220058790A
- Authority
- KR
- South Korea
- Prior art keywords
- user
- image
- exercise
- joint position
- posture
- Prior art date
Links
- 238000001931 thermography Methods 0.000 title claims abstract description 36
- 230000009977 dual effect Effects 0.000 title claims abstract description 33
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000004458 analytical method Methods 0.000 title claims abstract description 18
- 238000012937 correction Methods 0.000 title description 6
- 238000004590 computer program Methods 0.000 title 1
- 230000000638 stimulation Effects 0.000 claims abstract description 73
- 230000033001 locomotion Effects 0.000 claims abstract description 72
- 230000008859 change Effects 0.000 claims abstract description 23
- 238000013528 artificial neural network Methods 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 2
- 239000008186 active pharmaceutical agent Substances 0.000 claims 2
- 210000003205 muscle Anatomy 0.000 abstract description 8
- 230000036544 posture Effects 0.000 description 117
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 12
- 239000000284 extract Substances 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 210000003127 knee Anatomy 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 208000034693 Laceration Diseases 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000000386 athletic effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000009365 direct transmission Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000020169 heat generation Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0003—Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
- A63B24/0006—Computerised comparison for qualitative assessment of motion sequences or the course of a movement
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/01—Measuring temperature of body parts ; Diagnostic temperature sensing, e.g. for malignant or inflamed tissue
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1121—Determining geometric values, e.g. centre of rotation or angular range of movement
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1126—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique
- A61B5/1128—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique using image analysis
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/48—Other medical applications
- A61B5/486—Bio-feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/20—Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from infrared radiation only
- H04N23/23—Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from infrared radiation only from thermal infrared radiation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/181—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a plurality of remote sources
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0003—Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
- A63B24/0006—Computerised comparison for qualitative assessment of motion sequences or the course of a movement
- A63B2024/0012—Comparing movements or motion sequences with a registered reference
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B24/00—Electric or electronic controls for exercising apparatus of preceding groups; Controlling or monitoring of exercises, sportive games, training or athletic performances
- A63B24/0003—Analysing the course of a movement or motion sequences during an exercise or trainings sequence, e.g. swing for golf or tennis
- A63B24/0006—Computerised comparison for qualitative assessment of motion sequences or the course of a movement
- A63B2024/0012—Comparing movements or motion sequences with a registered reference
- A63B2024/0015—Comparing movements or motion sequences with computerised simulations of movements or motion sequences, e.g. for generating an ideal template as reference to be achieved by the user
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B2220/00—Measuring of physical parameters relating to sporting activity
- A63B2220/80—Special sensors, transducers or devices therefor
- A63B2220/806—Video cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20036—Morphological image processing
- G06T2207/20044—Skeletonization; Medial axis transform
Landscapes
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Theoretical Computer Science (AREA)
- Pathology (AREA)
- Surgery (AREA)
- Animal Behavior & Ethology (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- Veterinary Medicine (AREA)
- Heart & Thoracic Surgery (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Physiology (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Dentistry (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Radiology & Medical Imaging (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Biodiversity & Conservation Biology (AREA)
- Physical Education & Sports Medicine (AREA)
- Toxicology (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
Description
본 발명은 운동 자세 분석과 자세 교정 가이드를 제공하는 기술에 관한 것이다. The present invention relates to a technique for providing an exercise posture analysis and posture correction guide.
최근에는 운동 자세의 중요성이 강조되어 다양한 장비로 사람을 감지하고, 자세를 추정하여 올바른 운동 자세에 대한 정보를 제공하는 기술들이 개발되고 있다. Recently, as the importance of exercise posture has been emphasized, technologies for detecting a person with various equipment and estimating the posture to provide information about the correct exercise posture are being developed.
상세하게는 카메라를 통해 촬영된 영상에서 사람의 자세를 추정하고, 추정된 자세를 기반으로 바른 운동 자세인지를 알려주거나 트레이너의 운동자세를 보여주는 기술들이 개발되고 있다. In detail, technologies are being developed that estimate a person's posture from an image captured by a camera, tell whether it is a correct exercise posture based on the estimated posture, or show a trainer's exercise posture.
다만 기존 운동 시스템은 외부적인 자세 교정만을 위한 것으로 실제 사용자가 운동하고자 하는 근육 부위에 힘이 들어 갔는지 판단하는데 한계점이 있다. However, the existing exercise system is only for external posture correction, and there is a limit in determining whether force is applied to the muscle part the user wants to exercise.
그러므로 운동의 부상을 방지하고, 사용자에게 정확한 운동 자세를 제안 및 교정을 위해서 운동 부위에 하중이 정확하게 실리는지 판단할 수 있는 기술이 요구된다. Therefore, there is a need for a technique capable of determining whether a load is accurately applied to an exercise part in order to prevent an exercise injury and to suggest and correct an accurate exercise posture to the user.
해결하고자 하는 과제는 듀얼 열화상 카메라의 RGB 영상과 열화상 영상에 기초하여 사용자의 운동 자세와 사용하는 근육 부위를 확인하는 분석 방법 및 장치를 제공하는 것이다. An object to be solved is to provide an analysis method and apparatus for identifying a user's exercise posture and muscle parts used based on the RGB image and thermal image of the dual thermal imaging camera.
해결하고자 하는 과제는 사용자의 운동 자세와 신체 자극 영역을 확인하여 해당 운동 자세에 따른 신체 영역이 자극되도록 정확한 운동 자세로 유도하는 방법 및 장치를 제공하는 것이다. An object to be solved is to provide a method and apparatus for identifying a user's exercise posture and body stimulation area, and inducing the user to an accurate exercise posture so that the body area according to the exercise posture is stimulated.
본 발명의 실시예에 따르면 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치가 운동 자세를 분석하는 방법으로서, 듀얼 열화상 카메라를 통해 사용자의 운동 동작이 촬영된 영상을 수신하는 단계, 듀얼 열화상 카메라의 RGB 채널과 열상 채널에 기초하여 생성된 컨피던스 맵을 결합하고, 결합된 컨피던스 맵에서 사용자의 주요 관절 위치 정보를 획득하는 단계, 사용자가 운동 동작을 수행하는 중에서 열상 채널에 의해 추정되는 온도 변화가 온도 임계치 이상인 관절 영역을 신체 자극 영역으로 추출하는 단계, 그리고 주요 관절 위치 정보 및 상기 신체 자극 영역을 매칭하는 단계를 포함한다. According to an embodiment of the present invention, there is provided a method of analyzing an exercise posture by a computing device operated by at least one processor. Combining the confidence map generated based on the RGB channel and the thermal image channel, obtaining the user's main joint position information from the combined confidence map, the temperature change estimated by the thermal image channel while the user performs an exercise motion is the temperature extracting a joint region equal to or greater than a threshold as a body stimulation region, and matching main joint position information with the body stimulation region.
주요 관절 위치 정보를 획득하는 단계는, RGB 채널과 열상 채널에 대해 각각 오픈 포즈 API를 이용하여 관절 위치로 추정되는 지점마다 히트맵으로 표시되는 각각의 컨피던스 맵을 생성할 수 있다. In the obtaining of the main joint position information, each confidence map displayed as a heat map may be generated for each point estimated as the joint position by using the open pose API for the RGB channel and the thermal image channel, respectively.
주요 관절 위치 정보를 획득하는 단계는, 입력받은 사용자의 키 정보에 기초하여 듀얼 열화상 카메라와 사용자 간의 거리를 산출하고, 거리에 기초하여 RGB 채널과 열상 채널에 대한 시야 간격(disparity)을 산출하는 단계, 그리고 열상 채널의 추정된 관절 위치 지점에 시야 간격을 적용하여 RGB 채널로 이동시키는 단계를 포함할 수 있다. The step of obtaining the main joint position information includes calculating the distance between the dual thermal imaging camera and the user based on the input key information of the user, and calculating the disparity for the RGB channel and the thermal image channel based on the distance. and applying a viewing interval to the estimated joint position of the laceration channel to move it to the RGB channel.
주요 관절 위치 정보를 획득하는 단계는, RGB 채널로 이동시킨 열상 채널의 관절 위치 지점의 밝기 값과 동일한 지점에서의 RGB 채널의 관절 위치 지점 밝기 값을 더한 값에 평균을 산출하여 결합된 컨피던스 맵에 표시할 수 있다. In the step of acquiring the main joint position information, the average is calculated by adding the brightness value of the joint position point of the thermal image channel moved to the RGB channel and the brightness value of the joint position point of the RGB channel at the same point, and it is added to the combined confidence map. can be displayed
매칭하는 단계는, 운동 동작에 대한 정보를 입력받으면, 운동 동작에 포함되는 운동 자세마다 주요 관절의 위치, 타겟 운동 부위(자극영역), 관절의 이동량, 관절간의 거리, 비율, 각도, 사용자의 중심점의 적어도 하나 이상을 매칭하여 연동되는 데이터베이스에 저장할 수 있다. In the matching step, when information about the movement is received, the position of the main joint, the target movement area (stimulation area), the movement amount of the joint, the distance between the joints, the ratio, the angle, and the center point of the user for each movement posture included in the movement movement. Match at least one or more of , and store it in an interworking database.
운동 동작마다 관절 포인트의 좌표, 관절들 간의 거리 및 각도를 포함한 주요 관절 위치 정보를 신경망에 입력하여 운동 동작마다의 올바른 자세 좌표를 학습시키는 단계를 더 포함할 수 있다. The method may further include inputting main joint position information including coordinates of joint points, distances, and angles between joints for each movement into the neural network to learn correct posture coordinates for each movement.
본 발명의 한 실시예에 따르면 컴퓨터로 판독 가능한 저장 매체에 저장되고 프로세서에 의해 실행되는 프로그램으로서, 선택받은 운동 동작에 대한 타겟 영상을 제공하면서, 사용자의 운동 자세를 촬영한 RGB 영상과 열화상 영상을 수집하는 동작, RGB 영상과 열화상 영상에 기초하여 사용자의 관절 위치 정보와 신체 자극 영역을 획득하는 동작, 획득된 사용자의 관절 위치 정보와 신체 자극 영역을 타겟 영상의 메타 데이터에 저장된 관절 위치 정보와 신체 자극 영역과 비교하여 일치하면 운동 자세 유지를 위한 피드백을 제공하고, 일치하지 않으면 자세 변경 또는 신체 자극 영역 변경을 위한 피드백을 제공하는 동작을 실행하는 명령어들을 포함한다. According to an embodiment of the present invention, as a program stored in a computer-readable storage medium and executed by a processor, an RGB image and a thermal image of a user's exercise posture while providing a target image for a selected exercise motion operation of collecting user's joint position information and body stimulation area based on RGB image and thermal image image, joint position information stored in the metadata of the target image with the obtained user's joint position information and body stimulation area and instructions for executing an operation that provides feedback for maintaining the exercise posture if they match compared to the body stimulation region, and provides feedback for changing the posture or body stimulation region if they do not match.
획득하는 동작은 RGB 영상과 열화상 영상에 대해 각각 오픈 포즈 API를 이용하여 관절 위치로 추정되는 지점마다 히트맵으로 표시하는 컨피던스 맵을 각각 생성하고, 2차원 벡터 공간에 컨피던스 맵을 매칭하여 관절 위치 정보를 획득할 수 있다. The operation to acquire is to generate a confidence map displayed as a heat map for each point estimated as a joint position using the open pose API for RGB image and thermal image image, respectively, and match the confidence map to the two-dimensional vector space to locate the joint position. information can be obtained.
획득하는 동작은 RGB 영상과 열화상 영상에 대해 각각 컨피던스 맵을 생성한 후, RGB 영상과 열화상 영상에 대한 시야 간격(disparity)을 산출하여 산출된 시야 간격을 적용하여 하나의 컨피던스 맵으로 결합할 수 있다. The acquisition operation is to generate a confidence map for each RGB image and a thermal image, calculate the disparity for the RGB image and the thermal image, and apply the calculated viewing distance to combine them into one confidence map. can
획득하는 동작은 입력받은 사용자의 키 정보, 카메라의 초점 거리 그리고 센서에 맺힌 상의 크기에 기초하여 듀얼 열화상 카메라와 사용자 간의 거리를 산출하고, 거리에 기초하여 카메라 렌즈 사이 거리와 초점 거리에 따라 RGB 영상과 열화상 영상에 대한 시야 간격을 산출할 수 있다. The acquisition operation calculates the distance between the dual thermal imaging camera and the user based on the received user's key information, the focal length of the camera, and the size of the image formed on the sensor, and based on the distance, RGB according to the distance between the camera lenses and the focal length It is possible to calculate the viewing distance for the image and the thermal image.
획득하는 동작은 운동 동작을 수행하는 중에서 열화상 영상에 의해 추정되는 온도 변화가 온도 임계치 이상인 관절 영역을 신체 자극 영역으로 획득할 수 있다.The acquiring operation may include acquiring a joint region in which a temperature change estimated by a thermal image is greater than or equal to a temperature threshold while performing an exercise operation as a body stimulation region.
타겟 영상에 포함된 연속적인 운동 동작들에 기초하여 신경망을 학습시키고, 사용자의 관절 위치 정보와 신체 자극 영역을 학습된 신경망에 입력하여 다음 운동 동작에 대한 사용자의 바른 자세와 신체 자극 영역을 추출하는 동작을 실행하는 명령어들을 더 포함할 수 있다. It trains a neural network based on continuous movement movements included in the target image, inputs the user's joint position information and body stimulation region to the learned neural network, and extracts the user's correct posture and body stimulation region for the next exercise operation. It may further include instructions for executing the operation.
추출하는 동작은, 신경망을 통해 획득한 사용자의 바른 자세와 신체 자극 영역에 기초하여 실시간으로 획득한 사용자의 관절 위치 정보와 신체 자극 영역을 비교하여 운동 자세와 신체 자극 영역의 정확도를 산출하여 피드백을 제공할 수 있다. The extraction operation compares the user's joint position information and the body stimulation area acquired in real time based on the user's correct posture and body stimulation area obtained through the neural network to calculate the accuracy of the exercise posture and the body stimulation area to provide feedback. can provide
실시예에 따르면 사용자의 운동 동작에서 정확한 운동 자세뿐 아니라 자극되는 근육 부위를 확인하여 자세 교정 가이드를 제공함으로써, 사용자의 운동 동작에 대한 이해도를 높이고 운동 동작으로 얻는 효과를 극대화할 수 있다. According to the embodiment, by providing a posture correction guide by checking not only the correct exercise posture but also the muscle parts stimulated in the user's exercise movement, it is possible to increase the user's understanding of the exercise movement and maximize the effect obtained from the exercise movement.
실시예에 따르면, RGB 채널과 열상 채널을 함께 이용하여 사용자의 운동 동작을 분석함으로써, 가려진 부분이나 사람의 형상과 유사한 외부 물체를 인식하는 오탐률을 개선하고 사람을 인식하는 정확도를 향상시킬 수 있다. According to an embodiment, by analyzing the user's movement motion using both the RGB channel and the thermal image channel, it is possible to improve the false positive rate for recognizing a hidden part or an external object similar to a human shape and improve the accuracy of recognizing a person. .
도 1은 본 발명의 실시예에 따른 운동 자세를 분석하여 가이드 정보를 제공하는 시스템의 구조도이다.
도 2는 본 발명의 실시예에 따른 컴퓨팅 장치를 나타낸 구성도이다.
도 3은 본 발명의 실시예에 따른 컨피던스 맵을 결합하는 과정을 설명하기 위한 예시도이다.
도 4는 본 발명의 실시예에 따른 사람과 사람이외의 물체에 대한 컨피던스 맵을 나타낸 예시도이다.
도 5는 본 발명의 실시예에 따른 열화상 영상에 기초하여 신체 자극 영역을 분석하는 구성을 나타낸 예시도이다.
도 6은 본 발명의 실시예에 따른 운동 자세를 분석하는 과정을 나타낸 흐름도이다.
도 7은 본 발명의 실시예에 따른 사용자 운동 자세에 대한 피드백을 제공하는 과정을 나타낸 흐름도이다.
도 8은 본 발명의 실시예에 따른 피드백 제공 화면을 나타낸 예시도이다.
도 9는 본 발명의 실시예에 따른 컴퓨팅 장치의 하드웨어 구성도이다.1 is a structural diagram of a system for providing guide information by analyzing an exercise posture according to an embodiment of the present invention.
2 is a block diagram illustrating a computing device according to an embodiment of the present invention.
3 is an exemplary diagram for explaining a process of combining a confidence map according to an embodiment of the present invention.
4 is an exemplary diagram illustrating a confidence map for a person and an object other than a person according to an embodiment of the present invention.
5 is an exemplary diagram illustrating a configuration for analyzing a body stimulation region based on a thermal image according to an embodiment of the present invention.
6 is a flowchart illustrating a process of analyzing an exercise posture according to an embodiment of the present invention.
7 is a flowchart illustrating a process of providing feedback on a user's exercise posture according to an embodiment of the present invention.
8 is an exemplary diagram illustrating a feedback providing screen according to an embodiment of the present invention.
9 is a hardware configuration diagram of a computing device according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, with reference to the accompanying drawings, the embodiments of the present invention will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily implement them. However, the present invention may be embodied in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "……부", "……기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a part "includes" a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated. In addition, terms such as “…unit”, “…group”, and “module” described in the specification mean a unit that processes at least one function or operation, which is implemented by hardware or software or a combination of hardware and software. can be
본 발명에서 설명하는 장치들은 적어도 하나의 프로세서, 메모리 장치, 통신 장치 등을 포함하는 하드웨어로 구성되고, 지정된 장소에 하드웨어와 결합되어 실행되는 프로그램이 저장된다. 하드웨어는 본 발명의 방법을 실행할 수 있는 구성과 성능을 가진다. 프로그램은 도면들을 참고로 설명한 본 발명의 동작 방법을 구현한 명령어(instructions)를 포함하고, 프로세서와 메모리 장치 등의 하드웨어와 결합하여 본 발명을 실행한다. The devices described in the present invention are composed of hardware including at least one processor, a memory device, a communication device, and the like, and a program to be executed in combination with the hardware is stored in a designated place. The hardware has the configuration and capability to implement the method of the present invention. The program includes instructions for implementing the method of operation of the present invention described with reference to the drawings, and is combined with hardware such as a processor and a memory device to execute the present invention.
본 명세서에서 "전송 또는 제공"은 직접적인 전송 또는 제공하는 것뿐만 아니라 다른 장치를 통해 또는 우회 경로를 이용하여 간접적으로 전송 또는 제공도 포함할 수 있다.As used herein, “transmission or provision” may include not only direct transmission or provision, but also transmission or provision indirectly through another device or using a detour path.
본 명세서에서 단수로 기재된 표현은 "하나" 또는 "단일" 등의 명시적인 표현을 사용하지 않은 이상, 단수 또는 복수로 해석될 수 있다.In this specification, expressions described in the singular may be construed in the singular or plural unless an explicit expression such as “a” or “single” is used.
본 명세서에서 "운동 동작"은 운동 자세들이 연속적으로 이어지는 루틴으로 형성된 동작을 의미하는 것 뿐만 아니라 특정 운동 자세를 일정 시간 유지하는 것을 포함할 수 있다. As used herein, "exercise motion" may include not only an operation formed by a routine in which exercise postures are continuously followed, but also maintaining a specific exercise posture for a certain period of time.
도 1은 본 발명의 실시예에 따른 운동 자세를 분석하여 가이드 정보를 제공하는 시스템의 구조도이다. 1 is a structural diagram of a system for providing guide information by analyzing an exercise posture according to an embodiment of the present invention.
도 1에 도시한 바와 같이 사용자를 촬영하는 듀얼 열화상 카메라(100)와 듀얼 열화상 카메라(100)의 촬영 영상들에서 운동 자세를 분석하고 가이드 정보를 제공하는 프로그램을 실행하는 컴퓨팅 장치(200) 그리고 운동 영상과 가이드 정보를 표시하는 사용자 단말(300)은 네트워크를 통해 서로 연결되어 데이터를 송수신한다. As shown in FIG. 1 , the dual
여기서, 네트워크는 유선망, LTE(Long term evolution)망/5G망과 같은 이동통신망, Wi-Fi 망과 같은 다양한 종류의 무선망, 및 이들의 조합으로 구성될 수 있다.Here, the network may be composed of a wired network, a mobile communication network such as a long term evolution (LTE) network/5G network, various types of wireless networks such as a Wi-Fi network, and combinations thereof.
듀얼 열화상 카메라(100)는 열화상(IR)과 RGB(EO) 카메라가 함께 구성된 듀얼(Dual) 카메라로, 한번의 촬영 장면에 대해서 열화상 영상과 RGB 영상을 제공한다. 다시 말해, 듀얼 열화상 카메라(100)는 동일한 장면에 대해 열상 채널을 통해 획득하는 열화상 영상과, RGB 채널을 통해 획득하는 RGB 영상을 제공한다. The dual
듀얼 열화상 카메라(100)는 컴퓨팅 장치(200) 또는 사용자 단말(300)과 연동하여 수신한 촬영 신호에 기초하여 실시간 사용자를 포함하여 촬영된 열화상 영상과 RGB 영상을 전송한다. The dual
그러면, 컴퓨팅 장치(200)는 듀얼 열화상 카메라(100)로부터 촬영된 영상들을 수집하여 컨피던스 맵(Confidence map)으로 사용자의 관절 추정 위치를 추정하고 관절간의 연결관계를 예측하여 사용자의 자세를 추정한다. Then, the
그리고 컴퓨팅 장치(200)는 추정된 자세에 따라 열화상 영상으로부터 온도 변화가 크게 나타나는 영역을 신체 자극 영역으로 추정할 수 있다. In addition, the
다시 말해, 컴퓨팅 장치(200)는 사용자가 운동 자세를 유지하거나 일정한 자세를 반복적으로 수행하는 과정에 따라 자극되는 근육 영역을 온도의 변화에 기초하여 추정할 수 있다. In other words, the
컴퓨팅 장치(200)는 트레이너와 같이 전문 운동가에 대해 수집한 열화상 영상과 RGB 영상으로부터 운동 자세와 추정되는 신체 자극 영역을 매칭하여 별도의 데이터베이스에 저장할 수 있다. The
이때, 트레이너에 대한 운동 영상과 운동 자세 분석 데이터 그리고 신체 자극 영역은 추후에 빠르고 정확한 분석을 위한 인공 지능 모델에 입력하여 학습데이터로 활용될 수 있다. At this time, the exercise image, exercise posture analysis data, and body stimulation area for the trainer may be input to an artificial intelligence model for quick and accurate analysis later and used as learning data.
또한, 컴퓨팅 장치(200)는 미리 저장된 운동 영상에 기초하여 사용자로부터 선택된 타겟 영상을 사용자에게 제공하고, 사용자의 열화상 영상과 RGB 영상을 통해 운동 자세를 분석하여 피드백 정보를 제공할 수 있다. 여기서, 피드백 정보는 자세 교정, 신체 자극 영역의 안내, 자세 유지 등 다양한 피드백을 포함한다. In addition, the
사용자 단말(300)은 영상 또는 음성을 외부로 출력 가능한 인터페이스를 가지며, 컴퓨팅 장치(200)로부터 수신한 가이드 정보를 해당 인터페이스를 통해 제공한다. The
사용자 단말(300)은 보다 정확한 운동 자세에 대한 분석을 요청하고자 키, 몸무게등과 같은 사용자 정보를 입력받아 컴퓨팅 장치(200)로 전송할 수 있다. The
상세하게 사용자 단말(300)은 운동 영상 및 운동 자세에 대한 정확한 정보를 제공하기 위한 트레이너가 구비하는 단말이거나 운동 영상을 제공받고, 운동 자세에 대한 가이드를 요청하는 사용자가 구비하는 단말 일 수 있다. In detail, the
사용자 단말(300)은 태블릿 PC(Tablet PC), 랩톱(Laptop), 개인용 컴퓨터(PC, Personal Computer), 스마트폰(Smart Phone), 개인 정보 단말기(PDA, Personal Digital Assistant), 이동통신 단말기(Mobile Communication Terminal) 및 노트북(NoteBook) 등의 다양한 단말을 포함할 수 있다.The
한편, 도 1에서는 듀얼 열화상 카메라(100)와 컴퓨팅 장치(200) 그리고 사용자 단말(300)이 각 별도의 장치로 표시하였지만, 각 듀얼 열화상 카메라(100)와 컴퓨팅 장치(200) 그리고 사용자 단말(300)은 하나의 컴퓨팅 장치에 구현될 수 있다. Meanwhile, in FIG. 1 , the dual
이하에서는 도 2를 이용하여 듀얼 열화상 카메라(100)로부터 수신한 영상들을 분석하고, 가이드 정보를 제공하는 컴퓨팅 장치에 대해서 상세하게 설명한다. Hereinafter, a computing device that analyzes images received from the dual
도 2는 본 발명의 실시예에 따른 컴퓨팅 장치를 나타낸 구성도이다. 2 is a block diagram illustrating a computing device according to an embodiment of the present invention.
도 2에 도시한 바와 같이, 컴퓨팅 장치(200)는 영상 수집부(210), 관절 위치 정보 생성부(220), 신체 자극 영역 생성부(230), 운동 자세 정보 생성부(240), 운동 자세 매칭부(250) 그리고 가이드 제공부(260)를 포함한다. As shown in FIG. 2 , the
설명을 위해, 영상 수집부(210), 관절 위치 정보 생성부(220), 신체 자극 영역 생성부(230), 운동 자세 정보 생성부(240), 운동 자세 매칭부(250) 그리고 가이드 제공부(260)로 명명하여 부르나, 이들은 적어도 하나의 프로세서에 의해 동작하는 컴퓨팅 장치이다. 여기서 영상 수집부(210), 관절 위치 정보 생성부(220), 신체 자극 영역 생성부(230), 운동 자세 정보 생성부(240), 운동 자세 매칭부(250) 그리고 가이드 제공부(260)는 하나의 컴퓨팅 장치에 구현되거나, 별도의 컴퓨팅 장치에 분산 구현될 수 있다. 별도의 컴퓨팅 장치에 분산 구현된 경우, 영상 수집부(210), 관절 위치 정보 생성부(220), 신체 자극 영역 생성부(230), 운동 자세 정보 생성부(240), 운동 자세 매칭부(250) 그리고 가이드 제공부(260)는 통신 인터페이스를 통해 서로 통신할 수 있다. 컴퓨팅 장치는 본 발명을 수행하도록 작성된 소프트웨어 프로그램을 실행할 수 있는 장치이면 충분하고, 예를 들면, 서버, 랩탑 컴퓨터 등일 수 있다. For explanation, an
영상 수집부(210)는 듀얼 열화상 카메라의 2개 채널로 대상자의 운동 자세를 촬영한 영상을 수집한다. 여기서, 2개 채널은 각각 RGB 영상과 열화상 영상을 나타낸다. The
관절 위치 정보 생성부(220)는 수집한 RGB 영상과 열화상 영상에 대해 주요 관절 위치 정보를 추출한다. The joint
예를 들어 관절 위치 정보 생성부(220)는 영상에 촬영된 사용자의 운동 동작에 따라 움직이는 주요 관절을 오픈포즈 API를 이용하여 컨피던스 맵을 생성할 수 있다. For example, the joint location
이때, 관절 위치 정보 생성부(220)는 2개의 채널 각각에 대해 컨피던스 맵을 생성하고, 두 개의 컨피던스 맵을 결합하여 하나의 컨피던스 맵을 생성한다. In this case, the joint location
생성된 컨피던스 맵은 사람의 관절(key point)이 있을 것이라고 예측되는 부분이 히트맵(heatmap)으로 표시된다. 그리고 관절 위치 정보 생성부(220)는 관절들간의 연결관계를 예측하기 위해 입력 영상에 대해서 2차원 벡터공간을 형성되는 어피니티 필드(Affinity field)와 컨피던스 맵의 관절(key point)을 서로 매칭하여 관절 위치 정보들을 생성한다. In the generated confidence map, a portion predicted to have a human key point is displayed as a heatmap. In addition, the joint
그리고 관절 위치 정보 생성부(220)는 다음 수학식 1과 2를 통해 하나의 컨피던스 맵을 생성한다. And the joint position
[수학식 1] [Equation 1]
여기서, Z는 트레이너(사용자)로부터 물체까지의 거리, H는 실제 사용자의 키(real world user height, cm 단위), F는 RGB 카메라의 초점 거리(focal length, mm 단위), w는 촬영된 RGB 이미지에서의 사용자 크기(object height in image sensor, mm 단위)를 나타낸다. where Z is the distance from the trainer (user) to the object, H is the real world user height (in cm), F is the focal length of the RGB camera (focal length, in mm), and w is the captured RGB Indicates the user size in the image (object height in image sensor, in mm).
여기서, w는 RGB 이미지의 밀리미터당 픽셀 계수를 RGB 이미지에서의 사용자 크기로 나눈 값으로 산출할 수 있다. Here, w may be calculated as a value obtained by dividing the pixel coefficient per millimeter of the RGB image by the user size in the RGB image.
[수학식 2][Equation 2]
여기서, d는 두 채널(열상 채널과 RGB 채널)에서 하나의 객체를 바라볼 때 시차값(disparity)으로 시야 간격, B는 카메라 렌즈 사이 거리(baseline), 그리고 F는 RGB 카메라의 초점 거리(focal length )를 나타낸다. Here, d is a disparity value when looking at one object in two channels (thermal channel and RGB channel), B is the distance between the camera lenses (baseline), and F is the focal length of the RGB camera (focal). length ).
이처럼 관절 위치 정보 생성부(220)는 시야 간격(d)를 산출하여 열상 컨피던스 맵에 적용함으로써 RGB 컨피던스 맵에 투영할 수 있다. As such, the joint
한편, 관절 위치 정보 생성부(220)는 관절 포인트를 중심으로 가우시안 가중치를 더해 가우시안 맵을 생성할 수 있다. 이때, 관절 포인트 각각에 대해서 개별적인 가우시안 맵을 생성할 수 있다. Meanwhile, the joint
관절 위치 정보 생성부(220)는 생성된 가우시안 맵에서 극대 값(local maxima)를 찾는다. 이때, 극대 값(Local maxima)이 일정 기준치 이하일 경우 제거하게 되며, 남은 극대 값들을 최종 관절로 산출할 수 있다. The joint
다음으로 신체 자극 영역 생성부(230)는 열화상 영상에서 일정한 시간이 지남에 따라 측정되는 온도 변화가 큰 영역을 추출하여 해당 영역을 신체 자극 영역으로 추정할 수 있다. Next, the body stimulation
신체 자극 영역 생성부(230)는 사용자의 관절 영역을 밝기로 표시한 열상 컨피던스 맵에 기초하여 운동 동작에 따른 밝기의 변화를 추출한다. The body stimulation
신체 자극 영역 생성부(230)는 열상 컨피던스 맵에서의 밝기 변화는 온도 변화로 추정 가능하며, 이를 통해 자극되는 영역을 추정할 수 있다. The body stimulation
예를 들어, RGB 영상에서 추출한 각 관절 위치 좌표에 대응되는 픽셀을 기준으로 상하 좌우 확장하여 3x3 픽셀의 크기를 추출하고, 추출한 3*3 픽셀 크기에 대응하는 9개의 픽셀의 평균 값을 해당 관절 위치에 대한 온도 값으로 산출할 수 있다. 이에 따라 해당 온도 값이 임계치 이상으로 변하는 경우, 해당 관절 위치 영역을 신체 자극 영역으로 추정할 수 있다. For example, the size of 3x3 pixels is extracted by extending up, down, left and right based on the pixels corresponding to each joint position coordinate extracted from the RGB image, and the average value of 9 pixels corresponding to the extracted 3*3 pixel size is calculated as the joint position It can be calculated as a temperature value for Accordingly, when the corresponding temperature value changes by more than the threshold value, the corresponding joint location area may be estimated as the body stimulation area.
신체 자극 영역 생성부(230)는 특정 운동 시작 전 영상과 운동 종료까지의 영상을 촬영하여 온도 변화가 가장 큰 관절 부위를 추출하여 DB에 저장할 수 있다. The body stimulation
운동 자세 정보 생성부(240)는 각 관절 위치 정보 생성부(220)와 신체 자극 영역 생성부(230)에서 생성한 관절 위치 정보와 신체 자극 영역을 각 운동 동작의 운동 자세마다 매칭하여 저장한다. The exercise posture
운동 자세 정보 생성부(240)는 사용자가 트레이너인 경우, 운동 동작 영상에 기초하여 관절 위치 정보와 신체 자극 영역을 메타 데이터로 함께 저장할 수 있다. When the user is a trainer, the exercise
상세하게 운동 자세 정보 생성부(240)는 분석한 운동 자세마다 주요 관절의 위치, 타겟 운동 부위(자극영역), 관절의 이동량, 관절간의 거리, 비율, 각도, 사용자의 중심점 등을 저장할 수 있다. In detail, the movement posture
운동 자세 매칭부(250)는 사용자의 관절 위치 정보와 신체 자극 영역에 대응하는 운동 자세 정보를 생성하면, 동일한 운동 자세에 대응하는 트레이너의 관절 위치 정보와 신체 자극 영역을 서로 비교한다. When the exercise
운동 자세 매칭부(250)는 먼저 사용자의 관절 위치 정보를 비교하여 외형적인 자세를 비교하고, 일정한 시간 동안에 의한 신체 자극 영역이 추정되면, 해당 신체 자극 영역에 대해서 비교한다. The exercise
그리고 가이드 제공부(260)는 사용자 운동 자세와 트레이너의 운동 자세 정보와 상이한 부분에 대해서 올바른 운동 자세로의 유도를 위한 피드백을 제공한다. In addition, the
이하에서는 도 3을 이용하여 컴퓨팅 장치(200)가 트레이너의 운동 동작을 분석하여 데이터베이스를 구축하는 과정에 대해서 상세하게 설명한다. Hereinafter, a process in which the
도 3은 본 발명의 실시예에 따른 컨피던스 맵을 결합하는 과정을 설명하기 위한 예시도이다. 3 is an exemplary diagram for explaining a process of combining a confidence map according to an embodiment of the present invention.
도 3의 (a)와 같이, 듀얼 열화상 카메라(100)는 듀얼(Dual) 카메라로 간격(B)을 가지는 촬영 모듈로 각각 열화상 영상과 RGB 영상을 촬영하면, 컴퓨터 장치(200)는 (b)와 같은 컨피던스 맵을 생성한다. As shown in (a) of FIG. 3 , the dual
컴퓨터 장치(200)는 물리적 위치가 서로 차이를 가지는 두 카메라의 관점 좌표를 정합하기 위해 물리적 차이를 고려하여 하나의 채널을 다른 하나의 채널로 투영시키고, 좌표들 중에서 가장 높은 컨피던스를 갖는 좌표를 찾는다. The
상세하게는 컴퓨팅 장치(200)는 산출한 시차 D(Disparity)를 적용하여 열상 채널에서 좌표 (x:100, y:75)의 지점을 RGB 채널에 투영한다. In detail, the
이에 따라 열상 채널에서 좌표(x:100, y:75)가 좌표(x:540, y:75)로 이동한다. Accordingly, the coordinates (x:100, y:75) in the thermal channel move to the coordinates (x:540, y:75).
도 4는 본 발명의 실시예에 따른 사람과 사람이외의 물체에 대한 컨피던스 맵을 나타낸 예시도이고, 도 5는 본 발명의 실시예에 따른 열화상 영상에 기초하여 신체 자극 영역을 분석하는 구성을 나타낸 예시도이다. 4 is an exemplary diagram illustrating a confidence map for a person and a non-human object according to an embodiment of the present invention, and FIG. 5 is a configuration for analyzing a body stimulation area based on a thermal image according to an embodiment of the present invention. It is an example diagram shown.
도 4의 (a)와 같이, 사람과 유사한 형태의 물체가 사람과 인접하게 위치하면, (b)에서와 같이, 사람의 머리 부분과 사람과 비슷한 물체에서 모두 머리 관절 부분을 검출한다. As shown in (a) of FIG. 4 , when an object having a shape similar to a person is located adjacent to a person, as in (b), a head joint part is detected from both a head part of a person and an object similar to a person.
이에 생성된 RGB 컨피던스 맵을 보면, 사람과 비슷한 물체에서도 일정 밝기 값을 얻을 수 있지만, 실제 사람 머리부분의 밝기 값에 대응하여 상대적으로 낮은 밝기 값을 얻는 것을 확인할 수 있다. Looking at the generated RGB confidence map, it can be seen that a certain brightness value can be obtained even from an object similar to a person, but a relatively low brightness value is obtained corresponding to the brightness value of the actual human head.
그러므로 사람과 비슷한 물체로 인한 오탐을 제거하기 위해 RGB 컨피던스 맵에 대한 오탐 임계치(threshold)를 설정한다. 해당 오탐 임계치는 물체에서 얻은 밝기 값과 사람에서 얻은 밝기 값의 중간 값으로 설정가능하다. Therefore, in order to eliminate false positives caused by human-like objects, a false positive threshold for the RGB confidence map is set. The false positive threshold can be set as an intermediate value between the brightness value obtained from an object and the brightness value obtained from a person.
다만, 이러한 밝기 값은 환경적 변화나 다른 외부적인 요인에 기초하여 변하기 때문에 정확한 오탐을 제거하기 위해서는 매번 오탐 임계치를 재조정해야 하는 불편함이 있다. However, since these brightness values change based on environmental changes or other external factors, it is inconvenient to readjust the false positive threshold each time to accurately remove false positives.
반면에, 사람이 아닌 물체는 사람과 동일하게 열을 발산하고 있지 않기 때문에 열화상 영상에 기초하여 생성한 열상 컨피던스 맵에서는 표시되지 않는다. On the other hand, since non-human objects do not radiate heat in the same way as humans, they are not displayed in the thermal confidence map generated based on the thermal image.
이에, 컴퓨터 장치(200)는 사람 형상의 물체에서도 사람과 같이 인식하는 오탐률이 있지만, 정확도가 높은 RGB 컨피던스 맵과 열을 기준으로 형성되기 때문에 오탐률이 낮지만 정확도가 다소 부족한 열상 컨피던스 맵을 결합하여 정확도를 향상시키면서 사람이 아닌 물체를 인식하는 오탐률을 개선시킨다. Accordingly, the
상세하게는 컴퓨터 장치(200)는 산출한 RGB 채널과 열상 채널간의 시차를 활용하여 열상 컨피던스 맵에 표현된 밝기 값들을 RGB 컨피던스 맵으로 이동시킨다. In detail, the
그리고 컴퓨터 장치(200)는 중복되어 표현된 밝기 값들을 각각 더하고 평균값을 산출한 후, 해당 평균 값으로 결합된 컨피던스 맵에 표시한다. Then, the
이를 통해 RGB 컨피던스 맵과 열상 컨피던스 맵에 모두 표시된 사람에 대한 밝기 값은 상대적으로 더 큰 값을 가지지만, 물체의 밝기 값은 열상 컨피던스 맵에는 표시되지 않기 때문에 평균 값을 산출하면 상대적으로 더 낮은 값을 가진다. Through this, the brightness value for a person displayed in both the RGB confidence map and the thermal confidence map has a relatively larger value, but since the brightness value of an object is not displayed in the thermal confidence map, when the average value is calculated, a relatively lower value have
도 4의 (b)에서 결합된 컨피던스 맵에서와 같이, 사람에 대한 밝기 값은 상대적으로 더 큰 값을 가지지만, 물체에 대한 밝기 값은 더 낮아져서 각 밝기 값에 대한 차이가 크게 나타나는 것을 알 수 있다. As in the combined confidence map in Fig. 4(b), it can be seen that the brightness value for a person has a relatively large value, but the brightness value for an object is lowered, so that the difference for each brightness value is large. there is.
이를 통해 컴퓨터 장치(200)는 환경의 변화에 영향을 받지 않고도 일정한 밝기 값을 나타내는 오탐 임계치(threshold)를 이용하여 특정 밝기 값을 가지는 포인트들을 제외함으로써 사람에 대한 인식률과 정확도를 높일 수 있다. Through this, the
도 5의 (a)는 RGB 영상에서 사람의 관절 형상을 도출한 것이고 (b)는 열화상 영상에서 사람의 관절 형상을 도출한 것이다. Fig. 5 (a) shows the human joint shape derived from the RGB image, and (b) is the human joint shape derived from the thermal image.
도 5의 (b)에서는 사람의 자세에 기초하여 발열되는 정도가 상이한 것으로 알 수 있다. 일반적으로 사람의 신체에서는 특정 영역에서 힘을 쓰고 있는 경우, 특정 영역에 대한 에너지 소모로 인한 발열 현상이 나타난다. It can be seen that the degree of heat generation is different based on a person's posture in (b) of FIG. 5 . In general, when the human body is exerting force in a specific area, heat is generated due to energy consumption in the specific area.
이를 통해 힘을 쓰는 영역인 자극이 되는 영역에 대해서 열화상의 밝기 값이 강하게 나타나는 것을 알 수 있다. Through this, it can be seen that the brightness value of the thermal image is strongly displayed in the area where the force is applied, which is the stimulation area.
이에 따라 도 (b)에는 사용자가 서 있는 자세에서 발목의 관절 부분에 자극이 강하게 가해지는 것을 알 수 있다. Accordingly, in FIG. (b), it can be seen that stimulation is strongly applied to the joint portion of the ankle in the standing posture of the user.
이러한 열화상의 밝기 값에 의해 컴퓨팅 장치(200)는 자극되는 관절 영역을 알 수 있으며, 동작의 반복이나 운동 지속 시간이 진행됨에 따라 사용자의 신체 일부에서 온도 변화가 크게 나타나면, 해당 동작으로 인한 신체 자극 영역으로 추정할 수 있다.By the brightness value of the thermal image, the
이하에서는 도 6을 이용하여 듀얼 열화상 카메라(100)로 촬영된 영상을 통해 운동 자세를 분석하는 과정을 상세하게 설명한다. Hereinafter, a process of analyzing an exercise posture through an image captured by the dual
도 6은 본 발명의 실시예에 따른 운동 자세를 분석하는 과정을 나타낸 흐름도이다. 6 is a flowchart illustrating a process of analyzing an exercise posture according to an embodiment of the present invention.
도 6에 도시한 바와 같이, 컴퓨팅 장치(200)는 트레이너의 운동 동작들을 촬영한 영상을 수집한다(S110). As shown in FIG. 6 , the
컴퓨팅 장치(200)는 트레이너에 대한 운동 동작을 듀얼 열화상 카메라(100)로 촬영하여 열화상 영상과 RGB 영상을 수집한다. 이때, 컴퓨팅 장치(200)는 트레이너에 대한 기본 정보를 수집할 수 있다. 예를 들어, 트레이너 이름, 경력, 키, 몸무게, 운동 동작 명, 해당 동작의 효과 등을 수집할 수 있다. The
그리고, 컴퓨팅 장치(200)는 RGB 채널에서 관절 포인트가 표시되는 컨피던스 맵을 생성한다(S120). 컴퓨팅 장치(200)는 열상 채널에서 관절 포인트가 표시되는 컨피던스 맵을 생성한다(S130).Then, the
S120 단계와 S130 단계는 동시에 구현이 가능하며, 상황에 따라 S130 단계가 먼저 수행되고 S120 단계가 진행될 수 있다. Steps S120 and S130 can be implemented at the same time, and depending on the situation, step S130 may be performed first and then step S120 may be performed.
다음으로 컴퓨팅 장치(200)는 RGB 컨피던스 맵과 열상 컨피던스 맵을 하나로 결합한다(S140). Next, the
이때, 하나의 듀얼 열화상 카메라 내에 물리적으로 상이한 위치의 촬영 모듈로 인해 RGB 채널과 열상 채널은 시야 간격(disparity)이 발생한다. At this time, due to the photographing module in a physically different position in one dual thermal imaging camera, a viewing distance between the RGB channel and the thermal imaging channel occurs.
그러므로 컴퓨터 장치(200)는 카메라의 물리적 위치를 보정하기 위한 시야 간격을 산출하고, 불일치를 이용하여 각 컨피던스 맵에 투영함으로써 결합할 수 있다. Therefore, the
상세하게는 컴퓨팅 장치(200)는 듀얼 열화상 카메라 자체의 정보(카메라의 초점 거리, 센서에 맺힌 상의 크기 등)와 트레이너의 키 정보를 이용하여 듀얼 열화상 카메라(100)와 트레이너와의 거리를 산출한다. In detail, the
그리고 컴퓨팅 장치(200)는 듀얼 열화상 카메라(100)와 트레이너와의 거리에 기초하여 열화상 영상에의 좌표(x1,y1)가 RGB 영상의 어느 위치에 있는지에 대한 시차를 산출한다.In addition, the
예를 들어, 열상 컨피던스 맵의 밝기 값들을 RGB 컨피던스 맵으로 이동시키고, RGB 컨피던스 맵의 밝기 값들과 열상 컨피던스 맵의 밝기 값들을 합한 후 평균을 구하여 결합된 컨피던스 맵에 밝기 값을 표시할 수 있다. For example, the brightness values of the thermal confidence map are moved to the RGB confidence map, the brightness values of the RGB confidence map and the brightness values of the thermal confidence map are summed, and the average is obtained, and the brightness value can be displayed on the combined confidence map.
이처럼 컴퓨터 장치(200)는 열상 컨피던스 맵에 시야 간격을 적용하여 해당 RGB 컨피던스 맵과 결합할 수 있다. As such, the
그리고 컴퓨팅 장치(200)는 결합된 컨피던스 맵에서 주요 관절 위치 정보를 획득 한다(S150). 결합된 컨피던스 맵에서 각 관절의 위치, 관절간의 연결 관계에 따른 각도 정보, 길이 정도 등을 획득할 수 있다. And the
컴퓨팅 장치(200)는 운동 동작을 수행하는 연속적인 운동 자세마다 온도 변화가 임계치 이상인 영역을 추출한다(S160).The
컴퓨팅 장치(200)는 촬영한 열화상 영상에서 온도 변화가 가장 큰 영역을 추출한다. 이때, 관절 영역에 대응하여 온도 변화를 체크할 수 있다. The
예를 들어, 컴퓨팅 장치(200)는 RGB 영상에서 추출한 각 관절 위치 좌표에 해당하는 픽셀을 기준으로 미리 설정된 픽셀만큼 확장하여 N개의 픽셀에 대한 평균값을 해당 관절 위치 좌표의 온도 값으로 추정할 수 있다. (N은 자연수)For example, the
여기서, 미리 설정된 픽셀이 1개로 가정하면 관절 위치 좌표에 대한 픽셀에서 상하좌우 그리고 대각선으로 1 픽셀씩 확장하여 3x3 픽셀의 크기로 확장할 수 있다. 이때, 컴퓨팅 장치(200)는 3x3 픽셀을 이루는 각 픽셀 값의 평균값을 관절 위치 좌표의 온도 값으로 추정가능하다. Here, if it is assumed that there is one preset pixel, the size of 3x3 pixels may be extended by one pixel at a time, up, down, left, right, and diagonally from the pixel for the joint position coordinates. In this case, the
여기서, 확장하는 픽셀의 수나 N개의 픽셀에 대해서는 추후에 관리자에 의해 용이하게 설정 및 변경 가능하다. 그러므로 컴퓨터 장치(200)는 특정 관절 주변 영역을 한정하고 특정 관절 주변 영역에 대한 온도 변화 값을 얻을 수 있다. 이를 데이터베이스에 저장 할 수 있다. Here, the number of pixels or N pixels to be expanded can be easily set and changed by an administrator later. Therefore, the
그리고 컴퓨팅 장치(200)는 관절 포인트의 좌표, 관절들간의 거리, 각도 그리고 자극 영역을 매칭하여 저장한다(S170).Then, the
컴퓨팅 장치(200)는 주요 관절 위치 정보 및 신체 자극 영역을 매칭하고 해당 운동 동작 정보에 기초하여 저장할 수 있다. The
그에 따라 컴퓨팅 장치(200)는 운동 동작에 포함되는 운동 자세마다 주요 관절의 위치, 타겟 운동 부위(자극영역), 관절의 이동량, 관절간의 거리, 비율, 각도, 사용자의 중심점을 매칭하여 연동되는 데이터베이스에 저장할 수 있다. Accordingly, the
한편, 컴퓨팅 장치(200)는 관절 포인트의 좌표, 관절들간의 거리, 각도 그리고 신체 자극 영역을 신경망에 입력하여 연속적인 운동 자세와 신체 자극 영역을 학습시킬 수 있다. Meanwhile, the
그에 따라 트레이너 영상으로부터 추출한 일련의 특징 값들로 RNN 네트워크를 학습한 후, 타임 t의 사용자 입력 영상에서 추출한 특징 값을 학습된 신경망에 입력할 경우 타임 t+1에서의 사용자의 바른 자세 및 신체 자극 영역을 추출 할 수 있다. Accordingly, after learning the RNN network with a series of feature values extracted from the trainer image, when the feature values extracted from the user input image at time t are input to the learned neural network, the user's correct posture and body stimulation area at time t+1 can be extracted.
이처럼 컴퓨팅 장치(200)는 학습된 신경망으로부터 얻은 바른 자세에 대한 상태값과 실제 사용자 입력값을 비교하여 자세 정확도를 확인할 수 있다. As such, the
여기서, 신경망은 순환 신경망(Recurrent neural network) 또는 재귀 신경망(Recursive neural network)을 의미하지만, 반드시 이에 한정하는 것은 아니다. Here, the neural network refers to a recurrent neural network or a recursive neural network, but is not limited thereto.
여기서, RNN 네트워크 학습을 위한 입력 데이터로는 오픈포즈 API를 통해 추출한 관절 포인트의 좌표, 관절들 간의 거리 및 각도들이 사용된다. Here, as input data for learning the RNN network, the coordinates of the joint points extracted through the open pose API, the distances and angles between the joints are used.
컴퓨팅 장치(200)는 트레이닝 데이터로 올바르게 운동하는 트레이너영상에서 추출한 관절좌표들로 RNN을 학습시킨다. 이를 통해 RNN 네트워크는 특정 운동에 대해 현재 좌표에 대한 옳은 다음 좌표를 학습하게 된다. The
상세하게는 컴퓨팅 장치(200)는 새로운 입력데이터에서 시점 t 에서의 추출한 관절 좌표가 주어지면 해당 좌표의 t+1지점의 좌표를 RNN 네트워크를 통해 예측한다. In detail, when the joint coordinates extracted at time t are given from new input data, the
그리고 컴퓨팅 장치(200)는 예측좌표와 사용자가 실제 위치한 좌표 사이의 거리가 거리 임계치보다 클 경우 해당 부위에 대한 올바른 위치를 사용자 단말(300)로 제공한다. In addition, when the distance between the predicted coordinates and the coordinates where the user is actually located is greater than the distance threshold, the
도 7은 본 발명의 실시예에 따른 사용자 운동 자세에 대한 피드백을 제공하는 과정을 나타낸 흐름도이다. 7 is a flowchart illustrating a process of providing feedback on a user's exercise posture according to an embodiment of the present invention.
도 7에 도시한 바와 같이, 컴퓨팅 장치(200)는 트레이너의 운동 동작에 대한 수신하여 타겟 영상 제공한다(S210). As shown in FIG. 7 , the
컴퓨팅 장치(200)는 사용자 단말(300)로부터 입력받은 조건에 대한 영상을 받으면 요청에 대응하는 타겟 영상과 타겟 영상에 대한 메타 데이터를 사용자 단말(300)로 전송할 수 있다. When the
여기서, 타겟 영상이란 특정 트레이너, 특정 운동 동작이나 운동 자세, 얻고자 하는 운동 효과, 강화하고 싶은 신체 부위 등 다양한 조건으로 분류된 영상들 중에서 사용자의 요청에 따른 영상을 의미한다. Here, the target image means an image according to a user's request among images classified into various conditions, such as a specific trainer, a specific exercise motion or exercise posture, an exercise effect to be obtained, and a body part to be strengthened.
그리고 컴퓨팅 장치(200)는 사용자 단말(300)로부터 타겟 영상을 요청받으면서, 사용자의 신체 정보를 입력받을 수 있다. In addition, the
예를 들어, 사용자의 고유ID, 사용자의 키, 몸무게, 운동 능력 등이 포함된 신체 정보를 입력받으면, 컴퓨팅 장치(200)는 사용자에 대한 데이터베이스에 사용자 고유 ID와 사용자 단말(300)의 고유 정보(전화번호, ID 등)를 매칭하여 저장할 수 있다. For example, when receiving body information including user's unique ID, user's height, weight, athletic ability, etc., the
추후에 이러한 정보는 사용자가 다시 운동 자세에 대한 피드백을 요청할 때, 별도의 입력이 없어도 저장된 해당 정보를 불러들여 사용자 정보에 기초한 운동 자세 분석을 수행할 수 있다. Later, when the user requests feedback on the exercise posture again for this information, the stored corresponding information may be called in without a separate input to perform exercise posture analysis based on the user information.
그리고 컴퓨팅 장치(200)는 이러한 타겟 영상을 실시간으로 사용자 단말(300)로 전송하거나 다운로드 형식으로 파일을 제공할 수 있다. In addition, the
다음으로 컴퓨팅 장치(200)는 사용자의 운동 자세를 듀얼 열화상 카메라(100)로 촬영한 영상을 수집한다(S220).Next, the
컴퓨팅 장치(200)는 듀얼 열화상 카메라(100)로 사용자의 운동 자세를 촬영한 RGB 영상과 열화상 영상을 수집한다. The
그리고 컴퓨팅 장치(200)는 듀얼 열화상 카메라의 영상에서 사용자 관절 위치 정보 및 신체 자극 영역 분석한다(S230).In addition, the
S220 단계와 S230 단계는 앞서 설명한 S120 단계에서부터 S160 단계와 동일한 방법으로 컴퓨팅 장치(200)는 사용자의 운동 자세를 분석하므로 중복되는 설명은 생략한다. In steps S220 and S230, the
다만, 컴퓨팅 장치(200)는 분석함에 있어서, 앞서 설명한 수학식 1에 입력받은 사용자의 키를 적용하여 사용자에 맞는 자세 분석을 수행할 수 있다. However, in the analysis, the
다음으로 컴퓨팅 장치(200)는 사용자 관절 위치 정보와 타겟 영상의 메타 데이터가 일치하는 지 확인한다(S240). Next, the
컴퓨팅 장치(200)는 분석된 사용자 자세 분석에 기초하여 해당 타겟 영상의 메타 데이터와 비교한다. 메타 데이터는 트레이너에 대한 자세 분석 데이터를 나타내며, 상세하게는 관절의 위치 및 관절간의 각도, 신체 자극 영역 등을 서로 비교한다. The
이에 먼저, 컴퓨팅 장치(200)는 관절 위치 정보를 기준으로 동일한 운동 자세에 대한 트레이너의 관절 위치 정보와 일치하는 지 확인할 수 있다. First of all, the
여기서 일치한다는 의미는 오차 범위 이내로 설정된 임계 범위 이내의 사용자의 관절 위치 정보와 트레이너의 관절 위치 정보가 있는 것을 의미한다. Here, the coincidence means that there is joint position information of the user and the joint position information of the trainer within the critical range set within the error range.
이때, 컴퓨팅 장치(200)는 관절 위치 정보가 메타 데이터에 포함된 트레이너의 관절 위치 정보와 상이한 경우, 자세 변경을 위한 피드백을 제공한다(S250). At this time, when the joint position information is different from the joint position information of the trainer included in the metadata, the
상세하게는 사용자 신체의 관절 각도, 관절의 위치에 따른 방향 등에 기초하여 트레이너의 관절 위치 정보와 일치하도록 유도하는 자세 변경을 제공할 수 있다. In detail, it is possible to provide a posture change that is induced to match the joint position information of the trainer based on the joint angle of the user's body, the direction according to the position of the joint, and the like.
컴퓨팅 장치(200)는 자세 변경에 대한 피드백을 제공한 후에 다시 S220 단계로 회귀하여 영상을 수집하고 실시간 사용자의 운동 자세를 분석한다. After providing feedback on the posture change, the
한편, 컴퓨팅 장치(200)는 관절 위치 정보가 메타 데이터에 포함된 트레이너의 관절 위치 정보와 일치한 경우, 사용자 신체 자극 영역과 타겟 영상의 메타 데이터가 일치하는 지 확인한다(S260). On the other hand, when the joint position information matches the joint position information of the trainer included in the metadata, the
이때, 컴퓨팅 장치(200)는 자세 유지에 대한 긍정적인 피드백을 제공할 수 있다. In this case, the
그리고 컴퓨팅 장치(200)는 운동 동작을 수행함에 있어서, 이전 시점에서 촬영된 열화상 영상에서 감지된 온도에 비해 사용자 관절 영역에서 변화가 큰 영역을 추출하여 사용자가 운동 동작을 수행함에 자극 되는 영역으로 추정한다. And, in performing the exercise operation, the
컴퓨팅 장치(200)는 추정된 신체 자극 영역이 메타 데이터에 포함된 트레이너의 신체 자극 영역과 상이한 경우, 신체 자극 영역 변경을 위한 피드백 제공한다. When the estimated body stimulation area is different from the body stimulation area of the trainer included in the metadata, the
예를 들어, 동일한 외형적인 운동 자세를 하고 있더라도 신체의 무게 중심을 어디에 두는 지에 따라서 자극되는 근육이 달라질 수 있다. For example, the muscles stimulated may vary depending on where the body's center of gravity is placed, even if the same external exercise posture is used.
이에, 컴퓨팅 장치(200)는 올바른 운동 자세로 유도하는 신체 자극 영역에 자극이 갈 수 있도록 사용자의 무게 중심이 이동하도록 요청하거나 배 또는 엉덩이와 같은 특정 신체 부위에 힘을 주도록 하는 등 신체 자극 영역 변경되도록 피드백을 제공할 수 있다. Accordingly, the
그리고 컴퓨팅 장치(200)는 신체 자극 영역 변경을 위한 피드백을 제공한 후에 다시 S220 단계로 회귀하여 영상을 수집하고 실시간 사용자의 운동 자세 그리고 신체 자극 영역을 분석한다. And, after providing feedback for changing the body stimulation area, the
한편, 컴퓨팅 장치(200)는 신체 자극 영역이 메타 데이터에 포함된 트레이너의 신체 자극 영역과 일치한 경우, 자세 유지를 위한 피드백 제공한다. Meanwhile, when the body stimulation area matches the body stimulation area of the trainer included in the metadata, the
컴퓨팅 장치(200)는 타겟 영상에 설정된 반복 횟수, 유지 시간 등에 기초하여 자세 유지에 대한 긍정적인 피드백을 제공할 수 있다. The
컴퓨팅 장치(200)는 타겟 영상 또는 타겟 영상 이내에 하나의 운동 동작, 또는 운동 자세 등에 기초하여 이와 같은 과정을 반복하여 사용자의 운동 자세를 분석하고 비교하여 피드백을 제공할 수 있다. The
도 8은 본 발명의 실시예에 따른 피드백 제공 화면을 나타낸 예시도이다. 8 is an exemplary diagram illustrating a feedback providing screen according to an embodiment of the present invention.
도 8에 도시한 바와 같이, 컴퓨팅 장치(200)는 사용자의 운동 자세와 해당 운동 자세의 올바른 모습을 함께 제공할 수 있다. As shown in FIG. 8 , the
컴퓨팅 장치(200)는 사용자를 촬영한 영상으로 RGB 영상과 올바른 운동 자세를 함께 제공하면서, 어떤 관절 또는 근육을 사용해야 하는지에 대한 정보를 함께 전달할 수 있다.The
이때, 사용자가 잘못된 자세로 운동 동작을 수행하는 경우, 일정한 단계별로 전달하는 내용을 설정할 수 있다. At this time, when the user performs an exercise motion with an incorrect posture, it is possible to set the content to be delivered in a certain step.
예를 들어, 사용자의 운동 자세가 올바른 운동 자세와 다양한 관절의 영역에서 차이가 있다면, 해당 운동 자세를 구현하기 위한 일반적인 정보를 제공할 수 있다. 또는 사용자의 운동 자세가 올바른 운동 자세에 비해 무릎 각도만 상이하다면, 사용자의 운동 자세와 올바른 운동 자세에서 무릎 각도에 대한 정보만 확대하여 현재 사용자 운동 자세에서 형성되는 무릎 각도가 어떻게 차이가 있는지를 비교 사진이나 사용자가 무릎의 각도를 어떻게 변경해야 하는지에 대한 정보를 제공할 수 있다.For example, if the user's exercise posture is different from the correct exercise posture in various joint areas, general information for implementing the exercise posture may be provided. Or, if the user's exercise posture differs only in the knee angle compared to the correct exercise posture, compare the difference in the knee angle formed in the current user's exercise posture by expanding only the information on the user's exercise posture and the knee angle in the correct exercise posture It can provide pictures or information about how the user should change the angle of the knee.
이외에도 컴퓨터 장치(200)는 사용자의 운동 자세와 올바른 운동 자세를 360도 회전을 통해 제공 가능하며, 현재 사용자의 잘못된 운동 자세로 인해 유발되는 통증의 종류를 안내할 수 있다. In addition, the
이러한 피드백 정보는 추후에 관리자에 의해 용이하게 변경 및 설계 가능하다. Such feedback information can be easily changed and designed by an administrator later.
도 9은 본 발명의 실시예에 따른 컴퓨팅 장치의 하드웨어 구성도이다9 is a hardware configuration diagram of a computing device according to an embodiment of the present invention;
도 9에 도시한 바와 같이, 컴퓨팅 장치(400)의 하드웨어는 적어도 하나의 프로세서(410), 메모리(420), 스토리지(430), 통신 인터페이스(440)를 포함할 수 있고, 버스를 통해 연결될 수 있다. 이외에도 입력 장치 및 출력 장치 등의 하드웨어가 포함될 수 있다. 컴퓨팅 장치(300)는 프로그램을 구동할 수 있는 운영 체제를 비롯한 각종 소프트웨어가 탑재될 수 있다.As shown in FIG. 9 , the hardware of the
프로세서(410)는 컴퓨팅 장치(400)의 동작을 제어하는 장치로서, 프로그램에 포함된 명령들을 처리하는 다양한 형태의 프로세서(410)일 수 있고, 예를 들면, CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 등 일 수 있다. 메모리(420)는 본 발명의 동작을 실행하도록 기술된 명령들이 프로세서(410)에 의해 처리되도록 해당 프로그램을 로드한다. 메모리(320)는 예를 들면, ROM(read only memory), RAM(random access memory) 등 일 수 있다. 스토리지(430)는 본 발명의 동작을 실행하는데 요구되는 각종 데이터, 프로그램 등을 저장한다. 통신 인터페이스(440)는 유/무선 통신 모듈일 수 있다.The
실시예에 따르면 사용자의 운동 동작에서 정확한 운동 자세뿐 아니라 자극되는 근육 부위를 확인하여 자세 교정 가이드를 제공함으로써, 사용자의 운동 동작에 대한 이해도를 높이고 운동 동작으로 얻는 효과를 극대화할 수 있다. According to the embodiment, by providing a posture correction guide by checking not only the correct exercise posture but also the muscle parts stimulated in the user's exercise movement, it is possible to increase the understanding of the user's exercise movement and maximize the effect obtained from the exercise movement.
실시예에 따르면, RBG 채널과 열상 채널을 함께 이용하여 사용자의 운동 동작을 분석함으로써, 가려진 부분이나 사람의 형상과 유사한 외부 물체를 인식하는 오탐률을 개선하고 사람을 인식하는 정확도를 향상시킬 수 있다. According to an embodiment, by analyzing the user's movement motion using the RBG channel and the thermal image channel together, it is possible to improve the false positive rate for recognizing a hidden part or an external object similar to the shape of a person and improve the accuracy of recognizing a person. .
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있다.The embodiment of the present invention described above is not implemented only through the apparatus and method, and may be implemented through a program for realizing a function corresponding to the configuration of the embodiment of the present invention or a recording medium in which the program is recorded.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improvements by those skilled in the art using the basic concept of the present invention as defined in the following claims are also provided. is within the scope of the right.
Claims (13)
듀얼 열화상 카메라를 통해 사용자의 운동 동작이 촬영된 영상을 수신하는 단계,
상기 듀얼 열화상 카메라의 RGB 채널과 열상 채널에 기초하여 생성된 컨피던스 맵을 결합하고, 결합된 컨피던스 맵에서 상기 사용자의 주요 관절 위치 정보를 획득하는 단계,
상기 사용자가 운동 동작을 수행하는 중에서 상기 열상 채널에 의해 추정되는 온도 변화가 온도 임계치 이상인 관절 영역을 신체 자극 영역으로 추출하는 단계, 그리고
상기 주요 관절 위치 정보 및 상기 신체 자극 영역을 매칭하는 단계
를 포함하는 운동 자세 분석 방법.A method for a computing device operated by at least one processor to analyze an exercise posture, comprising:
Receiving an image of the user's exercise motion through the dual thermal imaging camera,
Combining the confidence map generated based on the RGB channel and the thermal image channel of the dual thermal imaging camera, and obtaining the main joint position information of the user from the combined confidence map;
extracting, as a body stimulation region, a joint region in which a temperature change estimated by the thermal image channel is greater than or equal to a temperature threshold while the user performs an exercise motion; and
Matching the main joint position information and the body stimulation area
Exercise posture analysis method comprising a.
상기 주요 관절 위치 정보를 획득하는 단계는,
상기 RGB 채널과 상기 열상 채널에 대해 각각 오픈 포즈 API를 이용하여 관절 위치로 추정되는 지점마다 히트맵으로 표시되는 각각의 컨피던스 맵을 생성하는 운동 자세 분석 방법.In claim 1,
The step of obtaining the main joint position information is,
An exercise posture analysis method for generating each confidence map displayed as a heat map for each point estimated as a joint position by using an open pose API for the RGB channel and the thermal image channel, respectively.
상기 주요 관절 위치 정보를 획득하는 단계는,
입력받은 사용자의 키 정보에 기초하여 상기 듀얼 열화상 카메라와 상기 사용자 간의 거리를 산출하고, 상기 거리에 기초하여 상기 RGB 채널과 상기 열상 채널에 대한 시야 간격(disparity)을 산출하는 단계, 그리고
상기 열상 채널의 추정된 관절 위치 지점에 상기 시야 간격을 적용하여 상기 RGB 채널로 이동시키는 단계,
를 포함하는 운동 자세 분석 방법.In claim 2,
The step of obtaining the main joint position information is,
Calculating a distance between the dual thermal imaging camera and the user based on the received user's key information, and calculating a viewing distance for the RGB channel and the thermal imaging channel based on the distance; And
moving to the RGB channel by applying the viewing distance to the estimated joint position of the thermal image channel;
Exercise posture analysis method comprising a.
상기 주요 관절 위치 정보를 획득하는 단계는,
상기 RGB 채널로 이동시킨 상기 열상 채널의 관절 위치 지점의 밝기 값과 동일한 지점에서의 상기 RGB 채널의 관절 위치 지점 밝기 값을 더한 값에 평균을 산출하여 결합된 컨피던스 맵에 표시하는 운동 자세 분석 방법.In claim 3,
The step of obtaining the main joint position information is,
Motion posture analysis method of calculating an average of the sum of the brightness value of the joint position point of the thermal image channel moved to the RGB channel and the brightness value of the joint position point of the RGB channel at the same point and displaying the average on the combined confidence map.
상기 매칭하는 단계는,
상기 운동 동작에 대한 정보를 입력받으면, 상기 운동 동작에 포함되는 운동 자세마다 주요 관절의 위치, 타겟 운동 부위(자극영역), 관절의 이동량, 관절간의 거리, 비율, 각도, 사용자의 중심점의 적어도 하나 이상을 매칭하여 연동되는 데이터베이스에 저장하는 운동 자세 분석 방법.In claim 4,
The matching step is
Upon receiving the information on the movement motion, at least one of the position of the main joint, the target movement area (stimulation area), the movement amount of the joint, the distance between the joints, the ratio, the angle, and the center point of the user for each movement posture included in the movement motion. An exercise posture analysis method that matches the above and stores it in an interlocking database.
상기 운동 동작마다 관절 포인트의 좌표, 관절들 간의 거리 및 각도를 포함한 상기 주요 관절 위치 정보를 신경망에 입력하여 운동 동작마다의 올바른 자세 좌표를 학습시키는 단계를 더 포함하는 운동 자세 분석 방법.In claim 5,
The exercise posture analysis method further comprising the step of inputting the main joint position information, including coordinates of joint points, distances and angles between joints, into a neural network for each movement movement to learn correct posture coordinates for each movement movement.
선택받은 운동 동작에 대한 타겟 영상을 제공하면서, 사용자의 운동 자세를 촬영한 RGB 영상과 열화상 영상을 수집하는 동작,
상기 RGB 영상과 상기 열화상 영상에 기초하여 상기 사용자의 관절 위치 정보와 신체 자극 영역을 획득하는 동작,
획득된 사용자의 관절 위치 정보와 신체 자극 영역을 상기 타겟 영상의 메타 데이터에 저장된 관절 위치 정보와 신체 자극 영역과 비교하여 일치하면 운동 자세 유지를 위한 피드백을 제공하고, 일치하지 않으면 자세 변경 또는 신체 자극 영역 변경을 위한 피드백을 제공하는 동작
을 실행하는 명령어들을 포함하는 프로그램.A program stored in a computer-readable storage medium and executed by a processor, comprising:
The operation of collecting RGB images and thermal images of the user's exercise posture while providing the target image for the selected exercise motion;
obtaining joint position information and body stimulation region of the user based on the RGB image and the thermal image;
If the obtained user's joint position information and body stimulation region match with the joint position information stored in the metadata of the target image and the body stimulation region, feedback for maintaining the exercise posture is provided. Actions that provide feedback for area changes
A program containing instructions to execute
상기 획득하는 동작은
상기 RGB 영상과 상기 열화상 영상에 대해 각각 오픈 포즈 API를 이용하여 관절 위치로 추정되는 지점마다 히트맵으로 표시하는 컨피던스 맵을 각각 생성하고, 2차원 벡터 공간에 상기 컨피던스 맵을 매칭하여 상기 관절 위치 정보를 획득하는 프로그램.In claim 7,
The action to obtain is
For the RGB image and the thermal image, each of the open pose APIs is used to generate a confidence map that is displayed as a heat map for each point estimated as a joint position, and matches the confidence map in a two-dimensional vector space to the joint position Programs to obtain information.
상기 획득하는 동작은
상기 RGB 영상과 상기 열화상 영상에 대해 각각 컨피던스 맵을 생성한 후, 상기 RGB 영상과 상기 열화상 영상에 대한 시야 간격(disparity)을 산출하여 산출된 시야 간격을 적용하여 하나의 컨피던스 맵으로 결합하는 프로그램.In claim 8,
The action to obtain is
After generating a confidence map for the RGB image and the thermal image, respectively, calculating a disparity for the RGB image and the thermal image, applying the calculated viewing distance, and combining them into one confidence map program.
상기 획득하는 동작은
입력받은 상기 사용자의 키 정보, 카메라의 초점 거리 그리고 센서에 맺힌 상의 크기에 기초하여 듀얼 열화상 카메라와 상기 사용자 간의 거리를 산출하고, 상기 거리에 기초하여 카메라 렌즈 사이 거리와 초점 거리에 따라 상기 RGB 영상과 상기 열화상 영상에 대한 시야 간격을 산출하는 프로그램. In claim 9,
The action to obtain is
The distance between the dual thermal imaging camera and the user is calculated based on the received key information of the user, the focal length of the camera, and the size of the image formed on the sensor, and the RGB according to the distance between the camera lenses and the focal length based on the distance A program for calculating the viewing distance between the image and the thermal image.
상기 획득하는 동작은
상기 운동 동작을 수행하는 중에서 상기 열화상 영상에 의해 추정되는 온도 변화가 온도 임계치 이상인 관절 영역을 상기 신체 자극 영역으로 획득하는 프로그램.In claim 7,
The action to obtain is
A program for acquiring, as the body stimulation region, a joint region in which a temperature change estimated by the thermal image is equal to or greater than a temperature threshold while performing the exercise motion.
상기 타겟 영상에 포함된 연속적인 운동 동작들에 기초하여 신경망을 학습시키고, 상기 사용자의 관절 위치 정보와 신체 자극 영역을 학습된 신경망에 입력하여 다음 운동 동작에 대한 사용자의 바른 자세와 신체 자극 영역을 추출하는 동작을 실행하는 명령어들을 더 포함하는 프로그램.In claim 7,
A neural network is trained on the basis of the continuous movement movements included in the target image, and the user's joint position information and body stimulation region are input to the learned neural network to determine the user's correct posture and body stimulation region for the next exercise operation. A program further comprising instructions for executing an extracting operation.
상기 추출하는 동작은,
상기 신경망을 통해 획득한 사용자의 바른 자세와 신체 자극 영역에 기초하여 실시간으로 획득한 사용자의 관절 위치 정보와 신체 자극 영역을 비교하여 운동 자세와 신체 자극 영역의 정확도를 산출하여 피드백을 제공하는 프로그램.In claim 12,
The extraction operation is
A program for providing feedback by comparing the user's joint position information and the body stimulation area acquired in real time based on the user's correct posture and body stimulation area obtained through the neural network to calculate the accuracy of the exercise posture and body stimulation area.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200143714A KR20220058790A (en) | 2020-10-30 | 2020-10-30 | Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200143714A KR20220058790A (en) | 2020-10-30 | 2020-10-30 | Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220058790A true KR20220058790A (en) | 2022-05-10 |
Family
ID=81591821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200143714A KR20220058790A (en) | 2020-10-30 | 2020-10-30 | Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20220058790A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115970178A (en) * | 2023-01-28 | 2023-04-18 | 西安交通大学第二附属医院 | Infrared therapeutic instrument for lower limbs |
KR102578469B1 (en) | 2022-08-23 | 2023-09-14 | 주식회사 엘리펀트에이아이 | Systme for providing posture and motion correction information of user using expert posture and motion analysis imformation |
-
2020
- 2020-10-30 KR KR1020200143714A patent/KR20220058790A/en active Search and Examination
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102578469B1 (en) | 2022-08-23 | 2023-09-14 | 주식회사 엘리펀트에이아이 | Systme for providing posture and motion correction information of user using expert posture and motion analysis imformation |
CN115970178A (en) * | 2023-01-28 | 2023-04-18 | 西安交通大学第二附属医院 | Infrared therapeutic instrument for lower limbs |
CN115970178B (en) * | 2023-01-28 | 2023-10-13 | 西安交通大学第二附属医院 | Lower limb infrared therapeutic instrument |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11069144B2 (en) | Systems and methods for augmented reality body movement guidance and measurement | |
US11967101B2 (en) | Method and system for obtaining joint positions, and method and system for motion capture | |
US12033076B2 (en) | Systems and methods for assessing balance and form during body movement | |
CN111881887A (en) | Multi-camera-based motion attitude monitoring and guiding method and device | |
Chaudhari et al. | Yog-guru: Real-time yoga pose correction system using deep learning methods | |
JP2022536354A (en) | Behavior prediction method and device, gait recognition method and device, electronic device, and computer-readable storage medium | |
KR20220058790A (en) | Exercise posture analysis method using dual thermal imaging camera, guide method for posture correction and computer program implementing the same method | |
CN114022512A (en) | Exercise assisting method, apparatus and medium | |
CN111967407A (en) | Action evaluation method, electronic device, and computer-readable storage medium | |
CN114092863A (en) | Human body motion evaluation method for multi-view video image | |
CN116129524B (en) | Automatic gesture recognition system and method based on infrared image | |
CN114639168B (en) | Method and system for recognizing running gesture | |
JP7482471B2 (en) | How to generate a learning model | |
KR20230018239A (en) | Remote rehabilitation system and method using real-time pose estimation | |
Torres et al. | Detection of proper form on upper limb strength training using extremely randomized trees for joint positions | |
KR20210076559A (en) | Apparatus, method and computer program for generating training data of human model | |
KR20210067718A (en) | Apparatus and method for providing feedback on golf swing motion | |
Kunishima et al. | Gait Condition Assessment Methods for Visualizing Interventional Expertise by Means of Posture Detection | |
US11861944B1 (en) | System for synchronizing video output based on detected behavior | |
CN111435535A (en) | Method and device for acquiring joint point information | |
WO2024024055A1 (en) | Information processing method, device, and program | |
CN113569743B (en) | Body building assessment method and system based on limb identification technology | |
JP7156655B1 (en) | Monitoring system, monitoring method, and learning method for image recognition device for monitoring system | |
US20230368415A1 (en) | Skeleton recognition method, non-transitory computer-readable recording medium, and gymnastics scoring assist system | |
Chen et al. | Digital Twin Coaching for Openpose |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |