How surface tracking works
EasyAR Surface Tracking enables lightweight continuous tracking of the device's position and orientation relative to a selected surface point in space. It is suitable for scenarios such as small-scale AR interactive games, AR short video filming, and product placement demonstrations.
How surface tracking works
To establish correspondence between the real world and virtual space, surface tracking utilizes data from the device's camera and inertial measurement unit.
Surface tracking first identifies salient features on environmental surfaces (not necessarily planar) through camera images. It tracks the position of these features using consecutive image frames and sensor data. Upon initialization, the virtual object is placed by default on the surface near the feature point at the center of the screen, and its position is considered the origin of the world coordinate system.
The virtual object remains placed at the corresponding feature point's location and is continuously tracked. As the device moves, the depth of features in the camera image is continuously updated, ensuring the virtual object stays attached to the feature point surface. If the feature point corresponding to the virtual object is lost, the system automatically selects a new feature point and outputs the device's position and orientation relative to it.
Note
Feature loss in surface tracking may cause drift in the virtual object's position. For continuous tracking of a fixed location, using Motion Tracking is recommended.
Surface tracking vs motion tracking
Compared to Motion Tracking, surface tracking requires no device calibration, supports a wider range of device models, and runs without initialization. However, it does not provide real-world scale, supports only one virtual object placement, and requires the virtual object's base to be placed at the coordinate origin.
| Comparison Dimension | Surface Tracking | Motion Tracking |
|---|---|---|
| Device Calibration Requirement | Not required | Required |
| Device Model Support | Wider device support | Higher hardware requirements, relatively limited device support |
| Spatial Scale | No real-world scale | Provides real-world scale poses |
| Initialization Process | Runs without initialization | Typically requires initialization |
| Number of Virtual Objects | Supports only one virtual object | Supports multiple virtual objects |
| Virtual Object Placement Constraint | Base must be placed at coordinate origin | Can be placed at any spatial position |
| Suitable Scenarios | Lightweight AR displays, quick experiences | High-precision AR, spatial interaction, navigation & measurement |
Note
Surface tracking strives to keep the virtual object attached to environmental surfaces (which may be uneven objects or flat ground/walls), but it does not detect the presence of planes in the environment. For detecting horizontal or vertical planes, please refer to the Plane Detection feature.