The Oren–Nayar reflectance model, developed by Michael Oren and Shree K. Nayar, is a reflectivity model for diffuse reflection from rough surfaces.[1] It has been shown to accurately predict the appearance of a wide range of natural surfaces, such as concrete, plaster, sand, etc.
Reflectance is a physical property of a material that describes how it reflects incident light. The appearance of various materials are determined to a large extent by their reflectance properties. Most reflectance models can be broadly classified into two categories: diffuse and specular. In computer vision and computer graphics, the diffuse component is often assumed to be Lambertian. A surface that obeys Lambert's Law appears equally bright from all viewing directions. This model for diffuse reflection was proposed by Johann Heinrich Lambert in 1760 and has been perhaps the most widely used reflectance model in computer vision and graphics. For a large number of real-world surfaces, such as concrete, plaster, sand, etc., however, the Lambertian model is an inadequate approximation of the diffuse component. This is primarily because the Lambertian model does not take the roughness of the surface into account.
Rough surfaces can be modelled as a set of facets with different slopes, where each facet is a small planar patch. Since photo receptors of the retina and pixels in a camera are both finite-area detectors, substantial macroscopic (much larger than the wavelength of incident light) surface roughness is often projected onto a single detection element, which in turn produces an aggregate brightness value over many facets. Whereas Lambert’s law may hold well when observing a single planar facet, a collection of such facets with different orientations is guaranteed to violate Lambert’s law. The primary reason for this is that the foreshortened facet areas will change for different viewing directions, and thus the surface appearance will be view-dependent.
Analysis of this phenomenon has a long history and can be traced back almost a century. Past work has resulted in empirical models designed to fit experimental data as well as theoretical results derived from first principles. Much of this work was motivated by the non-Lambertian reflectance of the moon.
The Oren–Nayar reflectance model, developed by Michael Oren and Shree K. Nayar in 1993,[1] predicts reflectance from rough diffuse surfaces for the entire hemisphere of source and sensor directions. The model takes into account complex physical phenomena such as masking, shadowing and interreflections between points on the surface facets. It can be viewed as a generalization of Lambert’s law. Today, it is widely used in computer graphics and animation for rendering rough surfaces. It also has important implications for human vision and computer vision problems, such as shape from shading, photometric stereo, etc.
The surface roughness model used in the derivation of the Oren-Nayar model is the microfacet model, proposed by Torrance and Sparrow,[2] which assumes the surface to be composed of long symmetric V-cavities. Each cavity consists of two planar facets. The roughness of the surface is specified using a probability function for the distribution of facet slopes. In particular, the Gaussian distribution is often used, and thus the variance of the Gaussian distribution,
\sigma2
\sigma
[0,infty)
In the Oren–Nayar reflectance model, each facet is assumed to be Lambertian in reflectance. If
E0
Lr
Lr=L1+L2,
where the direct illumination term
L1
L2
L1=
\rho | |
\pi |
E0\cos\thetai\left(C1+C2\cos(\phii-\phir)\tan\beta+C3(1-|\cos(\phii-\phi
|
L2=0.17
\rho2 | |
\pi |
E0
\cos\theta | ||||
|
\left[1-\cos(\phii-\phi
2\right], | ||||
|
where
C1=1-0.5
\sigma2 | |
\sigma2+0.33 |
C2=\begin{cases} 0.45
\sigma2 | |
\sigma2+0.09 |
\sin\alpha&if\cos(\phii-\phi
\left(\sin\alpha-\left( | |||||
|
2\beta | |
\pi\right) |
3\right)&otherwise, \end{cases}
C3=0.125
\sigma2 | \left( | |
\sigma2+0.09 |
4\alpha\beta | |
\pi2 |
\right)2,
\alpha=max(\thetai,\thetar)
\beta=min(\thetai,\thetar)
and
\rho
\sigma
\sigma=0
C1=1
C2=C3=L2=0
Lr=
\rho | |
\pi |
E0\cos\thetai.
Here is a real image of a matte vase illuminated from the viewing direction, along with versions rendered using the Lambertian and Oren-Nayar models. It shows that the Oren-Nayar model predicts the diffuse reflectance for rough surfaces more accurately than the Lambertian model.
Here are rendered images of a sphere using the Oren-Nayar model, corresponding to different surface roughnesses (i.e. different
\sigma
Oren-Nayar model | Torrance-Sparrow model | Microfacet model for refraction[3] | |
---|---|---|---|
Rough opaque diffuse surfaces | Rough opaque specular surfaces (glossy surfaces) | Rough transparent surfaces | |
Each facet is Lambertian (diffuse) | Each facet is a mirror (specular) | Each facet is made of glass (transparent) |