作者:Behic Guven
编译:Florence Wong – AICUG
本文系AICUG翻译原创,如需转载请联系(微信号:834436689)以获得授权
在本文中,我将向您展示如何使用Python将文本转换为语音。这将是一个简单的机器学习项目,我们将了解称为pyttsx3的语音库的一些基础知识。如果您想知道在现实生活中我们可以在哪里使用文本到语音的转换,请不要担心,您并不孤单。在学习几乎所有内容之前,我都会问相同的问题,我会问自己这些信息将如何帮助我,以及在现实生活中该在哪里使用它。这种思维方式有助于我更快地学习新事物,并激发我在个人生活中使用这些信息。
我将列出许多行业,这些行业以非常好的方式,使用文本进行语音转换。其中之一是,在教室环境中,尚不识字的学生,可以理解,你和他们说些什么。如今,授课中经常使用高科技技术,并且一些文本到语音的软件可以对教师有很大帮助。老师陪不用在花时间去陪每个孩子,为他们“读”书,简单的文字朗读非常有帮助。
文字到语音用法的另一个很好的例子是在Chromebook上。他们具有一项称为“选择讲话”的辅助功能,您可以选择/高亮显示文本,然后计算机会使用此功能将文本朗读给他人。
我想与您分享的最后一个将文本转换为语音的例子是,有声读物。通过使用先前音频文件中的一些培训数据,可以使机器用受过培训的人员的声音来朗读图书。是的,人工智能正越来越成为我们日常生活的一部分。同样,教机器比教人要容易得多。这使得该领域的发展更快。让我们回到项目。
我们将构建一个机器程序,将文本转换为语音。文字可以使用不同的语言,这就是在选择我们的语音模型时,我们必须确保语言匹配。首先导入库。
第1步-库
首先,我们将安装模块,以便可以在程序中使用它。我们将在该项目中使用的唯一模块是Pyttsx3。它是文本到语音模块。此模块的好处是,安装后它后,它可以脱机工作。这是安装此模块的代码:
pip install pyttsx3
如果您想了解有关此模块的更多信息,请参见文档。
文档链接:https://pypi.org/project/pyttsx3/
现在,将模块作为库导入到我们的程序中。
Import pyttsx3
第2步-文字
这一步是最简单的。您应该定义一个变量,并为其分配文本值。您的文字可以是简短的或冗长的,这取决于您想要的内容。在下面,您可以看到我创建的文本变量,称为test。
test = "Once upon a time, a person was trying to convert text to speech using python"
步骤3 –语音引擎
在以下几行中,我们定义一个变量,并分配我们的语音引擎。这很简单。
engine = pyttsx3.init()
现在,我们必须定义我们希望机器说的语言。如前所述,它必须与我们在文本中使用的语言相匹配。要查看可用的语言,请运行以下代码:
voices = engine.getProperty('voices')
for voice in voices:
print("Voice:")
print(" - ID: %s" % voice.id)
print(" - Name: %s" % voice.name)
print(" - Languages: %s" % voice.languages)
print(" - Gender: %s" % voice.gender)
print(" - Age: %s" % voice.age)
您将在终端中看到类似的内容。
复制您要使用的语言的“ id”,然后将其粘贴到我们的程序中。我们正在使用setProperty方法来定义口语。
en_voice_id =“ com.apple.speech.synthesis.voice.Alex”
engine.setProperty('voice',en_voice_id)
最后一步
我们差不多完成了,下面的代码将告诉我们的语音引擎大声说出我们之前定义的文本。基本上,计算机会为您阅读。确保扬声器已打开,可以听到声音。
engine.say(test)
engine.runAndWait()
恭喜,您已经创建了一个将文本转换为语音的程序。现在,您已经了解了这些软件如何在后台运行。希望您喜欢本教程并学到一些新的知识。贴士:当您感到懒惰时,可以使用它与朋友交流。