LEVIATHANDocumentation

DOC 03SIMULATION CONTENT

Sensors

LEVIATHAN simulates optical, acoustic, navigation and oceanographic sensors at two levels of rigour. Analytic models are fast, configurable and broad. Canonical measurements are computed from immutable World snapshots and carry full ground truth.

A ROV beside a shipwreck with four white DVL beams pointing down to the seabed, a blue imaging-sonar fan ahead, a bathymetry fan, and a USBL fix plotted in the Stage dock.
Figure 3.1 Sensors in the Viewport: four DVL beams to the seabed, the imaging-sonar and bathymetry fans, and the USBL fix in the Sensor payload card.

Two levels of sensor model

Table 3.1 Analytic sensor models compared with canonical measurements.
Analytic sensorsCanonical measurements
Sensors21 models in the live catalogue: cameras, sonars, positioning, navigation, oceanographicRGB camera (PerceptionFrame), forward-looking imaging sonar, four-beam DVL, strap-down IMU, pressure, magnetometer, USBL
InputA pose, an environment and simplified scene geometryAn immutable snapshot of a committed World state
Scene geometrySeabed, obstacle footprints and labelled primitivesThe frozen canonical scene: seabed triangles, structure meshes and dynamic rigid bodies
TimeFloating-point time within a rolloutInteger-nanosecond schedules, exact ticks only
NoisePer-sensor Gaussian noise, reproducible with a seedOff unless configured; keyed draws, independent of batching
IdentityNoneContent-addressed record with array digests and provenance
Used byViewport payload, Dashboard panels, scenario rollouts, learning environmentsPerception, datasets, camera–sonar ground truth, the localization estimator

The Viewport payload

The Viewport's Sensors menu toggles thirteen sensors on the current vehicle: DVL, Sonar, Camera, LiDAR, Bathy, USBL, LBL, GPS, IMU, Depth, Compass, CTD and ADCP. Acoustic footprints are drawn in the scene. Live readings appear in the Sensor payload card in the Stage dock, one tab per sensor that has a view.

Sonar payload card: a forward sector plot with range rings, and range 3.2 m, field of view 38 degrees, returns 0.Sonar · forward sector, range, FOV, returns
DVL payload card: bottom lock explanation, altitude 2.0 m, range 2.6 m, lock YES, and a coverage range slider.DVL · altitude, beam range, bottom lock
USBL payload card: a polar plot with the acoustic fix, slant range 11.5 m, bearing 216 degrees, error 0.21 m.USBL · slant range, bearing, fix error
Bathymetry payload card: a nadir profile trace, altitude 2.6 m, bottom 8.0 m, depth 5.4 m.Bathy · nadir profile, altitude, depth

Vision

Table 3.2 Optical sensors. Defaults are the analytic catalogue's.
SensorMeasures and outputsKey parametersCharacter
RGB camera (PerceptionFrame)Clean, underwater and sensor-response images; range, z-depth, normals, semantic and instance labels per pixel. OpenCV optical frameresolution, hfov, max range, distortion k1–k3 p1 p2, water, ambient, exposureCanonical
Camera and optics
Underwater cameraContrast loss with range: direct signal attenuated as e−cz plus a veiling backscatter that grows with rangeattenuation c = 0.3 1/m, backscatter B∞Analytic
Stereo cameraRange from disparity, z = f·b/d; range error grows with z²; optional flat-port refraction biasbaseline 0.1 m, f 600 px, disparity noise 0.2 pxAnalytic
Depth cameraPer-point range from a time-of-flight or structured-light sensor; noise grows linearly with range; usable range capped by water claritynoise 0.02 m + 1 %, max 10 mAnalytic
Scanning LiDARBlue-green laser range scan: an azimuth × elevation point cloud in world XYZ, range capped by water clarity16 × 8 rays, max 30 m, noise 0.02 m + 1 %Analytic
Thermal cameraPer-pixel temperature, assigned by the label of the surface seen, against an ambient background; not a radiative infrared render64 × 48 px, hfov 80°, ambient 10 °C, noise 0.05 °CAnalytic
Event camera (DVS)ON/OFF events where log-brightness changes beyond a threshold between two poses64 × 48 px, contrast threshold 0.15Analytic
Optical-flow cameraDense image-plane flow from ego-motion only64 × 48 px, dt 0.1 sLegacy superseded by canonical optical flow

The Viewport's live camera feed shows RGB, depth or segmentation views rendered by the 3D view for display. Scientific camera data comes from the PerceptionFrame capture in the same panel; see Camera and optics.

Acoustics

Table 3.3 Acoustic sensors.
SensorMeasures and outputsKey parametersCharacter
Imaging sonar (canonical)Range × azimuth relative return with per-cell primary and top-K contributors, validity codes and ground truth. Sensor FRD framefrequency, azimuth FOV, elevation aperture, beam pattern, range window, bins, elevation samples, KCanonical
Imaging sonar
Acoustic image sonarRange × azimuth intensity image with elevation spread, time-varied gain and speckle (Dashboard Imaging sonar panel)256 beams, 256 bins, max 30 mAnalytic
Mechanical / profiling FLSNearest-obstacle range per bearing across a horizontal fan64 beams, FOV 120°, 0.1–30 mAnalytic
Side-scan sonarPort and starboard slant range and first-order Lambertian backscatter per across-track beam; stacked into a waterfall64 beams, 10–80° off vertical, max 100 mAnalytic
Multibeam / echosounderPer-beam slant range to the seabed across a swath; travel-time range biased by the sound-speed profile32 beams, swath 120°, max 100 mAnalytic
AltimeterSingle-beam slant range to the seabed, optionally with sound-speed biasnoise, sound-speed profileAnalytic
ADCPWater velocity in range bins along the vertical, looking down or up20 bins × 2 m, blank 0.5 m, max 60 mAnalytic
USBL (canonical)Slant range, azimuth, depression and position fix of the vehicle's transponder from a declared transceiver, using the analytic model's sound-speed bias; refused beyond its maximum rangetransceiver position, range and bearing noise, sound speed, max rangeCanonical
USBLSlant range and bearing (azimuth, depression) from a known transceiver; range error grows with range, bearing error is constant in anglerange and bearing noise, sound speed 1500 m/sAnalytic
LBLRanges to three or more seabed beacons, trilaterated horizontally with depth from the pressure sensor; geometry sets the dilution of precisionrange noise, sound speedAnalytic

Further acoustic tools appear as Dashboard panels: side-scan survey waterfalls with gain, time-varied-gain flattening, ground-range correction and per-ping A-scan inspection, multibeam bathymetry strips over a choice of sound-speed profiles, echograms, beacon networks and acoustic communications. See Dashboard.

Table 3.4 Navigation sensors.
SensorMeasures and outputsKey parametersCharacter
DVL (canonical)Four Janus beams cast against the full canonical scene; along-beam velocities and a least-squares bottom-track velocity in the sensor frame, with residual; optional water trackbeam angle, beam azimuths, min/max range, noise, dropoutCanonical
DVLBottom-locked body velocity within a maximum altitudebeam angle 30°, max altitude 50 mAnalytic
IMU (canonical)Specific force and angular rate at the mount, including lever-arm effects, from the dynamics' own acceleration; reported biasnoise density, bias instability, rate random walkCanonical
IMUBody-frame specific force and angular rateaccel and gyro noiseAnalytic
Pressure (canonical)Absolute pressure at the sensor point below a declared free surface; refused when no surface is declared or the sensor is out of the waterwater density, atmospheric pressure, bias, noise [Pa]Canonical
Pressure / depthHydrostatic pressure p = patm + ρgdρ 1025 kg/m³, noise [Pa]Analytic
Magnetometer (canonical)Three-axis field vector in the sensor frame from a declared local field, with hard-iron offset, optional timed external disturbance and noisedeclination, inclination, intensity [nT], hard iron, noiseCanonical
Magnetometer / compassBody-frame geomagnetic field with hard-iron offset and soft-iron distortion; yields headingdeclination, inclination 60°, noiseAnalytic
GPSHorizontal fix only at or near the surface; no fix when submerged, no depthnoise 2.5 m, max fix depth 0.5 mAnalytic
Surface radarX-band surface-search radar for surface craft: nearest contact per bearing over a 360° sweep128 beams, 2–500 mAnalytic

Canonical DVL

Beam i points along bi = [sin a cos φi, sin a sin φi, cos a] in the sensor frame. Here a is the beam angle from the sensor's down axis and φi the declared beam azimuths, by default forward, aft, starboard and port. Each beam is cast against the same frozen scene the camera and sonar see, so structures and moving bodies block beams as the seabed does. The along-beam velocity is the relative velocity between the transducer and the surface point the beam hits:

ui = bi · ( vsensor − vsurface(Pi) )     vsensor = v + ω × r(1)

A beam loses lock when no surface lies within its range window, or when it reaches the sea surface first. With fewer than three valid beams there is no solution. Three beams determine the velocity exactly; four give a least-squares solution and an RMS residual. Water track uses the current-relative velocity, with the current uniform over the vehicle. It has no range limit or scatterer model, and the record says so.

Canonical IMU

The IMU uses the committed state exactly, never a finite difference: orientation, twist and the dynamics' own acceleration. At a mount offset r:

abody = v̇ + ω × v + ω̇ × r + ω × (ω × r)     fsensor = RbsT ( abody − RwbT g )(2)

At rest and level, the specific force is [0, 0, −g]. If the provider has no acceleration, the gyroscope is still reported and the accelerometer is marked unavailable rather than invented. Noise follows IEEE Std 952-1997 terms: white noise from a noise density, bias instability as a first-order Gauss–Markov process, and rate random walk, using the schedule's actual sample interval. The bias at sample n is evaluated in closed form, so it is identical whether a sample is produced alone or in a batch, and it is reported beside the measurement as ground truth.

Canonical pressure, magnetometer and USBL

These three measure what the device measures, not a convenient derived quantity. The pressure sensor reports absolute pressure in pascals, not depth. The magnetometer reports a field vector, not a heading. The USBL reports range and bearings and the resulting fix. Each takes its geometry from the vehicle's declared mount, so lever arms count. Each uses declared environmental inputs: the free-surface level, the local magnetic field and the transceiver position, each with its source. Measurements that cannot be made are refused with a reason, for example a pressure sensor above the surface or a USBL beyond range. Truth is reported beside each measurement for scoring only.

Model scope

The magnetic field is one constant vector for the scene, not a spatially varying Earth model, and soft-iron distortion is not modelled. Pressure uses constant-density hydrostatics, with no drift or temperature effects.

From sensor to workflow

Canonical sensors sample on their own declared schedules from committed World states. A sensor rig turns each measurement into a sensor packet: a small, typed, immutable view carrying the vehicle, sensor, frame, integer timestamp, validity, the measurement's identity and its payload. Packets from different sensors are interleaved in a deterministic time order without being forced onto a common timestamp. A refused measurement stays refused all the way down, so consumers never see a fabricated value.

Packets feed the localization estimator. The same measurements are written to datasets (Synthetic data and export) and are the inputs to the perception algorithms.

Environmental

Table 3.5 Oceanographic sensors.
SensorMeasures and outputsUnits
CTDIn-situ temperature, practical salinity, hydrostatic pressure and local sound speed (Mackenzie 1981) through a mixed-layer, thermocline and deep profile°C, PSU, Pa, m/s
ADCPBinned water-column current profile; listed under Acousticsm/s

Noise and ground truth

Table 3.6 How noise and ground truth are handled.
AspectAnalytic sensorsCanonical measurements
Default noiseMost analytic defaults are zero; GPS, depth camera, LiDAR, stereo and thermal have non-zero defaultsOff unless configured
Noise modelZero-mean Gaussian per reading or beam; some sensors grow with rangeSpecified per sensor (above); keyed by seed, sensor, sample and channel
Ground truthThe true vehicle state from the same rolloutPer pixel, per cell or per beam: hit geometry, identity and validity, plus the true state in the snapshot
Limitations
  • Analytic sensors see simplified geometry: a seabed function, obstacle footprints and labelled primitives, not the detailed scene meshes.
  • The canonical sensor set is the camera, imaging sonar, DVL, IMU, pressure sensor, magnetometer and USBL. GPS, side-scan, multibeam, LiDAR and the other models are analytic only.
  • In the canonical catalogue, the built-in production vehicles declare a front camera only. The sonar and navigation sensors are declared on the catalogue's reference vehicles, which are labelled test and reference models.
  • Sensor timing models exact sampling instants. Exposure time and transport latency are not part of canonical measurements.