raspberry Pi で音声認識(julius使って見た)
今回も引き続きラズパイを使っていきます。
音声認識をラズパイでやってみようかな?と思い、音声認識ソフト?のjuliusを使って見たのでセットアップ手順等をまとめたいと思います!!
■juliusとは?
音声認識システムの開発・研究のためのオープンソースの高性能な汎用大語彙連続音声認識エンジンのことです。
数万語彙の連続音声認識を一般のPCやスマートフォン上でほぼ実時間で実行できる軽量さとコンパクトさを持っているようです。
Julius はオープンソースソフトウェアであり、プログラムはC言語で書かれており、さまざまなプラットフォームへの移植や改造が容易。
ライセンスはオープンライセンスで,商用利用への制限もないようです。
GitHub - julius-speech/julius: Open-Source Large Vocabulary Continuous Speech Recognition Engine
■julius環境構築
まずラズパイで音声を収集しなければならないためマイクが必要です。
今回は、こちらのUSBマイクを利用しました。
![]() | 【クーポン有】 SANWA USBマイクロホン コンデンサー 単一指向性 タッチ式ミュートボタン付き # MM-MCU02BK サンワサプライ (Apple製品関連アクセサリ) 価格:3,220円 |

結構集音性能が高くて重宝しています!!
USBオーディオをメインで使用するためにラズパイ側で、
/etc/modprobe.d/alsa-base.conf
を下記の通り編集。
options snd slots=snd_usb_audio,snd_bcm2835 options snd_usb_audio index=0 options snd_bcm2835 index=1
そして、
~/.profile
に下記を追記。
export ALSADEV="plughw:0,0"
最後にこちらを実行。
sudo julius -C testmic.jconf -charconv SJIS UTF-8 sudo modprobe snd-pcm-oss sudo sh -c "echo snd-pcm-oss >> /etc/modules" export AUDIODEV=/dev/dsp1 sudo apt-get install alsa-utils sox libsox-fmt-all
次は、実際にjuliusをダウンロードしていきたいと思います。
juliusをgithubから取得し、解凍。
wget https://github.com/julius-speech/julius/archive/v4.4.2.tar.gz tar zxvf v4.4.2.tar.gz julius-4.4.2/
今回はv4.4.2を利用していますが、少し古いかもしれません。
最新バージョンを確認の上、ダウンロードしてみてください。
次にビルドとインストールを実行。
cd julius-4.4.2/ ./configure make sudo make install
こちらのコマンドを実行してバージョン情報が表示されればインストールはOKです。
julius -version
簡単簡単!!と思ったのもつかの間、juliusだけをインストールしただけでは動かないようです。。。
juliusと合わせて、
・音響モデル(音素HMM)
・単語辞書
・言語モデル(単語N-gram)
が必要なようです。
幸いにも上記はディクテーションキットとしてパッケージで用意されているため、
ありがたくこちらを利用。
wget --trust-server-names 'http://osdn.jp/frs/redir.php?m=iij&f=%2Fjulius%2F60416%2Fdictation-kit-v4.3.1-linux.tgz' wget https://github.com/julius-speech/grammar-kit/archive/v4.3.1.zip tar zxvf dictation-kit-v4.3.1-linux.tgz unzip v4.3.1.zip
これで準備完成です。
■juliusによる音声認識
では実際にjuliusにて音声認識を実施してみます!!
2種類方法があります。
まず1つ目は、
cd dictation-kit-v4.3.1-linux sudo julius -C main.jconf -C am-gmm.jconf -demo
2つ目は、
cd grammar-kit-4.3.1/ sudo julius -C testmic.jconf -charconv SJIS UTF-8
どちらも、こちらのようなメッセージが表示されればOKになります!!
<<< please speak >>>
1つ目の方がの日常の言語が登録されているのでサンプルとして使うのにはよいかもしれません。