Raspberry Piで音声認識

参考サイト。
Devel/電子工作/RaspberryPi/日本語音声認識 - cubic9.com
http://www.orsx.net/blog/archives/4938

USBマイクの設定

USBオーディオの使用優先度を確認する。

$ cat /proc/asound/modules

snd_bcm2835は内蔵オーディオで、snd_usb_audioはUSBオーディオのようです。

0 snd_bcm2835
1 snd_usb_audio

USBオーディオの優先度を上げる。

$ sudo nano /etc/modprobe.d/alsa-base.conf

snd-usb-audioのindexを-2から0に変更する。

options snd-usb-audio index=0

Raspberry Piを再起動する。

sudo shutdown -r now

USBオーディオの使用優先度を確認する。

$ cat /proc/asound/modules

USBオーディオの優先度が上がっていることが確認できます。

0 snd_usb_audio
1 snd_bcm2835

音声認識の設定

Juliusのダウンロード

Julius本体、ディクテーションキット、文法認識キットをダウンロードします。

$ wget --trust-server-names 'http://sourceforge.jp/frs/redir.php?m=osdn&f=%2Fjulius%2F60273%2Fjulius-4.3.1.tar.gz'
$ wget --trust-server-names 'http://sourceforge.jp/frs/redir.php?m=jaist&f=%2Fjulius%2F60416%2Fdictation-kit-v4.3.1-linux.tgz'
$ wget --trust-server-names 'http://sourceforge.jp/frs/redir.php?m=osdn&f=%2Fjulius%2F51159%2Fgrammar-kit-v4.1.tar.gz'

Juliusのインストール

$ tar zxvf julius-4.3.1.tar.gz
$ cd julius-4.3.1/
$ ./configure
$ make
$ sudo make install

Juliusの設定

各Kitを解凍します。

$ mkdir julius-kits
$ cd julius-kits
$ tar xvzf ~/dictation-kit-v4.3.1-linux.tgz
$ tar xvzf ~/grammar-kit-v4.1.tar.gz

USBマイクのカード番号を確認する。

$ arecord -l

カード番号を環境変数に設定する。

$ export ALSADEV=hw:0
単語帳の作成
$ sudo nano ~/word.yomi

間はTabを入力します。

おはよう        おはよう
いってきます    いってきます
ただいま        ただいま
ライトオン      らいとおん
ライトオフ      らいとおふ

変換作業。

$ cd ~/julius-4.3.1/gramtools/yomi2voca/
$ iconv -f utf8 -t eucjp ~/word.yomi | ./yomi2voca.pl > ~/julius-kits/dictation-kit-v4.3.1-linux/word.dic

設定ファイル作成。

$ sudo nano ~/julius-kits/dictation-kit-v4.3.1-linux/word.jconf
-w word.dic
-v model/lang_m/bccwj.60k.htkdic
-h model/phone_m/jnas-tri-3k16-gid.binhmm
-hlist model/phone_m/logicalTri
-n 5
-output 1
-input mic
-input oss
-rejectshort 600
-charconv euc-jp utf8
-lv 1500

エラーが出る場合は下記を行う。

$ sudo modprobe snd-pcm-oss

実行して確認。

$ julius -C ~/julius-kits/dictation-kit-v4.3.1-linux/word.jconf