Cuprins:

Recunoașterea vorbirii folosind API-ul Google Speech și Python: 4 pași
Recunoașterea vorbirii folosind API-ul Google Speech și Python: 4 pași

Video: Recunoașterea vorbirii folosind API-ul Google Speech și Python: 4 pași

Video: Recunoașterea vorbirii folosind API-ul Google Speech și Python: 4 pași
Video: Tutorial Python Asistent Virtual ptr Windows folosind Chat GPT & Google Curs in Română Partea II 2024, Noiembrie
Anonim
Recunoașterea vorbirii folosind API-ul Google Speech și Python
Recunoașterea vorbirii folosind API-ul Google Speech și Python

Recunoaștere a vorbirii

Recunoașterea vorbirii este o parte a procesării limbajului natural, care este un subdomeniu al inteligenței artificiale. Mai simplu spus, recunoașterea vorbirii este capacitatea unui software de calculator de a identifica cuvinte și fraze în limbajul vorbit și de a le converti în text lizibil de către om. Este utilizat în mai multe aplicații, cum ar fi sistemele de asistență vocală, automatizarea casei, chatbots bazate pe voce, robot care interacționează prin voce, inteligență artificială etc.

Există diferite API-uri (Interfață de programare a aplicațiilor) pentru recunoașterea vorbirii. Acestea oferă servicii gratuite sau plătite. Acestea sunt:

  • CMU Sfinx
  • Recunoaștere vorbire Google
  • API Google Cloud Speech
  • Wit.ai
  • Recunoaștere vocală Microsoft Bing
  • API Houndify
  • IBM Speech To Text
  • Snowboy Hotword Detection

Vom folosi Recunoașterea vorbirii Google aici, deoarece nu necesită nicio cheie API. Acest tutorial își propune să ofere o introducere despre modul de utilizare a bibliotecii Google Speech Recognition pe Python cu ajutorul microfonului extern, cum ar fi ReSpeaker USB 4-Mic Array de la Seeed Studio. Deși nu este obligatoriu utilizarea microfonului extern, poate fi utilizat chiar și microfonul încorporat al laptopului.

Pasul 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 este un dispozitiv cu patru microfoane conceput pentru aplicații AI și voce, care a fost dezvoltat de Seeed Studio. Are 4 microfoane omnidirecționale încorporate de înaltă performanță concepute pentru a vă ridica vocea de oriunde din cameră și 12 indicatoare LED RGB programabile. Microfonul ReSpeaker USB acceptă sistemele de operare Linux, macOS și Windows. Detalii puteți găsi aici.

Microfonul USB ReSpeaker vine într-un pachet frumos care conține următoarele elemente:

  • Un ghid de utilizare
  • ReSpeaker USB Mic Array
  • Cablu micro USB la USB

Deci suntem gata să începem.

Pasul 2: Instalați bibliotecile necesare

Pentru acest tutorial, presupun că utilizați Python 3.x.

Să instalăm bibliotecile:

pip3 instalează SpeechRecognition

Pentru macOS, mai întâi va trebui să instalați PortAudio cu Homebrew, apoi să instalați PyAudio cu pip3:

instalați brew portaudio

Executăm comanda de mai jos pentru a instala pyaudio

pip3 instalează pyaudio

Pentru Linux, puteți instala PyAudio cu apt:

sudo apt-get install python-pyaudio python3-pyaudio

Pentru Windows, puteți instala PyAudio cu pip:

pip instalează pyaudio

Creați un nou fișier python

nano get_index.py

Inserați pe get_index.py sub fragmentul de cod:

import pyaudio

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') for i in range (0, numdevices): if (p.get_device_info_by_host_api_device_index (0, i).get ('maxInput '))> 0: print ("ID dispozitiv de intrare", i, "-", p.get_device_info_by_host_api_device_index (0, i).get (' name '))

Rulați următoarea comandă:

python3 get_index.py

În cazul meu, comanda oferă următoarea ieșire pe ecran:

ID dispozitiv 1 - ReSpeaker 4 Mic Array (UAC1.0)

ID dispozitiv 2 de intrare - Microfon MacBook Air

Schimbați device_index la numărul de index conform alegerii dvs. în fragmentul de cod de mai jos.

importați recunoașterea vorbirii ca sr

r = sr. Recognizer () speech = sr. Microphone (device_index = 1) with speech as source: print ("say something! …") audio = r.adjust_for_ambient_noise (source) audio = r.listen (source) try: recog = r.recognize_google (audio, language = 'en-US') print („Ați spus:„ + recog), cu excepția sr. UnknownValueError: print („Google Speech Recognition nu a putut înțelege sunetul”), cu excepția sr. RequestError ca e: print („Nu s-au putut solicita rezultate de la serviciul Google Speech Recognition; {0}”. Format (e))

Indexul dispozitivului a fost ales 1 datorită ReSpeaker 4 Mic Array va fi ca sursă principală.

Pasul 3: Text-to-speech în Python cu biblioteca Pyttsx3

Există mai multe API-uri disponibile pentru a converti textul în vorbire în python. Una dintre astfel de API-uri este pyttsx3, care este cel mai bun pachet disponibil text-la-vorbire, după părerea mea. Acest pachet funcționează în Windows, Mac și Linux. Verificați documentația oficială pentru a vedea cum se face acest lucru.

Instalați pachetul Utilizați pip pentru a instala pachetul.

pip instalează pyttsx3

Dacă vă aflați în Windows, veți avea nevoie de un pachet suplimentar, pypiwin32 de care va avea nevoie pentru a accesa API-ul vorbitor nativ Windows.

pip instalează pypiwin32

Mai jos este fragmentul de cod pentru text în vorbire folosind pyttsx3:

import pyttsx3

motor = pyttsx3.init ()

engine.setProperty („rate”, 150) # Procent de viteză

engine.setProperty („volum”, 0.9) # Volumul 0-1

engine.say („Bună ziua, lume!”)

engine.runAndWait ()

Pasul 4: Unirea tuturor: Construirea recunoașterii vorbirii cu Python folosind API-ul Google Recunoaștere vorbire și biblioteca Pyttsx3

Codul de mai jos este responsabil pentru recunoașterea vorbirii umane folosind Google Speech Recognition și conversia textului în vorbire folosind biblioteca pyttsx3.

importați recunoașterea vorbirii ca sr

import pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0.9) r = sr. Recognizer () speech = sr. Microphone (device_index = 1) cu vorbire ca sursă: audio = r.adjust_for_ambient_noise (sursă) audio = r.listen (sursă) try: recog = r.recognize_google (audio, language = 'en-US') print ("Ai spus:" + recog) engine.say (" Ați spus: „+ recog) engine.runAndWait () cu excepția sr. UnknownValueError: engine.say („ Google Speech Recognition nu a putut înțelege sunetul”) engine.runAndWait () cu excepția sr. RequestError ca e: engine.say („ Could not solicitați rezultate de la serviciul Google Speech Recognition; {0} ". format (e)) engine.runAndWait ()

Tipărește ieșirea pe terminal. De asemenea, va fi convertit și în vorbire.

Ai spus: Londra este capitala Marii Britanii

Sper că acum aveți o mai bună înțelegere a modului în care funcționează recunoașterea vorbirii în general și, cel mai important, cum să implementați acest lucru folosind Google Speech Recognition API cu Python.

Dacă aveți întrebări sau feedback? Lasă un comentariu mai jos. Rămâneți aproape!

Recomandat: