【Vuforia】用户指南:模型目标生成器(Model Targets Generator)

一、引言

Model Targets Generator

       模型目标生成器(MTG)将已有的3D模型转换为Vuforia引擎数据库(database),Vuforia引擎可以使用该数据库对模型目标进行追踪。此工具使您能够确认模型特征是否可用,设置初始捕捉(snapping)位置,然后导出最终数据库。

       若要创建自定义“指引视图”(Guide View)图像作为应用程序(app)的视觉样式(visual style),MTG生成的数据库包含Guide View(检测位置(detection position))里模型的预览图(renderings),使用该预览图可能比Vuforia引擎API提供的默认Guide View图像更合适。

训练模型目标数据库(Training Model Target databases)

       Model Target Generator允许您为每个对象定义一个或多个Guide View,并允许您将不同的Model Targets(每个都具有一个或多个高级指引视图(Advanced Guide Views))合并到一个高级数据库(advanced database)中。

       MTG通过基于云的深度学习进程(cloud-based process)对高级数据库进行训练,该进程允许app在多个Model Targets之间自动切换,每个Target在运行时具有一个或多个识别范围高达360°的Advanced Guide Views

二、安装Model Target Generator

最低系统要求

  • Model Target Generator支持在WindowsmacOS上运行。相关支持版本的详细信息,请参阅支持版本表。

安装和设置(Installation and Setup)

       MTG和您的开发者帐户相关联,并在您使用开发者凭据登录后启动。为了在多次MTG启动时轻松访问,可以通过选中“记住我(Remember Me)”框将凭据存储在Windows凭据存储区(credential store)或macOS密钥链(Keychain)中,此凭证将在登出(signing out)时删除。

       MTG附带了(shipped with)一组基本的模型转换器(model converters)。如果输入需要JT转换,那么还需要安装Creo View和相应的(accompanying)JT适配器(adapter)。只有当Creo View能够导入JT文件时,MTG才能这样做。支持格式的完整列表如下所示。

       只要源模型是能够导入MTG的格式,就不需要额外的模型转换。当创建一个新项目时,甚至当源文件被更新时(假设在创建项目时使用的位置仍然可以访问源文件),MTG会自动对其进行处理。

三、模型要求和准备

       MTG可以读取各种3D文件,并将它们转换为Vuforia Engine的内部网格格式(internal mesh format)。因此,在此转换过程中所引入模型的任何可视化(visual)错误都将显示在MTG视口(viewport)中。一些源模型格式(source model formats)由于缺少网格信息(mesh information),可能会导致模型转换出错。所以,应使用MTG检查导入模型是否与源数据(source data)一致。如果有问题,使用不同文件格式可能会得以解决;如果解决不了,则可能需对源数据进行修整(be cleaned up)。

       Vuforia EngineModel Target的追踪效果在CAD模型上表现最好,因其拥有例如与物理对象相应的颜色、复杂程度低等特性(particular characteristics),且其在我们的其他最佳实践中表现优异。

       详细有关信息,请参见【翻译】Vuforia最佳实践:支持作为模型目标(Model Targets)的对象和CAD模型(【原文】Model Targets Supported Objects & CAD Model Best Practices)。

支持特征

       导入管线支持包含以下内容的网格:

  • 多个子网格(Multiple sub-meshes)

       每个sub-meshRenderer中的Material相对应,例如MeshRendererSkinnedMeshRenderersub-mesh由一组三角形组成,这些三角形指向(refer to)一组顶点(vertices)。顶点可以在多个sub-meshes之间共享。

  • 顶点位置(Vertex positions)
  • 顶点法线(Vertex normal)
  • 顶点纹理坐标(Vertex texture coordinates)(仅一组)
  • 漫反射纯色(Diffuse solid colors)
  • 漫反射纹理颜色(Diffuse texture colors)
  • 法线贴图(Normal maps)

       如果输入模型提供的信息多于上述信息(例如,额外的纹理坐标集),则在导入时将忽略多余信息。

支持格式

       MTG支持读取:Creo View (.pvz), Collada (.dae), FBX (.fbx), IGES (.igs, .iges), Wavefront (.obj), STEP (.stp, .step), STL (.stl, .sla), VRML (.wrl, .vrml), glTF 2.0。如果安装了适用于JTCreo View Adapter,那JT数据也支持。

注意macOSMTG不支持STEP(stp,.STEP)和JT数据文件。

       使用Creo View AdapterColladaFBXJT可以观察到最佳的导入结果。

注意:模型支持的纹理格式为32-bit24-bit8-bitJPGPNGPGM文件。

模型准备

       有关推荐规范和最佳实践的详细概述,请参见【翻译】Vuforia最佳实践:支持作为模型目标(Model Targets)的对象和CAD模型(【原文】Model Targets Supported Objects & CAD Model Best Practices)。

       在为MTG准备3D模型时,需要检查数字对象和物理对象的比例(scale)是否匹配。在某些情况下,全尺寸(full-size)目标对象的3D模型是不能对玩具仿制品(toy replica)进行追踪的。为了获得最佳的追踪效果,模型和目标对象的大小应该相匹配。有关此规则(topic)的详细信息,请参见Vuforia最佳实践:缩放模型目标(【原文】Best Practices for Scaling Model Targets)。

       如果模型拥有超过40万个多边形(polygons)或超过10个部分(parts),则需要对模型进行简化。简化过程包括:减少将对象表示为网格所需的多边形数。如果要在移动设备上实时运行,则必须优化计算机视觉算法(computer vision algorithms);简化过的多边形只要不是过于粗糙(coarse),就不会影响检测追踪的精度。

       任何简化工具都会带来一定的缺陷(artefacts)。幅度(range)缩小至1:10的缺陷通常不会影响计算机视觉算法。例如,将一个与整车3D模型相对应的网格从50万个多边形减少到5万个,会造就一个大为简化的数据库,并仍然拥有良好的检测追踪性能。

原图有缺陷
在这里插入图片描述在这里插入图片描述

上面两张图是笔者找到的,对artefacts一词的应用。1

修正(Modification)

       在某些情况下,对象的3D模型可以包含不在被追踪对象身上(或所有实例上)的部件,就像订购东西时,可以指定的那种可选的附加组件:比如摩托车上的附加搁脚板(footrests)或乘客座椅。理想情况下,用于追踪的3D模型不应包含此类部件。

       此外,可以轻易地从3D模型所在位置移动的部件(例如,可以旋转或调整以适合驾驶员操作的方向盘(steering wheel))也会干扰追踪。将其从3D模型中移除可以减少3D模型与真实物体之间的差异(disparities),从而提高追踪质量。

       通常,包含在CAD模型中,但在尝试初始化追踪时无法从对象外部看到的内部(Internal)组件也应移除。存储在应用程序中时,这些部件会增加设备数据库的大小,并在运行时增加要处理的多边形数。去除以进一步提高Model Target的检测追踪性能。

工具

       若要简化或修改模型,请使用第三方网格编辑工具,如PiXYZ StudioSimplygonBlenderMayaUmbra3DMeshLab。更多相关信息,请参阅您所选用工具的官方文档。

四、Model Target Generator界面

Model Target Generator
       MTG Home Screen主界面有两个重要组成部分:在左侧,您将看到已导入或创建的各个模型目标Model Targets。双击其中任何一个都会跳转到3D查看器,用以操作模型,修改其Guide Views。在右侧,将列出Advanced Model Targets训练集(training sets),显示已配置、正在运行和已完成的训练项目(training sessions)。在此处,您可以将一个或多个Model Targets组合到一个经过训练的设备数据库(Device Database)中,并导出最终结果。

       Home Screen顶部的状态栏显示了用于创建Model Targets和高级数据库的可用配额(quotas)。

       有关Vuforia分步指南:使用Model Target Generator创建一个新的Model Target的详细信息,请参见如何创建模型目标(【原文】How to Create a Model Target)。

使用输出文件

       对于Unity,您将使用*.unitypackage文件。将其导入到Unity项目中,并添加和配置ModelTarget GameObject以使用它。有关详细信息,请参见Unity中的Model Targets简介(【原文】Introduction to Model Targets in Unity)。

       对于使用Vuforia引擎原生(native)SDK开发的app,请将*.dat*.xml加载到由ObjectTracker创建的Device Database中。详细有关信息,请参见Vuforia:模型目标原生工作流(【原文】Model Targets Native Workflow)。

可选:使用PNG文件作为基线(baseline)来设计自定义Guide View图像,app将使用这些图像来指导用户将相机与被追踪对象正确对齐,以便初始化跟踪。如果使用的话,请注意自定义的Guide Views需要由应用程序开发人员单独加载和打包。详细有关信息,请参见Vuforia:模型目标API概述(【原文】Model Targets API Overview)。

五、Guide Views

       使用Model Target Generator时,可以为模型目标Model Target定义一个或多个Guide Views,并为每个Guide View设置目标识别范围(Target Recognition Range)。详细有关信息,请参见Vuforia:模型目标的指引视图(【原文】Model Target Guide Views)。

六、Advanced Model Target Databases

       如果要允许app自动识别不同的对象并且不显示Guide Views,或者如果希望有一个或多个识别范围高达360°的Model Targets,则需要训练Advanced Model Target数据库。

       这是通过Model Target Generator桌面工具中基于云(cloud-based)的训练进程完成的。详细有关信息,请参见Vuforia:高级模型目标数据库(【原文】Advanced Model Target Databases)。

七、了解更多


  1. 图片来源于Artifacts on a model (texture compression problem),作者:antonyony。 ↩︎

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值