Home › Forums › OpenEars › [Resolved] decrease in speech recognition accuracy after updating to OpenEars 2.0
- This topic has 9 replies, 2 voices, and was last updated 8 years, 2 months ago by Halle Winkler.
December 21, 2014 at 10:41 pm #1023653
I have noticed a decrease in speech recognition accuracy as well as an increase in interference by noise after updating to OpenEars 2.0.
My app uses two dynamically generated ARPA Grammars. One has 19 words, and one has 14 words. Is it possible to “calibrate” in OpenEars 2.0? Are there other ways to increase speech recognition accuracy and decrease sensitivity to noise? If not, my thought was to downgrade back to OpenEars 1.71 to get the calibration back.December 21, 2014 at 10:51 pm #1023654
Did you see the note about the property vadThreshold in the upgrade guide?December 22, 2014 at 1:07 am #1023655
Yes. I tried a few variations of this:
[[OEPocketsphinxController sharedInstance] setSecondsOfSilenceToDetect:0.1];
[[OEPocketsphinxController sharedInstance] setVadThreshold:2.9];
But I could not get the same accuracy as I was getting with version 1.71 where I was using this:
pocketsphinxController.secondsOfSilenceToDetect = 0.1;
pocketsphinxController.calibrationTime = 1;December 22, 2014 at 9:11 am #1023656
Hmm, that is a pretty low secondsOfSilenceToDetect – in real-world use it is going to cut off intentional user speech. Are you 100% positive that when you went through the upgrade process you threw out your old acoustic model and dragged in the new acoustic model? Accidentally keeping the old 8k model is the most likely reason to have worse recognition after the upgrade.December 24, 2014 at 5:21 am #1023776
Thanks, Halle. I am pretty sure I followed the guidelines correctly. I deleted the old acoustic model and dragged it in again. The resulting speech recognition was terrible. Then I tried running the Openears sample app. The recognition is also bad. When I say the word “turn,” it says “you said turn, you said turn, you said turn…” over and over again. My deployment target is OS 6.0 and I am testing this on the iphone 6 device. Any ideas?December 24, 2014 at 6:12 am #1023777
That’s very strange, I haven’t seen that or received any other reports of it with the sample app. This is without changing any lines of code in the sample app? Do you see it with any other devices or with different deployment targets with the sample app? BTW, the lowest possible deployment target should be 6.1, not 6.0 which OpenEars is not intended to be compatible with (I see that the sample app has accidentally gotten a deployment target of 6.0 which will be fixed in the next version).December 24, 2014 at 6:13 am #1023778
Please also let me know what input and output device this is with – headphone, bluetooth, etc.December 24, 2014 at 7:00 am #1023779
Sorry, just noticed this in your post above:
My deployment target is OS 6.0 and I am testing this on the iphone 6 device.
This is a bit confusing to me – can you elaborate on what the significance of the deployment target is in your issue report? Your iPhone 6 runs iOS 8.x, correct?December 24, 2014 at 5:41 pm #1023788
I changed the deployment target to 6.1 and I am running the sample app on an iPhone 6 with iOS 8.1.2 and apple corded headphones. The apple headphones helped reduce the noise.
I did some more tests between OpenEars 2.0 and 1.71, and I am still getting a bit more noise with 2.0. I have found these settings to work best for me so far:
[[OEPocketsphinxController sharedInstance] setSecondsOfSilenceToDetect:0.2];
[[OEPocketsphinxController sharedInstance] setVadThreshold:3.0];
I was hoping for better recognition accuracy and better noise reduction in 2.0 because I wanted to add more words to my vocabulary and more functionality to my app. I will continue testing, but I will consider this case closed. Thanks!January 6, 2015 at 7:07 pm #1024089
You might want to take a look at OpenEars 2.01 out today, which has a fix which should improve accuracy and detection in some cases.
- You must be logged in to reply to this topic.