音声認識のSnowboyをラズパイに入れる
前回はGoogle Assistantを入れた。
引き続き以下のブログを参考にさせていただき、今回はSnowboyを導入するメモ。
【ラズパイ】Voice KitにSnowboyを入れてホットワードでSwithBotを操る【よしこちゃん】 - Oh My Enter!
実際にやってみたところ、2019年2月現在、発生するエラーや対処法も上記の記事で書かれている通りだった。ありがたみ極まる。
リンクが有効な限り、上記のブログを直接参考にされたし。
依存関係の解決
(nyabot)$ sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox (nyabot)$ pip install pyaudio (nyabot)$ sudo apt-get install libatlas-base-dev
ソース類一式をダウンロード
(nyabot)$ git clone https://github.com/Kitt-AI/snowboy.git
ホットワード検出ライブラリをビルド
(nyabot)$ cd snowboy (nyabot)~/snowboy $ cd swig/Python3 (nyabot)~/snowboy/swig/Python3 $ make
失敗するので、Makefileをnanoエディタで開き、
(nyabot)~/snowboy/swig/Python3 $ nano Makefile
下記の部分を書き換える。
# SWIG := swig // コメントアウトする SWIG := swig3.0 // この行を追加する
再びmake。
(nyabot)~/snowboy/swig/Python3 $ make
ファイル_snowboydetect.soが生成されていることを確認
(nyabot)~/snowboy/swig/Python3 $ ls
(nyabot)$ cd ~/snowboy/examples/Python3/ (nyabot)~/snowboy/examples/Python3 $ python demo.py resources/models/snowboy.umdl
先ほどと同様に、上記でもエラーが発生するので、snowboydecoder.py を一部(一時的に)書き換える。
(nyabot)~/snowboy/examples/Python3 $ nano snowboydecoder.py
# from . import snowboydetect // コメントアウトする import snowboydetect // この行を追加する
再び以下のコマンドを実行。
(nyabot)~/snowboy/examples/Python3 $ python demo.py resources/models/snowboy.umdl
待ち受けに入るので、「snowboy」と呼びかけてピコーンと鳴ればOK.
音声認識をテスト
テストファイルとして「おはよう」を登録したohayo.pmdlをSnowboyで作成。
mvとかscpとかでファイルを/home/pi/snowboy/resources/modelsに移す。
(nyabot)~/snowboy/examples/Python3 $ python demo.py resources/models/ohayo.pmdl
「おはよう」「ピコーン!」OK.
つづく。