KR20220063847A - Electronic device for identifying human gait pattern and method there of - Google Patents

Electronic device for identifying human gait pattern and method there of Download PDF

Info

Publication number
KR20220063847A
KR20220063847A KR1020200149421A KR20200149421A KR20220063847A KR 20220063847 A KR20220063847 A KR 20220063847A KR 1020200149421 A KR1020200149421 A KR 1020200149421A KR 20200149421 A KR20200149421 A KR 20200149421A KR 20220063847 A KR20220063847 A KR 20220063847A
Authority
KR
South Korea
Prior art keywords
angle
link
subject
joint
information
Prior art date
Application number
KR1020200149421A
Other languages
Korean (ko)
Other versions
KR102436906B1 (en
Inventor
윤상석
김종욱
Original Assignee
신라대학교 산학협력단
동아대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 신라대학교 산학협력단, 동아대학교 산학협력단 filed Critical 신라대학교 산학협력단
Priority to KR1020200149421A priority Critical patent/KR102436906B1/en
Publication of KR20220063847A publication Critical patent/KR20220063847A/en
Application granted granted Critical
Publication of KR102436906B1 publication Critical patent/KR102436906B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Abstract

The present invention relates to a method for identifying the walking pattern of a target and an electronic device performing the same. In particular, a method for a robot device to identify the walking pattern of a target according to one embodiment of the present invention may comprise: a step of filming a target by means of a camera connected to the robot device to acquire an image; a step of generating human body skeleton information from the acquired image; a step of identifying the filming angle of the camera with respect to the target based on the connecting relationship of at least one link in the generated human body skeleton information; a step of determining the joint information of the robot model based on the identified filming angle of the camera; and a step of identifying the walking pattern of the target by performing a posture simulation of a humanoid robot based on the determined joint information. Therefore, the method for identifying the walking pattern of a target by using the humanoid robot model and the electronic device performing the same may be provided.

Description

대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치 {ELECTRONIC DEVICE FOR IDENTIFYING HUMAN GAIT PATTERN AND METHOD THERE OF}A method for identifying a subject's gait pattern and an electronic device for performing the same

본 개시는 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치에 관한 것이다. 보다 상세하게는 휴머노이드 로봇 모델을 이용하여 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치에 관한 것이다.The present disclosure relates to a method for identifying a gait pattern of a subject and an electronic device for performing the same. More particularly, it relates to a method of identifying a gait pattern of a subject using a humanoid robot model, and an electronic device for performing the same.

병원이나 요양원에서 의료에 필요한 자동 건강상태 측정 및 모니터링을 위한 보행 패턴 기술들이 개발되고 있다. 특히 사람의 동작 인식 또는 자세 추정 기술은 이미지 내지 영상을 분석함으로써 수행되고 있으며 다양한 융합 기술에 기초하여 활발하게 연구되고 있다.In hospitals or nursing homes, gait pattern technologies for automatic health measurement and monitoring necessary for medical care are being developed. In particular, human motion recognition or posture estimation techniques are being performed by analyzing images or images, and are being actively studied based on various fusion techniques.

또한, 이미지 또는 영상을 분석함으로써 2D차원의 자세 분석, 3D차원의 자세 분석에 대한 연구가 활발하게 진행되고 있으며, 보다 상세하게는 사람의 신체 구조에 대응되는 골격 모델을 생성하고, 생성된 골격 모델 내 관절 각도 등을 추정함으로써 수행된다.In addition, by analyzing images or images, research on 2D-dimensional posture analysis and 3D-dimensional posture analysis is being actively conducted. This is done by estimating my joint angle, etc.

한편, 인공 지능 기술은 종래 규칙(Rule) 기반 시스템과 달리 스스로 학습하고, 똑똑해지는 시스템으로서 영상 처리, 음성 처리 등 다양한 분야에서 사용되고 있다. 최근 심층 신경망(deep neural network, DNN) 알고리즘이 다양한 머신 러닝 분야에 사용되며 성능 향상이 크게 이루어지고 있으며 이를 통한 영상 처리 기술을 통한 영상 인식 기술이 적용된 제품들 역시 공개되고 있다.On the other hand, artificial intelligence technology is used in various fields such as image processing and voice processing as a system that learns by itself and becomes smart unlike the conventional rule-based system. Recently, a deep neural network (DNN) algorithm is used in various machine learning fields, and performance is greatly improved.

종래 사람의 자세를 분석하기 위해 인체의 모형을 모방한 인체 모델을 활용하여 사람의 보행 패턴, 자세 등을 분석하기 위한 기술들이 연구되어 왔으나, 실제 사람의 정확한 자세를 추정 하는 데는 한계가 있다. 따라서, 사람의 보행 패턴 내지 자세를 보다 정확하게 식별하기 위한 기술 개발이 요구되고 있다.In order to analyze a person's posture, techniques for analyzing a person's gait pattern, posture, etc. have been studied using a human body model that imitates a human body model. Accordingly, there is a demand for technology development for more accurately identifying a person's gait pattern or posture.

한국공개특허 제2020-0084567호Korean Patent Publication No. 2020-0084567

일 실시 예에 따르면, 전자 장치가 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치가 제공될 수 있다.According to an embodiment, a method for an electronic device to identify a gait pattern of a subject and an electronic device for performing the same may be provided.

일 실시 예에 의하면, 휴머노이드 로봇 모델을 이용하여 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치가 제공될 수 있다.According to an embodiment, a method for identifying a gait pattern of a subject using a humanoid robot model and an electronic device for performing the same may be provided.

상술한 기술적 과제를 달성하기 위한 본 개시의 일 실시 예에 따라, 전자 장치가 대상자의 보행 패턴을 식별하는 방법은 상기 전자 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 영상을 획득하는 단계; 획득된 상기 이미지로부터 인체골격 정보를 생성하는 단계; 상기 생성된 인체골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는 단계; 상기 카메라의 촬영 각도에 기초하여 상기 로봇 모델의 관절 정보를 결정하는 단계; 및 상기 결정된 관절 정보에 기초하여 휴머노이드 로봇 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는 단계; 를 포함할 수 있다.According to an embodiment of the present disclosure for achieving the above-described technical problem, a method for an electronic device to identify a gait pattern of a subject includes: acquiring an image by photographing the subject through a camera connected to the electronic device; generating human skeleton information from the acquired image; identifying a photographing angle of the camera with respect to the subject based on a connection relationship of at least one link in the generated human skeleton information; determining joint information of the robot model based on the photographing angle of the camera; and identifying a gait pattern of the subject by executing a humanoid robot posture simulation based on the determined joint information; may include

또한, 상기 기술적 과제를 해결하기 위한 본 개시의 또 다른 실시 예에 따라, 대상자의 보행 패턴을 식별하는 전자 장치는 네트워크 인터페이스; 하나 이상의 인스트럭션을 저장하는 메모리; 및 적어도 하나의 프로세서; 를 포함하고, 상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 전자 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 영상을 획득하고, 상기 영상으로부터 획득된 인체골격 정보를 생성하고, 상기 생성된 인체골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하고, 상기 카메라의 촬영 각도에 기초하여 상기 로봇 모델의 관절 정보를 결정하고, 상기 결정된 관절 정보에 기초하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별할 수 있다.In addition, according to another embodiment of the present disclosure for solving the above technical problem, an electronic device for identifying a gait pattern of a subject includes: a network interface; a memory storing one or more instructions; and at least one processor; including, wherein the at least one processor obtains an image by photographing the subject through a camera connected to the electronic device by executing the one or more instructions, generates human skeleton information obtained from the image, and generates the Identifies the photographing angle of the camera for the subject based on the connection relationship of at least one link in the human skeleton information, determines the joint information of the robot model based on the photographing angle of the camera, and the determined joint information It is possible to identify the subject's gait pattern by executing a posture simulation of the humanoid robot based on the

또한, 상기 기술적 과제를 해결하기 위한 본 개시의 또 다른 실시 예에 따라, 전자 장치가 대상자의 보행 패턴을 식별하는 방법에 있어서, 상기 전자 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 영상을 획득하는 단계; 상기 획득된영상으로부터 인체골격 정보를 생성하는 단계; 상기 생성된 인체골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는 단계; 상기 카메라의 촬영 각도에 기초하여 상기 로봇 모델의 관절 정보를 결정하는 단계; 및 상기 결정된 관절 정보에 기초하여 휴머노이드 로봇 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는 단계; 를 포함하는 방법을 수행하도록 하는 프로그램이 저장된 컴퓨터로 읽을 수 있는 기록 매체가 제공될 수 있다.In addition, according to another embodiment of the present disclosure for solving the technical problem, in a method for an electronic device to identify a subject's gait pattern, acquiring an image by photographing the subject through a camera connected to the electronic device step; generating human skeleton information from the acquired image; identifying a photographing angle of the camera with respect to the subject based on a connection relationship of at least one link in the generated human skeleton information; determining joint information of the robot model based on the photographing angle of the camera; and identifying a gait pattern of the subject by executing a humanoid robot posture simulation based on the determined joint information; A computer-readable recording medium in which a program for performing a method including a method is stored may be provided.

도 1은 일 실시 예에 따른 전자 장치가 대상자의 보행 패턴을 식별하는 과정을 개략적으로 설명하기 위한 도면이다.
도 2는 일 실시 예에 따른 DH 법을 이용한 인접 좌표계 간의 기하학적 관계를 나타내는 도면이다.
도 3은 일 실시 예에 따른 로봇 모델 하체의 관절-링크 모델을 설명하기 위한 도면이다.
도 4는 일 실시 예에 따른 인체의 3가지 평면을 설명하기 위한 도면이다.
도 5는 일 실시 예에 따른 로봇 모델 상체의 관절-링크 모델을 설명하기 위한 도면이다.
도 6은 일 실시 예에 따른 신경망 모델에서 인식한 관절 및 관절 사이를 연결하는 링크를 설명하기 위한 도면이다.
도 7은 일 실시 예에 따라 3차원 물체를 관상면과 시상면에 투영했을 때의 관계를 위한 도면이다.
도 8은 사람과 카메라의 각도 관계를 설명하기 위한 도면이다.
도 9는 일 실시 예에 따라 두 링크가 이르는 각도를 설명하기 위한 도면이다.
도 10은 또 다른 실시 예에 따라 두 링크가 이루는 각도를 설명하기 위한 도면이다.
도 11은 또 다른 실시 예에 따라 두 링크가 이루는 각도를 설명하기 위한 도면이다.
도 12는 일 실시 예에 따라 사람이 정면을 향할 때 또는 오른쪽을 향할 때 신경망 모델에서 인식한 골격 모델을 설명하기 위한 도면이다.
도 13은 일 실시 예에 따라 사람이 오른쪽, 정면, 왼쪽을 향할 때의 신경망 모델에서 인식한 골격 모델을 설명하기 위한 도면이다.
도 14는 일 실시 예에 따라 사람이 오른쪽과 왼쪽을 향할 때 인식된 신경망 골격 모델을 설명하기 위한 도면이다.
도 15는 일 실시 예에 따라 얼굴 링크와 몸통 링크의 사이각을 설명하기 위한 도면이다.
도 16은 일 실시 예에 따라 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.
도 17은 일 실시 예에 따라 서있는 로봇 모델 하체의 관절-링크 모델을 나타내는 도면이다.
도 18은 일 실시 예에 따라 오른쪽 고관절 관상면 각도를 계산하기 위한 도면이다.
도 19는 일 실시 예에 따라 왼쪽 고관절 관상면 각도를 게산하기 위한 도면이다.
도 20은 일 실시 예에 따라 로봇 모델 상체의 관절-링크 모델을 설명하기 위한 도면이다.
도 21은 일 실시 예에 따른 오른쪽 및 왼쪽 어깨 관절 각도를 계산하기 위한 도면이다.
도 22는 일 실시 예에 따라 왼쪽에서 관측한 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.
도 23은 일 실시 예에 따라 신경망으로 인식한 오른쪽 및 왼쪽 다리의 신경망 골격 모델 및 관절각을 나타내는 도면이다.
도 24는 일 실시 예에 따라 오른쪽 고관절 각도를 계산하기 위한 도면이다.
도 25는 일 실시 예에 따라 오른쪽 슬관절 각도를 계산하기 위한 도면이다.
도 26은 일 실시 예에 따라 왼쪽 고관절 각도를 계산하기 위한 도면이다.
도 27은 일 실시 예에 따라 왼쪽 슬관절 각도를 계산하기 위한 도면이다.
도 28은 일 실시 예에 따라 오른쪽 팔의 링크와 관절, 오른쪽 어깨의 링크와 관절, 오른쪽 팔꿈치의 링크와 관절들을 설명하기 위한 도면이다.
도 29는 일 실시 예에 따라 왼쪽 팔의 링크와 관절들을 설명하기 위한 도면이다.
도 30은 일 실시 예에 따라 사람이 왼쪽을 향해 걸을 때 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.
도 31은 일 실시 예에 따라 오른쪽 다리 및 왼쪽 다리의 골격 모델과 관절각을 설명하기 위한 도면이다.
도 32는 일 실시 예에 따라 오른쪽 팔과 왼쪽 팔의 링크와 관절들을 설명하기 위한 도면이다.
도 33은 일 실시 예에 따라 대상자가 카메라를 향할 때 이미지 크기와 카메라 까지의 거리 관계를 설명하기 위한 도면이다.
도 34는 일 실시 예에 따라 전자 장치가 대상자의 보행 패턴을 식별하는 방법의 흐름도이다.
도 35는 일 실시 예에 따라 전자 장치가 로봇 모델을 생성하는 과정을 나타내는 도면이다.
도 36은 일 실시 예에 따라 전자 장치가 대상자에 대한 카메라의 촬영 각도를 식별하는 과정을 나타내는 도면이다.
도 37은 이 실시 예에 따라 전자 장치가 대상자의 보행 패턴을 식별하는 과정을 설명하기 위한 도면이다.
도 38은 일 실시 예에 따른 전자 장치의 블록도이다.
도 39는 또 다른 실시 예에 따른 전자 장치의 블록도이다.
1 is a diagram schematically illustrating a process in which an electronic device identifies a gait pattern of a subject according to an exemplary embodiment.
2 is a diagram illustrating a geometric relationship between adjacent coordinate systems using a DH method according to an exemplary embodiment.
3 is a view for explaining a joint-link model of the lower body of the robot model according to an embodiment.
4 is a view for explaining three planes of the human body according to an embodiment.
5 is a view for explaining a joint-link model of the upper body of the robot model according to an embodiment.
6 is a diagram for explaining a joint recognized by a neural network model and a link connecting the joints according to an embodiment.
7 is a diagram for a relationship when a three-dimensional object is projected on a coronal plane and a sagittal plane, according to an embodiment.
8 is a diagram for explaining an angular relationship between a person and a camera.
9 is a view for explaining an angle between two links according to an embodiment.
10 is a view for explaining an angle between two links according to another embodiment.
11 is a view for explaining an angle between two links according to another embodiment.
12 is a diagram for describing a skeletal model recognized by a neural network model when a person faces the front or the right, according to an embodiment.
13 is a diagram for describing a skeletal model recognized by a neural network model when a person faces right, front, and left according to an embodiment.
14 is a diagram for describing a neural network skeletal model recognized when a person faces right and left, according to an embodiment.
15 is a view for explaining an angle between a face link and a body link, according to an embodiment.
16 is a diagram illustrating a skeletal model of a human body displayed in pixel coordinates, according to an exemplary embodiment.
17 is a view showing a joint-link model of the robot model lower body standing according to an embodiment.
18 is a diagram for calculating a right hip coronal angle according to an embodiment.
19 is a diagram for calculating the angle of the coronal plane of the left hip joint according to an embodiment.
20 is a view for explaining a joint-link model of the upper body of the robot model according to an embodiment.
21 is a diagram for calculating right and left shoulder joint angles according to an embodiment.
22 is a diagram illustrating a skeletal model of a human body indicated by pixel coordinates observed from the left, according to an exemplary embodiment.
23 is a diagram illustrating a neural network skeletal model and joint angles of right and left legs recognized by a neural network according to an exemplary embodiment.
24 is a diagram for calculating a right hip joint angle according to an exemplary embodiment.
25 is a diagram for calculating a right knee joint angle according to an embodiment.
26 is a diagram for calculating a left hip joint angle according to an embodiment.
27 is a diagram for calculating a left knee joint angle according to an embodiment.
28 is a view for explaining a link and a joint of a right arm, a link and a joint of a right shoulder, and a link and a joint of a right elbow, according to an embodiment.
29 is a diagram for describing a link and joints of a left arm, according to an exemplary embodiment.
30 is a diagram illustrating a skeletal model of a human body displayed in pixel coordinates when a person walks toward the left, according to an exemplary embodiment.
31 is a view for explaining skeletal models and joint angles of a right leg and a left leg, according to an exemplary embodiment.
32 is a diagram for describing links and joints of a right arm and a left arm, according to an exemplary embodiment.
33 is a diagram for describing a relationship between an image size and a distance to a camera when a subject faces a camera, according to an embodiment.
34 is a flowchart of a method for an electronic device to identify a gait pattern of a subject, according to an embodiment.
35 is a diagram illustrating a process in which an electronic device generates a robot model, according to an exemplary embodiment.
36 is a diagram illustrating a process in which an electronic device identifies a photographing angle of a camera with respect to a subject, according to an exemplary embodiment.
37 is a diagram for describing a process in which an electronic device identifies a gait pattern of a subject according to this embodiment.
38 is a block diagram of an electronic device according to an embodiment.
39 is a block diagram of an electronic device according to another embodiment.

본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다. Terms used in this specification will be briefly described, and the present disclosure will be described in detail.

본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다. The terms used in the present disclosure have been selected as currently widely used general terms as possible while considering the functions in the present disclosure, but these may vary depending on the intention or precedent of a person skilled in the art, the emergence of new technology, and the like. In addition, in a specific case, there is a term arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the corresponding invention. Therefore, the terms used in the present disclosure should be defined based on the meaning of the term and the contents of the present disclosure, rather than the simple name of the term.

명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.In the entire specification, when a part "includes" a certain element, this means that other elements may be further included, rather than excluding other elements, unless otherwise stated. In addition, terms such as "...unit" and "module" described in the specification mean a unit that processes at least one function or operation, which may be implemented as hardware or software, or a combination of hardware and software. .

또한 명세서 전체에서 약어 hp는 엉덩이(hip)을 의미하고, kn은 무릎(knee)을 의미하며, an은 발목(ankle)을 의미하고, sh는 어깨(shoulder)를 의미하고, el은 팔꿈치(elbow)를 의미하고, hd는 머리(head)를 의미하며, l은 왼쪽(left), r은 오른쪽(right)을 의미할 수 있다.In addition, throughout the specification, the abbreviation hp means hip, kn means knee, an means ankle, sh means shoulder, and el means elbow. ), hd means head, l means left, and r means right.

아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, with reference to the accompanying drawings, the embodiments of the present disclosure will be described in detail so that those of ordinary skill in the art to which the present disclosure pertains can easily implement them. However, the present disclosure may be implemented in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present disclosure in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

도 1은 일 실시 예에 따른 작업 관리 시스템이 대상 작업을 관리하는 과정을 개략적으로 설명하기 위한 도면이다.1 is a diagram schematically illustrating a process in which a job management system manages a target job according to an embodiment.

일 실시 예에 의하면 전자 장치(1000)는 대상자를 촬영함으로써 이미지 (102, 104, 106)를 획득하고, 획득된 이미지에 포함된 대상자의 보행 패턴을 식별할 수 있다. 일 실시 예에 의하면, 전자 장치(1000)는 프로세서(120) 및 메모리(140)를 포함하고, 메모리(140)는 미리 구축된 휴머노이드 로봇 모델(142)에 대한 정보 및 신경망 모델(144)에 대한 정보를 포함할 수 있다. According to an embodiment, the electronic device 1000 may acquire the images 102 , 104 , and 106 by photographing the subject, and may identify the subject's gait pattern included in the acquired image. According to an embodiment, the electronic device 1000 includes a processor 120 and a memory 140 , and the memory 140 includes information on the pre-built humanoid robot model 142 and information on the neural network model 144 . may contain information.

예를 들어, 전자 장치(1000)는 대상자에 대한 이미지(102, 104, 106)를 획득할 수 있다. 일 실시 예에 의하면 전자 장치(1000)는 카메라 장치와 연결됨으로써, 카메라 장치로부터 이미지(102, 104, 106)를 획득할 수도 있다. 그러나 또 다른 실시 예에 의하면, 전자 장치(1000)가 카메라 장치를 포함하고, 카메라 장치를 통하여 대상자에 대한 이미지(102, 104, 106)를 획득할 수도 있다. 예를 들어, 전자 장치(1000)는 이미지를 미리 저장된 신경망 모델에 입력함으로써 인체골격 정보(관절 정보, 링크 정보를 포함)를 획득하고, 획득된 인체골격 정보에 기초하여, 대상자에 대한 카메라 촬영 각도, 관절 각도, 관절을 연결하는 링크의 길이 등에 대한 정보를 식별할 수 있다. 전자 장치(1000)는 획득된 인체골격 정보에 기초하여 로봇 모델을 시뮬레이션함으로써, 이를 토대로 대상자의 보행 속도 및 스텝 길이와 같은 다양한 보행 정보(162)를 결정할 수 있다. 본 개시에 따른 전자 장치(1000)는 관절 정보, 링크 정보, 보행 속도 또는 스텝 길이 중 적어도 하나에 기초하여 대상자의 보행 패턴(164)을 식별할 수 있다.For example, the electronic device 1000 may acquire images 102 , 104 , and 106 of the subject. According to an embodiment, the electronic device 1000 may acquire images 102 , 104 , and 106 from the camera device by being connected to the camera device. However, according to another embodiment, the electronic device 1000 may include a camera device, and may acquire images 102 , 104 , and 106 of a subject through the camera device. For example, the electronic device 1000 obtains human skeleton information (including joint information and link information) by inputting an image into a pre-stored neural network model, and based on the obtained human skeleton information, a camera shooting angle for the subject , joint angle, and information on the length of the link connecting the joint can be identified. The electronic device 1000 may determine various gait information 162 such as a gait speed and step length of the subject based on the simulation of the robot model based on the obtained human skeleton information. The electronic device 1000 according to the present disclosure may identify the subject's gait pattern 164 based on at least one of joint information, link information, gait speed, and step length.

일 실시 예에 의하면, 본 개시에 따른 전자 장치(1000)는 서버(2000)와 연동함으로써 대상자의 보행 패턴을 식별할 수도 있다. 일 실시 예에 의하면, 전자 장치(1000)는 네트워크를 통하여 서버(2000)와 연동될 수 있고, 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 중 적어도 하나의 조합을 포함할 수 있다. 본 개시에 따른 전자 장치(1000)는 상술한 서버(2000)외에도 다양한 네트워크 구성 주체와 통신을 하기 위한 포괄적인 의미의 데이터 통신망과, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망 자체를 포함할 수 도 있다.According to an embodiment, the electronic device 1000 according to the present disclosure may identify the gait pattern of the subject by interworking with the server 2000 . According to an embodiment, the electronic device 1000 may interwork with the server 2000 through a network, and the network includes a local area network (LAN), a wide area network (WAN), and a value-added communication network ( It may include a combination of at least one of a Value Added Network (VAN) and a mobile radio communication network. In addition to the above-described server 2000, the electronic device 1000 according to the present disclosure may include a data communication network in a comprehensive sense for communicating with various network constituent entities, and a wired Internet, a wireless Internet, and a mobile wireless communication network itself. .

일 실시 예에 의하면, 전자 장치(1000)가 이용하는 신경망 모델(144)은 오픈포즈(OpenPose) 모델일 수 있다. 전자 장치(1000)는 오픈포즈 모델을 이용하여 3차원 인체 모션을 2차원 카메라 영상 평면에 덧입혀서 표시할 수 있다. 일 실시 예에 의하면 인체골격 정보는 관절 정보, 관절 사이를 연결하는 링크에 관한 링크 정보를 포함할 수 있다. 일 실시 예에 의하면, 관절 정보는 관절각, 관절 식별 번호에 대한 정보를 포함할 수 있고, 링크 정보는 링크의 길이에 대한 정보를 더 포함할 수도 있다. 일 실시 예에 의하면, 링크 사이의 각도에 대한 정보는 관절 정보에 포함될 수도 있다.According to an embodiment, the neural network model 144 used by the electronic device 1000 may be an OpenPose model. The electronic device 1000 may display the 3D human body motion by overlaying it on the 2D camera image plane using the open pose model. According to an embodiment, the human skeleton information may include joint information and link information about a link connecting the joints. According to an embodiment, the joint information may include information on joint angles and joint identification numbers, and the link information may further include information on the length of the link. According to an embodiment, the information on the angle between the links may be included in the joint information.

또한, 일 실시 예에 의하면, 전자 장치(1000)는 오픈포즈 모델 외에도 기타 인공 지능 모델을 더 이용하여 이미지 내 대상자의 자세를 식별할 수도 있다. 일 실시 예에 의하면, 전자 장치(1000)가 이용하는 인공 지능 모델은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.Also, according to an embodiment, the electronic device 1000 may identify the posture of the subject in the image by further using other artificial intelligence models in addition to the open pose model. According to an embodiment, the artificial intelligence model used by the electronic device 1000 may include a deep neural network (DNN), for example, a convolutional neural network (CNN), a recurrent neural network (RNN), It may include, but is not limited to, a Restricted Boltzmann Machine (RBM), a Deep Belief Network (DBN), a Bidirectional Recurrent Deep Neural Network (BRDNN), or a Deep Q-Networks.

도 2는 일 실시 예에 따른 DH 법을 이용한 인접 좌표계 간의 기하학적 관계를 나타내는 도면이다.2 is a diagram illustrating a geometric relationship between adjacent coordinate systems using a DH method according to an exemplary embodiment.

DH법은 로봇의 인접한 좌표계 사이의 회전과 이동 관계를 표현하기 위해 Denavit와 Hartenberg가 1955년에 제안한 방법으로서, 4개의 파라미터를 갖는

Figure pat00001
동차변환행렬(homogeneous transformation matrix)의 곱을 이용해서 로봇의 링크나 몸체에 부착된 좌표계를 이전 링크의 좌표계로부터 체계적으로 구축하는 방법이다. DH법은 링크와 링크가 서로 연결되어 있으면 대부분의 로봇에 적용할 수 있으므로, 기준좌표계
Figure pat00002
를 기준으로 임의의 링크 좌표계
Figure pat00003
나 말단부 좌표계
Figure pat00004
의 원점과 방향도 순차적으로 구할 수 있다.The DH method is a method proposed by Denavit and Hartenberg in 1955 to express the relationship between rotation and movement between adjacent coordinate systems of a robot.
Figure pat00001
It is a method to systematically build the coordinate system attached to the link or body of the robot from the coordinate system of the previous link by using the product of a homogeneous transformation matrix. Since the DH method can be applied to most robots if the link and the link are connected to each other, the reference coordinate system
Figure pat00002
Any link coordinate system based on
Figure pat00003
I distal coordinate system
Figure pat00004
The origin and direction of can also be found sequentially.

DH법을 이해하기 위해 도 2에 도시된 바와 같이

Figure pat00005
번째 관절이
Figure pat00006
번째 링크와
Figure pat00007
번째 링크를 연결하고, 각 링크에
Figure pat00008
좌표계와
Figure pat00009
좌표계가 부착되어 있다고 가정한다.
Figure pat00010
번째 관절의 액추에이터가 회전이나 이동을 하면 후단에 연결된 i번째 링크와
Figure pat00011
좌표계가 이에 반응해서 움직인다. 도 2에서 네 개의 DH 파라미터
Figure pat00012
(202, 204, 206, 208)는 DH법에서 규정한 파라미터로서 각각 관절각(joint angle), 링크 비틀림(link twist), 링크 오프셋(link offset), 링크 길이(link length)를 나타낸다. DH변환행렬
Figure pat00013
는 후행승산(post-multiply) 기법을 적용하여 하기 수학식 1과 같이 나타날 수 있다.As shown in Figure 2 to understand the DH method,
Figure pat00005
the second joint
Figure pat00006
second link and
Figure pat00007
Connect the second link, and in each link
Figure pat00008
coordinate system and
Figure pat00009
Assume that a coordinate system is attached.
Figure pat00010
When the actuator of the th joint rotates or moves, the i-th link connected to the rear end
Figure pat00011
The coordinate system moves in response to this. The four DH parameters in Figure 2
Figure pat00012
(202, 204, 206, 208) are parameters stipulated by the DH method and indicate a joint angle, a link twist, a link offset, and a link length, respectively. DH transformation matrix
Figure pat00013
can be expressed as in Equation 1 below by applying a post-multiply technique.

Figure pat00014
Figure pat00014

상기 수학식 1식에서 대문자

Figure pat00015
Figure pat00016
는 sin 함수와 cos 함수를 각각 나타내며, 위첨자와 아래첨자는 DH 파라미터와 그 인덱스를 나타낸다. 즉,
Figure pat00017
Figure pat00018
를 나타내고
Figure pat00019
Figure pat00020
를 의미한다. 그리고 Rot은 좌표계 회전 행렬을, Trans는 좌표계 이동 행렬을 의미한다. Capital letters in Equation 1 above
Figure pat00015
Wow
Figure pat00016
denotes the sin function and the cos function, respectively, and the superscript and subscript denote the DH parameter and its index. in other words,
Figure pat00017
Is
Figure pat00018
to indicate
Figure pat00019
Is
Figure pat00020
means And Rot means a coordinate system rotation matrix, and Trans means a coordinate system movement matrix.

도 3은 일 실시 예에 따른 로봇 모델 하체의 관절-링크 모델을 설명하기 위한 도면이다.3 is a view for explaining a joint-link model of the lower body of the robot model according to an embodiment.

도 3은 로봇 모델(예컨대 휴머노이드 로봇)이 서 있을 때의 하체를 링크와 관절들로 표현한 것으로 각 링크 좌표계들은 DH법의 파라미터 규정방식을 따른다. 기준좌표계(reference coordinate frame)인

Figure pat00021
좌표계는 왼쪽 고관절에 위치하고, 세계좌표계(world coordinate frame)인
Figure pat00022
좌표계는 통상적인 방식대로
Figure pat00023
축은 로봇의 앞쪽 방향을,
Figure pat00024
축은 로봇의 오른쪽에서 왼쪽을 향하는 측면 방향을,
Figure pat00025
축은 위쪽을 향하는 방향으로 설정될 수 있다. 도 3에서 휴머노이드 로봇의 하체는 2개의 발바닥면과 7개의 링크(
Figure pat00026
), 6개의 시상면(sagittal plane) 관절(
Figure pat00027
), 4개의 관상면(coronal plane) 관절, 2개의 횡평면(transversal plane) 관절로 구성되어 있음을 알 수 있다.3 shows the lower body when a robot model (eg, a humanoid robot) is standing with links and joints, and each link coordinate system follows the parameter regulation method of the DH method. a reference coordinate frame
Figure pat00021
The coordinate system is located in the left hip joint, and the world coordinate frame is
Figure pat00022
The coordinate system is in the usual way
Figure pat00023
The axis is the front direction of the robot,
Figure pat00024
The axis is the lateral direction from right to left of the robot,
Figure pat00025
The axis may be set in an upward direction. 3, the lower body of the humanoid robot has two soles and seven links (
Figure pat00026
), six sagittal plane joints (
Figure pat00027
), four coronal plane joints, and two transversal plane joints.

도 4는 일 실시 예에 따른 인체의 3가지 평면을 설명하기 위한 도면이다.4 is a view for explaining three planes of the human body according to an embodiment.

일 실시 예에 따르면 인체는 3가지 평면(예컨대 인체의 운동면)으로 구분될 수 있다. 예를 들어, Coronal Plane(404)은 관상면으로 인체를 앞쪽과 뒤쪽으로 나눈 면일 수 있다. 또한, Sagittal Plane(402)은 신체를 가운데를 기준으로 왼쪽 및 오른쪽으로 나눈 것으로 시상면 또는 정중면일 수 있다. 또한, Transverse Plane(406)은 신체를 위/아래를 기준으로 나누는 것으로 수평면 또는 횡단면일 수 있다. 전자 장치(1000)는 인체의 3가지 평면에 대한 관절 정보 내지 링크 정보들을 결정할 수 있다.According to an embodiment, the human body may be divided into three planes (eg, a movement surface of the human body). For example, the coronal plane 404 may be a plane that divides the human body into anterior and posterior by a coronal plane. In addition, the sagittal plane 402 may be a sagittal plane or a median plane that divides the body into left and right sides based on the center. In addition, the Transverse Plane 406 divides the body based on the upper/lower plane, and may be a horizontal plane or a transverse plane. The electronic device 1000 may determine joint information or link information for three planes of the human body.

이제 도 2 내지 4를 참조하여 하체의 왼쪽 고관절에 위치해 있는 기준좌표계

Figure pat00028
에서 하체 링크 상의 임의의 점을 측정할 때의 좌표를 계산하는 과정을 설명한다. 먼저 왼쪽 고관절에서 횡평면 관절인
Figure pat00029
회전에 의해 변환된
Figure pat00030
좌표계 상의 한 점
Figure pat00031
Figure pat00032
좌표계에서 보았을 때의 확장벡터
Figure pat00033
은 수학식 1의 DH행렬
Figure pat00034
를 이용하여 다음과 같이 표현할 수 있다.Now with reference to FIGS. 2 to 4, the reference coordinate system located in the left hip joint of the lower body
Figure pat00028
Describes the process of calculating the coordinates when measuring any point on the lower body link. First, the transverse plane joint in the left hip joint
Figure pat00029
transformed by rotation
Figure pat00030
a point on the coordinate system
Figure pat00031
second
Figure pat00032
Expansion vector as seen in the coordinate system
Figure pat00033
is the DH matrix of Equation 1
Figure pat00034
can be expressed as follows using

Figure pat00035
Figure pat00035

상기 수학식 2의

Figure pat00036
벡터에서 위첨자 0은 기준좌표계가 0번째(
Figure pat00037
) 좌표계이고 아래첨자 1은 대상좌표계가 첫 번째(
Figure pat00038
) 좌표계라는 의미를 갖는다.
Figure pat00039
은 DH변환행렬로서, 도 3을 참조하면 네 개의 DH 파라미터는
Figure pat00040
의 관계가 있음을 알 수 있다. 여기서 주의할 점은 고관절 횡평면 회전각
Figure pat00041
은 오른손 법칙에 의해 상향축(
Figure pat00042
축)을 중심으로 뒤에서 앞으로 회전하는 것이 양의 방향이라는 사실이다. 그 다음, 왼쪽 고관절에서 관상면 관절인
Figure pat00043
회전에 의해 변환된
Figure pat00044
좌표계 상의 한 점
Figure pat00045
Figure pat00046
좌표계에서 보았을 때의 확장벡터
Figure pat00047
는 DH변환행렬과 후행승산(post-multiply) 규칙을 이용하여 다음의 수학식 3으로 표현할 수 있다.of Equation 2 above
Figure pat00036
In the vector, the superscript 0 is the 0th reference coordinate system (
Figure pat00037
) coordinate system, and subscript 1 indicates that the target coordinate system is the first (
Figure pat00038
) has the meaning of a coordinate system.
Figure pat00039
is a DH transformation matrix, and referring to FIG. 3 , the four DH parameters are
Figure pat00040
It can be seen that there is a relationship between The point to note here is the hip joint transverse plane rotation angle
Figure pat00041
is the upward axis (
Figure pat00042
The fact that rotation about an axis from back to front is in the positive direction. Then, the coronal joint in the left hip joint
Figure pat00043
transformed by rotation
Figure pat00044
a point on the coordinate system
Figure pat00045
cast
Figure pat00046
Expansion vector as seen in the coordinate system
Figure pat00047
can be expressed by the following Equation 3 using the DH transformation matrix and the post-multiply rule.

Figure pat00048
Figure pat00048

상기 수학식 3에서

Figure pat00049
의 네 개 DH 파라미터는
Figure pat00050
의 관계가 있음을 알 수 있다. 여기서 주의할 점은 고관절 관상면 회전각
Figure pat00051
은 오른손 법칙에 의해 전향축(
Figure pat00052
축)을 중심으로 왼쪽으로 회전하는 것이 양의 방향이라는 사실이다. 이제 왼쪽 허벅지 링크에 위치한
Figure pat00053
좌표계 상의 한 점
Figure pat00054
, 쪽 정강이 링크에 위치한
Figure pat00055
좌표계 상의 한 점
Figure pat00056
, 왼쪽 발목에 위치한
Figure pat00057
좌표계 상의 한 점
Figure pat00058
Figure pat00059
좌표계에서 보았을 때의 확장벡터
Figure pat00060
,
Figure pat00061
,
Figure pat00062
를 다음과 같은 관계식으로 표현할 수 있다.In Equation 3 above
Figure pat00049
The four DH parameters of
Figure pat00050
It can be seen that there is a relationship between It should be noted here that the angle of rotation of the coronal plane of the hip joint is
Figure pat00051
is the forward axis ( by the right-hand rule)
Figure pat00052
The fact that rotation about the axis to the left is in the positive direction. Now located on the left thigh link
Figure pat00053
a point on the coordinate system
Figure pat00054
, located on the side shin link
Figure pat00055
a point on the coordinate system
Figure pat00056
, located on the left ankle
Figure pat00057
a point on the coordinate system
Figure pat00058
cast
Figure pat00059
Expansion vector as seen in the coordinate system
Figure pat00060
,
Figure pat00061
,
Figure pat00062
can be expressed in the following relational expression:

Figure pat00063
Figure pat00063

Figure pat00064
Figure pat00064

Figure pat00065
Figure pat00065

상기 수학식 4 내지 6에서,

Figure pat00066
의 DH 파라미터는
Figure pat00067
이고,
Figure pat00068
의 DH 파라미터는
Figure pat00069
이고,
Figure pat00070
의 DH 파라미터는
Figure pat00071
임을 알 수 있다. 여기서 주의할 점은 시상면 관절 회전각
Figure pat00072
은 오른손 법칙에 의해 측면을 향하는 축(
Figure pat00073
축)을 중심으로 위쪽으로 회전시킬 경우는 음의 값, 아래쪽으로 회전시키는 경우 양의 값이 된다는 사실이다. 그 다음으로 왼쪽 발바닥에 위치한
Figure pat00074
좌표계 상의 한 점
Figure pat00075
Figure pat00076
좌표계에서 보았을 때의 확장벡터
Figure pat00077
는 다음 관계식으로 표현된다.In Equations 4 to 6,
Figure pat00066
The DH parameter of
Figure pat00067
ego,
Figure pat00068
The DH parameter of
Figure pat00069
ego,
Figure pat00070
The DH parameter of
Figure pat00071
it can be seen that It should be noted here that the angle of rotation of the sagittal joint
Figure pat00072
is the axis pointing to the side by the right-hand rule (
Figure pat00073
It is a fact that a negative value when rotating upwards around the axis), and a positive value when rotating downwards. Then on the left foot
Figure pat00074
a point on the coordinate system
Figure pat00075
cast
Figure pat00076
Expansion vector as seen in the coordinate system
Figure pat00077
is expressed by the following relation.

Figure pat00078
Figure pat00078

상기 수학식 7에서

Figure pat00079
에 대한 네 개의 DH 파라미터는
Figure pat00080
이다. 이제 하체의 오른쪽 고관절에 위치한
Figure pat00081
좌표계 상의 한 점
Figure pat00082
Figure pat00083
좌표계에서 보았을 때의 확장벡터
Figure pat00084
를 계산하기 위해 도 3을 참조하면
Figure pat00085
좌표계를
Figure pat00086
축 방향으로
Figure pat00087
(
Figure pat00088
: 골반 링크길이)만큼 이동하고
Figure pat00089
축을 중심으로
Figure pat00090
축을
Figure pat00091
회전시키면
Figure pat00092
축이 되므로 DH행렬
Figure pat00093
Figure pat00094
파라미터를 입력하여 다음과 같이 표현할 수 있다.In Equation 7 above
Figure pat00079
The four DH parameters for
Figure pat00080
am. Now located in the right hip joint of the lower body
Figure pat00081
a point on the coordinate system
Figure pat00082
cast
Figure pat00083
Expansion vector as seen in the coordinate system
Figure pat00084
Referring to Figure 3 to calculate
Figure pat00085
coordinate system
Figure pat00086
axially
Figure pat00087
(
Figure pat00088
: move as much as the length of the pelvic link)
Figure pat00089
around the axis
Figure pat00090
axis
Figure pat00091
if you rotate
Figure pat00092
DH matrix because it is an axis
Figure pat00093
to
Figure pat00094
By entering parameters, it can be expressed as follows.

Figure pat00095
Figure pat00095

오른쪽 고관절에서 횡평면 관절인

Figure pat00096
회전에 의해 변환된
Figure pat00097
좌표계 상의 한 점
Figure pat00098
Figure pat00099
좌표계에서 보았을 때의 확장벡터
Figure pat00100
은 상기 수학식 8과 DH행렬을 이용하여 다음과 같이 표현할 수 있다.Transverse plane joint in the right hip joint
Figure pat00096
transformed by rotation
Figure pat00097
a point on the coordinate system
Figure pat00098
second
Figure pat00099
Expansion vector as seen in the coordinate system
Figure pat00100
can be expressed as follows using Equation 8 and the DH matrix.

Figure pat00101
Figure pat00101

도 3을 참조하면

Figure pat00102
의 네 개 DH 파라미터는
Figure pat00103
의 관계가 있음을 알 수 있다. 그 다음, 오른쪽 고관절에서 관상면 관절인
Figure pat00104
회전에 의해 변환된
Figure pat00105
좌표계 상의 한 점
Figure pat00106
Figure pat00107
좌표계에서 보았을 때의 확장벡터
Figure pat00108
는 DH변환행렬과 후행승산 규칙을 이용하여 다음과 같이 표현할 수 있다.3 ,
Figure pat00102
The four DH parameters of
Figure pat00103
It can be seen that there is a relationship between Then, the coronal joint in the right hip joint
Figure pat00104
transformed by rotation
Figure pat00105
a point on the coordinate system
Figure pat00106
cast
Figure pat00107
Expansion vector as seen in the coordinate system
Figure pat00108
can be expressed as follows using the DH transformation matrix and the post-multiplication rule.

Figure pat00109
Figure pat00109

상기 수학식 10에서

Figure pat00110
의 DH 파라미터는
Figure pat00111
의 관계가 성립함을 알 수 있다. 이제 오른쪽 허벅지 링크에 위치한
Figure pat00112
좌표계 상의 한 점
Figure pat00113
, 오른쪽 정강이 링크에 위치한
Figure pat00114
좌표계 상의 한 점
Figure pat00115
, 오른쪽 발목에 위치한
Figure pat00116
좌표계 상의 한 점
Figure pat00117
Figure pat00118
좌표계에서 보았을 때의 확장벡터
Figure pat00119
,
Figure pat00120
,
Figure pat00121
를 다음과 같은 관계식으로 표현할 수 있다.In Equation 10 above
Figure pat00110
The DH parameter of
Figure pat00111
It can be seen that the relationship of Now located on the right thigh link
Figure pat00112
a point on the coordinate system
Figure pat00113
, located on the right shin link
Figure pat00114
a point on the coordinate system
Figure pat00115
, located on the right ankle
Figure pat00116
a point on the coordinate system
Figure pat00117
cast
Figure pat00118
Expansion vector as seen in the coordinate system
Figure pat00119
,
Figure pat00120
,
Figure pat00121
can be expressed in the following relational expression:

Figure pat00122
Figure pat00122

Figure pat00123
Figure pat00123

Figure pat00124
Figure pat00124

상기 수학식 11 내지 13에서

Figure pat00125
의 DH 파라미터는
Figure pat00126
이고,
Figure pat00127
의 DH 파라미터는
Figure pat00128
이고,
Figure pat00129
의 DH 파라미터는
Figure pat00130
임을 알 수 있다. 그 다음으로 오른쪽 발바닥에 위치한
Figure pat00131
좌표계 상의 한 점
Figure pat00132
Figure pat00133
좌표계에서 보았을 때의 확장벡터
Figure pat00134
는 다음 관계식으로 표현된다.In Equations 11 to 13,
Figure pat00125
The DH parameter of
Figure pat00126
ego,
Figure pat00127
The DH parameter of
Figure pat00128
ego,
Figure pat00129
The DH parameter of
Figure pat00130
it can be seen that Then on the right foot
Figure pat00131
a point on the coordinate system
Figure pat00132
second
Figure pat00133
Expansion vector as seen in the coordinate system
Figure pat00134
is expressed by the following relation.

Figure pat00135
Figure pat00135

상기 수학식 14에서

Figure pat00136
에 대한 네 개의 DH 파라미터는
Figure pat00137
이다. 하기 표 1에 따라 모든 링크 좌표계의 DH 행렬의 파라미터를 나타낼 수 있다.In Equation 14 above
Figure pat00136
The four DH parameters for
Figure pat00137
am. According to Table 1 below, the parameters of the DH matrix of all link coordinate systems can be represented.

DH변환행렬DH transformation matrix

Figure pat00138
Figure pat00138
Figure pat00139
Figure pat00139
Figure pat00140
Figure pat00140
Figure pat00141
Figure pat00141
Figure pat00142
Figure pat00142
Figure pat00143
Figure pat00143
00 00
Figure pat00144
Figure pat00144
Figure pat00145
Figure pat00145
Figure pat00146
Figure pat00146
00 00
Figure pat00147
Figure pat00147
Figure pat00148
Figure pat00148
Figure pat00149
Figure pat00149
00
Figure pat00150
Figure pat00150
00
Figure pat00151
Figure pat00151
Figure pat00152
Figure pat00152
00
Figure pat00153
Figure pat00153
00
Figure pat00154
Figure pat00154
Figure pat00155
Figure pat00155
00 00
Figure pat00156
Figure pat00156
Figure pat00157
Figure pat00157
Figure pat00158
Figure pat00158
00
Figure pat00159
Figure pat00159
00
Figure pat00160
Figure pat00160
00 00
Figure pat00161
Figure pat00161
Figure pat00162
Figure pat00162
Figure pat00163
Figure pat00163
Figure pat00164
Figure pat00164
00 00
Figure pat00165
Figure pat00165
Figure pat00166
Figure pat00166
Figure pat00167
Figure pat00167
00 00
Figure pat00168
Figure pat00168
Figure pat00169
Figure pat00169
Figure pat00170
Figure pat00170
00
Figure pat00171
Figure pat00171
00
Figure pat00172
Figure pat00172
Figure pat00173
Figure pat00173
00
Figure pat00174
Figure pat00174
00
Figure pat00175
Figure pat00175
Figure pat00176
Figure pat00176
00 00
Figure pat00177
Figure pat00177
Figure pat00178
Figure pat00178
Figure pat00179
Figure pat00179
00
Figure pat00180
Figure pat00180
00

상기 표1은 상술한 수학식 1 내지 14에 따라 결정된 서있는 휴머노이즈 로봇 모델 하체의 링크 좌표계의 DH 변환 행렬을 나타낸다.Table 1 shows the DH transformation matrix of the link coordinate system of the lower body of the standing humanoid robot model determined according to Equations 1 to 14 described above.

도 5는 일 실시 예에 따른 로봇 모델 상체의 관절-링크 모델을 설명하기 위한 도면이다. 5 is a view for explaining a joint-link model of the upper body of the robot model according to an embodiment.

도 5는 휴머노이드 로봇이 서있을 때의 상체를 링크와 관절들로 표현한 그림으로, 각 링크 좌표계들은 DH법의 파라미터 규정방식을 따른다. 상체의 왼쪽 관상면 어깨관절에 위치한

Figure pat00181
좌표계는 하체의 오른쪽 고관절에 위치한
Figure pat00182
좌표계에서
Figure pat00183
축을 따라
Figure pat00184
만큼 이동시키고, 새로운
Figure pat00185
축을 따라
Figure pat00186
(
Figure pat00187
: 어깨 링크)만큼 이동시킨 후,
Figure pat00188
축을 중심으로
Figure pat00189
축을
Figure pat00190
만큼 회전시켜
Figure pat00191
축을 얻음으로써 구할 수 있다. 그러므로 DH행렬
Figure pat00192
의 파라미터는
Figure pat00193
이며,
Figure pat00194
좌표계 상의 한 점
Figure pat00195
Figure pat00196
좌표계에서 보았을 때의 확장벡터
Figure pat00197
는 DH행렬을 이용하여 다음과 같이 표현할 수 있다.5 is a figure expressing the upper body with links and joints when the humanoid robot is standing. Each link coordinate system follows the parameter regulation method of the DH method. Located in the left coronal plane of the upper body at the shoulder joint
Figure pat00181
The coordinate system is located in the right hip joint of the lower body.
Figure pat00182
in the coordinate system
Figure pat00183
along the axis
Figure pat00184
move as much as possible, and
Figure pat00185
along the axis
Figure pat00186
(
Figure pat00187
: After moving as much as shoulder link),
Figure pat00188
around the axis
Figure pat00189
axis
Figure pat00190
rotate as much
Figure pat00191
It can be obtained by obtaining the axis. Therefore, the DH matrix
Figure pat00192
the parameters of
Figure pat00193
is,
Figure pat00194
a point on the coordinate system
Figure pat00195
second
Figure pat00196
Expansion vector as seen in the coordinate system
Figure pat00197
can be expressed as follows using the DH matrix.

Figure pat00198
Figure pat00198

상체의 왼쪽 시상면 어깨 관절에 위치한

Figure pat00199
좌표계는
Figure pat00200
축을 중심으로
Figure pat00201
축을
Figure pat00202
만큼 회전시켜서
Figure pat00203
축을 얻고,
Figure pat00204
축을 중심으로
Figure pat00205
축을
Figure pat00206
만큼 회전시켜
Figure pat00207
축을 얻는다. 이를 DH행렬
Figure pat00208
의 파라미터로 표현하면
Figure pat00209
이며 수식으로 표현하면 다음과 같다.Located in the left sagittal plane of the upper body at the shoulder joint
Figure pat00199
the coordinate system
Figure pat00200
around the axis
Figure pat00201
axis
Figure pat00202
rotate it as much
Figure pat00203
get an axis,
Figure pat00204
around the axis
Figure pat00205
axis
Figure pat00206
rotate as much
Figure pat00207
get the axis This is the DH matrix
Figure pat00208
If expressed as a parameter of
Figure pat00209
and expressed as a formula:

Figure pat00210
Figure pat00210

그 다음으로 왼쪽 위팔 링크에 위치한

Figure pat00211
좌표계 상의 한 점
Figure pat00212
과 왼쪽 아래팔에 위치한
Figure pat00213
좌표계 상의 한 점
Figure pat00214
Figure pat00215
좌표계에서 보았을 때의 확장벡터
Figure pat00216
Figure pat00217
은 다음 수학식에 따른 관계식으로 표현된다.Next, located on the left upper arm link
Figure pat00211
a point on the coordinate system
Figure pat00212
and located on the left forearm
Figure pat00213
a point on the coordinate system
Figure pat00214
second
Figure pat00215
Expansion vector as seen in the coordinate system
Figure pat00216
Wow
Figure pat00217
is expressed as a relational expression according to the following equation.

Figure pat00218
Figure pat00218

Figure pat00219
Figure pat00219

상기 수학식 17 내지 18에서

Figure pat00220
에 대한 네 개의 DH 파라미터는 앞에서 설명한 회전각 부호설정 원리에 의해
Figure pat00221
이고,
Figure pat00222
에 대한 네 개의 DH 파라미터는
Figure pat00223
이다. 상체의 오른쪽 관상면 어깨관절에 위치한
Figure pat00224
좌표계는
Figure pat00225
좌표계를
Figure pat00226
축을 따라
Figure pat00227
만큼 이동하여 얻은 것이므로,
Figure pat00228
의 DH 파라미터는
Figure pat00229
이 되고
Figure pat00230
좌표계 상의 한 점
Figure pat00231
Figure pat00232
좌표계에서 보았을 때의 확장벡터
Figure pat00233
는 DH행렬을 이용하여 하기 수학식 19로 표현될 수 있다.In Equations 17 to 18,
Figure pat00220
The four DH parameters for
Figure pat00221
ego,
Figure pat00222
The four DH parameters for
Figure pat00223
am. Located in the right coronal plane of the upper body at the shoulder joint
Figure pat00224
the coordinate system
Figure pat00225
coordinate system
Figure pat00226
along the axis
Figure pat00227
Since it is obtained by moving as much as
Figure pat00228
The DH parameter of
Figure pat00229
become
Figure pat00230
a point on the coordinate system
Figure pat00231
second
Figure pat00232
Expansion vector as seen in the coordinate system
Figure pat00233
can be expressed by Equation 19 below using the DH matrix.

Figure pat00234
Figure pat00234

상체의 오른쪽 시상면 어깨 관절에 위치한

Figure pat00235
좌표계는
Figure pat00236
축을 중심으로
Figure pat00237
축을
Figure pat00238
만큼 회전시켜서
Figure pat00239
축을 얻고,
Figure pat00240
축을 중심으로
Figure pat00241
축을
Figure pat00242
만큼 회전시켜
Figure pat00243
축을 얻는다. 이를 DH행렬
Figure pat00244
의 파라미터로 표현하면
Figure pat00245
이며 수식으로 표현하면 다음과 같다.Located in the right sagittal plane of the upper body at the shoulder joint
Figure pat00235
the coordinate system
Figure pat00236
around the axis
Figure pat00237
axis
Figure pat00238
rotate it as much
Figure pat00239
get an axis,
Figure pat00240
around the axis
Figure pat00241
axis
Figure pat00242
rotate as much
Figure pat00243
get the axis This is the DH matrix
Figure pat00244
If expressed as a parameter of
Figure pat00245
and expressed as a formula:

Figure pat00246
Figure pat00246

그 다음으로 오른쪽 위팔 링크에 위치한

Figure pat00247
좌표계 상의 한 점
Figure pat00248
과 오른쪽 아래팔에 위치한
Figure pat00249
좌표계 상의 한 점
Figure pat00250
Figure pat00251
좌표계에서 보았을 때의 확장벡터
Figure pat00252
Figure pat00253
은 다음 관계식으로 표현된다.Next, located on the right upper arm link
Figure pat00247
a point on the coordinate system
Figure pat00248
and located on the right lower arm
Figure pat00249
a point on the coordinate system
Figure pat00250
second
Figure pat00251
Expansion vector as seen in the coordinate system
Figure pat00252
class
Figure pat00253
is expressed by the following relation.

Figure pat00254
Figure pat00254

Figure pat00255
Figure pat00255

상기 수학식 21 내지 22에서

Figure pat00256
에 대한 네 개의 DH 파라미터는
Figure pat00257
이고,
Figure pat00258
에 대한 네 개의 DH 파라미터는
Figure pat00259
이다. 도 5에서 머리와 목에 위치한 관절들의 좌표계를 구하기 위해 각 좌표계 변환관계를 알아보자. 목에 위치한
Figure pat00260
좌표계는
Figure pat00261
좌표계를
Figure pat00262
축을 따라
Figure pat00263
만큼 이동하고, 새로운
Figure pat00264
축을 중심으로
Figure pat00265
축을
Figure pat00266
만큼 회전하여
Figure pat00267
축을 얻으므로,
Figure pat00268
의 DH 파라미터는
Figure pat00269
가 된다. 확장벡터
Figure pat00270
는 DH행렬을 이용하여 다음과 같이 표현할 수 있다.In Equations 21 to 22,
Figure pat00256
The four DH parameters for
Figure pat00257
ego,
Figure pat00258
The four DH parameters for
Figure pat00259
am. In Fig. 5, let's find out the transformation relationship of each coordinate system in order to obtain the coordinate system of the joints located on the head and neck. located on the neck
Figure pat00260
the coordinate system
Figure pat00261
coordinate system
Figure pat00262
along the axis
Figure pat00263
As long as you move, new
Figure pat00264
around the axis
Figure pat00265
axis
Figure pat00266
rotate as much
Figure pat00267
Since we get the axis,
Figure pat00268
The DH parameter of
Figure pat00269
becomes extension vector
Figure pat00270
can be expressed as follows using the DH matrix.

Figure pat00271
Figure pat00271

목의 횡평면 관절각

Figure pat00272
의 회전에 의해 변환되는
Figure pat00273
좌표계는
Figure pat00274
축을 중심으로
Figure pat00275
축을
Figure pat00276
만큼 회전하고,
Figure pat00277
축을 따라서
Figure pat00278
만큼 이동하고,
Figure pat00279
축을 중심으로
Figure pat00280
축을
Figure pat00281
만큼 회전하여
Figure pat00282
축을 얻게 되므로
Figure pat00283
의 DH 파라미터는
Figure pat00284
가 되고 다음과 같이 표현된다.transverse plane articular angle of the neck
Figure pat00272
is transformed by the rotation of
Figure pat00273
the coordinate system
Figure pat00274
around the axis
Figure pat00275
axis
Figure pat00276
rotate as much as
Figure pat00277
along the axis
Figure pat00278
move as much
Figure pat00279
around the axis
Figure pat00280
axis
Figure pat00281
rotate as much
Figure pat00282
to get an axis
Figure pat00283
The DH parameter of
Figure pat00284
and is expressed as

Figure pat00285
Figure pat00285

머리의 시상면 관절각

Figure pat00286
의 회전에 의해 변환되는
Figure pat00287
좌표계는
Figure pat00288
축을 중심으로
Figure pat00289
축을
Figure pat00290
만큼 회전하여
Figure pat00291
축을 얻고,
Figure pat00292
축을 따라서
Figure pat00293
만큼 이동하여 얻게 되므로
Figure pat00294
의 DH 파라미터는
Figure pat00295
가 되고
Figure pat00296
과 같이 표현된다.sagittal articular angle of the head
Figure pat00286
is transformed by the rotation of
Figure pat00287
the coordinate system
Figure pat00288
around the axis
Figure pat00289
axis
Figure pat00290
rotate as much
Figure pat00291
get an axis,
Figure pat00292
along the axis
Figure pat00293
Because you get it by moving
Figure pat00294
The DH parameter of
Figure pat00295
become
Figure pat00296
is expressed as

하기 표 2에서 상체의 모든 링크 좌표계의 DH 변환행렬을 정리했다.Table 2 below summarizes the DH transformation matrix of all link coordinate systems of the upper body.

DH변환행렬DH transformation matrix

Figure pat00297
Figure pat00297
Figure pat00298
Figure pat00298
Figure pat00299
Figure pat00299
Figure pat00300
Figure pat00300
Figure pat00301
Figure pat00301
00
Figure pat00302
Figure pat00302
Figure pat00303
Figure pat00303
Figure pat00304
Figure pat00304
Figure pat00305
Figure pat00305
Figure pat00306
Figure pat00306
00 00
Figure pat00307
Figure pat00307
Figure pat00308
Figure pat00308
Figure pat00309
Figure pat00309
00
Figure pat00310
Figure pat00310
00
Figure pat00311
Figure pat00311
Figure pat00312
Figure pat00312
00
Figure pat00313
Figure pat00313
00
Figure pat00314
Figure pat00314
00 00
Figure pat00315
Figure pat00315
00
Figure pat00316
Figure pat00316
Figure pat00317
Figure pat00317
00 00
Figure pat00318
Figure pat00318
Figure pat00319
Figure pat00319
Figure pat00320
Figure pat00320
00
Figure pat00321
Figure pat00321
00
Figure pat00322
Figure pat00322
Figure pat00323
Figure pat00323
00
Figure pat00324
Figure pat00324
00
Figure pat00325
Figure pat00325
00 00
Figure pat00326
Figure pat00326
Figure pat00327
Figure pat00327
Figure pat00328
Figure pat00328
Figure pat00329
Figure pat00329
Figure pat00330
Figure pat00330
00
Figure pat00331
Figure pat00331
Figure pat00332
Figure pat00332
Figure pat00333
Figure pat00333
00
Figure pat00334
Figure pat00334
00

지금까지는 링크 좌표계 상의 한 점이 갖는 좌표

Figure pat00335
를 왼쪽 고관절에 위치한
Figure pat00336
좌표계 기준으로 측정했을 때의 좌표 관계식을 구했는데, 이를 도 3 또는 도 5의 신체 중심점에 놓인 휴먼좌표계인
Figure pat00337
좌표계를 기준으로 측정한 좌표값으로 변환하기 위해서는 다음 식과 같이 좌표계 변환행렬을 추가적으로 곱해줘야 한다.So far, the coordinates of a point in the link coordinate system
Figure pat00335
located in the left hip joint
Figure pat00336
A coordinate relational expression was obtained when measured based on the coordinate system, which is a human coordinate system placed at the center point of the body in FIG. 3 or FIG.
Figure pat00337
In order to convert the coordinate values measured based on the coordinate system, it is necessary to additionally multiply the coordinate system transformation matrix as shown in the following equation.

Figure pat00338
Figure pat00338

상기 수학식 25에서

Figure pat00339
Figure pat00340
좌표계의 각 축 단위벡터를,
Figure pat00341
Figure pat00342
좌표계의 각 축 단위벡터를 각각 나타낸다.In Equation 25 above
Figure pat00339
Is
Figure pat00340
The unit vector of each axis of the coordinate system,
Figure pat00341
Is
Figure pat00342
Each axis unit vector of the coordinate system is indicated.

도 6은 일 실시 예에 따른 신경망 모델에서 인식한 관절 및 관절 사이를 연결하는 링크를 설명하기 위한 도면이다.6 is a diagram for explaining a joint recognized by a neural network model and a link connecting the joints according to an embodiment.

일 실시 예에 의하면, 전자 장치(1000)는 대상자를 촬영함으로써 획득한 이미지를 소정의 신경망 모델(예컨대 오픈포즈 모델)에 입력함으로써 대상자에 대한 관절 포인트, 관절을 연결하는 링크에 대한 관절-링크 모델을 획득할 수 있다. 오픈포즈 모델은 인간의 관절과 얼굴, 발의 각 위치를 도 6에서 보는 것과 같이 0에서 24까지의 번호로 인식할 수 있다. According to an embodiment, the electronic device 1000 inputs an image obtained by photographing a subject into a predetermined neural network model (eg, an open pose model), thereby providing a joint point for the subject and a joint-link model for a link connecting the joints. can be obtained. The open pose model can recognize each position of a human joint, face, and foot as numbers 0 to 24 as shown in FIG. 6 .

오픈포즈는 3차원에 있는 인체 골격을 2차원 영상에 투영하므로 투영법을 잘 활용해야 한다. 그런데 사람이 걸어가는 것을 정면에서 볼 때와 측면에서 볼 때를 생각해보면 동일한 모션에 대해서도 투영된 골격모델이 달라지는 것을 알 수 있다. 즉, 걸어가기 위해서 한 쪽 다리를 들어 올렸을 때 이를 정면에서 보면 투영법의 효과에 의해 허벅지 길이가 줄어들어 보이고, 이 값과 원래 길이와의 비율을 acos 함수로 계산하면 시상면(sagittal plane, x-z 평면) 관절각이 나온다. 반면에 측면에서 허벅지를 보면 길이는 그대로이므로 그냥 각도 값을 계산하면 된다. 그러므로 사람을 보는 각도에 따라 동일한 관절각을 계산하는 방법이 달라진다. 이하 후술하는 도 7을 참조하여 사람을 보는 각도에 따른 관절각을 계산하는 과정을 설명하기로 한다.Since Open Pose projects a three-dimensional human skeleton onto a two-dimensional image, it is necessary to use the projection method well. However, if you consider when a person walks when viewed from the front and from the side, it can be seen that the projected skeletal model is different even for the same motion. In other words, when one leg is raised to walk, when viewed from the front, the thigh length appears to have decreased due to the effect of the projection method. joint angles appear. On the other hand, if you look at the thigh from the side, the length is the same, so you just need to calculate the angle value. Therefore, the method of calculating the same joint angle varies depending on the angle from which the person is viewed. Hereinafter, a process of calculating the joint angle according to the viewing angle of a person will be described with reference to FIG. 7 to be described later.

도 7은 일 실시 예에 따라 3차원 물체를 관상면과 시상면에 투영했을 때의 관계를 위한 도면이다.7 is a diagram for a relationship when a three-dimensional object is projected on a coronal plane and a sagittal plane, according to an embodiment.

도 8은 사람과 카메라의 각도 관계를 설명하기 위한 도면이다.8 is a diagram for explaining an angular relationship between a person and a camera.

도 7의 그림 (702)을 참조하면 길이가

Figure pat00343
인 역진자를 시상면에서
Figure pat00344
만큼 회전시키고 관상면(coronalplnae, y-z 평면)에서
Figure pat00345
만큼 회전시킨 것을 3차원과 2차원에서 표현한 것을 나타낸다. 도 8의 그림 (704)를 참조하면 카메라가 사람을 촬영하는 각도를
Figure pat00346
라고 할 때 사람과 카메라의 각도 관계를 정의한 것이다. 즉, 카메라가 사람을 정면으로 마주보고 있을 때는
Figure pat00347
Figure pat00348
, 카메라가 시계 반대방향으로 움직여서 마주보는 사람의 왼쪽을 찍으면 양의 각도, 시계 방향으로 움직여서 마주보는 사람의 오른쪽을 찍으면 음의 각도라고 정의한다. 그러므로 카메라가 정확하게 좌측에서 사람을 찍으면(혹은 화면에서 사람이 정확하게 오른쪽을 향하면)
Figure pat00349
값은
Figure pat00350
, 정확하게 우측에서 사람을 찍으면(혹은 화면에서 사람이 정확하게 왼쪽을 향하면)
Figure pat00351
가 된다. Referring to figure 702 of FIG. 7 , the length is
Figure pat00343
Inverted pendulum in the sagittal plane
Figure pat00344
rotated by and in the coronal plnae (yz plane)
Figure pat00345
It represents the representation in 3D and 2D that rotated as much as possible. Referring to the figure 704 of FIG. 8, the angle at which the camera shoots a person is
Figure pat00346
It defines the angular relationship between the person and the camera. That is, when the camera is facing the person
Figure pat00347
Is
Figure pat00348
, is defined as a positive angle when the camera moves counterclockwise to take a picture on the left side of the person facing it, and a negative angle when the camera moves clockwise to take a picture on the right side of the person facing it. So if the camera is shooting a person exactly on the left (or if the person on the screen is pointing exactly right)
Figure pat00349
value is
Figure pat00350
, when you photograph a person precisely from the right (or when the person is correctly pointed to the left on the screen).
Figure pat00351
becomes

오픈포즈는 각 관절에 대해 2차원 영상 좌표를 제공하므로, 이로부터 링크의 길이와 각도를 계산할 수 있다. 각 관절에 대해, 관련 링크 길이가

Figure pat00352
에서
Figure pat00353
으로 변화하는 것을 이용해서 계산한 각도 값에는 아래첨자
Figure pat00354
을, 연결된 두 링크 간의 각도인
Figure pat00355
를 이용해서 계산한 각도 값에는 아래첨자
Figure pat00356
를 붙인다. Since OpenPose provides two-dimensional image coordinates for each joint, the length and angle of the link can be calculated from them. For each joint, the associated link length is
Figure pat00352
at
Figure pat00353
The angle value calculated using the change to
Figure pat00354
, which is the angle between the two connected links
Figure pat00355
The angle value calculated using
Figure pat00356
paste it

이제 도 7의 그림 (702) 및 도 8의그림 (704)를 참조하여 촬영각

Figure pat00357
와 시상면 관절
Figure pat00358
, 관상면 관절
Figure pat00359
와의 관계를 보자. 도 7의그림 (702)의 아래 왼쪽 그림은 역진자의 움직임이 관상면에 투영된 것이다. 이때
Figure pat00360
이고,
Figure pat00361
에 의해서 링크의 길이가
Figure pat00362
에서
Figure pat00363
으로 바뀌고,
Figure pat00364
에 의해서 역진자의 회전이 일어났으므로 하기 수학식에 따른 관계식이 성립한다.Now with reference to the figure 702 of FIG. 7 and the figure 704 of FIG. 8, the shooting angle
Figure pat00357
and sagittal joint
Figure pat00358
, coronal joint
Figure pat00359
Let's see the relationship with The lower left figure of the figure 702 of FIG. 7 is that the motion of the inverted pendulum is projected onto the coronal plane. At this time
Figure pat00360
ego,
Figure pat00361
the length of the link by
Figure pat00362
at
Figure pat00363
is changed to
Figure pat00364
Since the rotation of the inverted pendulum occurred by

Figure pat00365
Figure pat00365

도 7의 그림 (702)의 아래 오른쪽 그림은 역진자의 움직임이 시상면에 투영된 것이며, 이때

Figure pat00366
이고,
Figure pat00367
에 의해서 역진자의 회전이 일어나고,
Figure pat00368
에 의해서 링크의 길이가
Figure pat00369
에서
Figure pat00370
으로 바뀌었으므로 다음의 관계식이 성립한다.The lower right figure of the figure 702 of FIG. 7 is that the motion of the inverted pendulum is projected on the sagittal plane, at this time
Figure pat00366
ego,
Figure pat00367
The rotation of the inverted pendulum is caused by
Figure pat00368
the length of the link by
Figure pat00369
at
Figure pat00370
, so the following relation is established:

Figure pat00371
Figure pat00371

상기 수학식 26 내지 27을 참조하면, 시상면 관절각

Figure pat00372
Figure pat00373
Figure pat00374
일 때(카메라가 사람을 정면으로 촬영할 때)는 오픈포즈 골격모델의 링크 길이 변화를 사용하고,
Figure pat00375
Figure pat00376
일 때(카메라가 사람을 좌측에서 촬영할 때)는 회전각을 사용해서 계산할 필요성이 있다. 그러므로 카메라의 촬영각
Figure pat00377
가 다양하게 변할 때 오픈포즈 골격모델로부터 계산되는 시상면 각도는 다음 수학식 28과 같이
Figure pat00378
에 따른 가중치 합으로 계산해야 한다. 카메라가 사람을 좌측면에서 촬영할 때는
Figure pat00379
가 음수이므로 식에서 절대값을 취했다.Referring to Equations 26 to 27, the sagittal joint angle
Figure pat00372
Is
Figure pat00373
go
Figure pat00374
When (when the camera shoots a person in front), the link length change of the open pose skeletal model is used,
Figure pat00375
go
Figure pat00376
, it is necessary to calculate using the angle of rotation (when the camera is photographing a person from the left). Therefore, the angle of view of the camera
Figure pat00377
When is varied, the sagittal angle calculated from the open pose skeletal model is as shown in Equation 28 below.
Figure pat00378
should be calculated as the sum of weights according to When the camera is shooting a person from the left side
Figure pat00379
Since is a negative number, the absolute value is taken from the expression.

Figure pat00380
Figure pat00380

이와 반대로 관상면 관절각

Figure pat00381
Figure pat00382
Figure pat00383
일 때는 회전각을 사용하고,
Figure pat00384
Figure pat00385
일 때는 오픈포즈 골격모델의 링크 길이 변화를 사용해서 계산해야 한다. 그러므로 오픈포즈 골격 정보로부터 계산되는 관상면 각도는 다음 수학식 29 및 30과 같이
Figure pat00386
에 따른 가중치 합으로 계산해야 한다.Conversely, the coronal joint angle
Figure pat00381
Is
Figure pat00382
go
Figure pat00383
When the angle of rotation is used,
Figure pat00384
go
Figure pat00385
In some cases, it should be calculated using the link length change of the open pose skeletal model. Therefore, the coronal angle calculated from the open pose skeleton information is as shown in Equations 29 and 30 below.
Figure pat00386
should be calculated as the sum of weights according to

Figure pat00387
Figure pat00387

Figure pat00388
Figure pat00388

이제 후술하는 도 9 내지 11을 참조하여 두 링크가 있을 때 두 링크의 사이각을 계산하는 방법에 대해 설명하기로 한다.A method of calculating an angle between two links when there are two links will now be described with reference to FIGS. 9 to 11, which will be described later.

도 9는 일 실시 예에 따라 두 점이 이르는 각도를 설명하기 위한 도면이다.9 is a view for explaining an angle between two points, according to an exemplary embodiment.

도 9의 그림 (902)에서 보듯이 점

Figure pat00389
은 앞서가는 링크의 끝점,
Figure pat00390
는 뒤따르는 링크의 끝점을 의미하고, 점
Figure pat00391
의 각도가
Figure pat00392
, 점
Figure pat00393
의 각도가
Figure pat00394
라고 하자. 두 점이 둘 다 1사분면에 있을 때, 두 점의 사이각
Figure pat00395
는 다음과 같이 계산할 수 있다.As shown in figure 902 of FIG. 9, the point
Figure pat00389
is the endpoint of the preceding link,
Figure pat00390
denotes the endpoint of the link that follows, and the dot
Figure pat00391
the angle of
Figure pat00392
, dot
Figure pat00393
the angle of
Figure pat00394
let's say When two points are in the first quadrant, the angle between the two points
Figure pat00395
can be calculated as

Figure pat00396
Figure pat00396

Figure pat00397
Figure pat00397

상기 수학식 31 내지 32에서 atan2 함수는 tan함수의 역함수로서

Figure pat00398
값을
Figure pat00399
에서
Figure pat00400
범위에서 계산하는 함수를 의미한다. In Equations 31 to 32, the atan2 function is the inverse function of the tan function.
Figure pat00398
value
Figure pat00399
at
Figure pat00400
A function that calculates in a range.

도 10은 또 다른 실시 예에 따라 두 점이 이루는 각도를 설명하기 위한 도면이다.10 is a view for explaining an angle formed by two points according to another embodiment.

도 10의 그림 (906)을 참조하면, 같이 앞서가는 점이 3사분면이나 4사분면에 있을 때는 앞서가는 점의 atan2 함수 결과값이 음의 각도가 되므로 아래 식과 같이 이 각도에

Figure pat00401
를 더해야 한다.Referring to the figure 906 of FIG. 10, when the leading point is in the third or fourth quadrant, the result value of the atan2 function of the leading point becomes a negative angle.
Figure pat00401
should be added

도 10의 그림 (908)에 도시된 바와 같이 앞서가는 점은 3사분면에, 뒤따른 점은 4사분면에 있는 경우 앞서가는 점에는

Figure pat00402
를 더하고 뒤따르는 점은 그냥 음의 각도값을 빼주면 된다.As shown in figure 908 of FIG. 10 , when the leading point is in the third quadrant and the following point is in the fourth quadrant, the leading point is in the fourth quadrant.
Figure pat00402
To add and follow the dot, simply subtract the negative angle value.

Figure pat00403
Figure pat00403

도 11은 또 다른 실시 예에 따라 두 점이 이루는 각도를 설명하기 위한 도면이다.11 is a view for explaining an angle formed by two points according to another embodiment.

도 11에 도시된 바와 같이 앞서가는 점과 뒤따른 점이 3,4분면이라도 같은 사분면에 있는 경우 앞서가는 점의 각도에 뒤따르는 점의 각도를 그냥 빼주면 된다.As shown in FIG. 11 , if the leading point and the following point are in the same quadrant even in the 3rd or 4th quadrant, the angle of the following point is simply subtracted from the angle of the leading point.

Figure pat00404
Figure pat00404

지금까지의 여러 경우를 정리하여 표를 만들면 다음과 같다. 표에서

Figure pat00405
은 앞서가는 점,
Figure pat00406
는 뒤따르는 점을 의미하고,
Figure pat00407
이다.
Figure pat00408
Figure pat00409
가 이루는 각도 차이는 하기 표 3의 보정된 각도 값 및 상기 보정된 각도 값을 하기 수학식 35에 적용함으로써 계산될 수 있다.The following is a table by summarizing the various cases so far. in the table
Figure pat00405
is the leading point,
Figure pat00406
means the following point,
Figure pat00407
am.
Figure pat00408
class
Figure pat00409
The angle difference formed by can be calculated by applying the corrected angle value of Table 3 below and the corrected angle value to Equation 35 below.

Figure pat00410
Figure pat00410

Figure pat00411

Figure pat00412
Figure pat00411

Figure pat00412
1사분면Quadrant 1 2사분면quadrant 2 3사분면quadrant 3 4사분면quadrant 4 1사분면Quadrant 1
Figure pat00413
Figure pat00413
Figure pat00414
Figure pat00414
Figure pat00415
Figure pat00415
Figure pat00416
Figure pat00416
2사분면quadrant 2
Figure pat00417
Figure pat00417
Figure pat00418
Figure pat00418
Figure pat00419
Figure pat00419
Figure pat00420
Figure pat00420
3사분면quadrant 3
Figure pat00421
Figure pat00421
Figure pat00422
Figure pat00422
Figure pat00423
Figure pat00423
Figure pat00424
Figure pat00424
4사분면quadrant 4
Figure pat00425
Figure pat00425
Figure pat00426
Figure pat00426
Figure pat00427
Figure pat00427
Figure pat00428
Figure pat00428

이제 오픈포즈를 이용해서 2차원 영상좌표계에서 표현된 대상인의 관절-링크 모델만으로 카메라가 그 사람을 촬영하는 각도인

Figure pat00429
를 계산하는 방법에 대해 설명한다.Now, using the open pose, the angle at which the camera shoots the person with only the joint-link model of the target person expressed in the two-dimensional image coordinate system.
Figure pat00429
How to calculate .

제자리에서 똑바로 선 채 왼쪽이나 오른쪽으로 방향이 틀어져 있으면 어깨 링크나 골반 링크가 투영법에 의해 그만큼 짧아 보일 것이다. 이 중에서 어깨 링크는 상체의 자세와 숙인 각도에도 영향을 받으므로, 골반 링크의 길이 변화를 측정하는 것이 낫다. 그런데, 투영법은 코싸인 함수 관계가 있으므로 양의 각도나 음의 각도가 같은 값이 나온다. 즉, 사람이 제자리에서 왼쪽으로

Figure pat00430
돌아서 있을 때와 오른쪽으로
Figure pat00431
돌아서 있을 때 투영되어 보이는 골반의 길이가 같아서 이 길이 변화만으로는 왼쪽인지 오른쪽인지 구분할 수가 없다. If you stand upright in place and turn left or right, your shoulder links or pelvic links will appear that short of projection. Among them, since the shoulder link is also affected by the posture and leaning angle of the upper body, it is better to measure the change in the length of the pelvic link. However, since the projection method has a cosine function relation, the same positive and negative angles are obtained. That is, the person moves to the left in place
Figure pat00430
when turning and to the right
Figure pat00431
Since the projected pelvis is the same length when turned around, it is impossible to tell whether the pelvis is left or right just by changing this length.

이에 대한 대책으로 머리가 향하는 방향을 확인해서 몸통 링크에 대해 왼쪽으로 틀어져 있는지 오른쪽으로 틀어져 있는지를 확인하고, 몇 도 정도 틀어져 있는지는 골반 링크의 길이 비교를 함으로써 카메라 각도

Figure pat00432
를 계산할 수 있다. 참고로 도 6에서 얼굴 부분의 특징점 번호가 코는 0, 오른쪽 눈은 15, 오른쪽 귀는 17, 왼쪽 눈은 16, 왼쪽 귀는 18이다.As a countermeasure against this, check the direction the head is facing, check whether it is twisted to the left or the right with respect to the trunk link, and compare the length of the pelvic link to see how many degrees it is twisted by comparing the camera angle.
Figure pat00432
can be calculated. For reference, in FIG. 6 , the feature point numbers of the face part are 0 for the nose, 15 for the right eye, 17 for the right ear, 16 for the left eye, and 18 for the left ear.

도 12는 일 실시 예에 따라 사람이 정면을 향할 때 또는 오른쪽을 향할 때 신경망 모델에서 인식한 모델을 설명하기 위한 도면이다.12 is a diagram for explaining a model recognized by a neural network model when a person faces the front or the right, according to an embodiment.

도 12를 참조하면 카메라가 고정되어 있고 사람이 정면을 향할 때와 오른쪽을 향할 때 오픈포즈에서 인식한 링크-관절 모델의 비교 결과를 알 수 있다. 도 12의 그림 (922)에 도시된 바와 같이 사람이 정면을 향할 때는 얼굴에 해당하는 0번-1번 링크가 수직이지만, 도 12의 그림 (924)에 도시된 바와 같이, 사람이 오른쪽을 향할 때는 0번-1번 링크가 몸통(torso) 링크에 비해 왼쪽(상하반전이 일어나는 영상좌표에서도 왼쪽)으로 기울어진 것을 알 수 있다. 이는 얼굴이 어깨에 비해 앞으로 나와 있고 이를 측면에서 보았을 때 발생하는 현상이다. 반대로 사람이 왼쪽을 향할 때는 0번-1번 링크가 몸통 링크의 오른쪽(영상좌표에도 오른쪽)으로 기울 것이라는 사실을 알 수 있다.Referring to FIG. 12 , it can be seen the comparison result of the link-joint model recognized by the open pose when the camera is fixed and the person faces the front and the right side. As shown in the figure 922 of FIG. 12 , when the person faces the front, the links 0-1 corresponding to the face are vertical, but as shown in the figure 924 of FIG. 12 , the person faces to the right. At this time, it can be seen that the links 0-1 are inclined to the left compared to the torso link (even in the image coordinates where the up and down inversion occurs). This is a phenomenon that occurs when the face is protruded forward relative to the shoulder and viewed from the side. Conversely, it can be seen that when a person turns left, links 0-1 will lean to the right of the body link (right in the image coordinates).

도 13은 일 실시 예에 따라 사람이 오른쪽, 정면, 왼쪽을 향할 때의 신경망 모델에서 인식한 인식 모델을 설명하기 위한 도면이다.13 is a diagram for describing a recognition model recognized by a neural network model when a person faces right, front, and left, according to an embodiment.

도 13을 참조하여 카메라가 고정된 경우 사람이 오른쪽, 정면, 왼쪽을 향할 때, 또는 카메라가 움직이는 경우 사람의 왼쪽, 정면, 오른쪽을 촬영할 때 오픈포즈에서 인식한 골격모델을 설명하기로 한다. 오픈포즈로 인식한 인체 골격 데이터의 움직임을 3차원 공간에서 표현할 때 기준좌표계가 몸 중심점에 있어서 공중에 떠있는 자세라고 가정하므로 카메라의 위치와 상관없이 사람을 기준으로 모델링 하는 것이 보다 더 직관적이다.A skeletal model recognized in an open pose when a person faces right, front, or left when the camera is fixed, or when the left, front, or right side of a person is photographed when the camera is moving will be described with reference to FIG. 13 . When expressing the movement of human skeleton data recognized by an open pose in a three-dimensional space, it is more intuitive to model based on a person regardless of the position of the camera because the reference coordinate system is assumed to be a posture floating in the air at the center of the body.

도 13에서

Figure pat00433
좌표계는 인체 움직임과는 상관없이 인체 중심부에 고정되어 있는 절대좌표계(absolute coordinate frame)이고,
Figure pat00434
좌표계는 인체의 중심에 붙어있으며 사람이 바라보는 방향을 틀거나 카메라가 회전하면 그에 따라 회전하는 상대좌표계(relative coordinate frame)이다.
Figure pat00435
Figure pat00436
축을 중심으로
Figure pat00437
축을 회전시켜서
Figure pat00438
축을 얻을 때 그 회전각도이다. 오른손 법칙에 의하면 도 13의 그림 (932)에 도시된 바와 같이 사람이 카메라에 대해 오른쪽으로 도는 경우
Figure pat00439
는 음의 각도가 되고, 도 13의 그림 (936)에 도시된 바와 같이 카메라에 대해 왼쪽으로 도는 경우
Figure pat00440
는 양의 각도가 되며, 도 13의 그림 (934)에 도시된 바와 같이 카메라에 대해 정면인 경우 각도
Figure pat00441
는 0이 된다. 그럼 오픈포즈 영상으로부터 사람이 향하는 각도
Figure pat00442
를 계산하기 위해서는 아래의 두 단계가 필요하다. 먼저 2차원 영상좌표계에서 0번-1번 링크(얼굴 부분)가 1번-8번 링크의 왼쪽에 있는지 오른쪽에 있는지를 확인한다. 앞서 설명한 대로 영상좌표계에서 얼굴 링크가 몸통 링크의 왼쪽에 있으면 사람이 오른쪽을 향하는 것이고
Figure pat00443
, 반대로 얼굴 링크가 몸통 링크의 오른쪽에 있으면 왼쪽을 향하는 것이다
Figure pat00444
. 두번째로 대상인이 정면을 향하고 차려 자세로 있을 때 골반의 픽셀 길이를
Figure pat00445
, 걸어가는 중에 측정된 골반의 픽셀 길이를
Figure pat00446
라고 하면, 그 비율의 acos 함수 값을 이용하면
Figure pat00447
의 크기를 알 수 있다. 그런데 대상인이 카메라로 다가오거나 멀어질 경우에도
Figure pat00448
가 달라질 수 있으므로, 몸통 대 골반의 픽셀 길이의 비율 변화를 계산하는 것이 보다 안정적인 측정결과를 얻을 수 있는 방법이다. 첫 번째 단계에서 0번-1번 링크가 왼쪽과 오른쪽 중 어디에 있는지는 두 링크(0번-1번 링크와 1번-8번 링크)간 사이각 계산 방법을 적용하면 된다.13 in FIG.
Figure pat00433
The coordinate system is an absolute coordinate frame that is fixed at the center of the human body regardless of human body movement.
Figure pat00434
The coordinate system is attached to the center of the human body and is a relative coordinate frame that rotates according to the direction of the person's gaze or the camera rotates.
Figure pat00435
Is
Figure pat00436
around the axis
Figure pat00437
by rotating the axis
Figure pat00438
It is the rotation angle when the axis is obtained. According to the right-hand rule, when a person turns to the right with respect to the camera as shown in figure 932 of FIG.
Figure pat00439
is a negative angle, and when turning left with respect to the camera as shown in figure 936 of FIG.
Figure pat00440
is a positive angle, the angle when facing the camera as shown in figure 934 of FIG.
Figure pat00441
becomes 0. Then, the angle the person faces from the open pose image
Figure pat00442
The following two steps are required to calculate . First, it is checked whether the 0-1 link (face part) is on the left or right side of the 1-8 link in the 2D image coordinate system. As described above, if the face link is to the left of the body link in the image coordinate system, the person is facing to the right.
Figure pat00443
, conversely, if the face link is to the right of the body link, it is pointing to the left.
Figure pat00444
. Second, measure the pixel length of the pelvis when the subject is in a front-facing pose.
Figure pat00445
, the pixel length of the pelvis measured during walking
Figure pat00446
, if we use the acos function value of that ratio,
Figure pat00447
size can be found. However, even if the subject approaches or moves away from the camera,
Figure pat00448
Since ? can vary, calculating the ratio change of the pixel length of the torso to the pelvis is a way to obtain a more stable measurement result. In the first step, the method of calculating the angle between the two links (Links 0-1 and Links 1-8) is applied to determine whether the 0-1 link is on the left or the right side.

도 14는 일 실시 예에 따라 사람이 오른쪽과 왼쪽을 향할 때 신경망으로 인식된 골격 모델을 설명하기 위한 도면이다.14 is a diagram for explaining a skeletal model recognized by a neural network when a person faces right and left, according to an embodiment.

도 14를 참조하면, 도 14의 그림 (942) 및 그림 (944)는 각각 사람이 카메라 기준으로 오른쪽을 향할 때와 왼쪽을 향할 때 영상좌표계에서 인식된 오픈포즈 골격모델을 나타낸다.Referring to FIG. 14 , figures 942 and 944 of FIG. 14 show the open pose skeletal model recognized in the image coordinate system when a person faces right and left with respect to the camera, respectively.

도 15는 일 실시 예에 따라 얼굴 링크와 몸통 링크의 사이각을 설명하기 위한 도면이다.15 is a view for explaining an angle between a face link and a body link, according to an embodiment.

도 15는 영상좌표계에서 얼굴 링크가 몸통 링크에 비해 왼쪽이나 오른쪽으로 기울어진 각도

Figure pat00449
를 계산하는 과정을 나타낸다. 영상좌표계에서 얼굴 링크의 각도를
Figure pat00450
, 몸통 링크의 각도를
Figure pat00451
, 그 사이각을
Figure pat00452
라고 하면 다음의 관계가 성립한다.15 is an angle at which the face link is inclined to the left or right compared to the body link in the image coordinate system.
Figure pat00449
shows the process of calculating The angle of the face link in the image coordinate system
Figure pat00450
, the angle of the body link
Figure pat00451
, the angle between
Figure pat00452
, then the following relationship is established:

Figure pat00453
Figure pat00453

Figure pat00454
Figure pat00454

도 15에서 얼굴 링크가 몸통 링크의 연속선상에 있을 때

Figure pat00455
,
Figure pat00456
이며, 얼굴 링크가 몸통 링크에 비해 왼쪽에 있으면(사람은 오른쪽을 향함)
Figure pat00457
,
Figure pat00458
, 얼굴 링크가 몸통 링크에 비해 오른쪽에 있으면(사람은 왼쪽을 향함)
Figure pat00459
,
Figure pat00460
이다. 두 번째 단계에서 몸통의 픽셀 길이(
Figure pat00461
) 대 골반의 픽셀 길이(
Figure pat00462
)의 비율을
Figure pat00463
라고 하면, 정면을 보고 서있을 때의 골반 길이 비율(
Figure pat00464
) 값을 미리 확보해 둔다. 그리고 현재 자세에서의 몸통 대 골반 길이의 비율인
Figure pat00465
를 계산하여 현재 골반 길이가 얼마나 변했는지를 계산할 수 있다. 이를 식으로 표현하면 다음과 같다.15, when the facial link is on a continuous line of the body link
Figure pat00455
,
Figure pat00456
, if the face link is to the left relative to the body link (people face right)
Figure pat00457
,
Figure pat00458
, if the face link is to the right compared to the torso link (people face left)
Figure pat00459
,
Figure pat00460
am. In the second step, the pixel length of the body (
Figure pat00461
) versus pelvis length in pixels (
Figure pat00462
) to the ratio of
Figure pat00463
, the ratio of pelvic length when standing facing the front (
Figure pat00464
) to reserve the value in advance. And the ratio of the torso to pelvis length in the current posture is
Figure pat00465
can be calculated to calculate how much the current pelvic length has changed. Expressing this in an expression is as follows.

Figure pat00466
Figure pat00466

상기 내용에 따라 카메라를 기준으로 사람이 향하는 각도

Figure pat00467
를 계산하면 다음과 같다.The angle the person faces with respect to the camera according to the above
Figure pat00467
is calculated as follows.

Figure pat00468
Figure pat00468

그리고

Figure pat00469
가 이렇게
Figure pat00470
(정면을 향할 때)가 아닌 값이 되면 신체 중심점 휴먼좌표계인
Figure pat00471
좌표계 식을 세계좌표계인
Figure pat00472
좌표계 식으로 변환해야 한다. 이를 위해 아래와 같이 회전변환행렬을 곱해줘야 한다.And
Figure pat00469
go like this
Figure pat00470
If it becomes a value other than (when facing forward), the human coordinate system of the body center
Figure pat00471
Coordinate system expression is world coordinate system
Figure pat00472
It must be converted to a coordinate system expression. To do this, we need to multiply the rotation transformation matrix as follows.

Figure pat00473
Figure pat00473

식에서

Figure pat00474
Figure pat00475
좌표계의 각 축 단위벡터를
Figure pat00476
Figure pat00477
좌표계의 각 축 단위벡터를 각각 나타낸다.in the expression
Figure pat00474
Is
Figure pat00475
The unit vector of each axis of the coordinate system
Figure pat00476
Is
Figure pat00477
Each axis unit vector of the coordinate system is indicated.

도 16은 일 실시 예에 따라 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.16 is a diagram illustrating a skeletal model of a human body displayed in pixel coordinates, according to an exemplary embodiment.

오픈포즈는 카메라 픽셀 영상에서 인간의 주요 관절과 얼굴, 발을 인식하여 픽셀 좌표값을 계산하므로 이 좌표를 기반으로 인체를 2차원에서 모델링하면 도 16의 그림 (1632)에 도시된 바와 같은 자세가 나온다. 그림에서 신체의 부분을 표시할 때 빨간 색은 오른쪽을, 파란 색은 왼쪽을 나타내므로, 상하 반전이 된 것을 알 수 있다. 도 16의 그림 (1632)의 인체 골격 모델은 픽셀 좌표에 따라 관절(1634) 및 상기 관절에 연결된 링크(1636)를 포함할 수 있다. 먼저 후술하는 도 17을 참조하여 하체의 관상면, 시상면 관절각 계산법에 대해 설명하기로 한다. Open pose recognizes the main joints, face, and feet of a human from the camera pixel image and calculates pixel coordinate values. Based on these coordinates, if the human body is modeled in two dimensions, the posture as shown in figure 1632 of FIG. 16 is obtained. comes out When displaying body parts in the figure, red indicates the right and blue indicates the left, so you can see that the top and bottom are inverted. The human skeleton model of the figure 1632 of FIG. 16 may include a joint 1634 and a link 1636 connected to the joint according to pixel coordinates. First, a method for calculating the coronal and sagittal joint angles of the lower body will be described with reference to FIG. 17 to be described later.

도 17은 일 실시 예에 따라 서있는 로봇 모델 하체의 관절-링크 모델을 나타내는 도면이다.17 is a view showing a joint-link model of the robot model lower body standing according to an embodiment.

도 17은 3차원 공간상에서 정의한 휴머노이드 로봇 모델로서 도 16과 비교하기 위한 도면이다. 도 17에 도시된 오른쪽 관상면 관절각

Figure pat00478
은 차려자세로 있을 때는
Figure pat00479
, 오른쪽에서 왼쪽으로 회전할 때는 양의 각도일 수 있다.FIG. 17 is a diagram for comparison with FIG. 16 as a humanoid robot model defined in a three-dimensional space. The right coronal joint angle shown in FIG. 17
Figure pat00478
When you are in the pose
Figure pat00479
, can be a positive angle when rotating from right to left.

도 18은 일 실시 예에 따라 오른쪽 고관절 관상면 각도를 계산하기 위한 도면이다.18 is a diagram for calculating a right hip coronal angle according to an embodiment.

보다 상세하게는 도 18의 그림 (962)는 오른쪽 고관절 관상면 각도인

Figure pat00480
을 계산하기 위한 개념도이고, 그림 (964)는 그림 (962)의 9번 노드를 원점으로 이동함에 따른 그림이다. 보다 상세하게는 그림 (964)는 골반 링크와 오른쪽 허벅지 링크 간 각도 계산을 하기 위해 9번 노드의 위치를 원점으로 이동한 모습이다. 이제 atan2 함수에서 계산한 각도값을 표 3에서 보정한 함수
Figure pat00481
를 이용해서 하기 수학식 41과 같이 두 각도 값을 계산할 수 있다.In more detail, the figure 962 of FIG. 18 shows the right hip joint coronal angle.
Figure pat00480
It is a conceptual diagram for calculating . In more detail, Figure 964 shows that the position of node 9 is moved to the origin to calculate the angle between the pelvic link and the right thigh link. Now, the angle value calculated by the atan2 function is corrected in Table 3
Figure pat00481
Two angle values can be calculated using Equation 41 below.

Figure pat00482
Figure pat00482

이 각도 값으로부터 도 18의 그림 (962)를 참조하여

Figure pat00483
을 계산하면 다음과 같다.From this angle value, referring to figure 962 of FIG. 18,
Figure pat00483
is calculated as follows.

Figure pat00484
Figure pat00484

즉,

Figure pat00485
은 두 링크의 사이각(
Figure pat00486
)에
Figure pat00487
를 뺀 값이 각도 값이 되고, 각도의 방향은 반대 방향이므로 앞에 마이너스를 곱해준다.in other words,
Figure pat00485
is the angle between the two links (
Figure pat00486
)to
Figure pat00487
The subtracted value becomes the angle value, and since the direction of the angle is in the opposite direction, it is multiplied by a minus in front.

도 19는 일 실시 예에 따라 왼쪽 고관절 관상면 각도를 계산하기 위한 도면이다.19 is a diagram for calculating a left hip coronal angle according to an embodiment.

보다 상세하게는 도 19의 그림 (966)은 왼쪽 고관절 관상면 각도

Figure pat00488
를 계산하기 위한 개념도이고, 그림 (968)은 골반 링크와 왼쪽 허벅지 링크 간 각도 계산을 용이하게 하기 위해 12번 노드의 위치를 원점으로 이동한 그림이다. 마찬가지로
Figure pat00489
를 이용해서 하기 수학식 43과 같이 두 각도 값을 계산할 수 있다.In more detail, the figure 966 of FIG. 19 shows the left hip coronal angle.
Figure pat00488
It is a conceptual diagram for calculating . Likewise
Figure pat00489
Two angle values can be calculated using Equation 43 below.

Figure pat00490
Figure pat00490

이 각도값으로부터

Figure pat00491
을 계산하면 하기 수학식과 같다.from this angle
Figure pat00491
is calculated as the following equation.

Figure pat00492
Figure pat00492

즉,

Figure pat00493
은 두 링크간 사이각(
Figure pat00494
)에
Figure pat00495
를 더한 값이 각도의 크기가 되고 회전축의 방향은 반대이므로 앞에 마이너스를 곱해준다. 다음으로 하체의 시상면 관절각 계산법에 대해 알아보자. 사람이 걸어가는 것을 정면에서 보면 다리를 앞으로 들어올리는 경우 길이가 짧아져 보이는데 이는 투영법에 의한 것임을 상술한 바 있다. 도 17에서 하체의 시상면 관절각
Figure pat00496
은 다리를 앞으로 들어올릴 때는 음의 각도, 뒤로 뻗을 때는 양의 각도로 정의되어 있음에 주의한다. 오른쪽 골반의 시상면 관절각
Figure pat00497
은 다음 식으로 계산할 수 있다.in other words,
Figure pat00493
is the angle between the two links (
Figure pat00494
)to
Figure pat00495
The added value becomes the size of the angle, and the direction of the axis of rotation is opposite, so multiply it by minus in front. Next, let's learn how to calculate the sagittal joint angle of the lower body. If you see a person walking from the front, the length appears shorter when the legs are raised forward, but it has been described above that this is due to the projection method. 17, the sagittal joint angle of the lower body
Figure pat00496
Note that is defined as a negative angle for lifting the leg forward and a positive angle for extending the leg backward. Sagittal articular angle of the right pelvis
Figure pat00497
can be calculated in the following way.

Figure pat00498
Figure pat00498

식에서

Figure pat00499
는 사람이 차려자세로 있을 때 측정한 허벅지뼈의 픽셀길이를,
Figure pat00500
은 사람이 걸어갈 때 측정한 오른쪽 허벅지뼈의 픽셀길이를 의미한다. 식의 부호는 허벅지를 위로 들어올리는 경우 음의 값, 뒤로 내젖는 경우 양의 값이 되므로
Figure pat00501
로 표시했다. 투영법의 특성상 각도의 부호는 알 수 없으므로 다른 정보를 사용해야 한다. 지금처럼 사람이 앞으로 걸어가는 경우에는 제일 먼저 들어올리는 다리를 인식해서 그 다리의 골반 시상면 관절각의 부호를 음수로 잡으면 된다. in the expression
Figure pat00499
is the pixel length of the thighbone measured when the person is in a standing position,
Figure pat00500
is the pixel length of the right thighbone measured when a person walks. The sign of the expression is a negative value when the thigh is lifted upwards, and a positive value when the thigh is extended backwards.
Figure pat00501
marked with Due to the nature of the projection method, the sign of the angle is unknown, so other information must be used. When a person walks forward like now, the first leg is recognized and the sign of the joint angle of the pelvic sagittal plane of that leg is taken as a negative number.

오른쪽 무릎의 시상면 관절각

Figure pat00502
에 대해서 생각해보자. 사람이 걸어갈 때 정강이의 투영된 길이는
Figure pat00503
값에 의해 결정되며, 인체 골격 구조의 특징 상 슬관절은 앞으로 꺾이지 않기 때문에 다음 식으로 계산할 수 있다.Sagittal articular angle of the right knee
Figure pat00502
Let's think about When a person walks, the projected length of the shin is
Figure pat00503
It is determined by the value, and since the knee joint does not bend forward due to the characteristics of the human skeletal structure, it can be calculated using the following formula.

Figure pat00504
Figure pat00504

상기 수학식에서

Figure pat00505
는 사람이 차려자세로 있을 때 측정한 정강이뼈의 픽셀길이를,
Figure pat00506
은 사람이 걸어갈 때 측정한 오른쪽 정강이뼈의 픽셀길이를 의미한다. 왼쪽 다리의 골반과 무릎의 시상면 관절각들은 동일한 원리로 수식화할 수 있다. 즉, 왼쪽 골반의 시상면 관절각
Figure pat00507
은 다음 식으로 계산할 수 있다.in the above formula
Figure pat00505
is the pixel length of the shin bone measured when the person is in a standing position,
Figure pat00506
is the pixel length of the right shinbone measured when a person walks. The sagittal joint angles of the pelvis and knee of the left leg can be formulated using the same principle. That is, the sagittal joint angle of the left pelvis
Figure pat00507
can be calculated in the following way.

Figure pat00508
Figure pat00508

상기 수학식에서

Figure pat00509
은 사람이 걸어갈 때 측정한 왼쪽 허벅지뼈의 픽셀길이를 의미한다.
Figure pat00510
는 왼쪽과 오른쪽 동일한 값으로 두는데, 차려 자세에서 오픈포즈로 측정한 왼쪽과 오른쪽 허벅지의 픽셀 길이의 평균값으로 계산하면 된다. 왼쪽 무릎의 시상면 관절각
Figure pat00511
은 다음 식으로 계산할 수 있다.in the above formula
Figure pat00509
is the pixel length of the left thighbone measured when a person walks.
Figure pat00510
is set as the same value for the left and right sides, and it can be calculated as the average value of the pixel lengths of the left and right thighs measured in an open pose in a dressing up posture. Sagittal articular angle of the left knee
Figure pat00511
can be calculated in the following way.

Figure pat00512
Figure pat00512

상기 수학식에서

Figure pat00513
은 사람이 걸어갈 때 측정한 왼쪽 정강이뼈의 픽셀길이를 의미한다.in the above formula
Figure pat00513
is the pixel length of the left shinbone measured when a person walks.

도 20은 일 실시 예에 따라 로봇 모델 상체의 관절-링크 모델을 설명하기 위한 도면이다.20 is a view for explaining a joint-link model of the upper body of the robot model according to an embodiment.

도 20을 참조하여 상체의 관상면, 시상면 관절각 계산법에 대해 알아보자. 도 20은 3차원 공간상에서 정의한 휴머노이드 로봇 모델로서 도 16의 그림과 비교하기 위한 도면이다. 도 20을 참조하면 양쪽 어깨에 있는 관상면 관절각

Figure pat00514
은 차려자세로 있을 때는
Figure pat00515
, 오른쪽에서 왼쪽으로 회전할때는 양의 각도라는 것을 기억하자.With reference to FIG. 20, let's learn about the method of calculating the coronal and sagittal joint angles of the upper body. FIG. 20 is a diagram for comparison with the figure of FIG. 16 as a humanoid robot model defined in a three-dimensional space. Referring to Figure 20, the coronal joint angles on both shoulders
Figure pat00514
When you are in the pose
Figure pat00515
, remember that a right-to-left rotation is a positive angle.

도 21은 일 실시 예에 따른 오른쪽 및 왼쪽 어깨 관절 각도를 계산하기 위한 도면이다.21 is a diagram for calculating right and left shoulder joint angles according to an embodiment.

보다 상세하게는 도 21의 그림 (972)는 오른쪽 어깨관절 관상면 각도인

Figure pat00516
을 계산하기 위한 개념도이고, 도 21의 그림 (974)는 왼쪽 어깨관절 관상면 각도인
Figure pat00517
을 계산하기 위한 개념도이다. 상술한 하체 관절에 대해 적용한 방법을 그대로 적용하면 다음과 같이 두 각도 값을 계산할 수 있다.In more detail, the figure 972 of FIG. 21 is the right shoulder joint coronal angle.
Figure pat00516
is a conceptual diagram for calculating
Figure pat00517
It is a conceptual diagram for calculating . If the method applied to the lower body joint described above is applied as it is, two angle values can be calculated as follows.

Figure pat00518
Figure pat00518

이 각도 값으로부터 도 21의 그림 (972)를 참조하여

Figure pat00519
을 계산하면 다음과 같다.From this angle value, referring to figure 972 of FIG.
Figure pat00519
is calculated as follows.

Figure pat00520
Figure pat00520

도 21의 그림 (974)를 참조로 하여 왼쪽 어깨관절 관상면 각도인

Figure pat00521
을 계산하는 과정을 설명하기로 한다. 두 각도 값은 다음과 같이 계산할 수 있다.With reference to the figure 974 of FIG. 21, the angle of the coronal plane of the left shoulder joint is
Figure pat00521
The process of calculating . The two angle values can be calculated as follows.

Figure pat00522
Figure pat00522

이 각도 값으로부터 도 21의 그림 (974)를 참조로 하여

Figure pat00523
을 계산하면 다음과 같다.From this angle value, referring to the figure 974 of Fig. 21,
Figure pat00523
is calculated as follows.

Figure pat00524
Figure pat00524

상체의 어깨와 팔목 시상면 관절각 계산 방법은 하체에서 계산한 원리와 비슷하다. 먼저 오른쪽 어깨관절의 시상면 각도인

Figure pat00525
Figure pat00526
와 같이 표현된다.The shoulder and wrist sagittal joint angle calculation method of the upper body is similar to the principle calculated in the lower body. First, the sagittal angle of the right shoulder joint is
Figure pat00525
silver
Figure pat00526
is expressed as

상기 수학식에서

Figure pat00527
는 사람이 차려자세로 있을 때 측정한 위팔뼈의 픽셀길이를,
Figure pat00528
은 사람이 걸어갈 때 측정한 오른쪽 위팔뼈의 픽셀길이를 의미한다. 식의 부호는 팔을 앞으로 흔드는 경우 음의 값, 뒤로 흔드는 경우 양의 값이 되므로
Figure pat00529
로 표시했다. 투영법의 특성상 각도의 부호는 알 수 없으므로 다른 정보를 사용해야 한다. 지금처럼 사람이 앞으로 걸어가는 경우에는 왼쪽, 오른쪽의 다리와 팔이 서로 반대방향으로 움직이는 원리를 이용해서 다리와 팔의 시상면 관절각 부호를 반대로 설정하면 된다. 오른쪽 팔꿈치 시상면 관절각
Figure pat00530
에 대해 생각해보자. 사람이 오른팔을 앞뒤로 흔들 때 아래팔의 투영된 길이는
Figure pat00531
값에 의해 결정되며, 인체 골격 구조의 특징 상 팔꿈치 관절은 뒤로 꺾이지 않기 때문에 다음 식으로 계산할 수 있다.in the above formula
Figure pat00527
is the pixel length of the upper arm bone measured when the person is in a standing position,
Figure pat00528
is the pixel length of the right upper arm bone measured when a person walks. The sign of the expression is negative when the arm is waved forward, and a positive value when the arm is waved backward.
Figure pat00529
marked with Due to the nature of the projection method, the sign of the angle is unknown, so other information must be used. When a person walks forward as it is now, using the principle that the left and right legs and arms move in opposite directions, set the sagittal joint angle sign of the leg and arm in reverse. right elbow sagittal joint angle
Figure pat00530
Let's think about When a person swings their right arm back and forth, the projected length of the forearm is
Figure pat00531
It is determined by the value, and since the elbow joint does not bend backwards due to the characteristics of the human skeletal structure, it can be calculated using the following formula.

Figure pat00532
Figure pat00532

상기 식에서

Figure pat00533
는 사람이 차려자세로 있을 때 측정한 아래팔뼈의 픽셀길이를,
Figure pat00534
은 사람이 걸어갈 때 측정한 오른쪽 아래팔뼈의 픽셀길이를 의미한다. 왼쪽 팔의 시상면 관절각들은 동일한 원리로 수식화할 수 있다. 즉, 왼쪽 어깨의 시상면 관절각
Figure pat00535
은 다음 식으로 계산할 수 있다.in the above formula
Figure pat00533
is the pixel length of the forearm measured when the person is in a standing position,
Figure pat00534
is the pixel length of the right forearm measured when a person walks. The sagittal joint angles of the left arm can be formulated using the same principle. That is, the sagittal joint angle of the left shoulder
Figure pat00535
can be calculated in the following way.

Figure pat00536
Figure pat00536

상기 수학식에서

Figure pat00537
은 사람이 걸어갈 때 측정한 왼쪽 위팔뼈의 픽셀길이를 의미한다. in the above formula
Figure pat00537
is the pixel length of the left upper arm bone measured when a person walks.

왼쪽 팔꿈치 시상면 관절각

Figure pat00538
에 대해 생각해보자. 사람이 왼팔을 앞뒤로 흔들 때 아래팔의 투영된 길이는
Figure pat00539
값에 의해 결정되며, 인체 골격 구조의 특징 상 팔꿈치 관절은 뒤로 꺾이지 않기 때문에 다음 식으로 계산할 수 있다.left elbow sagittal joint angle
Figure pat00538
Let's think about When a person swings their left arm back and forth, the projected length of the forearm is
Figure pat00539
It is determined by the value, and since the elbow joint does not bend backwards due to the characteristics of the human skeletal structure, it can be calculated using the following formula.

Figure pat00540
Figure pat00540

상기 수학식에서

Figure pat00541
은 사람이 걸어갈 때 측정한 오른쪽 왼팔뼈의 픽셀길이를 의미한다.in the above formula
Figure pat00541
is the pixel length of the right left arm bone measured when a person walks.

도 22는 일 실시 예에 따라 왼쪽에서 관측한 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.22 is a diagram illustrating a skeletal model of a human body indicated by pixel coordinates observed from the left, according to an exemplary embodiment.

도 22를 참조하여 사람이 오른쪽을 향할 때의 관절각을 계산하는 과정을 설명하기로 한다. 도 22는 사람이 제자리에서 오른쪽을 향해 걸을 때(카메라는 사람의 왼쪽에서 촬영) 오픈포즈 골격모델을 추출한 화면이다. 마찬가지로 영상좌표계에서 상하 반전이 일어나서 빨간 색은 신체의 오른쪽을, 파란 색은 왼쪽을 나타내는 것을 주의하자. 오픈포즈 골격 모델 화면 (2210)을 참조하면 사람의 관절(2202)이 포인트로 표시되고, 상기 관절(2202)을 연결하는 링크(2204)가 도시됨을 관측할 수 있다. A process of calculating the joint angle when a person turns to the right will be described with reference to FIG. 22 . 22 is a screen obtained by extracting an open pose skeletal model when a person walks from a place to the right (the camera is taken from the person's left side). In the same way, be aware that the red color represents the right side of the body and the blue color represents the left side of the body due to the upside-down inversion in the image coordinate system. Referring to the open pose skeletal model screen 2210, it can be observed that a human joint 2202 is displayed as a point, and a link 2204 connecting the joint 2202 is shown.

먼저 하체의 시상면, 관상면 관절각 계산법에 대해 알아보자. 도 17에서 오른쪽 고관절 시상면 관절각

Figure pat00542
은 차려자세로 있을 때는
Figure pat00543
, 다리를 앞으로 들어 올리면 음의 각도라는 것을 기억하자. First, let's learn how to calculate the sagittal and coronal joint angles of the lower body. 17, the right hip sagittal joint angle
Figure pat00542
When you are in the pose
Figure pat00543
, remember that lifting the leg forward is a negative angle.

도 23은 일 실시 예에 따라 신경망으로 인식한 오른쪽 및 왼쪽 다리의 신경망 골격 모델 및 관절각을 나타내는 도면이다.23 is a diagram illustrating a neural network skeletal model and joint angles of right and left legs recognized by a neural network according to an exemplary embodiment.

도 24는 일 실시 예에 따라 오른쪽 고관절 각도를 계산하기 위한 도면이다.24 is a diagram for calculating a right hip joint angle according to an exemplary embodiment.

보다 상세하게는 도 24는 오른쪽 고관절 시상면 각도인

Figure pat00544
을 계산하기 위한 개념도이다. 이제 앞 절에서 사용한 방식을 그대로 적용해서, 표 3의 보정함수
Figure pat00545
를 이용하여 다음과 같이 두 각도 값을 계산할 수 있다.In more detail, Figure 24 is a right hip joint sagittal angle
Figure pat00544
It is a conceptual diagram for calculating . Now, applying the method used in the previous section as it is, the correction function in Table 3
Figure pat00545
can be used to calculate the two angle values as follows.

Figure pat00546
Figure pat00546

이 각도 값을 이용하고 도 24의 오른쪽 그림을 참고로 하여

Figure pat00547
을 계산하면 다음과 같다.Using this angle value and referring to the figure on the right of FIG. 24,
Figure pat00547
is calculated as follows.

Figure pat00548
Figure pat00548

도 25는 일 실시 예에 따라 오른쪽 슬관절 각도를 계산하기 위한 도면이다.25 is a diagram for calculating a right knee joint angle according to an embodiment.

도 25의 그림 (2226)을 참조하여 오른쪽 슬관절 시상면 각도인

Figure pat00549
을 계산하는 과정을 설명하기로 한다. 마찬가지로 보정함수
Figure pat00550
를 이용해서 다음과 같이 두 각도 값을 계산할 수 있다.Referring to the figure 2226 of FIG. 25, the right knee joint sagittal angle is
Figure pat00549
The process of calculating . Similarly, the correction function
Figure pat00550
can be used to calculate the two angle values as follows.

Figure pat00551
Figure pat00551

이 각도 값을 이용하여

Figure pat00552
을 계산하면 다음과 같다.using this angle
Figure pat00552
is calculated as follows.

Figure pat00553
Figure pat00553

보정함수

Figure pat00554
를 이용해서 다음과 같이 두 각도 값을 계산할 수 있다.correction function
Figure pat00554
can be used to calculate the two angle values as follows.

Figure pat00555
Figure pat00555

이 각도 값을 이용하고 후술하는 도 26을 참조로 하여

Figure pat00556
을 계산하기로 한다.Using this angle value and referring to FIG. 26 to be described later,
Figure pat00556
to calculate

도 26은 일 실시 예에 따라 왼쪽 고관절 각도를 계산하기 위한 도면이다.26 is a diagram for calculating a left hip joint angle according to an embodiment.

상기 수학식 60의 각도 값을 이용하여 도 26을 참조하여

Figure pat00557
하면 다음과 같다. 하기 수학식
Figure pat00558
은 수학식 57과 같은 형태임을 알 수 있다.Referring to FIG. 26 using the angle value of Equation 60,
Figure pat00557
If you do: the following formula
Figure pat00558
It can be seen that is of the same form as in Equation 57.

도 27은 일 실시 예에 따라 왼쪽 슬관절 각도를 계산하기 위한 도면이다.27 is a diagram for calculating a left knee joint angle according to an embodiment.

보다 상세하게는 도 27은 왼쪽 슬관절 시상면 각도인

Figure pat00559
을 계산하기 위한 개념도이다. 보정함수
Figure pat00560
를 이용해서 두 각도 값은 각각
Figure pat00561
와 같이 계산될 수 있다. 이렇게 계산된 각도 값을 이용하여
Figure pat00562
을 계산하면
Figure pat00563
와 같이 표현된다.In more detail, Figure 27 is the left knee joint sagittal angle
Figure pat00559
It is a conceptual diagram for calculating . correction function
Figure pat00560
Each of the two angle values using
Figure pat00561
can be calculated as Using this calculated angle value,
Figure pat00562
If you calculate
Figure pat00563
is expressed as

다음으로 하체의 관상면 관절각 계산법에 대해 알아보자. 사람이 걸어가는 것을 왼쪽이나 오른쪽에서 보면 다리를 옆으로 들어올리는 경우 길이가 짧아져 보이는데 이는 투영법에 의한 것임을 상술하였다. 도 17에서 하체의 관상면 관절각

Figure pat00564
은 다리를 왼쪽으로 들어올릴 때는 양의 각도, 오른쪽으로 들어올릴 때는 음의 각도로 정의되어 있음을 기억하자. 오른쪽 골반의 관상면 관절각
Figure pat00565
과 왼쪽 골반의 관상면 관절각
Figure pat00566
은 다음 식으로 계산할 수 있다. Next, let's learn how to calculate the coronal joint angle of the lower body. If you see a person walking from the left or right side, the length appears shorter when the legs are raised to the side. In Figure 17, the coronal joint angle of the lower body
Figure pat00564
Note that is defined as a positive angle for lifting the leg to the left and a negative angle for lifting the leg to the right. Coronal articular angle of the right pelvis
Figure pat00565
and coronal articular angles of the left pelvis
Figure pat00566
can be calculated in the following way.

Figure pat00567
Figure pat00567

Figure pat00568
Figure pat00568

상기 수학식 61 내지 62에서

Figure pat00569
는 사람이 차려자세로 있을 때 측정한 허벅지뼈의 픽셀길이를,
Figure pat00570
Figure pat00571
은 사람이 걸어갈 때 측정한 오른쪽과 왼쪽 허벅지뼈의 픽셀길이를 각각 의미한다. 식의 부호는 다리를 왼쪽으로 들어올릴 때는 양의 각도, 오른쪽으로 들어올릴 때는 음의 각도이고, 사람이 앞으로 걸어가는 경우에는 일반적으로 다리를 바깥쪽(왼쪽 다리는 왼쪽, 오른쪽 다리는 오른쪽)으로 들어올리는 경향이 있으므로,
Figure pat00572
에는 음의 부호,
Figure pat00573
에는 양의 부호를 부여하면 된다. 이제 상체의 시상면, 관상면 관절각을 상기 방법대로 적용해 보자. 도 20을 참조하면 양쪽 어깨에 있는 시상면 관절각
Figure pat00574
과 팔꿈치에 있는 시상면 관절각
Figure pat00575
은 차려자세로 있을 때는
Figure pat00576
, 팔을 앞쪽으로 들어올릴 때는 음의 각도, 뒤쪽으로 내저을 때는 양의 각도라는 것을 기억하자.In Equations 61 to 62,
Figure pat00569
is the pixel length of the thighbone measured when the person is in a standing position,
Figure pat00570
class
Figure pat00571
is the pixel length of the right and left thighbones, respectively, measured when a person walks. The sign of the equation is a positive angle when the leg is lifted to the left and a negative angle when it is lifted to the right, and when a person is walking forward, the leg is usually turned outward (left leg left, right leg right). As there is a tendency to lift,
Figure pat00572
is a negative sign,
Figure pat00573
should be given a positive sign. Now, let's apply the sagittal and coronal joint angles of the upper body as above. Referring to Figure 20, the sagittal joint angles in both shoulders
Figure pat00574
and sagittal articular angles in the elbow
Figure pat00575
When you are in the pose
Figure pat00576
, Remember that when you raise your arm forward, it is a negative angle, and when you swing it backwards, it is a positive angle.

도 28은 일 실시 예에 따라 오른쪽 팔의 링크와 관절, 오른쪽 어깨의 링크와 관절, 오른쪽 팔꿈치의 링크와 관절들을 설명하기 위한 도면이다.28 is a view for explaining a link and a joint of a right arm, a link and a joint of a right shoulder, and a link and a joint of a right elbow, according to an embodiment.

도 28의 그림 (2242)는 오른쪽 팔에 있는 관절인

Figure pat00577
Figure pat00578
을 계산하기 위한 개념도이다. 도 28의 그림 (2244)는 어깨 관절 부분을 확대해서 그린 그림으로서, 보정함수
Figure pat00579
를 이용해서 다음과 같이 두 각도 값과
Figure pat00580
을 계산할 수 있다. Figure 2242 of Figure 28 is a joint in the right arm.
Figure pat00577
class
Figure pat00578
It is a conceptual diagram for calculating . Figure 2244 of Figure 28 is an enlarged drawing of the shoulder joint portion, the correction function
Figure pat00579
using the two angle values and
Figure pat00580
can be calculated.

Figure pat00581
Figure pat00581

Figure pat00582
Figure pat00582

도 28의 그림 (2246)은 오른팔 팔꿈치 관절 부분을 확대해서 그린 그림으로서, 보정함수

Figure pat00583
을 이용해서 다음과 같이 두 각도 값과
Figure pat00584
을 계산할 수 있다.Figure 2246 of Figure 28 is an enlarged drawing of the elbow joint of the right arm, and the correction function
Figure pat00583
using the two angle values and
Figure pat00584
can be calculated.

Figure pat00585
Figure pat00585

Figure pat00586
Figure pat00586

도 29는 일 실시 예에 따라 왼쪽 팔의 링크와 관절들을 설명하기 위한 도면이다.29 is a diagram for describing a link and joints of a left arm, according to an exemplary embodiment.

보다 상세하게는 도 29의 그림 (2248)을 참조하여 왼쪽 팔에 있는 관절인

Figure pat00587
Figure pat00588
을 계산하기 위한 개념도이다. 앞에서 계산한 방식대로 왼쪽 어깨 관절 부분을 확대해서 그린 그림으로서, 보정함수
Figure pat00589
를 이용해서 다음과 같이 두 각도 값과
Figure pat00590
을 계산할 수 있다.In more detail, referring to the figure 2248 of FIG. 29, the joint in the left arm
Figure pat00587
class
Figure pat00588
It is a conceptual diagram for calculating . As a figure drawn by enlarged the left shoulder joint in the same way as previously calculated, the correction function
Figure pat00589
using the two angle values and
Figure pat00590
can be calculated.

Figure pat00591
Figure pat00591

Figure pat00592
Figure pat00592

왼쪽 팔꿈치 관절 부분은 보정함수

Figure pat00593
를 이용해서 다음과 같이 두 각도 값과
Figure pat00594
을 계산할 수 있다.The left elbow joint part is a correction function
Figure pat00593
using the two angle values and
Figure pat00594
can be calculated.

Figure pat00595
Figure pat00595

Figure pat00596
Figure pat00596

이제 상체 두 어깨의 관상면 관절각 계산법에 대해 알아보자. 도 20에서 어깨의 관상면 관절각

Figure pat00597
은 팔을 왼쪽으로 들어올릴 때는 양의 각도, 오른쪽으로 들어올릴 때는 음의 각도로 정의되어 있음을 기억하자. 이 원리에 따라 오른쪽 어깨의 관상면 관절각
Figure pat00598
은 다음 식으로 계산할 수 있다.Now let's learn how to calculate the coronal joint angle of the upper body and both shoulders. In Fig. 20, the coronal joint angle of the shoulder
Figure pat00597
Note that the angle is defined as a positive angle when the arm is raised to the left and a negative angle when the arm is raised to the right. According to this principle, the coronal joint angle of the right shoulder
Figure pat00598
can be calculated in the following way.

Figure pat00599
Figure pat00599

상기 수학식 71에서

Figure pat00600
는 사람이 차려자세로 있을 때 측정한 위팔뼈의 픽셀길이를,
Figure pat00601
은 사람이 걸어갈 때 측정한 오른쪽 위팔뼈의 픽셀길이를 의미한다. 팔을 왼쪽으로 올릴 때는 양의 각도, 오른쪽으로 올릴 때는 음의 각도이고, 사람이 앞으로 걸어갈 때에는 일반적으로 팔을 바깥쪽(왼쪽 팔은 왼쪽, 오른쪽 팔은 오른쪽)으로 올리는 경향이 있으므로,
Figure pat00602
에는 음의 부호,
Figure pat00603
에는 양의 부호를 부여하면 된다. 마찬가지로 왼쪽 어깨의 관상면 관절각
Figure pat00604
은 다음 식으로 계산할 수 있다.In Equation 71 above
Figure pat00600
is the pixel length of the upper arm bone measured when the person is in a standing position,
Figure pat00601
is the pixel length of the right upper arm bone measured when a person walks. When the arm is raised to the left, it is a positive angle, and when it is raised to the right, it is a negative angle, and when a person walks forward, the arm generally tends to be raised outward (left arm left, right arm right).
Figure pat00602
is a negative sign,
Figure pat00603
should be given a positive sign. Similarly, the coronal joint angle of the left shoulder
Figure pat00604
can be calculated in the following way.

Figure pat00605
Figure pat00605

상기 수학식에서

Figure pat00606
은 사람이 걸어갈 때 측정한 왼쪽 위팔뼈의 픽셀길이를 의미한다.in the above formula
Figure pat00606
is the pixel length of the left upper arm bone measured when a person walks.

도 30은 일 실시 예에 따라 사람이 왼쪽을 향해 걸을 때 픽셀 좌표로 표시된 인체의 골격 모델을 나타내는 도면이다.30 is a diagram illustrating a skeletal model of a human body displayed in pixel coordinates when a person walks toward the left, according to an exemplary embodiment.

도 30을 참조하여 사람이 왼쪽을 향할 때 관절각을 계산하는 과정을 설명하기로 한다. 도 30의 그림 (2250)은 사람이 제자리에서 왼쪽을 향해 걷을 때(카메라는 사람의 오른쪽에서 촬영) 오픈포즈 골격모델을 추출한 화면이다.A process of calculating the joint angle when a person turns to the left will be described with reference to FIG. 30 . Figure 2250 of FIG. 30 is a screen extracting an open pose skeleton model when a person walks from a place to the left (the camera is taken from the person's right side).

도 31은 일 실시 예에 따라 오른쪽 다리 및 왼쪽 다리의 골격 모델과 관절각을 설명하기 위한 도면이다.31 is a view for explaining skeletal models and joint angles of a right leg and a left leg, according to an exemplary embodiment.

보다 상세하게는 도 31의 그림 (2262)는 오른쪽 다리의 오픈포즈 골격 모델과 관절각을 정의하는 도면이고, 도 31의 그림 (2264)는 왼쪽 다리의 오픈포즈 골격 모델과 관절각 정의를 나타내는 도면이다. 상술한 한 원리를 그대로 적용해서 그 결과만을 수식화하면 다음과 같다. 여기서 주의할 점은 시상면 관절각의 양의 회전방향은 사람을 왼쪽에서 볼 때는 시계방향이지만, 오른쪽에서 볼 때는 반시계방향이다. 먼저 오른쪽 고관절 시상면 각도인

Figure pat00607
의 관계식을 유도하면 다음과 같다.In more detail, figure 2262 of FIG. 31 is a view defining the open pose skeletal model and joint angle of the right leg, and figure 2264 of FIG. 31 is a view showing the open pose skeletal model and joint angle definition of the left leg am. Applying the above-mentioned principle as it is and formulating only the result is as follows. Note that the positive rotation direction of the sagittal joint angle is clockwise when viewed from the left, but counterclockwise when viewed from the right. First, the right hip sagittal angle
Figure pat00607
If we derive the relational expression of

Figure pat00608
Figure pat00608

Figure pat00609
Figure pat00609

오른쪽 슬관절 시상면 각도인

Figure pat00610
의 관계식을 유도하면 다음과 같다.Right knee sagittal angle
Figure pat00610
If we derive the relational expression of

Figure pat00611
Figure pat00611

Figure pat00612
Figure pat00612

왼쪽 슬관절 시상면 각도인

Figure pat00613
의 관계식을 유도하면 다음과 같다.Left knee sagittal angle
Figure pat00613
If we derive the relational expression of

Figure pat00614
Figure pat00614

Figure pat00615
Figure pat00615

다음으로 하체의 관상면 관절각 계산법에 대해 알아보자. 도 17에서 하체의 관상면 관절각

Figure pat00616
은 다리를 왼쪽으로 들어올릴 때는 양의 각도, 오른쪽으로 들어올릴 때는 음의 각도로 정의되어 있음을 기억하자.Next, let's learn how to calculate the coronal joint angle of the lower body. In Figure 17, the coronal joint angle of the lower body
Figure pat00616
Note that is defined as a positive angle for lifting the leg to the left and a negative angle for lifting the leg to the right.

오른쪽 골반의 관상면 관절각

Figure pat00617
과 왼쪽 골반의 관상면 관절각
Figure pat00618
은 다음 식으로 계산할 수 있다.Coronal articular angle of the right pelvis
Figure pat00617
and coronal articular angles of the left pelvis
Figure pat00618
can be calculated in the following way.

Figure pat00619
Figure pat00619

Figure pat00620
Figure pat00620

식에서

Figure pat00621
는 사람이 차려자세로 있을 때 측정한 허벅지뼈의 픽셀길이를,
Figure pat00622
Figure pat00623
은 사람이 걸어갈 때 측정한 오른쪽과 왼쪽 허벅지뼈의 픽셀길이를 각각 의미한다. 상술한 바와 마찬가지로 사람이 앞으로 걸어갈 때 일반적으로 다리를 바깥쪽(왼쪽 다리는 왼쪽, 오른쪽 다리는 오른쪽)으로 들어올리는 경향이 있으므로,
Figure pat00624
에는 음의 부호,
Figure pat00625
에는 양의 부호를 부여하면 된다.in the expression
Figure pat00621
is the pixel length of the thighbone measured when the person is in a standing position,
Figure pat00622
class
Figure pat00623
is the pixel length of the right and left thighbones, respectively, measured when a person walks. As mentioned above, as people generally tend to lift their legs outward (left leg left, right leg right) when walking forward,
Figure pat00624
is a negative sign,
Figure pat00625
should be given a positive sign.

도 32는 일 실시 예에 따라 오른쪽 팔과 왼쪽 팔의 링크와 관절들을 설명하기 위한 도면이다.32 is a diagram for describing links and joints of a right arm and a left arm, according to an exemplary embodiment.

이제 같은 원리로 도 32를 참조하여 상체 시상면 관절각을 계산해보자. 도 32로부터 오른쪽 어깨 시상면 관절의 각도 관계식을 유도하면 다음과 같다.Now, with reference to FIG. 32 in the same principle, let's calculate the upper body sagittal joint angle. The angular relational expression of the right shoulder sagittal joint is derived from FIG. 32 as follows.

Figure pat00626
Figure pat00626

Figure pat00627
Figure pat00627

오른쪽 팔꿈치 시상면 관절의 각도 관계식을 유도하면 다음과 같다.The angular relational expression of the right elbow sagittal joint is derived as follows.

Figure pat00628
Figure pat00628

Figure pat00629
Figure pat00629

그림으로부터 왼쪽 어깨 시상면 관절의 각도 관계식을 유도하면 다음과 같다.The angular relational expression of the left shoulder sagittal joint is derived from the figure as follows.

Figure pat00630
Figure pat00630

Figure pat00631
Figure pat00631

그림으로부터 왼쪽 팔꿈치 시상면 관절의 각도 관계식을 유도하면 다음과 같다.From the figure, the angular relational expression of the sagittal joint of the left elbow is derived as follows.

Figure pat00632
Figure pat00632

Figure pat00633
Figure pat00633

이제 상체 두 어깨의 관상면 관절각 계산법에 대해 알아보자. 투영법의 원리에 따라 오른쪽과 왼쪽 어깨의 관상면 관절각

Figure pat00634
,
Figure pat00635
은 다음 식으로 계산할 수 있다.Now let's learn how to calculate the coronal joint angle of the upper body and both shoulders. Coronary articular angles of the right and left shoulder according to the principle of projection
Figure pat00634
,
Figure pat00635
can be calculated in the following way.

Figure pat00636
Figure pat00636

Figure pat00637
Figure pat00637

식에서

Figure pat00638
Figure pat00639
은 사람이 걸어갈 때 측정한 오른쪽 위팔뼈와 왼쪽 위팔뼈의 픽셀길이를 각각 의미한다. 앞에서와 마찬가지로 사람이 앞으로 걸어가는 경우에는 일반적으로 팔을 바깥쪽(왼쪽 팔은 왼쪽, 오른쪽 팔은 오른쪽)으로 뻗는 경향이 있으므로,
Figure pat00640
에는 음의 부호,
Figure pat00641
에는 양의 부호를 부여했다. in the expression
Figure pat00638
class
Figure pat00639
denotes the pixel length of the right upper arm and the left upper arm, respectively, measured when a person walks. As before, when a person walks forward, they generally tend to extend their arms outward (left arm left, right arm right), so
Figure pat00640
is a negative sign,
Figure pat00641
is given a positive sign.

도 33은 일 실시 예에 따라 대상자가 카메라를 향할 때 이미지 크기와 카메라까지의 거리 관계를 설명하기 위한 도면이다.33 is a diagram for describing a relationship between an image size and a distance to a camera when a subject faces a camera, according to an embodiment.

일 실시 예에 의하면 로봇 장치가 모니터링하는 대상자는 제자리에서 걸어갈 수도 있지만, 카메라를 향해 위치를 이동하면서 걸을 수도 있다. 일 실시 예에 의하면 오픈포즈 모델에서 인식하는 사람의 전체 몸의 길이는 원근법에 의해 카메라에 접근할수록 길게 인식된다. 도 33을 참조하면 그림 2272 a에서 대상자가 서있는 카메라 전단의 위치를 기준 위치로 하여 대상자가 카메라를 향해 v속도로 걸음으로써 대상자의 위치가 그림 2272 b에서와 같이 변함을 알 수 있다. 그림 2272 b에서는 대상자가 그림 2272 a보다 카메라에 더 가깝게 위치하기 때문에 카메라가 촬영한 이미지상 대상자의 몸의 길이는 길어질 수 있다. According to an embodiment, the subject monitored by the robot device may walk in place, or may walk while moving its position toward the camera. According to an embodiment, the length of the entire body of a person recognized by the open pose model is recognized as being longer as the camera approaches the camera by perspective. Referring to FIG. 33, it can be seen that the position of the subject changes as shown in Fig. 2272 b as the subject walks toward the camera at v speed using the position of the front end of the camera where the subject is standing in Fig. 2272 a as the reference position. In Figure 2272 b, the subject's body length in the image taken by the camera may be longer because the subject is located closer to the camera than in Figure 2272 a.

그림 2272 c를 참조하면, 그림 2272 a에서 대상자가 카메라로부터 떨어진 거리를 x1이라 하고, 대상자가 카메라를 향하여 t시간동안 걸음으로써 도달하게 되는 위치로써, 그림 2272 b에서 대상자가 카메라로부터 떨어진 거리를 x2로 하며, 카메라의 초점 거리를 f라고 할 때 거리 관계가 도시된다. 그림 2272 c의 관계에 기초하여 로봇 장치가 보행 속도 및 스텝 길이를 식별하는 과정을 설명하기로 한다.Referring to Figure 2272 c, in Figure 2272 a, the distance the subject is away from the camera is x1, and the position reached by the subject walking towards the camera for t time. In Figure 2272 b, the distance the subject is away from the camera is x2 , and the distance relationship is shown when the focal length of the camera is f. Based on the relationship in Fig. 2272c, the process of identifying the walking speed and step length of the robot device will be described.

먼저 로봇 장치는 보행 속도를 결정하기 위해 두 지점 사이의 거리 및 거리 사이를 걷는데 소요된 시간을 식별한다. 대상자가 이동하기 전 실제 몸통 길이

Figure pat00642
및 대상자를 촬영함으로써 획득된 이미지상 몸통의 픽셀 길이
Figure pat00643
를 측정한다. 또한, 현재 이미지 상 대상자의 몸통 픽셀 길이
Figure pat00644
를 측정하고, 카메라로부터 떨어진 대상자의 현재 위치(또는 거리)를 x0로 측정한다. 로봇 장치는 하기 수학식에 따라 비율 관계를 결정할 수 있다.First, the robotic device identifies the distance between two points and the time spent walking between the distances to determine the walking speed. Actual torso length before subject moves
Figure pat00642
and the pixel length of the torso on the image obtained by photographing the subject.
Figure pat00643
measure In addition, the pixel length of the subject's body in the current image
Figure pat00644
is measured, and the current position (or distance) of the subject away from the camera is measured as x 0 . The robot device may determine the ratio relationship according to the following equation.

Figure pat00645
Figure pat00645

상기 수학식에서

Figure pat00646
은 픽셀당 길이(미터 단위)를 나타내고, 카메라에 고유한 특성 값이다. 상기 수학식 91에 따른 관계는 하기 수학식과 같이 표현될 수 있다.in the above formula
Figure pat00646
represents the length per pixel (in meters) and is a characteristic value unique to the camera. The relationship according to Equation 91 can be expressed as the following Equation.

Figure pat00647
Figure pat00647

로봇 장치는 현재 대상자의 측정 위치 x를 상기 수학식 92로부터 유도할 수 있다. 이 식으로부터 하기 수학식 93과 같이 현재 몸통 픽셀길이를 이용해서 x를 계산할 수 있다.The robot device may derive the measurement position x of the current subject from Equation 92. From this equation, x can be calculated using the current body pixel length as shown in Equation 93 below.

Figure pat00648
Figure pat00648

상기 수학식 91 내지 93에서 나타는 바와 같이, 카메라로부터 대상자의 거리는 현재 이미지상에서 측정되는 몸통 길이가 커질수록 작아질 수 있다. 대상자가 카메라를 기준으로 거리

Figure pat00649
에서
Figure pat00650
까지 카메라를 향하여 v 속도로 이동시 걸음 속도는 하기 수학식에 따라 로봇 장치에 의해 결정될 수 있다.As shown in Equations 91 to 93, the distance of the subject from the camera may decrease as the length of the body measured on the current image increases. Distance from subject to camera
Figure pat00649
at
Figure pat00650
When moving at speed v toward the camera, the walking speed may be determined by the robot device according to the following equation.

Figure pat00651
Figure pat00651

상기 수학식에서

Figure pat00652
Figure pat00653
는 거리
Figure pat00654
Figure pat00655
에서 사람 몸통 길이를 나타낸다. 로봇 장치(1000)는 대상자가 이동하는 방향의 x축에 대해, 휴머노이드 로봇 시뮬레이션 시 두 발의 중심점 사이의 거리를 측정하고, 측정된 두 발의 중심점 사이의 거리에 기초하여 스텝 길이를 식별할 수 있다. 도 17에서 나타나는 세계 좌표계에서 오른발 및 왼쪽 발의 중심 좌표는 각각
Figure pat00656
Figure pat00657
에 해당된다. 로봇 장치(1000)는 하기 수학식에 기초하여 스텝 길이를 결정할 수 있다.in the above formula
Figure pat00652
and
Figure pat00653
is the distance
Figure pat00654
and
Figure pat00655
represents the length of the human body. The robot device 1000 may measure the distance between the center points of the two feet during the humanoid robot simulation with respect to the x-axis in the direction in which the subject moves, and may identify the step length based on the measured distance between the center points of the two feet. The center coordinates of the right foot and the left foot in the world coordinate system shown in FIG. 17 are respectively
Figure pat00656
and
Figure pat00657
applies to The robot apparatus 1000 may determine the step length based on the following equation.

Figure pat00658
Figure pat00658

상기 수학식에서 sl은 스텝 길이를 의미한다. max와 min 함수안의 변수는 오른발 및 왼쪽 발의 중심점 좌표에 관한 변수이다.In the above equation, sl denotes a step length. The variables in the max and min functions are variables related to the center point coordinates of the right and left feet.

도 34는 일 실시 예에 따라 전자 장치가 대상자의 보행 패턴을 식별하는 방법의 흐름도이다.34 is a flowchart of a method for an electronic device to identify a gait pattern of a subject, according to an embodiment.

S210에서 로봇 장치(1000)는 대상자를 촬영함으로써 이미지를 획득한다. 일 실시 예에 의하면 로봇 장치(1000)는 로봇 장치와 연결된 외부 디바이스로부터 대상자를 포함하는 이미지를 획득할 수도 있다.In S210, the robot device 1000 acquires an image by photographing the subject. According to an embodiment, the robot apparatus 1000 may acquire an image including the subject from an external device connected to the robot apparatus.

보다 상세하게는, 로봇 장치(1000)는 획득된 이미지를 신경망 모델에 입력함으로써 신경망 모델로부터 인체골격 정보를 획득할 수도 있다. More specifically, the robot apparatus 1000 may acquire human skeleton information from the neural network model by inputting the acquired image to the neural network model.

일 실시 예에 의하면, 로봇 장치가 이용하는 신경망 모델은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.According to an embodiment, the neural network model used by the robot device may include a deep neural network (DNN), for example, a convolutional neural network (CNN), a recurrent neural network (RNN), and a restricted boltzmann (RBM). Machine), a Deep Belief Network (DBN), a Bidirectional Recurrent Deep Neural Network (BRDNN), or a deep Q-networks, but is not limited thereto.

또한, 일 실시 예에 의하면 로봇 장치(1000)가 이용하는 신경망 모델은 오픈포즈(OpenPose) 모델로써, 인체의 관절 및 링크에 대한 정보를 출력하는 신경망 모델일 수 있다. 본 개시에 따른 인체골격 정보는 이미지 내 대상자의 관절의 좌표 정보 및 상기 관절 사이를 연결하는 링크의 길이 정보를 포함할 수 있다.Also, according to an embodiment, the neural network model used by the robot apparatus 1000 is an OpenPose model, and may be a neural network model that outputs information about joints and links of the human body. The human skeleton information according to the present disclosure may include coordinate information of the subject's joint in the image and length information of a link connecting the joints.

S230에서, 로봇 장치(1000)는 로봇 모델 내 적어도 하나의 링크의 연결 관계에 기초하여 대상자에 대한 카메라의 촬영 각도를 식별할 수 있다. 로봇 장치(1000)가 대상자에 대한 카메라의 촬영 각도를 식별하는 과정은 상술한 수학식 39에 의해 수행될 수 있다. In S230 , the robot device 1000 may identify a photographing angle of the camera with respect to the subject based on a connection relationship of at least one link in the robot model. A process in which the robot device 1000 identifies a photographing angle of a camera for a subject may be performed by Equation 39 described above.

S240에서, 로봇 장치(1000)는 카메라의 촬영 각도에 기초하여 로봇 모델의 관절 정보를 결정할 수 있다. 예를 들어, 로봇 장치(1000)는 식별된 카메라의 촬영 각도에 기초하여 서로 다른 방법으로 로봇 모델 내 특정 링크의 링크 길이, 관절각을 결정할 수 있다. In S240 , the robot device 1000 may determine joint information of the robot model based on the photographing angle of the camera. For example, the robot device 1000 may determine the link length and joint angle of a specific link in the robot model in different ways based on the identified camera angle.

예를 들어, 로봇 장치(1000)는 로봇 모델 내 관절 정보 및 링크 정보에 기초하여 소정의 관절에 대하여 인접한 두개의 링크를 식별하고, 상기 식별된 두개의 링크의 사이각을 결정하고, 상기 결정된 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정할 수 있다.For example, the robot device 1000 identifies two links adjacent to a predetermined joint based on joint information and link information in the robot model, determines an angle between the identified two links, and determines between the determined links. Joint information of the robot model may be determined based on the angle.

또한, 일 실시 예에 의하면, 로봇 장치(1000)는 상기 카메라의 촬영 각도에 기초하여 상기 결정된 두 개의 링크의 사이각을 보정하고, 상기 보정된 두 개의 링크의 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정할 수 있다. 또한, 일 실시 예에 의하면, 로봇 장치(1000)는 두 개의 링크의 사이각을 결정하기 위해 상기 인접한 두개의 링크의 끝점이 위치하는 사분면 정보를 식별하고, 상기 식별된 사분면 정보에 기초하여 상기 두 링크의 링크 각도를 보정하기 위한 보정 함수를 생성하고, 상기 생성된 보정 함수를 상기 인접한 두 개의 링크의 각도에 각각 적용함으로써 링크 보정 각도를 생성하며, 상기 생성된 링크 보정 각도의 차를 이용하여 상기 두 개의 링크의 사이각을 결정할 수 있다.In addition, according to an embodiment, the robot device 1000 corrects the angle between the two links determined based on the photographing angle of the camera, and based on the corrected angle between the two links, the robot model Joint information can be determined. In addition, according to an embodiment, the robot device 1000 identifies the quadrant information in which the endpoints of the two adjacent links are located in order to determine the angle between the two links, and based on the identified quadrant information, the two generating a correction function for correcting the link angle of the link, and generating a link correction angle by applying the generated correction function to the angles of the two adjacent links, respectively, using the difference between the generated link correction angles The angle between the two links can be determined.

S250에서, 로봇 장치(1000)는 S240에서 결정된 관절 정보에 기초하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별할 수 있다. 예를 들어, 로봇 장치(1000)는 대상자의 신체 골격에 대응되는 로봇 모델 내 각 관절에 대한 정보를 결정하고, 결정된 관절 정보를 로봇 모델을 이용하여 시뮬레이션함으로써 대상자의 보행패턴을 식별할 수 있다.In S250 , the robot apparatus 1000 may identify the gait pattern of the subject by executing a posture simulation of the humanoid robot based on the joint information determined in S240 . For example, the robot apparatus 1000 may determine the information on each joint in the robot model corresponding to the body skeleton of the subject, and identify the gait pattern of the subject by simulating the determined joint information using the robot model.

또한, 도 34에는 도시되지 않았지만, 로봇 장치(1000)는 이미지 내 대상자의 몸통 길이 및 이미지 내 대상자의 두 발의 중심점 사이의 거리를 식별하고, 식별된 몸통 길이 및 상기 두 발의 중심점 사이의 거리에 기초하여 상기 대상자의 보행속도 및 스텝 길이를 결정하며, 상기 관절 정보, 상기 보행속도 및 스텝 길이에 기초하여 상기 보행 패턴을 식별할 수도 있다.In addition, although not shown in FIG. 34 , the robotic device 1000 identifies the length of the subject's torso in the image and the distance between the center points of the subject's two feet in the image, and based on the identified torso length and the distance between the center points of the two feet To determine the walking speed and the step length of the subject, it is also possible to identify the walking pattern based on the joint information, the walking speed and the step length.

일 실시 예에 의하면 로봇 장치(1000)는 소정의 두 지점 사이에서 상기 대상자의 몸통 길이 변화에 기초하여 상기 대상자의 보행속도를 결정하고, 상기 이미지 내 대상자 이미지의 두발의 중심점 사이의 거리에 기초하여 상기 스텝 길이를 식별할 수 있다.According to an embodiment, the robot device 1000 determines the walking speed of the subject based on the change in the subject's torso length between two predetermined points, and based on the distance between the center points of the head of the subject image in the image The step length can be identified.

또 다른 실시 예에 의하면, 도 34에는 도시되지 않았지만 로봇 장치(1000)는 대상자를 촬영함으로써 획득된 이미지로부터 결정된 관절 정보에 기초하여 대상자의 보행 방향을 추정할 수도 있다. 로봇 장치(1000)는 상기 결정된 관절 정보, 상기 추정된 대상자의 보행 방향, 보행속도 또는 스텝 길이 중 적어도 하나에 기초하여 대상자의 보행 패턴을 식별할 수도 있다.According to another embodiment, although not shown in FIG. 34 , the robot apparatus 1000 may estimate the walking direction of the subject based on joint information determined from an image obtained by photographing the subject. The robot apparatus 1000 may identify the subject's gait pattern based on at least one of the determined joint information, the estimated subject's gait direction, gait speed, and step length.

도 35는 일 실시 예에 따라 전자 장치가 로봇 모델을 생성하는 과정을 나타내는 도면이다.35 is a diagram illustrating a process in which an electronic device generates a robot model, according to an exemplary embodiment.

S310에서, 로봇 장치(1000)는 인체의 골격 구조에 기초하여 배치되는 기 설정된 수의 관절 및 상기 관절 사이를 연결하는 링크를 포함하는 관절-링크 모델에 대하여 DH 변환행렬을 적용함으로써 왼쪽 고관절을 기준으로 하는 기준 좌표계에 따른 링크 좌표계를 생성할 수 있다. S320에서, 로봇 장치(1000)는 링크 좌표계에 좌표계 변환행렬을 추가적으로 적용함으로써 신체 중심점을 기준으로 하는 휴먼 좌표계를 생성할 수 있다.In S310, the robot device 1000 based on the left hip joint by applying the DH transformation matrix to the joint-link model including a preset number of joints disposed based on the skeletal structure of the human body and links connecting the joints. A link coordinate system according to the reference coordinate system can be created. In S320 , the robot device 1000 may generate a human coordinate system based on a body center point by additionally applying a coordinate system transformation matrix to the link coordinate system.

S330에서, 로봇 장치(1000)는 카메라 촬영 각도에 기초하여 적응적으로 상기 휴먼 좌표계에 회전 변환행렬을 적용함으로써 세계 좌표계를 생성할 수 있다. S340에서 로봇 장치(1000)는 상기 카메라 촬영 각도에 기초하여 휴먼 좌표계 또는 세계 좌표계에 따른 상기 로봇 모델을 생성할 수 있다. 일 실시 예에 의하면 로봇 모델은 대상자의 신체 골격에 대응되는 관절 및 상기 관절을 연결하는 링크에 대한 정보에 기초하여 생성된 모델일 수 있다. 즉, 본 개시에 따른 로봇 장치(1000)는 카메라 촬영 각도를 결정하고, 결정된 촬영 각도가 0도가 아닌 경우, 로봇 좌표계를 휴먼 좌표계에서 세계 좌표계로 변환하고, 변환된 세계 좌표계에 따른 로봇 모델을 생성할 수 있다. S350에서, 로봇 장치(1000)는 로봇 모델을 이용하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 대상자의 보행 패턴을 식별할 수 있다.In S330 , the robot apparatus 1000 may generate a world coordinate system by adaptively applying a rotation transformation matrix to the human coordinate system based on a camera photographing angle. In S340 , the robot device 1000 may generate the robot model according to the human coordinate system or the world coordinate system based on the camera photographing angle. According to an embodiment, the robot model may be a model generated based on information about a joint corresponding to a body skeleton of a subject and a link connecting the joint. That is, the robot device 1000 according to the present disclosure determines the camera shooting angle, and when the determined shooting angle is not 0 degrees, converts the robot coordinate system from the human coordinate system to the world coordinate system, and generates a robot model according to the converted world coordinate system can do. In S350 , the robot device 1000 may identify the subject's gait pattern by executing a posture simulation of the humanoid robot using the robot model.

도 36은 일 실시 예에 따라 전자 장치가 대상자에 대한 카메라의 촬영 각도를 식별하는 과정을 나타내는 도면이다.36 is a diagram illustrating a process in which an electronic device identifies a photographing angle of a camera with respect to a subject, according to an exemplary embodiment.

S410에서, 로봇 장치(1000)는 로봇 모델 내 얼굴 링크 및 몸통 링크를 식별할 수 있다. S420에서, 로봇 장치(1000)는 식별된 얼굴 링크 및 목 링크 사이각에 기초하여 얼굴 링크가 몸통 링크에 대해 기울어진 방향을 식별할 수 있다. S430에서, 로봇 장치(1000)는 로봇 모델 내 몸통의 길이 및 골반의 길이 비율을 식별할 수 있다. S440에서, 로봇 장치(1000)는 식별된 방향 및 길이 비율에 기초하여 대상자에 대한 상기 카메라의 촬영 각도를 식별할 수 있다.In S410 , the robot device 1000 may identify a face link and a torso link in the robot model. In S420 , the robot device 1000 may identify a direction in which the face link is inclined with respect to the body link based on the identified angle between the face link and the neck link. In S430 , the robot device 1000 may identify a ratio of the length of the torso and the length of the pelvis in the robot model. In S440 , the robot device 1000 may identify a photographing angle of the camera with respect to the subject based on the identified direction and length ratio.

도 37은 이 실시 예에 따라 전자 장치가 대상자의 보행 패턴을 식별하는 과정을 설명하기 위한 도면이다.37 is a diagram for describing a process in which an electronic device identifies a gait pattern of a subject according to this embodiment.

S502에서, 로봇 장치(1000)는 대상자의 팔 길이, 카메라와 대상자 간의 거리를 측정한다. S504에서, 로봇 장치(1000)는 오픈포즈 신경망 모델의 신경망 연산을 위해, 오픈포즈 신경망 모델을 런칭할 수 있다. S506에서 로봇 장치(1000)는 오픈포즈 신경망 모델로부터 대상자의 정지 자세에 대한 초기 인체골격 정보를 획득할 수 있다.In S502, the robot device 1000 measures the arm length of the subject and the distance between the camera and the subject. In S504 , the robot apparatus 1000 may launch an open pose neural network model for neural network calculation of the open pose neural network model. In S506 , the robot apparatus 1000 may acquire initial human skeleton information about the subject's resting posture from the open pose neural network model.

S508에서, 로봇 장치(1000)는 대상자에 대한 카메라의 촬영 각도를 결정할 수 있다. 로봇 장치(1000)가 대상자에 대한 카메라의 촬영 각도를 식별하는 과정은 상술한 바와 같으므로 생략하기로 한다.In S508 , the robotic device 1000 may determine a photographing angle of the camera for the subject. A process in which the robot device 1000 identifies a photographing angle of a camera for a subject is the same as described above, and thus will be omitted.

S510에서, 로봇 장치(1000)는 로봇 모델 내 각 링크 길이 변화로부터 시상면 관절 변수(joint variables) 및 관상면 관절 변수를 결정한다. S512에서, 로봇 장치(1000)는 각 관절에 대한 인접한 두 개 링크 사이의 사이각을 결정한다. S514에서, 로봇 장치(1000)는 촬영 각도에 기초하여 상술한 링크 길이, 상술한 관절 변수에 대한 가중치 평균을 결정한다. S516에서, 로봇 장치(1000)는 결정된 관절 변수 값에 기초하여 생성된 로봇 모델을 시뮬레이션할 수 있다. S518에서, 로봇 장치(1000)는 시뮬레이션 결과에 기초하여 대상자의 걸음 속도 및 스텝 길이를 식별할 수 있다. S520에서 로봇 장치(1000)는 대상자의 보행 패턴을 식별하는 과정을 계속할지 여부를 결정할 수 있다. 예를 들어 로봇 장치(1000)는 대상자의 보행패턴이 식별되지 않는 경우, S508 단계를 다시 수행할 수도 있지만, 대상자의 보행 패턴이 식별되는 경우, 상술한 방법의 수행을 종료할 수 있다.In S510 , the robot device 1000 determines sagittal joint variables and coronal joint variables from each link length change in the robot model. In S512 , the robot device 1000 determines an angle between two adjacent links for each joint. In S514, the robot device 1000 determines the weighted average of the above-described link length and the above-described joint variable based on the photographing angle. In S516 , the robot device 1000 may simulate the generated robot model based on the determined joint variable values. In S518, the robot device 1000 may identify the walking speed and the step length of the subject based on the simulation result. In S520 , the robot device 1000 may determine whether to continue the process of identifying the subject's gait pattern. For example, when the gait pattern of the subject is not identified, the robot apparatus 1000 may perform step S508 again, but when the gait pattern of the subject is identified, the above-described method may be terminated.

도 38은 일 실시 예에 따른 전자 장치의 블록도이다.38 is a block diagram of an electronic device according to an embodiment.

도 39는 또 다른 실시 예에 따른 전자 장치의 블록도이다.39 is a block diagram of an electronic device according to another embodiment.

도 38에 도시된 바와 같이 일 실시 예에 따른 로봇 장치(1000)는 프로세서(1300), 네트워크 인터페이스(1500) 및 메모리(1700)를 포함할 수 있다. 그러나, 도시된 구성 요소가 모두 필수구성요소인 것은 아니다. 도시된 구성 요소보다 많은 구성 요소에 의해 로봇 장치(1000)가 구현될 수도 있고, 그 보다 적은 구성 요소에 의해서도 로봇 장치(1000)는 구현될 수 있다.As shown in FIG. 38 , the robot apparatus 1000 according to an embodiment may include a processor 1300 , a network interface 1500 , and a memory 1700 . However, not all illustrated components are essential components. The robot apparatus 1000 may be implemented by more components than the illustrated components, or the robot apparatus 1000 may be implemented by fewer components.

예를 들어, 도 39에 도시된 바와 같이 로봇 장치(1000)는 프로세서(1300), 네트워크 인터페이스(1500) 및 메모리(1700)외에, 사용자 입력 인터페이스(1100), 출력부(1200), 센싱부(1400), 네트워크 인터페이스(1500) 및 A/V 입력부(1600)를 더 포함할 수도 있다.For example, as shown in FIG. 39 , the robot device 1000 includes a processor 1300 , a network interface 1500 and a memory 1700 , a user input interface 1100 , an output unit 1200 , and a sensing unit ( 1400 ), a network interface 1500 , and an A/V input unit 1600 may be further included.

사용자 입력 인터페이스(1100)는, 사용자가 로봇 장치(1000)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력 인터페이스(1100)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다. 사용자 입력 인터페이스(1100)는 대상자로부터 로봇 장치를 제어하기 위한 키보드 입력, 음성 입력 기타 터치 입력 등을 획득할 수 있다.The user input interface 1100 means a means for a user to input data for controlling the robot apparatus 1000 . For example, the user input interface 1100 includes a key pad, a dome switch, and a touch pad (contact capacitive method, pressure resistance film method, infrared sensing method, surface ultrasonic conduction method, red There may be a mechanical tension measurement method, a piezo effect method, etc.), a jog wheel, a jog switch, and the like, but is not limited thereto. The user input interface 1100 may obtain a keyboard input, voice input, and other touch input for controlling the robot device from the subject.

출력부(1200)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(1200)는 디스플레이부(1210), 음향 출력부(1220), 및 진동 모터(1230)를 포함할 수 있다. 예를 들어, 로봇 장치(1000)는 출력부(1200)를 이용하여 사용자 입력에 따른 컨텐츠를 출력할 수 있다.The output unit 1200 may output an audio signal, a video signal, or a vibration signal, and the output unit 1200 may include a display unit 1210 , a sound output unit 1220 , and a vibration motor 1230 . there is. For example, the robot apparatus 1000 may output content according to a user input using the output unit 1200 .

디스플레이부(1210)는 로봇 장치(1000)에서 처리되는 정보 내지 컨텐츠를 표시 출력하기 위한 화면을 포함한다. 또한, 화면은 영상을 디스플레이 할 수 있다. 예를 들면, 디스플레이부(1210)는 로봇 장치(1000)가 인식한 대상 객체에 대한 정보, 사용자 음성 입력에 매칭되는 컨텐츠들을 표시할 수 있다.The display unit 1210 includes a screen for displaying and outputting information or content processed by the robot device 1000 . Also, the screen may display an image. For example, the display unit 1210 may display information on a target object recognized by the robot apparatus 1000 and contents matching a user's voice input.

음향 출력부(1220)는 네트워크 인터페이스(1500)로부터 수신되거나 메모리(1700)에 저장된 오디오 데이터를 출력한다. 또한, 음향 출력부(1220)는 사용자 음성 입력에 대한 음성 인식 결과에 따른 응답 오디오 데이터를 출력할 수도 있다. 또한, 음향 출력부(1220)는 전자 장치(2000)에서 수행되는 기능(예를 들어, 호신호 수신음, 메시지 수신음, 알림음)과 관련된 음향 신호를 출력할 수도 있다.The sound output unit 1220 outputs audio data received from the network interface 1500 or stored in the memory 1700 . Also, the sound output unit 1220 may output response audio data according to a result of voice recognition for a user's voice input. Also, the sound output unit 1220 may output a sound signal related to a function (eg, a call signal reception sound, a message reception sound, and a notification sound) performed by the electronic device 2000 .

프로세서(1300)는 통상적으로 로봇 장치(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1300)는, 메모리(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력 인터페이스(1100), 출력부(1200), 센싱부(1400), 네트워크 인터페이스(1500), A/V 입력부(1600) 등을 전반적으로 제어할 수 있다. 또한, 프로세서(1300)는 메모리(1700)에 저장된 프로그램들을 실행함으로써, 도 1 내지 도 37에 기재된 로봇 장치(1000)의 기능을 수행할 수 있다.The processor 1300 typically controls the overall operation of the robot device 1000 . For example, the processor 1300 executes programs stored in the memory 1700 , so that the user input interface 1100 , the output unit 1200 , the sensing unit 1400 , the network interface 1500 , and the A/V input unit (1600) and the like can be controlled in general. In addition, the processor 1300 may execute the programs stored in the memory 1700 to perform the functions of the robot apparatus 1000 described in FIGS. 1 to 37 .

일 실시 예에 의하면, 프로세서(1300)는 상기 하나 이상의 인스트럭션을 실행함으로써, 상기 로봇 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 이미지를 획득하고, 상기 이미지로부터 획득된 인체골격 정보에 기초하여 미리 설정된 좌표계에 따른 로봇 모델을 생성하고, 상기 생성된 로봇 모델 내 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하고, 상기 카메라의 촬영 각도에 기초하여 상기 로봇 모델의 관절 정보를 결정하고, 상기 결정된 관절 정보에 기초하여 상기 대상자의 보행 패턴을 식별할 수 있다.According to an embodiment, the processor 1300 acquires an image by photographing the subject through a camera connected to the robot device by executing the one or more instructions, and preset based on the human skeleton information obtained from the image. Generate a robot model according to a coordinate system, identify a shooting angle of the camera with respect to the subject based on a connection relationship of at least one link in the generated robot model, and based on the shooting angle of the camera, the robot model It is possible to determine the joint information, and identify the gait pattern of the subject based on the determined joint information.

일 실시 예에 의하면, 프로세서(1300)는 상기 이미지 내 대상자의 몸통 길이 및 상기 이미지 내 대상자의 두 발의 중심점 사이의 거리를 식별하고, 상기 식별된 몸통 길이 및 상기 두 발의 중심점 사이의 거리에 기초하여 상기 대상자의 보행속도 및 스텝 길이를 식별하고, 상기 관절 정보, 상기 보행속도 및 스텝 길이에 기초하여 상기 보행 패턴을 식별할 수 있다.According to an embodiment, the processor 1300 identifies the length of the subject's torso in the image and the distance between the center points of the subject's two feet in the image, and based on the identified length of the torso and the distance between the center points of the two feet It is possible to identify the walking speed and step length of the subject, and identify the walking pattern based on the joint information, the walking speed and the step length.

일 실시 예에 의하면, 프로세서(1300)는 상기 획득된 이미지를 신경망 모델에 입력함으로써 상기 신경망 모델로부터 인체골격 정보를 획득할 수 있다.According to an embodiment, the processor 1300 may acquire human skeleton information from the neural network model by inputting the acquired image to the neural network model.

일 실시 예에 의하면, 적어도 하나의 프로세서는 인체의 골격 구조에 기초하여 배치되는 기 설정된 수의 관절 및 상기 관절 사이를 연결하는 링크를 포함하는 관절-링크 모델에 대하여 DH 변환행렬을 적용함으로써 왼쪽 고관절을 기준으로 하는 기준 좌표계에 따른 링크 좌표계를 생성하고, 상기 링크 좌표계에 좌표계 변환행렬을 추가적으로 적용함으로써 신체 중심점을 기준으로 하는 휴먼 좌표계를 생성하고, 상기 카메라 촬영 각도에 기초하여 적응적으로 상기 휴먼 좌표계에 회전 변환행렬을 적용함으로써 세계 좌표계를 생성하고, 상기 카메라 촬영 각도에 기초하여 휴먼 좌표계 또는 세계 좌표계에 따른 상기 로봇 모델을 생성할 수 있다.According to an embodiment, the at least one processor applies a DH transformation matrix to a joint-link model including a preset number of joints disposed based on the skeletal structure of the human body and links connecting the joints to the left hip joint. Generates a link coordinate system according to a reference coordinate system based on , and additionally applies a coordinate system transformation matrix to the link coordinate system to generate a human coordinate system based on a body center point, and adaptively based on the camera shooting angle, the human coordinate system A world coordinate system may be generated by applying a rotation transformation matrix to , and the robot model according to the human coordinate system or the world coordinate system may be generated based on the camera shooting angle.

일 실시 예에 의하면 적어도 하나의 프로세서는 상기 로봇 모델 내 얼굴 링크 및 몸통 링크를 식별하고, 상기 식별된 얼굴 링크 및 목 링크의 사이각에 기초하여 상기 얼굴 링크가 몸통 링크에 대해 기울어진 방향을 식별하고, 상기 로봇 모델 내 몸통의 길이 및 골반의 길이 비율을 식별하고, 상기 식별된 방향 및 상기 길이 비율에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별할 수 있다.According to an embodiment, the at least one processor identifies a facial link and a torso link in the robot model, and identifies a direction in which the facial link is inclined with respect to the torso link based on an angle between the identified facial link and the neck link. and identify a length ratio of a torso and a pelvis in the robot model, and identify a shooting angle of the camera for the subject based on the identified direction and the length ratio.

일 실시 예에 의하면, 프로세서(1300)는 상기 로봇 모델 내 관절 정보 및 링크 정보에 기초하여 소정의 관절에 대하여 인접한 두개의 링크를 식별하고, 상기 식별된 두개의 링크의 사이각을 결정하고, 상기 결정된 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정할 수 있다.According to an embodiment, the processor 1300 identifies two links adjacent to a predetermined joint based on joint information and link information in the robot model, determines an angle between the identified two links, and Joint information of the robot model may be determined on the basis of the determined interstitial angle.

일 실시 예에 의하면, 프로세서(1300)는 상기 카메라의 촬영 각도에 기초하여 상기 결정된 두개의 링크의 사이각을 보정하고, 상기 보정된 두개의 링크의 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정할 수 있다.According to an embodiment, the processor 1300 corrects the angle between the two links determined based on the angle taken by the camera, and calculates the joint information of the robot model based on the corrected angle between the two links. can decide

일 실시 예에 의하면, 프로세서(1300)는 상기 인접한 두개의 링크의 끝점이 위치하는 사분면 정보를 식별하고, 상기 식별된 사분면 정보에 기초하여 상기 두 링크의 링크 각도를 보정하기 위한 보정 함수를 생성하고, 상기 생성된 보정 함수를 상기 인접한 두개의 링크의 각도에 각각 적용함으로써 링크 보정 각도를 생성하고, 상기 생성된 링크 보정 각도의 차를 이용하여 상기 두개의 링크의 사이각을 결정할 수 있다.According to an embodiment, the processor 1300 identifies quadrant information in which the endpoints of the two adjacent links are located, and generates a correction function for correcting the link angle of the two links based on the identified quadrant information, and , a link correction angle may be generated by applying the generated correction function to the angles of the two adjacent links, respectively, and an angle between the two links may be determined using a difference between the generated link correction angles.

일 실시 예에 의하면, 적어도 하나의 프로세서는 소정의 두 지점 사이에서 상기 대상자의 몸통 길이 변화에 기초하여 상기 대상자의 보행속도를 결정하고, 상기 이미지 내 대상자 3차원 시뮬레이션의 두 발의 중심점 사이의 거리에 기초하여 상기 스텝 길이를 식별할 수 있다.According to an embodiment, the at least one processor determines the walking speed of the subject based on the change in the subject's torso length between two predetermined points, and the distance between the center points of the subject's two feet of the subject's three-dimensional simulation in the image. Based on the step length can be identified.

센싱부(1400)는, 로봇 장치(1000)의 상태 또는 로봇 장치(1000) 주변의 상태를 감지하고, 감지된 정보를 프로세서(1300)로 전달할 수 있다. 센싱부(1400)는 로봇 장치(1000)의 사양 정보, 로봇 장치(1000)의 상태 정보, 로봇 장치(1000)의 주변 환경 정보, 사용자의 상태 정보, 사용자의 위치 정보 등을 센싱하는데 이용될 수 있다.The sensing unit 1400 may detect a state of the robot apparatus 1000 or a state around the robot apparatus 1000 , and transmit the sensed information to the processor 1300 . The sensing unit 1400 may be used to sense specification information of the robot device 1000, status information of the robot device 1000, surrounding environment information of the robot device 1000, user status information, user location information, and the like. there is.

센싱부(1400)는, 지자기 센서(Magnetic sensor)(1410), 가속도 센서(Acceleration sensor)(1420), 온/습도 센서(1430), 적외선 센서(1440), 자이로스코프 센서(1450), 위치 센서(예컨대, GPS)(1460), 기압 센서(1470), 근접 센서(1480), 및 RGB 센서(illuminance sensor)(1490) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 각 센서들의 기능은 그 명칭으로부터 당업자가 직관적으로 추론할 수 있으므로, 구체적인 설명은 생략하기로 한다.The sensing unit 1400 includes a magnetic sensor 1410 , an acceleration sensor 1420 , a temperature/humidity sensor 1430 , an infrared sensor 1440 , a gyroscope sensor 1450 , and a position sensor. (eg, GPS) 1460 , a barometric pressure sensor 1470 , a proximity sensor 1480 , and at least one of an illuminance sensor 1490 , but is not limited thereto. Since a function of each sensor can be intuitively inferred from a person skilled in the art from the name, a detailed description thereof will be omitted.

네트워크 인터페이스(1500)는 로봇 장치(1000)가 다른 장치(미도시) 내지 서버(2000)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 다른 장치(미도시)는 로봇 장치(1000)와 데이터를 송수신할 수 있는 컴퓨팅 장치이거나 센싱 장치일 수 있으나, 이에 제한되지 않는다. 예를 들어, 네트워크 인터페이스(1500)는, 근거리 통신부(1510), 이동 통신부(1520), 방송 수신부(1530)를 포함할 수 있다. The network interface 1500 may include one or more components that allow the robot device 1000 to communicate with other devices (not shown) or the server 2000 . The other device (not shown) may be a computing device or a sensing device capable of transmitting/receiving data to and from the robot device 1000 , but is not limited thereto. For example, the network interface 1500 may include a short-distance communication unit 1510 , a mobile communication unit 1520 , and a broadcast receiving unit 1530 .

근거리 통신부(short-range wireless communication unit)(1510)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. Short-range wireless communication unit 1510, Bluetooth communication unit, BLE (Bluetooth Low Energy) communication unit, short-range wireless communication unit (Near Field Communication unit), WLAN (Wi-Fi) communication unit, Zigbee (Zigbee) communication unit, infrared ( It may include an IrDA, infrared Data Association) communication unit, a Wi-Fi Direct (WFD) communication unit, an ultra wideband (UWB) communication unit, and the like, but is not limited thereto.

이동 통신부(1520)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.The mobile communication unit 1520 transmits/receives a radio signal to and from at least one of a base station, an external terminal, and a server on a mobile communication network. Here, the wireless signal may include various types of data according to transmission and reception of a voice call signal, a video call signal, or a text/multimedia message.

방송 수신부(1530)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 로봇 장치(1000)가 방송 수신부(1530)를 포함하지 않을 수도 있다.The broadcast receiver 1530 receives a broadcast signal and/or broadcast-related information from the outside through a broadcast channel. The broadcast channel may include a satellite channel and a terrestrial channel. According to an embodiment, the robot device 1000 may not include the broadcast receiver 1530 .

A/V(Audio/Video) 입력부(1600)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1610)와 마이크로폰(1620) 등이 포함될 수 있다. 카메라(1610)는 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 예를 들어, 카메라(1610)는 대상자를 촬영함으로써 대상자에 대한 이미지를 획득할 수 있다. 또한, 카메라(1610)는 대상자에 대한 이미지를 프레임에 따라 획득함으로써 동영상을 획득할 수도 있다. 카메라내 이미지 센서를 통해 캡쳐된 이미지는 프로세서(1300) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다. The A/V (Audio/Video) input unit 1600 is for inputting an audio signal or a video signal, and may include a camera 1610 , a microphone 1620 , and the like. The camera 1610 may obtain an image frame such as a still image or a moving image through an image sensor in a video call mode or a shooting mode. For example, the camera 1610 may acquire an image of the subject by photographing the subject. Also, the camera 1610 may acquire a moving picture by acquiring an image of a subject according to a frame. An image captured through an image sensor in the camera may be processed through the processor 1300 or a separate image processing unit (not shown).

마이크로폰(1620)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. 예를 들어, 마이크로폰(1620)은 외부 디바이스 또는 사용자로부터 음향 신호 내지 음성 신호를 수신할 수 있다. 마이크로폰(1620)은 사용자의 음성 입력을 수신할 수 있다. 마이크로폰(1620)은 외부의 음향 신호를 입력 받는 과정에서 발생 되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘을 이용할 수 있다. 마이크로폰(1620)은 획득된 사용자 음성 신호를 프로세서(1300)로 전달한다. 프로세서(1300)는 소정의 신경망 모델 내지 음성 인식을 위한 모델을 이용하여 사용자 음성 신호를 분석함으로써 사용자의 음성을 식별할 수 있다.The microphone 1620 receives an external sound signal and processes it as electrical voice data. For example, the microphone 1620 may receive an acoustic signal or a voice signal from an external device or a user. The microphone 1620 may receive a user's voice input. The microphone 1620 may use various noise removal algorithms for removing noise generated in the process of receiving an external sound signal. The microphone 1620 transmits the acquired user voice signal to the processor 1300 . The processor 1300 may identify the user's voice by analyzing the user's voice signal using a predetermined neural network model or a model for voice recognition.

메모리(1700)는, 프로세서(1300)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 로봇 장치(1000)로 입력되거나 전자 장치(2000)로부터 출력되는 데이터를 저장할 수도 있다. 또한, 메모리(1700)는 로봇 모델에 대한 정보, 로봇 모델 내 링크 또는 관절에 대한 정보, 신경망 모델에 대한 정보, 음성 인식 모델에 대한 정보 등을 저장할 수 있다. 또한, 메모리(1700)는 사용자 음성에 따라 표시될 수 있는 다양한 컨텐츠에 대한 정보를 더 포함할 수도 있다.The memory 1700 may store a program for processing and control of the processor 1300 , and may store data input to the robot device 1000 or output from the electronic device 2000 . Also, the memory 1700 may store information on the robot model, information on links or joints in the robot model, information on the neural network model, information on the voice recognition model, and the like. Also, the memory 1700 may further include information on various contents that may be displayed according to a user's voice.

일 실시 예에 의하면, 메모리(1700)에는 로봇 장치(1000)가 이용하는 적어도 하나의 인공 지능 모델에 대한 파라미터 정보를 더 저장할 수도 있다. 예를 들어, 메모리(1700)는 적어도 하나의 신경망 모델 내 레이어들, 노드들, 상기 레이어들의 연결 강도에 관한 가중치 값들을 저장할 수 있다. 또한, 로봇 장치(1000)는 인공 지능 모델을 학습시키기 위한 다양한 학습 데이터등을 더 저장할 수도 있다.According to an embodiment, the memory 1700 may further store parameter information on at least one artificial intelligence model used by the robot apparatus 1000 . For example, the memory 1700 may store layers in at least one neural network model, nodes, and weight values related to connection strengths of the layers. In addition, the robot apparatus 1000 may further store various learning data for learning the artificial intelligence model.

메모리(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. The memory 1700 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory), and a RAM. (RAM, Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk , may include at least one type of storage medium among optical disks.

메모리(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1710), 터치 스크린 모듈(1720), 알림 모듈(1730) 등으로 분류될 수 있다.Programs stored in the memory 1700 may be classified into a plurality of modules according to their functions, for example, may be classified into a UI module 1710 , a touch screen module 1720 , a notification module 1730 , and the like. .

UI 모듈(1710)은, 애플리케이션 별로 로봇 장치(1000)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(1720)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 프로세서(1300)로 전달할 수 있다. 일부 실시 예에 따른 터치 스크린 모듈(1720)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1720)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.The UI module 1710 may provide a specialized UI, GUI, etc. interworking with the robot device 1000 for each application. The touch screen module 1720 may detect a touch gesture on the user's touch screen and transmit information about the touch gesture to the processor 1300 . The touch screen module 1720 according to some embodiments may recognize and analyze a touch code. The touch screen module 1720 may be configured as separate hardware including a controller.

알림 모듈(1730)은 로봇 장치(1000)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다. 로봇 장치(1000)에서 발생되는 이벤트의 예로는 호 신호 수신, 메시지 수신, 키 신호 입력, 일정 알림 등이 있다. 알림 모듈(1730)은 디스플레이부(1210)를 통해 비디오 신호 형태로 알림 신호를 출력할 수도 있고, 음향 출력부(1220)를 통해 오디오 신호 형태로 알림 신호를 출력할 수도 있고, 진동 모터(1230)를 통해 진동 신호 형태로 알림 신호를 출력할 수도 있다.The notification module 1730 may generate a signal for notifying the occurrence of an event in the robot device 1000 . Examples of events generated in the robot device 1000 include call signal reception, message reception, key signal input, schedule notification, and the like. The notification module 1730 may output a notification signal in the form of a video signal through the display unit 1210 , may output a notification signal in the form of an audio signal through the sound output unit 1220 , and the vibration motor 1230 . It is also possible to output a notification signal in the form of a vibration signal through

일 실시예에 따른 대상자의 보행 패턴을 식별하는 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 개시를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. The method for identifying a subject's gait pattern according to an embodiment may be implemented in the form of program instructions that may be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present disclosure, or may be known and available to those skilled in the art of computer software.

또한, 상기 일 실시 예에 다른 방법을 수행하도록 하는 프로그램이 저장된 기록매체를 포함하는 컴퓨터 프로그램 장치가 제공될 수 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, according to the embodiment, a computer program apparatus including a recording medium storing a program for performing another method may be provided. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상에서 본 개시의 실시예에 대하여 상세하게 설명하였지만 본 개시의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 개시의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 개시의 권리범위에 속한다.Although the embodiments of the present disclosure have been described in detail above, the scope of the present disclosure is not limited thereto, and various modifications and improved forms of the present disclosure are also provided by those skilled in the art using the basic concept of the present disclosure as defined in the following claims. belong to the scope of the right.

Claims (19)

로봇 장치가 대상자의 보행 패턴을 식별하는 방법에 있어서,
상기 로봇 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 이미지를 획득하는 단계;
상기 획득된 이미지로부터 인체골격 정보를 생성하는 단계;
상기 생성된 인체골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는 단계;
상기 카메라의 촬영 각도에 기초하여 로봇 모델의 관절 정보를 결정하는 단계; 및
상기 결정된 관절 정보에 기초하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는 단계; 를 포함하는, 방법.
A method for a robot device to identify a gait pattern of a subject, the method comprising:
acquiring an image by photographing the subject through a camera connected to the robot device;
generating human skeleton information from the acquired image;
identifying a photographing angle of the camera with respect to the subject based on a connection relationship of at least one link in the generated human skeleton information;
determining joint information of the robot model based on the photographing angle of the camera; and
identifying a gait pattern of the subject by executing a posture simulation of a humanoid robot based on the determined joint information; A method comprising
제1항에 있어서, 상기 방법은
상기 이미지 내 대상자의 몸통 길이 및 3차원 모델 내 대상자의 두 발의 중심점 사이의 거리를 식별하는 단계;
상기 식별된 몸통 길이 및 상기 두 발의 중심점 사이의 거리에 기초하여 상기 대상자의 보행속도 및 스텝 길이를 식별하는 단계;
상기 대상자의 보행 방향을 추정하는 단계; 및
상기 관절 정보, 상기 보행속도, 스텝 길이 및 상기 추정된 보행 방향에 기초하여 상기 보행 패턴을 식별하는 단계; 를 포함하는, 방법.
The method of claim 1, wherein the method
identifying a distance between the subject's torso length in the image and the center point of the subject's two feet in the three-dimensional model;
identifying a walking speed and a step length of the subject based on the identified trunk length and the distance between the center points of the two feet;
estimating the walking direction of the subject; and
identifying the gait pattern based on the joint information, the gait speed, the step length, and the estimated gait direction; A method comprising
제1항에 있어서, 상기 방법은
상기 획득된 이미지를 신경망 모델에 입력함으로써 상기 신경망 모델로부터 인체골격 정보를 획득하는 단계; 를 더 포함하고,
상기 인체골격 정보는 상기 이미지 내 대상자의 관절의 좌표 정보 및 상기 관절 사이를 연결하는 링크의 길이 정보를 포함하는 것을 특징으로 하는, 방법.
The method of claim 1, wherein the method
acquiring human skeleton information from the neural network model by inputting the acquired image into a neural network model; further comprising,
The human skeleton information is characterized in that it comprises coordinate information of the joint of the subject in the image and length information of a link connecting the joints.
제1항에 있어서, 상기 방법은
인체의 골격 구조에 기초하여 배치되는 기 설정된 수의 관절 및 상기 관절 사이를 연결하는 링크를 포함하는 관절-링크 모델에 대하여 DH 변환행렬을 적용함으로써 왼쪽 고관절을 기준으로 하는 기준 좌표계에 따른 링크 좌표계를 생성하는 단계;
상기 링크 좌표계에 좌표계 변환행렬을 추가적으로 적용함으로써 신체 중심점에 위치한 휴먼 좌표계를 생성하는 단계;
상기 카메라 촬영 각도에 기초하여 적응적으로 상기 휴먼 좌표계에 회전 변환행렬을 적용함으로써 세계 좌표계를 생성하는 단계;
상기 카메라의 촬영 각도에 기초하여 휴먼 좌표계 또는 세계 좌표계에 따른 상기 로봇 모델을 생성하는 단계; 및
상기 로봇 모델을 이용하여 상기 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행패턴을 식별하는 단계;를 포함하는, 방법.
The method of claim 1, wherein the method
Link coordinate system according to the reference coordinate system based on the left hip joint by applying the DH transformation matrix to the joint-link model including a preset number of joints arranged based on the skeletal structure of the human body and links connecting between the joints. generating;
generating a human coordinate system located at a body center point by additionally applying a coordinate system transformation matrix to the link coordinate system;
generating a world coordinate system by adaptively applying a rotation transformation matrix to the human coordinate system based on the camera shooting angle;
generating the robot model according to a human coordinate system or a world coordinate system based on the photographing angle of the camera; and
Recognizing a gait pattern of the subject by executing a posture simulation of the humanoid robot using the robot model.
제1항에 있어서, 상기 촬영 각도를 식별하는 단계는
상기 로봇 모델 내 얼굴 링크 및 몸통 링크를 식별하는 단계;
상기 식별된 얼굴 링크 및 목 링크의 사이각에 기초하여 상기 얼굴 링크가 몸통 링크에 대해 기울어진 방향을 식별하는 단계;
상기 로봇 모델 내 몸통의 길이 및 골반의 길이 비율을 식별하는 단계;
상기 식별된 방향 및 상기 길이 비율에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는 단계; 를 포함하는, 방법.
The method of claim 1, wherein the step of identifying the shooting angle comprises:
identifying a facial link and a torso link in the robot model;
identifying a direction in which the facial link is inclined with respect to the body link based on the angle between the identified facial link and the neck link;
identifying a ratio of the length of the torso and the length of the pelvis in the robot model;
identifying a shooting angle of the camera for the subject based on the identified direction and the length ratio; A method comprising
제1항에 있어서, 상기 로봇 모델의 관절 정보를 결정하는 단계는
상기 로봇 모델 내 관절 정보 및 링크 정보에 기초하여 소정의 관절에 대하여 인접한 두개의 링크를 식별하는 단계;
상기 식별된 두개의 링크의 사이각을 결정하는 단계; 및
상기 결정된 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정하는 단계; 를 포함하는, 방법.
According to claim 1, wherein the step of determining the joint information of the robot model
identifying two adjacent links with respect to a predetermined joint based on joint information and link information in the robot model;
determining an angle between the identified two links; and
determining joint information of the robot model based on the determined angle; A method comprising
제6항에 있어서, 상기 로봇 모델의 관절 정보를 결정하는 단계는
상기 카메라의 촬영 각도에 기초하여 상기 결정된 두개의 링크의 사이각을 보정하는 단계; 및
상기 보정된 두개의 링크의 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정하는 단계; 를 포함하는, 방법.
According to claim 6, The step of determining the joint information of the robot model
correcting the angle between the two links determined based on the photographing angle of the camera; and
determining joint information of the robot model based on the corrected angle between the two links; A method comprising
제6항에 있어서, 상기 두개의 링크의 사이각을 결정하는 단계는
상기 인접한 두개의 링크의 끝점이 위치하는 사분면 정보를 식별하는 단계;
상기 식별된 사분면 정보에 기초하여 상기 두개의 링크의 링크 각도를 보정하기 위한 보정 함수를 생성하는 단계;
상기 생성된 보정 함수를 상기 인접한 두개의 링크의 각도에 각각 적용함으로써 링크 보정 각도를 생성하는 단계; 및
상기 생성된 링크 보정 각도의 차를 이용하여 상기 두개의 링크의 사이각을 결정하는 단계; 를 포함하는, 방법.
The method of claim 6, wherein determining the angle between the two links comprises:
identifying information about a quadrant in which endpoints of the two adjacent links are located;
generating a correction function for correcting a link angle of the two links based on the identified quadrant information;
generating a link correction angle by applying the generated correction function to the angles of the two adjacent links, respectively; and
determining an angle between the two links using a difference between the generated link correction angles; A method comprising
제2항에 있어서, 상기 보행속도 및 스텝 길이를 식별하는 단계는
소정의 두 시점에서 상기 대상자의 몸통 길이 변화에 기초하여 상기 대상자의 보행속도를 결정하는 단계; 및
상기 이미지 내 대상자 시뮬레이션 시 두 발의 중심점 사이의 거리에 기초하여 상기 스텝 길이를 식별하는 단계; 를 포함하는, 방법.
The method of claim 2, wherein the step of identifying the walking speed and the step length comprises:
determining the walking speed of the subject based on the change in the length of the subject's torso at two predetermined time points; and
identifying the step length based on the distance between the center points of the two feet during the subject simulation in the image; A method comprising
대상자의 보행 패턴을 식별하는 로봇 장치에 있어서,
네트워크 인터페이스;
하나 이상의 인스트럭션을 저장하는 메모리; 및
적어도 하나의 프로세서; 를 포함하고,
상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 로봇 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 이미지를 획득하고,
상기 이미지로부터 인체골격 정보를 획득하고,
상기 획득된 인체 골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하고,
상기 카메라의 촬영 각도에 기초하여 로봇 모델의 관절 정보를 결정하고,
상기 결정된 관절 정보에 기초하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는, 로봇 장치.
A robot device for identifying a subject's gait pattern, comprising:
network interface;
a memory storing one or more instructions; and
at least one processor; including,
The at least one processor by executing the one or more instructions,
Obtaining an image by photographing the subject through a camera connected to the robot device,
Obtain human skeleton information from the image,
Identifies a shooting angle of the camera with respect to the subject based on a connection relationship of at least one link in the obtained human skeleton information,
Determine the joint information of the robot model based on the shooting angle of the camera,
A robot device that identifies the subject's gait pattern by executing a posture simulation of the humanoid robot based on the determined joint information.
제10항에 있어서, 상기 적어도 하나의 프로세서는
상기 이미지 내 대상자의 몸통 길이 및 3차원 모델 내 대상자의 두 발의 중심점 사이의 거리를 식별하고,
상기 식별된 몸통 길이 및 상기 두 발의 중심점 사이의 거리에 기초하여 상기 대상자의 보행속도 및 스텝 길이를 식별하고,
상기 대상자의 보행 방향을 추정하고,
상기 관절 정보, 상기 보행속도, 스텝 길이 및 상기 추정된 보행 방향에 기초하여 상기 보행 패턴을 식별하는, 로봇 장치.
11. The method of claim 10, wherein the at least one processor comprises:
identifying the length of the subject's torso in the image and the distance between the center points of the subject's two feet in the three-dimensional model,
identifying the walking speed and step length of the subject based on the identified trunk length and the distance between the center points of the two feet;
Estimate the walking direction of the subject,
A robot device that identifies the gait pattern based on the joint information, the gait speed, the step length, and the estimated gait direction.
제11항에 있어서, 상기 적어도 하나의 프로세서는
상기 획득된 이미지를 신경망 모델에 입력함으로써 상기 신경망 모델로부터 상기 인체골격 정보를 획득하고,
상기 인체골격 정보는 상기 이미지 내 대상자의 관절의 좌표 정보 및 상기 관절 사이를 연결하는 링크의 길이 정보를 포함하는 것을 특징으로 하는, 로봇 장치.
12. The method of claim 11, wherein the at least one processor comprises:
Obtaining the human skeleton information from the neural network model by inputting the obtained image into a neural network model,
The human skeleton information is a robot device, characterized in that it includes coordinate information of the joint of the subject in the image and length information of a link connecting the joints.
제11항에 있어서, 상기 적어도 하나의 프로세서는
인체의 골격 구조에 기초하여 배치되는 기 설정된 수의 관절 및 상기 관절 사이를 연결하는 링크를 포함하는 관절-링크 모델에 대하여 DH 변환행렬을 적용함으로써 왼쪽 고관절을 기준으로 하는 기준 좌표계에 따른 링크 좌표계를 생성하고,
상기 링크 좌표계에 좌표계 변환행렬을 추가적으로 적용함으로써 신체 중심점에 위치한 휴먼 좌표계를 생성하고,
상기 카메라의 촬영 각도에 기초하여 적응적으로 상기 휴먼 좌표계에 회전 변환행렬을 적용함으로써 세계 좌표계를 생성하고,
상기 카메라의 촬영 각도에 기초하여 휴먼 좌표계 또는 세계 좌표계에 따른 상기 로봇 모델을 생성하고,
상기 로봇 모델을 이용하여 상기 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는, 로봇 장치.
12. The method of claim 11, wherein the at least one processor comprises:
Link coordinate system according to the reference coordinate system based on the left hip joint by applying the DH transformation matrix to the joint-link model including a preset number of joints arranged based on the skeletal structure of the human body and links connecting between the joints. create,
By additionally applying a coordinate system transformation matrix to the link coordinate system, a human coordinate system located at the center of the body is generated,
A world coordinate system is generated by adaptively applying a rotation transformation matrix to the human coordinate system based on the shooting angle of the camera,
Generating the robot model according to the human coordinate system or the world coordinate system based on the shooting angle of the camera,
A robot device that identifies a gait pattern of the subject by executing a posture simulation of the humanoid robot using the robot model.
제11항에 있어서, 상기 적어도 하나의 프로세서는
상기 로봇 모델 내 얼굴 링크 및 몸통 링크를 식별하고,
상기 식별된 얼굴 링크 및 목 링크의 사이각에 기초하여 상기 얼굴 링크가 몸통 링크에 대해 기울어진 방향을 식별하고,
상기 로봇 모델 내 몸통의 길이 및 골반의 길이 비율을 식별하고,
상기 식별된 방향 및 상기 길이 비율에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는, 로봇 장치.
12. The method of claim 11, wherein the at least one processor comprises:
identifying a facial link and a torso link in the robot model;
identify a direction in which the facial link is inclined with respect to the body link based on the angle between the identified facial link and the neck link;
Identifies the ratio of the length of the torso and the length of the pelvis in the robot model,
identifying a shooting angle of the camera with respect to the subject based on the identified direction and the length ratio.
제11항에 있어서, 상기 적어도 하나의 프로세서는
상기 로봇 모델 내 관절 정보 및 링크 정보에 기초하여 소정의 관절에 대하여 인접한 두개의 링크를 식별하고,
상기 식별된 두 개의 링크의 사이각을 결정하고,
상기 결정된 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정하는 로봇 장치.
12. The method of claim 11, wherein the at least one processor comprises:
Identifies two adjacent links with respect to a predetermined joint based on joint information and link information in the robot model,
Determining the angle between the identified two links,
A robot device for determining joint information of the robot model on the basis of the determined in-between angle.
제15항에 있어서, 상기 적어도 하나의 프로세서는
상기 카메라의 촬영 각도에 기초하여 상기 결정된 두 개의 링크의 사이각을 보정하고,
상기 보정된 두개의 링크의 사이각에 기초하여 상기 로봇 모델의 관절 정보를 결정하는, 로봇 장치.
16. The method of claim 15, wherein the at least one processor comprises:
Correcting the angle between the two links determined on the basis of the shooting angle of the camera,
For determining the joint information of the robot model based on the corrected angle between the two links, the robot device.
제15항에 있어서, 상기 적어도 하나의 프로세서는
상기 인접한 두개의 링크의 끝점이 위치하는 사분면 정보를 식별하고,
상기 식별된 사분면 정보에 기초하여 상기 두개의 링크의 링크 각도를 보정하기 위한 보정 함수를 생성하고,
상기 생성된 보정 함수를 상기 인접한 두개의 링크의 각도에 각각 적용함으로써 링크 보정 각도를 생성하고,
상기 생성된 링크 보정 각도의 차를 이용하여 상기 두개의 링크의 사이각을 결정하는, 로봇 장치.
16. The method of claim 15, wherein the at least one processor comprises:
Identifies the quadrant information in which the endpoints of the two adjacent links are located,
generating a correction function for correcting a link angle of the two links based on the identified quadrant information;
generating a link correction angle by applying the generated correction function to the angles of the two adjacent links, respectively;
Using the difference of the generated link correction angle to determine the angle between the two links, the robot device.
제12항에 있어서, 상기 적어도 하나의 프로세서는
소정의 두 지점 사이에서 상기 대상자의 몸통 길이 변화에 기초하여 상기 대상자의 보행속도를 결정하고,
상기 이미지 내 대상자 3차원 모델의 두발의 중심점 사이의 거리에 기초하여 상기 스텝 길이를 식별하는, 로봇 장치.
13. The method of claim 12, wherein the at least one processor comprises:
Determine the subject's walking speed based on the change in the subject's trunk length between two predetermined points,
identifying the step length based on the distance between the center points of the subject's three-dimensional model of the subject in the image.
로봇 장치가 대상자의 보행 패턴을 식별하는 방법에 있어서,
상기 로봇 장치와 연결된 카메라를 통하여 상기 대상자를 촬영함으로써 이미지를 획득하는 단계;
상기 획득된 상기 이미지로부터 인체골격 정보를 생성하는 단계;
상기 생성된 인체골격 정보에서 적어도 하나의 링크의 연결 관계에 기초하여 상기 대상자에 대한 상기 카메라의 촬영 각도를 식별하는 단계;
상기 카메라의 촬영 각도에 기초하여 로봇 모델의 관절 정보를 결정하는 단계; 및
상기 결정된 관절 정보에 기초하여 휴머노이드 로봇의 자세 시뮬레이션을 실행함으로써 상기 대상자의 보행 패턴을 식별하는 단계; 를 포함하는 방법을 수행하도록 하는 프로그램이 저장된 컴퓨터로 읽을 수 있는 기록 매체.
A method for a robot device to identify a gait pattern of a subject, the method comprising:
acquiring an image by photographing the subject through a camera connected to the robot device;
generating human skeleton information from the acquired image;
identifying a photographing angle of the camera with respect to the subject based on a connection relationship of at least one link in the generated human skeleton information;
determining joint information of the robot model based on the photographing angle of the camera; and
identifying a gait pattern of the subject by executing a posture simulation of a humanoid robot based on the determined joint information; A computer-readable recording medium having a program stored thereon for performing a method comprising a.
KR1020200149421A 2020-11-10 2020-11-10 Electronic device for identifying human gait pattern and method there of KR102436906B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200149421A KR102436906B1 (en) 2020-11-10 2020-11-10 Electronic device for identifying human gait pattern and method there of

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200149421A KR102436906B1 (en) 2020-11-10 2020-11-10 Electronic device for identifying human gait pattern and method there of

Publications (2)

Publication Number Publication Date
KR20220063847A true KR20220063847A (en) 2022-05-18
KR102436906B1 KR102436906B1 (en) 2022-08-29

Family

ID=81800741

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200149421A KR102436906B1 (en) 2020-11-10 2020-11-10 Electronic device for identifying human gait pattern and method there of

Country Status (1)

Country Link
KR (1) KR102436906B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114863567A (en) * 2022-05-19 2022-08-05 北京中科睿医信息科技有限公司 Method and device for determining gait information
KR102623494B1 (en) * 2022-12-27 2024-01-10 동아대학교 산학협력단 Device, method and program recording medium for analyzing gait using pose recognition package
WO2024029880A1 (en) * 2022-08-03 2024-02-08 주식회사 딥핑소스 Learning method and learning apparatus for training deep learning-based gaze detection model for detecting gaze, and test method and test apparatus using same

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015061579A (en) * 2013-07-01 2015-04-02 株式会社東芝 Motion information processing apparatus
KR20200084567A (en) 2019-01-03 2020-07-13 전자부품연구원 Health abnormality detection system and method using gait pattern

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015061579A (en) * 2013-07-01 2015-04-02 株式会社東芝 Motion information processing apparatus
KR20200084567A (en) 2019-01-03 2020-07-13 전자부품연구원 Health abnormality detection system and method using gait pattern

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114863567A (en) * 2022-05-19 2022-08-05 北京中科睿医信息科技有限公司 Method and device for determining gait information
WO2024029880A1 (en) * 2022-08-03 2024-02-08 주식회사 딥핑소스 Learning method and learning apparatus for training deep learning-based gaze detection model for detecting gaze, and test method and test apparatus using same
KR102623494B1 (en) * 2022-12-27 2024-01-10 동아대학교 산학협력단 Device, method and program recording medium for analyzing gait using pose recognition package

Also Published As

Publication number Publication date
KR102436906B1 (en) 2022-08-29

Similar Documents

Publication Publication Date Title
KR102436906B1 (en) Electronic device for identifying human gait pattern and method there of
JP6116784B1 (en) 3D model generation system, 3D model generation method, and program
US11468612B2 (en) Controlling display of a model based on captured images and determined information
KR102640420B1 (en) Operation Method for activation of Home robot device and Home robot device supporting the same
CN112005198A (en) Hand state reconstruction based on multiple inputs
US11298050B2 (en) Posture estimation device, behavior estimation device, storage medium storing posture estimation program, and posture estimation method
WO2007010893A1 (en) Joint object position and posture estimating device, its method, and program
JP2012083955A (en) Motion model learning device, three-dimensional attitude estimation device, motion model learning method, three-dimensional attitude estimation method and program
Xiao et al. Machine learning for placement-insensitive inertial motion capture
JPWO2019049298A1 (en) 3D data system and 3D data processing method
JP2003271975A (en) Method of extracting plane, extractor therefor, program therefor, recording medium therefor, and robot system mounted with plane extractor
US20220101603A1 (en) Body shape and pose estimation via volumetric regressor for raw three dimensional scan models
Jatesiktat et al. Personalized markerless upper-body tracking with a depth camera and wrist-worn inertial measurement units
US11430168B2 (en) Method and apparatus for rigging 3D scanned human models
CN113033526A (en) Computer-implemented method, electronic device and computer program product
KR20230166319A (en) Device, method and program recording medium for identifying human 3d whole-body pose/motion
US20200226787A1 (en) Information processing apparatus, information processing method, and program
JP7223865B2 (en) Information processing device, information processing method and program
EP3971683A1 (en) Human body portion tracking method and human body portion tracking system
WO2023189838A1 (en) Information processing device, information processing method, and program
JP2021099666A (en) Method for generating learning model
US11783492B2 (en) Human body portion tracking method and human body portion tracking system
KR102510051B1 (en) Control method of electronic device to determine motion matching using by reference position for each time and joint
US20230414132A1 (en) System and method for providing rehabilitation in a virtual environment
JP7432330B2 (en) Posture correction network learning device and its program, and posture estimation device and its program

Legal Events

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