EP3996047A1 - Method and system for generating face animations from speech signal input - Google Patents
Method and system for generating face animations from speech signal input Download PDFInfo
- Publication number
- EP3996047A1 EP3996047A1 EP21159663.0A EP21159663A EP3996047A1 EP 3996047 A1 EP3996047 A1 EP 3996047A1 EP 21159663 A EP21159663 A EP 21159663A EP 3996047 A1 EP3996047 A1 EP 3996047A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- subject
- landmarks
- facial
- sequence
- hardware processors
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—Three-dimensional [3D] animation
- G06T13/205—Three-dimensional [3D] animation driven by audio data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/0985—Hyperparameter optimisation; Meta-learning; Learning-to-learn
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—Three-dimensional [3D] animation
- G06T13/40—Three-dimensional [3D] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Definitions
- the disclosure herein generally relates to generating facial animations, and, more particularly, to a method and system for generating the facial animations from speech signal of a subject.
- Animation is the process of manipulating figures as moving objects. Cartoons, animation movies and so on are very popular areas where the animation is typically applied. It is also possible to generate animated versions of videos.
- an animated character corresponding to a real-life character referred to as "subject"
- one main requirement is that their appearance, expressions and so on are in sync with that of the subject. For example, consider that the original video is that of a politician delivering a speech. While animating this video, it is important that the appearance of animated character matches the that of the subject, and the expressions while delivering the speech also match that of the subject.
- Speech driven animation is another type of animation, in which the animation is generated by processing speech signal collected as input. Systems that perform the speech driven animation are capable of capturing relationship between speech and gestures, and then generates the animation.
- a method of generating facial animations is provided.
- a speech signal is received from a subject as input, via one or more hardware processors.
- a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement.
- a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors. Further, a plurality of subj ect-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors. The plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks.
- 3D 3-Dimensional
- head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method.
- MFCC Mel-frequency cepstral coefficients
- To generate the head movement data Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject.
- MFCC Mel-frequency cepstral coefficients
- a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames.
- the rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image.
- the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors.
- a system for generating facial animations includes a memory storing instructions, one or more communication interfaces, and one or more hardware processors coupled to the memory via the one or more communication interfaces.
- the one or more hardware processors are configured by the instructions to execute the following method to generate the animations.
- the system initially receives a speech signal from a subject as input. From the speech signal, a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement.
- 2D 2-Dimensional
- a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors.
- a plurality of subject-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors.
- the plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks.
- head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method.
- MFCC Mel-frequency cepstral coefficients
- To generate the head movement data Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject.
- MFCC Mel-frequency cepstral coefficients
- a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames.
- the rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image.
- the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors.
- a non-transitory computer readable medium for generating facial animations comprises of a plurality of instructions, which when executed, cause one or more hardware processors to perform the following method to generate the animation.
- a speech signal is received from a subject as input, via one or more hardware processors.
- a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement.
- a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors.
- a plurality of subject-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors.
- the plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks.
- head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method.
- MFCC Mel-frequency cepstral coefficients
- To generate the head movement data Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject.
- MFCC Mel-frequency cepstral coefficients
- a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames.
- the rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image.
- the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors.
- FIG. 1 through FIG. 6B where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method.
- FIG. 1 illustrates an exemplary system for generating animations using speech signal of a subject, according to some embodiments of the present disclosure.
- the system 100 includes one or more hardware processors 102, communication interface(s) or input/output (I/O) interface(s) 103, and one or more data storage devices or memory 101 operatively coupled to the one or more hardware processors 102.
- the one or more hardware processors 102 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, graphics controllers, logic circuitries, and/or any devices that manipulate signals based on operational instructions.
- the processor(s) are configured to fetch and execute computer-readable instructions stored in the memory.
- the system 100 can be implemented in a variety of computing systems, such as laptop computers, notebooks, hand-held devices, workstations, mainframe computers, servers, a network cloud and the like.
- the communication interface(s) 103 can include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like and can facilitate multiple communications within a wide variety of networks N/W and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite.
- the communication interface(s) 103 can include one or more ports for connecting a number of devices to one another or to another server.
- the memory 101 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- volatile memory such as static random access memory (SRAM) and dynamic random access memory (DRAM)
- non-volatile memory such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes.
- ROM read only memory
- erasable programmable ROM erasable programmable ROM
- flash memories hard disks
- optical disks optical disks
- magnetic tapes magnetic tapes.
- one or more components (not shown) of the system 100 can be stored in the memory 101.
- the memory 101 is configured to store a plurality of operational instructions (or 'instructions') which when executed cause one
- FIG. 2 a detailed architecture of a head motion generating network used by the system 100 to generate head motion data of the user, by processing the speech signal input, is depicted in FIG. 3 .
- FIGS. 4 and 5 Various steps involved in the process of generating the animation by the system 100 are explained with description of FIGS. 4 and 5 . All the steps in FIGS. 2 and 3 are explained with reference to the system of FIG. 1 .
- FIG. 2 is a block diagram depicting functional implementation of the system of FIG. 1 , according to some embodiments of the present disclosure.
- the architecture in FIG. 2 includes an MFCC (Mel-frequency cepstral coefficients) extraction module, a face motion generation module, a head motion generation module, a retargeting module, and a texture generation module. Functions of each of these modules are explained hereafter, but may not be in the order in which the steps are executed by the system 100.
- MFCC Mel-frequency cepstral coefficients
- the MFCC extraction module collects input speech signal from the subject as input, and generates Mel-frequency cepstral coefficients parameters by processing the speech signal using state of the art MFCC feature extraction approach.
- Input to the system 100 may be a video of the subject speaking, and the speech signal may be extracted from the video, by the system 100.
- the system 100 may split the video into a plurality of video frames, and then extract the speech signals from each of the video frames.
- the MFCC features extracted are then fed as input to the face motion generation module, and the head motion generation module.
- the face motion generation module is configured to process the speech signal input i.e. the MFCC parameters extracted from the speech signal, and identifies facial movement data pertaining to the subject.
- the facial movement data may include information such as but not limited to lip synchronization with input speech signal, natural eye blink (eye blinks), and eye brow movement.
- the system 100 may use any known suitable approach to identify the facial movement data.
- One such technique is detailed in the Indian patent application 202021032794 , filed on 30 th of July, 2020.
- the head motion generation module is configured to generate head movement data pertaining to the subject, by processing the speech signal, using the method elaborated in description of FIG. 4 .
- the head motion generation module may use a Long-Short Team Memory (LSTM) based head motion generation network to process the speech signal to generate the head movement data.
- LSTM Long-Short Team Memory
- the LSTM based architecture is depicted in FIG. 3 , and working of this head motion generation network is explained with description of FIG. 4 .
- the retargeting module is configured to collect a plurality of 3-Dimensional (3D) canonical (or mean) facial landmarks generated from the speech signal, and a plurality of subject specific 3-Dimensional (3D) landmarks as input. The retargeting module then retargets the 3D canonical facial landmarks to the subject specific 3D landmarks, to generate 3D motion induced subject specific frontal facial landmarks.
- the texture generation module is configured to collect information on the 3D motion induced subject specific frontal facial landmarks and the head movement data as inputs, and generate subject-specific motion induced landmarks as output.
- the texture generation module further encodes the motion induced subject specific frontal facial landmarks to a latent vector.
- the texture generation module then decodes the latent vector to generate an image face with motion, of the subject.
- the face image with motion forms the animated face of the subject.
- FIGS. 4A and 4B (collectively referred to as FIG. 4 ) is a flow diagram depicting steps involved in the process of generating the animation, using the system of FIG. 1 , according to some embodiments of the present disclosure.
- the system 100 is configured to generate an animation output, which captures information on head movement of a subject, in addition to facial movement information, so that the generated animation is more similar to reality/ground truth.
- the system 100 uses a data model to determine the facial movement data from the speech signal.
- the system 100 trains the data model using different speech signal inputs, such that trained model generated by virtue of the training process can be used to determine/generate the facial movement data for a given input speech signal. Steps in the method of extracting/generating various facial movement data as disclosed herein can be used during the training phase as well.
- the system 100 receives/collects a speech signal from a subject, as input.
- the speech signal may be of any length or may be of a fixed length as pre-configured with the system 100.
- the system 100 extracts a plurality of DeepSpeech features from the speech signal.
- the DeepSpeech features include features of audio a t .
- Further noise z t is sampled from a normal distribution using predefined mean and standard deviation.
- the system 100 generates a plurality of 2-Dimensional (2D) canonical facial landmarks by processing the DeepSpeech features and the noise input.
- the 2D canonical facial landmarks pertain to the facial movement data (lip synchronization with input speech signal, eye blinks, and eyebrow movement) of the subject. Further at step 406, the system 100 converts the 2D canonical facial landmarks to corresponding 3D canonical facial landmarks, based on a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences.
- the generated 3D canonical facial landmarks x ⁇ t ⁇ R 68 ⁇ 3 with the speech-induced lip motions and eye motions x ⁇ 1: T f FM ( a 1: T , z 1: T
- ⁇ M denotes trainable parameters used for generating the facial landmarks.
- the system 100 may use a Generative Adversarial Network (GAN) network for generating the facial movement data by processing the speech signal input.
- GAN Generative Adversarial Network
- a generator module of the GAN network includes an LSTM network and an encoder-decoder network which takes noise and an audio feature window (the speech signal is split to multiple time windows, and each one is referred to as the 'audio feature window') respectively and generates predictions with respect to displacement of lips and eye on the 2D canonical landmarks and at step 406 the 2D canonical landmarks are converted to 3D canonical landmarks.
- the system 100 may use MMD Loss L E so as to supervise the eye movements.
- the system 100 may use a regularization loss L temp to ensure smoothness in predicted landmarks in consecutive frames.
- the system 100 extracts subject-specific 3D landmarks from a target identity image of the subject.
- the target identity image is an image of the subject, from which the system 100 can extract unique facial characteristics of the user, as the subject-specific landmarks.
- the system 100 retargets the 3D canonical face landmarks generated at step 406 to the subject specific 3D landmarks, so as to generate facial motion-induced subject-specific frontal 3D landmarks.
- the system 100 generates head movement data pertaining to the subject, by processing the speech signal.
- the system 100 uses the GAN based architecture as depicted in FIG. 3 to process the speech signal and generate the head movement data.
- a generator network f HM of the GAN based the architecture is a self attention based LSTM architecture.
- the system 100 collects the MFCC features of the speech signal as input.
- the f Hm determines an attention score A 1: T for each of a plurality of audio windows, in an input sequence a 1: T .
- the f HM determines a sequence of rotation (in quaternion space) and translation with respect to the frontal 3D canonical face.
- ⁇ H are the learnable parameters of the f HM being used by the system 100, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject.
- the f HM then generates a sequence of rotated 3D motion-induced subject-specific landmarks, by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the 3D motion-induced subject-specific frontal facial landmarks for each of the plurality of frames.
- T ⁇ t ) of the subject and is expressed as: R ⁇
- T ⁇ t A t ⁇ R ⁇
- a t represents the attention.
- the high value of A t indicating a coherent speech in the input speech signal.
- head of the subject remains at a neutral position with pose R
- the determined head pose is given as input to a discriminator of the f HM .
- the discriminator determines the head pose as one or 'real or fake', in comparison with a ground truth head pose of the subject. This feedback (real or fake) is further used to improve the performance of the generator and helps to generate realistic head motions..
- the system 100 After generating the head movement data, at step 414, the system 100 generates subject specific motion induced landmarks based on the 3D motion induced subject specific frontal facial landmarks and the head movement data.
- the system 100 collects the 3D motion induced subject specific frontal facial landmarks and the head movement data as inputs.
- the system 100 then combines the facial motion-induced subject-specific frontal 3D landmarks and the head movement data to generate the subject specific motion induced landmarks.
- the system 100 retargets the facial motion-induced subject-specific frontal 3D landmarks and the head movement data onto the subject specific landmarks.
- system 100 projects the rotated and translated 3D motion-induced subject-specific landmarks to 2D motion-induced subject-specific landmarks, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image using a state-of-the art algorithm for facial landmark detection.
- a texture generation network f TN of the GAN network includes a landmark encoder (LE), a texture encoder (TE), and a Texture Decoder (TD).
- the LE encodes the subject specific motion induced landmarks to a latent vector e.
- the TD decodes the latent vector e to generate an image face with emotion, of the subject.
- the system 100 may use Adaptive Instance Normalization (AIN) to update the latent vector e by activations of last layer of TE.
- the TE may encode texture information of the subject by taking 'n' number of identity images and corresponding landmark images, concatenated channel-wise.
- the system 100 may then provide the generated animation (i.e. the image face with motion) to the user, using one or more suitable interfaces.
- the steps in method 400 may be performed in the same order as depicted, or in any alternate order that is technically feasible.
- FIG. 5 is a flow diagram depicting steps involved in the process of training a data model for determining the head movement data, using the system of FIG. 1 , according to some embodiments of the present disclosure.
- the data model is generated by using a plurality of speech signals as training data.
- the system 100 extracts the sequence of rotation and translation parameters representing ground truth head pose of corresponding subject from the ground truth videos of training dataset. From speech signal input, the system 100 generates the sequence of rotation and translation parameters using the approach elaborated in Fig 4 (412). Further, at step 504, the system 100 compares the determined sequence of rotation and translation parameters with a corresponding ground truth head pose sequence.
- the determined sequence of rotation and translation parameters is classified as 'real' at step 506, and if the extent of match between the determined sequence of rotation and translation parameters with the corresponding ground truth head pose sequence is below the threshold score, the determined sequence of rotation and translation parameters is classified as 'fake'.
- Information on the classification of each of the sequence of rotation and translation parameters as real or fake is used for training the data model at step 508.
- the head movement data generated by the system 100 for any real-time speech signal input may be used for updating the data model, by the system 100.
- the system 100 trains the data model using the information of the sequence of ground truth rotation and translation parameters of head pose corresponding to each of the plurality of the audio windows of the speech signal of being real or fake by updating the training data model to produce realistic head pose sequence.
- the steps in method 500 may be performed in the same order as depicted, or in any alternate order that is technically feasible.
- FIGS. 6A and 6B are examples illustrating comparison of animations generated by the system of FIG. 1 with the animations generated by a plurality of state of the art systems, in accordance with some embodiments of the present disclosure.
- prior art reference 1 i.e. Chen et al.
- prior art reference 2 i.e. Yi et al.
- the animation generated by the system 100 considers the head movement data as well, in addition to the lip movement and eyeball movement data, and as a result, is more similar to the ground truth images.
- VoxCeleb1 contained over 100,000 utterances from interviews of 1,251 celebrities
- VoxCeleb2 contains 1 million utterances of 6,112 celebrities
- LRS-TED contains over 400 hours of video, extracted from 5594 TED videos.
- the LRS and VoxCeleb2 datasets had a wider variety and range of head movements.
- CCA Canonical Correlation Analysis
- HS Wasserstein Distance
- Results of the system 100 in comparison with Chen et al. 2020 (Prior art reference 1) and Yi et al. 2020 (Prior art reference 2) are depicted in FIGS. 6A and 6B .
- the system 100 was able to generate head movements and eye blink, using only 32 images of a target person (i.e. subject).
- Yi et al. (2020) is not able to produce significant motion in head if the driving video does not contain any head motion.
- Chen et al. (2020) predicts head poses taking initial 3secs of sample head poses of the target along with the speech input.
- the head poses predicted by Chen et al. (2020) may be different from the initial ground truth head poses as they are also dependent on current speech input, but the generated facial texture can fail to preserve the identity information while generating head movements ( Fig. 6A , fourth row of first example).
- R3 takes a ground-truth landmark input instead of audio/speech signal.
- Head poses predicted by R2 have been used for computing head pose metrics CCA and HS, but ground truth landmarks used for generating the facial texture are evaluated by texture quality metrics CSIM, FaceNet, FID, SSIM, and CPBD.
- Table. 1 shows the quantitative comparisons with the state-of-the-art methods.
- the system 100 could produce realistic head motions with higher canonical correlation with the head motions in real videos as compared to the state-of-the-art methods.
- the system 100 generated head motion/movements only from the speech input unlike Yi et al. (2020) and Chen et al. (2020) who need sample speech from the test subject with ground-truth head poses (extracted from the sample video input).
- Yi et al. (2020) did not generate the entire frame, instead they synthesized the background from the ground-truth sample video. But the system 100 generated the entire frame of the video and hence the CSIM metric was lower for the method adopted by the system 100, in comparison.
- the embodiments of present disclosure herein address unresolved problem of generating animation using speech signal inputs.
- the embodiment thus provides a mechanism to determine head movement of a subject, along with lip movement data and eye blink data.
- the embodiments herein further provide a mechanism to generate animations by using the head movement information along with the lip movement data and eye blink data.
- the hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof.
- the device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g.
- ASIC application-specific integrated circuit
- FPGA field-programmable gate array
- the means can include both hardware means and software means.
- the method embodiments described herein could be implemented in hardware and software.
- the device may also include software means.
- the embodiments may be implemented on different hardware devices, e.g. using a plurality of CPUs.
- the embodiments herein can comprise hardware and software elements.
- the embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc.
- the functions performed by various components described herein may be implemented in other components or combinations of other components.
- a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- a computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored.
- a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein.
- the term "computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Processing Or Creating Images (AREA)
Abstract
Description
- The present application claims priority from Indian patent application no.
.202021048222, filed on November 04, 2020 - The disclosure herein generally relates to generating facial animations, and, more particularly, to a method and system for generating the facial animations from speech signal of a subject.
- Animation is the process of manipulating figures as moving objects. Cartoons, animation movies and so on are very popular areas where the animation is typically applied. It is also possible to generate animated versions of videos. When an animated character corresponding to a real-life character (referred to as "subject") in a video is generated, one main requirement is that their appearance, expressions and so on are in sync with that of the subject. For example, consider that the original video is that of a politician delivering a speech. While animating this video, it is important that the appearance of animated character matches the that of the subject, and the expressions while delivering the speech also match that of the subject. Speech driven animation is another type of animation, in which the animation is generated by processing speech signal collected as input. Systems that perform the speech driven animation are capable of capturing relationship between speech and gestures, and then generates the animation.
- Typically while delivering the speech (or even when casually talking), movement of the subject's lips, eyes, and head can be observed. While animating the subject, the lip movements, eye movements, head movements and so on need to be captured. Some of the state-of-the-art systems in the field of animation fail to capture the head movements. Some other existing systems capture the head movements, but by learning from a sample video clip, which in some cases should be a part of the original video being animated. Disadvantage of this approach is that the sample video being analyzed fail to capture all the head movements of the subject that may vary based on the changes in way of talking of the subject. For example, consider that the original video is of 60 minutes length. The sample video may be of 5 minutes length, which is a small portion of the original video. By determining the head motion from the small portion, fails to produce meaningful and coherent head motions for the rest of the speech input and produces similar kind of head motions irrespective of speech.
- Embodiments of the present disclosure present technological improvements as solutions to one or more of the above-mentioned technical problems recognized by the inventors in conventional systems. For example, in one embodiment, a method of generating facial animations is provided. In this method, a speech signal is received from a subject as input, via one or more hardware processors. From the speech signal, a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement. Further, a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors. Further, a plurality of subj ect-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors. The plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks. Further, head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method. To generate the head movement data, Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject. Further, a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames. The rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image. Further, the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors.
- In another aspect, A system for generating facial animations is provided. The system includes a memory storing instructions, one or more communication interfaces, and one or more hardware processors coupled to the memory via the one or more communication interfaces. The one or more hardware processors are configured by the instructions to execute the following method to generate the animations. The system initially receives a speech signal from a subject as input. From the speech signal, a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement. Further, a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors. Further, a plurality of subject-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors. The plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks. Further, head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method. To generate the head movement data, Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject. Further, a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames. The rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image. Further, the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors.
- In yet another aspect, a non-transitory computer readable medium for generating facial animations is provided. The non-transitory computer readable medium comprises of a plurality of instructions, which when executed, cause one or more hardware processors to perform the following method to generate the animation. In this method, a speech signal is received from a subject as input, via one or more hardware processors. From the speech signal, a plurality of 2-Dimensional (2D) canonical facial landmarks are generated using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement. Further, a plurality of 3-Dimensional (3D) canonical facial landmarks are generated by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors. Further, a plurality of subject-specific 3D landmarks are extracted from a target identity image of the subject, via the one or more hardware processors. The plurality of 3D canonical facial landmarks are then retargeted to the subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks. Further, head movement data pertaining to the subject is generated from the speech signal, using the data model, via the one or more hardware processors, using the following method. To generate the head movement data, Mel-frequency cepstral coefficients (MFCC) features are extracted for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames. Then an attention score is determined for each of the plurality of audio windows. Further, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face is determined, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject. Further, a sequence of subject-specific 3D landmarks induced with head motion is generated by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames. The rotated and translated 3D motion-induced subject-specific landmarks are then projected to 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image. Further, the 2D motion-induced subject-specific landmarks are encoded to a latent vector, via the one or more hardware processors, and then the latent vector is decoded to generate a image face with motion, via the one or more hardware processors. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed.
- The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles:
-
FIG.1 illustrates an exemplary system for generating animations using speech signal of a subject, according to some embodiments of the present disclosure. -
FIG. 2 is a block diagram depicting functional implementation of the system ofFIG. 1 , according to some embodiments of the present disclosure. -
FIG. 3 illustrates a head motion generating network, used by the system ofFIG. 1 , in accordance with some embodiments of the present disclosure. -
FIGS. 4A and4B (collectively referred to asFIG. 4 ) is a flow diagram depicting steps involved in the process of generating the animation, using the system ofFIG. 1 , according to some embodiments of the present disclosure. -
FIG. 5 is a flow diagram depicting steps involved in the process of training a data model for determining the head movement data, using the system ofFIG. 1 , according to some embodiments of the present disclosure. -
FIGS. 6A and6B are examples illustrating comparison of animations generated by the system ofFIG. 1 with the animations generated by a plurality of state of the art systems, in accordance with some embodiments of the present disclosure. - Exemplary embodiments are described with reference to the accompanying drawings. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. Wherever convenient, the same reference numbers are used throughout the drawings to refer to the same or like parts. While examples and features of disclosed principles are described herein, modifications, adaptations, and other implementations are possible without departing from the scope of the disclosed embodiments.
- Referring now to the drawings, and more particularly to
FIG. 1 through FIG. 6B , where similar reference characters denote corresponding features consistently throughout the figures, there are shown preferred embodiments and these embodiments are described in the context of the following exemplary system and/or method. -
FIG. 1 illustrates an exemplary system for generating animations using speech signal of a subject, according to some embodiments of the present disclosure. Thesystem 100 includes one ormore hardware processors 102, communication interface(s) or input/output (I/O) interface(s) 103, and one or more data storage devices ormemory 101 operatively coupled to the one ormore hardware processors 102. The one ormore hardware processors 102 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, graphics controllers, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the processor(s) are configured to fetch and execute computer-readable instructions stored in the memory. In an embodiment, thesystem 100 can be implemented in a variety of computing systems, such as laptop computers, notebooks, hand-held devices, workstations, mainframe computers, servers, a network cloud and the like. - The communication interface(s) 103 can include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like and can facilitate multiple communications within a wide variety of networks N/W and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. In an embodiment, the communication interface(s) 103 can include one or more ports for connecting a number of devices to one another or to another server.
- The
memory 101 may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, and magnetic tapes. In an embodiment, one or more components (not shown) of thesystem 100 can be stored in thememory 101. Thememory 101 is configured to store a plurality of operational instructions (or 'instructions') which when executed cause one or more of the hardware processor(s) 102 to perform various actions associated with the process of animation being performed by thesystem 100. Thesystem 100 can be implemented in a variety of ways as per requirements. One mode of implementation of the system ofFIG. 1 is depicted inFIG. 2 . Further, a detailed architecture of a head motion generating network used by thesystem 100 to generate head motion data of the user, by processing the speech signal input, is depicted inFIG. 3 . Various steps involved in the process of generating the animation by thesystem 100 are explained with description ofFIGS. 4 and5 . All the steps inFIGS. 2 and3 are explained with reference to the system ofFIG. 1 . -
FIG. 2 is a block diagram depicting functional implementation of the system ofFIG. 1 , according to some embodiments of the present disclosure. The architecture inFIG. 2 includes an MFCC (Mel-frequency cepstral coefficients) extraction module, a face motion generation module, a head motion generation module, a retargeting module, and a texture generation module. Functions of each of these modules are explained hereafter, but may not be in the order in which the steps are executed by thesystem 100. - The MFCC extraction module collects input speech signal from the subject as input, and generates Mel-frequency cepstral coefficients parameters by processing the speech signal using state of the art MFCC feature extraction approach. Input to the
system 100 may be a video of the subject speaking, and the speech signal may be extracted from the video, by thesystem 100. At this step, thesystem 100 may split the video into a plurality of video frames, and then extract the speech signals from each of the video frames. The MFCC features extracted are then fed as input to the face motion generation module, and the head motion generation module. - The face motion generation module is configured to process the speech signal input i.e. the MFCC parameters extracted from the speech signal, and identifies facial movement data pertaining to the subject. The facial movement data may include information such as but not limited to lip synchronization with input speech signal, natural eye blink (eye blinks), and eye brow movement. The
system 100 may use any known suitable approach to identify the facial movement data. One such technique is detailed in the Indian patent application , filed on 30th of July, 2020.202021032794 - The head motion generation module is configured to generate head movement data pertaining to the subject, by processing the speech signal, using the method elaborated in description of
FIG. 4 . The head motion generation module may use a Long-Short Team Memory (LSTM) based head motion generation network to process the speech signal to generate the head movement data. The LSTM based architecture is depicted inFIG. 3 , and working of this head motion generation network is explained with description ofFIG. 4 . - The retargeting module is configured to collect a plurality of 3-Dimensional (3D) canonical (or mean) facial landmarks generated from the speech signal, and a plurality of subject specific 3-Dimensional (3D) landmarks as input. The retargeting module then retargets the 3D canonical facial landmarks to the subject specific 3D landmarks, to generate 3D motion induced subject specific frontal facial landmarks.
- The texture generation module is configured to collect information on the 3D motion induced subject specific frontal facial landmarks and the head movement data as inputs, and generate subject-specific motion induced landmarks as output. The texture generation module further encodes the motion induced subject specific frontal facial landmarks to a latent vector. The texture generation module then decodes the latent vector to generate an image face with motion, of the subject. The face image with motion, forms the animated face of the subject.
-
FIGS. 4A and4B (collectively referred to asFIG. 4 ) is a flow diagram depicting steps involved in the process of generating the animation, using the system ofFIG. 1 , according to some embodiments of the present disclosure. Thesystem 100 is configured to generate an animation output, which captures information on head movement of a subject, in addition to facial movement information, so that the generated animation is more similar to reality/ground truth. In an embodiment, thesystem 100 uses a data model to determine the facial movement data from the speech signal. In a training phase, thesystem 100 trains the data model using different speech signal inputs, such that trained model generated by virtue of the training process can be used to determine/generate the facial movement data for a given input speech signal. Steps in the method of extracting/generating various facial movement data as disclosed herein can be used during the training phase as well. - At
step 402, thesystem 100 receives/collects a speech signal from a subject, as input. In various embodiments, the speech signal may be of any length or may be of a fixed length as pre-configured with thesystem 100. Further, by processing the speech signal, thesystem 100 extracts a plurality of DeepSpeech features from the speech signal. The DeepSpeech features include features of audio at . Further noise zt is sampled from a normal distribution using predefined mean and standard deviation. Atstep 404, thesystem 100 generates a plurality of 2-Dimensional (2D) canonical facial landmarks by processing the DeepSpeech features and the noise input. The 2D canonical facial landmarks pertain to the facial movement data (lip synchronization with input speech signal, eye blinks, and eyebrow movement) of the subject. Further atstep 406, thesystem 100 converts the 2D canonical facial landmarks to corresponding 3D canonical facial landmarks, based on a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences. - The generated 3D canonical facial landmarks
with the speech-induced lip motions and eye motions x̂ 1:T = fFM (a 1: T, z 1:T |θM ), where θM denotes trainable parameters used for generating the facial landmarks. As DeepSpeech predicts probability of phonemes present in the speech and is robust to noise and speaker variations in the in the audio, by using the DeepSpeech, thesystem 100 is able to achieve invariance to these factors. Thesystem 100 may use a Generative Adversarial Network (GAN) network for generating the facial movement data by processing the speech signal input. A generator module of the GAN network includes an LSTM network and an encoder-decoder network which takes noise and an audio feature window (the speech signal is split to multiple time windows, and each one is referred to as the 'audio feature window') respectively and generates predictions with respect to displacement of lips and eye on the 2D canonical landmarks and atstep 406 the 2D canonical landmarks are converted to 3D canonical landmarks. Thesystem 100 may determine the lip movements with respect to the speech signal, by learning lip positions using a supervision on landmark positions direction of movement of landmarks Lvel , and adversarial loss Ladv . Thesystem 100 may use MMD Loss LE so as to supervise the eye movements. Thesystem 100 may use a regularization loss Ltemp to ensure smoothness in predicted landmarks in consecutive frames. -
- Where xp is neutral canonical landmark.
- At
step 408, thesystem 100 extracts subject-specific 3D landmarks from a target identity image of the subject. The target identity image is an image of the subject, from which thesystem 100 can extract unique facial characteristics of the user, as the subject-specific landmarks. Further atstep 410, thesystem 100 retargets the 3D canonical face landmarks generated atstep 406 to the subject specific 3D landmarks, so as to generate facial motion-induced subject-specific frontal 3D landmarks. - Further, at
step 412, thesystem 100 generates head movement data pertaining to the subject, by processing the speech signal. In an embodiment, thesystem 100 uses the GAN based architecture as depicted inFIG. 3 to process the speech signal and generate the head movement data. A generator network fHM of the GAN based the architecture is a self attention based LSTM architecture. - In order to generate the head movement data, the
system 100 collects the MFCC features of the speech signal as input. The fHm determines an attention score A 1:T for each of a plurality of audio windows, in an input sequence a 1: T. The fHM then determines a sequence of rotation (in quaternion space) and translation with respect to the frontal 3D canonical face. θH, are the learnable parameters of the fHM being used by thesystem 100, for each of the plurality of audio windows in which the determined attention score is exceeding a threshold of attention score, using the plurality of MFCC features, wherein the sequence of rotation and translation parameters form a head pose of the subject. The fHM then generates a sequence of rotated 3D motion-induced subject-specific landmarks, by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the 3D motion-induced subject-specific frontal facial landmarks for each of the plurality of frames. The head pose ( R̂|T̂t ) of the subject, and is expressed as: - Here, At represents the attention. The high value of At indicating a coherent speech in the input speech signal. For audio frames in which the attention score is less than a threshold of attention score, head of the subject remains at a neutral position with pose R|TN. During training of the data model, the determined head pose is given as input to a discriminator of the fHM. The discriminator determines the head pose as one or 'real or fake', in comparison with a ground truth head pose of the subject. This feedback (real or fake) is further used to improve the performance of the generator and helps to generate realistic head motions.. The
system 100 defines losses defined for training the data model as: Where, - Lrot is a supervised L 2 loss between the head pose determined by the system and the ground truth head pose, for a speech signal input.
- LAtemp is regularization loss,
over A number of consecutive frames to ensure smoothness in predicted head motion. - Discriminator and Generator losses are defined by the
system 100 as: - Pr and Pg are distribution of head pose sequences with ground truth R|Tt and predicted rotation and translations R̂|T̂t respectively. Weights of the discriminator are clipped within a range of [-0.1, 0.1], and the discriminator is updated n times (for example, value of 'n' may be 5, as configured with the system 100) for every single update of the generator.
- After generating the head movement data, at
step 414, thesystem 100 generates subject specific motion induced landmarks based on the 3D motion induced subject specific frontal facial landmarks and the head movement data. Thesystem 100 collects the 3D motion induced subject specific frontal facial landmarks and the head movement data as inputs. Thesystem 100 then combines the facial motion-induced subject-specific frontal 3D landmarks and the head movement data to generate the subject specific motion induced landmarks. At this step, thesystem 100 retargets the facial motion-induced subject-specific frontal 3D landmarks and the head movement data onto the subject specific landmarks. Atstep 415,system 100 projects the rotated and translated 3D motion-induced subject-specific landmarks to 2D motion-induced subject-specific landmarks, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image using a state-of-the art algorithm for facial landmark detection. A texture generation network fTN of the GAN network includes a landmark encoder (LE), a texture encoder (TE), and a Texture Decoder (TD). Atstep 416, the LE encodes the subject specific motion induced landmarks to a latent vector e. Further atstep 418, the TD decodes the latent vector e to generate an image face with emotion, of the subject. Thesystem 100 may use Adaptive Instance Normalization (AIN) to update the latent vector e by activations of last layer of TE. The TE may encode texture information of the subject by taking 'n' number of identity images and corresponding landmark images, concatenated channel-wise. The system 100 LT ) as: Where, - The
system 100 may then provide the generated animation (i.e. the image face with motion) to the user, using one or more suitable interfaces. In an embodiment, the steps inmethod 400 may be performed in the same order as depicted, or in any alternate order that is technically feasible. -
FIG. 5 is a flow diagram depicting steps involved in the process of training a data model for determining the head movement data, using the system ofFIG. 1 , according to some embodiments of the present disclosure. The data model is generated by using a plurality of speech signals as training data. For each speech signal, atstep 502, thesystem 100 extracts the sequence of rotation and translation parameters representing ground truth head pose of corresponding subject from the ground truth videos of training dataset. From speech signal input, thesystem 100 generates the sequence of rotation and translation parameters using the approach elaborated inFig 4 (412). Further, atstep 504, thesystem 100 compares the determined sequence of rotation and translation parameters with a corresponding ground truth head pose sequence. If extent of match between the determined sequence of rotation and translation parameters with the corresponding ground truth head pose sequence is at least equal to a threshold score, the determined sequence of rotation and translation parameters is classified as 'real' atstep 506, and if the extent of match between the determined sequence of rotation and translation parameters with the corresponding ground truth head pose sequence is below the threshold score, the determined sequence of rotation and translation parameters is classified as 'fake'. Information on the classification of each of the sequence of rotation and translation parameters as real or fake is used for training the data model atstep 508. In an embodiment, the head movement data generated by thesystem 100 for any real-time speech signal input may be used for updating the data model, by thesystem 100. Thesystem 100 trains the data model using the information of the sequence of ground truth rotation and translation parameters of head pose corresponding to each of the plurality of the audio windows of the speech signal of being real or fake by updating the training data model to produce realistic head pose sequence. In an embodiment, the steps inmethod 500 may be performed in the same order as depicted, or in any alternate order that is technically feasible. -
FIGS. 6A and6B are examples illustrating comparison of animations generated by the system ofFIG. 1 with the animations generated by a plurality of state of the art systems, in accordance with some embodiments of the present disclosure. - As evident from the images, the results generated by prior art reference 1 (i.e. Chen et al.) and prior art reference 2 (i.e. Yi et al.) fail to take into consideration the head movements of the subjects while they are speaking. As a result, though the lip movements and eye ball movements form the animations generated, the subject's head remains in same position throughout the speech, which is inaccurate in comparison with the ground truth image. However, the animation generated by the
system 100 considers the head movement data as well, in addition to the lip movement and eyeball movement data, and as a result, is more similar to the ground truth images. - During experiments conducted the
system 100 was trained on training split of VoxCeleb1 (Nagrani, Chung, and Zisserman 2017) and evaluated on test split ofVoxCeleb 1, VoxCeleb2 (Nagrani, Chung, and Zisserman 2018), LRS-TED, (Afouras, Chung, and Zisserman 2018) datasets. VoxCeleb1 contained over 100,000 utterances from interviews of 1,251 celebrities, VoxCeleb2 contains 1 million utterances of 6,112 celebrities and LRS-TED contains over 400 hours of video, extracted from 5594 TED videos. The LRS and VoxCeleb2 datasets had a wider variety and range of head movements. - During the course of the experiments, a comparative study of results generated by the
system 100 with some of the recent state-of the- art methods for facial animation with predictive head motions Chen et al. (2020); Yi et al. (2020), and a method for generating facial animation from ground truth landmarks Wang et al. (2019) was conducted. Wang et al. (2019) was trained on Voxceleb1. For Chen et al. (2020); Yi et al. (2020) the publicly available pre-trained models were fine-tuned on the respective datasets (VoxCeleb1, VoxCeleb2, and LRS-TED) for qualitative and quantitative evaluation. Yi et al. (2020) took a sample video of 300 frames for an unknown subject for fine-tuning. For evaluating this method 20, 40, and 9 subjects were selected from VoxCeleb, VoxCeleb2 and LRS-TED respectively, with videos having at least 300 frames. - For evaluating the quality of head motion, Canonical Correlation Analysis (CCA, per video) as proposed in (Lu and Shimodaira 2020) and the Wasserstein Distance (HS) as proposed in (Yi et al. 2020) between the distribution of head poses in real and generated videos, were used. Sadoughi and Busso (2016) had shown a high correlation (p = 0.77) between local head motions (head motion within a short time duration) with the prosodic features of the audio in real videos. Hence, local CCA can reveal the correlation of predicted head motion with audio. For measuring the degree of identity preservation in generated videos, CSIM, i.e Cosine Similarity of ArcFace features (Deng et al. 2019), and Euclidean distance between Facenet (Schroff, Kalenichenko, and Philbin 2015) features calculated between each predicted frame and the first frame of the ground-truth video, were used. To evaluate the texture quality, FID (Heusel et al. 2017), CPBD (Narvekar and Karam 2009), and SSIM (Wang et al. 2004) for quantifying the fidelity, sharpness and structural similarity of the synthesized images respectively, were used. For measuring correctness of the lip movements Lip landmark Distances (LMD) as proposed in Chen et al. (2018) was used.
- Results of the
system 100 in comparison with Chen et al. 2020 (Prior art reference 1) and Yi et al. 2020 (Prior art reference 2) are depicted inFIGS. 6A and6B . Thesystem 100 was able to generate head movements and eye blink, using only 32 images of a target person (i.e. subject). Yi et al. (2020) is not able to produce significant motion in head if the driving video does not contain any head motion. Chen et al. (2020) predicts head poses taking initial 3secs of sample head poses of the target along with the speech input. The head poses predicted by Chen et al. (2020) may be different from the initial ground truth head poses as they are also dependent on current speech input, but the generated facial texture can fail to preserve the identity information while generating head movements (Fig. 6A , fourth row of first example). -
Table. 1 Dataset Methods CCA HS CSIM faceNet FID SSIM CPBD LMD VoxCeleb1 R1 0.660 0.767 0.713 0.59 65.9 0.52 0.407 3.385 R2 0.814 0.90 0.7 0.61 120.2 0.38 0.19 NA R3 NA NA 0.534 0.63 66.34 0.442 0.202 NA S1 0.846 0.93 0.79 0.41 34.6 0.85 0.39 2.076 VoxCeleb2 R1 0.658 0.73 0.75 0.6 110.4 0.38 0.138 4.31 R2 0.548 0.745 0.42 0.67 47 0.74 0.199 3.37 R3 NA NA 0.60 0.646 41.4 0.73 0.159 NA S1 0.710 0.808 0.70 0.47 38.7 0.84 0.202 2.611 LRS-TED R1 0.883 0.825 0.62 0.744 78.97 0.48 0.180 3.713 R2 NA NA 0.41 0.69 324 0.76 0.2 NA R3 NA NA 0.40 0.783 132 0.69 0.165 NA S1 0.891 0.849 0.68 0.56 112 0.83 0.37 2.724 R1 (Reference 1) is Yi et al
R2 (Reference 2) is Chen et al
R3 (Reference 3) is Wang et al
S1 is the method used bysystem 100 - R3 takes a ground-truth landmark input instead of audio/speech signal. Head poses predicted by R2 have been used for computing head pose metrics CCA and HS, but ground truth landmarks used for generating the facial texture are evaluated by texture quality metrics CSIM, FaceNet, FID, SSIM, and CPBD. R2 needed videos of length of at least 3 seconds for head pose generation, but videos of LRS-TED being very short, CCA and HS could not be computed for R2. Results were evaluated using K=32 for R2, R3, and S1.
- Table. 1 shows the quantitative comparisons with the state-of-the-art methods. The
system 100 could produce realistic head motions with higher canonical correlation with the head motions in real videos as compared to the state-of-the-art methods. Also it should be noted that, thesystem 100 generated head motion/movements only from the speech input unlike Yi et al. (2020) and Chen et al. (2020) who need sample speech from the test subject with ground-truth head poses (extracted from the sample video input). Yi et al. (2020) did not generate the entire frame, instead they synthesized the background from the ground-truth sample video. But thesystem 100 generated the entire frame of the video and hence the CSIM metric was lower for the method adopted by thesystem 100, in comparison. Owing to a divide and conquer approach used by thesystem 100 for independent motion and texture learning, identity of the target subject could be retained with better quality texture compared to the state-of-the art methods. Moreover, due to meta-learning, thesystem 100 could adapt to any unknown face quickly in test time by using only 32 images. Thesystem 100 was also able to achieve better lip sync than that of state-of-the-art methods because of the use of noise, accent variant DeepSpeech features as shown in Table 1. The method used by thesystem 100 could also generate realistic eye blinks (Sinha, Biswas, and Bhowmick 2020; Vougioukas, Petridis, and Pantic 2019) with an average of 0.352 blinks/sec. - The written description describes the subject matter herein to enable any person skilled in the art to make and use the embodiments. The scope of the subject matter embodiments is defined by the claims and may include other modifications that occur to those skilled in the art. Such other modifications are intended to be within the scope of the claims if they have similar elements that do not differ from the literal language of the claims or if they include equivalent elements with insubstantial differences from the literal language of the claims.
- The embodiments of present disclosure herein address unresolved problem of generating animation using speech signal inputs. The embodiment, thus provides a mechanism to determine head movement of a subject, along with lip movement data and eye blink data. Moreover, the embodiments herein further provide a mechanism to generate animations by using the head movement information along with the lip movement data and eye blink data.
- It is to be understood that the scope of the protection is extended to such a program and in addition to a computer-readable means having a message therein; such computer-readable storage means contain program-code means for implementation of one or more steps of the method, when the program runs on a server or mobile device or any suitable programmable device. The hardware device can be any kind of device which can be programmed including e.g. any kind of computer like a server or a personal computer, or the like, or any combination thereof. The device may also include means which could be e.g. hardware means like e.g. an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a combination of hardware and software means, e.g. an ASIC and an FPGA, or at least one microprocessor and at least one memory with software processing components located therein. Thus, the means can include both hardware means and software means. The method embodiments described herein could be implemented in hardware and software. The device may also include software means. Alternatively, the embodiments may be implemented on different hardware devices, e.g. using a plurality of CPUs.
- The embodiments herein can comprise hardware and software elements. The embodiments that are implemented in software include but are not limited to, firmware, resident software, microcode, etc. The functions performed by various components described herein may be implemented in other components or combinations of other components. For the purposes of this description, a computer-usable or computer readable medium can be any apparatus that can comprise, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
- The illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope of the disclosed embodiments. Also, the words "comprising," "having," "containing," and "including," and other similar forms are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms "a," "an," and "the" include plural references unless the context clearly dictates otherwise.
- Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term "computer-readable medium" should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, nonvolatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
- It is intended that the disclosure and examples be considered as exemplary only, with a true scope of disclosed embodiments being indicated by the following claims.
Claims (9)
- A method (400) of generating facial animations, the method comprising:receiving (402) a speech signal from a subject as input, via one or more hardware processors;generating (404) a plurality of 2-Dimensional (2D) canonical facial landmarks from the speech signal, using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement;generating (406) a plurality of 3-Dimensional (3D) canonical facial landmarks by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors;extracting (408) a plurality of subject-specific 3D landmarks from a target identity image of the subject, via the one or more hardware processors;retargeting (410) the plurality of 3D canonical facial landmarks to the plurality of subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks;generating (412) head movement data pertaining to the subject, from the speech signal, using the data model, via the one or more hardware processors;encoding (416) 2D motion-induced subject-specific landmarks generated as the head movement data, to a latent vector, via the one or more hardware processors; anddecoding (418) the latent vector to generate an image face with motion, via the one or more hardware processors.
- The method as claimed in claim 1, wherein generating the head movement data using the data model comprises:extracting Mel-frequency cepstral coefficients (MFCC) features for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames;determining an attention score for each of the plurality of audio windows;determining using the plurality of MFCC features, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face, for each of the plurality of audio windows for which the determined attention score is exceeding a threshold of attention score, wherein the sequence of rotation and translation parameters form a head pose of the subject;generating a sequence of subject-specific 3D landmarks induced with head motion, by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames; andprojecting the rotated and translated 3D motion-induced subject-specific landmarks to the 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image, wherein the 2D motion-induced subject-specific landmarks form the head movement data pertaining to the subject.
- The method as claimed in claim 1, wherein the data model is trained to generate the head movement data for any speech signal, wherein training the data model comprises:determining (502) the sequence of rotation and translation parameters forming the head pose of the subject, for each of a plurality of audio windows of each of the speech signals used as training data, via the one or more hardware processors;comparing (504) the sequence of rotation and translation parameters determined for each of the plurality audio windows of speech signals with a corresponding ground truth head pose sequence during training, via the one or more hardware processors;determining (506) the sequence of rotation and translation parameters of each of the plurality of speech signals as one of real or fake, based on the comparison with the corresponding ground truth head pose sequence, via the one or more hardware processors; andtraining (508) the data model using information of the sequence of ground truth rotation and translation parameters of head pose corresponding to each of the plurality of the audio windows of the speech signal to produce realistic head pose sequence, via the one or more hardware processors.
- A system (100) for generating facial animations, the system comprising:a memory (102) storing instructions;one or more communication interfaces (106); andone or more hardware processors (104) coupled to the memory (102) via the one or more communication interfaces (106), wherein the one or more hardware processors (104) are configured by the instructions to:receive a speech signal from a subject as input;generate a plurality of 2-Dimensional (2D) canonical facial landmarks from the speech signal, using a data model, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement;generate a plurality of 3-Dimensional (3D) canonical facial landmarks by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences;extract a plurality of subject-specific 3D landmarks from a target identity image of the subject;retarget the plurality of 3D canonical facial landmarks to the plurality of subject-specific 3D landmarks, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks;generate head movement data pertaining to the subject, from the speech signal, using the data model;encode 2D motion-induced subject-specific landmarks generated as the head movement data, to a latent vector; anddecode the latent vector to generate an image face with motion.
- The system as claimed in claim 4, wherein the system generates the head movement data by:extracting Mel-frequency cepstral coefficients (MFCC) features for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames;determining an attention score for each of the plurality of audio windows; determining using the plurality of MFCC features, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face, for each of the plurality of audio windows for which the determined attention score is exceeding a threshold of attention score, wherein the sequence of rotation and translation parameters form a head pose of the subject;generating a sequence of subject-specific 3D landmarks induced with head motion, by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames; andprojecting the rotated and translated 3D motion-induced subject-specific landmarks to the 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image, wherein the 2D motion-induced subject-specific landmarks form the head movement data pertaining to the subject.
- The system as claimed in claim 4, wherein the system trains the data model to generate the head movement data for any speech signal, by:determining the sequence of rotation and translation parameters forming the head pose of the subject, for each of a plurality of audio windows of each of the speech signals used as training data, via the one or more hardware processors;comparing the sequence of rotation and translation parameters determined for each of the plurality audio windows of speech signals with a corresponding ground truth head pose sequence during training, via the one or more hardware processors;determining the sequence of rotation and translation parameters of each of the plurality of speech signals as one of real or fake, based on the comparison with the corresponding ground truth head pose sequence, via the one or more hardware processors; andtraining the data model using information of the sequence of ground truth rotation and translation parameters of head pose corresponding to each of the plurality of the audio windows of the speech signal to produce realistic head pose sequence, via the one or more hardware processors.
- A non-transitory computer readable medium, wherein the non-transitory computer readable medium comprising a plurality of instructions, which when executed, cause one or more hardware processors to:receive a speech signal from a subject as input, via one or more hardware processors;generate a plurality of 2-Dimensional (2D) canonical facial landmarks from the speech signal, using a data model, via the one or more hardware processors, wherein the 2D facial landmarks are pertaining to facial movement data of the subject, wherein the facial movement data comprising lip synchronization with input speech signal, natural eye blinks, and eye brow movement;generate a plurality of 3-Dimensional (3D) canonical facial landmarks by converting the plurality of 2D facial landmarks, using a plurality of camera parameters computed from a plurality of 2D-3D canonical landmarks correspondences, via the one or more hardware processors;extract a plurality of subject-specific 3D landmarks from a target identity image of the subject, via the one or more hardware processors;retarget the plurality of 3D canonical facial landmarks to the plurality of subject-specific 3D landmarks via the one or more hardware processors, to generate a plurality of facial motion-induced subject-specific frontal 3D landmarks;generate head movement data pertaining to the subject, from the speech signal, using the data model, via the one or more hardware processors;encoding 2D motion-induced subject-specific landmarks generated as the head movement data, to a latent vector, via the one or more hardware processors; anddecode the latent vector to generate an image face with motion, via the one or more hardware processors.
- The non-transitory computer readable medium as claimed in claim 7, wherein the non-transitory computer readable medium generates the head movement data using the data model by:extracting Mel-frequency cepstral coefficients (MFCC) features for each of a plurality of audio windows of the speech signal corresponding to each of a plurality of video frames;determining an attention score for each of the plurality of audio windows;determining using the plurality of MFCC features, a sequence of rotation and translation parameters with respect to a frontal 3D canonical face, for each of the plurality of audio windows for which the determined attention score is exceeding a threshold of attention score, wherein the sequence of rotation and translation parameters form a head pose of the subject;generating a sequence of subject-specific 3D landmarks induced with head motion, by applying the determined sequence of rotation and translation parameters with respect to the frontal 3D canonical face, on the facial motion-induced subject-specific frontal 3D landmarks, for each of the plurality of video frames; andprojecting the rotated and translated 3D motion-induced subject-specific landmarks to the 2D motion-induced subject-specific landmarks via the one or more hardware processors, using the camera parameters computed from the correspondences between 2D-3D person specific facial landmarks extracted from the input target identity image, wherein the 2D motion-induced subject-specific landmarks form the head movement data pertaining to the subject.
- The non-transitory computer readable medium as claimed in claim 7, wherein the data model is trained to generate the head movement data for any speech signal, wherein training the data model comprises:determining the sequence of rotation and translation parameters forming the head pose of the subject, for each of a plurality of audio windows of each of the speech signals used as training data, via the one or more hardware processors;comparing the sequence of rotation and translation parameters determined for each of the plurality audio windows of speech signals with a corresponding ground truth head pose sequence during training, via the one or more hardware processors;determining the sequence of rotation and translation parameters of each of the plurality of speech signals as one of real or fake, based on the comparison with the corresponding ground truth head pose sequence, via the one or more hardware processors; andtraining the data model using information of the sequence of ground truth rotation and translation parameters of head pose corresponding to each of the plurality of the audio windows of the speech signal to produce realistic head pose sequence, via the one or more hardware processors.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202021048222 | 2020-11-04 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP3996047A1 true EP3996047A1 (en) | 2022-05-11 |
Family
ID=74797855
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP21159663.0A Pending EP3996047A1 (en) | 2020-11-04 | 2021-02-26 | Method and system for generating face animations from speech signal input |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US11295501B1 (en) |
| EP (1) | EP3996047A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2609286B (en) * | 2021-05-20 | 2025-01-29 | Nvidia Corp | Synthesizing video from audio using one or more neural networks |
| EP4528654A4 (en) * | 2022-05-23 | 2025-08-06 | Zte Corp | DATA PROCESSING METHOD AND DEVICE, VIDEO CONFERENCE SYSTEM, STORAGE MEDIUM |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11531863B1 (en) * | 2019-08-08 | 2022-12-20 | Meta Platforms Technologies, Llc | Systems and methods for localization and classification of content in a data set |
| KR102584485B1 (en) * | 2022-02-14 | 2023-10-04 | 주식회사 딥브레인에이아이 | Apparatus and method for generating speech synsthesis image |
| CN117036583A (en) * | 2022-10-13 | 2023-11-10 | 腾讯科技(深圳)有限公司 | Video generation method, device, storage medium and computer equipment |
| CN116342760B (en) * | 2023-05-25 | 2023-08-04 | 南昌航空大学 | Three-dimensional facial animation synthesis method, system, electronic device and storage medium |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6735566B1 (en) * | 1998-10-09 | 2004-05-11 | Mitsubishi Electric Research Laboratories, Inc. | Generating realistic facial animation from speech |
| EP2140341B1 (en) * | 2007-04-26 | 2012-04-25 | Ford Global Technologies, LLC | Emotive advisory system and method |
| US10628666B2 (en) * | 2010-06-08 | 2020-04-21 | Styku, LLC | Cloud server body scan data system |
| US10628729B2 (en) * | 2010-06-08 | 2020-04-21 | Styku, LLC | System and method for body scanning and avatar creation |
| US20120130717A1 (en) * | 2010-11-19 | 2012-05-24 | Microsoft Corporation | Real-time Animation for an Expressive Avatar |
| US20130257877A1 (en) * | 2012-03-30 | 2013-10-03 | Videx, Inc. | Systems and Methods for Generating an Interactive Avatar Model |
| WO2015145219A1 (en) * | 2014-03-28 | 2015-10-01 | Navaratnam Ratnakumar | Systems for remote service of customers using virtual and physical mannequins |
| US10360716B1 (en) * | 2015-09-18 | 2019-07-23 | Amazon Technologies, Inc. | Enhanced avatar animation |
| US9911218B2 (en) * | 2015-12-01 | 2018-03-06 | Disney Enterprises, Inc. | Systems and methods for speech animation using visemes with phonetic boundary context |
| US10534955B2 (en) * | 2016-01-22 | 2020-01-14 | Dreamworks Animation L.L.C. | Facial capture analysis and training system |
| JP6913164B2 (en) * | 2016-11-11 | 2021-08-04 | マジック リープ, インコーポレイテッドMagic Leap,Inc. | Full facial image peri-eye and audio composition |
| US11145100B2 (en) * | 2017-01-12 | 2021-10-12 | The Regents Of The University Of Colorado, A Body Corporate | Method and system for implementing three-dimensional facial modeling and visual speech synthesis |
| US10621771B2 (en) * | 2017-03-21 | 2020-04-14 | The Procter & Gamble Company | Methods for age appearance simulation |
| US10521946B1 (en) * | 2017-11-21 | 2019-12-31 | Amazon Technologies, Inc. | Processing speech to drive animations on avatars |
| US10586369B1 (en) * | 2018-01-31 | 2020-03-10 | Amazon Technologies, Inc. | Using dialog and contextual data of a virtual reality environment to create metadata to drive avatar animation |
| WO2019173108A1 (en) * | 2018-03-06 | 2019-09-12 | Didimo, Inc. | Electronic messaging utilizing animatable 3d models |
| WO2019177870A1 (en) * | 2018-03-15 | 2019-09-19 | Magic Leap, Inc. | Animating virtual avatar facial movements |
| EP3766004A4 (en) * | 2018-03-16 | 2021-12-15 | Magic Leap, Inc. | FACIAL EXPRESSIONS FROM EYE TRACKING CAMERAS |
| US10789753B2 (en) * | 2018-04-23 | 2020-09-29 | Magic Leap, Inc. | Avatar facial expression representation in multidimensional space |
| CN111316203B (en) * | 2018-07-10 | 2022-05-31 | 微软技术许可有限责任公司 | Actions for automatically generating a character |
| US11049308B2 (en) * | 2019-03-21 | 2021-06-29 | Electronic Arts Inc. | Generating facial position data based on audio data |
| US11176757B2 (en) * | 2019-10-02 | 2021-11-16 | Magic Leap, Inc. | Mission driven virtual character for user interaction |
-
2021
- 2021-02-26 EP EP21159663.0A patent/EP3996047A1/en active Pending
- 2021-03-01 US US17/188,512 patent/US11295501B1/en active Active
Non-Patent Citations (5)
| Title |
|---|
| DAS DIPANJAN ET AL: "Speech-Driven Facial Animation Using Cascaded GANs for Learning of Motion and Texture", 14 September 2020, ADVANCES IN INTELLIGENT DATA ANALYSIS XIX; [LECTURE NOTES IN COMPUTER SCIENCE; LECT.NOTES COMPUTER], PAGE(S) 408 - 424, ISBN: 978-3-540-28540-3, ISSN: 0302-9743, XP047562725 * |
| LELE CHEN ET AL: "Talking-head Generation with Rhythmic Head Motion", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 16 July 2020 (2020-07-16), XP081722075 * |
| RAN YI ET AL: "Audio-driven Talking Face Video Generation with Learning-based Personalized Head Pose", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 24 February 2020 (2020-02-24), XP081613176 * |
| SINHA SANJANA ET AL: "Identity-Preserving Realistic Talking Face Generation", 2020 INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS (IJCNN), IEEE, 19 July 2020 (2020-07-19), pages 1 - 10, XP033833875, DOI: 10.1109/IJCNN48605.2020.9206665 * |
| YANG ZHOU ET AL: "MakeItTalk: Speaker-Aware Talking-Head Animation", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 7 October 2020 (2020-10-07), XP081778845 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2609286B (en) * | 2021-05-20 | 2025-01-29 | Nvidia Corp | Synthesizing video from audio using one or more neural networks |
| EP4528654A4 (en) * | 2022-05-23 | 2025-08-06 | Zte Corp | DATA PROCESSING METHOD AND DEVICE, VIDEO CONFERENCE SYSTEM, STORAGE MEDIUM |
Also Published As
| Publication number | Publication date |
|---|---|
| US11295501B1 (en) | 2022-04-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11176724B1 (en) | Identity preserving realistic talking face generation using audio speech of a user | |
| US11551394B2 (en) | Audio-speech driven animated talking face generation using a cascaded generative adversarial network | |
| US11295501B1 (en) | Method and system for generating face animations from speech signal input | |
| EP3965102B1 (en) | Method and system for generating 2d animated lip images synchronizing to an audio signal | |
| Lu et al. | Live speech portraits: real-time photorealistic talking-head animation | |
| Zhang et al. | Facial: Synthesizing dynamic talking face with implicit attribute learning | |
| Stypułkowski et al. | Diffused heads: Diffusion models beat gans on talking-face generation | |
| Vougioukas et al. | Realistic speech-driven facial animation with gans | |
| EP4270391B1 (en) | Methods and systems for emotion-controllable generalized talking face generation | |
| Suwajanakorn et al. | Synthesizing obama: learning lip sync from audio | |
| KR102863164B1 (en) | Systems and methods for realistic head turns and face animation synthesis on mobile device | |
| KR102509666B1 (en) | Real-time face replay based on text and audio | |
| Sun et al. | Masked lip-sync prediction by audio-visual contextual exploitation in transformers | |
| Li et al. | Latentsync: Taming audio-conditioned latent diffusion models for lip sync with syncnet supervision | |
| CN113269066B (en) | Speaking video generation method and device and electronic equipment | |
| CN110427899B (en) | Video prediction method and device based on face segmentation, medium and electronic equipment | |
| US10904476B1 (en) | Techniques for up-sampling digital media content | |
| CN113469292A (en) | Training method, synthesizing method, device, medium and equipment for video synthesizing model | |
| US20240346735A1 (en) | System and method for generating videos depicting virtual characters | |
| Biswas et al. | Realistic talking face animation with speech-induced head motion | |
| US20230412825A1 (en) | Video size reduction by reconstruction | |
| CN115393945A (en) | Voice-based image driving method and device, electronic equipment and storage medium | |
| Han et al. | Text-based talking video editing with cascaded conditional diffusion | |
| Chung et al. | Audio2Face-3D: Audio-driven Realistic Facial Animation For Digital Avatars | |
| CN116896671A (en) | Video generation method and device and electronic equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20220818 |
|
| RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: EXAMINATION IS IN PROGRESS |
|
| 17Q | First examination report despatched |
Effective date: 20240729 |
