Continuously recognize everything being said on An

2019-06-01 02:58发布

问题:

I'm working on a project that involves speech recognition on Android. And i have some questions without clear answers on this site (or any, actually). I need to do a something like a speech to text, the problem is that i need it working continuously, imagine an app running on background and writing everything it hears on a txt. I know i will need to correct a lot of "noise hearing", but it will come later..

I am using pocketsphinx-android, and tried to follow this tutorial: http://cmusphinx.sourceforge.net/wiki/tutorialandroid

The problem comes when i try to do a continuous recognition, because the tutorial only shows the steps for searching words - taken from the tutorial: "keyword-activation search" and "grammar-based searches" and "language model search". This is my first time on speech recog, and i'm quite lost so it would be great if someone can give me a direction to follow!

回答1:

If you want to recognize large vocabulary speech with Android you need "language model search". You can use generic language model for recognizing speech without constrains:

https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/US%20English%20Generic%20Language%20Model/

However, this would be pretty resource-intensive process and accuracy will not be great without specialization, you will have to prune the model to make it suitable for decoding on mobile. So your other choice is to stream audio to some server where you can recognize it with more powerful models or just use existing API for speech recognition which allows continuous decoding.