Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[projet] Commander la maison à la voix
#1
J'apprends le développement sous Android... Mon projet : utiliser la reconnaissance vocale Android pour faire passer des ordres à la domotique...

L'appli Android sera très ouverte et pas spécialement orientée KNX. L'idée est juste de passer en paramètre le résultat de la reconnaissance vocale vers une URL. L'utilisateur pourrait paramétrer l'URL en question et la façon dont la reconnaissance sera traitée.

Par exemple : "allumer lumière salon" pourrait être traduit en http://chez.moi/index.php?param="allumer lumière salon" ou en "http://chez.moi/index.php?action=allumer&room=salon&object=lumière".

J'en sais rien encore en fait...

Des idées ?

Mais franchement je débute complètement !!! Alors il va falloir être un peu patient :-)

http://www.suricat.net/web/index.php/201...-la-voix-1
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#2
Intéressant... et courageux ! Smile

Quelques idées comme ça pour lancer le débat :
- attention que la reconnaissance vocale ne fonctionne pas toujours bien il me semble, ce n'est pas encore une science exacte. Il faudrait peut-être prévoir plusieurs variantes de résultats pour une même phrase clé. La recherche Google en reconnaissance vocale fonctionne bien parce que Google utilise des statistiques de probabilité pour reconnaître les mots qui sont "sensés" se suivre dans une recherche Google... ce qui ne sera pas possible pour la domotique... ou alors il faut fabriquer un système similaire? à voir si c'est possible avec la reconnaissance vocale Android...
- selon ce qui est dit ci-dessus, il vaudrait mieux ne pas programmer des phrases clés trop proches
- prévoir la reconnaissance pour plusieurs langues(?) arghhh ! Smile
- micro sur un téléphone, sur une tablette, sur le mur (sur la tablette qui est au mur)? C'est clair que le micro a surtout de l'intérêt sur le mur, sinon autant utiliser l'écran du téléphone/de la tablette qu'on a en main, non? Dans ce cas, quel micro et quelle qualité de micro nécessaire? combien et à quels endroits?
-je suppose que le choix d'un appel de lien a de l'intérêt pour permettre un plus grande flexibilité/facilité de programmation pour celui qui utilisera ton programme? Sinon, les sockets seraient sans doute plus rapides/optimisés, mais ça demande l'écoute d'un serveur pour l'interprétation des ordres envoyés par sockets.
- si le programme est un programme qui tourne constamment et est constamment à l'écoute, peut-être prévoir un mot clé d'introduction pour prévenir le programme qu'on lui parle. Comme les Google Glass qui nécessitent de précéder toute demande qui lui sont faites des mots "OK glass..." suivi de la demande. Je suppose que c'est pour éviter toute interprétation erronée du programme en pleine conversation qui ne le concerne pas.
-...
Répondre
#3
Sur la qualité de la reconnaissance vocale, je suis bluffé. Le problème semble qu'il faille obligatoirement une connexion Internet mais j'ai cru lire que l'on pouvait mettre en cache des phrases "fréquentes". Pas encore cherché. "Allumer lumière salon 2" est toujours reconnu au premier coup. Au pire, on peut laisser à l'utilisateur le choix de la meilleure réponse dans toutes celles proposées !

Pour le support de plusieurs langues, aucun soucis. Testé en français et anglais, c'est nickel.

Pour le micro, je n'ai pas pensé à utiliser un support "permanent". J'ai fait des tests avec mon téléphone et c'est tout... Aucun autre de mes appareils Android ne sais écouter vraiment bien en "ambiance". Peut-être avec un kit main libre et un micro optimisé ?

Oui pour le mot clé éventuel, ça a été mon premier test en fait :-)

Je pourrais tester sur 4 périphériques Android différents (3 Samsung et 1 Nexus), dans des générations Android bien variées. Mais je vous solliciterai peut-être pour des test
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#4
Déjà beaucoup de tests, c'est bien !
Je pensais que seule la recherche google utilisait la "prédiction", mais apparemment elle peut être utilisée pour son propre programme... pas mal !

Tu ne penses pas que l'intérêt principal est en écoute d'ambiance ? Même si c'est vrai que dans certaines situations ça peut être utile avec le téléphone en main, j'y vois moins d'intérêt. Mais je n'y ai pas encore beaucoup réfléchi. Tu as peut-être des exemples de situations?
Le solution d'ambiance n'est pas évidente à implémenter c'est sûr, mais un Raspberry Pi et un ou micro d'ambiance branché dessus pourrait peut être convenir. Mais c'est sûr que c'est une autre démarche de développement.


Répondre
#5

La recherche Google est vraiment puissante, c'est bluffant. C'est pour ça que j'ai eu envie de faire ce bout de programme :-)

Je n'avais juste pas pensé à l'écoute en ambiance car je n'ai pas de terminal Android actuellement disponible en ambiance :-) Effectivement, c'est probablement l'utilisation la plus intéressante mais qui va poser un sérieux problème de captation du son. Il faudrait avoir un micro par pièce pour une commande vocale en centrale. ouch :-) J'y penserai plus tard...
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#6
C'est vrai qu'après tout, si le programme tourne en tâche de fond sur le téléphone/la tablette et qu'il ne faut pas activer/déverrouiller le téléphone pour se faire entendre, ça peut être pas mal quand même. Sauf que la batterie va se vider très vite... désolé, j'écris comme je réfléchi... Undecided
Répondre
#7
L'approche "Android" pour faire de l'ambiance, à mon avis, ça ne va pas le faire sur un terminal existant. La solution - en fait pouvoir bénéficier de la puissance de la reconnaissance Google - pourrait venir d'un Android embarqué, peut-être http://androidpi.wikia.com/wiki/Android_Pi_Wiki. Je ne sais pas ce qui existe d'autre comme matériel qui permette de faire tourner Android et qui ne soit pas un téléphone/tablette...
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#8
J'avais pensé au Raspberry Pi après avoir vu ceci : http://liliputing.com/2012/12/raspberry-...nitor.html
Mais c'est sûr qu'il y a intérêt à trouver un micro plus discret !

Reste à voir aussi si Android reconnaîtra un micro en USB
Répondre
#9
J'ai fait un POC qui fonctionne. C'est du super-quick-super-dirty mais ça me fait bien marrer... Une vidéo est en cours d'upload sur YT, je mettrai le lien tout à l'heure.

il faut maintenant que je retourne à la programmation Java et que je comprenne tout ce que j'ai fait :-) :-)
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#10
http://youtu.be/s28iBqKWqiE
Viens voir !!! La lampe s'allume, la lampe s'allume !!!!
Répondre
#11
C'est quand même bien fait,... même si c'est "bricolé" Smile
Répondre
#12
Bonjour
Quand est il de votre projet pour commander votre installation à la voix ?
Je suis moi-même dans cette recherche. Il semblerait que c'est possible avec Yana Server, un raspberry pi mais il faut pouvoir transmettre des URLs à l'installation KNX.
De plus, il semblerait qu'avec cette solution, le moteur de synthèse vocal soit sur windows, même si on utilise le raspberry.
http://blog.idleman.fr/?page_id=2166
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)