Skip to content
Trisha Lian edited this page Aug 4, 2019 · 38 revisions

Simulations that account for the properties of lenses and pigments require descriptions of the scene spectral radiance. For some purposes, testing with 2D scene spectral radiance is adequate. For some applications, we must create a 3D spectral radiance data set (iset3d).

2D scenes

The ISETBIO scene is a Matlab structure. For many applications, we model the scene as if it is presented on a 2D display. The scene structure can be created and added to the ISETBIO database to be visualized using the commands.

scene = sceneCreate('rings rays');
sceneWindow(scene);

We treat the 2D scene radiance (photons/sr/sec/nm/m^2) as Lambertian (emitting uniformly in all directions); we do not represent the bidirectional spectral radiance from each point. This is a reasonable assumption when viewing a display from a single point of view. The retinal irradiance (photons/sec/nm/m^2) structure is derived from the scene radiance. Both are typically stored in the database using the ieAddObject() function.

The sceneWindow shows the currently selected scene.

Scene types

A large number of scenes can be created by specifying an argument to the sceneCreate command, such as

mcc = sceneCreate('checkerboard') % (or line, or harmonic, or ...)

Many of these sceneCreate() commands have additional parameters that can be specified as options.

Scenes can also be create by reading in RGB image data and interpreting the RGB data as if they were displayed on a calibrated display.

Scene parameters

Scene parameters are read and written using the sceneGet(scene, ...) and scene = sceneSet(scene, ...) functions. You will be tempted to just set the values in the structs. Resist.

Scene plotting

The function scenePlot(scene,...) is a gateway that makes it easy to generate many figures.

3D scenes

We generate 3D scenes using computer graphics methods via the code in the iset3d repository. The computer graphics code generates the spectral irradiance incident at the retina. We typically generate the retinal irradiance using the sceneEye class. This method also generates pixel-level labels of the scene materials and objects.

Clone this wiki locally