音声認識とは、コンピュータソフトウェアが話し言葉の単語やフレーズを認識し、それらを読みやすいテキストに変換する機能です。では、Pythonで音声をテキストに変換する方法は?SpeechRecognitionライブラリを使用して、Pythonで音声をテキストに変換する方法 機械学習モデルを最初から構築する必要はありません。このライブラリは、よく知られているさまざまな公開音声認識APIの便利なパッケージを提供します。
ライブラリをインストールするには、pipを使用します。
pip3インストールSpeechRecognition
では、新しいPythonファイルを開いてインポートします。
speech_recognitionをsrとしてインポートします
ファイルから読み取る
現在のディレクトリに英語の音声を含むオーディオファイルがあることを確認してください(私と一緒に勉強したい場合は、ここでオーディオファイルを入手してください)。
ファイル名=「speech.wav」
ファイルはLibriSpeechデータセットから取得されますが、必要に応じてファイル名を変更して、音声認識を初期化することができます。
#認識エンジンを初期化
r = sr.Recognizer()
次のコードは、音声ファイルを読み込み、Google音声認識を使用して音声をテキストに変換します。
#sr.AudioFile(filename)をソースとしてファイルを開く:www.zpedu.com/
#データをリッスン(オーディオをメモリにロード)
audio_data = r.record(ソース)
#認識(音声からテキストに変換)
テキスト= r.recognize_google(audio_data)
印刷(テキスト)
ファイルをGoogleにアップロードして出力を得たので、完了までに数秒かかります。これが私の結果です。
ナンセンスな話をしていると思います
マイクから読み取る
これには、PyAudioがコンピューターにインストールされている必要があります。オペレーティングシステムに応じたインストールプロセスは次のとおりです。
ウィンドウズ
クリックしてインストールできます。
pip3インストールpyaudio
Linux
最初に依存関係をインストールする必要があります:
sudo apt-get install python-pyaudio python3-pyaudio
アップルシステム
クリックしてインストールする前に、portaudioをインストールする必要があります。
brew install portaudio
さて、マイクを使って声を変換しましょう:
ソースとしてsr.Microphone()を使用:
#デフォルトのマイクから音声データを読み取る
audio_data = r.record(ソース、期間= 5)
print(“認識中…”)
#音声をテキストに変換
マイクから5秒間聞こえた後、音声をテキストに変換してみます。
これは前のコードとよく似ていますが、ここではMicrophone()オブジェクトを使用してデフォルトのマイクから音声を読み取り、次にrecord()関数のdurationパラメーターを使用して5秒後に読み取りを停止し、音声データをGoogleにアップロードして出力を取得しますテキスト。
また、record()関数のオフセットパラメータを使用して、数秒のオフセットの後に記録を開始することもできます。Pythonに興味がある場合は、教師のWeChat:abb436574を追加して、無料で学習教材とビデオコースのセットを入手できます〜
さらに、言語パラメーターをaccept_google()関数に渡すことで、さまざまな言語を識別することができます。たとえば、スペイン語の音声を認識したい場合は、以下を使用できます。
テキスト= r.recognize_google(audio_data、language =” es-ES”)