700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 树莓派+双麦克风扩展板实现snowboy热词唤醒(避坑排雷)

树莓派+双麦克风扩展板实现snowboy热词唤醒(避坑排雷)

时间:2022-06-11 20:32:04

相关推荐

树莓派+双麦克风扩展板实现snowboy热词唤醒(避坑排雷)

硬件准备:

树莓派4b x1树莓派双麦克风扩展板(或者4mics 8mics都可以) x1任意一个支持树莓派的音频输出设备(3.5mm孔的 或者一些蓝牙设备)

本文最终要实现的就是对着麦克说你的唤醒词,从耳机或者音响获得’叮’的一声反馈,并在树莓派的终端看到以下输出(日期时间是你自己的):

INFO:snowboy:Keyword 1 detected at time: -11-23 18:41:54

注意事项:

1.切记不要热插拔扩展板,就是不要在给树莓派上电的情况下插

2.麦克风扩展板可能需要上电才能发挥完整性能(一般来说是不用的)

组装后的树莓派如图(我多加了一层带风扇的扩展版和一个摄像头):

准备工作:

置购合适的硬件在设置里调好输出设备换清华源安装麦克风扩展板的驱动

先看这里:

阅读下面这篇文章: ReSpeaker 2-Mics Pi HAT

这篇wiki里将如何安装树莓派麦克风阵列驱动写的比较详尽了,但是这篇文章很明显是缺少更新的:

我现在写这篇文章的日期是.11.23 此时如果你在将树莓派换源后进行更新,你的内核版本会更新到5.4

但是这里有一个问题,就是seeed-voicecard这个项目的最新版本不太兼容这个内核版本,在执行这条指令时

sudo ./install.sh

会报错缺少header 然后提示你使用

sudo ./install.sh --compat-kernel

这条指令进行安装,但仍然报错。百思不得其解的时候我去看了seeed-voicecard的github项目地址去查看了一下,作者说根据用户提供的信息,最新版本的驱动总是出错;注意这个项目是有分支的,我们选择自行去下载它的历史版本,支持内核版本为4.19的版本 4.19 or less

不过现在下载的树莓派系统的内核应该都是5.4了,我们可以在安装完树莓派系统的时候检查一下内核版本

sudo uname -srm //查看当前kernel版本

如果已经大于4.19了,那么请下载树莓派系统的历史版本

如果你的版本<=4.19 请使用这条指令安装驱动

sudo ./install.sh --compat-kernel

安装成功后重启树莓派。

sudo reboot

测试一下输入输出设备的驱动 :

输出设备:

pi@raspberrypi:~ $ aplay -l**** List of PLAYBACK Hardware Devices ****card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]Subdevices: 4/4Subdevice #0: subdevice #0Subdevice #1: subdevice #1Subdevice #2: subdevice #2Subdevice #3: subdevice #3card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]Subdevices: 4/4Subdevice #0: subdevice #0Subdevice #1: subdevice #1Subdevice #2: subdevice #2Subdevice #3: subdevice #3card 2: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [bcm2835-i2s-wm8960-hifi wm8960-hifi-0]Subdevices: 1/1Subdevice #0: subdevice #0

输入设备:

pi@raspberrypi:~ $ arecord -l**** List of CAPTURE Hardware Devices ****card 2: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [bcm2835-i2s-wm8960-hifi wm8960-hifi-0]Subdevices: 1/1Subdevice #0: subdevice #0

如果这些都成功了驱动就没什么问题了。

然后是python的版本,使用python3(树莓派系统里默认的应该是python2)

#切换python版本sudo apt-get install python3 #下载python3sudo rm /usr/bin/python #删除原来python2的链接sudo ln -s /usr/bin/python3.4 /usr/bin/python #链接到python3python #查看当前的python版本

语音模型的训练可以去snowboy的官网,非常容易

随后snow的下载安装参考这篇博客:

snowboy

PS:

以上所有从github上下载的项目都可能会很慢,建议在pc端下载zip压缩包再更改为.gz模式传到树莓派上进行解压,否则非常耽误时间且可能下载失败(解压的步骤一定要在树莓派上进行,否则无法使用,树莓派不会给权限)

最后对着麦克风说出唤醒词的时候(可能要尝试多次) 会听到’叮’的一声,并在终端输出以下内容:

INFO:snowboy:Keyword 1 detected at time: -11-23 18:41:54

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。