RNNoise vs sottrazione spettrale per la soppressione del rumore del microfono del pennarello di lettura. Miglioramento SNR per modello, costo MIPS e precisione ASR su 11 modelli di produzione.

Pubblicato il: dic 23, 2020 - 70 Visualizzazioni

Soppressione del Rumore del Penna di Lettura e Integrazione RNNoise

Pubblico: Questo articolo è rivolto agli acquirenti di hardware e agli ingegneri firmware audio che devono specificare la soppressione del rumore del microfono su una linea di penne lettori. Si presuppone che sappiate già cos'è un microfono MEMS e che ora dobbiate scegliere tra sottrazione spettrale, filtraggio di Wiener e una rete neurale ricorrente come RNNoise per il vostro build 2026.

La penna lettore è un dispositivo di registrazione. Ogni K7, KF1, L5, Q6, Q8, T2 e Y6 viene spedito con almeno un microfono MEMS; L5, T2 e Y6 vengono spediti con due microfoni per il beamforming. Il microfono viene utilizzato per tre funzioni: riconoscimento vocale (il bambino dice una parola, la penna verifica la pronuncia), ricerca vocale (il bambino chiede "cos'è un vulcano") e modalità interfono (l'app dei genitori ascolta attraverso la penna). Tutti e tre i carichi di lavoro falliscono se il segnale del microfono è contaminato da rumore in aula, ronzio dell'HVAC, bleed audio del tablet o un altro bambino che parla sullo sfondo. Questo articolo confronta i tre approcci di soppressione del rumore effettivamente utilizzati nei nostri 11 modelli di produzione (B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6), con miglioramento SNR misurato, costo MIPS, incremento accuratezza ASR e linguaggio di specifica procurement che lo definisce.

1. Perché la soppressione del rumore non è opzionale su una penna lettore

Una penna lettore viene utilizzata in ambienti acusticamente ostili per l'acquisizione della voce con microfoni di piccole dimensioni. Lo scenario in aula è il peggiore: 25-35 dBA di rumore ambientale da 25-30 bambini, più ventole del proiettore a 45 dBA, più l'HVAC a 50 dBA. Lo scenario domestico è migliore ma ancora problematico: TV a 60 dBA dall'altra parte della stanza, elettrodomestici da cucina a 55 dBA, rumore dei fratelli a 50 dBA. La distanza penna-bocca è tipicamente 5-15 cm nell'uso in aula e 1-3 cm nell'uso domestico, il che pone il livello della voce a -10 o -25 dBFS al microfono mentre il rumore ambientale si trova a -40 o -30 dBFS. Il rapporto segnale-rumore all'ingresso del microfono è quindi spesso 5-20 dB prima di qualsiasi elaborazione.

Per un parlante adulto in una stanza silenziosa, i motori ASR moderni gestiscono comodamente 5 dB SNR. Per un parlante bambino in un'aula rumorosa, lo stesso motore fallisce — i fonemi dei bambini sono più acuti, meno coerenti e il rapporto segnale-rumore è molto peggiore. Una fase di soppressione del rumore che aumenti il SNR di 6-10 dB prima del motore ASR è la differenza tra la penna che verifica correttamente una pronuncia e la penna che dice al bambino che ha sbagliato tre volte di fila.

Nei nostri oltre 47.000 unità spedite, i ticket di supporto relativi al microfono si suddividono così: 41% "l'ASR ha sbagliato in una stanza rumorosa", 22% "la ricerca vocale non si attiva", 19% "la modalità interfono è incomprensibile", 18% "la penna registra il proprio audio". Un algoritmo di soppressione del rumore ben scelto riduce le prime tre categorie del 40-60% nei nostri dati sul campo.

2. Le tre famiglie di soppressione del rumore

Tre approcci alla soppressione del rumore sono utilizzati nel firmware di produzione reale delle penne lettori. Non sono intercambiabili.

Sottrazione spettrale è l'approccio più vecchio e più economico. L'algoritmo stima lo spettro del rumore durante il silenzio, poi lo sottrae dallo spettro del parlato rumoroso con un floor. Funziona a meno di 5 MIPS su un Cortex-A5 e produce circa 4-6 dB di miglioramento SNR nel rumore stazionario (HVAC, ventola) ma meno di 2 dB nel rumore non stazionario (altri bambini che parlano). Produce anche artefatti udibili di "rumore musicale" — brevi bip tonali che confondono i bambini.

Filtro di Wiener e stimatori MMSE sono il passo successivo. Stimano lo spettro del parlato pulito usando un modello statistico del rumore e producono circa 6-9 dB di miglioramento SNR con meno artefatti musicali. Il costo MIPS è 8-15 su un Cortex-A5. Questo è l'algoritmo di lavoro utilizzato sulle piattaforme B1, B2, F8, K7, KF1, P2, Q6, Q8.

Soppressione con rete neurale ricorrente (RNNoise, DeepFilterNet, altri) è l'approccio moderno. Una piccola rete GRU viene addestrata su migliaia di ore di parlato rumoroso per stimare una maschera di soppressione applicata per bin di frequenza. Produce 9-14 dB di miglioramento SNR, gestisce il rumore non stazionario con grazia e non ha artefatti di rumore musicale. Il costo MIPS è 25-45 su un Cortex-A53. Questo è l'algoritmo sulle piattaforme L5, T2 e Y6, integrato come RNNoise commit 1cfd9a6 (rilascio giugno 2024).

Per un acquirente che sceglie un approccio, il compromesso è semplice: sottrazione spettrale per pressione sui costi BOM sotto i 5$, Wiener per programmi mainstream, RNNoise per programmi premium e distribuiti in aula.

3. Baseline di soppressione del rumore per modello

La tabella seguente riassume cosa è effettivamente nel firmware di produzione sugli 11 modelli. "Algoritmo di soppressione" indica la libreria specifica; "costo MIPS" è misurato a 16 kHz mono; "miglioramento SNR" è il delta in dB tra SNR di input e SNR di output su un corpus standardizzato di parlato rumoroso; "incremento accuratezza ASR" è il miglioramento percentuale assoluto in punti nel tasso di riconoscimento delle parole su un set di test con rumore d'aula.

Modello N. microfoni Soppressione MIPS Miglioramento SNR Incremento accuratezza ASR Firmware
B1 1 Wiener MMSE 12 6,5 dB +7,2 pp 2.4.7
B2 1 Wiener MMSE 12 6,8 dB +7,5 pp 2.4.7
F8 1 Sottr. spettrale 4 4,2 dB +4,0 pp 3.1.2
K7 1 Wiener MMSE 14 7,4 dB +8,1 pp 1.9.5
KF1 1 Wiener MMSE 14 7,4 dB +8.1 pp 1.9.5
L5 2 RNNoise 38 11.8 dB +14.2 pp 4.2.0
P2 1 Spectral sub 4 4.0 dB +3.6 pp 2.0.3
Q6 1 Wiener MMSE 14 7.6 dB +8.4 pp 3.3.1
Q8 1 Wiener MMSE 14 7.6 dB +8.4 pp 3.3.1
T2 2 RNNoise 42 12.4 dB +15.1 pp 2.6.4
Y6 2 RNNoise 38 12.0 dB +14.6 pp 2.6.4

Le piattaforme F8 e P2 si distinguono come le più deboli — utilizzano la sottrazione spettrale perché il silicio Cortex-A7 più datato non può permettersi di allocare i MIPS necessari per un filtro Wiener adeguato mentre si occupa contemporaneamente della decodifica AAC e della ricerca OID. Le piattaforme L5, T2, Y6 guidano il portfolio con un ampio margine. In un'aula reale, L5 con RNNoise produce un miglioramento dell'accuratezza ASR che è il doppio di quello del filtro Wiener del K7.

SNR Improvement by Model (dB, classroom-noise test set)

4. Architettura Interna di RNNoise e Perché Prevale

RNNoise è una piccola rete neurale ricorrente progettata da Jean-Marc Valin di Xiph.Org, la stessa organizzazione che ha progettato Opus. L'architettura è intenzionalmente minimale: una GRU con 24 unità nascoste che operano su 22 bande di frequenza, più un piccolo MLP di output che stima una maschera di guadagno per banda. Il conteggio totale dei parametri è di circa 12.000 pesi — abbastanza piccoli da entrare nella cache L2 di L5 ed essere eseguiti a 38 MIPS su un Cortex-A53.

I dati di training contano quanto l'architettura. RNNoise viene addestrato su una combinazione di parlato pulito (dataset DNS Challenge, 500+ ore), fonti di rumore (lo stesso dataset, 150+ ore di rumore di mensa, rumore d'aula, rumore domestico) e parlato rumoroso mescolato artificialmente. Il risultato è un modello che gestisce il rumore non stazionario con eleganza — quando un altro bambino inizia a parlare, RNNoise non si aggancia a quello come nuovo "pavimento di rumore" nel modo in cui lo farebbe un algoritmo di sottrazione spettrale.

Per L5, T2 e Y6, RNNoise funziona a 16 kHz mono (sottocampionato dal nativo 24 kHz catturato dal microfono MEMS), producendo un output di parlato pulito a 16 kHz che alimenta il motore ASR. Il file del modello è di 250 KB su flash, che è all'incirca la dimensione di due clip AAC a 96 kbps. Questo è l'intero costo di archiviazione di RNNoise sulla piattaforma.

5. Come RNNoise Interagisce con il Motore ASR

Un errore comune di approvvigionamento è specificare RNNoise e assumere che il motore ASR a valle migliorerà automaticamente. Migliorerà, ma non del pieno 14 punti percentuali che il miglioramento SNR suggerirebbe. Il motore ASR stesso ha una robustezza al rumore integrata, e i due strati interagiscono in modi non evidenti.

Su L5 con RNNoise che alimenta il motore ASR on-device, il miglioramento end-to-end dell'accuratezza delle parole nel rumore d'aula è di +14,2 punti percentuali (dal 58% di base al 72,2% con RNNoise). Su T2 con RNNoise e il motore ASR leggermente più capace ottimizzato per il parlato infantile, il miglioramento è di +15,1 punti percentuali. Su F8 con sottrazione spettrale, lo stesso motore ASR guadagna solo +4,0 punti percentuali perché la sottrazione spettrale lascia troppo rumore residuo con cui il motore ASR deve lavorare.

L'interazione è moltiplicativa: un algoritmo di soppressione del rumore con 6 dB di miglioramento SNR ottiene più accuratezza ASR di uno con 10 dB di miglioramento SNR se l'algoritmo a dB inferiore ha un profilo spettrale più pulito. Wiener MMSE su K7 ha un SNR leggermente peggiore di RNNoise su L5 ma produce un profilo spettrale con meno rumore musicale, che il motore ASR preferisce. L'accuratezza ASR end-to-end su K7 è +8,1 pp; su L5 è +14,2 pp. Entrambe sono risposte corrette per le rispettive piattaforme.

ASR Accuracy Uplift by Model (percentage points, classroom-noise)

6. Quando la Sottrazione Spettrale È la Risposta Giusta

RNNoise non è sempre la risposta giusta. Ci sono tre scenari in cui la sottrazione spettrale su B1, B2, F8 o P2 è accettabile o addirittura preferibile. Primo, scenari domestici monouso dove il genitore supervisiona il bambino in una stanza tranquilla e il rumore ambientale è inferiore a 35 dBA — la sottrazione spettrale è sufficiente. Secondo, programmi guidati dai costi dove la pressione sul BOM è reale e il file del modello RNNoise è inaccessibile — i 250 KB di RNNoise non sono enormi in termini assoluti ma su un B1 con solo 4 MB di spazio di intestazione della partizione audio, è significativo. Terzo, programmi vincolati dalla batteriadove il carico RNNoise di 38 MIPS ridurrebbe l'autonomia di 5,0 ore del B1 di 30 minuti; la sottrazione spettrale a 4 MIPS preserva l'autonomia della batteria.

Per le implementazioni scolastiche, RNNoise è la risposta corretta. Per l'uso domestico consumer, la scelta dipende dal punto di prezzo e dal costo BOM che l'OEM è disposto ad assorbire.

7. Limitazioni e Modalità di Guasto di RNNoise

RNNoise non è magia. Tre modalità di guasto appaiono sul campo e devono essere progettate tenendole in considerazione. Primo, confusione del rumore con forma vocale: RNNoise occasionalmente classifica alcuni versi di neonati simili alla voce, fischi o canti come "rumore" e li sopprime. Questo è fastidioso in una famiglia con più bambini ma accettabile nell'uso della penna con un singolo bambino. Secondo, sovra-soppressione delle occlusive: i primi 5 ms di un /p/ o /t/ possono essere leggermente attenuati, riducendo la nitidezza della verifica della pronuncia. Compensiamo aggiungendo una pre-enfasi di +3 dB sopra i 2 kHz prima di RNNoise e una de-enfasi complementare dopo. Terzo, soppressione della musica: RNNoise tratta la musica come rumore e la sopprime. Questo va bene per l'ASR in aula ma significa che la funzione di condivisione musicale in modalità interfono sul L5 deve bypassare RNNoise.

Per un responsabile acquisti che scrive un RFQ, queste limitazioni si traducono in due righe di specifica. Prima, "la soppressione del rumore deve preservare i transitori di inizio vocale entro ±2 dB a 5 ms dopo l'inizio." Seconda, "la soppressione del rumore deve includere una modalità bypass per audio non vocale (musica, interfono) con tempo di commutazione inferiore a 100 ms."

8. Il Microfono Stesso: Precondizionamento Hardware

RNNoise e il filtraggio Wiener sono algoritmi software; i loro numeri di miglioramento del SNR presuppongono un segnale ragionevolmente ben catturato al microfono MEMS. Se il microfono è posizionato male, l'algoritmo non può recuperare. Tre precondizioni hardware si applicano a tutti gli 11 modelli. Prima, il microfono MEMS deve avere un SNR di almeno 62 dB(A) — K7, KF1, L5, Q6, Q8, T2 e Y6 utilizzano unità MEMS a 64 dB(A). Seconda, la porta del microfono deve essere di almeno 0,8 mm di diametro e non ostruita dall'alloggiamento — F8 e P2 avevano un problema di ostruzione della porta nel firmware inizio 2024 che abbiamo corretto nella 3.1.2. Terza, il microfono deve essere isolato acusticamente dall'altoparlante di almeno 25 mm di plastica o da una guarnizione sigillata — senza questo isolamento, la riproduzione dell'altoparlante fuoriesce nel microfono e confonde sia l'AEC che la soppressione del rumore.

Il portafoglio di penne da lettura applica tutte e tre le precondizioni nella strumentazione. Per un importatore che acquista da un nuovo ODM, questi sono i tre elementi hardware da verificare prima di accettare qualsiasi consegna di firmware audio.

9. Come Specificare la Soppressione del Rumore in un Contratto di Acquisto

Il linguaggio del RFQ dovrebbe indicare la classe dell'algoritmo e l'obiettivo di miglioramento del SNR: "La soppressione del rumore del microfono deve raggiungere un miglioramento del SNR di almeno 10 dB sul set di test standardizzato per rumore d'aula (30 dBA ambientali, balbettio di 25 bambini, HVAC a 50 dBA), misurato a 16 kHz mono con il livello vocale a −20 dBFS. Classe dell'algoritmo: Wiener MMSE per piattaforme di fascia media, basato su RNN (RNNoise o equivalente) per piattaforme premium. Il miglioramento dell'accuratezza ASR deve essere di almeno +10 punti percentuali rispetto a una baseline senza soppressione sullo stesso set di test."

Tre dettagli contano. Prima, il corpus di test deve essere specificato — usiamo un corpus curato di rumore d'aula tratto da 12 diversi distretti scolastici; un fornitore che testa su rumore da caffè o rumore stradale riporterà numeri di SNR gonfiati. Seconda, il motore ASR deve essere specificato — un algoritmo di soppressione del rumore abbinato a un ASR cloud di fascia alta produrrà numeri diversi rispetto allo stesso algoritmo abbinato a un ASR on-device. Terza, il livello del segnale di test deve essere specificato — a −20 dBFS vocale, il nostro miglioramento del SNR è 11,8 dB; a −10 dBFS vocale, è 9,4 dB; a −30 dBFS vocale, è 14,1 dB. Il livello conta.

Consiglio per l'acquirente: Eseguite il vostro test di soppressione del rumore su un clip di 30 secondi registrato nel vostro ambiente di implementazione target. Qualsiasi fornitore che afferma che la sua soppressione del rumore è "la migliore della categoria" dovrebbe essere disposto a inviarvi un clip di esempio per la verifica. Se non lo fanno, trattate l'affermazione come marketing.

10. Matrice Decisionale e Raccomandazioni

Per un programma completamente nuovo di penne da lettura che parte nel 2026, la raccomandazione è RNNoise su qualsiasi piattaforma con core Cortex-A53 o più recente (L5, T2, Y6), e Wiener MMSE sulle piattaforme di fascia media K7, KF1, Q6, Q8. Per programmi guidati dai costi su B1, B2, F8, P2, la sottrazione spettrale esistente è accettabile per l'uso domestico ma dovrebbe essere sostituita con Wiener MMSE se il programma è orientato all'implementazione scolastica.

Per un importatore che scrive la specifica di soppressione del rumore, la riga che chiude il contratto recita: "La soppressione del rumore del microfono deve raggiungere un miglioramento del SNR ≥ 10 dB su corpus standardizzato di rumore d'aula, miglioramento dell'accuratezza ASR ≥ +10 punti percentuali rispetto alla baseline senza soppressione, con modalità bypass per audio non vocale e preservazione dei transitori di inizio vocale entro ±2 dB a 5 ms dopo l'inizio."

Letture Correlate

Richiedi un Preventivo — Ottieni una Risposta Rapida dalla Fabbrica

Frequently Asked Questions

Quale algoritmo di soppressione del rumore utilizza la penna di lettura L5?
Le piattaforme L5, T2 e Y6 utilizzano RNNoise, una rete neurale ricorrente progettata da Xiph.Org, integrata al commit 1cfd9a6 di giugno 2024. Produce un miglioramento del rapporto segnale/rumore di 11,8-12,4 dB nel rumore d'aula e aumenta la precisione ASR di 14,2-15,1 punti percentuali rispetto a una baseline senza soppressione.
RNNoise funziona per la voce dei bambini in aule rumorose?
Sì. RNNoise è addestrato sul dataset DNS Challenge con oltre 500 ore di voce pulita e oltre 150 ore di rumore di mensa e aula. Sulla L5 e T2 in un progetto pilota scolastico di 12.000 unità in un paese del Golfo, l'ASR alimentato da RNNoise ha raggiunto una precisione di parole del 72-76% in un rumore ambientale d'aula di 30 dBA, rispetto al 58% senza soppressione.
Perché i modelli più vecchi di penne di lettura usano la sottrazione spettrale invece di RNNoise?
Le piattaforme B1, B2, F8 e P2 utilizzano core Cortex-A5 o A7 con margine MIPS limitato; RNNoise consumerebbe 25-45 MIPS, competendo con la decodifica audio e la ricerca OID. La sottrazione spettrale funziona a 4 MIPS e produce un miglioramento del rapporto segnale/rumore di 4,0-4,2 dB, che è accettabile per l'uso domestico ma non per la distribuzione in aula.
Quanta memoria flash usa RNNoise su una penna di lettura?
Il file del modello RNNoise è di 250 KB sulla flash, circa la dimensione di due clip audio AAC a 96 kbps. Questo è l'intero costo di archiviazione sulle piattaforme L5, T2, Y6, più un carico di 38-42 MIPS sul core Cortex-A53 durante la cattura attiva del microfono.
RNNoise può gestire rumore non stazionario come altri bambini che parlano?
Sì. L'architettura ricorrente di RNNoise traccia le statistiche del rumore attraverso i frame, quindi un'insorgenza improvvisa di rumore di confusione viene trattata come una nuova fonte di rumore piuttosto che come voce. La sottrazione spettrale e i filtri Wiener di base si agganciano alla prima stima del rumore che vedono e non riescono ad adattarsi, ed è per questo che RNNoise produce un miglioramento della precisione ASR 2-3 volte migliore nel rumore non stazionario.
Il tuo carrello
La tua esperienza su questo sito migliorerà consentendo i cookie. Cookie Policy
Chat on WhatsApp