Rozpoznawanie mowy Python: jak przetłumaczyć mowę na tekst?



Ten blog przedstawia koncepcję rozpoznawania mowy w Pythonie z przykładowym programem, który tłumaczy mowę na tekst za pomocą funkcji rozpoznawania mowy.

Mowa jest najpowszechniejszym środkiem komunikacji na całym świecie. Większość populacji na świecie komunikuje się ze sobą za pomocą mowy. Załóżmy, że budujemy model i zamiast podejścia pisemnego chcemy, aby nasz system reagował na mowę, staje się to dość trudne i wymaga przetwarzania dużej ilości danych. System rozpoznawania mowy pokonuje tę barierę, tłumacząc mowę na tekst. Na tym blogu omówimy rozpoznawanie mowy moduł w pythonie . Oto lista tego samego:

Jak działa rozpoznawanie mowy?

System rozpoznawania mowy w zasadzie tłumaczy wypowiedzi mówione na tekst. Istnieje wiele przykładów systemów rozpoznawania mowy z życia wziętych. Na przykład - siri, która bierze mowę jako wejście i tłumaczy ją na tekst.





Zaletą korzystania z systemu rozpoznawania mowy jest pokonanie bariery umiejętności czytania i pisania. Model rozpoznawania mowy może służyć zarówno odbiorcom piśmiennym, jak i niepiśmiennym, ponieważ koncentruje się na wypowiedziach mówionych.

Możemy również dokonać inwentaryzacji wszystkich zagrożonych języków na całym świecie za pomocą systemu rozpoznawania mowy. Chociaż wygląda dość intrygująco i wcale nie jest skomplikowany, system rozpoznawania mowy napotyka wiele wyzwań w trakcie tworzenia.



Wyzwania stojące przed rozpoznawaniem mowy System

System rozpoznawania mowy staje się trudny do wykonania, ponieważ mamy tak wiele źródeł zmienności, jeśli chodzi o mowę.

Styl mówienia

Każda osoba ma inny styl mówienia, w tym także akcenty. Jak wszyscy wiemy, mówimy też po angielsku z różnymi akcentami. Jest amerykański angielski, brytyjski angielski i wiele innych akcentów, jeśli chodzi o mówienie najpopularniejszym językiem na świecie. Wymowa utrudnia również systemowi rozpoznawania mowy całkowite przetłumaczenie mowy.



Środowisko

Środowisko dodaje również dużo szumu tła do systemu. Izolowane pomieszczenie w porównaniu z audytorium będzie miało dużą zmienność w hałasie w tle. Nawet echo może również dodać dużo szumu do systemu.

co to jest applet w javie z przykładem

Charakterystyka głośników

Głos starszej osoby może różnić się od głosu niemowlęcia. Charakterystyka mowy zależy od wielu czynników, w tym od jej szorstkości i jasności.

Ograniczenia językowe

Niektóre wypowiedzi głosowe mogą nie mieć sensownego znaczenia, jeśli chodzi o tłumaczenie.

Po pokonaniu tych wyzwań jest całkiem możliwe, że każdy system rozpoznawania mowy przetłumaczy mowę na tekst. Teraz, gdy wiemy, jak działa rozpoznawanie mowy, przyjrzyjmy się innym które są dostępne do rozpoznawania mowy w Pythonie.

Dostępne pakiety do rozpoznawania mowy w Pythonie

  • apiai

  • Rozpoznawanie mowy

  • Google_speech_cloud

  • Assemblyai

  • Pocketsphinx

  • Watson_developer_cloud

  • biały

W tym blogu omówimy szczegóły pakietu SpeechRecognition, a także przyjrzymy się ścieżce pamięci, aby zrozumieć, jak systemy rozpoznawania mowy ewoluowały na przestrzeni lat.

Pierwszym prototypem systemu rozpoznawania mowy była tak naprawdę zabawka o imieniu radio rex który pojawił się około 1920 roku. Miał psa siedzącego w psiej budce, który wyskakiwał, gdy tylko ktoś wypowiedział słowo rex.

Jedynym problemem związanym z modelem było to, że sprężyna była przymocowana do elektromagnesu, który był wrażliwy na energię z zakresu około 500 Hz. Będąc czysto detektorem częstotliwości, można go zdalnie określić jako model rozpoznawania mowy.

W 1962 roku IBM wymyślił plik pudełko na buty model, który był w stanie rozpoznać pojedyncze słowa, a także wykonać kilka operacji arytmetycznych.

Potem przyszedł HARPIA z CMU, który był w stanie rozpoznać połączoną mowę ze słownictwa zawierającego 1000 słów. Około lat 80. ludzie zaczęli używać modeli statystycznych, a jednym z najczęściej używanych paradygmatów uczenia maszynowego był model ukrytego markowa.

Po wprowadzeniu głębokich sieci neuronowych większość modeli rozpoznawania mowy działa na sieciach neuronowych. W przypadku sieci neuronowych możliwości są niewyobrażalne, słownictwo może obejmować nawet 10 000 słów i więcej.

Jak zainstalować SpeechRecognition w Pythonie?

Aby zainstalować pakiet SpeechRecognition to python, uruchom następującą komendę w terminalu, a zostanie on zainstalowany w twoim systemie.

instalacja-rozpoznawanie mowy python-edureka

Innym podejściem może być dodanie pakietu z interpretera projektu, jeśli używasz

Pakiet ma klasę Recognizer, która jest w zasadzie miejscem, w którym dzieje się magia. Zasadniczo jest to klasa używana do rozpoznawania mowy. Poniżej przedstawiono siedem metod, które mogą odczytywać różne źródła dźwięku przy użyciu różnych interfejsów API.

  • rozpoznać_bicie ()
  • rozpoznać_google ()
  • rozpoznać_google_cloud ()
  • rozpoznać_houndify ()
  • rozpoznać_ibm ()
  • rozpoznać_wit ()
  • rozpoznać_sphinx ()

Teraz można używać funkcji Rozpoznawanie mowy również w trybie offline. Wymaga instalacji Pocketsphinx.

importuj rozpoznawanie mowy jako sr #instancja klasy aparatu rozpoznającego r = sr.Recognizer ()

Pobieranie sygnału wejściowego z mikrofonów

Aby korzystać z mikrofonów, będziemy musieli również zainstalować moduł pyaudio. Używamy klasy microphone, aby uzyskać mowę wejściową z mikrofonu zamiast jakiejkolwiek innej metody wprowadzania, takiej jak plik audio.

podnieść coś do potęgi w Javie

W większości projektów możemy korzystać z domyślnych mikrofonów. Ale jeśli nie chcesz używać domyślnego mikrofonu,możesz uzyskać listę nazw mikrofonów przy użyciu metody list_microphone_names.

Aby uchwycić wejście z mikrofonu, używamy metody słuchania.

importuj rozpoznawanie mowy jako sr r = sr.Recognizer () z sr.Microphone () jako źródłem: audio = sr.listen (źródło)

Jak zainstalować Pyaudio w Pythonie?

Aby zainstalować Pyaudio w pythonie, uruchom następujące polecenie w terminalu lub jeśli używasz pycharm dodaj pakiet z interpretera projektu w ustawieniach.

Przypadek użycia

Stworzymy program wykorzystujący moduł rozpoznawania mowy w Pythonie do rozpoznawania mowy i wykonywania następujących czynności:

  1. przekonwertować mowę na tekst
  2. otwórz adres URL za pomocą modułu przeglądarki internetowej
  3. przekazać zapytanie za pomocą rozpoznawania mowy, aby przeprowadzić wyszukiwanie w adresie URL

Poniżej znajduje się program dla powyższej instrukcji problemu:

import speech_recognition as sr import webbrowser as wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () z sr.Microphone () jako źródłem: print ('[search edureka: search youtube]') print ('speak now') audio = r3.listen (source) if 'edureka' in r2.recognize_google (audio): r2 = sr.Recognizer () url = 'https://www.edureka.co/' z sr .Microphone () jako źródło: print ('wyszukaj zapytanie') audio = r2.listen (źródło) try: get = r2.recognize_google (audio) print (get) wb.get (). Open_new (url + get) z wyjątkiem sr.UnknownValueError: print ('error') z wyjątkiem sr.RequestError as e: print ('failed'.format (e)) if' video 'in r1.recognize_google (audio): r1 = sr.Recognizer () url =' https://www.youtube.com/results?search_query= 'z sr.Microphone () jako źródłem: print (' szukaj wideo ') audio = r2.listen (źródło) try: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get) z wyjątkiem sr.UnknownValueError: print ('nie można zrozumieć') z wyjątkiem sr.RequestError as e: print (nie udało się uzyskać wyników'.format (e) )

Otrzymasz dane wyjściowe, jak pokazano na obrazku. Jeśli powiesz edureka, zostaniesz poproszony o wypowiedzenie zapytania, które chcesz przeszukać w adresie URL edureka, który zapisaliśmy w zmiennej url. Jeśli powiesz python, otworzy się następująca strona internetowa w przeglądarce.

Na tym blogu omówiliśmy, w jaki sposób możemy używać rozpoznawania mowy w Pythonie do tłumaczenia mowy na tekst za pomocą pakietu speechrecognition. stała się potrzebą godziny dla pojęć takich jak rozpoznawanie mowy lub przygnębianie obiektów, z które zapewniają niewyobrażalne możliwości dla systemów rozpoznawania mowy, w których możemy trenować i testować ogromne dane mowy, aby zbudować system. dla głębokich sieci neuronowych, aby doskonalić swoje umiejętności i rozpocząć naukę.

masz jakieś pytania? wspomnij o nich w komentarzach, skontaktujemy się z Tobą.