Format of Camera and Pose XML Sequence File

The data folder in the File Driver sample contains a sequence (XML) file which encodes camera frame and pose information. The following table describes the structure of the XML sequence file:

Tags Attribute(s) Description
Sequence version The version number for the sequence file. The current version is 1.1.
Playback count The total number of frames /poses contained in the sequence file.
loop The number of times the sequence will be played. Use -1 to specify an infinite playback loop.
fps Camera fps
format Camera frame format (e.g. YUYV)
Intrinsics**   w Camera frame width
h Camera frame height
fx Focal length x
fy Focal length y
px Principal point x
py Principal point y
rd Radial distortion values, r0 ~ r7 separated by ','
Elements --- The top level container for <Element> tag(s).
Element timestamp The top level container for grouping frame and pose for the specified timestamp value.
Frame filename The frame filename. All camera frames (files) are stored in FileDriver/data/Camera/
intrinsics The per frame intrinsics (if available). Per frame intrinsics contain a comma separated width, height, principal point x, principal point y, focal length x, focal length y and r0 ~ r7.
Pose x Translation values
y
z
r0 3*3 rotation values
r1
r2
r3
r4
r5
r6
r7
r8
trackableStatus Corresponds to TrackableResult::STATUS exposed by Vuforia DeviceTracker
trackableStatusInfo Corresponds to TrackableResult::STATUS_INFO exposed by Vuforia DeviceTracker

**All the attributes listed are global and can be overriden by per frame intrinsics

Note: Attribute values that are not available (e.g., radial distortion, extrinsics, pose rotation and per frame intrinsic) should be set to 0.0f

Example: Sequence file

<!--?xml version='1.0' encoding='UTF-8'?-->
<sequence version="1.1">
  <playback count="370" loop="2" fps="30.0" format="YUYV">
  <intrinsics w="640" h="480" fx="506.724396" fy="504.880859" px="319.880646" py="239.459396" rd="0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000">
  <elements>
    <element timestamp="481816552092959">
      <pose x=" -0.256418" y=" -0.126486" z=" -0.329468" r0="0.017921" r1="0.005225" r2="-0.999826" r3="0.993938" r4="-0.108581" r5="0.017248" r6="-0.108472" r7="-0.994074" r8="-0.007139" trackablestatus="VALID" trackablestatusinfo="VALID">
    </pose>
  </element>
      . .. …. 
  </elements>
  </intrinsics>
  </playback>
</sequence>