Augmented Reality (AR) is one of the newest and most dynamic project of nowadays. People use it more and more as cheap computers also have higher performance as time goes on. But they do not even guess that a device or a technology they actually use is based on AR. This is a live view of a real-world environment whose elements are augmented by computer-generated sensory input such as video or sound. This technology makes an illusion that virtual and real objects are in the same reality.
The type of virtual objects can be various such as image, video or 3D model. We can see this augmented system on the displays of computers or mobile phones or we can use a head mounted display (HMD) to see that.
In the first chapter of my thesis, I demonstrate the history of the augmented reality and mention some practical usage of AR. Next chapter, I describe the structure of my program including the main steps of prepocessing, such as noise reduction. Third chapter is about how I recognize a marker using a simple image processing framework. I give a reason why I chose this instead of an existing AR software. After this chapter, I step in the world of 2D and 3D AR. Placing an image on the marker is a piece of cake in 2D, because I only need to draw it. But 3D is a more complicated thing, because I need a third party tool which supports 3D graphics. As I program my application in .NET C#, it is obvious that I choose the Microsoft XNA framework. Fifth chapter, I describe the way of that how I detect the source and the colour of the light of the real environment. This application is supposed to process images in real-time, it has to be fast. I had to create a new image reader component, because the built-in one was not fast enough.
Last, but not least, I did speed and performance tests, beside visual feedback, and I got some very impressive results. My application is able to shade a virtual object based on the lights of the real environment in real-time.