Mundarija:
- 1-qadam: ReSpeaker USB 4-mikrofon massivi
- 2 -qadam: Kerakli kutubxonalarni o'rnating
- 3-qadam: Pyttsx3 kutubxonasi bilan Pythonda matndan nutqqa o'tish
- 4 -qadam: Hammasini bir joyga to'plash: Google Speech Recognition API va Pyttsx3 kutubxonasi yordamida Python yordamida nutqni aniqlashni yaratish
Video: Google Speech API va Python yordamida nutqni aniqlash: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Nutqni aniqlash
Nutqni aniqlash - bu sun'iy intellektning pastki qismi bo'lgan tabiiy tilni qayta ishlashning bir qismi. Oddiy qilib aytganda, nutqni aniqlash - bu kompyuter dasturlarining og'zaki tilda so'z va iboralarni aniqlash va ularni odam o'qiy oladigan matnga aylantirish qobiliyati. U ovozli yordamchi tizimlar, uy avtomatizatsiyasi, ovozli chatbotlar, ovozli o'zaro ta'sirli robot, sun'iy intellekt va boshqalar kabi bir qancha ilovalarda qo'llaniladi.
Nutqni tanib olish uchun turli xil API (Application Programming Interface) mavjud. Ular pullik yoki bepul xizmatlarni taklif qilishadi. Bular:
- CMU sfenks
- Google nutqni aniqlash
- Google Cloud Speech API
- Wit.ai
- Microsoft Bing ovozni aniqlash
- Houndify API
- IBM matnli nutq
- Qorqizning kalit so'zini aniqlash
Biz bu erda Google Speech Recognition -dan foydalanamiz, chunki u API kalitini talab qilmaydi. Ushbu qo'llanma, Seeed Studio-dan ReSpeaker USB 4-Mic Array kabi tashqi mikrofon yordamida Python-da Google Nutqni aniqlash kutubxonasidan qanday foydalanish haqida ma'lumot berishga qaratilgan. Tashqi mikrofondan foydalanish majburiy bo'lmasa-da, noutbukning o'rnatilgan mikrofonidan ham foydalanish mumkin.
1-qadam: ReSpeaker USB 4-mikrofon massivi
ReSpeaker USB Mic-bu AI va ovozli ilovalar uchun mo'ljallangan, to'rt mikrofonli qurilma, Seeed Studio tomonidan ishlab chiqilgan. U xonaning istalgan joyidan ovozingizni qabul qilishga mo'ljallangan 4 ta yuqori mahsuldorlikka ega, o'rnatilgan ko'p yo'nalishli mikrofonlar va 12 ta programlanadigan RGB LED indikatoriga ega. ReSpeaker USB mikrofoni Linux, macOS va Windows operatsion tizimlarini qo'llab -quvvatlaydi. Tafsilotlarni bu erda topishingiz mumkin.
ReSpeaker USB mikrofoni quyidagi mahsulotlarni o'z ichiga olgan yaxshi paketga ega:
- Foydalanuvchi uchun qo'llanma
- ReSpeaker USB mikrofon qatori
- Mikro USB - USB kabeli
Shunday qilib, biz boshlashga tayyormiz.
2 -qadam: Kerakli kutubxonalarni o'rnating
Ushbu qo'llanma uchun siz Python 3.x dan foydalanayapsiz deb o'ylayman.
Keling, kutubxonalarni o'rnatamiz:
pip3 SpeechRecognition -ni o'rnating
MacOS uchun avval PortAudio -ni Homebrew bilan, keyin PyAudio -ni pip3 bilan o'rnatishingiz kerak bo'ladi:
brew portaudio -ni o'rnating
Biz pyaudio -ni o'rnatish uchun quyidagi buyruqni bajaramiz
pip3 pyaudio -ni o'rnating
Linux uchun PyAudio -ni apt bilan o'rnatishingiz mumkin:
sudo apt-get python-pyaudio python3-pyaudio ni o'rnating
Windows uchun PyAudio -ni pip bilan o'rnatishingiz mumkin:
pyaudio -ni o'rnatish
Yangi python faylini yarating
nano get_index.py
Get_index.py -ga kod parchasi ostiga qo'ying:
pyaudio import qilish
p = pyaudio. '))> 0: chop etish ("Kirish qurilmasi identifikatori", i, " -", p.get_device_info_by_host_api_device_index (0, i).get ("nomi"))
Quyidagi buyruqni bajaring:
python3 get_index.py
Mening vaziyatimda buyruq ekranga quyidagi chiqishni beradi:
Kirish qurilmasi identifikatori 1 - ReSpeaker 4 mikrofon massivi (UAC1.0)
Kirish qurilmasi identifikatori 2 - MacBook Air mikrofoni
Device_index indeks raqamini quyidagi kod parchasida o'zingiz xohlagan tarzda o'zgartiring.
speech_recognition ni sr sifatida import qilish
r = sr. Recognizer () nutq = sr. Mikrofon (device_index = 1) manba sifatida nutq bilan: chop etish ("nimadir deyish! …") audio = r.adjust_for_ambient_noise (manba) audio = r. tinglash (manba) sinash: recog = r.recognize_google (audio, language = 'en-US') chop etish ("Siz aytdingiz:" + recog ") sr. UnknownValueError tashqari: chop eting (" Google nutqni tanib olish ovozni tushuna olmadi ") sr. RequestError dan tashqari e: chop etish ("Google Nutqni tanish xizmatidan natijalar so'ralmadi; {0}". Format (e))
Qurilmalar indeksi 1 tanlandi, chunki ReSpeaker 4 Mic Array asosiy manba bo'ladi.
3-qadam: Pyttsx3 kutubxonasi bilan Pythonda matndan nutqqa o'tish
Pythonda matnni nutqqa aylantirish uchun bir nechta API mavjud. Bunday API-lardan biri-pyttsx3, bu mening fikrimcha, matndan nutqqa eng yaxshi mavjud. Bu paket Windows, Mac va Linuxda ishlaydi. Bu qanday amalga oshirilganini bilish uchun rasmiy hujjatlarni tekshiring.
Paketni o'rnatish uchun pipni ishlating.
pip o'rnatish pyttsx3
Agar siz Windows -da bo'lsangiz, sizga qo'shimcha Windows pypiwin32 to'plami kerak bo'ladi, u mahalliy Windows nutq API -ga kirishi kerak bo'ladi.
pip o'rnatish pypiwin32
Matnni python skriptiga aylantirish
pyttsx3 import qilish
vosita = pyttsx3.init ()
engine.setProperty ('darajasi', 150) # Tezlik foizi
engine.setProperty ('tovush', 0,9) # 0-1 jild
engine.say ("Salom, dunyo!")
vosita.runAndWait ()
4 -qadam: Hammasini bir joyga to'plash: Google Speech Recognition API va Pyttsx3 kutubxonasi yordamida Python yordamida nutqni aniqlashni yaratish
Quyidagi kod Google Speech Recognition yordamida nutqni tanib olish va pyttsx3 kutubxonasi yordamida matnni nutqqa aylantirish uchun javobgardir.
speech_recognition ni sr sifatida import qilish
manba sifatida nutq bilan: audio = r. Siz aytdingiz: " + recog" engine.runAndWait () sr. UnknownValueError bundan mustasno: engine.say ("Google Nutqni Tanish Ovozni Tushunolmadi") engine.runAndWait () sr. RequestError tashqari e: engine.say ("Mumkin emas) Google Nutqni aniqlash xizmatidan natijalarni so'rash; {0} ". format (e)) engine.runAndWait ()
U terminalda chiqishni chop etadi. Bundan tashqari, u nutqqa aylanadi.
Siz aytdingiz: London Buyuk Britaniyaning poytaxti
Umid qilamanki, siz nutqni aniqlash umuman qanday ishlashini yaxshiroq tushunasiz va eng muhimi, Python bilan Google Speech Recognition API yordamida buni qanday amalga oshirish kerak.
Agar sizda biron bir savol yoki fikringiz bo'lsa? Quyida izoh qoldiring. Yangiliklarni kuzatib boring, xabardor bo'lib boring; Biz bilan qoling!
Tavsiya:
Sensorsiz eshik qo'ng'irog'ini qanday qilish kerak, tana haroratini aniqlash, GY-906, 433MHz Arduino yordamida: 3 qadam
Sensorsiz eshik qo'ng'irog'ini qanday qilish kerak, tana haroratini aniqlash, GY-906, 433MHz Arduino yordamida: Bugun biz sensorli bo'lmagan eshik qo'ng'irog'ini qilamiz, u sizning tana haroratini aniqlaydi. Hozirgi vaziyatda, kimdir tepganda, kimningdir tana harorati me'yordan yuqori ekanligini bilish juda muhim
Arduino yordamida nutqni aniqlash (Bluetooth + LCD + Android): 6 qadam
Arduino yordamida nutqni aniqlash (Bluetooth + LCD + Android): Ushbu loyihada biz Arduino, Bluetooth moduli (HC-05) va LCD yordamida nutqni aniqlaymiz. Keling, o'zingizning nutqni aniqlash moslamasini yarataylik
Yuzni aniqlash va aniqlash - OpenCV Python va Arduino yordamida Arduino Face ID: 6 qadam
Yuzni aniqlash va aniqlash | OpenCV Python va Arduino yordamida Arduino Face ID: yuzni aniqlash AKA yuz identifikatori hozirgi vaqtda mobil telefonlarning eng muhim xususiyatlaridan biridir. Shunday qilib, menda "Arduino loyihasi uchun yuz identifikatori bo'lishi mumkinmi?" Degan savol bor edi. va javob ha … Mening sayohatim quyidagicha boshlandi: 1 -qadam: Bizga kirish
AWS IOT bilan Android ilovasini qanday ulash mumkin va ovozni aniqlash API -ni tushunish: 3 qadam
AWS IOT bilan Android ilovasini qanday ulash mumkin va ovozni aniqlash API -ni tushunish: Bu qo'llanma foydalanuvchiga Android ilovasini AWS IOT serveriga ulashni va qahva mashinasini boshqaruvchi ovozni aniqlash API -ni tushunishni o'rgatadi. Ilova qahva mashinasini Alexa orqali boshqaradi. Ovozli xizmat, har bir ilovada
Nutqni aniqlash vositasi: 12 qadam
Nutqni tanib oluvchi: Salom hammaga ….. Menimcha, siz arduino cho'chqasi bilan tajribaga egasiz