What Does Stereo Vision Actually See on Water? A Stereo Vision Water Surface Test

Water is one of the hardest surfaces for any depth sensor to handle. It's textureless at range, specularly reflective under certain lighting, and constantly changing shape. Most sensor modalities (LiDAR, radar, ultrasonic) either produce clutter, miss low-profile surface structure, or fail entirely in low light.
We wanted to understand exactly where stereo vision succeeds and where it hits its limits on water. So we ran a controlled experiment: the same camera rig and the same algorithms, from full daylight to full darkness. What we found was more interesting than a simple pass/fail result.
Why Controlled Pool Testing Tells You Things Open Water Can't
Field tests on open water, like our recent Boston Harbor trial, confirm that NODAR Hammerhead, our stereo vision software, works under real-world conditions. But those tests don't isolate variables. Weather, ambient light, wave state, and distance all change simultaneously, making it hard to attribute any specific failure or success to a single cause.
A controlled pool environment lets you change one variable at a time. We could go from daylight to complete darkness, introduce and remove waves, swap illumination sources, and observe exactly how the 3D reconstruction responded to each change. The trade-off is scale. But the physics are the same.
We used NODAR's HDK, an NVIDIA Orin AGX compute platform paired with a multi-lens camera rig, and compared results across 16mm, 25mm, and 35mm focal lengths. Hammerhead ran the disparity pipeline in real time throughout.
Three findings stood out, each revealing something different about how stereo vision interacts with water as a surface.
Finding 1: Still Water Is a Mirror, and the System Knows It
The most unexpected result from nighttime testing wasn't a failure. It was a physically correct measurement that initially looked wrong.
When the pool surface was perfectly calm, the surface of the water reflected the distant fence image from the water, acting like a mirror, and the depth map showed a fence at approximately 29 meters, located below the surface of the water, which is exactly what one would expect with a perfect mirror.
The system was accurate. Still water at night acts as a near-perfect mirror. The stereo cameras were measuring the optical path of the fence's reflection, not the fence itself. The reflected image appears to originate from behind the water surface at the mirror distance. That's exactly what the point cloud captured.
This matters for maritime perception. A vessel hull reflected in calm harbor water, a dock structure reflected in a glassy inlet, a navigation marker reflected at low angles: all of these will appear as geometry beyond the actual surface unless the system can distinguish reflection from real structure. Understanding how your sensor handles mirror-like water is a prerequisite for confident autonomous navigation in low sea states.
The fix is straightforward: introduce texture. Once we entered the water and generated waves, the mirror surface broke. The point cloud snapped immediately to the actual water surface geometry. Furthermore, we know that having objects below the ground is physically impossible, so it is possible to use this knowledge to flip the points to their correct location, compare to the actual object (the fence in the case) and work back the location of the mirror. We can actually determine the location of the mirror-like surface. Wild!

The Splash!
Finding 2: There Is a Lighting Threshold, and It's Lower Than You'd Expect
At night with no artificial illumination, stereo vision degrades. This is expected physics, not a system limitation unique to stereo. Any passive sensing modality requires some photon flux to function. The question is: how much?
The answer, in our test, was a standard 120W backyard floodlight. Two 60W visible-light bulbs were enough to fill the point cloud immediately and densely, reconstructing the water surface to approximately 30 meters with high accuracy.

Furthermore, lower illumination from two 850nm NIR LEDs from consumer security cameras were sufficient to reconstruct some of the water surface, but not as well as the flood light simply because we are comparing a <5W NIR illumination to 120W (incandescent) backyard floodlight.
That's a meaningful result for system designers. You don't need specialized illumination infrastructure. You need enough light for the stereo matcher to find correspondences, and that threshold is achievable with commodity hardware. The exact floor varies with baseline length, focal length, and target range, but for a pool-scale test at 30 meters, two hardware store bulbs were sufficient. For vessel-mounted systems, existing navigation lighting or a modest supplemental source may be sufficient for near-field surface reconstruction.
The broader implication: stereo vision's nighttime performance is a function of available photons, not an architectural limitation. Design the illumination correctly and the algorithm performs.
Finding 3: Dynamic Wave Surfaces Map Cleanly
Once the mirror problem is solved, either by waves or by active surface disturbance or by comparing reflected points, stereo excels at water surface topography.
With waves present, Hammerhead reconstructed ripple geometry, small floating objects (a ring toy, pool noodles), and one very cold swimmer (me!) in real time. Wave propagation rings were visible as distinct structures in the point cloud. Surface variation at the sub-inch scale resolved cleanly.
This is where stereo has a structural advantage over LiDAR for water surfaces. LiDAR return rates drop significantly on water due to specular reflection. Many pulses simply don't come back. Stereo vision, by exploiting the texture introduced by surface movement, can continuously reconstruct dynamic water geometry. In moderate-to-high sea states, the difference in surface reconstruction completeness is substantial. Plus, our stereo vision does not degrade from sea spray as lidar does.
For maritime autonomy applications, this translates directly to the operational scenarios that matter most: harbor entry under wave conditions, open-water navigation in moderate sea states, or tracking surface debris that moves with wave action. Our REGENT case study demonstrates what this looks like at vessel scale: continuous 3D reconstruction of a dynamic open-water environment at operational speed.

Textured wave reconstruction - even at very low light.
What This Means for Maritime Perception System Design
Three practical takeaways from this experiment:
Characterize your lighting environment. Nighttime or dawn/dusk operation requires an illumination plan. Know your photon floor and design to exceed it. Visible and NIR LEDs and illluminators are readily available and easy to deploy.
Account for mirror-state water. Calm water under low-angle lighting is a distinct operating condition, not a rare edge case. Perception systems need to handle or flag mirror reflections without treating them as real geometry at extended range.
Texture is the enabler. Dynamic water surfaces, the conditions that challenge other sensors, are actually friendlier to stereo vision than still water is. Wave state isn't just a challenge; it's information.
We ran this experiment with three focal lengths to compare depth accuracy and range tradeoffs. That dataset is available for qualified evaluation partners. And make sure to check out the full video summary of the experiment.
What's Next
The pool experiment was designed to isolate variables. The next step is applying those findings back to open-water conditions: how does the mirror threshold translate to a harbor at dawn, and what illumination strategy works on a vessel that can't control its lighting environment the way we can control a backyard floodlight?
If you're working on maritime autonomy and want to look at the full dataset (including the focal length comparison), reach out. We're also continuing to build out our maritime use case work as we push Hammerhead into more challenging open-water environments.
