Challenge Overview
1. Context:
PROJECT CONTEXT
Client wants to create an iOS Native Mobile App to explore how AR can be used for assisted navigation (indoor and outdoor) while relying heavily on computer vision libraries like ARKit and with very little reliance on GPS.
2. Expected Outcome:
-
POC code with functionality to demonstrate map creation and navigation.
3. Challenge Details
INDIVIDUAL REQUIREMENTS
The client wants to create an iOS native POC app to demonstrate the following functionalities:
Create Map
-
User opens app, camera view opens up, user chooses to create a new map.
-
AR camera opens up, starts AR session
-
App creates a new map with cloud points and saves along with GPS metadata
-
User walks around scanning the place, the more they scan the better data app collects
-
App automatically creates breadcrumbs (markers of user’s positions ) as the user walks (every 3 - 5 feet) and save these breadcrumbs along with point cloud data to the cloud storage
-
User walks up to various interesting places and creates the location hotspot
-
User continues this procedure until they have created all the hotspots / destinations and have dropped enough breadcrumbs
-
App saves the point cloud data, hotspots and breadcrumbs
Navigation in Map
-
User opens app, camera view opens up
-
AR camera opens up, starts AR session
-
App searches the server for maps using GPS coordinates
-
Downloads and caches mapping data
-
App localizes itself in the map by matching the point cloud data
-
User chooses / searches from list of destinations (hotspots that have been created during the scan)
-
Way finding algorithm uses the saved breadcrumbs as nodes to find and show the shortest route to the destination (A*)
-
User follows navigation, gets to see other hotspots on the way
-
It should provide AR turn-by-turn navigation to the chosen navigation
-
There might be possibilities of taking stairs, elevators and escalators
-
-
User reaches the destination
You can keep the navigation and path-finding simple in this PoC, as we only want to demonstrate the saved hotspots and breadcrumbs data can be loaded and used properly.
The POC should also document the following points:
-
Ease of using the SDK
-
Feature sets
-
navigation search:
-
location search - search/list based destination picking, automatically show list of hotspots around you.
-
nearby - while navigating to your chosen destination, app will show other important hotspots (interesting destinations) on the way, when you pass them by. Each hotspot label can have a description and icon.
-
-
navigation experience:
-
turn-by-turn AR navigation - provide AR turn-by-turn navigation to the chosen destination. There might be possibilities of taking stairs, elevators and escalators during navigation
-
show time/distance to the destination
-
show miniature 3D Map navigation
-
-
map creation
-
scanning location - provide turn-by-turn navigation to the chosen destination
-
creating hotspot/destination
-
generating real-time navigation
-
-
-
Accuracy of localizing
-
Speed of Localizing
-
Quality of Pre-scan
-
Access to & quality of the raw data given to server after scan completion
-
Android Roadmap
TECHNOLOGY STACK
-
Unity 3D (preferred) / Swift
-
A* Path Finding: https://github.com/Dev1an/A-Star
-
Placenote - https://www.youtube.com/watch?v=VOMysKbDNxk
Final Deliverables
-
Source Code
-
Deployment Guide and Demo Video