Archive for the ‘Image Tracking’ Category

ARLab Image Tracking SDK

Posted on: 2 Comments

      In this post we want to present the product which has been the most challenging for us: image tracking. Unlike in older Augmented Reality systems that use QR Codes or Markers (commonly black and white) in order to follow the target, markerless systems only use the image itself. This means that is not needed to prepare the image before or even introduce in the environment ugly marks to be able to follow it.

       The aim of tracking the target is to know where it is on the scene and how its pose or perspective is regarding to the viewer. This pose camera estimation of the target is very important if we want to achieve a successful augmented experience, due to Augmented Reality systems aim at the superposition of additional scene data, like 3D objects or video, into the video stream of a real camera used.

      With the image tracking SDK, once more, we bring the idea of making Augmented Reality affordable to everyone. With this new SDK, you are going to be able to track almost any image you want. It supports thousands of images within pools of 50 or even 60 images. this technology allows you to superpose any information over the target tracked into the video stream of the device.

      The image tracking engine works as follows: it recognizes the image to be tracked and tracks its position at any time, providing some useful information about it. This information provided by the engine includes: the image you have recognized, its current location on the screen and the camera pose estimation (projection matrix), so you can integrate it with others SDKs , like for exampe our 3D Render engine or other 3D engines from another companies. You will also be able to add or remove images from the pool at execution time, load images both from the mobile device resources or URLs. And finally you can get advantage from our built-in camera view or just create your own view wherever is more comfortable for you.

Augmented Reality in Education. Part II

Posted on: 5 Comments

      Among all the Augmented Reality applications, one of the most important and practical ones is its use in education. There are many companies and developers which make an effort to introduce this technology to students, professionals and researchers related to the education field.

      Like in nearly all the Augmented Reality applications, through specific images into the text books, students will be able to access extra 3D contents related to each image. This additional information will improve, not only the students´ experience, but also the way in which they learn the lesson, allowing them to understand the content much better than without Augmented Reality.

      This makes sense when we talk about lessons for children, where they can feel that they play with this extra layered information, with which they will have a more robust learning, as has been shown by some researchers in the field. In an advanced levels, like high school, university degrees or even research, Augmented Reality may be used when the user needs a 3D Space view about the environment in order to understand some concepts, like could happen in geometry, chemistry or architecture.

Augmented Reality makes the learning process more efficient, interesting and enjoyable.

Stabilization.Speed without accuracy…it’s worth nothing.

Posted on: No Comments

      In previous entries we were talking about speeding up the processes on mobiles devices through assembler optimization and its importance when we are integrating the code developed on PC into mobile devices. As we saw this optimization is crucial so that algorithm can run with a real-time rate on such devices. But the speed alone is nothing when we want an accurate result. We also need to stabilize the image and the 3D Object or any model that we wish to overlay on the target.

       We need to take into consideration that, when we are pointing to the image and we are static, the 3D Model overlaid should not move at all, but when a sudden movement is done, the reaction of the overlaid model should be immediately carried out. If the overlaid model is moving although the image is static the user won´t feel the Augmented Reality experience as he should. In the other hand, if the user moves the camera but the overlaid model doesn´t follow the target in real-time he will appreciate a delay in the target tracking.


Making 2D components in the 3D World using the ARLab 3D Render

Posted on: No Comments

      One of our key products is the 3D Rendering SDK. With that library we can make a lot of different stuff. The goal of this entry is just talking about making 2D components in the 3D world, such as a loading or a simple animation that will be layered on the screen. Imagine that we have a plane in which we can set up a texture, if we set up the texture several times, we will have the appearance of having a loading or an animation. And if we are able to set up these textures several times, up to 24 frames per second, we will have even a video textured on the screen.


Markerless Image Tracking: recursive tracking techniques

Posted on: 1 Comment

          As described in previous entries using markers to perform a tracking presents more disadvantages than using the object itself as a target to be tracked. Some of those disadvantages are the need to print the marker or that the tracking can fail due to occlusions. Also, these markers are invasive to the environment, using marketing expression, “do not keep the packaging clean”.

      Due to these reasons, many researchers and companies have focused on developing markerless tracking systems instead of marker-based tracking systems. The former will be the subject of this entry.

    Figure 1. Online Monocular techniques scheme.

      Techniques developed for online monocular markerless augmented reality systems can be classified into two sub-branches: model based and Structure from Motion (SfM) based. The difference is that while in the former a previous knowledge about the real world before the tracking is performed is required, in the later this knowledge is acquired during the tracking. Inside these two sub-branches two different approaches can be taken into consideration according the nature of the tracking. The first of them, known as recursive tracking, uses the previous known pose to estimate the current one. The second option, which is called tracking by detection, allows to calculate the pose estimation without any previous knowledge or estimation, which can be better for recovering from failures.

      Furthermore, the model based approaches which use a recursive tracking can be classified in three branches or categories: edge based, optical flow based and textured based. In the other hand, the approaches covered by tracking by detection techniques are: edge based techniques and texture-based techniques. Although techniques based on tracking by detection seem to be a better option, several things have to be taken into consideration before to choose any of them in order to select the option which fits our requirements, like frame rate, accuracy or even object tracked.