โปรแกรมรับเสียงแปลงเป็นข้อความแล้วสังเคราะห์เสียงข้อความแบบ GUI ด้วยการประยุกต์ใช้ภาษา Python





การเขียนโปรแกรม ถ้าหากรู้จักการประยุกต์ จะทำให้ความรู้นั้นไร้ขีดจำกัดทางด้านความคิด เกิดเป็นความคิดสร้างสรรค์ให้กับโลกนี้ต่อไป

วิเคราะห์โปรแกรม
เริ่มต้น
แสดงปุ่มรับเสียง
รับเสียง
ประมวลผลเสียง
แสดงเป็นข้อความ
แสดงปุ่ม "ฟังข้อความ" ถ้ากดปุ่มให้ประมวลผลข้อความเป็นเสียง แล้วเล่นไฟล์ออกมา
จบ
โค้ด

[python]
__author__ = 'วรรณพงษ์'
import sys
#import โมดูลงาน GUI
from PySide.QtCore import *
from PySide.QtGui import *
####
from gtts import gTTS #โมดูลระบบสังเคราะห์เสียงพูด
import pyglet #โมดูลงานระบบเล่นไฟล์เสียง

import speech_recognition as sr #โมดูลรับเสียง
r = sr.Recognizer() 

def sayHello():
#ระบบสังเคราะห์เสียงพูด
def speak():
tts = gTTS(text=say,lang='th') # text คือ ข้อความ lang คือ รหัสภาษา
tts.save('hello-thai.mp3')
#ระบบเล่นไฟล์เสียง
music = pyglet.resource.media('hello-thai.mp3') #ดึงไฟล์เสียงเข้ามา
music.play()
#ระบบรับเสียง
with sr.Microphone() as source:
audio = r.listen(source)
try:
say = r.recognize_google(audio,language = "th-TH") #กำหนดค่าภาษาเป็นภาษาไทย
textEdit = QTextEdit(say) #เรียกใช้งาน QTextEdit มีลักษณะเป็น Textarea ครับ
layout.addWidget(textEdit)
#ส่วนปุ่มฟังข้อความ
button2 = QPushButton("ฟังข้อความ") #กำหนดข้อความในปุ่ม
button2.resize(75, 30) #กำหนดขนาดของปุ่ม
button2.clicked.connect(speak) #เชื่อมต่อกับ sayHello
layout.addWidget(button2)
###
except LookupError: # ประมวลผลแล้วไม่รู้จักหรือเข้าใจเสียง
print("Could not understand audio")
#หน้าต่าง GUI
app = QApplication(sys.argv)
widget = QWidget()
widget.setWindowTitle("โปรแกรมรับเสียงแปลงเป็นข้อความแล้วสังเคราะห์เสียงข้อความ") #กำหนดชื่อตรงหัวโปรแกรม

layout = QVBoxLayout()
widget.setLayout(layout)

button = QPushButton("รับเสียง") #กำหนดข้อความในปุ่ม
button.resize(75, 30) #กำหนดขนาดของปุ่ม
button.clicked.connect(sayHello) #เชื่อมต่อกับ sayHello

layout.addWidget(button)
widget.show() #แสดงหน้าต่าง GUI
app.exec_()
[/python]

การนำไปประยุกต์ใช้

ลองนำโมดูล goslate มาประยุกต์ใช้ ทำเป็นโปรแกรมที่พูดเข้าไปแล้วเช่น คนต่างชาติพูดภาษาอังกฤษแล้วฟังออกมาเป็นภาษาไทยดูครับ อ่านเพิ่มเติมได้จากบทความ แปลภาษาด้วย Python  จะเขียนการวิเคราะห์โปรแกรมได้ประมาณนี้
เริ่มต้น
แสดงปุ่มรับเสียง
รับเสียง
ประมวลผลเสียง
แปลข้อความเป็นภาษาที่ต้องการ
แสดงเป็นข้อความ
แสดงปุ่ม "ฟังข้อความ" ถ้ากดปุ่มให้ประมวลผลข้อความเป็นเสียง แล้วเล่นไฟล์ออกมา
จบ



อ้างอิง https://python3.wannaphong.com/2015/03/gui-python.html 

ความคิดเห็น