Riconoscimento del parlatore (speaker recognition) - Sintesi vocale

8 Anni 7 Mesi fa #1 da MauroFx
Se i tuoi sogni di bambino erano come i miei, questo argomento è fatto apposta per noi.
I miei sogni di bambino, fatti ad occhi aperti, erano colmi di dialoghi con le macchine che mi circondavano. Star Trek ha contribuito notevolmente a crescere le mie fantasie.

Ma ora che sono grande, a che punto siamo ?
Ho visto la nutrita sezione di questo forum dedicato ai robot, dove ho trovato qualche riferimento alla sintesi vocale, ma con il solo obiettivo di fare riconoscere un "comando" vocale ad una macchina, cercando di renderlo comprensibile indifferentemente dalla persona che emette il comando vocale.
Per questa funzione esistono soluzioni già a portata di mano e di tasca.

Una cosa ben diversa è il "riconoscimento del parlatore" (speaker recognition), dove, invece, è più importante "la persona" che parla, rispetto alla parola pronunciata. L'ideale è associare il riconoscimento del parlatore ad un seguente comando. Meglio ancora se la comunicazione avviene rispecchiando la sintassi umana, che potrebbe utilizzare anche un vecchietto centenario, che avviene comunemente in questo modo:
soggetto => predicato => complemento
così allo stesso modo per la sintesi vocale:
<identificazione soggetto> => <identificazione comando> => <identificazione comando-su-cosa>
ad esempio:
MAURO (pausa) APRI (pausa) PORTA

E' evidente che l'identificazione del soggetto deve avere un dettaglio ed un controllo di verifica più accurato, rispetto alle altre 2 tappe.

Ma il "dialogo" è fatto da un interloquire tra 2 o più soggetti; quindi, anche "la macchina" deve parlare interagendo, con sintassi strettamente dipendente dalla evoluzione del dialogo. E questo si può ottenere SOLO con gestione software del dialogo, ovvero, con la "traduzione" in parola (o in frequenze) del contenuto di una variabile testo, dove lo stesso contenuto è derivato dalla elaborazione software del pezzo di dialogo precedente. Continuando nell'esempio di prima, il contenuto della variabile testo, opportunamente concatenata, potrebbe essere:
<conferma riconoscimento> => <azione-su-cosa> => <azione attivata>
con sintesi vocale:
"BENVENUTO MAURO" + "PORTA" + "IN APERTURA"
in alternativa:
"SOGGETTO NON RICONOSCIUTO"

E tutto questo, SENZA ricorrere a singoli file audio di frammenti di dialogo pre-registrati, altrimenti limitanti nella espansione del progetto e nella qualità del dialogo.

Una logica di funzionamento così, non è rivolta solo ai robot, ma trova applicazione nei campi più svariati. E' per questo motivo che ho ravvisato l'opportunità di postare questo argomento in questa sezione, anziché nella sezione dei robot.

Ma veniamo ai fatti.
Conosco vagamente alcuni prodotti della Sensory Inc, quali il datato RSC-300, il più affidabile (dice) RSC-364, che è un microcontroller a 8 bit speaker recognition.
Mi sembrerebbe strano che Microchips non avesse qualcosa di simile.

In attesa che inventino pure il tele-trasporto, perchè non mettiamo insieme la nostra:
- conoscenza dello stato dell'arte;
- idea;
- intuizione;
- esperienza;
- dubbi;
- quel che ci pare e piace.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • MauroFx
  • Senior Member
  • Senior Member
Di più
8 Anni 7 Mesi fa #2 da alfa75
Argomento interessante del quale se ne parla molto poco :)
non conoscevo i prodotti della sensory ,adesso ho dato una sbirciata e mi sembrano interessanti

Star Trek ha contribuito notevolmente a crescere le mie fantasie


concordo! ma da appassionato di auto per me parlare con KITT non ha prezzo! :) :lol:

Saluti
Andrea

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • alfa75
  • Avatar di alfa75
  • Platinum Member
  • Platinum Member
Di più
8 Anni 7 Mesi fa #3 da MauroFx
Sembrano monto interessanti RSC-464 e RSC-4128, prodotti dalla Sensory Inc. I 2 microcontroller, entrambi dedicati al riconoscimento vocale, si differenziano principalmente, dal fatto che il 464 contiene le memorie, SRAM e EPROM e il 4128 non ne contiene. Quest'ultima può sembrare una limitazione, ma in effetti non lo è, poichè ambedue necessitano di un altro host-microcontroller che permetta loro di gestire le loro potenzialità; tanto vale, quindi, usufruire delle memorie del host-microcontroller.
Ma la cosa più interessante è che la VeeaR ha introdotto in commercio una scheda, denominata EasyVR-3, contenente il RSC4128, corredata degli opportuni filtri vocali, probabilmente ottimizzati per il trattamento del parlato, al fine di renderlo più fruibile alla elaborazione digitale. In allegato ho messo il manuale della EasyVR-3.
Il microcontroller a 8bit RSC4128 della scheda EasyVR-3 dovrebbe contenere precaricato il codice per la gestione del vocale digitalizzato.
Ancora più interessante è la disponibilità (a pagamento) di apposite librerie per poter utilizzare vari host-microcontroller, tra cui gli ATMEGA e ARDUINO. Non ho visto niente di specifico per i PIC della Microships, ma se ci mettesse le mani qualcuno con un pò di esperienza, potrebbe sicuramente modificarle per poterle utilizzate con i nostri PIC.
La scheda EasyVR-3 e il RSC4128 si interfacciano all'host-microcontroller tramite UART, ma se ho capito bene, non è l'unico modo possibile. Questo rende possibile utilizzare un microcontroller qualsiasi, con la dovuta potenzialità.
Al contrario dei componenti Sensory Inc, di difficile reperibilità qui da noi, la scheda EasyVR-3 è commercializzata in Italia da 3 distributori, che rendono disponibili anche le librerie di cui sopra.
Il prezzo di acquisto della scheda è molto abbordabile. Se potessi avere la collaborazione di qualche esperto tra voi (Mauro Laurenti, mettici lo zampino!), me lo comprerei subito.
Che si fa ?

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • MauroFx
  • Senior Member
  • Senior Member
Di più
8 Anni 7 Mesi fa #4 da MauroFx
Scusate, ma non sono sicuro di aver allegato correttamente il manuale. Metto qui il link per scaricarlo:
www.veear.eu/files/EasyVR%203%20User%20Manual%201.0.13.pdf

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • MauroFx
  • Senior Member
  • Senior Member
Di più
8 Anni 7 Mesi fa #5 da Mauro Laurenti
Prodotti interessanti, ma sono arenato tra le idee e oggetti che ho già sul tavolo.

Pero seguirò i progressi.

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro LaurentiStefAMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login