Sisukord:
- Samm: ReSpeaker USB 4-Mic Array
- Samm: installige nõutavad teegid
- 3. samm: tekst kõneks Pythonis koos Pyttsx3 koguga
- Samm 4: kõik kokku panemine: kõnetuvastuse loomine Pythoni abil, kasutades Google'i kõnetuvastuse API -d ja Pyttsx3 raamatukogu
Video: Kõnetuvastus Google Speech API ja Pythoni abil: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Kõnetuvastus
Kõnetuvastus on loomuliku keele töötlemise osa, mis on tehisintellekti alamvaldkond. Lihtsustatult öeldes on kõnetuvastus arvutitarkvara võime tuvastada kõnekeeles sõnu ja fraase ning teisendada need inimestele loetavaks tekstiks. Seda kasutatakse mitmetes rakendustes, nagu hääleabisüsteemid, koduautomaatika, häälpõhised vestlusrobotid, häälega interakteeruv robot, tehisintellekt jne.
Kõne tuvastamiseks on olemas erinevad API -d (Application Programming Interface). Nad pakuvad tasuta või tasulisi teenuseid. Need on:
- CMU Sfinks
- Google'i kõnetuvastus
- Google'i pilvkõne API
- Wit.ai
- Microsoft Bingi häältuvastus
- Houndify API
- IBM -i kõne kõneks
- Lumepoisi tegevussõna tuvastamine
Kasutame siin Google'i kõnetuvastust, kuna see ei nõua API -võtit. Selle õpetuse eesmärk on tutvustada, kuidas kasutada Google'i kõnetuvastusteeki Pythonis välise mikrofoni abil, näiteks SeeStuudi ReSpeaker USB 4-Mic Array. Kuigi välise mikrofoni kasutamine ei ole kohustuslik, saab kasutada isegi sülearvuti sisseehitatud mikrofoni.
Samm: ReSpeaker USB 4-Mic Array
ReSpeaker USB Mic on nelja mikrofoniga seade, mis on loodud tehisintellekti ja häälerakenduste jaoks ning mille töötas välja Seeed Studio. Sellel on 4 suure jõudlusega sisseehitatud universaalset mikrofoni, mis on mõeldud teie hääle vastuvõtmiseks kõikjal ruumis, ja 12 programmeeritavat RGB LED-indikaatorit. ReSpeaker USB -mikrofon toetab Linuxi, macOS -i ja Windowsi operatsioonisüsteeme. Üksikasjad leiate siit.
ReSpeaker USB Mic on kenas pakendis, mis sisaldab järgmisi esemeid:
- Kasutusjuhend
- ReSpeaker USB -mikrofoni massiiv
- Mikro -USB -kaabel
Nii et oleme valmis alustama.
Samm: installige nõutavad teegid
Selle õpetuse jaoks eeldan, et kasutate Python 3.x.
Paigaldame raamatukogud:
pip3 installige kõnetuvastus
MacOS -i jaoks peate esmalt installima PortAudio koos Homebrew'iga ja seejärel installima PyAudio koos pip3 -ga:
pruulige install portaudio
Pyaudio installimiseks käivitame allpool käsu
pip3 install pyaudio
Linuxi jaoks saate PyAudio installida koos apt:
sudo apt-get install python-pyaudio python3-pyaudio
Windowsi jaoks saate PyAudio installida pip abil:
pip install pyaudio
Looge uus pythoni fail
nano get_index.py
Kleepige koodilõigu alla get_index.py:
impordi pyaudio
p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') i jaoks vahemikus (0, arvseadmed): if (p.get_device_info_by_host_api_device_index (0, i).get ('maxInput '))> 0: print ("Sisendseadme ID", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' nimi '))
Käivitage järgmine käsk:
python3 get_index.py
Minu puhul annab käsk ekraanile järgmise väljundi:
Sisendseadme ID 1 - ReSpeaker 4 Mic Array (UAC1.0)
Sisendseadme ID 2 - MacBook Airi mikrofon
Muutke seadme_indeks indeksnumbriks vastavalt oma valikule allolevas koodilõigus.
importi kõnetuvastust kui sr
r = sr. äratundja () kõne = sr. mikrofon (seadme_indeks = 1), mille allikas on kõne: print ("ütle midagi! …") audio = r.adjust_for_ambient_noise (allikas) audio = r.listen (allikas) try: recog = r.recognize_google (audio, language = 'en-US') print ("Sa ütlesid:" + tunnista), välja arvatud sr. UnknownValueError: print ("Google'i kõnetuvastus ei saanud heliga aru"), välja arvatud sr. RequestError nagu e: print ("Ei saanud Google'i kõnetuvastusteenusest tulemusi küsida; {0}". Vorming (e))
Seadmeindeks valiti 1, kuna peamine allikas on ReSpeaker 4 Mic Array.
3. samm: tekst kõneks Pythonis koos Pyttsx3 koguga
Pythonis teksti kõneks teisendamiseks on saadaval mitmeid API -sid. Üks sellistest API-dest on pyttsx3, mis on minu arvates parim saadaolev tekst kõneks pakett. See pakett töötab Windowsis, Macis ja Linuxis. Vaadake ametlikku dokumentatsiooni, et näha, kuidas seda tehakse.
Paketi installimiseks kasutage paketti pip.
pip install pyttsx3
Kui kasutate Windowsi, vajate lisapaketti pypiwin32, mis vajab juurdepääsu Windowsi kohalikule kõne API -le.
pip installi pypiwin32
Teisendage tekst kõneks pythoni skriptiks Allpool on koodilõik teksti muutmiseks kõneks pyttsx3 abil:
impordi pyttsx3
mootor = pyttsx3.init ()
engine.setProperty ('määr', 150) # Kiiruse protsent
engine.setProperty ('maht', 0,9) # Köide 0-1
engine.say ("Tere, maailm!")
engine.runAndWait ()
Samm 4: kõik kokku panemine: kõnetuvastuse loomine Pythoni abil, kasutades Google'i kõnetuvastuse API -d ja Pyttsx3 raamatukogu
Allolev kood vastutab inimkõne tuvastamise eest Google'i kõnetuvastuse abil ja teksti teisendamise kõneks pyttsx3 raamatukogu abil.
importi kõnetuvastust kui sr
import pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0,9) r = sr. Recognizer () kõne = sr. Mikrofon (device_index = 1), mille allikas on kõne: audio = r.adjust_for_ambient_noise (allikas) audio = r.listen (allikas) try: recog = r.recognize_google (audio, language = 'en-US') print ("Sa ütlesid:" + recog) engine.say (" Ütlesite: " + Recog) engine.runAndWait (), välja arvatud sr. UnknownValueError: engine.say (" Google'i kõnetuvastus ei saanud heli aru ") engine.runAndWait () välja arvatud sr. RequestError nagu e: engine.say (" Ei saanud küsida tulemusi Google'i kõnetuvastusteenusest; {0} ". format (e)) engine.runAndWait ()
See prindib väljundi terminalile. Samuti muudetakse see kõneks.
Ütlesite: London on Suurbritannia pealinn
Loodan, et teil on nüüd parem arusaam kõnetuvastuse toimimisest üldiselt ja mis kõige tähtsam - kuidas seda rakendada, kasutades Pythoniga Google'i kõnetuvastuse API -d.
Kui teil on küsimusi või tagasisidet? Jäta kommentaar allpool. Püsige lainel!
Soovitan:
Kõnetuvastus Arduinoga (Bluetooth + LCD + Android): 6 sammu
Kõnetuvastus Arduinoga (Bluetooth + LCD + Android): Selles projektis teeme kõnetuvastust Arduino, Bluetooth-mooduli (HC-05) ja LCD-ga. ehitame oma kõnetuvastusseadme
Orienteerumise õppimine Raspberry Pi ja MXC6226XU abil Pythoni abil: 6 sammu
Orienteerumise õppimine Raspberry Pi ja MXC6226XU abil Pythoni kasutamine: mürad on lihtsalt osa sõiduki töötamisest. Väga häälestatud sõidukimootori sumin on suurepärane heli. Rehvimustrid nurisevad vastu teed, tuul karjub peeglite, plastkildude ja armatuurlaua ümber liikudes
Kiirenduse jälgimine Raspberry Pi ja AIS328DQTR abil Pythoni abil: 6 sammu
Kiirenduse jälgimine Raspberry Pi ja AIS328DQTR abil Pythoni kasutamine: Kiirendus on piiratud, ma arvan, et mõne füüsikaseaduse kohaselt.- Terry Riley Gepard kasutab jälitamisel hämmastavat kiirendust ja kiireid kiiruse muutusi. Kiireim olend kaldal kasutab aeg -ajalt oma tipptempot saagi püüdmiseks
Kiirenduse variatsioonide jälgimine Raspberry Pi ja MMA7455 abil Pythoni abil: 6 sammu
Kiirenduse variatsioonide jälgimine Raspberry Pi ja MMA7455 abil Pythoni abil: ma ei komistanud, vaid testisin gravitatsiooni. See töötab endiselt … Kiirendava kosmosesüstiku esitus selgitas, et süstiku kõrgeimas punktis olev kell valib gravitatsioonilise aja laienemise tõttu kiiremini kui baasi. Mõned
Kõnetuvastus: 12 sammu
Kõnetuvastus: Tere kõigile ………. See on minu teine juhendatav, mida ma postitan. Nii et tere tulemast kõigile ….. Selles juhendatavas õpetan teile häältuvastuse loomist kasutades arduino tahvlit. Nii et ma arvan, et teil on kogemusi arduino metsseaga