Professional Documents
Culture Documents
Fyp Updated Version
Fyp Updated Version
The word augmented means enhanced or increased. Simple enough right? The
phrase simply means enhanced reality. But if reality is what it is how does
someone enhance or embellish it? By using a tool such as your smartphone. The
concept of augmented reality revolves around adding more information to your
world (or lets says just your view of the world). The augmentation is usually
done by adding extra data to the perception of things around us which are not
visible normally. Let us say you are walking down the road (lets assume, in a city
where you have never been) and you see a fenced and open area but it doesnt
have a signboard demarcating the plot. You check on your phone and Google
maps say that the area is a meditation centre. See? How your mobile phone
enhanced your perception of your world? The above was a mere example to
show how everyday tools help us get more out of our reality. But before you
grasp the above example as one of augmented reality, its best we tell you that
Google maps do not really come under the umbrella of augmented reality.
Imagine again, you go to Shanghai, a well-known city in China. What you are
looking for is a vegetarian restaurant but since everything is written in Chinese
which you do not understand, you are unable to figure out where to go. You take
out your smartphone, connect to the internet and launch an app. This app looks
through the rear camera and shows you what it sees except theres more than
just the actual scene. You point it to a building, and it shows a graphical callout
that says hotel next to the building, you point it to a different building and it
says its a non-veg restaurant. Further down the road you see another building
marked as a theatre. Now, that is what augmented reality is. Such an app
would really be enhancing your perception of reality; it would add information to
your reality - it would augment reality.
Just like anything else which is beyond our reach, projection based AR feels more
attractive (at least as of now) compared to an AR app you can install on your
phone. As is obvious by its name, projection based AR functions using projection
onto objects. What makes it interesting is the wide array of possibilities. - One of
the simplest is projection of light on a surface. Speaking of lights, surfaces and
AR, did you ever think those lines on your fingers (which divide each finger into
three parts) can create 12 buttons? Have a look at the image and you would
quickly grasp what were talking about. The picture depicts one of the simplest
uses of projection based AR where light is fired onto a surface and the interaction
is done by touching the projected surface with hand. The detection of where the
user has touched the surface is done by differentiating between an expected (or
known) projection image and the projection altered by interference of users
hand. One of the widespread uses of projection based AR techniques is non
interactive. Projection on objects can be used to create deception about the
position, orientation and depth of an object. In such a case an object is taken into
consideration and its structure is studied in depth. The objects distance from the
projection is calculated and the projection light sequence is then designed
There are two primary types of AR implementations: Marker Based and Markerless.
Vision based AR
Visual markers have been widely used in existing AR applications in last years. In
most of these applications, the performance of an AR system depends highly on
the tracking method for visual marker detection, pose estimation, and so
depending on the particular application. The visual markers design can differ
from one to another. But the use of these visual markers limit the interactivity
and are constrained to a range of photos or objects encapsulated within a border
to create the marker. Therefore, in order to use this approach, these visual marks
have to be printed previously and also be kept for future uses. Unlike in the
marker-based Augmented reality systems, in marker-less augmented reality
systems any part of the real environment may be used as a target that can be
tracked in order to place virtual objects.
With the new advances in mobile technologies, both in hardware and
software, new marker-less approaches like the ones based on natural features,
broke into the Augmented Reality world, not only allowing to use real objects as
a target instead of these old and ugly markers, but also overcome some of their
limitations.
In order to perform the object tracking, marker-less augmented reality
systems rely in natural features instead of fiducial marks. Therefore, there are no
ambient intrusive markers which are not really part of the environment.
Furthermore, marker-less augmented reality counts on specialized and robust
trackers already available. Another advantage of the marker-less systems is the
possibility of extracting from the environment characteristics and information
that may later be used by them. However, among the disadvantages we can
consider for markerless augmented reality systems is that tracking and
registration techniques become more complex.
Techniques developed for online monocular markerless augmented
reality systems rely in natural features of the image or object to be tracked, like
the edges, corners, or textures. In the next image, it is shown a markerless
system working at our LABs. In the image can be seen how natural image
features are taken in order to do the classification and the tracking.
After having shown some of the main differences between them, we can
consider that markerless augmented reality systems are a better option for final
applications, because they use normal images or objects as targets and they are
no invasive like marker-based systems.
Vuforia SDKs
Vuforia (previously known as Qualcomm QCAR) often crops up when searching
for augmented reality options, but is aimed at the vision-based part of the
augmented reality spectrum, recognising real world objects (known as trackable)
and overlaying 3D models on top of them. They provide an Android and iOS SDK,
which are both free for use in commercial and non-commercial projects. This
seems like the project to go with if you want to use image recognition in your
ARToolKit SDKs
ARToolKit for Android brings the power and simplicity of AR Toolkit Professional to
the world's most widely-deployed mobile platform, empowering developers to
deliver revolutionary mobile AR applications. ARToolKit for Android includes
example source code for complete Android applications, with classes that can be
reused in the developer's own applications, enabling rapid deployment of new
projects.
ARPA SDKs
Image (multi-)detection and (multi-)tracking, 3-D object rendering in real time, as
well as user interaction with 3-D objects (e.g. selection, rotation, scaling) are
some of the features that ARPA SDK offers for building AR apps on iOS and
Android. ARPA GPS SDK complements ARPA SDK with geolocation-based AR
functionality: it allows you to define your own POIs that, when detected, the user
can select them and get more information about them or even perform actions
on them (e.g. the take-me-there action that displays a map with directions to
the selected POI). ARPA GLASS SDK and ARPA Unity Plugin offer similar
functionality with ARPA SDK for Google Glass and the Unity game engine,
respectively. It is worth noting that Arpa Solutions, the company behind these
SDKs, have over the years developed their own AR platform, some of the
features of which (e.g. face recognition and virtual buttons) might at some point
be transferred also to the SDKs.
Location Based AR
With the latest version of Augmented Reality Player users can now choose geolocation as a visualization option for their projects. The Geo-location feature
allows to use GPS coordinates to locate a 3D model/animation on the earths
surface. The software then tracks the 3D model coordinates in the real space
using a suitable sensor fusion technique. This makes it possible to display virtual
models in the real world without any marker: Besides support for geolocated 3D
models and animations, now the Player also supports skinning and morphing
animations. In addition, users can freely move virtual models in the real
environment using an intuitive interface.
The Geo-localization feature extends the spectrum of visualization possibilities of
the ARplugin in many application domains, including architecture, engineering
and cultural heritage.
Wikitude SDKs
Wikitude provides an SDK for geo-based augmented reality overlays for both
Android and iOS which uses standard HTML5, CSS and Javascript web
technologies for displaying markers. The software is not open source, but is
available free of charge for non-commercial, non-profit projects (though a startup
animation will be added in this case, and a logo displayed on the camera view).
The software is being actively developed, and there is a community for support if
needed.
ARViewer SDKs
ARViewer is an open source geo-based AR library for Android. One of the useful
features noted about this library is the ability to use the AR interface to create
content that is tagged with a location (lat, long and altitude). To use this library,
the end user of the app would need to install the ARViewer app from the Android
Market as well as the app we are building, which isnt an ideal user experience.
DroidAR SDKs
DroidAR is a framework for Augmented Reality on Android. Location based AR
and marker based AR are both possible. Also read the wiki articles (or the FAQ)
for more detailed information about DroidAR. This framework can be used for
many different scenarios, there are already some demo applications available
(check the videos below). For the latest news about DroidAR also visit our blog.
DroidAR can be freely downloaded and used under the GNU GPL v3 license from
this GitHub repository and is also available under a commercial license. Location
based AR and marker based AR are both possible. This framework can be used
for many different scenarios, there are already some demo applications
available.
Footstep recognition & Indoor AR
Wikitude World Browser is widely regarded as the king of all augmented reality
browsers, and in a way, serves as a third eye of sorts. While using your
smartphones camera in a given area, the virtual browser along with more
than 3,500 associated content providers offers you just about any
geographically-relevant information you may find valuable in your travels. Useful
information is often presented in the form of Wikipedia articles detailing the
hallmarks of a specific landmark, or directions to the nearest ATM location or
five-star Italian restaurant. Moreover, the app allows users to find hotels and
similar accommodations through Yelp, TripAdvisor, and the like, while offering
mobile deals and coupons for local stores in the vicinity. The built-in AR games,
including the rollicking Alien Attack and bug-beating Swat the Fly, and the apps
ability to mark and share your favourite spots via Facebook are merely an added
bonus.
Yelp has always been ahead of the curve. The prominent, social reviewing service
provided the iPhone with its first augmented reality app in 2009, the Yelp
Monocle, well before similar services began cropping up across the board. The
convenient app uses your smartphones GPS and compass to display AR markers
for nearby restaurants, bars, and other businesses in real time, each bundled
with the services user-generated ratings and reviews. If signed up with a Yelp
account, the app additionally provides directions to nearby friends and the
businesses theyve recently checked into, placing the same AR markers as
previously mentioned for friends, family, colleagues, and anyone else utilizing
the robust service. Monocle, although somewhat a hidden feature within Yelp, is
hands down the best utility for finding and following directions to the most wellregarded, or atrocious, businesses in your local vicinity.
Features of YELP:
The Yelp app interface is decidedly straightforward to use. The dashboard
displays a constant search bar at the top, with icons below giving access to the
Home, Nearby, Search, Bookmarks and Check-Ins tabs. From the Home menu,
the app also provides access to the user's own Yelp profile and recent searches,
along with a feed of the latest uploaded pictures and reviews for businesses in
their vicinity. User submitted reviews and recommendations; Great augmented
reality feature; Easy-to-use interface.
Google Googles
Google Goggles Android App allows Android users to search by taking a picture.
For searching, Google Goggles makes it convenient for users to interpret
information such as putting meaning behind a painting. It can be a challenge to
interpret such meanings into words. Google Goggles allows the user to search via
photos which were taken from the users mobile phone. The Goggles app is used
to take a photo and then pull up correct search results. Users simply have to
point their mobile phone camera at a painting, a famous landmark, a barcode or
QR code, a product, or a popular image. If Goggles finds it in its database, it will
provide useful information. Goggles can read text in English, French, Italian,
German, Spanish, Portuguese, Russian, and Turkish, and translate it into other
languages. Goggles also works as a barcode / QR code scanner.
3 Methodology
3.1 Introduction
This chapter talks about the tools, resources and libraries that will be used in the
development of this project. This research is done to ensure that only the most
appropriate tools in terms of quality and performance are used for the
development process. Additionally, a suitable software development
methodology is selected in accordance to the projects demands.
3.2.1 Requirements
In this phase, a testing phase is done in order to better gauge what elements are
required in the application. An analysis performed on the results of the testing
results reveals the requirements that user demands so that they can be
3.2.2 Design
During the Design phase, the overall structure of the applications is designed
based upon the requirements gathered in the previous phase. This includes most
of the diagrams such as use case diagrams, sequence diagrams, entity
relationship diagrams and data flow diagrams. This phase is important as it
outlines the whole flow of every aspect of the application.
3.2.3 Implementation
The specifications made in the previous phase are now brought to life in the
Implementation phase. These features are first separated into individual modules
before finally being brought together and verified as a whole. These modules are
developed in accordance to their relevant design diagrams.
3.2.4 Verification
After all the modules have been successfully integrated, the Verification phase
can begin. In this phase, rigorous testing is done on the application to expose
any bugs or issue that arise. These bugs are to be noted down so that they may
be fixed in the Maintenance phase.
3.2.5 Maintenance
In this phase, all the bugs and defects that were detected in the previous phase
are fixed. Additional enhancements that can be done are also implemented to
smoothen the performance of the whole application.
The Galaxy S6 has the same sized 5.1-inch screen and button placements, but is
made of a solid metal frame with Gorilla Glass 4 on both sides giving it a
completely different look and feel. The display is now QHD (2560x1440), and the
internals have been bumped up to support it with an Exynos octa-core
processor, 3GB of RAM and 32/64/128GB of storage. With the design change
Samsung also decided to drop the seemingly-popular SD card slot and removable
battery (which is a smaller 2550mAh unit), and instead thinned out the phone to
just 6.8mm thick and included both Qi and Powermat wireless charging
capabilities
he MacBook Pro "Core i5" 2.4 13-Inch (Late 2013 Retina Display) features a 22
nm "Haswell" 2.4 GHz Intel "Core i5" processor (4258U), with dual independent
processor "cores" on a single silicon chip, a 3 MB shared level 3 cache, 4 GB or 8
GB of on-board 1600 MHz DDR3L SDRAM (which could be upgraded to 16 GB at
the time of purchase, but cannot be upgraded later), 128 GB or 256 GB of PCIebased flash storage, and an integrated Intel Iris 5100 graphics processor that
shares memory with the system. It also has an integrated 720p FaceTime HD
webcam, and a high-resolution LED-backlit 13.3" widescreen 2560x1600 (227
ppi) "Retina" display in a case that weighs just less than 3.5 pounds (1.57 kg). It
does not have an internal optical drive. Connectivity includes 802.11ac Wi-Fi,
Bluetooth 4.0, two USB 3.0 ports, two "Thunderbolt 2" ports, an HDMI port, an
audio in/out port, and an SDXC card slot.