PROJET AUTOBLOG


Idleman

source: Idleman

⇐ retour index

Un petit “tempêtage” de tête ?

lundi 13 octobre 2014 à 20:00

Étant donné le nombre de questions à ce sujet dans les commentaires, je me disais qu’il pourrait être intéressant de profiter de la cohorte d’experts que j’ai la chance de compter dans mes lecteurs pour faire un ptit ‘tempetage de tête’ (ou brainstorming si vous y tenez) à propos des solutions de reconnaissance/synthèse vocales existantes et applicables dans un projet informatique
(entre autres, yana).

Ça devrait tout du moins me permettre de centraliser un peu mes recherches et constats concernant cette techno encore peu accessible aux gueux que nous sommes malgré les stupéfiants (mais réservés) progrès de google, apple et microsoft en la matière.

Voilà mon “état de l’art” sur le sujet (oui, je me la joue académique cette semaine)

Besoin

J’ai besoin d’une librairie de reconnaissance et de synthèse vocale intégrable dans une solution domotique (yana)
Cette librairie doit être :

1 – Portable sur 3 minimum : debian (raspbian), windows, macOs
2 – Illimitée en nombre de requêtes, permettre l’écoute/la parole continue
3 – Si possible ne pas nécessiter le web
4 – Être gratuite ou low cost avec un cout ponctuel et non cyclique
5 – Être performante en terme de compréhension de la phrase énoncée, même sur un micro non spécialisé
6 – Ne pas être limitée en termes, en mots, en nombres d’expressions, ne pas être dépendant d’un fichier de phrases “statiques”
7 – Prendre en charge la langue française

Reconnaissance vocale

Voyons ce qui existe aujourd’hui :

Pour répondre direct à la question qui revient régulièrement dans les commentaires :

Non, jasper.io (et aussi LISA) n’est pas une solution de reconnaissance vocale mais un simple CMS qui utilise PocketSphinx et donc qui est inapplicable dans notre système domotique a moins de parler couramment anglais (avec la bonne intonation sinon c’est mort) à votre maison.

Le plus gros HIC étant que même en combinant les librairies, on n’arrive pas à quelque chose de concluant dans le monde linux.

Synthèse vocale

De ce côté là c’est déjà plus simple bien que pas encore parfait:

Pour la synthèse je suis actuellement partis sur le combo suivant pour yana4All :

Si l’OS est windows, on prend l’api windows (locale, performante, dynamqieu etc…) sinon…
On utilise l’api google speech dans le cas ou l’on a bien internet, sinon…
On utilise espeak qui est moche mais qui a le mérite de fonctionner gratuitement partout et en restant locale.

Cette parti est déjà implémentée à yana4All.

Méthodes alternatives

– Trouver une machine pouvant faire tourner Windows a bas coût (à trouver):
Microsoft Sharks Cove à l’air de faire tourner du windows 8.1, mais elle coute dans les 300$
hummingboard, bananapi,ne semblent pas pouvoir faire tourner windows
beaglebones dispose visiblement d’un “Windows Embedded BSP” mais j’ignore si ça    embarque ce qu’il faut pour de la reco
– La MinnowBoard MAX semble aussi pouvoir faire tourner Windows mais 178€, 81€ pour l’entré de gamme qui a l’air violemment bridée

– Installer android sur le pi ou trouver une machine low cost capable de faire tourner au minimum android 4.2 (reco locale) et déporter yana sur ce système pour bénéficier du nouveau sdk local d’android pour la reconnaissance (Si android tourne bien sur le pi SI on peux y placer la version qui embarque le sdk locale de reco/synthèse et SI on peux bien gérer les gpio et autres prérequis de yana) :
– UGOOS UM2 à l’air adaptée mais 75€ quand même ça pique un peu…

– Trouver un webservice gratuit fiable et rapide (la belle utopie)

– Utiliser une interface gestuelle plutôt que vocale (kinects, leapmotion, thalmic myo etc…)

– Trouver un moyen de faire fonctionner windows speech ou dragon naturally speaking sur linux via wine ou wineHQ

Ajout de jerome : Enregistrer les phrases a reconnaître et faire une comparaison entre deux fichiers mp3 (la phrase a reconnaître et la phrase énoncée) (cf : http://en.wikipedia.org/wiki/Acoustic_fingerprint pour la comparaison par empreintes acoustiques)

– Ajout de YannXplorer: Acheter un carte Udoo (84€) qui permet d’installer android 4.3 avec la reco vocale locale, bonne solution mais encore trop cher

– Ajout de raphkun: Acheter un carte minnowboard-max(99$) qui permet d’installer windows et sa reco vocale, même argument que pour la udoo.

– Ajout de “ah merde j’ai oublié le pseudo et je retrouve pas le commentaire”:On peux gruger voxygen en chopant le stream audio depuis l’url :  http://www.voxygen.fr/sites/all/modules/voxygen_voices/assets/proxy/index.php?method=redirect&text=test&voice=Electra&ts=14030902642 Ca fonctionne mais uniquement jusqu’au jour ou voxygen verrouillera le service.

Si vous avez des idées, questions, suggestions, insultes… pour faire avancer le schmilblick, c’est à vous de “tempêter du bulbe” dans les commentaires !  :)