KR100903394B1 - Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data - Google Patents

Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data Download PDF

Info

Publication number
KR100903394B1
KR100903394B1 KR1020070094675A KR20070094675A KR100903394B1 KR 100903394 B1 KR100903394 B1 KR 100903394B1 KR 1020070094675 A KR1020070094675 A KR 1020070094675A KR 20070094675 A KR20070094675 A KR 20070094675A KR 100903394 B1 KR100903394 B1 KR 100903394B1
Authority
KR
South Korea
Prior art keywords
animation
mesh
character
transformation matrix
communication terminal
Prior art date
Application number
KR1020070094675A
Other languages
Korean (ko)
Other versions
KR20070099504A (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 KR1020070094675A priority Critical patent/KR100903394B1/en
Publication of KR20070099504A publication Critical patent/KR20070099504A/en
Application granted granted Critical
Publication of KR100903394B1 publication Critical patent/KR100903394B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection

Abstract

본 발명은 휴대폰, PDA와 같은 이동 통신 단말기에서, 2차원 이미지를 이용하여 캐릭터를 애니메이션함에 있어서 애니메이션 데이터를 경감시키는 방법에 관한 것이다. The present invention relates to a method for reducing animation data in animating a character using a two-dimensional image in a mobile communication terminal such as a mobile phone and a PDA.

본 발명은, 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법에 있어서,The present invention provides a processing method for character animation in a mobile communication terminal by reducing animation data.

사용자로부터 캐릭터 애니메이션하기 위한 정지 영상 이미지 데이터를 입수하는 단계; 상기 정지 영상에서 캐릭터 애니메이션하고자 하는 부분에 대한 윤곽선을 정의하는 단계; 상기 윤곽선 내부의 상기 캐릭터 애니메이션하고자 하는 부분을 삼각형 메쉬로 분할하는 단계; 상기 분할된 삼각형 메쉬를 비트맵으로 채워진 형상으로 정의하는 단계; 프레임을 이동해 가면서, 해당 프레임의 캐릭터를 변환하여 매 프레임 별 애니메이션을 정의하는 단계; 초기 상태의 삼각형 메쉬의 초기좌표와 매 프레임의 변경된 좌표를 이용하여 변환 매트릭스를 구하여 각 삼각형 메쉬의 변환 매트릭스 정보를 애니메이션 파일에 기록하는 단계를 포함하는 것을 특징으로 한다.Obtaining still image image data for character animation from a user; Defining an outline of a portion of the still image to be animated; Dividing the portion of the contour to be animated into a triangle mesh; Defining the divided triangular mesh into a shape filled with a bitmap; Moving the frame and converting the characters of the frame to define an animation for each frame; And obtaining the transformation matrix by using the initial coordinates of the triangular mesh in the initial state and the changed coordinates of each frame, and recording the transformation matrix information of each triangular mesh in the animation file.

이상과 같은 본 발명을 이용하면 플래쉬 엔진과 같은 애니메이션 엔진에서의 캐릭터 애니메이션용 데이터의 크기를 줄이면서, 2차원 이미지에서 사용자가 설정한 캐릭터가 애니메이션되는 효과를 달성할 수 있는 캐릭터 애니메이션 및 사용자 인터페이스를 제공할 수 있게 된다.According to the present invention as described above, while reducing the size of the character animation data in the animation engine, such as a flash engine, character animation and user interface that can achieve the effect that the character set by the user in the two-dimensional image It can be provided.

또한 본 발명을 통해 구현되는 시스템은 플래쉬 엔진에 적용하기 위한 변환 매트릭스를 계산한 후에, 1번만 보정을 하여 수정된 변환 매트릭스를 적용하면, 플래쉬 애니메이션 될 때 삼각형 메쉬와 메쉬 사이의 간격이 거의 보이지 않게 된다. 또한, 최적화된 변환 매트릭스를 찾기 위한 계산 횟수를 많이 줄일 수 있으므로, 작은 메모리와 작은 계산능력을 가지고 있는 이동통신 단말기 및 휴대용 장치에 적용하기가 용이하다.In addition, the system implemented by the present invention calculates the transformation matrix for applying to the flash engine, and then applies the modified transformation matrix by correcting it only once, so that the gap between the triangle mesh and the mesh is almost invisible when the flash animation is performed. do. In addition, since the number of calculations for finding an optimized conversion matrix can be reduced a lot, it is easy to apply to a mobile communication terminal and a portable device having a small memory and a small calculation capability.

캐릭터, 애니메이션, 이동통신 단말기, 휴대폰, 메쉬 Animated Cartoon, Characters, Mobile Phone, Mobile Phone, Mesh

Description

애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법{Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data}Processing method for character animation in mobile terminal by reducing animation data

본 발명은 휴대폰, PDA와 같은 이동 통신 단말기에서, 2차원 이미지를 이용하여 캐릭터를 애니메이션함에 있어서 애니메이션 데이터를 경감시키기 위한 처리 방법에 관한 것이다. The present invention relates to a processing method for reducing animation data in animating a character using a two-dimensional image in a mobile communication terminal such as a mobile phone or a PDA.

휴대폰 또는 PDA, 디지털카메라 등 디지털 기기의 고기능화, 고용량화로 인해 동영상 촬영이 용이하다. 하지만, 동영상은 정지영상보다 용량이 매우 크고, 단말기 자체에서 촬영된 동영상을 사용자가 편집하는 것은 매우 어려운 실정이다. Movies are easy to take due to the high functionality and high capacity of digital devices such as mobile phones, PDAs and digital cameras. However, a video has a much larger capacity than a still picture, and it is very difficult for a user to edit a video captured by the terminal itself.

한편, 2차원 정지영상은 용이하게 찍을 수 있고, 용량도 동영상에 비해 매우 작은 장점이 있지만, 이동 통신 단말기 자체에서 순간 포착한 정지영상을 동영상으로 만들기는 매우 어려우며, 한 가지 가능한 방법은 여러 장의 정지영상을 연속적으로 표시하는 방식으로 동영상처럼 보이게 하는 것이다.On the other hand, two-dimensional still image can be easily taken and its capacity is very small compared to video, but it is very difficult to make a still image captured by the mobile terminal itself as a moving image. By displaying the images continuously, it looks like a video.

그런데, 여러 장의 정지영상을 화면에 연속적으로 표시하는 방식은 용량이 매우 커지게 된다. 예를 들면, 이 방식은 240x320 화면크기의 72프레임(12fps, 6sec), 24bit color 인 애니메이션을 만든다고 하면, 이미지 압축을 하지 않는다면 약 16,588,800바이트 (약 16메가 바이트) 정도의 메모리 용량이 필요하다. 압축 방식에 따라 차이는 있겠지만, 압축을 하더라도 상당한 메모리가 필요하다.However, the capacity of displaying a plurality of still images on the screen continuously becomes very large. For example, if you create an animation that is 72 frames (12fps, 6sec) or 24bit color with a 240x320 screen size, you need about 16,588,800 bytes (about 16 megabytes) of memory unless you compress the image. Depending on the compression method, compression requires significant memory.

따라서, 이렇게 모든 화면을 그림 이미지로 애니메이션 하려면, 이 그림 이미지의 애니메이션 데이터를 저장 할 수 있는 매우 큰 메모리 용량이 필요하므로, 휴대폰, PDA등과 같은 이동통신 단말기는 메모리 크기가 작아서 적용하기가 어렵다.Therefore, in order to animate all screens into a picture image, a very large memory capacity for storing the animation data of the picture image is required. Therefore, a mobile communication terminal such as a mobile phone or a PDA is difficult to apply due to its small memory size.

결국, 메모리 용량이 작은 이동통신 단말기에서 동영상을 보여주기 위해서는 이동통신 단말기에서의 애니메이션 데이터를 획기적으로 줄일 수 있는 특단의 방법이 필요하다.As a result, in order to display a video in a mobile communication terminal having a small memory capacity, a special method for dramatically reducing animation data in a mobile communication terminal is needed.

본 발명은 이상과 같은 종래기술의 문제점을 감안하여, 애니메이션 데이터를 획기적으로 줄여서, 정지 영상을 이동통신 단말기에서 캐릭터 애니메이션 하기 위한 처리 방법을 제공한다.SUMMARY OF THE INVENTION The present invention provides a processing method for character animation of a still image in a mobile communication terminal by dramatically reducing animation data in view of the problems of the prior art as described above.

이러한 과제를 달성하기 위하여 본 발명은, 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법에 있어서,In order to achieve the above object, the present invention provides a processing method for character animation in a mobile communication terminal by reducing animation data,

사용자로부터 캐릭터 애니메이션하기 위한 정지 영상 이미지 데이터를 입수하는 단계; 상기 정지 영상에서 캐릭터 애니메이션하고자 하는 부분에 대한 윤곽선을 정의하는 단계; 상기 윤곽선 내부의 상기 캐릭터 애니메이션하고자 하는 부분을 삼각형 메쉬로 분할하는 단계; 상기 분할된 삼각형 메쉬를 비트맵으로 채워진 형상으로 정의하는 단계; 프레임을 이동해 가면서, 해당 프레임의 캐릭터를 변환하여 매 프레임 별 애니메이션을 정의하는 단계; 초기 상태의 삼각형 메쉬의 초기좌표와 매 프레임의 변경된 좌표를 이용하여 변환 매트릭스를 구하여 각 삼각형 메쉬의 변환 매트릭스 정보를 애니메이션 파일에 기록하는 단계를 포함하는 것을 특징으로 한다.Obtaining still image image data for character animation from a user; Defining an outline of a portion of the still image to be animated; Dividing the portion of the contour to be animated into a triangle mesh; Defining the divided triangular mesh into a shape filled with a bitmap; Moving the frame and converting the characters of the frame to define an animation for each frame; And obtaining the transformation matrix by using the initial coordinates of the triangular mesh in the initial state and the changed coordinates of each frame, and recording the transformation matrix information of each triangular mesh in the animation file.

이상과 같은 본 발명을 이용하면 플래쉬 엔진과 같은 애니메이션 엔진에서의 캐릭터 애니메이션용 데이터의 크기를 줄이면서, 2차원 이미지에서 사용자가 설정 한 캐릭터가 애니메이션되는 효과를 달성할 수 있는 캐릭터 애니메이션 및 사용자 인터페이스를 제공할 수 있게 된다.According to the present invention as described above, while reducing the size of the character animation data in the animation engine, such as a flash engine, character animation and user interface that can achieve the effect that the character set by the user in the two-dimensional image It can be provided.

또한 본 발명을 통해 구현되는 시스템은 플래쉬 엔진에 적용하기 위한 변환 매트릭스를 계산한 후에, 1번만 보정을 하여 수정된 변환 매트릭스를 적용하면, 삼각형 메쉬와 메쉬 사이의 간격이 좁으며, 최적화된 변환 매트릭스를 찾기 위한 계산 횟수를 많이 줄일 수 있으므로, 작은 메모리와 작은 계산능력을 가지고 있는 이동통신 단말기 및 휴대용 장치에 적용하기가 용이하다.In addition, the system implemented by the present invention calculates the transformation matrix for applying to the flash engine, and if only one correction is applied to apply the modified transformation matrix, the gap between the triangle mesh and the mesh is narrow, and the optimized transformation matrix Since the number of calculations to find the number can be reduced a lot, it is easy to apply to a mobile communication terminal and a portable device having a small memory and a small calculation ability.

본 발명은 휴대폰, PDA, 디지털카메라로 찍은 2차원 영상을 캐릭터로 설정을 하여 그 캐릭터를 움직이도록 애니메이션 함으로써, 이동통신 단말기의 사용자가 정지영상을 보는 것보다 현장감을 느끼게 하는 캐릭터 애니메이션의 경우에, 애니메이션 데이터를 줄이고자 하는 것이다.According to the present invention, in the case of a character animation that sets a two-dimensional image taken by a mobile phone, a PDA, and a digital camera as a character and animate the character to move, the user of the mobile communication terminal feels a sense of reality rather than watching a still image. We want to reduce the animation data.

이제 대표적인 애니메이션 엔진인 플래쉬 엔진을 사용하는 경우를 대상으로 하여 본 발명을 단계별로 설명하기로 한다.Now, the present invention will be described step by step for a case of using a flash engine, which is a representative animation engine.

1. 캐릭터 이미지 추가1. Add character image

사용자는 디지털 카메라, 카메라폰, 스캐너 등을 통하여 정지 영상 이미지를 획득하여, 도1과 같은 이동통신 단말기의 화면에서 캐릭터 애니메이션을 하고 싶은 정지영상 이미지를 추가한다. 이미지는 단말기의 카메라 모듈을 통해 자체적으로 습득할 수도 있지만, 다른 매체에서 이동통신 단말기로 전송할 수도 있다. 전송 방법은 USB, Bluetooth, IrDA 등의 다양한 방법이 가능하다. 이때 정지영상 이미지는 플래쉬에서 지원되는 이미지 형식(JPEG, PNG, GIF등)이면 모두 가능하다.The user acquires a still image image through a digital camera, a camera phone, a scanner, or the like, and adds a still image image for character animation on the screen of the mobile communication terminal as shown in FIG. 1. The image may be acquired by itself through the camera module of the terminal, but may be transmitted to the mobile communication terminal from another medium. The transmission method may be various methods such as USB, Bluetooth, IrDA, and the like. At this time, the still image can be any image format supported by Flash (JPEG, PNG, GIF, etc.).

2. 뼈대 삽입2. Skeleton Insert

이제, 이동통신 단말기는 도2에서와 같은 화면에서 위에서 입력된 정지 영상 이미지의 뼈대를 삽입한다. 뼈대는 반드시 필요한 것은 아니지만, 애니메이션을 정의할 때 좀 더 편리하게 하기 위해, 추가하는 것이다. 정형화된 캐릭터의 경우에는 미리 정의된 뼈대를 삽입함으로써 조금 편하게 애니메이션을 정의할 수 있게 된다. 삽입된 뼈대는 사용자가 터치스크린과 스타일러스 펜과 같은 입력장치를 이용하여 이동 및 확대 등의 조절이 가능하다.Now, the mobile communication terminal inserts the skeleton of the still image image input above from the screen as shown in FIG. Skeletons are not required, but they are added to make the animation more convenient. In the case of standardized characters, the animation can be defined a little more easily by inserting a predefined skeleton. The inserted armature allows the user to adjust the movement and zooming by using input devices such as a touch screen and a stylus pen.

인물 뼈대, 가로등, 나무 등의 사물 뼈대, 강아지, 고양이 등의 애완동물용 뼈대 등을 사용자가 다양하게 정의할 수 있고 또한 공유할 수 있다.Object skeletons, street lamps, object skeletons such as trees, and pet skeletons such as dogs and cats can be variously defined and shared by users.

3. 윤곽선 정의 3. Contour Definition

이제, 도3처럼 앞에서 추가된 정지영상의 영역 중에서 애니메이션을 시키고 싶은 부분만을 캐릭터(인물, 나무, 애완동물 등)의 윤곽선으로 정의한다.Now, as shown in FIG. 3, only the portion of the still image region added previously that is to be animated is defined as the outline of the character (person, tree, pet, etc.).

애니메이션을 부드럽게 하기 위해 캐릭터의 관절 부분은 윤곽선을 조금 정교하게 정의한다. To smooth the animation, the joints of the character define the contours a bit more precisely.

윤곽선의 정교함 여부에 따라서 다음 단계에서 논하는 삼각형 메쉬가 정교하게 되고, 애니메이션도 부드럽게 된다.Depending on the sophistication of the contours, the triangular mesh discussed in the next step will be refined and the animation smoothed.

4. 윤곽선 내부의 삼각형 메쉬(Triangular Mesh) 분할4. Split triangular mesh inside contour

뼈대와 캐릭터 윤곽선 정보를 이용하여, 도4와 같이 윤곽선 내부를 삼각형모양의 작은 조각(Mesh, 이하 메쉬라고 한다.)으로 분할한다. 메쉬로 분할할 때 뼈대 정보는 꼭 필요한 것은 아니지만, 뼈대가 있음으로 해서, 관절부분이 명확해져 애니메이션의 품질에 영향을 미치게 되고, 관절 근처의 메쉬는 조금 작게 만들고, 그렇지 않은 부분은 좀 크게 만들어 메쉬의 개수를 다소 줄일 수도 있다. 이 방법은 캐릭터에 맞는 골격을 설정해야 하는 번거로움이 있지만, 효율적이다. 윤곽선만 가지고 삼각형 메쉬로 분할하면 애니메이션을 부드럽게 하기 위해, 가능한 한 메쉬의 크기를 최소로 해야 한다.Using the skeleton and the character outline information, the inside of the outline is divided into triangular small pieces (Mesh, hereinafter referred to as a mesh) as shown in FIG. Skeletal information is not necessary when dividing into meshes, but having a skeleton makes the joints clearer, affecting the quality of the animation, making the mesh near the joints a little smaller, and making the other parts a bit larger. The number of can be reduced somewhat. This method is cumbersome to set the skeleton for the character, but it is efficient. If you split only a contour into a triangular mesh, you should minimize the size of the mesh as much as possible to smooth the animation.

메쉬로 분할할 때 삼각형 메쉬로 분할하는 속도도 중요하지만, 메쉬와 메쉬의 크기가 적당하고 배치가 적절해야 애니메이션 동작이 매끄럽게 되므로, 메쉬의 크기와 배치가 더욱 중요하다.The speed of dividing into a triangular mesh is also important when dividing into a mesh, but the mesh size and placement is more important because the animation motion is smooth when the mesh and mesh are properly sized and placed properly.

뼈대를 추가하지 않았거나, 캐릭터에 맞는 뼈대가 없을 경우, 사용자는 메쉬를 생성하기에 앞서 관절의 위치만 설정하여 골격을 추가하지 않고서도 골격을 추 가한 것처럼 동일한 효과를 얻을 수 있다.If you don't add a skeleton or don't have a skeleton for your character, you can get the same effect as adding a skeleton without adding a skeleton by just setting the joint position before creating the mesh.

5. 분할된 삼각형 메쉬를 비트맵으로 채워진 형상(Shape)으로 정의5. Define a segmented triangular mesh as a shape filled with a bitmap

도4처럼 분할된 메쉬와 이미지를 이용하여, 플래쉬에서 표시할 수 있는 형상(Shape)으로 정의하는 과정이 필요하다. Using the divided mesh and the image as shown in Figure 4, it is necessary to define a shape (shape) that can be displayed in the flash.

입력된 캐릭터 전체의 이미지를 모든 메쉬에 맞는 삼각형 조각의 이미지로 만들어서 추가할 수도 있지만, 이 경우 총 이미지 용량의 증가는 없겠지만, 조각 조각의 이미지로 분할하는 과정이 시간이 매우 많이 걸린다. 따라서, 본 발명에서는 입력된 캐릭터 전체의 이미지를 변환없이 그대로 사용하기로 한다. 이것을 하기 위해, 크게 2개의 과정이 필요하다.It is possible to add an image of the entire input character to make a triangular piece of image for every mesh, but in this case there will be no increase in the total image capacity, but the process of dividing into a piece of image is very time consuming. Therefore, in the present invention, the image of the entire input character is used as it is without conversion. To do this, two steps are needed.

첫 번째 과정은 캐릭터 전체의 이미지를 정의하고, 두 번째 과정은 그 후에 모든 삼각형 메쉬를 정의할 때, 모든 메쉬가 캐릭터 이미지로 채워진 속성(Bitmap-filled shape)을 부여한다. The first step is to define the image of the entire character, and the second step is then to define all the triangle meshes, giving them a bitmap-filled shape with all the mesh images.

캐릭터 이미지를 정의하는 과정은 플래쉬의 이미지 정의 태그(DefineBits, DefineBitsJPEG2, DefineBitsJPEG3, DefineBitsLossless, DefineBitsLossless2 등)를 사용하여 정의한다. 이러한 플래쉬 엔진의 태그(명령어)들에 대한 자세한 설명은 당업자에게 잘 알려진 사항이므로 이하에서는 생략하므로, 자세한 사항에 대해서는 어도비사(매크로미디어사를 어도비사가 인수함)의 플래쉬 파일형식 관련 문서 를 참고하거나, Google, Naver와 같은 웹 검색엔진을 이용하거나, 웹사이트(http://www.the-labs.com/MacromediaFlash/SWF-Spec/SWFfilereference.html)를 참고하면 된다.The process of defining a character image is defined using flash image definition tags (DefineBits, DefineBitsJPEG2, DefineBitsJPEG3, DefineBitsLossless, DefineBitsLossless2, etc.). Detailed descriptions of the tags (commands) of such a flash engine are well known to those skilled in the art, so the following descriptions are omitted. For details, refer to the documentation on the Flash file format of Adobe (Macro Media Co., Ltd.) You can use a web search engine such as Google, Google, or Naver, or visit the website ( http://www.the-labs.com/MacromediaFlash/SWF-Spec/SWFfilereference.html ).

삼각형을 정의하는 과정은 플래쉬의 형상 정의 태그(DefineShape, DefineShape2, DefineShape3 등)을 이용하여 정의한다. 정의할 때, 사각형 이미지가 아닌, 삼각형 이미지로 형상을 정의하고, 이미지 채움 속성(Bitmap-filled attribute)을 설정하여 정의한다. The process of defining the triangle is defined using the flash shape definition tags (DefineShape, DefineShape2, DefineShape3, etc.). When defining, define the shape by the triangle image, not the square image, and set the bitmap-filled attribute.

이 두 과정을 거치면, 다소 삼각형의 개수가 늘어나므로 용량은 다소 늘어나게 되지만, 그 용량의 증가는 그다지 크지 않다. 삼각형 메쉬는 초기 프레임에서만 정의되므로, 프레임은 증가하더라도 삼각형 메쉬의 수는 증가하지 않는다.After these two processes, the number of triangles is somewhat increased, so the capacity is somewhat increased, but the increase in capacity is not so large. Since triangle meshes are defined only in the initial frame, the number of triangle meshes does not increase as the frame increases.

많은 메쉬로 인해, 형상 정의 태그는 많아지지만, 해당 바이너리 이미지는 한번만 추가되므로 용량의 크기 증가가 크지 않다. Due to the large number of meshes, there are many shape definition tags, but since the binary image is added only once, the size increase is not significant.

그리고, 전체 이미지를 여러 삼각형으로 분할해도, 실제 플래쉬에서 보여지는 이미지 품질은 전혀 차이가 없다. 표시 속도 면에서는 메쉬의 개수에 따라 차이가 생길 수는 있지만, 이동통신 단말에서도 표시 속도에서의 차이는 그다지 크지 않다.And even if the entire image is divided into triangles, there is no difference in the image quality seen in the actual flash. In terms of display speed, a difference may occur depending on the number of meshes, but the difference in display speed is not so large in a mobile communication terminal.

이러한 과정을 거치면서, 실제 플래쉬의 물리적 파일에는 도5처럼 기록되게 된다. 먼저 플래쉬의 기본 헤더정보가 기록되고, 이미지 데이터를 쓰고(IMG1), 그 이미지 데이터로 채워진 속성을 가진 삼각형 메쉬들의 정보를 기록한다. 이 정보들을 다 기록한 후, 프레임 종료태그(ShowFrame tag)를 써서, 첫 프레임을 종료하게 된다.Through this process, the actual file of the flash is recorded as shown in FIG. First, the basic header information of the flash is recorded, and image data (IMG1) is written, and information of triangle meshes having attributes filled with the image data is recorded. After all this information is recorded, the first frame is finished by using a ShowFrame tag.

6. 프레임 별 애니메이션 정의6. Define animation by frame

도6에서처럼, 프레임을 이동해 가면서, 해당 프레임의 캐릭터를 변환함으로써 애니메이션을 정의한다. 뼈대를 이동시키거나, 윤곽선의 형상을 이동 및 변환하여 애니메이션을 정의할 수 있다. As shown in Figure 6, while moving the frame, the animation is defined by converting the characters of the frame. You can define the animation by moving the armature or by moving and transforming the shape of the outline.

7. 플래쉬 파일에 애니메이션 기록7. Record Animation to Flash File

이제 플래쉬 파일에 애니메이션 정보를 기록한다. 기록하는 방법은 아래의 도7처럼 이미지 데이터와 그 이미지 데이터로 채워진 삼각형 메쉬(이하 Shape)를 먼저 기록한다. 그리고 이것 이외의 배경 이미지 등과 같은 부가적인 형상이 더 있다면 함께 기록한 후, 프레임 종료 태그(ShowFrame tag)를 기록하여 초기 프레임을 종료한다.Now record the animation information in the flash file. In the recording method, image data and a triangular mesh (hereinafter referred to as shapes) filled with the image data are first recorded as shown in FIG. 7 below. If there are additional shapes other than this, such as a background image, they are recorded together, and a frame end tag (ShowFrame tag) is recorded to end the initial frame.

그 후에, 다음 프레임으로 이동한 후, 앞에서 정한 프레임별 골격의 핸들의 이동 정보와 각 메쉬의 정보를 이용하여, 삼각형 메쉬의 초기 좌표와 현재의 좌표를 이용하여, 변환 행렬(transformation matrix)을 구하여, 형상(Shape)의 변환을 정의하는 tag(PlaceObject, PlaceObject2 tag 등)를 이용하여, 각 삼각형 메쉬의 Transformation 동작을 기록한 후, 프레임 종료 태그(ShowFrame tag)를 기록하여 해당 프레임을 종료한다.Then, after moving to the next frame, a transformation matrix is obtained using the initial coordinates and the current coordinates of the triangular mesh using the movement information of the handle of the frame for each frame and the information of each mesh. Using a tag (PlaceObject, PlaceObject2 tag, etc.) defining a shape transformation, the transformation operation of each triangular mesh is recorded, and then the frame end tag (ShowFrame tag) is recorded to end the corresponding frame.

이렇게 하여, 모든 프레임을 기록한 후, 파일을 종료한다.In this way, after recording all the frames, the file is terminated.

이러한 정보가 파일에 써지는 구조는 도7처럼 간략화 할 수 있다.The structure in which this information is written to the file can be simplified as shown in FIG.

삼각형 메쉬의 변환을 정의하기 위해 필요한 변환 매트릭스는, 도8에서처럼 삼각형 T0에서 삼각형 T로 변환될 때, 수학적으로 3x3 변환 매트릭스는 1개 존재한다. 2차원 삼각형의 변환을 정의하는 변환 matrix의 6개 인자(X/Y Scale, 2개의 Rotation & Skew factor, X/Y transformation)를 플래쉬의 tag중, Shape의 변환을 정의하는 tag(PlaceObject, PlaceObject2 tag 등)를 이용하여 파일에 변환 동작 정보를 기록한다.The transformation matrix required to define the transformation of the triangle mesh is, when converted from triangle T0 to triangle T as shown in Fig. 8, mathematically there is one 3x3 transformation matrix. 6 factors (X / Y Scale, 2 Rotation & Skew factor, X / Y transformation) of transformation matrix that define transformation of 2D triangle among tags of flash (PlaceObject, PlaceObject2 tag) Etc.) to record the conversion operation information in the file.

7.1. 수학적 변환 매트릭스와 플래쉬의 변환 매트릭스 차이7.1. Mathematical Transformation Matrix and Flash Transformation Matrix Difference

수학적으로 삼각형의 변환을 정의하는데 필요한 매트릭스의 6개 인자의 의미는 플래쉬에서 동일하다. 하지만, 플래쉬에서는 아래의 3x3 변환 매트릭스 수학식1의 6개의 인자(Sx : Scale X, Sy : Scale Y, R0 : 1st rotate and skew, R1 : 2nd rotate and skew, Tx : Translate X, Ty : Translate Y)가 모두 실수(Real number)가 아니다. Mathematically, the meaning of the six elements of the matrix needed to define the transformation of triangles is the same in Flash. However, in Flash, the six factors of the 3x3 transformation matrix equation 1 (Sx: Scale X, Sy: Scale Y, R0: 1st rotate and skew, R1: 2nd rotate and skew, Tx: Translate X, Ty: Translate Y Are not all real numbers.

Figure 112007067493437-pat00001
Figure 112007067493437-pat00001

Scale X/Y, 1st & 2nd rotate & skew 값은 16bit fixed-point 형태의 실수이며, Translate X/Y는 Twips(1440 TWIPS = 1 inch & 72 points = 1 inch)로 처리된다. 그래서, 실제 Tx, Ty인자는 구한 값을 그대로 쓸 수 없고, 그 값을 20을 곱한 후, 정수(Integer)로 변환하여 저장된다. 즉, 플래쉬에서는 Translate X/Y 인자가 1/20(0.5) 단위 이하는 절사되므로, 다소 큰 오차가 생기는 단점이 있다.Scale X / Y, 1st & 2nd rotate & skew values are 16bit fixed-point real numbers, and Translate X / Y is treated as Twips (1440 TWIPS = 1 inch & 72 points = 1 inch). Thus, the actual Tx and Ty arguments cannot be used as they are, they are multiplied by 20, and converted into integers and stored. That is, in Flash, the Translate X / Y factor is truncated to 1/20 (0.5) units or less, so that a large error occurs.

이러한 차이점으로 인해, 수학적으로 구한 변환 매트릭스를 바로 적용하면 실제 플래쉬에서 메쉬와 메쉬 사이에 간격이 생기는 문제가 발생한다.Due to this difference, applying a mathematically obtained transformation matrix directly causes a problem of gaps between meshes in actual flash.

변환 매트릭스(transform matrix)를 구한 후, 그 매트릭스 값들 중, translate x/y을 Twips로 변환한 값이, 다행히 정수형으로만 나오면 오차가 없겠지만, 소수점 이하의 값이 있다면, 다소 오차가 생기게 된다. 어떤 형상이 확대와 이동만 한다면 화면좌표에서는 정수로만 나올 수 있다. 하지만, 회전 및 찌그러짐을 수행하면 변환 매트릭스의 translate x/y 인자도 바뀌게 되어 정수만 나올 수가 없 다. After getting the transform matrix, if the value of transform x / y is converted to Twips among the matrix values, fortunately it is only an integer, there will be no error, but if there is a value below the decimal point, there will be some error. If a shape is only zoomed in and moved, it can only appear as an integer in the screen coordinates. However, if the rotation and distortion are performed, the translate x / y factor of the transformation matrix is also changed, and only integers cannot be obtained.

근본적으로 어도비사에서 translate x/y 인자를 실수로 사용할 수 있도록, 플래쉬의 파일 형식을 바꾼다면 이러한 문제는 사라질 것이다.Essentially, if you change the file format of Flash so that Adobe uses the translate x / y argument by mistake, this problem will go away.

본 발명에서는 향후에 어도비사에서 translate x/y 인자를 실수로 변경하더라도 이용될 수 있는 메쉬와 메쉬 사이의 간격을 최소화시키기 위한 방법을 다음 장에서 제시하고자 한다.In the present invention, a method for minimizing a gap between a mesh and a mesh that can be used even if Adobe translates the translate x / y factor in the future will be presented in the next chapter.

7.2. 변환 매트릭스의 근사치 구하기7.2. Find an approximation of the transformation matrix

아래의 도9처럼, 초기 상태의 삼각형 메쉬 하나를 T0라고 하고, 현재 프레임에서의 T0의 변환된 상태의 삼각형 메쉬를 T라고 하자.As shown in Figure 9 below, one triangular mesh in the initial state is called T0, and the converted triangular mesh of T0 in the current frame is called T.

도9에서 도시된 바와 같이, T0(수학식2)과 T(수학식3)를 알고 있기 때문에, T=T0xM을 만족하는 3x3 변환 매트릭스 M(수학식4)을 구할 수 있다.As shown in Fig. 9, since T0 (Equation 2) and T (Equation 3) are known, a 3x3 transformation matrix M (Equation 4) satisfying T = T0xM can be obtained.

Figure 112007067493437-pat00002
Figure 112007067493437-pat00002

(삼각형의 초기 좌표) (Initial coordinates of the triangle)

Figure 112007067493437-pat00003
Figure 112007067493437-pat00003

(현재 프레임의 삼각형 좌표, 타겟 삼각형 매트릭스)(Triangle coordinates of the current frame, target triangle matrix)

T=T0xM 이므로, 변환 매트릭스 M은 M=T0-1xT이다.Since T = T0xM, the transformation matrix M is M = T0-1xT.

Figure 112007067493437-pat00004
Figure 112007067493437-pat00004

이렇게 구한 M을 플래쉬에서 사용하는 단위로 6개의 인자를 각각 형 변환(Type casting)한다. 초기 메쉬 T와 매트릭스 M1(M의 형 변환된 형태)을 행렬 곱을 수행하여 3x3의 매트릭스(R)를 구한다. 이렇게 구한 매트릭스 R과 현재 프레임의 메쉬 정보인 T가 일치하는지를 체크한다. Type casting is performed for each of the six parameters in units of M used in flash. A matrix R of 3 × 3 is obtained by performing matrix multiplication of the initial mesh T and the matrix M1 (type converted form of M). It is checked whether the matrix R thus obtained coincides with T, which is mesh information of the current frame.

일치여부를 체크할 때 보통의 경우는 도10처럼 일치하지 않는다.When checking for a match, a normal case does not match as shown in FIG.

도10처럼 두 개의 메쉬가 일치하지 않는 경우, 최적화된 해를 찾는 방법은 여러 가지가 있겠지만, 본 발명에서는 아래와 같은 방법을 제안한다(도11참고).If the two meshes do not match, as shown in Figure 10, there are many ways to find the optimized solution, the present invention proposes the following method (see Figure 11).

1. T의 내부의 한점 C를 찾는다.Find one point C inside T.

2. C에서 T와 R의 각 모서리까지의 거리(dT1, dT2, dT3, dR1, dR2, dR3)를 구한다. 2. Find the distance from C to the corners of T and R (dT1, dT2, dT3, dR1, dR2, dR3).

3. T와 R의 각 모서리까지의 거리의 차이(d1 = dT1 - dR1, d2 = dT2 - dR2, d3 = dT3 - dR3)를 구한다.3. Find the difference between the distances between the edges of T and R (d1 = dT1-dR1, d2 = dT2-dR2, d3 = dT3-dR3).

4. 도10처럼 d1, d2, d3 중 음수인 모서리는 안쪽으로 들어온 경우이므로, 해당 모서리를 C에서 T의 해당 모서리 방향으로 일정거리( |거리 차| *1.1)만큼 바깥으로 이동시킨다. 그리고, d1, d2, d3 중 양수인 모서리는 바깥으로 나간 경우이므로, 해당 모서리를 일정거리( |거리 차| * 0.3)만큼 안쪽으로 이동시킨다. (여기서, |거리 차| : 거리 차의 절대값)4. Since negative edges among d1, d2, and d3 as shown in FIG. 10 are inward, the corresponding edges are moved outward by a certain distance (| distance difference | * 1.1) in the direction of the corresponding corners of C to T. Since the positive edges of d1, d2, and d3 are outward, the corresponding edges are moved inward by a predetermined distance (| distance difference | * 0.3). (Where | distance difference |: absolute value of the distance difference)

5. 수정된 T를 가지고, 최적화된 해를 찾을 때까지, 도9의 과정을 다시 수행한다. 5. With the modified T, perform the process of Figure 9 again until you find the optimized solution.

위에서 제시한 방법은 타겟 메쉬 T와 변환 매트릭스를 적용한 메쉬 R을 일치시키기 위한 것이 아니라, T보다 R을 크게 하여, 메쉬와 메쉬가 조금 겹치게 하기 위한 것이다. 도11에서 보는 것처럼 내부의 한점 C로부터 T와 R의 모서리의 각도가 정확히 일치하지 않기 때문에, 본 발명의 방법이 수학적으로 검증될 수는 없지만, 그 각도의 편차가 작고, 또한 메쉬와 메쉬 사이의 간격을 없애기 위해, 메쉬와 메쉬의 겹침을 최소화 시키기고 계산 횟수를 줄이기 위한 방법으로 제안한 것이다.The above method is not intended to match the target mesh T and the mesh R to which the transformation matrix is applied, but to make the mesh and the mesh overlap slightly by making R larger than T. As shown in Fig. 11, since the angles of the corners of T and R from the inner one point C do not coincide exactly, the method of the present invention cannot be mathematically verified, but the deviation of the angle is small, and also between the mesh and the mesh. In order to eliminate the gap, the proposed method is to minimize the overlap between meshes and reduce the number of calculations.

위의 방법 대신, 삼각형의 내부의 한점 C에서 삼각형의 세 모서리를 매우 작은 단위로 조금씩 키워가면서 매트릭스를 구한다면, 속도도 매우 느리고, 얼마 만큼식 늘리거나 줄여야 하는지, 수치를 명확하게 정할 수 없다는 문제가 있다.Instead of the above method, if you obtain a matrix by increasing the three corners of the triangle in small increments at a point C inside the triangle, the speed is very slow, and you cannot determine how much you need to increase or decrease the number, and you can't specify the number clearly. There is.

예를 들어, 0.1씩 1까지 10단계만 체크하려고 해도, 3모서리에 대해 수행해야 하므로 103번인1000번을 계산하게 되어, 매우 비효율적이다. 하지만, 이 방법은 각 모서리에 1번씩만 보정한 후, 변환 매트릭스를 구하면, 최적화되지는 않지만, 삼각형과 삼각형이 어느 정도 겹침으로써, 두 삼각형 사이의 간격이 생기지 않는 삼각형이 구해진다. 최적화를 하면서, 검증을 해야 하지만, 조금이라도 속도를 개선하려면 1~2번만 수행해도 된다.For example, even if you want to check only 10 steps up to 0.1 by 1, it is necessary to perform about 3 edges, so it calculates 1000 times, 103 times, which is very inefficient. However, this method is not optimized if the transformation matrix is corrected only once in each corner, but is not optimized. However, triangles and triangles overlap to some extent, so that triangles without spacing between two triangles are obtained. You need to verify while optimizing, but you only need to do it once or twice to improve speed.

8. 본 발명의 전체적인 구성 및 흐름도8. Overall Configuration and Flowchart of the Invention

래스터 이미지를 이용하여, 캐릭터 애니메이션을 하는 플래쉬 파일을 생성하려면, 도12와 같은 순서로 진행한다.To generate a flash file for character animation using the raster image, the procedure is as shown in FIG.

1. 먼저, 디지털 기기를 이용하여 얻은 래스터 이미지를 추가한다(S1). 1. First, add a raster image obtained using a digital device (S1).

2. 추가된 이미지에 맞는 뼈대를 삽입한다(S2). 뼈대는 사람뿐만 아니라, 동/식물도 가능하며, 뼈대의 삽입은 애니메이션 정의를 편리하게 하기 위함이므로, 하지 않아도 된다.2. Insert a skeleton that fits the added image (S2). Skeleton can be not only human, but also animals and plants, and the insertion of the skeleton is for convenience of animation definition.

3. 캐릭터의 윤곽선(아웃라인)을 정의한다(S3). 캐릭터의 윤곽을 자동인식 할 수도 있지만, 단말에서는 중앙처리장치의 처리 속도를 고려하여, 사용자가 정의하도록 하였다. (자동 인식할 수도 있다.)3. Define the outline (outline) of the character (S3). Although the contour of the character can be automatically recognized, the terminal is defined by the user in consideration of the processing speed of the central processing unit. (It can also be recognized automatically.)

4. 자동 혹은 수동으로 지정된 윤곽선을 삼각형 메쉬로 분해한다(S4). 뼈대가 삽입된 경우는 메쉬의 분할이 균등분할이 아니라, 골절 부분은 다소 정밀하게, 그렇지 않는 부분은 메쉬를 크게 분할할 수 있다.4. Automatically or manually decompose the specified contour into a triangle mesh (S4). When the skeleton is inserted, the division of the mesh is not evenly divided, but the fracture portion is more precisely divided, and the portion that is not, the mesh can be largely divided.

5. 사용자는 프레임을 이동하면서, 애니메이션을 정의한다(S5). 5. The user defines an animation while moving the frame (S5).

6. 새로 생성할 플래쉬 파일을 생성한다(S6). (파일의 버전 및 프레임 개수 등의 헤더 정보는 파일 생성 후, 초기에 기록한다.)6. Create a flash file to be created (S6). (Header information such as file version and frame number is recorded at the beginning after file creation.)

7. 생성된 파일에 이미지 데이터를 기록한다(S7). 7. Record image data in the generated file (S7).

8. 분할된 메쉬의 개수만큼 삼각형 모양의 Shape을 정의한다(S8). 이때 모든 Shape은 7번에서 추가된 이미지로 채워진(bitmap filled) 형상으로 정의된다.8. Define as many triangle shapes as the number of divided meshes (S8). At this time, all shapes are defined as bitmap filled shapes added in step 7.

9. 초기 프레임을 종료하고, 다음 프레임으로 이동한다(S9). 프레임 종료 태그를 파일에 쓴다.9. End the initial frame and move to the next frame (S9). Write the end frame tag to a file.

이제 프레임을 이동하면서 8번에서 정의된 Shape의 변환 정보를 파일에 쓰기 위하여, 프레임 개수만큼 아래의 10번에서 15번까지 반복한다.Now, to move the frame and write the conversion information of the shape defined in step 8 to the file, repeat 10 to 15 times below the number of frames.

10. 먼저, 해당 프레임의 정의된 애니메이션 정보로부터 모든 메쉬를 생성한다(S10). 10. First, all meshes are generated from the defined animation information of the corresponding frame (S10).

모든 메쉬에 대해서, 각 메쉬의 변환 매트릭스를 구하기 위해서, 메쉬의 개수만큼 11번부터 14번까지 반복한다.For every mesh, repeat steps 11 through 14 for the number of meshes to find the transformation matrix for each mesh.

11. 4번에서 생성된 메쉬(MESH0[])와 10번에서 생성된 메쉬를 이용하여, 변환 매트릭스를 구한다(S11).11. Using the mesh generated in step 4 (MESH0 []) and the mesh generated in step 10, a transformation matrix is obtained (S11).

12. 변환 매트릭스 M을 보정하여, 수정된 변환 매트릭스 M1을 구한다(S12). 보정하는 방법은 앞의 7.2절에서 설명한 방법을 사용하면 된다. 보정은 현재 플래쉬 파일의 제약으로 인해 생기는 메쉬와 메쉬 사이의 간격을 줄이기 위해 필요한 과정이며, 건너뛸 수 있고, 또한 향후 플래쉬의 파일 형식이 변환 매트릭스의 모든 인자가 실수 형태로 바뀐다면, 필요 없을 수 있다.12. The transform matrix M is corrected to obtain a modified transform matrix M1 (S12). You can use the method described in 7.2. Calibration is a necessary step to reduce the gap between meshes due to the limitations of the current flash file and can be skipped. Also, if the file format of the flash in the future changes all the arguments of the conversion matrix to a real number, it may not be necessary. have.

13. 8번(S8)에서 정의된 Shape의 변환 정보를 파일에 기록한다. Shape의 아이디(id)와 12번에서 구한 변환 매트릭스(12번을 건너뛴 경우, 11번의 변환 매트릭스 사용)를 이용하여, 기록한다.13. Record the conversion information of the shape defined in step 8 (S8) to a file. Record using the ID of the shape and the transformation matrix found in 12 (if skipped 12, use the transformation matrix 11).

14. 11~13번까지 메쉬의 개수만큼 반복한 후에, 해당 프레임을 종료하고, 다음 프레임으로 이동한다(S14). 프레임 종료 태그를 파일에 쓴다.14. After repeating as many as 11 to 13 times the number of meshes, the frame is terminated, and moves to the next frame (S14). Write the end frame tag to a file.

15. 10~14번까지 프레임의 개수만큼 반복한 후에, 파일 쓰기를 종료한다.15. After repeating the number of frames from 10 to 14, finish writing the file.

도1은 본 발명을 위해 입수된 정지 영상 이미지를 도시함.1 shows a still image image obtained for the present invention.

도2는 본 발명을 위해 뼈대가 삽입된 정지 영상 이미지를 도시함.Figure 2 shows a still image image with the skeleton inserted for the present invention.

도3은 본 발명을 위해 윤곽선이 삽입된 정지 영상 이미지를 도시함.Figure 3 shows a still image image with the outline inserted for the present invention.

도4는 본 발명을 위해 삼각형 메쉬로 분할된 정지 영상 이미지를 도시함.Figure 4 shows a still image image divided into triangular mesh for the present invention.

도5는 본 발명에서 사용되는 플래쉬의 물리적 파일 구조를 도시함.5 shows the physical file structure of a flash used in the present invention.

도6은 본 발명을 위해 프레임 별 애니메이션을 정의하는 것을 도시함.Figure 6 illustrates defining frame-by-frame animation for the present invention.

도7은 본 발명을 위해 플래쉬 파일에 기록된 애니메이션 데이터의 구조를 도시함.Figure 7 shows the structure of the animation data recorded in the flash file for the present invention.

도8은 본 발명에서 사용되는 변환 매트릭스의 관계를 도시함.8 shows the relationship of the transformation matrix used in the present invention.

도9는 본 발명에서 변환 매트릭스를 구하는 과정을 도시함.9 shows a process for obtaining a transform matrix in the present invention.

도10는 본 발명에서 타겟 메쉬(T)와 상기 변환 매트릭스를 적용한 메쉬(R)가 일치하지 않는 것을 도시함.FIG. 10 shows that the target mesh T does not coincide with the mesh R to which the transformation matrix is applied in the present invention.

도11은 본 발명에서 수정된 타겟 메쉬(T)를 구하는 과정을 도시함.11 shows a process of obtaining a modified target mesh T in the present invention.

도12는 본 발명의 전체적인 흐름도.12 is an overall flow chart of the present invention.

Claims (9)

애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법에 있어서,In the processing method for reducing the animation data to animate the character in the mobile communication terminal, 사용자로부터 캐릭터 애니메이션하기 위한 정지 영상 이미지 데이터를 입수하는 단계;Obtaining still image image data for character animation from a user; 상기 정지 영상에서 캐릭터 애니메이션하고자 하는 부분에 대한 윤곽선을 정의하는 단계;Defining an outline of a portion of the still image to be animated; 상기 윤곽선 내부의 상기 캐릭터 애니메이션하고자 하는 부분을 삼각형 메쉬로 분할하는 단계;Dividing the portion of the contour to be animated into a triangle mesh; 상기 분할된 삼각형 메쉬를 비트맵으로 채워진 형상으로 정의하는 단계;Defining the divided triangular mesh into a shape filled with a bitmap; 프레임을 이동해 가면서, 해당 프레임의 캐릭터를 변환하여 매 프레임 별 애니메이션을 정의하는 단계;Moving the frame and converting the characters of the frame to define an animation for each frame; 초기 상태의 삼각형 메쉬의 초기 좌표와 매 프레임의 변경된 좌표를 이용하여 변환 매트릭스를 구하여 각 삼각형 메쉬의 변환 매트릭스 정보를 애니메이션 파일에 기록하는 단계를 포함하고,Obtaining a transformation matrix by using the initial coordinates of the triangular mesh in the initial state and the changed coordinates of each frame, and recording the transformation matrix information of each triangular mesh in an animation file, 상기 애니메이션은 플래쉬 애니메이션 엔진을 이용하고,The animation uses a flash animation engine, 상기 변환 매트릭스는, 수학적으로 도출된 변환 매트릭스를 상기 플래쉬 애니메이션 엔진에 적용시에 발생하는 메쉬들 사이의 간격을 최소화하는 과정을 거친 후의 변환 매트릭스인 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.The transformation matrix is a transformation matrix after the process of minimizing the spacing between the meshes generated when the mathematically derived transformation matrix is applied to the flash animation engine. Processing method for character animation. 제1항에 있어서, The method of claim 1, 상기 입수된 정지 영상의 뼈대를 삽입하는 단계를 더 포함하는 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.And inserting a skeleton of the obtained still image to reduce animation data and to animate a character in the mobile communication terminal. 삭제delete 삭제delete 제1항에 있어서, The method of claim 1, 상기 최소화 과정은 메쉬들이 조금씩 겹치게 하는 과정인 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.The minimization process is a process for making the animation data characterized in that the meshes overlap a little by little, the processing method for character animation in the mobile communication terminal. 제5항에 있어서, The method of claim 5, 상기 겹치게 하는 과정은, The overlapping process, 타겟 메쉬(T)의 한 점(C)을 찾는 단계;Finding a point C of the target mesh T; 상기 한 점(C)에서 상기 타겟 메쉬(T)와 상기 변환 매트릭스를 적용한 메쉬(R)의 각 모서리까지의 제1거리들(dT1, dT2, dT3, dR1, dR2, dR3)을 구하는 단계;Obtaining first distances (dT1, dT2, dT3, dR1, dR2, dR3) from each point (C) to each edge of the target mesh (T) and the mesh (R) to which the transformation matrix is applied; 상기 제1거리들을 이용하여, 상기 타겟 메쉬(T)와 상기 변환 매트릭스를 적용한 메쉬(R)의 각 모서리까지의 차이들(d1 = dT1 - dR1, d2 = dT2 - dR2, d3 = dT3 - dR3)을 구하는 단계;Differences (d1 = dT1-dR1, d2 = dT2-dR2, d3 = dT3-dR3) to each corner of the target mesh T and the mesh R to which the transformation matrix is applied using the first distances Obtaining a; 상기 차이들(d1, d2, d3) 중 음수인 모서리는 안쪽으로 들어온 경우이므로, 해당 모서리를 한 점(C)에서 상기 타겟 메쉬(T)의 해당 모서리 방향으로 일정거리만큼 바깥으로 이동시키고, 상기 차이들(d1, d2, d3) 중 양수인 모서리는 바깥으로 나간 경우이므로, 해당 모서리를 일정거리 만큼 안쪽으로 이동시키는 단계를 통해 수행되는 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.Since the negative edges of the differences d1, d2, and d3 are inwards, the corresponding edges are moved outwardly by a predetermined distance in the direction of the corresponding edge of the target mesh T from a point C. Since the positive edges of the differences d1, d2, and d3 are outward, the character animation in the mobile communication terminal is reduced by reducing the animation data, which is performed by moving the corresponding corners inward. Treatment way for you. 제1항에 있어서, The method of claim 1, 상기 이동통신 단말기는 휴대폰인 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.And the mobile communication terminal is a mobile phone to reduce the animation data. 제1항에 있어서, The method of claim 1, 상기 이동통신 단말기는 카메라폰인 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.And the mobile communication terminal is a camera phone, thereby reducing animation data. 제1항에 있어서, The method of claim 1, 상기 이동통신 단말기는 PDA인 것을 특징으로 하는 애니메이션 데이터를 경감시켜서 이동 통신 단말기에서 캐릭터 애니메이션하기 위한 처리 방법.And the mobile communication terminal is a PDA.
KR1020070094675A 2007-09-18 2007-09-18 Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data KR100903394B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070094675A KR100903394B1 (en) 2007-09-18 2007-09-18 Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070094675A KR100903394B1 (en) 2007-09-18 2007-09-18 Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data

Publications (2)

Publication Number Publication Date
KR20070099504A KR20070099504A (en) 2007-10-09
KR100903394B1 true KR100903394B1 (en) 2009-06-18

Family

ID=38804877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070094675A KR100903394B1 (en) 2007-09-18 2007-09-18 Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data

Country Status (1)

Country Link
KR (1) KR100903394B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101658239B1 (en) 2010-04-15 2016-09-30 삼성전자주식회사 Method and apparatus for generating of animation message
CN111063009B (en) * 2019-12-18 2021-04-06 山东山科智能科技有限公司 Chinese character writing animation demonstration method and device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100412342B1 (en) * 2000-08-29 2003-12-31 (주)디지탈아리아 Method and system for processing moving picture data based upon vector graphic on wireless network
KR100610569B1 (en) * 2003-10-14 2006-08-09 가시오게산키 가부시키가이샤 Photographing device, image processor, image-processing method of photographing device
JP2007133573A (en) * 2005-11-09 2007-05-31 Oki Electric Ind Co Ltd Animation creation method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100412342B1 (en) * 2000-08-29 2003-12-31 (주)디지탈아리아 Method and system for processing moving picture data based upon vector graphic on wireless network
KR100610569B1 (en) * 2003-10-14 2006-08-09 가시오게산키 가부시키가이샤 Photographing device, image processor, image-processing method of photographing device
JP2007133573A (en) * 2005-11-09 2007-05-31 Oki Electric Ind Co Ltd Animation creation method and system

Also Published As

Publication number Publication date
KR20070099504A (en) 2007-10-09

Similar Documents

Publication Publication Date Title
CN108022212B (en) High-resolution picture generation method, generation device and storage medium
CN110458918B (en) Method and device for outputting information
CN110503703B (en) Method and apparatus for generating image
KR100924689B1 (en) Apparatus and method for transforming an image in a mobile device
EP3334143B1 (en) Tiling process for digital image retrieval
US9240070B2 (en) Methods and systems for viewing dynamic high-resolution 3D imagery over a network
US8456467B1 (en) Embeddable three-dimensional (3D) image viewer
CN108833784B (en) Self-adaptive composition method, mobile terminal and computer readable storage medium
CN109996023B (en) Image processing method and device
CN111507333B (en) Image correction method and device, electronic equipment and storage medium
WO2020215644A1 (en) Video image processing method and apparatus
KR102461919B1 (en) Technology to capture and edit dynamic depth images
CN111652796A (en) Image processing method, electronic device, and computer-readable storage medium
JP2014071850A (en) Image processing apparatus, terminal device, image processing method, and program
CN110163866A (en) A kind of image processing method, electronic equipment and computer readable storage medium
CN110290285B (en) Image processing method, image processing apparatus, image processing system, and medium
CN111353965B (en) Image restoration method, device, terminal and storage medium
CN113256499B (en) Image splicing method, device and system
KR100903394B1 (en) Processing Method for Character Animation in Mobile Terminal By Reducing Animation Data
US10123052B2 (en) Elimination of artifacts from lossy encoding of digital images by color channel expansion
US20170093434A1 (en) System and Method For Improving Graphics And Other Signal Results Through Signal Transformation And Application of Dithering
CN113938667A (en) Video data transmission method and device based on video stream data and storage medium
JP2004264919A (en) Image processing method
US20170109329A1 (en) Method, system and apparatus for processing a document
CN114187408B (en) Three-dimensional face model reconstruction method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee