Augmented Reality Indoor Navigation

C# • Unity3D • OCR • Augmented Reality

Summary

I have been working on researching and building an indoor navigation application for both iOS and Android phones. This project has been a great learning experience and has taught me a lot when it comes to working on large projects. Below is a video that shows me navigating from one room to another, start of the video is censored to keep any names hidden due to privacy concerns.





Methodology

I used Unity with AR Foundation plugins to create the application. This whole project is split into 3 parts. The application itself is a helper application that is used for the development of virtual maps, and the server-side does optical character recognition. The application itself is responsible for spawning in an appropriately aligned virtual map which will be placed on top of the real-world build's hallways. The application is also responsible for calculating the shortest (best) path to the destination that is selected by the user. It spawns in the pathway highlighted by green arrows which dynamically align to the user's walking pattern and offset. The helper application is used on the development side. A developer launches the application and walks around a building, a 3D wireframe will be created which can then be used to create a virtual map of the building. The server communicates with the main application, it's purpose is to help locate the user in the real world going off of a scan of a nameplate that is present near each room in the buildings I was working with. Once the server receives an image it will perform optical character recognition operations and return the location-identifying string to the application.

Conclusion

This project was a great learning experience for me and I am proud of what I accomplished. I not only strengthened my programming skills but also learned to take creative approaches to obstacles that occur when developing an augmented reality-based application.