Простая грамматика для распознавания речи - PullRequest
6 голосов
/ 28 февраля 2012

У меня есть программа с GrammarBuilders и Grammer, которая используется в SpeechRecognitionEngine для распознавания речи.Могу ли я вместо распознавания звука использовать ту же грамматику для распознавания набранной команды (в строке)?Что-то вроде commandGrammar.parse (commandString)?

1 Ответ

3 голосов
/ 28 февраля 2012

Вы должны быть в состоянии использовать SpeechRecognitionEngine.EmulateRecognize , который принимает текстовый ввод вместо аудио для распознавания речи.

Я не уверен в предполагаемом использовании, но если это будет использоваться для чего-то вроде чат-бота, который автоматически взаимодействует с вводом текста через IM или SMS, я думаю, вы найдете грамматику очень громоздкой в ​​обслуживании и ограничительной. Я бы порекомендовал что-то вроде Язык разметки искусственного интеллекта (AIML) для обработки текстовых ответов. Это легко учиться и очень мощный. Вместо использования кратких грамматик, которые требуются ASR, этот язык позволяет вам использовать подстановочные знаки, которые намного более удобны для ввода текста. Есть даже некоторые C # проекты с открытым исходным кодом , которые предоставляют библиотеки для работы с AIML и упрощают создание чат-ботов.

...