views:

302

answers:

2

I have followed an article on Speech Recognition with Delphi (SAPI 5.3).

http://edn.embarcadero.com/article/29583

I created a basic application. but the problem is that the application has got it all wrong ! it doesn't get what I am saying correctly. if i say for example : "word", it get "ward". and so on.

is there any better way to do speech recognition anyone can give me ?

+4  A: 

For any speech recognition tool, you do have to make sure you give it enough training so it can recognize the way you speak. If a lot of simple words are not recognized correctly, you may simply need to train the tool some more.

In that article, towards the bottom you'll see a picture of a "Speech Properties" box. It has a place for "Recognition Profiles". Make sure you train your application, create a recognition profile, and then use that profile in your application.

Make sure read the second reference in that article: Speech Part 2 - How to Add Simple Dictation speed recognition to your Delphi Apps, which goes into this in more detail.

lkessler
Hi lkessler !that is the problem. I want my application to be able to "convert" what I say or what other people say without needing to be trained. the application will be translating people's narrations without being trained at first.is that possible ? or hasn't Speech Recognition reach that level yet ?
Attilah
No. It hasn't reached that level yet. In fact, even with extensive training, you can't expect close to perfect recognition. For example, see: http://googlesystem.blogspot.com/2007/02/testing-vistas-seech-recognition.html
lkessler
+1  A: 

Remember that the accuracy of any speech recognition engine greatly depends on a good match between the selected language and the speaker's ability to pronounce the language as expected.
That's why British English and US English are 2 different languages for the speech engines, and why I need to train the speech engine to recognize my French accented English much more than any native English speaker.

François