สารบัญ:

การรู้จำเสียงโดยใช้ Google Speech API และ Python: 4 ขั้นตอน
การรู้จำเสียงโดยใช้ Google Speech API และ Python: 4 ขั้นตอน

วีดีโอ: การรู้จำเสียงโดยใช้ Google Speech API และ Python: 4 ขั้นตอน

วีดีโอ: การรู้จำเสียงโดยใช้ Google Speech API และ Python: 4 ขั้นตอน
วีดีโอ: สอนไพธอน: สังเคราะห์เสียงด้วย google text-to-speech (gTTS package) 2024, พฤศจิกายน
Anonim
การรู้จำเสียงโดยใช้ Google Speech API และ Python
การรู้จำเสียงโดยใช้ Google Speech API และ Python

การรู้จำเสียง

การรู้จำเสียงเป็นส่วนหนึ่งของการประมวลผลภาษาธรรมชาติซึ่งเป็นฟิลด์ย่อยของปัญญาประดิษฐ์ กล่าวง่ายๆ ก็คือ การรู้จำคำพูดคือความสามารถของซอฟต์แวร์คอมพิวเตอร์ในการระบุคำและวลีในภาษาพูดและแปลงเป็นข้อความที่มนุษย์อ่านได้ มันถูกใช้ในแอพพลิเคชั่นต่างๆ เช่น ระบบผู้ช่วยเสียง, ระบบอัตโนมัติในบ้าน, แชทบอทด้วยเสียง, หุ่นยนต์โต้ตอบด้วยเสียง, ปัญญาประดิษฐ์ และอื่นๆ

มี 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 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 เป็นอุปกรณ์ไมโครโฟนสี่ตัวที่ออกแบบมาสำหรับ 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

หากคุณมีคำถามหรือข้อเสนอแนะ? แสดงความคิดเห็นด้านล่าง คอยติดตาม!

แนะนำ: