Talegjenkjenning Python: Hvordan oversette tale til tekst?



Denne bloggen dekker begrepet talegjenkjenning i python med et eksempelprogram som oversetter tale til tekst ved hjelp av talegjenkjenning.

Tale er det vanligste kommunikasjonsmiddelet rundt om i verden. De fleste av befolkningen i verden er avhengige av tale for å kommunisere med hverandre. Anta at vi bygger en modell, og i stedet for en skriftlig tilnærming vil vi at systemet vårt skal svare på tale, blir det ganske vanskelig og krever at mye data behandles. Et talegjenkjenningssystem overvinner denne barrieren ved å oversette tale til tekst. I denne bloggen vil vi gå gjennom talegjenkjenningen modul i python . Her er listen over det samme:

Hvordan talegjenkjenning fungerer?

System for talegjenkjenning oversetter i utgangspunktet de talte ytringene til tekst. Det er forskjellige virkelige eksempler på talegjenkjenningssystem. For eksempel - siri, som tar talen som input og oversetter den til tekst.





Fordelen med å bruke et talegjenkjenningssystem er at det overvinner barrieren for leseferdigheter. En talegjenkjenningsmodell kan også tjene både litterære og analfabeter, siden den fokuserer på talte ytringer.

Vi kan også lage en oversikt over alle de truede språkene rundt om i verden ved hjelp av et talegjenkjenningssystem. Selv om det ser ganske spennende ut og ikke komplisert i det hele tatt, står et talegjenkjenningssystem overfor mange utfordringer.



Utfordringer møtt av en talegjenkjenning System

Et talegjenkjenningssystem blir vanskelig å lage fordi vi har så mange variasjonskilder når det gjelder tale.

Snakkestil

Hver enkelt person har en variert stil av tale, inkludert aksenter også. Som vi alle vet, har vi forskjellige aksenter for å snakke engelsk også. Det er amerikansk engelsk, britisk engelsk og så mange andre aksenter når det gjelder å snakke det vanligste språket i verden. Uttale gjør det også vanskelig for et talegjenkjenningssystem å oversette talen helt.



Miljø

Miljø gir også mye bakgrunnsstøy til systemet. Et isolert rom sammenlignet med et auditorium vil ha stor variasjon i bakgrunnsstøy. Selv ekko kan også legge til mye støy i systemet.

Høyttaleregenskaper

En gammel persons stemme er kanskje ikke den samme som for et spedbarn. Kjennetegnene ved en persons tale avhenger av mange faktorer, inkludert også hardhet og klarhet.

Språkbegrensninger

Noen muntlige ytringer har kanskje ikke noen levedyktig betydning når det gjelder oversettelse.

Etter å ha overvunnet disse utfordringene, er det ganske oppnåelig for ethvert talegjenkjenningssystem å oversette tale til tekst. Nå som vi vet hvordan talegjenkjenning fungerer, kan vi ta en titt på forskjellige som er tilgjengelig for talegjenkjenning i python.

hva ide å bruke til java

Pakker tilgjengelig for talegjenkjenning i python

  • apiai

  • Talegjenkjenning

  • Google_speech_cloud

  • forsamling

  • Lommesfinx

  • Watson_developer_cloud

  • hvit

Vi vil gå gjennom detaljene i SpeechRecognition-pakken i denne bloggen, og vi kan også se nedover i minnefeltet for å forstå hvordan talegjenkjenningssystemer har utviklet seg gjennom årene.

Den aller første prototypen på talegjenkjenningen var faktisk et leketøy, med navnet radio rex som kom rundt 1920-tallet. Den hadde en hund som satt i et hundehus som ville dukke opp så snart noen uttalte ordet rex.

Det eneste problemet med modellen var at fjæren var festet til en elektromagnet som var følsom for energi på rundt 500 Hz. Å være en ren frekvensdetektor, kan den fjernbetegnes som en talegjenkjenningsmodell.

I 1962 kom IBM opp med en skoeske modell som var i stand til å gjenkjenne isolerte ord og også utføre noen få aritmetiske operasjoner også.

Så kom HARPY fra CMU, som var i stand til å gjenkjenne tilkoblet tale fra et ord på 1000 ord. Rundt 1980-tallet begynte folk å bruke statistiske modeller, og en av de mest brukte maskinlæringsparadigmene var den skjulte markov-modellen.

Etter innføringen av dype nevrale nettverk fungerer de fleste talegjenkjenningsmodellene på nevrale nettverk. Mulighetene er ufattelige med nevrale nettverk, ordforrådet kan gå opptil 10 000 ord og mer.

Hvordan installere SpeechRecognition i Python?

For å installere SpeechRecognition-pakken er python, kjør følgende kommando i terminalen og den blir installert på systemet ditt.

installasjon-talegjenkjenning python-edureka

En annen tilnærming til dette kan være å legge til pakken fra prosjekt-tolk hvis du bruker

Pakken har en Recognizer-klasse som i utgangspunktet er der magien skjer. Det er i utgangspunktet en klasse som brukes til å gjenkjenne talen. Følgende er syv metoder som kan lese forskjellige lydkilder ved hjelp av forskjellige API-er.

  • gjenkjenne ()
  • gjenkjenne_google ()
  • gjenkjenne_google_cloud ()
  • gjenkjenne (hunde) ()
  • gjenkjenne_ibm ()
  • gjenkjenne ()
  • gjenkjenne_sphinx ()

Nå kan gjenkjenne_sphinx også brukes til å kjøre talegjenkjenningssystemet offline. Det krever installasjon av Pocketsphinx.

importer talegjenkjenning som sr #instance of recognizer class r = sr.Recognizer ()

Tar innspill fra mikrofoner

For å bruke mikrofonene må vi også installere pyaudio-modulen. Vi bruker mikrofonklassen for å få inngangstalen fra mikrofonen i stedet for andre inngangsmetoder som en lydfil.

For de fleste av prosjektene kan vi bruke standardmikrofonene. Men hvis du ikke ønsker å bruke standardmikrofonen,du kan få listen over mikrofonnavn ved hjelp av metoden list_microphone_names.

For å fange inngangen fra mikrofonen bruker vi lyttemetoden.

importer talegjenkjenning som sr r = sr.Recognizer () med sr.Microphone () som kilde: audio = sr.listen (kilde)

Hvordan installere Pyaudio i Python?

For å installere Pyaudio i python, kjør følgende kommando i terminalen, eller hvis du bruker pycharm, legg til pakken fra prosjekttolken i innstillingene.

Bruk sak

Vi vil lage et program ved hjelp av talegjenkjenningsmodulen i python for å gjenkjenne tale og utføre følgende:

  1. konvertere talen til tekst
  2. åpne en URL ved hjelp av nettlesermodul
  3. send et spørsmål ved hjelp av talegjenkjenning for å søke i url

Følgende er programmet for ovennevnte problemstilling:

import speech_recognition as sr importer nettleser som wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () med sr.Microphone () som kilde: print ('[search edureka: search youtube]') skriv ut ('snakk nå') lyd = r3.listen (kilde) hvis 'edureka' i r2.recognize_google (lyd): r2 = sr.Recognizer () url = 'https://www.edureka.co/' med sr .Mikrofon () som kilde: skriv ut ('søk i søket ditt') lyd = r2.listen (kilde) prøv: get = r2.recognize_google (lyd) skriv ut (get) wb.get (). Open_new (url + get) unntatt sr.UnknownValueError: print ('error') unntatt sr.RequestError som e: print ('failed'. format (e)) hvis 'video' i r1.recognize_google (lyd): r1 = sr.Recognizer () url = ' https://www.youtube.com/results?search_query= 'med sr.Microphone () som kilde: print (' søk etter en video ') audio = r2.listen (kilde) prøv: get = r1.recognize_google (audio ) skriv ut (get) wb.get (). open_new (url + get) unntatt sr.UnknownValueError: print ('kunne ikke forstå') unntatt sr.RequestError som e: print (kunne ikke få resultater '. format (e) )

Du får utdata slik det er vist på bildet. Hvis du sier edureka, vil det be deg om å si spørringen du vil søke i edureka url som vi har skrevet i url-variabelen. Hvis du sier python, får du følgende webside åpnet i nettleseren.

I denne bloggen har vi diskutert hvordan vi kan bruke talegjenkjenning i python til å oversette tale til tekst ved hjelp av talegjenkjenningspakken. har blitt timens behov for begreper som talegjenkjenning eller objektnedslående, med som gir ufattelige muligheter for talegjenkjenningssystemer der vi kan trene og teste enorme taledata for å bygge et system. Du kan registrere deg i for dype nevrale nettverk for å mestre dine ferdigheter og kickstarte læringen din.

hvordan du avslutter et program java

har du spørsmål? nevner dem i kommentarene, vi kommer tilbake til deg.