Major things that I want to focus on learning in this project
- Mobile development
- New language: Swift
- Computer vision: ARKit
- Computer graphics: CoreGraphics
Augmented reality drawing iOS app that makes creativity fun and accessible for everyone. The app allows users to place simple virtual images on any surface and lets users trace drawing from their phone.
- My main target users are for everyone from professional artists to enthusiasts who love to draw.
- Back-end Technology
- N/A at the moment. For future improvements, we can discuss a way to store/share user sketches, but this is not part of the MVP.
- Front-end Technology
- Languages: Swift, C++
- For basic UI rendering: UIKit
- For objects rendering in 3D surface: ARKit, SceneKit
- For image processing algorithms : CoreGraphics
- Infrastructure
- Apple App Store will host my application and I will use it to deploy applications to my users.
- Detect a surface using ARKit
- Users can use phone camera to detect a flat surface
- Select a 2D simple image
- Users can choose a 2D image from a provided list of images
- Place image on surface
- Users display selected image virtually on the surface detected by phone camera
- Enable world tracking functionality: create a correspondence between real surface and virtual images which allows users to view sketch images from different angle when camera position changes (user can only move their camera)
- XCode Version 11.3
- Download the OpenCV 4.2.0 framework for iOS: http://opencv.org and import OpenCV in the project under folder named Frameworks