KR20020095774A - A probabilistic approach to planning biped locomotion with prescibed motions - Google Patents

A probabilistic approach to planning biped locomotion with prescibed motions Download PDF

Info

Publication number
KR20020095774A
KR20020095774A KR1020010033968A KR20010033968A KR20020095774A KR 20020095774 A KR20020095774 A KR 20020095774A KR 1020010033968 A KR1020010033968 A KR 1020010033968A KR 20010033968 A KR20010033968 A KR 20010033968A KR 20020095774 A KR20020095774 A KR 20020095774A
Authority
KR
South Korea
Prior art keywords
motion
sequence
target
footprint
roadmap
Prior art date
Application number
KR1020010033968A
Other languages
Korean (ko)
Other versions
KR100408428B1 (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 KR10-2001-0033968A priority Critical patent/KR100408428B1/en
Publication of KR20020095774A publication Critical patent/KR20020095774A/en
Application granted granted Critical
Publication of KR100408428B1 publication Critical patent/KR100408428B1/en

Links

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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

PURPOSE: A method for probabilistic approach for a movement motion plan by using motion capture data is provided to find footprint sequence of a final motion and its corresponding motion sequence to generate a final motion by re-targeting the motion sequence. CONSTITUTION: A method for probabilistic approach for a movement motion plan by using motion capture data includes the steps of composing a road map for guiding movement motion of an imaginary character by randomly extracting points for the character having two feet to safely step in an imaginary environment to find out a series of motions for the character to move from a starting point to a target point, converting and searching the road map with reference to a posture transition graph which shows connected relations between motions captured in advance for obtaining target footprints and the motion sequence from the starting point to the target point, and deforming the input motion sequence for precisely following a target footprint sequence for the landing points of the input motion sequence to generate a final movement motion.

Description

동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법{A probabilistic approach to planning biped locomotion with prescibed motions}A probabilistic approach to planning biped locomotion with prescibed motions}

본 발명은 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법에 관한 것이다. 보다 상세하게는 가상 캐릭터가 시작점에서 목표점으로 자연스럽게 이동하는 동작을 계획하기 위해 미리 포착된 동작 데이터를 활용하는 기법에 관한 것이다.The present invention relates to a probabilistic approach to mobile motion planning using motion capture data. More specifically, the present invention relates to a technique for utilizing pre-captured motion data to plan a motion in which a virtual character moves naturally from a starting point to a target point.

최근에 들어 동작 포착 장비(motion capture system) 기술이 발전하고 이들 장비가 널리 보급됨에 따라 매우 사실적인 동작을 손쉽게 얻을 수 있게 되었으며, 영화나 비디오게임 등에 등장하는 3차원 가상 캐릭터의 사실적인 애니메이션을 제작하는데 있어서도 이러한 동작 데이터가 널리 사용되고 있다. 이에 따라 동작 데이터를 조작하거나 편집하여 재활용하는데 초점을 맞춘 연구들이 활발히 진행 중이다. 이들은 애니메이터가 동작이 만족해야 한 특성을 제약 조건(constraint)으로 기술하면 원하는 동작으로 변형하는 효과적인 방법들을 제공한다. 하지만 동작 데이터를 활용한 동작 계획에 관한 연구는 아직까지 제시되지 않았다.With the recent development of motion capture system technology and the widespread use of these devices, it is possible to easily obtain very realistic motions, and to produce realistic animations of 3D virtual characters appearing in movies and video games. Such motion data is also widely used. Accordingly, researches focused on manipulating, editing, and recycling motion data are actively underway. They provide an effective way of transforming an animator into a desired behavior by describing the characteristics that the behavior should satisfy. However, the study of the motion plan using motion data has not been presented yet.

애니메이션 시나리오는 일련의 동작들로 수행될 수 있는 몇 개의 작업들로 이루어진다. 동작 데이터를 활용하는 작업 수준의 동작 계획(task-level motion planning)은 애니메이션 디자인 단계의 초기부터 애니메이션을 빠른 시간에 확인할 수 있게 하는 급속 동작 원형화(rapid motion prototyping)에서 매우 사실적인 동작을 제공할 수 있으며, 사용자가 제어하는 캐릭터가 가상 환경과 상호 작용하는대화형 애니메이션 시스템(interactive animation system)도 효과적으로 지원할 수 있다. 대화형 애니메이션에서 사실적인 동작을 쉽게 생성하기 위해서는 작업 수준의 지령(task-level directive)이 요구되지만, 전통적인 동작 계획 기법들은 미리 포착된 동작 데이터를 효율적으로 활용하면서 이를 제공하기 어렵다.An animation scenario consists of several tasks that can be performed in a series of actions. Task-level motion planning, which utilizes motion data, can provide very realistic motion in rapid motion prototyping, which allows you to quickly see animations early in the animation design phase. It can also effectively support an interactive animation system in which a user-controlled character interacts with a virtual environment. Task-level directives are required to easily create realistic motion in interactive animations, but traditional motion planning techniques are difficult to provide while efficiently utilizing pre-captured motion data.

사실적인 이동 동작의 생성은 컴퓨터 애니메이션에서 많은 주목을 받아 왔다. Bruderlin과 Calvert는 속도, 보폭, 발걸음 횟수 등의 매개변수가 주어지면 원하는 보행 동작을 생성하는 목표 지향적 동적 접근 방법(goal-directed dynamic approach)을 제안하였다. Boulic 등은 보행에 있어서의 내재적인 동역학을 활용하기 위해 생체 역학 데이터(biomechanical data)를 이용하였다. Ko와 Badler도 동역학적으로 안정적인(dynamically-balanced) 보행을 생성하는 비슷한 기법을 제시하였으며, 이후 곡선을 따라가는 보행으로 확장하였고 발자국 또한 자동으로 생성할 수 있었다. Raibert와 Hodgins는 수작업으로 고안한 제어기(controller)를 통해 물리적으로 사실적인 이동 동작을 생성할 수 있음을 보였고, Hodgins 등은 이러한 제어기를 운동 선수 등과 같이 보다 복잡한 모델에도 적용하였다. 또한, Hodgins와 Pollard는 기존의 제어기를 새로운 캐릭터에 자동으로 적응시키는 방법을 기술하였다. van de Panne는 입력으로 주어진 발자국에서 2족(biped) 이동 동작을 생성하는 최적화 기반 기법을 제시하였는데, 이 기법은 4족(quadruped) 보행 동작 생성으로도 확장되었다.The creation of realistic movement gestures has received a lot of attention in computer animation. Bruderlin and Calvert proposed a goal-directed dynamic approach that generates the desired walking behavior given the parameters of speed, stride length, and number of steps. Boulic et al. Used biomechanical data to exploit the intrinsic kinetics of gait. Ko and Badler also proposed a similar technique for generating dynamically-balanced gait, which then extended to walking along the curve and automatically generated footprints. Raibert and Hodgins have shown that they can create physically realistic movement behaviors with hand-crafted controllers, and Hodgins and others have applied them to more complex models such as athletes. Hodgins and Pollard also described how to automatically adapt existing controllers to new characters. van de Panne proposed an optimization-based technique for generating biped movement motions from a given footprint as an input, which has also been extended to the generation of quadruped walking motions.

최근에 들어서는 상업용 애니메이션 소프트웨어에도 2족 이동 동작 생성에 대한 패키지들이 추가되고 있다. 예를 들어, Boston Dynamics의 "BDI Guy", CredoInteractive의 Life Forms Studio", 3D Studio Max의 "Character Studio", Motion Factory의 Motivate" 등이 있다. 이들은 사용자가 가상 캐릭터의 이동 경로나 밟고 지나갈 발자국들을 지정하면 이들을 따라 이동하는 동작을 자동으로 생성한다.In recent years, commercial animation software has also added packages for creating biped movements. For example, Boston Dynamics' "BDI Guy", CredoInteractive's Life Forms Studio ", 3D Studio Max's" Character Studio ", and Motion Factory's Motivate. They automatically create movements that move along when the user specifies the path of movement of the virtual character or the footprints to step on.

컴퓨터 애니메이션에 등장하는 사람과 유사한 캐릭터의 모델들은 대략 40개 정도의 높은 자유도(DOF)를 가지고 있어 이들의 동작을 곧바로 계획 하기는 어렵다. 사람의 네비게이션(human navigation)을 지원하기 위한 대부분의 연구들은 캐릭터 모델을 원기둥으로 간략화 하여 동작 계획의 구성 공간(configuration space)을 이차원으로 낮춘 후 2D 경로 계획 알고리즘을 적용하여 가상 환경에서의 이동 경로를 찾고 기존의 2족 이동 동작 생성 기법에 기반 하여 이를 따라가는 이동 동작을 생성하였다. Reynolds는 반발 행동 양식(reactive behavior)을 도입하여 새 떼나 소 떼, 물고기 떼 등과 같은 단순한 생물의 군을 모의 실험하였다. Terzopoulos 등은 가상 비전(synthetic vision)을 가진 인공 고기의 반발 행동 양식을 모의 실험하였다. Noser 등은 가상 비전을 이용하여 사람과 같은 캐릭터를 위한 국지적 네비게이션 모델을 제시하였다. 또한, 장애물을 회피하기 위한 사람의 기억 모델(memory model)을 모의 실험하였다. Kuffner와 Latombe는 동적으로 변하는 환경에서 이와 비슷한 문제를 해결하였다. Reich 등은 울퉁불퉁한 지형에서 사람의 네비게이션을 위한 실시간 모델을 제시하였으며, 장애물들의 기하학적인 요소들을 탐지하기 위하여 모의 센서(simulated sensor)를 채용하였다. Bandi와 Thalmann은 가상 환경을 3차원 균일 격자(uniform grid)로 분할하여 자율적인 캐릭터(autonomous character)의 이동 경로를 탐색하였다.Models of characters similar to those in computer animation have about 40 high degrees of freedom (DOF), making it difficult to plan their movements immediately. Most studies to support human navigation have reduced the configuration space of the motion plan to two dimensions by simplifying the character model with a cylinder, and then applying the 2D path planning algorithm to determine the moving path in the virtual environment. Based on the existing two-group movement motion generation technique, we created a movement motion that follows it. Reynolds introduced a reactive behavior to simulate simple groups of creatures such as swarms, herds, and fish. Terzopoulos et al. Simulated the repulsive behavior of artificial meat with synthetic vision. Noser et al. Proposed a local navigation model for human-like characters using virtual vision. We also simulated a human memory model to avoid obstacles. Kuffner and Latombe solved a similar problem in a dynamically changing environment. Reich et al. Presented a real-time model for human navigation in rugged terrain and employs a simulated sensor to detect geometrical elements of obstacles. Bandi and Thalmann divided the virtual environment into a three-dimensional uniform grid to explore the paths of autonomous characters.

시작점과 목표점이 주어지면 이들 사이를 움직이는 로봇의 경로를 찾기 위한 연구는 로보틱스 분야에서 활발히 연구 되어왔다. 최근에 들어서는 높은 자유도를 가지는 로봇의 경로를 빠르게 찾기 위한 연구로서 확률적 경로 계획(probabilistic path planning)이 대두되었다. Barraquand와 Latombe는 전위장 방법(potential field method)에서 국지적 최소점(local minima)을 탈출하기 위해 무작위 경로 계획 기법(randomized path planning technique)을 고안하였다. 이후, Kavraki와 Latombe, Overmars와 Svestka는 전처리 단계에서 동작 계획의 구성 공간을 무작위 표본 추출(random sampling)하여 로드맵(roadmap)을 생성하고, 경로 계획 단계에서는 로드맵을 탐색하여 로봇의 이동 경로를 찾는 방법들을 개별적 및 공동으로 제안하였다. 이러한 방법들은 넌홀로나믹(non-holonomic) 제약 조건을 가지는 자동차나 자유도가 대단히 높은 로봇을 이동시키는 매우 어려운 문제들에서 좋은 성능을 보여왔다.Given the starting point and the target point, the research to find the path of the robot moving between them has been actively studied in the field of robotics. Recently, probabilistic path planning has emerged as a study for quickly finding a path of a robot having a high degree of freedom. Barraquand and Latombe devised a randomized path planning technique to escape the local minima in the potential field method. Later, Kavraki and Latombe, Overmars and Svestka randomly sample the construction space of the motion plan in the preprocessing phase to generate a roadmap, and in the path planning phase, navigate the roadmap to find the robot's movement path. Were individually and jointly proposed. These methods have shown good performance in the very difficult problems of moving cars with non-holonomic constraints or robots with very high degrees of freedom.

최근에 들어서는 제한된 경우에 있어서 이러한 실험적 성공에 대한 이론적 토대가 마련되었다. Koga 등은 무작위 경로 계획과 역운동학을 결합하여 자동으로 사람 팔을 조작하는 애니메이션을 생성하였다. Kalisiak과 van de Panne는 손잡이(handhold)나 발판(foothold)이 주어진 제한된 2차원 환경에서 거머쥐기 기반(grasp-based)의 동작 계획 알고리즘을 제시하였다. Kindel 등은 동역학적 제약 조건을 가지는 로봇을 위한 경로 계획기를 개발하였고 그 효과를 실제 환경 및 모의 환경에서 입증하였다.In recent years, a limited theoretical basis has been laid for this experimental success. Koga et al. Combine random path planning and inverse kinematics to create animations that automatically manipulate human arms. Kalisiak and van de Panne proposed a grasp-based motion planning algorithm in a limited two-dimensional environment given a handle or foothold. Kindel et al. Developed a path planner for robots with dynamic constraints and demonstrated their effectiveness in real and simulated environments.

동작 포착 장비가 널리 보급됨에 따라 이를 이용하여 사실적인 애니메이션을손쉽게 생성하기 위한 연구들이 활발히 진행되었으며, 미리 포착된 동작을 편집하기 위한 도구들이 개발되고 있다. Bruderlin과 Willams는 동작을 조작하기 위해 신호 처리 기법을 채용하였으며, 변위 매핑(displacement mapping) 기법을 도입하여 동작 데이터의 세부적인 특성을 유지하며 동작을 수정할 수 있게 하였다. Witkin과 Popovic는 이와 같은 목적으로 동작 와핑(motion warping)을 제안하였다. Unuma 등은 푸리에 분석(Fourier analysis) 기법을 이용하여 주파 영역(frequency domain)에서 동작 데이터를 보간(interpolation) 및 외삽(extrapolation)하였다. Lamouret와 van de Panne는 동작 데이터를 재사용 하는데 있어서의 여러 문제들을 논의하였다.As motion capturing equipment is widely used, researches for generating realistic animations with ease are being actively conducted, and tools for editing pre-captured motions are being developed. Bruderlin and Willams employ signal processing techniques to manipulate motion, and use displacement mapping to modify motion while maintaining detailed characteristics of motion data. Witkin and Popovic proposed motion warping for this purpose. Unuma et al. Interpolated and extrapolated motion data in the frequency domain using Fourier analysis. Lamouret and van de Panne discussed several issues in reusing motion data.

Rose 등은 시공간 제약 조건(spacetime constraints) 기법을 이용하여 동작들을 이음새 없이 매끄럽게 연결하였다. Gleicher는 어느 한 캐릭터의 기존 동작을 그 구조는 같지만 크기가 다른 캐릭터에 적합하게 하는 동작 재조준(motion retargetting)을 위해 시공간 제약 조건 문제를 간략화 하여 대화적으로 동작을 편집할 수 있는 성능을 얻을 수 있었다. 이러한 접근 방법에 있어서 수행시간을 보다 단축하기 위해 Lee와 Shin은 다층 B-스플라인 근사(multilevel B-spline approximation) 기반의 계층적 변위 매핑(hierarchical displacement mapping) 기법을 제안하였다.Rose et al. Seamlessly connect behaviors using spacetime constraints. Gleicher simplifies the space-time constraint problem for motion retargeting, which allows existing characters of one character to be suitable for characters of the same structure but different sizes, resulting in the ability to edit motion interactively. there was. To shorten the execution time in this approach, Lee and Shin proposed a hierarchical displacement mapping technique based on multilevel B-spline approximation.

가상 환경에서 시작점 및 목표점이 주어지면 본 발명에서 해결하고자 하는 문제는 가상 캐릭터를 시작점에서 목표점으로 이동시키는 일련의 동작들을 찾는 것이다. 이러한 문제에 있어 기존의 동작 계획 기법들은 사람과 유사한 캐릭터의 사실적인 애니메이션을 획득하기가 거의 불가능하다. 또한, 기존의 동작 편집 기법들은 원하는 동작을 만들어내기 위한 고수준(high-level)의 계획 능력을 갖추고 있지 않았다.Given a starting point and a target point in the virtual environment, the problem to be solved in the present invention is to find a series of motions to move the virtual character from the starting point to the target point. In this problem, existing motion planning techniques are almost impossible to obtain realistic animations of human-like characters. In addition, existing motion editing techniques do not have a high-level planning capability to produce the desired motion.

따라서, 본 발명은 상기한 문제점을 해결하기 위한 것으로서 본 발명의 목적은 가상 캐릭터가 시작점에서 목표점으로 자연스럽게 이동하는 동작을 계획하기 위해 미리 포착된 동작 데이터를 활용하는 기법을 제공하는데 있다.Accordingly, an object of the present invention is to provide a technique that utilizes previously captured motion data to plan a motion in which a virtual character moves naturally from a starting point to a target point.

상기한 본 발명의 목적을 달성하기 위해 본 발명에서 제안한 기법은 확률적 경로 계획(probabilistic path planning)과 계층적 동작 맞춤 (hierarchical motion fitting)을 결합하여 최종 동작의 발자국 시퀀스(footprint sequence)와 그에 해당하는 동작 시퀀스를 찾은 후, 동작 시퀀스를 리타게팅(motion retargeting) 하여 발자국을 따라 이동하는 최종 동작을 생성한다.In order to achieve the object of the present invention described above, the proposed technique combines probabilistic path planning and hierarchical motion fitting to obtain a footprint sequence of the final operation and its corresponding. After finding the motion sequence to perform a motion retargeting (motion retargeting) to generate a final motion to move along the footprint.

본 발명에 따르면, 가상 환경에서 시작점과 목표점이 주어지면 미리 주어진 동작들을 이용하여 시작점에서 목표점으로 이동하기 위한 일련의 동작들을 찾기 위해 상기 가상 환경에서 2족 캐릭터가 발을 안전하게 딛을 수 있는 지점들을 랜덤하게 추출하여 가상 캐릭터의 이동 동작을 안내하는 로드맵을 구성하는 단계와; 상기 시작점에서 목표점으로 이동하기 위한 입력 동작 시퀀스와 목표 발자국들을 얻기 위해 미리 포착된 동작들간의 연결 관계를 나타내는 자세 전이 그래프를 참조하여 로드맵을 변환하고 탐색하는 단계와; 상기 입력 동작 시퀀스의 착지 점들이 목표 발자국 시퀀스를 정확히 따라가도록 입력 동작 시퀀스를 변형하여 최종 이동 동작을 생성하는 단계를 포함하는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법이 제시된다.According to the present invention, given a starting point and a target point in the virtual environment, randomly picks points at which the biped character can safely step on the virtual environment in order to find a series of movements for moving from the starting point to the target point using predetermined motions. Extracting and constructing a road map for guiding a movement of the virtual character; Converting and searching a road map with reference to a posture transition graph representing a connection relationship between an input operation sequence for moving from the starting point to a target point and pre-captured operations to obtain target footprints; And generating a final movement motion by modifying the input motion sequence so that the landing points of the input motion sequence exactly follow the target footprint sequence. Presented.

도 1은 본 발명에 따라 어느 한도 내에서 동작을 변형하여 맨 처음 및 마지막 발자국을 두 노드의 발판과 각각 일치하도록 변환할 수 있는지의 검사과정을 나타낸 모식도이다.FIG. 1 is a schematic diagram illustrating a process of checking whether the first and last footprints can be converted to coincide with the footsteps of two nodes by modifying an operation within a certain limit according to the present invention.

도 2a 내지 도 2c는 본 발명에 따라 자세 전이 그래프를 이용하여 변환된 로드맵을 나타낸 모식도이다.2A to 2C are schematic diagrams showing a road map converted using a posture transfer graph according to the present invention.

도 3은 본 발명에 따라 연속적으로 정련된 발자국의 시퀀스를 나타낸 모식도이다.3 is a schematic diagram showing a sequence of footprints refined continuously according to the present invention.

도 4는 본 발명에 따라 발자국의 정련 과정을 나타낸 모식도이다.Figure 4 is a schematic diagram showing the refining process of the footprint in accordance with the present invention.

도 5는 본 발명에 따라 몸통 경로의 예측 과정을 나타낸 모식도이다.5 is a schematic diagram showing a process of predicting the trunk path according to the present invention.

도 6은 본 발명에 따라 바다와 섬으로 이루어진 지형에서 계획된 이동 동작의 과정을 나타낸 모식도이다.6 is a schematic diagram showing a process of a planned movement operation in the terrain consisting of the sea and the island according to the present invention.

도 7은 본 발명에 따라 복잡한 환경에서의 이동 동작을 계획하기 위해 다양한 동작을 사용할 수 있음을 나타낸 모식도이다.7 is a schematic diagram illustrating that various operations can be used to plan a movement operation in a complex environment according to the present invention.

도 8은 본 발명에 따라 장애물로 간주되는 여러 가구가 있는 방에서의 이동 동작을 나타낸 모식도이다.8 is a schematic diagram showing a movement operation in a room with several households considered as obstacles according to the present invention.

본 발명에서는 고수준의 지령(high-level directive)을 통해 가상 캐릭터의 사실적인 동작을 빠르게 생성하기 위해 확률적 경로 계획(probabilistic path planning)과 계층적 동작 맞춤(hierarchical motion fitting)을 결합하여 로드맵 구성(roadmap construction), 로드맵 탐색(roadmap search), 동작 생성(motion generation)의 세 단계로 이루어진 이동 동작 계획 및 생성 기법을 제안한다. 이 기법의 전반을 설명하기 위해 각각을 간략히 설명하면 다음과 같다.In the present invention, in order to quickly generate realistic motions of a virtual character through high-level directives, a roadmap is constructed by combining probabilistic path planning and hierarchical motion fitting. We propose a mobile motion planning and generation technique that consists of three steps: roadmap construction, roadmap search, and motion generation. The following briefly describes each of these techniques in order to illustrate the overall nature of this technique.

먼저, 로드맵 구성(roadmap construction) 단계에서는 주어진 가상 환경에서 로드맵(roadmap)을 구성하기 위해 가상 캐릭터의 유효한 구성(valid configuration)을 무작위 표본 추출한다. 이때, 수행 시간의 효율을 위하여 캐릭터의 자세(posture) 대신 지지 발(stance foot)의 구성을 캐릭터의 구성으로 하며 이를 발판(foothold)이라 부른다. 가상 캐릭터의 이동 동작 생성을 위한 로드맵은 견본으로 추출된 지지 발의 위치 및 방향을 노드(node)로 가지는 유향 그래프(directed graph)로 표현된다. 가상 캐릭터가 미리 주어진 어느 한 동작을 이용하여 그 사실성(liveness)을 잃지 않는 범위 내에서 두 노드 사이를 이동할 수 있으면 그 두 노드를 연결하는 유향 에지(directed edge)가 삽입된다.First, the roadmap construction step randomly samples the valid configuration of a virtual character to construct a roadmap in a given virtual environment. At this time, for the efficiency of execution time, instead of the posture of the character (posture), the configuration of the foot (stance foot) as the configuration of the character is called a footboard (foothold). The road map for generating the movement movement of the virtual character is represented by a directed graph having nodes and positions of the support feet extracted as a sample. If a virtual character can move between two nodes within a range that does not lose its liveness using any given motion, a directed edge connecting the two nodes is inserted.

로드맵 탐색(roadmap search) 단계에서는 시작점과 목표점을 로드맵에 연결시킨 후 유향 그래프에서 제약 조건을 가지는 최소 비용 경로(minimum-cost path)를 찾는다. 즉, 연속된 모든 두 에지가 자세 전이 그래프(posture transition graph)의 한 노드를 공유하는 최소 비용 경로를 찾는 것이다. 자세 전이 그래프의 노드는 자세를 나타내며 두 노드는 동작을 나타내는 유향 에지로 연결되어 있다. 동작들 사이의 연결성을 보장하기 위해 자세 전이 그래프를 참조하여 로드맵을 변환한 후 최소 비용 경로 알고리즘을 적용하여 입력 동작 시퀀스(input motion sequence)와 목표 발자국 시퀀스(target footprint sequence)를 얻는다.In the roadmap search step, the starting point and the target point are connected to the roadmap, and then the minimum-cost path having the constraint is found in the directed graph. That is, to find the least cost path where all two consecutive edges share one node of a posture transition graph. The nodes in the posture transition graph represent postures, and the two nodes are connected by directed edges representing motion. In order to ensure connectivity between the motions, the roadmap is transformed by referring to the posture transition graph, and then an input motion sequence and a target footprint sequence are obtained by applying a minimum cost path algorithm.

동작 생성(motion generation) 단계에서는 로드맵을 탐색하여 찾은 입력 동작 시퀀스와 목표 발자국 시퀀스로부터 사실적인 최종 이동 동작을 생성한다. 입력 동작 시퀀스는 로드맵 탐색 단계에서 최소 비용 경로의 각 에지에 해당하는 동작을 단순하게 연결하여 획득되었다. 따라서, 최소 비용 경로의 각 노드들의 발판과 일치하도록 변형된 목표 발자국들은 입력 동작 시퀀스의 발자국과 차이가 있을 수 있다. 이러한 문제는 다음 두 단계로 나누어서 해결된다. 먼저, 보다 나은 초기 추정치(initial guess)를 얻기 위해 최종 동작을 예측한다. 그리고 나서 이렇게 얻은 초기 추정치와 함께 계층적 변위 매핑 기법을 적용하여 목표 발자국을 따라가는 최종 동작을 만든다.In the motion generation step, a realistic final movement motion is generated from the input motion sequence and the target footprint sequence found by searching the road map. The input motion sequence was obtained by simply concatenating the motions corresponding to each edge of the least cost path in the roadmap search phase. Thus, target footprints modified to match the footsteps of each node in the least cost path may be different than the footprint of the input operation sequence. This problem is solved in two steps. First, predict the final action to get a better initial guess. Then, using this initial estimate, we apply a hierarchical displacement mapping technique to create the final motion following the target footprint.

이어서, 본 발명에서는 1.로드맵 구성(노드 생성 및 연결, 국지적 계획기, 비용함수, 로드맵 강화); 2.로드맵 탐색(경로 찾기, 발자국 정련); 3. 동작생성; 4.실험결과에 대하여 순차적으로 첨부한 도면을 참조하여 상세히 설명하기로 한다.Then, in the present invention, 1. Roadmap configuration (node creation and connection, local planner, cost function, roadmap enhancement); 2. Roadmap search (pathfinding, refining footprints); 3. motion generation; 4. Experimental results will be described in detail with reference to the accompanying drawings in sequence.

1.로드맵 구성에 있어서 노드 생성 및 연결 과정에 대하여 살펴보기로 한다.1. We will look at the process of node creation and connection in constructing road map.

발판(foothold) f=(p,q)는 지지 발(stance foot)의 구성(configuration)을나타내며,는 각각 위치 및 방향을 나타낸다. 이때 지형 위에서의 지지 발의 2차원 위치(u,v)와 방향(yaw)로 발판의 구성 공간(configuration space)을 매개변수화(parameterization)하여 구성 공간의 차원을 낮춘다.가 주어지면 지형 표면의 기하학적 정보에서 높이(height)와 상하 요동(pitch), 좌우 요동(roll)을 뽑아 내어 전체 구성 f=(p,q)를 복원할 수 있다. 이러한 매개변수 u, v,가 각 매개변수의 정해진 구간 내에서 균등분포(uniform distribution)를 따른다는 가정 하에 발판의 표본을 무작위 추출(random sampling)하여 로드맵의 노드를 생성한다. 추출된 각 발판에 대해서는 캐릭터가 지형 위에 안전하게 발을 놓을 수 있는지 확인한다. 이와 같은 방법으로 미리 정해진 개수의 유효한 발판을 추출하여 로드맵의 노드로 보관한다.Foothold f = (p, q) denotes the configuration of the support foot, Wow Respectively indicate position and direction. The two-dimensional position (u, v) and direction of the support foot on the terrain By lowering the configuration space of the scaffold, the dimension of the configuration space is lowered. If is given, the height, pitch, and roll may be extracted from the geometric information of the terrain surface to restore the entire configuration f = (p, q). These parameters u, v, The nodes of the roadmap are generated by random sampling of the scaffolding, assuming that follows a uniform distribution within a defined interval of each parameter. For each extracted scaffold, make sure that the character can safely rest on the terrain. In this way, a predetermined number of valid scaffolds are extracted and stored as nodes in the roadmap.

새로 생성된 노드는 후속에서 설명될 빠른 국지적 계획기(local planner)를 통해 로드맵에 추가된다. 로드맵의 노드 수가 증가함에 따라 새로 생성된 노드를 지금까지 생성된 다른 모든 노드들과 연결하는데 소요되는 시간은 엄청나게 커진다. 멀리 떨어져 있는 노드들은 좀처럼 서로 잘 연결되지 않는다는 사실에 착안하여 새로 생성된 노드와 가장 가까운 K 개의 노드들에 대해서만 연결을 시도한다. 여기서, K는 미리 주어진 양의 정수이다. 국지적 계획기를 이용하여 두 노드 사이를 성공적으로 연결할 수 있을 때마다 그 두 노드를 연결하는 새로운 유향 에지를 로드맵에 추가한다. 가장 가까운 K 개의 노드들을 찾는 문제(K-nearest neighbor problem)는 계산 기하학에서 활발히 연구되었는데 많은 개수의 점들 사이에서 이를구하는 것은 상당히 많은 계산 시간을 요한다.The newly created nodes are added to the roadmap through a fast local planner, which will be described later. As the number of nodes in the roadmap increases, the time it takes to connect a newly created node with all other nodes created so far is enormous. Taking into account the fact that distant nodes rarely connect with each other, they try to connect only to the K nodes closest to the newly created node. Where K is a positive integer given in advance. Whenever a local planner can successfully connect between two nodes, add a new directed edge connecting the two nodes to the roadmap. The K-nearest neighbor problem has been actively studied in computational geometry, and finding it among a large number of points requires quite a bit of computation time.

본 발명에서는 이 문제를 보다 쉬운 방법으로 빠르게 해결하기 위하여 균등한 셀들(uniform cells)과 같은 공간 분할 기법(spatial partitioning technique)을 이용한다. 각 셀에 대해서 그 셀에 속하는 임의 한 노드를 선택하여 그 셀에 속하는 다른 모든 노드들을 대표하게 한다. 새로운 노드가 생성되면 각 셀의 대표 노드와의 거리를 계산하여 각 셀들에 속한 모든 노드들과의 거리를 대표한다. 가장 가까운 셀에서부터 멀어지는 순서대로 K 개의 노드들을 선택함으로써 새로 생성된 노드에서 가장 가까운 K 개의 노드들을 근사적으로 찾는다.The present invention utilizes a spatial partitioning technique, such as uniform cells, to quickly solve this problem in an easier way. For each cell, any node belonging to that cell is selected to represent all other nodes belonging to that cell. When a new node is created, the distance from the representative node of each cell is calculated to represent the distance from all nodes of each cell. By selecting K nodes in the order away from the nearest cell, the nearest K nodes are newly found from the newly created node.

이어서, 로드맵 구성의 국지적 계획기에 대하여 살펴보기로 한다.Next, we will look at the local planner of the roadmap.

국지적 계획기(local planner)는 어느 한 동작을 이용하여 로드맵의 두 노드를 연결할 수 있는지 검사한다. 즉, 어느 한도 내에서 동작을 변형하여 맨 처음 및 마지막 발자국을 두 노드의 발판과 각각 일치하도록 변환할 수 있는지 검사한다. 이는 도 1에 도시된 바와 같다. 성공적으로 변환할 수 있다면 국지적 계획기는 그 두 노드를 연결하는 발자국 시퀀스를 준다. 이러한 발자국 시퀀스의 어느 한 발자국이라도 지형 위에 안전하게 놓일 수 없다면 즉 유효한 발자국이 아니라면, 두 노드를 연결하지 않는다. 모든 발자국이 유효하고 변형된 동작이 장애물과의 충돌을 야기하지 않는다면 그 두 노드를 연결한다.The local planner checks which of the two nodes in the roadmap can be connected using one operation. In other words, the behavior is modified to the extent that the first and last footprints can be converted to match the footsteps of the two nodes, respectively. This is as shown in FIG. If successful, the local planner gives a footprint sequence that connects the two nodes. If either footprint of this footprint sequence cannot be safely placed on the terrain, i.e. it is not a valid footprint, the two nodes are not connected. If all footprints are valid and the deformed action does not cause an collision with an obstacle, connect the two nodes.

이제부터는 발자국을 어떻게 변환하는지에 대해 설명하기로 한다. 동작 M이 주어지면 발이 착지하는 순간과 뜨는 순간을 대화적으로 기술하여 발자국 시퀀스 f(M)을 얻는다. 지지 발은 발이 착지하는 순간부터 발이 뜨는 순간까지 땅위에 고정되어 있으며 하나의 발자국을 만들어낸다. M이 n 개의 프레임과 m 개의 발자국으로 이루어졌다 가정하자. j 번째 지지 발이의 시간 구간 동안 땅위에 있었다고 하면 f(M)은 다음과 같이 기술된다.Now let's explain how to convert footprints. Given an action M, the moment when the foot lands and rises interactively describes the footprint sequence f (M). The support foot is fixed on the ground from the moment the foot lands to the time the foot is lifted up, creating a footprint. Suppose M consists of n frames and m footprints. j th support foot If we were on the ground for the time interval of f (M) is written as

여기서,는 j 번째 발자국을 나타내며,는 각각 발자국의 위치 및 방향을 나타내고,는 발이 착지하는 순간과 발이 뜨는 순간의 중간이며,는 발이 지면에 있는 지속 시간이다. 이때 모든 j에 대해서이고이다.here, Represents the j th footprint, And Each represents the location and direction of the footprint, Is between the moment the foot lands and the moment the foot rises, Is the duration the foot is in the floor. For all j ego to be.

동작 M으로 로드맵의 두 노드를 연결하려 한다고 가정하자.를 각 노드의 발판 구성이라 하자. 발자국 시퀀스 f(M)을 변형하기 위해 우선 발자국의 위치를 조정한 후, 방향을 조정한다. 이는 도 1에 도시된 바와 같다. 도 1은 어느 한도 내에서 동작을 변형하여 맨 처음 및 마지막 발자국을 두 노드의 발판과 각각 일치하도록 변환할 수 있는지의 검사과정을 나타낸 모식도이다.Suppose we want to connect two nodes in the roadmap with action M. Wow Let be called the scaffold configuration of each node. To modify the footprint sequence f (M), first adjust the position of the footprint and then adjust the direction. This is as shown in FIG. 1 is a schematic diagram showing a process of checking whether the motion can be transformed to match the footsteps of the two nodes by modifying the motion within the limits.

위치 차이를 조정하기 위해 먼저 모든 j에 대해서를 이동하여 첫 번째 발자국의 위치를 일치시킨다. 이제, 마지막 발자국의 위치를 가능한 가장 가깝게 하기 위해 모든 j에 대해서를 먼저 지표면에 수직인 축을 중심으로 회전시킨 후, 지표면 상에 있으며 방향 벡터와 직교하는 축을 중심으로 회전시킨다. 이때 두 회전축은을 지난다. 이후의 방향 조정을 위해서 발자국의 방향에도 이들 회전을 적용해둔다. 일반적으로 이와 같은 위치 이동과 회전으로도를 정확히 일치시킬 수 없다. 다만, 둘 다를 연결하는 직선 상에 놓일 뿐이다. 모든 j에 대해서To adjust the position difference, first for all j The position of the first footprint by moving it and To match. Now, the location of the last footprint and For all j to be as close as possible Is rotated about an axis perpendicular to the surface, then the direction vector Rotate around the axis orthogonal to. Where the two axes of rotation Goes through. Footprint direction for later adjustment These rotations are also applied. Generally, this position shift and rotation and Cannot match exactly. Just both Wow It just lies on a straight line connecting. For all j To

만큼의 비율로 스케일링(scaling) 함으로써를 일치시킬 수 있다. 이에 따라 보폭, 이동 속도, 방향 전환 각도 등의 이동 동작 매개변수들도 스케일링된다.By scaling at the rate and Can be matched. This also scales movement motion parameters such as stride length, movement speed, and turning angle.

이제 방향의 차이를 조정하자. 단위 사원수 대수학(quaternion algebra)의 로그 함수와 지수 함수을 사용하여 두 노드에서의 방향의 차이을 처음 및 마지막 발자국의 중간 발자국들에 전파시킨다. j 번째 발자국의 새로운 방향을 얻기 위해 발자국들의 위치의 코드 길이 매개변수(chord-length parameterization)를 이용하여 방향 차이를 선형 보간(linear interpolation)한다. 즉, 모든 j에 대해 보간 매개변수을 이용하여 다음과 같이 선형 보간 한다.Now let's adjust the difference in direction. Logarithmic function of unit quaternion algebra And exponential functions Difference between directions at two nodes using Wow Propagates to the intermediate footprints of the first and last footprint. new direction of the j'th footprint Of the footprints to gain The linear difference is linearly interpolated using the chord-length parameterization. That is, interpolation parameters for all rules Linear interpolation using

동작 M의 질(quality)을 유지하기 위해 마지막 두 비강체 변환이 주어진 임계값 내에서 이루어지는지 검사할 필요가 있다. 위치 차이에 대해서는에서까지의 코드 길이가 얼마나 늘어나거나 줄어들었는지를 측정하는 비율을 사용한다. 여기서, s는 수학식 2에서 주어진다. 방향 차이에 대해서는 수학식 3에서 주어지는 선형 보간에서의 방향 차이의 엄격한 상한(tight upper bound)을 사용한다. 즉,을 사용한다. 위치 및 방향의 차이가 각각의 임계값 이내라면 두 노드를 연결하는 변환은 성공적이다.To maintain the quality of operation M, we need to check whether the last two non-rigid transformations are within a given threshold. About position difference in Percentage to measure how long or shorter cord lengths are Use Where s is given in equation (2). For the direction difference, the tight upper bound of the direction difference in linear interpolation given by Equation 3 is used. In other words, Use If the difference in position and direction is within each threshold, the transformation connecting the two nodes is successful.

이어서, 로드맵 구성의 비용 함수에 대하여 살펴보기로 한다.Next, the cost function of constructing the road map will be described.

로드맵의 각 유향 에지에는 가상 캐릭터가 머리 노드(head node)에서 꼬리 노드(tail node)로 그 에지의 동작으로 이동하기 위해 필요한 일의 양에 대한 비용이 부가되며, 이러한 비용은 로드맵을 탐색하여 경로를 찾는데 있어 길잡이 역할을 한다. 비용 함수가 잘 고안되었다면 시작 노드에서 목표 노드까지 사용자가 의도한 일련의 동작들로 이동하는 최소 비용 경로(minimum-cost path)를 찾을 수 있다. 본 발명에서는 각 에지의 동작에 대한 비용을 여러 가지 관점에서 측정하는 인자(factor)들을 혼합하여 사용한다.Each directed edge of the roadmap is charged with the amount of work required for the virtual character to move from its head node to its tail node in motion of that edge, which costs the route map by traversing the roadmap. It helps guide you in finding. If the cost function is well-designed, we can find a minimum-cost path that goes from the starting node to the target node in a series of actions intended by the user. The present invention uses a mixture of factors that measure the cost of the operation of each edge in various aspects.

비용 함수에 포함될 수 있는 가장 직관적이고도 중요한 인자 중의 하나는 가상 캐릭터가 이동해야 할 거리이다. 어느 한 동작의 인접한 모든 발자국들 사이의 거리를 더함으로써 그 동작을 사용할 경우 이동해야 할 거리를 얻는다. 즉,를 j번째 발자국의 위치라고 하면,이다.와 유사하면서약간은 다른 인자로서 동작의 프레임 수를 생각할 수 있다.가 공간상의 거리 척도라면는 시간상의 척도이다. 따라서, 이 둘에 대한 가중치가 주어지면 다음과 같이 이들을 하나의 비용 함수로 혼합한다.One of the most intuitive and important factors that can be included in the cost function is the distance the virtual character should move. The distance to move when using that gesture by adding the distance between all adjacent footprints of that gesture. Get In other words, If is the position of the j's footprint, to be. Similar to, slightly different number of frames of operation You can think of Is a measure of distance in space Is a time scale. Thus, the weights for both If is given, we mix them into one cost function as follows:

미리 주어진 어느 한 동작을 두 노드의 발판에 적합하도록 변형시키기 위하여 국지적 계획기를 적용하였다. 국지적 계획기는 동작의 맨 처음 및 마지막 발자국과 각 발판의 위치 및 방향 차이를 조정하였다. 이러한 차이는 발판과 발자국이 일치해야 하는 제약조건을 만족시키기 위해서 동작이 얼마나 변형되어야 하는가에 대한 지표이다. 미리 주어진 원래 동작의 사실성(liveness)을 유지하기 위해서는 이러한 제약 조건을 만족하면서 변형의 정도를 최소화할 필요가 있다.를 각각 위치 및 방향의 차이라 하면 본 발명에서는 변형의 정도를 측정하기 위해 다음과 같이 이 둘의 가중 합을 사용한다.A local planner was applied to transform any given action to fit the footings of two nodes. The local planner adjusted the difference in position and direction of each footstep with the first and last footsteps of the movement. This difference is indicative of how the motion has to be modified to satisfy the constraint that the footing and footprint must match. It is necessary to minimize the degree of deformation while satisfying these constraints in order to maintain the liveness of a given original operation. Wow In terms of the difference between the position and the direction, the present invention uses the weighted sum of the two as follows to measure the degree of deformation.

여기서,은 위치 및 방향의 계량(metric) 차이에 따른 가중치이다.here, Is the weight according to the metric difference of position and direction.

거리 및 변형에 대한 비용 외에도 특정 동작에 대한 사용자의 선호도를 고려할 수 있다. 예를 들어, 일반적인 경우라면 멀리 뛰기(broad jump) 동작에 비해 보행(walking) 동작이 바람직하다. 이러한 선호도를 고려하기 위해 사용자의 선호도에 반비례하는 선호 비용를 비용 함수의 항으로 포함한다. 최종적으로, 에지에 대한 비용 함수는 앞서 말한 두 가지 비용의 가중 합에 마지막 비용을 곱하여 다음과 같이 정의된다.In addition to the cost of distance and deformation, the user's preference for a particular action can be considered. For example, in general, a walking operation is preferable to a broad jump operation. Preferred cost inversely proportional to user's preference to account for this preference Is included in the cost function term. Finally, the cost function for the edge is defined by multiplying the last cost by the weighted sum of the two costs mentioned above.

여기서은 사용자에 의해 조정 가능한 가중치이다. 지금까지 언급한 인자들 이외에도 에지 근처의 장애물과의 거리 등에 대한 요소들도 비용 함수에 포함될 수 있을 것이다.here Wow Is a weight adjustable by the user. In addition to the factors mentioned so far, factors such as distance to obstacles near the edge may be included in the cost function.

이어서, 로드맵 구성의 로드맵 강화에 대하여 살펴보기로 한다.Next, the roadmap enhancement of the roadmap configuration will be described.

충분히 많은 수의 노드가 추출되면 로드맵은 구성 공간(configuration space)의 대부분을 균등하게 망라한다. 하지만, 적당한 수의 노드를 균등 추출할 경우 좁은 통로(narrow passage)와 같은 구성 공간의 어려운 부분에서는 로드맵이 잘 연결되지 않는다. 본 발명에서는 로드맵이 보다 잘 연결되도록 조장하기 위한 휴리스틱 방법을 채택하였다. 로드맵의 노드 집합 V에 속하는 노드 v에 대한 확률 밀도 함수(probability density function)를 다음과 같이 정의한다.If enough nodes are extracted, the roadmap covers most of the configuration space evenly. However, when the proper number of nodes are evenly extracted, the roadmap is not well connected in difficult parts of the construction space such as a narrow passage. In the present invention, a heuristic method is adopted to encourage better road maps. The probability density function for node v belonging to node set V of the road map is defined as follows.

여기서는 v로 들어오는 에지의 수이고는 v로부터 나가는 에지의 수이다. 이 확률 밀도 함수는 잘 연결되지 않은 노드는 높은 확률로 구성 공간의 어려운 부분에 놓여있을 것이라는 근원적 발상에서 기인한다. 따라서, 확률 밀도 함수 P(v|V)에 따라 V로 부터 노드 v를 선택하고 v 주위에 새로운 노드를 추가하여 구성 공간의 어려운 부분에서 로드맵이 보다 잘 연결되도록 한다. 추가적인 노드의 수는 균등 분포에 따라 생성한 노드 수의 1/3에서 1/2 사이일 때 가장 좋은 성능을 보인다는 사실이 실험적으로 알려져 있다.here Is the number of edges coming into v Is the number of edges leaving v. This probability density function stems from the fundamental idea that nodes that are not well connected will lie in difficult parts of the construction space with high probability. Therefore, we select node v from V according to probability density function P (v | V) and add new nodes around v so that the roadmap is better connected in the difficult part of the construction space. It is experimentally known that the number of additional nodes shows the best performance when it is between 1/3 and 1/2 of the number of nodes created according to the even distribution.

이어서, 2. 로드맵 탐색에 대하여 살펴보기로 한다.Next, the road map search will be described.

여기에서는 시작점 및 목표점이 주어지면 입력 동작 시퀀스(input motion sequence) 및 목표 발자국 시퀀스(target footprint sequence)를 주는 최소 비용 경로를 로드맵에서 찾는 방법을 기술하기로 한다. 또한, 더 나아가서 국지적 계획기를 이용한 목표 발자국의 정련에 대해서 기술하기로 한다.Here, we describe how to find the least cost path in the roadmap that gives an input motion sequence and a target footprint sequence given a starting point and a target point. In addition, the refinement of the target footprint using the local planner will be described.

로드맵 탐색을 설명하기에 앞서 동작 사이의 연결성을 보장하는데 있어 주요한 역활을 하는 자세 전이 그래프를 보다 자세히 살펴보자. 자세 전이 그래프의 노드는 가상 캐릭터의 유효한 자세를 나타내며 노드 사이의 에지는 동작을 나타낸다. 어느 한 에지의 동작이 다른 에지의 동작에 연결 가능하다면 앞 에지의 머리 노드와 뒤 에지의 꼬리 노드는 같다. 이는 도 2에 도시된 바와 같다. 도 2a 내지 도 2c는 자세 전이 그래프를 이용하여 변환된 로드맵을 나타낸 모식도로서 2a는 자세 전이 그래프이고, 2b는 로드맵이며, 2c는 로드맵을 증대시켜 나타낸 것이다.Before explaining roadmap navigation, let's take a closer look at the posture transition graph, which plays a major role in ensuring connectivity between motions. The nodes in the posture transition graph represent valid postures of the virtual character and the edges between the nodes represent motion. If the operation of one edge is connectable to the operation of the other edge, the head node of the front edge and the tail node of the rear edge are the same. This is as shown in FIG. 2A to 2C are schematic diagrams showing a road map converted by using the posture transition graph, wherein 2a is a posture transition graph, 2b is a road map, and 2c is an enlarged road map.

또한, 각 에지에는 그 에지에 해당하는 동작으로부터 얻은 발자국 시퀀스가 붙어있다. 자세 전이 그래프의 동작들을 쉽게 전이될 수 있는 형태로 바꾸기 위해서는 동작 사이의 전이 동작을 생성하는 기법들을 사용할 수 있다.Each edge is also accompanied by a footprint sequence obtained from the motion corresponding to that edge. To transform the motions of the posture transition graph into a form that can be easily transitioned, techniques for generating transition motions between motions can be used.

이어서, 로드맵 탐색의 경로 찾기에 대하여 설명하기로 한다.next, The path finding of the road map search will be described.

시작점 및 목표점을 나타내는 발판가 주어지면 경로 탐색은 이들을 연결하는 입력 동작 시퀀스와 목표 발자국을 찾는 것이며 이는 두 단계로 나누어 처리된다. 먼저,에 해당하는 노드 x와 y를 로드맵에 추가한다. 이후 로드맵을 탐색하여 x와 y를 연결하는 최소 비용 경로를 찾는다. 두 노드들 중 어느 하나라도 로드맵에 연결되지 않는다면 그 노드로부터 임의 주행(random walk)하여 로드맵에 연결한다.Scaffold indicating starting point and target point Wow Given a path search, it finds the input sequence of operations and the target footprint that connects them, which is processed in two steps. first, Wow Add nodes x and y to the roadmap. We then search the roadmap to find the least cost path between x and y. If either node is not connected to the roadmap, it randomly walks from that node and connects to the roadmap.

미리 주어진 모든 동작들이 서로 연결 가능한 것은 아니므로 로드맵 탐색에는 각별한 주의가 요구된다. 로드맵을 탐색하는 도중, 노드 v에 인접한 에지 e를 거쳐 v에 도달했다 가정하자. v에서 앞으로 더 나아가기 위해서는 v에 인접하며 에지 e의 동작과 연결이 가능한 동작을 가진 에지을 거쳐야한다. 경로 탐색 도중 방문된 노드 v에서는 v에 인접한 에지들 중 어떠한 에지를 거쳐 v에 도착했는지 기억해야 한다. 또한, 자세 전이 그래프를 참조하여 e의 동작이의 동작으로 연결 가능한지 확인해야 한다. 따라서, 로드맵 탐색에 최소 비용 경로 알고리즘을 곧바로 적용할 수 없다.Careful attention is required in the roadmap search because not all of the predefined actions can be linked together. Suppose we have reached v through the edge e adjacent to node v while searching the roadmap. To move forward in v, the edge is adjacent to v and has an action that can be linked to that of edge e. Should go through The node v visited during the path search must remember which of the edges adjacent to v has reached v. Also, referring to the posture transition graph, the motion of e You should check if it can be connected by the operation of. Therefore, the least cost path algorithm cannot be directly applied to the roadmap search.

로드맵을 나타내는 유향 그래프를 G(V, E)라 하자. 경로를 찾는 동안 어떠한 에지를 통하여 현재의 노드에 방문했는지 기억하는 것과 자세 전이 그래프 참조하는 것을 회피하기 위해, 본 발명에서는 G(V, E)에서 새로운 유향 그래프 G(V', E')를 이끌어내어 G'의 어떤 경로라도 연결 가능한 동작 시퀀스를 주도록 한다. 자세전이 그래프가 서로 다른 자세를 나타내는 k 개의 노드로 이루어진다 가정하자. 그렇다면 자세 전이 그래프의 노드들을 이용하여 G(V, E)의 모든 노드 v를 G'에 속하는 k 개의 노드 집합으로 분할한다. 각 노드는 자세 전이 그래프의 노드에서의 자세뿐만 아니라 로드맵 G의 노드 v에서의 발판을 가진다(도 2 참조). G 에서를 연결하는 에지의 동작이 자세 전이 그래프의를 연결하는 에지의 동작과 같다면, G'의 노드을 연결하는 유향 에지를 G'에 삽입한다. 마지막으로, G'에서 다른 어떤 노드들과도 연결되어 있지 않은 노드들을 제거한다.The directed graph representing the road map is called G (V, E). In order to remember which edge visited the current node while looking for a path and avoid referencing a posture transition graph, the present invention draws a new directed graph G (V ', E') from G (V, E). Take it and give it a sequence of actions that can be linked to any path on G '. K nodes representing different postures Suppose it is made of. Then, using the nodes in the attitude transition graph, set all nodes v of G (V, E) to k nodes belonging to G '. Split into Each node Is a node in the posture transition graph In addition to the posture at, we have a scaffold at node v of roadmap G (see FIG. 2). In G and The behavior of the edges connecting the posture transition graph Wow If the behavior of the edges connecting Wow Insert a directed edge connecting G 'to G'. Finally, remove the nodes in G 'that are not connected to any other nodes.

G'의 노드는 가상 캐릭터의 자세뿐만 아니라 지형 위에서의 발판과도 연관되어 있기 때문에 G'의 어느 한 노드에 인접한 임의의 한 쌍의 에지는 그 노드에서 끝나는 에지의 동작이 그 노드에서 시작하는 에지의 동작으로 전이될 수 있음을 보장한다. 따라서, G'의 어떤 경로라도 연결 가능한 동작 시퀀스를 준다. 결과적으로 그래프 G'에 최소 비용 경로 알고리즘을 곧바로 적용할 수 있다. G'은 최대k|V|개의 노드와 |E|개의 에지를 가지므로 시작점에서 목표점으로 이동하기 위한 동작 시퀀스 및 목표 발자국을 찾는 시간 복잡도는이다.Since the node of G 'is associated with the footsteps on the terrain as well as the virtual character's pose, any pair of edges adjacent to any node of G' is the edge whose motion starts at that node. Ensures that it can transition to the operation of. Thus, any path of G 'gives a linkable sequence of operations. As a result, the least cost path algorithm can be directly applied to the graph G '. Since G 'has up to k | V | nodes and | E | edges, the time complexity of finding the target footprint and the sequence of motion to move from the starting point to the target point is to be.

경로 계획이 빈번히 실패한다면 구성 공간을 보다 조밀하게 추출하여 새로운 노드들을 추가함으로써 점진적으로 로드맵을 확장할 수 있다. 지형의 일부분만이 바뀐 경우에는 바뀌기 전 지형의 그 부분에 놓인 노드들만 로드맵에서 삭제하고 바뀐 후 지형의 그 부분에서만 새로운 노드들을 추출하여 로드맵을 점진적으로 갱신할 수 있다.If path planning fails frequently, the roadmap can be gradually extended by extracting the configuration space more densely and adding new nodes. If only part of the terrain has changed, you can gradually update the roadmap by deleting only the nodes that were in that part of the terrain before the change, and extracting new nodes only in that part of the terrain after the change.

이어서, 로드맵 탐색의 발자국 정련에 대하여 살펴보기로 한다.Subsequently, the step refinement of the roadmap search will be described.

목표 발자국 시퀀스는 로드맵에서 찾은 경로의 에지에서 얻어지며, 이러한 목표 발자국 시퀀스는 앞서 설명한 바와 같이 각 동작의 원래 발자국 시퀀스와 적정 한도 내에서 차이가 있을 수 있다. 또한, 이러한 차이는 각 에지마다 다를 수 있다. 본 발명에서는 경로를 이루는 에지에서의 이러한 차이를 완만하게 하기 위해서 원래 동작의 발자국들을 참조하여 목표 발자국 시퀀스의 각 발자국을 차례대로 유효하게 조정하는 국지적 정련 기법(local refining scheme)을 제안한다. 목표 발자국 시퀀스를 이루는 모든 발자국에 대해 앞뒤로 반복적으로 국지적 정련을 적용하면 경로를 이루는 각 에지의 발자국 시퀀스와 그 에지에서의 원래 동작의 발자국 시퀀스와의 차이가 경로를 따라 보다 균등하게 전파된다. 이는 도 3에 도시된 바와 같다. 도 3은 연속적으로 정련된 발자국의 시퀀스를 나타낸 모식도로서 정련 횟수는 0번(왼쪽), 4번(가운데), 8번(오른쪽)이다.The target footprint sequence is obtained at the edge of the path found in the roadmap, and this target footprint sequence may be within a reasonable range from the original footprint sequence of each operation as described above. In addition, this difference may be different for each edge. The present invention proposes a local refining scheme in which each footprint of the target footprint sequence is effectively adjusted in turn with reference to the footprints of the original operation to smooth these differences in the edges of the path. By applying local refinement forward and backward repeatedly for all the footprints of the target footprint sequence, the difference between the footprint sequence of each edge of the path and the footprint sequence of the original motion at that edge propagates more evenly along the path. This is as shown in FIG. FIG. 3 is a schematic diagram showing a sequence of continuously refined footprints. The number of refining is 0 (left), 4 (center), and 8 (right).

본 발명에서는 발자국 시퀀스를 국지적으로 정련하기 위해 상기의 국지적 계획기를 사용한다. 목표 발자국 시퀀스의 각 발자국 f에 대해서 원래 동작에서 이에 해당하는 발자국과 그에 인접한 발자국들을 취한다. 이는 도 4에 도시된 바와 같다. 도 4는 발자국 정련의 과정을 나타낸 것이다. 국지적 계획기를과 그에 인접한 발자국들에 적용하기 위하여 발자국 f에 인접한 두 발자국을 로드맵의 가상의(hypothetical) 노드의 발판으로 간주한다.과 이에 인접한 두 개의 발자국을 포함하여 세 개의 발자국으로 이루어진 발자국 시퀀스에 국지적 계획기를 적용하여의 발판에 맞추어 조정하면 새로운 발자국 f'을 얻게 된다.The present invention uses the above local planner to locally refine the footprint sequence. For each footprint f in the target footprint sequence, the corresponding footprint in the original operation. Take footprints adjacent to them. This is as shown in FIG. Figure 4 shows the process of refining the footprint. Local planner Hypothetical nodes in the roadmap are plotted with two footprints adjacent to footprint f to apply to them and their adjacent footprints. and Regarded as a springboard. Apply a local planner to a sequence of three footprints, including two adjacent footprints and Adjust to the footsteps of to get a new footprint f '.

본 발명에서는 원래 발자국 f를 새로 얻은 발자국 f'으로 단순히 대체하는 대신 미리 정의된 가중치를 이용하여 두 발자국을 선형 보간 한다. 선형 보간을 통하여 얻은 발자국이 유효하지 않다면 가중치를 낮추어 원래 발자국 f에 보다 가까운 발자국을 새롭게 얻는다. 유효한 발자국을 얻기 위하여 이러한 과정을 몇 번 되풀이 할 수 있으며 주어진 횟수만큼 시도한 후에도 유효한 발자국을 얻지 못하면 f를 그대로 사용한다.In the present invention, instead of simply replacing the original footstep f with the newly obtained footstep f ', the two footprints are linearly interpolated using a predefined weight. If the footprint obtained through linear interpolation is not valid, the weight is lowered to obtain a new footprint closer to the original footprint f. You can repeat this process several times to get a valid footprint, and if you don't get a valid footprint after a given number of attempts, use f as is.

이어서, 3. 동작 생성에 대하여 살펴보기로 한다.Next, the operation generation will be described.

본 발명에서는 로드맵을 탐색하여 얻은 입력 동작 시퀀스(input motion sequence)와 목표 발자국 시퀀스(target footprint sequence)로부터 실제로 가상 캐릭터가 시작점에서 목표점으로 이동하기 위한 이동 동작을 만든다. 목표 발자국 시퀀스의 각 발자국을 시간에 따른 변분 제약 조건(variational constraint)으로 간주하면 본 발명에서 해결해야 할 문제는 동작 리타게팅(motion retargetting)으로 형식화될 수 있다. 이 문제에 있어서 초기 몸통 궤적(initial body trajectory)은 수치 최적화가 빠르게 수렴하고 좋은 결과를 만들어내도록 하는데 있어서 대단히 중요하다고 알려져 있다. 몸통 궤적은 보통 골반(pelvis)의 시간에 따른 위치 및 방향으로 표현된다. 입력 동작 시퀀스와 목표 발자국을 분석하여 목표 동작의 몸통 궤적을 예측하면 입력 동작 시퀀스의 각 관절 각과 함께 매 프레임에서의 목표 동작에 대한 초기 추정치를 얻을 수 있다. 이러한 초기 추정치를 계층적 동작 맞춤 기법과 함께 사용함으로써 입력 동작 시퀀스를 발자국에 리타게팅 한다.In the present invention, a virtual character moves from a starting point to a target point from an input motion sequence and a target footprint sequence obtained by searching a road map. Considering each footprint of the target footprint sequence as a variational constraint over time, the problem to be solved in the present invention may be formulated as motion retargeting. Initial body trajectory is known to be very important in this problem for numerical optimization to converge quickly and produce good results. Trunk trajectories are usually expressed in terms of the position and direction of the pelvis over time. By analyzing the input motion sequence and the target footprint and predicting the torso trajectory of the target motion, an initial estimate of the target motion in each frame with each joint angle of the input motion sequence can be obtained. This initial estimate is used in conjunction with a hierarchical motion fitting technique to retarget the input motion sequence to the footprint.

동작 리타게팅에 대해서는 목표 동작의 몸통 궤적을 예측하여 초기 추정치를 유도하는 방법에 대해서만 기술하겠다. 입력 동작 시퀀스 A에 대해서 f(A)와 b(A)로 각각 발자국 시퀀스와 몸통 궤적을 나타내자. 아직 까지 알지 못하는 목표 동작 시퀀스 B에 대해서도 f(B)와 b(B)를 유사하게 정의하자. 그렇다면 동작 생성의 목적은 목표 몸통 궤적 b(B)를 예측하는 것이다. 이때, B는 f(B)와 A에 의해서 묵시적으로 지정된다. A와 f(A)가 각각 n 개의 프레임과 m개의 발자국으로 구성된다 가정하자. 동작 시퀀스의 각 동작에서 골반의 위치 및 방향을 추적하여 A의 모든 프레임에서의 b(A)를 쉽게 얻을 수 있다.For motion retargeting, we will only describe how to derive the initial estimate by predicting the body trajectory of the target motion. Let f (A) and b (A) represent the footstep sequence and body trajectory for the input motion sequence A, respectively. Let f (B) and b (B) be defined similarly for the target operation sequence B which is not known yet. The purpose of motion generation then is to predict the target trunk trajectory b (B). At this time, B is implicitly designated by f (B) and A. Suppose A and f (A) consist of n frames and m footprints, respectively. By tracking the position and orientation of the pelvis in each motion of the motion sequence, it is easy to get b (A) in every frame of A.

b(B)를 예측하기 위해서는 b(A)와 f(A)의 관계를 활용한다. 이는 도 5에 도시된 바와 같다. 도 5는 몸통 경로의 예측과정을 나타낸 것이다. 먼저, 동작 시퀀스 A의 발자국 f(A)에서 참조 궤적(reference trajectory) r(A)를 유도한 후, b(A)에 대한 변위 d(A)를 구한다.To predict b (B), we use the relationship between b (A) and f (A). This is as shown in FIG. 5 shows a prediction process of the trunk path. First, a reference trajectory r (A) is derived from the footprint f (A) of the operation sequence A, and then a displacement d (A) with respect to b (A) is obtained.

여기서, r(A)와 연산자는 뒤에서 정의하겠다. b(A)와 d(A), r(A)는 모두 위치 및 방향의 성분으로 구성되어 있음에 주목하자. A와 B가 부분적으로 매우 유사하다는 가정 하에 다음과 같이 b(B)를 예측한다.Where r (A) and the operator Will be defined later. Note that b (A), d (A), and r (A) are all composed of components of position and direction. Assuming that A and B are partially very similar, we predict b (B) as follows:

b(B)를 결정하기 위해서는 원래 동작에서 곧바로 이끌어낸 b(A)이외에도 참조 궤적 r(A)와 r(B)가 필요하다.가 주어지면 몸의 중심(골반의 중심)은 연속된 발자국 쌍의 중간 자세(mid-posture) 위에 놓이리라 기대된다.에서의의 중간 자세를 다음과 같다고 하자.To determine b (B), the reference trajectories r (A) and r (B) are needed in addition to b (A) derived directly from the original operation. Given this, the center of the body (the center of the pelvis) is expected to lie above the mid-posture of successive pairs of footprints. In Wow Let's assume that the middle pose of

f(A)의 인접한 모든 발자국 쌍에 대해서 이러한 중간 자세를 낱낱으로 일차 보간(piecewise linear interpolation)하여 구간에서 A의 연속된 참조 궤적을 얻고, 구간의 모든 프레임에서 참조 궤적을 다시 샘플링 하여를 얻는다. 이와 유사한 방법으로 목표 발자국 시퀀스 f(B)에서 r(B)도 얻을 수 있다.For all adjacent pairs of footprints in f (A), this intermediate pose is piecewise linearly interpolated Obtain a continuous reference trajectory of A from Resample the reference trajectory on every frame of Get Similarly, r (B) can be obtained from the target footprint sequence f (B).

이제 변위 맵(displacement map)를 구하는 방법을 기술하겠다. r(A)의 위치 및 방향 성분의 순서쌍에 속하는 점(point) u를에 속하는 점 u'으로의 강체 변환을 명시한다. 즉,이다. 여기서, 벡터는 순수 허수 단위 사원수(purelyimaginary quaternion)로 간주된다.| 와가 주어지면 r(A)의 국지 좌표계(local coordinate)에서 측정된 이 둘의 변위 맵는 다음과 같이 정의된다.Now displacement map I will describe how to obtain. Ordered pair of position and direction components of r (A) silver Points u belonging to Specifies the rigid body transform to point u 'belonging to. In other words, to be. Where vector Is a purely imaginary unit quaternion Is considered. | Wow If is given, the displacement maps of the two measured in the local coordinate of r (A) Is defined as

마지막으로,라 하면 몸통 궤적 b(B)를 다음과 같이 얻는다.Finally, In this case, the body trajectory b (B) is obtained as follows.

b(B)는사이의 프레임에서만 정의된다. b(B)를 모든 프레임으로 확장하기 위해 구간에서의 b(A)의 일부분을 취하여에서 위치 및 방향이 일치하도록 강체 변환을 하고 이를 b(B)와 연결한다. 구간에서의 b(B)도 이와 유사하게 구한다.b (B) is Wow Only defined between frames. Interval to extend b (B) to all frames Taking part of b (A) in We transform the rigid body to match the position and direction at and connect it with b (B). section B (B) in Eq.

이어서, 4. 실험 결과에 대하여 살펴보기로 한다.Next, the results of the experiment will be described.

본 발명은 참고로 Microsoft Windows 2000에서 수행되는 Alias|Wavefront MAYA 플러그인(plug-in)으로 개발되었으며 C++로 구현되었다. 모든 실험은 Intel Pentium III 800 MHz 프로세서와 512 MB 메모리를 가지는 퍼스널 컴퓨터에서 Viewpoint사의 동작 데이터를 이용하여 수행되었다. 실험에 사용된 인체 모델은 43개의 자유도를 가진다. 골반의 위치 및 방향에 6개의 자유도, 척추에 3개의 자유도, 각 팔 다리에 7개의 자유도, 목과 머리에 각각 3개의 자유도가 할당되었다. 모든 동작 데이터는 일초에 24번 샘플링 되었다.The present invention has been developed as an Alias | Wavefront MAYA plug-in for Microsoft Windows 2000 and implemented in C ++. All experiments were performed using Viewpoint motion data on a personal computer with an Intel Pentium III 800 MHz processor and 512 MB memory. The human model used in the experiment has 43 degrees of freedom. Six degrees of freedom for the position and direction of the pelvis, three degrees of freedom for the spine, seven degrees of freedom for each limb, and three degrees of freedom for the neck and head, respectively. All motion data was sampled 24 times a second.

첫 번째 실험은 사람과 같은 캐릭터의 보행 동작을 계획하는 것이다. 도 6은 바다와 섬으로 이루어진 지형에서 계획된 이동 동작을 보여준다. 여기서, 가상 캐릭터는 바다 위에 발을 놓을 수 없다. 이 실험에서는 상기 도 2a에 묘사된 보행을 위한 동작 데이터와 그에 따른 자세 전이 그래프를 사용하였다. 바다 위의 지형은 정규 격자(regular grid) 위에 놓인 제어 점의 y 좌표를 해발 위 아래로 뒤흔들어 놓은 NURBS 곡면으로 모델링 되었다. 해발을 0으로 놓아 그 높이가 양수인 발자국들만이 유효하다. 장애물 회피를 위해서는 띄워서 움직이는 발(swing foot)이 매 프레임에서 지형 보다 위에 놓여 있는가 확인하여 충돌을 검사하는 휴리스틱 방법을 사용하였다.The first experiment is to plan the walking behavior of a human-like character. 6 shows the planned movement behavior in a terrain consisting of sea and islands. Here, the virtual character cannot put his feet on the sea. In this experiment, the motion data for walking and the posture transfer graph described in FIG. 2A were used. The terrain on the sea is modeled as a NURBS surface that shakes the y-coordinates of the control points on a regular grid up and down above sea level. Only footprints that are positive in height by setting sea level to zero are valid. In order to avoid obstacles, heuristic method was used to check the collision by checking whether the swinging foot is above the terrain in every frame.

두 번째 실험은 매우 복잡한 환경에서의 이동 동작을 계획하기 위해 다양한 동작을 사용할 수 있음을 보여준다. 도 7의 지형은 협곡, 강 등과 같은 매우 복잡한 요소(feature)를 가지고 있다. 멀리 뛰기(broad jump), 뛰기(running) 등에 대한 동작을 동작 레퍼토리에 추가하였으며, 국지적 지형에서 높이 차이가 작은 경우에는 뛰는 동작이 걷는 동작보다 선호되게 하였다. 실험 결과를 통해 본 발명에서 제시된 기법은 복잡한 지형을 헤쳐나가는데 있어 다양한 동작을 적절히 사용할 수 있음을 알 수 있었다.The second experiment shows that various movements can be used to plan movement behaviors in very complex environments. The terrain of FIG. 7 has very complex features such as canyons, rivers, and the like. Actions for broad jump, running, etc. have been added to the motion repertoire, and if the height difference is small in local terrain, the jumping motion is preferred over the walking motion. Experimental results show that the techniques presented in the present invention can be suitably used in moving through complex terrain.

도 66 도 77 도 88 동작의 개수Number of actions 1313 2929 1313 로드맵 구성Roadmap Configuration N (초기 노드 수)N (initial number of nodes) 20002000 30003000 20002000 M (강화된 노드 수)M (number of hardened nodes) 10001000 15001500 10001000 K (연결 후보 수)K (number of connection candidates) 100100 100100 100100 E (연결된 에지 수)E (number of edges connected) 8870388703 266419266419 8761787617 E / (N + M)E / (N + M) 28.8128.81 59.2959.29 29.2129.21 소요 시간Time 34.25034.250 99.05099.050 38.88038.880 로드맵 탐색Roadmap navigation 경로 찾기 시간Find route time 0.0200.020 0.2500.250 0.0600.060 이동 동작 개수Move action count 55 2828 1414 발자국 정련 반복 횟수Footprint Refining Repeat Count 44 44 44 발자국 정련 시간Footprint Refining Time 0.0200.020 0.1200.120 0.0800.080 동작 생성Create action 총 프레임 수Total frames 197197 11391139 467467 초기 몸통 예측 시간Initial Torso Prediction Time 0.0100.010 0.0200.020 0.0100.010 동작 재조준 시간Motion re aim time 0.0900.090 0.6700.670 0.2500.250 프레임당 동작 재조준 시간Motion re aim time per frame 0.0010.001 0.0010.001 0.0010.001 전처리를 제외한 총 소요 시간Total time excluding preprocessing 0.1400.140 1.0601.060 0.4000.400 전처리를 제외한 프레임당 소요 시간Time Spent Per Frame Excluding Preprocessing 0.0010.001 0.0010.001 0.0010.001

이 때, N과 M은 각각 초기에 추출된 노드 수와 로드맵 강화를 통해 생성된 노드 수 이다. E는 연결된 에지의 수이다. 시간 데이터는 CPU를 몇 초간 사용했는지를 나타낸다. 표 1은 입력 데이터와 실험 결과를 요약해서 보여준다. 각 실험에 있어서 본 발명의 경로 계획은 크게 로드맵 구성, 로드맵 탐색, 동작 생성의 세 가지 단계로 수행된다. 로드맵 탐색의 수행 시간은 로드맵의 노드 수와 에지 수에 비례함을 알 수 있으며, 이미 예견했듯이 각 실험에서 로드맵 구성 시간이 전체 시간을 압도하는 것을 알 수 있다. 로드맵 구성 시간은 동작 데이터와 지형의 복잡도에 의존하며, 동작 생성 시간은 생성된 동작의 프레임 수에 비례한다. 모든 실험에 있어서 일단 로드맵을 만들고 나면 일초에 대략 천 프레임 이상의 동작을 만들 수 있었다. 로드맵 구성은 전처리 단계로 간주되므로 제시된 동작 계획 기법은 본 발명의 실험에서 대화적으로 동작을 만들어낼 수 있는 성능을 보인다.In this case, N and M are the number of nodes initially extracted and the number of nodes generated through roadmap enhancement. E is the number of edges connected. The time data indicates how many seconds the CPU has been used. Table 1 summarizes the input data and the experimental results. In each experiment, the route planning of the present invention is largely carried out in three stages: roadmap construction, roadmap search, and motion generation. It can be seen that the execution time of the roadmap search is proportional to the number of nodes and edges of the roadmap, and as previously foreseen, the roadmap construction time overwhelms the entire time in each experiment. The roadmap construction time depends on the complexity of the motion data and the terrain, and the motion generation time is proportional to the number of frames of the generated motion. In all experiments, once the roadmap was created, we were able to produce approximately 1000 frames or more of motion per second. Since the roadmap configuration is regarded as a preprocessing step, the proposed motion planning technique shows the ability to interactively produce motion in the experiment of the present invention.

이상에서와 같이 본 발명에 의한 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법에 따르면 다음과 같은 효과가 있다.As described above, according to the probabilistic approach to the mobile motion plan using motion capture data according to the present invention, the following effects are obtained.

본 발명에서는 급속 동작 원형화(rapid motion prototyping)나 대화형 응용 프로그램(interactive application)에 있어서 작업 수준의 동작 생성(task-level motion generation)을 효과적으로 지원하기 위해 사람과 같은 2족 캐릭터가 시작점에서 목표점까지 미리 주어진 동작 집합을 이용하여 이동하는 동작을 계획하는 새로운 기법을 제시한다. 즉, 확률적 경로 계획과 계층적 동작 맞춤을 결합하여 시작점에서 목표점까지의 동작 시퀀스 및 목표 발자국 시퀀스를 찾은 후, 동작 시퀀스가 목표 발자국 시퀀스를 따라가도록 동작을 리타게팅 한다.In the present invention, in order to effectively support task-level motion generation in rapid motion prototyping or interactive application, a bipedal character such as a person is a target point at a starting point. Until now, we propose a new technique for planning movements using a given set of motions. That is, by combining probabilistic path planning and hierarchical motion alignment, the motion sequence from the starting point to the target point and the target footprint sequence are found, and then the motion is retargeted to follow the target footprint sequence.

따라서, 다양한 동작들이 주어지면 본 발명의 이동 동작 계획 기법은 사람과 같은 캐릭터가 평야에서 뛰어가고, 징검다리를 건너며, 협곡을 뛰어 넘는 것과 같은 다양한 동작으로 울퉁불퉁한 지형을 이동할 수 있다. 이는 사실적인 애니메이션을 매우 빠른 시간에 효율적으로 생성할 수 있는 효과가 있다.Thus, given various movements, the movement planning scheme of the present invention can move rugged terrain with various movements, such as a character such as a person running in the plains, crossing a leg, and jumping over a canyon. This has the effect of creating realistic animations very quickly and efficiently.

Claims (5)

가상 환경에서 시작점과 목표점이 주어지면 미리 주어진 동작들을 이용하여 시작점에서 목표점으로 이동하기 위한 일련의 동작들을 찾기 위해 상기 가상 환경에서 2족 캐릭터가 발을 안전하게 딛을 수 있는 지점들을 랜덤하게 추출하여 가상 캐릭터의 이동 동작을 안내하는 로드맵을 구성하는 단계와;Given a starting point and a target point in the virtual environment, the virtual character is randomly extracted from the points where the biped character can safely step on the foot in the virtual environment to find a series of movements for moving from the starting point to the target point using predetermined motions. Constructing a road map for guiding a movement operation of the vehicle; 상기 시작점에서 목표점으로 이동하기 위한 입력 동작 시퀀스와 목표 발자국들을 얻기 위해 미리 포착된 동작들간의 연결 관계를 나타내는 자세 전이 그래프를 참조하여 로드맵을 변환하고 탐색하는 단계와;Converting and searching a road map with reference to a posture transition graph representing a connection relationship between an input operation sequence for moving from the starting point to a target point and pre-captured operations to obtain target footprints; 상기 입력 동작 시퀀스의 착지 점들이 목표 발자국 시퀀스를 정확히 따라가도록 입력 동작 시퀀스를 변형하여 최종 이동 동작을 생성하는 단계를 포함하는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법.And modifying the input motion sequence to generate a final motion motion such that the landing points of the input motion sequence exactly follow a target footprint sequence. 청구항 1에 있어서, 상기 로드맵을 구성하는 단계에서 지지 발의 구성인 발판의 표본을 무작위 추출하여 노드를 생성하고, 생성된 노드들을 국지적 계획기를 통하여 로드맵에 추가하는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법.The method of claim 1, wherein in the constructing the roadmap, a sample is generated by randomly sampling a scaffold of a support foot, and the generated nodes are added to the roadmap through a local planner. Probabilistic approach to action planning. 청구항 1 또는 청구항 2에 있어서, 상기 로드맵의 모든 에지에는 미리 포착된 동작들이 연결되어 있는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법.The method of claim 1 or 2, wherein pre-captured motions are connected to all edges of the roadmap. 청구항 1에 있어서, 상기 로드맵을 변환하고 탐색하는 단계에서 상기 목표 발자국 시퀀스를 이루는 모든 발자국에 대하여 앞뒤로 반복적으로 국지적 정련을 적용하여 경로를 이루는 발자국 시퀀스와 원래 동작의 발자국 시퀀스의 차이가 경로에 따라 균등하게 전파되도록 하는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법.The method of claim 1, wherein in the step of transforming and searching the roadmap, local refining is repeatedly applied back and forth to all the footprints of the target footprint sequence, and the difference between the footprint sequence and the footprint sequence of the original operation is equalized along the path. A probabilistic approach to mobile motion planning using motion capture data, characterized in that it propagates automatically. 청구항 1에 있어서, 상기 입력 동작 시퀀스를 변형하여 최종 이동 동작을 생성하는 단계에서는 입력동작 시퀀스와 목표 발자국의 분석에 따라 목표 동작의 몸통 궤적을 예측하여 목표 동작에 대한 초기 추정치를 얻는 것을 특징으로 하는 동작 포착 데이터를 이용한 이동 동작 계획에 대한 확률적 접근 방법.2. The method of claim 1, wherein the generating of the final movement by modifying the input motion sequence comprises predicting a body trajectory of the target motion according to the analysis of the input motion sequence and the target footprint to obtain an initial estimate of the target motion. Probabilistic approach to mobile motion planning using motion capture data.
KR10-2001-0033968A 2001-06-15 2001-06-15 A probabilistic approach to planning biped locomotion with prescibed motions KR100408428B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0033968A KR100408428B1 (en) 2001-06-15 2001-06-15 A probabilistic approach to planning biped locomotion with prescibed motions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0033968A KR100408428B1 (en) 2001-06-15 2001-06-15 A probabilistic approach to planning biped locomotion with prescibed motions

Publications (2)

Publication Number Publication Date
KR20020095774A true KR20020095774A (en) 2002-12-28
KR100408428B1 KR100408428B1 (en) 2003-12-06

Family

ID=27709483

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0033968A KR100408428B1 (en) 2001-06-15 2001-06-15 A probabilistic approach to planning biped locomotion with prescibed motions

Country Status (1)

Country Link
KR (1) KR100408428B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100478721B1 (en) * 2002-07-15 2005-03-24 한국과학기술원 On-line locomotion generation based on motion blending
KR100833984B1 (en) * 2006-09-28 2008-05-30 한국전자통신연구원 Generator of crowd character and crowd scene
US7916143B2 (en) 2006-12-07 2011-03-29 Electronics And Telecommunications Research Institute System and method for producing locomotion animation
CN112731941A (en) * 2020-12-29 2021-04-30 深圳市优必选科技股份有限公司 Biped robot path planning method and device and biped robot
US11721055B2 (en) 2021-02-03 2023-08-08 Samsung Electronics Co., Ltd. Method and device with character animation motion control

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102640247B1 (en) 2021-09-08 2024-02-22 한양대학교 산학협력단 Character motion generating based on trajectories and computer apparatus
KR20240008225A (en) 2022-07-11 2024-01-18 한양대학교 산학협력단 Motion matching method for generating character motion based on trajectory and velocity and computer apparatus

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100478721B1 (en) * 2002-07-15 2005-03-24 한국과학기술원 On-line locomotion generation based on motion blending
KR100833984B1 (en) * 2006-09-28 2008-05-30 한국전자통신연구원 Generator of crowd character and crowd scene
US7916143B2 (en) 2006-12-07 2011-03-29 Electronics And Telecommunications Research Institute System and method for producing locomotion animation
CN112731941A (en) * 2020-12-29 2021-04-30 深圳市优必选科技股份有限公司 Biped robot path planning method and device and biped robot
CN112731941B (en) * 2020-12-29 2024-03-05 深圳市优必选科技股份有限公司 Biped robot path planning method and device and biped robot
US11721055B2 (en) 2021-02-03 2023-08-08 Samsung Electronics Co., Ltd. Method and device with character animation motion control

Also Published As

Publication number Publication date
KR100408428B1 (en) 2003-12-06

Similar Documents

Publication Publication Date Title
Peng et al. Deeploco: Dynamic locomotion skills using hierarchical deep reinforcement learning
Sun et al. Automating gait generation
Shin et al. Computer puppetry: An importance-based approach
CN108646761B (en) ROS-based robot indoor environment exploration, obstacle avoidance and target tracking method
Yamane et al. Animating non-humanoid characters with human motion data
KR20220025023A (en) Animation processing method and apparatus, computer storage medium, and electronic device
Ho et al. Interactive partner control in close interactions for real-time applications
CN111645065A (en) Mechanical arm motion planning method based on deep reinforcement learning
Jain et al. From pixels to legs: Hierarchical learning of quadruped locomotion
Zhao et al. Synthesizing diverse human motions in 3d indoor scenes
TW201401223A (en) System and method of virtual roles gait capable of automatically adapting to the terrain
Henry et al. Environment-aware real-time crowd control
Johansen Automated semi-procedural animation for character locomotion
Li et al. Motion planning for humanoid walking in a layered environment
KR100408428B1 (en) A probabilistic approach to planning biped locomotion with prescibed motions
Glardon et al. Robust on-line adaptive footplant detection and enforcement for locomotion
Pettre et al. A motion capture‐based control‐space approach for walking mannequins
Bandi et al. A configuration space approach for efficient animation of human figures
KR101547208B1 (en) Apparatus and method for reconstructing whole-body motion using wrist trajectories
Belter et al. On-Board Perception and Motion Planning for Legged Locomotion over Rough Terrain.
Li et al. Pose synthesis using the inverse of jacobian matrix learned from examples
Panagiotakis et al. Snake terrestrial locomotion synthesis in 3d virtual environments
Asif et al. Whole-body motion and footstep planning for humanoid robots with multi-heuristic search
Kim et al. Keyframe-based multi-contact motion synthesis
KR101191582B1 (en) Apparatus and Method for Controlling Motion

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20081031

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee