小奥的学习笔记

  • Home
  • Learning & Working
    • Speech Enhancement Notes
    • Programming language
    • Computer & DL
    • MOOC
  • Life
    • Life Time
    • Thinking & Comprehension
    • Volunteer
    • Plan
    • Travel
  • Footprints
  • GuestBook
  • About
    • About Me
    • 个人履历
    • 隐私策略
  1. 首页
  2. Study-notes
  3. Computer & DL
  4. 语音处理学习笔记
  5. 正文

整理的一些关于麦克风阵列的知识点

2019年8月5日 1998点热度 1人点赞 0条评论

前期为了准备面试,也是为了自己拓展一下知识,整理了一些麦克风阵列的知识,这些内容里面并不全,但是却是一些最为关注的点。在了解了这些内容之后,反而让我对自己的麦克风阵列语音增强的系统有了更多的认识,最重要的一点就是,过去单纯只考虑算法改进是无法真正做到一个好系统的,算法必须与硬件结构相结合,才能做出更好的系统。

为什么使用麦克风阵列?

麦克风系统可以在低噪声、无混响、距离声源很近的情况下获得符合语音识别需求的声音信号。但是,若声源距离麦克风距离较远,并且真实环境存在大量的噪声、多径反射和混响,导致拾取信号的质量下降,这会严重影响语音识别率。而且,单麦克风接收的信号,是由多个声源和环境噪声叠加的,很难实现各个声源的分离。这样就无法实现声源定位和分离,这很重要,因为还有一类声音的叠加并非噪声,但是在语音识别中也要抑制,就是人声的干扰,语音识别显然不能同时识别两个以上的声音。

对采集的不同空间方向的声音信号进行空时处理,实现噪声抑制、混响去除、人声干扰抑制、声源测向、声源跟踪、阵列增益等功能,进而提高语音信号处理质量,以提高真实环境下的语音识别率。一维麦克风阵列只能获得信号水平方向角的信息,而平面阵列可以得到信号的水平方位角和垂直方位角信息。立体阵列可以得到信号的水平方位角、垂直方位角和声源与麦克风阵列参考点距离这三维信息。

因为当前的语音识别基本都是深度学习训练的结果,而深度学习有个局限就是严重依赖于输入训练的样本库,若处理后的声音与样本库不匹配则识别效果也不会太好。从这个角度应该非常容易理解,物理世界的信号处理也并非越是纯净越好,而是越接近于训练样本库的特征越好,即便这个样本库的训练信号很差。

混响和回声在于一个时延,时延超过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)。

麦克风阵列结构要求:

即声源的直达声而非反射声到达每个麦克风的机会是均等的,麦克风振膜背对声源就可能会形成掩蔽效应)

麦克风开放空间 外表面要充分透声,不能形成声反射区,外表面可用布料等材料避免反射;

声音到达麦克风振膜的路径尽量短、尽量宽,路径上不要有任何空腔;

麦克风本身要远离干扰和振动(喇叭振动,结构振动),结构部件做好减振缓冲设计;

避免声音在结构、腔体内传播到麦克风。

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:2019年8月5日

davidcheung

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

搜索
欢迎关注我的个人公众号
最新 热点 随机
最新 热点 随机
DEEPFILTERNET:一种基于深度滤波的全频带音频低复杂度语音增强框架 奥地利匈牙利九日游旅程 论文阅读之Study of the General Kalman Filter for Echo Cancellation 小奥看房之鸿荣源珈誉府 杭州往返旅途及西溪喜来登和万怡的体验报告 2022年的第一篇碎碎念
奥地利匈牙利九日游旅程小奥看房之鸿荣源珈誉府论文阅读之Study of the General Kalman Filter for Echo CancellationDEEPFILTERNET:一种基于深度滤波的全频带音频低复杂度语音增强框架
Python chapter 5 learning notes 莱芜市2010年普通高中招生说明(摘要)2 2016年8月1日反思记录表 这几天很忙,很忙,很忙! S.V Beijing Travel 13&14&15:Stay at home S.V Beijing Travel 6:Very 囧 day
标签聚合
生活 学习 鸟哥的linux私房菜 Java leetcode Python 算法 python学习 高中 linux
最近评论
davidcheung 发布于 5 个月前(02月09日) The problem has been fixed. May I ask if you can s...
tk88 发布于 5 个月前(02月07日) Hmm is anyone else having problems with the pictur...
cuicui 发布于 9 个月前(10月20日) :wink:
niming 发布于 10 个月前(09月19日) 同级校友,能刷到太巧了
davidcheung 发布于 2 年前(08月16日) 我得找一下我之前整理的word文档看一下,如果找到了我就更新一下这篇文章。
Nolan 发布于 2 年前(07月25日) 您的笔记非常有帮助。贴图不显示了,可以更新一下吗?
davidcheung 发布于 3 年前(06月19日) 到没有看webrtc的代码。现在主要在看我们公司的代码了。。。只是偶尔看一看webrtc的东西。。。
aobai 发布于 3 年前(03月13日) gain_change_hangover_ 应该是每三个block 只能够调整一次,这样保证每帧...
匿名 发布于 5 年前(12月30日) 烫
小奥 发布于 5 年前(12月12日) webRTC里面的NS本身我记得就是在C++里面呀

COPYRIGHT © 2025 小奥的学习笔记. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

陕ICP备19003234号-1

鲁公网安备37120202000100号