Tracking Configuration

Introduction

Optical tracking gives the highest tracking quality for mobile augmented reality. It makes it possible to very accurately overlay 3D content over the video image. The highest quality, speed and robustness can be achieved by ID Markers.

Tracking Technologies

ID Marker

metaio has developed Marker Tracking with industrial applications in mind. You can configure up to 512 different Makers without performance penalty. An extension the ID Markers are Picture Markers. You can configure any Image inside the black/white/black border. You can configure about 10-30 Markers on a modern mobile phone. IDMarker.pdf

marker.png

Configuration

<Sensor type="MarkerBasedSensorSource">
      <SensorID>Markertracking1</SensorID>
      <Parameters>
        <MarkerTrackingParameters>
          <trackingQuality>fast</trackingQuality>
          <thresholdOffset>110</thresholdOffset>
          <numberOfSearchIterations>3</numberOfSearchIterations>
        </MarkerTrackingParameters>
      </Parameters>
      <SensorCOS>
        <SensorCosID>Marker1</SensorCosID>
        <Parameters>
          <MarkerParameters>
            <Size>60</Size>
            <MatrixID>1</MatrixID>
          </MarkerParameters>
        </Parameters>
      </SensorCOS>
</Sensor>

ID Markers can have different tracking qualities. "Fast" uses a fixed threshold offset and should only be used with constant lighting conditions. "Robust" instead adapts the given threshold offset constantly for a maximum number of search iterations, thus it can be used also in situations where lighting conditions are subject to change.
Additional parameters are the size (in mm) and the matrix ID of the marker to be used.

Picture Marker

Picture Markers are somehow in-between ID Markers and Markerless. You can use any printout or picture featuring enough visual content. PictureMarker.pdf

Picture Marker

Configuration

<Sensor type="MarkerBasedSensorSource">
      <SensorID>Markertracking1</SensorID>
      <Parameters>
        <MarkerTrackingParameters>
          <trackingQuality>fast</trackingQuality>
          <thresholdOffset>128</thresholdOffset>
          <numberOfSearchIterations>3</numberOfSearchIterations>
        </MarkerTrackingParameters>
      </Parameters>
       <SensorCOS>
        <SensorCosID>Marker1</SensorCosID>
        <Parameters>
          <MarkerParameters>
            <Size>60</Size>
            <MatrixID>101</MatrixID>
         <referenceImage  binary="0" qualityThreshold="0.75">UnifeyeSDKMobileLogo.ppm</referenceImage>
          </MarkerParameters>
        </Parameters>
      </SensorCOS>
</Sensor>

Picture Markers can have different tracking qualities. "Fast" uses a fixed threshold offset and should only be used with constant lighting conditions. "Robust" instead adapts the given threshold offset constantly for a maximum number of search iterations, thus it can be used also in situations where lighting conditions are subject to change.
Additional parameters are the size (in mm) and the matrix ID of the marker to be used as well as the reference image that is inside the marker's black rectangle.
For each image the (tracking-) qualityThreshold can also be specified.
In order to achieve reasonable tracking results one should not set these values lower than 0.75 otherwise there might be a lot of "false positives".

LLA Marker

LLA markers are similar to ID marker with additional encoded information about the location. LLAMarker.pdf

[llamarker.png

LLA Markers can be generated on the junaio developer section.

Markerless

Unifeye SDK Mobile currently offers two kind of Markerless Tracking – a Fast and one Robust method. Fast requires less memory and also runs well on last-generation phones. Robust requires also a floating point unit. Some windows mobile phones do not have this possibility. In Markerless Configuration the details of markerless tracking are explained in more detail. Markerless.pdf

markerless.jpg

Configuration

<Sensor type="FeatureBasedSensorSource" subtype="fast">
      <SensorID>FeatureTracking1</SensorID>
      <SensorCOS>
        <SensorCosID>Patch1</SensorCosID>
        <Parameters>
          <referenceImage widthMM="100" heightMM="100">metaioman.ppm</referenceImage>
        </Parameters>
      </SensorCOS>
</Sensor>

For markerless tracking sensor there's currently only two parameters in addition to the reference image file that is used for tracking.
"widthMM" and "heightMM" specifiy the size of the printed reference image that will be used for tracking.

Inertial Sensors

Additionally to Optical tracking, we also feature Trackers based on internal sensors of the mobile phone. Currently we support acceleration based sensor source as well as a GPS/compass/accelerometer sensor for the iPhone and Android. For Symbian support is planned for the near future. Support for other devices can be added on demand.

Dummy

Dummy sensor source returns a fixed pose (rotation/translation) at a specific update rate defined in milli seconds.
For example it can be used to easily attach an overlay to the rendering camera.

<Sensor type="DummySensorSource">  
   <SensorID>DummySensor1</SensorID>
      <Parameters>
       <updateInterval>40</updateInterval><!-- in ms-->
      </Parameters>
     <SensorCOS>
   <SensorCosID>DummyCos1</SensorCosID>
      <Parameters>
       <!-- The pose the dummy sensor source delivers-->
       <Pose>
        <Translation>
         <x>0.0</x>
         <y>0.0</y>
         <z>0.0</z>
        </Translation>
        <Rotation>
         <x>0.0</x>
         <y>0.0</y>
         <z>0.0</z>
         <w>1.0</w>
        </Rotation>
       </Pose>
      </Parameters>
     </SensorCOS>
 </Sensor>

Comparision

Ratings are based on 1 to 5 stars. Speed and number of targets are valid for a current generation phone with an 1GHz class processor. The number of configurable targets may vary on available memory limitations.

  ID Marker Picture Marker Markerless (FAST) Markerless (ROBUST) Inertial Sensors
Robustness stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargold stargoldstargoldstargold stargoldstargoldstargoldstargoldstargold
Accuracy stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargold
Speed stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargoldstargold stargoldstargoldstargold stargoldstargoldstargoldstargoldstargold
Number of Targets Configured up to 512 up to 10-30 up to 10 up to 3 1
iPhone DONE DONE DONE DONE DONE
Android DONE DONE DONE DONE DONE
Windows Mobile DONE DONE DONE DONE choice-no
Symbian DONE DONE DONE DONE choice-no
           

Fuser

The Unifeye SDK Mobile does not feature real sensor fusion, e.g. combining two sensors to one coordinate system. However the Fuser can be used as a filter to smooth the tracking values.

BestQualityFuser

The tracking values are directly used without smoothing.

<Fuser type="BestQualityFuser">
   <Parameters />
</Fuser>

SmoothingFuser

This fuser allows separate smoothing of translation and rotation. Usually you want to smooth roation more than translation, since translation is in general more accurate. In addition you can set the <KeepPoseForNumberOfFrames> tag. This will estimate the pose for the specified amount of frames in case the tracking is lost.

<Fuser type="SmoothingFuser">
    <Parameters>
     <!-- Alpha is in the range [0...1] and determines how strong a new pose is.
      alpha = 0.9: less smoothing
      alpha = 0.1: alot smoothing-->
     <AlphaRotation>0.2</AlphaRotation>
     <AlphaTranslation>0.7</AlphaTranslation>
     <!-- if we lose tracking, keep the old pose for several frames -->
     <KeepPoseForNumberOfFrames>5</KeepPoseForNumberOfFrames>
    </Parameters>
 </Fuser>
Topic revision: r8 - 2010-09-01 - 07:55:40 - SupportMetaio
 
This site is powered by the TWiki collaboration platformCopyright &© by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback