「利用者:Konishi」の版間の差分

提供: VoIP-Info.jp
移動先: 案内検索
(その他のオプション)
13行目: 13行目:
 
=== これからやること ===
 
=== これからやること ===
 
* NAKAYO 電話機を Asterisk のパーク保留に対応させる
 
* NAKAYO 電話機を Asterisk のパーク保留に対応させる
 
  
 
== Asterisk で音声認識 ==
 
== Asterisk で音声認識 ==
Asterisk と Julius を連携させて、音声認識を実現する。
+
[[Julius を使った音声認識]] に移動しました。
<br/>なお、以下の番号で山手線の駅名を認識するデモを用意してあります。
 
<pre>055-287-7709</pre>
 
 
 
=== 材料 ===
 
* 必ず必要なもの
 
<ul>
 
* x86 系の Linux 環境
 
* Asterisk 1.4 系のソース<br/>2009/10/6 の最新版<br/>http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.4.26.2.tar.gz
 
* Julius ソース<br/>http://sourceforge.jp/projects/julius/downloads/37582/julius-4.1.2.tar.gz/
 
* Julius ディクテーション実行キット<br/>http://prdownloads.sourceforge.jp/julius/28977/dictation-kit-v3.2.tar.gz
 
* Asterisk 連携用パッチと Julius プラグインのソース<br/>http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006.tgz
 
</ul>
 
* デモ環境<br/>このデモでは、音声合成に galatea talk + unidic を利用しています。
 
<ul>
 
* 山手線の駅名の認識デモ<br/>http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006-jr.tgz
 
* OSC 2009 Okinawa で使ったデモ<br/>http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006-yui.tgz
 
</ul>
 
 
 
=== 環境の構築 ===
 
* 期待するディレクトリ構成
 
<blockquote><pre>
 
/root
 
|-- work
 
|  |-- dictation-kit-v3.2
 
|  |  `-- model
 
|  |      `-- phone_m
 
|  `-- julius-4.1.2
 
|      `-- plugin
 
|-- jr
 
`-- yui
 
</pre></blockquote>
 
 
 
* 事前準備
 
<ul>
 
* /root/work ディレクトリの準備
 
<blockquote><pre>
 
# mkdir /root/work
 
</pre></blockquote>
 
* ソースの取得
 
<blockquote><pre>
 
# cd /root/work
 
# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.4.26.2.tar.gz
 
# w3m http://sourceforge.jp/projects/julius/downloads/37582/julius-4.1.2.tar.gz/
 
# w3m http://prdownloads.sourceforge.jp/julius/28977/dictation-kit-v3.2.tar.gz
 
# wget http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006.tgz
 
# wget http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006-jr.tgz
 
# wget http://www2.iweave.jp/asterisk-julius/asterisk-julius-20091006-yui.tgz
 
</pre></blockquote>
 
</ul>
 
 
 
* Julius ビルド
 
<ul>
 
* /root/work に julius-4.1.2.tar.gz を展開する。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf julius-4.1.2.tar.gz
 
</pre></blockquote>
 
* julius/Makefile.in の LDFLAGS の定義の最後に -rdynamic を追加する。
 
<blockquote><pre>
 
# cd julius-4.1.2
 
# sed 's/^\(LDFLAGS=.*\)/\1 -rdynamic/' julius/Makefile.in > julius/Makefile.in.temp
 
# mv julius/Makefile.in.temp julius/Makefile.in
 
</pre></blockquote>
 
* ビルド&インストール
 
<blockquote><pre>
 
# ./configure
 
# make
 
# make install
 
</pre></blockquote>
 
* 参考ページ<br/>http://julius.sourceforge.jp/juliusbook/ja/desc_install.html#id2486532
 
</ul>
 
 
 
* Julius プラグインビルド
 
<ul>
 
* /root/work に asterisk-julius-20091006.tgz を展開する。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf asterisk-julius-20091006.tgz
 
</pre></blockquote>
 
* ソースを Julius のディレクトリにコピーする。
 
<blockquote><pre>
 
# cp asterisk-julius/udpadin.c julius-4.1.2/plugin
 
</pre></blockquote>
 
* プラグインをビルドする。
 
<blockquote><pre>
 
# cd julius-4.1.2/plugin
 
# gcc -shared -o udpadin.jpi udpadin.c
 
</pre></blockquote>
 
</ul>
 
 
 
* 音響モデルの用意
 
<ul>
 
* /root/work に dictation-kit-v3.2.tar.gz を展開する。<br/>ビルド作業はありません。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf dictation-kit-v3.2.tar.gz
 
</pre></blockquote>
 
</ul>
 
 
 
* Asterisk 連携アプリケーションのビルド
 
<ul>
 
* /root/work に Asterisk 1.4 系のソースを展開する。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf asterisk-1.4.*.tar.gz
 
</pre></blockquote>
 
* /root/work に asterisk-julius-20091006.tgz を展開する(展開していない場合)。
 
<blockquote><pre>
 
# tar zxf asterisk-julius-20091006.tgz
 
</pre></blockquote>
 
* app_talkdetect.c にパッチを当てる。
 
<blockquote><pre>
 
# cd asterisk-1.4.*
 
# patch -p1 < ../asterisk-julius/app_talkdetect-julius.patch
 
</pre></blockquote>
 
* Asterisk のビルドオプションを選択、ビルドして、インストールする。
 
<blockquote><pre>
 
# ./configure
 
# make menuconfig
 
# make
 
# make install
 
# make samples
 
# make config
 
</pre></blockquote>
 
* /etc/asterisk/sip.conf 等を編集して、電話機を登録する。
 
* すでにビルド環境がある場合は、その環境に app_talkdetect.c をコピーして、再ビルド&インストールしてください。
 
</ul>
 
 
 
=== デモ環境構築 ===
 
* 山手線の駅名の認識デモ
 
<ul>
 
* /root に asterisk-julius-20091006-jr.tgz を展開する。
 
<blockquote><pre>
 
# cd /root
 
# tar zxf work/asterisk-julius-20091006-jr.tgz
 
</pre></blockquote>
 
* /root/work に asterisk-julius-20091006.tgz を展開する(展開していない場合)。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf asterisk-julius-20091006.tgz
 
</pre></blockquote>
 
* 番号計画をコピーする。
 
<blockquote><pre>
 
# cp /root/work/asterisk-julius/extensions.ael /etc/asterisk
 
</pre></blockquote>
 
* default コンテキストの 200 番でデモが利用できる。
 
</ul>
 
 
 
* OSC 2009 Okinawa で使ったデモ
 
<ul>
 
* /root に asterisk-julius-20091006-yui.tgz を展開する。
 
<blockquote><pre>
 
# cd /root
 
# tar zxf work/asterisk-julius-20091006-yui.tgz
 
</pre></blockquote>
 
* /root/work に asterisk-julius-20091006.tgz を展開する(展開していない場合)。
 
<blockquote><pre>
 
# cd /root/work
 
# tar zxf asterisk-julius-20091006.tgz
 
</pre></blockquote>
 
* 番号計画をコピーする(コピーしていない場合)。
 
<blockquote><pre>
 
# cp /root/work/asterisk-julius/extensions.ael /etc/asterisk
 
</pre></blockquote>
 
* default コンテキストの 201 番でデモが利用できる。
 
</ul>
 
 
 
=== デモの実行 ===
 
* 山手線の駅名の認識デモ
 
<ul>
 
* Asterisk を再起動する。
 
<blockquote><pre>
 
# /etc/init.d/asterisk restart
 
</pre>
 
あるいは
 
<pre>
 
# /etc/rc.d/init.d/asterisk restart
 
</pre></blockquote>
 
* Julius を起動する。
 
<blockquote><pre>
 
# cd /root
 
# julius -C jr/jconf-jr
 
</pre></blockquote>
 
* 接続している電話機から 200 番をダイアルする。
 
</ul>
 
 
 
* OSC 2009 Okinawa で使ったデモ<br/>ゆいレールの駅名を認識します。
 
<ul>
 
* Asterisk を再起動する。
 
<blockquote><pre>
 
# /etc/init.d/asterisk restart
 
</pre>
 
あるいは
 
<pre>
 
# /etc/rc.d/init.d/asterisk restart
 
</pre></blockquote>
 
* Julius を起動する。
 
<blockquote><pre>
 
# cd /root
 
# julius -C yui/jconf-yui
 
</pre></blockquote>
 
* 接続している電話機から 201 番をダイアルする。
 
* ゆいレールの情報はこちらで確認下さい。<br/>右側に駅名が記載されています。<br/>http://www.yui-rail.co.jp/
 
</ul>
 
 
 
=== 制限 ===
 
* 音声認識は、同時に1チャネルのみ利用可能です。<br/>複数チャネルで利用した場合は、正しい結果を得ることができません。
 
* 登録されていない単語に対しても、常に登録した単語として認識してしまいます。
 
* 騒がしい環境で利用すると、ノイズを音声とみなし、登録した単語として誤認識します。
 
 
 
=== その他のオプション ===
 
以下につきましては、iWeave 小西(直通電話番号 055-244-7663)までお問い合わせ下さい。
 
* 電話用音響モデル
 
* 複数チャネル同時認識対応
 
* 複数文法対応
 
* 環境ノイズ対応(環境ノイズを誤認識しないように)
 
* システム構築、技術支援など
 
 
 
=== 備考 ===
 
* 音声認識 Julius のページ<br/>http://julius.sourceforge.jp/
 
* 音声合成 galatea talk のページ<br/>http://www.sp.nitech.ac.jp/~demo/gtalk/demo.php<br/>http://sourceforge.jp/projects/galateatalk/
 
* 形態素解析辞書 unidic のページ<br/>http://www.tokuteicorpus.jp/dist/
 

2009年10月7日 (水) 15:32時点における版

私はだれ?

これまでにやったこと

これまで、こんなことをやりました。

  • Digium アナログカードの、ナンバーディスプレイ対応パッチ作成
  • Dialogic Diva Server 用、i ナンバー対応パッチ作成
  • Asterisk と Julius を連携させた音声認識
  • Asterisk と VoiceText の連携
  • SAXA 電話機の Asterisk のパーク保留対応

これからやること

  • NAKAYO 電話機を Asterisk のパーク保留に対応させる

Asterisk で音声認識

Julius を使った音声認識 に移動しました。