Python
 Computer >> コンピューター >  >> プログラミング >> Python

GoogleSpeechAPIを使用したPythonでの音声認識


音声認識は、ホームオートメーション、AIなどのいくつかのアプリケーションで最も便利な機能の1つです。このセクションでは、PythonとGoogleのSpeechAPIを使用して音声認識を行う方法を説明します。

この場合、音声認識にマイクを使用して音声を提供します。マイクを設定するには、いくつかのパラメータがあります。

このモジュールを使用するには、SpeechRecognitionモジュールをインストールする必要があります。オプションのpyaudioと呼ばれる別のモジュールがあります。これを使用して、オーディオのさまざまなモードを設定できます。

sudo pip3 install SpeechRecognition
sudo apt-get install python3-pyaudio

外部マイクまたはUSBマイクの場合、問題を回避するために正確なマイクを提供する必要があります。 Linuxでは、「lsusb」と入力してUSBデバイスの関連情報を表示するとします。

2番目のパラメーターはチャンクサイズです。これを使用して、一度に読み取るデータの量を指定できます。 1024や2048などの2の累乗の数値になります。

また、データが処理のために記録される頻度を決定するために、サンプリングレートを指定する必要があります。

周囲に避けられないノイズがあるかもしれないので、正確な声を出すために周囲のノイズを調整する必要があります。

スピーチを認識する手順

  • さまざまなマイク関連情報を取得します。

  • チャンクサイズ、サンプリングレート、周囲ノイズ調整などを使用してマイクを構成します。

  • 声が出るまでしばらく待ちます

    • 音声が認識されたら、テキストに変換してみてください。変換しないと、エラーが発生します。

  • プロセスを停止します。

サンプルコード

import speech_recognition as spreg
#Setup the sampling rate and the data size
sample_rate = 48000
data_size = 8192
recog = spreg.Recognizer()
with spreg.Microphone(sample_rate = sample_rate, chunk_size = data_size) as source:
recog.adjust_for_ambient_noise(source)
print('Tell Something: ')
   speech = recog.listen(source)
try:
   text = recog.recognize_google(speech)
   print('You have said: ' + text)
except spreg.UnknownValueError:
   print('Unable to recognize the audio')
except spreg.RequestError as e: 
   print("Request error from Google Speech Recognition service; {}".format(e))

出力

$ python3 318.speech_recognition.py
Tell Something: 
You have said: here we are considering the asymptotic notation Pico to calculate the upper bound 
of the time complexity so then the definition of the big O notation is like this one
$
>

マイクを使用せずに、音声ファイルを入力として取得して音声に変換することもできます。

サンプルコード

import speech_recognition as spreg
sound_file = 'sample_audio.wav'
recog = spreg.Recognizer()
with spreg.AudioFile(sound_file) as source:
   speech = recog.record(source) #use record instead of listning
   try:
      text = recog.recognize_google(speech)
      print('The file contains: ' + text)
   except spreg.UnknownValueError:
      print('Unable to recognize the audio')
   except spreg.RequestError as e: 
      print("Request error from Google Speech Recognition service; {}".format(e))

出力

$ python3 318a.speech_recognition_file.py 
The file contains: staying ahead of the curve demand planning new technology it also helps you progress in your career
$ 

  1. PythonのニュースAPIを使用してトップニュースを取得する

    News APIは、任意のWebサイトからニュース記事を検索および取得するための非常に有名なAPIです。このAPIを使用すると、誰でも任意のWebサイトからニュースの上位10行を取得できます。 ただし、このAPIを使用するには、APIキーが1つ必要です。 サンプルコード import requests def Topnews(): # BBC news api my_api_key=Api_number” my_url = = https://newsapi.org/v1/articles?source=bbc-news&sortBy=top&apiKey=my

  2. PythonでのCX_Freezeの使用

    時々私たちは非常にエキサイティングな何か違うものを作りたいと感じます、そして人間の性質によれば、私たちはいつもそれを共有するのが大好きです。 Pythonもそれらの願いを満たします。 Pythonを使用して、Pythonプログラムを友人と共有したい場合は、それを行うことができます。必要なのは、マシンのプログラムで使用されるすべてのモジュールに同じバージョンのPythonをインストールすることだけです。 まず、 pip install CX_Frezzeを使用してCX_Freezeモジュールをインストールする必要があります コマンドプロンプトのコマンド。 最初のステップは、この割り当て、