IP Library Granted Patent US 11,651,540
Granted Patent B2
US 11,651,540 · App. 17/228,364 · Granted May 16, 2023

Learning a realistic and animatable full body human avatar from monocular video

Inventors: Minh Phuoc Vo (Larkspur, CA); Christoph Lassner (Mill Valley, CA); Carsten Sebastian Stoll (San Francisco, CA); Amit Raj (Atlanta, GA)
Assignee: Meta Platforms Technologies, LLC
G06T13/40G06N3/08G06T7/70G06T7/90G06T15/04G06T15/503G06T2207/10016G06T2207/10024G06T2207/20081G06T2207/20084G06T2207/30196
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 11,651,540
App. No.
17/228,364
Granted
May 16, 2023
Kind
B2
Abstract

In one embodiment, a method includes adjusting parameters of a three-dimensional geometry corresponding to a first person to make the three-dimensional geometry represent a desired pose for the first person, accessing a neural texture encoding an appearance of the first person, generating a first rendered neural texture based on a mapping between (1) a portion of the three-dimensional geometry that is visible from a viewing direction and (2) the neural texture, generating a second rendered neural texture by processing the first rendered neural texture using a first neural network, determining normal information associated with the portion of the three-dimensional geometry that is visible from the viewing direction, and generating a rendered image for the first person in the desired pose by processing the second rendered neural texture and the normal information using a second neural network.

Claims (49)

1. A method comprising, by a computing device:

adjusting parameters of a three-dimensional geometry corresponding to a first person to make the three-dimensional geometry represent a desired pose for the first person;

accessing a neural texture encoding an appearance of the first person;

generating a first rendered neural texture based on a mapping between (1) a portion of the three-dimensional geometry that is visible from a viewing direction and (2) the neural texture, the first rendered neural texture comprising k latent channels;

generating a second rendered neural texture by processing the first rendered neural texture using a first neural network, the second rendered neural texture comprising k channels, wherein first three channels of the k channels are color channels, and the remaining k−3 channels among the & channels are latent representation channels;

determining normal information associated with the portion of the three-dimensional geometry that is visible from the viewing direction;

generating a rendered image for the first person in the desired pose by processing the second rendered neural texture and the normal information using a second neural network.

2. The method of claim 1 , wherein the three-dimensional geometry is constructed by interpolating three-dimensional geometries representing known poses for the first person.

3. The method of claim 1 , wherein the three-dimensional geometry is constructed based on a three-dimensional geometry representing the desired pose for a second person.

4. The method of claim 1 , wherein each texel of the neural texture has k-channel latent representation.

5. The method of claim 1 , wherein the rendered image for the first person is modified by swapping at least a part of the neural texture with the corresponding part of a neural texture encoding an appearance of a second person.

6. The method of claim 5 , the neural texture encoding the appearance of the first person and the neural texture encoding the appearance of the second person are simultaneously trained along with the first neural network and the second neural network.

7. The method of claim 1 , wherein the second neural network also produces a mask that is used for blending the generated rendered image for the first person in the desired pose with a background.

8. The method of claim 1 , wherein a process for training the neural texture encoding the appearance of the first person, the first neural network, and the second neural network comprises:

accessing a video stream of the first person taken from various viewing directions;

determining keyframes among a plurality of frames of the video stream that capture static salient appearances of the first person in the video stream;

for each of the determined keyframes:

generating a training rendered image for the first person in a training pose shown in the frame using the neural texture, the first neural network, and the second neural network;

calculating losses by comparing the generated training rendered image and a ground truth image of the first person in the frame; and

updating parameters of the neural texture, the first neural network, and the second neural network based on the calculated losses.

9. The method of claim 8 , wherein generating the training rendered image for the first person in the training pose shown in the frame comprises:

constructing a three-dimensional training geometry to represent the first person in the training pose shown in the frame based on a body shape model;

generating a first training rendered neural texture based on a mapping between (1) a portion of the three-dimensional training geometry that is visible from a viewing direction of the frame and (2) the neural texture;

generating a second training rendered neural texture by processing the first training rendered neural texture using the first neural network;

determining training normal information associated with the portion of the three-dimensional training geometry that is visible from the viewing direction; and

generating the training rendered image for the first person in the training pose by processing the second training rendered neural texture and the training normal information using the second neural network.

10. The method of claim 8 , wherein each frame of the video stream comprises an image with color channels.

11. The method of claim 8 , wherein each determined keyframe is associated with a distinctive viewing direction.

12. The method of claim 8 , wherein the first neural network and the second neural network are further trained using non-keyframes among the plurality of frames of the video stream after the training of the neural texture, the first neural network, and the second neural network using the determined keyframes is completed.

13. The method of claim 12 , wherein the neural texture optimized with the keyframes is used for training the first neural network and the second neural network with the non-keyframes.

14. The method of claim 9 , wherein the second training rendered neural texture comprises k-channels, wherein first three channels of the k-channels of the second training rendered neural texture are color channels, and wherein the rest k−3 channels among the k-channels of the second training rendered neural texture are latent representation channels.

15. The method of claim 14 , wherein the first three channels of the k-channels of the second training rendered neural texture are enforced to be color channels by comparing the first three channels of the k-channels of the second training rendered neural texture with color channels of the frame as a part of calculating the losses.

16. The method of claim 8 , wherein the losses comprise a red, green, and blue (RGB) loss, a feature loss, an adversarial loss, or a mask loss.

17. The method of claim 16 , wherein the RGB loss is calculated based on a comparison between RGB channels of the generated training rendered image and RGB channels of the ground truth image of the first person in the frame.

18. The method of claim 16 , wherein the feature loss is calculated based on a comparison between latent features extracted from the generated training rendered image and latent features extracted from the ground truth image of the first person in the frame.

19. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

adjust parameters of a three-dimensional geometry corresponding to a first person to make the three-dimensional geometry represent a desired pose for the first person;

access a neural texture encoding an appearance of the first person;

generate a first rendered neural texture based on a mapping between (1) a portion of the three-dimensional geometry that is visible from a viewing direction and (2) the neural texture, the first rendered neural texture comprising k latent channels;

generate a second rendered neural texture by processing the first rendered neural texture using a first neural network, the second rendered neural texture comprising k channels, wherein first three channels of the & channels are color channels, and the remaining k−3 channels among the k channels are latent representation channels;

determine normal information associated with the portion of the three-dimensional geometry that is visible from the viewing direction;

generate a rendered image for the first person in the desired pose by processing the second rendered neural texture and the normal information using a second neural network.

20. A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:

adjust parameters of a three-dimensional geometry corresponding to a first person to make the three-dimensional geometry represent a desired pose for the first person;

access a neural texture encoding an appearance of the first person;

generate a first rendered neural texture based on a mapping between (1) a portion of the three-dimensional geometry that is visible from a viewing direction and (2) the neural texture, the first rendered neural texture comprising k latent channels;

generate a second rendered neural texture by processing the first rendered neural texture using a first neural network, the second rendered neural texture comprising k channels, wherein first three channels of the k channels are color channels, and the rest k−3 channels among the k channels are latent representation channels;

determine normal information associated with the portion of the three-dimensional geometry that is visible from the viewing direction;

generate a rendered image for the first person in the desired pose by processing the second rendered neural texture and the normal information using a second neural network.

Assignments (2)
CHANGE OF NAME Recorded Jul 6, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060591/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2021
From: VO, MINH PHUOC; LASSNER, CHRISTOPH; STOLL, CARSTEN SEBASTIAN; RAJ, AMIT
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 056083/0218 →