Mündəricat:

Google Speech API və Python istifadə edərək nitq tanıma: 4 addım
Google Speech API və Python istifadə edərək nitq tanıma: 4 addım

Video: Google Speech API və Python istifadə edərək nitq tanıma: 4 addım

Video: Google Speech API və Python istifadə edərək nitq tanıma: 4 addım
Video: Google Colab - Searching for News with Python! 2024, Noyabr
Anonim
Google Speech API və Python istifadə edərək Nitq Tanıma
Google Speech API və Python istifadə edərək Nitq Tanıma

Nitq Tanıma

Nitq Tanıma, Süni Zəkanın alt sahəsi olan Təbii Dil İşlənməsinin bir hissəsidir. Sadə dillə desək, nitqin tanınması, kompüter proqramının danışılan dildə olan sözləri və ifadələri müəyyən edib insan tərəfindən oxunan mətnə çevirmək qabiliyyətidir. Səs köməkçi sistemləri, ev avtomatlaşdırılması, səs əsaslı chat botları, səs qarşılıqlı robot, süni intellekt və s.

Nitqi tanımaq üçün fərqli API (Tətbiq Proqramlaşdırma İnterfeysi) mövcuddur. Həm pullu, həm də pulsuz xidmətlər təklif edirlər. Bunlar:

  • CMU Sfenks
  • Google Nitq Tanıma
  • Google Cloud Speech API
  • Wit.ai
  • Microsoft Bing Səs Tanıma
  • Houndify API
  • IBM -dən mətnə çıxış
  • Snowboy Hotword Algılama

Heç bir API açarı tələb etmədiyi üçün burada Google Danışıq Tanıma istifadə edəcəyik. Bu təlimat, Seeed Studio-dan ReSpeaker USB 4-Mic Array kimi xarici mikrofonun köməyi ilə Python-da Google Nitq Tanıma kitabxanasından necə istifadə olunacağına dair bir giriş təqdim etmək məqsədi daşıyır. Xarici mikrofondan istifadə məcburi olmasa da, hətta noutbukun quraşdırılmış mikrofonundan da istifadə etmək olar.

Addım 1: ReSpeaker USB 4-Mic Array

ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array
ReSpeaker USB 4-Mic Array

ReSpeaker USB Mic, Seeed Studio tərəfindən hazırlanmış AI və səs tətbiqləri üçün hazırlanmış dörd mikrofonlu bir cihazdır. Səsinizi otağın hər yerindən almaq üçün hazırlanmış 4 yüksək performanslı, çox yönlü mikrofonlar və 12 proqramlaşdırıla bilən RGB LED göstəricisi var. ReSpeaker USB mikrofonu Linux, macOS və Windows əməliyyat sistemlərini dəstəkləyir. Ətraflı məlumatı burada tapa bilərsiniz.

ReSpeaker USB Mic, aşağıdakı maddələri ehtiva edən gözəl bir paketdə gəlir:

  • İstifadəçi təlimatı
  • ReSpeaker USB Mic Array
  • Mikro USB -dən USB Kabelinə

Beləliklə, başlamağa hazırıq.

Addım 2: Lazımi Kitabxanaları Qurun

Bu dərs üçün Python 3.x istifadə etdiyinizi güman edirəm.

Kitabxanaları quraşdıraq:

pip3 SpeechRecognition qurun

MacOS üçün əvvəlcə Homebrew ilə PortAudio qurmalısınız və sonra pip3 ilə PyAudio qurmalısınız:

portaudio quraşdırın

Pyaudio qurmaq üçün aşağıdakı əmri yerinə yetiririk

pip3 pyaudio quraşdırın

Linux üçün PyAudio apt ilə qura bilərsiniz:

sudo apt-get python-pyaudio python3-pyaudio qurun

Windows üçün PyAudio -nu pip ilə quraşdıra bilərsiniz:

pip quraşdırın

Yeni bir python faylı yaradın

nano get_index.py

Kod parçasının altına get_index.py üzərinə yapışdırın:

pyaudio idxal edin

p = pyaudio. PyAudio () info = p.get_host_api_info_by_index (0) numdevices = info.get ('deviceCount') i for range (0, numdevices): if (p.get_device_info_by_host_api_device_index (0, in) '))> 0: çap ("Giriş Cihazı id", i, " -", p.get_device_info_by_host_api_device_index (0, i).get (' ad '))

Aşağıdakı əmri çalıştırın:

python3 get_index.py

Mənim vəziyyətimdə, əmr ekrana aşağıdakı çıxışı verir:

Giriş Cihazı id 1 - ReSpeaker 4 Mic Array (UAC1.0)

Giriş Cihazı id 2 - MacBook Air Mikrofonu

Aşağıdakı kod parçasında seçiminizə görə device_index indeks nömrəsini dəyişdirin.

speech_recognition sr olaraq idxal edin

r = sr. Recognizer () çıxış = sr. Mikrofon (device_index = 1) nitq mənbəyidir: çap edin ("bir şey deyin!…") audio = r.adjust_for_ambient_noise (mənbə) audio = r. dinlə (mənbə) cəhd edin: recog = r.recognize_google (audio, language = 'en-US') print ("Dediniz:" + recog "sr. UnknownValueError istisna olmaqla: print (" Google Nitq Tanıma səsi başa düşə bilmədi ") istisna olmaqla, sr. RequestError e: print kimi) ("Google Danışıq Tanıma xidmətindən nəticə tələb oluna bilmədi; {0}". Format (e))

Cihaz indeksi 1 olaraq seçildi, çünki ReSpeaker 4 Mic Array əsas mənbə olacaq.

Addım 3: Pyttsx3 Kitabxanası ilə Pythonda mətndən-nitqə keçin

Pythonda mətni nitqə çevirmək üçün bir neçə API mövcuddur. Belə API-lərdən biri, fikrimcə, mövcud olan ən yaxşı mətn-nitq paketi olan pyttsx3-dür. Bu paket Windows, Mac və Linux -da işləyir. Bunun necə edildiyini görmək üçün rəsmi sənədləri yoxlayın.

Paketi quraşdırmaq üçün paketi quraşdırın.

pip pyttsx3 quraşdırın

Windows -da olsanız, yerli Windows çıxış API'sinə daxil olmaq üçün əlavə bir paketə ehtiyacınız olacaq, pypiwin32.

pip quraşdırın pypiwin32

Mətni nitq python skriptinə çevirin Aşağıda pyttsx3 istifadə edərək mətndən nitqə kod parçasıdır:

pyttsx3 idxal edin

mühərrik = pyttsx3.init ()

engine.setProperty ('dərəcəsi', 150) # Sürət yüzdə

engine.setProperty ('həcm', 0.9) # Cild 0-1

engine.say ("Salam, dünya!")

engine.runAndWait ()

Addım 4: Hamısını bir yerə qoyun: Google Speech Recognition API və Pyttsx3 Kitabxanasından istifadə edərək Python ilə Nitq Tanıma Yaradın

Aşağıdakı kod Google Speech Recognition istifadə edərək insan nitqini tanımaqdan və pyttsx3 kitabxanasından istifadə edərək mətni nitqə çevirməkdən məsuldur.

speech_recognition sr olaraq idxal edin

pyttsx3 engine = pyttsx3.init () engine.setProperty ('rate', 200) engine.setProperty ('volume', 0.9) r = sr. Recognizer () speech = sr. Microphone (device_index = 1) with source with speech: audio = r.adjust_for_ambient_noise (mənbə) audio = r.listen (mənbə) cəhd edin: recog = r.recognize_google (audio, dil = 'en-US') çap ("Dediniz:" + recog) engine.say (" Dediniz: " + recog" engine.runAndWait () sr. UnknownValueError istisna olmaqla: engine.say ("Google Nitq Tanıma səsi başa düşə bilmədi") engine.runAndWait () sr. RequestError kimi e: engine.say ("Alınmadı) Google Danışıq Tanıma xidmətindən nəticə istəyin; {0} ". format (e)) engine.runAndWait ()

Çıxışı terminalda çap edir. Həm də nitqə çevriləcək.

Dediniz: London Böyük Britaniyanın paytaxtıdır

Ümid edirəm ki, nitqin tanınmasının ümumilikdə necə işlədiyini və ən əsası Python ilə Google Speech Recognition API istifadə edərək bunu necə həyata keçirəcəyinizi daha yaxşı başa düşürsünüz.

Hər hansı bir sualınız və ya geribildiriminiz varsa? Aşağıda bir şərh yazın. İzləmədə qalın!

Tövsiyə: