增强现实与虚拟现实:硬件、应用及挑战
立即解锁
发布时间: 2025-09-02 00:19:41 阅读量: 8 订阅数: 21 AIGC 

### 增强现实与虚拟现实:硬件、应用及挑战
#### 1. 硬件与基础设施的支持
从 20 世纪 90 年代中期到 21 世纪 00 年代后期,硬件领域的三项关键进步极大地推动了增强现实(AR)和虚拟现实(VR)系统的创建,它们分别是图形处理单元(GPU)、全球定位系统(GPS)以及互联网和移动网络。
##### 1.1 图形处理单元(GPU)
为了提供沉浸式体验,AR/VR 应用通常需要比广播视频更高的分辨率和刷新率,更不用说丰富的交互还需要实时响应。如今的头戴式显示器(HMD)最低要求是全高清(1080p)和 60Hz,理想情况下,每只眼睛的分辨率应为 16K 以上,刷新率为 16KHz。如此大量的数据仅靠 CPU 很难处理,这也导致早期 AR/VR 系统的发展缓慢。
20 世纪 80 年代推出的 IBM 单色显示适配器(MDA)是第一款独立的视频显示卡,它解决了构建自定义硬件设备链来渲染计算机生成图像的麻烦。其工作方式与 Sutherland 的图形管道类似,开启了现代图形处理单元(GPU)的时代,此后 GPU 一直是包括 AR/VR 在内的可视化应用的核心。
图形管道通常使用光栅化技术,该过程可分为几何阶段和像素化阶段。
- **几何阶段**:接受输入顶点,2D 场景使用屏幕相对坐标,3D 场景使用世界相对坐标。在 3D 渲染时,还需要提供相应的投影矩阵。输入的顶点列表和可选矩阵从主系统(CPU)内存传输到设备(GPU)内存,然后传递给顶点着色器。
- **顶点着色器**:可编程步骤,计算每个提供的顶点坐标的输出位置,并可以对每个顶点进行数值运算。在 3D 渲染中,通常是将每个顶点与提供的视图和投影矩阵相乘。输出的实际顶点本身可以传递给其他可选着色器,最后到达图元组装步骤。
- **裁剪**:在顶点着色器和图元组装之间的中间步骤,为避免在屏幕外组装形状,在图元组装之前进行裁剪,方式与 Sutherland 系统中的裁剪分割器相同。
- **图元组装**:将顶点从一组点转换为连接的几何网格。有三种定义明确的图元(点、线、三角形)和一种已移除的图元(四边形)。用于连接顶点的图元可以在输入阶段或顶点着色器中提供,顶点按提供的顺序连接。
- **光栅化**:几何阶段的最后阶段,每个图元被分解为多个片段,每个片段本质上代表一个像素。此时可以看到拥有多个专用处理核心的好处,因为每个核心可以处理一个片段。
- **像素化阶段**:从片段着色器开始,与顶点着色器类似,片段着色器是可编程步骤,对每个片段进行操作。提供的程序指示 GPU 如何为每个片段着色,光照、纹理和其他材质属性都由片段着色器控制。着色器将着色后的片段输出到混合和测试步骤。
- **混合和测试**:不是一个特定步骤,而是一系列操作,用于清理着色后的图元。由于单个像素可能存在多个片段,此步骤主要是协调每个片段在该像素上的不同输出。例如,在 2D 空间中,一个图元可能在另一个图元后面,如两个重叠的矩形,可以进行深度测试以隐藏最深的矩形,或者在两个透明矩形的情况下启用混合以混合颜色,这取决于管道初始化时的配置。
- **最终输出**:混合和测试步骤完成后,按像素输出写入最终内存缓冲区,然后发送到显示器,标志着一帧图像生成过程的结束。这个管道是自包含的,因此高度专业化的硬件(如独立视频卡)可以对管道过程进行硬件编码以实现高效率。由于每个步骤独立于前一个步骤,因此可以在前一帧渲染过程完全完成之前开始渲染下一帧,从而大大提高帧率。
下面是图形管道流程的 mermaid 流程图:
```mermaid
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(输入顶点):::process --> B(顶点着色器):::process
B --> C(裁剪):::process
C --> D(图元组装):::process
D --> E(光栅化):::process
E --> F(片段着色器):::process
F --> G(混合和测试):::process
G --> H(最终输出):::process
```
##### 1.2 全球定位系统(GPS)
全球定位系统(GPS)是在冷战期间开发的,用于提供可靠的导航系统,并于 1995 年全面投入使用。它包括多颗位于约 20,000 公里中地球轨道上的卫星,作为用户定位的三角测量信标。接收器单元需要与至少 3 颗不同的卫星保持视线。每颗卫星定期广播关于其位置(相对于地球)和星载时间的信息信标,GPS 接收器计算信号发送和接收之间的时间差。
最初,非军事用途的 GPS 精度被有意降低到 100 米以内,后来这一限制被取消,现在的 GPS 接收器精度可达到 30 厘米以内。差分 GPS(DGPS)可以进一步提高精度,它通过具有已知固定位置的参考站(工作方式与 GPS 接收器相同)来工作;辅助 GPS 则利用蜂窝基站来提高启动性能。
Steven Feiner 的巡回机器是早期使用 GPS 的有影响力的系统之一,它结合使用 DGPS 和陀螺仪作为主要定位方法,这种方法在 21 世纪 10 年代及以后仍被广泛应用。不过,该系统存在三个关键问题:显示器质量、用户定位质量和定位丢失。在户外环境中,太阳的亮度会大大超过大多数显示器的亮度,需要使用中性密度滤光片,这会影响颜色感知。此外,磁力计/倾角仪的累积误差也很明显,当 GPS 信号失去视线时,问题会更加严重。因此,AR 研究人员开始研究其他替代的用户定位方法,例如解决逆问题,即先找到虚拟对象的位置和方向,然后相对于用户显示它,而不是先找到用户再相对于用户显示对象。
##### 1.3 多用户网络
ARQuake 是最早支持多个用户同时使用的 AR 系统之一,它巧妙地利用了现有的支持多用户的商业应用 Quake。ARQuake 不使用传统的鼠标和键盘进行设备输入,而是根据用户的先前姿势将当前姿势转换为相应的鼠标和键盘输
0
0
复制全文
相关推荐









