KR20220062461A - Device and method for generating animation based on motion of object - Google Patents
Device and method for generating animation based on motion of object Download PDFInfo
- Publication number
- KR20220062461A KR20220062461A KR1020220053398A KR20220053398A KR20220062461A KR 20220062461 A KR20220062461 A KR 20220062461A KR 1020220053398 A KR1020220053398 A KR 1020220053398A KR 20220053398 A KR20220053398 A KR 20220053398A KR 20220062461 A KR20220062461 A KR 20220062461A
- Authority
- KR
- South Korea
- Prior art keywords
- joint
- value
- motion
- animation
- image
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 title claims description 34
- 238000006073 displacement reaction Methods 0.000 claims abstract description 18
- 238000000605 extraction Methods 0.000 claims abstract description 6
- 238000010586 diagram Methods 0.000 description 11
- 239000003550 marker Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 210000003205 muscle Anatomy 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 210000004247 hand Anatomy 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 244000309466 calf Species 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000000245 forearm Anatomy 0.000 description 1
- 210000001624 hip Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 210000002832 shoulder Anatomy 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 210000000689 upper leg Anatomy 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
-
- G06T5/001—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/277—Analysis of motion involving stochastic approaches, e.g. using Kalman filters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
본 발명은 객체 동작 기반의 애니메이션을 생성하는 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for generating an animation based on object motion.
동작 인식 기술이란 사용자의 몸, 손, 얼굴 등의 신체 전체 또는 일부의 움직임을 인식하여 컴퓨터를 제어하는 기술을 의미한다. 동작 인식 기술은 접촉 방식 및 비접촉 방식으로 구분된다. The gesture recognition technology refers to a technology for controlling a computer by recognizing the movement of the whole or part of the user's body, hands, face, and the like. The gesture recognition technology is divided into a contact method and a non-contact method.
접촉 방식은 사용자의 신체에 자이로센서, 가속도 센서 등이 탑재된 장치가 착용됨으로써, 사용자의 동작을 인식할 수 있게 되는 방식을 말한다. 접촉 방식은 사용자의 동작을 비교적 정확하게 인식할 수 있다는 장점을 가지고 있으나, 사용자가 별도의 장치를 착용해야 한다는 불편함이 존재한다. The contact method refers to a method in which a device equipped with a gyro sensor, an acceleration sensor, etc. is worn on the user's body, thereby recognizing the user's motion. The contact method has the advantage of recognizing the user's motion relatively accurately, but there is an inconvenience that the user has to wear a separate device.
비접촉 방식은 카메라를 통해 촬영된 영상으로부터 사용자를 인식함으로써, 사용자의 동작을 인식할 수 있게 되는 방식을 말한다. 비접촉 방식은 마커 방식 및 마커리스 방식으로 구분된다. 마커 방식은 마커 속성을 미리 정의한 후, 마커를 추적하여 사용자의 동작을 인식할 수 있으나, 접촉 방식과 마찬가지로 사용자가 마커를 부착해야 한다는 불편함이 존재한다. 마커리스 방식은 마커 없이 사용자의 동작을 인식할 수 있는 장점이 있지만, 정확도가 낮다는 단점이 있다. The non-contact method refers to a method in which a user's motion can be recognized by recognizing a user from an image captured by a camera. The non-contact method is divided into a marker method and a markerless method. In the marker method, after defining the marker properties in advance, the user's motion can be recognized by tracking the marker. The markerless method has an advantage of recognizing a user's motion without a marker, but has a disadvantage of low accuracy.
이러한 동작 인식 기술과 관련하여, 선행기수인 한국등록특허 제 10-1963694호는 동작 인식 제어를 위한 웨어러블 장치 및 이를 이용한 동작 인식 제어 방법을 개시하고 있다. In relation to such a gesture recognition technology, Korean Patent Registration No. 10-1963694, which is a precedent, discloses a wearable device for gesture recognition control and a gesture recognition control method using the same.
최근에는 사용자의 동작을 인식하여 기기를 제어할 뿐만 아니라, 증강 현실 컨텐츠, 가상 현실 컨텐츠 등과 같이 사용자의 동작을 기반으로 하는 3D 컨텐츠가 제공되고 있다. 그러나 비접촉 방식과 같이 카메라를 이용하여 사용자의 동작을 인식하고자 하는 경우, 사용자의 동작 인식에 대한 정확도가 낮아 3D 컨텐츠의 제작에 어려움이 따른다는 문제점을 가지고 있다. Recently, 3D content based on the user's motion, such as augmented reality content and virtual reality content, as well as controlling the device by recognizing the user's motion has been provided. However, when trying to recognize a user's motion using a camera, like the non-contact method, there is a problem in that the accuracy of the user's motion recognition is low, making it difficult to produce 3D content.
카메라를 통해 촬영된 영상으로부터 객체의 동작을 인식하고, 객체의 동작으로부터 객체의 관절의 위치 정보를 인식함으로써, 객체의 관절의 위치 정보에 기초하여 애니메이션을 생성할 수 있도록 하는 장치 및 방법을 제공하고자 한다. To provide an apparatus and method for recognizing the motion of an object from an image captured by a camera, and recognizing the position information of the joint of the object from the motion of the object, thereby generating an animation based on the position information of the joint of the object do.
객체의 관절 위치 정보에 기초하여 관절의 값을 추출하고, 추출된 관절의 값을 보정하는 객체 동작 기반의 애니메이션 생성 장치 및 방법을 제공하고자 한다. An object motion-based animation generating apparatus and method for extracting a joint value based on joint position information of an object and correcting the extracted joint value are provided.
객체의 관절의 값 및 골격 기반의 데이터 구조에 기초하여 객체 동작 기반의 애니메이션을 생성하는 장치 및 방법을 제공하고자 한다. An object is to provide an apparatus and method for generating an object motion-based animation based on a data structure based on a joint value and a skeleton of an object.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical problems to be achieved by the present embodiment are not limited to the technical problems described above, and other technical problems may exist.
상술한 기술적 과제를 달성하기 위한 수단으로서, 본 발명의 일 실시예는, 카메라를 통해 객체를 촬영한 영상을 수신하는 영상 수신부, 상기 수신한 영상으로부터 상기 객체의 동작을 인식하고, 상기 인식된 객체의 동작으로부터 관절의 위치 정보를 인식하는 인식부, 상기 인식된 관절의 위치 정보에 기초하여 적어도 하나의 관절의 값을 추출하는 추출부, 상기 추출된 적어도 하나의 관절의 값을 보정하는 보정부 및 상기 보정된 적어도 하나의 관절의 값에 기초하여 골격 기반의 데이터 구조를 생성하고, 상기 보정된 적어도 하나의 관절의 값 및 상기 생성된 골격 기반의 데이터 구조에 기초하여 상기 객체 동작 기반의 애니메이션을 생성하는 애니메이션 생성부를 포함하고, 상기 보정부는 상기 적어도 하나의 관절의 값 중 상기 영상의 현재 프레임과 이전 프레임 간의 기울기 변위 정도에 기초하여 이상점에 해당하는 관절의 값을 현재 프레임의 관절의 값과 이전 프레임의 관절의 값이 같아지도록 보정하는 애니메이션 생성 장치를 제공할 수 있다. As a means for achieving the above-described technical problem, an embodiment of the present invention is an image receiving unit for receiving an image of an object through a camera, recognizing the motion of the object from the received image, and the recognized object A recognition unit for recognizing the position information of the joint from the operation of, an extraction unit for extracting the value of at least one joint based on the recognized position information of the joint, a correction unit for correcting the extracted value of the at least one joint, and A skeleton-based data structure is generated based on the corrected value of the at least one joint, and the object motion-based animation is generated based on the corrected value of the at least one joint and the generated skeleton-based data structure. and an animation generating unit, wherein the correcting unit compares the joint value corresponding to the outlier to the joint value of the current frame based on the degree of inclination displacement between the current frame and the previous frame of the image among the values of the at least one joint. An animation generating apparatus for compensating so that the joint values of the frames are the same may be provided.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary, and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 저비용의 RGB-D 카메라를 통해 촬영된 영상으로부터 객체의 동작을 인식하고, 인식된 객체의 동작에 기초하여 추출된 객체의 관절의 값을 자연스럽게 보정할 수 있도록 하는 객체 동작 기반의 애니메이션 장치 및 방법을 제공할 수 있다. According to any one of the above-described problem solving means of the present invention, the motion of the object is recognized from the image captured by the low-cost RGB-D camera, and the joint value of the extracted object is naturally calculated based on the recognized motion of the object. It is possible to provide an object motion-based animation apparatus and method for correction.
객체의 관절의 값을 보정하여 전문가가 아닌 일반 사용자들도 손쉽게 객체 동작 기반의 애니메이션 파일을 생성할 수 있도록 하는 애니메이션 장치 및 방법을 제공할 수 있다. It is possible to provide an animation apparatus and method that allows non-expert users to easily generate an animation file based on object motion by correcting the joint value of an object.
도 1은 본 발명의 일 실시예에 따른 애니메이션 생성 장치의 구성도이다.
도 2a 및 도 2b는 본 발명의 일 실시예에 따른 관절의 값이 관절 가동 범위에 기초하여 보정되기 전과 후를 도시한 예시적인 도면이다.
도 3은 본 발명의 일 실시예에 따른 칼만 필터를 이용하여 보정된 관절의 값을 도시한 예시적인 도면이다.
도 4는 본 발명의 일 실시예에 따른 관절의 값이 기울기 변위 정도 및 칼만 필터에 기초하여 보정된 관절의 값을 도시한 예시적인 도면이다.
도 5는 본 발명의 일 실시예에 따른 골격 기반의 데이터 구조에 기초하여 생성된 애니메이션을 도시한 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 애니메이션 생성 장치에서 객체 동작 기반의 애니메이션을 생성하는 방법의 순서도이다. 1 is a block diagram of an animation generating apparatus according to an embodiment of the present invention.
2A and 2B are exemplary views showing before and after the joint value is corrected based on the joint range of motion according to an embodiment of the present invention.
3 is an exemplary diagram illustrating joint values corrected using a Kalman filter according to an embodiment of the present invention.
4 is an exemplary diagram illustrating joint values in which joint values are corrected based on a degree of inclination displacement and a Kalman filter according to an embodiment of the present invention.
5 is an exemplary diagram illustrating an animation generated based on a skeleton-based data structure according to an embodiment of the present invention.
6 is a flowchart of a method for generating an animation based on an object motion in the animation generating apparatus according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in several different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . Also, when a part "includes" a component, it means that other components may be further included, rather than excluding other components, unless otherwise stated, and one or more other features However, it is to be understood that the existence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded in advance.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.Some of the operations or functions described as being performed by the terminal or device in this specification may be instead performed by a server connected to the terminal or device. Similarly, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the server.
이하 첨부된 도면을 참고하여 본 발명의 일 실시예를 상세히 설명하기로 한다. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 일 실시예에 따른 애니메이션 생성 장치의 구성도이다. 도 1을 참조하면, 애니메이션 생성 장치(100)는 영상 수신부(110), 인식부(120), 추출부(130), 보정부(140) 및 애니메이션 생성부(150)를 포함할 수 있다. 1 is a block diagram of an animation generating apparatus according to an embodiment of the present invention. Referring to FIG. 1 , the
영상 수신부(110)는 카메라를 통해 객체를 촬영한 영상을 수신할 수 있다. 카메라는, 예를 들어, RGB-D(Depth) 카메라일 수 있다. RGB-D 카메라는 RGB의 색 영상 정보와 깊이 정보를 제공한다는 장점을 가지고 있다. 이러한 RGB-D 카메라를 이용함으로써, 객체에 대한 3차원 모델을 획득할 수 있게 된다. The
인식부(120)는 수신한 영상으로부터 객체의 동작을 인식하고, 인식된 객체의 동작으로부터 관절의 위치 정보를 인식 할 수 있다. 예를 들어, 인식부(120)는 영상으로부터 손흔들기, 팔벌리기, 팔짱끼기, 앉기, 걷기 등과 같이 객체의 다양한 동작을 인식할 수 있다. 이후, 인식부(120)는 인식된 객체의 동작의 기초하여 객체의 얼굴, 어깨, 손목, 팔뚝, 허리, 허벅지, 종아리, 발목 등의 관절의 위치 정보를 인식할 수 있다. The
추출부(130)는 인식된 관절의 위치 정보에 기초하여 적어도 하나의 관절의 값을 추출할 수 있다. 여기서, 관절의 값은 관절의 위치 좌표 및 각도 등에 기초하여 추출된 것일 수 있다. The
보정부(140)는 추출된 적어도 하나의 관절의 값을 보정할 수 있다. 이를 위해, 보정부(140)는 기측정된 관절 가동 범위, 칼만 필터, 기울기 변위 정도 알고리즘 등을 단독으로 이용하거나, 이들을 조합하여 관절의 값을 보정할 수 있으며, 이에 한정되지 않는다. The
보정부(140)는 관절 가동 범위(ROM, Range Of Motion)에 기초하여 적어도 하나의 관절의 값을 보정할 수 있다. 여기서, 관절 가동 범위란 관절들이 움직임을 만들어 낼 때의 움직이는 범위를 말한다. 관절 가동 범위는 크게 관절 범위(Joint Range)와 근육 범위(Muscle Range)로 구분된다. 관절 범위(Joint Range)는 관절각도계(goniometer)로, 각 관절의 부위별에 대한 굽힘(Flexion), 폄(Extension), 벌림(Abduction), 모음(Adduction), 회전(Rotation), 휘돌림(Circumduction), 뒤침(Supination), 엎침(Pronation), 내전(Inversion), 외전(Eversion) 등의 운동 범위를 측정하여 이를 각도로 기록한 것을 의미하며, 근육 범위(Muscle Range)는 근육의 기능적 진폭이 최대로 늘어났다 다시 짧아질 수 있는 거리를 의미한다.The
예를 들어, 보정부(140)는 객체로부터 기측정된 관절 가동 범위(ROM, Range Of Motion)에 기초하여 관절의 운동 범위에 대한 제약 조건을 설정하고, 설정된 제약 조건에 기초하여 추출된 적어도 하나의 관절의 값을 보정할 수 있다. 관절 가동 범위에 기초하여 보정된 관절의 값에 대해서는 도 2a 및 도 2b를 통해 상세히 설명하도록 한다. For example, the
도 2a 및 도 2b는 본 발명의 일 실시예에 따른 관절의 값이 관절 가동 범위에 기초하여 보정되기 전과 후를 도시한 예시적인 도면이다. 2A and 2B are exemplary views showing before and after the joint value is corrected based on the joint motion range according to an embodiment of the present invention.
도 2a는 본 발명의 일 실시예에 따른 보정되기 전의 관절의 값을 도시한 예시적인 도면이다. 도 2a를 참조하면, 추출부(130)를 통해 추출된 관절의 값은 연속적인 선의 형태를 보이다가, 특정 지점(200)에서 불연속적인 형태를 보이는 것을 확인할 수 있다. 2A is an exemplary view showing the joint value before correction according to an embodiment of the present invention. Referring to FIG. 2A , it can be seen that the joint values extracted through the
도 2b는 본 발명의 일 실시예에 따른 보정된 후의 관절의 값을 도시한 예시적인 도면이다. 도 2b를 참조하면, 기측정된 관절 가동 범위(ROM, Range Of Motion)에 기초하여 관절의 값이 보정됨으로써, 불연속적인 형태를 보이던 특정 지점(210)이 다시 연속적인 형태를 보이도록 보정된 것을 확인할 수 있다. 2B is an exemplary view showing the joint values after correction according to an embodiment of the present invention. Referring to Figure 2b, the value of the joint is corrected based on the previously measured range of motion (ROM, Range Of Motion), so that the
즉, 보정부(140)는 관절의 운동 범위에 대한 제약을 설정함으로써, 관절 가동 범위를 초과하는 관절의 값을 보정하여 객체의 부정확한 자세 및 동작을 자연스럽게 보정할 수 있도록 하는 효과를 제공할 수 있다. That is, the correcting
다시 도 1로 돌아와서, 보정부(140)는 칼만 필터(Kalman filter)를 이용하여 적어도 하나의 관절의 값을 보정할 수 있다. 여기서, 칼만 필터란 잡음이 포함된 관측 데이터 값을 바탕으로, 그 관측 데이터 값이 만들어낸 원래의 신호를 추정하는 재귀적인 신호 처리 방법을 말한다. Returning to FIG. 1 again, the
보정부(140)는, 예를 들어, 추출된 적어도 하나의 관절의 값에 대해 칼만 필터(Kalman filter)를 적용하여 추정치를 도출하고, 도출된 추정치를 이용하여 추출된 적어도 하나의 관절의 값을 보정할 수 있다. The
이를 통해, 보정부(140)는 현재 알고 있는 관절의 값(관측 데이터 값)을 바탕으로 이를 선형 변환 및 선형 결합을 수행하여 원래의 신호에 최대한 가까운 추정치를 도출해냄으로써, 도출된 추정치를 이용하여 추출된 관절의 값을 보정할 수 있다. 칼만 필터를 이용하여 보정된 관절의 값에 대해서는 도 3을 참조하여 상세히 설명하도록 한다.Through this, the
도 3은 본 발명의 일 실시예에 따른 칼만 필터를 이용하여 보정된 관절의 값을 도시한 예시적인 도면이다. 도 3을 참조하면, 좌측 도면(300)은 추출부(130)에서 추출된 관절의 값을 도시한 도면이다. 여기서, 추출된 관절의 값은 원본 데이터일 수 있다. 우측 도면(310)은 추출된 관절의 값에 대해 칼만 필터가 적용되어 보정된 관절의 값이 도시된 그림이다. 3 is an exemplary diagram illustrating joint values corrected using a Kalman filter according to an embodiment of the present invention. Referring to FIG. 3 , the left diagram 300 is a diagram illustrating the joint values extracted by the
칼만 필터를 적용하여 보정하기 전과 후를 비교하면, 좌측 도면(300)의 특정 부분(301)의 경우, 불연속적인 형태를 보이고, 각 관절의 값들의 간격이 넓었으나, 칼만 필터를 통해 보정을 거침으로써, 우측 도면(310)의 특정 부분(311)을 통해 많이 개선된 것을 확인할 수 있다. Comparing the before and after correction by applying the Kalman filter, the
다시 도 1로 돌아와서, 보정부(140)는 기울기 변위 정도(gradient correction)에 기초하여 적어도 하나의 관절의 값을 보정할 수 있다. 임의의 한 '관절 j'에 대한 관절의 위치 값(x∈T, R)을 이산 시간(t) 축 상에서의 그래프로 표현하고자 하는 경우, 이상적으로 연속적인 형태를 띄게 된다. 그러나 현실적으로는 위치 인식 오류 등으로 인해 임의의 시간 t에서 이상점(outlier)의 형태를 띄는 위치값 x를 가지게 된다. Returning to FIG. 1 again, the
이 때, 그래프에서 연속된 내좌층(inlier)들 사이의 기울기의 변위는 작은 값을 가지게 될 수 있다. 이는, 수학식 1을 통해 설명될 수 있다. In this case, the displacement of the slope between consecutive inliers in the graph may have a small value. This can be explained through Equation (1).
()( )
수학식 1을 참조하면, 내좌층(inlier)인 점 A, 점 B, 점 C, 점 D 사이의 기울기인 AB, BC, CD의 변위는 작은 값을 가지게 될 수 있다. Referring to Equation 1, the displacements of AB, BC, and CD, which are slopes between points A, B, C, and D, which are inliers, may have small values.
이와 달리, 그래프에서 불연속적인 이상점(outlier)과의 기울기의 변위는 높은 값을 가지게 될 수 있다. 이는, 수학식 2를 통해 설명될 수 있다. Alternatively, the displacement of the slope with the discontinuous outliers in the graph may have a high value. This can be explained through Equation (2).
()( )
수학식 2를 참조하면, 내좌층(inlier)-이상점(outlier)인 점 E, 점 F, 점 G, 점 H 사이의 기울기인 EF, FG, GH의 변위는 큰 값을 가지게 될 수 있다. Referring to Equation 2, displacements of EF, FG, and GH, which are slopes between the inlier-outlier points E, F, G, and H, may have large values.
그러나 내좌층(inlier)-이상점(outlier) 간의 변위가 큰 값을 가지게 되면, 객체의 동작이 부자연스러워지게 된다. However, when the displacement between the inlier and the outlier has a large value, the motion of the object becomes unnatural.
이를 개선하고자, 보정부(140)는 수학식 3을 이용하여 이상점(outlier)에 해당하는 관절의 값을 보정할 수 있다. To improve this, the
(여기서, )(here, )
수학식 3을 참조하면, 보정부(140)는 추출된 적어도 하나의 관절의 값이 그래프를 통해 연속적인 모양의 제 1 형태 및 불연속적인 모양의 제 2 형태로 표현되는 경우, 영상의 현재 프레임으로부터 이전 프레임과 이후 프레임에 대해 추출된 적어도 하나의 관절의 값의 기울기 변위 정도를 도출하고, 도출된 기울기 변위 정도가 임계값 이상인 경우, 제 2 형태에 대응하는 관절의 값을 보정할 수 있다. 기울기 변위 정도에 기초하여 보정된 관절의 값에 대해서는 도 4를 통해 상세히 설명하도록 한다.Referring to Equation 3, when the extracted values of at least one joint are expressed in a first shape of a continuous shape and a second shape of a discontinuous shape through a graph, the
도 4는 본 발명의 일 실시예에 따른 관절의 값이 기울기 변위 정도 및 칼만 필터에 기초하여 보정되기 전과 후를 도시한 예시적인 도면이다. 도 3 및 도 4를 참조하면, 좌측 도면(400)은 도 3의 좌측 도면(300)에 해당하는 원본 데이터로부터 기울기 변위 정도에 기초하여 보정된 관절의 값을 도시한 그림이다. 4 is an exemplary view showing before and after the joint value is corrected based on the degree of inclination displacement and the Kalman filter according to an embodiment of the present invention. Referring to FIGS. 3 and 4 , the
먼저, 도 4의 좌측 도면(400)과 도 3의 좌측 도면(300)을 비교하면, 도 4의 좌측 도면(400)의 특정 부분(401)의 경우, 도 3의 좌측 도면(300)에 포함된 이상점(outlier)이 내좌층(inlier)에 포함되도록 보정된 것을 확인할 수 있다. First, comparing the left drawing 400 of FIG. 4 and the left drawing 300 of FIG. 3 , in the case of a
우측 도면(410)은 좌측 도면(400)에서 기울기 변위 정도에 기초하여 보정된 관절의 값에 칼만 필터가 더 적용되어 보정된 관절의 값이 도시된 그림이다. 좌측 도면(400)의 특정 부분(401) 및 우측 도면(410)의 특정 부분(411)을 비교하면, 좌측 도면(400)에서 보정된 관절의 값이 칼만 필터를 통해 더 보정됨으로써, 관절의 값들이 매끄럽게 연결되도록 보정된 것을 확인할 수 있다. The right figure 410 is a figure showing the joint values corrected by applying the Kalman filter to the joint values corrected based on the degree of inclination displacement in the left figure 400 . When the
애니메이션 생성부(150)는 객체 동작 기반의 애니메이션을 생성할 수 있다. 애니메이션을 생성하는 과정에 대해서는 도 5를 통해 상세히 설명하도록 한다. The
도 5는 본 발명의 일 실시예에 따른 골격 기반의 데이터 구조에 기초하여 생성된 애니메이션을 도시한 예시적인 도면이다. 도 5를 참조하면, 애니메이션 생성부(150)는 보정된 적어도 하나의 관절의 값에 기초하여 골격 기반의 데이터 구조를 생성하고, 보정된 적어도 하나의 관절의 값 및 생성된 골격 기반의 데이터 구조에 기초하여 객체 동작 기반의 애니메이션을 생성할 수 있다.5 is an exemplary diagram illustrating an animation generated based on a skeleton-based data structure according to an embodiment of the present invention. Referring to FIG. 5 , the
애니메이션 생성부(150)는 영상으로부터 실시간으로 보정된 적어도 하나의 관절의 값을 생성된 골격 기반의 데이터 구조에 적용하여 객체 동작 기반의 애니메이션을 생성할 수 있다. The
이러한 과정을 통해, 객체의 관절의 값을 다양한 방법으로 보정하고, 보정된 관절의 값을 이용하여 골격 기반의 데이터 구조를 생성함으로써, 객체의 동작의 후처리를 통해 자연스러운 움직임을 갖는 애니메이션이 생성되도록 할 수 있다. Through this process, by correcting the joint values of the object in various ways, and creating a skeleton-based data structure using the corrected joint values, post-processing of the object's motion to create an animation with natural motion. can do.
도 6은 본 발명의 일 실시예에 따른 애니메이션 생성 장치에서 객체 동작 기반의 애니메이션을 생성하는 방법의 순서도이다. 도 6에 도시된 객체 동작 기반의 애니메이션을 생성하는 방법은 도 1 내지 도 5에 도시된 실시예에 따라 애니메이션 생성 장치(100)에 의해 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 1 내지 도 5에 도시된 실시예에 따른 애니메이션 생성 장치(100)에서 객체 동작 기반의 애니메이션을 생성하는 방법에도 적용된다. 6 is a flowchart of a method for generating an animation based on an object motion in the animation generating apparatus according to an embodiment of the present invention. The method for generating an animation based on an object motion shown in FIG. 6 includes steps that are time-series processed by the
단계 S610에서 애니메이션 생성 장치(100)는 카메라를 통해 객체를 촬영한 영상을 수신할 수 있다. In step S610, the
단계 S620에서 애니메이션 생성 장치(100)는 수신한 영상으로부터 객체의 동작을 인식하고, 인식된 객체의 동작으로부터 관절의 위치 정보를 인식할 수 있다. In operation S620, the
단계 S630에서 애니메이션 생성 장치(100)는 인식된 관절의 위치 정보에 기초하여 적어도 하나의 관절의 값을 추출할 수 있다. In operation S630, the
단계 S640에서 애니메이션 생성 장치(100)는 추출된 적어도 하나의 관절의 값을 보정할 수 있다. In operation S640, the
단계 S650에서 애니메이션 생성 장치(100)는 보정된 적어도 하나의 관절의 값에 기초하여 골격 기반의 데이터 구조를 생성하고, 보정된 적어도 하나의 관절의 값 및 생성된 골격 기반의 데이터 구조에 기초하여 객체 동작 기반의 애니메이션을 생성할 수 있다. In step S650, the
상술한 설명에서, 단계 S610 내지 S650은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 전환될 수도 있다.In the above description, steps S610 to S650 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as needed, and the order between the steps may be switched.
도 1 내지 도 6을 통해 설명된 애니메이션 생성 장치에서 객체 동작 기반의 애니메이션을 생성하는 방법은 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램 또는 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 또한, 도 1 내지 도 6을 통해 설명된 애니메이션 생성 장치에서 객체 동작 기반의 애니메이션을 생성하는 방법은 컴퓨터에 의해 실행되는 매체에 저장된 컴퓨터 프로그램의 형태로도 구현될 수 있다. The method for generating an object motion-based animation in the animation generating apparatus described with reference to FIGS. 1 to 6 is also implemented in the form of a computer program stored in a medium executed by a computer or a recording medium including instructions executable by the computer. can be Also, the method of generating an animation based on an object motion in the animation generating apparatus described with reference to FIGS. 1 to 6 may be implemented in the form of a computer program stored in a medium executed by a computer.
컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be interpreted as being included in the scope of the present invention. do.
100: 애니메이션 생성 장치
110: 영상 수신부
120: 인식부
130: 추출부
140: 보정부
150: 애니메이션 생성부100: animation generating device
110: video receiver
120: recognition unit
130: extraction unit
140: correction unit
150: animation generator
Claims (5)
카메라를 통해 객체를 촬영한 영상을 수신하는 영상 수신부;
상기 수신한 영상으로부터 상기 객체의 동작을 인식하고, 상기 인식된 객체의 동작으로부터 관절의 위치 정보를 인식하는 인식부;
상기 인식된 관절의 위치 정보에 기초하여 적어도 하나의 관절의 값을 추출하는 추출부;
상기 추출된 적어도 하나의 관절의 값을 보정하는 보정부; 및
상기 보정된 적어도 하나의 관절의 값에 기초하여 골격 기반의 데이터 구조를 생성하고, 상기 보정된 적어도 하나의 관절의 값 및 상기 생성된 골격 기반의 데이터 구조에 기초하여 상기 객체 동작 기반의 애니메이션을 생성하는 애니메이션 생성부를 포함하고,
상기 보정부는 상기 적어도 하나의 관절의 값 중 상기 영상의 현재 프레임과 이전 프레임 간의 기울기 변위 정도에 기초하여 이상점에 해당하는 관절의 값을 아래의 수학식에 따라 현재 프레임의 관절의 값과 이전 프레임의 관절의 값이 같아지도록 보정하는 것인, 애니메이션 생성 장치.
여기서, 는 상기 현재 프레임이고, 는 상기 이전 프레임이고, 는 상기 이상점에 해당하는 관절의 값을 의미함.
An apparatus for generating an object motion-based animation, comprising:
an image receiving unit for receiving an image obtained by photographing an object through a camera;
a recognition unit for recognizing the motion of the object from the received image, and recognizing the position information of the joint from the recognized motion of the object;
an extraction unit for extracting a value of at least one joint based on the recognized joint position information;
a correction unit for correcting the extracted at least one joint value; and
A skeleton-based data structure is generated based on the corrected value of the at least one joint, and the object motion-based animation is generated based on the corrected value of the at least one joint and the generated skeleton-based data structure. including an animation generating unit that
The correction unit calculates the joint value corresponding to the outlier based on the degree of tilt displacement between the current frame and the previous frame of the image among the values of the at least one joint according to the following equation between the joint value of the current frame and the previous frame An animation generating device that corrects the values of the joints to be the same.
here, is the current frame, is the previous frame, denotes the value of the joint corresponding to the above-mentioned outlier.
상기 보정부는 상기 객체로부터 기측정된 관절 가동 범위(ROM, Range Of Motion)에 기초하여 상기 관절의 운동 범위에 대한 제약 조건을 설정하고, 상기 설정된 제약 조건에 기초하여 상기 추출된 적어도 하나의 관절의 값을 보정하는 것인, 애니메이션 생성 장치.
The method of claim 1,
The compensator sets a constraint condition for the range of motion of the joint based on a joint motion range (ROM, Range Of Motion) measured in advance from the object, and based on the set constraint condition, An animation generating device that corrects a value.
상기 보정부는 상기 추출된 적어도 하나의 관절의 값에 대해 칼만 필터(Kalman filter)를 적용하여 추정치를 도출하고, 상기 도출된 추정치를 이용하여 상기 추출된 적어도 하나의 관절의 값을 보정하는 것인, 애니메이션 생성 장치.
The method of claim 1,
The correction unit derives an estimate by applying a Kalman filter to the extracted at least one joint value, and corrects the extracted value of the at least one joint by using the derived estimate, animation generator.
상기 추출된 적어도 하나의 관절의 값이 그래프를 통해 연속적인 모양의 제 1 형태 및 불연속적인 모양의 제 2 형태로 표현되는 경우,
상기 보정부는 상기 영상의 현재 프레임으로부터 이전 프레임과 이후 프레임에 대해 상기 추출된 적어도 하나의 관절의 값의 기울기 변위 정도를 도출하고,
상기 도출된 기울기 변위 정도가 임계값 이상인 경우, 상기 제 2 형태에 대응하는 관절의 값을 보정하는 것인, 애니메이션 생성 장치.
The method of claim 1,
When the value of the extracted at least one joint is expressed in a first shape of a continuous shape and a second shape of a discontinuous shape through a graph,
The correction unit derives the degree of inclination displacement of the value of the at least one joint extracted from the current frame of the image with respect to the previous frame and the subsequent frame,
When the derived degree of inclination displacement is equal to or greater than a threshold value, the value of the joint corresponding to the second shape is corrected.
상기 애니메이션 생성부는 상기 영상으로부터 실시간으로 보정된 적어도 하나의 관절의 값을 상기 생성된 골격 기반의 데이터 구조에 적용하여 상기 객체 동작 기반의 애니메이션을 생성하는 것인, 애니메이션 생성 장치.The method of claim 1,
The animation generating unit generates the animation based on the object motion by applying the value of at least one joint corrected in real time from the image to the generated skeleton-based data structure.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220053398A KR20220062461A (en) | 2019-10-29 | 2022-04-29 | Device and method for generating animation based on motion of object |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190135242A KR20210050787A (en) | 2019-10-29 | 2019-10-29 | Device and method for generating animation based on motion of object |
KR1020210067941A KR20210068336A (en) | 2019-10-29 | 2021-05-26 | Device and method for generating animation based on motion of object |
KR1020220053398A KR20220062461A (en) | 2019-10-29 | 2022-04-29 | Device and method for generating animation based on motion of object |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210067941A Division KR20210068336A (en) | 2019-10-29 | 2021-05-26 | Device and method for generating animation based on motion of object |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20220062461A true KR20220062461A (en) | 2022-05-17 |
Family
ID=75917176
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190135242A KR20210050787A (en) | 2019-10-29 | 2019-10-29 | Device and method for generating animation based on motion of object |
KR1020210067941A KR20210068336A (en) | 2019-10-29 | 2021-05-26 | Device and method for generating animation based on motion of object |
KR1020220053398A KR20220062461A (en) | 2019-10-29 | 2022-04-29 | Device and method for generating animation based on motion of object |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190135242A KR20210050787A (en) | 2019-10-29 | 2019-10-29 | Device and method for generating animation based on motion of object |
KR1020210067941A KR20210068336A (en) | 2019-10-29 | 2021-05-26 | Device and method for generating animation based on motion of object |
Country Status (1)
Country | Link |
---|---|
KR (3) | KR20210050787A (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102349530B1 (en) * | 2021-08-19 | 2022-01-10 | (주)로코모스튜디오 | Method, device and system for automatically creating of animation object based on artificial intelligence |
KR102510047B1 (en) * | 2022-07-25 | 2023-03-15 | 주식회사 컴플렉시온 | Control method of electronic device to filter noise of pose recognition using range of motion |
CN116434335B (en) * | 2023-03-30 | 2024-04-30 | 东莞理工学院 | Method, device, equipment and storage medium for identifying action sequence and deducing intention |
-
2019
- 2019-10-29 KR KR1020190135242A patent/KR20210050787A/en not_active IP Right Cessation
-
2021
- 2021-05-26 KR KR1020210067941A patent/KR20210068336A/en not_active IP Right Cessation
-
2022
- 2022-04-29 KR KR1020220053398A patent/KR20220062461A/en not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
KR20210050787A (en) | 2021-05-10 |
KR20210068336A (en) | 2021-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20220062461A (en) | Device and method for generating animation based on motion of object | |
CN110139115B (en) | Method and device for controlling virtual image posture based on key points and electronic equipment | |
KR101711736B1 (en) | Feature extraction method for motion recognition in image and motion recognition method using skeleton information | |
CN113706699B (en) | Data processing method and device, electronic equipment and computer readable storage medium | |
JP5604225B2 (en) | Human body posture estimation apparatus, human body posture estimation method, and computer program | |
CN103578135A (en) | Virtual image and real scene combined stage interaction integrating system and realizing method thereof | |
JP2006350578A (en) | Image analysis device | |
KR20170067673A (en) | Method and apparatus for generating animation | |
KR102201105B1 (en) | Method and apparatus for estimating human motion kinetics information | |
JP6839116B2 (en) | Learning device, estimation device, learning method, estimation method and computer program | |
WO2020149149A1 (en) | Information processing apparatus, information processing method, and program | |
JP2019045967A (en) | Attitude estimation device, method and program | |
JP2000268161A (en) | Real time expression detector | |
WO2017113674A1 (en) | Method and system for realizing motion-sensing control based on intelligent device, and intelligent device | |
CN112102451A (en) | Common camera-based wearable virtual live broadcast method and equipment | |
KR102483387B1 (en) | Augmented reality content provision method and finger rehabilitation training system for finger rehabilitation training | |
CN108885087B (en) | Measuring apparatus, measuring method, and computer-readable recording medium | |
JP2018110672A (en) | Display control device and display control program | |
CN110321008B (en) | Interaction method, device, equipment and storage medium based on AR model | |
WO2020149144A1 (en) | Information processing apparatus, information processing method, and program | |
JP2021026265A (en) | Image processing device, image processing program, and image processing method | |
WO2023176210A1 (en) | Information processing device, information processing method, and information processing program | |
AU2020436767B2 (en) | Markerless motion capture of hands with multiple pose estimation engines | |
KR20150081975A (en) | Apparatus for pose estimation of wearable display device using hybrid sensors | |
CN111435535A (en) | Method and device for acquiring joint point information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |