WorkLink Create: Object Tracking
Please start by watching this video to have a full understanding of what object tracking is, how it works, what all settings mean and best practices to set up object tracking correctly:
See this article to see the easiest and fastest way to create Object trackers.
An explanation of what all settings do:
Inlier ratio tracking initiation
The inlier ratio tracking initiation setting sets the minimum inlier ratio required before tracking can initiate.
Setting this value too low, can result in false positive tracking. Setting it too high, might result in not being able to initiate the tracking at all. We recommend using a value between 0.4 and 0.7. Reaching inlier ratio values of 0.7 to 0.8 during the experience, are generally considered as a good result.
Inlier ratio tracking minimum
After tracking is initiated, the "inlier ratio tracking minimum" setting becomes relevant, it means that active tracking will stop if the inlier ratio drops below this value.
Laplace threshold
The Laplace threshold is an expression in millimeters. A line will be generated whenever the depth jump between surfaces from the camera's point of view, is larger than the defined value. A very high value will create a result that primarily shows the contours of your object, as the contours are basically an infinite depth jump.
Normal threshold
The normal threshold creates lines determined by changes in the surface direction. A high value will generate lines for hard edges, while a lower value will also generate lines for softer edges. Generally we do not recommend setting this value below 0.1.
Key frame distance
The minimum distance between keyframes in mm. The line-model will only be generated for certain keyframes. Therefore a higher value improves the performance at the cost of a lower precision. Lower values cost more performance but increase the precision.
Line gradient threshold
Threshold to determine what is considered a contrast line in the video feed. Low values will consider low contrast areas as a candidate, which may result in false positives. High values will only consider very high contrast areas as a candidate, which may result in a lower or too low inlier ratio, so the tracking could fail to initiate. We recommend leaving this setting to the default.
Line search length during tracking
This setting determines the orthogonal length around the line model, in which contrast will be searched in the video feed, after tracking initiated.
Line search length before tracking
This setting determines the orthogonal length around the line model, in which contrast will be searched in the video feed, before tracking initiates.
Active Tracking Visibility Threshold
Sets the minimum percentage of a 3D model that must be visible to the device’s camera for active tracking to override SLAM-based positioning.
The reason to use this feature can be for cases when getting up close to the model, resulting in a low amount of lines to be visible to the camera, resulting in possible false positives, which could make the 3D model to track unstable. Reverting to SLAM-based positioning in such cases can result in better stability.
The default setting is 60%, but you can experiment by setting this value lower, eg. 10% for line models that have sufficient unique features even while being zoomed in.
Fig. 1: The 3D object is tracking and completely in view. In debug mode, you can observe the "Visible Percent" is currently 91.6%
Fig. 2: The 3D object is only 40.7% in view after tracking started. As the author set the "Active Tracking Visibility Threshold" to be higher than 60% in this case, this value displays yellow, to indicate the user that tracking switched from active tracking to SLAM-based positioning.
When testing these settings, we recommend using debug mode in the app, to validate if the settings you use are the best for your use case.