XR技术体系浅析:VR、AR与MR的区别、联系与应用实践

作者:EQ 雪梨蛋花汤

本文是技术分享文档,浅析VR(虚拟现实)、AR(增强现实)、MR(混合现实)的定义、特性、技术演进路线,并分析AR中的OST(光学透视)与VST(视频透视)两大实现路径,及其与MR技术的融合趋势。


第一章:XR概念总览与技术谱系

XR(Extended Reality)是虚拟与现实空间融合的综合技术名,包括VR、AR和MR。其本质是用数字信息扩展或更新现实感知,实现用户与虚拟内容、现实场景的高度融合和交互。

1.1 基本概念介绍

  • VR(虚拟现实):构建纯虚拟的世界,用户被完全隔绝于现实世界,中心是“深度沉浸”。
  • AR(增强现实):将虚拟元素、信息、动画在现实环境中加以重新视觉扩展,重点是“现实上的增强”。
  • MR(混合现实):将虚拟世界与现实世界规划为一个可以相互作用、环境共享的空间,其核心是“虚实融合、物理交互”。

在这里插入图片描述

1.2 XR技术联系

XR三类技术(VR、AR、MR)在硬件架构、数据流、显示技术、交互方式方面各有侧重,但又存在强关联性。如下图所示:
在这里插入图片描述

1.3 XR发展脉络与趋势

XR并非单一技术进化结果,而是由以下几条技术路径交汇而成:

  • 计算平台:从PC -> 移动端 -> 边缘计算 -> 云渲染;
  • 感知能力:由视觉为主扩展至多模态传感器(IMU、深度、语音);
  • 网络演进:从4G到5G/6G推动了低延迟XR体验;
  • 人机交互:从手柄到裸手再到脑机接口探索。

第二章:AR技术分析:OST与VST方案

增强现实技术的核心是“在现实的基础上进行信息扩展”。根据环境采集和展示方式,分为OST和VST两类基本实现路径。

2.1 OST(Optical See Through)原理与特性

OST通过半透镜直接观看现实世界,将虚拟图像投射于用户眼前。是一种光学线路双路并行的设计。

技术特点
  • 现实图像无需处理,無延迟。
  • 虚拟图像需要出光光路与观感光路完美对齐,否则有错位感。
  • 因光学透明,无法做好虚实遮挡,虚拟物体很难挡住现实物体。
工作流程

在这里插入图片描述

应用特征
  • 更适合室外强光场景下的信息提示。
  • 通常使用空间定位技术进行图像锚定。
  • 对显示器亮度与视场角要求较高。

2.2 VST(Video See Through)原理与特性

VST方案采用摄像头拍摄现场环境,通过应用程序进行虚拟图像结合和添加,最后返回到显示屏幕。

技术特点
  • 无光学通道,所有观看内容由数字编辑。
  • 可精确控制虚拟遮挡,进行深度挖掘。
  • 对硬件和后端处理性能要求高,容易造成延迟。
数据流基本流程

在这里插入图片描述

应用特征
  • 适合需要复杂交互或遮挡效果的增强现实。
  • 室内场景表现优于OST。
  • 支持与AI视觉分析、SLAM等系统结合。

2.3 OST与VST技术格式对比

组合项OST(光学透视)VST(视频透视)
环境观看路径光学直视数字转换
虚实遮挡效果不可精确控制可完全支持深度遮挡
延迟极低/无有延迟(取决于系统效率)
补光、带宽光影易变可由后端调整
实现难点光学对齐、视觉校准摄像头同步、图像畸变矫正

2.4 AR内容的空间锚定机制

AR体验核心在于“稳定”的虚拟物体放置,这依赖于锚定技术:

  • 图像锚定(Image Anchoring):识别预定义图案,如海报、书本等;
  • 平面锚定(Plane Tracking):自动识别水平/垂直平面;
  • 空间锚定(World Anchors):记录某一三维位置,便于回访。

ARCore 是 Google 推出的用于打造增强现实体验的平台。ARCore 利用不同的 API 让您的手机能够感知其环境、理解世界并与信息进行交互。其中一些 API 在 Android 和 iOS 上提供,以实现共享 AR 体验。

ARCore 的运动跟踪技术使用手机的摄像头来识别兴趣点(称为特征),并跟踪这些点随时间的移动情况。ARCore 会综合考虑这些点的移动和手机惯性传感器的读数,确定手机在空间移动时的位置和方向。
除了识别关键点之外,ARCore 还可以检测平坦的表面(例如桌子或地板),还可以估算周围区域的平均光照强度。这些功能相结合,让 ARCore 可以构建自己对周围世界的理解。

当您的手机在现实世界中移动时,ARCore 会使用视觉SLAM来理解手机相对于周围环境的位置。ARCore 会检测捕获的摄像头图像中视觉上不同的特征(称为特征点),并使用这些点来计算其位置变化。这些视觉信息会与设备 IMU 的惯性测量结果相结合,以估算摄像头相对于周围世界的姿态(位置和方向)。
在这里插入图片描述
环境识别:
在这里插入图片描述


第三章:VR技术结构与基础实现

虚拟现实是构建一个完全由计算机生成的三维空间,用户沉浸其中,通过交互装置进行导航、交互、观察等操作。该系统核心是“沉浸性”与“交互性”的结合。

3.1 VR系统构成模块

  • 空间追踪系统:负责获取头部和手部的位置变化,实现视角跟踪。
  • 图形渲染模块:由游戏引擎(如Unity)实时生成虚拟世界图像。
  • 音频系统:实现3D空间音效渲染,增强沉浸感。
  • 交互系统:支持控制器输入、手势操作、眼动跟踪等。

3.2 虚拟场景设计原则

  • 一致性:用户行为与视觉反馈之间保持一致。
  • 响应性:快速响应用户操作,避免延迟感知。
  • 沉浸性:通过视觉、听觉、触觉构建完整虚拟空间。
  • 导航性:提供良好的移动与空间感知机制,如传送、摇杆、手势位移等。

3.3 VR交互方式

  • 空间控制器:按键+空间定位。
  • 手势识别:摄像头识别用户手部动作。
  • 语音识别:语义命令驱动行为。
  • 眼动追踪:焦点驱动选择与界面互动。

3.4 VR图形渲染流水线详解

现代VR图像通常由游戏引擎(如Unity/Unreal)根据以下步骤生成:

  1. 用户位置更新(传感器);
  2. 构建视角投影矩阵;
  3. 渲染左右眼视图;
  4. 图像畸变矫正;
  5. 推送至屏幕显示。

第四章:MR核心机制与VST融合路径

混合现实不仅强调在现实世界中加入虚拟内容,更要求虚拟内容与现实环境的物理属性发生交互,例如遮挡、碰撞、共享空间等。

4.1 MR实现基础

MR通常在VST的基础上增加以下模块:

  • 空间定位与建图(SLAM):实时构建用户所处空间地图。
  • 深度传感与理解:利用结构光、ToF或AI视觉理解环境深度。
  • 虚实遮挡融合:判断虚实物体位置关系实现正确遮挡。
  • 交互管理:响应手势、眼动、语音命令,驱动虚拟物体行为。

4.2 MR与VST的融合逻辑

  • MR继承VST的图像路径,增强其深度感知能力。
  • 使用空间锚点与真实世界场景构建虚拟映射。
  • 实现双向交互(如“碰撞虚拟墙体”或“用手推动虚拟按钮”)。

4.3 虚实遮挡技术原理

MR核心在于虚拟物体正确“遮挡”现实对象,或被现实对象遮挡。这需要:

  • 精确获取真实世界深度图;
  • 建立真实物体的三维包围盒(bounding box);
  • 在渲染管线中依据Z-buffer处理遮挡优先级。

在这里插入图片描述

4.4 MR场景中的物理交互

在MR环境中,虚拟物体不仅要“看上去存在”,还需“行为上真实”。这涉及:

  • 虚拟物体受真实物理世界影响(如地面重力、碰撞);
  • 虚拟与现实的互动(如推门、拿杯子);
  • 跨模态输入:语音控制虚拟助手、手势拖动现实界面。

总结与推荐

本文系统梳理了XR技术的核心内容,重点解析了VR、AR、MR的定义及实现方案,特别是AR的OST与VST技术路线和MR的融合机制。
希望能帮助你全面理解XR技术的全貌与应用趋势。

如果你想深入学习XR相关技术,推荐关注我的专栏:

  • 我的XR开发记录

不定期分享XR开发的原创文档。包含但不限于3D、AR、VR相关内容

  • VR 360°全景视频开发

专栏内容涵盖安卓原生VR播放器开发、Unity VR视频渲染与手势交互、360°全景视频制作与优化,以及高分辨率视频性能优化等实战技巧。敬请关注每周更新的技术分享!

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

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

相关文章

R语言入门课| 05 一文掌握R语言常见数据类型

视频教程 大家可以先做一做R语言基础小测验,看看自己是否需要跟我们5.5h入门R语言的课程。 先上教程视频,B站同步播出: https://www.bilibili.com/video/BV1miNVeWEkw 完整视频回放和答疑服务可见:5.5h入门R语言 本节课程视频…

vRDMA 发布,助力云上 VPC 内高性能通信

资料来源:火山引擎-开发者社区 近日,火山引擎基于部分云服务器实例规格邀测发布 vRDMA 特性,提供云上 VPC 内大规模 RDMA 加速能力,可兼容传统 HPC 应用、AI 应用以及传统 TCP/IP 应用,降低大众化场景的适配门槛&#…

Win10安装dify

一、win10虚拟化设置,控制面板中开启如下三个服务 二、检查确认wls服务开启 设置自动启动并启动 确认服务开启 bcdedit 是否为auto,如果不是,设置为auto bcdedit /set hypervisorlaunchtype autocpu是否为虚拟化 更新wsl wsl --update二 …

【ai学习笔记】GitLab

CI/CD(持续集成/持续交付)是现代软件开发中的关键实践,通过自动化工具可以大幅提升开发效率和软件质量。下面为你介绍CI/CD的核心概念、常用工具以及示例配置: 1. CI/CD 核心概念 持续集成(CI)&#xff1…

Solidity 从 0 到 1 |Web3 开发入门免费共学营

开启你的 Web3 开发之旅,从 Sonic 开始! 想进入区块链开发的世界,却不知道从哪里开始?选择对的语言和平台,才能事半功倍。 Solidity 是 Web3 中最主流、最通用的智能合约开发语言,被广泛应用于以太坊及其…

【unitrix】 4.4 类型级整数比较系统(cmp.rs)

一、源码 这段代码实现了一个类型级别的整数比较系统,允许在编译时进行整数比较操作。它定义了一套类型来表示比较结果,并为不同类型的整数实现了比较逻辑。 use core::cmp::Ordering; use core::default::Default; use crate::sealed::Sealed; use cr…

2025年渗透测试面试题总结-2025年HW(护网面试) 14(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 1. SQL注入原理 💥 2. XXE攻击(XML外部实体注入) 🧩 3. SQ…

Android开发根据滑动距离标题栏进行渐变

Android开发根据滑动距离标题栏进行渐变 假设滑动控件是NestedScrollView。 先监听NestedScrollView的滑动距离: nslv_preview_me.setOnScrollChangeListener(object :NestedScrollView.OnScrollChangeListener{override fun onScrollChange(v: NestedScrollView…

高中成绩可视化平台开发笔记

高中成绩可视化平台(1) 一、项目概述 本系统是一个基于 PyQt5 和 Matplotlib 的高中成绩数据可视化分析平台,旨在帮助教师快速了解学生成绩分布、班级对比、学科表现等关键指标。平台支持文科与理科的数据切换,并提供多个维度的图…

自动化按需导入组件库的工具rust版本完成开源了

背景 当我为每个Vue项目使用ui组件库的时候,都会使用按需导入的方式来使用ui组件库。但是每次按需导入,不可避免的就需要做以下三步。我们以element plus ui组件库为例。 1. 安装依赖 第一步,当然是需要安装依赖。命令如下: pnpm add unp…

Linux内核中TCP分段的核心机制:tcp_fragment函数解析

引言:TCP分段的必要性 在TCP/IP协议栈中,MSS(最大分段大小) 限制了单次传输的数据量。当应用层发送的数据超过当前路径的MSS时,内核必须执行分段操作。tcp_fragment函数正是Linux内核中处理TCP分段的核心机制,它巧妙地在协议合规性、内存安全和性能效率之间取得平衡。 一…

【赵渝强老师】OceanBase OBServer节点的SQL层

OceanBase OBServer节点的SQL层将用户的SQL请求转化成对一个或多个Tablet的数据访问。SQL层会按照以下顺序经过一系列组件来处理一个SQL: Parser -->Resolver-->Transformer-->Optimizer-->CodeGenerator-->Executor。视频讲解如下 【赵渝强老师】O…

从“高配”到“普惠”,黑芝麻智能携手Nullmax打造辅助驾驶主流量产方案

近日,黑芝麻智能携手Nullmax打造的辅助驾驶主流量产方案正式发布。该方案面向8-15万元级别主流车型,基于单颗黑芝麻智能武当C1236跨域计算芯片,集成Nullmax全栈自研的软件技术架构,结合领先的视觉感知算法,打造高性能辅…

信息安全认证体系全解析:从资质证明到行业准入的实践指南

Hello!大家好,小编是一名专注IT领域的资深探索家,大家发现了吗?现在刷招聘软件,国企安全岗必标 "CISP 优先",外企招聘悄悄写着 "CISSP 加分"—— 这些带字母的证书到底是啥&#xff1f…

优雅地创建实体类——Builder 链式调用

我们来看以下的代码。改造前构造实体类用重载构造器或用 setter 对变量进行赋值,一旦变量变多则需要对每个变量进行 set 赋值,并且有可能会赋值错对象。 private static void test() {//1.构造器赋值Task task1 new Task("2023000000009439"…

如何轻松将照片从 iPhone 传输到 Android?

从 iPhone 换到 Android 手机后,你肯定不想丢掉珍贵的照片回忆吧?好在,本文分享了 6 种有效的解决方案,教你如何轻松地将照片从 iPhone 传输到 Android。 第 1 部分:如何通过 iReaShare Phone Transfer 将照片从 iPhon…

AI编程:[体验]存量微服务架构下植入WebSocket的“踩坑”与“填坑”

一、核心需求 功能需求:用户可以通过语音与AI对话,并实现类似ChatGPT的实时交互(流式响应,打字机效果)技术需求:在现有微服务架构中进行扩展(SpringCloud) 二、技术盲点 陌生领域 …

uniapp事件onLoad区分大小写

区分大小写。不然会不起作用。onLoad方法中的功能均不会被执行。 除了功能逻辑要检查外。大小写是要认真检查的一部分

《打破微前端困局:样式冲突与资源隔离破局指南》

微前端架构凭借其独特优势,正逐渐成为众多大型项目的首选架构模式。它将一个庞大的前端应用拆解为多个相对独立的子应用,每个子应用可以独立开发、部署和维护,极大地提升了开发效率与团队协作的灵活性。然而,随着微前端架构的广泛…

OpenCV——边缘检测

边缘检测 一、边缘检测二、边缘检测算子2.1、Sobel算子2.2、Scharr算子2.3、Laplacian算子 三、Canny边缘检测3.1、Canny边缘检测的步骤3.2、Canny算法的实现 一、边缘检测 边缘是指图像中像素的灰度值发生剧烈变化的区域: 图像中的边缘主要有以下几种成因&#x…