面向新一代扩展现实(XR)应用的物联网框架

中文标题: 面向新一代扩展现实(XR)应用的物联网框架
英文标题: Towards an IoT Framework for the New Generation of XR Applications

作者信息

  • João A. Dias,UNIDCOM - IADE,欧洲大学,里斯本,葡萄牙,邮箱:joao.alfredo.dias@universidadeeuropeia.pt

  • Nathan P. Campos,IADE,欧洲大学,里斯本,葡萄牙

  • Miguel Boavida,IADE,欧洲大学,里斯本,葡萄牙

论文出处

本文发表于《IEEE Access》,DOI: 10.1109/ACCESS.2024.0429000。


摘要

近年来,扩展现实(XR)技术在工业和学术界引起了广泛关注,尤其是在开发创意和沉浸式应用方面。然而,许多XR应用仍然依赖于传统的输入设备(如鼠标、触摸屏或游戏控制器)和输出设备(如屏幕或投影仪)。随着物联网(IoT)解决方案的普及,将这些设备集成到新一代创意应用中成为可能。然而,这种集成通常成本高昂且需要大量定制开发。本文旨在填补这一空白,提出一个框架,使开发者能够利用IoT设备创建数字孪生或作为应用的输入和输出设备,从而为软件开发开辟新的可能性。研究中提出了一个框架,用于将任何IoT设备集成到新一代XR应用中,并详细设计了一种IoT设备配对方案,使其能够自动与客户端可靠匹配。通过使用行业标准的IoT通信协议MQTT进行性能研究,证明了该框架在为无线输入设备提供低延迟通信方面的可行性。

引言

扩展现实(XR)技术涵盖了虚拟现实(VR)、增强现实(AR)和混合现实(MR),通过计算机生成的环境让用户同时与虚拟和现实世界互动。尽管XR技术取得了显著进展,但仍然面临一些挑战,例如设备重量、视野限制和硬件限制等问题。物联网(IoT)设备和网络的集成可以解决这些问题,通过实时数据交换增强XR体验。然而,目前这种集成通常是逐案进行的,通常涉及云解决方案作为中介,缺乏标准化的框架。本文提出了一个框架,支持新一代XR应用,利用过去几十年的创新和IoT设备集成带来的可能性,弥合虚拟和物理世界之间的联系。

背景与相关工作

扩展现实

扩展现实(XR)是一个涵盖多种技术的术语,旨在扩展物理现实,例如通过在物理空间上叠加虚拟对象或完全替换它们。近年来,XR技术在创意应用领域取得了快速发展,尤其是在VR和AR眼镜方面。这些技术的发展推动了相关硬件、配件和新方法的研究,以扩展这些设备的能力。

  1. 增强现实(AR):AR技术允许用户在现实世界中与虚拟对象互动,通过智能手机等设备的传感器和算法实现。AR技术的一个重要应用是通过移动设备在现实场景中叠加虚拟3D对象,广泛应用于广告、视频制作等领域。

  2. 虚拟现实(VR):VR技术通过头戴式显示器(HMD)让用户完全沉浸在虚拟环境中,与周围环境隔离。VR技术的发展使得开发者可以更简单地开发体验,因为不需要依赖外部输入,只需依赖头显中的运动传感器和控制器。

  3. 混合现实(MR):MR技术结合了VR和AR的特点,允许用户在虚拟和现实内容之间无缝切换,同时感知物理空间。

物联网(IoT)

IoT是一个由传感器、嵌入式软件和执行器组成的物理设备网络,能够通过互联网连接和交换数据。IoT的主要目标是通过实时数据收集和自动化控制优化流程,提高效率和用户体验。IoT技术为创意技术中的艺术和设计表达提供了新的可能性,使开发者能够创建模糊数字和物理世界边界的交互式装置和环境。

  1. IoT协议:IoT领域有许多通信协议,包括HTTP、MQTT和CoAP。其中,MQTT是一种轻量级协议,专为IoT应用设计,广泛用于资源受限的设备。CoAP是一种现代轻量级协议,旨在填补HTTP和资源受限应用之间的差距。

混合方法

研究人员已经开发出多种方法,将XR和IoT技术结合起来,创造更沉浸式的体验。例如,通过将IoT设备与XR应用集成,可以实现更自然的交互和更丰富的用户体验。然而,这种集成通常需要定制开发,增加了开发成本和复杂性。

提出的框架

本文提出的框架旨在为XR和IoT的集成提供标准化解决方案,使开发者能够轻松地将IoT设备集成到XR应用中。框架的核心组件包括:

  1. 应用:开发者编写的XR应用,使用高级语言和网络通信库。

  2. 客户端:运行XR应用的设备,如计算机、VR头显或移动设备。

  3. 个性:IoT设备上的可测量值或可操作值,如传感器数据或执行器状态。

  4. 节点:作为输入、输出或两者的IoT模块。

  5. 中介:负责动态分配MQTT主题,使节点和客户端能够自动配对。

  6. 代理:MQTT代理,负责在客户端和节点之间中继信息。

系统架构

框架的架构设计旨在最大化扩展性和灵活性,支持多种设备和场景。图7展示了系统架构,包括单个节点和客户端之间的交互。框架使用HTTP进行初始设置和配对,使用MQTT进行运行时通信。为了减少延迟,嵌入式设备的固件应保持简洁,将复杂处理任务交给客户端。

通信和配对机制

由于MQTT协议不支持客户端之间的主题协商,框架引入了中介来动态分配主题。中介允许节点在启动时发现服务器地址,并自动与客户端配对。配对过程类似于无线游戏控制器的配对,确保节点和客户端能够自动匹配,无需预配置信息。

框架性能评估

框架的性能评估主要关注MQTT协议在分布式环境中的表现,特别是在低延迟和高吞吐量方面。评估的目标是确定框架是否适用于需要低延迟输入设备的XR应用。

测试方法

测试使用了Python脚本作为发布者,Unity 3D应用作为订阅者,通过MQTT协议进行通信。测试环境包括模拟场景(虚拟机和主机)和真实场景(IoT设备和VR头显)。测试指标包括延迟(往返时间)和TCP吞吐量。

测试结果
  1. 模拟环境

    • 在模拟环境中,使用ping和netperf工具测量了网络的基线性能,结果显示平均往返延迟为0.416毫秒,TCP吞吐量为2591次/秒。

    • 在无延迟的单发布者测试中,Unity在高频率更新UI时变得无响应,但后台处理消息时表现正常。测试结果显示,MQTT协议在无延迟情况下能够实现极低的延迟(约1毫秒),适合用作游戏控制器。

    • 在使用不同QoS级别时,延迟和吞吐量的变化表明,QoS级别越高,延迟越大,但吞吐量仍能满足XR应用的需求。

  2. 真实环境

    • 在真实环境中,使用ESP32-S2-Saola-1开发板作为IoT设备,Meta Quest 2 VR头显作为客户端,测试了MQTT协议在不同网络条件下的表现。

    • 在最坏情况下(公共WiFi网络),平均往返延迟为18.78毫秒,QoS级别为1时延迟为24.98毫秒,QoS级别为2时延迟为36.29毫秒。这些延迟值仍低于人类感知的阈值(约10毫秒),证明MQTT协议在高延迟网络中仍能提供可接受的性能。

    • 在理想情况下(专用WiFi网络),延迟显著降低,QoS级别为0时平均延迟为6.25毫秒,QoS级别为1时为8.27毫秒,QoS级别为2时为13.92毫秒。这些结果表明,MQTT协议在低延迟网络中表现优异,适合用于需要高响应性的XR应用。

结论与未来工作

本文提出的框架通过使用MQTT协议,成功地将IoT设备与XR应用集成,解决了现有解决方案中的许多问题。框架在低延迟和高吞吐量方面表现出色,适用于需要低延迟输入设备的XR应用。未来的工作将包括更多用户测试,验证框架在实际游戏和应用中的表现,以及探索框架在工业自动化和智能家居等领域的应用。此外,还需要进一步研究MQTT和CoAP协议的性能比较,以及在更复杂的网络环境中的表现。

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

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

相关文章

Qt unknown module(s) in qt:serialport解决方法

在Ubuntu和CentOS系统中,若使用Qt时遇到Unknown module(s) in QT: serialport错误,通常是由于未正确安装Qt的串口模块(QSerialPort)或项目配置不当导致。以下是针对两种系统的解决方案: 一、安装Qt串口模块 1. Ubuntu/Debian系列 安装开发包: 执行以下命令安装Qt5串口模…

阀门轴承电动车工件一键精修软件

若需定制开发“ComfyUI意见精修软件” 技术栈建议: 前端:React/Vue Figma插件API(直接读取设计稿)。 后端:Node.js/Python NLP库(spaCy/NLTK)。 数据库:MongoDB(存储…

chapter32_SpringMVC与DispatcherServlet

一、简介 从本章节开始进入SpringMVC的学习,SpringMVC最重要的类就是DispatcherServlet DispatcherServlet的本质是一个Servlet,回顾一下Servlet JavaWeb就是基于Servlet的Servlet接口有5个方法Servlet实现类是HttpServlet,自定义的Servle…

《Learning Langchain》阅读笔记3-基于 Gemini 的 Langchain如何从LLMs中获取特定格式

纯文本输出是有用的,但在某些情况下,我们需要 LLM 生成结构化输出,即以机器可读格式(如 JSON、XML 或 CSV)或甚至以编程语言(如 Python 或 JavaScript)生成的输出。当我们打算将该输出传递给其他…

中间件--ClickHouse-12--案例-1-日志分析和监控

1、案例背景 一家互联网公司需要实时分析其服务器日志、应用日志和用户行为日志,以快速发现潜在问题并优化系统性能。 2、需求分析 目标:实时分析日志数据,快速发现问题并优化系统性能。数据来源: 服务器日志:如 Ng…

多道程序和多任务操作系统区别

多道程序 vs. 多道任务:对比分析 ✅ 共同点 方面共同特征核心机制都依赖于进程/任务切换执行需求实现多个程序或任务"并发"执行系统支持都需要操作系统的支持(如调度算法、内存管理)本质目标提高资源利用率(CPU不空转…

齐次坐标变换+Unity矩阵变换

矩阵变换 变换(transform):指的是我们把一些数据,如点,方向向量甚至是颜色,通过某种方式(矩阵运算),进行转换的过程。 变换类型 线性变换:保留矢量加和标量乘的计算 f(x)…

闲来无事,用HTML+CSS+JS打造一个84键机械键盘模拟器

今天闲来无聊,突发奇想要用前端技术模拟一个机械键盘。说干就干,花了点时间搞出来了这么一个有模有样的84键机械键盘模拟器。来看看效果吧! 升级版的模拟器 屏幕录制 2025-04-18 155308 是不是挺像那么回事的?哈哈! 它…

智慧城市:如同为城市装上智能大脑,开启智慧生活

智慧城市的概念随着信息技术的飞速发展而逐渐兴起,它通过集成物联网、大数据、人工智能和数字孪生等先进技术,为城市管理和居民生活带来了前所未有的智能化变革。本文将深入探讨这些核心技术及其在智慧城市的典型应用场景,展示智慧城市如何提…

科技快讯 | 智谱开源最新GLM模型系列;“AI 洗头店”现身广州;ChatGPT上线图库功能

智谱开源最新GLM模型系列,启用全球域名“Z.ai” 4月15日,智谱开源最新GLM模型系列,包括32B和9B尺寸,涵盖基座、推理、沉思三类模型,全部遵循MIT开源许可协议。推理模型GLM-Z1-32B-0414实测推理速度达200 tokens/秒&…

第32讲:卫星遥感与深度学习融合 —— 让地球“读懂”算法的语言

目录 🔍 一、讲讲“遥感+深度学习”到底是干啥的? ✅ 能解决什么问题? 🧠 二、基础原理串讲:深度学习如何“看懂”遥感图? 🛰 遥感图像数据类型: 🧠 CNN的基本思路: 🧪 三、实战案例:用CNN对遥感图像做地类分类 📦 所需R包: 🗂️ 步骤一:构建训…

【多线程5】面试常考锁知识点

文章目录 悲观/乐观锁挂起等待锁/自旋锁偏向锁轻量级/重量级锁锁升级CASCAS引发的ABA问题解决方案 原子类 公平/不公平锁可重入锁ReentrantLock读写锁 Callable接口 这里的“悲观”“乐观”“挂起等待”“自旋”“轻量级”“重量级”“公平”“非公平”“可重入”仅代表某个锁的…

第三届世界科学智能大赛新能源赛道:新能源发电功率预测-数据处理心得体会1

看懂数据 比赛数据说明: 文档(报名之后可以下载)大小操作初赛测试集.zip94MB下载初赛训练集.zip632MB下载output.zip145KB下载 任务和主题 AI新能源功率预报:根据历史发电功率数据和对应时段多类别气象预测数据,实…

【云馨AI-大模型】2025年4月第三周AI领域全景观察:硬件革命、生态博弈与国产化突围

一、硬件算力突破点燃多智能体时代 谷歌在4月12日Cloud Next大会发布第七代TPU Ironwood,单芯片算力达4614 TFLOPs,较前代内存提升6倍,专为AI推理场景优化。配合发布的Gemini 2.5 Flash模型通过"思考"功能实现成本优化&#xff0c…

第3章 垃圾收集器与内存分配策略《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》

第3章 垃圾收集器与内存分配策略 3.2 对象已死 Java世界中的所有对象实例,垃圾收集器进行回收前就是确定对象哪些是活着的,哪些已经死去。 3.2.1 引用计数算法 常见的回答是:给对象中添加一个引用计数器,有地方引用&#xff0…

超详细VMware虚拟机扩容磁盘容量-无坑版

1.环境: 虚拟机:VMware Workstation 17 Pro-17.5.2 Linux系统:Ubuntu 22.04 LTS 2.硬盘容量 虚拟机当前硬盘容量180G -> 扩展至 300G 3.操作步骤 (1)在虚拟机关机的状态下,虚拟机硬盘扩容之前必…

HarmonyOS:1.4 - HarmonyOS应用程序框架基础

判断题 1.在基于Stage模型开发的应用项目中都存在一个app.json5配置文件、以及一个或多个module.json5配置文件。 正确(True) 2.一个应用只可以包含一个UIAbility组件。 错误(False) 3.Background状态在UIAbility实例销毁时触发。可以在onDestroy()回调中进行系统资源的释…

HTTP HTTPS RSA

推荐阅读 小林coding HTTP篇 文章目录 HTTP 80HTTP 响应码1xx:信息性状态码(Informational)2xx:成功状态码(Success)3xx:重定向状态码(Redirection)4xx:客户端…

ORACLE数据库转国产阿里OceanBase数据库

1.BLOB类型修改 将接口内oracle.sql.BLOB改为java.sql.Blob 2.REGEXP_LIKE 判断函数正则表达式中字符转义问题 OB的正则表达式使用的是标准的Linux模式,oracle是黑盒子,在处理部分转义符([])的时候, Oracle无需使用转义符,OB务必使用转义符,加/转义处理,例如在regexp_like(t…

STM32的三种启动方式

目录 一、从主闪存存储器启动(Main Flash Memory) 二、从系统存储器启动(System Memory) 三、从内置SRAM启动(Embedded SRAM) 一、从主闪存存储器启动(Main Flash Memory) >&g…