Asked — Edited
Resolved Resolved by WBS00001!

Variables For Speech Reco

Hello,

i am asking me one question:

Have i the possibilty to set a variable in the Speech Commands?

To understand what i mean:

I want to ask the Robot:

Do you like "x" ( and now i can say what i want)

like:

Do you like fishing? Do you like drinking? Do you like flying?

and so on.

and the robot can give an answer: "Yes i like!"

But the important, is to set a variable!

Interresting also:

I will say: My favorite music is "x"

Now the robot will remember the "x" (in this case it will be "Hip Hop")

And the Robot will answer:

Hip Hop (from the variable) i like also!

i think this is more complicate then the first idea, there the speech reco only must understand the start or the end of a sentence.

So it is possible?

Boris

PS: For what i need this Commands:

$SpeechConfidence

and $SpeechPhrase

?

I check out the forum and the manual, but i really find nothing about it.


ARC Pro

Upgrade to ARC Pro

Elevate your robot's capabilities to the next level with Synthiam ARC Pro, unlocking a world of possibilities in robot programming.

#9  

Hi Steve again!

Yes its me!

I work also with a plantronics headset and its ok. There can be some noises no problem. This everything works!

The only thing what is boring with speech reco, is that i must speak the excat command. After 100-200 Commands, can you remember each command exactly?

Technopro give me a good idea to make random answers.

So it will be not so boring, if i will ask my Inmoov:

How are you?

He can give 20 diffrent answers. Its a beginning. ;-)

Boris

#10  

@rentaprinta I don't quite understand what you are trying to do but I thought I would throw something out anyway. A technique I use is to pause when giving a command at just the right point to allow the Speech Recognition control to work with more than one phrase. In your example with the "do you like" phrase. I would put the phrase "do you like" in as one speech phrase. Then I would pause just a second before saying the last word. For instance: do you like ... fishing

In this way, it will recognize the "do you like" part and respond (perhaps after a bit of a sleep delay to get that last word in before it says anything) but ignore what you say after. If you want it to say something depending on what the last word is you can also put them in the phrase list. I use it mostly for reusing the same robot commands with different robot types or the same words under different contexts.

Context involves using a context variable to allow for different responses depending on what was said first. For instance, using the same words (Flying, fishing, etc.) with different question types, like "have you ever been" in addition to "do you like." Have you ever been ... fishing Have you ever been ... flying Do you like ... flying etc.

There is a lot more to the technique, but I'll stop there since I don't even know if it applies to what you want to do.

#11  

Hi WBS00001!

Nice to hear you!

I check out your ESRP Script and i like it. I understand still not everything but it make my work easier!

I understand your trick with the pause, but it only a trick.

my plan is to have more options for a sentence to say.

I say to the robot (typical conversations):

today moring etc etc etc

answer: it was early?

again with diffrent ending:

today moring etc2 etc2 etc2

answer: it was early?

So the speech recognize "today morning" and know what to answer, nevermind what i say after "today morning"

BUT without this trick pause!

I repeat myself ;-)

#12  

What you are looking for is a natural language processor with object extraction and association or classification. That is a huge project but the good news is that there are many companies working on it. My hope is that it becomes more available to non-programmers. Right now, to use these services requires programming outside of ARC.

#13  

Hello Boris :) I just wanted to mention a couple of things about the ESRP project. The overall concept has greatly expanded since then, but what I put up is still the fundamental concept. I changed a few things in the ESRP project. One is in the call:

CC("SR_Eval",ScriptStartWait)

in the Speech Recognition control, in the "All Recognized" box. I changed it to

CC("SR_Eval",ScriptStart)

I just took out the wait part of the command. I found that, in some cases, waiting would not work properly.

Additionally, I changed the structure of the SR_Eval script so that it checks for an empty string before extracting the first letter.

Finally, I happened to download the project from the cloud and found the Notepad control was full of places with three question marks in a row. Such as:

? ? ?yes? ? ? or ? ? ?no? ? ? that? ? ?s

EDIT Well, I'll be darned! The posting software won't let me put 3 question marks in a row in this post. I put spaces in between the symbols so it would show up as 3 at least.

I don't know if that happened to you, but what is supposed to be there are double quotes ( " ) or single quotes ( ' ). The lines above should be:

"yes" or "no" that's

I have no idea why that happens or what to do about it, but I thought I would mention it.

I have a program that can copy all the phrases and scripts from the Speech Recognition control from a given project and display them. It can also: -Alphabetize them. -Copy the modified phrases and scripts into a project, replacing what is there. -Edit the scripts ... but it is not really designed to do that so it doesn't do things like Key Word highlighting. -Search the phrases -Save what it has copied (and modified) from the project in separate text files.

I want to do more testing on it for a while, but if you're interested, I'll send you a copy when it's done.

#14  

Hello WBS00001,

it sound fantastic what you are doing, i was thinking myself how to copy all phrases from the Speech Control to the scripts. Specially if you want to have a lot of speech commands.

It will be great if you can send me a copy. If you not find my email in my Profil:

[email protected]

#15  

Hello WBS00001,

another question:

With you ESRP Solution the speech reco is in pause if the roboter talk.

This is great, because i know the problem of hearing himself.

But there an idea:

My robot is talking now a rss feed, but the feed is so long that i reall want to stop the speech, but with a voice command like "stop talking".

HAHA now the problem, the speech reco is in pause.....

Give a possibility to have a master command what works also in pause?

Boris

United Kingdom
#16  

Not an ideal solution, but what you could possibly use in this situation, is to put the stop talking phrase in the "Enable Phrase" and stop talking script in the "Enable Cmd" fields in the voice recognition control. That way, when you say "Stop talking", it will unpause voice recognition and run the stop talking script.