owned this note
owned this note
Published
Linked with GitHub
---
breaks: False
---
# The Dichromatic Reflection Model (**DRM**)
Reference: **Shaffer, "Using color to separate reflection"**.
**TLDR**:
$$\begin{split}
L(\lambda, i, e, g)
&= L_i(\lambda, i, e, g) + L_b(\lambda, i, e, g)\\
&= m_i(i, e, g) c_i(\lambda) + m_b(i, e, g) c_b(\lambda).
\end{split}$$
- $L$ -- total radiance of reflected light,
- $L_i$ -- light reflected at the interface,
- $L_b$ -- body reflection,
- $m_i, m_b$ -- magnitudes (geometric scale factors) of *interface* and *body* reflection components, depend only on illumantion and viewing directions but not on wavelength,
- $c_i, c_b$ -- relative spectral power distributions (basically, colors), independent of illumination and viewing directions,
- $i$ -- angle of incidence, i.e. the angle between illumination direction $I$ and surface normal $N$,
- $e$ -- emittance direction, i.e. the angle between surface normal $N$ and viewing direction $V$,
- $g$ -- phase angle, i.e. the angle between $I$ and $V$,
- $s$ -- the off-specular angle, i.e. the angle between $V$ and (macroscopic) perfect specular reflection $J$.
In other words, **DRM** says there are two independent reflection processes -- interface reflection and body reflection -- and each has its own characteristic color -- whose magnitude (but not SPD) varies with $I$ and $V$.
Thus "**di**chromatic" in the name.
**Details**:
**DRM** models a material that is
- Opaque (no light is transmitted from one side of surface to the other)
- Optically inhomogeneous/"rough" (local surface normal differs from macroscopic surface normal). Excludes e.g. metals and most crystals
- Has only one significant interface (real materials may have multiple interfaces)
- Reflecting isotropically wrt rotation around surface normal
- Optically inactive (no fluorescence/etc)
**DRM** assumes single lightsource and no ambient ("diffuse") light.
In this model light interacts with
- A *medium* that comprises the bulk of the surface matter
- Particles of a *colorant* that produce scattering and coloration
"...When light strikes a surface,"
1. It first must pass through the interface between the Air and the Surface Medium. Because Medium's Index of Refraction (**IOR**) differs from that of Air, some of the light
gets reflected at the interface, in the "perfect specular direction" (wrt local surface normal), producing *interface reflection* (that's the specular component). Amount of interface reflection is governed by **Fresnel's laws**: reflectance depends on angle of incidence, IOR of material, and polarization of incoming illumination. Interface reflection is often assumed to be constant wrt wavelength because of small variation and thus is assumed to be of the same color as the illuminant.
2. "Light that penetrates through the interface passes through the medium where it undergoes scattering from the colorant, and eventually is either transmitted through the material (isn't the case since we assume opaque materials), absorbed by the colorant, or re-emitted through the same interface -- producing *body reflection* (aka diffuse component). Body reflection is often assumed to be isotropic wrt viewing direction and also "unpolarized".
Note that Phong's, Blinn's, Cook's&Torrance's models are special cases of DRM, e.g. Phong's model is DRM with
## Dichromatic Model in Color Space
**Def.** *Spectral Projection* is the process of computing pixel values from SPD:
1. Monochrome:
$$ p = \int \chi(\lambda)s(\lambda)\mathrm{d}\lambda,$$
- $p$ -- pixel value,
- $\chi$ -- SPD,
- $s$ -- responsivity of camera to various wavelengths,
- integration is over $\operatorname{supp}s$ which is a bounded interval of wavelengths.
2. Color camera:
$$ C_\chi =
\begin{bmatrix}r_\chi\\ g_\chi\\ b_\chi\end{bmatrix}
= \begin{bmatrix}
\int\chi(\lambda)\bar{r}(\lambda)\mathrm{d}\lambda\\
\int\chi(\lambda)\bar{g}(\lambda)\mathrm{d}\lambda\\
\int\chi(\lambda)\bar{b}(\lambda)\mathrm{d}\lambda
\end{bmatrix},$$
- $\bar{r} = \tau_r(\lambda)s(\lambda)$ -- responsivity
of camera combined with red filter; $\tau_r$ -- red filter's transmittance function; similarly for blue and green.
**At a fixed surface point** the Dichromatic Reflection Model
defines SPD of reflected light:
$$\chi(\lambda) = m_i(i,e,g) c_i(\lambda) + m_b(i,e,g) c_b(\lambda).$$