前期为了准备面试,也是为了自己拓展一下知识,整理了一些麦克风阵列的知识,这些内容里面并不全,但是却是一些最为关注的点。在了解了这些内容之后,反而让我对自己的麦克风阵列语音增强的系统有了更多的认识,最重要的一点就是,过去单纯只考虑算法改进是无法真正做到一个好系统的,算法必须与硬件结构相结合,才能做出更好的系统。
为什么使用麦克风阵列?
麦克风系统可以在低噪声、无混响、距离声源很近的情况下获得符合语音识别需求的声音信号。但是,若声源距离麦克风距离较远,并且真实环境存在大量的噪声、多径反射和混响,导致拾取信号的质量下降,这会严重影响语音识别率。而且,单麦克风接收的信号,是由多个声源和环境噪声叠加的,很难实现各个声源的分离。这样就无法实现声源定位和分离,这很重要,因为还有一类声音的叠加并非噪声,但是在语音识别中也要抑制,就是人声的干扰,语音识别显然不能同时识别两个以上的声音。
对采集的不同空间方向的声音信号进行空时处理,实现噪声抑制、混响去除、人声干扰抑制、声源测向、声源跟踪、阵列增益等功能,进而提高语音信号处理质量,以提高真实环境下的语音识别率。一维麦克风阵列只能获得信号水平方向角的信息,而平面阵列可以得到信号的水平方位角和垂直方位角信息。立体阵列可以得到信号的水平方位角、垂直方位角和声源与麦克风阵列参考点距离这三维信息。
因为当前的语音识别基本都是深度学习训练的结果,而深度学习有个局限就是严重依赖于输入训练的样本库,若处理后的声音与样本库不匹配则识别效果也不会太好。从这个角度应该非常容易理解,物理世界的信号处理也并非越是纯净越好,而是越接近于训练样本库的特征越好,即便这个样本库的训练信号很差。
混响和回声在于一个时延,时延超过100ms的混响,就可以看做是回声。
麦克风阵列发展趋势
声学的非线性研究:语音信号其实是不好处理的,我们知道信号处理大多基于平稳信号的假设,但是语音信号的特征参数均是随时间而变化的,是典型的非平稳态过程。幸运的是语音信号在一个较短时间内的特性相对稳定(语音分帧),因而可以将其看作是一个准稳态过程,也就是说语音信号具有短时平稳的特性,这才能用主流信号处理方法对其处理。从这点来看,麦克风阵列的基本原理和模型方面就存在较大的局限,也包括声学的非线性处理(现在基本忽略非线性效应)。
另外一个趋势就是麦克风阵列的小型化,麦克风阵列受制于半波长理论(波在被反射过程中,如果反射波在离开反射点时的振动方向对入射波到达入射点时的振动方向恰好相反,这种现象叫做半波损失。)的限制,现在的口径还是较大,声智科技现在可以做到2cm-8cm的间距,但是结构布局仍然还是限制了ID设计的自由性。很多产品采用2个麦克风其实并非成本问题,而是ID设计的考虑。实际上,借鉴雷达领域的合成孔径方法,麦克风阵列可以做的更小,而且这种方法已经在军工领域成熟验证,移植到消费领域只是时间问题。
多人声的处理和识别:其中典型的是鸡尾酒会效应,人的耳朵可以在嘈杂的环境中分辨想要的声音,并且能够同时识别多人说话的声音。现在的麦克风阵列和语音识别还都是单人识别模式,距离多人识别的目标还很远。前面提到了现在的算法思想主要是“抑制”,而不是“利用”,这实际上就是人为故意简化了物理模型,说白了就是先拿“软柿子”下手,因此语音交互格局已定的说法经不起推敲,对语音交互的认识和探究应该说才刚刚开始,基础世界的探究很可能还会出现诺奖级的成果。若展望的更远一些,则是物理学的进展和人工智能的进展相结合,可能会颠覆当前的声学信号处理以及语音识别方法。
麦克风的介绍
1.麦克风阵列的指向性
①.全向麦克风:全向以相同灵敏度拾取。
②.单向麦克风:仅仅接收从指定方向来的声音。
③.双向麦克风:前后两侧声音采集,左右两侧不采集。
④.心型麦克风:接收来自于前方和两侧的声音。
一般感觉全向麦克风比其他的要好,因为它可以接收来自于所有方向的声音而不是仅仅一个方向,但是试想如果在一个比较嘈杂的环境下,全向麦克风是一个比较low的选择,因为除了我们所需要的声音外,他还录了周围的噪音。在这种环境下,指向性(非全指向性麦克风)麦克风可能会更好,因为他在获取我们所需要方向的声音外,对其他方向的声音进行了压制,使得噪声的增益非常少。所以,这些麦克风的好坏取决于用的环境。
2.灵敏度:在自由声场中,麦克风频率为1kHz恒定声压下雨声源正向时所测得的开路输出电压,单位为毫伏/帕。1Pa大致相当于人正常说话音量在1m远的地方测得的声压。
有时候也用dB来表示,1伏/帕为0dB。灵敏度高可以提高信噪比,但是太高也会使输出电压过高,产生过激失真。
3.输出阻抗:麦克风交流内阻,它是在频率1kHz、声压为1Pa时测得。一般来说低于600欧姆为低阻抗,600~1000位中阻抗,高于1000位高阻抗。高阻抗灵敏度高但是容易感应外来干扰。
4.信噪比。信噪比越高越好,信噪比越大,表示混在信号里面的杂波越少,还原质量就越高。
5.最大输入声压级:麦克风所能承受的达到0.5总谐波失真的最大声压级的度量,单位是dB。
声源信号分离方式(说话人太多)
1.基于波束形成的方法。
2.基于盲源信号分离,包括主成分分析法(PCA)和独立成分分析(ICA)。
麦克风阵列结构要求:
即声源的直达声而非反射声到达每个麦克风的机会是均等的,麦克风振膜背对声源就可能会形成掩蔽效应)
麦克风开放空间 外表面要充分透声,不能形成声反射区,外表面可用布料等材料避免反射;
声音到达麦克风振膜的路径尽量短、尽量宽,路径上不要有任何空腔;
麦克风本身要远离干扰和振动(喇叭振动,结构振动),结构部件做好减振缓冲设计;
避免声音在结构、腔体内传播到麦克风。