【我的渲染技术进阶之旅】【AR研究】第一集—AR的基本原理科普

article/2025/8/17 23:01:25

在这里插入图片描述
AR,即增强现实技术,它的出现意味着能将计算机技术带到现实当中来,能使科技更“贴近”人们的现实世界的生活,被誉为可能是代替智能手机的,未来的下一个平台。

作为永远要离未来更近一些的设计师,当然需要了解时下最新的技术和热点,于是和周围小伙伴们展开了将AR作为课题的系列研究,作为技术储备。和大家分享下AR的基本定义和工作原理部分。

一、AR的基本定义

AR是对现实的增强,是虚拟影像和现实影像的融合。

AR技术具有虚拟现实融合、实时交互、三维注册三大特征。其中三维注册是其中最重要的特征。

三维注册(也叫三维配准)强调计算机生成物和现实环境的对应关系,虚拟的物体和现实环境的三维位置和大小必须完美融合。

观察科技演进的历史会发现从一开始的工业革命,到现在的信息技术革命以及正在蓬勃发展必定会兴起的认知革命,科技的发展其实意味着现实和虚拟的更好融合。而AR正是这种融合时代的代表性技术。

AR/VR技术的起源,可追溯到Morton Heilig在上个世纪五、六十年代所发明的Sensorama Stimulator。他是一名哲学家、电影制作人和发明家。他利用在电影上的拍摄经验设计出了图中这个叫Sensorama Stimulator的机器。Sensorama Stimulator可使用图像、声音、香味和震动,让用户感受在纽约布鲁克林街道上骑着摩托车风驰电掣的场景。这个发明在当时非常超前。

以此为契机,AR也展开了它的发展史。来看看各时期AR的发展里程碑吧。

很多人对于VR、AR、MR等概念还是处于混淆的状态,那么到底如何区别这三者呢?

AR和VR的区别,除了从硬件和技术等方面有区别,归根到底是要看到底是对现实的增强还是完全的虚拟化。

如若是让人们完全投入进入虚拟世界的沉浸感,则是VR。(如超级学校霸王电影里面2人进入街机里面玩超级玛丽)

如若是让虚拟的事物和现实接轨,则是AR。(如超级学校霸王电影里面虚拟世界的英雄形象进入真实世界惩罚坏人)

而MR则是让2者完全的融合,“实时的”进行虚拟和真实的交互。是最终的发展形态。混合现实是实现虚拟和现实的完美融合。

目前的MR和AR可以从设备上来进行区分,有以下2点不同。

比如如果虚拟物体的位置能够随设备而移动,做到随身随行,则是MR的实现,如果不能移动,定位在三维世界中,你离开了,虚拟物体还是摆放在刚刚的位置,则是AR。而MR的最高形态,虚拟和现实已经融为一体,有一致的体验,不容易被区分了。

二、AR的工作原理

在介绍AR的工作原理之前,我们先通过一个例子,让大家有一个简单的认识。

在2009年2月的TED大会上,帕蒂•梅斯(Pattie Maes)和普拉纳夫•米斯特莱(Pranav Mistry)展示了他们研发的AR系统。该系统属于麻省理工学院媒体实验室流体界面小组的研究成果之,他们称之为SixthSense(第六感)。它依靠众多AR系统中常见的一些基本元件来工作:摄像头、小型投影仪、智能手机和镜子。

可以点击这个,查看她的研究

上图是一个典型的AR系统结构,由虚拟场景生成单元以及显示器和头盔等交互设备构成。其中虚拟场景生成单元负责虚拟场景的建模、管理、绘制和其它外设的管理;显示器负责显示虚拟和现实融合后的信号;头部跟踪设备跟踪用户视线变化;交互设备用于实现感官信号及环境控制操作信号的输入输出。

首先摄像头和传感器采集真实场景的视频或者图像,传入后台的处理单元对其进行分析和重构,并结合头部跟踪设备的数据来分析虚拟场景和真实场景的相对位置,实现坐标系的对齐并进行虚拟场景的融合计算;交互设备采集外部控制信号,实现对虚实结合场景的交互操作。系统融合后的信息会实时地显示在显示器中,展现在人的视野中。

为了保持现实和虚拟的对准,跟踪和识别的技术就显得尤为重要。

检测和识别技术包含图像匹配和识别以及语义检测和识别这2点。

跟踪定位技术则分为基于硬件的定位技术和基于视觉的定位技术2点。

其中基于视觉的跟踪定位技术最核心的技术,也是主流技术。

基于视觉的三维配准包含了这3个发展阶段。

1

二维图片定位

二维图片定位是指基于平面物体的识别和定位,比如现在市场上很常见的一些AR技术图书,又或则是APP应用。这种技术是将现实世界的一张图片作为定位的锚点,计算机生成的虚拟物体会围绕这个定位点,融入现实环境中。

目前基于图片定位的AR是最为成熟的技术,广泛运用在各个地方。目前用在儿童教育图书方面,会比较多。

比如下面的科学跑出来系列图书

2

三维物体定位

二维图片的自然扩展当属三维物体。一些简单的规则三维物体,比如圆柱状可乐罐,同样可以作为虚实结合的载体。对于一些特定的非规则物体,比如人脸,由于有多年的研究积累和海量的数据支持,已经有很多算法可以进行实时精准对齐。比如faceU应用(被人脸识别后,吐彩虹的川普)

3

基于SLAM的三维环境定位

对于三维环境的动态的实时的理解是当前AR在技术研究方面最活跃的问题。其核心就是最近火热的“即时定位与地图构建”(SLAM,SimultaneouslyLocalization And Mapping),在无人车,无人机和机器人等领域也起着核心作用。AR中的SLAM比其他领域中一般难度要大很多,主要是因为AR赖以依存的移动端的计算能力和资源比起其他领域来说要弱很多。目前在AR中还是以视觉SLAM为主,其他传感器为辅的局面,尽管这个情况正在改变。

标准的视觉SLAM问题可以这么描述为:把你空投到一个陌生的环境中,你要解决“我在哪”的问题。这里的“我”基本上等同于相机或者眼睛(因为单目,即单相机,请把自己想象成独眼龙),“在”就是要定位(就是localization),“哪”需要一张本来不存在的需要你来构建的地图(就是mapping)。你带着一只眼睛一边走,一边对周边环境进行理解(建图),一边确定在所建地图中的位置(定位),这就是SLAM了。换句话说,在走的过程中,一方面把所见到(相机拍到)的地方连起来成地图,另一方面把走的轨迹在地图上找到。


http://chatgpt.dhexx.cn/article/5xjSmlXo.shtml

相关文章

AR技术简谈:相关原理,技术应用以及设备推荐,带你感受虚拟信息与真实世界巧妙融合。

1.AR技术原理 AR技术是一种增强现实技术,利用计算机生成的模拟信息与真实世界进行混合叠加,从而创造出新的虚拟图像。AR技术可以广泛应用于多媒体、智能交互、传感等领域,例如在游戏、教育、医疗、建筑、旅游等领域中,通过AR技术可…

搭建nutz框架实现登录登出

创建web项目 把jar粘贴到lib目录下 全选build path 新建类 类名为MainModule 添加模块类自动扫描 web.xml文件 注意< display-name> 和< parm-name>标签 需要修改 <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns:xsi&q…

使用nutz框架,找不到入口函数,访问Url报404

案例 今天在跟着nutz框架教程去配置demo时&#xff0c;发现访问URL找不到入口函数&#xff0c;出现了Search mapping for path/user/count : NOT Action match 异常&#xff0c;据nutz文档介绍&#xff0c;找不到方法, 一般是At写错或者UserModule的package写错,导致映射不到或…

Nutz框架-- Cnd条件使用原生sql

案例 今天接到一个临时的业务需求&#xff0c;做一个简单的过滤作为临时业务需要使用一两天&#xff0c;于是想到在原有的Cnd条件上加上一个Not like 进行过滤&#xff0c;但是发现现有Cnd条件查询好像满足不了 解决方案 使用Nutz框架中的Static类来实现自定义sql与Cnd.and()拼…

对于nutz框架的学习入门级使用——配置

准备&#xff1a;eclipse&#xff0c;jdk8.0&#xff0c;tomcat8.5&#xff0c;nutz的jar包 第一步&#xff1a;新建一个项目 第二步&#xff1a;导入需要的包&#xff08;数据的jar包也会同时导入&#xff09; 第三步&#xff1a;新建一个Mainmodule的类&#xff0c;并写入如…

Nutz框架crud持久层操作指南

Nutz框架 nutz框架是一个轻量级的ssh框架&#xff0c;因为它有spring的职责&#xff0c;它又负责了hiberate的持久&#xff0c;以及struct的大servlet功能。以及提供了一系列轻便的工具&#xff0c;所以我们能很容易的只专注于业务&#xff0c;此篇在于介绍一下nutz框架持久层…

开源框架Nutz开发者访谈

Nutz是SSH的替代方案,它是一组轻便小型的框架的集合, 各个部分可以被独立使用。 Nutz 的目标是: 在力所能及的情况下,最大限度的提高Web开发人员的生产力 “是的,提高生产力是这个框架唯一的目标。 就像 Java 设计之初,考虑最多的是程序员的易用性和运行时效率的权衡, …

Nutz框架学习(一)

dao层学习 1.创建 POJO(java bean实体类) 在 Java 项目中建立一个POJO&#xff0c;比如 com.zzh.demo.Person : package com.dodoke.bean;import java.util.Date;import org.nutz.dao.entity.annotation.*;Table("t_test") // 声明了Test对象的数据表 public …

Nutz框架的简单使用

Q&#xff1a;什么是Nutz。 A&#xff1a;类似于SSH的一个框架。官网http://www.nutzam.com/ Q&#xff1a;Nutz怎么读。 A&#xff1a;读作 “纳特Z&#xff08;Z发重音&#xff09;”。Nutz 的 Nut 是因为霍金的《果壳中的宇宙》是 zozoh 最喜欢的一本书之一。 Z 是 zozoh 小…

nutz mysql 关键词_nutz框架简单入门

最近几年随着python语言的崛起&#xff0c;java在web方面被各种脚本语言诟病效率低下&#xff0c;这也是事实&#xff0c;java在运用第三方类库(框架)开发时&#xff0c;效率确实很低下。麻烦的框架整合&#xff0c;复杂的配置文件都是拦路虎&#xff0c;不过今天我要推荐的nut…

给大家推荐一个非常非常非常好用的java轻量级框架-Nutz永远滴神

或许以后再也用不到了&#xff0c;写篇文章纪念一下吧~ 前段时间离职来到了现在的新公司&#xff0c;奔向了光明的未来&#xff0c;唯一让我留恋的就是原本使用的框架—Nutz了&#xff0c;这个框架相对于现在的mybatis&#xff08;过段时间可能会“mybatis真香”&#xff09;来…

【Nutz】Nutz起步

一、Nutz 是一组轻便小型的框架集合&#xff0c;可以极大程度上提高开发人员的生产力&#xff0c;更多内容请点击访问Nutz官网。Nutz主要包括以下几个模块&#xff1a; DAO&#xff1a;针对JDBC进行了薄封装&#xff0c;事务模板&#xff0c;无缓存IoC&#xff1a;JSON风格配…

【工具】——远程协助(向日葵)

在烈日炎炎的午后&#xff0c;一片片金黄金黄的田野中&#xff0c;要是能够看到上图这样的风景&#xff0c;那是多么的赏心悦目啊 &#xff0c;并且身旁有佳人&#xff0c;那是何等的荣幸之至。当然&#xff0c;今天的主体就是向日葵&#xff0c;一个远在千里却近乎咫尺之间的桌…

Windows系统自带远程桌面和远程协助怎么连接?

随着IT技术的发展和远程办公的兴起&#xff0c;在日常工作中&#xff0c;远程桌面和远程协助等功能已经成为很多用户需要掌握的技能之一。而对于使用Windows系统的用户来说&#xff0c;Windows系统自带的远程桌面和远程协助功能&#xff0c;更是令人欣喜的利器。下面我们就来一…

Windows实用小工具–Windows远程协助

在企业里&#xff0c;有的公司办公区域比较大&#xff0c;电脑有问题一般都是通过远程、徒步、电话等方式来解决&#xff0c;对于远程协助解决问题&#xff0c;我们首先想到的会是如何连接对方的电脑&#xff0c;相信大家都已经使用过很多的软件了吧&#xff01;当然还有Micros…

远程协助软件

向日葵 https://sunlogin.oray.com/ anydesk https://anydesk.com/zhs/downloads/windows?dvwin_exe ToDesk https://www.todesk.com/ 快速助手 中文&#xff1a;https://learn.microsoft.com/zh-cn/windows/client-management/quick-assist 英文&#xff1a;https://l…

常见的远程协助软件简介

1.RayLink远程控制软件 RayLink是一个支持多系统多设备间相互远程控制的软件&#xff0c;是具有远程制作、远程办公、远程游戏、远程协助等需求的IT技术、游戏玩家、网络办公等这些人的最佳选择。通过使用RayLink&#xff0c;可随时随地远程控制其他电脑或手机&#xff0c;远程…

9款免费的Windows远程协助软件

首先,如果网友和你在同一个局域网中你可以使用的就是Windows 的远程桌面功能。如果你不在局域网中,并且只有一个Internet 连接。你可以通过其他的远程协助软件从互联网中得到网友的帮助。这里我们列出九款免费的Windows远程协助软件。 1。 Team Viewer:TeamViewer是一个既简…

windows 域环境应用---VNC远程协助工具的使用

域环境中&#xff0c;少不了远程协助工具&#xff0c;这可以替管理员省掉许多跑腿的事。<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /> 今天我就介绍一下远程协助工具中的一款 real VNC. 此工具有三个软件&#xff0c; vnc se…

远程协助软件的使用

目录&#xff1a; 一、TeamViewer 二、QQ远程协助 三、向日葵 四、Todesk 1、TeamViewer 下载地址&#xff1a;下载 Windows 版 TeamViewer&#xff0c;即可实现远程桌面访问和协作立即下载 TeamViewer&#xff0c;连接远程桌面&#xff0c;为在线会议和视频会议提供远程支…