Lighting & Optics

Parallel Domain provides an array of lighting options covering both natural and man-made sources and phenomena that provide the diversity needed to better simulate the real world. Through a series of parameters that can be controlled in both Batch and Step APIs, customers will have access to a breadth of settings covering; time of day, artificial lighting, atmospheric conditions, optical artifacts, and post processing stacks.

Time of Day

Mimicking the different times of day that drivers and autonomous vehicles may encounter is important for multiple reasons:

  1. The sun angle affects the amount of light a sensor collects.
  2. The length of shadows can shade objects differently at different times.
  3. It can affect the color and tone of the world what an eye, be it human or artificial, can see.

This is why Parallel Domain uses real-world, photometric measurements of the sun and sky’s intensities, coupled with DSLR-captured HDRI images, to ensure that the times of day we use in our datasets are both believable to our eye but also the processing systems within AVs.

There are a number of options to choose from when selecting a time of day range for your datasets. The team has ensured varied options that cover a majority of scenarios from the darkest nights, with no visible moon, all the way to the brightest day, with the sun overhead and barely any shadows to be seen. Each one of these was measured, tested and is ready for consumption. Those options include:

  • Dawn
  • Noon
  • Afternoon
  • Dusk
  • Evening
  • Night

Artificial Lighting

All man-made lights that are visible within a Parallel Domain dataset have been meticulously measured and balanced to match real-world fixtures, streetlights and vehicle lights. One of the ways the team ensures what you see in the dataset closely matches what is observed is through the use of light profiles set forth by the Illuminating Engineering Society, titled IES Profiles.

This is a standard way of mapping light bulb and light fixture intensity and cast directions and is used to communicate this information to the consumer regarding maximum brightness and angle.

When it comes to vehicle lights, the team ensures a database of varying headlight types, colors, and intensities that would match the diversity observed in the physical world. That, coupled with photometrically accurate tail lights, makes the vehicles seen in the datasets physically accurate and correctly interact with the world, such as in cases of retro-reflectivity.

The library of streetlights, headlight types, and various other fixtures continues to grow and mature, giving more options and variety to match the customer's needs.

Atmospheric Conditions

Each time of day has associated fog levels that can be randomized or set to fixed values with results that are fully clear, with little atmosphere, or more opaque, mimicking a heavy set-in fog and everything in between. Whether the user wants a bright, clear, partly cloudy day or dusk setting with heavy fog and rain, our lighting system will ensure the options meet your needs.

Optical Artifacts

The lighting system includes common artifacts and optical phenomena found when capturing images through a physical camera, such as; bloom, which is applied based on the luminance of the object, lens flares, tied to the Sun and larger streetlight assets, and motion blur which is based on the movement speed of the objects and ISO settings for the sensor.

Tone and Color

Utilizing a tone mapper that is similar to a camera response function Parallel Domain can control the highs, mids and lows of an image’s tonal range. Then, use a post processing color lookup table, or LUT to shift the hue of the data to more closely match any shifts occurring within a physical sensor and processor.

The following time_of_day options are available in Step API:

  • LS_sky_afternoon_mostlySunny_1444_HDS035
  • LS_sky_afternoon_mostlySunny_1740_HDS030
  • LS_sky_afternoon_overcast_1314_HDS034
  • LS_sky_afternoon_overcast_1430_HDS004
  • LS_sky_afternoon_overcast_1655_HDS028
  • LS_sky_afternoon_partlyCloudy_1401_HDS039
  • LS_sky_afternoon_partlyCloudy_1745_HDS016
  • LS_sky_dawn_clear_0428_HDS014
  • LS_sky_dawn_mostlySunny_0514_HDS026
  • LS_sky_dawn_partlyCloudy_0440_HDS038
  • LS_sky_dusk_mostlyCloudy_2000_HDS033
  • LS_sky_dusk_partlyCloudy_2040_HDS036
  • LS_sky_evening_mostlyCloudy_1830_HDS019
  • LS_sky_evening_partlyCloudy_1950_HDS032
  • LS_sky_night_clear_0530_HDS377
  • LS_sky_night_clear_0650_HDS363
  • LS_sky_night_clear_2200_HDS380
  • LS_sky_night_mostlyCloudy_0600_HDS340
  • LS_sky_noon_mostlyCloudy_1205_HDS001
  • LS_sky_noon_mostlySunny_1250_HDS025
  • LS_sky_noon_overcast_1214_HDS018
  • LS_sky_noon_partlyCloudy_1113_HDS024

Time of Day Naming Convention

The time_of_day string is of the form "LS_sky_xxx_yyy_zzz_www", where:

  • xxx = Descriptive time of day [dawn, noon, afternoon, dusk, evening, night]
  • yyy = Descriptive sky conditions [clear, mostlySunny, partlyCloudy, overcast]
  • zzz = Approximate time of day using a 24-hour notation (eg. 1830, 1950, 0440, ...)
  • www = Internal Usage Only