IP Library › Granted Patent US 12,277,738
Granted Patent B2
US 12,277,738 · App. 17/707,782 · Granted Apr 15, 2025

Method and system for latent-space facial feature editing in deep learning based face swapping

Inventors: Sirak Ghebremusse (San Francisco, CA); Stéphane Grabli (San Francisco, CA); Jacek Krzysztof Naruniec (Zürich, CH); Romann Matthew Weber (Zürich, CH); Christopher Richard Schroers (Zürich, CH)
Assignees: Lucasfilm Entertainment Company Ltd. LLC; Disney Enterprises, Inc.
G06T9/002G06T7/70G06T11/00G06V40/168G06T2200/24G06T2207/10016G06T2207/20081G06T2207/20084G06T2207/20092G06T2207/30201
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 12,277,738
App. No.
17/707,782
Granted
Apr 15, 2025
Kind
B2
Abstract

A computer-implemented method of changing a face within an output image or video frame that includes: receiving an input image that includes a face presenting a facial expression in a pose; processing the image with a neural network encoder to generate a latent space point that is an encoded representation of the image; decoding the latent space point to generate an initial output image in accordance with a desired facial identity but with the facial expression and pose of the face in the input image; identifying a feature of the facial expression in the initial output image to edit; applying an adjustment vector to a latent space point corresponding to the initial output image to generate an adjusted latent space point; and decoding the adjusted latent space point to generate an adjusted output image in accordance with the desired facial identity but with the facial expression and pose of the face in the input image altered in accordance with the adjustment vector.

Claims (46)

1. A computer-implemented method of changing a face within an image or video frame, the method comprising:

receiving an input image that includes a face presenting a facial expression in a pose;

processing the image with a neural network encoder to generate a latent space point that is an encoded representation of the image;

decoding the latent space point to generate an initial output image in accordance with a desired facial identity but with the facial expression and pose of the face in the input image;

identifying a feature of the facial expression in the initial output image to edit;

responsive to identifying the feature of the facial expression in the initial output image to edit, applying an adjustment vector to a latent space point corresponding to the initial output image to generate an adjusted latent space point, wherein applying the adjustment vector to the latent space point comprises translating the latent space point in latent space by adding the adjustment vector to the latent space point, wherein the adjusted latent space point comprises the latent space point after it has been translated; and

decoding the adjusted latent space point to generate an adjusted output image in accordance with the desired facial identity but with the facial expression and pose of the face in the input image altered in accordance with the adjustment vector.

2. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 further comprising repeating the steps of applying an adjustment vector to the latent space point corresponding to the initial output image to generate an adjusted latent space point and decoding the adjusted space point to generate an adjusted output image until the adjusted output image has the desired facial expression.

3. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the adjustment vector is generated from a plurality of key poses from selected images having a facial expression with a selected trait.

4. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the adjustment vector is generated from a plurality of key poses from selected images having a facial expression with a selected trait, calculating latent space points for the selected images, and generating the adjustment vectors by computing differences between an average of latent space points for the selected images and a neutral latent space point.

5. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the neural network is trained to be identity agnostic.

6. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the input image is normalized prior to the receiving step.

7. The computer-implemented method of changing a face within an image or video frame set forth in claim 6 wherein the input image is resized to a predetermined size prior to the receiving step.

8. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 further comprising allowing a user to select one or more features in the initial output image to adjust via a user interface.

9. The computer-implemented method of changing a face within an image or video frame set forth in claim 8 wherein the user interface comprises a slider that allows the user to control a weighting of the adjustment vector that is applied to the latent space point corresponding to the initial output image.

10. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 further comprising incorporating the output image into one or more of a movie, a video, a video game or virtual or augmented reality content.

11. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein processing the input image with the neural network encoder to generate a latent space point that is an encoded representation of the image comprises:

separately encoding different portions of the image by, for each separately encoded portion, generating a latent space point of the portion, thereby generating a plurality of multi-dimensional vectors where each multi-dimensional vector is an encoded representation of a different portion of the input image; and

concatenating the plurality of multi-dimensional vectors into a combined vector that is the latent space point which, in turn, is an encoded representation of the image.

12. The computer-implemented method of changing a face within an image or video frame set forth in claim 11 wherein:

identifying a feature of the facial expression in the initial output image to edit corresponds to identifying at least one of the separately encoded image portions, and

wherein applying an adjustment vector comprises selecting an adjustment vector that corresponds to the at least one identified separately encoded image portion.

13. The computer-implemented method of changing a face within an image or video frame set forth in claim 12 wherein decoding the adjusted latent space point to generate an adjusted output image alters only a portion of the output image that corresponds to the identified feature.

14. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the adjustment vectors are latent space vectors generated by a mathematical operation on a plurality of latent space vectors corresponding to various encoded facial expressions.

15. The computer-implemented method of changing a face within an image or video frame set forth in claim 1 wherein the adjustment vectors are latent space vectors generated by averaging latent space vectors corresponding to various encoded facial expressions.

16. A system for changing a face within an output image or video frame, the system comprising:

a memory storing a plurality of computer-readable instructions; and

one or more processors operable to execute the computer-readable instructions and cause the system to:

receive an input image that includes a face presenting a facial expression in a pose;

process the image with a neural network encoder to generate a latent space point that is an encoded representation of the image;

decode the latent space point to generate an initial output image in accordance with a desired facial identity but with the facial expression and pose of the face in the input image;

identify a feature of the facial expression in the initial output image to edit;

apply an adjustment vector to a latent space point corresponding to the initial output image to generate an adjusted latent space point, in response to identifying the feature of the facial expression in the initial output image to edit, wherein applying the adjustment vector to the latent space point comprises translating the latent space point in latent space by adding the adjustment vector to the latent space point, wherein the adjusted latent space point comprises the latent space point after it has been translated; and

decode the adjusted latent space point to generate an adjusted output image in accordance with the desired facial identity but with the facial expression and pose of the face in the input image altered in accordance with the adjustment vector.

17. The system set forth in claim 16 wherein the plurality of computer readable instructions further comprise instructions to cause the system to repeat the steps of: (i) applying an adjustment vector to the latent space point corresponding to the initial output image to generate an adjusted latent space point and (ii) decoding the adjusted space point to generate an adjusted output image until the adjusted output image has the desired facial expression.

18. The system set forth in claim 17 wherein the adjustment vector is generated from a plurality of key poses from selected images having a facial expression with a selected trait.

19. The system set forth in claim 16 wherein the neural network is trained to be identity agnostic.

20. The system set forth in claim 16 wherein the input image is normalized and resized prior to the receiving step.

21. A non-transitory computer-readable memory comprising a plurality of computer-readable instructions that, when executed by one or more processors, cause the one or more processors to:

receive an input image that includes a face presenting a facial expression in a pose;

process the image with a neural network encoder to generate a latent space point that is an encoded representation of the image;

decode the latent space point to generate an initial output image in accordance with a desired facial identity but with the facial expression and pose of the face in the input image;

identify a feature of the facial expression in the initial output image to edit;

apply an adjustment vector to a latent space point corresponding to the initial output image to generate an adjusted latent space point, in response to identifying the feature of the facial expression in the initial output image to edit, wherein applying the adjustment vector to the latent space point comprises translating the latent space point in latent space by adding the adjustment vector to the latent space point, wherein the adjusted latent space point comprises the latent space point after it has been translated; and

decode the adjusted latent space point to generate an adjusted output image in accordance with the desired facial identity but with the facial expression and pose of the face in the input image altered in accordance with the adjustment vector.

22. The non-transitory computer-readable memory set forth in claim 21 comprising additional computer-readable instructions that, when executed by one or more processors, cause the one or more processors to repeat the steps of: (i) applying an adjustment vector to the latent space point corresponding to the initial output image to generate an adjusted latent space point, and (ii) decoding the adjusted space point to generate an adjusted output image until the adjusted output image has the desired facial expression.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2025
From: THE WALT DISNEY COMPANY (SWITZERLAND) GMBH
To: DISNEY ENTERPRISES, INC.
Reel/Frame 070461/0155 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2025
From: GHEBREMUSSE, SIRAK; GRABLI, STÉPHANE
To: LUCASFILM ENTERTAINMENT COMPANY LTD. LLC
Reel/Frame 070449/0551 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2025
From: NARUNIEC, JACEK KRZYSZTOF; WEBER, ROMANN MATTHEW; SCHROERS, CHRISTOPHER RICHARD
To: THE WALT DISNEY COMPANY (SWITZERLAND) GMBH
Reel/Frame 070449/0554 →
Continuity (1)
Related Publication 20230316587A1 · Oct 5, 2023
References Cited (24)
US 10902571B2 · Naruniec et al. · 2021 [cited by applicant]
US 11222466B1 · Naruniec · 2022 [cited by examiner]
US 11308657B1 · Berlin et al. · 2022 [cited by applicant]
US 20170076142A1 · Chang · 2017 [cited by applicant]
US 20190251707A1 · Gupta et al. · 2019 [cited by applicant]
US 20210142440A1 · Ahn et al. · 2021 [cited by applicant]
US 20210192684A1 · Pardeshi et al. · 2021 [cited by applicant]
US 20210295483A1 · Huang et al. · 2021 [cited by applicant]
US 20210327038A1 · Helminger et al. · 2021 [cited by applicant]
US 20220036534A1 · Chakrabarty et al. · 2022 [cited by applicant]
US 20220374649A1 · Naruniec et al. · 2022 [cited by applicant]
US 20220391611A1 · Kalarot · 2022 [cited by examiner]
US 20230049729A1 · Berlin et al. · 2023 [cited by applicant]
US 20230086807A1 · Lukác et al. · 2023 [cited by applicant]
US 20230162407A1 · Kalarot · 2023 [cited by examiner]
CN 112766160A · 2021 [cited by applicant]
CN 113420703A · 2021 [cited by applicant]
CN 113592982A · 2021 [cited by applicant]
JP 2021000224A · 2021 [cited by applicant]
KR 20210033781A · 2021 [cited by applicant]
Zeng, et al., “Facial Expression Transfer from Video via Deep Learning”, SCA '21: The ACM SIGGRAPH / Eurographics Symposium on Computer Animation, Sep. 6-9, 2021, 2 pages. [cited by applicant]
U.S. Appl. No. 17/707,785, “Non-Final Office Action”, Jun. 13, 2024, 24 pages. [cited by applicant]
U.S. Appl. No. 17/707,785, “Final Office Action”, Nov. 29, 2024, 27 pages. [cited by applicant]
Xu, et al., “Face Shape Gene: A Disentangled Shape Representation for Flexible Face Image Editing”, Computer Science, Computer Vision and Pattern Recognition Available online at : https://arxiv.org/abs/1905.01920, May 6… [cited by applicant]
Cited By (2)
US 12,406,487 US 12,541,818