Konekäännös · Englanninkielinen alkuperäinen
Puheenparannus .. DeepFilterNet3
Poista taustamelu puhetallenteista, joissa käytetään DeepFilterNet3. Malli toimii Neural Engine vialla CoreML tehokkaassa inferenssissä, kun taas kaikki signaalien käsittely (STFT, ERB-suodatinpankki, syvä suodatus) kulkee CPU kautta kiihdytys/vDSP.
DSP-polku seuraa libdf loppuun asti: 1/960 analyysiscaling, normalisointi alfa 0.99, nolla-pehmustetut syväsuodattimet ja oikea NumPy C/Fortran -matriisijärjestys. Kiinteällä 20-lippaallaVoiceBank-DEMAND -alaryhmällä, Swift pisteytetyt PESQ 3.097, STOI 0,964 ja SI-SDR 19.12 dB vs. 3.029, 0,962 ja 18.31 dB virallisessa Python DF3.
Ennen näytettä/näytteen jälkeen
Meluisa puhevideo, joka on käsitelty DeepFilterNet3, jotta kuulet CoreML -denoiserin ennen sen käyttöä paikallisesti.
Arkkitehtuuri
DeepFilterNet3 käyttää kaksoisdekooderiarkkitehtuuria, joka erottaa spektrisen kuoren parannuksen hienojakoisesta spektrin yksityiskohtaisesta talteenotosta.
| Vaihe | Yksityiskohdat |
|---|---|
| STFT | Lyhytaikainen Fourier muuntaa kautta vDSP |
| Koodain | 4 SepConv2d kerrokset + SqueezedGRU |
| ERB-purkaja | Sigmoid maski levitetty ERB-asteikolla taajuuskaistat |
| DF Dekooderi | 5-tap kompleksiarvotetut suodatuskertoimet |
| iSTFT | Käänteinen STFT palauttaa aika- domain-signaalin |
ERB-dekoodaaja arvioi voittonaamion Ekvivalentin suorakaistaisen kaistanleveyden (ERB) asteikolla, jossa käsitellään laaja-alaista spektrimuotoilua. DF-dekooderi ennustaa 5-tapin monimutkaiset suodatuskertoimet yksityiskohtaisiksi ja soveltaa oppineita suodattimia suoraan taajuusalueella.
Jalostusputkisto
- STFT ...
- ERB Ominaisuudet Kartta STFT-säiliöt ERB-asteikolle
- Neural Network ... Koodaajaprosessien ominaisuudet Neural Engine; ERB- ja DF-dekooderit ennustavat lisäparametreja
- ERB Maskiminen ... Käytä sigmoid gain maskia spektrikuoren melun vaimentamiseksi
- Syväsuodatus ... Käytä 5-tap monimutkaisia kertoimia hienospektrin yksityiskohtien talteenottoon
- iSTFT ...
Malli
| Variantti | Koko | Tarkkuus |
|---|---|---|
| Oletus | ~2,2 Mt | 8-bittiset paletoidut painot, FP16 compute |
CLI-käyttö
# 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
Valinnat
| Vaihtoehto | Tavaran kuvaus |
|---|---|
--output, -o | Tulosta tiedostopolku (oletusarvo <input>_denoised.wav) |
--model | Yhteensopiva HuggingFace mallivaraston ID (oletus: aufklarer/DeepFilterNet3-CoreML) |
DeepFilterNet3 toimii Neural Engine CoreML, ei GPU MLX, mikä tarkoittaa, että se toimii tehokkaasti myös muiden GPU-pohjaisten mallien (ASR, TTS ollessa käynnissä. Metallin kokoamista ei tarvita.
Mallilataukset
| Malli | Koko | HuggingFace |
|---|---|---|
| DeepFilterNet3 (CoreML, 8-bittinen paletisoitu) | ~2,2 Mt | aufklarer/DeepFilterNet3-CoreML |
Yhdistäminen muiden mallien kanssa
Puheenparannus on erityisen hyödyllinen esikäsittelynä ennen muita malleja:
- Ennen transkriptiota Denoise-ääni ennen ASR:n käyttöä parantaakseen sanavirhelukua meluisissa äänitallennuksissa
- Ennen kaiutinta Puhdistusääni tuottaa luotettavampia kaiuttimen kaiuttimet
- Ennen diarisaatiota ...
# 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)
Saatavana myös Android ja Linux & Windows puheydin kautta (ONNX Runtime) .