android augmented-reality sdk

39
Presented By Kalaiselvi

Upload: glyn

Post on 14-Jan-2016

98 views

Category:

Documents


0 download

DESCRIPTION

Android Augmented-Reality SDK. Presented By Kalaiselvi. Augmented-Reality. Augmented reality (AR) is a live, direct or indirect, view of a physical, real-world environment whose elements are augmented by device -generated sensory input such as sound, video, graphics or GPS data. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Android Augmented-Reality SDK

Presented By Kalaiselvi

Page 2: Android Augmented-Reality SDK

Augmented-Reality

Augmented reality (AR) is a live, direct or indirect, view of a physical, real-world environment whose elements are augmented by device -generated sensory input such as sound, video, graphics or GPS data.

Page 3: Android Augmented-Reality SDK

Augmented RealityAugmented Reality is a growing

area in virtual reality.

An Augmented Reality system generates a composite view for the user. It’s a combination of the real scene viewed by the user and a virtual scene generated by the device that augments the scene generated by the device with additional information.

Page 4: Android Augmented-Reality SDK

Usage of AR Technology Augmented reality can be

used in many applications, and many areas can benefit from the usage of AR technology.

Page 5: Android Augmented-Reality SDK

Archaeology

AR can be used to aid archaeological research, by augmenting archaeological features onto the modern landscape, enabling archaeologists to formulate conclusions about site placement and configuration

Page 6: Android Augmented-Reality SDK

Architecture

AR can aid in visualizing building projects. Device generated images of a structure can be superimposed into a real life local view of a property before the physical building is constructed there. AR can also be employed within an architect's work space, rendering into their view animated 3D visualizations of their 2D drawings. Architecture sight-seeing can be enhanced with AR applications allowing users viewing a building's exterior to virtually see through its walls viewing it's interior objects and layout.

Page 7: Android Augmented-Reality SDK

Art AR technology has helped

disabled individuals create art by using eye tracking to translate a user's eye movements into drawings on a screen. An item such as a commemorative coin can be designed so that when scanned by an AR enabled device it displays additional objects and layers of information that were not visible in a real world view of it.

Page 8: Android Augmented-Reality SDK

CommerceAR can enhance product previews such as allowing a

customer to view what's inside a product's packaging without opening it.

AR can also be used as an aid in selecting products from a catalog or through a kiosk. Scanned images of products can activate views of additional content such as customization options and additional images of the product in its use.

AR is used to integrate print and video marketing. Printed marketing material can be designed with certain "trigger" images that, when scanned by an AR enabled device using image recognition, activate a video version of the promotional material.

Page 9: Android Augmented-Reality SDK

EducationAugmented reality applications can complement a standard

curriculum. Text, graphics, video and audio can be superimposed into a student’s real time environment. Textbooks, flashcards and other educational reading material can contain embedded “markers” that, when scanned by an AR device, produce supplementary information to the student rendered in a multimedia format.

Augmented reality technology also permits learning via remote collaboration, in which students and instructors not at the same physical location can share a common virtual learning environment populated by virtual objects and learning materials and interact with another within that setting.

Page 10: Android Augmented-Reality SDK

Industrial Design

AR can help industrial designers experience a product's design and operation before completion. can be used to visualize and modify a car body structure and engine layout.

AR can also be used to compare digital mock-ups with physical mock-ups for efficiently finding discrepancies between them

Page 11: Android Augmented-Reality SDK

Medical

Augmented Reality can provide the surgeon with information, which are otherwise hidden, such as showing the heartbeat rate, the blood pressure, the state of the patient’s organ, etc.

This helps the doctor to identify the problem with the patient in a more intuitive way than looking at only type of image data. This approach works in a similar as the technicians doing maintenance work.

Page 12: Android Augmented-Reality SDK

Navigation

AR can augment the effectiveness of navigation devices. Information can be displayed on an automobile's windshield indicating destination directions and meter, weather, terrain, road conditions and traffic information as well as alerts to potential hazards in their path.

Page 13: Android Augmented-Reality SDK

Office Workplace

AR can help facilitate collaboration among distributed team members in a work force via conferences with real and virtual participants.

AR tasks can include brainstorming and discussion meetings utilizing common visualization via touch screen tables, interactive digital whiteboards, shared design spaces, and distributed control rooms.

Page 14: Android Augmented-Reality SDK

Tourism and SightseeingAR can enhance a user's experience when traveling by

providing real time informational displays regarding a location and it's features, including comments made by previous visitors of the site.

AR allow tourists to experience simulations of historical events, places and objects by rendering them into their current view of a landscape.

AR can also present location information by audio, announcing features of interest at a particular site as they become visible to the user.

Page 15: Android Augmented-Reality SDK

Translation

AR systems can interpret foreign text on signs and menus and, in a user's augmented view, re-display the text in the user's language. Spoken words of a foreign language can be translated and displayed in a user's view as printed subtitles.

Page 16: Android Augmented-Reality SDK

English Translator This Augmented Reality app translates English text into

the other languages https://play.google.com/store/apps/details?id=com.quytech.translator&feature=search_result/

Page 17: Android Augmented-Reality SDK

Augmented-reality in Android SDK Version 2.1 and above

If you’re building a really impressive next-generation augmented-reality app, your app won’t function at all without a camera. However, if you’re building a shopping app that only uses the camera for barcode scanning, users without cameras might still find it useful even if they can’t scan barcodes. While both apps need to acquire the permission to access the camera, only the first app needs to state that it requires a camera.

<uses-permission android:name="android.permission.CAMERA" />

<uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" />

Page 18: Android Augmented-Reality SDK

Augmented-reality in Android SDK Mobile augmented reality - the most popular medium

through which the average person interacts with AR content. The mobile AR world consists largely of two different types of experiences: geolocation- and vision-based augmented reality.

Page 19: Android Augmented-Reality SDK

Geolocation-Based ARGeolocation-based AR uses GPS, compass and other

sensors in a user’s mobile phone to provide a “heads-up” display of various geolocated points-of-interest.

The basic architecture of a location-based application involves a camera view, the user’s location, the phone’s orientation compared to the real world, and a list of locations for items that we want to show on the display – the data with which we augment the camera’s vision of the world.

Page 20: Android Augmented-Reality SDK

Geolocation-Based AR

Page 21: Android Augmented-Reality SDK

Vision-based ARVision-based AR uses many of these same sensors to

virtually display digital content in context with real-world objects - like magazines, postcards or product packaging - by tracking the visual features of these objects.

Page 22: Android Augmented-Reality SDK

App Requirements

AR application requires access to the following device features:

Access to the camera view Access to the user’s location Access to other device sensors, especially a compass

(accelerometer and gyroscope can also be useful) The application may also require other services and

permissions, such as network access, but these are not central to the AR aspects of the application.

Page 23: Android Augmented-Reality SDK

Configure the Manifest FileOn the Manifest Tab, add android.hardware.camera (Required=true) android.hardware.camera.autofocus (Required=false) android.hardware.location.gps (Required=true) android.hardware.sensor.compass (Required=true) android.hardware.sensor.gyroscope (Required=true) android.hardware.sensor.accelerometer

(Required=true)

On the Permissions Tab, add android.permission.CAMERA android.permission.FINE_LOCATION

Page 24: Android Augmented-Reality SDK

Using LocationA data class representing a geographic location.

A location can consist of a latitude, longitude, timestamp, and other information such as bearing, altitude and velocity.

All locations generated by the Location Manager are guaranteed to have a valid latitude, longitude, and timestamp (both UTC time and elapsed real-time since boot), all other parameters are optional.

Page 25: Android Augmented-Reality SDK

Using Location Manager

These services allow applications to obtain periodic updates of the device's geographical location, or to fire an application-specified Intent when the device enters the proximity of a given geographical location.

Page 26: Android Augmented-Reality SDK

Using Sensor Manager

Using the camera (Y axis along the camera's axis) for an augmented reality application where the rotation angles are needed:

remapCoordinateSystem(inR, AXIS_X, AXIS_Z, outR);

Page 27: Android Augmented-Reality SDK

Using Motion SensorThe rotation vector sensor and the gravity sensor are the

most frequently used sensors for motion detection and monitoring.

The rotational vector sensor is particularly versatile and can be used for a wide range of motion-related tasks, such as detecting gestures, monitoring angular change, and monitoring relative orientation changes.

Page 28: Android Augmented-Reality SDK

Using the Gravity SensorThe gravity sensor provides a three dimensional vector

indicating the direction and magnitude of gravity. The following code shows you how to get an instance of the default gravity sensor:

private SensorManager mSensorManager;

private Sensor mSensor; ...

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY);

Page 29: Android Augmented-Reality SDK

Using the AccelerometerAn acceleration sensor measures the acceleration applied to

the device, including the force of gravity. The following code shows you how to get an instance of the default acceleration sensor:

private SensorManager mSensorManager; private Sensor mSensor; ...

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

Page 30: Android Augmented-Reality SDK

Using the Linear AccelerometerThe linear acceleration sensor provides you with a three-

dimensional vector representing acceleration along each device axis, excluding gravity. The following code shows you how to get an instance of the default linear acceleration sensor:

private SensorManager mSensorManager; private Sensor mSensor; ...

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION);

Page 31: Android Augmented-Reality SDK

Using the GyroscopeThe gyroscope measures the rate or rotation in rad/s

around a device's x, y, and z axis. The following code shows you how to get an instance of the default gyroscope:

private SensorManager mSensorManager;

private Sensor mSensor; ...

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);

Page 32: Android Augmented-Reality SDK

Using the Rotation Vector SensorThe rotation vector represents the orientation of the device

as a combination of an angle and an axis, in which the device has rotated through an angle θ around an axis (x, y, or z). The following code shows you how to get an instance of the default rotation vector sensor:

private SensorManager mSensorManager; private Sensor mSensor; ...

mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_ROTATION_VECTOR);

Page 33: Android Augmented-Reality SDK

Available AR third party APIs http://code.google.com/p/andar/

http://www.wikitude.com/developer/wikitude-augmented-reality-for-developers

The Wikitude Augmented Reality SDK packs all the Augmented Reality power into one library. Using web technologies (HTML, Javascript, and CSS), Wikitude makes it easy to integrate an Augmented Reality view within your existing app.

http://www.geovector.com/

http://www.metaio.com/mobile-SDK/

https://ar.qualcomm.at/qdevnet/sdk/

http://www.junaio.com/

Page 34: Android Augmented-Reality SDK

Augmented-reality Android apps Junaio is an AR browser,

using which you have the ability of viewing various things depending on your preferences. If you are out and want to know where the nearest fast food restaurant is, then this app can help you as it can tell you that via your camera viewer. This app also boasts a comprehensive bar code scanner and also provides you with the ability to save favourites. Junaio has many amazing features, for instance, giving you a virtual tour of Valencia in Spain

Page 35: Android Augmented-Reality SDK

Google Skymap

Page 36: Android Augmented-Reality SDK

Color blindnessThe rotation vector represents the orientation of the device as a combination of an angle and an axis, in which the device has rotated through an angle θ around an axis (x, y, or z). The following code shows you how to get an instance of the default rotation vector sensor:

Page 37: Android Augmented-Reality SDK

KafkaraKafkara - talking avatars in augmented reality

Create talking avatars from people's faces shown in augmented reality at locations you visit. Avatars can be created using the camera or from Facebook or Twitter profile images to have them speak their latest updates using text-to-speech or from a voice recording.

Page 38: Android Augmented-Reality SDK

iOnRoad iOnRoad improves driving in real time using the power of advanced

smartphones. The app uses the smartphone’s native camera, GPS and sensors to detect vehicles in front of the host vehicle, alerting drivers when they are in danger. Our Visual Radar maps objects in front of the driver in real-time, calculating the driver's current speed using native sensors. As the vehicle approaches danger, an audio-visual warning pops up to alert of a possible collision, allowing the driver to brake in time.

Page 39: Android Augmented-Reality SDK

Q & A