Juliusとは
実装手順
-
Juliusのダウンロード
-
Juliusをコマンドプロンプトで動かす
-
Pythonの準備
-
PythonとJuliusを接続する
-
Juliusの音声認識システムを使ってみる
Juliusのダウンロード
Juliusをコマンドプロンプトで動かす
Julius起動時のエラー解決策
Pythonの準備
import socket import time import re # ローカル環境のIPアドレス host = '127.0.0.1' # Juliusとの通信用ポート番号 port = 10500 # Juliusにソケット通信で接続 client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect((host, port)) time.sleep(2) # 正規表現で認識された言葉を抽出 extracted_word = re.compile('WORD="([^"]+)"') data = "" try: while True: while (data.find("</RECOGOUT>\n.") == -1): data += str(client.recv(1024).decode('shift_jis')) # 単語を抽出 recog_text = "" for word in filter(bool, extracted_word.findall(data)): recog_text += word # 単語を表示 print("認識結果: " + recog_text) data = "" except: print('PROCESS END') client.send("DIE".encode('shift_jis')) client.close()
PythonとJuliusを接続する
Python側とJulius側の準備ができたので接続していきます。
まず、コマンドプロンプトで以下のコマンドを入力して実行します。
モジュールモードにして実行するため、上で試したコマンドの「-demo」を「-module」に変更してます。
実行すると画像のような表示になります。
画像の下部に表示されている「10500」がポート番号ですね。
コマンドプロンプトでJuliusを実行できてら、最後に用意したPythonファイルを実行するだけです。
Juliusの音声認識システムを使ってみる
JuliusとPythonファイルを実行したらパソコンのマイクに向かって話しかけてみます。
話しかけるとターミナルに認識された単語や文章が表示されます。
認識された言葉がpycharmのターミナルに表示されました!
Juliusを動かしてみた感想
簡単にPythonで音声認識システムができました!
ちゃんと言葉を認識できているので面白いですね!
精度に関して、発する単語によっては微妙な感じも否めませんが、途中から「活舌の問題???」と思ってしまいました。
しかし、いろいろ試して認識されにくい単語や音がありそうです。
Juliusの面白い点として、この精度を上げる方法がいくつかあるみたいです。
今後はそれらも試しつつ、面白い活用方法、使い方を模索していきます!
こちらのSpeech Recognitionを使った音声認識機能記事もどうぞ!
【日本語】Pythonでspeech recognitionを使って音声認識させてみる! - アルの備忘録 www.matematetea.com
こちらのテキスト読み上げ機能記事もどうぞ!
【pyttsx3】Pythonの音声読み上げ機能で「寿限無」を読ませてみた! - アルの備忘録 www.matematetea.com
最後まで読んでいただき、ありがとうございます!