13.6.3 SimpleLanguageTranslator.py脚本代码分析
为了更好地解释SimpleLanguageTranslator.py脚本的源代码,可将其分为连续编号的小块。我们使用类似于第3章中使用的自上而下的方法进行讲解。最上面的内容是:
▪ 制作一个翻译APP,使讲英语和讲西班牙语的人能够交流。
第一层次的分解为:
▪ 将一个用英语说出的问题翻译成西班牙语。
▪ 将一个用西班牙语说出的回复翻译成英语。
将第一行内容细化为以下5个步骤:
▪ 步骤1:给出提示,然后将英语语音录制到音频文件中;
▪ 步骤2:将英语语音转录为英语文本;
▪ 步骤3:将英语文本翻译成西班牙语文本;
▪ 步骤4:将西班牙语文本合成为西班牙语语音并将其保存到音频文件中;
▪ 步骤5:播放西班牙语音频文件。
将第二行内容细化为以下5个步骤:
▪ 步骤6:给出提示,然后将西班牙语语音记录到音频文件中;
▪ 步骤7:将西班牙语语音转录为西班牙语文本;
▪ 步骤8:将西班牙语文本翻译为英语文本;
▪ 步骤9:将英语文本合成为英语语音并将其保存到音频文件中;
▪ 步骤10:播放英语音频。
这种自上而下的开发模式充分体现了分而治之开发方法的优势,使我们可以将注意力集中在实现重要问题的多个小的片段上。
在本节的脚本中,实现了上面列出的10个步骤。步骤2和步骤7使用Watson的语音转文本服务,步骤3和步骤8使用Watson的语言翻译服务,步骤4和步骤9使用Watson的文本转语音服务。
导入Watson SDK类
下面代码中的第4~6行从watson_developer_cloud模块导入所需的类,该模块随Watson开发者云Python SDK一起安装。导入的这三个类都需要使用之前获得的Watson凭证与其对应的Watson服务进行交互: ...
Get Python程序设计:人工智能案例实践 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.