स्पीच एन्हांसमेंट — DeepFilterNet3

DeepFilterNet3 का उपयोग करके स्पीच रिकॉर्डिंग से बैकग्राउंड नॉइज़ हटाएँ। मॉडल कुशल इन्फ़रेंस के लिए CoreML के माध्यम से Neural Engine पर चलता है, जबकि सभी सिग्नल प्रोसेसिंग (STFT, ERB filterbank, deep filtering) Accelerate/vDSP के माध्यम से CPU पर चलती है।

आधिकारिक DF3 के समान गुणवत्ता

पूरा DSP पथ libdf का अनुसरण करता है: विश्लेषण स्केल 1/960, नॉर्मलाइज़ेशन alpha 0.99, डीप-फ़िल्टर किनारों पर ज़ीरो पैडिंग और सही NumPy C/Fortran मैट्रिक्स क्रम। VoiceBank-DEMAND के निश्चित 20-क्लिप सबसेट पर Swift ने PESQ 3.097, STOI 0.964 और SI-SDR 19.12 dB प्राप्त किए, जबकि आधिकारिक Python DF3 के परिणाम 3.029, 0.962 और 18.31 dB रहे।

पहले/बाद का सैंपल

DeepFilterNet3 से प्रोसेस किया गया noisy speech clip, ताकि CoreML denoiser चलाने से पहले उसका असर सुन सकें।

Noisy inputMP3, 48 kHz
DeepFilterNet3 outputMP3, 48 kHz

आर्किटेक्चर

DeepFilterNet3 एक dual-decoder आर्किटेक्चर का उपयोग करता है जो spectral envelope एन्हांसमेंट को fine-grained spectral detail रिकवरी से अलग करता है।

चरणविवरण
STFTvDSP के माध्यम से Short-time Fourier transform
Encoder4 SepConv2d layers + SqueezedGRU
ERB DecoderERB-scale frequency bands पर लागू Sigmoid mask
DF Decoder5-tap complex-valued filtering coefficients
iSTFTTime-domain signal को पुनर्निर्माण करने के लिए Inverse STFT

ERB Decoder Equivalent Rectangular Bandwidth (ERB) scale पर एक gain mask का अनुमान लगाता है, जो broad spectral shaping को हैंडल करता है। DF Decoder fine detail के लिए 5-tap complex filtering coefficients का अनुमान लगाता है, जो frequency domain में सीधे learned filters लागू करता है।

प्रोसेसिंग पाइपलाइन

  1. STFT — vDSP का उपयोग करके noisy ऑडियो को time-frequency प्रतिनिधित्व में विघटित करें
  2. ERB Features — STFT bins को ERB-scale frequency bands पर मैप करें
  3. Neural Network — Encoder Neural Engine पर features प्रोसेस करता है; ERB और DF decoders एन्हांसमेंट पैरामीटर का अनुमान लगाते हैं
  4. ERB Masking — spectral envelope में नॉइज़ को दबाने के लिए sigmoid gain mask लागू करें
  5. Deep Filtering — fine spectral detail रिकवरी के लिए 5-tap complex coefficients लागू करें
  6. iSTFT — एन्हांस्ड स्पेक्ट्रम से साफ़ ऑडियो का पुनर्निर्माण करें

मॉडल

वेरिएंटआकारप्रिसिज़न
डिफ़ॉल्ट~2.2 MB8-bit पैलेटाइज़्ड वेट, FP16 गणना

CLI उपयोग

# Denoise audio (output to _denoised.wav)
.build/release/speech denoise noisy.wav

# Specify output file
.build/release/speech denoise noisy.wav -o clean.wav

# Use another compatible HuggingFace repository
.build/release/speech denoise noisy.wav --model owner/DeepFilterNet3-CoreML

विकल्प

विकल्पविवरण
--output, -oआउटपुट फ़ाइल पथ (डिफ़ॉल्ट <input>_denoised.wav)
--modelअनुकूल HuggingFace मॉडल रिपॉज़िटरी ID (डिफ़ॉल्ट: aufklarer/DeepFilterNet3-CoreML)
महत्वपूर्ण

DeepFilterNet3 MLX के माध्यम से GPU पर नहीं, CoreML के माध्यम से Neural Engine पर चलता है। इसका अर्थ है कि यह कुशलता से काम करता है भले ही अन्य GPU-आधारित मॉडल (ASR, TTS) चल रहे हों। किसी metallib कंपाइलेशन की आवश्यकता नहीं है।

मॉडल डाउनलोड

मॉडलआकारHuggingFace
DeepFilterNet3 (CoreML, 8-bit पैलेटाइज़्ड)~2.2 MBaufklarer/DeepFilterNet3-CoreML

अन्य मॉडलों के साथ संयोजन

स्पीच एन्हांसमेंट अन्य मॉडलों से पहले एक प्रीप्रोसेसिंग चरण के रूप में विशेष रूप से उपयोगी है:

# Denoise then transcribe
.build/release/speech denoise noisy.wav -o clean.wav
.build/release/speech transcribe clean.wav

Swift API

import SpeechEnhancement

let model = try await SpeechEnhancer.fromPretrained()
let cleanAudio = try model.enhance(audio: noisySamples, sampleRate: 48000)

Android पर भी, और Speech Core (ONNX Runtime) के माध्यम से Linux व Windows पर उपलब्ध।