Physically-based rendering of human skin——Chapter 3——Methods

as our objective is to improve the rendering appearance of scanned 扫描 human faces but the hard constaint here is to do it in real time, in order to simulate the subsurface scattering, we have chosen methods which operate in screen space because they are fast and the additional memory consumption is relatively low in comparison to other sate-of-the-art methods. moreover, those methods scale very well with the number of translucent objects in the scene, which is not so important in our particular case when only one model is in the scene, but it is worth to mention to understand the attractiveness of the screen space methods.

however apart from being fast and efficient, simulating the subsurface scattering in screen space produces some artifacts, such as halos 光晕. furthermore, since our models do not have any mask that indicates which area are skin or not, the algorithms diffuse the light between skin and non-skin zones. later in this chapter (Section 3.3) we propose some extensions to the screen space methods in order to solve or alleviate the aforementioned problems.

we have implemented three methods in order to simulate the subsurface scattering effect in screen-space, and one to simulate the forward scattering, which are:

  1. Screen space subsurface scattering [JG10].
  2. Separable pre-integrated subsurface scattering [JJG15].
  3. Separable artistic subsurface scattering [JJ].
  4. Real-Time realistic skin translucency [Jim+10].

some of the techniques are simple adaptations of the shader source code that accompanies some papers, but in any case, the images shown throughout this section come from our implementation of the described techniques.

Physically-based rendering of human skin——Chapter 3——Methods

3.1 subsurface scattering
subsurface scattering is a complex phenomena which describes how light enters an object, interacts with its different layers (figure 3.1), and may exit at various points around the incident point or by transmitted through the object. this effect is described in terms of the BSSRDF S which relates the outgoing radiance Physically-based rendering of human skin——Chapter 3——Methodsat a point x0 to the radiant flux Physically-based rendering of human skin——Chapter 3——Methods
at the point xi from the direction wi:

Physically-based rendering of human skin——Chapter 3——Methods

the subsuface scattering effect can also be described using radially symmetric diffusion profiles. a diffusion profile is a function Rd(x; y) that describes the light reflected around a normally incident pencil beam on the origin of a surface of an infinite half space. for an homogeneous material, Rd is radically symmetric and can be characterized by a 1D diffusion profile Rd®, which describes how the light atteuates at each point as a function of the distance r=||(x,y)|| from the incident point. to obtain such diffusion profiles, the authors of [Jen+01] use the diffusion theory to arrive a at a diffusion equation:
Physically-based rendering of human skin——Chapter 3——Methods

for an infinite media this equation has a simple solution, however for a finite media this equation has no analytical solution. 无解析解

applying a diffusion profile is simple. consider a point P(x,y) on the surface. we want to obtain the contribution of all the points around P. part of the light arriving at such adjacent points will penetrate into the object and exit at P, with the specific attenuation given by the diffusion profile R®, expressed by:
Physically-based rendering of human skin——Chapter 3——Methods

being M(x; y) the radiant exitance at point P, and E(x; y) the irradiance around P. Equation 3.3 sums the contribution of each point around P, each of them weighted by the diffusion profile R® according to its distance r to P. Threfore, it can be rewritten as a two-dimensional convolution:

Physically-based rendering of human skin——Chapter 3——Methods

Carrying out the 2D convolution of Equation 3.4 is costly for real-time applications. However, if Rd® can be approximated by a sequence of 2N 1D separable convolutions, A, represented as:
Physically-based rendering of human skin——Chapter 3——Methods
where the approximation A is defined by 1D functions ai. Due the radial symmetry of Rd the same functions ai can be employed in both coordinate directions.

3.1.1 screen space sum of gaussians subsurface scattering
from equation 3.4, D’Eon and Luebke [dL08] observed that the skin diffusion profile (figure 2.3) reasembles the aspect of a gaussian, so a sum of gaussian functions (Table 3.1) is suitable for approximation, being Rd®:
Physically-based rendering of human skin——Chapter 3——Methods
Physically-based rendering of human skin——Chapter 3——Methods

table 3.1: sum-of-gaussians parameters for a skin model depicted in [dL08].