【我的渲染技术进阶之旅】关于ARCore的标准人脸3D模型canonical_face_mesh.fbx和2D面部网格参考纹理canonical_face_mesh.psd文件

本文主要是介绍【我的渲染技术进阶之旅】关于ARCore的标准人脸3D模型canonical_face_mesh.fbx和2D面部网格参考纹理canonical_face_mesh.psd文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、为增强面孔创建自定义纹理和 3D 模型
    • 1.1 规范文件
    • 1.2 使用 FBX 文件创建 3D 模型
    • 1.3 使用 PSD 文件创建 2D 纹理
    • 1.4 自定义规范面部网格
      • 1.4.1 导入到Blender中
  • 二、参考链接

一、为增强面孔创建自定义纹理和 3D 模型

要实现增强面孔,您需要自定义纹理和模型 叠加在已识别的面网格上。这些资产由艺术家创建 提前使用3D建模和动画软件,并导出为FBX 文件。

1.1 规范文件

SDK 附带了两个文件,以帮助艺术家创建将正确叠加到 ARCore 检测到的面部上的资产。这些文件可以在文件夹中找到。

  • canonical_face_mesh.fbx下载链接
  • canonical_face_texture.psd下载链接

1.2 使用 FBX 文件创建 3D 模型

FBX 文件包含面部网格拓扑、UV 纹理坐标和装备,这些装备定义了为创建和附加资产提供的受支持的面部区域。为确保它们与 ARCore 兼容,应使用受支持的设置保存 FBX 文件。

此文件包含不应作为最终 FBX 的一部分导出的引用。 ARCore 会在运行时生成并更新一个单独的人脸网格。facemesh

1.3 使用 PSD 文件创建 2D 纹理

面部网格参考纹理用于查看艺术家创建的纹理在运行时如何与用户的面部特征对齐。它包括四层:.psd

  • 面具:显示眼睛、鼻孔和嘴巴在纹理中的位置。
  • 线条:显示用户的面部特征在运行时如何与纹理对齐的指南。
  • UVs:表示 468 点面纹理网格的三角剖分。
  • 背景:中性灰色背景层,使其他三个组件在视觉上清晰。

在这里插入图片描述
如果您修改 PSD 文件,您应该会在导出后立即看到所做的更改。

1.4 自定义规范面部网格

如果使用 SDK 中包含的创建模型和纹理,则在导出 FBX 文件时也需要这些设置:assets/canonical_face_mesh.fbx

  • 如果使用 SDK 中包含的创建模型和纹理,则在导出 FBX 文件时也需要这些设置:assets/canonical_face_mesh.fbx

  • 使用以下层次结构:

    asset
    |__root
    |   |__NOSE_TIP
    |   |__FOREHEAD_RIGHT
    |   |__FOREHEAD_LEFT
    |__facemesh           <-- for reference
    |__                   <-- place additional custom 3D meshes here
    
  • 不要导出包含的模型。此网格仅供参考。 ARCore 将在运行时创建一个单独的面部网格。在创建自定义面部网格纹理时使用 UV 作为参考。.facemesh

  • 将自定义网格放置为 .asset 节点的子项

  • 支持使用命名空间。

  • 该资产包含四个骨骼和区域组成。不要更改这些骨骼的名称。root NOSE_TIP FOREHEAD_LEFT

1.4.1 导入到Blender中

canonical_face_mesh.fbx导入到Blender中,如下所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

二、参考链接

  • https://developers.google.com/ar/develop/java/augmented-faces/create-assets

  • canonical_face_mesh.fbx下载链接

  • canonical_face_texture.psd下载链接

这篇关于【我的渲染技术进阶之旅】关于ARCore的标准人脸3D模型canonical_face_mesh.fbx和2D面部网格参考纹理canonical_face_mesh.psd文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python进阶之列表推导式的10个核心技巧

《Python进阶之列表推导式的10个核心技巧》在Python编程中,列表推导式(ListComprehension)是提升代码效率的瑞士军刀,本文将通过真实场景案例,揭示列表推导式的进阶用法,希望对... 目录一、基础语法重构:理解推导式的底层逻辑二、嵌套循环:破解多维数据处理难题三、条件表达式:实现分支

Python中高级文本模式匹配与查找技术指南

《Python中高级文本模式匹配与查找技术指南》文本处理是编程世界的永恒主题,而模式匹配则是文本处理的基石,本文将深度剖析PythonCookbook中的核心匹配技术,并结合实际工程案例展示其应用,希... 目录引言一、基础工具:字符串方法与序列匹配二、正则表达式:模式匹配的瑞士军刀2.1 re模块核心AP

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

javaSE类和对象进阶用法举例详解

《javaSE类和对象进阶用法举例详解》JavaSE的面向对象编程是软件开发中的基石,它通过类和对象的概念,实现了代码的模块化、可复用性和灵活性,:本文主要介绍javaSE类和对象进阶用法的相关资... 目录前言一、封装1.访问限定符2.包2.1包的概念2.2导入包2.3自定义包2.4常见的包二、stati

Python标准库datetime模块日期和时间数据类型解读

《Python标准库datetime模块日期和时间数据类型解读》文章介绍Python中datetime模块的date、time、datetime类,用于处理日期、时间及日期时间结合体,通过属性获取时间... 目录Datetime常用类日期date类型使用时间 time 类型使用日期和时间的结合体–日期时间(

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.