KR20210119654A - Method for removing errors in human motion implementation using tangential velocity vector - Google Patents

Method for removing errors in human motion implementation using tangential velocity vector Download PDF

Info

Publication number
KR20210119654A
KR20210119654A KR1020200036009A KR20200036009A KR20210119654A KR 20210119654 A KR20210119654 A KR 20210119654A KR 1020200036009 A KR1020200036009 A KR 1020200036009A KR 20200036009 A KR20200036009 A KR 20200036009A KR 20210119654 A KR20210119654 A KR 20210119654A
Authority
KR
South Korea
Prior art keywords
motion
error
human
motion data
position vector
Prior art date
Application number
KR1020200036009A
Other languages
Korean (ko)
Other versions
KR102376973B1 (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 KR1020200036009A priority Critical patent/KR102376973B1/en
Publication of KR20210119654A publication Critical patent/KR20210119654A/en
Application granted granted Critical
Publication of KR102376973B1 publication Critical patent/KR102376973B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06K9/00362
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

The present invention relates to a method for removing errors in human motion implementation using a tangential velocity vector which can increase the efficiency of human motion implementation by removing errors in motion data which are output values of a motion capture system in real time by using a tangential velocity vector in human motion implementation through the motion data. According to the present invention, the method for removing errors in human motion implementation is related to removing errors generated in human motion implementation by using human motion data in a human motion implementation system (100), the method comprising: a step of collecting, by a data collection unit (120) of the human motion implementation system (100), motion data for each portion of a human body for human motion implementation; a step of verifying, by a motion error removal unit (130), whether an error has occurred by analyzing current frame motion data; a step of deleting a position vector of the current frame motion data if it is verified that the error has occurred, and using previous frame motion data to estimate a position vector of the current frame motion data; and a step of implementing, by a motion implementation unit (140), human motions by applying the position vector or the estimated position vector of the current frame motion data in which an error has not occurred.

Description

접선 속도 벡터를 이용한 휴먼 모션 구현의 오차 제거 방법 {Method for removing errors in human motion implementation using tangential velocity vector}{Method for removing errors in human motion implementation using tangential velocity vector}

본 발명은 휴면 모션 구현의 오차 제거 방법에 관한 것으로, 보다 상세하게는 모션 캡쳐 시스템의 출력값인 모션 데이터를 통하여 휴먼 모션 구현 시 접선 속도 벡터를 이용하여 모션 데이터의 오차를 실시간으로 제거함으로써 휴먼 모션 구현의 효율성을 높일 수 있도록 하는 접선 속도 벡터를 이용한 휴먼 모션 구현의 오차 제거 방법에 관한 것이다. The present invention relates to a method for removing an error of realizing dormant motion, and more particularly, realizing human motion by removing the error of motion data in real time by using a tangential velocity vector when realizing human motion through motion data, which is an output value of a motion capture system. It relates to a method for eliminating errors in human motion implementation using tangential velocity vectors to increase the efficiency of

모션 캡쳐 시스템(Motion Cature System)은 신체에 센서를 부착하는 센서방식 또는 적외선 카메라 등을 이용하는 광학방식 등의 방법을 통하여 인체의 움직임을 파악하고 이를 디지털 형태로 기록하게 된다. 이러한 모션 캡쳐 시스템을 통해 얻어지는 모션 데이터는 디지털 콘텐츠로서, 애니메이션이나 영화 게임, 동작분석, 재활 등 다양하게 활용된다. A motion capture system detects the movement of a human body through a method such as a sensor method that attaches a sensor to the body or an optical method using an infrared camera, and records it in digital form. Motion data obtained through such a motion capture system is digital content and is used in various ways, such as animation, movie games, motion analysis, and rehabilitation.

한편, 카메라를 이용한 광학방식의 모션 캡쳐 시스템의 경우 마커 손실이나 반사 물질 등으로 모션 데이터에 오차가 생길 수 있으며, 센서방식의 모션 캡쳐 시스템의 경우에도 센서 오차나 알고리즘 예외값 등으로 인해 모션 데이터에 오차가 생길 수 있다. 이러한 경우 표현하고자 하는 캐릭터의 관절이 뒤틀리게 보이거나 캐릭터 모션이 튀는 현상이 발생하여 정밀한 모션구현이 어렵게 된다. 종래에는 이러한 문제를 주로 LPF(Low pass filter) 등의 보간 필터를 통해 이를 해결하고 있으나, 필터 사용 시 발생하는 시간 지연으로 인해 실시간 모션 구현에 장애가 되고 있다. On the other hand, in the case of an optical motion capture system using a camera, an error may occur in the motion data due to loss of markers or reflective materials. Errors may occur. In this case, the joints of the character to be expressed appear distorted or the character motion is bouncing, making it difficult to implement precise motion. Conventionally, this problem is mainly solved through an interpolation filter such as a low pass filter (LPF).

또한, 모션 캡쳐 시스템을 통한 캐릭터 모션 구현은 애니메이터의 후작업이 필요한데, 모션 캡쳐 시스템의 오차가 많을 경우 애니메이터의 수작업의 증가로 인하여 작업의 지연 뿐만 아니라 비용이 증가하는 문제도 발생하고 있다. In addition, the realization of character motion through the motion capture system requires an animator's post-work, and when there are many errors in the motion capture system, there is a problem that not only delays the work but also increases the cost due to the increase of the animator's manual work.

대한민국 등록특허공보 제10-1519775호 (2015.05.06. 등록)Republic of Korea Patent Publication No. 10-1519775 (Registered on May 6, 2015) 대한민국 등록특허공보 제10-0415884호 (2004.01.08. 등록)Republic of Korea Patent Publication No. 10-0415884 (Registered on Aug. 1, 2004)

본 발명은 종래 휴먼 모션 구현 과정에서 발생하는 문제점을 해결하기 위하여 제안된 것으로서, 본 발명의 목적은 모션 캡쳐 시스템을 통하여 출력되는 모션 데이터의 오차를 실시간으로 제거하여 보다 정확한 휴먼 모션을 구현할 수 있도록 하는 휴먼 모션 구현의 오차 제거 방법을 제공하는데 있다. The present invention has been proposed to solve a problem that occurs in the conventional human motion implementation process, and an object of the present invention is to eliminate errors in motion data output through a motion capture system in real time to implement more accurate human motion. An object of the present invention is to provide a method for eliminating errors in human motion implementation.

상기 목적을 달성하기 위한 본 발명에 따른 휴먼 모션 구현의 오차 제거 방법은 휴먼 모션 구현 시스템에서 인체 모션 데이터를 이용하여 휴먼 모션 구현 시 발생하는 오차를 제거하는 방법으로서, 휴먼 모션 구현 시스템의 모션 데이터 수집부에서 휴먼 모션 구현을 위한 인체 각 부위별 모션 데이터를 수집하는 단계(a)와; 모션 오차 제거부에서 현재 프레임 모션 데이터를 분석하여 오차가 발생하였는지를 확인하는 단계(b)와; 오차가 발생한 것으로 확인되면 현재 프레임 모션 데이터의 위치 벡터를 삭제하고, 이전 프레임 모션 데이터를 이용하여 현재 프레임 모션 데이터의 위치 벡터를 추정하는 단계(c)와; 모션 구현부에서 오차가 발생하지 않은 현재 프레임 모션 데이터의 위치 벡터 또는 추정된 위치 벡터를 적용하여 휴먼 모션을 구현하는 단계(d);를 포함한다. In order to achieve the above object, a method for removing an error in human motion implementation according to the present invention is a method of removing an error that occurs when implementing human motion by using human motion data in a human motion realization system, and collecting motion data in a human motion realization system Collecting motion data for each part of the human body for realizing human motion in the unit (a); (b) checking whether an error has occurred by analyzing the current frame motion data in the motion error removing unit; (c) deleting a position vector of the current frame motion data when it is confirmed that an error has occurred, and estimating a position vector of the current frame motion data using the previous frame motion data; and implementing human motion by applying the position vector or the estimated position vector of the current frame motion data in which an error does not occur in the motion implementation unit (d).

상기 오차가 발생하였는지를 확인하는 단계(b)는 현재 프레임의 모션 데이터에 포함된 인체의 각 마디별 3차원 회전을 구현하는 단계와, 구현된 각 마디별 3차원 회전으로부터 각속도를 계산하는 단계와, 각 마디별 시작점을 원점으로 하는 원운동에 기반한 위치 벡터 및 각속도를 이용하여 접선 속도 벡터를 계산하는 단계와, 계산된 접선 속도 벡터를 사용자가 설정한 임계치와 비교하여, 접선 속도 벡터가 임계치보다 큰 경우 오차가 발생한 것으로 판단하는 단계를 포함한다. The step (b) of confirming whether the error has occurred comprises the steps of implementing a three-dimensional rotation for each joint of the human body included in the motion data of the current frame, and calculating an angular velocity from the implemented three-dimensional rotation for each joint; Calculating a tangential velocity vector using a position vector and angular velocity based on a circular motion with the starting point of each node as the origin, and comparing the calculated tangential velocity vector with a threshold set by the user so that the tangential velocity vector is greater than the threshold case, determining that an error has occurred.

여기서, 상기 인체의 각 마디별 3차원 회전을 구현하는 단계(b-1)에서, 상기 모션 오차 제거부는 현재 프레임에서 모션 데이터를 글로벌 좌표계를 기준으로 x축으로 φ(롤), y축으로 θ(피치), z축으로 Ψ(요) 값으로 회전하여 인체 모션 데이터의 각 마디를 3차원 상에 표현하게 된다. Here, in the step (b-1) of implementing the three-dimensional rotation for each joint of the human body, the motion error removing unit converts the motion data in the current frame to φ (roll) on the x-axis and θ on the y-axis based on the global coordinate system. Each node of the human body motion data is expressed in 3D by rotating the (pitch) and Ψ (yaw) values along the z-axis.

또한, 상기 각속도를 계산하는 단계(b-2)에서, 상기 구현된 각 마디별 3차원 회전으로부터 각 마디의 시작점을 원점으로 하는 원주 성분(

Figure pat00001
)을 계산하고, 각 마디 이전 프레임의 원주 성분(
Figure pat00002
)과 현재 프레임의 원주 성분(
Figure pat00003
)을 이용하여 수학식
Figure pat00004
(여기서, dt는 현재 프레임과 이전 프레임의 시간 차이를 나타낸다)을 통해 각속도
Figure pat00005
를 계산하게 된다. In addition, in the step (b-2) of calculating the angular velocity, the circumferential component (
Figure pat00001
), and the circumferential component of the frame before each measure (
Figure pat00002
) and the circumferential component of the current frame (
Figure pat00003
) using the formula
Figure pat00004
(where dt represents the time difference between the current frame and the previous frame) through the angular velocity
Figure pat00005
will be calculated

뿐만 아니라, 상기 접선 속도 벡터를 계산하는 단계(b-3)에서, 각 마디별 시작점을 원점으로 하는 원운동에 기반한 위치 벡터(

Figure pat00006
)의 크기가 마디의 길이
Figure pat00007
인 경우, 접선 속도 벡터(
Figure pat00008
)는 위치 벡터의 회전 방향으로 발생하는 궤도 속도 벡터로 수학식
Figure pat00009
을 통해 계산된다. In addition, in the step (b-3) of calculating the tangential velocity vector, the position vector (
Figure pat00006
) is the length of the node
Figure pat00007
If , the tangential velocity vector (
Figure pat00008
) is the orbital velocity vector occurring in the direction of rotation of the position vector.
Figure pat00009
is calculated through

상기 오차가 발생한 것으로 판단하는 단계(b-4)에서 오차 발생 유무 판단 기준이 되는 임계치는 마디별 또는 휴먼 캐릭터별로 다르게 지정 가능한 것이 바람직하다. In step (b-4) of determining that the error has occurred, it is preferable that the threshold value serving as a criterion for determining whether an error has occurred can be designated differently for each node or for each human character.

한편, 상기 위치 벡터를 추정하는 단계(c)에서, 이전 프레임의 위치 벡터(

Figure pat00010
)와 이전 프레임에서 계산한 접선 속도 벡터(
Figure pat00011
)를 이용하여 수학식
Figure pat00012
,
Figure pat00013
을 통해 극좌표성분
Figure pat00014
Figure pat00015
를 계산하고, 이를 통하여 최종 위치 벡터
Figure pat00016
를 추정하게 된다. On the other hand, in the step (c) of estimating the position vector, the position vector of the previous frame (
Figure pat00010
) and the tangential velocity vector computed from the previous frame (
Figure pat00011
) using the formula
Figure pat00012
,
Figure pat00013
polar coordinate component through
Figure pat00014
class
Figure pat00015
computes, and through this, the final position vector
Figure pat00016
will be estimated

본 발명의 휴먼 모션 구현의 오차 제거 방법에 따르면, 모션 캡쳐 시스템을 통하여 출력된 현재 프레임의 모션 데이터가 오차임이 판단될 경우, 이전 프레임의 모션 데이터를 바탕으로 현재 프레임의 위치 데이터가 추정되어 자연스러운 모션 구현이 가능하며, 이에 따라 실시간으로 캐릭터의 모션을 구현하는 콘텐츠를 제작할 수 있게 된다. According to the error removal method of human motion implementation of the present invention, when it is determined that the motion data of the current frame output through the motion capture system is an error, the position data of the current frame is estimated based on the motion data of the previous frame, resulting in natural motion It is possible to implement it, and accordingly, it is possible to create content that implements the motion of a character in real time.

특히, 현재 프레임의 모션 데이터가 오차가 아닌 정상 데이터의 경우 모션 구현에 직접적으로 사용됨으로써 시간 지연 없이 실시간으로 모션 구현이 가능하다. 또한, 캐릭터의 각 마디별 접선 속도 벡터의 임계치 지정이 가능하고, 모션 캡쳐 대상에 따라 임계치 조정이 가능하여, 다양한 모션을 캡쳐하는데 유용한 효과가 있다. In particular, since the motion data of the current frame is not an error but is directly used for the motion implementation, it is possible to implement the motion in real time without a time delay. In addition, it is possible to specify the threshold value of the tangential velocity vector for each node of the character, and it is possible to adjust the threshold according to the motion capture target, which is useful for capturing various motions.

도 1은 본 발명에 따른 휴먼 모션 구현 시스템의 블록 구성도,
도 2는 본 발명에 따른 휴먼 모션 구현 시스템을 통하여 휴먼 모션 구현이 이루어지는 과정을 나타낸 흐름도,
도 3은 본 발명에 따른 글로벌 좌표계에서의 3차원 회전 구현 개념도,
도 4는 본 발명에 따른 인체 각 마디 원점 기준 위치 벡터의 일례,
도 5는 본 발명에 따른 접선 속도 벡터를 계산하는 과정을 나타낸 흐름도,
도 6은 본 발명에 따른 원운동을 기반으로 표현되는 벡터 일례,
도 7은 본 발명에 따른 임계치 비교 및 오차 유무 판단 과정을 나타낸 흐름도,
도 8은 본 발명에 따른 위치 벡터를 추정하는 방법을 나타낸 개념도이다.
1 is a block diagram of a human motion implementation system according to the present invention;
2 is a flowchart showing a process of implementing human motion through the system for implementing human motion according to the present invention;
3 is a conceptual diagram of a three-dimensional rotation implementation in a global coordinate system according to the present invention;
4 is an example of the reference position vector of the origin of each node of the human body according to the present invention;
5 is a flowchart showing a process of calculating a tangential velocity vector according to the present invention;
6 is an example of a vector expressed based on a circular motion according to the present invention;
7 is a flowchart showing a threshold comparison and error determination process according to the present invention;
8 is a conceptual diagram illustrating a method for estimating a position vector according to the present invention.

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

도 1은 본 발명의 실시 예에 따른 휴먼 모션 구현 시스템의 블록 구성도를 나타낸 것이다. 1 is a block diagram showing a human motion implementation system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 휴먼 모션 구현 시스템(100)은 휴먼 모션 구현에 적용되는 모션 데이터의 오차를 실시간으로 제거하여 휴먼 모션을 구현하는 장치로서, 이 휴먼 모션 구현 시스템(100)은 독립적인 장치로 구성될 수도 있고 컴퓨터에 탑재되어 구동되는 프로그램인 애니매이션 콘텐츠 제작용 3D 엔진 등으로 제작될 수 있다. As shown in FIG. 1 , the human motion implementation system 100 according to the present invention is a device for implementing human motion by removing errors in motion data applied to human motion implementation in real time, and the human motion implementation system 100 ) may be composed of an independent device or may be produced with a 3D engine for animation content production, which is a program that is mounted and driven on a computer.

본 발명에 따른 휴먼 모션 구현 시스템(100)에는 외부의 모션 캡쳐 시스템으로부터 모션 데이터를 수집하는 모션 데이터 수집부(120)와, 상기 모션 데이터 수집부(120)를 통하여 수집된 모션 데이터의 오차를 확인하여 오차가 있는 것으로 판단되는 경우 오차를 제거하는 모션 오차 제거부(130)와, 오차가 제거된 모션 데이터를 통하여 휴먼 모션을 구현하는 모션 구현부(140)와, 상기 각 구성부의 동작을 제어하는 제어부(110)가 구비된다. In the human motion realization system 100 according to the present invention, a motion data collection unit 120 for collecting motion data from an external motion capture system and an error of motion data collected through the motion data collection unit 120 are checked When it is determined that there is an error, the motion error removing unit 130 for removing the error, the motion implementing unit 140 for implementing human motion through the motion data from which the error is removed, and controlling the operation of each component A control unit 110 is provided.

상기 모션 데이터 수집부(120)는 휴먼 모션을 구현하기 위한 모션 데이터를 수집하게 되는데, 이 모션 데이터 수집부(120)는 인체의 모션을 그대로 표현하는 모션 캡쳐 시스템을 통하여 생성되는 인체 각 부위별 모션 데이터를 수집하여 저장하게 된다. The motion data collection unit 120 collects motion data for realizing human motion. The motion data collection unit 120 generates motion for each part of the human body through a motion capture system that expresses the motion of the human body as it is. Data is collected and stored.

상기 모션 오차 제거부(130)는 모션 데이터 수집부(120)를 통하여 수집된 모션 데이터의 오차를 확인하여 제거하게 되는데, 이 모션 오차 제거부(130)는 모션 데이터에 포함된 인체의 각 마디별 3차원 회전을 구현하여 각속도를 계산하고, 이를 통하여 접선 속도 벡터를 계산하여 임계치와 비교함으로써 오차 유무를 확인하게 된다. 만약, 오차가 발생한 것으로 확인되면 오차값으로 판단된 현재 프레임의 위치 벡터는 삭제되고, 삭제된 위치 벡터 대신 이전 프레임의 위치 벡터를 이용하여 현재 위치 벡터를 추정하게 된다. The motion error removing unit 130 checks and removes errors in the motion data collected through the motion data collecting unit 120 . The angular velocity is calculated by implementing a three-dimensional rotation, and the tangential velocity vector is calculated through this and compared with a threshold to check whether there is an error. If it is confirmed that an error has occurred, the position vector of the current frame determined as the error value is deleted, and the current position vector is estimated using the position vector of the previous frame instead of the deleted position vector.

상기 모션 구현부(140)는 정상으로 판단된 모션 데이터를 통하여 휴먼 모션을 구현하게 되는데, 이 모션 구현부(140)는 모션 오차 제거부(130)를 통하여 오차가 발생하지 않은 것으로 판단된 정상 모션 데이터의 경우 현재 값을 이용하여 최종 모션을 구현하고, 모션 데이터가 오차가 발생한 것으로 판단되어 삭제된 위치 벡터는 새로 추정된 위치 벡터를 통하여 최종 모션을 구현하게 된다.The motion implementing unit 140 implements human motion through the motion data determined to be normal. In the case of data, the final motion is implemented using the current value, and the position vector deleted because it is determined that the motion data has an error is implemented through the newly estimated position vector.

이하에서는 상기 구성으로 이루어진 휴먼 모션 구현 시스템(100)을 통하여 휴먼 모션이 구현되는 과정에 대하여 설명하기로 한다. Hereinafter, a process in which human motion is implemented through the human motion implementation system 100 having the above configuration will be described.

도 2는 본 발명의 실시 예에 따른 휴먼 모션 구현 시스템을 통하여 휴먼 모션 구현이 이루어지는 과정을 나타낸 흐름도이다. 2 is a flowchart illustrating a process of implementing human motion through a system for implementing human motion according to an embodiment of the present invention.

단계 S100 : 먼저, 휴먼 모션 구현 시스템(100)의 모션 데이터 수집부(120)는 모션 데이터를 수집하게 되는데, 이 모션 데이터 수집부(120)는 모션 캡쳐 시스템으로부터 프레임 별로 모션 데이터를 전송받아 저장하게 된다. Step S100: First, the motion data collection unit 120 of the human motion realization system 100 collects motion data, and the motion data collection unit 120 receives and stores the motion data for each frame from the motion capture system. do.

단계 S110 : 모션 데이터 수집부(120)를 통하여 현재 프레임에 대한 모션 데이터가 수집되면, 모션 오차 제거부(130)는 모션 데이터의 오차를 확인하기 위해 현재 프레임 모션 데이터에서 인체 각 마디별 3차원 회전 구현을 수행하게 된다. 즉, 모션 오차 제거부(130)는 현재 프레임에서 모션 데이터를 글로벌 좌표계를 기준으로 3차원 회전을 구현하게 된다. Step S110: When the motion data for the current frame is collected through the motion data collecting unit 120, the motion error removing unit 130 3D rotation for each human body joint in the current frame motion data in order to check the error of the motion data. implementation will be performed. That is, the motion error removing unit 130 implements a three-dimensional rotation of the motion data in the current frame based on the global coordinate system.

도 3은 글로벌 좌표계에서의 3차원 회전 구현 개념도를 나타낸 것이다.3 shows a conceptual diagram of implementing a three-dimensional rotation in a global coordinate system.

도 3에 도시된 글로벌 좌표계는 전체 시스템에서 공통적으로 적용되는 좌표계로, 일반적으로 캐릭터가 존재하는 콘텐츠 공간의 지표면이 x-y축, 지표면의 수직 법선이 z축으로 정의된다. 본 발명에서 모션 오차 제거부(130)는 모션 데이터를 3차원 회전값인 오일러각으로 표현하는데, 도 3에서와 같이 x-y-z 글로벌 좌표계를 기준으로 x축으로 φ(롤), y축으로 θ(피치), z축으로 Ψ(요) 값으로 회전하여 인체 모션 데이터의 각 마디를 3차원 상에서 표현하게 된다. The global coordinate system shown in FIG. 3 is a coordinate system commonly applied to the entire system, and in general, the ground surface of the content space where the character exists is defined as the xy axis, and the vertical normal of the ground surface is defined as the z axis. In the present invention, the motion error removing unit 130 expresses motion data as a three-dimensional rotation value, Euler angle, as shown in FIG. 3 , φ (roll) on the x-axis and θ (pitch) on the y-axis based on the xyz global coordinate system. ), each node of the human body motion data is expressed in 3D by rotating it with the Ψ (yaw) value on the z-axis.

단계 S120 : 현재 프레임 모션 데이터의 인체 각 마디별 3차원 회전이 구현되면, 모션 오차 제거부(130)는 다음으로 3차원 회전의 각속도를 계산하게 된다. 본 발명에서 모션 오차 제거부(130)는 각속도를 구하기 위해, 먼저 상기 단계(S110)에서 구현한 3차원 회전으로 캐릭터 각 마디의 시작점을 원점으로 하는 원주 성분(

Figure pat00017
)을 계산한다. Step S120: When the three-dimensional rotation of each body node of the current frame motion data is implemented, the motion error removing unit 130 calculates the angular velocity of the three-dimensional rotation next. In the present invention, in order to obtain the angular velocity, the motion error removing unit 130 is a circumference component (
Figure pat00017
) is calculated.

도 4는 각 마디 원점 기준 위치 벡터의 일례를 나타낸 것으로, 도 4에서와 같이 인체 캐릭터의 왼쪽 팔을 예를 들면, 어깨-팔꿈치-손목 순서로 위치 벡터를 계산한다. 상완 위팔(upper arm)은 마디 시작점인 어깨 관절을 원점으로 하여 상기 단계(S110)에서 계산한 3차원 회전각으로 회전하고, 상완 위팔 회전 후 상완 위팔의 끝 마디, 즉 팔꿈치를 원점으로 하여 하완 아래팔(lower arm)을 회전한다. 하완 아래팔 회전 후 마디 끝인 손목을 원점으로 손이 회전한다. 4 shows an example of the reference position vector of the origin of each node, for example, the left arm of the human body character is calculated in the order of shoulder-elbow-wrist, as in FIG. 4 . The upper arm rotates at the three-dimensional rotation angle calculated in step S110 with the shoulder joint, which is the starting point of the joint, as the origin, and after rotation of the upper arm, the end node of the upper arm, that is, the elbow, is the origin, and the lower arm is below the lower arm. Rotate the lower arm. After rotating the lower arm, the hand rotates with the origin of the wrist, the tip of the joint.

도 5는 원주 성분을 이용하여 각속도를 계산하는 개념을 나타낸 것으로, 각 마디의 시작점(원점 좌표)을 원점으로 원주 성분(

Figure pat00018
)이 계산되면, 각 마디 이전 프레임의 원주 성분(
Figure pat00019
)과 현재 프레임의 원주 성분(
Figure pat00020
)을 이용하여 다음의 수학식 1과 같이 각속도
Figure pat00021
를 계산하게 된다. Figure 5 shows the concept of calculating the angular velocity using the circumferential component, the starting point (origin coordinates) of each node as the origin and the circumferential component (
Figure pat00018
) is calculated, the circumferential component (
Figure pat00019
) and the circumferential component of the current frame (
Figure pat00020
) using the angular velocity as in the following Equation 1
Figure pat00021
will be calculated

Figure pat00022
Figure pat00022

여기서,

Figure pat00023
는 현재 프레임과 이전 프레임의 시간 차이를 나타낸다.here,
Figure pat00023
represents the time difference between the current frame and the previous frame.

단계 S130 : 상기 과정을 통해 각속도가 계산되면, 모션 오차 제거부(130)는 각속도를 이용하여 접선 속도 벡터

Figure pat00024
를 계산하게 된다. Step S130: When the angular velocity is calculated through the above process, the motion error removing unit 130 uses the angular velocity to obtain a tangential velocity vector.
Figure pat00024
will be calculated

도 6은 본 발명에서 접선 속도 벡터를 계산하는 과정을 나타낸 흐름도이다.6 is a flowchart illustrating a process of calculating a tangential velocity vector in the present invention.

모션 데이터를 통하여 표현되는 캐릭터의 마디 길이는 일정하기 때문에 상기 단계(S120)에서 구한 원주 성분(

Figure pat00025
)을 적용하면 마디의 시작 지점을 원점으로 하는 원운동으로 표현된다. 도 6은 원운동을 기반으로 표현되는 벡터 일례를 나타낸 것으로, 상기 단계(S120)에서 구한 각속도와 각 마디 끝 지점의 위치는 원운동에 기반하여 도 7과 같이 벡터로 표현된다. Since the joint length of the character expressed through the motion data is constant, the circumference component (
Figure pat00025
) is applied, it is expressed as a circular motion with the starting point of the node as the origin. 6 shows an example of a vector expressed based on a circular motion, and the angular velocity obtained in step S120 and the position of the end point of each node are expressed as a vector as shown in FIG. 7 based on the circular motion.

도 7에서 위치 벡터

Figure pat00026
은 마디의 시작점인 원점에서 원운동하는 지점까지의 위치를 나타내며, 그 크기는 마디의 길이
Figure pat00027
이고, 이
Figure pat00028
은 원운동의 반지름을 나타낸다. 이때 위치 벡터는 이전 프레임의 최종 위치벡터이므로
Figure pat00029
로 표현한다. Position vector in Fig.
Figure pat00026
indicates the position from the origin, which is the starting point of the node, to the point of circular motion, and its size is the length of the node.
Figure pat00027
and this
Figure pat00028
is the radius of circular motion. At this time, the position vector is the final position vector of the previous frame, so
Figure pat00029
expressed as

또한, 각속도 벡터

Figure pat00030
의 방향은 위치 벡터의 변위 이동면에 수직방향이고 크기는 상기 단계(S120)에서 구한 각속도가 된다. Also, the angular velocity vector
Figure pat00030
The direction of is perpendicular to the displacement moving plane of the position vector, and the magnitude is the angular velocity obtained in step S120.

최종적으로 접선 속도 벡터

Figure pat00031
는 위치 벡터의 회전 방향으로 발생하는 궤도 속도 벡터로 다음 수학식 3와 같이 구하게 된다. Finally the tangential velocity vector
Figure pat00031
is an orbital velocity vector occurring in the rotational direction of the position vector, and is obtained as shown in Equation 3 below.

Figure pat00032
Figure pat00032

단계 S140 : 상기 단계(S130)를 통하여 구한 접선 속도 벡터는 각 마디의 임계치 값과 비교하게 되는데, 도 8은 임계치 비교 및 오차 유무 판단 과정을 나타낸 흐름도이다. 여기에서 임계치 값은 오차 유무를 판단하기 위한 기준값으로, 마디 별 다른 값으로 지정 가능하고, 캐릭터 별로도 지정이 가능하다. 예를 들어, 야구 투수의 모션을 캡쳐할 때 메이저리그 투수의 어깨 각의 각속도는 평균

Figure pat00033
, 팔꿈치는
Figure pat00034
이므로 이 각속도를 기준으로 캐릭터의 상완 위팔의 길이와의 곱으로 접선 속도 벡터의 임계치를 정하고, 하완 아래팔의 길이와 팔꿈치의 각속도를 곱하여 접선 속도 벡터의 임계치를 정할 수 있다. Step S140: The tangential velocity vector obtained through the step (S130) is compared with the threshold value of each node. FIG. 8 is a flowchart illustrating the threshold comparison and error determination process. Here, the threshold value is a reference value for determining the presence or absence of an error, and may be designated as a different value for each node or may be designated for each character. For example, when capturing the motion of a baseball pitcher, the angular velocity of the shoulder angle of a major league pitcher is averaged
Figure pat00033
, the elbow
Figure pat00034
Therefore, based on this angular velocity, the threshold of the tangential velocity vector can be determined by multiplying the length of the upper arm of the character, and the threshold of the tangential velocity vector can be determined by multiplying the length of the forearm and the angular velocity of the elbow.

단계 S150 : 모션 오차 제거부(130)는 도 7에 도시된 바와 같이, 각 마디의 현재 프레임 접선 속도 벡터와 임계치를 비교하여 현재 모션 데이터의 정상 유무를 판단하게 된다. 만약, 현재 프레임 접선 속도 벡터가 임계치 이하인 경우, 정상 데이터로 판단하여 현재 값을 이용하여 최종 모션을 구현하게 되고, 다음 프레임의 위치 벡터 추정을 위해 현재 접선 속도 벡터를 저장하게 된다. 반면, 현재 프레임 접선 속도 벡터가 임계치 보다 큰 경우 오차값으로 판단하여 현재 값은 삭제하고 이전 프레임의 모션 데이터를 이용하여 위치 벡터를 추정하는 과정을 수행하게 된다. Step S150: As shown in FIG. 7 , the motion error removing unit 130 compares the current frame tangential velocity vector of each node with a threshold to determine whether the current motion data is normal. If the current frame tangential velocity vector is less than or equal to the threshold, it is determined as normal data and the final motion is implemented using the current value, and the current tangential velocity vector is stored for estimating the position vector of the next frame. On the other hand, if the tangential velocity vector of the current frame is greater than the threshold, it is determined as an error value, the current value is deleted, and a process of estimating the position vector using motion data of the previous frame is performed.

단계 S160 : 상기 단계(S140)에서 현재 프레임 접선 속도 벡터가 임계치 보다 커 오차가 발생한 것으로 판단되면, 모션 오차 제거부(130)는 오차값으로 판단된 현재 프레임의 위치 벡터를 삭제하고, 현재 위치 벡터를 새로 추정하게 된다. Step S160: If it is determined that an error has occurred because the current frame tangential velocity vector is greater than the threshold in step S140, the motion error removing unit 130 deletes the position vector of the current frame determined as the error value, and the current position vector is newly estimated.

도 8은 위치 벡터를 추정하는 방법을 나타낸 개념도로서, 위치 벡터 추정은 이전 프레임의 위치 벡터

Figure pat00035
와 이전 프레임에서 계산한 접선 속도 벡터
Figure pat00036
를 이용하여 수학식 3과 같이 극좌표성분
Figure pat00037
Figure pat00038
를 계산하고, 이를 통하여 최종 위치벡터
Figure pat00039
를 추정하게 된다. 8 is a conceptual diagram illustrating a method of estimating a position vector. The position vector estimation is a position vector of a previous frame.
Figure pat00035
and the tangential velocity vector computed from the previous frame.
Figure pat00036
Using the polar coordinate component as in Equation 3
Figure pat00037
class
Figure pat00038
, and through this, the final position vector
Figure pat00039
will be estimated

Figure pat00040
Figure pat00040

Figure pat00041
Figure pat00041

단계 S170 : 모션 구현부(140)는 상기 단계 S150 정상 데이터로 판단된 모션 데이터의 현재 값 또는 오차가 발생한 것으로 판단되어 상기 단계 S160을 통하여 추정된 위치 벡터를 이용하여 최종적으로 휴먼 모션을 구현하게 된다. Step S170: The motion implementation unit 140 determines that the current value or error of the motion data determined as the normal data in the step S150 has occurred, and finally implements the human motion using the position vector estimated through the step S160. .

이와 같이, 본 발명에서는 센서방식이나 광학방식 등으로 구성된 모션 캡쳐 시스템의 출력값인 모션 데이터를 이용하여 휴먼 모션 구현 시, 센서 오차나 알고리즘의 예외값, 그리고 광학식의 경우 마커 손실 등으로 생기는 모션 데이터의 오차를 실시간으로 제거함으로써 휴먼 모션 구현의 효율성을 높일 수 있게 된다. 또한, 모션 데이터의 오차를 실시간으로 제거할 뿐만 아니라, 제거된 프레임에 추정값을 적용함으로써, 애니메이터의 휴먼 모션 후보정 시 일의 효율성을 높여 줄 뿐만 아니라, 실시간으로 캐릭터의 모션을 구현하는 콘텐츠에도 안정적인 모션의 구현이 가능하게 된다.As described above, in the present invention, when realizing human motion using motion data, which is an output value of a motion capture system composed of a sensor method or an optical method, a sensor error or an exception value of an algorithm, and in the case of an optical method, motion data generated due to loss of a marker, etc. By removing the error in real time, it is possible to increase the efficiency of human motion implementation. In addition, it not only removes errors in motion data in real time, but also increases the efficiency of the animator's human motion post-correction by applying the estimated value to the removed frame, as well as stable motion for content that implements character motion in real time. implementation is possible.

이러한 본 발명은 상술한 실시 예에 한정되는 것은 아니며 본 발명이 속하는 기술 분야에서 통상의 지식을 갖는 자에 의해 본 발명의 기술사상과 아래에 기재될 특허청구 범위의 균등범위 내에서 다양한 수정 및 변형이 이루어질 수 있음은 물론이다. The present invention is not limited to the above-described embodiments, and various modifications and variations can be made by those of ordinary skill in the art to which the present invention pertains within the scope of equivalents of the technical spirit of the present invention and the claims to be described below. Of course, this can be done.

100 : 휴먼 모션 구현 시스템
110 : 제어부
120 : 모션 데이터 수집부
130 : 모션 오차 제거부
140 ; 모션 구현부
100: Human Motion Implementation System
110: control unit
120: motion data collection unit
130: motion error removal unit
140 ; motion implementation

Claims (7)

휴먼 모션 구현 시스템(100)에서 인체 모션 데이터를 이용하여 휴먼 모션 구현 시 발생하는 오차를 제거하는 방법으로서,
(a) 휴먼 모션 구현 시스템(100)의 모션 데이터 수집부(120)에서 휴먼 모션 구현을 위한 인체 각 부위별 모션 데이터를 수집하는 단계와;
(b) 모션 오차 제거부(130)에서 현재 프레임 모션 데이터를 분석하여 오차가 발생하였는지를 확인하는 단계와;
(c) 오차가 발생한 것으로 확인되면 현재 프레임 모션 데이터의 위치 벡터를 삭제하고, 이전 프레임 모션 데이터를 이용하여 현재 프레임 모션 데이터의 위치 벡터를 추정하는 단계와;
(d) 모션 구현부(140)에서 오차가 발생하지 않은 현재 프레임 모션 데이터의 위치 벡터 또는 추정된 위치 벡터를 적용하여 휴먼 모션을 구현하는 단계;를 포함하는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
A method of removing an error that occurs when implementing human motion by using human motion data in the human motion realization system 100, the method comprising:
(a) collecting motion data for each part of the human body for realizing human motion in the motion data collecting unit 120 of the human motion realization system 100;
(b) analyzing the current frame motion data by the motion error removing unit 130 to determine whether an error has occurred;
(c) when it is confirmed that an error has occurred, deleting the position vector of the current frame motion data and estimating the position vector of the current frame motion data using the previous frame motion data;
(d) implementing the human motion by applying the position vector or the estimated position vector of the current frame motion data in which the error does not occur in the motion implementation unit 140; Way.
제 1항에 있어서,
상기 오차가 발생하였는지를 확인하는 단계(b)는
(b-1) 현재 프레임의 모션 데이터에 포함된 인체의 각 마디별 3차원 회전을 구현하는 단계와,
(b-2) 구현된 각 마디별 3차원 회전으로부터 각속도를 계산하는 단계와,
(b-3) 각 마디별 시작점을 원점으로 하는 원운동에 기반한 위치 벡터 및 각속도를 이용하여 접선 속도 벡터를 계산하는 단계와,
(b-4) 계산된 접선 속도 벡터를 사용자가 설정한 임계치와 비교하여, 접선 속도 벡터가 임계치보다 큰 경우 오차가 발생한 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
The method of claim 1,
Step (b) of checking whether the error has occurred
(b-1) implementing a three-dimensional rotation for each joint of the human body included in the motion data of the current frame;
(b-2) calculating the angular velocity from the implemented three-dimensional rotation for each node;
(b-3) calculating a tangential velocity vector using a position vector and an angular velocity based on a circular motion with the starting point of each node as the origin;
(b-4) comparing the calculated tangential velocity vector with a threshold set by a user, and determining that an error has occurred when the tangential velocity vector is greater than the threshold.
제 2항에 있어서,
상기 인체의 각 마디별 3차원 회전을 구현하는 단계(b-1)에서,
상기 모션 오차 제거부(130)는 현재 프레임에서 모션 데이터를 글로벌 좌표계를 기준으로 x축으로 φ(롤), y축으로 θ(피치), z축으로 Ψ(요) 값으로 회전하여 인체 모션 데이터의 각 마디를 3차원 상에 표현하는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
3. The method of claim 2,
In the step (b-1) of implementing a three-dimensional rotation for each node of the human body,
The motion error removing unit 130 rotates the motion data in the current frame with φ (roll) on the x-axis, θ (pitch) on the y-axis, and Ψ (yaw) on the z-axis based on the global coordinate system to provide human body motion data. An error removal method of human motion implementation, characterized in that each node of is expressed in three dimensions.
제 2항에 있어서,
상기 각속도를 계산하는 단계(b-2)에서,
상기 구현된 각 마디별 3차원 회전으로부터 각 마디의 시작점을 원점으로 하는 원주 성분(
Figure pat00042
)을 계산하고,
각 마디 이전 프레임의 원주 성분(
Figure pat00043
)과 현재 프레임의 원주 성분(
Figure pat00044
)을 이용하여 수학식
Figure pat00045

(여기서,
Figure pat00046
는 현재 프레임과 이전 프레임의 시간 차이를 나타낸다)을 통해 각속도
Figure pat00047
를 계산하는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
3. The method of claim 2,
In the step (b-2) of calculating the angular velocity,
From the three-dimensional rotation for each node implemented above, the circumferential component (
Figure pat00042
) is calculated,
The circumferential component of the frame before each measure (
Figure pat00043
) and the circumferential component of the current frame (
Figure pat00044
) using the formula
Figure pat00045

(here,
Figure pat00046
represents the time difference between the current frame and the previous frame) through the angular velocity
Figure pat00047
An error removal method of human motion implementation, characterized in that for calculating
제 2항에 있어서,
상기 접선 속도 벡터를 계산하는 단계(b-3)에서,
각 마디별 시작점을 원점으로 하는 원운동에 기반한 위치 벡터(
Figure pat00048
)의 크기가 마디의 길이
Figure pat00049
인 경우,
접선 속도 벡터(
Figure pat00050
)는 위치 벡터의 회전 방향으로 발생하는 궤도 속도 벡터로 수학식
Figure pat00051

을 통해 계산되는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
3. The method of claim 2,
In the step (b-3) of calculating the tangential velocity vector,
Position vector (
Figure pat00048
) is the length of the node
Figure pat00049
If ,
tangential velocity vector (
Figure pat00050
) is the orbital velocity vector occurring in the direction of rotation of the position vector.
Figure pat00051

Error removal method of human motion implementation, characterized in that calculated through.
제 2항에 있어서,
상기 오차가 발생한 것으로 판단하는 단계(b-4)에서
오차 발생 유무 판단 기준이 되는 임계치는 마디별 또는 휴먼 캐릭터별로 다르게 지정 가능한 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
3. The method of claim 2,
In the step (b-4) of determining that the error has occurred
A method for eliminating errors in human motion implementation, characterized in that a threshold value, which is a criterion for determining whether an error occurs or not, can be designated differently for each node or for each human character.
제 2항에 있어서,
상기 위치 벡터를 추정하는 단계(c)에서,
이전 프레임의 위치 벡터(
Figure pat00052
)와 이전 프레임에서 계산한 접선 속도 벡터(
Figure pat00053
)를 이용하여 수학식
Figure pat00054

Figure pat00055

을 통해 극좌표성분
Figure pat00056
Figure pat00057
를 계산하고, 이를 통하여 최종 위치 벡터
Figure pat00058
를 추정하는 것을 특징으로 하는 휴먼 모션 구현의 오차 제거 방법.
3. The method of claim 2,
In step (c) of estimating the position vector,
the previous frame's position vector (
Figure pat00052
) and the tangential velocity vector computed from the previous frame (
Figure pat00053
) using the formula
Figure pat00054

Figure pat00055

polar coordinate component through
Figure pat00056
class
Figure pat00057
computes, and through this, the final position vector
Figure pat00058
An error removal method of human motion implementation, characterized in that for estimating .
KR1020200036009A 2020-03-25 2020-03-25 Method for removing errors in human motion implementation using tangential velocity vector KR102376973B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200036009A KR102376973B1 (en) 2020-03-25 2020-03-25 Method for removing errors in human motion implementation using tangential velocity vector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200036009A KR102376973B1 (en) 2020-03-25 2020-03-25 Method for removing errors in human motion implementation using tangential velocity vector

Publications (2)

Publication Number Publication Date
KR20210119654A true KR20210119654A (en) 2021-10-06
KR102376973B1 KR102376973B1 (en) 2022-03-21

Family

ID=78077215

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200036009A KR102376973B1 (en) 2020-03-25 2020-03-25 Method for removing errors in human motion implementation using tangential velocity vector

Country Status (1)

Country Link
KR (1) KR102376973B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240081285A (en) 2022-11-30 2024-06-07 주식회사 아이팝 Method for estimating user movement based on acceleration sensor in motion capture system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100415884B1 (en) 2000-11-06 2004-01-24 (주)모션테크놀로지 Method and apparatus for capturing motion of human body and thereby making motion data file
KR20110070058A (en) * 2009-12-18 2011-06-24 한국전자통신연구원 Method and apparatus for motion capture of dynamic object
KR101519775B1 (en) 2014-01-13 2015-05-12 인천대학교 산학협력단 Method and apparatus for generating animation based on object motion
KR101865173B1 (en) * 2017-02-03 2018-06-07 (주)플레이솔루션 Method for generating movement of motion simulator using image analysis of virtual reality contents
KR20180062137A (en) * 2016-11-30 2018-06-08 (주)코어센스 Method for position estimation of hybird motion capture system
KR20190099681A (en) * 2018-02-19 2019-08-28 (주)플레이솔루션 Real time filtering method for motion simulator interworking of contents based on game engine

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100415884B1 (en) 2000-11-06 2004-01-24 (주)모션테크놀로지 Method and apparatus for capturing motion of human body and thereby making motion data file
KR20110070058A (en) * 2009-12-18 2011-06-24 한국전자통신연구원 Method and apparatus for motion capture of dynamic object
KR101519775B1 (en) 2014-01-13 2015-05-12 인천대학교 산학협력단 Method and apparatus for generating animation based on object motion
KR20180062137A (en) * 2016-11-30 2018-06-08 (주)코어센스 Method for position estimation of hybird motion capture system
KR101865173B1 (en) * 2017-02-03 2018-06-07 (주)플레이솔루션 Method for generating movement of motion simulator using image analysis of virtual reality contents
KR20190099681A (en) * 2018-02-19 2019-08-28 (주)플레이솔루션 Real time filtering method for motion simulator interworking of contents based on game engine

Also Published As

Publication number Publication date
KR102376973B1 (en) 2022-03-21

Similar Documents

Publication Publication Date Title
CN107833271B (en) Skeleton redirection method and device based on Kinect
US7460687B2 (en) Watermarking scheme for digital video
US9529426B2 (en) Head pose tracking using a depth camera
Klein et al. Parallel tracking and mapping on a camera phone
KR101606628B1 (en) Pointing-direction detecting device and its method, program and computer readable-medium
KR101307341B1 (en) Method and apparatus for motion capture of dynamic object
US8428306B2 (en) Information processor and information processing method for performing process adapted to user motion
JP2007333690A (en) Motion capture system, method, and program
JP5965293B2 (en) Camera pose estimation device and camera pose estimation program
KR102376973B1 (en) Method for removing errors in human motion implementation using tangential velocity vector
JP2014102608A (en) Three-dimensional object recognition device and three-dimensional object recognition method
JP4874693B2 (en) Image processing apparatus and processing method thereof
KR102622981B1 (en) System for tracking motion using deep learning technic
CN110807833A (en) Mesh topology obtaining method and device, electronic equipment and storage medium
KR20210068336A (en) Device and method for generating animation based on motion of object
JP2024042417A (en) Arithmetic device, arithmetic method, and program
JP2018173882A (en) Information processing device, method, and program
CN112767481B (en) High-precision positioning and mapping method based on visual edge features
CN115601505A (en) Human body three-dimensional posture restoration method and device, electronic equipment and storage medium
JP4559375B2 (en) Object position tracking method, apparatus, and program
CN108536276A (en) Virtual hand grasping algorithm in a kind of virtual reality system
WO2021169705A1 (en) Method, apparatus and device for processing gesture depth information, and storage medium
JP2008008797A (en) Apparatus ande program for predicting camera's behavior
TWI845448B (en) Tracking system and calibration method
CN113432593A (en) Centralized synchronous positioning and map construction method, device and system

Legal Events

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