KR102035596B1 - System and method for automatically generating virtual character's facial animation based on artificial intelligence - Google Patents
System and method for automatically generating virtual character's facial animation based on artificial intelligence Download PDFInfo
- Publication number
- KR102035596B1 KR102035596B1 KR1020180165748A KR20180165748A KR102035596B1 KR 102035596 B1 KR102035596 B1 KR 102035596B1 KR 1020180165748 A KR1020180165748 A KR 1020180165748A KR 20180165748 A KR20180165748 A KR 20180165748A KR 102035596 B1 KR102035596 B1 KR 102035596B1
- Authority
- KR
- South Korea
- Prior art keywords
- voice
- data
- unit
- animation
- tts service
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G06K9/00221—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
본 발명은 애니메이션 자동 생성 시스템 및 방법에 관한 것으로서, 더 상세하게는 클라우드 시스템 기반의 음성 데이터를 활용하여 한국어 발음을 보여주는 자연스러운 입모양 애니메이션으로, 실제의 사람과 같은 느낌을 줄 수 있는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템 및 방법에 관한 것이다.The present invention relates to a system and method for automatically generating animation, and more specifically, to a natural mouth-type animation showing Korean pronunciation using cloud system-based voice data, which is based on artificial intelligence that can give a feeling like a real person. A system and method for automatically generating facial animation of a virtual character.
얼굴은 사람들 사이의 상호작용(Interaction)과 대화(Communication)에 있어서 매우 중요한 요소이지만, 공학적으로 정의하고 표현하기 매우 복잡한 대상이다.이와 같은 얼굴을 검출(Detection), 추적(tracking), 인식(recognition), 모델링(modeling), 합성(synthesis) 및 표현(rendering)하기 위한 다양한 연구가 컴퓨터 그래픽스(Computer graphics), 컴퓨터 비전(computer vision), 컴퓨터 애니메이션(Computer Animation) 등과 같은 다양한 분야에서 활발히 진행 중이다.Faces are a very important factor in the interaction and communication between people, but they are very complex objects to be defined and expressed engineeringally. Such faces can be detected, tracked, or recognized. Various studies are being actively conducted in various fields such as computer graphics, computer vision, computer animation, and the like for modeling, synthesis, and rendering.
특히, 얼굴 애니메이션(Facial Animation)은 얼굴의 움직임과 표정을 사실감 있게 표현하기 위한 것으로, 얼굴의 해부학적인 구조와 섬세한 표정을 사실감 있게 표현해야 하기 때문에, 컴퓨터 애니메이션 분야에서도 가장 어려운 분야로 인식되고 있다.In particular, facial animation is used to realistically express facial movements and facial expressions, and it is recognized as the most difficult field in the field of computer animation because the facial anatomy and delicate facial expressions must be realistically expressed.
하지만, 얼굴 애니메이션은 디지털 콘텐츠 분야에서 실시간 얼굴 애니메이션, 캐릭터 애니메이션, 대화 가능한 실사수준의 아바타(Avatar) 생성, 영상 통신, 사진 내 사람들에 대한 동영상 애니메이션 생성, 휴먼 인터페이스 등에 활용될 수 있기 때문에, 얼굴 애니메이션에 대한 기술적 수요가 증대되고 있다.However, face animation can be used for real-time face animation, character animation, interactive photorealistic avatar creation, video communication, video animation for people in photos, and human interfaces in digital content. The technical demand for is increasing.
이때, 얼굴 애니메이션을 위해서는 컴퓨터 그래픽스와 영상 처리(Image Processing) 기술을 포함한 컴퓨터 비전 기술을 이용하여 얼굴 모션 표현(Facial motion representation) 및 얼굴 모션 합성(facial motion synthesis) 기술이 필요하며, 텍스트에 대한 음성 변환(Text-To-Speech) 및 음성 합성(Speech Synthesis)을 위한 기계 학습(Machine Learning)과 같은 인공지능 기술이 필요하다.In this case, for facial animation, facial motion representation and facial motion synthesis are required using computer vision techniques including computer graphics and image processing. Artificial intelligence techniques such as machine learning for Text-To-Speech and Speech Synthesis are needed.
한편, 한국 공개특허공보 제10-2010-0041586호(특허문헌 1)에는 "음성 기반 얼굴 캐릭터 형성 장치 및 방법"이 개시되어 있는바, 이에 따른 음성 기반 얼굴 캐릭터 형성 방법은, 얼굴 캐릭터 형상에 대한 다수 개의 키모델을 이용하여 상기 얼굴 캐릭터 형상을 다수 개의 영역으로 분할하는 단계; 음성 샘플을 분석하여 발음 및 감정을 인식하기 위한 적어도 하나의 파라미터에 대한 정보들을 추출하는 음성매개변수화를 수행하는 단계; 음성이 입력되면, 상기 음성에 대한 프레임 단위별 음성으로부터 적어도 하나의 파라미터별 정보를 추출하는 단계; 및 상기 파라미터별 정보에 기초하여 상기 프레임 단위로 상기 분할된 얼굴 영역별로 얼굴 캐릭터 영상을 합성하는 단계를 포함하여 구성된 것을 특징으로 한다.On the other hand, Korean Patent Laid-Open Publication No. 10-2010-0041586 (Patent Document 1) discloses a "voice-based face character forming apparatus and method", according to the voice-based face character forming method, for the face character shape Dividing the face character shape into a plurality of regions by using a plurality of key models; Analyzing the voice sample to perform voice parameterization to extract information on at least one parameter for recognizing pronunciation and emotion; If a voice is input, extracting at least one parameter-specific information from the voice per frame for the voice; And synthesizing a face character image for each of the divided face regions based on the parameter information.
이상과 같은 특허문헌 1의 경우, 삼차원 얼굴 캐릭터 표정을 사용자의 음성만으로 빠르게 생성하여 온라인에서 음성 구동 캐릭터 얼굴 애니메이션을 실시간으로 제공할 수 있을지는 모르겠으나, 여기에서 적용되는 음성 발음 데이터는 영어를 기준으로 나온 학술 데이터로서 이를 수정, 보완없이 한국어에 억지로 적용함으로써, 캐릭터가 실제의 사람 모습과는 다른 부자연스러운 모습으로 표출되어 시청자로 하여금 이질감(불편함)을 느끼게 하는 문제점을 내포하고 있다.In the case of
본 발명은 상기와 같은 종래 기술의 문제점을 개선하기 위하여 창출된 것으로서, 클라우드 시스템 기반의 음성 데이터를 활용하여 한국어 발음을 보여주는 자연스러운 입모양 애니메이션을 제공함으로써, 실제의 사람과 같은 느낌을 줄 수 있는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템 및 방법을 제공함에 그 목적이 있다.The present invention was created to improve the problems of the prior art as described above, by providing a natural mouth-shaped animation that shows the pronunciation of the Korean language by utilizing the speech data based on the cloud system, artificial that can give a feeling like a real person An object of the present invention is to provide a system and method for automatically generating facial animation of an intelligent character.
상기의 목적을 달성하기 위하여 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템은,In order to achieve the above object, the facial animation automatic generation system of the artificial intelligence-based virtual character according to the present invention,
사용자 또는 외부 소스(source)에 의해 입력된 텍스트를 분류하여 TTS(Text-to-Speech) 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하여 가상 캐릭터의 페이셜 애니메이션 생성에 필요한 형태에 맞게 음성 파형을 분해하는 처리부;Transmit text-to-speech (TTS) service request target part to an external TTS service provider by classifying text input by a user or an external source, and voice from the TTS service material provided from the TTS service provider. A processor for extracting waveform and voice waveform information and decomposing the voice waveform according to a shape required for generating a facial animation of the virtual character;
특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트와, 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트를 생성하는 자료부;A set of mouth-shaped (lip-sync) data, which is classified according to a predetermined feature, by converting positional information of a specified point of a face in which a specific language is pronounced into 3D data, and voice waveform data obtained by collecting and extracting voice data of a specific person. A data portion for generating a personalized voice data set based on the;
상기 처리부 및 자료부와 전기적으로 각각 연결되며, 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크(lip-sync) 애니메이션의 수학적 연산을 수행하며, 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞추는 연산부; 및A lip-sync animation is electrically connected to the processing unit and the data unit, respectively, and is provided with a voice waveform and audio waveform information extracted by the processing unit and a set of lip sync data generated by the data unit. A calculation unit configured to perform a mathematical operation of and synchronize synchronization of a voice and an animation in the process of converting the voice waveform information into voice data; And
상기 연산부와 전기적으로 연결되며, 게임 엔진을 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 최종 결과물을 생성하는 형성부를 포함하는 점에 그 특징이 있다.It is characterized in that it includes a formation unit electrically connected to the operation unit and generating a final result including lip sync animation and voice by substituting the value processed by the operation unit into 3D modeling data through a game engine.
여기서, 상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트를 입력받는 입력부와, 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하는 음성 및 음성정보 추출부를 포함하여 구성될 수 있다.Here, the processing unit classifies the input unit for receiving the text provided from the user or an external source, and transmits the TTS service request target part to the external TTS service provider by classifying the input text from the TTS service provider. It may be configured to include a voice and voice information extraction unit for extracting the voice waveform and voice waveform information from the provided TTS service data.
또한, 상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱(parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 상기 형성부로 전달할 수 있다.In addition, the processor may parse content of text provided from a user or an external source and transmit the content related to emotion or action to the forming unit so that an animation suitable for a situation may be produced.
또한, 상기 TTS(Text-to-Speech) 서비스 제공원은 클라우드 음성합성 시스템을 포함할 수 있다.In addition, the text-to-speech (TTS) service provider may include a cloud speech synthesis system.
이때, 상기 클라우드 음성합성 시스템은 Google TTS, IBM Watson, AWS(Amazon Web Service) Polly, Naver Clova 등을 포함할 수 있다.In this case, the cloud speech synthesis system may include Google TTS, IBM Watson, Amazon Web Service (AWS) Polly, Naver Clova, and the like.
또한, 상기 연산부는 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크애니메이션의 수학적 연산을 수행하는 립싱크 애니메이션 연산부를 포함하여 구성될 수 있다.The calculator may include a lip sync animation calculator configured to perform a mathematical operation of a lip sync animation by receiving a voice waveform and voice waveform information extracted by the processor and a mouth-shaped (lip sync) data set generated by the data unit. Can be configured.
이때, 상기 립싱크 애니메이션 연산부는 상기 자료부에 의해 생성된 음성 데이터 세트까지 더 제공받아 립싱크애니메이션의 수학적 연산을 수행할 수 있다.In this case, the lip sync animation calculator may further receive a voice data set generated by the data unit to perform a mathematical operation of the lip sync animation.
또한, 상기 형성부는 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물을 산출하는 최종 결과물 형성부를 포함하여 구성될 수 있다.In addition, the forming unit may be configured to include a final result forming unit for calculating the rendered final result including the lip sync animation and voice by substituting the value processed by the calculating unit into the 3D modeling data.
또한, 상기의 목적을 달성하기 위하여 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법은,In addition, in order to achieve the above object, artificial intelligence-based facial animation automatic generation method according to the present invention,
처리부, 자료부, 연산부, 형성부를 포함하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템을 기반으로 한 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법으로서,An automatic facial animation generation method of an artificial intelligence-based virtual character based on an automatic facial animation generation system of an artificial intelligence-based virtual character including a processing unit, a data unit, an operation unit, and a forming unit,
a) 상기 처리부가 사용자 또는 외부 소스(source)에 의해 입력된 텍스트를 분류하여 TTS(Text-to-Speech) 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하는 단계;a) classifying, by the processor, text input by a user or an external source and transmitting a text-to-speech service request target portion to an external TTS service provider;
b) 상기 처리부가 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료를 수신하여 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하고, 가상 캐릭터의 페이셜 애니메이션 생성에 필요한 형태에 맞게 음성 파형을 분해하는 단계;b) the processor receiving TTS service data provided from the TTS service provider, extracting voice waveform and voice waveform information from the TTS service data, and decomposing the voice waveform according to a shape required for generating a facial animation of the virtual character;
c) 상기 자료부에 의해 특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 수집하여 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트를 생성하는 단계;c) generating, by the data unit, a mouth-shaped (lip-sync) data set which collects position information of a designated point of a face pronouncing a specific language and classifies the value converted into 3D data according to a predetermined feature;
d) 상기 자료부에 의해 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트를 생성하는 단계;d) generating a personalized speech data set based on speech waveform data obtained by collecting and extracting speech data of a specific person by the data unit;
e) 상기 연산부가 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 (lip-sync) 애니메이션의 수학적 연산을 수행하는 단계; e) performing, by the calculation unit, a mathematical operation of a lip-sync animation by receiving the speech waveform and the speech waveform information extracted by the processing unit and a set of lip sync data generated by the data unit; ;
f) 상기 연산부가 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞추는 단계; 및f) synchronizing an animation with a voice in the operation unit converting the voice waveform information into voice data; And
g) 상기 형성부가 게임 엔진을 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 최종 결과물을 생성하는 단계를 포함하는 점에 그 특징이 있다.and g) generating the final result including the lip sync animation and the voice by substituting the 3D modeling data into the 3D modeling data through the game engine.
여기서, 상기 처리부는 내부의 입력부를 통해 사용자 또는 외부의 소스(source)로부터 제공된 텍스트를 입력받고, 음성 및 음성정보 추출부를 통해 입력부로부터 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출할 수 있다.Here, the processing unit receives text provided from a user or an external source through an internal input unit, classifies the text input from the input unit through a voice and voice information extraction unit, and converts a TTS service request target portion to an external TTS service. Transmit to a provider and extract voice waveform and voice waveform information from TTS service data provided from the TTS service provider.
또한, 상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱(parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 상기 형성부로 전달할 수 있다.In addition, the processor may parse content of text provided from a user or an external source and transmit the content related to emotion or action to the forming unit so that an animation suitable for a situation may be produced.
또한, 상기 TTS(Text-to-Speech) 서비스 제공원은 클라우드 음성합성 시스템을 포함할 수 있다.In addition, the text-to-speech (TTS) service provider may include a cloud speech synthesis system.
이때, 상기 클라우드 음성합성 시스템은 Google TTS, IBM Watson, AWS(Amazon Web Service) Polly, Naver Clova 등을 포함할 수 있다.In this case, the cloud speech synthesis system may include Google TTS, IBM Watson, Amazon Web Service (AWS) Polly, Naver Clova, and the like.
또한, 상기 연산부는 내부의 립싱크 애니메이션 연산부를 통해 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 애니메이션의 수학적 연산을 수행할 수 있다.In addition, the operation unit receives a voice waveform and voice waveform information extracted by the processing unit and an lip sync data set generated by the data unit through an internal lip sync animation operation unit to perform a mathematical operation of the lip sync animation. can do.
이때, 상기 립싱크 애니메이션 연산부는 상기 자료부에 의해 생성된 음성 데이터 세트까지 더 제공받아 립싱크 애니메이션의 수학적 연산을 수행할 수 있다.In this case, the lip sync animation calculator may further receive a voice data set generated by the data unit to perform a mathematical operation of the lip sync animation.
또한, 상기 형성부는 내부의 최종 결과물 형성부를 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물을 산출할 수 있다.The forming unit may calculate a rendered final result including lip sync animation and voice by substituting the value processed by the calculating unit into 3D modeling data through an internal final result forming unit.
이와 같은 본 발명에 의하면, 클라우드 시스템 기반의 음성 데이터를 활용하여 한국어 발음을 보여주는 자연스러운 입모양 애니메이션을 제공함으로써, 실제의 사람과 같은 느낌을 줄 수 있는 장점이 있다.According to the present invention, by providing a natural mouth-shaped animation showing the pronunciation of the Korean language using the cloud data based on the voice system, there is an advantage that can give a feeling like a real person.
도 1은 본 발명의 실시예에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 실시예에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법의 실행 과정을 나타낸 흐름도이다.
도 3은 모음 및 묵음 층계를 모음 사각도를 이용하여 좌표화 및 각 모음 발음을 이차원 좌표계에 대입하여 좌표화시킨 상태를 나타낸 도면이다.
도 4는 각 발음이 나오는 시간과 관련하여 가중치가 "ㅣ(I)"에서 "ㅗ(O)"까지 도달해야 하는 시간을 도식적으로 나타낸 도면이다.
도 5는 각 발음에 대하여 선형 보간을 이용하여 시간의 변화량에 따라 형태 변환을 수행하는 과정을 도식적으로 나타낸 도면이다.
도 6은 Blend Space 상에서 비중값을 적용함에 있어 자연스러움을 유도하기 위해 Ease-in 방식 및 Ease-out 방식을 적용하는 것을 나타낸 도면이다.
도 7은 기존의 IPA 기준 morph target list를 표로 나타낸 도면이다.
도 8의 기존의 IPA 기준 morph target list를 얼굴 형태 기준 morph target list로 변경함에 있어서 입, 턱 관련 부분을 변경한 테이블을 나타낸 도면이다.
도 9는 IPA 기준 morph target을 얼굴 형태 기준 morph target으로 재구성한 것을 표로 나타낸 도면이다.
도 10은 립싱크 애니메이션 및 음성을 포함한 최종 결과물의 일 예를 나타낸 도면이다.
도 11은 립싱크 애니메이션 및 음성을 포함한 최종 결과물의 다른 예를 나타낸 도면이다.1 is a view schematically showing the configuration of a system for automatically generating facial animation of an artificial intelligence-based virtual character according to an embodiment of the present invention.
2 is a flowchart illustrating an execution process of a method for automatically generating facial animation of an artificial intelligence-based virtual character according to an embodiment of the present invention.
3 is a view showing a state in which the vowel and the silent stairs are coordinated using vowel squares and each vowel pronunciation is substituted into a two-dimensional coordinate system.
FIG. 4 is a diagram schematically showing a time when a weight must reach from "I (I)" to "ㅗ (O)" in relation to the time at which each pronunciation occurs.
FIG. 5 is a diagram schematically illustrating a process of performing shape transformation according to a change amount of time using linear interpolation for each pronunciation.
FIG. 6 is a diagram illustrating the application of the Ease-in method and the Ease-out method to induce naturalness in applying specific gravity values in Blend Space.
7 is a table showing a conventional IPA reference morph target list as a table.
8 is a diagram illustrating a table in which mouth and jaw related parts are changed in changing the existing IPA reference morph target list of FIG. 8 into a face shape reference morph target list.
9 is a table showing a reconstruction of the IPA reference morph target into a face shape reference morph target.
10 is a diagram illustrating an example of a final result including lip sync animation and voice.
11 is a view showing another example of the final result including lip sync animation and voice.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정되어 해석되지 말아야 하며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.The terms or words used in this specification and claims are not to be construed as being limited to the common or dictionary meanings, and the inventors may properly define the concept of terms in order to best explain their invention in the best way. Based on the principle, it should be interpreted as meaning and concept corresponding to the technical idea of the present invention.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "장치" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when a part is said to "include" a certain component, it means that it may further include other components, except to exclude other components unless specifically stated otherwise. In addition, the terms “… unit”, “… unit”, “module”, “device”, and the like described in the specification mean a unit that processes at least one function or operation, which is hardware or software or a combination of hardware and software. It can be implemented as.
이하 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 실시예에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템의 구성을 개략적으로 나타낸 도면이다.1 is a view schematically showing the configuration of a system for automatically generating facial animation of an artificial intelligence-based virtual character according to an embodiment of the present invention.
도 1을 참조햐면, 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템(100)은 처리부(110), 자료부(120), 연산부(130) 및 형성부(140)를 포함하여 구성된다.Referring to FIG. 1, the automatic facial
처리부(110)는 사용자 또는 외부 소스(source)에 의해 입력된 텍스트를 분류하여 TTS(Text-to-Speech) 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원(미도시)으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하여 가상 캐릭터의 페이셜 애니메이션 (facial animation) 생성에 필요한 형태에 맞게 음성 파형을 분해한다. 여기서, 이와 같은 처리부(110)는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트(예를 들면, 가상 캐릭터가 말을 하게 될 대사)를 입력받는 입력부(111)와, 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하는 음성 및 음성정보 추출부(112)를 포함하여 구성될 수 있다. 이때, 상기 입력부(111)는 문단 분류와 기타 애니메이션(표정 및 행동) 정보를 동시에 받을 수 있도록 특정된 JSon 포맷으로 텍스트(대사)를 입력받을 수 있다. 여기서, 사용하는 JSon 포맷에 대한 예시를 들면 다음과 같다.The
{"Speak" : [{ "Context" : "안녕하세요. Deckard AIP의 비아입니다. 만나서 반갑습니다.",{"Speak": [{"Context": "Hello, I'm Via of Deckard AIP. Nice to meet you.",
"Emotion" : "Smile","Emotion": "Smile",
"Body" : "Hello"}]}"Body": "Hello"}]}
또한, 상기 음성 및 음성정보 추출부(112)는 입력받은 대사를 분류하여 외부의 TTS 서비스 제공원에 요청할 텍스트와 출력할 애니메이션을 선정한다. 이와 같은 음성 및 음성정보 추출부(112)는 입력부(111)를 통해 입력된 JSon 포맷 대사를 분해하여, JSon의 내용 중 "Context"의 내용을 파싱하여 외부의 TTS 서비스 제공원으로 전송한다. In addition, the voice and
또한, 이상과 같은 처리부(110)(더 상세하게는 음성 및 음성정보 추출부 (112))는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱 (parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 형성부(140)로 전달할 수 있다. 이때, 음성 및 음성정보 추출부(112)는 외부의 TTS 서비스 제공원으로부터 제공된 음성 파일과 음성 정보 파일을 다운로드하고, 음성 정보 파일을 사용하기 쉽게 파싱하여 연산부(130)로 전달한다.In addition, the processing unit 110 (more specifically, the voice and voice information extraction unit 112) as described above parses the content of the text provided from the user or an external source (source) to the content related to the emotion or action This may be transmitted to the forming
또한, 상기 TTS(Text-to-Speech) 서비스 제공원은 클라우드 음성합성 시스템을 포함할 수 있다. 이때, 상기 클라우드 음성합성 시스템은 Google TTS, IBM Watson, AWS(Amazon Web Service) Polly(즉, AWS에서 TTS 서비스 부문), Naver Clova 등을 포함할 수 있다.In addition, the text-to-speech (TTS) service provider may include a cloud speech synthesis system. In this case, the cloud speech synthesis system may include Google TTS, IBM Watson, Amazon Web Service (AWS) Polly (that is, the TTS service section in AWS), Naver Clova, and the like.
여기서, 이상과 같은 처리부(110)와 관련하여 조금 더 설명을 부가해 보기로 한다. Here, a little more explanation will be made with respect to the
전술한 바와 같이, 처리부(110)는 텍스트 데이터를 외부의 TTS 서비스 제공원(예를 들면, 클라우드 음성합성 시스템)으로 전송하고, 클라우드 음성합성 시스템은 전송받은 텍스트 데이터에 대응하여 2가지 형태의 정보, 즉 음성 파형(실제 음성으로 출력될 데이터)과 음성 파형에 대한 정보(발음을 위한 발음 기호 및 길이 정보)를 제공한다. 제공된 음성 파형은 애니메이션용 최종 음성으로 재생되고, 파형에 대한 정보는 타이밍과 그 타이밍에 대응되는 viseme 발음 기호로 분류한다. 이때, 발음 기호는 모음 및 자음으로 나눈다.As described above, the
자료부(120)는 특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트(121)와, 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트(122)를 생성한다. 여기서, 이상과 같은 입모양(립싱크) 데이터 세트(121)와 음성 데이터 세트(122)와 관련하여 설명을 부가해 보기로 한다.The
<립싱크 데이터 세트> <Lipsync data set>
입모양(립싱크) 데이터 세트(121)는 IPA(International Phonetic Alphabet; 국제음성기호)를 활용한다. IPA는 실용성 추구를 위한 근사값의 집합이기 때문에 특수 연속성을 반영하지 못하며, 그에 따라 각 언어별로 기호로써는 표현하기 힘든 단어가 발생되는 문제가 있다. 따라서, 본 발명에서는 주요 언어로 적용하고 있는 한국어를 정확하게 표현하기 위하여 한국어에는 없는 발음(예를 들면, F, Z, R 등)의 제거 및 한국어에서 특이하게 발음되고 있는 모음(예를 들면, ㅑ, ㅕ와 같은 11개의 이중모음)에 대한 발음 기호 등을 테이블에 추가함으로써, IPA와 한국어의 교집합 비교분석표를 생성하고, 이 비교분석표를 한국어 발음 기록 및 분석 단계에서 활용함으로써 최대한 한국어에 적합한 데이터를 추출할 수 있도록 한다.The mouth-shaped (lip sync)
또한, 입모양(립싱크) 데이터 세트(121)는 레코딩된 얼굴 데이터를 활용한다. 본 발명에서 도입하고 있는 깊이 카메라(depth camera)를 이용한 애플 ARKit의 얼굴 3D 트래킹 기술은 FACS(Facial Action Coding System)의 액션 유닛과 연결되어 있으며, FACS의 액션 유닛 자체로는 할 수 없었던 변수화를 가능하게 한다. 이 변수화를 통해 각 표정을 지을 때 FACS의 액션 유닛 번호 및 그에 따라오는 액션 유닛의 수치를 획득할 수 있으며, 이렇게 얻어진 수치들의 그룹은 나중에 애니메이션을 생성하는데 사용할 수 있는 발음별 그룹으로 묶는다.In addition, the mouth-shaped (lip sync)
또한, 성별, 나이 등을 다르게 한 다양한 분포군 테스트를 반복하여 각 유닛별 변수값을 분석하여 평균값을 추출할 수 있다. 이렇게 추출된 각 발음별 액션 유닛들과 그에 맞는 액션 유닛별 변수값을 그룹화 하여 한국어 Viseme 테이블로 구성한다. 그리고 그룹별 평균치 및 이후 캐릭터의 그룹화를 위한 가중치를 획득한다. 따라서, 시대의 흐름에 따른 언어 변화에 대응할 때에도, 각 시대의 데이터를 수집하기만 하면 별도의 작업없이 적용시킬 수 있다.In addition, various distribution group tests having different genders and ages may be repeated to analyze the variable values of each unit to extract an average value. The pronunciation units for each pronunciation and the variable values for each action unit are grouped to form a Korean Viseme table. And the average value for each group and the weight for grouping the character later is obtained. Therefore, even when responding to language changes according to the passage of times, it is possible to apply without additional work just by collecting data of each era.
입모양(립싱크) 데이터 세트(121)는 IPA를 활용한 비교분석표를 통해 추출한 데이터를 기반으로 3D 모델링을 하고, 캐릭터 세트를 구성한다.The mouth shape (lip sync)
<음성 데이터 세트><Voice data set>
특정인을 표적으로 하여 품질 높은 립싱크 애니메이션을 진행하고자 할 때, 그 사람 특유의 말하는 방식을 추가하는 개인화 작업이 필요하다. 이를 위해 데이터 획득 과정에서 다수의 평균치가 아닌 고유의 값을 사용해야 하며, 이에 따라 본 발명에서는 한 사람으로부터 많은 데이터를 추출하는 방식을 취한다. 그리고 추출된 데이터는 파형 분석을 통해 특정 파형 및 특정 발음에서의 습관을 데이터화 한다. 이러한 과정에서 얻은 데이터 세트 값을 TTS 서비스 제공원(예컨대, 클라우드 음성합성 시스템)으로 전달하고, TTS 서비스 제공원으로부터 이 값이 적용된 음성 파일을 제공받는다.When you want to make a high quality lip-sync animation targeting a specific person, you need to personalize it to add the person's unique way of talking. To this end, a unique value rather than a plurality of average values should be used in the data acquisition process. Accordingly, the present invention takes a method of extracting a lot of data from one person. The extracted data is data-formed habits in specific waveforms and specific pronunciations through waveform analysis. Data set values obtained in this process are transferred to a TTS service provider (eg, a cloud speech synthesis system), and a voice file to which the values are applied is provided from the TTS service provider.
다시 도 1을 참조하면, 연산부(130)는 상기 처리부(110) 및 자료부(120)와 전기적으로 각각 연결되며, 상기 처리부(110)에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부(120)에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크(lip-sync) 애니메이션의 수학적 연산을 수행하며, 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞춘다. 여기서, 이와 같은 연산부(130)는 상기 처리부(110)에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부(120)에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 애니메이션의 수학적 연산을 수행하는 립싱크 애니메이션 연산부(131)를 포함하여 구성될 수 있다. 이때, 상기 립싱크 애니메이션 연산부(131)는 상기 자료부(120)에 의해 생성된 음성 데이터 세트(122)까지 더 제공받아 립싱크 애니메이션의 수학적 연산을 수행할 수 있다.Referring back to FIG. 1, the
형성부(140)는 상기 연산부(130)와 전기적으로 연결되며, 게임 엔진을 통해 상기 연산부(130)에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 최종 결과물을 생성한다. 이와 같은 형성부(140)는 상기 연산부(130))에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물을 산출하는 최종 결과물 형성부 (141)를 포함하여 구성될 수 있다.The forming
여기서, 이상과 같은 연산부(130) 및 형성부(140)와 관련하여 부연 설명을 해보기로 한다.Here, the description will be made in detail with respect to the
<연산부><Operation part>
본 발명에서는 AWS Polly(Amazon Web Service, 이 중에서 TTS 서비스 부문)에서 제공하는 TTS 서비스 값을 그대로 사용하지 않고, 한국어에 접목하여 수정된 값을 사용한다. 애니메이션의 구성에서 자연스러운 발음을 표출하는 애니메이션(이하 '발음 애니메이션'이라 한다)의 생성을 위해 애니메이션의 층계를 3가지의 층계, 즉 모음 및 묵음 층계, 자음 층계, 이중모음 층계로 구성한다. 여기서, 발음 애니메이션의 주 층계는 모음 및 묵음 층계이며, 이는 도 3에 도시된 바와 같이, 모음 사각도를 이용하여 좌표화한다. 즉, 각 모음 발음을 이차원 좌표계에 대입하여 좌표화시킨다. 이때, 좌표는 0∼1 범위의 값을 갖는다. 좌표에 대입하는 데이터는 특정 그룹별 평균치로 추출된 값을 사용한다.In the present invention, the TTS service value provided by AWS Polly (Amazon Web Service, TTS service unit) is not used as it is, and a value modified by grafting into Korean is used. In order to create an animation that expresses natural pronunciation in the composition of the animation (hereinafter, referred to as a 'pronounced animation'), the stairs of animation are composed of three steps, vowel and silent steps, consonant steps, and double vowel steps. Here, the main steps of the pronunciation animation are vowel and silent steps, which are coordinated using vowel squareness, as shown in FIG. 3. That is, each vowel pronunciation is substituted into a two-dimensional coordinate system and coordinated. At this time, the coordinate has a value in the range of 0-1. The data assigned to the coordinates use the value extracted as the average value of a specific group.
애니메이션을 구동하기 위해 음성 파형에 대한 정보에서 분류한 내용 중, 시간을 각 모음 별로 이동하는 기준으로 사용하며, 그 모음의 이동 목적지는 아래의 예시로 설명한다.In order to drive the animation, time is used as a reference for moving each vowel from the information classified in the information on the voice waveform, and the moving destination of the vowel will be described as an example below.
예) "니코시아"-NicosiaEx) "Nicosia"-Nicosia
위의 니코시아에서 발음해야 하는 모음은 "ㅣ(I)", "ㅗ(O)", "ㅣ(I)", "ㅏ(A)"이다. 각 발음이 나오는 시간은 "ㅣ(I)": 0.230초, "ㅗ(O)": 0.132초, "ㅣ(I)": 0.259초, "ㅏ(A)": 0.169초이다. 가중치가 "ㅣ(I)"에서 "ㅗ(O)"까지 도달해야 하는 시간은 도 4에 도시된 바와 같이, 0.132초이다. 여기서, 0.132초 내로 설정한 이유는 TTS에서 생성된 음성 파형내에서 실제 특정 발음 사운드 파장이 들리는 시점에서 시각적으로 입모양이 완성되어 있어야 립싱크가 성립하기 때문에, "ㅗ(O)"의 발음이 나오는 시간이 0.132초이므로, 0.132초 내에 입모양이 완성되어야 하기 때문이다.The vowels to be pronounced in Nicosia above are "ㅣ (I)", "ㅗ (O)", "ㅣ (I)", and "ㅏ (A)". The time for each pronunciation is "ㅣ (I)": 0.230 seconds, "ㅗ (O)": 0.132 seconds, "ㅣ (I)": 0.259 seconds, "ㅏ (A)": 0.169 seconds. The time the weight should reach from "I (I)" to "ㅗ (O)" is 0.132 seconds, as shown in FIG. Here, the reason for setting within 0.132 seconds is that the lip sync is established only when the lip sync is visually completed at the point of time when the actual sound of the specific sound sound is heard in the voice waveform generated by the TTS. Since the time is 0.132 seconds, the mouth shape must be completed within 0.132 seconds.
시간의 흐름에 따라 "ㅣ(I)"와 "ㅗ(O)" 사이의 가중치가 변하며, 그 값에 따라 애니메이션 값을 연산한다.As time passes, the weight between “I (I)” and “ㅗ (O)” changes, and the animation value is calculated according to the value.
이때, "ㄴ", "ㅋ", "ㅅ" 등의 자음 음은 자음의 타이밍 발생시 첨가형 애니메이션(Additive Animation)으로 빠른 시간 내에 1차원 파라미터 상에서 움직임으로써 자연스러움을 이끈다. At this time, the consonant sounds such as "b", "ㅋ", "ㅅ" are natural animations by moving on one-dimensional parameters in a short time with additive animation when timing of the consonants occurs.
또한, 이중 모음(예: "ㅑ" 등)의 경우 IPA에 근거한 [j]에 관련된 1차원 파라미터를 현재 발음 중인 모음이 끝날 때까지 유지함으로써 이중모음 구현이 되도록 한다.In addition, in the case of double vowels (eg, “ㅑ”), the double vowel implementation is maintained by maintaining the one-dimensional parameter related to [j] based on IPA until the end of the current vowel.
여기서, 이상과 같은 연산부와 관련하여 설명을 조금 더 부가해 보기로 한다.Here, a little more explanation will be given in relation to the above calculation unit.
연산부에서의 연산 처리와 관련하여 립싱크 애니메이션 결과물을 발전시킬 수 있는 방식은 다음과 같은 5가지 방식을 들 수 있다.There are five ways to develop the lip-sync animation result in relation to the operation processing in the operation unit.
* 제1 방식: 모든 발음을 타겟 1:1 이동* Method 1: Move all pronunciations to target 1: 1
- Morphing 기술을 응용한 형태로, 각 발음을 Morph Target이라는 형태로 만들어 형태 변환을 시킨다.(완성형 morph) -Morphing technology is applied, and each pronunciation is transformed into Morph Target (finished form morph).
- 각 발음은 형태 변환을 위한 끝점의 값이 정해져 있기 때문에 선형 보간을 이용하여 시간의 변화량에 따라 형태 변환을 추가한다.-Since each pronunciation has an end point value for shape conversion, shape conversion is added based on the amount of time change using linear interpolation.
- 예를 들어, "각도기"라는 발음을 출력할 경우For example, if you output the pronunciation "protractor"
f(p) = d2f(p1) + d1f(p2)라는 선형 보간 공식을 이용하여 아래와 같이 표현한다. 이를 도 5를 참조하여 설명하면 다음과 같다.Using the linear interpolation formula, f (p) = d2f (p1) + d1f (p2), This will be described with reference to FIG. 5.
[(시작:무음) → '각'][(Start: Silent) → 'Each']
'각'에 대한 morph ⇒ 0∼100까지 선형 보간으로 이동 Morph for 'angle' ⇒ moves in linear interpolation from 0 to 100
['각' → '도']['Angle' → 'degree']
'각'에 대한 morph ⇒ 100∼0까지 선형 보간Morph for each angle ⇒ linear interpolation from 100 to 0
'도'에 대한 morph ⇒ 0∼100까지 선형 보간Morph for degrees ⇒ linear interpolation from 0 to 100
['기' → (종료: 무음)]['기' → (Exit: Silent)]
'기'에 대한 morph ⇒ 100∼0까지 선형 보간Morph ⇒ linear interpolation from 100 to 0
이상과 같은 제1 방식으로 진행할 경우, 다음과 같은 2가지 문제가 있다.Proceeding to the first method as described above, there are two problems as follows.
1) 자음에 의한 부적절한 값이 생겨 값이 튀는 현상이 발생한다, 또한, 너무 빠른 속도 변경 및 선형 보간에 의한 일정한 morph의 동화 현상이 이질감을 발생시킨다.1) Inappropriate values caused by consonants can cause the value to bounce. Also, too fast speed changes and constant morph assimilation due to linear interpolation cause heterogeneity.
2) 또한, 많은 양의 Morph Target을 제작하게 되어 제작 데이터의 Loss가 함께 발생한다.2) Also, a large amount of morph targets are produced, resulting in loss of production data.
* 제2 방식* Second way
이 제2 방식은 위의 제1 방식의 문제를 보완하기 위한 것으로서, 모음만 타겟으로 만들어 모음 morph의 동화현상을 최소화 한다.This second method is to compensate for the problem of the first method, minimizing assimilation of the vowel morph by targeting only the vowel.
- 자음동화 현상을 최소화 하기 위해 위의 제1 방식에서의 데이터 량을 최소화 한다.Minimize the amount of data in the first method to minimize consonant phenomena.
- 'ㅏ', 'ㅔ', 'ㅣ', 'ㅗ', 'ㅜ' 및 무음으로 최소화하여 제작한다. 단, 연산은 위의 제1 방식과 동일한 방식으로 한다.-Minimize to 'ㅏ', 'ㅔ', 'ㅣ', 'ㅗ', 'TT' and silence. However, the calculation is performed in the same manner as the first method above.
- 자음동화 현상의 완화에 의해 더 자연스러운 발음이 가능하다. -More natural pronunciation is possible by alleviating consonant phenomena.
- 단, 발음 시, 묵음 또는 기타 턱관절의 움직임을 일으키는 자음의 발음의 부재로 정확한 발성은 불가능하다.-However, accurate speech is not possible due to the absence of consonants that cause silence or other movements of the jaw joint during pronunciation.
* 제3 방식: 모음사각도 + 특정 자음 추가* Third way: vowel angle + specific consonants
- 애니메이션 구동을 위한 좌표 테이블로써 모음 사각도를 활용한다. (1차 자료의 모음 사각도 및 예제 활용)-Use vowel square as a coordinate table for driving animation. (Using collection vowel squares and examples of primary data)
- 위 좌표테이블은 BlendSpace로 구성한다.-The above coordinate table is composed of BlendSpace.
- 이를 위해서 Morph 모음은 모음 사각도에 맞추어 위치를 정한다.To do this, the Morph vowel is positioned according to the vowel squareness.
예를 들어 모음사각도에서 'ㅏ' 발음은 (0.45,0.1), 'ㅗ'는 (0.9,0.6)의 좌표를 가진다.For example, in the vowel angle, 'ㅏ' pronunciation has coordinates of (0.45,0.1) and 'ㅗ' has (0.9,0.6) coordinates.
단, 설계된 캐릭터의 성향 및 느낌에 따라 좌표값은 조절할 수 있다.However, coordinate values can be adjusted according to the inclination and feeling of the designed character.
- 이렇게 구성된 좌표계는 BlendSpace의 연산에 따라 비중값을 변경한다.This coordinate system changes specific gravity according to the operation of BlendSpace.
- 또한 정확한 발음의 보완을 위해 애니메이션의 연산을 위해 애니메이션의 층계를 제작한다.-Also, to make up the correct pronunciation, animation steps are produced for the calculation of animation.
모음 및 묵음 층계 → 모음 사각도에 의해 구동Vowel and silent stairs → vowel powered by square
자음 층계 → 특정 경우만 가산형으로 작동Consonant stairs → act as additive only in certain cases
이중모음 층계 → 특정 경우만 가산형으로 작동Double vowel stairs → act as additive only in certain cases
* 제3-1 방식: 타겟 비중 추가* Method 3-1: Add target specific gravity
- BlendSpace 상에서 가중치(이하 비중) 변경과정에서 각 층계별 비중을 가함에 있어 단순 선형 보간의 공식을 적용함이 아니라 상황 별 보간 공식을 다르게 적용하여 더욱 자연스러운 방식을 사용한다.-In the process of changing the weight (hereinafter, specific gravity) on BlendSpace, we apply a more natural method by applying different linear interpolation formulas differently than simple linear interpolation formulas.
- 리니어 방식은 시간 변화가 일정하다.-Linear change is constant in time.
리니어 방식은 도 6의 (A)에 도시된 바와 같이, 등속운동이기 ?문에 자연스러움이 없어 테스트 용도로만 사용한다.Since the linear method is a constant velocity motion as shown in FIG.
- BlendSpace 상에서 비중값을 적용함에 있어 자연스러움을 유도하기 위해 도 6의 (B)와 같은 Ease-in 방식과, (C)와 같은 Ease-out 방식을 적극 활용한다.-Ease-in method as shown in (B) and Ease-out method as shown in (C) is actively used to induce naturalness in applying specific gravity on BlendSpace.
모음 및 묵음 층계는 (B)와 같은 Ease-in 방식으로 적용하고, 빠르게 발음하고 사라져야 하는 자음 및 이중 모음 층계는 (C)와 같은 Ease-Out 방식으로 급하게 변하는 값을 적용한다. 이때, 자연스러움을 위해 Ease-In-Out의 변화는 적용하지 않는다. 이는 Ease-In-Out의 변화를 적용하게 되면 실제 변화량의 시간이 너무 빨라 그러한 변화에 애니메이션이 부합하지 않는 것처럼 보이게 되기 때문이다.The vowel and mute staircases are applied by the Ease-in method as shown in (B), and the consonant and double vowel staircases that should be pronounced and disappeared rapidly are applied by the Ease-Out method as shown in (C). At this time, the change of Ease-In-Out is not applied for the sake of naturalness. This is because applying the change of Ease-In-Out makes the actual change amount time so fast that the animation does not seem to match the change.
* 제3-2 방식: 자료부에서 분석된 데이터 추가* Method 3-2: Add data analyzed in data book
- 같은 발음을 해도 사람마다 입모양이 다를 수 있다는 점을 감안하여 타겟을 발음별 형태로 설정하지 않고, 표현할 수 있는 얼굴 움직임으로 변경한다. 예를 들면, 'ㅏ' 발음 타겟 → JawDrop으로 한다.-Even if the pronunciation is different, the shape of the mouth may be different for each person. Therefore, the target is changed to a facial motion that can be expressed without setting the target in the form of pronunciation. For example, let 'ㅏ' pronunciation target → JawDrop.
- morph target list를 변경한다. 즉, 도 7의 [표 1]과 같은 기존의 IPA 기준 morph target list를 도 8의 [표 2]와 같이 얼굴 형태 기준 morph target list 중 입, 턱 관련 부분을 변경한 테이블을 적용한다.Change the morph target list. That is, the table in which the mouth and the jaw-related parts of the face shape reference morph target list are changed is applied to the existing IPA reference morph target list as shown in [Table 1] of FIG. 7.
이상과 같은 기존의 IPA 기준 morph target(표 1) 및 얼굴 형태 기준 morph target(표 2)과 관련하여 "Viseme" 재구성 방법에 대해 간략히 설명해 보기로 한다. With respect to the conventional IPA reference morph target (Table 1) and face shape reference morph target (Table 2) as described above, a brief description of the "Viseme" reconstruction method.
morph target의 데이터는 자료부에서 구성할 데이터를 활용한다. 예를 들면, 'ㅏ'를 발음하기 위해서 여러 개의 morph target을 조합하는(ex.: JawDrop(60%)+ mouthShrugUpper(30%)) 방법(이하 조합형 morph)을 사용할 수 있다.The data of the morph target utilizes the data to be configured in the data book. For example, you can use a combination of several morph targets (e.g. JawDrop (60%) + mouthShrugUpper (30%)) to pronounce 'ㅏ' (combined morph).
예를 들면, 도 7의 [표 1]에서의 "2번, a(전설 비원순 근저모음)"를 표현하기 위해 도 8의 [표 2]에서의 "JawOpen"과 "MouthShrugUpper" 값을 적정 비율로 혼합해서 표현한다. 이를 표로 정리하면 도 9와 같다.For example, in order to represent "No. 2, a (Legend non-universe root vowel)" in [Table 1] of FIG. 7, the values of "JawOpen" and "MouthShrugUpper" in Table 2 of FIG. To mix. This is summarized in a table as shown in FIG. 9.
<형성부><Formation part>
형성부(140)의 최종 결과물 형성부(141)는 그래픽 제작 툴(예를 들면, 마야, 맥스 등)에서 연산부(130)의 연산 결과를 적용할 수 있는 morph target 셋업 및 연출된 화면 및 립싱크 애니메이션, 음성 신호를 동시에 재생하여 사용자에게 렌더링된 최종 결과물을 제공한다. 또한, 이와 같은 최종 결과물 형성부(141)는 효과적인 연출을 위헤 입력부(111)로부터 제공받은 표정 및 행동 애니메이션을 발음과 동시에 또는 원하는 시점에 플레이할 수 있도록 행동 애니메이션의 재생을 제어하는 기능도 갖는다.The final
그러면, 이하에서는 이상과 같은 구성 및 기술적 특징을 가지는 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템을 바탕으로 한 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법에 대해 설명해 보기로 한다.Next, a method for automatically generating facial animation of an artificial intelligence-based virtual character based on an automatic facial animation generation system of an artificial intelligence-based virtual character according to the present invention having the above-described configuration and technical features will be described. do.
도 2는 본 발명의 실시예에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법의 실행 과정을 나타낸 흐름도이다.2 is a flowchart illustrating an execution process of a method for automatically generating facial animation of an artificial intelligence-based virtual character according to an embodiment of the present invention.
도 2를 참조하면, 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법은, 전술한 바와 같은 처리부(110), 자료부(120), 연산부(130), 형성부(140)를 포함하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템(100)을 기반으로 한 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법으로서, 먼저 상기 처리부(110)가 사용자 또는 외부 소스(source)에 의해 입력된 텍스트(예를 들면, 가상 캐릭터가 말을 하게 될 대사)를 분류하여 TTS(Text-to-Speech) 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원(미도시)으로 전송한다(단계 S201). 이에 따라 외부의 TTS 서비스 제공원은 수신한 TTS(Text-to-Speech) 서비스 요청 대상 부분에 대응하는 TTS 서비스 자료를 제공하게 된다.Referring to FIG. 2, in the method for automatically generating a facial animation of an artificial intelligence-based virtual character according to the present invention, the
상기 처리부(110)는 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료를 수신하고, 그 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출한다. 그리고 추출한 음성 파형 및 음성 파형 정보를 바탕으로 가상 캐릭터의 페이셜 애니메이션 생성에 필요한 형태에 맞게 음성 파형을 분해한다(단계 S202).The
여기서, 상기 처리부(110)는 내부의 입력부(111)를 통해 사용자 또는 외부의 소스(source)로부터 제공된 텍스트를 입력받고, 음성 및 음성정보 추출부(112)를 통해 입력부(111)로부터 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하고, TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출할 수 있다.Here, the
또한, 상기 처리부(110)는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱(parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 형성부(140)로 전달할 수 있다.In addition, the
또한, 상기 TTS(Text-to-Speech) 서비스 제공원은 클라우드 음성합성 시스템을 포함할 수 있다. 이때, 상기 클라우드 음성합성 시스템은 Google TTS, IBM Watson, AWS(Amazon Web Service) Polly, Naver Clova 등을 포함할 수 있다.In addition, the text-to-speech (TTS) service provider may include a cloud speech synthesis system. In this case, the cloud speech synthesis system may include Google TTS, IBM Watson, Amazon Web Service (AWS) Polly, Naver Clova, and the like.
한편, 자료부(120)는 특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 수집하여 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트(121)를 생성한다(단계 S203).On the other hand, the
또한, 자료부(120)는 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트(122)를 생성한다(단계 S204).In addition, the
이렇게 하여 상기 처리부(110)에 의해 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하고, 자료부(120)에 의해 입모양(립싱크) 데이터 세트(121)와 음성 데이터 세트(122)를 생성하면, 연산부(130)는 상기 처리부(110)에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부(120)에 의해 생성된 입모양(립싱크) 데이터 세트(121)를 제공받아 립싱크(lip-sync) 애니메이션의 수학적 연산을 수행한다(단계 S205). 여기서, 상기 연산부(130)는 내부의 립싱크 애니메이션 연산부(131)를 통해 상기 처리부(110)에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부(120)에 의해 생성된 입모양(립싱크) 데이터 세트(121)를 제공받아 립싱크 애니메이션의 수학적 연산을 수행할 수 있다. 이때, 상기 립싱크 애니메이션 연산부(131)는 상기 자료부(120)에 의해 생성된 음성 데이터 세트(122)까지 더 제공받아 립싱크 애니메이션의 수학적 연산을 수행할 수 있다.In this manner, the
또한, 상기 연산부(130)는 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞춘다(단계 S206).In addition, the
이상에 의해 연산부(130)에 의해 립싱크 애니메이션의 수학적 연산이 완료되면, 형성부(140)는 게임 엔진을 통해 상기 연산부(130)에서 연산 처리된 값을 3D 모델링 데이터에 대입하여, 도 10 및 도 11에 도시된 바와 같이, 립싱크 애니메이션 및 음성을 포함한 최종 결과물(142)을 생성한다(단계 S207). 여기서, 이와 같은 형성부(140)는 내부의 최종 결과물 형성부(141)를 통해 상기 연산부(130)에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물(142)을 산출(출력)할 수 있다. 여기서, 도 10의 최종 결과물(142)은 대화형 챗봇과 연결시켜, 답변을 받을 때 말하는 캐릭터로 보일 수 있도록 구성한 형태이고, 도 11의 최종 결과물(142)은 단독 실행 파일(stand alone) 형식 또는 웹에서도 말하는 캐릭터를 적용시킬 수 있도록 구성한 형태이다.When the mathematical operation of the lip sync animation is completed by the
이상의 설명과 같이, 본 발명에 따른 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템 및 방법은, 클라우드 시스템 기반의 음성 데이터를 활용하여 한국어 발음을 보여주는 자연스러운 입모양 애니메이션을 제공함으로써, 실제의 사람과 같은 느낌을 줄 수 있는 장점이 있다.As described above, the system and method for automatically generating facial animation of an artificial intelligence-based virtual character according to the present invention provides a natural mouth-shaped animation showing Korean pronunciation using cloud system-based voice data, thereby realizing a real person and It has the advantage of giving the same feeling.
이상, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양하게 변경, 응용될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다. 따라서, 본 발명의 진정한 보호 범위는 다음의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.As mentioned above, the present invention has been described in detail through the preferred embodiments, but the present invention is not limited thereto, and various changes and applications may be made without departing from the technical spirit of the present invention. Self-explanatory Therefore, the true scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent scope should be construed as being included in the scope of the present invention.
110: 처리부 111: 입력부
112: 음성 및 음성정보 추출부 120: 자료부
121: 립싱크 데이터 세트 122: 음성 데이터 세트
130: 연산부 131: 립싱크 애니메이션 연산부
140: 형성부 141: 최종 결과물 형성부
142: 최종 결과물110: processing unit 111: input unit
112: voice and voice information extraction unit 120: data
121: Lip sync data set 122: Voice data set
130: calculator 131: lip-sync animation calculator
140: forming unit 141: final result forming unit
142: Final output
Claims (16)
특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트와, 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트를 생성하는 자료부;
상기 처리부 및 자료부와 전기적으로 각각 연결되며, 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크(lip-sync) 애니메이션의 수학적 연산을 수행하며, 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞추는 연산부; 및
상기 연산부와 전기적으로 연결되며, 게임 엔진을 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 최종 결과물을 생성하는 형성부를 포함하고,
상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트를 입력받는 입력부와, 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하는 음성 및 음성정보 추출부를 포함하며,
상기 입력부는 문단 분류와 애니메이션의 표정 및 행동 정보를 동시에 받을 수 있도록 특정된 JSon 포맷으로 텍스트(대사)를 입력받도록 구성되고,
상기 음성 및 음성정보 추출부는 입력받은 대사를 분류하여 외부의 TTS 서비스 제공원에 요청할 텍스트와 출력할 애니메이션을 선정하고, 상기 입력부를 통해 입력된 JSon 포맷 대사를 분해하여, JSon의 내용 중 "Context"의 내용을 파싱하여 외부의 TTS 서비스 제공원으로 전송하며, 외부의 TTS 서비스 제공원으로부터 제공된 음성 파일과 음성 정보 파일을 다운로드하고, 음성 정보 파일을 사용하기 쉽게 파싱하여 상기 연산부로 전달하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템.
Transmit text-to-speech (TTS) service request target part to an external TTS service provider by classifying text input by a user or an external source, and voice from the TTS service material provided from the TTS service provider. A processor for extracting waveform and voice waveform information and decomposing the voice waveform according to a shape required for generating a facial animation of the virtual character;
A set of mouth-shaped (lip-sync) data, which is classified according to a predetermined feature, by converting positional information of a specified point of a face in which a specific language is pronounced into 3D data, and voice waveform data obtained by collecting and extracting voice data of a specific person. A data portion for generating a personalized voice data set based on the;
A lip-sync animation is electrically connected to the processing unit and the data unit, respectively, and is provided with a voice waveform and audio waveform information extracted by the processing unit and a set of lip sync data generated by the data unit. A calculation unit configured to perform a mathematical operation of and synchronize synchronization of a voice and an animation in the process of converting the voice waveform information into voice data; And
It is electrically connected to the operation unit, including a formation unit for generating a final result including lip sync animation and voice by substituting the value processed by the operation unit through the game engine to the 3D modeling data,
The processor may classify the input text into an input unit for receiving text provided from a user or an external source, and transmit a TTS service request target part to an external TTS service provider, and transmit a TTS provided from the TTS service provider. Voice and voice information extraction unit for extracting voice waveform and voice waveform information from the service data,
The input unit is configured to receive text (metabolism) in a specific JSon format to receive paragraph classification and expression and behavior information of an animation at the same time,
The voice and voice information extractor classifies the input dialogue and selects text to be requested from an external TTS service provider and an animation to be output, and decomposes the JSon format dialogue inputted through the input unit to display "Context" in the contents of JSon. Parse the contents of the TTS service provider and transmit it to the external TTS service provider, download the voice file and voice information file provided from the external TTS service provider, and parse the voice information file for easy use and deliver it to the operation unit. Facial animation automatic generation system of virtual characters.
상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱(parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 상기 형성부로 전달하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템.
The method of claim 1,
The processing unit parses the content of the text provided from the user or an external source, and the content related to emotion or action is transmitted to the forming unit so that the animation corresponding to the situation can be produced. Automatic facial animation generation system for characters.
상기 연산부는 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 애니메이션의 수학적 연산을 수행하는 립싱크 애니메이션 연산부를 포함하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템.
The method of claim 1,
The calculation unit includes an lip sync animation operation unit configured to perform a mathematical operation of a lip sync animation by receiving a speech waveform and audio waveform information extracted by the processor and a mouth-shaped (lip sync) data set generated by the data unit. Automatic facial animation generation system based on virtual characters.
상기 립싱크 애니메이션 연산부는 상기 자료부에 의해 생성된 음성 데이터 세트까지 더 제공받아 립싱크 애니메이션의 수학적 연산을 수행하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템.
The method of claim 6,
The lip sync animation calculating unit is further provided with the voice data set generated by the data unit to perform a facial animation automatic generation system for artificial intelligence-based virtual character to perform a mathematical operation of the lip sync animation.
상기 형성부는 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물을 산출하는 최종 결과물 형성부를 포함하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 시스템.
The method of claim 1,
The forming unit substitutes the value processed by the calculating unit into the 3D modeling data and automatically generates a facial animation system for an artificial character-based virtual character including a final result forming unit for calculating a final rendered result including lip sync animation and voice. .
a) 상기 처리부가 사용자 또는 외부 소스(source)에 의해 입력된 텍스트를 분류하여 TTS(Text-to-Speech) 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하는 단계;
b) 상기 처리부가 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료를 수신하여 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하고, 가상 캐릭터의 페이셜 애니메이션 생성에 필요한 형태에 맞게 음성 파형을 분해하는 단계;
c) 상기 자료부에 의해 특정 언어를 발음하고 있는 얼굴의 지정된 포인트의 위치 정보를 수집하여 3D 데이터로 변환한 값을 미리 설정한 특징에 따라 분류한 입모양(립싱크) 데이터 세트를 생성하는 단계;
d) 상기 자료부에 의해 특정 사람의 음성 데이터를 수집하여 추출한 음성 파형 데이터에 기초한 개인화된 음성 데이터 세트를 생성하는 단계;
e) 상기 연산부가 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 (lip-sync) 애니메이션의 수학적 연산을 수행하는 단계;
f) 상기 연산부가 상기 음성 파형 정보를 음성 데이터로 변환하는 과정에서 음성과 애니메이션의 동기를 맞추는 단계; 및
g) 상기 형성부가 게임 엔진을 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 최종 결과물을 생성하는 단계를 포함하고,
상기 처리부는 내부의 입력부를 통해 사용자 또는 외부의 소스(source)로부터 제공된 텍스트를 입력받고, 음성 및 음성정보 추출부를 통해 입력부로부터 입력된 텍스트를 분류하여 TTS 서비스 요청 대상 부분을 외부의 TTS 서비스 제공원으로 전송하고, 상기 TTS 서비스 제공원으로부터 제공된 TTS 서비스 자료로부터 음성 파형 및 음성 파형 정보를 추출하며,
상기 입력부는 문단 분류와 애니메이션의 표정 및 행동 정보를 동시에 받을 수 있도록 특정된 JSon 포맷으로 텍스트(대사)를 입력받고,
상기 음성 및 음성정보 추출부는 입력받은 대사를 분류하여 외부의 TTS 서비스 제공원에 요청할 텍스트와 출력할 애니메이션을 선정하고, 상기 입력부를 통해 입력된 JSon 포맷 대사를 분해하여, JSon의 내용 중 "Context"의 내용을 파싱하여 외부의 TTS 서비스 제공원으로 전송하며, 외부의 TTS 서비스 제공원으로부터 제공된 음성 파일과 음성 정보 파일을 다운로드하고, 음성 정보 파일을 사용하기 쉽게 파싱하여 상기 연산부로 전달하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법.
An automatic facial animation generation method of an artificial intelligence-based virtual character based on an automatic facial animation generation system of an artificial intelligence-based virtual character including a processing unit, a data unit, an operation unit, and a forming unit,
a) classifying, by the processor, text input by a user or an external source and transmitting a text-to-speech service request target portion to an external TTS service provider;
b) the processor receiving TTS service data provided from the TTS service provider, extracting voice waveform and voice waveform information from the TTS service data, and decomposing the voice waveform according to a shape required for generating a facial animation of the virtual character;
c) generating, by the data unit, a mouth-shaped (lip-sync) data set which collects position information of a designated point of a face pronouncing a specific language and classifies the value converted into 3D data according to a predetermined feature;
d) generating a personalized speech data set based on speech waveform data obtained by collecting and extracting speech data of a specific person by the data unit;
e) performing, by the calculation unit, a mathematical operation of a lip-sync animation by receiving the speech waveform and the speech waveform information extracted by the processing unit and a set of lip sync data generated by the data unit; ;
f) synchronizing an animation with a voice in the operation unit converting the voice waveform information into voice data; And
g) generating a final result including a lip sync animation and voice by substituting the 3D modeling data into the 3D modeling data by the forming unit through a game engine.
The processing unit receives text provided from a user or an external source through an internal input unit, classifies the text input from the input unit through a voice and voice information extraction unit, and selects a TTS service request target portion from an external TTS service provider. And extracts the speech waveform and the speech waveform information from the TTS service data provided from the TTS service provider,
The input unit receives text (metabolism) in a specific JSon format to receive paragraph classification and animation expression and behavior information at the same time,
The voice and voice information extractor classifies the input dialogue and selects text to be requested from an external TTS service provider and an animation to be output, and decomposes the JSon format dialogue inputted through the input unit to display "Context" in the contents of JSon. Parse the contents of the TTS service provider and transmit it to the external TTS service provider, download the voice file and voice information file provided from the external TTS service provider, and parse the voice information file for easy use and deliver it to the operation unit. How to automatically generate facial animation of a virtual character.
상기 처리부는 사용자 또는 외부의 소스(source)로부터 제공된 텍스트의 내용을 파싱(parsing)하여 감정 또는 행동과 관련된 내용은 상황에 맞는 애니메이션이 제작될 수 있도록 하기 위해 상기 형성부로 전달하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법.
The method of claim 9,
The processing unit parses the content of the text provided from the user or an external source, and the content related to emotion or action is transmitted to the forming unit so that the animation corresponding to the situation can be produced. How to automatically generate facial animations for characters.
상기 연산부는 내부의 립싱크 애니메이션 연산부를 통해 상기 처리부에 의해 추출된 음성 파형 및 음성 파형 정보와, 상기 자료부에 의해 생성된 입모양(립싱크) 데이터 세트를 제공받아 립싱크 애니메이션의 수학적 연산을 수행하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법.
The method of claim 9,
The operation unit receives an audio waveform and audio waveform information extracted by the processing unit and an lip sync data set generated by the data unit through an internal lip sync animation operation unit to perform a mathematical operation of a lip sync animation. Automatic generation of facial animations of intelligence-based virtual characters.
상기 립싱크 애니메이션 연산부는 상기 자료부에 의해 생성된 음성 데이터 세트까지 더 제공받아 립싱크 애니메이션의 수학적 연산을 수행하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법.
The method of claim 14,
And the lip sync animation calculator is further provided with a voice data set generated by the data unit to perform mathematical operation of a lip sync animation.
상기 형성부는 내부의 최종 결과물 형성부를 통해 상기 연산부에서 처리된 값을 3D 모델링 데이터에 대입하여 립싱크 애니메이션 및 음성을 포함한 렌더링(rendering)된 최종 결과물을 산출하는 인공지능 기반의 가상 캐릭터의 페이셜 애니메이션 자동 생성 방법.The method of claim 9,
The forming unit substitutes the value processed by the calculating unit into 3D modeling data through an internal final result forming unit to automatically generate facial animation of an artificial character-based virtual character that calculates a rendered final result including lip sync animation and voice. Way.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20180059875 | 2018-05-25 | ||
KR1020180059875 | 2018-05-25 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102035596B1 true KR102035596B1 (en) | 2019-10-23 |
Family
ID=68460917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180165748A KR102035596B1 (en) | 2018-05-25 | 2018-12-20 | System and method for automatically generating virtual character's facial animation based on artificial intelligence |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102035596B1 (en) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111325817A (en) * | 2020-02-04 | 2020-06-23 | 清华珠三角研究院 | Virtual character scene video generation method, terminal device and medium |
KR102254193B1 (en) * | 2020-08-12 | 2021-06-02 | 주식회사 오텀리브스 | System of generating animation character and Method thereof |
KR20210086744A (en) * | 2019-12-30 | 2021-07-09 | (주)라이언로켓 | System and method for producing video contents based on deep learning |
US11140360B1 (en) | 2020-11-10 | 2021-10-05 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
CN113628309A (en) * | 2021-08-17 | 2021-11-09 | 杭州相芯科技有限公司 | Method and system for generating real person voice mouth shape animation, electronic equipment and storage medium |
CN113760100A (en) * | 2021-09-22 | 2021-12-07 | 入微智能科技(南京)有限公司 | Human-computer interaction equipment with virtual image generation, display and control functions |
KR20220038945A (en) * | 2020-09-21 | 2022-03-29 | 씨제이올리브네트웍스 주식회사 | Previsualization system and method based on reinforcrment learning technique |
CN114885186A (en) * | 2022-06-09 | 2022-08-09 | 厦门理工学院 | Automatic directing system based on multi-source information fusion |
CN115147521A (en) * | 2022-06-17 | 2022-10-04 | 北京中科视维文化科技有限公司 | Method for generating character expression animation based on artificial intelligence semantic analysis |
US11463657B1 (en) | 2020-11-10 | 2022-10-04 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
US11582424B1 (en) | 2020-11-10 | 2023-02-14 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
CN117894064A (en) * | 2023-12-11 | 2024-04-16 | 中新金桥数字科技(北京)有限公司 | Mouth shape alignment method based on training of traversing initial consonants, vowels and integral pronunciation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000009490A (en) * | 1998-07-24 | 2000-02-15 | 윤종용 | Method and apparatus of lip-synchronization for voice composition |
KR20030039019A (en) * | 2001-11-09 | 2003-05-17 | 신선혜 | Medium storing a Computer Program with a Function of Lip-sync and Emotional Expression on 3D Scanned Real Facial Image during Realtime Text to Speech Conversion, and Online Game, Email, Chatting, Broadcasting and Foreign Language Learning Method using the Same |
KR20100041586A (en) | 2008-10-14 | 2010-04-22 | 삼성전자주식회사 | Apparatus and method for generating face character based on voice |
KR101854576B1 (en) * | 2017-11-10 | 2018-05-03 | 베스핀글로벌 주식회사 | Cloud management system based on chatbot and operating method thereof |
-
2018
- 2018-12-20 KR KR1020180165748A patent/KR102035596B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20000009490A (en) * | 1998-07-24 | 2000-02-15 | 윤종용 | Method and apparatus of lip-synchronization for voice composition |
KR20030039019A (en) * | 2001-11-09 | 2003-05-17 | 신선혜 | Medium storing a Computer Program with a Function of Lip-sync and Emotional Expression on 3D Scanned Real Facial Image during Realtime Text to Speech Conversion, and Online Game, Email, Chatting, Broadcasting and Foreign Language Learning Method using the Same |
KR20100041586A (en) | 2008-10-14 | 2010-04-22 | 삼성전자주식회사 | Apparatus and method for generating face character based on voice |
KR101854576B1 (en) * | 2017-11-10 | 2018-05-03 | 베스핀글로벌 주식회사 | Cloud management system based on chatbot and operating method thereof |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210086744A (en) * | 2019-12-30 | 2021-07-09 | (주)라이언로켓 | System and method for producing video contents based on deep learning |
KR102319753B1 (en) * | 2019-12-30 | 2021-11-03 | (주)라이언로켓 | Method and apparatus for producing video contents based on deep learning |
CN111325817B (en) * | 2020-02-04 | 2023-07-18 | 清华珠三角研究院 | Virtual character scene video generation method, terminal equipment and medium |
CN111325817A (en) * | 2020-02-04 | 2020-06-23 | 清华珠三角研究院 | Virtual character scene video generation method, terminal device and medium |
KR102254193B1 (en) * | 2020-08-12 | 2021-06-02 | 주식회사 오텀리브스 | System of generating animation character and Method thereof |
KR20220038945A (en) * | 2020-09-21 | 2022-03-29 | 씨제이올리브네트웍스 주식회사 | Previsualization system and method based on reinforcrment learning technique |
KR102419073B1 (en) | 2020-09-21 | 2022-07-08 | 씨제이올리브네트웍스 주식회사 | Previsualization system and method based on reinforcrment learning technique |
US11582424B1 (en) | 2020-11-10 | 2023-02-14 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
US11303851B1 (en) | 2020-11-10 | 2022-04-12 | Know Systems Corp | System and method for an interactive digitally rendered avatar of a subject person |
US11317061B1 (en) | 2020-11-10 | 2022-04-26 | Know Systems Corp | System and method for an interactive digitally rendered avatar of a subject person |
US11323663B1 (en) | 2020-11-10 | 2022-05-03 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
US11463657B1 (en) | 2020-11-10 | 2022-10-04 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
US11140360B1 (en) | 2020-11-10 | 2021-10-05 | Know Systems Corp. | System and method for an interactive digitally rendered avatar of a subject person |
CN113628309A (en) * | 2021-08-17 | 2021-11-09 | 杭州相芯科技有限公司 | Method and system for generating real person voice mouth shape animation, electronic equipment and storage medium |
CN113628309B (en) * | 2021-08-17 | 2023-09-22 | 杭州相芯科技有限公司 | Method and system for generating mouth-shaped animation of real voice, electronic equipment and storage medium |
CN113760100A (en) * | 2021-09-22 | 2021-12-07 | 入微智能科技(南京)有限公司 | Human-computer interaction equipment with virtual image generation, display and control functions |
CN113760100B (en) * | 2021-09-22 | 2024-02-02 | 入微智能科技(南京)有限公司 | Man-machine interaction equipment with virtual image generation, display and control functions |
CN114885186A (en) * | 2022-06-09 | 2022-08-09 | 厦门理工学院 | Automatic directing system based on multi-source information fusion |
CN115147521A (en) * | 2022-06-17 | 2022-10-04 | 北京中科视维文化科技有限公司 | Method for generating character expression animation based on artificial intelligence semantic analysis |
CN117894064A (en) * | 2023-12-11 | 2024-04-16 | 中新金桥数字科技(北京)有限公司 | Mouth shape alignment method based on training of traversing initial consonants, vowels and integral pronunciation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102035596B1 (en) | System and method for automatically generating virtual character's facial animation based on artificial intelligence | |
WO2022048403A1 (en) | Virtual role-based multimodal interaction method, apparatus and system, storage medium, and terminal | |
CN113781610B (en) | Virtual face generation method | |
KR102116309B1 (en) | Synchronization animation output system of virtual characters and text | |
US9667574B2 (en) | Animated delivery of electronic messages | |
US20120130717A1 (en) | Real-time Animation for an Expressive Avatar | |
US11005796B2 (en) | Animated delivery of electronic messages | |
KR101089184B1 (en) | Method and system for providing a speech and expression of emotion in 3D charactor | |
CN117275485B (en) | Audio and video generation method, device, equipment and storage medium | |
Massaro et al. | A multilingual embodied conversational agent | |
CN117058286B (en) | Method and device for generating video by using word driving digital person | |
Karpov et al. | Multimodal synthesizer for Russian and Czech sign languages and audio-visual speech | |
Kolivand et al. | Realistic lip syncing for virtual character using common viseme set | |
Wolfe et al. | Exploring localization for mouthings in sign language avatars | |
Lacerda et al. | Enhancing Portuguese Sign Language Animation with Dynamic Timing and Mouthing | |
CN116580721B (en) | Expression animation generation method and device and digital human platform | |
WO2023167212A1 (en) | Computer program, information processing method, and information processing device | |
Ali et al. | Research Article Real Time Talking System for Virtual Human based on ProPhone | |
Wang et al. | A real-time text to audio-visual speech synthesis system. | |
Albakrya et al. | The use of Malaysian phonology in developing a Malaysian mouth-chart for the animation industry | |
Hoon et al. | Framework development of real-time lip sync animation on viseme based human speech | |
Hoon et al. | Development of real-time lip sync animation framework based on viseme human speech | |
Anitha et al. | NextGen Dynamic Video Generator using AI | |
Raheem Ali et al. | Real Time Talking System for Virtual Human based on ProPhone | |
JP2003296753A (en) | Interactive system for hearing-impaired person |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |