树莓派Python版DuerOS的SDK安装和配置

前言

DuerOS是百度公司针对现在的人工智能语音系统开发的一个只能的操作系统,但是DuerOS也可以快速的部署到嵌入式设备树莓派上面,并且DuerOS官方上是支持Ubuntu系统的。但是很多树莓派朋友可能会使用RaspberryOS而且会在上面安装自己的各种应用来配合DuerOS使用,这样使用Python编程来调用DuerOS的SDK接口就能更好的定制自己的功能了。这里我们将详细为大家介绍下如何在Python编程中调用DuerOS的SDK接口。

树莓派Python版DuerOS的SDK安装和配置

安装烧写Duer镜像IMG文件

关于DuerOS如何烧写到树莓派上在百度的官方网站上说的非常清楚,大家可以打开网址http://open.duer.baidu.com/doc/overall/open-platform-intro_markdown参考下。大概流程如下;
1)在百度官网上下载适合树莓派版本的固件,然后解压。
2)通过WIN系统来写入到树莓派的SD卡中。
3)配置网络地址和IP信息。
4)使用“小度小度”唤醒测试。



安装环境的支持包。

因为Python默认安装后是不支持DuerOS的,所以需要安装相关配套的资源包。这里需要给Python安装OpenSSL开放的安全连接协议,HTTP2 服务,以及ALPN等相关资源。具体安装命令如下;
sudo apt-get install python-dateutil
sudo apt-get remove openssl libssl-dev 卸载原来老版本的SSL服务
sudo apt-get install openssl 安装最新版本的SSL服务
sudo apt-get install libssl-dev 或安装最新的开发部SSL服务
sudo apt-get install libpcre3 libpcre3-dev 安装相关支持包
sudo apt-get install gir1.2-gstreamer-1.0 安装gir服务
sudo apt-get install python-pyaudio 安装python的声音支持服务
sudo apt-get install python-dev 安装python的dev套件
sudo pip install tornado 安装树莓派tornado服务
sudo pip install hyper
sudo apt-get install http2



设置服务和下载python sdk测试

在树莓派上完成DuerOS中SDK环境的安装后,通过如下命令来开启相关服务。
sudo systemctl restart duer
sudo systemctl disable duer
sudo systemctl starte duer
sudo systemctl stop duer
然后去百度网盘上下载安装包进行编译安装
OpenSSL协议安装包下载地址 https://pan.baidu.com/s/1skAP6WH 密码: wknz
Python接口安装包下载地址 https://pan.baidu.com/s/1o8MHkzK 密码: ngx4


安装命令如下
首先解压刚才下载的压缩包到/usr目录,如果没有这个目录进行手工创建mkdir /usr,然后解压到此目录tar -zxvf openssl1.1.tar.gz -C /usr
接着把Python的压缩包解压到/user/local目录下,命令tar -zxvf python2.7.14.tar.gz -C /usr/local/即可解压。
给与目录全部执行权限chmod 777 /user方便有权限执行。
最后创建定制版本的Python连接到系统环境下,命令如下;
删除原来Python命令sudo rm -rf /usr/bin/python
创建新的连接sudo ln -s /usr/local/python2.7.14/bin/python /usr/bin/python



范例和测试

完成上面运行环境的配置后,这里我们可以去github上下载一个范例,来测试下是否安装正确。从github上下的命令如下;
克隆到本地git clone https://github.com/MyDuerOS/DuerOS-Python-Client.git
进入刚在下载的目录 cd DuerOS-Python-Client
git checkout raspberry-dev
最后运行刚才下载的范例python程序,命令如下;
./auth.py
这里会要调用百度开发者中心的帐号验证,只需要去申请一个帐号即可。
/home/ wakeup_trigger_start.sh 唤醒设备并识别
/home/ enter_trigger_start.sh 出发识别服务

树莓派Python版DuerOS的SDK安装和配置
Syndicate content