Node-Julius : Easy voice recognition library using Julius
これは何?
フリーの大語彙連続音声認識システム Julius を用いて簡単に音声認識を JavaScript で実現するための Node.js モジュールです。
動作環境
Mac OS X 10.8.2 および Ubuntu 10.04 での動作を確認しています。 コンパイルには以下のものが必要です。()内はこちらで動作させたバージョンになります。
- gcc (4.7 / 4.8)
- PortAudio (only for Mac OS X)
- Boost (1.49.0 / 1.50.0)
- MeCab (0.994)
インストール
$ cd YOUR_NODE_PROJECT_DIR
$ git clone https://github.com/hecomi/node-julius
$ mkdir node_modules
$ mv node-julius node_modules/julius
$ cd node_modules/julius
$ make
使い方
Grammar で音声認識させる言葉を覚えさせ、これをもとに Julius を実行する形式となります。 下記コードで、おはようございます・こんにちは・おやすみなさい、を音声認識することができます。
var Julius = grammar = ; // 音声認識させる言葉を覚えさせるgrammar;grammar;grammar; // 登録したキーワードをコンパイルして Julius を実行するgrammar;
文法の登録には、下記のように正規表現のような記法が可能です。 また、シンボルを定義して時間のような数字のまとまり等を一括で登録することもできます。
// 下記のような正規表現っぽい形式が使えますgrammar;grammar;grammar; // シンボルを定義することもできます// 下記は「○○時」および「○○時○○分」を認識します。var hour = minute = ;for var i = 1; i <= 24; ++i hour ;for var i = 0; i < 60; ++i minute ;grammar;grammar;grammar; // 文法のファイル名を指定(省略時は tmp)grammar; // 文法をコンパイルgrammar;
音声認識では、各種イベントを受け取るコールバックを定義することができます。
julius; julius; julius; julius; julius;
認識の一時停止、開始は start
および stop
で行います。
;
詳細
その他詳細は Twitter:@hecomi へご質問いただくか、http://d.hatena.ne.jp/hecomi/ をご参照下さい。