Ubuntu 22.04 Nvidia Audio2Face Error:Failed to build TensorRT engine

背景

1.在Ubuntu22.04上安装Audio2Face后启动,嘴形不会实时同步。控制台显示如【图一】:

图一
【图一】

2.log日志如下:

Error: Error during running command: [‘/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.inference_deps/deps/audio2face-inference-deps/bin/trtexec’, ‘–onnx=/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.emotion_deps/deps/audio2emotion-nets/nets/a2e_v1.4.2/network.onnx’, ‘–saveEngine=/home/admin/omniverse/cache/Kit/105.1/c677816d/audio2emotion-nets/a2e_v1.4.2/network_device0_fp32.trt’, ‘–device=0’, ‘–tacticSources=-CUDNN’, ‘–explicitBatch’]`
根据提示,直接在终端运行该命令:

/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.inference_deps/deps/audio2face-inference-deps/bin/trtexec --onnx=/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.emotion_deps/deps/audio2emotion-nets/nets/a2e_v1.4.2/network.onnx --saveEngine=/home/admin/omniverse/cache/Kit/105.1/c677816d/audio2emotion-nets/a2e_v1.4.2/network_device0_fp32.trt --device=0 --tacticSources=-CUDNN --explicitBatch

果然没有失望,报错如下:
Your ONNX model has been generated with INT64 weights, while TensorRT does not natively support INT64. Attempting to cast down to INT32.
不难看出,Nvidia提供的audio2emotion network.onnx为INT64.需要将模型转化为INIT32后重新构建TensorRT Engine即可。
接下来,需要将network.onnx的精度从INT64转化为INT32。

安装onnx-simplifier

pip install onnx-simplifier

根据上面的log,在/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.emotion_deps/deps/audio2emotion-nets/nets/a2e_v1.4.2/network.onnx找到network.onnx文件
转化模型为INT32:

cd /home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.emotion_deps/deps/audio2emotion-nets/nets/a2e_v1.4.2/
# 转化INT64->INT32
python -m onnxsim network.onnx networkfp32.onnx
# 将转化后的networkfp32.onnx重命令为network.onnx,不然audio2face build TensorRT Engine时找不到。
mv network.onnx networkfp64.onnx
mv networkfp32.onnx network.onnx

重新构建TensorRT
如图二进行重构即可,重构成功后的AUTO-EMOTION控制面板如图三:
图二
【图二】
图三
【图三】
PS:如果自己已经安装过TensorRT,也可以用自己的trtexec进行转化,不过不建议这样做,因为要和Audio2Face中的trtexec(即log中的文件【/home/admin/omniverse/libs/deps/321b626abba810c3f8d1dd4d247d2967/exts/omni.audio2face.inference_deps/deps/audio2face-inference-deps/bin/trtexec】)版本一致。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/463714.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

科研学习|论文解读——了解在线环境中的多数观点形成过程:Facebook的探索性方法(IPM, 2018)

论文标题 Understanding the majority opinion formation process in online environments: An exploratory approach to Facebook 摘要 在在线社区的社会互动过程中,多数观点经常被观察到,但很少有研究用实证数据来解决这一问题。为了确定一个合适的理论…

大模型Gemini 1.5 Pro之我的体验

前言 最近我有幸获得了 Gemini 1.5 Pro 的内测资格,想在这里分享一下我的使用体验。这篇文章并非旨在横向比较各家模型的优劣,也不是探讨 Gemini 的迭代历程。因此,我不会过多关注哪些功能是上一代模型已经实现的,或者哪些是完全…

Java Spring Boot搭配MyBatis的项目开发中关于账户余额并发更新

在Java Spring Boot搭配MyBatis的项目开发中,涉及到多个功能模块同时操作同一数据库表字段(例如用户账户余额)时,为了保证数据的一致性和防止更新过程中的错误(例如余额错账、更新丢失等),需要采…

【TB作品】MSP430,波形发生器,单片机,Proteus仿真

文章目录 题目效果梯形波100个点产生方法锯齿波100个点产生方法c代码和proteus仿真 题目 114 波形发生器的制作 设计要求 设计一个能产生正弦波、方波、三角波、梯形波、锯齿波的波形发生器。设置5个开关K1~K5(从 上到下),分别对应正弦波、方波、三角波、梯形波、锯齿波,按一下…

大模型知识积累——幻觉

什么是大模型幻觉 在大语言模型的文本生成场景下,幻觉是指一本正经的胡说八道。逻辑连贯的自然表述中,有理论或者事实错误,捏造事实等问题。 幻觉问题的危害 LLM幻觉可能产生传播错误知识的后果。对于医疗应用中结果安全和可信AI尤为重要&a…

Android 系统的启动过程

Android 系统的启动流程: RomBoot(只读存储器引导程序):这是设备上电时运行的初始软件。RomBoot执行基本的硬件初始化,确保硬件处于可以运行后续启动阶段的状态。这一阶段非常重要,因为它为整个启动过程奠定…

部署 JimV 私有云

server1 控制节点计算节点192.168.136.131server2 计算节点192.168.136.132 准备环境 基础系统 Centos7 (确保关闭防火墙 禁用SELinux) 私有云平台JimV-3.10.2-x86_64-DVD-240129-CentOS72009.iso 离线安装 将Jimv的镜像上传到server1上 并将其挂载…

Linux之shell循环

华子目录 for循环带列表的for循环格式分析示例shell允许用户指定for语句的步长,格式如下示例 不带列表的for循环示例 基于C语言风格的for循环格式示例注意 while循环格式示例 until循环作用格式示例 循环控制breakcontinue详细语法示例 循环嵌套示例 for循环 for循…

字典树 [Tire]

数据结构、算法总述:数据结构/基础算法 C/C_禊月初三的博客-CSDN博客 字典树,英文名 trie。顾名思义,就是一个像字典一样的树。 Trie 树是一种多叉树的结构,它的特点是所有的字符都存储在树的分支上,并且从根节点到某…

最详细爬虫零基础教程03——Request库的介绍

文章目录 前言一、Request库的使用?二、响应Response中的属性3.用户代理(User-Agent) 前言 Request库是一个Python的第三方库,用于发送HTTP请求和处理HTTP响应。它提供了简单而方便的接口,使得发送HTTP请求变得容易。…

OpenCV(七)——灰度图像的阙值处理以及图像的边界填充

灰度图像的阙值处理 在OpenCV中利用threshold()对灰度图像进行阙值处理,该函数通过将图像中的每个像素值与一个给定的阈值进行比较来工作。如果像素值超过这个阈值,那么像素值将被设置成指定的最大值;如果没有超过阈值,则根据不同…

C语言例:设 int a=11; 则表达式 a+=a-=a*a 的值

注&#xff1a;软件为VC6.0 代码如下&#xff1a; #include<stdio.h> int main(void) {int a11, b;b (aa-a*a); //a*a121 -->a-121结果为a-110 -->a-110结果为a-220printf("表达式aa-a*a 的值为&#xff1a; %d\n",b);return 0; } //优先级&#x…

组播协议详解

1.组播基础 &#xff08;1&#xff09;组播简介 &#xff08;2&#xff09;组播的地址 &#xff08;3&#xff09;组播的MAC地址 &#xff08;4&#xff09;组播的MAC地址 &#xff08;5&#xff09;反向转发路径—RPF 2.IGMP &#xff08;1&#xff09;简介 &#xff0…

vite ts vue 项目提示 . Projects must list all files or use an include pattern.

vite ts vue 项目提示 . Projects must list all files or use an include pattern. 在引用一个 ts 的时候&#xff0c;提示如下&#xff1a; 需要在 tsconfig.node.json 文件中添加&#xff1a; {"compilerOptions": {"composite": true,"skipLibC…

【LLM】LLama2模型(RMSNorm、SwiGLU、RoPE位置编码)

note 预训练语言模型除了自回归&#xff08;Autoregressive&#xff09;模型GPT&#xff0c;还有自编码模型&#xff08;Autoencoding&#xff09;BERT[1]、编-解码&#xff08;Encoder-Decoder&#xff09;模型BART[67]&#xff0c;以及融合上述三种方法的自回归填空&#xf…

一文速通ESP32(基于MicroPython)——含示例代码

ESP32 简介 ESP32-S3 是一款集成 2.4 GHz Wi-Fi 和 Bluetooth 5 (LE) 的 MCU 芯片&#xff0c;支持远距离模式 (Long Range)。ESP32-S3 搭载 Xtensa 32 位 LX7 双核处理器&#xff0c;主频高达 240 MHz&#xff0c;内置 512 KB SRAM (TCM)&#xff0c;具有 45 个可编程 GPIO 管…

ttkbootstrap界面美化系列之简介(一)

一&#xff1a;前言 相信很多同学用Python进行界面设计第一个用到的就是Tkinter&#xff0c;Tkinter是Python的一个标准接口&#xff0c;用于创建GUI&#xff08;图形用户界面&#xff09;应用程序。它是Tcl/Tk的封装&#xff0c;Tkinter的名称来源于Tk技术工具包(Tool…

2024 Mazing 3 中文版新功能介绍Windows and macOS

iMazing 3中文版(ios设备管理软件)是一款管理苹果设备的软件&#xff0c; Windows 平台上的一款帮助用户管理 IOS 手机的应用程序。iMazing中文版与苹果设备连接后&#xff0c;可以轻松传输文件&#xff0c;浏览保存信息等&#xff0c;软件功能非常强大&#xff0c;界面简洁明晰…

Outlook API发送邮件的方法?如何设置接口?

如何使用Outlook API发送电子邮件&#xff1f;怎么调用API接口&#xff1f; 为了满足更高级别的需求&#xff0c;我们可能需要通过编程的方式来操作Outlook&#xff0c;这时候&#xff0c;Outlook API就显得尤为重要了。那么&#xff0c;如何使用Outlook API发送邮件呢&#x…

Linux下的多线程编程:原理、工具及应用(3)

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;Flower of Life—陽花 0:34━━━━━━️&#x1f49f;──────── 4:46 &#x1f504; ◀️ ⏸ ▶️ ☰ …