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.
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.
Arkitektur
DeepFilterNet3 bruger en dual- dekoder arkitektur, der adskiller spektral konvolut ekstraudstyr fra finegraden spektral detalje opsving.
| Fase | Detaljer |
|---|---|
| STFT | Kort tid Fourier transformere via vDSP |
| Encoder | 4 SepConv2d lag + SqueezedGRU |
| ERB Decoder | Sigmoid maske anvendt på ERB- skala frekvensbånd |
| DF Decoder | 5-tap kompleks-værdiansættes filtreringskoefficienter |
| iSTFT | Invers 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
- STFT - Dekomponere støjende lyd i tids- frekvens repræsentation ved hjælp af vDSP
- ERB-funktioner - Kort STFT-bins til ERB- skala frekvensbånd
- Neurale netværk - Encoder processer funktioner på Neural Engine; ERB og DF dekodere forudsige ekstraudstyr parametre
- ERB Masking - Påfør sigmoid gain maske til at undertrykke støj i spektral konvolut
- Dyb filtrering - Påfør 5- tap komplekse koefficienter for fine spektrale detaljer opsving
- iSTFT - Rekonstruere ren lyd fra det forbedrede spektrum
Model
| Variant | Størrelse | Præcision |
|---|---|---|
| Standard | ~ 2,2 MB | 8- 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
| Valgmulighed | Varebeskrivelse |
|---|---|
--output, -o | Uddatafil sti (standard til <input>_denoised.wav) |
--model | Kompatibel HuggingFace-modeldatalagringsID (standard: aufklarer/DeepFilterNet3-CoreML) |
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
| Model | Størrelse | HuggingFace |
|---|---|---|
| DeepFilterNet3 (CoreML, 8- bit paletteret) | ~ 2,2 MB | aufklarer / DeepFilterNet3-CoreML |
Kombination med andre modeller
Taleforbedring er særlig nyttig som et forbehandling trin før andre modeller:
- Før transskription - Denoise lyd, før du kører ASR til at forbedre ordet fejlfrekvens på støjende optagelser
- Før højttalerindlejring - Renere lyd producerer mere pålidelige højttalerindlejringer
- Før diarisering - Støjfjernelse kan forbedre segmenteringsnøjagtigheden
# 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).