Mündəricat:
- Addım 1: ReSpeaker USB 4-Mic Array
- Addım 2: Lazımi Kitabxanaları Qurun
- Addım 3: Pyttsx3 Kitabxanası ilə Pythonda mətndən-nitqə keçin
- 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
Video: Google Speech API və Python istifadə edərək nitq tanıma: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
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 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ə:
Arduino ilə Nitq Tanıma (Bluetooth + LCD + Android): 6 addım
Arduino ilə Nitq Tanıma (Bluetooth + LCD + Android): Bu layihədə Arduino, Bluetooth modulu (HC-05) və LCD ilə nitq tanıma aparacağıq. öz nitq tanıma cihazımızı quraq
Üz Tanıma və Tanıma - OpenCV Python və Arduino istifadə edərək Arduino Face ID: 6 Addım
Üz Tanıma və Tanıma | OpenCV Python və Arduino istifadə edərək Arduino Face ID: Üz tanıma AKA üz ID indiki zamanda cib telefonlarında ən əhəmiyyətli xüsusiyyətlərdən biridir. Beləliklə, bir sualım var idi: "Arduino layihəm üçün üz idim ola bilərmi?" və cavab bəli … Səyahətim belə başladı: Addım 1: Bizə giriş
MakeyMakey W/ Scratch istifadə edərək nitq çətinliyi üçün köməkçi texnologiya: 4 addım
MakeyMakey W/ Scratch istifadə edərək Nitq Çətinlikləri üçün Köməkçi Texnologiya: Köməkçi texnologiya cihazım nitq qüsurları və ya məhdud danışma ilə kömək etmək üçün istifadə olunur. Bu. öyrənmə prosesinə kömək məqsədi daşıyır
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək sürətlənməni izləyin: 6 addım
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək Sürətləndirməni izləyin: Sürətləndirmə sonsuzdur, düşünürəm ki, Fizikanın bəzi qanunlarına görə. Sahilə çıxan ən sürətli məxluq, bir anda ən yüksək sürətindən istifadə edərək ovunu tutur
Mac OS X 10.5 Leopardda Nitq Alətindən Necə İstifadə Edilir: 3 Addım
Mac OS X 10.5 Leopardda Nitq Alətindən Necə İstifadə Edilir: Mən böyük bir Harry Potter fanatıyam və həmişə sehr etmək istəmişəm. Bir kəlmə söyləməklə kimisə nokauta salmaq yaxşı olmazmı? Və ya açarsız bir qapını aça bilərsən? Sonra bu təlimata rast gəldim