【Vuforia+Unity】AR05-实物3D模型识别功能实现(ModelTarget )

2024-02-24 01:36

本文主要是介绍【Vuforia+Unity】AR05-实物3D模型识别功能实现(ModelTarget ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

不管是什么类型的识别Vuforia的步骤基本都是:

把被识别的物体转成图、立体图、柱形图,3D模型、环境模型,然后模型生成Vuforia数据库-导入Unity-参考模型位置开始摆放数字内容,然后参考模型自动隐藏-发布APP-识别生活中实物-数字内容叠加上去!

对于3D物体的识别,可以是虚拟的也可以是实物的,但是对于虚拟的三维模型意义不大,我们完全可以把三维模型放在屏幕上截一张图,以图片识别的方式召唤数字内容,不过在虚拟现实中或许有用。

因此本文探讨的技术路线主要是,生活中的实物被摄像头识别后,在对应的三维位置弹出数字内容。

经过探究得出技术路线:

1.首先把生活场景某个实物模型进行扫描成模型(这会用到一个APP)然后放入PC端的软件(vuforia-windows-modeltargetgenerator)生成Vuforia数据库

2.如果是自建模型直接放入PC端的软件(vuforia-windows-modeltargetgenerator)生成Vuforia数据库

3.如果上面2条都不想做,没条件,可以下载第三方生成模型的APP(Scaniverse\RealityScan\Luma)然后导出放在PC端的软件(vuforia-windows-modeltargetgenerator)生成Vuforia数据库

3.Vuforia数据库导入Unity

4.在Unity搭建ModelTarget ,选择模型数据库构建数字内容

咱们一步一步的说

1.实物扫描为模型-官方的3D物体扫描APP 

这个Vuforia官方APP叫 Creator App

1.1官方的3D物体扫描APP下载地址:

Tool Download | Engine Developer Portal



但是别高兴太早,这个APP对设备是有要求的:

 1.2这个APP对设备的要求

手机设备必须具有激光雷达扫描仪LIDAR不然不起作用,具体如下:Supported Versions | Vuforia Library

使用LiDAR:只有iPhone 12 Pro、iPhone 13 Pro、iPad Pro 11 英寸(第2 代和第3 代)和iPad Pro 12.9 英寸(第4 和第5 代)配备激光雷达扫描仪。

相关文章iPhone 12 Pro 的激光雷达能做哪些有趣的事? - 少数派

1.3 官方的3D物体扫描APP使用教程:


APP使用教程 Vuforia Creator App | Vuforia Library

2.实物扫描成3D模型-普通手机

 如果你没有这样的设备,只有普通手机,也有一个APP可以帮助我们快速把生活中实物扫描成3D模型!

推荐几个APP:Scaniverse\RealityScan\Luma

手机帮我我们建模后导出通用格式FBX,然后进行下一步,生成数据库!

3.实物形成模型-用3D软件自建模型

生活中的物体,我们也可以1:1在3Dmax等软件中手动建模,用于识别的数据库,真正识别的时候还是识别现实物体,建模后然后需要用PC端工具把模型导入,生成数据库

4.前面准备好的模型转成Vuforia可识别数据库

导入模型并生成识别数据库,PC端工具下载地址:

Tool Download | Engine Developer Portal

登录,点击创建,输入CAD名字,模型名字(必须和你三维模型在电脑上的真实命名一模一样,不带后缀),加载地址是模型所在文件夹

 然后,无脑下一步!直到最后生成一个模型文件

这个模型文件中选择Unitypackage放入Unity!

双击导入Unity,数据库安装到Unity,就可以拖到场景进行数字内容摆放了

5.在Unity搭建模型识别场景

 右键创建Model Target 和AR camera

把识别后需要召唤的模数字内容,放在ModelTarget 子物体下面即可,如果不满意也可以自己写脚本让数字内容按照自己设计的剧本进行展示!

完毕!

这篇关于【Vuforia+Unity】AR05-实物3D模型识别功能实现(ModelTarget )的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/740544

相关文章

Python的Darts库实现时间序列预测

《Python的Darts库实现时间序列预测》Darts一个集统计、机器学习与深度学习模型于一体的Python时间序列预测库,本文主要介绍了Python的Darts库实现时间序列预测,感兴趣的可以了解... 目录目录一、什么是 Darts?二、安装与基本配置安装 Darts导入基础模块三、时间序列数据结构与

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

SpringBoot+RustFS 实现文件切片极速上传的实例代码

《SpringBoot+RustFS实现文件切片极速上传的实例代码》本文介绍利用SpringBoot和RustFS构建高性能文件切片上传系统,实现大文件秒传、断点续传和分片上传等功能,具有一定的参考... 目录一、为什么选择 RustFS + SpringBoot?二、环境准备与部署2.1 安装 RustF

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Java实现字节字符转bcd编码

《Java实现字节字符转bcd编码》BCD是一种将十进制数字编码为二进制的表示方式,常用于数字显示和存储,本文将介绍如何在Java中实现字节字符转BCD码的过程,需要的小伙伴可以了解下... 目录前言BCD码是什么Java实现字节转bcd编码方法补充总结前言BCD码(Binary-Coded Decima

SpringBoot全局域名替换的实现

《SpringBoot全局域名替换的实现》本文主要介绍了SpringBoot全局域名替换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录 项目结构⚙️ 配置文件application.yml️ 配置类AppProperties.Ja

Python实现批量CSV转Excel的高性能处理方案

《Python实现批量CSV转Excel的高性能处理方案》在日常办公中,我们经常需要将CSV格式的数据转换为Excel文件,本文将介绍一个基于Python的高性能解决方案,感兴趣的小伙伴可以跟随小编一... 目录一、场景需求二、技术方案三、核心代码四、批量处理方案五、性能优化六、使用示例完整代码七、小结一、