Skip to main content

SLAM Anchor Poses File

Anchor poses files contain the measured poses of control points. These files must be prepared by the user before post-processing is started. Anchor poses can be specified in two ways:

  • In a separate file for each dataset
You can specify measured anchor pose coordinates using the anchor_poses.txt file located in the datasets_rec folder, or you can add an anchor_poses.csv file in the datasets_rec folder.
Note: The old format has been deprecated and is not recommended for new projects, but NavVis will continue to support it for backward compatibility.
Anchor pose entries can be activated for use by removing the # at the beginning of the anchor-coordinate line and changing the coordinates to the surveyed ones (see the description of the file structure below). The activated coordinates are then used when post-processing the respective dataset, provided that no other anchor poses file is specified in the post-processing script.
  • In a single file for all datasets

To use a single anchor_poses.txt or anchor_poses.csv file for all datasets, specify the path to the file as an argument in the post-processing script. We recommend storing the anchor poses file in the project's base folder.

Structure of the anchor_poses.csv file

id, x, y, z
Anchor00001, 1000.458, 1964.458, 1.001
Anchor00002, 1000.000, 2000.000, 1.002
Anchor00003, 999.862, 2025.802, 1.003
A .csv (comma separated values) file that contains the control point identifiers (ID) and metric cartesian coordinates.
  • The first column represents the control point's unique ID.

  • The subsequent three columns must contain the control point's metric cartesian x, y and z coordinates in meters as numbers.

Other format specifications:
  • An optional header line (similar to: id, x, y, z) describing the columns that can be present. Data beyond the 4th column will be ignored.
  • Empty rows will be ignored.
  • Lines may be commented out with a leading "#" symbol.
  • Fields should be separated by the ",".
  • csv files where fields are separated by the ";" or tab and/or numbers are given using a "," as the decimal separator, for example: 1.234 = 1,234 are supported but not suggested.

Structure of the anchor_poses.txt file

#
# SLAM Anchor Pose File Format Version 1.1
#

# Comment lines start with a '#'

# The first nonempty line without comment specifies the anchor pose file format version.

# The remaining nonempty lines each specify a SLAM anchor pose in one of the following formats:
# - 'anchor_name pos_x pos_y pos_z yaw_deg'
# - 'anchor_name pos_x pos_y pos_z yaw_deg timestamp'

# IMPORTANT: Geodetic coordinates are usually in a left-handed coordinate system whereas mathematic
# coordinate systems are right-handed. Make sure your coordinates are in a right-handed system!
# Hint: X -> Easting, Y -> Northing, Z -> Height

# Explanation of entries:
# - anchor_name : unique identifier of the anchor pose, surround with quotes if it contains spaces
# - pos_x pos_y pos_z : Cartesian position of the anchor (right-handed coordinate system)
# - yaw_deg : Yaw Euler angle (degrees) specifying the anchor orientation
# - timestamp : Timestamp corresponding to the given pose (not required)

1.1
Anchor00001 1000.458 1964.458 0 0
Anchor00002 1000.000 2000.000 0 0
Anchor00003 999.862 2025.802 0 0
The first non-empty line without a comment specifies the anchor file format version (currently 1.1).

The remaining lines each specify:

  • A control point's unique identifier

  • The control point's cartesian position (x, y, z).

  • The last entry of each line is meant for specifying the orientation of the anchor pose. However, this value is currently not used and can be set to zero.

For more information, see Creating the Anchor Poses File
Note: Coordinates must be specified using a right-handed, local coordinate system, with the z-axis of the coordinate system pointing upwards. If your geodetic coordinates use a left-handed coordinate system, these coordinates must be transformed before use.
Note: Make sure the origin of the local coordinate system is not too far away from the mapping site (ideally, no more than a few kilometers). The post-processing aborts if any of the coordinate values are close to 20000 meters.
After post- and web-processing, users can automatically geo-register datasets by passing the WGS84 geo-coordinates of the reference frame's origin, as well as the angle of its y-axis against north (measured around the up-vector), to the tool nv_anchor-dataset-alignment.