问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

麦克风阵列终极指南:为智能家居、机器人和 AIoT 选择正确的设置

创作时间:
作者:
@小白创作中心

麦克风阵列终极指南:为智能家居、机器人和 AIoT 选择正确的设置

引用
1
来源
1.
https://www.dusuniot.com/zh-CN/blog/microphone-array/

随着智能家居、机器人和AIoT设备的普及,麦克风阵列技术在语音交互中的应用越来越广泛。本文将为您详细介绍麦克风阵列的基本概念、关键技术、应用场景以及未来发展趋势,帮助您更好地理解这一前沿技术。

什么是麦克风阵列?

麦克风阵列由一组按特定几何图案排列的麦克风组成,通常是线性或圆形。这些阵列对从各个空间方向收集的声音信号进行时空处理,可实现以下高级功能:噪声抑制、混响消除、干扰减少、声源定位、声源追踪、阵列增益。这些功能显著提高了语音信号处理的质量,并改善了语音识别准确率在现实环境中。

麦克风阵列可分为不同的形状,包括线性、圆形和球形,但它们也可以采用更复杂的形状,如十字形、平面形、螺旋形或不规则形状。阵列中的麦克风数量可以从两个到数千个不等,因此它们用途广泛但又很复杂。虽然复杂阵列主要用于工业和国防应用,但出于成本考虑,简单的配置在消费电子产品中更为常见。

为什么我们需要麦克风阵列,特别是双阵列麦克风?

麦克风阵列在消费设备中的日益普及,很大程度上是由蓬勃发展的语音交互市场推动的。这些阵列对于提高远距离语音识别确保在现实场景中的准确性。随着语音交互技术从手机转移到 Echo 智能音箱或机器人,麦克风面临的挑战发生了巨大变化——就像耳语和喊叫之间的区别一样。

智能手机(例如配备 Siri 的智能手机)通常使用单麦克风系统。这种设置在低噪音环境中效果很好,没有混响,并且声源非常近。但是,当声源较远,并且存在明显噪音、多径反射或混响时,捕获的信号质量会下降,严重影响语音识别准确率在这些条件下,单个麦克风很难实现声源定位和分离。这时麦克风阵列就可以发挥作用,为这些限制提供解决方案。

尽管如此,单靠麦克风阵列不足以保证较高的语音识别率。虽然阵列充当物理网关,处理现实世界中的声音信号,但最终的识别率取决于基于云的处理。为了获得最佳效果,物理麦克风阵列和基于云的识别系统必须协同工作。

此外,麦克风阵列处理的信号质量至关重要。现代语音识别系统严重依赖深度学习,而深度学习受到训练数据质量的限制。如果处理后的声音与训练样本的特征不完全匹配,识别准确度就会受到影响。有趣的是,目标不是产生尽可能纯净的信号,而是产生与训练数据特征非常接近的信号——即使这些数据不太理想。

近场与远场麦克风阵列

麦克风阵列可以根据声源和阵列本身之间的距离进行分类,从而产生两种不同的声场模型:近场模型和远场模型。

在近场模型中,声波被视为球面波。这是因为声波是一种振动波,由振动声源产生后会向四面八方扩散,因此其本质上是球面的。近场模型考虑了阵列中每个麦克风接收到的信号的幅度差异。

另一方面,远场模型通过将声波视为平面波来简化情况,忽略麦克风之间的幅度差异。相反,它假设每个麦克风接收到的信号之间的关系纯粹是时间延迟的问题。这种简化使远场模型更易于处理,并且是大多数通用语音增强技术的基础。

近场和远场模型并没有绝对的区分标准,但普遍认为,当声源与麦克风阵列中心参考点之间的距离明显大于信号波长时,适用远场模型,反之,如果这个距离更短,则近场模型更合适。

例如,如果均匀线性阵列中相邻麦克风之间的距离(称为阵列孔径)表示为 d,源发出的最高频率声音的波长(最小波长)为 λ_min,则如果从声源到阵列中心的距离大于 2d²/λ_min,则被视为远场模型;否则,它属于近场模型,如图 1 所示

麦克风阵列关键技术

消费级麦克风阵列面临各种挑战,包括环境噪声、房间混响、人声重叠、模型噪声和阵列结构限制。当用于语音识别应用,必须考虑额外的优化和对齐以提高语音识别的准确性。为了应对这些挑战,特别是在专门的消费者应用中,某些关键技术发挥着至关重要的作用:

噪声抑制

在语音识别中,不需要完全消除噪音,而通话系统通常需要完全消除噪音。这里所说的噪音通常是指空调噪音等环境声音,这种噪音缺乏空间方向性,能量水平较低。虽然这种噪音不会掩盖正常语音,但会降低清晰度和可懂度。虽然这种方法不适合噪音水平高的环境,但足以应付日常的语音互动。

混响消除

混响是语音识别中一个特别麻烦的因素,会严重影响系统的性能。声源停止发声后,声波会继续在房间内反射并被吸收,在短时间内形成声波混合 - 这就是混响。混响会严重影响语音信号处理,降低测向的准确性,并削弱互相关或波束成形等功能。

回声消除

更准确地说,它应该被称为“自噪声”而不是回声,指的是语音交互设备拾取自身声音输出的情况。回声是混响的更广泛概念,具有更长的延迟——例如,超过 100 毫秒,就会让声音听起来像是在重复,从而产生独特的回声。在这种情况下,回声消除是指消除设备本身发出的声音,例如音乐或 Echo 扬声器中 Alexa 的声音,以确保只识别用户的声音。

声源测向

与更为复杂的声源定位不同,消费级麦克风阵列主要用于测向。此过程涉及检测说话者的方向,这对于后续的波束成形至关重要。测向可以使用能量方法、频谱估计或到达时间差 (TDOA) 技术实现,通常在语音唤醒阶段实施。

波束成形

波束成形是一种常见的信号处理技术,它涉及通过加权、延迟、求和和其他方法操纵阵列中每个麦克风的输出信号,以创建空间指向性。该技术用于抑制主瓣之外的声音干扰,包括人声。例如,当多个人在 Echo 设备周围说话时,波束成形可让设备集中并识别单个人的声音。

阵列增益

这个概念解决了拾音距离的问题。如果捕获的信号太弱,可能会影响语音识别的准确性。阵列增益涉及通过阵列处理增强语音信号的能量,以确保其足够强以实现可靠的识别。

模型匹配

这涉及到麦克风阵列与语音识别和语义理解模型的匹配,语音交互是一个完整的信号链,从麦克风阵列开始,整个过程都要进行模型的匹配。为语音交互设计的有效麦克风阵列通常使用两组算法:一组嵌入在硬件中用于实时处理,另一组用于基于云的语音处理。

麦克风阵列的未来趋势

微型化

麦克风阵列越来越小的趋势正在兴起。虽然目前许多产品都使用两个麦克风,但这种选择往往是出于工业设计考虑,而不是成本。麦克风阵列可以做得更紧凑,而且这种方法已经被证明是有效的。它在消费电子产品中得到广泛采用只是时间问题。

低成本

麦克风阵列(无论是 2 个、4 个还是 6 个麦克风)的高成本仍然是广泛采用的障碍。降低这些成本不仅仅是替换更便宜的组件;它需要彻底重新设计整个系统,包括设备、芯片、算法和云基础设施。

值得注意的是,即使是 2 个麦克风阵列也不算特别便宜。事实上,2 个麦克风阵列和 4 个麦克风阵列之间的成本差异很小,尽管这种比较没有考虑回声消除所需的额外硬件。从整体系统来看,这些配置之间的成本差异并不像人 们想象的那么大。

处理和识别多种声音

“鸡尾酒会效应”是指人类在嘈杂的环境中,即使多人同时说话,也能专注于单个对话的能力。当前的麦克风阵列和语音识别技术仍然主要针对单说话者场景而设计。实现可靠的多说话者识别是一个具有挑战性的目标,但仍然是语音技术未来发展的一个重要领域。

如何选择正确的麦克风阵列?

为您的产品选择合适的麦克风阵列需要了解硬件解决方案、算法优化和云识别功能之间的平衡。虽然麦克风阵列的硬件相当先进,但前端算法和云识别仍在不断发展。具体算法方法因公司而异,有些解决方案允许用户独立选择中央麦克风,这有利于设计灵活性。

两个以上麦克风的麦克风阵列通常采用线性或环形结构,而双麦克风阵列通常采用 Broadside 或 Endfire 配置。面对这些选择,制造商应该如何决定哪种解决方案最好?答案在于产品定位和预期的用户场景。

寻求经济高效的解决方案

如果您的产品注重价格实惠,通常不需要复杂的麦克风阵列。单个麦克风加上正确的算法,仍然可以实现噪音抑制和回声消除,从而以更低的成本确保近场环境中的充分语音识别。

改善降噪效果

如果您的产品需要更好的降噪效果,双麦克风解决方案可能更合适。这种配置简化了设计,并可以在通话期间有效降低一定范围内的噪音。但是,与单麦克风相比,它在语音识别方面并没有显著改善,而且成本相对较高。此外,如果考虑到语音交互所需的回声消除功能,成本可能会进一步上升。

双麦克风解决方案的一个主要缺点是其定位声源的能力有限,因此更适合用于注重通话降噪的手机和耳机。这可以通过定向麦克风来模拟,类似于 Endfire 的双麦克风阵列配置,其中单个麦克风旨在模仿两个麦克风的功能。然而,这种方法需要在设计中使用双开口,这会使工业设计过程复杂化。

适用于多功能高性能产品

如果您的产品需要处理更加多样化的用户场景,建议使用具有四个或更多麦克风的麦克风阵列。例如,Amazon Echo 使用具有六个以上麦克风的配置来增强语音识别和噪音处理。机器人通常在四个麦克风的情况下表现良好,而扬声器可能需要六个或更多麦克风。在汽车应用中,分布式阵列或其他专门结构可能是最佳选择。

最后一句话:为什么双麦克风阵列引领智能家居革命

虽然科技界对多麦克风阵列的进步津津乐道,但双麦克风解决方案已悄然成为智能家电 控制 领域。基于丰富的经验Dusun IoT显然,双麦克风不仅仅是一种妥协——它们是许多人的最佳选择智能家庭应用.

自 2012 年以来,家电行业一直致力于将语音交互技术无缝集成到日常产品中。关键要求简单而又具有挑战性:实现不受家电自身噪声影响的直接语音控制、实现可靠的远场语音交互,并确保解决方案既成熟又具有成本效益。其中,远场语音交互尤为关键。

尽管很多人认为麦克风数量越多,性能越好,但现实却并非如此。虽然八麦克风阵列可以提供更高的语音识别准确率,但它也带来了一系列挑战——成本更高、结构更复杂、生产和安装难度更大。此外,对于空调和电视等通常靠墙放置的电器来说,额外的麦克风几乎没有什么实用价值。

相比之下,双麦克风阵列在这些场景中大放异彩。凭借其简单的设计、更低的成本、更易于实施和更低的功耗,双麦克风有望成为智能家居产品的标准也就不足为奇了。展望未来,显然,简单和高效将继续推动智能家居领域的创新。

关于麦克风阵列的常见问题解答

麦克风阵列有哪些类型?

线性麦克风阵列

线性麦克风阵列的元件沿一条直线排列。主要有两种类型:

均匀线性阵列 (ULA): 在 ULA 中,相邻麦克风之间的间距是一致的。这种一致性使得整个阵列的相位和灵敏度相等,使其成为最简单、最常见的阵列拓扑。

嵌套线性阵列:这种类型本质上是多个 ULA 的组合,堆叠或嵌套在一起。它是非均匀阵列的一种特殊形式,在保留 ULA 的一些简单性的同时提供了灵活性。然而,线性阵列仅限于捕获声音信号的水平方位角信息。

平面麦克风阵列

平面麦克风阵列的元件排列在平面上,而不是直线上。根据几何图案,平面阵列可分为几种子类型,包括:

等边三角形阵列
T-阵列
均匀圆形阵列
均匀方阵
同轴圆阵
圆形或矩形阵列
平面阵列的优势在于它们可以捕获声音信号的水平和垂直方位角信息,与线性阵列相比,可以提供更全面的空间信息。

立体声麦克风阵列

立体声麦克风阵列可扩展到三维空间,其元件排列成各种 3D 几何形状。常见配置包括:

四面体阵列
立方体阵列
长方体阵列
球面阵列
立体声阵列提供最完整的空间信息。它们可以检测水平和垂直方位角,以及声源与阵列内参考点之间的距离,使其成为需要精确 3D 声音定位的应用的理想选择。

什么是波束成形麦克风?

波束成形是麦克风阵列中使用的一种技术,用于聚焦来自特定方向的声音。它的工作原理是:

延迟和相位补偿:调整每个麦克风信号的时间和相位,以便从选定的方向对齐它们。

幅度加权:为每个麦克风的信号分配不同的权重,以增强所需方向,同时抑制来自其他方向的噪音。

关键光束模式参数:

3dB带宽:阵列保持最大增益 3 分贝以内性能的频率范围。

到第一个零点的距离: 到光束增益降至零的第一个点的距离。

第一旁瓣高度:主梁外第一个次级峰的高度。

旁瓣衰减率: 增益从主波束到旁瓣的下降速度有多快。

功率模式(即振幅的平方)用于测量整体性能。波束成形麦克风非常适合需要精确声音方向性和噪音抑制的应用。

多阵列麦克风和双阵列麦克风有什么区别?

不同的成本

双麦克风的成本远低于多麦克风,除了直观可以观察到的麦克风数量的差异外,支持多麦克风通道所需的硬件电路、处理更多信号数据所需的额外计算能力等都让成本体现出较大的差异。

技术差异

双麦克风和多麦克风所采用的技术虽然类似,但在算法体系上却存在明显差异。显然麦克风数量越多越容易实现更好的降噪和语音增强效果。因此,为了达到相同或相似的效果,双麦克风阵列技术相对来说技术难度更大。不过由于成本问题,双麦克风阵列的应用更为普及。

语音定位与识别

如果技术优化得足够好,在 3 到 5 米的家居环境中,双麦克风阵列可以达到与多麦克风阵列几乎相同的降噪和语音增强效果。不过双麦克风的一个缺点是声源定位只能定位在 180° 范围内,而圆形麦克风阵列可以实现 360° 全角度范围内的定位。当然,这个差异对于一些需要靠墙摆放的设备来说不是问题,比如空调、电视。而像机器人这种摆放在房间中央的产品,如果想让它们定位到音箱,就只能使用多麦克风方案了。

实施

最后,从最终的产品形态来看,双麦克风方案更加简单,也更容易实现。多麦克风阵列最大的问题是,无论是线性阵列还是圆形阵列,它们对产品的外观和结构设计都有着极其严格的要求,因为麦克风必须在空间中均匀分布。而双麦克风显然不用考虑这些因素。

机器人或AIoT产品应该使用什么样的麦克风阵列?

对于机器人或AIoT产品来说,麦克风阵列的选择取决于应用需求:

机器人:需要精确的声源定位。因此,通常使用圆形多麦克风阵列。这种阵列提供 360° 声源定位,对于准确定位和交互至关重要。

AIoT产品:选择可以更加灵活。双麦克风实现速度更快,集成更简单,有利于更快部署和多样化设计形式。如果需要高声源定位,也可以使用多麦克风阵列,但它们通常更复杂且成本更高。

总体而言,虽然多麦克风阵列是精确定位的理想选择,但双麦克风通常因其易于实施和在构建 AIoT 生态系统中的多功能性而更受青睐。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号
麦克风阵列终极指南:为智能家居、机器人和 AIoT 选择正确的设置