Maskinoversættelse · Engelsk original

Taleekstraktion - DeepFilterNet3

Fjern baggrundsstøj fra taleoptagelser ved hjælp af DeepFilterNet3Modellen kører på Neural Engine via CoreML for effektiv inferens, mens al signalbehandling (STFT, ERB filterbank, dyb filtrering) kører på CPU via Accelerate / vDSP.

Officiel DF3 paritet

DSP-stien følger libdf slut til slut: 1/960 analyse skalering, normalisering alfa 0.99, zero-polstret dybdefilterhaner, og korrekt NumPy C / Fortran matrix rækkefølge. På en fast 20-klip VoiceBank- DEMAND delsæt, Swift PESQ med scoring 3.097, STOI 0.964, og SI- SDR 19.12 dB versus 3.029, 0.962, og 18.31 dB for officiel Python DF3.

Før / efter prøve

En støjende taleklip behandlet med DeepFilterNet3, så du kan høre CoreML denoiseren, før du kører den lokalt.

Støjende inputMP3, 48 kHz
DeepFilterNet3 outputMP3, 48 kHz

Arkitektur

DeepFilterNet3 bruger en dual- dekoder arkitektur, der adskiller spektral konvolut ekstraudstyr fra finegraden spektral detalje opsving.

FaseDetaljer
STFTKort tid Fourier transformere via vDSP
Encoder4 SepConv2d lag + SqueezedGRU
ERB DecoderSigmoid maske anvendt på ERB- skala frekvensbånd
DF Decoder5-tap kompleks-værdiansættes filtreringskoefficienter
iSTFTInvers STFT til rekonstruere tids- domæne signalet

Den ERB Decoder anslår en gevinst maske på Ækvivalent Rektangulær Båndbredde (ERB) skala, håndtering brede spektrale formning. DF Decoder forudsiger 5- tap komplekse filtreringskoefficienter for fine detaljer, der anvender indlærte filtre direkte i frekvensen domæne.

Forarbejdning af rørledning

  1. STFT - Dekomponere støjende lyd i tids- frekvens repræsentation ved hjælp af vDSP
  2. ERB-funktioner - Kort STFT-bins til ERB- skala frekvensbånd
  3. Neurale netværk - Encoder processer funktioner på Neural Engine; ERB og DF dekodere forudsige ekstraudstyr parametre
  4. ERB Masking - Påfør sigmoid gain maske til at undertrykke støj i spektral konvolut
  5. Dyb filtrering - Påfør 5- tap komplekse koefficienter for fine spektrale detaljer opsving
  6. iSTFT - Rekonstruere ren lyd fra det forbedrede spektrum

Model

VariantStørrelsePræcision
Standard~ 2,2 MB8- bit palætiserede vægte, FP16 beregning

CLI-brug

# 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

Indstillinger

ValgmulighedVarebeskrivelse
--output, -oUddatafil sti (standard til <input>_denoised.wav)
--modelKompatibel HuggingFace-modeldatalagringsID (standard: aufklarer/DeepFilterNet3-CoreML)
Vigtigt

DeepFilterNet3 kører på Neural Engine via CoreML, ikke på GPU via MLXDet betyder, at det fungerer effektivt, selv mens andre GPU- baserede modeller (ASR, TTS) kører. Der kræves ingen metallib kompilering.

Model Downloads

ModelStørrelseHuggingFace
DeepFilterNet3 (CoreML, 8- bit paletteret)~ 2,2 MBaufklarer / DeepFilterNet3-CoreML

Kombination med andre modeller

Taleforbedring er særlig nyttig som et forbehandling trin før andre modeller:

# 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)

Fås også den Android, og Linux & Windows gennem talekerne (ONNX Runtime).