IP Library Granted Patent US 12,367,635
Granted Patent B2
US 12,367,635 · App. 18/374,358 · Granted Jul 22, 2025

Skin microstructure texture filtering for runtime facial animations

Inventor: Chris Lewin (Guildford, GB)
Assignee: Electronic Arts Inc.
G06T15/04G06T5/20G06T5/70G06T5/73G06T13/40G06T2207/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,367,635
App. No.
18/374,358
Granted
Jul 22, 2025
Kind
B2
Abstract

A method of skin microstructure texture filtering for facial animation includes obtaining a plurality of one-dimensional (1D) filtered tiles corresponding to a plurality of filter axis angles and a plurality of filter parameters applied to a neutral tile, and at runtime, for each pixel representing a region of human skin, determining a principal direction of deformation, a principal filter parameter corresponding to the principal direction of deformation, and a secondary filter parameter corresponding to a secondary direction of deformation orthogonal to the principal direction of deformation, and selecting a first 1D filtered tile among the plurality of 1D filtered tiles, the first 1D filter tile corresponding to the secondary direction of deformation and the secondary filter parameter, and generating a respective two-dimensional (2D) filtered tile by convolving the first 1D filtered tile with a second 1D filter kernel corresponding to the principal direction of deformation and the principal filter parameter.

Claims (51)

1. A method of skin microstructure texture filtering for facial animation, the method comprising:

obtaining a plurality of one-dimensional (1D) filtered tiles corresponding to a plurality of filter axis angles and a plurality of filter parameters applied to a neutral tile, the neutral tile being a microstructure texture of human skin; and

at runtime, for each respective pixel representing a region of the human skin:

determining a principal direction of deformation, a principal filter parameter corresponding to the principal direction of deformation, and a secondary filter parameter corresponding to a secondary direction of deformation orthogonal to the principal direction of deformation;

selecting a first 1D filtered tile among the plurality of 1D filtered tiles, the first 1D filter tile corresponding to the secondary direction of deformation and the secondary filter parameter; and

generating a respective two-dimensional (2D) filtered tile by convolving the first 1D filtered tile with a second 1D filter kernel corresponding to the principal direction of deformation and the principal filter parameter.

2. The method of claim 1 , further comprising:

generating the plurality of 1D filtered tiles corresponding to the plurality of filter axis angles and the plurality of filter parameters by:

for each respective filter axis angle and each respective filter parameter, computing a respective 1D filtered tile by convolving the neutral tile with a respective 1D filter kernel corresponding to the respective filter axis angle and the respective filter parameter.

3. The method of claim 2 , wherein each respective 1D filter kernel comprises a Gaussian function with an amplitude α and a standard deviation σ, wherein α and σ are functions of the respective filter parameter.

4. The method of claim 2 , wherein the plurality of filter axis angles ranges from 0 degree to 180 degrees.

5. The method of claim 2 , wherein each respective filter parameter is a positive real number corresponding to a degree of stretching or compression of the human skin.

6. The method of claim 4 , wherein:

based on the respective filter parameter being greater than unity, the respective filter parameter represents a stretch ratio, and the respective 1D filter kernel corresponds to a blurring operation; and

based on the respective filter parameter being less than unity, the respective filter parameter represents a compression ratio, and the respective 1D filter kernel corresponds to a sharpening operation.

7. The method of claim 4 , wherein plurality of filter parameters ranges from 0.7 to 1.4.

8. The method of claim 1 , wherein the principal filter parameter is greater than the secondary filter parameter.

9. The method of claim 1 , wherein selecting the first 1D filtered tile comprises:

selecting a second 1D filtered tile and a third 1D filtered tile among the plurality of 1D filtered tiles, the second 1D filtered tile and the third 1D filtered tile corresponding to a second filter axis angle and a third filter axis angle adjacent the secondary direction of deformation;

determining an interpolation factor; and

determining the first 1D filtered tile by linearly interpolating between the second 1D filtered tile and the third 1D filter tile using the interpolation factor.

10. The method of claim 1 , wherein the neutral tile is tiled across an image of a face, and wherein a periodic boundary condition is applied to the computation of the respective 1D filtered tile by wrapping pixels at or adjacent an edge of the neutral tile around to an opposite edge of the neutral tile.

11. The method of claim 1 , wherein the neutral tile comprises a normal map, a displacement map, or an albedo map.

12. The method of claim 1 , wherein the neutral tile is obtained by combining a first neutral tile representing a chin area, a second neutral tile representing a cheek area, and a third neutral tile representing a forehead area.

13. The method of claim 12 , wherein combining the first neutral tile, the second neutral tile, and the third neutral tile comprises a weighted blending of the first neutral tile, the second neutral tile, and the third neutral tile.

14. A non-transitory computer-readable storage medium storing instructions that, when executed by one or more processors, cause a computing device to perform microstructure texture filtering for animation of human skin, by performing the steps of:

obtaining a plurality of one-dimensional (1D) filtered tiles corresponding to a plurality of filter axis angles and a plurality of filter parameters applied to a neutral tile, the neutral tile being a microstructure texture of human skin; and

at runtime, for each respective pixel representing a region of the human skin:

determining a principal direction of deformation, a principal filter parameter corresponding to the principal direction of deformation, and a secondary filter parameter corresponding to a secondary direction of deformation orthogonal to the principal direction of deformation;

selecting a first 1D filtered tile among the plurality of 1D filtered tiles, the first 1D filter tile corresponding to the secondary direction of deformation and the secondary filter parameter; and

generating a respective two-dimensional (2D) filtered tile by convolving the first 1D filtered tile with a second 1D filter kernel corresponding to the principal direction of deformation and the principal filter parameter.

15. The non-transitory computer-readable storage medium of claim 14 , wherein the instructions, when executed by the one or more processors, further cause the computing device to perform the steps of:

generating the plurality of 1D filtered tiles corresponding to the plurality of filter axis angles and the plurality of filter parameters by:

for each respective filter axis angle and each respective filter parameter, computing a respective 1D filtered tile by convolving the neutral tile with a respective 1D filter kernel corresponding to the respective filter axis angle and the respective filter parameter.

16. The non-transitory computer-readable storage medium of claim 15 , wherein each respective 1D filter kernel comprises a Gaussian function with an amplitude α and a standard deviation σ, wherein α and σ are functions of the respective filter parameter.

17. A device for performing microstructure texture filtering for animation of human skin, the device comprising:

a memory storing instructions; and

one or more processors configured to execute the instructions to cause the device to:

obtain a plurality of one-dimensional (1D) filtered tiles corresponding to a plurality of filter axis angles and a plurality of filter parameters applied to a neutral tile, the neutral tile being a microstructure texture of human skin; and

at runtime, for each respective pixel representing a region of the human skin:

determine a principal direction of deformation, a principal filter parameter corresponding to the principal direction of deformation, and a secondary filter parameter corresponding to a secondary direction of deformation orthogonal to the principal direction of deformation;

select a first 1D filtered tile among the plurality of 1D filtered tiles, the first 1D filter tile corresponding to the secondary direction of deformation and the secondary filter parameter; and

generate a respective two-dimensional (2D) filtered tile by convolving the first 1D filtered tile with a second 1D filter kernel corresponding to the principal direction of deformation and the principal filter parameter.

18. The device of claim 17 , wherein the instructions, when executed by the one or more processors, further cause the device to:

generate the plurality of 1D filtered tiles corresponding to the plurality of filter axis angles and the plurality of filter parameters by:

for each respective filter axis angle and each respective filter parameter, computing a respective 1D filtered tile by convolving the neutral tile with a respective 1D filter kernel corresponding to the respective filter axis angle and the respective filter parameter.

19. The device of claim 18 , wherein each respective 1D filter kernel comprises a Gaussian function with an amplitude α and a standard deviation σ, wherein α and σ are functions of the respective filter parameter.

20. The device of claim 17 , wherein the selection of the first 1D filtered tile comprises:

selecting a second 1D filtered tile and a third 1D filtered tile among the plurality of 1D filtered tiles, the second 1D filtered tile and the third 1D filtered tile corresponding to a second filter axis angle and a third filter axis angle adjacent the secondary direction of deformation;

determining an interpolation factor; and

determining the first 1D filtered tile by linearly interpolating between the second 1D filtered tile and the third 1D filter tile using the interpolation factor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2023
From: LEWIN, CHRIS
To: ELECTRONIC ARTS INC.
Reel/Frame 065067/0056 →
Continuity (1)
Related Publication 20250111580A1 · Apr 3, 2025
References Cited (12)
US 7443394B2 · Anderson · 2008 [cited by examiner]
US 7454039B2 · Tu · 2008 [cited by examiner]
US 7768528B1 · Edwards · 2010 [cited by examiner]
US 9460541B2 · Li · 2016 [cited by examiner]
US 10997768B2 · Barlier · 2021 [cited by examiner]
US 11532112B2 · Barlier · 2022 [cited by examiner]
US 12045923B2 · Barlier · 2024 [cited by examiner]
US 20070127844A1 · Watanabe · 2007 [cited by examiner]
US 20160042548A1 · Du · 2016 [cited by examiner]
Nagano et al., “Skin Microstructure Deformation With Displacement Map Convolution,” [cited by applicant]
Bourke, Paul. “Tiling Textures on the Plane (Part 1)” (Sep. 1992) (available at: https://paulbourke.net/geometry/tiling/). [cited by applicant]
Barré-Brisebois et al. “Blending in Detail,” Self Shadow (Jul. 10, 2012) (available at: https://blog.selfshadow.com/publications/blending-in-detail/). [cited by applicant]