Python za prepoznavanje govora: Kako prevesti govor u tekst?



Ovaj blog pokriva koncept prepoznavanja govora u pythonu s primjerom programa koji prevodi govor u tekst pomoću prepoznavanja govora.

Govor je najčešće sredstvo komunikacije širom svijeta. Većina stanovništva u svijetu oslanja se na govor da bi komunicirao jedni s drugima. Pretpostavimo da gradimo model i da umjesto pismenog pristupa želimo da naš sustav reagira na govor, to postaje prilično teško i zahtijeva mnogo podataka za obradu. Sustav za prepoznavanje govora prevladava ovu prepreku prevođenjem govora u tekst. Na ovom ćemo blogu proći kroz prepoznavanje govora modul u pythonu . Evo popisa istih:

Kako funkcionira prepoznavanje govora?

Sustav prepoznavanja govora u osnovi prevodi izgovorene izgovore u tekst. Postoje razni primjeri sustava prepoznavanja govora u stvarnosti. Na primjer - siri, koji govor uzima kao ulaz i prevodi ga u tekst.





Prednost korištenja sustava za prepoznavanje govora je u tome što svladava barijeru pismenosti. Model prepoznavanja govora može poslužiti i pismenoj i nepismenoj publici, jer se usredotočuje na izgovorene izgovore.

Također možemo napraviti popis svih ugroženih jezika širom svijeta pomoću sustava za prepoznavanje govora. Iako izgleda prilično intrigantno i nimalo složeno, sustav prepoznavanja govora suočava se s mnogim izazovima.



što je upozorenje u javascriptu

Izazovi s kojima se suočava prepoznavanje govora Sustav

Sustav za prepoznavanje govora postaje teško izraditi jer imamo toliko izvora varijabilnosti što se tiče govora.

Stil govora

Svaka pojedina osoba ima raznolik stil govora, uključujući i naglaske. Kao što svi znamo, imamo različite naglaske i za govor engleskog jezika. Postoje američki engleski, britanski engleski i toliko drugih naglasaka što se tiče govora najčešćim jezikom na svijetu. Izgovor također otežava sustavu za prepoznavanje govora da uopće prevede govor.



Okoliš

Okoliš također dodaje puno pozadinske buke u sustav. Izolirana soba u usporedbi s gledalištem imat će veliku varijabilnost u pozadinskim zvukovima. Čak i eho može dodati puno buke u sustav.

Karakteristike zvučnika

Glas stare osobe možda nije isti kao glas dojenčeta. Karakteristike govora osobe ovise o mnogim čimbenicima, uključujući grubost i jasnoću.

Jezična ograničenja

Neki izgovoreni izgovori možda neće imati održivo značenje kada je riječ o prijevodu.

Nakon prevladavanja ovih izazova, prilično je ostvarivo da bilo koji sustav za prepoznavanje govora prevede govor u tekst. Sad kad znamo kako funkcionira prepoznavanje govora, pogledajmo drugačije koji su dostupni za prepoznavanje govora u pythonu.

Paketi dostupni za prepoznavanje govora u pythonu

  • apiai

  • Prepoznavanje govora

  • Google_speech_cloud

  • Assemblyai

  • Pocketsphinx

  • Watson_developer_cloud

  • bijela

Proći ćemo detalje paketa SpeechRecognition na ovom blogu, dopustimo i da pogledamo memorijsku traku kako bismo razumjeli kako su se sustavi za prepoznavanje govora razvijali tijekom godina.

Prvi prototip prepoznavanja govora zapravo je bila igračka, nazvana radio rex koja je došla oko 1920-ih. Pas je sjedio u psećoj kućici i on bi iskočio čim bi netko izgovorio riječ rex.

Jedini problem modela bio je taj što je opruga bila pričvršćena na elektromagnet koji je bio osjetljiv na energiju u rasponu od oko 500Hz. Budući da je čisto frekvencijski detektor, mogao bi se daljinski nazvati modelom prepoznavanja govora.

1962. godine IBM je smislio a kutija za cipele model koji je mogao prepoznati izolirane riječi i ujedno izvesti nekoliko aritmetičkih operacija.

stek i hrpa memorije u javi

Tada je došlo HARPIJA s CMU-a, koji je mogao prepoznati povezani govor iz rječnika od 1000 riječi. Otprilike 1980-ih ljudi su počeli koristiti statističke modele, a jedna od najčešće korištenih paradigmi strojnog učenja bio je model skrivenog markova.

Nakon uvođenja dubokih neuronskih mreža, većina modela prepoznavanja govora radi na neuronskim mrežama. Mogućnosti su nezamislive s neuronskim mrežama, rječnik može doseći do 10 tisuća riječi i više.

Kako instalirati prepoznavanje govora u Python?

Da biste instalirali paket SpeechRecognition python, pokrenite sljedeću naredbu u terminalu i on će biti instaliran na vašem sustavu.

instalacija-prepoznavanje govora python-edureka

Drugi pristup tome može biti dodavanje paketa iz projektnog tumača ako ga koristite

Paket ima klasu Recognizer koja se u osnovi događa čarolijom. To je u osnovi razred koji se koristi za prepoznavanje govora. Slijedi sedam metoda koje mogu čitati različite audio izvore pomoću različitih API-ja.

  • prepoznati_bed ()
  • prepoznati_google ()
  • prepoznati_google_cloud ()
  • prepoznati_houndify ()
  • prepoznati_ibm ()
  • prepoznati_duh ()
  • prepoznati_sfingu ()

Sada se prepozna_sphinx može koristiti i za izvanmrežno pokretanje sustava za prepoznavanje govora. Potrebna je instalacija Pocketsphinxa.

uvezi prepoznavanje govora kao sr # primjer klase prepoznavača r = sr.Recognizer ()

Ulaz iz mikrofona

Da bismo koristili mikrofone, morat ćemo instalirati i pyaudio modul. Klasu mikrofona koristimo za ulazni govor iz mikrofona umjesto bilo koje druge metode unosa poput audio datoteke.

Za većinu projekata možemo koristiti zadane mikrofone. Ali ako ne želite koristiti zadani mikrofon,popis imena mikrofona možete dobiti metodom list_microphone_names.

Za hvatanje ulaza iz mikrofona koristimo metodu preslušavanja.

uvezi prepoznavanje govora kao sr r = sr.Recognizer () sa sr.Microphone () kao izvorom: audio = sr.listen (izvor)

Kako instalirati Pyaudio u Python?

Da biste instalirali Pyaudio u python, pokrenite sljedeću naredbu u terminalu ili ako koristite pycharm dodajte paket iz interpretatora projekta u postavke.

Slučaj upotrebe

Napravit ćemo program pomoću modula za prepoznavanje govora u pythonu za prepoznavanje govora i izvršiti sljedeće:

naučite ssis korak po korak
  1. pretvoriti govor u tekst
  2. otvorite URL pomoću modula webbrowser
  3. proslijedite upit pomoću prepoznavanja govora da biste pretražili url

Slijedi program za gornju izjavu problema:

uvezi prepoznavanje govora kao sr uvoz web pregledača kao wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () sa sr.Microphone () kao izvor: print ('[search edureka: search youtube]') print ('govori sada') audio = r3.listen (izvor) ako je 'edureka' u r2.recognize_google (audio): r2 = sr.Recognizer () url = 'https://www.edureka.co/' sa sr .Mikrofon () kao izvor: print ('pretraga vašeg upita') audio = r2.listen (izvor) try: get = r2.recognize_google (audio) print (get) wb.get (). Open_new (url + get) osim sr.UnknownValueError: print ('error'), osim sr.RequestError kao e: print ('failed'.format (e)) ako je' video 'u r1.recognize_google (audio): r1 = sr.Recognizer () url =' https://www.youtube.com/results?search_query= 'sa sr.Microphone () kao izvorom: print (' potraga za videozapisom ') audio = r2.listen (izvor) try: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get) osim sr.UnknownValueError: print ('ne mogu razumjeti') osim sr.RequestError kao e: print (nije uspjelo dobiti rezultate'.format (e) )

Dobit ćete izlaz kao što je prikazano na slici. Ako izgovorite edureka, tražit će vas da izgovorite upit koji želite pretraživati ​​u urinu edureka koji smo napisali u varijabli url. Ako kažete python, u pregledniku će se otvoriti sljedeća web stranica.

Na ovom smo blogu raspravljali o tome kako možemo koristiti prepoznavanje govora u pythonu za prevođenje govora u tekst pomoću paketa za prepoznavanje govora. je postala potreba sata za pojmovima poput prepoznavanja govora ili dejekcije predmeta, s koji pružaju nezamislive mogućnosti sustavima za prepoznavanje govora gdje možemo trenirati i testirati ogromne govorne podatke za izgradnju sustava. Možete se upisati u za duboke neuronske mreže da savladaju vaše vještine i pokrenu vaše učenje.

ima li pitanja? spomenite ih u komentarima, javit ćemo vam se.