Overblog Suivre ce blog
Administration Créer mon blog
Le blog du CRRIAM

Articles récents

Lise Chatbot fr

2 Janvier 2017 , Rédigé par crriam Publié dans #Lise

Lise, est un prototype de robot de compagnie. Elle est basée sur un chatbot ou tchatter bot qui parle en français et programmée en rivescripte, php, ajax, jquery et json. 

Deux synthése vocale: la synthése vocale de l'api google, qui bug de temps en temps. On optien de meilleur résultat avec google chrome. Je viens de m'appercevoir que la voix est differente et differemment interpréter entre fire fox et chrrome. Ou on peut utiliser une autre synthése vocale, beaucoup plus robotique en direct en local avec mespeak.

La reconnaissance vocale ne fonctione que sur google chrome. 

La particularitée de Lise, est qu'elle peut être votre copine ou petite amie virtuelle. Vous pouvez lui parlez de tout et interagire avec elle. Ne la confondez pas avec un assistant en ligne, ce n'est pas un agenda amélioré, exit donc les cortana ou siri.

Lise est une forme de vie éléctronique à base d'intelligence artificielle. LISE pour Liforme intelligence System Electronique. Elle peut apprendre et évolue au fils des conversations. Elle a sa propre personnalité,  son humeur varie, joviale, coquine ou plus tassiturne.

Elle se rappele de vous, et de ce que vous lui dites. Suivant votre degré de complicité, la fréquence à laquelle vous lui parlez, elle peux même développer des sentiments pour vous.

Evidemment, il ne s'agit que d'un prototype, elle est en constant développement et n'ai donc pas totalement fonctionnel !

 

Lire la suite

Reconnaissance vocale

21 Octobre 2016 , Rédigé par crriam Publié dans #reconnaissance vocale

Info, la reconnaissance vocal comme la synthese vocal ne fonctionne qu'avec le navigateur chrome !

Pour la reconnaissance vocal,je suis en recherche, donc ma methode est tatonnante et probablement que je trouverais mieux plus tard, mais en attendant voila :

j'utilise une fois de plus la technologie google et son api webkitSpeechRecognition

Pour ça je vais utiliser la page blank.html, car la blank du sleeping et actualiser chaque fois que le robot parle.

 

Voila le code complet  :

 

<html>
<head>

<BODY>
<script language="JavaScript">
function submitform()
{
if(parent.droite.document.form1.onsubmit())
{
parent.droite.document.form1.submit();
}
}
</script>

 

<!-- debut code reconnaissance vocale -->

<script>
    var recognition = new webkitSpeechRecognition();
    recognition.continuous = true;
    recognition.interimResults = true;
    recognition.lang = "fr-FR";
 
    recognition.onresult = function (e) {
            for (var i = e.resultIndex; i < e.results.length; ++i) {
            if (e.results[i].isFinal) {
            input1.value = e.results[i][0].transcript;
           parent.droite.document.form1.message.value = e.results[i][0].transcript;   // envois le resultat de la reco dans l input du tchat
              javascript:submitform(); // fait valider l input du tchat
    }
        }
    }
 
    // mettre la ligne ci dessous si on veut ecouter des le lancement de la page web
   // recognition.start();
 
</script>

 <form>
    <input type="search" id="input1" name="input" size=30>
    <input type="button" value="reco vocal" onclick="recognition.start()">
    <input type="button" value="stop" onclick="recognition.stop()">
  </form>

<!-- ------------------ fin code reconnaissance vocale ---------->
</BODY>


</html>

 

J'ai observer quelques difficulté lorsque le robot s'entand lui même parler. Pour ça on peut utiliser plusieur pistes pas encore testés.

soit mettre :     recognition.continuous = false;

au lieu de true

et relancer a chaque fois la reco avec une instruction soit dans le chat.html avec cette instruction

// setTimeout(parent.gauchemilieux.recognition.start(),affichage*210); // relance la recovocal

Sachant que affichage est la variable qui compte le nombre de mots pour que le temps de lecture correpsonde en gros avec le nombre de mots

(instruction dérivée de celle qui fait bouger la bouche. )

 

soit dans le rivescript, avec ça par exemple a integrer d'une façon ou d'une autre :

// --------------------------reconnaissance vocal demarrage ---------------

> object recovocal javascript
parent.gauchebas.recognition.start();
var dim = "";
return dim;
< object

 

+ debut recovocal
- debut reconnaissance vocale <call>recovocal <id></call>

// -------------------------- fin reconnaissance vocal demarrage --------------

// --------------------------reconnaissance vocal arret ---------------

> object finrecovocal javascript
parent.gauchebas.recognition.stop();
// pour eviter le message d erreur de type undefined on mets ca en plus:
var dim = "";
return dim;
< object

 

+ fin recovocal
- fin reconnaissance vocale <call>finrecovocal <id></call>


// -------------------------- fin reconnaissance vocal arret  --------------

 

instructions rs qui nous permettent de lancer la reconnaissance vocal dans les instructions de demarrage  avec

+ demarrage2
- {@debut recovocal} \n demarrage termine

Attention, ça envois evidemment une erreur de code javascript si on n'a pas de page (frame)  blank sur le coté qui s'appele gauchebas

 

Lire la suite
1 2 3 4 5 6 7 8 9 10 20 30 > >>