IP Library Granted Patent US 10,217,260
Granted Patent B1
US 10,217,260 · App. 15/678,924 · Granted Feb 26, 2019

Real-time lip synchronization animation

Inventor: Abd Alrazzak Habra (Bloomfield, MI)
Assignee: TD Ameritrade IP Company, Inc.
G06T13/205G06T13/40G06T2200/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,217,260
App. No.
15/678,924
Granted
Feb 26, 2019
Kind
B1
Abstract

A method for real-time lip synchronization is provided. The method transmits, by one or more processing devices, a requested document comprising embedded instructions to a client device. The one or more processing devices generate a plurality of phonemes responsive to an additional request from the client device. The one or more processing devices transmit the plurality of phonemes to the client device responsive to the additional request. The embedded instructions direct the client device to generate animation models and transition models based on the plurality of phonemes.

Claims (79)

1. A method, comprising

transmitting, by one or more processing devices, a requested document comprising embedded instructions to a client device;

generating, by the one or more processing devices, a first phoneme and a second phoneme responsive to an additional request from the client device; and

transmitting, by the one or more processing devices, the first phoneme and the second phoneme to the client device responsive to the additional request, wherein the embedded instructions direct the client device to generate animation models and transition models based on the first phoneme and the second phoneme,

wherein the embedded instructions direct the client device to process the first phoneme and the second phoneme by:

receiving the first phoneme and the second phoneme,

generating a first animation model based on the first phoneme,

generating a second animation model based on the second phoneme, and

generating a transition model based on the first animation model, the second animation model, and a progressive transition rule.

2. The method of claim 1 ,

wherein the first animation model comprises:

a first width factor indicating how wide horizontally a mouth is in the first animation model, and

a first openness factor indicating how open vertically the mouth is in the first animation model; and

wherein the second animation model comprises:

a second width factor indicating how wide horizontally the mouth is in the second animation model, and

a second openness factor indicating how open vertically the mouth is in the second animation model.

3. The method of claim 1 , wherein the generating the transition model comprises:

determining a number of transition frames based on a transition duration period; and

for a transition frame in the number of transition frames:

generating a transition model associated with the transition frame based on the first animation model, the second animation model, a position of the transition frame in the number of transition frames, and the progressive transition rule.

4. The method of claim 3 , wherein the first animation model comprises a first shift value and a first angle value, and the second animation model comprises a second shift value and a second angle value, and wherein the generating the transition model associated with the transition frame comprises:

performing interpolation between the first shift value and the second shift value based on the position of the transition frame in the number of transition frames to generate a shift value in the transition model associated with the transition frame; and

performing interpolation between the first angle value and the second angle value based on the position of the transition frame in the number of transition frames to generate an angle value in the transition model associated with the transition frame.

5. The method of claim 3 , wherein the progressive transition rule specifies a linear progression rule, and wherein the generating the transition model associated with the transition frame comprises:

performing linear interpolation between the first animation model and the second animation model based on the position of the transition frame in the number of transition frames to generate the transition model associated with the transition frame.

6. The method of claim 3 , wherein the progressive transition rule specifies a non-linear progression rule based on a continuous curve function, and wherein the generating the transition model associated with the transition frame comprises:

performing non-linear interpolation between the first animation model and the second animation model based on the position of the transition frame in the number of transition frames and the continuous curve function to generate the transition model associated with the transition frame.

7. The method of claim 6 , wherein the continuous curve function is based on a sine function.

8. The method of claim 1 , wherein the embedded instructions further direct the client device to process the first phoneme and the second phoneme by:

determining a first duration period associated with the first phoneme;

determining a second duration period associated with the second phoneme;

determining a transition duration period associated with the transition model;

displaying the first animation model for the first duration period;

after the displaying the first animation model, displaying the transition model for the transition duration period; and

after the displaying the transition model, displaying the second animation model for the second duration period.

9. The method of claim 8 , wherein the first duration period and the second duration period are determined based on an accent type indicated by a user.

10. The method of claim 8 , wherein the transition duration period is determined based on the first duration period and the second duration period.

11. A non-transitory computer-readable medium having instructions stored thereon, that when executed by a computing device, cause the computing device to perform operations, the operations comprising:

transmitting a requested document comprising embedded instructions to a client device;

generating a first phoneme and a second phoneme responsive to an additional request from the client device; and

transmitting the first phoneme and the second phoneme to the client device responsive to the additional request, wherein the embedded instructions direct the client device to generate animation models and transition models based on the first phoneme and the second phoneme,

wherein the embedded instructions direct the client device to process the first phoneme and the second phoneme by:

receiving the first phoneme and the second phoneme,

generating a first animation model based on the first phoneme,

generating a second animation model based on the second phoneme, and

generating a transition model based on the first animation model, the second animation model, and a progressive transition rule.

12. The computer-readable medium of claim 11 ,

wherein the first animation model comprises:

a first width factor indicating how wide horizontally a mouth is in the first animation model, and

a first openness factor indicating how open vertically the mouth is in the first animation model; and

wherein the second animation model comprises:

a second width factor indicating how wide horizontally the mouth is in the second animation model, and

a second openness factor indicating how open vertically the mouth is in the second animation model.

13. The computer-readable medium of claim 11 , wherein the generating the transition model comprises:

determining a number of transition frames based on a transition duration period; and

for a transition frame in the number of transition frames:

generating a transition model associated with the transition frame based on the first animation model, the second animation model, a position of the transition frame in the number of transition frames, and the progressive transition rule.

14. The computer-readable medium of claim 13 , wherein the progressive transition rule specifies a linear progression rule, and wherein the generating the transition model associated with the transition frame comprises:

performing linear interpolation between the first animation model and the second animation model based on the position of the transition frame in the number of transition frames to generate the transition model associated with the transition frame.

15. The computer-readable medium of claim 13 , wherein the progressive transition rule specifies a non-linear progression rule based on a continuous curve function, and wherein the generating the transition model associated with the transition frame comprises:

performing non-linear interpolation between the first animation model and the second animation model based on the position of the transition frame in the number of transition frames and the continuous curve function to generate the transition model associated with the transition frame.

16. The computer-readable medium of claim 15 , wherein the continuous curve function is based on a sine function.

17. The computer-readable medium of claim 11 , wherein the embedded instructions further direct the client device to process the first phoneme and the second phoneme by:

determining a first duration period associated with the first phoneme;

determining a second duration period associated with the second phoneme;

determining a transition duration period associated with the transition model;

displaying the first animation model for the first duration period;

after the displaying the first animation model, displaying the transition model for the transition duration period; and

after the displaying the transition model, displaying the second animation model for the second duration period.

18. A system, comprising:

a processor and a memory coupled to the processor, the processor configured to:

transmit a requested document comprising embedded instructions to a client device;

generate a first phoneme and a second phoneme responsive to an additional request from the client device; and

transmit the first phoneme and the second phoneme to the client device responsive to the additional request, wherein the embedded instructions direct the client device to generate animation models and transition models based on the first phoneme and the second phoneme,

wherein the embedded instructions direct the client device to process the first phoneme and the second phoneme by:

receiving the first phoneme and the second phoneme,

generating a first animation model based on the first phoneme,

generating a second animation model based on the second phoneme, and

generating a transition model based on the first animation model, the second animation model, and a progressive transition rule.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2023
From: TD AMERITRADE IP COMPANY, INC.
To: CHARLES SCHWAB & CO., INC.
Reel/Frame 064807/0936 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2017
From: HABRA, ABD
To: TD AMERITRADE IP COMPANY, INC.
Reel/Frame 043321/0105 →