Release 2013.03.12.00

Download and install the latest ARC robot programming software to experience these updates.

Download ARC
Software Information
There has been a lot of talk recently about adding conversational A.I. to your robot. Many years ago, I created a learning A.I. called Synthia. I appreciate the interest in Synthia, however she'd require a bit of work to go public. So, a few of you have mentioned PandoraBots - which is an online bot hosting service.

This release introduces a PandoraBot Control, found under the Speech category when adding controls. Please use the ? to read details on how this control works, and the issues with speech recognition. There is also an Example Project you may load to review functionality.

If you create your own Bot, you may also add speech commands that are specific to your robot. If you review the example that I had included, you will notice that "Move servo Left" will execute EZ-Script. Any response that includes EZ-Script can be surrounded by [ and ]. The help page will explain more:)

Changes:

- New Control: PandoraBot Artificial Intelligence


User-inserted image
#28  
kudo48pa,

Individual face recognition would be cool, if a little complex. Could be kind of slow depending on what computer you are running your robot with. OpenCV has libraries for it, so Dj would not need to write it from scratch.

Bar codes would be about as easy as qr codes. There are existing libraries Dj could tap into if there is enough demand. What is your use case? (ie, why are qr codes not good enough? Are you wanting to recognize existing barcoded objects?)

Text recognition, the best way would probably be to have a camera to PDF function, then use existing OCR software to turn it into a text file, then use the existing script file handling functions to read it.

I don't think any of your requests are impossible to achieve if Dj wants to put the time into them (which usually just requires a few of us to express interest).

They are all possible for you to write yourself if you learn Dotnet programming and then use the SDK to integrate with yoir robot.

Alan
#29  
also could speech recognition be more accurate?
and having custom object tacking ,like i would put a photo for a chair in project folder ,and if camera sees it ,the camera control will run a script so i can track objects and it finds an object unknown it would run a script so the bot can ask the user about it.
and some mood tracking so he will know my mood from my voice and video.
not in a hurry so may be dj can write them in a year or so.
United Kingdom
#30  
Speech recognition accuracy is dependant on the training you give Windows and the quality of your microphone. Most, if not all Windows software relies on the Windows SAPI. Visit your control panel and run through the training set up to improve accuracy. There may be third party tools to aid in increasing accuracy also but you will need to search for those.

Make sure you are using a very good microphone, ideally a headset microphone and background noise is kept to a minimum. Speak clearly. And train a lot.

The accuracy of mine is around the 85% mark, which to me isn't accurate enough for Pandora Bots. I have constantly trained my Windows for over 12 months through other software which learns as I speak, it takes payloads from XML files for all media - basically my HTPC is voice controlled and learns a lot of different phrases and words including some obscure ones like "Spartacus". Even with that much training it is still falling short by 15%. I know part of this is due to my microphone array and the background noise and am sure it would be more like a 95% accuracy with a decent headset microphone.

In short, train it, speak clearly, use a decent microphone.
#31  
Speech Reco is based on the Windows recognition engine. If you install and train a better SAPI5 compatible recognizer, like Dragon, Windows will use it and your recognition will improve.

Alan
United Kingdom
#32  
FYI Windows 7 ships with SAPI 5.4, Windows Vista uses SAPI 5.3
United Kingdom
#35  
It comes shipped with Windows 7 and 8. You already have the latest version if running Windows 7 or Windows 8 with all current updates.

Google for tips on improving accuracy of speech recognition.
#36  
For the very best speech recognition (at least in English, but many other languages supported, I can only speak to their English accuracy though) you would want Dragon Naturally Speaking: http://www.nuance.com/dragon/whats-new-version-12/index.htm

It is not cheap though...

Training the built in recognition on Windows 7 is still pretty good with no added cost.

Alan
#37  
I have DRAGON naturally speaking,its very good software
Second on a very good microphone is andrea USB-SA its rated one of the best microphones with a microphone array and noise cancelling circuit

ALSO design special male/female filter circuit to go with it
#38  
can dj make sound control use one stereo mic and one mono:
the mono for noise cancellation, and the stereo for reporting the angle of the sound.
and have sound profiles so the robot can determine the sound of someone in its database ,and mood detection.
#39  
Noise cancellation is best done in hardware. Software on a PC would be too slow to consistently process, so getting a very good noise cancelling microphone would be best.

For directional recognition, you would need multiple sound cards, or USB microphones, since they appear as separate sound devices. It might be doable in software, but I still think there are probably hardware solutions that would be more accurate. Maybe @robotmaker could design a sound direction finder circuit that could send a signal to one of the EZB analog ports to indicate direction of sounds within a given (possibly adjustable?) frequency range? (ie, you might want your robot to turn to face whoever is talking, where I might want it to turn towards a dog whistle).


What do you say @robotmaker? You up for the challenge?

Alan
#41  
@Robotmaker

That second link is a great price for an array microphone. How far away can you be and still get good sound pickup?

Alan
#42  
About 5 feet or more,havent fully tested the distance,pretty soon looking at designing a special voice tracker to go with it,simple circuit using the great EZB analog inputs and one servo for panning

Kinda like the camera tracking we have ,but for voice
already bought 5 of them


Looking at a much better circuit design,andrea microphone uses a array of a few microphones in its design

MY idea is a scanning array like the larson led snanner but with microphones and a special min/max comparator circuit ,so if your voice is on the left of the robot will pick it up ,and same on the right or middle

BUT that will take a lot of designing and testing
United Kingdom
#44  
Don't think that the Kinect mic array is any use though, just to throw this out there (I know nobody has mentioned it but I guarantee some will have thought it). It isn't the greatest when used on a PC.
#45  
ALAN most robots dont need a 30 feet range,most average rooms at 10 by 10
so well under 10 feet is good

RICH i have a few KINECTS and i agree with you,kinect nicrophone is not great at all
i dont think they use any filters or noise cancelling circuits in it
#46  
I would prefer 8 feet to 5 for the best coverage, but not at 5x the price. When you finish your voice tracking design, I may give the one you recommend a try.

ALan
#47  
DJ,

Thanks for this update! I just saw it today. PANDORABOTS! Yippee! I've been building pandorabots for about 5 years now.

I'm going to try it out later with Betty9.

I need to keep up. The book I have been writing on robots has taken all my robot BUILDING time.

Thomas

PS. Do you want to put a coupon in my robot book, "I, Robot Builder"? I will have an EZ robot project in one of the chapters. It comes out in October.




Click here to see the book listed on Amazon.com