Augmented Reality at The University of Idaho

The goal of the project is to use Augmented Reality (AR) to provide information in the computer science department at U of I by attaching multimedia to objects around the department in augmented reality.

=Problem Definition= Use AR to provide information to students around the CS Department about Faculty, the program, History, the CS department, etc. This is to provide the Students with a more immersive experience throughout their endeavors in the CS building. To let Students know Staff schedules simply by looking through their camera at a name plate, or provide information about the History of computer, and even to show students a glimpse into some of the classes that they might take.

Background
Augmented Reality is an interactive view placed on objects/people/places, through a camera, to enhance the users experience. We will use an app on your phone to recognize objects through your camera lens, and place AR throughout the CS department to supply students with additional information about Teachers and the CS department itself. The two pictures below, demonstrate an AR effect in use, using the Zapworks Studio. The picture on the left is the original image without any AR applied to it. And on the right is the image with a few effects added through the Zapworks application. It isn't just 2D images that are placed on the original image, but you can click the effects, and you will be redirected to a faculty website, or you can click a different one and add their phone number to your contacts. These are some of the AR effects we will be applying throughout the CS department. Other effects can include: music, 3D objects, and lots of other fun stuff.

Deliverables
 The design/app ideally shall work on all Android Devices.   All objects shall be able to be recognized by the phone’s camera from at least front view, and hopefully from any angle that is possible.   The final product shall have multiple objects that have an augmented reality applied and associated with them throughout the CS department and multiple affects for the online expo for k-12 students.   The AR app we choose to use may be free but is not limited to being free. (due to cost and other restriction, we have decided to build our own app) 

Specifications
Functional: User Interface Requirements: The user needs to be able to look at an object through their phone’s camera and be able to see or reach the augmented reality we design for said object.

Mechanical: Strength Requirements: The design/app shall work on all Android devices. Reliability: All objects shall be able to be recognized by the phone’s camera from at least front view, and hopefully from any angle that is possible.

Software: Functionality: The final product shall have a dozen objects that have an augmented reality applied and associated with them throughout the CS department or objects. User Interface: The interface for the app we design, shall have a main menu, where you select different locations to recognize distinct AR effects in each location. Cost:

As we are using Unity along with Vuforia, there is no cost associated with developing our app.

=Project Learning= Below is a list of the existing AR applications we have looked at to complete our AR project, and a brief list of pros and cons:

Blippar:  Quick AR development   Cost $ per blip, depending on how many AR effects you have   Easy use and testing  SMACAR:  Cannot test for free, not a viable option  ROAR:  Quick AR development </li>  Cost $ for us to develop, very expensive </li>  Easy use and testing </li> Snapchat Lens Studio:  Used for facial recognition and AR drops rather than object identification, not a viable option. </li> Sumerian:  Used for facial recognition and AR drops rather than object identification, not a viable option. </li> Google Lens:  Cannot create your own AR effect, not a viable option. </li> Zapworks:  Quick AR development </li>  It does cost money, but not much. </li>  Easy use and testing </li>  Only one picture for object identification </li>  Uses Zapcodes (QR codes) </li> Due to costs and other restrictions stated above. We along with our sponsor have decided to start developing our own AR app to populate the CS department with AR effects. Android Studio:  Has many features we desire for developing </li>  We are not experienced with the programming languages Java or Kotlin </li>  Most of us have never used Android Studio before </li> Unity:  We all have experience with Unity </li>  We are all familiar with the language C# </li> <li> Has a great built in library called Vuforia that should allow for easier AR development, used for recognizing images </li> <li> Has the features we are looking for, for development </li>

=Final Design= Unity & Vuforia: For our final design, we developed our app with Unity. We also used a library within Unity called Vuforia. Vuforia is a library used for image recognition. We run our base pictures through the Vuforia database, which selects distinct features of the picture so that we can later Recognize them to place AR over them in the correct orientation. The picture above, demonstrates the environment that we are working in, and shows a basic example of AR, that is included with Vuforia.

=Validation= The pictures below demonstrate our app in action. The one on the left is a normal nameplate for a professor. However the right picture, is when you have our app looking at it. It has a picture of the professor, along with a link to His website, for ease of access. The app also plays a sound when the AR is activated. This is just one of many examples of our AR app. For more Augmented Reality experiences download our app at http://www2.cs.uidaho.edu/~tsoule/

For our app, we also created many AR experiences for the virtual EXPO. We added all sorts of different AR pictures and sounds for different AR targets. See if you can find them all! We got all of the features desired for the App that our Sponsor wanted, including things like sounds, website links, a UI interface, and 2D images.

=Team Members=

=Additional Documentation=

Project Portfolio