树莓派语音识别(二)麦克风ReSpeaker 4-Mics Pi HAT 的选择与安装

本文详细介绍了如何在树莓派上安装和配置ReSpeaker 4-Mics Pi HAT麦克风阵列,实现语音识别功能。内容包括换源、安装Snowboy引擎、设置GPIO输出以及解决安装过程中遇到的问题。此外,还提到了由于Snowboy服务器关闭,需从GitHub下载关键词模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为啥选它:

那要先知道什么是麦克风阵列(Microphone array),学术上有个概念是“传声器阵列”,主要由一定数目的声学传感器组成,用来对声场的空间特性进行采样并处理的系统。

通俗的讲,就是麦克风阵列是由多个单麦克风按一定顺序排列的。你可以理解为一堆麦克风。我们常见的话筒(比如苹果手机话筒就是单麦克风的)。麦克风阵列一般来说有线形、环形和球形的,严谨的应该说成一字、十字、平面、螺旋、球形及无规则阵列等。至于麦克风阵列的阵元数量,也就是麦克风数量,可以从2个到上千个不等。它们通过特定的排列(阵法),可以对声音接收有更好的效果。

语音交互应用最为普遍的就是以Siri为代表的智能手机,这个场景一般都是采用单麦克风系统。单麦克风系统可以在低噪声、无混响、距离声源很近的情况下获得符合语音识别需求的声音信号。但是,若声源距离麦克风距离较远,并且真实环境存在大量的噪声、多径反射和混响,导致拾取信号的质量下降,这会严重影响语音识别率。而且,单麦克风接收的信号,是由多个声源和环境噪声叠加的,很难实现各个声源的分离。

麦克风阵列由一组按一定几何结构(常用线形、环形)摆放的麦克风组成,对采集的不同空间方向的声音信号进行空时处理,实现噪声抑制、混响去除、人声干扰抑制、声源测向、声源跟踪、阵列增益等功能,进而提高语音信号处理质量,以提高真实环境下的语音识别率。

亚马逊Echo一样直接选用4麦以上的麦克风阵列。机器人一般4个麦克风就够了,音箱建议还是选用6个以上麦克风,至于汽车领域,最好是选用其他结构形式的麦克风阵列,比如分布式阵列。

麦克风越多成本越高,所以我们选择4阵列的。

基于Raspberry Pi的ReSpeaker 4-Mic阵列是一款适用于AI和语音应用的Raspberry Pi的四通道麦克风扩展板。 这意味着可以借助它构建一个集成Amazon Alexa语音服务,Google助手等,功能更强大,更灵活的语音产品。

区别于 ReSpeaker 2-Mics Pi HAT, 该板是基于AC108开发的,这是一款高度集成四通道ADC,具有用于高清晰度语音捕获,I2S / TDM输出,拾取3米半径的声音的语音设备。 此外,这款4-Mics版本提供了超酷LED环,其中包含12个APA102可编程LED。 就像Amazon Echo或 Google assist一样, 使用4个麦克风和LED环,Raspberry Pi具有VAD(语音活动检测),DOA(到达方向),KWS(关键字搜索),并通过LED环显示方向灯功能。

硬件软件准备:

麦克风的淘宝链接(https://item.taobao.com/item.htm?spm=a1z10.1-c.w13838425-11172345252.1.542035bczDBegW&id=557884254210)我买的这家的。

我的树莓派是Pi 4B,这个麦克风阵列兼容(Raspberry Pi Zero和Zero W,Raspberry Pi B +,Raspberry Pi 2 B和Raspberry Pi 3 B,Raspberry Pi 4 B,Raspberry Pi 3 B +)所以说用惯了3B的小伙伴也可以跟我一起做。

树莓派系统用的最新的系统:

树莓派系统安装步骤请参考(https://blog.csdn.net/Smile_h_ahaha/article/details/84997205

安装引文与前言:

我会把最好的安装方法用手把手小白级别记录在下面。你要跟我一步一步来,肯定没毛病。

我把安装中遇到的坑还有解决方法记录在第七步中了。纪念一下我花了N天的安装心路历程。感兴趣的可以看一下。

现在是2020.09.24日,不排除在这个时间之后树莓派的源们又不支持的可能性,因为技术在刷新,兼容不并行。

我树莓派的SD卡状态为刚重装了系统(2020.02.13版本),并按照以下链接的方法设置的树莓派。

树莓派重装系统(https://blog.csdn.net/Smile_h_ahaha/article/details/84997205

树莓派Putty与远程VNC(https://blog.csdn.net/Smile_h_ahaha/article/details/84997214)这里可以先不换源,无所谓,我后面都会说,你换了也没事。

如果在未来的时候安装有问题,欢迎在评论区给我留言。

下面是我的详细安装方法

第一步,换源的必要性。

换源命令:

sudo nano /etc/apt/sources.list

用#注释第一句。然后在最下面复制下面句子:(换成清华源)

deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib

继续换源:(这一步别忘啊。。。忘了的话,装pyaudio的时候,会出问题,别问我是怎么知道了,重装系统30次的男人)

sudo nano /etc/apt/sources.list.d/raspi.list

操作同上并替换为:

deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui

注意清华源里面的buster对应的是debian10, 在2019.6月的版本以后都是debian10了。以前的版本是debian9(对应的是stretch),你的系统若是以前的版本,注意这个后缀别写错了。建议你下个新版本用,这个没什么兼容问题。兼容问题主要是麦克风支持python2,不支持3的问题。

换源直接决定了安装Seeed话筒驱动的成功与否,你用树莓派自带内核的话(此时不换清华源或阿里源),有很大概率能成功的安装话筒驱动(树莓派版本2020-02-13-raspbian-buster-full.img(比它还新的版本更没有问题了))。但是在安装成功后,你不换清华源的话,就会安装失败“Voice engine”。所以换源是必要的。

在引文部分的攻略中(包括官网)都有个错误:声卡安装没有强调compat kernel。因为2019.06.22版本以后树莓派内核移除了kernel(内核认为对于全局来说it is not necessary 于是移除了,WTF???)。

 

下图为树莓派安装失败的提示:它让你在“sudo ./install.sh”命令后加入 “ --compat-kernel”

所以说直接按照下图所示代码,在cd /home/pi 中逐一键入:

sudo apt-get update                                            #源更新
sudo apt-get upgrade                                           #已安装软件更新
git clone https://github.com/respeaker/seeed-voicecard.git     #下载声卡驱动包
cd seeed-voicecard                                             #新建声卡驱动文件夹
sudo ./install.sh --compat-kernel                              #安装声卡驱动
reboot                                                         #重启

然后,成功了。重启

安装pyaudio

sudo apt-get install libportaudio0 libportaudio2 libportaudiocpp0 portaudio19-dev
sudo apt-get install python-pyaudio python3-pyaudio
pip3 install pyaudio

第二步,检查声卡是否安装成功。

输入命令:

cd
cd seeed-voicec
评论 51
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值