今回は最近購入したラズパイ4でJuliusを使って音声認識を行ってみました。
事前準備
まずはJuliusを使うために必要なパッケージをインストールしてきます。
ターミナルを開いて下記コマンドを実行します。
sudo apt-get install build-essential zlib1g-dev flex sudo apt-get install libasound2-dev libesd0-dev libsndfile1-dev
Julius本体取得
次に公式サイトよりJulius本体を取得します。
Julius公式サイト右側の「QUICK DOWNLOAD」から最新のGitHubリポジトリにアクセスしソースコードをダウンロードします。
なお、今回は2020年1月時点で最新版のバージョン4.5を使うことにします。
Julius本体のインストール
モジュール本体を取得できたら、インストールを行っていきます。今回はユーザ(Pi)のホームディレクトリ配下を使っていきます。
ターミナル上で以下のコマンドを実行します。
フォルダ作成
cd ~ mkdir Julius
フォルダを作成した後、ダウンロードしたgzipファイルを/home/<ユーザ>/Juliusに格納します。
モジュールを展開する
cd ~/Julius gzip -d julius-4.5.tar.gz tar xvf julius-4.5.tar rm julius-4.5.tar
コンパイル
cd julius-4.5 ./configure
make実行
make sudo make install
インストール確認
julius --version
これでエラーにならずにバージョン情報が表示されればインストールは完了です。
ディクテーションキットのダウンロードと展開
次にディクテーションキットを公式サイトよりダウンロードしてダウンロードしたzipファイルを~/Juliusディレクトリに格納します。
格納後、ターミナル上で以下のコマンドを実行し展開します。
cd ~/Julius unzip ~/Julius/dictation-kit-4.5.zip rm dictation-kit-4.5.zip
USBマイクの接続
ディクテーションキットの展開ができたら、次にUSBマイクの接続を行います。
今回はサンワサプライのMM-MCU02BKというUSBマイクを使いました。Amazonで2000円くらいで買えるお手軽なUSBマイクです。
このUSBマイクをラズパイに接続します。
次にこのUSBマイクが正しく認識されていることを確認します。
ターミナル上で下記のコマンドを入力します。
arecord -l
ここで、表示されているデバイスのカード番号とデバイス番号を確認します。
上記の例ではカード番号が1、デバイス番号が0となります。
最後に記憶したカード番号とデバイス番号を環境変数を設定します。
export ALSADEV="plughw:1,0"
毎回設定するのが面倒な方は.profile等に記載してください。
動作確認
これでセットアップは完了したので、いよいよ動作確認を行っていきます。
ターミナル上で下記コマンドを実行します。
cd ~/Julius/dictation-kit-4.5 julius -C main.jconf -C am-gmm.jconf -demo
入力待ちの状態になるので「こんにちは」とマイクに向かって話してみます。
「おんなじだ」「雰囲気だ」と認識されてしましました(笑)
この後何回か試してみましたが、10回中3回くらいしか「こんにちは」と正しく認識してくれませんでした。
さいごに
今回はJuliusを使ってラズパイで音声認識を試しました。音声認識が行えるようになるとラズパイDIYの幅が広がりますよね。ただし、素のままでは精度が非常に低いため次回は自作の辞書を作成し精度を上げていきたいと思います。
コメント