October 24, 2013
The Wikitude Tracking Engine and Wikitude Studio – The CTOs PerspectiveIn recent months, Wikitude has published several cutting-edge tools and technologies, most notably the launch of a fully offline image recognition engine, providing the ability to track more than 1000 target images at a time. We’ve also introduced the Wikitude Studio, a web-based creation and content management tool for augmented reality content. This article will take a deeper look at these two solutions and provide a bit more information about the underlying engine and technologies.
Natural Feature Tracking at WikitudeThe image recognition engine developed by Wikitude is based on the Natural Feature Tracking (NFT) principle. As the name implies, this particular field of computer vision (CV) uses natural features to track images. The alternate approach is the use of marker tracking, which uses artificial images, barcodes for example, to track a scene using artificial shapes. We focused on NFT, as our primary goal is to incorporate and interact with as much of the “real world” as possible. Artificial markers are a good fit for certain scenarios, but we can not assume that these markers will be in place each and every time end users will want to scan their environment, especially in the broad use case categories Wikitude is operating in. To make a device “see”, several steps need to be executed:
- Preprocessing: The target image that should be tracked is analyzed. Significant areas in the image, so called Feature Points, are extracted and stored. How the Feature Points are detected and stored is the essential essence of the algorithm used. The preprocessing step is executed only once per tracked image, and can run offline and asynchronously.
- Feature Point Detection: On the device, similar to the preprocessing step, the current camera image is analyzed for keypoints.
- Tracking: These recognized keypoints are then compared with the keypoints generated from the target images in step 1. If a pre-defined similarity is determined, the image is considered a positive match and then tracked. Several algorithms exist to determine a threshold of similarity, which one to chose is up to the implementation.