第五章 Pepper/Nao的常用指令盒介绍
4.1 对话
制作对话App的方法有很多,其中一个方法是使用Speech Reco.和Say指令盒来实现。
4.1.1 Speech Reco.指令盒
Speech Reco.指令盒可以识别声音中的关键字。在参数“Word list”中设置关键字,多个关键字可以用英文分号隔开。当识别到后会在指令盒后输出这个关键字字符串。一般可以与“Switch Case”指令盒组合使用。
另外,可以设定识别准确率的阈值。当阈值越高,识别不出的情况会增加。当阈值越低,被错误识别的情况会增加。Pepper听到每句话的识别准确率,可以在Choregraphe的对话面板中实时查看到。
4.1.2 Say Text 指令盒
Say Text指令盒前面的输入只接受字符串。所以一般的Text Edit指令盒组合使用,在Text Edit中设定要说的字符串。Say Text的参数中可以设定音调Voice shaping(%)与速度Speed(%)。
4.1.3 Say 指令盒
Say指令盒与Say Text指令盒基本功能一样,只不过双击Say指令盒后,可以发现其内部已包含Localized Text指令盒,直接在这里设置要说的字符串即可。
4.1.4 Animated Say 指令盒
Animated Say指令盒可以在说话的同时配上肢体动作。这样就可以简单的实现Pepper一边说话一边做出动作了。Pepper内置了丰富的肢体动作,例如鞠躬、招手、哭泣、摇头、弹吉他等等。
4.1.5 预览发音效果
【方法1】
在PC的浏览器中输入http://Pepper的IP地址。
在下图红框内部输入字符串,按回车Pepper立即发声。
【方法2】
在Choregraphe中,拖入一个Say指令盒,不要连线。用鼠标双击输入,Pepper会立即发声。
4.1.6 Dialog指令盒
对于复杂的对话的场景,推荐使用Dialog指令盒。该指令盒使用一种叫做QiChat脚本的对话定义方式。向工程流程中拖入Dialog指令盒后,在工程中可以看到自动增加了top文件。双击后,即可以编辑QiChat脚本。