Most people have heard about Virtual Reality, and everybody has heard of actual reality.
... supplementing, enhancing, modifying, improving our reality.

AR can be achieved today, using simple technology. All that is required is:

Though the devices required seem to be 'exotic', it is actually very standard. A fancy headset is not required. Most of us have these technologies with us daily... a simple cell phone!
Tuesday November 3, 2008, Presidential Election night, CNN revealed a 'new' technology, which they called a "hologram".
Will I. Am became the first "hologram" broadcasted on television.
CNN tried to simplify the example about what was going on.
Immediately, I knew what was going on... and it was Augmented Reality.

It wasn't a hologram. People in the news room that night saw nothing, save a marker on the floor.
The marker was the key. It told the computer where to place the supplemented information on the display.
Markers are unique and asymmetric. The video stream is scanned live looking for the unique pattern.
As a marker is recognized, an augmentation is overlaid in it's place in the live video.

The image must be processed quickly, because of this, there is a threshold of certainty.
The simpler the pattern, the more reliable the threshold.

The level of certainty can be adjusted to accomodate for faster renderings, but with less accuracy.
Now that a marker is identified, the video can be modified based on user input.
Virtual reality is perfect for this type of augmentation.
Initially AR was designed as a stand alone application at Univeristy of Washington's Human Interface Technology (HIT) Lab - ARToolKit
The application needed to be installed and configured on the client machine.
This is NOT acceptable for the standard web user.
Flash has the ability to access the video camera and microphone.
Papervision3D 2.0 library can display 3D images in Flash.
The ARToolKit was ported from Java into Flash.
As a marker is identified, Action Script will attach 3D objects to the video.
FLARToolKit is AS3 version of ARToolKit. But it is not ported from the original C version but ported from Java version which is called NyARToolKit. (NyARToolKit seems to executes much faster than the original C version after the great effort of nyatla)
FLARToolkit will detect the marker from input image and calculate the camera position in the three dimension space. Something like Helper library are planned to add but further processing like synthesize the 3D Graphics needs to implemented by yourself.” This abstract was taken from the FLARToolKit website located at http://www.libspark.org/wiki/saqoosha/FLARToolKit/en For displaying the 3D images FLARToolKit uses the Papervision3D 2.0 library.
The FLARToolKit demo that we took to study off of was written in actionscript as stated above. The goal that we tried to achieve was to import our own objects into a flash based AR. The simple cube demo allowed us to do this. It had the simple functionality of being able to detect a marker and display a 3D image on top of it. There were only a few places needing adjustment to customize it for our own objects and markers.
To create our own marker we use the pattern creator provided with the C version of the ARToolkit. It launches a webcam window and tries to locate a marker inside of the image. Then all we have to do is click the mouse button once the marker is located in the window and give it a file name. Once the pattern is created we just need to replace the pattern name in the actionscript.
Replacing the 3D object is as simple as creating an object from our exported 3D model, explanation on that below, and adding it to the base node.
Blender can export 3D objects, or 3D movies.
Implementing objects
Make a black and white image (K.I.S.S.)
The ARToolKit works on Mac, not sure if it works on PC.
The file mk_patt is the executable.
Blender models are created with no lighting and no colors... being grey.
By "unwrapping" the model, it becomes a flat plane which can be textured.

After the model is created texturing needs to be done. In Blender you are able to “unwrap” the model onto a flat plane so that you can apply textures to each face. This UV unwrapping can be tricky, but the best way to do it for our purposes was to select the object, go into edit mode (tab), and hit the “U” key, and then selecting “unwrap (smart projections).” That lays the squares out as evenly as possible. Then you can save the uv layout to a .tga file and make your texture off of that.
Where do you take AR?

http://www.uwplatt.edu/web/presentations
Email: frommelt@uwplatt.edu
Copyright Daniel M. Frommelt, 2009. This work is the intellectual property of the author. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the author. To disseminate otherwise or to republish requires written permission from the author.