Obsah:

Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky
Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky

Video: Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky

Video: Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu: 4 kroky
Video: How To Do Stable Diffusion XL (SDXL) DreamBooth Training For Free - Utilizing Kaggle - Easy Tutorial 2024, Júl
Anonim
Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu
Rozpoznávanie reči pomocou rozhrania Google Speech API a Pythonu

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

4-mikrofónové pole ReSpeaker USB
4-mikrofónové pole ReSpeaker USB
4-mikrofónové pole ReSpeaker USB
4-mikrofónové pole ReSpeaker USB
4-mikrofónové pole ReSpeaker USB
4-mikrofónové pole ReSpeaker USB

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: