Python za prepoznavanje govora: kako prevesti govor v besedilo?



Ta spletni dnevnik pokriva koncept prepoznavanja govora v pythonu z vzorčnim programom, ki prevede govor v besedilo s pomočjo prepoznavanja govora.

Govor je najpogostejše sredstvo sporazumevanja po vsem svetu. Večina prebivalstva na svetu se pri medsebojni komunikaciji zanaša na govor. Recimo, da gradimo model in namesto pisnega pristopa želimo, da se naš sistem odziva na govor, postane dokaj težko in zahteva obdelavo veliko podatkov. Sistem za prepoznavanje govora premaga to oviro s prevajanjem govora v besedilo. V tem blogu bomo preučili prepoznavanje govora modul v pythonu . Tu je seznam istih:

Kako deluje prepoznavanje govora?

Sistem za prepoznavanje govora v osnovi prevede izgovorjene besede v besedilo. Obstajajo različni primeri sistema prepoznavanja govora v resničnem življenju. Na primer - siri, ki ima govor za vhod in ga prevede v besedilo.





Prednost uporabe sistema za prepoznavanje govora je, da premaga pismenost. Model prepoznavanja govora lahko služi tudi pismeni in nepismeni publiki, saj se osredotoča na govorjene izgovore.

S pomočjo sistema za prepoznavanje govora lahko tudi naredimo popis vseh ogroženih jezikov po vsem svetu. Čeprav je videti precej zanimivo in sploh ne zapleteno, se sistem za prepoznavanje govora sooča z veliko izzivi.



Izzivi, s katerimi se sooča prepoznavanje govora Sistem

Sistem za prepoznavanje govora je težko narediti, ker imamo toliko govora o spremenljivosti govora.

Slog govora

Vsak posameznik ima različen slog govora, vključno z poudarki. Kot vsi vemo, imamo različne poudarke tudi za govorjenje angleščine. Pri govorjenju najpogostejšega jezika na svetu obstajajo ameriška angleščina, britanska angleščina in toliko drugih poudarkov. Izgovorjava otežuje tudi sistem za prepoznavanje govora, da ga v celoti prevede.



Okolje

Okolje sistemu doda tudi veliko hrupa v ozadju. Izolirana soba v primerjavi z avditorijem bo imela zelo raznolike zvoke v ozadju. Tudi odmev lahko doda veliko hrupa v sistem.

Značilnosti zvočnikov

Glas starejše osebe morda ni enak glasu dojenčka. Značilnosti človekovega govora so odvisne od številnih dejavnikov, vključno z ostrino in jasnostjo.

Jezikovne omejitve

Nekateri izgovorjeni izgovori morda nimajo smisla, če gre za prevajanje.

Po premagovanju teh izzivov je dokaj mogoče, da kateri koli sistem za prepoznavanje govora prevede govor v besedilo. Zdaj, ko vemo, kako deluje prepoznavanje govora, si oglejmo drugače ki so na voljo za prepoznavanje govora v pythonu.

Na voljo paketi za prepoznavanje govora v pythonu

  • apiai

  • Prepoznavanje govora

  • Google_speech_cloud

  • Assemblyai

  • Pocketsphinx

  • Watson_developer_cloud

  • belo

Podrobnosti paketa SpeechRecognition bomo preučili v tem blogu, poglejmo si tudi po pomnilniškem pasu, da bomo razumeli, kako so se sistemi za prepoznavanje govora razvijali skozi leta.

Že prvi prototip prepoznavanja govora je bila v resnici igrača z imenom radio rex ki je prišlo okoli 1920-ih. V pasji hišici je sedel pes, ki se je pojavil takoj, ko je nekdo izgovoril besedo rex.

Edina težava modela je bila, da je bila vzmet pritrjena na elektromagnet, ki je bil občutljiv na energijo v območju okoli 500Hz. Ker je zgolj frekvenčni detektor, bi ga lahko na daljavo poimenovali kot model za prepoznavanje govora.

Leta 1962 je IBM pripravil a škatla za čevlje model, ki je bil sposoben prepoznati izolirane besede in izvesti tudi nekaj računskih operacij.

Potem je prišel HARPY iz CMU, ki je lahko prepoznal povezan govor iz besednjaka 1000 besed. Približno v osemdesetih letih so ljudje začeli uporabljati statistične modele in ena najpogosteje uporabljenih paradigem strojnega učenja je bil model skritega markova.

Po uvedbi globokih nevronskih mrež večina modelov za prepoznavanje govora deluje na nevronskih mrežah. Z nevronskimi mrežami si možnosti ne moremo predstavljati, besednjak lahko naraste do 10 tisoč besed in več.

Kako namestiti SpeechRecognition v Python?

Če želite namestiti paket SpeechRecognition python, v terminalu zaženite naslednji ukaz in nameščen bo v vašem sistemu.

namestitev-prepoznavanje govora python-edureka

Drug pristop k temu je lahko dodajanje paketa iz projektnega tolmača, če ga uporabljate

Paket ima razred Recognizer, kjer se v bistvu zgodi čarovnija. V bistvu gre za razred, ki se uporablja za prepoznavanje govora. Sledi sedem metod, ki lahko berejo različne zvočne vire z uporabo različnih API-jev.

  • prepoznati_bing ()
  • prepoznati_google ()
  • prepoznati_google_cloud ()
  • prepoznati_houndify ()
  • prepoznati_ibm ()
  • prepoznaj_pogovor ()
  • prepoznati_sphinx ()

Zdaj lahko funkcijo prepozna_sphinx uporabite tudi za zagon sistema za prepoznavanje govora brez povezave. Zahteva namestitev Pocketsphinx.

uvozi prepoznavanje govora kot sr # primer razpoznavalnega razreda r = sr.Recognizer ()

Vnos iz mikrofona

Za uporabo mikrofonov bomo morali namestiti tudi modul pyaudio. Razred mikrofona uporabljamo za vnos govora iz mikrofona namesto katerega koli drugega načina vnosa, kot je zvočna datoteka.

kako napisati tostring metodo v javi

Za večino projektov lahko uporabimo privzete mikrofone. Če pa ne želite uporabljati privzetega mikrofona,seznam imen mikrofonov lahko dobite z metodo list_microphone_names.

Za zajem vhoda iz mikrofona uporabimo metodo poslušanja.

uvozi prepoznavanje govora kot sr r = sr.Recognizer () z sr.Microphone () kot vir: audio = sr.listen (vir)

Kako namestiti Pyaudio v Python?

Če želite namestiti Pyaudio v python, v terminalu zaženite naslednji ukaz, ali če uporabljate pycharm, v nastavitvah dodajte paket iz projektnega tolmača.

Primer uporabe

Z uporabo modula za prepoznavanje govora v pythonu bomo izdelali program za prepoznavanje govora in izvedli naslednje:

  1. pretvori govor v besedilo
  2. odprite URL z uporabo spletnega brskalniškega modula
  3. posredujte poizvedbo s pomočjo prepoznavanja govora za iskanje po url-u

Sledi program za zgornjo izjavo o težavi:

uvoz govora_prepoznavanje kot sr uvoz spletnega brskalnika kot wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () z sr.Microphone () kot vir: print ('[iskanje edureka: iskanje youtube]') print ('govori zdaj') audio = r3.listen (source) if 'edureka' in r2.recognize_google (audio): r2 = sr.Recognizer () url = 'https://www.edureka.co/' with sr .Mikrofon () kot vir: print ('išči poizvedbo') audio = r2.listen (source) try: get = r2.recognize_google (audio) print (get) wb.get (). Open_new (url + get) razen sr.UnknownValueError: print ('error'), razen sr.RequestError as e: print ('failed'.format (e)) if' video 'v r1.recognize_google (audio): r1 = sr.Recognizer () url =' https://www.youtube.com/results?search_query= 's sr.Microphone () kot virom: print (' iskanje videa ') audio = r2.listen (source) try: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get), razen sr.UnknownValueError: print ('ne morem razumeti'), razen sr.RequestError kot e: print (ni uspelo dobiti rezultatov '. format (e) )

Dobili boste izhod, kot je prikazan na sliki. Če izgovorite edureka, boste pozvani, da izgovorite poizvedbo, ki jo želite iskati, v urniku edureka, ki smo ga zapisali v spremenljivko url. Če izgovorite python, se v brskalniku odpre naslednja spletna stran.

V tem blogu smo razpravljali o tem, kako lahko s pomočjo prepoznavanja govora v pythonu prevedemo govor v besedilo s pomočjo paketa za prepoznavanje govora. je postala potreba po uri za koncepte, kot sta prepoznavanje govora ali zavrnitev predmeta, z ki nudijo nepredstavljive možnosti sistemom za prepoznavanje govora, kjer lahko izurimo in preizkusimo ogromne govorne podatke za izdelavo sistema. Lahko se vpišete v za globoke nevronske mreže, ki bodo obvladale vaše veščine in začele vaše učenje.

imate kakšna vprašanja? omenite jih v komentarjih, odgovorili vam bomo.