Pull to refresh

Распознавание речи в ROS с Google Speech API

Reading time 2 min
Views 28K
Я уже рассказывал об использовании pocketsphinx для распознавания речи в ROS. В этой статье я хочу рассказать об использовании gspeech для распознавания речи. gspeech — это пакет ROS, который использует Google Speech API: wiki.ros.org/gspeech.


Получение ключа Google API


Итак, начнем. Для начала вам потребуется ключ Google API. Для его получения вам, во-первых, нужно иметь учетную запись Google. Во-вторых, вам нужно подписаться на chromium-dev@chromium.org (подписаться нужно здесь).
Теперь вы можете получить свой Google API ключ. Для этого зайдите в Google developer console: cloud.google.com/console. Здесь вам нужно создать проект. После создания проекта нужно активировать Speech API в секции APIs под пунктом APIs & auth в левом меню. Будьте внимательны: этот пункт может отсутствовать в списке, как это случилось со мной. Если вы не видите Speech API, то проверьте, что вы подписались на chromium-dev и что вы сейчас авторизованы под той учетной записью Google, почтовый адрес которой вы указывали при подписке на chromium-dev.
Ключ Google API можно получить в разделе Credentials под тим же пунктом APIs & auth. Здесь нужно создать ключ нажатием на кнопку Create new Key в секции Public API access.

Установка gspeech


Теперь осталось дело за малым — установить пакет gspeech. Для этого клонируйте gspeech со страницы Github: github.com/kusha/gspeech. Для работы gspeech требует установки sox:

sudo apt-get install sox

Также вам необходимо вставить ваш ключ Google API в скрипт gspeech.py в строке:

api_key = "" # PASTE HERE YOUR GOOGLE API KEY

Запуск gspeech


Все готово и можно запустить узел ROS gspeech:

rosrun gspeech gspeech.py

Распознавание в gspeech


В процессе распознавания gspeech публикует распознанные фразы в тему /speech в формате String и степень “уверенности” распознавания в тему /confidence в формате Int8.
Процесс распознавания фразы может занять некоторое время, поскольку gspeech выполняет запросы к серверам Google. Тем не менее gspeech имеет довольно высокую точность распознавания, gspeech распознает фразы значительно лучше чем пакет pocketsphinx. При тестировании gspeech разпознавал фразы с «уверенностью» 70-80. В некоторых случаях распознает с «уверенностью» до 94.

Желаю вам удачи в распознавании речи с Google Speech API.
Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
+3
Comments 6
Comments Comments 6

Articles