Obsah:
- Krok 1: ReSpeaker USB 4-Mic Array
- Krok 2: Nainštalujte požadované knižnice
- Krok 3: Prevod textu na reč v Pythone s knižnicou Pyttsx3
- Krok 4: Spojenie všetkého: Budovanie rozpoznávania reči v Pythone pomocou rozhrania Google Speech Recognition API a knižnice Pyttsx3
Video: Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:57
Rozpoznávanie reči
Rozpoznávanie reči je súčasťou spracovania prirodzeného jazyka, ktoré je podoborom umelej inteligencie. Zjednodušene povedané, rozpoznávanie reči je schopnosť počítačového softvéru identifikovať slová a frázy v hovorenom jazyku a previesť ich na text čitateľný pre ľudí. Používa sa v niekoľkých aplikáciách, ako sú systémy hlasového asistenta, domáca automatizácia, hlasové chatboty, robot interagujúci s hlasom, umelá inteligencia atď.
Na rozpoznávanie reči existujú rôzne rozhrania API (Application Programming Interface). Ponúkajú služby buď bezplatné alebo platené. Sú to tieto:
- CMU Sfinga
- Rozpoznávanie reči Google
- Google Cloud Speech API
- Wit.ai
- Rozpoznávanie hlasu Microsoft Bing
- Houndify API
- Reč IBM na text
- Detekcia kľúčových slov Snowboy
Tu budeme používať Rozpoznávanie reči Google, pretože nevyžaduje žiadny kľúč API. Tento tutoriál má poskytnúť úvod do toho, ako používať knižnicu rozpoznávania reči Google v Pythone pomocou externého mikrofónu, akým je napríklad ReSpeaker USB 4-Mic Array od Seeed Studio. Aj keď nie je povinné používať externý mikrofón, je možné použiť dokonca aj vstavaný mikrofón prenosného počítača.
Krok 1: ReSpeaker USB 4-Mic Array
ReSpeaker USB Mic je zariadenie so štyrmi mikrofónmi určené pre AI a hlasové aplikácie, ktoré bolo vyvinuté spoločnosťou Seeed Studio. Má 4 vysokovýkonné, vstavané všesmerové mikrofóny navrhnuté tak, aby zachytili váš hlas odkiaľkoľvek v miestnosti, a 12 programovateľných RGB LED indikátorov. Mikrofón ReSpeaker USB podporuje operačné systémy Linux, macOS a Windows. Podrobnosti nájdete tu.
Mikrofón ReSpeaker USB je dodávaný v peknom balení obsahujúcom nasledujúce položky:
- Užívateľská príručka
- Mikrofónne pole ReSpeaker USB
- Kábel micro USB na USB
Sme teda pripravení začať.
Krok 2: Nainštalujte požadované knižnice
V tomto návode budem predpokladať, že používate Python 3.x.
Nainštalujme si knižnice:
pip3 nainštalujte SpeechRecognition
V prípade systému macOS budete najskôr musieť nainštalovať PortAudio s Homebrew a potom nainštalovať PyAudio s pip3:
brew install portaudio
Na inštaláciu pyaudio spustíme príkaz
pip3 nainštalujte pyaudio
V systéme Linux môžete nainštalovať PyAudio pomocou apt:
sudo apt-get install python-pyaudio python3-pyaudio
V systéme Windows môžete nainštalovať PyAudio pomocou pip:
pip install pyaudio
Vytvorte nový súbor pythonu
nano get_index.py
Prilepte na útržok kódu get_index.py nižšie:
import pyaudio
p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') pre i v rozsahu (0, numdevices): if (p.get_device_info_by_host_api_device_index (0, i)get '))> 0: print ("ID vstupného zariadenia", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' name '))
Spustite nasledujúci príkaz:
python3 get_index.py
V mojom prípade príkaz poskytuje na obrazovku nasledujúci výstup:
Vstupné zariadenie s ID 1 - ReSpeaker 4 Mic Array (UAC1.0)
Input Device id 2 - MacBook Air Microphone
Zmeňte zariadenie_index na indexové číslo podľa vlastného výberu v nižšie uvedenom úryvku kódu.
importovať rozpoznávanie reči ako sr
r = sr. Recognizer () reč = sr. Mikrofón (device_index = 1) s rečou ako zdrojom: print („povedz niečo!…“) audio = r.adjust_for_ambient_noise (zdroj) audio = r.listen (zdroj) skús: rozpozn = r.recognize_google (audio, language = 'en-US') print ("Povedali ste:" + rozpoznanie) okrem sr. UnknownValueError: print ("Rozpoznávanie reči Google nemôže rozumieť zvuku") okrem sr. RequestError ako e: print („Nebolo možné požadovať výsledky od služby Google Speech Recognition; {0}“. Formát (e))
Index zariadenia bol zvolený 1, pretože hlavným zdrojom bude ReSpeaker 4 Mic Array.
Krok 3: Prevod textu na reč v Pythone s knižnicou Pyttsx3
V pythone je k dispozícii niekoľko rozhraní API na prevod textu na reč. Jedným z takýchto API je pyttsx3, čo je podľa mňa najlepší dostupný balík prevodu textu na reč. Tento balík funguje v systémoch Windows, Mac a Linux. V oficiálnej dokumentácii zistíte, ako sa to robí.
Inštalácia balíka Na inštaláciu balíka použite pip.
pip install pyttsx3
Ak ste v systéme Windows, budete potrebovať ďalší balík pypiwin32, ktorý bude potrebovať na prístup k natívnemu rozhraniu API systému Windows.
pip install pypiwin32
Python skript na prevod textu na reč Nasleduje útržok kódu na prevod textu na reč pomocou pyttsx3:
importovať pyttsx3
motor = pyttsx3.init ()
engine.setProperty ('rate', 150) # Percento rýchlosti
engine.setProperty ('hlasitosť', 0,9) # Zväzok 0-1
engine.say („Ahoj, svet!“)
engine.runAndWait ()
Krok 4: Spojenie všetkého: Budovanie rozpoznávania reči v Pythone pomocou rozhrania Google Speech Recognition API a knižnice Pyttsx3
Nasledujúci kód je zodpovedný za rozpoznávanie ľudskej reči pomocou rozpoznávania reči Google a za prevod textu na reč pomocou knižnice pyttsx3.
importovať rozpoznávanie reči ako sr
importovať modul pyttsx3 = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0,9) r = sr. Recognizer () speech = sr. Microphone (device_index = 1) with speech as source: audio = r.adjust_for_ambient_noise (zdroj) audio = r.listen (zdroj) skúste: Povedali ste: „ + rozpoznať) engine.runAndWait () okrem sr. UnknownValueError: engine.say („ Rozpoznávanie reči Google nerozumie zvuku “) engine.runAndWait () okrem sr. RequestError ako e: engine.say („ Nedá sa vyžiadať si výsledky od služby Google Speech Recognition; {0} . format (e)) engine.runAndWait ()
Vytlačí výstup na terminál. Tiež sa prevedie na reč.
Povedali ste: Londýn je hlavným mestom Veľkej Británie
Dúfam, že teraz lepšie porozumiete tomu, ako rozpoznávanie reči funguje vo všeobecnosti, a čo je najdôležitejšie, ako ho implementovať pomocou rozhrania Google Speech Recognition API s jazykom Python.
Ak máte akékoľvek otázky alebo pripomienky? Zanechajte komentár nižšie. Zostaňte naladení!
Odporúča:
Výpočet vlhkosti, tlaku a teploty pomocou rozhrania BME280 a fotónového rozhrania .: 6 krokov
Výpočet vlhkosti, tlaku a teploty pomocou BME280 a fotónového rozhrania: Stretávame sa s rôznymi projektmi, ktoré vyžadujú monitorovanie teploty, tlaku a vlhkosti. Uvedomujeme si, že tieto parametre skutočne zohrávajú zásadnú úlohu pri odhade pracovnej účinnosti systému pri rôznych atmosférických podmienkach
Rozpoznávanie reči s Arduino (Bluetooth + LCD + Android): 6 krokov
Rozpoznávanie reči s Arduino (Bluetooth + LCD + Android): V tomto projekte sa chystáme rozpoznať reč pomocou Arduina, modulu Bluetooth (HC-05) a LCD. postavme si vlastné zariadenie na rozpoznávanie reči
Hlavný panel rozhrania API kvality vzduchu AirVisual: 5 krokov
Panel AirVisual Air Quality API: AirVisual (https://www.airvisual.com) je webová stránka, ktorá poskytuje údaje o kvalite ovzdušia po celom svete. Majú API, ktoré použijeme na získanie údajov o kvalite ovzdušia na odoslanie na informačný panel. S týmto rozhraním API budeme interagovať podobne, ako sme pracovali s
Vytvorte informačný panel o počasí pomocou rozhrania Dark Sky API: 5 krokov (s obrázkami)
Vytvorte informačný panel o počasí pomocou rozhrania Dark Sky API: Dark Sky sa špecializuje na predpovedanie počasia a vizualizáciu. Najlepším aspektom Dark Sky je ich API pre počasie, ktoré môžeme použiť na získanie údajov o počasí takmer z akéhokoľvek miesta na svete. Nie je to len daždivé alebo slnečné počasie, ale aj teplota
Ako prepojiť aplikáciu Android s AWS IOT a porozumením rozhraniu API na rozpoznávanie hlasu: 3 kroky
Ako prepojiť aplikáciu pre Android s AWS IOT a porozumením rozhraniu API na rozpoznávanie hlasu: Tento tutoriál učí používateľa, ako pripojiť aplikáciu pre Android k serveru AWS IOT a porozumieť rozhraniu API na rozpoznávanie hlasu, ktoré ovláda kávovar. Aplikácia ovláda kávovar prostredníctvom systému Alexa Hlasová služba, každá aplikácia je