Template tracker module overview
In ViSP 2.9.0, a template tracker using SSD (Sum of Square Differences) or ZNCC (Zero-mean Normalized Cross Correlation) as registration criterion has been introduced. It allows to estimate the transformation between a reference template and its position in a current image. The transformation could be modeled as a single translation, scale rotation translation (SRT), an affine displacement or an homography. The source code documentation shows which are the corresponding classes part of template tracker module.
In ViSP 3.0.0, we introduce an extension of the template tracker based on mutual information cost function. The source code documentation shows which are the corresponding classes part of this extended module.
This module but also its extension based on mutual information doesn’t require any third-party library.
The following video illustrates the capabilities of the template tracker.
|Planar object tracking using the template tracker. Here the object is the Bruegel painting modeled by two triangles. A tutorial is available here.
Below we give some use cases, mainly for augmented reality applications.
|Using the template tracker based on mutual information we show how Romeo is able to manipulate a tray using both arms in order to solve a maze added by augmented reality. The template tracker estimates the pose of the R2D2 and C3PO image glued on the tray. The resulting pose is then used in a master-slave position based visual servoing scheme that servoed both arms simultaneously.