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

news/2024/11/8 16:08:19/文章来源:https://www.cnblogs.com/HarmonyOSSDK/p/18535270

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

比如,购物类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开发指导文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/828858.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

牛顿法特殊形式——开方公式与二分逼近开方的

数值分析-开方公式// 开方公式 #include<bits/stdc++.h>using namespace std;int main() {double c, x0, jingdu;printf("请输入被开方数c:");scanf("%lf", &c);printf("请输入初值x0:");scanf("%lf", &x0);printf(&q…

90后斩获多家名企offer的小哥哥,做对了什么?

我本人的上一份工作,职级是高级测试开发工程师,平时的工作是以功能项目测试为主,接口自动化、web自动化、性能测试工作中都有涉及,接口自动化框架已经可以独立负责搭建并维护,性能测试也是公司内自己独立负责,可以支持公司内各种压测活动的进行。 我的短板是自动化框架的…

Python介绍和基础运用

python之基本介绍 (1)什么是python ? python 是一门编程语言 python是一门面向对象,解释型的动态类型的编程语言,guido van rossunm (吉多*范罗苏姆),在1989年发明,第一个公开发行版本与1991年; guido van rossunm (吉多*范罗苏姆) 是荷兰 计算机程序员 (2)…

《DNK210使用指南 -CanMV版 V1.0》第三十六章 image图像色块追踪实验

第三十六章 image图像色块追踪实验 1)实验平台:正点原子DNK210开发板 2)章节摘自【正点原子】DNK210使用指南 - CanMV版 V1.0 3)购买链接:https://detail.tmall.com/item.htm?&id=782801398750 4)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boar…

LogoGalleria:免费AI Logo生成器,轻松打造专属品牌标识

LogoGalleria 是一个免费且简单易用的AI Logo生成工具,帮助用户无需设计经验即可快速生成专业Logo,适合创业公司、YouTube频道、个人项目等多种用途。摘要:LogoGalleria 是一个免费且简单易用的AI Logo生成工具,帮助用户无需设计经验即可快速生成专业Logo,适合创业公司、Y…

线段树知识乱讲

前言 算法竞赛题目考察的是选手对于数据结构的选取与算法的巧妙结合,而数据结构中线段树扮演一个至关重要的角色,而近期(CSP 结束)在 hfu 的安排下我们需要自己弄一周的 ds,所以就有了这篇奇妙的博客。 线段树基础知识 在我看来,线段树其实就是在数组的基础上添加了一些额…

绞车运行状态识别智慧矿山一体机石矿堵塞识别智慧煤矿方案

在全球数字化转型的大背景下,煤矿行业正站在转型升级的十字路口。新兴技术如互联网、物联网、人工智能的快速发展,为煤矿行业带来了前所未有的机遇,同时也提出了新的挑战。煤矿行业在信息化水平、监管难题、安全事故频发以及数据孤岛等方面仍面临诸多挑战。在这样的背景下,…

load_allmotor

XGO使用树莓派做为机器狗的大脑,推荐使用VScode对XGO进行编程,可以通过一下步骤进行开发: 准备工作安装 VScode: 确保你已经在你的电脑上安装了 VScode。你可以从VScode官网下载并安装。 连接网络:根据快速入门让XGO连上网络,操作机器狗按键让机器狗显示IP地址如下图所示…

央国企“严选”!天翼云夺得IaaS+PaaS市场桂冠!

10月17日,赛迪顾问发布的《2024中国央国企云市场研究报告》显示,2023年,在中国央国企云“IaaS+PaaS”市场中,中国电信天翼云凭借行业云和全栈服务能力、渠道优势位居第一。10月17日,赛迪顾问发布的《2024中国央国企云市场研究报告》显示,2023年,在中国央国企云“IaaS+Pa…

舞台已就位!坐等AI玩家集结!

舞台已就位!坐等AI玩家集结!舞台已就位!坐等AI玩家集结!

Nuxt.js 应用中的 prepare:types 事件钩子详解

title: Nuxt.js 应用中的 prepare:types 事件钩子详解 date: 2024/11/8 updated: 2024/11/8 author: cmdragon excerpt: prepare:types 钩子为 Nuxt.js 开发者提供了灵活定制 TypeScript 配置和声明的能力。通过使用此钩子,开发者能够确保 TypeScript 配置和类型声明能够满…

线段树的好朋友,平衡复杂度的好帮手——多叉堆

多叉堆,和 另外一个 是好兄弟,在某些 dijkstra 中用于阳间地平衡复杂度。 本质上是控制堆的高度,用一个 \(V^{\frac 1 k}\) 叉树来维护堆,当元素的值减小时只需要 \(O(k)\),弹出最小值也只需要 \(O(k + V^{\frac{1}{k}})\),当 \(k\) 取 \(\ge 2\) 的常数(根据题目来)就…