[an error occurred while processing this directive]

Система распознавания речевых команд в Linux при помощи ПО julius
Для декодирования речевых команд можно использовать открытый проект Julius.


Пользователи Ubuntu могут установить готовые пакеты:

   sudo apt-get install julius julius-voxforge

Так как последний стабильный релиз Julius 4.2.1 некорректно работает с
подсистемой ALSA, при использовании ALSA может потребоваться пересобрать код из cvs-репозитория:

   cvs -z3 -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/julius co julius4
   cd julius4
   ./configure --with-mictype=alsa 
   make

Микрофон можно выбрать через переменную окружения ALSADEV, например:

   export ALSADEV="plughw:1,0

Копируем акустические модели voxforge (в случае, если был установлен пакет
julius-voxforge модель уже установлена в /usr/share/julius-voxforge).

Создаём файлы конфигурации по образу
/usr/share/doc/julius-voxforge/examples/julian.jconf.gz. На базе sample.grammar
и sample.voca создаём модели грамматики фраз и команды, после чего выполняем
"mkdfa имя", например:

Файл sample.voca с определением слов Shoulder, Elbow, Wrist, Grip, Light,
on/off,   up/down, open/close:


   % NS_B
   <s>        sil

   % NS_E
   </s>        sil

   % JOINT_N
   WRIST        r ih s t
   ELBOW        eh l b ow
   SHOULDER        sh ow l d er

   % DEV
   LIGHT        l ay t

   % DEV_IN
   ON        aa n
   OFF        ao f

   % MANIP
   GRIP        g r ih p

   % M_ACT
   OPEN        ow p ax n
   CLOSE       k l ow s

   % DIRECTION
   UP        ah p
   DOWN      d aw n

   % ROTATION
   LEFT        l eh f t
   RIGHT       r ay t

Файл sample.grammar с определением сочетания слов (Joint + up | down,
Grip + open | close, Light + on | off, Left | Right):

   S : NS_B SENT NS_E
   SENT: JOINT_N DIRECTION
   SENT: MANIP M_ACT
   SENT: DEV DEV_IN
   SENT: ROTATION
 
NS_E и NS_E определены как начальная и конечная пауза.

Собираем модель:

   mkdfa sample

в результате получаем набор dfa, dict и term файлы.

Для распознания выполняем:

   julius -input mic -C julian.jconf

говорим Left, Right, Shoulder Up и наблюдаем:

   sentence1: <s> RIGHT </s>
   sentence1: <s> LEFT </s>
   sentence1: <s> SHOULDER UP </s>

Пример скрипта command.py для парсинга и запуска внешних программ при
определении тех или иных фраз можно найти в директории /usr/share/doc/julius-voxforge/examples/controlapp


Для распознавания фраз на русском языке можно попробовать использовать
акустическую модель с сайта
http://www.repository.voxforge1.org/downloads/Russian/Trunk/ , но судя по всему
она пока мало пригодна к использованию.
 
Ключи: julius, voice, control / Лицензия: CC-BY
Раздел:    Корень / Пользователю / Запись и обработка звука

[an error occurred while processing this directive]

[an error occurred while processing this directive]