Facial animation control by automatic generation of facial action units using text and speech

A machine learning engine processes text and audio to automate facial animations in computer simulations, addressing the inefficiencies of manual methods by generating realistic facial expressions for computer avatars.

JP7599554B2Active Publication Date: 2024-12-13SONY INTERACTIVE ENTERTAINMENT LLC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023514901
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-08-07
Filing Date
2021-09-02
Publication Date
2024-12-13
Estimated Expiration
2041-09-02

AI Technical Summary

Technical Problem

Existing methods for animating computerized facial images are labor-intensive and require manual frame-by-frame animation of facial muscle contractions, lacking an efficient automated process.

Method used

A machine learning engine processes text and audio data to generate facial action units (FAUs) for animating computer avatars, using time-aligned word-level emotion probabilities and emotion detection to automate facial expressions.

Benefits of technology

Facial animations are rendered with enhanced realism and efficiency through automated generation of FAUs, reducing manual effort and improving the quality of computerized facial simulations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007599554000001
    Figure 0007599554000001
  • Figure 0007599554000002
    Figure 0007599554000002
  • Figure 0007599554000003
    Figure 0007599554000003
Patent Text Reader

Abstract

Facial animation control is provided by automatically generating facial action units using text and voice. Text and speech from a computer simulation are processed by a machine learning engine to animate (306) the face (202) of a computer avatar.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] This application relates generally to facial animation control through automatic generation of Facial Action Units (FAUs) using text and speech in computer simulation and other applications. [Background technology]

[0002] Faces in computerized images, such as computer game avatars, are animated during simulated play to achieve a realistic effect. As understood herein, artists must typically painstakingly create Facial Animation Units (FAUs) that are used to animate each part of the face frame by frame by emulating the contraction or relaxation of each muscle point in a human face. Summary of the Invention

[0003] The apparatus includes at least one processor configured with instructions to identify a facial image of a computerized avatar. The instructions are executable for inputting first modality data associated with the avatar to a machine learning (ML) engine, inputting second modality data associated with the avatar to the ML engine, and receiving output from the ML engine useful for animating the facial image of the avatar. The instructions are also executable for animating the avatar's face according to the output.

[0004] In some embodiments, the output includes a plurality of facial action units (FAUs), each FAU relating to a respective portion of the facial image. In a non-limiting example, the first modality data includes text and the second modality data includes speech.

[0005] In a non-limiting example, the instructions are executable for deriving emotional action information from the first and second modality data using an ML engine, and the output may be based at least in part on time-aligned word-level emotion probabilities generated from the emotional action information.

[0006] In another aspect, a method includes training a machine learning (ML) model using a training set of animated faces speaking known words. The method also includes generating an image of a first face animated to speak the words according to a first text. The method further includes inputting the first text into the ML model and animating the image of the first face speaking the first words indicated by the first text according to an output of the ML model.

[0007] In an exemplary embodiment, the method may include detecting emotions and sentiments from a first text, aligning the first text with a voice representing the first text to render the aligned text / voice, and inputting the emotions, sentiments, and aligned text / voice to an ML model. The method may also include inputting a target emotion to the ML model. An exemplary implementation of the method may include receiving a first probability from an ML modality representing a facial action, receiving a second probability from an ML model representing an emotion, and establishing a facial action unit (FAU) using the first and second probabilities. The method may then include animating the first facial image according to the FAU.

[0008] In another aspect, an assembly includes at least one display configured to present an animated computer avatar, and at least one processor configured with instructions for executing a machine learning (ML) model, the instructions being executable for receiving text indicative of a voice spoken by the avatar, processing the text using the ML model to generate facial action units (FAUs), and animating the computer avatar according to the FAUs.

[0009] The details of the present application, both as to its structure and operation, can best be understood in reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which: [Brief description of the drawings]

[0010] [Figure 1] 1 is a block diagram of an exemplary system including an example according to the present principles; [Diagram 2] 1 is a screenshot of an exemplary computerized avatar's face. [Diagram 3] 1 illustrates an exemplary overall logic in the form of an exemplary flow chart. [Figure 4] Shows the training process of a machine learning (ML) engine. [Diagram 5] This shows the inference process of the ML engine. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] The present disclosure relates generally to computer ecosystems, including, but not limited to, aspects of consumer electronics (CE) device networks, such as computer gaming networks. The systems herein may include server and client components that may be connected over a network such that data may be exchanged between the client and server components. The client components may include one or more computing devices, including gaming consoles such as Sony PlayStation® or gaming consoles made by Microsoft® or Nintendo® or other manufacturers, virtual reality (VR) headsets, augmented reality (AR) headsets, portable televisions (e.g., smart televisions, Internet-enabled televisions), portable computers such as laptops and tablet computers, as well as smartphones and other mobile devices, including additional examples discussed below. These client devices may operate in a variety of operating environments. For example, some of the client computers may employ, by way of example, the Linux® operating system, a Microsoft® operating system, or a Unix® operating system, or operating systems produced by Apple, Inc.® or Google®. These operating environments may be used to run one or more browsing programs, such as browsers created by Microsoft® or Google® or Mozilla®, or other browser programs that can access web sites hosted by the Internet servers discussed below. Operating environments according to the present principles may also be used to run one or more computer game programs.

[0012] The server and / or gateway may include one or more processors that execute instructions that configure the server to receive and transmit data over a network such as the Internet. Alternatively, the clients and servers may be connected through a local intranet or a virtual private network. The server or controller may be instantiated by a game console such as a Sony PlayStation®, a personal computer, or the like.

[0013] Information may be exchanged between the clients and the servers over a network. For this purpose and for security, the servers and / or clients may include firewalls, load balancers, temporary storage, and proxies, as well as other network infrastructure for reliability and security. One or more servers may form an apparatus that implements a method for providing a secure community, such as an online social website, for network members.

[0014] The processor may be a single-chip processor or a multi-chip processor capable of implementing logic through various lines, such as address lines, data lines and control lines, as well as registers and shift registers.

[0015] Components included in one embodiment may be used in other embodiments in any suitable combination. For example, any of the various components described herein and / or illustrated in the figures may be combined, interchanged, or excluded from other embodiments.

[0016] A "system having at least one of A, B, and C" (also "a system having at least one of A, B, or C" and "a system having at least one of A, B, C") includes systems having A alone, B alone, C alone, A and B together, A and C together, B and C together, and / or A, B and C together, etc.

[0017] Referring now specifically to FIG. 1, an exemplary system 10 is shown that may include one or more of the exemplary devices described above and further below in accordance with the present principles. A first of the exemplary devices included in the system 10 is a consumer electronics (CE) device such as an audio-video device (AVD) 12, such as an Internet-enabled television with a television tuner (equivalently, a set-top box that controls the television), without limitation. Alternatively, the AVD 12 may also be a computer-controlled Internet-enabled ("smart") phone, a tablet computer, a notebook computer, an HMD, a wearable computer-controlled device, a computer-controlled Internet-enabled music player, a computer-controlled Internet-enabled headphones, a computer-controlled Internet-enabled implantable device such as an implantable skin device, and the like. It should nevertheless be understood that the AVD 12 is configured to implement the present principles (e.g., to communicate with other CE devices to implement the present principles, to execute the logic described herein, and to perform any other functions and / or operations described herein).

[0018] Thus, to implement such principles, an AVD 12 may be established by some or all of the components shown in FIG. 1. For example, the AVD 12 may include one or more displays 14, which may be implemented by flat screens with high or ultra-high resolution "4K" or higher resolution, and may be touch-enabled to receive user input signals via touching the display. The AVD 12 may include at least one additional input device 18, such as one or more speakers 16 for outputting audio in accordance with the present principles, and an audio receiver / microphone for inputting audible commands to the AVD 12 to control the AVD 12. The exemplary AVD 12 may also include one or more network interfaces 20 for communicating over at least one network 22, such as the Internet, a WAN, a LAN, etc., under the control of one or more processors 24. A graphics processor 24A may also be included. The interface 20 may thus be, without limitation, a Wi-Fi transceiver, which is an example of a wireless computer network interface, such as, without limitation, a mesh network transceiver. It should be understood that processor 24 controls AVD 12, including the other elements of AVD 12 described herein, to implement the present principles, such as controlling display 14 to present images thereon and receiving input therefrom. It should further be noted that network interface 20 may be a wired or wireless modem or router, or other suitable interface, such as, for example, a wireless telephony transceiver or the Wi-Fi transceiver discussed above.

[0019] In addition to the above, the AVD 12 may also include one or more input ports 26, such as, for example, a High Definition Multimedia Interface (HDMI) port or a USB port for physically connecting to another CE device, and / or a headphone port for connecting headphones to the AVD 12 to provide audio from the AVD 12 to a user through the headphones. For example, the input port 26 may be wired or wirelessly connected to a cable or satellite source 26a of audio-video content. Thus, the source 26a may be a separate or integrated set-top box, or a satellite receiver. Alternatively, the source 26a may be a game console or disc player that contains the content. When implemented as a game console, the source 26a may include some or all of the components described below in connection with the CE device 44.

[0020] AVD 12 may further include one or more computer memories 28, such as non-transitory, disk-based or solid-state storage, which may in some cases be embodied within the AVD's chassis as a standalone device, or as a personal video recording device (PVR) or video disk player, or as a removable memory medium, either internal or external to the AVD's chassis for playing AV programs. In some embodiments, AVD 12 may also include a location or position receiver, such as, but not limited to, a cellular receiver, a GPS receiver, and / or an altimeter 30, which is configured to receive geographic location information from a satellite or cellular tower and provide that information to processor 24 and / or determine the altitude at which AVD 12 is located in conjunction with processor 24. Component 30 may also be implemented by an inertial measurement unit (IMU), which typically includes a combination of accelerometers, gyroscopes, and magnetometers, to determine the position and orientation of AVD 12 in three dimensions.

[0021] Continuing with the description of the AVD 12, in some embodiments, the AVD 12 may include one or more cameras 32, which may be a thermal imaging camera, a digital camera such as a webcam, and / or a camera integrated into the AVD 12 and controllable by the processor 24 to collect pictures / images and / or videos in accordance with the present principles. Also included in the AVD 12 may be a Bluetooth transceiver 34 and other NFC elements 36 for communicating with other devices using Bluetooth and / or Near Field Communication (NFC) technologies, respectively. An exemplary NFC element may be a radio frequency identification (RFID) element.

[0022] Furthermore, the AVD 12 may include one or more auxiliary sensors 37 (e.g., motion sensors such as accelerometers, gyroscopes, cyclometers, or magnetic sensors, infrared (IR) sensors, optical sensors, speed and / or cadence sensors, gesture sensors (e.g., for sensing gesture commands), etc.) that provide input to the processor 24. The AVD 12 may include an over-the-air TV broadcast port 38 for receiving OTA (over-the-air) TV broadcasts that provide input to the processor 24. In addition to the above, it is noted that the AVD 12 may also include an infrared (IR) transmitter and / or an IR receiver and / or an IR transceiver 42, such as an infrared data association (IRDA) device. A battery (not shown) may be provided to power the AVD 12, such as a kinetic energy harvester that can convert kinetic energy into electricity to charge the battery and / or power the AVD 12.

[0023] With further reference to FIG. 1, in addition to the AVD 12, the system 10 may include one or more other CE device types. In one embodiment, the first CE device 44 may be a computer game console that can be used to transmit computer game audio and video to the AVD 12 via commands sent directly to the AVD 12 and / or through a server, as described below, while the second CE device 46 may include similar components as the first CE device 44. In the illustrated embodiment, the second CE device 46 may be configured as a computer game controller operated by a player or as a head mounted display (HMD) worn by a player 47. In the illustrated embodiment, only two CE devices 44, 46 are shown, but it will be understood that fewer or more devices may be used. The devices herein may implement some or all of the components shown for the AVD 12. Some or all of the components shown for the AVD 12 may be incorporated into any of the components shown in the following figures.

[0024] Referring now to the at least one server 50 described above, the server includes at least one server processor 52, at least one tangible computer-readable storage medium 54, such as disk-based or solid-state storage, and at least one network interface 56 that, under the control of the server processor 52, enables communication with other devices of Figure 1 over the network 22, and may, in fact, facilitate communications between the server and client devices in accordance with the present principles. It should be noted that the network interface 56 may be, for example, a wired or wireless modem or router, a Wi-Fi transceiver, or other suitable interface, such as, for example, a wireless telephony transceiver.

[0025] Thus, in some embodiments, server 50 may be an entire Internet server or server "farm," or may include or perform "cloud" functions such that devices of system 10 may access a "cloud" environment via server 50, for example, in an exemplary embodiment of a network gaming application. Alternatively, server 50 may be implemented by one or more game consoles, or other computers, in the same room or nearby as the other devices shown in FIG.

[0026] 2 illustrates a display 200, such as any of the displays herein, on which is presented a computer avatar's face 202. The face 202 has a number of emulated anchor points 204 (only four are shown for clarity) that can be animated as required by respective facial animation units (FAUs) to emulate the relaxation or contraction of corresponding parts of a human face.

[0027] 3 illustrates the overall logic that may be used to automatically generate FAUs to animate a face 202. The logic described herein may be executed by any one or more of the processors described herein.

[0028] Beginning at block 300, a machine learning (ML) engine is trained as described with reference to Figure 4. Proceeding to block 302, a video image 202 of a face is generated, for example, by a computer simulation, such as a computer game, and corresponding multi-modality data related to the face is input to the ML engine at block 304. From the multi-modality data, the ML engine generates predicted FAUs that are used to animate the emulated muscles of the avatar's face 202 at block 306, as described more fully with reference to Figure 5.

[0029] FIG. 4 illustrates an example of the training process of an ML engine. A training set of data from a database 400 is accessed. The training set of data contains images of faces expressing emotions while speaking. In other words, the database contains ground truth animations of avatars speaking known text while animating the correct expressions.

[0030] For each input training image, respective anchor points 204 of the image are extracted from the image in block 402. In other words, block 402 generates anchor points of the input image that are used for Facial Action Units (FAUs). It is understood that also, speech signals and text with which the speech signals are associated are extracted in block 404, and the speech and text in block 404 are associated with the FAUs extracted in block 402.

[0031] Blocks 406 indicate that the speech and text are time-aligned with each other, as will be further disclosed below. As represented by graph 407 in Fig. 4, phoneme boundaries are extracted from the phoneme boundaries of the speech signal 407A of the corresponding text 407B. In this way, each incremental block along the x-axis represents a phoneme generated by the speech, and the phonemes are defined between adjacent boundaries 407C, 407D of the incremental blocks.

[0032] The forced alignment block 406 uses the phoneme boundaries to align emotions in time at emotion annotation block 408, align emotions at emotion annotation block 410 where an expert annotates the input with emotions, and align speech features at speech features block 412. Thus, the corresponding emotions, sentiments, and speech features are aligned using the extracted phoneme boundaries. As explained further below, "sentiment" can refer to a degree of emotion, e.g., positive or negative, and "emotion" can refer to the emotional state of the speaker, e.g., happy, sad, angry, etc. It should be noted that a sliding window of words in speech can be processed in this manner, e.g., words 1-3 can be annotated with a first emotion / sentiment, words 2-4 can be annotated with a second emotion / sentiment, etc. Speech features 412 are generated to represent the combined characteristics of the input. Techniques including Wigner-Wille distribution functions and time-frequency filtering techniques can be used to generate the speech features.

[0033] The products of blocks 408, 410, and 412 are fed to a ML emotion-action generation model 414 to train the model. Additionally, the inputs to the model 414 are the FAUs from block 402 and a target emotion 416, which is the input (annotated) emotion ground truth used to train the model 414. In this manner, the model 414 is trained on multiple datasets from the database 400, correlates the FAUs with corresponding speech and text and the target emotion, and outputs facial action anchor probabilities 418 and time-aligned word-level emotion probabilities 420, which can then be used in animating a face (e.g., face 202 in FIG. 2) by appropriately animating the anchor points 204 according to the FAUs.

[0034] 5, emotions may be detected in the input training set for comparison to the ground truth 416 using one or both of categorical and dimensional emotion classification. Categorical classification produces emotion categories including happiness, sadness, anger, fear, etc. Dimensional classification produces emotion dimensions in terms of emotional valence and arousal.

[0035] Figure 5 illustrates the subsequent inference process by model 414, labeled 510 in Figure 5. Text 500 spoken by an animated avatar is input to a text-to-speech block 502 to convert the text into a speech signal. Additionally or alternatively, recorded or live human speech corresponding to the text may be provided to block 502. In order to time-align elements of the blocks corresponding to those that have been aligned as taught above with reference to Figure 4, speech features are extracted in block 504 and phoneme boundaries are extracted from the text and corresponding speech in block 506 in the same manner as described for the training process of Figure 4, as shown by graph 507 having the same characteristics as graph 407 of Figure 4.

[0036] The text spoken by the avatar from block 500 is sent to an emotion and sentiment detection block 508 to extract emotions and sentiments from the text according to the training from Figure 4. The emotions and sentiments extracted from the text in block 508 are input to a model 510 along with the speech features from block 504 and the aligned text / speech signal from block 506. If desired, a target emotion can be input to the model as shown in block 512. The target emotion can be part of the annotated text, either input by the user or derived from the input text using machine learning.

[0037] Based on its training, the model 510 outputs a facial action probability 512 for each anchor point 204 from the received input, and an emotion probability 516 derived from the time-aligned text / speech signal. Based on one or both of these probabilities, a projected anchor position 518 (i.e., FAU) is obtained to establish the facial expression that each animated frame will portray. At block 500, the FAU is applied to the avatar's animation to impart the correct facial expression as the avatar speaks the text input.

[0038] While the present principles have been described with reference to certain illustrative embodiments, it will be understood that these are not intended to be limiting and that a variety of alternative configurations may be used to implement the subject matter claimed herein.

Claims

1. An apparatus comprising: At least one processor, Identifying facial images of computerized avatars; identifying first modality data associated with the avatar, the first modality data including speech; identifying second modality data associated with the avatar, the second modality data including text; receiving first information based at least in part on the first modality data and second information based at least in part on the second modality data useful for animating the image of the face of the avatar; and animating the face of the avatar according to both the first information and the second information; the at least one processor configured with instructions for: Including, the instructions are executable to access at least one machine learning (ML) model to animate the face of the avatar, the ML model being executable to receive anchor points derived from an image of the face of the avatar to generate facial action units (FAUs), and to associate the speech and the text with the FAUs; The instructions are executable to align the speech and the text with each other in time using at least in part phoneme boundaries extracted from the speech, and the instructions are further executable to align emotions and emotional degrees with the speech and the text in time using the phoneme boundaries extracted from the speech.

2. The apparatus of claim 1 , wherein the instructions are executable to derive the emotion from the first and second modality data.

3. The apparatus of claim 2 , wherein the information is based at least in part on time-aligned word-level emotion probabilities generated from the emotion.

4. 1. A method comprising: generating an animated first facial image speaking words according to both the first text and the first voice; aligning the first text and the first audio in time; and animating the image of the first face speaking first words in accordance with the first text and the first voice; Including, the image of the first face is animated at least in part by processing a sliding window of words in the first speech, words 1 through N in the first speech being associated with a first emotion, the image of the first face being animated according to the first emotion, words 2 through N+1 in the first speech being associated with a second emotion, and the image of the first face being animated according to the second emotion, where N is an integer greater than 2.

5. Training a machine learning (ML) model using a training set of animated faces that speak known words; inputting the first text and the first speech into the ML model; animating the image of the first face according to an output of the ML model; Detecting emotions and sentiments from the first text; aligning the first text with speech representative of the first text to render aligned text / speech; and inputting the emotion, the sentiment, and the aligned text / speech into the ML model; The method of claim 4 , comprising:

6. Inputting a target emotion into the ML model. The method of claim 5 , comprising:

7. receiving a first probability representing a facial action from the ML model; The method of claim 5 , comprising:

8. receiving a second probability representing an emotion from the ML model; The method of claim 7, comprising:

9. establishing a facial action unit (FAU) using one or both of the first and second probabilities; The method of claim 8 , comprising:

10. animating the image of the first face according to the FAU; The method of claim 9, comprising:

11. 1. An assembly comprising: at least one display configured to present an animated computer avatar; At least one processor configured with instructions for executing a machine learning (ML) model, the instructions comprising: receiving text indicative of a voice spoken by said avatar; Receiving audio, aligning the text and the speech in time, at least in part using phoneme boundaries extracted from the speech; processing the text and the speech using the ML model to generate Facial Action Units (FAUs); and animating the computer avatar in accordance with the FAU; the at least one processor being operable to The assembly comprising:

12. The instruction: Detecting emotions and sentiments from the text; aligning the text to speech representative of the text to render aligned text / speech; and 12. The assembly of claim 11, wherein the assembly is executable for: inputting the emotion, the sentiment, and the aligned text / speech into the ML model.

13. The instruction: The assembly of claim 12 , wherein the assembly is operable to input a target emotion into the ML model.

14. The instruction: receiving a first probability representing a facial action from the ML model; The assembly of claim 11 , wherein the assembly is operable to

15. The instruction: receiving a second probability representing an emotion from the ML model; The assembly of claim 14 .

16. The instruction: The assembly of claim 15 , wherein the assembly is operable to establish the FAU using the first and second probabilities.

Citation Information

Patent Citations

  • Information processing device and information processing program

    JP2005352892A

  • Statistic probability model creation apparatus for lip sync animation creation, parameter series compound apparatus, lip sync animation creation system, and computer program

    JP2007058846A

  • Nonverbal information generation device, nonverbal information generation model learning device, method, and program

    WO2019160100A1