Turinys:

Kalbos atpažinimas naudojant „Google Speech“API ir „Python“: 4 veiksmai
Kalbos atpažinimas naudojant „Google Speech“API ir „Python“: 4 veiksmai

Video: Kalbos atpažinimas naudojant „Google Speech“API ir „Python“: 4 veiksmai

Video: Kalbos atpažinimas naudojant „Google Speech“API ir „Python“: 4 veiksmai
Video: mac Windows (win10) 💻, ubuntu of Linux🐧 Use python tools to auto generate video subtitles for free 2024, Lapkritis
Anonim
Kalbos atpažinimas naudojant „Google Speech“API ir „Python“
Kalbos atpažinimas naudojant „Google Speech“API ir „Python“

Kalbos atpažinimas

Kalbos atpažinimas yra natūralios kalbos apdorojimo dalis, kuri yra dirbtinio intelekto dalis. Paprasčiau tariant, kalbos atpažinimas yra kompiuterinės programinės įrangos gebėjimas atpažinti žodžius ir frazes šnekamąja kalba ir paversti juos žmogaus skaitomu tekstu. Jis naudojamas keliose programose, tokiose kaip balso pagalbinės sistemos, namų automatika, balso pokalbių robotai, balso sąveikaujantis robotas, dirbtinis intelektas ir kt.

Kalbai atpažinti yra skirtingos API (programų programavimo sąsaja). Jie siūlo nemokamas arba mokamas paslaugas. Šitie yra:

  • CMU sfinksas
  • „Google“kalbos atpažinimas
  • „Google Cloud Speech“API
  • Wit.ai
  • „Microsoft Bing“balso atpažinimas
  • „Houndify“API
  • IBM kalba į tekstą
  • „Snowboy Hotword“aptikimas

Čia naudosime „Google“kalbos atpažinimą, nes tam nereikia jokio API rakto. Šios pamokos tikslas yra pristatyti, kaip naudotis „Google“kalbos atpažinimo biblioteka „Python“naudojant išorinį mikrofoną, pvz., „ReSpeaker USB 4-Mic Array“iš „Seeed Studio“. Nors neprivaloma naudoti išorinio mikrofono, galima naudoti net įmontuotą nešiojamojo kompiuterio mikrofoną.

1 veiksmas: „ReSpeaker“USB 4 mikrofonų masyvas

„ReSpeaker“USB 4 mikrofonų masyvas
„ReSpeaker“USB 4 mikrofonų masyvas
„ReSpeaker“USB 4 mikrofonų masyvas
„ReSpeaker“USB 4 mikrofonų masyvas
„ReSpeaker“USB 4 mikrofonų masyvas
„ReSpeaker“USB 4 mikrofonų masyvas

„ReSpeaker USB Mic“yra keturių mikrofonų įrenginys, skirtas AI ir balso programoms, kurį sukūrė „Seeed Studio“. Jame yra 4 didelio našumo, įmontuoti įvairios krypties mikrofonai, skirti priimti jūsų balsą iš bet kurios kambario vietos, ir 12 programuojamų RGB LED indikatorių. „ReSpeaker“USB mikrofonas palaiko „Linux“, „MacOS“ir „Windows“operacines sistemas. Išsamią informaciją rasite čia.

„ReSpeaker USB Mic“yra gražioje pakuotėje, kurioje yra šie elementai:

  • Vartotojo vadovas
  • „ReSpeaker“USB mikrofono masyvas
  • Kabelis iš „Micro USB“į USB

Taigi mes pasiruošę pradėti.

2 veiksmas: įdiekite reikalingas bibliotekas

Šioje pamokoje darysiu prielaidą, kad naudojate „Python 3.x“.

Įdiekime bibliotekas:

pip3 įdiegti „SpeechRecognition“

Jei naudojate „MacOS“, pirmiausia turėsite įdiegti „PortAudio“naudodami „Homebrew“, o tada įdiegti „PyAudio“naudodami „pip3“:

užvirinti įdiegti portaudio

Vykdome žemiau esančią komandą, kad įdiegtume „pyaudio“

pip3 įdiegti pyaudio

„Linux“galite įdiegti „PyAudio“naudodami apt:

sudo apt-get įdiegti python-pyaudio python3-pyaudio

„Windows“sistemoje galite įdiegti „PyAudio“naudodami pip:

pip install pyaudio

Sukurkite naują „Python“failą

nano get_index.py

Įklijuokite get_index.py žemiau esančiame kodo fragmente:

importuoti pyaudio

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount'), esantis diapazone (0, skaitiniai įrenginiai): if (p.get_device_info_by_host_api_device_index (0, i).get ('maxInput '))> 0: print ("Įvesties įrenginio ID", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' pavadinimas '))

Vykdykite šią komandą:

python3 get_index.py

Mano atveju komanda ekrane pateikia tokią išvestį:

Įvesties įrenginio ID 1 - „ReSpeaker 4 Mic Array“(UAC1.0)

Įvesties įrenginio ID 2 - „MacBook Air“mikrofonas

Žemiau esančiame kodo fragmente pakeiskite „device_index“į indekso numerį.

importuoti kalbos_atpažinimą kaip sr

r = sr. Atpažinimo priemonė () kalba = sr. Mikrofonas (įrenginio_indeksas = 1) su kalba kaip šaltiniu: spausdinti („ką nors pasakyti!…“) garso įrašas = r.adjust_for_ambient_noise (šaltinis) garso įrašas = r.recognize_google (audio, language = 'en-US') print ("Jūs sakėte:" + recog), išskyrus sr. UnknownValueError: print ("Google Speech Recognition negalėjo suprasti garso"), išskyrus sr. RequestError as e: print („Nepavyko pateikti rezultatų iš„ Google “kalbos atpažinimo paslaugos; {0}“. Formatas (e))

Įrenginio indeksas pasirinktas 1, nes „ReSpeaker 4 Mic Array“bus pagrindinis šaltinis.

3 veiksmas: teksto į kalbą naudojimas „Python“naudojant „Pyttsx3“biblioteką

Yra keletas API, skirtų tekstui konvertuoti į kalbą „python“. Viena iš tokių API yra pyttsx3, kuri, mano nuomone, yra geriausias turimas teksto į kalbą paketas. Šis paketas veikia „Windows“, „Mac“ir „Linux“. Patikrinkite oficialius dokumentus, kad pamatytumėte, kaip tai daroma.

Norėdami įdiegti paketą, naudokite pip.

pip įdiegti pyttsx3

Jei naudojate „Windows“, jums reikės papildomo paketo, pypiwin32, kurio reikės norint pasiekti vietinę „Windows“kalbos API.

pip įdiegti pypiwin32

Konvertuoti tekstą į kalbos python scenarijų Žemiau yra teksto į kalbą kodo fragmentas naudojant pyttsx3:

importuoti pyttsx3

variklis = pyttsx3.init ()

engine.setProperty ('rate', 150) # Greičio procentas

engine.setProperty ('tūris', 0,9) # 0-1 tomas

engine.say („Labas, pasauli!“)

engine.runAndWait ()

4 veiksmas: visa tai kartu: kalbos atpažinimo kūrimas naudojant „Python“naudojant „Google“kalbos atpažinimo API ir „Pyttsx3“biblioteką

Žemiau pateiktas kodas yra atsakingas už žmogaus kalbos atpažinimą naudojant „Google“kalbos atpažinimą ir teksto konvertavimą į kalbą naudojant „pyttsx3“biblioteką.

importuoti kalbos_atpažinimą kaip sr

importuoti pyttsx3 variklį = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('tūris', 0,9) r = sr. Recognizer () kalba = sr. Mikrofonas (device_index = 1) su kalba kaip šaltiniu: audio = r.adjust_for_ambient_noise (šaltinis) audio = r.listen (šaltinis) try: recog = r.recognize_google (audio, language = 'en-US') print ("Jūs sakėte:" + recog) engine.say (" Jūs sakėte: „ + recog“engine.runAndWait (), išskyrus sr. UnknownValueError: engine.say („„ Google “kalbos atpažinimas negalėjo suprasti garso“) engine.runAndWait (), išskyrus sr. RequestError kaip e: engine.say („Nepavyko prašyti rezultatų iš „Google“kalbos atpažinimo paslaugos; {0} ". format (e)) engine.runAndWait ()

Jis spausdina išvestį terminale. Be to, jis taip pat bus paverstas kalba.

Sakėte: Londonas yra Didžiosios Britanijos sostinė

Tikiuosi, kad dabar geriau suprantate, kaip apskritai veikia kalbos atpažinimas ir, svarbiausia, kaip tai įgyvendinti naudojant „Google“kalbos atpažinimo API su „Python“.

Jei turite klausimų ar atsiliepimų? Palikite komentarą žemiau. Sekite naujienas!

Rekomenduojamas: