ARCore

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

ARCore
DeveloperGoogle
Initial releaseFebruary 23, 2018; 8 years ago (2018-02-23)
Stable release
1.45.2420502[1] / August 14, 2024; 21 months ago (2024-08-14)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemAndroid
    PlatformAndroid 7.0 and later
    Websitedevelopers.google.com/ar/

    ARCore, also known as Google Play Services for AR, is a software development kit developed by Google that allows for augmented reality (AR) applications to be built. ARCore has been certified for a number of devices,[2] but is software-locked on devices that did not complete the certification procedure. Spoofing the ID of a device that completed the procedure makes ARCore work on more devices.[3] Requirements for certification include the "quality of the camera, motion sensors [and] a powerful enough CPU that integrates with the hardware design". Devices must also ship with Google Play to qualify for placement on the list of supported devices.[2] New devices can be submitted through the Google AR OEM Portal.[4]

    Key technologies

    [edit | edit source]

    ARCore uses a few key technologies to integrate virtual content with the real world as seen through the camera of a smartphone or tablet.[5] Each of these technologies can be utilized by developers to create a high-quality, immersive AR experience.

    Six degrees of freedom

    [edit | edit source]

    Environmental understanding

    [edit | edit source]
    • Allows the phone to detect the size and location of flat surfaces - both vertical and horizontal - with feature points.
    • Geometric plane can be calculated based on detected feature points.
    • A scene semantics API is used to gather real-time semantic data about the user's surroundings and uses that data to identify objects and features in view.

    Light estimation

    [edit | edit source]
    • Lighting Estimation API allows the phone to estimate the environment's current lighting conditions and display images accurately in relation to real-world lighting.
      • Lighting cues such as shadows and highlights are used to more immersively display virtual objects.[7]

    Depth analysis

    [edit | edit source]
    • Utilizes the phone's camera to create depth maps, which enable the device to more accurately determine the amount of space between surfaces based on what is captured.[8]
      • In order to properly assess the real world, depth maps are created to measure the amount of space between objects or surfaces.
      • A depth-from-motion algorithm takes the motion data from the user's camera and utilizes it to create a more detailed depth map.[9]

    Geospatial capabilities

    [edit | edit source]
    • This function's API uses GPS and allows creators to give users unique experiences based on their real-world location.[10]
      • Google's visual positioning system (VPS) is utilized for this process.
    • Matches the user's visual data with that of Google Maps to determine precise location.

    See also

    [edit | edit source]
    • ARKit – Augmented reality API for Apple platforms
    • OpenXR – Standard for access to virtual reality and augmented reality platforms and devices

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]