Physically-Based Simulation of
Rainbows
| Iman Sadeghi 1 |
Adolfo Munoz 2 |
Philip Laven 3 |
Wojciech Jarosz 4 |
| |
Francisco Seron 2 |
Diego Gutierrez 2 |
Henrik Wann Jensen 1 |
|
|
| 1 University of California,
San Diego |
2
Universidad de Zaragoza |
3
Horley, UK |
4 Disney Research Zurich |
|
Abstract |
In this paper we derive a physically
based model for simulating rainbows. Previous techniques for
simulating rainbows have used either geometric optics (ray
tracing) or Lorenz-Mie theory. Lorenz-Mie theory is by far
the most accurate technique as it takes into account optical
effects such as dispersion, polarization, interference, and
diffraction. These effects are critical for simulating
rainbows accurately. Unfortunately, the shape of real
raindrops is non-spherical, especially for larger raindrops,
and there is no alternative theory that can handle this
case. We present the first comprehensive technique for
simulating the interaction of a wavefront of light with a
physically-based water drop shape. Our technique is based on
ray tracing extended to account for dispersion,
polarization, interference, and diffraction. Our model
matches Lorenz-Mie theory for spherical particles, but it
also enables the accurate simulation of non-spherical
particles. It can simulate many different rainbow phenomena
including double rainbows and supernumerary bows. We show
how the non-spherical raindrops influences the shape of the
rainbows, and we provide the first comprehensive simulation
of the rare twinned primary bow, which was believed to be
caused by non-spherical water drops. |
| |
Fig. 1: Our rendering results for different
types of rainbows: (a) Rainbow derived from Lorenz-Mie
theory. (b) Single primary rainbow with considering the
angular view of the sun. (c) Double rainbow with a flipped
secondary rainbow. (d) Multiple supernumerary rainbows
caused by small water drops with uniform sizes. (e) Twinned
rainbow resulted from mixture of non-spherical water drops
and spherical ones.
|
| |
 |
 |
 |
 |
 |
| |
(a) |
(b) |
(c) |
(d) |
(e) |
| Water Drop Size |
0.4 mm |
0.4 mm |
0.4 mm |
0.3 mm |
0.40 mm
0.45 mm |
| Phase Function |
Download |
Download I,
II |
Download I,
II |
Download I,
II |
Download
I,
II
Download
I,
II |
| FOV |
25o |
25o |
25o |
25o |
25o |
| Lens Type |
Rectilinear |
Rectilinear |
Rectilinear |
Rectilinear |
Rectilinear |
| Sun's Inclination |
N/A |
N/A |
N/A |
N/A |
0o |
| Sun's Angular View |
0o |
0.5o |
0.5o |
0.5o |
0.5o |
| Illumination |
D65 |
D65 |
D65 |
D65 |
D65 |
| |
Fig. 11:
Comparison between our method (a) and Lorenz-Mie theory (b)
for different water drop sizes. Top: Renders. Bottom: Plots
of the phase function for the regions of the primary and
secondary rainbows. From left to right: Water drops of
radius 0.1mm, 0.2mm 0.3mm, 0.4mm and 0.5mm, respectively.
Our method matches Lorenz-Mie theory for small water drops,
which are spherical, but predicts different behavior as the
radius increases by accounting for non-spherical drop
shapes.
|
| |
 |
 |
 |
 |
 |
| Water Drop Size |
0.1 mm |
0.2 mm |
0.3 mm |
0.4 mm |
0.5 mm |
| Phase Function (a) |
Download I,
II |
Download I,
II |
Download
I,
II |
Download I,
II |
Download I,
II |
| Phase Function (b) |
Download |
Download |
Download |
Download |
Download |
| FOV |
30o |
30o |
30o |
30o |
30o |
| Lens Type |
Rectilinear |
Rectilinear |
Rectilinear |
Rectilinear |
Rectilinear |
| Sun's Inclination |
N/A |
N/A |
N/A |
N/A |
0o |
| Sun's Angular View |
0.5o |
0.5o |
0.5o |
0.5o |
0.5o |
| Illumination |
D65 |
D65 |
D65 |
D65 |
D65 |
| |
Fig. 12 (top row): The inserts in these
images show how our model can reproduce the rainbows in the
underlying photographs. Only the background color of the
insert has been matched to the specific photograph. From
left to right: double rainbow (background reproduced with
permission (c) Les Cowley -
http://www.atoptics.co.uk/rainbows/adband.htm), full double
rainbow (background reproduced with permission (c)
Karl Kaiser - http://home.eduhi.at/member/nature) and
supernumerary bows.
|
| |
 |
 |
 |
| Water Drop Size |
0.4 mm |
0.4 mm |
0.3 mm |
| Phase Function |
Download
I,
II |
Download
I,
II |
Download I,
II |
| FOV |
20o |
100o |
30o |
| Lens Type |
Rectilinear |
Fisheye |
Rectilinear |
| Sun's Inclination |
N/A |
N/A |
N/A |
| Sun's Angular View |
0.5o |
0.5o |
0.5o |
| Background Color |
(107,114,118) |
(183,202,212) |
(172,172,172) |
| Intensity |
55% |
100% |
90% |
| Illumination |
D65 |
D65 |
D65 |
| |
Fig. 12 (bottom row): The inserts in these
images show how our model can reproduce the rainbows in the
underlying photographs. Only the background color of the
insert has been matched to the specific photograph. From
left to right: Multiple supernumerary bows, cloud bow
(background reproduced with permission (c) Les Cowley -
http://www.atoptics.co.uk/rainbows/cldbow.htm) and red bow.
|
| |
 |
 |
 |
| Water Drop Size |
0.3 mm |
0.1 mm |
0.4 mm |
| Phase Function |
Download I,
II |
Download I,
II |
Download
I,
II |
| FOV |
10o |
100o |
30o |
| Lens Type |
Rectilinear |
Fisheye |
Rectilinear |
| Sun's Inclination |
N/A |
N/A |
N/A |
| Sun's Angular View |
0.5o |
0.5o |
0.5o |
| Background Color |
(69,99,112) |
(141,180,223) |
(154,83,58) |
| Intensity |
80% |
60% |
80% |
| Illumination |
D65 |
D65 |
D65
D65 + Rayleigh
|
| |
Fig. 13: Comparison of renderings of
rainbows owed to different water drop radii between
Lorenz-Mie (left region on each image) and our solution
(right region of each image). As the 0.4mm radius water drop
is spherical, both algorithms lead to equal phase functions.
As the particle gets bigger, the geometry becomes
non-spherical and therefore Lorenz-Mie is unable to simulate
it, while our solution takes it into account. Notice, also,
that the variation on the secondary rainbow is quite
unnoticeable compared to the variation on the primary
rainbow, in agreement with the formation of twinned
rainbows.
|
| |
|
|
|
|
|
| Water Drop Size |
0.4 mm |
0.5 mm |
0.6 mm |
0.7 mm |
0.8 mm |
| Phase Function (right) |
Download |
Download |
Download |
Download |
Download |
| Phase Function (left) |
Download I,
II |
Download I,
II |
Download I,
II |
Download I,
II |
Download I,
II |
| FOV |
120o |
120o |
120o |
120o |
120o |
| Lens Type |
Fisheye |
Fisheye |
Fisheye |
Fisheye |
Fisheye |
| Sun's Inclination |
N/A |
25o |
25o |
25o |
25o |
| Sun's Angular View |
0.5o |
0.5o |
0.5o |
0.5o |
0.5o |
| Illumination |
D65 |
D65 |
D65 |
D65 |
D65 |
| |
Fig. 14:
The effect of different water drop radii on the apparent
geometry of the rainbow.
|
| |
 |
 |
 |
 |
| Water Drop Size |
0.4 mm |
0.5 mm |
0.6 mm |
0.7 mm |
| Phase Function |
Download I,
II |
Download
I,
II |
Download I,
II |
Download I,
II |
| FOV |
120o |
120o |
120o |
120o |
| Lens Type |
Fisheye |
Fisheye |
Fisheye |
Fisheye |
| Sun's Inclination |
N/A |
0o |
0o |
0o |
| Sun's Angular View |
0.5o |
0.5o |
0.5o |
0.5o |
| Illumination |
D65 |
D65 |
D65 |
D65 |
| |
Fig. 17: Left: Photograph of a twinned
rainbow, reproduced with permission (c) Benjamin Khne
(www.nachtwolke.de/temp/regenbogen2.htm). Right: Twinned
rainbow simulated using our algorithm, generated from a two
showers of 0.4mm and 0.45mm radius water drops,
respectively.
|
| |
|
|
| Water Drop Size |
________ |
0.40 mm
0.45 mm |
| Phase Functions |
|
Download I,
II
Download I,
II |
| FOV |
|
30o |
| Lens Type |
|
Rectilinear |
| Sun's Inclination |
|
0o |
| Sun's Angular View |
|
0.5o |
| Background Color |
|
(146,151,153) |
|
Intensity |
|
50% |
|
Illumination |
|
D65 |
Phase Function Specifications:
1D Lorenz-Mie Theory Phase Functions:
File Format
2D
Raytraced Phase Functions: File Format
|