Scratch 2 オフラインで使える音声対話ロボット/音声対話システム用ブロック
気軽に対話システムや対話ロボット、スマートスピーカーを作成するには、音声合成・認識、画像認識、センサやLED・モーターなどを Scratch で使えると面白そうです。たとえば人が座ると目が光ってしゃべりかけてくるとか。そんないろいろな発想を実現する Scratch ブロックを紹介します。常にインターネットに接続できる環境にいるとは限らないので、すべてオフラインで動作するようになっています。
(クリックするとそれぞれの解説ページへ)
必要な機能に応じて、必要な拡張ブロックを選んで追加します。それぞれインストーラを準備しています。対話ロボットや対話システムの全体設計についてはこちらのページで詳しく説明します。
micro:bitの拡張ブロック s2microbit-ble は Windows10 や Mac OS X でも使えますが、他は今のところ Windowsのみです。
用意するもの
- Scratch 2 (Offline)
- 必要に応じて
- マイク(音声認識をする場合。PC内臓のもので可)
- カメラ(顔追跡をする場合。PC内臓のもので可)
- Arduino や BBC micro:bit
各拡張ブロックの説明
s2speak (OpenJTalk)
テキストを入力すると音声を合成します。
- インストール方法と使用方法(アイコンからでも移動できます)
- OpejJtalkという音声合成を使っています。
- デモプロジェクト(s2speak_demo.sb2)
s2listen (Julius)
音声をテキストに変換します。
- インストール方法と使用方法(アイコンからでも移動できます)
- Juliusという音声認識を使っています。
- 音声認識ではマイクの設定が重要になるため、音声入力デバイス(マイク)の設定 も参考にしてください。
- 簡単なブロックの説明
聞こえた言葉
のブロックには、聞こえるまで最大(...)秒待つ
のブロックが実行されて数秒間の認識結果が入ります。耳に入った言葉
には常に(連続的に)認識結果が入るので、「起きて」などのキーワードで何か始めるプログラムができます。- 品詞(名詞、動詞・・)への分解もおこないます。
- デモプロジェクト(s2listen_demo.sb2)
s2face (OpenCV)
顔の位置と大きさを検出します。
- インストール方法と使用方法(アイコンからでも移動できます)
- OpenCVという画像処理ライブラリを使っています。必要なディスクスペースが大きい(560-570MB)ので注意してください。
- デモプロジェクト(s2face_demo.sb2)
s2aio (Arduino)
ArduinoをScratchから使うためのs2aio(MrYsLab)をインストーラ版にしました。
- ブロックの日本語化も行っています。
- インストール方法と使用方法(アイコンからでも移動できます)
- デモプロジェクト(s2aio_demo.sb2)
s2microbit-ble
BBC micro:bit を Bluetooth (Low Energy) で使うことができます。(Windows10とMac OS Xに対応しています。) 電子回路だけでなくゲームコントローラなどいろいろなものを作成することができます。