最近小编看完了电影《我和我的祖国》以后,对里面的一幕印象深刻:Pepper机器人在医院作为助手帮助医生和护士,以减轻他们的负担。
既然Pepper能在医院里大显身手,那么在其他领域应该也能有所建树,小编突发奇想,能否让手中的NAO或者Pepper机器人实现翻译功能,以便能够帮助我们解决日常生活中的翻译问题。
目的是让机器人实现翻译功能,但是Naoqi系统并没有翻译功能的API,只能通过调用第三方接口来实现,这里我们使用“百度翻译API”来实现。
通过百度翻译的技术文档可以看到通用翻译API的调用方式:
http://api.fanyi.baidu.com/api/trans/product/apidoc#languageList
**接入举例**
例如:将英文单词apple翻译成中文:
请求参数:
q=apple
from=en
to=zh
appid=2015063000000001(请替换为您的appid)
salt=1435660288(随机码)
平台分配的密钥: 12345678
生成签名sign:
Step1. 拼接字符串1:
拼接:appid+q+salt+密钥
得到字符串1
Step2. 计算签名sign(对字符串1做md5加密)
sign=md5(字符串1),
得到 sign
简单的说,只需要通过调用通用翻译API,传入待翻译的内容,并指定要翻译的源语言(支持源语言语种自动检测)和目标语言种类,通过网络请求(GET或POST方式)就可以得到相应的翻译结果。
请求的返回结果示例:
{ "from": "en", "to": "zh", "trans_result": [{ "src": "apple", "dst": "苹果" }]}
◆注册百度开发者 申请APPID和密匙
打开下面的网址,注册成为百度开发者,申请百度通用翻译权限,并得到专属的APP ID和密钥。
http://api.fanyi.baidu.com/api/trans/product/desktop?req=developer
◆在Choregraphe的步骤
打开Choregraphe,拖出Text Edit和Python Script指令盒。
Text Edit指令盒:输入我们需要翻译的内容
Python Script指令盒:在Python指令盒中填写代码,将Text Edit指令盒中传入的内容翻译成指定的语言。
◆在Python指令盒中编写代码
点击开始运行,在textEdit指令盒中输入“robot”,显示结果为:
◆需要注意
我们在两个指令盒传参数时,记得要将Python指令盒的输入点类型改为“字符串”类型。
◆完整代码
小编已将完整代码上传到天聚公众号上,微信内搜索“天聚智能机器人”,在公众号内回复“翻译”即可获得完整代码,快去试试吧!