Python

チャットボットで音声入力

こんにちは ともです。

今回の投稿は「勉強会で作ったチャットボットのオウム返しの音声入力」を行います。

前回の投稿は「勉強会で作ったチャットボットのオウム返しの音声出力でした。

音声チャットボットの構成

音声入力はjuliusを使用しました。

現在の構成は以下の通りです。

マイクから入力された音声データはjuliusサーバにおくられて音声から文字に変換されます。

チャットボットは、ソケット通信で変換された文字のデータを取得します。このとき取得するデータ形式はxml形式です。

xmlデータから入力文字データを取得して言語処理側に渡す予定です。今はオウム返しです。

文字データをOpenJtalkのアプリケーションに渡してwave形式(音声形式)に変換します。

チャットボット(Pythonの文字などを変換しているメソッド)でwave形式のファイルを読み上げを行っています(スピーカーから出力)。winsoundのライブラリを使用しています。

音声チャットボットの現状

システム的に不安定な感じです。当初Python側でjuliusサーバーを起動するためsubprocessを使っていましたがソケット通信の認識がうまくいかず、かなりの時間はまっていました。

結局juliusサーバーは手動でコンソール起動になりました。

今後は音声認識でgoogleのapiも使ってみたいですが今後の検討とします。

次回の予定

次回はチャットボットの仕組みをwebサーバに配置しブラウザーから音声データの入力と出力を行いたいと思います。

音声データーは以下を使わせていただきました。

Copyright 2009-2018 Nagoya Institute of Technology (MMDAgent Model “Mei”,”Takumi”)

コメント

0 件のコメント:

コメントを投稿

コメントをお待ちしています。