
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

การรู้จำเสียง
การรู้จำเสียงเป็นส่วนหนึ่งของการประมวลผลภาษาธรรมชาติซึ่งเป็นฟิลด์ย่อยของปัญญาประดิษฐ์ กล่าวง่ายๆ ก็คือ การรู้จำคำพูดคือความสามารถของซอฟต์แวร์คอมพิวเตอร์ในการระบุคำและวลีในภาษาพูดและแปลงเป็นข้อความที่มนุษย์อ่านได้ มันถูกใช้ในแอพพลิเคชั่นต่างๆ เช่น ระบบผู้ช่วยเสียง, ระบบอัตโนมัติในบ้าน, แชทบอทด้วยเสียง, หุ่นยนต์โต้ตอบด้วยเสียง, ปัญญาประดิษฐ์ และอื่นๆ
มี API ที่แตกต่างกัน (Application Programming Interface) สำหรับการจดจำคำพูด พวกเขาเสนอบริการฟรีหรือจ่ายเงิน เหล่านี้คือ:
- มช. สฟิงซ์
- การรู้จำเสียงของ Google
- Google Cloud Speech API
- Wit.ai
- การรู้จำเสียงของ Microsoft Bing
- Houndify API
- IBM Speech To Text
- Snowboy Hotword การตรวจจับ
เราจะใช้ Google Speech Recognition ที่นี่ เนื่องจากไม่ต้องใช้คีย์ API บทช่วยสอนนี้มีจุดมุ่งหมายเพื่อให้คำแนะนำเกี่ยวกับวิธีการใช้ไลบรารีการรู้จำเสียงของ Google บน Python ด้วยความช่วยเหลือของไมโครโฟนภายนอก เช่น ReSpeaker USB 4-Mic Array จาก Seeed Studio แม้ว่าจะไม่จำเป็นต้องใช้ไมโครโฟนภายนอก แต่สามารถใช้ไมโครโฟนในตัวของแล็ปท็อปได้
ขั้นตอนที่ 1: ReSpeaker USB 4-Mic Array



ReSpeaker USB Mic เป็นอุปกรณ์ไมโครโฟนสี่ตัวที่ออกแบบมาสำหรับ AI และแอปพลิเคชันเสียงซึ่งพัฒนาโดย Seeed Studio มีไมโครโฟนรอบทิศทางในตัวประสิทธิภาพสูง 4 ตัวที่ออกแบบมาเพื่อรับเสียงของคุณจากทุกที่ในห้องและไฟ LED RGB ที่ตั้งโปรแกรมได้ 12 ตัว ไมโครโฟน USB ReSpeaker รองรับระบบปฏิบัติการ Linux, macOS และ Windows รายละเอียดสามารถพบได้ที่นี่
ReSpeaker USB Mic มาในแพ็คเกจที่ดีซึ่งประกอบด้วยรายการต่อไปนี้:
- คู่มือผู้ใช้
- ReSpeaker USB Mic Array
- สายไมโคร USB เป็น USB
ดังนั้นเราจึงพร้อมที่จะเริ่มต้น
ขั้นตอนที่ 2: ติดตั้งไลบรารีที่จำเป็น
สำหรับบทช่วยสอนนี้ ฉันจะถือว่าคุณกำลังใช้ Python 3.x
มาติดตั้งไลบรารี่กันเถอะ:
pip3 ติดตั้ง SpeechRecognition
สำหรับ macOS ก่อนอื่นคุณต้องติดตั้ง PortAudio ด้วย Homebrew แล้วติดตั้ง PyAudio ด้วย pip3:
ชงติดตั้ง portaudio
เราเรียกใช้คำสั่งด้านล่างเพื่อติดตั้ง pyaudio
pip3 ติดตั้ง pyaudio
สำหรับ Linux คุณสามารถติดตั้ง PyAudio ด้วย apt:
sudo apt-get ติดตั้ง python-pyaudio python3-pyaudio
สำหรับ Windows คุณสามารถติดตั้ง PyAudio ด้วย pip:
pip ติดตั้ง pyaudio
สร้างไฟล์ python ใหม่
nano get_index.py
วางบน get_index.py ด้านล่างข้อมูลโค้ด:
นำเข้า pyaudio
p = pyaudio. PyAudio() info = p.get_host_api_info_by_index(0)numdevices = info.get('deviceCount') สำหรับฉันอยู่ในช่วง(0, numdevices): if (p.get_device_info_by_host_api_device_index(0, i).get('maxInputChannels) ')) > 0: พิมพ์ ("Input Device id ", i, " - ", p.get_device_info_by_host_api_device_index(0, i).get('name'))
รันคำสั่งต่อไปนี้:
python3 get_index.py
ในกรณีของฉัน คำสั่งให้ผลลัพธ์ต่อไปนี้ไปยังหน้าจอ:
รหัสอุปกรณ์อินพุต 1 - ReSpeaker 4 Mic Array (UAC1.0)
รหัสอุปกรณ์อินพุต 2 - ไมโครโฟน MacBook Air
เปลี่ยน device_index เป็นหมายเลขดัชนีตามที่คุณเลือกในข้อมูลโค้ดด้านล่าง
นำเข้า speech_recognition เป็น sr
r = sr. Recognizer() speech = sr. Microphone(device_index=1) with speech as source: print("say something!…") audio = r.adjust_for_ambient_noise(source) audio = r.listen(source) ลอง: recog = r.recognize_google(audio, language = 'en-US') print("คุณพูดว่า: " + recog) ยกเว้น sr. UnknownValueError: print("Google Speech Recognition ไม่เข้าใจเสียง") ยกเว้น sr. RequestError เช่น e: print ("ไม่สามารถขอผลลัพธ์จากบริการรู้จำเสียงของ Google {0}".format(e))
เลือกดัชนีอุปกรณ์ 1 เนื่องจาก ReSpeaker 4 Mic Array จะเป็นแหล่งที่มาหลัก
ขั้นตอนที่ 3: การแปลงข้อความเป็นคำพูดใน Python ด้วย Pyttsx3 Library
มี API หลายตัวที่สามารถแปลงข้อความเป็นคำพูดในไพ ธ อนได้ หนึ่งใน API ดังกล่าวคือ pyttsx3 ซึ่งเป็นแพ็คเกจแปลงข้อความเป็นคำพูดที่ดีที่สุดในความคิดของฉัน แพ็คเกจนี้ใช้งานได้ใน Windows, Mac และ Linux ตรวจสอบเอกสารอย่างเป็นทางการเพื่อดูว่าดำเนินการอย่างไร
ติดตั้ง package ใช้ pip เพื่อติดตั้งแพ็คเกจ
pip ติดตั้ง pyttsx3
หากคุณอยู่ใน Windows คุณจะต้องมีแพ็คเกจเพิ่มเติม pypiwin32 ซึ่งจะต้องเข้าถึง API คำพูดของ Windows ดั้งเดิม
pip ติดตั้ง pypiwin32
แปลงข้อความเป็นคำพูด python script ด้านล่างนี้คือข้อมูลโค้ดสำหรับข้อความเป็นคำพูดโดยใช้ pyttsx3:
นำเข้า pyttsx3
เครื่องยนต์ = pyttsx3.init()
engine.setProperty('rate', 150) # เปอร์เซ็นต์ความเร็ว
engine.setProperty('volume', 0.9) # Volume 0-1
engine.say("สวัสดีชาวโลก!")
engine.runAndWait()
ขั้นตอนที่ 4: นำทุกอย่างมารวมกัน: การสร้างการรู้จำเสียงด้วย Python โดยใช้ Google Speech Recognition API และไลบรารี Pyttsx3
โค้ดด้านล่างมีหน้าที่ในการจดจำคำพูดของมนุษย์โดยใช้ Google Speech Recognition และแปลงข้อความเป็นคำพูดโดยใช้ไลบรารี pyttsx3
นำเข้า speech_recognition เป็น sr
นำเข้าเครื่องยนต์ pyttsx3 = pyttsx3.init() engine.setProperty('rate', 200) engine.setProperty('volume', 0.9) r = sr. Recognizer() speech = sr. Microphone(device_index=1) พร้อมคำพูดเป็นแหล่งที่มา: audio = r.adjust_for_ambient_noise(source) audio = r.listen(source) ลอง: recog = r.recognize_google(audio, language = 'en-US') print("คุณพูดว่า: " + recog) engine.say(" คุณพูดว่า: " + recog) engine.runAndWait() ยกเว้น sr. UnknownValueError: engine.say("Google Speech Recognition ไม่สามารถเข้าใจเสียง") engine.runAndWait() ยกเว้น sr. RequestError เช่น engine.say("ไม่สามารถ ขอผลลัพธ์จากบริการรู้จำเสียงของ Google; {0}".format(e)) engine.runAndWait()
มันพิมพ์เอาต์พุตบนเทอร์มินัล นอกจากนี้ยังจะถูกแปลงเป็นคำพูดอีกด้วย
คุณพูดว่า: ลอนดอนเป็นเมืองหลวงของบริเตนใหญ่
ฉันหวังว่าตอนนี้คุณจะมีความเข้าใจที่ดีขึ้นเกี่ยวกับวิธีการทำงานของการรู้จำเสียงโดยทั่วไป และที่สำคัญที่สุดคือวิธีใช้งานนั้นโดยใช้ Google Speech Recognition API กับ Python
หากคุณมีคำถามหรือข้อเสนอแนะ? แสดงความคิดเห็นด้านล่าง คอยติดตาม!
แนะนำ:
(โครงการ IOT) รับข้อมูลสภาพอากาศโดยใช้ ESP8266 และ Openweather API: 5 ขั้นตอน

(โครงการ IOT) รับข้อมูลสภาพอากาศโดยใช้ ESP8266 และ Openweather API: ในคำแนะนำนี้ เราจะสร้างโครงการ IOT อย่างง่าย ซึ่งดึงข้อมูลสภาพอากาศของเมืองของเราจาก openweather.com/api และแสดงโดยใช้ซอฟต์แวร์การประมวลผล
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน

ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)

การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน

DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
Google Vision API โดยใช้ Raspberry Pi และ Node: 11 ขั้นตอน

Google Vision API ที่ใช้ Raspberry Pi และ Node: นี่คือคู่มือเริ่มต้นใช้งาน Google Vision API ใช้การเชื่อมต่ออินเทอร์เน็ต Raspberry Pi Zero W Arch Linux NodeJS ต่อไปนี้ ไม่รู้จัก Arch Linux หรือไม่ หรือจะตั้งค่า Raspberry Pi ได้อย่างไร? ไม่ต้องห่วง ฉันได้เขียนบทความชุดหนึ่งซึ่ง