Использование простых голосовых команд в Unity3D (с IBM Watson SDK) - PullRequest
0 голосов
/ 09 апреля 2020

Проблема

В настоящее время я использую Речевой текст из IBM Watson SDK для Unity для распознавания голосовых команд например start или выход путем проверки, содержит ли распознанный текст один из них.

Проблема в том, что нет работать очень надежно (вывод часто spot или hit ), и мне просто нужны эти простые команды.

Что я пробовал

В качестве альтернативы я уже пробовал using UnityEngine.Windows.Speed;, но мне нужно, чтобы он работал как на Windows, так и на Ма c. Я не смог найти хорошее и работающее решение для Ma c, и я попытался написать свой собственный плагин Unity с Xcode и NSSpeechRecognizer , подобный этому Tutorial , но это не сработало для меня .

Я также видел Snowboy для обнаружения горячих слов. Но это требует большой настройки, и я бы действительно хотел sh для простого и надежного решения.

Заранее спасибо.

1 Ответ

0 голосов
/ 28 апреля 2020

В этом случае вы должны использовать службы Watson Speech to Text и Assistant. Вы можете обучить экземпляр Assistant понимать фразы, такие как «start», «go», «initialize», et c, чтобы возвращать намерение START, и такие фразы, как «stop», «quit», «halt». ", et c чтобы вернуть намерение QUIT. Затем вы можете отправить транскрипцию «Речь в текст» в службу Assistant, которая вернет намерение START или QUIT и выполнит игровую логику c на основе возвращенного намерения.

...