基于树莓派使用DuerOS的笔记,待续
2017-10-31 00:27
267 查看
前言
我使用的摄像头是罗技C270,自带麦克风。snowboy官方推荐的是 PlayStation 3 Eye webcam
基础环境
查看系统USB设备
root@raspberrypi:~/#lsusb #查看系统USB设备 Bus 001 Device 010: ID 046d:0825 Logitech, Inc. Webcam C270 Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
查看声卡设备
root@raspberrypi:~/# cat /proc/asound/cards 0 [ALSA ]: bcm2835 - bcm2835 ALSA bcm2835 ALSA 1 [U0x46d0x825 ]: USB-Audio - USB Device 0x46d:0x825 USB Device 0x46d:0x825 at usb-3f980000.usb-1.4, high speed root@raspberrypi:~/# arecord -l **** List of CAPTURE Hardware Devices **** card 1: U0x46d0x825 [USB Device 0x46d:0x825], device 0: USB Audio [USB Audio] Subdevices: 1/1 Subdevice #0: subdevice #0
可以使用
arecord -D "plughw:1,0" temp.wav来录制一段音频试试,结束请Ctrl+C,或者使用
-d 60来记录一段60秒的录音
plughw后面的1表示上面的声音输入编号
更多细节请查看官方文档
snoyboy
在shell执行下面语句准备安装工作apt-get -y install alsa-utils alsa-tools alsa-tools-gui apt-get install python-pyaudio python3-pyaudio sox pip install pyaudio
首先去Snowboy上注册自己的语音库并下载,然后再下载官方的Demo。
解压后执行:
python demo.py snow.pmdl
snow.pmdl就是你从snowboy上下载的语音库了。
然后会跳出来一堆英文,直到你看到提示
Listening... Press Ctrl+C to exit
OK,你可以对着mic说出你的hotwords了
INFO:snowboy:Keyword 1 detected at time: 2017-10-31 00:45:43 INFO:snowboy:Keyword 1 detected at time: 2017-10-31 00:46:02 INFO:snowboy:Keyword 1 detected at time: 2017-10-31 00:46:36 INFO:snowboy:Keyword 1 detected at time: 2017-10-31 00:47:12
测试了几次识别率都挺高的
这有一份官方给出的简易demo,可以在此基础上进行开发
import snowboydecoder def detected_callback(): print "hotword detected" detector = snowboydecoder.HotwordDetector("snow.pmdl", sensitivity=0.5, audio_gain=1) detector.start(detected_callback)
使用DuerOS的准备工作
sudo apt-get update sudo apt-get install python-dateutil sudo apt-get install gir1.2-gstreamer-1.0 sudo apt-get install python-pyaudio sudo apt-get install libatlas-base-dev sudo apt-get install python-dev sudo pip install tornado sudo pip install hyper
下载编译好的openssl和Python安装包,并进行安装, 需要更新openssl才能支持python sdk的使用
从如下地址下载openssl安装包 (链接: https://pan.baidu.com/s/1skAP6WH 密码: wknz)
从如下地址下载python2.7.14安装包 (链接: https://pan.baidu.com/s/1o8MHkzK 密码: ngx4)
sudo tar -zxvf openssl1.1.tar.gz -C /usr sudo tar -zxvf python2.7.14.tar.gz -C /usr/local/ sudo rm -rf /usr/bin/python sudo ln -s /usr/local/python2.7.14/bin/python /usr/bin/python
更新了之后pip就不能用了,总是提示缺少文件,去官网下载源码包,把里面文件都复制到/usr/lib/python2.7/dist-packages/pip/,搞定,pip可以正常使用了。
pip install hyper
相关文章推荐
- LotusPhp笔记之:基于ObjectUtil组件的使用分析
- MVC中使用Entity Framework 基于方法的查询学习笔记 (二)
- 树莓派学习笔记——UART使用
- 树莓派学习笔记——使用标准PC104键盘
- android studio使用笔记 待续。。。
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
- php学习笔记(二十六)php中session的初步使用(基于cookie的)
- 友坚科技基于三星4412开发板UT4412BV03开发板代码开发的git使用笔记
- 在树莓派上使用基于MT7601的无线网卡(如360/百度/腾讯Wifi)
- 树莓派B+新手学习笔记---【使用SD卡剩余空间】
- Java基础知识强化之网络编程笔记18:Android网络通信之 使用HttpClient的Post / Get 方式读取网络数据(基于HTTP通信技术)
- 树莓派高级GPIO库,wiringpi2 for python使用笔记(一)安装
- 树莓派高级GPIO库,wiringpi2 for python使用笔记(二)高精度计时、延时函数
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
- LINUX程序设计 使用curses函数库管理基于文本的屏幕 学习笔记
- Java基础知识强化之网络编程笔记16:Android网络通信之 使用Http的Get方式读取网络数据(基于HTTP通信技术)
- MVC中使用Entity Framework 基于方法的查询学习笔记 (一)
- 树莓派笔记之使用netselect选择最快Raspbian软件源
- LotusPhp笔记之:基于ObjectUtil组件的使用分析
- 树莓派学习笔记——I2C使用 PCF8574 Python SMBUS