ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

DeepFilterNet 全面指南:基于深度滤波的 48kHz 全频带实时语音增强框架

DeepFilterNet 全面指南:基于深度滤波的 48kHz 全频带实时语音增强框架 人工智能语音音频深度学习预训练【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址https://gitcode.com/GitHub_Trending/de/DeepFilterNet点击查看免费下载DeepFilterNet 是一个面向全频带音频48kHz的低复杂度语音增强框架其核心技术是深度滤波Deep Filtering模型不再仅预测幅度掩码而是为每个频点预测一个复数 FIR 滤波器从而在低计算量下实现更真实的噪声抑制。本文围绕 DeepFilterNet/README.md 展开结合仓库源码完整讲解安装方式、命令行增强、Python 脚本集成、数据集准备与训练流程并剖析 libDFRust、pyDF 等模块的底层实现原理。读完本文你将能独立完成从下载模型 → 命令行降噪 → 自定义训练数据 → 训练自己的增强模型的全流程实操并理解该框架低复杂度的来源。1. 项目总览为什么是Deep Filtering而非Deep MaskingDeepFilterNet 的官方定位是A Low Complexity Speech Enhancement Framework for Full-Band Audio (48kHz) using Deep Filtering。其核心思想是大多数语音增强模型只估计时频掩码mask来抑制噪声而 DeepFilterNet 在低频部分为每个频点预测一个深度滤波器Deep Filter——即一组复数权重用当前频点及相邻若干帧的观测值做加权求和滤波相当于在一个子带内做 FIR 滤波。这种方式能在不显著增加计算量的前提下更好地保留语音的谐波结构。从仓库的模块划分见 DeepFilterNet/README.md 的 DeepFilterNet Framework 一节可以看出框架的分层设计模块路径职责libDFlibDF/Rust 实现的信号处理内核STFT/ISTFT 实时处理循环、ERB 滤波器组、数据加载与增强DeepFilterNetDeepFilterNet/Python 端的模型定义、训练、评估、可视化以及预训练模型权重pyDFpyDF/libDF 的 Python 绑定暴露 STFT/ISTFT 处理循环pyDF-datapyDF-data/libDF 数据集功能的 Python 绑定提供 PyTorch 数据加载器ladspaladspa/用于实时噪声抑制的 LADSPA 插件可与 PipeWire 集成modelsmodels/DeepFilterNet / DeepFilterNet2 / DeepFilterNet3 的预训练模型包框架官方支持 Linux、macOS 和 Windows 的推理训练仅在 Linux 下测试通过DeepFilterNet/README.md。2. 快速上手两种运行方式2.1 方式一deep-filter原生二进制无 Python 依赖如果你只需要对一批 wav 文件做离线降噪最快的方式是直接从 release 页面下载预编译的deep-filter二进制。它基于 libDF 的 Rust 推理实现模型通过 libDF/src/tract.rs 加载 ONNX 模型不需要任何 Python 依赖。README 给出的完整用法如下USAGE: deep-filter [OPTIONS] [FILES]... ARGS: FILES... OPTIONS: -D, --compensate-delay Compensate delay of STFT and model lookahead -h, --help Print help information -m, --model MODEL Path to model tar.gz. Defaults to DeepFilterNet2. -o, --out-dir OUT_DIR [default: out] --pf Enable postfilter -v, --verbose Logging verbosity -V, --version Print version information需要注意的几点目前deep-filter只支持采样率为 48kHz 的 wav 文件DeepFilterNet/README.md。模型默认使用 DeepFilterNet2也可以配合-m传入其他模型 tar.gz 包models/目录下即提供DeepFilterNet2_onnx.tar.gz、DeepFilterNet3_onnx.tar.gz等 ONNX 版本。--pf开启后置滤波post-filter会对极噪段落做额外的轻微过衰减。输出默认写到out/目录可通过-o修改。-D用于补偿 STFT 与模型 lookahead 带来的延迟。2.2 方式二PythonPyPI 一键安装若希望使用 PyTorch 后端例如利用 GPU 加速则走 Python 路线。官方推荐的安装方式DeepFilterNet/README.md# Install cpu/cuda pytorch (1.9) dependency from pytorch.org, e.g.: pip install torch torchaudio -f https://download.pytorch.org/whl/cpu/torch_stable.html # Install DeepFilterNet pip install deepfilternet # Or install DeepFilterNet including data loading functionality for training (Linux only) pip install deepfilternet[train]随后即可用命令行直接增强音频# Specify an output directory with --output-dir [OUTPUT_DIR] deepFilter path/to/noisy_audio.wav3. 从源码手动安装开发环境如果你需要开发或训练就需要从源码构建。README 中的手动安装流程DeepFilterNet/README.md要求先通过 rustup 安装 cargo并推荐使用conda或virtualenv隔离环境。cd path/to/DeepFilterNet/ # cd into repository # Recommended: Install or activate a python env # Mandatory: Install cpu/cuda pytorch (1.8) dependency from pytorch.org, e.g.: pip install torch torchaudio -f https://download.pytorch.org/whl/cpu/torch_stable.html # Install build dependencies used to compile libdf and DeepFilterNet python wheels pip install maturin poetry # Install remaining DeepFilterNet python dependencies # *Option A:* Install DeepFilterNet python wheel globally within your environment. poetry -C DeepFilterNet install -E train -E eval # *Option B:* If you want to develop within this repo, install only dependencies and work with the repository version poetry -C DeepFilterNet install -E train -E eval --no-root export PYTHONPATH$PWD/DeepFilterNet # And set the python path correctly # Build and install libdf python package required for enhance.py maturin develop --release -m pyDF/Cargo.toml # *Optional*: Install libdfdata python package with dataset and dataloading functionality for training # Required build dependency: HDF5 headers (e.g. ubuntu: libhdf5-dev) maturin develop --release -m pyDF-data/Cargo.toml # If you have troubles with hdf5 you may try to build and link hdf5 statically: maturin develop --release --features hdf5-static -m pyDF-data/Cargo.toml各步骤说明Option A将 DeepFilterNet 安装为环境内的全局 wheel适合直接使用本仓库Option B仅安装依赖--no-root配合export PYTHONPATH$PWD/DeepFilterNet使用仓库内代码适合开发。maturin develop --release -m pyDF/Cargo.toml会编译 Rust 的 libDF 并生成libdfPython 包——这是enhance.py运行所必需的DeepFilterNet/df/enhance.py 顶部直接from libdf import DF, erb, erb_norm, unit_norm。pyDF-data提供训练所需的数据集与数据加载功能构建时依赖系统 HDF5 头文件Ubuntu 上为libhdf5-dev若遇到 HDF5 链接问题可用--features hdf5-static静态链接。4. 命令行增强enhance.py全参数详解README 给出了enhance.py的完整命令行接口DeepFilterNet/README.md。对照源码 DeepFilterNet/df/enhance.py 的setup_df_argument_parser()与run()可以整理出更完整的参数表$ python DeepFilterNet/df/enhance.py --help usage: enhance.py [-h] [--model-base-dir MODEL_BASE_DIR] [--pf] [--output-dir OUTPUT_DIR] [--log-level LOG_LEVEL] [--compensate-delay] noisy_audio_files [noisy_audio_files ...] positional arguments: noisy_audio_files List of noise files to mix with the clean speech file. optional arguments: -h, --help show this help message and exit --model-base-dir MODEL_BASE_DIR, -m MODEL_BASE_DIR Model directory containing checkpoints and config. To load a pretrained model, you may just provide the model name, e.g. DeepFilterNet. By default, the pretrained DeepFilterNet2 model is loaded. --pf Post-filter that slightly over-attenuates very noisy sections. --output-dir OUTPUT_DIR, -o OUTPUT_DIR Directory in which the enhanced audio files will be stored. --log-level LOG_LEVEL Logger verbosity. Can be one of (debug, info, error, none) --compensate-delay, -D Add some paddig to compensate the delay introduced by the real-time STFT/ISTFT implementation.4.1 基础用法# Enhance audio with original DeepFilterNet python DeepFilterNet/df/enhance.py -m DeepFilterNet path/to/noisy_audio.wav # Enhance audio with DeepFilterNet2 python DeepFilterNet/df/enhance.py -m DeepFilterNet2 path/to/noisy_audio.wav仓库还提供了DeepFilterNet3这一更优模型且源码中DEFAULT_MODEL DeepFilterNet3DeepFilterNet/df/enhance.pyPRETRAINED_MODELS (DeepFilterNet, DeepFilterNet2, DeepFilterNet3)。也就是说即使不带-m参数当前源码默认加载 DeepFilterNet3。4.2 README 之外、源码中确认的进阶参数对照源码 DeepFilterNet/df/enhance.py 的run()enhance.py实际还支持以下参数参数说明--epoch {best,latest,int}, -e选择加载哪个 checkpoint默认best源码中parse_epoch_type校验取值init_df的epoch参数还支持none表示不加载 checkpoint--no-delay-compensation关闭延迟补偿默认开启--atten-lim int, -a衰减上限dB。通过将增强信号与带噪信号按比例混合实现enhanced spec * lim enhanced * (1 - lim)其中lim 10^(-|atten_lim_db|/20)见 enhance.py。例如 12 dB 只抑制 12 dB剩余噪声保留在结果中--noisy-dir DIR, -i输入目录批量处理目录下所有音频文件与位置参数二选一--no-suffix不在输出文件名上附加模型名后缀默认会附加如xxx_DeepFilterNet3.wav--no-df-stage仅使用掩码mask阶段跳过深度滤波阶段4.3 延迟补偿的底层原理--compensate-delay的作用可以从源码 enhance.py 看出由于实时 STFT/ISTFT 实现引入了算法延迟增强前会对音频尾部补n_fft个采样增强后再从d n_fft - hop处截取回原始长度。代码注释指出STFT/ISTFT 循环的算法延迟为n_fft - hop例如 50% 重叠时hop n_fft // 2需要 1 帧 lookahead75% 重叠时需要 3 帧源码断言n_fft % hop 0即目前只验证了 50% 与 75% 重叠。4.4 输入音频的自动重采样与deep-filter二进制不同Python 路径的输入文件不强制 48kHz。main()中通过AudioDataset加载音频时使用模型采样率df_sr ModelParams().sr默认 48000增强完成后再用resample(audio, df_sr, audio_sr)恢复到原始采样率保存enhance.py。重采样实现位于 DeepFilterNet/df/io.py支持sinc_fast、sinc_best、kaiser_fast、kaiser_best四种方法默认sinc_fast。5. 在 Python 脚本中调用 DeepFilterNetREADME 给出了最简集成方式DeepFilterNet/README.mdfrom df import enhance, init_df model, df_state, _ init_df() # Load default model enhanced_audio enhance(model, df_state, noisy_audio)仓库中的完整可运行示例见 scripts/external_usage.py它展示了完整的加载模型 → 读取音频 → 增强 → 保存链路from df.enhance import enhance, init_df, load_audio, save_audio from df.utils import download_file if __name__ __main__: # Load default model model, df_state, _ init_df() # Download and open some audio file. You use your audio files here audio_path download_file( https://github.com/Rikorose/DeepFilterNet/raw/e031053/assets/noisy_snr0.wav, download_dir., ) audio, _ load_audio(audio_path, srdf_state.sr()) # Denoise the audio enhanced enhance(model, df_state, audio) # Save for listening save_audio(enhanced.wav, enhanced, df_state.sr())5.1 关键 API 的源码级说明init_df()完整的函数签名为init_df(model_base_dirNone, post_filterFalse, log_levelINFO, log_fileenhance.log, config_allow_defaultsTrue, epochbest, default_modelDeepFilterNet3, mask_onlyFalse)enhance.py。它会完成加载模型目录下的config.ini通过config.load()config.py→ 构建DF状态STFT/ISTFT ERB 特征→ 从checkpoints/加载bestcheckpoint → 将模型移到 GPU如可用。返回(model, df_state, suffix, epoch)四元组。enhance()核心签名enhance(model, df_state, audio, padTrue, atten_lim_dbNone)。内部流程enhance.py为model.eval()→ 重置循环模型隐藏状态model.reset_h0()→ 若padTrue则在尾部补零 → 计算 STFT 谱、ERB 特征与归一化复数特征df_features()→ 模型前向得到增强谱 →df_state.synthesis()完成 ISTFT 合成时域音频 → 按n_fft - hop截取补偿延迟。load_audio() / save_audio()io.py基于 torchaudio 读写支持任意输入采样率自动重采样到模型采样率保存时默认以 int16 写出(audio * (1 15)).to(torch.int16)。5.2 模型自动下载机制调用init_df()时若传入的model_base_dir是DeepFilterNet、DeepFilterNet2、DeepFilterNet3之一或为 Nonemaybe_download_model()enhance.py会自动从仓库的models/目录下载对应的.zip模型包并解压到缓存目录get_cache_dir()通常是~/.cache相关位置再加载其中的config.ini与checkpoints/。因此开箱即用无需手动下载模型。models/目录中可见DeepFilterNet.zip、DeepFilterNet2.zip、DeepFilterNet3.zip等打包好的预训练权重。6. 预训练模型家族与低复杂度设计6.1 三代模型仓库 models/ 目录提供DeepFilterNet.zip原始 ICASSP 2022 论文模型DeepFilterNet2.zip面向嵌入式设备的实时版本IWAENC 2022DeepFilterNet3.zip感知驱动的实时增强版本INTERSPEECH 2023多个 ONNX 包DeepFilterNet2_onnx.tar.gz、DeepFilterNet2_onnx_ll.tar.gz、DeepFilterNet3_onnx.tar.gz、DeepFilterNet3_ll_onnx.tar.gz供 libDF/Rust 端tract引擎推理ll后缀为低延迟变体。对应的模型实现文件为 deepfilternet.py、deepfilternet2.py、deepfilternet3.py。当前默认模型为deepfilternet3model.py 中config(MODEL, defaultdeepfilternet3, sectiontrain)。6.2 低复杂度的实现手段从源码结构可以推断DeepFilterNet 的低复杂度来自几个设计选择ERB 子带划分 深度滤波DF 阶段只对低频的前NB_DF默认 96个频点做复数滤波高频部分用更廉价的掩码处理。ERB 滤波器组在 Rust 端 libDF/src/lib.rs 的erb_fb()中按听觉等价的 ERB 尺度划分频带默认 32 个 ERB bandDFState::new()中同时初始化 vorbis 窗与 FFT 计划。分组线性层 / 深度可分离卷积以 deepfilternet3.py 的ModelParams为例存在LINEAR_GROUPS默认 1、ENC_LINEAR_GROUPS默认 16、CONV_DEPTHWISE默认 True等参数均用于减少参数量与计算量。循环单元使用 SqueezedGRUdf_num_layers默认 3、df_hidden_dim默认 256控制 DF 阶段 GRU 的规模兼顾实时性。6.3 可配置的模型超参数deepfilternet3的ModelParamsdeepfilternet3.py从config.ini读取大量可调参数例如配置项默认值含义CONV_CH16卷积通道数CONV_KERNEL1,3编码器卷积核CONV_KERNEL_INP3,3输入卷积核EMB_HIDDEN_DIM256嵌入 GRU 隐藏维度EMB_NUM_LAYERS2嵌入 GRU 层数DF_HIDDEN_DIM256深度滤波 GRU 隐藏维度DF_NUM_LAYERS3深度滤波 GRU 层数DF_N_ITER1深度滤波迭代次数MASK_PFFalse是否启用后置滤波PF_BETA0.02后置滤波强度系数DF_ORDER5深度滤波阶数config.py 的DfParamsDF_LOOKAHEAD0深度滤波 lookaheadconfig.py 的DfParamsNB_DF96执行深度滤波的频点数上限这些参数通过 config.py 的Config类从config.ini对应模型目录下读取且支持环境变量覆盖config.__call__优先检查os.environ。SR默认 48000、FFT_SIZE默认 960、HOP_SIZE默认 480等全局信号处理参数则在DfParams中定义。7. 训练自己的模型7.1 训练数据准备生成 HDF5 数据集训练入口是 DeepFilterNet/df/train.py它期望一个包含 HDF5 数据集的数据目录以及一份数据集配置 JSON 文件。第一步是用 DeepFilterNet/df/scripts/prepare_data.py 将 wav 文件打包为 HDF5# Install additional dependencies for dataset creation pip install h5py librosa soundfile # Go to DeepFilterNet python package cd path/to/DeepFilterNet/DeepFilterNet # Prepare text file (e.g. called training_set.txt) containing paths to .wav files # # usage: prepare_data.py [-h] [--num_workers NUM_WORKERS] [--max_freq MAX_FREQ] [--sr SR] [--dtype DTYPE] # [--codec CODEC] [--mono] [--compression COMPRESSION] # type audio_files hdf5_db # # where: # type: One of speech, noise, rir # audio_files: Text file containing paths to audio files to include in the dataset # hdf5_db: Output HDF5 dataset. python df/scripts/prepare_data.py --sr 48000 speech training_set.txt TRAIN_SET_SPEECH.hdf5从源码 prepare_data.py 可以看到更多细节type必须是speech、noise、rir之一——每个 HDF5 数据集通常只存放训练/验证/测试集中的一类数据语音、噪声或房间冲激响应 RIR。HDF5 文件通过 h5py 以libverlatest, swmrTrue模式写入并记录sr、dtype、codec、max_freq等属性。支持--codec pcm/flac/vorbis选择存储编码、--mono强制单声道、--compression设置压缩。写入时会对不足 100ms 的短音频给出警告sample[n_samples] sr / 100。--num_workers控制多进程预处理并发数默认 4。assets/目录下提供了仓库自带的示例数据clean.hdf5、noise.hdf5、noise_flac.hdf5、noise_vorbis.hdf5。7.2 数据集配置dataset.cfgREADME 要求所有数据集放在同一个数据集目录下供训练脚本使用。数据集配置文件README 中的dataset.cfg示例需包含train、valid、test三个条目每个条目是若干[数据集文件名, 采样因子]的二元组列表{ train: [ [ TRAIN_SET_SPEECH.hdf5, 1.0 ], [ TRAIN_SET_NOISE.hdf5, 1.0 ], [ TRAIN_SET_RIR.hdf5, 1.0 ] ], valid: [ [ VALID_SET_SPEECH.hdf5, 1.0 ], [ VALID_SET_NOISE.hdf5, 1.0 ], [ VALID_SET_RIR.hdf5, 1.0 ] ], test: [ [ TEST_SET_SPEECH.hdf5, 1.0 ], [ TEST_SET_NOISE.hdf5, 1.0 ], [ TEST_SET_RIR.hdf5, 1.0 ] ] }说明可以同时使用多个语音或噪声数据集例如多组不同风格的数据集混合。第二项是采样因子用于对数据集过采样/欠采样。例如你有一个瞬态噪声transient noise较多的数据集希望提高非平稳噪声在训练中的占比可把该数据集的采样因子调大大多数情况下设为 1.0 即可。仓库自带的最小可运行示例是 assets/dataset.cfg其train/valid/test均引用clean.hdf5采样因子 100与noise.hdf5采样因子 10可作为快速验证流程的参考。7.3 启动训练# usage: train.py [-h] [--debug] data_config_file data_dir base_dir python df/train.py path/to/dataset.cfg path/to/data_dir/ path/to/base_dir/训练脚本的行为结合 train.py 源码data_config_file数据集配置 JSON 的路径必填data_dir存放所有 HDF5 数据集文件的目录必填base_dir输出目录训练脚本会在其中写入日志、音频样本、模型 checkpoint 和config.ini。若base_dir不存在会自动创建os.makedirs(args.base_dir, exist_okTrue)并创建summaries/子目录。若base_dir下没有config.ini脚本会生成一份默认配置README 提示可参考DeepFilterNet/pretrained_models/DeepFilterNet/config.ini了解完整配置格式。可选参数-b/--host-batchsize-config按主机调整 batch size调用 scripts/set_batch_size.py、--no-resume禁止从已有 checkpoint 续训、--log-level、--debug。训练配置中SEED默认 42控制随机种子训练支持SIGUSR1信号触发的优雅保存signal.signal(signal.SIGUSR1, ...)。训练数据加载基于libdfdatafrom libdfdata import PytorchDataLoader即 pyDF-data 提供的 PyTorch 数据加载器Rust 端实现见 libDF/src/dataset.rs 与 libDF/src/dataloader.rs负责 HDF5 读取、在线混音语音噪声RIR与数据增强libDF/src/augmentations.rs。8. 实时应用LADSPA 插件与 PipeWire 虚拟麦克风除了离线增强DeepFilterNet 还提供实时噪声抑制方案——LADSPA 插件ladspa/可以无缝接入 PipeWire把麦克风变成降噪虚拟麦克风。详见 ladspa/README.md。该插件使用无 lookahead 的模型最小延迟约 20msSTFT 处理本身加上 LADSPA 宿主如 PipeWire的额外延迟。安装方式# 从 release 下载预编译插件查找 libdeep_filter_ladspa或自行构建 cargo build --release -p deep-filter-ladspa ls target/release/libdeep_filter_ladspa* # here should be the compiled pluginPipeWire 集成有两种典型用法虚拟降噪麦克风source把任意 VoIP 应用Zoom、Discord 等的麦克风输入替换为降噪后的信号。参考配置 ladspa/filter-chain-configs/deepfilter-mono-source.conf。虚拟降噪输出sink对某个应用的输出浏览器、播放器、VoIP 等做降噪只保留语音。启动方式pipewire -c filter-chain.conf # - After setting up your filter chain config! # 调试时提高日志级别 RUST_LOGDEBUG pipewire -c filter-chain.confdeepfilter-mono-source.conf的关键配置项ladspa/filter-chain-configs/deepfilter-mono-source.conf将插件安装到/usr/lib/ladspa/libdeep_filter_ladspa.so或本地~/.ladspa/配置中须写绝对路径不能用~或$HOMEplugin /usr/lib/ladspa/libdeep_filter_ladspa.solabel deep_filter_mono可通过Attenuation Limit (dB)限制噪声衰减量6–12 dB 为轻度降噪18–24 dB 为中度降噪100 dB 表示不限制audio.rate 48000插件按 48kHz 处理audio.position [MONO]playback.props.media.class Audio/Source使其成为一个虚拟声源。此外还有配套的 Rust 交互式演示df-demoLinux 下可通过 cargo 运行DeepFilterNet/README.mdcargo nightly run -p df-demo --features ui --bin df-demo --release9. 底层实现libDF / pyDF 的信号处理内核DeepFilterNet 之所以能做到低计算复杂度的实时处理离不开 Rust 实现的信号处理内核。核心状态DFState定义在 libDF/src/lib.rs保存sr采样率、frame_size hop_size、window_size fft_size、freq_size fft_size/2 1等参数使用realfftcrate 预规划前向/逆向 FFTRealFftPlanner避免运行时重复规划初始化vorbis 窗window[i] sin(pi/2 * sin^2(pi*(i0.5)/(fft_size/2)))并计算窗归一化系数wnormerb_fb()按 ERB等效矩形带宽听觉尺度把 FFT 频点划分成nb_bands默认 32个 band每个 band 至少包含min_nb_freqs默认 2个频点且总频点数恰好等于fft_size/2 1analysis_mem/synthesis_mem实现带状态的逐帧流式 STFT/ISTFToverlap-add这正是实时处理及前述延迟的来源。Python 侧通过pyDFpyDF/src/lib.rs暴露DF对象供enhance.py、train.py调用DF(sr, fft_size, hop_size, nb_bands, min_nb_erb_freqs)构造状态并执行analysis()STFT ERB 特征 归一化与synthesis()ISTFT。Rust 原生推理则走 C APIlibDF/src/capi.rs由DfTract基于tract引擎加载 ONNX 模型完成实时推理支持设置声道数与衰减上限RuntimeParams::default_with_ch(channels).with_atten_lim(atten_lim)。10. 引用与许可10.1 复现指标的建议README 明确指出要复现论文中的指标推荐使用 Python 实现pip install deepfilternet而非 Rust 的deep-filter二进制DeepFilterNet/README.md。10.2 BibTeX 引用根据使用的模型选择对应引用DeepFilterNet/README.md原始 DeepFilterNetICASSP 2022inproceedings{schroeter2022deepfilternet, title{{DeepFilterNet}: A Low Complexity Speech Enhancement Framework for Full-Band Audio based on Deep Filtering}, author {Schröter, Hendrik and Escalante-B., Alberto N. and Rosenkranz, Tobias and Maier, Andreas}, booktitle{ICASSP 2022 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)}, year{2022}, organization{IEEE} }DeepFilterNet2IWAENC 2022inproceedings{schroeter2022deepfilternet2, title {{DeepFilterNet2}: Towards Real-Time Speech Enhancement on Embedded Devices for Full-Band Audio}, author {Schröter, Hendrik and Escalante-B., Alberto N. and Rosenkranz, Tobias and Maier, Andreas}, booktitle{17th International Workshop on Acoustic Signal Enhancement (IWAENC 2022)}, year {2022}, }DeepFilterNet3INTERSPEECH 2023inproceedings{schroeter2023deepfilternet3, title {{DeepFilterNet}: Perceptually Motivated Real-Time Speech Enhancement}, author {Schröter, Hendrik and Rosenkranz, Tobias and Escalante-B., Alberto N. and Maier, Andreas}, booktitle{INTERSPEECH}, year {2023}, }多帧滤波算法用于助听器场景inproceedings{schroeter2023deep_mf, title {Deep Multi-Frame Filtering for Hearing Aids}, author {Schröter, Hendrik and Rosenkranz, Tobias and Escalante-B., Alberto N. and Maier, Andreas}, booktitle{INTERSPEECH}, year {2023}, }10.3 许可证DeepFilterNet 是免费开源的仓库内所有代码采用双重许可DeepFilterNet/README.mdMIT LicenseLICENSE-MITApache License, Version 2.0LICENSE-APACHE你可以任选其一。除非明确说明否则按照 Apache-2.0 的定义任何有意提交纳入本工作的贡献均按上述双重许可授权不附加额外条款或条件。11. 关键文件速查目的路径命令行增强入口DeepFilterNet/df/enhance.py音频读写与重采样DeepFilterNet/df/io.py配置解析config.ini / 环境变量DeepFilterNet/df/config.py模型注册与参数DeepFilterNet/df/model.py三代模型实现deepfilternet.py、deepfilternet2.py、deepfilternet3.py训练入口DeepFilterNet/df/train.py数据集制作脚本DeepFilterNet/df/scripts/prepare_data.py数据集配置示例assets/dataset.cfg预训练模型包models/Rust 信号处理内核libDF/src/lib.rs、libDF/src/capi.rsPython 脚本调用示例scripts/external_usage.pyLADSPA 实时插件ladspa/、ladspa/filter-chain-configs/deepfilter-mono-source.conf赞分享人工智能语音音频深度学习预训练【免费下载链接】DeepFilterNetNoise supression using deep filtering项目地址https://gitcode.com/GitHub_Trending/de/DeepFilterNet点击查看免费下载相关推荐DeepFilterNet 深度滤波语音增强框架实战48kHz 全频带降噪、实时推理与自定义训练全指南DeepFilterNet 深度滤波语音增强框架实战48kHz 全频带降噪、实时推理与自定义训练全指南 DeepFilterNet 是一个基于「深度滤波De人工智能语音音频深度学习预训练DeepFilterNet基于深度滤波的语音增强技术详解DeepFilterNet基于深度滤波的语音增强技术详解 DeepFilterNet是一个专为全频带音频48kHz设计的低复杂度语音增强框架采用深度滤波人工智能语音音频深度学习预训练【亲测免费】 DeepFilterNet低复杂度全频带音频增强框架DeepFilterNet低复杂度全频带音频增强框架 项目介绍 DeepFilterNet 是一个专为全频带音频48kHz设计的低复杂度语音增强框架基于人工智能语音音频深度学习预训练上一篇PostHog 指标数据查询实战posthog.metrics 与 posthog.metric_attributes 表结构及 HogQL 用法详解下一篇Home Assistant 持久通知完全指南notify.persistent_notification 动作从入门到进阶创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表