9.2. Тестирование распознавателя PocketSphinx

Вы получите наилучшие результаты распознавания речи при использовании микрофона гарнитуры, USB, стандартного аудио или Bluetooth. Подключив микрофон к компьютеру, убедитесь, что он выбран в качестве входного аудиоустройства. (Если вы используете Ubuntu 14.04 или более поздней версии, перейдите в «Системные настройки» и нажмите на панели управления звуком.) Когда откроется окно «Настройки звука», щелкните вкладку «Вход» и выберите свое микрофонное устройство из списка (если их несколько). ). Произнесите несколько слов в микрофон, и вы увидите, как реагирует измеритель громкости. Затем нажмите на вкладку «Вывод», выберите желаемое устройство вывода и отрегулируйте ползунок громкости. Наконец, закройте окно звука.

ПРИМЕЧАНИЕ. Если вы отсоедините микрофон USB или Bluetooth, а затем снова подключите его, вам, вероятно, придется снова выбрать его в качестве входа, используя процедуру, описанную выше.

Майкл Фергюсон включает файл словаря, подходящий для соревнований RoboCup @ Home, который вы можете использовать для тестирования распознавателя. Запустите его сейчас, запустив:

$ roslaunch pocketsphinx robocup.launch

Вы должны увидеть список сообщений INFO, указывающих, что загружаются различные части модели распознавания. Последние несколько сообщений будут выглядеть примерно так:

INFO: ngram_search_fwdtree.c(186): Creating search tree INFO: ngram_search_fwdtree.c(191): before: 0 root, 0 non-root channels, 12 single-phone words INFO: ngram_search_fwdtree.c(326): after: max nonroot chan increased to 328 INFO: ngram_search_fwdtree.c(338): after: 77 root, 200 non-root channels, 11 single-phone words

Теперь произнесите несколько фраз RoboCup, таких как «принеси мне стакан», «иди на кухню» или «пойдем со мной». В окне терминала вы должны увидеть строки INFO, которые повторяют произносимые фразы:

[INFO] [WallTime: 1387548761.587537] bring me the glass [INFO] [WallTime: 1387548765.296757] go to the kitchen [INFO] [WallTime: 1387548769.417876] come with me

Поздравляем, теперь вы можете поговорить со своим роботом! Распознанная фраза также публикуется в теме /recognizer/output. Чтобы увидеть результат, вызовите другой терминал и запустите:

$ rostopic echo /recognizer/output

Чтобы увидеть все фразы, которые вы можете использовать с демонстрацией RoboCup, выполните следующие команды:

data: bring me the glass --- data: go to the kitchen --- data: come with me ---

Для моего голоса и использования встроенного микрофона Bluetooth распознаватель оказался на удивление быстрым и точным.

Чтобы увидеть все фразы, которые вы можете использовать с демонстрацией RoboCup, выполните следующие команды:

$ roscd pocketsphinx/demo 
$ more robocup.corpus

Теперь попробуйте произнести фразу, которой нет в словаре, например, «небо голубое». В моем случае результат в теме /ognizer / output был «эта комната пуста». Как видите, распознаватель ответит чем-то, что бы вы ни говорили. Это означает, что необходимо соблюдать осторожность, чтобы «отключить» распознаватель речи, если вы не хотите, чтобы случайный разговор интерпретировался как речевые команды. Ниже мы увидим, как это сделать, когда узнаем, как сопоставить распознавание речи с действиями.

Last updated