Innehållsförteckning:

Taligenkänning med Google Speech API och Python: 4 steg
Taligenkänning med Google Speech API och Python: 4 steg

Video: Taligenkänning med Google Speech API och Python: 4 steg

Video: Taligenkänning med Google Speech API och Python: 4 steg
Video: Speech recognition in Python made easy | Python Tutorial 2024, Juli
Anonim
Taligenkänning med Google Speech API och Python
Taligenkänning med Google Speech API och Python

Taligenkänning

Taligenkänning är en del av Natural Language Processing som är ett delområde av artificiell intelligens. För att uttrycka det enkelt är taligenkänning en dators programvarors förmåga att identifiera ord och fraser i talat språk och konvertera dem till läsbar text. Den används i flera applikationer som röstassistentsystem, hemautomation, röstbaserade chatbots, röstinteragerande robot, artificiell intelligens och etc.

Det finns olika API: er (Application Programming Interface) för att känna igen tal. De erbjuder tjänster antingen gratis eller betalt. Dessa är:

  • CMU Sfinx
  • Googles taligenkänning
  • Google Cloud Speech API
  • Wit.ai
  • Microsoft Bing röstigenkänning
  • Houndify API
  • IBM tal till text
  • Snowboy Hotword Detection

Vi kommer att använda Google taligenkänning här, eftersom det inte kräver någon API -nyckel. Denna handledning syftar till att ge en introduktion om hur du använder Googles taligenkänningsbibliotek på Python med hjälp av extern mikrofon som ReSpeaker USB 4-Mic Array från Seeed Studio. Även om det inte är obligatoriskt att använda extern mikrofon, kan även en inbyggd mikrofon på en bärbar dator användas.

Steg 1: ReSpeaker USB 4-Mic Array

ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array

ReSpeaker USB Mic är en fyrmikrofonenhet avsedd för AI- och röstapplikationer, som utvecklades av Seeed Studio. Den har 4 högpresterande, inbyggda rundstrålande mikrofoner utformade för att hämta din röst var som helst i rummet och 12 programmerbara RGB LED-indikatorer. ReSpeaker USB -mikrofon stöder Linux, macOS och Windows operativsystem. Detaljer hittar du här.

ReSpeaker USB Mic kommer i ett fint paket som innehåller följande saker:

  • En användarhandbok
  • ReSpeaker USB Mic Array
  • Micro USB till USB -kabel

Så vi är redo att komma igång.

Steg 2: Installera obligatoriska bibliotek

För denna handledning antar jag att du använder Python 3.x.

Låt oss installera biblioteken:

pip3 installera SpeechRecognition

För macOS måste du först installera PortAudio med Homebrew och sedan installera PyAudio med pip3:

brygga installera portaudio

Vi kör under kommandot för att installera pyaudio

pip3 installera pyaudio

För Linux kan du installera PyAudio med apt:

sudo apt-get install python-pyaudio python3-pyaudio

För Windows kan du installera PyAudio med pip:

pip installera pyaudio

Skapa en ny pythonfil

nano get_index.py

Klistra in på get_index.py nedanför kodavsnittet:

importera pyaudio

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') för i i intervall (0, numdevices): if (p.get_device_info_by_host_api_device_index (0, i). Check ('max, i). '))> 0: print ("Input Device ID", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' name '))

Kör följande kommando:

python3 get_index.py

I mitt fall ger kommandot följande utdata till skärmen:

Ingångsenhets -id 1 - ReSpeaker 4 Mic Array (UAC1.0)

Ingångsenhets -id 2 - MacBook Air -mikrofon

Ändra device_index till indexnummer enligt ditt val i kodavsnittet nedan.

importera speech_recognition som sr

r = sr. Recognizer () speech = sr. Microphone (device_index = 1) med tal som källa: print ("säg något! …") audio = r.adjust_for_ambient_noise (source) audio = r.listen (source) försök: recog = r.recognize_google (ljud, språk = 'en-US') print ("Du sa:" + recog) utom sr. UnknownValueError: print ("Google taligenkänning kunde inte förstå ljud") utom sr. RequestError som e: print ("Det gick inte att begära resultat från Googles taligenkänningstjänst; {0}". Format (e))

Enhetsindex valdes 1 på grund av att ReSpeaker 4 Mic Array kommer att vara som huvudkälla.

Steg 3: Text-till-tal i Python With Pyttsx3 Library

Det finns flera API: er tillgängliga för att konvertera text till tal i python. Ett av sådana API: er är pyttsx3, vilket är det bästa tillgängliga text-till-tal-paketet enligt mig. Detta paket fungerar i Windows, Mac och Linux. Kontrollera den officiella dokumentationen för att se hur detta görs.

Installera paketet Använd pip för att installera paketet.

pip installera pyttsx3

Om du är i Windows behöver du ett extra paket, pypiwin32 som det kommer att behöva för att komma åt det inbyggda Windows -tal -API: t.

pip installera pypiwin32

Konvertera text till tal python script Nedan är kodavsnittet för text till tal med pyttsx3:

importera pyttsx3

motor = pyttsx3.init ()

engine.setProperty ('rate', 150) # Hastighetsprocent

engine.setProperty ('volym', 0,9) # Volym 0-1

engine.say ("Hej, värld!")

engine.runAndWait ()

Steg 4: Sätta ihop allt: Bygga taligenkänning med Python med hjälp av Googles taligenkännings -API och Pyttsx3 -bibliotek

Koden nedan är ansvarig för att känna igen mänskligt tal med Google taligenkänning och konvertera texten till tal med hjälp av pyttsx3 -biblioteket.

importera speech_recognition som sr

import pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0.9) r = sr. Recognizer () speech = sr. Microphone (device_index = 1) med tal som källa: audio = r.adjust_for_ambient_noise (source) audio = r.listen (source) try: recog = r.recognize_google (audio, language = 'en-US') print ("You said:" + recog) engine.say (" Du sa: " + recog) engine.runAndWait () utom sr. UnknownValueError: engine.say (" Google taligenkänning kunde inte förstå ljud ") engine.runAndWait () utom sr. RequestError som e: engine.say (" Kunde inte begära resultat från Googles taligenkänningstjänst; {0} ". format (e)) engine.runAndWait ()

Det skriver ut utdata på terminalen. Det kommer också att konverteras till tal också.

Du sa: London är Storbritanniens huvudstad

Jag hoppas att du nu har bättre förståelse för hur taligenkänning fungerar i allmänhet och viktigast av allt, hur man implementerar det med hjälp av Google Speech Recognition API med Python.

Om du har några frågor eller feedback? Lämna en kommentar nedan. Håll utkik!

Rekommenderad: