OpenXRMlMarkerTracker

Experimental: Marked as experimental due to lack of community validation on Magic Leap devices.

Inherits: XRPositionalTracker

Represents a marker tracker of the OpenXRMlMarkerDetector.

Description

Represents a marker tracker of the OpenXRMlMarkerDetector.

Methods

float

get_marker_length ( ) const

int

get_marker_number ( ) const

String

get_marker_string ( ) const

MarkerType

get_marker_type ( ) const

float

get_reprojection_error_meters ( ) const

void

set_marker_length ( float marker_length )

void

set_marker_number ( int marker_number )

void

set_marker_string ( String marker_string )

void

set_marker_type ( MarkerType marker_type )

void

set_reprojection_error_meters ( float reprojection_error_meters )


Signals

openxr_ml_marker_updated ( )

Emitted when the marker is successfully updated.


Method Descriptions

float get_marker_length ( ) const

Gets the size of the marker, defined as the length in meters per side. If the detector's setting already defines a length, this query may be redundant. This method is primarily intended to query for a runtime estimated size when an application did not indicate the expected size of the marker.


int get_marker_number ( ) const

Gets the numerical value of a marker, such as the ArUco ID.


String get_marker_string ( ) const

Gets the string value of a marker, such as the QR encoded string.


MarkerType get_marker_type ( ) const

Gets the marker's type.


float get_reprojection_error_meters ( ) const

Gets the reprojection error of a marker, only available for certain types of markers.

A high reprojection error means that the estimated pose of the marker does not match well with the 2D detection on the processed video frame and thus the pose may be inaccurate. The error is given in meters, representing the displacement between real marker and its estimated pose. This means this is a normalized number, independent of marker distance or length.


void set_marker_length ( float marker_length )


void set_marker_number ( int marker_number )


void set_marker_string ( String marker_string )


void set_marker_type ( MarkerType marker_type )


void set_reprojection_error_meters ( float reprojection_error_meters )