オープンソースの音声認識エンジンJuliusをPaPeRo i本体で動かして、外付けマイクを使用して日本語の音声認識を行う手順を紹介します。
手順
(1) 「【実験】PaPeRo i本体でJuliusによる音声認識を行う」のビルド手順の(2)までの作業を実施します。
(2) ALSAライブラリ及び関連ツールをインストールします。
(debian_stretch)# apt-get install libasound2-dev alsa-utils
(3) juliusのソースを展開、configure、make、インストールします。デフォルトではサウンドドライバとしてOSSが使用されますので、ALSAを使用する為、configureの際、–with-mictype=alsaオプションを指定します。
(debian_stretch)# cd /home/juius/dictation-kit-v4.4/src
(debian_stretch)# unzip julius-4.4.2.zip
(debian_stretch)# cd julius-4.4.2
(debian_stretch)# ./configure --with-mictype=alsa
(debian_stretch)# make
(debian_stretch)# make install
(4) PaPeRo i のUSBポートに外付けマイクを接続し、arecordで外付けマイクのカード番号とデバイス番号を確認します。
(debian_stretch)# arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: CODEC [USB AUDIO CODEC], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Microphone [USB Microphone], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
[USB AUDIO CODEC]が内蔵マイクですので、この例では、card 1、device 0が外付けマイクになります。
(5) 必要に応じて、マイクのボリュームを調整します。
ターミナルの画面を見ながらキーボード操作で調整するには、alsamixerコマンドを使用します。
(debian_stretch)# alsamixer
コマンドのみで設定するには、amixerコマンドを使用します。
外付けマイクはcard 1なので、まずはカード1のコントロールの一覧を表示させます。
(debian_stretch)# amixer -c 1
Simple mixer control 'Mic',0
Capabilities: cvolume cvolume-joined cswitch cswitch-joined
Capture channels: Mono
Limits: Capture 0 - 57
Mono: Capture 23 [40%] [3.29dB] [on]
この例では、コントロールとしてはMicのみ、設定できる値は0から57まで、現在の設定値は23(40%)である事を示しています。
Micの設定値を、40%に設定する為には、
(debian_stretch)# amixer -c 1 set Mic 40%
とします。
(6) Juliusの使用するマイクを、環境変数により設定します。(4)の結果から、外付けマイクのカード番号は1、デバイス番号は0ですので、
(debian_stretch)# export ALSADEV="plughw:1,0"
とします。
(7) GMMの音声認識を実行します。
(debian_stretch)# cd /home/julius/dictation-kit-v4.4
(debian_stretch)# julius -C main.jconf -C am-gmm.jconf -demo
試したところでは、認識時間は内蔵マイクを使った場合とあまり変わらず、短いフレーズや単語でも10秒程度かかってしまいます。
また、認識結果につきましては、
「終了」→「秘密を。」
「きょう」→「うん。」
「あした」→「走った。」
等と、やはり誤認識するケースがあるものの、内蔵マイクでは
「おはようございます」→「うん、といいます。」
「こんにちわ」→「ビーチも。」
「こんばんわ」→「どうも。」
等と誤認識してしまう言葉に関して、外付けマイクでは
「おはようございます」→「おはようございます。」
「こんにちわ」→「こんにちは。」
「こんばんわ」→「こんばんは。」
と正しく認識できるケースがあり、認識率としては60%程度に向上しました。
今回の実験に使用した外付けマイクのメーカー・型番は、以下のとおりです。
メーカー:サンササプライ(株)
型番:MM-MCU03BK