Post on 12-Jan-2016
transcript
Mobile Navigation With SVG
Christian Schmitt
SVG Open 2005
Contents
Introduction
Contents
Indoor positioning systems
Pathfinding + Map generator
Map viewer + navigation
Demo
conclusion
Indoor Positioning Technologies Overview
Infrared (IR)
Wireless LAN (WLAN)
Ultra-wide band (UWB)
Hybrid solution
Infrared
Principle/Features
IR beacons sending a specific code. Directed connection. Range: 80-300 cm Accuracy: see range
Advantages
Universal Inexpensive Basic technology
Disadvantages
Line of sight required Does not scale very well Maintenance costs
WLAN
Principle/Features
Fingerprinting based on signal strength measurements
Accuracy: 3-7 meters
Pros
Use of existing WLAN infrastructure Most PDAs have WiFi. WiFi tags Easy to setup Large area covered
Contras
High power consumption of WLAN card Poor update rate Calibration step
Ultra Wide Band
Features
No multipath distortion Time Difference of Arrival, Angle of
Arrival Accuracy: 15cm
Pros
Accuracy Good update rate
Contras
Special hardware Complex Setup
Our hybrid solution
WLAN from Ekahau Inc
Coverage: whole floor Accuracy: 3 meters
UWB from Ubisense
Coverage: single room Accuracy: 20 cm
IR from guideID and Eyeled
Coverage: few emitters in front of pictures
Pathfinding
Introduction
Contents
Indoor positioning systems
Pathfinding + map creation
Map viewer + navigation
Demo
conclusion
SVG Map generation
Problem: the same SVG map will not render on
all platforms
Solution:create a common semantic description
of the map together with transformation rules specific to each platform
Implementation
DTD suitable for room plans User Interface to define a new
map XSLT transformation to output
SVG A XSLT file for each target
platform
The A* algorithm implementation
A* algorithm
Is a graph search algorithm that finds a shortest path from a given initial node to a given goal node
Uses an heuristic to direct the search Cost function is the distance between
two nodes
Implementation
Route computation on client (Windows Mobile 2003)
Implemented using STL library Graph stored as text file
Map viewer
Introduction
Contents
Indoor positioning systems
Pathfinding + helper tools
Map viewer + navigation
Demo
conclusion
Viewer functionalities
Zoom in/out, panning
Display of the current position
Selection of a destination and display of the optimal route
Animations of objects
Support for information browsing on the map
On the search for perfection
First step: Personal Java application rendering raster
bitmap
Drawbacks: Raster bitmap: not scalable, high footprint Java: weak user interface, waste of system
resources, no access to hardware resources
Next step: Native C++ application rendering SVG.
Which SVG viewer to use ?
Which SVG viewer?
Only two native SVG viewers available for Windows Mobile-based PDAs:
eSVG and BitFlash
eSVG
eSVG 1.6 license purchased in Mai 2003
Performance issues Latest version with .NET support
BitFlash
BitFlash SDK license purchased in Spring 2004
Fast rendering and good interaction capabilities
Using BitFlash SDK
Usage guidelines
Create player instance, load document Communication with the player via commands and callback
functions, DOM API Only one thread should access the player at the same time
Example
Zooming in:
BFZoomEvent zoomData;zoomData.fpFactor = 0x7FFF;//0xcccc; // 1.5 in 16.16 fixed point zoomData.iCenterX = (BF_INT16)point.x;zoomData.iCenterY = (BF_INT16)point.y;int dwWait=WaitForSingleObject(hSVGPlayerSemaphore,INFINITE);CheckStatus(BFprocessCommand( pPlayer, BF_COMMAND_VIEW_ZOOM,
&zoomData ));CheckStatus(BFprocessCommand( pPlayer,
BF_COMMAND_VIEW_REDRAW, 0 ));ReleaseSemaphore(hSVGPlayerSemaphore,1,NULL);
Integration of positioning technologies
Ekahau/Ubisense
Server: Middleware server connecting to Ekahau and Ubisense Server, keeping position information up-to-date and delivering position data to clients
Client: Location Thread connects to server, parses messages and refreshes buddy position on map
IR
IR thread is listening on IR port (serial) IR code found => trigger animation
Issues
Refresh rate (only Orinoco cards provide good results)
Integration
Demo
Demo
Conclusion
Positioning
Appropriate combination of positioning systems needed to achieve best tradeoff between quality of service and cost
Indoor navigation is still a very challenging research topic
SVG
SVG maps are perfect for mobile navigation Rendering of SVG maps no longer too slow
Future work
Better navigation : audio output and personalized routes
Seemless integration of positioning systems Tests on Symbian and .NET
Thank you !