Juilius は日本の大学やIPAによって開発されているオープンソースの音声認識システムです。導入する事で、とても簡単に音声認識機能が利用できるようになります。ソケットサーバー「HAL」を音声で制御するのに非常に効果的なため、ぜひ、インストールをおすすめします。
このページでは、簡単に Julius のインストールと音声認識用ファイルの作成方法を記します。詳しくは Juliusによる音声認識~国産オープンソースライブラリの活用 を参照してください。
Julius のインストール方法
Julius のインストールは簡単です。まず、ソースの圧縮ファイルを wget してください。
cd ~
wget -O julius-4.3.1.tar.gz 'http://sourceforge.jp/frs/redir.php?m=osdn&f=%2Fjulius%2F60273%2Fjulius-4.3.1.tar.gz'
現在は GitHub でソースコードを公開するようになっているので、そちらから取得しても構いません。
圧縮ファイルを入手したら、それを解凍し、出来たディレクトリ内に移動します。
tar zxvf julius-4.3.1.tar.gz
cd julius-4.3.1/
あとは以下のコマンドを順次実行してメイクし、インストールを行います。どの処理も少し時間がかかりますので、気長にお待ちください。
./configure
make
sudo make install
インストールが終了したら、バージョン情報を確認しましょう。
julius -version
加えて、Julius の実行に必要なカーネルモジュールを有効化します。
sudo modprobe snd-pcm-oss
sudo sh -c "echo snd-pcm-oss >> /etc/modules"
最後に、Julius のパッケージ内の不適切なファイルを、適切なファイルに置き換えます。
cp julius-4.3.1/gramtools/mkdfa/mkfa-1.44-flex/mkfa julius-4.3.1/gramtools/mkdfa/mkfa
cp julius-4.3.1/gramtools/dfa_minimize/dfa_minimize julius-4.3.1/gramtools/mkdfa/dfa_minimize
以上で Julius のインストールは終わりです。
音声認識用の文法ファイルを作成
Julius の音声認識はとても時間がかかる重い処理になります。ですので、現実的な利用法としては文法ファイルを定義して利用できる文法を限定してしまう必要があります。
まず、音素列を記した voca ファイルを作成します。cd ~ で、ユーザーのホームディレクトリに移動してから
vi kaden.voca
で、新規ファイルの編集を始めます。kaden については他の名前でも構いません。以下にサンプルを記します。ご覧のように、単語についてローマ字で音素を定義します。
% KADEN
テレビ t e r e b i
電気 d e n k i
豆 m a m e
ハル h a r u
% WO
を w o
% PLEASE
つけて t u k e t e
消して k e s i t e
切替 k i r i k a e
次 t u g i
前 m a e
終了 sh u: ry o:
% NS_B
<s> silB
% NS_E
<s> silE
次に、構文制約ファイルを作成します。
vi kaden.grammar
で、新規ファイルの編集を始めます。kaden については、voca ファイルと同じにしておくと便利です。
S : NS_B KADEN_ PLEASE NS_E
KADEN_ : KADEN
KADEN_ : KADEN WO
この 2 つのファイルを作成したら、そこから音声認識に利用するファイルを生成します。
sudo julius-4.3.1/gramtools/mkdfa/mkdfa.pl kaden
変換が成功すると、kaden.dfa kaden.term kaden.dict の3ファイルが作成されます。
この 文法ファイルが正常に動作するかは、次のコマンドで確認して下さい。勿論、Raspberry Pi にマイクとスピーカーが接続され、正常に利用できる事が必要です。
julius -C julius-kits/grammar-kit-v4.1/hmm_mono.jconf -input mic -gram kaden
この記事に返信