L'attività Classificatore audio MediaPipe ti consente di classificare i clip audio in un insieme di categorie definite, come la musica di una chitarra, il fischietto del treno o il canto di un uccello. Le categorie vengono definite durante l'addestramento del modello. Questa attività opera su dati audio con un modello di machine learning (ML) sotto forma di clip audio indipendenti o di uno stream continuo e genera un elenco di potenziali categorie classificate in base al punteggio di probabilità decrescente.
Inizia
Inizia a utilizzare questa attività seguendo una di queste guide all'implementazione per la tua piattaforma di destinazione. Queste guide specifiche per piattaforma illustrano un'implementazione di base di questa attività, inclusi un modello consigliato ed un esempio di codice con le opzioni di configurazione consigliate:
- Android - Esempio di codice - Guida
- Python - Esempio di codice Guida
- Web - Esempio di codice - Guida
Queste guide specifiche per piattaforma illustrano l'implementazione di base di questa attività, inclusi un modello consigliato ed un esempio di codice con le opzioni di configurazione consigliate.
Dettagli attività
Questa sezione descrive le funzionalità, gli input, gli output e le opzioni di configurazione di questa attività.
Funzionalità
- Elaborazione dell'audio in input: l'elaborazione include ricampionamento dell'audio, buffering, inquadratura e trasformazione di Fourier.
- Impostazioni internazionali mappa etichette: imposta la lingua utilizzata per i nomi visualizzati.
- Soglia punteggio: filtra i risultati in base ai punteggi delle previsioni.
- Rilevamento top-k: filtra i risultati del rilevamento dei numeri.
- Lista consentita e lista bloccata: specifica le categorie rilevate.
Input attività | Output attività |
---|---|
L'input può essere uno dei seguenti tipi di dati:
|
Il classificatore audio restituisce un elenco di categorie contenenti:
|
Opzioni di configurazione
Questa attività prevede le seguenti opzioni di configurazione:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
running_mode |
Imposta la modalità di esecuzione per l'attività. Il classificatore audio ha due modalità: AUDIO_CLIPS: la modalità per eseguire l'attività audio su clip audio indipendenti. STREAM_AUDIO: la modalità per eseguire l'attività audio su uno stream audio, ad esempio dal microfono. In questa modalità, resultListener deve essere chiamato per configurare un listener che riceva i risultati della classificazione in modo asincrono. |
{AUDIO_CLIPS, AUDIO_STREAM } |
AUDIO_CLIPS |
display_names_locale |
Imposta la lingua delle etichette da utilizzare per i nomi visualizzati forniti nei metadati del modello dell'attività, se disponibili. Il valore predefinito è en per
l'inglese. Puoi aggiungere etichette localizzate ai metadati di un modello personalizzato utilizzando l'API Metadata Writer di TensorFlow Lite
| Codice impostazioni internazionali | it |
max_results |
Imposta il numero massimo facoltativo di risultati di classificazione con il punteggio più alto da restituire. Se < 0, verranno restituiti tutti i risultati disponibili. | Eventuali numeri positivi | -1 |
score_threshold |
Imposta la soglia del punteggio di previsione che sostituisce quella fornita nei metadati del modello (se presenti). I risultati inferiori a questo valore vengono rifiutati. | [0,0, 1,0] | Non impostata |
category_allowlist |
Consente di impostare l'elenco facoltativo di nomi di categorie consentite. Se il campo non è vuoto,
i risultati della classificazione il cui nome categoria non è presente in questo set verranno
filtrati. I nomi di categoria duplicati o sconosciuti vengono ignorati.
Questa opzione si esclude a vicenda con category_denylist e l'utilizzo di entrambe genera un errore. |
Qualsiasi stringa | Non impostata |
category_denylist |
Consente di impostare l'elenco facoltativo di nomi di categorie non consentiti. Se il campo non è vuoto, i risultati di classificazione il cui nome di categoria è presente in questo set verranno filtrati. I nomi di categoria duplicati o sconosciuti vengono ignorati. Questa opzione si esclude a vicenda con category_allowlist e l'uso di entrambe genera un errore. |
Qualsiasi stringa | Non impostata |
result_callback |
Imposta il listener dei risultati per ricevere i risultati della classificazione
in modo asincrono quando il classificatore audio è in modalità
stream audio. Può essere utilizzato solo quando la modalità di esecuzione è impostata su AUDIO_STREAM |
N/A | Non impostata |
ottimizzabili
Il classificatore audio richiede il download e l'archiviazione di un modello di classificazione audio nella directory del progetto. Inizia con il modello predefinito consigliato per la tua piattaforma di destinazione quando inizi a sviluppare con questa attività. Gli altri modelli disponibili di solito fanno compromessi tra prestazioni, accuratezza, risoluzione e requisiti delle risorse e, in alcuni casi, includono funzionalità aggiuntive.
Modello Yamnet (consigliato)
Il modello Yamnet è un classificatore di eventi audio addestrato sul set di dati AudioSet per prevedere gli eventi audio definiti nei dati AudioSet. Per informazioni sugli eventi audio riconosciuti da questo modello, consulta l'elenco delle etichette del modello.
Nome modello | Forma di input | Tipo di quantizzazione | Versions |
---|---|---|---|
YamNet | 1 x 15.600 | Nessuna (float32) | Più recente |
Benchmark attività
Ecco i benchmark delle attività per l'intera pipeline basati sui modelli preaddestrati precedenti. Il risultato della latenza è la latenza media su Pixel 6 utilizzando CPU / GPU.
Nome modello | Latenza CPU | Latenza GPU |
---|---|---|
YamNet | 12,29 ms | - |