DeepFilterNet ONNX 导出完整指南:从一条命令到跨平台部署
DeepFilterNet ONNX 导出完整指南从一条命令到跨平台部署【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址: https://gitcode.com/GitHub_Trending/de/DeepFilterNet你要做的是把 DeepFilterNet 音频降噪模型转成一套可跨平台部署的 ONNX 组件。DeepFilterNet ONNX 导出的核心只有一个脚本一条命令就能拿到三个 .onnx 组件加 config.ini 与 version.txt随后可以直接被 ONNX Runtime 或 Rust 运行时 tract 加载接入桌面、移动、服务器三类场景。一、动手前先确认三件事环境 / 依赖 / 模型动手前先确认三件事Python 依赖齐不齐、libdf Rust 轮子装没装、预训练模型目录是否可用。先把仓库克隆下来git clone https://gitcode.com/GitHub_Trending/de/DeepFilterNet然后按下表逐项核对事项为什么需要确认方式PyTorch 2.0导出脚本基于 torch.onnx.export 运行原模型pip show torch看版本onnx / onnxruntime / onnxsim结构校验、数值验证、onnxsim 模型简化pip list全部存在libdf wheelSTFT、ERB 特征提取由 Rust 实现export.py 直接 importpip show deepfilterlib已安装预训练模型需要加载 checkpoint 与 config.inimodels/ 或缓存目录内有目标模型文件夹✅ 前四项依赖可以一条命令装齐libdf wheel 需要在仓库根目录编译安装pip install torch2.0 torchaudio onnx onnxruntime onnxsim MonkeyType maturin develop --release -m pyDF/Cargo.toml注意 MonkeyType 是硬性依赖缺了脚本会直接退出。-m传 DeepFilterNet2 / DeepFilterNet3 这类名称时脚本会自动下载对应预训练模型也可以指向本地模型目录。二、一条命令完成导出参数与产物速览导出入口是 DeepFilterNet/df/scripts/export.py加上目标目录直接执行即可python DeepFilterNet/df/scripts/export.py -m DeepFilterNet3 \ --simplify --opset 14 ./onnx_export参数一览参数说明export_dir位置参数导出目标目录不存在会自动创建-m模型目录或预训练名本地没有则自动下载--simplify导出后用 onnxsim 逐个组件简化并回写--opsetONNX opset 版本命令行默认 12--no-check跳过一致性校验不建议关闭--epoch指定 checkpoint epoch默认 best产物一览文件用途enc.onnx编码器输入 feat_erb feat_spec输出 e0~e3、emb、c0、lsnrerb_dec.onnxERB 域解码器输入恰好是编码器输出的 emb、e0~e3输出掩码 mdf_dec.onnx深滤波解码器输入 emb c0输出滤波系数 coefsconfig.ini模型配置自动从模型目录拷贝version.txt模型名与 epoch如DeepFilterNet3_epoch_123*_input.npz/*_output.npz各组件的随机输入输出样例供事后复核{model_name}_onnx.tar.gz打包上述 5 个部署文件的分发包拆成三块的思路是enc 是共享上游两个解码器各自独立出结果资源受限的设备可以只挑需要的组件加载。所有组件在时间维都声明了动态轴 S任意长度的音频无需重新导出。脚本内部还支持整模型一次性导出但默认走组件化路径。三、导出之后怎么确认模型可用脚本对每个组件都自动做了两层验证你只需盯日志里的警告。第一层用 onnx.checker 做 full_check 结构校验第二层用 ONNX Runtime 实际跑一遍再与 PyTorch 原模型输出逐一对比容差是 rtol1e-6、atol1e-5。测试输入是一段 1 秒的随机音频对应样例都存进了 npz 文件。⚠️ 若日志出现Elements not close for ...说明误差超限应提高 opset 后重新导出。想手动复核时几行代码就够import numpy as np import onnxruntime as ort sess ort.InferenceSession(onnx_export/enc.onnx, providers[CPUExecutionProvider]) x_erb np.random.randn(1, 1, 13, 48).astype(np.float32) x_spec np.random.randn(1, 2, 13, 48).astype(np.float32) outs sess.run(None, {feat_erb: x_erb, feat_spec: x_spec}) print([o.shape for o in outs]) # e0~e3, emb, c0, lsnr其中 13 是特征维默认配置下 ERB 频带与 DF bins 各 13 个48 是帧数属于动态轴可以任意。八个输出张量形状符合预期模型即可用。要提醒的是STFT/ISTFT 与特征提取并不在 ONNX 内部由 libDFRust负责完整降噪管线需要按 enc → erb_dec / df_dec 的顺序自行组装三个组件。四、按你的部署目标选路径桌面 / 移动 / 服务器同一套导出产物有三个典型去向先查表定方向再看要点。场景推荐方案项目内参考位置Linux 桌面实时降噪Rust 桌面 demodemo/系统级麦克风降噪PipeWireLADSPA 插件 虚拟麦克风ladspa/Web / JS 环境libDF wasm 构建libDF/src/wasm.rs服务器 / 多语言服务C API或 ONNX Runtime 自行组装libDF/src/capi.rs桌面端。demo/ 下的程序用 cargo 运行实时处理麦克风输入推理引擎是 libDF 自带的 Rust ONNX 运行时 tract不需要额外部署 ONNX Runtime。想要全局麦克风降噪时ladspa/ 的插件配合 filter-chain-configs 里的 PipeWire 配置能生成虚拟降噪麦克风会议软件可以直接调用。移动端。libDF 的 wasm feature 能把完整降噪循环含 ONNX 推理编译成 wasm 包仓库内还有配套构建脚本适合网页或 JS 容器场景。如果坚持用 ONNX Runtime Mobile 直接加载这三个 .onnx注意它们只含神经网络部分STFT、ERB 特征提取与合成需要你在端上单独实现所以 wasm 或 Rust 交叉编译往往更省事。服务器端。libDF/src/capi.rs 暴露了 pkg-config 名为 libdeepfilter 的 C 接口任何语言都能嵌入且默认内置模型包。若服务只需要纯网络推理用 ONNX Runtime 或 TensorRT 加载三个组件、自行组装管线同样可行。五、排障速查报错与性能问题一次看完导出与部署阶段最常遇到的问题都落在下表里按现象直接查。现象原因处理启动时提示安装 MonkeyTypeexport.py 硬依赖 monkeytypepip install MonkeyTypeonnx checker / onnxsim 报错opset 偏低运行时不支持部分算子调高--opset如 14重新导出日志出现Elements not close for ...ONNX 与 PyTorch 输出超出容差换更高 opset 重新导出并用 npz 样例复核简化失败回退保存原模型onnxsim 产出无效图看日志定位或升级 onnxsim 后手动简化推理不满足实时opset 过旧或单帧计算偏重调高 opset或考虑 int8 模型量化加载时模型与配置不匹配onnx 包与 config.ini 版本混用用 version.txt 核对 tar.gz 包一致性不确定选哪个预训练各版本侧重点不同用 models/ 现成 ONNX 包通用选 DeepFilterNet2/3低延迟选_ll变体六、行动清单按下面五条收尾DeepFilterNet ONNX 导出即完成核对 torch、onnx、onnxruntime、onnxsim、MonkeyType 与 libdf wheel 均已就位执行导出命令记得带--simplify并记录所用 opset检查日志无Elements not close警告、无简化失败回退跑一遍最小 ONNX Runtime 示例确认输出张量形状正确确认 tar.gz 包内五个文件齐全再按部署场景选定集成路径拿到导出产物后若目标设备仍不满足实时性可尝试低延迟ll变体模型或模型量化整条链路依然是同一条命令。【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址: https://gitcode.com/GitHub_Trending/de/DeepFilterNet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Claude Code模板实战:用CLAUDE.md、斜杠命令与hooks打造AI协作基线

Claude Code模板实战:用CLAUDE.md、斜杠命令与hooks打造AI协作基线

我刚开始用 Claude Code 的时候,跟大多数人一样,把 CLAUDE.md 当成一个“可写可不写的项目简介”。直到有天下午,我发现自己在五个不同项目里反复粘贴同一段话——“请先读一下 package.json 和 src 目录结构,然后再按我们团队的规…

2026/10/17 6:06:34 阅读更多 →
宝官并非稳赢:扑克牌概率、庄家优势与规则设计的数学真相

宝官并非稳赢:扑克牌概率、庄家优势与规则设计的数学真相

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 6:05:34 阅读更多 →
遥感影像传统分割:GDAL+scikit-image快速提取水体农田

遥感影像传统分割:GDAL+scikit-image快速提取水体农田

简介:本资源是一份面向遥感图像处理初学者与地理信息科学学习者的Python实践指南,聚焦于利用GDAL与scikit-image库完成遥感影像的传统图像分割、区域合并及初步矢量化全流程。资源以可运行代码为核心,完整实现影像读取(含地理坐标…

2026/10/17 6:05:34 阅读更多 →

最新新闻

eWebEditor 11.0 商业版安装部署与 Word 导入功能配置实战

eWebEditor 11.0 商业版安装部署与 Word 导入功能配置实战

简介:eWebEditor11.0中文商业版是一款所见即所得的在线富文本编辑器,面向需要在网页中实现图文混排编辑的开发者与建站人员,可应用于新闻发布、通告记事、论坛发帖等场景,其内置的Word导入功能尤其实用,能大幅降低内容…

2026/10/17 7:09:04 阅读更多 →
跨平台SSL证书导入脚本:从手工操作到一键自动化

跨平台SSL证书导入脚本:从手工操作到一键自动化

简介:这份资源提供了一套跨平台的SSL证书导入脚本,面向需要在Windows与Linux服务器上配置HTTPS通信的运维人员及系统管理员。包内共2个文件,分别为Shell脚本与批处理脚本,压缩包仅578B,体积轻巧便于随项目分发。其中sh…

2026/10/17 7:09:04 阅读更多 →
AI批量清洗图片中文与水印:全托管供货图片质检过关实战方案

AI批量清洗图片中文与水印:全托管供货图片质检过关实战方案

做全托管供货的老哥,最近是不是又被平台的图片质检搞到心态崩了?上一秒还在为出单量兴奋,下一秒就收到驳回通知,理由通常是“图片存在非目标语言信息”“图片包含水印或第三方标识”“图片做过不当遮挡处理”。我在跨境供货圈里泡…

2026/10/17 7:09:04 阅读更多 →
Git代码审计实战:从提交规范到问题定位的完整工具箱

Git代码审计实战:从提交规范到问题定位的完整工具箱

1. 版本控制的底层逻辑:为什么审计能力决定了协作质量做开发这些年,我越来越觉得 Git 不仅仅是一个“存档工具”。很多人把 Git 当网盘用,一天下来就是add、commit、push三连,等到真出了问题——谁改的这行代码、为什么改、这个提…

2026/10/17 7:09:04 阅读更多 →
从零到生产:Agent开发原理与实战指南

从零到生产:Agent开发原理与实战指南

1. 为什么说现在入局Agent开发不算晚:先搞懂Agent到底是什么这两年“Agent”这个词几乎要被说烂了,打开技术社区满屏都是“智能体”“多Agent协作”“自主决策”,搞得好像不搞个Agent就不配叫AI从业者一样。但我在实际跟很多开发者聊下来的感…

2026/10/17 7:09:04 阅读更多 →
Windows虚拟化排查指南:从BIOS到Hyper-V的彻底解决

Windows虚拟化排查指南:从BIOS到Hyper-V的彻底解决

这个标题一看就是被模拟器、虚拟机折腾过的人写出来的。说实话,Windows上这颗“虚拟化”的雷,我踩过不下几十次,帮身边朋友排查也排了无数轮。明明主板的开关开了,BIOS里也看到了,系统里却还是提示“CPU 虚拟化已禁用”…

2026/10/17 7:08:04 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →