目录

  • 麦克风阵列的原理
  • 麦克风阵列的功能
  • 麦克风阵列解决噪声干扰
    • 存在的干扰
    • 算法
      • 1.多通道降混响算法(室内)
      • 2.多通道点干扰抑制算法(室外)
      • 3.多通道目标说话人提取算法(声纹,不适用)
  • 麦克风阵列常用技术
    • 1.自动增益控制(AGC:Automatic Gain Control)
      • 定义:
      • 主要作用:
    • 2.自动噪声抑制(ANS,Automatic Noise Suppression)
      • 作用:
      • 原理和实现
      • 噪声
      • 噪声抑制的一般流程
      • 实际应用当中,降噪的自适应的过程
    • 3.回声消除(AEC,Acoustic Echo Canceller)
      • 定义
      • 回声
      • 传统的回声消除
      • 声学回声消除
        • 原理及其实现
      • 语音活动检测(VAD,Voice Activity Detection)
        • 定义
        • 音频端点检测
    • 4.声源定位
      • 计算
      • 波束形成(DBF)
  • 线性麦克风阵列 环形麦克风阵列
    • 线性麦克风阵列
    • 平面麦克风阵列
    • 立体麦克风阵列
  • 麦克风选择需要关注的指标
  • 麦克风阵列连接开发板
    • 一个样例

麦克风阵列的原理

麦克风阵列,是一组位于空间不同位置的全向麦克风按一定的形状规则布置形成的阵列,是对空间传播声音信号进行空间采样的一种装置,采集到的信号包含了其空间位置信息。根据声源和麦克风阵列之间距离的远近,可将阵列分为近场模型和远场模型。根据麦克风阵列的拓扑结构,则可分为线性阵列、平面阵列、体阵列等。

麦克风阵列的功能

麦克风阵列解决噪声干扰

存在的干扰

算法

1.多通道降混响算法(室内)

经典去混响的方法:
1.形成拾音波束来减少反射声
2.基于反卷积的去混响方法

2.多通道点干扰抑制算法(室外)

3.多通道目标说话人提取算法(声纹,不适用)

麦克风阵列常用技术

1.自动增益控制(AGC:Automatic Gain Control)

定义:

自动增益控制是限幅输出的一种,它利用线性放大和压缩放大的有效组合对助昕器的输出信号进行调整。

当弱信号输入时,线性放大电路工作,保证输出信号的强度;
当输入信号达到一定强度时,启动压缩放大电路,使输出幅度降低。

主要作用:

AGC功能可以通过改变输入输出压缩比例自动控制增益的幅度。也就是对语音的响度做出调整。

2.自动噪声抑制(ANS,Automatic Noise Suppression)

作用:

ANS可探测出背景固定频率的杂音并消除背景噪音,例如:风扇、空调声自动滤除。呈现出与会者清晰的声音。

原理和实现

将实时采样的数字信号进行频谱分析,这样我们就能分析背景噪声相应的强度和频谱分布,然后根据这个模型就能设计一个滤波器,当有人讲话的时候,同时做信号分析,根据分析,ANS就能分析出讲话者的频谱,那么根据这些背景噪音和讲话者的频谱,这个滤波器根据两个信号的对比实时的改变,让讲话者声音频谱通过,对背景噪声的频谱进行抑制,降低其能量,比如说降低15到20个分贝,就很明显可以感觉体验到噪音抑制的效果。

噪声

噪声有很多种,既有频谱稳定的白噪声,又有不稳定的脉冲噪声和起伏噪声,在语音应用中,稳定的背景噪音最为常见,技术也最成熟,效果也最好。

噪音抑制的关键是提取出噪声的频谱,然后将含噪语音根据噪声的频谱做一个反向的补偿运算,从而得到降噪后的语音。

噪声抑制的一般流程

首先将这一小段背景音进行分帧,并按照帧的先后顺序进行分组,每组的帧数可以为10或其他值,组的数量一般不少于5,随后对每组背景噪声数据帧使用傅里叶变换得到其频谱,再将各频谱求平均后得到背景噪声的频谱。
得到噪声的频谱后,降噪的过程就非常简单了,上图下面左侧的图中红色部分即为噪声的频谱,黑色的线为有效语音信号的频谱,两者共同构成含噪语音的频谱,用含噪语音的频谱减去噪音频谱后得到降噪后语音的频谱,再使用傅里叶逆变换转回到时域中,从而得到降噪后的语音数据。

实际应用当中,降噪的自适应的过程

在实际应用中,降噪使用的噪声频谱通常不是一成不变的,而是随着降噪过程的进行被持续修正的,即降噪的过程是自适应的。这样做的原因是:
1)一方面是语音数据前部的静音长度有时不够长,背景噪声数据不足导致得到的噪声频谱往往不够准确,
2)另一方面,背景噪声往往不是绝对稳定的,而是渐变的甚至会突变到另一种稳定的背景噪声。

这些原因都要求在降噪的过程中对使用的噪声频谱做及时修正,以得到较好的降噪效果。修正噪声频谱的方法是使用后继音频中的静音,重复噪声频谱提取算法,得到新的噪声频谱,并将之用于修正降噪所用的噪声频谱,所以降噪的过程中仍然要使用端点检测中用到的如何判断静音。噪声频谱修正的方法或者是新旧频谱进行加权平均,或者使用新的噪声频谱完全替换使用中的噪声频谱。

3.回声消除(AEC,Acoustic Echo Canceller)

定义

就是在Mic采集到声音之后,将本地音箱播放出来的声音从Mic采集的声音数据中消除掉,使得Mic录制的声音只有本地用户说话的声音。

回声

回声是指远端说话人的声音通过扬声器播放出来包括其反射声,又被近端的麦克风收集再传送回远端。声学回声主要出现的场合包括:模拟电话免提模式、手机免提模式、车载蓝牙电话等场景。

在即时通讯人机语音交互中,需要进行双方或多方的实时语音交流,在要求较高的场合,通常都是采用外置音箱放音,这样必然会产生回音,即一方说话后,通过对方的音箱放音,然后又被对方的Mic采集到回传给自己。如果不对回音进行处理,将会影响通话质量和用户体验,更严重的还会形成震荡,产生啸叫。(例如在手机打游戏的时候,如果你们两个在同一个房间,开两个麦的话,就会产生这种现象)

传统的回声消除

传统的回声消除都是采用硬件方式,在硬件电路上集成DSP处理芯片,如我们常用的固定电话、手机等都有专门的回音消除处理电路,而采用软件方式实现回声消除一直存在技术难点,包括国内应用最广泛的QQ超级语音,便是采用国外的GIPS技术。

难点:喇叭播放的音乐一般为立体声,甚至是环绕立体声,因此需要真正的多通道回声消除技术。设备的喇叭和麦克风一般距离很近,使用者距离较远;麦克风信号的信噪比很低(一般在-10dB~-30dB)。

声学回声消除

回声消除已经成为即时通讯中提供全双工语音的标准方法。声学回声消除是通过消除或者移除本地话筒中拾取到的远端的音频信号来阻止远端的声音返回去的一种处理方法。这种音频的移除都是通过数字信号处理来完成的。回声消除技术是数字信号处理的典型应用之一。

原理及其实现

回声消除的基本原理是以扬声器信号与由它产生的多路径回声的相关性为基础,建立远端信号的语音模型,利用它对回声进行估计,并不断修改滤波器的系数,使得估计值更加逼近真实的回声。然后,将回声估计值从话筒的输入信号中减去,从而达到消除回声的目的。

语音活动检测(VAD,Voice Activity Detection)

定义

语音活动检测(Voice Activity Detection,VAD)又称语音端点检测,语音边界检,是指在噪声环境中检测语音的存在与否,通常用于语音编码、语音增强等语音处理系统中,起到降低语音编码率、节省通信带宽、减少移动设备能耗、提高识别率等作用。早先具有代表性的VAD方法有ITU-T的G.729 Annex B

音频端点检测

音频端点检测就是从连续的语音流中检测出有效的语音段。它包括两个方面,检测出有效语音的起始点即前端点,检测出有效语音的结束点即后端点。

在语音应用中进行语音的端点检测是很必要的,首先很简单的一点,就是在存储或传输语音的场景下,从连续的语音流中分离出有效语音,可以降低存储或传输的数据量。其次是在有些应用场景中,使用端点检测可以简化人机交互,比如在录音的场景中,语音后端点检测可以省略结束录音的操作。

4.声源定位

麦克风阵列可以自动检测声源位置,跟踪说话人,声源定位信息既可以用于智能交互,也可以用于后续的空域滤波,对目标方向进行语音增强。

计算

利用麦克风阵列可以实现声源到达方向估计(direction-of-arrival (DOA) estimation),DOA估计的其中一种方法是计算到达不同阵元间的时间差

第一步:估计延时
第二步:计算角度

波束形成(DBF)

DBF是Digital Beam Forming的缩写,译为数字波束形成 或数字波束合成。

DOA估计是为了确定信号的方位,从接收数据中测出信号方向,不管信号是有用信号还是干扰信号,在DOA估计方向图中都表现为峰值,而此峰值并不是实际阵列输出功率;波束形成是传统滤波的空域拓展,其根本目的是有效提取有用信号并抑制噪声和干扰,在方向图中表现为有用信号方向形成峰值、干扰方向形成零陷,可以认为DOA估计为波束形成的前端处理,确定期望信号和干扰方向后,阵列对期望信号方向形成波束并在干扰方向形成零陷。

线性麦克风阵列 环形麦克风阵列

线性麦克风阵列

加性麦克风阵列( Additive Microphone Array)
阵列的输出是各阵元的加权和
最优波束方向可调
结构简单、方便布局
适用于车载、家电等场合

差分麦克风阵列( Differential Microphone Array )
阵列的输出是两两麦克风之间的加权相减
最优波束方向只能在末端方向
适用于耳机通话等场合


平面麦克风阵列

实现平面360度等效拾音
麦克风个数越多,空间划分越精细,语音增强和降噪效果越好
广泛用于智能音箱和交互机器人上


立体麦克风阵列

真正实现全空间360度无损拾音
解决了平面阵高俯仰角信号响应差的问题

麦克风选择需要关注的指标

麦克风阵列连接开发板

一个样例

1 产品概述

科大讯飞 XFM10621 模块是一款基于 6 麦克风阵列的语音前端解决方案。模块利用麦克
风阵列的空域滤波特性,通过对唤醒人的角度定位,形成定向拾音波束,并对波束以外的噪
声进行抑制,以保证较高的录音质量。
产品主要有以下特性:
6 麦克环形麦克风阵列
360 度声源定位
语音唤醒
回声消除
语音打断
去混响

2 功能描述
远场拾音
运用远场识别和降噪技术,使拾音距离达到 5 米。
语音唤醒
用户通过说出关键词,可以将模块从休眠状态唤醒。唤醒后,会有 WAKE_UP 标
志位输出。(默认关键词是“灵犀灵犀”)
声源定位
模块利用 6 个麦克风阵列,实现 360° 语音信号采集,并能通过声源定位来确定目
标说话人的方向。
回声消除
在播放和录音同时进行的场景,模块通过回声消除技术,可以将扬声器的声音屏蔽,
只接收用户的声音。(回声消除原理见附录)
语音打断
在设备播音时,仍然可以唤醒, 实现打断效果。

科大讯飞模块XFM10621是一款基于6麦克风阵列的语音前端解决方案。模块利用麦克风阵列的空域滤波特性,通过对唤醒人的角度定位,形成定向拾音波束,并对波束以外的噪声进行抑制,提升远场拾音质量、保证识别效果。
功能: 360度声源定位、降噪、回声消除、 语音唤醒

6 麦环形阵列形成 6 个拾音波束(波束 0~5),各自对应 60°范围,如图 15 所示。当通过唤醒确定声源角度(算法内部自动确定声源方向的一个拾音波束进行拾音)或指定一个拾音波束进行拾音时,阵列算法会增强波束范围内的声音,削弱波束外的声音,以增强录音信噪比。如指定波束 1 进行拾音,由于每个波束的范围为 60°,所以 30° ~90°范围内录音得到增强,波束 1 范围外的声音会被减弱。

实现过程:
如图所示, 模块接收外部的声音和回声消除参考信号作为输入,进行降噪 处理后,通过 Line-out 和 IIS 接口输出模拟和数字音频。 被唤醒后通过 WakeUp 指示灯闪烁, 语音增强开发板通过 UART( TTL 电平) 与开发板进行通信。
语音输出是麦克风阵列通过算法实现语音增强及回声消除后的语音模拟信 号, 可以直接接到 ARM 开发板或者电脑的语音输入接口。
音乐输出是指 ARM 开发板或者电脑输出的音乐或者合成语音信号,本开发 板内部集成了喇叭功放,可以驱动两个 4 欧姆 3 瓦的喇叭(如果选择立体声输出 请接两个喇叭,普通测试请选择单声道输出)。同时内部将音乐出入信号接到语 音增强的回声消除信号接口,可以将播放的音乐滤掉,不会对其录音。

语音识别(20201030)——麦克风阵列(采集语音信号)相关推荐

  1. 语音专题第一讲,麦克风阵列的语音信号处理技术

    转载自地平线机器人大讲堂,主讲人徐荣强. 2011年11月毕业于英国爱丁堡大学通信与信号处理专业,曾任诺基亚,联想,微软高级音频工程师.现在Horizon-Robotics负责语音相关硬件系统设计,涉 ...

  2. 大牛讲堂 | 语音专题第一讲,麦克风阵列的语音信号处理技术

    雷锋网按:徐荣强(Kevin),地平线硬件音频工程师.2011年11月毕业于英国爱丁堡大学通信与信号处理专业,曾任诺基亚,联想,微软高级音频工程师.现在Horizon-Robotics负责语音相关硬件 ...

  3. 语音识别基础(一)——语音信号的产生和特性

    最近在看语音识别,一直弄不明白模型到底是怎么进行工作的,于是决定从最基础的了解起,包括语音信号的产生.传播.分析.并在此记录以下,方便以后查找复习.由于重心放在声学模型.算法上,所以这些知识并没有很深 ...

  4. 麦克风声源定位原理_基于麦克风阵列的声源定位技术

    I 目 录 一.绪论 . ....................................................................................... ...

  5. 大热的麦克风阵列语音识别系统的设计和轻松实现,提供软硬件解决方案

    本文引用地址:http://www.eepw.com.cn/article/201706/348732.htm 摘要: 在非近距离语音识别中,由于衰减.干扰.混响等因素的影响,使语音识别率显著降低.使 ...

  6. android usb麦克风阵列,语音设备 SDK 麦克风阵列建议

    您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 语音设备 SDK 麦克 ...

  7. 微信语音技术原理_智能语音技术中麦克风阵列的原理

    麦克风阵列(Microphone Array),从字面上,指的是麦克风的排列.也就是说由一定数目的声学传感器(一般是麦克风)组成,用来对声场的空间特性进行采样并处理的系统. 早在20世纪70.80年代 ...

  8. 音视频开发(35)---麦克风阵列语音增强

    1. 引言   对于语音增强的研究,基本上可以划分成两大分支:单通道的语音增强算法和麦克风阵列的语音增强算法(也称为,多通道的语音增强算法).麦克风阵列的语音增强方法的优势在于考虑了声源的位置信息,可 ...

  9. 麦克风阵列语音增强算法——固定波束形成算法

    与单一麦克风不同,麦克风阵列除了能区分接收到的语音信号的时域和频域特性之外,还能区分空间特效,能在嘈杂的语音环境中在特定的方向上形成波束来获得特定声源发出的语音信号,并且能有效抑制噪声.波束形成方法可 ...

最新文章

  1. C#访问SQLite完整增删改查代码
  2. mysql数据库引擎调优
  3. jzoj1267-路障【最短路,SPFA】
  4. vue-环境变量和模式
  5. mysql 局域网连接失败
  6. 容器编排技术 -- Kubernetes Service
  7. 真香无疑了!新iPhone抢断货,国内最受欢迎的颜色是它
  8. 网络链路不稳定的排查问题方法
  9. 遍历字典时用与不用iter的区别
  10. linux桥接命令virsh,CentOS6.3 KVM如何设置网卡为桥接模式
  11. [Linux]不可重入函数
  12. Unity学习日志_NGUI简介
  13. 主编编辑器出现未经授权图片不可引用怎么办?
  14. asp.net铁路安全预警与决策支持系统
  15. 仅此一文带您走入智能叮当的世界
  16. 苹果M1 Mac 如何卸载 iPhone 和 iPad 应用程序?
  17. caffe中的各种loss函数
  18. 关于我转行嵌入式的那些事
  19. 测试语文水平的软件,语文试卷质量分析
  20. Oracle11g数据库的下载与安装(Windows 10)

热门文章

  1. 【宠物商店管理系统】基于SSM的宠物商店系统(ppt+论文+源代码)
  2. 手把手教你建立私人数据检索库(二)
  3. metasequoia :Summoner
  4. 让树莓派不再吃灰(Raspberry+Docker+Portainer+青龙面板+甜糖+网心云)
  5. 增量式编码器 绝对值编码器
  6. mysql group by 之后取每个分组最新的一条(或者按照自定义的规则排序)
  7. e.keycode 代码含义
  8. add p4 多个文件_P4_tutorials
  9. 数学规划模型总结(附MatLab代码)
  10. Mac 用久了空间不足?教你如何清理磁盘空间