Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Update your reality with ARKit

Swift India
November 24, 2018

Update your reality with ARKit

Swift India

November 24, 2018
Tweet

More Decks by Swift India

Other Decks in Technology

Transcript

  1. CHITARANJAN SAHU ARGMENTED REALITY ▸ The illusion of virtual object

    in a real world ▸ Place virtual content to real world ▸ Relies on creating a virtual space on a fixed position ▸ Combines motion sensors with video capture
  2. CHITARANJAN SAHU ARKIT ‣ Mobile AR platform by Apple in

    2017. ‣ High-level , Session based API . ‣ It requires A9 or newer processors to perform all the complex computations in real-time. Thus, you’ll need an iPhone SE, iPhone 6s, iPhone 6s Plus, 5th generation iPad, or a newer device running iOS 11.
  3. CHITARANJAN SAHU ARKIT LAYERS Tracking :World Tracking, Visual inertial odometer,

    Orientation, Position, Scaling object relatively,No external setup required . Scene Understanding : Plane detection, Hit testing, light estimation Rendering : Easy integration , ARView, SceneKit , SpriteKit, Metal,Unity and unreal support for ARKit
  4. CHITARANJAN SAHU ARSessionConfiguration ‣ Configuration Classes ‣ Enable/Disable Features ‣

    Availability if ARWorldTrackingSessionConfiguration.isSupported { configuration = ARWorldTrackingSessionConfiguration() } else { configuration = ARSessionConfiguration() }
  5. CHITARANJAN SAHU ARSession ‣ Manage AR processing // Run your

    session session.run(configuration) // Pause your session session.pause() // Resume your session session.run(session.configuration) // Change your configuration session.run(otherConfiguration)
  6. CHITARANJAN SAHU ARSession ‣ Manage AR processing ‣ Reset tracking

    // Reset tracking session.run(configuration, options: .resetTracking)
  7. CHITARANJAN SAHU ARSession ‣ Manage AR processing ‣ Reset tracking

    ‣ Session updates // Access the latest frame func session(_: ARSession, didUpdate: ARFrame) // Handle session errors func session(_: ARSession, didFailWithError: Error)
  8. CHITARANJAN SAHU World Tracking ‣ Position and orientation ‣ Physical

    distances ‣ Relative to starting position ‣ 3D-feature points
  9. CHITARANJAN SAHU // Create a session let mySession = ARSession()

    // Set ourselves as the session delegate mySession.delegate = self // Create a world tracking configuration let configuration = ARWorldTrackingSessionConfiguration() // Run the session mySession.run(configuration)
  10. CHITARANJAN SAHU ARKit 2.0 ‣ Saving and Loading Maps ‣

    Environment Texturing ‣ Image Tracking
  11. CHITARANJAN SAHU ARKit 2.0 ‣ Saving and Loading Maps ‣

    Environment Texturing ‣ Image Tracking ‣ Object Detection
  12. CHITARANJAN SAHU ARKit 2.0 ‣ Saving and Loading Maps ‣

    Environment Texturing ‣ Image Tracking ‣ Object Detection ‣ Face Tracking Enhancements
  13. CHITARANJAN SAHU Saving and Loading Maps // Retrieve world map

    from session object session.getCurrentWorldMap { worldMap, error in guard let worldMap = worldMap else { showAlert(error) return } }
  14. CHITARANJAN SAHU Saving and Loading Maps // Retrieve world map

    from session object session.getCurrentWorldMap { worldMap, error in guard let worldMap = worldMap else { showAlert(error) return } } // Load world map and run the configuration let configuration = ARWorldTrackingConfiguration() configuration.initialWorldMap = worldMap session.run(configuration)
  15. CHITARANJAN SAHU Environment Texturing ‣ Improvisation in reflection, shadow, lighting

    ‣ Configuration.environmentaltexturing ‣ Gathers scene texture ‣ Cube map representation ‣ Dynamically update texture

  16. CHITARANJAN SAHU Image Detection and Tracking Detection ‣ Recognition of

    known static 2D images ‣ Change position and orientation ‣ Integration with world tracking ‣ Validation Support by Xcode asset catalog
 

  17. CHITARANJAN SAHU Image Detection and Tracking Detection ‣ Recognition of

    known static 2D images ‣ Change position and orientation ‣ Integration with world tracking ‣ Validation Support by Xcode asset catalog Tracking ‣ Multiple image tracking ‣ Images don’t need to be static ‣ Position and orientation for every frame ‣ ARImageTrackingConfiguration
  18. CHITARANJAN SAHU 3D Object detection ‣ Objects need to be

    scanned first Using ARObjectScanningConfiguration ‣ Detection of a known static 3D object
 configuration.detectionObjects ‣ Feature points,Well-textured, rigid, non-reflective
 Example : museum app,
  19. CHITARANJAN SAHU Face tracking ‣ Improvements in face tracking mesh/ARFaceGeometry,

    light probing ‣ Animoji in Arkit 1.5 ‣ 50+ facial features tracking ‣ New Gaze tracking ‣ Inputs using Gaze tracking ‣ TongueSupport