The ARCore Depth API now supports Geospatial Depth, which automatically increases the range and speed of the Depth API when Streetscape Geometry is also enabled. When in a location with VPS coverage and with Streetscape Geometry enabled, the output images from the Depth API include terrain and building geometry retrieved in the area out to 65 meters from the current position. This depth data retrieved from geometry is merged with local depth observations and gets updated as the user moves to a new location.
ARCore Depth API calls now provide both local observations from the camera as well as buildings and terrain from Streetscape Geometry, merged into a single depth image.
Device compatibility
Geospatial Depth is available on all devices that support the Depth API. This feature does not require a supported hardware depth sensor, such as a time-of-flight (ToF) sensor. However, the Depth API makes use of any supported hardware sensors that a device may have.
Performance impact
Geospatial Depth introduces a small one-time computation at the start of the session to integrate Streetscape Geometry into the depth representation when initially downloaded, but otherwise does not measurably increase depth computation cost.
Depth range
Without Geospatial Depth, typical ranges in depth images are around 20-30 meters away, with the density and accuracy of depth observations reduced beyond that range. With Geospatial Depth enabled, it is typical to see densely sampled depth values reach the maximum of 65.535 meters, even with a small amount of initial movement.
Use cases
The ARCore Depth API can be used for all existing use-cases already supported. With Geospatial Depth, depth images obtained in VPS-supported locations will be populated with long-range depth faster than before, enabling use-cases targeting long-range depth in outdoor environments. Some use-cases include:
- Building-scale occlusion of virtual content and other visual effects
- Outdoor navigation
- Distance measurements
Limitations
Geospatial Depth is only supported in areas that support VPS localization and Streetscape Geometry. In other areas, the ARCore Depth API will perform as normal without Geospatial values.
Prerequisites
Make sure that you understand fundamental AR concepts and how to configure an ARCore session before proceeding.
Enable Geospatial Depth
In a new ARCore session, check whether a user's device supports Depth and the Geospatial API. Not all ARCore-compatible devices support the Depth API due to processing power constraints.
To save resources, depth is disabled by default on ARCore. Enable depth mode to have your app use the Depth API. Additionally, enable Geospatial mode and Streetscape Geometry to use Geospatial Depth.
See our developer guide to enable depth mode to have your app use the Depth API, and these instructions to enable Geospatial mode and Streetscape Geometry, at which point Geospatial Depth will be enabled.
Once Geospatial Depth is enabled, depth images can be accessed through existing API calls as described in the depth developer guide.
What’s next
- Learn how to use Streetscape Geometry in your augmented reality experience.