首页 > 其他分享 >融合虚拟与现实,AR Engine为用户提供沉浸式交互体验

融合虚拟与现实,AR Engine为用户提供沉浸式交互体验

时间:2024-11-08 15:56:54浏览次数:4  
标签:Engine 现实 虚拟 跟踪 平面 交互 AR

当今的应用市场中,传统的应用产品已经难以完全满足消费者的多样化需求。为了在竞争激烈的市场中脱颖而出,企业需要深入洞察用户需求,提供个性化的服务体验和差异化的产品创新,以吸引并留住消费者。

比如,购物类App通过虚实结合的方式实现虚拟穿搭;室内设计行业App可将虚拟家具模型放置于现实环境中给用户演示;游戏行业App可将虚拟游戏画面放置于现实环境中,从而提供给用户更沉浸式的游戏体验。

以上创新化的应用场景,都依赖于一项核心的技术能力,即增强现实(AR)技术,HarmonyOS SDK AR引擎服务(AR Engine)正好具备这样的能力。
AR Engine是一个用于在HarmonyOS上构建增强现实应用的引擎,基于计算机实时计算和多传感器的结合,可以通过设备摄像头将虚拟物体逼真地叠加到现实场景中,让应用实现虚拟世界与现实世界的融合,为用户提供全新的视觉体验和交互方式。

AR Engine提供了运动跟踪、环境跟踪和命中检测等空间计算能力,开发者可以借助这些能力实现如AR导航、AR测量和AR摆放等应用,为用户提供虚实融合的全新交互体验。

运动跟踪能力

运动跟踪能力统一了虚拟坐标系和现实坐标系,是实现虚拟物体与现实环境逼真融合的基础能力。

AR Engine使用运动跟踪能力通过终端设备摄像头标识特征点,并跟踪其移动变化,同时将这些点的移动变化与终端设备惯性传感器结合,来不断跟踪终端设备的位置和姿态。通过持续跟踪设备相对于周围环境的位置和姿态变化轨迹,建立了虚拟数字世界和现实物理世界统一的几何空间坐标系,从而实现设备在不同视角和距离情况下,虚拟物体保持与真实环境几何的一致性,开发者可从观察者视角将渲染的虚拟物体叠加到摄像头图像中,实现虚实融合。

比如AR Engine应用在AR车展上时,用户可通过转动设备摄像头从不同角度来查看虚拟汽车模型,实现沉浸式的AR观展,这里就用到了运动跟踪的能力。

环境跟踪

AR Engine环境跟踪能力可以快速识别出现实场景中的平面信息,并识别出对应的平面类型和形状等信息,从而辅助应用实现数字虚拟物体以场景化的方式融入现实物理世界中。环境跟踪主要包括平面检测、平面语义、目标语义三个能力。

平面检测

平面检测能力可通过识别水平和垂直平面上的成群特征点以及平面的边界,得到现实世界中的平面信息,例如地面或墙面。检测到这些平面后,应用可基于平面来放置虚拟物体,或进行导航等应用场景的开发。

平面语义

平面语义是指检测现实世界平面的类型,当前支持的平面类型共8种,分别为:墙面、地面、座椅面、桌面、天花板、门面、窗面、床面。

目标语义

目标语义是指当目标物体位于平面上时,检测目标物体的形状,当前包括矩形和圆形。

命中检测

命中检测技术可以帮助AR Engine实现虚实世界两点之间的连接。AR Engine通过命中检测技术,获取兴趣点到AR世界兴趣点的映射关系,开发者可以基于此能力帮助用户实现与AR世界中虚拟物体的交互。

image

命中检测能力示意图

在实际应用场景中,用户可点击终端设备屏幕,选中现实环境中的兴趣点,AR应用调用碰撞检测接口获取AR世界的兴趣点并返回相关信息,用户即可在终端设备屏幕所展示的AR世界兴趣点上完成模型放置等交互动作,比如用户可以通过摄像头将虚拟家具放置于现实室内环境中,并从各个角度观察判断家具是否符合整体设计,从而减少大件商品的购买出错率。

运动跟踪能力统一了现实世界和虚拟世界的坐标系,环境跟踪能力识别出了现实世界的平面信息,而命中检测能力建立了两个世界之间的交互锚点,AR Engine通过这三个能力,从点、线、面多个维度打破了物理世界与数字世界的壁垒,实现了两者的叠加统一,这种统一不仅为用户提供了前所未有的体验,也为开发者开辟了广阔的创新空间,为各行各业带来了更多的可能性。随着技术的不断演进和市场的不断扩大,我们可以期待AR技术在未来将有更广泛的应用和更深远的影响。

了解更多详情>>

访问AR Engine联盟官网

获取AR Engine开发指导文档

标签:Engine,现实,虚拟,跟踪,平面,交互,AR
From: https://www.cnblogs.com/HarmonyOSSDK/p/18535270

相关文章

  • 十七:Spring Boot (2)-- spring-boot-starter-web 应用
    目录1.spring-boot-starter-web简介1.1作用与功能:1.2引入方式:1.3包含的核心依赖:2.自动配置原理3.内嵌Servlet容器3.1默认Tomcat配置:3.2替换容器(Jetty或Undertow):4.构建RESTfulWeb服务:4.1 什么是RESTfulWeb服务4.2创建REST控制器5.自动......
  • 配置docker和containerd,使用ca证书访问harbor
    配置docker和containerd,使用ca证书访问harbor目录配置docker和containerd,使用ca证书访问harbordocker配置ca证书访问harborcontainerd配置ca证书访问harbor验证证书有效性docker配置方法containerd配置方法验证证书有效性描述harbor链接汇总harbor部署harbor部署httpsdo......
  • 20240913 ARC104
    20240913ARC104感觉后四题价值都很高,dp还是弱项,待加强。APlusMinus水,略。BDNASequence只有对应的两种字符数量相等才能满足条件,直接\(O(n^2)\)枚举子串可过。用unordered_map开桶能做到\(O(n)\)。CFairElevator赛时没想到dp,乱搞做法差1个点就过了。考......
  • laravel octane: 配置nginx访问octane(laravel 11)
    一,配置nginx1,在一个nginx的server段中添加如下内容:location/index.php{try_files/not_exists@octane;}location/{try_files$uri$uri/@octane;}location@octane{se......
  • Hadoop及Spark环境配置与运行实例
    一、参考资料重要说明本文章为大数据分析课程实验之Hadoop与Spark平台配置记录及示例演示,其中Hadoop配置部分绝大多数内容源自参考资料:华为云:Hadoop安装教程(单机/伪分布式配置)、CSDN:Hadoop安装教程(单机/伪分布式配置)(两文章内容相同且均为同一作者:@华东设计之美);Spark配置部分......
  • Apache Spark 学习路径
    文章目录一、基础知识1.1大数据概念1.2Spark介绍1.3Spark架构二、安装与配置三、编程模型四、核心API4.1、SparkSQL4.2SparkStreaming4.3MLlib4.4GraphX五、Spark机制5.1性能调优5.2Spark内部机制5.3Spark生态系统5.4实战与案例六、深入理解Spark架构七......
  • laravel octane:用supervisor管理octane服务
    一,ubuntu安装supervisor1,用apt安装#aptinstallsupervisor2,安装完成后查看状态:#systemctlstatussupervisor.service●supervisor.service-SupervisorprocesscontrolsystemforUNIXLoaded:loaded(/lib/systemd/system/supervisor.service;enabled;......
  • ICPC23沈阳区域赛 D. Dark LaTeX vs. Light LaTeX 题解
    D.DarkLaTeXvs.LightLaTeXThe2023ICPCAsiaShenyangRegionalContest(The2ndUniversalCup.Stage13:Shenyang)给两个字符串\(s,t\),长度分别为\(n,m\),现在分别取\(s,t\)的子串\(s',t'\),合成一个新的长度为偶数的字符串\(str=s'+t'\),记\(str\)的长度为......
  • 云服务器Linux部署war、jar包,并在nginx配置域名
    一,打包Jar包        一个Springboot项目默认打包jar包,无需修改配置,点击右侧Maven-Lifecycle-package打包即可注意:需要先检查pom.xml文件,可能此时打包完的jar包会出现        nomainmanifestattribute,intest-0.0.1-SNAPSHOT.jar        xx......
  • 雅思口语part1-20题
    Doyouworkorstudy?"I’mcurrentlystudyingforamaster’sdegreeinArtificialIntelligence.Ireallyenjoythechallengesthatcomewithmystudies,especiallywhenitinvolvesworkingonreal-worldprojectsthathavepracticalapplications.&qu......