KR102343562B1 - Activity character creating method in virtual environment based on sketch character - Google Patents

Activity character creating method in virtual environment based on sketch character Download PDF

Info

Publication number
KR102343562B1
KR102343562B1 KR1020200042685A KR20200042685A KR102343562B1 KR 102343562 B1 KR102343562 B1 KR 102343562B1 KR 1020200042685 A KR1020200042685 A KR 1020200042685A KR 20200042685 A KR20200042685 A KR 20200042685A KR 102343562 B1 KR102343562 B1 KR 102343562B1
Authority
KR
South Korea
Prior art keywords
sketch
picture
character
mesh
image
Prior art date
Application number
KR1020200042685A
Other languages
Korean (ko)
Other versions
KR20210034468A (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 (주)셀빅
Publication of KR20210034468A publication Critical patent/KR20210034468A/en
Application granted granted Critical
Publication of KR102343562B1 publication Critical patent/KR102343562B1/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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • 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
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 사용자가 임의로 스케치한 2차원적 그림(캐릭터)을 정확하게 추출하고, 추출된 그림의 관절부를 명확하게 추출하여 해당 2차원적 그림에 맞는 최적의 자연스러운 활동 패턴으로 디스플레이되도록 하여 더욱 현실감 있고 사용자의 흥미를 극대화할 수 있는, 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 관한 것이다. 본 발명에 따르면, 사용자가 용지에 그린 스케치 그림과 그 스케치 그림의 배경을 포함하는 전체 이미지를 독취하는 스케치그림 독취 단계; 상기 독취한 전체 이미지 중 스케치 그림만을 추출하는 스케치그림 추출 단계; 상기 추출된 스케치 그림을 분석하여 스케치그림의 종류를 파악하고 결정하는 스케치그림 종류 파악 단계; 상기 결정된 스케치그림의 종류를 기반으로 상기 스케치 그림이 애니메이팅되도록 애니메이팅 정보를 생성하는 그림이미지 애니메이팅용 정보 생성 단계; 상기 생성된 애니메이팅용 정보를 스케치 그림에 맵핑하고, 맵핑된 스케치 그림을 애니메이팅(animating)하는 맵핑-애니메이팅 단계;를 포함하는 것을 특징으로 하는 스케치 기반의 활동캐릭터 생성 방법이 제공된다.The present invention accurately extracts a two-dimensional figure (character) sketched by a user, and clearly extracts the joint part of the extracted figure so that it is displayed as an optimal natural activity pattern suitable for the two-dimensional figure, making it more realistic and user-friendly. It relates to a sketch-based active character creation method for creating a sketch-based character that can maximize interest in a virtual environment as an active character in a virtual environment. According to the present invention, a sketch drawing reading step of reading the entire image including the sketch drawing drawn on the paper by the user and the background of the sketch drawing; a sketch picture extraction step of extracting only a sketch picture from among all the read images; a sketch drawing type identification step of analyzing the extracted sketch picture to identify and determine the type of the sketch picture; a picture image animating information generating step of generating animating information so that the sketch picture is animated based on the determined type of the sketch picture; There is provided a sketch-based active character creation method comprising: mapping the generated animation information to a sketch figure, and animating the mapped sketch figure; a mapping-animating step.

Description

스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법 {ACTIVITY CHARACTER CREATING METHOD IN VIRTUAL ENVIRONMENT BASED ON SKETCH CHARACTER}How to create a sketch-based active character to create a sketch-based character as an active character in a virtual environment {ACTIVITY CHARACTER CREATING METHOD IN VIRTUAL ENVIRONMENT BASED ON SKETCH CHARACTER}

본 발명은 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 관한 것으로, 더욱 상세하게는 사용자가 임의로 스케치한 2차원적 그림(캐릭터)을 정확하게 추출하고, 추출된 그림의 관절부를 명확하게 추출하여 해당 2차원적 그림에 맞는 최적의 자연스러운 활동 패턴으로 디스플레이되도록 하여 더욱 현실감 있고 사용자의 흥미를 극대화할 수 있는, 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 관한 것이다.The present invention relates to a sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment, and more particularly, accurately extracts and extracts a two-dimensional figure (character) sketched by a user arbitrarily. Creating a sketch-based character as an active character in a virtual environment that is more realistic and maximizes the user's interest by clearly extracting the joint part of the picture and displaying it as an optimal natural activity pattern suitable for the two-dimensional picture It relates to a sketch-based activity character creation method for

본 발명은 한국콘텐츠진흥원이 지원하는 문화기술연구개발사업으로 수행된 연구결과이다(과제번호: 1375026811, 연구과제명: 에듀테인먼트의 창의 미술 인터렉티브 콘텐츠를 위한 증강현실 애니메이션 및 맵핑 기술 개발) This invention is the result of research conducted as a cultural technology R&D project supported by the Korea Creative Content Agency (task number: 1375026811, research project name: augmented reality animation and mapping technology development for creative art interactive content of edutainment)

현재 미디어 및 인터넷 관련 기술의 발달로 인하여 컴퓨터 사용자에게 편리하고 컴퓨터 사용자의 이용 효과를 증진시킬 수 있도록 각종 동영상이 구현되는 웹페이지를 구성하는 콘텐츠 구현 방법이 개발되어 실시되고 있으며, 이로 인하여 정적인 이미지 형태에서 벗어나 동적인 이미지가 포함된 형태로 콘텐츠를 구성하여 정보를 제공함으로써 컴퓨터 이용자의 관심과 만족도를 증대시키고 있다.Currently, due to the development of media and Internet-related technologies, a content implementation method for composing a web page in which various moving images are implemented is developed and implemented so as to be convenient for computer users and to enhance the use effect of computer users. It is increasing the interest and satisfaction of computer users by providing information by composing the contents in a form that includes dynamic images instead of the form.

인터넷을 이용한 서비스는 이제 전자 상거래, 엔터테인먼트, 원격 교육 등의 분야로 그 활용이 증대되고 있으며 이에 따라 각 이용 분야별로 필요한 콘텐츠 정보를 검색하고 제공하는 방법이 개발되고 있다.The use of services using the Internet is now increasing in fields such as e-commerce, entertainment, and distance education, and accordingly, methods for searching and providing necessary content information for each field of use are being developed.

특히, 최근 들어 전기전자 기술 및 정보통신 기술의 발전과 스마트폰, 스마트 패드를 비롯한 각종 스마트 기기의 대중적 보급에 따라 직관적인 인터페이스 및 터치스크린 기반으로 된 다양한 형태의 편의기기가 일상생활에 밀접한 영향을 주고 있다. 이에 따라 이용자들은 새롭게 변화되는 미디어 디스플레이 환경 속에서 좀 더 새로운 것을 요구하는 한편, 빠른 적응력으로 새로운 편의기기들을 유용하게 이용하고 있다.In particular, with the recent development of electrical and electronic technology and information and communication technology and the popular spread of various smart devices including smartphones and smart pads, various types of convenience devices based on intuitive interfaces and touch screens have a close influence on daily life. are giving Accordingly, users are demanding newer things in the newly changing media display environment, while using new convenience devices with quick adaptability.

이러한 미디어 디스플레이 환경과 관련하여, 이용자들의 조작에 따른 다양한 미디어 디스플레이 환경을 제공하기 위해서는 일반 영상콘텐츠보다는 캐릭터나 게임 등의 영상콘텐츠가 유리한 측면이 있다.In relation to such a media display environment, in order to provide a variety of media display environments according to user manipulation, image content such as characters or games is advantageous rather than general image content.

그러나 이용자들의 실시간 즉각적인 상호작용을 반영하는 영상 콘텐츠는 일반적으로 소형 화면사이즈를 갖는 스마트폰이나 스마트 패드 등의 스마트 기기에 한정되는 단점이 있다.However, video content reflecting real-time immediate interactions of users is generally limited to smart devices such as smartphones or smart pads having a small screen size.

또한, 종래에는 영상 콘텐츠의 캐릭터는 사전 제작에 의해 캐릭터의 몸동작과 얼굴 표정을 생성하기 때문에, 캐릭터는 정형화된 패턴, 즉 정해진 시나리오대로 동작을 연출하는 수동적인 캐릭터 기능만이 가능한 한계가 있으며, 사용자의 흥미를 유발하는데 한계가 따르는 문제점이 있었다.In addition, in the prior art, since the character of the video content generates the body movement and facial expression of the character by pre-production, the character has a limitation in that only a passive character function that directs the movement according to a standardized pattern, that is, a predetermined scenario, is possible, and the user There was a problem in that there was a limit to arousing the interest of

이에 따라 최근 날로 발전하고 있는 미디어 디스플레이 환경에서 사용자가 적극적으로 참여하고 흥미를 유발할 수 있고, 사용자가 직접 그린 캐릭터 그대로 반영되면서 그 캐릭터에 맞는 자연스러운 움직음을 구현할 수 있는 콘텐츠의 개발이 필요한 실정이다.Accordingly, there is a need to develop content that allows users to actively participate and arouse interest in a media display environment that is developing day by day, and is reflected in the character drawn by the user as it is, and can implement natural movement suitable for the character.

대한민국 등록특허공보 10-0301962(2001.09.26. 공고)Republic of Korea Patent Publication No. 10-0301962 (2001.09.26. Announcement) 대한민국 등록특허공보 10-0915084(2009.09.02. 공고)Republic of Korea Patent Publication No. 10-0915084 (2009.09.02. Announcement) 대한민국 공개특허공보 10-2002-0049384(2002.06.26. 공개)Korean Patent Publication No. 10-2002-0049384 (published on June 26, 2002) 대한민국 공개특허공보 10-2014-0061951(2014.05.22. 공개)Korean Patent Publication No. 10-2014-0061951 (published on May 22, 2014) 대한민국 공개특허공보 10-2002-0086306(2002.11.08. 공개)Korean Patent Publication No. 10-2002-0086306 (published on Aug. 1, 2002)

따라서, 상기한 종래의 문제점을 해결하기 위한 본 발명은, 사용자가 임의로 스케치한 2차원적 그림(캐릭터)을 정확하게 추출하고, 추출된 그림의 활동 뼈대와 관절부를 명확하게 추출하여 해당 2차원적 그림에 맞는 최적의 자연스러운 활동 패턴으로 디스플레이되도록 하여 더욱 현실감 있고 사용자의 흥미를 극대화할 수 있는, 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법을 제공하는데 그 목적이 있다.Therefore, the present invention for solving the above-mentioned conventional problems accurately extracts a two-dimensional figure (character) sketched by a user, and clearly extracts the activity skeleton and joint part of the extracted figure to obtain a corresponding two-dimensional figure. The purpose is to provide a sketch-based active character creation method to create a sketch-based character as an active character in a virtual environment, which is more realistic and maximizes user interest by displaying the optimal natural activity pattern suitable for have.

본 발명의 해결과제는 이상에서 언급한 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems to be solved of the present invention are not limited to those mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 본 발명의 목적들 및 다른 특징들을 달성하기 위한 본 발명의 일 관점에 따르면, 사용자가 용지에 그린 스케치 그림과 그 스케치 그림의 배경을 포함하는 전체 이미지를 독취하는 스케치그림 독취 단계; 상기 독취한 전체 이미지 중 스케치 그림만을 추출하는 스케치그림 추출 단계; 상기 추출된 스케치 그림을 분석하여 스케치그림의 종류를 파악하고 결정하는 스케치그림 종류 파악 단계; 상기 결정된 스케치그림의 종류를 기반으로 상기 스케치 그림이 애니메이팅되도록 애니메이팅 정보를 생성하는 그림이미지 애니메이팅용 정보 생성 단계; 상기 생성된 애니메이팅용 정보를 스케치 그림에 맵핑하고, 맵핑된 스케치 그림을 애니메이팅(animating)하는 맵핑-애니메이팅 단계;를 포함하는 것을 특징으로 하는 스케치 기반의 활동캐릭터 생성 방법이 제공된다.According to one aspect of the present invention for achieving the above objects and other features of the present invention, a sketch drawing reading step of reading the entire image including the sketch figure drawn by the user on the paper and the background of the sketch figure; a sketch picture extraction step of extracting only a sketch picture from among all the read images; a sketch drawing type identification step of analyzing the extracted sketch picture to identify and determine the type of the sketch picture; a picture image animating information generating step of generating animating information so that the sketch picture is animated based on the determined type of the sketch picture; There is provided a sketch-based active character creation method comprising: mapping the generated animation information to a sketch figure, and animating the mapped sketch figure; a mapping-animating step.

본 발명에 있어서, 상기 스케치그림 독취 단계는 이미지 센서를 포함하는 촬영 수단을 통해 독취하고, 상기 스케치그림 추출 단계는 독취된 이미지에서 HSV 색공간의 차원변환을 이용하여 그림의 색상을 바이너리(Binary)화시켜 추출하되, 아래의 RGB to HSV 색공간 변환 공식을 이용하여 추출하도록 이루어지는 것을 특징으로 한다.In the present invention, the step of reading the sketch picture is read through a photographing means including an image sensor, and the step of extracting the sketch picture uses the dimensional transformation of the HSV color space in the read image to convert the color of the picture to binary. However, it is characterized in that it is extracted using the following RGB to HSV color space conversion formula.

Figure 112020036470826-pat00001
Figure 112020036470826-pat00001

(여기에서, H=색상, S=채도, V=명도이며, RGB는 적녹청임)(Where, H = Hue, S = Saturation, V = Brightness, and RGB is Red Cyan)

본 발명에 있어서, 상기 스케치그림 종류 파악 단계는, 미리 구축되어 있는 이미지 데이터베이스의 DB 이미지와 상기 바이너리(Binary)화되어 추출된 스케치그림 이미지를 딥러닝(Deep Learning)으로 비교 실행하여 파악하도록 이루어지며, 상기 애니메이팅용 정보 생성 단계는, 상기 바이너리(Binary)화되어 추출된 스케치 그림이미지를 기준으로 메쉬(mesh)를 생성하는 메쉬 생성 단계와, 상기 바이너리(Binary)화되어 추출된 스케치 그림이미지를 대상으로 뼈대 및 관절포인트를 생성하는 뼈대-관절포인트 생성 단계, 및 상기 생성된 뼈대와 관절포인트가 적용된 최종 뼈대를 상기 생성된 메쉬에 적용하는 메쉬 스키닝 단계를 포함할 수 있다.In the present invention, the step of identifying the type of sketch drawing is made to understand by comparing the DB image of the image database built in advance with the binary (Binary) and extracted sketch drawing image by deep learning, , The step of generating the information for animating includes a mesh generation step of generating a mesh based on the binary (Binary) and extracted sketch picture image, and the binary (Binary) and extracted sketch picture image. It may include a skeleton-joint point generation step of generating a skeleton and a joint point as a target, and a mesh skinning step of applying the final skeleton to which the generated skeleton and joint point are applied to the generated mesh.

본 발명에 있어서, 상기 메쉬 생성 단계는 들로네 삼각분할(Delaunay Triangulation) 기법을 이용하여 폴리곤 메쉬가 적용된 캐릭터 메쉬를 생성하도록 이루어지고, 상기 뼈대-관절포인트 생성 단계는, 상기 이진화된스케치 그림의 모든 픽셀에 대해 하나의 픽셀을 중심으로 주변 픽셀들을 검사하여 설정된 픽셀 검사값에 만족하지 않은 픽셀을 제거하여 뼈대를 추출하며, 상기 추출된 뼈대에 있어서의 하나의 픽셀을 중심으로 주변 픽셀들을 검사하여 설정된 흑백의 이진화 픽셀개수에 기반하여 복수의 관절을 추출하도록 이루어지는 특징으로 한다.In the present invention, the mesh generation step is made to generate a character mesh to which a polygon mesh is applied using a Delaunay triangulation technique, and the bone-joint point generation step includes all pixels of the binarized sketch figure. , the skeleton is extracted by removing pixels that are not satisfied with the set pixel inspection value by examining the surrounding pixels centered on one pixel, It is characterized in that it is made to extract a plurality of joints based on the number of binarized pixels.

본 발명에 있어서, 상기 뼈대-관절포인트 생성 단계에서 추출된 복수의 관절 간을 세분화하는 관절포인트 세분화 과정을 더 포함하는 것이 바람직하다.In the present invention, it is preferable to further include a joint point subdivision process of subdividing between a plurality of joints extracted in the bone-joint point generation step.

본 발명에 있어서, 상기 관절포인트 세분화 과정은 현재 픽셀을 중심으로 주변에 연결된 픽셀이 있는지 여부를 판정하고, 상기 현재 픽셀에 대하여 주변에 연결된 픽셀이 없는 경우, 분할 점(Segment Point)으로 표시하고, 상기 현재 픽셀에 대하여 주변에 연결된 픽셀이 있는 경우 다른 특징 점인지 여부를 판단하여, 다른 특징 점인 경우 상기 분할점으로 표시하는 과정으로 진행하고, 다른 특징 점이 아닌 것으로 판단하는 경우, 이동거리가 미리 정의된 세그먼트 길이(segment length)보다 큰지 여부를 판단하고, 상기 이동거리가 미리 정의된 세그먼트 길이보다 큰 경우, 분할 점 표시와 이동거리를 초기화하고, 이동거리가 미리 정의된 세그먼트 길이보다 작은 경우, 이동한 픽셀을 삭제하도록 이루어지는 것을 특징으로 한다.In the present invention, the joint point segmentation process determines whether there is a pixel connected to the periphery around the current pixel, and if there is no pixel connected to the periphery with respect to the current pixel, it is displayed as a segment point, If there is a neighboring pixel with respect to the current pixel, it is determined whether it is a different feature point, and if it is a different feature point, the process is displayed as the dividing point. It is determined whether or not it is greater than the segment length, and when the movement distance is greater than a predefined segment length, the division point display and movement distance are initialized, and when the movement distance is smaller than the predefined segment length, movement It is characterized in that it is made to erase one pixel.

본 발명에 있어서, 상기 메쉬 스키닝 단계는 상기 세분화된 관절포인트 및 세분화된 관절포인트를 포함하는 뼈대를 최종 뼈대로 하여 상기 메쉬 생성 단계에서 생성된 캐릭터 메쉬에 맵핑하도록 이루어질 수 있다.In the present invention, the mesh skinning step may be made to map the subdivided joint points and the skeleton including the subdivided joint points to the character mesh generated in the mesh generating step as a final skeleton.

본 발명에 있어서, 상기 메쉬 스키닝 단계는 상기 메쉬의 버텍스(vertex)에서 어떤 위치의 버텍스의 관절포인트를 기준으로 움직이게 할 것인지 정의하도록 소정 관절포인트에 대하여 가중치(Weight)를 부여한 맵핑 애니메이팅용 정보를 생성하도록 이루어질 수 있다.In the present invention, in the mesh skinning step, information for mapping animation in which a weight is given to a predetermined joint point to define which position of the vertex of the mesh to move based on the joint point of the vertex of the mesh. can be made to create

본 발명에 있어서, 상기 가중치 부여는 모든 버텍스(V) 중에서 임의의 버텍스(Vi)와 모든 관절포인트 B의 거리를 유클리디안 거리(Euclidean Distance) 공식을 이용하여 구한 뒤 최단 거리 순으로 정렬한 직선 D 집합(NearBoneList)을 구하고, 상기 직선 D의 집합인 NearBoneList에서 가장 가까운 n개의 관절을 임의의 버텍스(Vi)와 연결하고 가중치를 부여하되, 상기 임의의 버텍스와 가까운 관절일수록 큰 가중치를 주도록 이루어지며, 상기 맵핑-애니메이팅 단계는 상기 맵핑 애니메이팅용 정보를 기반으로 애니메이팅 맵핑(animation mapping)하도록 이루어질 수 있다.In the present invention, in the weighting, the distance between any vertex Vi and all joint points B among all vertices V is obtained using the Euclidean Distance formula, and then a straight line arranged in the order of the shortest distance. A set D (NearBoneList) is obtained, and the n joints closest to the NearBoneList, which is the set of straight lines D, are connected with a random vertex (Vi) and weighted, but the closer the joint to the random vertex, the greater the weight is given. , the mapping-animating step may be performed to perform an animation mapping based on the mapping animating information.

본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 의하면, 사용자가 스케치한 캐릭터 자체를 정확히 인식 추출하고, 해당 캐릭터에 최적으로 적합한 활동 뼈대와 관절부를 추출하여 활동성을 부여함으로써 가상환경에서 현실감있고 자연스럽게 활동 캐릭터로 구현될 수 있도록 하여 사용자의 흥미와 몰입감을 극대화할 수 있는 효과가 있다.According to the sketch-based active character creation method for creating a sketch-based character as an active character in a virtual environment according to the present invention, the user accurately recognizes and extracts the character sketched by the user, and the active skeleton and joint part optimally suitable for the character It has the effect of maximizing the user's interest and immersion by allowing them to be realized as realistic and natural active characters in a virtual environment by extracting them and giving them activity.

또한, 본 발명은 2D 그림의 인식을 위한 인식 용도의 마커가 구비되는 용지를 필요로 하지 않고 어떠한 용지라도 사용할 수 있으며, 게임, 엔터테인먼트, 교육, 홍보, 광고, 전시 등 다양한 미디어 콘텐츠에 적용할 수 있음으로써 미디어 콘텐츠를 더욱 풍부하고 다양하게 구성할 수 있어 제품 경쟁력을 확보할 수 있는 효과가 있다.In addition, the present invention does not require a paper equipped with a marker for recognition for the recognition of 2D pictures, any paper can be used, and it can be applied to various media contents such as games, entertainment, education, publicity, advertisement, and exhibition. This has the effect of securing product competitiveness by being able to compose more rich and diverse media content.

본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확하게 이해되어 질 수 있을 것이다.Effects of the present invention are not limited to those mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 과정을 나타내는 플로차트이다.
도 2는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법의 스케치그림 추출 단계에서 HSV 색공간의 차원변환을 이용하여 그림의 색상을 바이너리(Binary)화시켜 추출하는 예시에 대한 전(A)과 후(B)를 나타내는 도면이다.
도 3은 구글이 제작한 Inception v3 Neural Networks의 Architecture의 개요를 나타내는 도면이다.
도 4는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 그림종류 파악 단계에 대한 예시를 나타내는 예시도이다.
도 5는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 애니메이팅용 정보 생성 단계의 메쉬 생성 과정을 통해 폴리곤 메쉬가 적용된 그림 결과물로서, (A)는 들로네 삼각분할 기법이 반영된 그림이며, (B)는 외곽 라인 삼각형 제거 후의 그림이다.
도 6은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 뼈대 추출을 위하여 픽셀을 제거하여 세선화하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 이진화된 스케치그림(A)에서 세선화 알고리즘을 통해 추출한 스케치 그림의 뼈대(B)에 대한 예시를 나타내는 도면이다.
도 8은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 추출을 위한 픽셀 검사 예시 및 기준 픽셀 P1의 함수 결과 값을 예시한 도면이다.
도 9는 도 8에 따른 결과 값에 따라 관절포인트를 추출한 그림의다 예시를 나타내는 도면이다.
도 10은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 세분화 과정을 거쳐 관절 세분화가 적용된 그림의 예시이다.
도 11은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 세분화 과정을 나타내는 플로차트이다.
1 is a flowchart illustrating a sketch-based active character creation process for generating a sketch-based character as an active character in a virtual environment according to the present invention.
2 is a diagram showing the color of a picture by using a dimensional transformation of the HSV color space in the sketch picture extraction step of the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. ) is a diagram showing before (A) and after (B) for an example of extraction.
3 is a diagram showing an outline of the architecture of Inception v3 Neural Networks produced by Google.
4 is an exemplary diagram illustrating an example of a figure type identification step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention.
5 is a drawing result to which a polygon mesh is applied through the mesh generation process of the animation information generation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. , (A) is a picture reflecting the Delaunay triangulation technique, and (B) is a picture after removing the outline triangle.
6 is a method of thinning by removing pixels for bone extraction in the bone-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention; It is a drawing for explaining.
7 is a thinning algorithm in the binarized sketch figure (A) in the bone-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. It is a diagram showing an example of the skeleton (B) of the sketch figure extracted through the
8 is an example of pixel inspection for joint extraction and reference pixel P1 in the skeleton-joint point generation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. It is a diagram illustrating a function result value.
9 is a diagram illustrating a multi-example of a figure in which joint points are extracted according to the result value according to FIG. 8 .
10 is an example of a figure to which joint segmentation is applied through the joint segmentation process in the skeleton-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention; to be.
11 is a flowchart illustrating a joint subdivision process in the bone-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention.

본 발명의 추가적인 목적들, 특징들 및 장점들은 다음의 상세한 설명 및 첨부도면으로부터 보다 명료하게 이해될 수 있다. Additional objects, features and advantages of the present invention may be more clearly understood from the following detailed description and accompanying drawings.

본 발명의 상세한 설명에 앞서, 본 발명은 다양한 변경을 도모할 수 있고, 여러 가지 실시 예를 가질 수 있는바, 아래에서 설명되고 도면에 도시된 예시들은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Prior to the detailed description of the present invention, the present invention can make various changes and can have various embodiments, and the examples described below and shown in the drawings are not intended to limit the present invention to specific embodiments. No, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When an element is referred to as being “connected” or “connected” to another element, it is understood that it may be directly connected or connected to the other element, but other elements may exist in between. it should be On the other hand, when it is said that a certain element is "directly connected" or "directly connected" to another element, it should be understood that the other element does not exist in the middle.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도는 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used herein are used only to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

또한, 명세서에 기재된 "...부", "...유닛", "...모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as "...unit", "...unit", "...module", etc. described in the specification mean a unit that processes at least one function or operation, which includes hardware or software or hardware and It can be implemented by a combination of software.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components are given the same reference numerals regardless of the reference numerals, and the overlapping description thereof will be omitted. In describing the present invention, if it is determined that a detailed description of a related known technology may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted.

또한, 본원 명세서 전체에서, 어떤 단계가 다른 단계와 "상에"또는 "전에" 위치하고 있다고 할 때, 이는 어떤 단계가 다른 단계와 직접적 시계열적인 관계에 있는 경우 뿐만 아니라, 각 단계 후의 혼합하는 단계와 같이 두 단계의 순서에 시계열적 순서가 바뀔 수 있는 간접적 시계열적 관계에 있는 경우와 동일한 권리를 포함한다.In addition, throughout this specification, when a step is located “on” or “before” another step, this means not only a case in which a step is in a direct time-series relationship with another step, but also a step of mixing after each step and Likewise, the order of two stages includes the same rights as in the case of an indirect time series relationship in which the time series order can be changed.

이하, 본 발명의 바람직한 실시 예에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 대하여 첨부 도면을 참조하여 상세히 설명한다. 아래 설명되는 각 단계와 기법은 공지의 프로그래밍 언어 소프트웨어(예를 들면, C++ 등)를 통해 구현되는 것임을 전제로 한다.Hereinafter, a sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings. It is assumed that each step and technique described below is implemented through a known programming language software (eg, C++, etc.).

먼저, 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 대하여 도 1을 참조하여 상세히 설명한다. 도 1은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 과정을 나타내는 플로차트이다.First, a sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention will be described in detail with reference to FIG. 1 . 1 is a flowchart illustrating a sketch-based active character creation process for generating a sketch-based character as an active character in a virtual environment according to the present invention.

본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법은, 도 1에 나타낸 바와 같이, 사용자가 용지에 그린 스케치 그림 또는 스케치 캐릭터(이하, '스케치 그림'으로 통칭함)와 그 스케치 그림의 배경을 포함하는 전체 이미지를 독취하는 스케치그림 독취 단계(S100); 상기 스케치그림 독취 단계(S100)에서 읽어들인 전체 이미지 중 스케치 그림만을 추출하는 스케치그림 추출 단계(S200); 상기 스케치그림 추출 단계(S200)에서 추출된 스케치 그림을 분석하여 스케치그림의 종류를 파악하고 결정하는 스케치그림 종류 파악 단계(S300); 상기 스케치그림 종류 파악 단계(S300)에서 결정된 스케치그림의 종류를 기반으로 상기 스케치 그림(실제 그림)이 애니메이팅되도록 애니메이팅 정보를 생성하는 그림이미지 애니메이팅용 정보 생성 단계(S400); 상기 애니메이팅용 정보 생성 단계(S400)에서 생성된 애니메이팅용 정보를 스케치 그림(실제 그림)에 맵핑하고, 맵핑된 스케치 그림(실제 그림)이 적용될 가상환경의 콘텐츠의 상태 정보(status)에 따라 맵핑된 스케치 그림을 애니메이팅(animating)하는 맵핑-애니메이팅 단계(S500);를 포함한다.A sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention, as shown in FIG. ') and a sketch picture reading step of reading the entire image including the background of the sketch picture (S100); a sketch picture extraction step (S200) of extracting only a sketch picture from among the entire images read in the sketch picture reading step (S100); A sketch figure identification step (S300) of analyzing the sketch figure extracted in the sketch figure extraction step (S200) to identify and determine the type of the sketch figure; a picture image animating information generation step of generating animating information so that the sketch picture (real picture) is animated based on the type of sketch picture determined in the sketch picture type identification step (S300) (S400); According to the status information (status) of the contents of the virtual environment to which the animation information generated in the animation information creation step (S400) is mapped to a sketch figure (real figure), and to which the mapped sketch figure (real figure) is to be applied and a mapping-animating step (S500) of animating the mapped sketch figure.

상기한 각 단계에 대하여 상세히 설명한다.Each of the above steps will be described in detail.

스케치그림 독취 단계(S100)Sketch drawing reading step (S100)

상기 스케치그림 독취 단계(S100)는 카메라 이미지 센서 등을 통해 용지의 배경과 스케치 그림을 이미지 데이터로 읽어들이는데, 이때 사전에 정의된 스케치그림 인식 영역에 스케치그림 이미지가 인식되는 경우, 해당 스케치 그림과 그림 용지를 포함하는 전체 이미지에 대한 이미지 데이터로 읽어들이도록 이루어진다. 다시 말해서, 상기 스케치그림 독취 단계(S100)는 스케치 그림과 그림 용지를 포함한 전체 이미지에 대한 이미지 데이터를 독취한다.The sketch picture reading step (S100) reads the background and sketch picture of the paper as image data through a camera image sensor, etc. At this time, if the sketch picture image is recognized in the sketch picture recognition area defined in advance, the sketch picture It is made to be read as image data for the entire image including the paper and drawing paper. In other words, the sketch figure reading step ( S100 ) reads image data for the entire image including the sketch figure and the drawing paper.

또한, 상기 스케치그림 독취 단계(S100)에서 이미지 데이터의 독취는 카메라 이미지 센서, 예를 들면 광학 영상의 강약과 색채를 감지하여 디지털 영상 데이터(이미지 데이터)로 변환해주는 장치로서 CMOS 이미지 센서(Complementary Metal Oxide Semiconductor Image Sensor) 또는 CCD 이미지 센서(Charge Coupled Device)를 포함하는 촬영 수단으로 이루어질 수 있다.In addition, the reading of the image data in the sketch drawing reading step (S100) is a camera image sensor, for example, a device that detects the strength and weakness of an optical image and converts it into digital image data (image data), and a CMOS image sensor (Complementary Metal Oxide Semiconductor Image Sensor) or CCD image sensor (Charge Coupled Device) may be made of a photographing means including.

스케치그림 추출 단계(S200)Sketch figure extraction step (S200)

상기 스케치그림 추출 단계(S200)는 독취된 이미지 데이터에서 스케치 그림(그림 이미지 데이터)만을 추출하기 위하여 흰색의 그림 용지와 스케치 그림의 경계 외곽선을 구분하여 스케치 그림(그림 이미지 데이터)만을 추출하게 된다.In the sketch figure extraction step (S200), only the sketch figure (picture image data) is extracted by dividing the boundary outline between the white drawing paper and the sketch figure in order to extract only the sketch figure (figure image data) from the read image data.

도 2는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법의 스케치그림 추출 단계에서 HSV 색공간의 차원변환을 이용하여 그림의 색상을 바이너리(Binary)화시켜 추출하는 예시에 대한 전(A)과 후(B)를 나타내는 도면이다.2 is a diagram showing the color of a picture by using a dimensional transformation of the HSV color space in the sketch picture extraction step of the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. ) is a diagram showing before (A) and after (B) for an example of extraction.

구체적으로, 상기 스케치그림 추출 단계(S200)는 웹캠 등을 통해 입력된 그림 이미지 데이터(영상)에서 사용자가 그린 스케치 그림(그림 이미지 데이터)만을 추출하게 되는데, 본 발명은 아래와 같은 RGB to HSV 색공간 변환 공식을 이용하여 RGB 값으로 입력된 그림 이미지 데이터를 HSV 색공간의 차원 변환하여 그림의 색상을 이진화 또는 바이너리(Binary)화시켜 추출하게 된다.Specifically, the sketch picture extraction step (S200) extracts only the sketch picture (picture image data) drawn by the user from the picture image data (video) input through a webcam, etc., and the present invention provides the following RGB to HSV color space Using the conversion formula, the picture image data input as RGB values is dimensionally transformed in the HSV color space, and the color of the picture is binarized or binary and extracted.

Figure 112020036470826-pat00002
Figure 112020036470826-pat00002

다시 말해서, 상기 스케치그림 추출 단계(S200)는 위 RGB to HSV 변환 공식을 이용해 입력된 RGB 픽셀 값을 HSV로 변환한다. 여기에서, H=색상, S=채도, V=명도를 의미한다.In other words, the sketch figure extraction step S200 converts the input RGB pixel value into HSV using the above RGB to HSV conversion formula. Here, H = hue, S = saturation, and V = brightness.

이와 같이 HSV로 변환된 픽셀 값 중 S의 값이 지정한 채도 임계 값보다 낮고, V값이 지정한 명도 임계 값보다 높은 픽셀의 경우는 흰색 영역으로 볼 수 있으며, 이러한 흰색 픽셀을 제거하여 도 2에 나타낸 바와 같이 이진화된 영상 결과물(이진화된 스케치그림 이미지)을 얻을 수 있게 된다.Among the pixel values converted to HSV in this way, a pixel with an S value lower than the specified saturation threshold and a V value higher than the specified brightness threshold can be viewed as a white area. As shown, a binarized image result (a binarized sketch picture image) can be obtained.

또한, 상기 스케치그림 추출 단계(S200)는 그림의 에지를 인식하여 외곽선을 바탕으로 스케치그림을 분리하는 에지 추출 방식으로 추출하여 이진화된 영상 결과물(이진화된 스케치그림 이미지)을 얻을 수도 있다.In addition, in the sketch figure extraction step (S200), a binarized image result (a binarized sketch figure image) may be obtained by recognizing the edge of the figure and extracting it using an edge extraction method that separates the sketch figure based on the outline.

스케치그림 종류 파악 단계(S300)Sketch figure type identification step (S300)

상기 스케치그림 종류 파악 단계(S300)는 사전에 구축되어 있는 이미지 데이터베이스의 DB 이미지와 상기 추출된 스케치그림 이미지를 비교하고 패턴을 분석하여 가장 근접한 DB 이미지를 파악하고, 해당 DB 이미지로 스케치 그림의 종류(예를 들면, 사람, 개, 고양이, 뱀 등)를 결정하도록 이루어진다.The sketch figure identification step (S300) compares the DB image of the image database built in advance with the extracted sketch figure image, analyzes the pattern to determine the closest DB image, and uses the DB image to determine the type of sketch figure. (eg, people, dogs, cats, snakes, etc.).

이러한 스케치그림 종류 파악 단계(S300)는 텐서플로(TensorFlow)와 같은 기계학습 엔진을 이용한 딥러닝(Deep Learning)으로 실행할 수 있다.This step of identifying the type of sketch drawing ( S300 ) can be executed by deep learning using a machine learning engine such as TensorFlow.

구체적으로, 상기 스케치 그림 종류 파악 단계(S300)에 대하여 도 3 및 도 4를 참조하여 설명한다. 도 3은 구글이 제작한 Inception v3 Neural Networks의 Architecture의 개요를 나타내는 도면이고, 도 4는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 그림종류 파악 단계에 대한 예시를 나타내는 예시도이다.Specifically, the step of identifying the type of sketch figure ( S300 ) will be described with reference to FIGS. 3 and 4 . 3 is a diagram showing the outline of the architecture of Inception v3 Neural Networks produced by Google, and FIG. 4 is a sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. It is an example diagram showing an example of the step of identifying the type of picture to be used.

상기 스케치그림 종류 파악 단계(S300)는 도 3에 나타낸 바와 같이, 먼저 추출한 스케치그림 이미지를 기준으로 특징을 잡아 딥러닝 기술(예를 들면, 텐서플로)을 이용하여 추출한 스케치그림 이미지가 어떤 모습의 물체인지를 인식하도록 이루어진다.The sketch figure type identification step (S300) is, as shown in FIG. 3, a sketch figure image extracted using a deep learning technique (eg, TensorFlow) by capturing features based on the sketch figure image extracted first. It is made to recognize whether it is an object.

여기에서, 인식 및 그림 종류 분석과 추론은 딥러닝 모델 중 검증된 인셉션(inception) 모델을 이용하며, 그림 추론에 사용할 데이터 셋(이미지 데이터베이스)을 리트레이닝(retraining) 과정을 통해 등록하게 한다.Here, recognition and picture type analysis and inference use the proven inception model among deep learning models, and the data set (image database) to be used for picture inference is registered through the retraining process.

이와 같이 상기 추출된 스케치 그림 이미지를 대상으로 위 딥러닝 모델을 사용하여 스케치그림 추론용 데이터 셋(이미지 데이터베이스)과 비교하여 실제 스케치 그림(그림 이미지 데이터)이 무엇인지 추론하게 되며, 이 추론된 정보(즉, 추론된 이미지 데이터베이스의 이미지)가 가진 메쉬 및 뼈대-관절 데이터를 이용하여 다음 단계인 스케치그림이미지의 애니메이팅용 정보 생성 단계(S400)에서 해당 스케치 그림 이미지가 활동할 수 있는 애니메이팅용 정보를 생성하게 된다.As such, the extracted sketch figure image is compared with the sketch figure inference data set (image database) using the above deep learning model to infer what the actual sketch figure (figure image data) is, and this inferred information Information for animating that the corresponding sketch figure image can be activated in the next step, the sketch figure image creation step (S400), using the mesh and skeleton-joint data of (that is, the image of the inferred image database) will create

여기에서, 상기 데이터 셋의 이미지 데이터 각각은 그에 맞는 메쉬 데이터 및 뼈대-관절 데이터를 포함하고 있다.Here, each of the image data of the data set includes mesh data and bone-joint data corresponding thereto.

애니메이팅용 정보 생성 단계(S400)Information generation step for animation (S400)

상기 애니메이팅용 정보 생성 단계(S400)는, 상기 스케치그림 종류 파악 단계(S300)에서 파악된 이미지 데이터베이스의 이미지(2진화 이미지)를 기준으로 메쉬(mesh)(메쉬 데이터)를 생성하는 메쉬 생성 단계(S410)와, 상기 스케치그림 종류 파악 단계(S300)에서 파악된 이미지 데이터베이스의 이미지(2진화 이미지)를 대상으로 뼈대와 관절포인트를 생성하는 뼈대-관절포인트 생성 단계(S420), 및 상기 메쉬 및 뼈대-관절포인트 생성 단계(S420)에서 생성된 뼈대와 관절포인트가 적용된 최종 뼈대를 상기 메쉬 생성 단계(S410)에서 생성된 메쉬에 적용하는 메쉬 스키닝 단계(S430)를 포함한다.The animation information generation step (S400) is a mesh generation step of generating a mesh (mesh data) based on the image (binary image) of the image database identified in the sketch figure type identification step (S300) (S410), and the skeleton-joint point generation step (S420) of generating a skeleton and joint points based on the image (binary image) of the image database identified in the sketch figure type identification step (S300) (S420), and the mesh and A mesh skinning step (S430) of applying the skeleton generated in the bone-joint point generation step (S420) and the final skeleton to which the joint point is applied to the mesh generated in the mesh generation step (S410) is included.

상기 메쉬 생성 단계(S410)에서 메쉬 생성은 들로네 삼각분할(Delaunay Triangulation) 기법을 이용하여 폴리곤 메쉬를 생성하게 된다.In the mesh generation step (S410), the mesh is generated using a Delaunay triangulation technique to generate a polygon mesh.

여기에서, 들로네 삼각분할 기법은 평면 위의 점들을 삼각형으로 연결해 분할할 때, 삼각형들의 내각의 최소값이 최대가 되도록 만들어(정삼각형에 가깝게) 분할하는 방법이다.Here, the Delaunay triangulation technique is a method of dividing by making the minimum value of the interior angles of triangles maximize (close to an equilateral triangle) when dividing points on a plane by connecting them to a triangle.

이러한 들로네 삼각분할을 적용하기 위해 추출한 스케치그림 영역에 임의의 버텍스(Vertex) 또는 점을 삽입한 다음, 들로네 삼각분할 기법을 적용하여 삼각형으로 영역을 분할한다. 이때 그림 영역을 벗어나 삼각형이 연결되는 경우가 발생하는데 이는 스케치그림의 폴리곤 메쉬에 해당되는 영역이 아니므로 제거하게 된다. 도 5는 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 애니메이팅용 정보 생성 단계의 메쉬 생성 과정을 통해 폴리곤 메쉬가 적용된 그림 결과물로서, (A)는 들로네 삼각분할 기법이 반영된 그림이며, (B)는 외곽 라인 삼각형 제거 후의 그림이다.To apply this Delaunay triangulation, an arbitrary vertex or point is inserted into the extracted sketch picture area, and then the area is divided into triangles by applying the Delaunay triangulation technique. At this time, there are cases where triangles are connected out of the drawing area, which is not an area corresponding to the polygon mesh of the sketch figure, so it will be removed. 5 is a drawing result to which a polygon mesh is applied through the mesh generation process of the animation information generation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. , (A) is a picture reflecting the Delaunay triangulation technique, and (B) is a picture after removing the outline triangle.

상기 뼈대-관절포인트 생성 단계(S420)는 상기 스케치그림 종류 파악 단계(S300)에서 파악된 이미지 데이터베이스의 이미지(2진화 이미지)를 대상으로 뼈대를 추출 생성하며 생성된 뼈대에서 관절포인트를 추출 생성하도록 이루어진다.The skeleton-joint point creation step (S420) is to extract and create a skeleton from the image (binary image) of the image database identified in the sketch figure type identification step (S300), and to extract and create joint points from the created skeleton is done

즉, 상기 뼈대-관절포인트 생성 단계(S420)는 앞서 상기 스케치그림 종류 파악 단계(S300)에서 파악된 이미지 데이터베이스의 이미지(추출한 이진화된(바이너리화 된) 스케치 그림인 2진화된 이미지)에서 세선화 알고리즘을 적용해 뼈대를 추출한다. 이때, 세선화란 입력한 영상에서 두께가 1인 선을 추출하는 알고리즘인데, 이 알고리즘을 이용함으로써 스케치 그림(2진화된 이미지의 그림 데이터)에 대한 뼈대를 추출할 수 있다. 예를 들면, 세선화 알고리즘 중에서 Zhang Suen 알고리즘을 사용하여 병렬 연산을 통해 빠르게 세선화 할 수 있다. 즉, 대상 이미지를 유지하고, 빠른 세선화 연산을 하기 위해 병렬적 처리방식의 알고리즘인 Zhang Suen 알고리즘을 이용한다.That is, the skeleton-joint point creation step (S420) is thinned from the image of the image database (the extracted binarized (binary) sketch figure, the binarized image) previously identified in the sketch figure type identification step (S300). An algorithm is applied to extract the skeleton. At this time, thinning is an algorithm that extracts a line with a thickness of 1 from an input image. By using this algorithm, a skeleton for a sketch figure (picture data of a binarized image) can be extracted. For example, among the thinning algorithms, using the Zhang Suen algorithm, it can be thinned quickly through parallel operation. In other words, the Zhang Suen algorithm, a parallel processing algorithm, is used to maintain the target image and perform a fast thinning operation.

구체적으로, 상기 뼈대-관절포인트 생성 단계(S420)에서 뼈대 추출 생성은, 상기 이진화된(바이너리화된) 스케치 그림의 모든 픽셀에 대해 어떤 픽셀을 기준으로 주변 픽셀들을 참조하여 특정 조건들에 맞는지 맞지 않는지를 모든 픽셀에 대하여 판단하고, 특정 조건에 맞는 픽셀에 대해서 제거를 해 나가면서 세선화된 이진화 그림을 얻게 된다.Specifically, in the bone-joint point creation step (S420), the bone extraction generation is based on which pixel for all pixels of the binarized (binary) sketch figure, and the surrounding pixels are referenced to match specific conditions. It is judged for all pixels whether or not it is not, and a thinned binarized picture is obtained while removing pixels that meet specific conditions.

예를 들어, 상기 특정 조건과 관련하여 아래의 픽셀 제거 조건 수식들 및 도 6과 도 7을 참조하여 설명한다. 도 6은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 뼈대 추출을 위하여 픽셀을 제거하여 세선화하는 방법을 설명하기 위한 도면이며, 도 7은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 이진화된 스케치 그림에서 세선화 알고리즘을 통해 추출한 스케치 그림의 뼈대에 대한 예시를 나타내는 도면이다.For example, in relation to the specific condition, it will be described with reference to the following pixel removal condition equations and FIGS. 6 and 7 . 6 is a method of thinning by removing pixels for bone extraction in the bone-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention; 7 is a sketch figure binarized in the skeleton-joint point creation step included in the sketch-based active character creation method for creating a sketch-based character as an active character in a virtual environment according to the present invention It is a diagram showing an example of the skeleton of a sketch figure extracted through the thinning algorithm.

Figure 112020036470826-pat00003
Figure 112020036470826-pat00003

P1은 중심 픽셀이고, P2 ~ P9는 P1의 주변 픽셀이다. 함수 A(P1)은 P1을 중심으로 주변 픽셀을 시계방향으로 검사하여 0과 1의 순서로 연결된 픽셀의 개수를 출력하는 함수이다. 함수 B(P1)는 이웃한 픽셀의 개수를 출력하는 함수이다.P1 is the center pixel, and P2 to P9 are the peripheral pixels of P1. The function A(P1) is a function that outputs the number of pixels connected in the order of 0 and 1 by examining the pixels around P1 in a clockwise direction. The function B(P1) is a function that outputs the number of neighboring pixels.

첫번째 2<=B(P1)<= 6 조건은 끝 부분에 있거나 둘러쌓이지 않은 픽셀을 제거하는 조건이다. 두번째 A(P1) = 1의 조건은 픽셀이 연결된 픽셀인지 검사하고 연결되지 않은 점을 제거하는 조건이다. 세번째 P2*P4*P6 = 0 및 P4*P6*P8 = 0은 모서리인 픽셀을 검사해 제거하는 조건이다.The first 2<=B(P1)<= 6 condition is a condition that removes pixels that are not surrounded or at the end. The second condition of A(P1) = 1 is to check whether a pixel is a connected pixel and remove the unconnected point. Third, P2*P4*P6 = 0 and P4*P6*P8 = 0 are conditions to inspect and remove corner pixels.

모든 픽셀에 대해 하나의 중심 픽셀을 기준으로 위 과정을 거치게 되면, 도 7의 (A)와 같이 이진화된 그림을 도 7의 (B)와 같이 세선화된 그림(그림의 뼈대)으로 추출하게 된다. 이렇게 추출한 뼈대는 애니메이션의 기준 뼈대가 된다.If the above process is performed for all pixels based on one central pixel, the binarized picture as shown in FIG. 7(A) is extracted as a thinned picture (frame of figure) as shown in FIG. 7(B) . The skeleton extracted in this way becomes the reference skeleton of the animation.

계속해서, 도 8은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 추출을 위한 픽셀 검사 예시 및 기준 픽셀 P1의 함수 결과 값을 예시한 도면이며, 도 9는 도 8에 따른 결과 값에 따라 관절포인트를 추출한 그림의 예시를 나타내는 도면이다.8 is an example and criteria for pixel inspection for joint extraction in the skeleton-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention. It is a view exemplifying the function result value of the pixel P1, and FIG. 9 is a view showing an example of a figure in which joint points are extracted according to the result value according to FIG.

앞서 설명한 바와 같이, 상기 뼈대-관절포인트 생성 단계(S420)에서 픽셀 제거 방식으로 추출한 뼈대를 중심으로 스케치그림을 움직이게 하려면 관절의 정의 및 관절 결정이 필요하다. 이러한 관절의 결정은 2가지 단계를 거치게 되는데, 첫번째는 끝점과 관절포인트의 정의이고, 두번째는 끝점과 관절포인트 사이의 세분화 과정이다.As described above, in order to move the sketch figure centering on the skeleton extracted by the pixel removal method in the bone-joint point creation step (S420), it is necessary to define the joint and determine the joint. The determination of such a joint goes through two stages. The first is the definition of the end point and the joint point, and the second is the segmentation process between the end point and the joint point.

먼저, 관절의 결정은 도 8과 같이 뼈대 내 픽셀을 기준으로 주변 픽셀을 시계 방향으로 검사해 흰색 픽셀과 검은색 픽셀이 나타나는 순서의 개수를 계산한다. 계산된 결과값 F(P1)이 1인 경우에는 P1을 끝점으로 정의하고, F(P1)이 3보다 크거나 같은 경우에는 P1을 관절포인트으로 정의한다.First, to determine the joint, the number of the order in which the white pixel and the black pixel appear is calculated by examining the surrounding pixels in a clockwise direction based on the pixels in the skeleton as shown in FIG. 8 . When the calculated result value F(P1) is 1, P1 is defined as the end point, and when F(P1) is greater than or equal to 3, P1 is defined as the joint point.

그리고 추가로 전체 그림을 움직이게 하기 위하여 관절포인트에서 끝점으로 가는 벡터값을 이용하여 스케치 그림의 외곽선에 끝점을 연장하여 재정의하는 과정을 거치게 된다. 이러한 과정을 거치면 도 9의 예시로 나타낸 바와 같이 결과물을 도출한다. 도 9에서 붉은 점은 끝점이고, 초록점은 관절포인트이다. 도 9의 (A)는 끝점과 관절포인트를 정의한 그림 예시이고, (B)는 그림 메쉬에 끝점과 관절포인트를 대입한 그림 예시이며, (C)는 관절포인트에서 끝점으로 가는 벡터값을 이용하여 스케치 그림의 외곽선에 끝점을 연장하여 재정의한 그림 예시이다.In addition, in order to move the entire figure, the vector value from the joint point to the end point is used to extend and redefine the end point on the outline of the sketch figure. Through this process, a result is derived as shown in the example of FIG. 9 . In FIG. 9 , the red dot is the end point, and the green dot is the joint point. (A) of Figure 9 is an example of a figure defining an end point and a joint point, (B) is an example of a figure in which the end point and joint point are substituted into the figure mesh, (C) is a vector value from the joint point to the end point. This is an example of a figure redefined by extending the end point to the outline of a sketch figure.

계속해서, 끝점과 관절포인트 사이의 세분화 과정을 도 10 및 도 11을 참조하여 설명한다. 도 10은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 세분화 과정을 거쳐 관절 세분화가 적용된 그림의 예시이며, 도 11은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 포함되는 뼈대-관절포인트 생성 단계에서 관절 세분화 과정을 나타내는 플로차트이다.Subsequently, the subdivision process between the end point and the joint point will be described with reference to FIGS. 10 and 11 . 10 is an example of a figure to which joint segmentation is applied through the joint segmentation process in the skeleton-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention; 11 is a flowchart showing a joint subdivision process in the bone-joint point creation step included in the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention.

앞서 과정을 통해 정의한 관절포인트과 끝점으로만 뼈대를 움직일 경우 어색한 움직임이 있게 되는데, 이를 해결하여 자연스러운 움직임을 위하여 끝점과 관절포인트 사이에 있는 뼈대에 대한 관절포인트를 세분화하는 과정을 거치게 된다.When the skeleton is moved only with the joint points and end points defined through the above process, there is an awkward movement. To solve this problem, a process of subdividing the joint points for the skeleton between the end point and the joint point is performed for natural movement.

구체적으로, 관절포인트 세분화 과정은 도 10에 나타낸 바와 같이, 특징점 픽셀을 현재 픽셀로 하고, 현재 픽셀에 대하여 주변에 연결된 픽셀이 있는지 여부를 판정한다.Specifically, in the articulation point segmentation process, as shown in FIG. 10 , the feature point pixel is the current pixel, and it is determined whether there is a pixel connected to the periphery of the current pixel.

현재 픽셀에 대하여 주변에 연결된 픽셀이 없는 경우, 분할 점(Segment Point)으로 표시한다. 그리고 현재 픽셀에 대하여 주변에 연결된 픽셀이 있는 경우 다른 특징 점인지 여부를 판단하여, 다른 특징 점인 경우 상기 분할점으로 표시하는 과정으로 진행하고, 다른 특징 점이 아닌 것으로 판단하는 경우, 이동거리가 미리 정의된 세그먼트 길이(segment length)보다 큰지 여부를 판단하게 된다.If there is no adjacent pixel with respect to the current pixel, it is displayed as a segment point. And if there is a pixel connected to the current pixel, it is determined whether it is a different feature point, and if it is a different feature point, the process proceeds to display as the dividing point. It is determined whether it is greater than the segment length.

상기 이동거리가 미리 정의된 세그먼트 길이보다 큰 경우, 분할 점 표시와 이동거리를 초기화하고, 이동거리가 미리 정의된 세그먼트 길이보다 작은 경우, 이동한 픽셀을 삭제하게 된다.When the moving distance is greater than the predefined segment length, the division point display and moving distance are initialized. When the moving distance is smaller than the predefined segment length, the moved pixel is deleted.

이러한 관절포인트 세분화 과정은 끝점과 관점점 사이에 있는 모든 뼈대(뼈대 픽셀)에 대하여 실행하게 되며, 관절포인트 세분화 과정을 거치게 되면, 도 11에 나타낸 바와 같은 관절이 세분화된 최종 애니메이션 뼈대 결과물을 얻을 수 있게 된다.This joint point segmentation process is executed for all bones (skeletal pixels) between the end point and the viewpoint point, and when the joint point segmentation process goes through, the final animation skeleton result in which the joints are subdivided as shown in FIG. 11 can be obtained. there will be

다음으로, 상기 메쉬 스키닝 단계(S430)는, 상기와 같이 정의되고 결정된 픽셀 뼈대와 관절포인트의 최종 뼈대를 캐릭터 메쉬에 적용하여 메쉬의 버텍스(vertex)에서 어떤 위치의 버텍스의 관절포인트을 기준으로 움직이게 할 것인지 관절포인트에 가중치(Weight)를 정의하도록 이루어진다.Next, in the mesh skinning step (S430), the final skeleton of the pixel skeleton and joint point defined and determined as described above is applied to the character mesh to move based on the joint point of the vertex at a certain position in the vertex of the mesh. It is made to define a weight at the joint point.

상기 메쉬 스키닝 단계(S430)는 모든 버텍스 V를 대상으로 한다. V 중 임의의 버텍스 Vi와 모든 관절포인트 B의 거리를 유클리디안 거리(Euclidean Distance) 공식을 이용하여 구한 뒤 최단 거리 순으로 정렬한 직선 D 집합(NearBoneList)을 구한다. 이때 임의의 직선 Di는 그림의 영역을 벗어나지 않는 범위로 된다. 아래 식은 해당 과정의 의사코드(Pseudo Code)의 예로서, 최단거리 집합 의사코드이다.The mesh skinning step ( S430 ) targets all vertices V . Find the distance between any vertex Vi and all joint points B among V using the Euclidean Distance formula, and then obtain a straight line D set (NearBoneList) sorted in the order of the shortest distance. At this time, any straight line Di becomes a range that does not deviate from the area of the figure. The following equation is an example of the pseudo code of the process, and it is the shortest distance set pseudo code.

Figure 112020036470826-pat00004
Figure 112020036470826-pat00004

위 과정을 통해 얻은 직선 D의 집합인 NearBoneList에서 가장 가까운 n개의 관절을 버텍스 Vi와 연결하고 가중치를 부여하되, 버텍스와 가까운 관절일수록 큰 가중치를 주도록 이루어진다. 여기에서, 가까운 관절 B0weight + B1weight … + Bnweight = 1이다.In the NearBoneList, which is the set of straight lines D obtained through the above process, the n closest joints are connected to the vertex Vi and weighted, but the closer the joint to the vertex, the greater the weight. Here, close joint B0weight + B1weight … + Bnweight = 1.

상기 가중치에 있어서 버텍스와 가까운 관절포인트에 대한 가중치는 아래의 공식을 의해 결정된다.In the above weight, the weight for the joint point close to the vertex is determined by the following formula.

Figure 112020036470826-pat00005
Figure 112020036470826-pat00005

이러한 과정을 거쳐 결과적으로 관절포인트들은 모든 버텍스들에 대해 상대적인 가중치 값을 갖게 되며, 버텍스들은 자신과 연결된 관절포인트의 위치와 가중치 값에 따라 위치가 변화하여 거시적으로 뼈대가 움직이면 메쉬도 함께 움직이게 이루어진다.Through this process, as a result, joint points have relative weight values for all vertices, and the positions of the vertices change according to the position and weight value of the joint points connected to them.

맵핑-애니메이팅 단계(S500)Mapping-Animating step (S500)

상기한 각 단계를 통해 사용자가 그린 스케치 그림(그림이미지)에 메쉬, 뼈대, 관절포인트의 정보가 맵핑되어 있으며, 이에 따라 상기 맵핑-애니메이팅 단계(S500)는 맵핑된 애니메이팅용 정보를 기반으로 실제 그림의 동작을 애니메이팅 맵핑(animation mapping)하게 된다.Through each of the above steps, the mesh, skeleton, and joint point information is mapped to the sketch figure (picture image) drawn by the user. Accordingly, the mapping-animating step (S500) is based on the mapped animating information. Animation mapping is performed on the action of the actual picture.

예를 들면, 토끼의 경우 토끼가 깡총깡총 움직이는 형태를 그린 그림에 있는 관절과 뼈대 정보에 맵핑하여 '움직인다'는 신호에 의해 실제 토끼의 움직임에 가깝게 움직일 수 있도록 구현하게 되며, 실제 그림이 적용되는 가상현실의 콘텐츠의 상태 정보(status)에 따라 애니메이팅을 적용하도록 이루어진다.For example, in the case of a rabbit, it is implemented so that it can move close to the actual rabbit's movement by the signal 'move' by mapping the joint and skeletal information in the picture depicting the movement of the rabbit. It is made to apply the animation according to the status information (status) of the contents of the virtual reality.

이상에서 설명한 바와 같은 본 발명에 따른 스케치 기반의 캐릭터를 가상환경의 활동 캐릭터로 생성하기 위한 스케치 기반의 활동캐릭터 생성 방법에 따르면, 사용자가 스케치한 캐릭터 자체를 정확히 인식 추출하고, 해당 캐릭터에 최적으로 적합한 활동 뼈대와 관절부를 추출하여 활동성을 부여함으로써 가상환경에서 현실감있고 자연스럽게 활동 캐릭터로 구현될 수 있도록 하여 사용자의 흥미와 몰입감을 극대화할 수 있고, 2D 그림의 인식을 위한 인식 용도의 마커가 구비되는 용지를 필요로 하지 않고 어떠한 용지라도 사용할 수 있으며, 게임, 엔터테인먼트, 교육, 홍보, 광고, 전시 등 다양한 미디어 콘텐츠에 적용할 수 있음으로써 미디어 콘텐츠를 더욱 풍부하고 다양하게 구성할 수 있어 제품 경쟁력을 확보할 수 있는 이점이 있다.According to the sketch-based active character creation method for generating a sketch-based character as an active character in a virtual environment according to the present invention as described above, accurately recognizes and extracts the character sketched by the user, and optimizes the character By extracting suitable activity skeletons and joints and giving them activity, they can be realized as realistic and natural active characters in a virtual environment, thereby maximizing the user's interest and immersion, and a recognition marker for recognizing 2D pictures is provided. No paper is required, any paper can be used, and it can be applied to various media contents such as games, entertainment, education, public relations, advertisements, and exhibitions. There are advantages to being able to

상기한 바와 같은 실시 예들은 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the above-described embodiments have been described with reference to the limited drawings, a person skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

본 명세서에서 설명되는 실시 예와 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 예시적으로 설명하는 것에 불과하다. 따라서, 본 명세서에 개시된 실시 예는 본 발명의 기술적 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아님은 자명하다. 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시 예는 모두 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The embodiments described in this specification and the accompanying drawings are merely illustrative of some of the technical ideas included in the present invention. Accordingly, since the embodiments disclosed in the present specification are for explanation rather than limitation of the technical spirit of the present invention, it is obvious that the scope of the technical spirit of the present invention is not limited by these embodiments. Modifications and specific embodiments that can be easily inferred by those skilled in the art within the scope of the technical idea included in the specification and drawings of the present invention should be interpreted as being included in the scope of the present invention.

S100: 스케치그림 독취 단계
S200: 스케치그림 추출 단계
S300: 스케치그림 종류 파악 단계
S400: 애니메이팅용 정보 생성 단계
S410: 메쉬 생성 단계
S420: 뼈대-관절포인트 생성 단계
S430: 메쉬 스키닝 단계
S500: 맵핑-애니메이팅 단계
S100: Sketch drawing reading stage
S200: Sketch figure extraction step
S300: Step to identify types of sketches
S400: Steps to Generate Information for Animating
S410: mesh generation step
S420: Skeleton-joint point creation step
S430: mesh skinning step
S500: Mapping-Animating Phase

Claims (9)

사용자가 용지에 그린 스케치 그림과 그 스케치 그림의 배경을 포함하는 전체 이미지를 독취하는 스케치그림 독취 단계;
상기 독취한 전체 이미지 중 스케치 그림만을 추출하는 스케치그림 추출 단계;
상기 추출된 스케치 그림을 분석하여 스케치그림의 종류를 파악하고 결정하는 스케치그림 종류 파악 단계;
상기 결정된 스케치그림의 종류를 기반으로 상기 스케치 그림이 애니메이팅되도록 애니메이팅 정보를 생성하는 그림이미지 애니메이팅용 정보 생성 단계;
상기 생성된 애니메이팅용 정보를 스케치 그림에 맵핑하고, 맵핑된 스케치 그림을 애니메이팅(animating)하는 맵핑-애니메이팅 단계;를 포함하고,
상기 스케치그림 독취 단계는 이미지 센서를 포함하는 촬영 수단을 통해 독취하고,
상기 스케치그림 추출 단계는 독취된 이미지에서 HSV 색공간의 차원변환을 이용하여 그림의 색상을 바이너리(Binary)화시켜 추출하되, 아래의 RGB to HSV 색공간 변환 공식을 이용하여 추출하도록 이루어지고,
Figure 112021086797543-pat00006

(여기에서, H=색상, S=채도, V=명도이며, RGB는 적녹청임)
상기 스케치그림 종류 파악 단계는, 미리 구축되어 있는 이미지 데이터베이스의 DB 이미지와 상기 추출된 스케치그림 이미지를 딥러닝(Deep Learning)으로 비교 실행하여 파악하도록 이루어지고,
상기 애니메이팅용 정보 생성 단계는, 상기 상기 바이너리(Binary)화되어 추출된 스케치 그림이미지를 기준으로 메쉬(mesh)를 생성하는 메쉬 생성 단계와, 상기 바이너리(Binary)화되어 추출된 스케치 그림이미지를 대상으로 뼈대 및 관절포인트를 생성하는 뼈대-관절포인트 생성 단계, 및 상기 생성된 뼈대와 관절포인트가 적용된 최종 뼈대를 상기 생성된 메쉬에 적용하는 메쉬 스키닝 단계를 포함하고,
상기 메쉬 생성 단계는 들로네 삼각분할(Delaunay Triangulation) 기법을 이용하여 폴리곤 메쉬가 적용된 캐릭터 메쉬를 생성하도록 이루어지고,
상기 뼈대-관절포인트 생성 단계는, 상기 바이너리화된 스케치 그림의 모든 픽셀에 대해 하나의 픽셀을 중심으로 주변 픽셀들을 검사하여 설정된 픽셀 검사값에 만족하지 않은 픽셀을 제거하여 뼈대를 추출하며, 상기 추출된 뼈대에 있어서의 하나의 픽셀을 중심으로 주변 픽셀들을 검사하여 설정된 흑백의 바이너리화 픽셀 개수에 기반하여 복수의 관절을 추출하도록 이루어지고,
상기 뼈대-관절포인트 생성 단계에서 추출된 복수의 관절 간을 세분화하는 관절포인트 세분화 과정을 더 포함하며,
상기 관절포인트 세분화 과정은,
현재 픽셀을 중심으로 주변에 연결된 픽셀이 있는지 여부를 판정하고,
상기 현재 픽셀에 대하여 주변에 연결된 픽셀이 없는 경우, 분할 점(Segment Point)으로 표시하고,
상기 현재 픽셀에 대하여 주변에 연결된 픽셀이 있는 경우 다른 특징 점인지 여부를 판단하여, 다른 특징 점인 경우 상기 분할점으로 표시하는 과정으로 진행하고, 다른 특징 점이 아닌 것으로 판단하는 경우, 이동거리가 미리 정의된 세그먼트 길이(segment length)보다 큰지 여부를 판단하고,
상기 이동거리가 미리 정의된 세그먼트 길이보다 큰 경우, 분할 점 표시와 이동거리를 초기화하고, 이동거리가 미리 정의된 세그먼트 길이보다 작은 경우, 이동한 픽셀을 삭제하도록 이루어지는 것을 특징으로 하는
스케치 기반의 활동캐릭터 생성 방법.
A sketch picture reading step of reading the entire image including the sketch picture drawn by the user on the paper and the background of the sketch picture;
a sketch picture extraction step of extracting only a sketch picture from among all the read images;
a sketch drawing type identification step of analyzing the extracted sketch picture to identify and determine the type of the sketch picture;
a picture image animating information generating step of generating animating information so that the sketch picture is animated based on the determined type of the sketch picture;
a mapping-animating step of mapping the generated animation information to a sketch figure, and animating the mapped sketch figure;
The sketch drawing reading step is read through a photographing means including an image sensor,
In the step of extracting the sketch picture, the color of the picture is binary (binary) extracted using the dimensional transformation of the HSV color space from the read image, and extracted using the RGB to HSV color space conversion formula below,
Figure 112021086797543-pat00006

(Where, H = Hue, S = Saturation, V = Brightness, and RGB is Red Green Blue)
In the step of identifying the type of sketch drawing, the DB image of the image database built in advance and the extracted sketch drawing image are compared and executed by deep learning to identify,
The animation information generation step includes a mesh generation step of generating a mesh based on the binary (binary) and extracted sketch picture image, and the binary (Binary) and extracted sketch picture image. A skeleton-joint point generation step of generating a skeleton and a joint point as a target, and a mesh skinning step of applying the final skeleton to which the generated skeleton and joint point are applied to the generated mesh,
The mesh generation step is made to generate a character mesh to which a polygon mesh is applied using a Delaunay triangulation technique,
In the bone-joint point generation step, the skeleton is extracted by removing pixels that are not satisfied with the set pixel inspection value by examining surrounding pixels around one pixel for all pixels of the binary sketch figure, and the extraction It is made to extract a plurality of joints based on the set number of black-and-white binary pixels by examining surrounding pixels around one pixel in the skeleton,
Further comprising a joint point subdivision process of subdividing between a plurality of joints extracted in the bone-joint point generation step,
The joint point segmentation process is,
Determines whether there are connected pixels around the current pixel,
If there is no pixel connected to the periphery of the current pixel, it is displayed as a segment point,
If there is a neighboring pixel with respect to the current pixel, it is determined whether it is a different feature point, and if it is a different feature point, the process is displayed as the dividing point. Determining whether it is greater than the segment length,
When the movement distance is greater than the predefined segment length, the division point display and the movement distance are initialized, and when the movement distance is smaller than the predefined segment length, the moved pixel is deleted.
How to create a sketch-based active character.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 메쉬 스키닝 단계는
상기 세분화된 관절포인트, 및 상기 세분화된 관절포인트를 포함하는 뼈대를 최종 뼈대로 하여 상기 메쉬 생성 단계에서 생성된 캐릭터 메쉬에 맵핑하도록 이루어지는 것을 특징으로 하는
스케치 기반의 활동캐릭터 생성 방법.
According to claim 1,
The mesh skinning step
The subdivided joint points and the skeleton including the subdivided joint points are used as final skeletons to map to the character mesh generated in the mesh generation step.
How to create a sketch-based active character.
제7항에 있어서,
상기 메쉬 스키닝 단계는
상기 메쉬의 버텍스(vertex)에서 어떤 위치의 버텍스의 관절포인트를 기준으로 움직이게 할 것인지 정의하도록 소정 관절포인트에 대하여 가중치(Weight)를 부여한 맵핑 애니메이팅용 정보를 생성하도록 이루어지는 것을 특징으로 하는
스케치 기반의 활동캐릭터 생성 방법.
8. The method of claim 7,
The mesh skinning step
It is characterized in that in the vertex of the mesh, information for mapping animation is generated in which a weight is given to a predetermined joint point to define a movement based on a joint point of a vertex of a certain position.
How to create a sketch-based active character.
제8항에 있어서,
상기 가중치 부여는 모든 버텍스(V) 중에서 임의의 버텍스(Vi)와 모든 관절포인트 B의 거리를 유클리디안 거리(Euclidean Distance) 공식을 이용하여 구한 뒤 최단 거리 순으로 정렬한 직선 D 집합(NearBoneList)을 구하고, 상기 직선 D의 집합인 NearBoneList에서 가장 가까운 n개의 관절을 임의의 버텍스(Vi)와 연결하고 가중치를 부여하되, 상기 임의의 버텍스와 가까운 관절일수록 큰 가중치를 주도록 이루어지며,
상기 맵핑-애니메이팅 단계는 상기 맵핑 애니메이팅용 정보를 기반으로 애니메이팅 맵핑(animation mapping)하도록 이루어지는 것을 특징으로 하는
스케치 기반의 활동캐릭터 생성 방법.
9. The method of claim 8,
The weighting is a set of straight lines D arranged in the order of the shortest distance after obtaining the distance between any vertex (Vi) and all joint points B among all vertices (V) using the Euclidean Distance formula (NearBoneList) , and connect the n closest joints to an arbitrary vertex (Vi) in the NearBoneList, which is the set of straight lines D, and give weights, but the closer the joint to the arbitrary vertices, the greater the weight,
The mapping-animating step is characterized in that based on the information for mapping animating, animation mapping is performed.
How to create a sketch-based active character.
KR1020200042685A 2019-09-20 2020-04-08 Activity character creating method in virtual environment based on sketch character KR102343562B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190115819 2019-09-20
KR1020190115819 2019-09-20

Publications (2)

Publication Number Publication Date
KR20210034468A KR20210034468A (en) 2021-03-30
KR102343562B1 true KR102343562B1 (en) 2021-12-27

Family

ID=75265042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200042685A KR102343562B1 (en) 2019-09-20 2020-04-08 Activity character creating method in virtual environment based on sketch character

Country Status (1)

Country Link
KR (1) KR102343562B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101576538B1 (en) * 2015-05-12 2015-12-21 주식회사 아이아라 Apparatus for stereogram of ground plan
KR101794731B1 (en) * 2016-11-10 2017-11-08 한국과학기술연구원 Method and device for deforming a template model to create animation of 3D character from a 2D character image

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100301962B1 (en) 1999-05-24 2001-09-26 박권상 Real-time virtual character system
KR20020049384A (en) 2000-12-19 2002-06-26 이형민 System for generating character animation and method for generating character animation using the same
KR20020086306A (en) 2002-05-23 2002-11-18 (주)포도그래픽스 Animation character generation system and the method on mobile device
KR100915084B1 (en) 2007-11-27 2009-09-02 에스케이 텔레콤주식회사 System and method for turning a character's moving in virtual world
KR101337625B1 (en) * 2012-03-16 2013-12-05 삼성중공업 주식회사 A blasting inspection system
KR20140061951A (en) 2012-11-12 2014-05-22 삼성전자주식회사 A method and an apparatus of providing enhanced reality

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101576538B1 (en) * 2015-05-12 2015-12-21 주식회사 아이아라 Apparatus for stereogram of ground plan
KR101794731B1 (en) * 2016-11-10 2017-11-08 한국과학기술연구원 Method and device for deforming a template model to create animation of 3D character from a 2D character image

Also Published As

Publication number Publication date
KR20210034468A (en) 2021-03-30

Similar Documents

Publication Publication Date Title
CN112348815B (en) Image processing method, image processing apparatus, and non-transitory storage medium
CN110543892B (en) Part identification method based on multilayer random forest
Marques Practical image and video processing using MATLAB
CN109325988B (en) Facial expression synthesis method and device and electronic equipment
US8023725B2 (en) Identification of a graphical symbol by identifying its constituent contiguous pixel groups as characters
JP4194025B2 (en) Illumination-invariant object tracking method and video editing apparatus using the same
JP5463866B2 (en) Image processing apparatus, image processing method, and program
CN106096542B (en) Image video scene recognition method based on distance prediction information
US8207987B2 (en) Method and apparatus for producing digital cartoons
CN112784621B (en) Image display method and device
CN110084204B (en) Image processing method and device based on target object posture and electronic equipment
WO2024001095A1 (en) Facial expression recognition method, terminal device and storage medium
CN113902657A (en) Image splicing method and device and electronic equipment
WO2018151043A1 (en) Image processing method and computer program
Recky et al. Façade segmentation in a multi-view scenario
CN108537162A (en) The determination method and apparatus of human body attitude
JP2005071344A (en) Image processing method, image processor and recording medium recording image processing program
KR102343562B1 (en) Activity character creating method in virtual environment based on sketch character
Thiengtham et al. Improve template matching method in mobile augmented reality for thai alphabet learning
CN112132750A (en) Video processing method and device
CN111638792A (en) AR effect presentation method and device, computer equipment and storage medium
US20230222736A1 (en) Methods and systems for interacting with 3d ar objects from a scene
Beglov Object information based on marker recognition
KR20200052812A (en) Activity character creating method in virtual environment
CN114511877A (en) Behavior recognition method and device, storage medium and terminal

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant