Tartalomjegyzék:

Beszédfelismerés a Google Speech API és a Python használatával: 4 lépés
Beszédfelismerés a Google Speech API és a Python használatával: 4 lépés

Videó: Beszédfelismerés a Google Speech API és a Python használatával: 4 lépés

Videó: Beszédfelismerés a Google Speech API és a Python használatával: 4 lépés
Videó: Convert Speech-To-Text In Python in 60 seconds! 2024, November
Anonim
Beszédfelismerés a Google Speech API és a Python használatával
Beszédfelismerés a Google Speech API és a Python használatával

Beszédfelismerés

A beszédfelismerés a természetes nyelvfeldolgozás része, amely a mesterséges intelligencia részterülete. Egyszerűen fogalmazva, a beszédfelismerés a számítógépes szoftver azon képessége, hogy azonosítja a beszélt nyelvű szavakat és kifejezéseket, és azokat emberi olvasmányú szöveggé alakítja át. Számos alkalmazásban használják, mint például a hangsegéd rendszerek, otthoni automatizálás, hang alapú chatbotok, hanggal kölcsönhatásba lépő robot, mesterséges intelligencia stb.

Különféle API -k (Application Programming Interface) vannak a beszéd felismerésére. Ingyenes vagy fizetős szolgáltatásokat kínálnak. Ezek:

  • CMU Szfinx
  • Google beszédfelismerés
  • Google Cloud Speech API
  • Wit.ai
  • Microsoft Bing hangfelismerés
  • Houndify API
  • IBM beszéd szöveggé
  • Snowboy Hotword Detection

Itt a Google beszédfelismerését fogjuk használni, mivel nem igényel API -kulcsot. Ennek az oktatóanyagnak az a célja, hogy bevezetőt adjon a Google Beszédfelismerő könyvtárának használatához Pythonon külső mikrofon segítségével, például a Seeed Studio ReSpeaker USB 4-Mic Array segítségével. Bár nem kötelező külső mikrofont használni, még a laptop beépített mikrofonja is használható.

1. lépés: 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

A ReSpeaker USB Mic egy négymikrofonos eszköz, amelyet AI és hangalkalmazásokhoz terveztek, amelyet a Seeed Studio fejlesztett ki. 4 nagy teljesítményű, beépített körirányú mikrofonnal rendelkezik, amelyek a helyiség bármely pontjáról felveszik a hangját, és 12 programozható RGB LED-kijelzővel rendelkezik. A ReSpeaker USB mikrofon támogatja a Linux, a macOS és a Windows operációs rendszereket. Részletek itt találhatók.

A ReSpeaker USB mikrofon egy szép csomagban található, amely a következő elemeket tartalmazza:

  • Felhasználói útmutató
  • ReSpeaker USB mikrofon tömb
  • Micro USB - USB kábel

Tehát készen állunk az indulásra.

2. lépés: Telepítse a szükséges könyvtárakat

Ebben az oktatóanyagban feltételezem, hogy a Python 3.x -et használja.

Telepítsük a könyvtárakat:

pip3 telepítse a beszédfelismerést

MacOS esetén először telepítenie kell a PortAudio -t a Homebrew -val, majd a PyAudio -t a pip3 segítségével:

brew install portaudio

Az alábbi parancsot futtatjuk a pyaudio telepítéséhez

pip3 telepítse a pyaudio -t

Linux esetén telepítheti a PyAudio -t az apt segítségével:

sudo apt-get install python-pyaudio python3-pyaudio

Windows esetén a PyAudio programot a pip segítségével telepítheti:

pip install pyaudio

Hozzon létre egy új python fájlt

nano get_index.py

Illessze be a get_index.py kódrészlet alá:

import pyaudio

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') az i tartományban (0, számkészülékek): if (p.get_device_info_by_host_api_device_index (0, i).get ('maxInput '))> 0: print ("Beviteli eszköz azonosítója", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' név '))

Futtassa a következő parancsot:

python3 get_index.py

Esetemben a parancs a következő kimenetet adja a képernyőnek:

Bemeneti eszköz azonosítója 1 - ReSpeaker 4 mikrofon tömb (UAC1.0)

Bemeneti eszköz azonosítója 2 - MacBook Air mikrofon

Módosítsa a device_index indexszámot tetszés szerint az alábbi kódrészletben.

beszéd_felismerés importálása sr

r = sr. Recognizer () beszéd = sr. Mikrofon (eszköz_index = 1) beszéd forrásként: print ("mondj valamit! …") audio = r.adjust_for_ambient_noise (forrás) audio = r.listen (forrás) try: recog = r.recognize_google (audio, language = 'en-US') print ("Azt mondtad:" + felismerés), kivéve az sr. UnknownValueError: print ("A Google beszédfelismerése nem érti a hangot"), kivéve az sr. RequestError mint e: print ("Nem lehetett eredményeket kérni a Google beszédfelismerő szolgáltatásától; {0}". Formátum (e))

Az eszközindexet 1 -nek választották, mivel a ReSpeaker 4 Mic Array lesz a fő forrás.

3. lépés: Szövegfelolvasás a Pythonban a Pyttsx3 Library segítségével

Számos API áll rendelkezésre a szövegek beszédre konvertálásához pythonban. Az egyik ilyen API a pyttsx3, amely véleményem szerint a legjobb elérhető szövegfelolvasó csomag. Ez a csomag Windows, Mac és Linux rendszereken működik. Nézze meg a hivatalos dokumentációt, hogy megtudja, hogyan történik ez.

A csomag telepítéséhez használja a pip programot.

pip install pyttsx3

Ha Windows operációs rendszert használ, szüksége lesz egy további csomagra, a pypiwin32 -re, amelyhez hozzá kell férnie a natív Windows beszéd API -hoz.

pip install pypiwin32

Szöveg konvertálása beszédessé python -szkript

import pyttsx3

motor = pyttsx3.init ()

engine.setProperty ('rate', 150) # Sebesség százalék

engine.setProperty ('volume', 0.9) # 0-1. kötet

engine.say ("Helló, világ!")

engine.runAndWait ()

4. lépés: Összerakás: Beszédfelismerés kiépítése a Python segítségével a Google Beszédfelismerő API és a Pyttsx3 könyvtár használatával

Az alábbi kód felelős az emberi beszéd felismeréséért a Google beszédfelismerés használatával, és a szöveg beszédké alakításáért a pyttsx3 könyvtár használatával.

beszéd_felismerés importálása sr

import pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0.9) r = sr. Recognizer () beszéd = sr. Mikrofon (device_index = 1) beszéd forrásként: audio = r.adjust_for_ambient_noise (forrás) audio = r.listen (forrás) try: recog = r.recognize_google (audio, language = 'en-US') print ("Azt mondtad:" + recog) engine.say (" Azt mondta: " + recog) engine.runAndWait (), kivéve sr. UnknownValueError: engine.say (" A Google beszédfelismerése nem érti a hangot ") engine.runAndWait () kivéve sr. RequestError mint e: engine.say (" Nem sikerült kérjen eredményeket a Google beszédfelismerő szolgáltatásától; {0} ". format (e)) engine.runAndWait ()

A kimenetet a terminálra nyomtatja. Ezenkívül beszéddé is átalakul.

Azt mondta: London Nagy -Britannia fővárosa

Remélem, most már jobban érti a beszédfelismerés működését általában, és ami a legfontosabb, hogyan lehet ezt megvalósítani a Google Beszédfelismerő API használatával a Python segítségével.

Ha bármilyen kérdése vagy visszajelzése van? Hagyjon megjegyzést alább. Maradjon velünk!

Ajánlott: