C Specification

The XrMarkerDetectorCustomProfileInfoML structure extends XrMarkerDetectorCreateInfoML and is defined as:

// Provided by XR_ML_marker_understanding
typedef struct XrMarkerDetectorCustomProfileInfoML {
    XrStructureType                           type;
    const void*                               next;
    XrMarkerDetectorFpsML                     fpsHint;
    XrMarkerDetectorResolutionML              resolutionHint;
    XrMarkerDetectorCameraML                  cameraHint;
    XrMarkerDetectorCornerRefineMethodML      cornerRefineMethod;
    XrBool32                                  useEdgeRefinement;
    XrMarkerDetectorFullAnalysisIntervalML    fullAnalysisIntervalHint;
} XrMarkerDetectorCustomProfileInfoML;

Members

Member Descriptions
  • type is the XrStructureType of this structure.

  • next is NULL or a pointer to the next structure in a structure chain.

  • fpsHint is a suggestion of the category of frame rate for the detector to use.

  • resolutionHint is a suggestion of the category of camera resolution for the detector to use.

  • cameraHint is a suggestion of the camera set for the detector to use

  • cornerRefineMethod selects a method for corner refinement for ArUco/AprilTag detectors. This member is ignored for detectors of other marker types.

  • useEdgeRefinement specifies whether to run a refinement step that uses marker edges to generate even more accurate corners, but slow down tracking rate overall by consuming more compute. It affects ArUco/AprilTag markers only: this member is ignored for detectors of other marker types.

  • fullAnalysisIntervalHint is the suggested interval between fully analyzed frames that introduce new detected markers, in addition to updating the state of already detected markers.

Description

All marker detectors share some underlying hardware and resources, and thus not all combinations of profiles between multiple detectors are possible. If a profile (preset or custom) specified during marker detector creation is different from those used by existing marker detectors the runtime will attempt to honor the highest frame rate and fps requested.

CPU load due to marker tracking is a function of the chosen XrMarkerTypeML, XrMarkerDetectorFpsML, and XrMarkerDetectorResolutionML.

Valid Usage (Implicit)

See Also

Document Notes

For more information, see the OpenXR Specification

This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2024, The Khronos Group Inc.