AR整体设计思路

简介: 【8月更文挑战第3天】AR整体设计思路。

AR整体设计思路
本套AR系统结合AR-SDK功能中的AR基点,实例化与仓库具有空间对应关系的虚拟模型。通过UDP与嵌入式AI运算单元进行连接,获取嵌入式AI运算单元扫描到的仓库信息,从而更新虚拟模型数据。AR端整体设计思路拓扑图如图所示。

AR端整体设计思路拓扑图
增强现实(Augmented Reality,AR)技术是一种实时计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术。这种技术的目标是在屏幕上把虚拟世界套在现实世界中并进行互动。
构建本套系统中的AR虚拟场景需要两个方面的信息:其一为仓库位置信息;其二为仓库中的“货物”信息。
(1)仓库位置信息:本套系统所采用的技术为高通Vuforia AR SDK的单图像识别技术,可在实验箱中找到一个AR识别的基准点,用此基准点实例化虚拟模型,将虚拟模型与实验箱仓库在空间上进行一一对应。
(2)仓库中的“货物”信息:仓库中的“货物”信息可通过嵌入式AI运算单元识别得到,AR端与嵌入式AI运算单元建立连接以获取这些信息,这里考虑到了同一局域网下存在多个系统的情况,并且每个系统的IP地址具有唯一性,以UDP广播的形式,让嵌入式AI运算单元在“未连接”的状态下持续不断地向指定端口号广播本地IP与嵌入式AI控制单元的IP。
AR端在初始界面接收广播信息,并将所收到的信息进行处理,筛选出可连接的设备,以Button列表的形式呈现出来。当单击任意设备按钮时,在后台会将对应嵌入式AI运算单元的IP与嵌入式AI控制单元的IP进行提取并存储,方便后续发送操作指令。与此同时,进入AR识别场景,AR端初始界面如图所示。

AR端初始界面
在AR识别场景中,系统会自动调用手机摄像头,用手机摄像头扫描实验箱中指定位置的指定图像,实例化虚拟模型,同时在后台向嵌入式AI运算单元发送请求指令,请求仓库信息。嵌入式AI运算单元接收到指令后,调整机械臂姿势进行扫描,在扫描成功后,向AR端返回仓库信息,AR识别场景初始化界面如图所示。

AR识别场景初始化界面
AR场景中根据返回的仓库信息刷新虚拟模型,如图所示。

AR场景中根据返回的仓库信息刷新虚拟模型
本套系统有两种控制方式,一种为通过UI操作,另一种为通过拖动虚拟模型操作。两种控制方式均通过UDP发送命令给嵌入式AI控制单元,再由嵌入式AI控制单元对机械臂进行控制。
(1)UI控制:在主界面中,系统会自动进入横屏操作模式,单击右下角的复位按钮,机械臂可进行姿态复位。
这里应用的是Unity3D引擎中自带的UGUI,与机械臂进行通信的协议为UDP。UI发送操作指令,在场景中获取嵌入式AI控制单元的IP之后,将信息发送给嵌入式AI控制单元,从而控制机械臂。
(2)模型控制:在本系统中,实例化的模型为不同颜色的恐龙,恐龙的颜色由识别结果决定。每只恐龙都有随机的动作,这里应用的是Unity3D中的预设体和动画系统。
可以通过拖动恐龙实现位置移动的操作,应用Unity3D引擎的射线机制,模仿“背包”系统,将恐龙作为“货物”,并将恐龙站立的平台作为“背包”的栏位。同时调用动画系统,在手指点中某一只恐龙后,只播放“飞翔”的动画,手指离开恐龙后再随机播放动作。
这里进行拖动控制的协议同样为UDP,每只恐龙在实例化出来时均携带仓库信息。在恐龙被转移到空白栏位上后,系统会根据被拖动恐龙所携带的仓库信息和转移的栏位,发送操作指令给嵌入式AI控制单元,进而控制机械臂去抓取指定方块到指定位置。

相关文章
|
1月前
|
开发框架 前端开发 JavaScript
使用Angular构建大型企业级应用的技术探索
【8月更文挑战第11天】Angular凭借其强大的组件化开发能力、模块化系统、丰富的生态系统和静态类型检查特性,成为了构建大型企业级应用的理想选择。通过设计良好的架构、使用Angular CLI、组件化开发实践、合理利用服务、性能优化以及严格测试和调试等方法,可以高效地构建出高质量、可维护、可扩展的企业级应用。未来,随着Angular技术的不断发展和完善,相信它将在企业级应用开发领域发挥更加重要的作用。
|
4月前
|
JavaScript 开发者 UED
Angular 视图数据模型变化导致重新计算模板中的表达式的技术原理
Angular 视图数据模型变化导致重新计算模板中的表达式的技术原理
|
10月前
|
开发框架 JavaScript 前端开发
谈谈 Angular 的升级问题
谈谈 Angular 的升级问题
|
11月前
|
设计模式 存储 自然语言处理
Queries 设计模式:优化 Angular 应用开发
Queries 设计模式:优化 Angular 应用开发
|
11月前
|
JavaScript 前端开发 算法
Angular 版本演进史概述
Angular 版本演进史概述
|
机器人 vr&ar
案例25-AR,第三方服务,用户超级稳定耦合
案例25-AR,第三方服务,用户超级稳定耦合
案例25-AR,第三方服务,用户超级稳定耦合
|
机器人 vr&ar 数据安全/隐私保护
项目实战典型案例25——ar、第三方服务、用户三角形超级稳定耦合
项目实战典型案例25——ar、第三方服务、用户三角形超级稳定耦合
95 0
|
缓存 前端开发 JavaScript
「前端架构」Angular的13个主要好处和用例
「前端架构」Angular的13个主要好处和用例
|
监控 前端开发 JavaScript
「微前端架构」-Angular风格-第1部分
「微前端架构」-Angular风格-第1部分
angular3-单一页面的优势
angular3-单一页面的优势
80 0
angular3-单一页面的优势