热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

麦克风阵列的同步性、一致性、峰值幅度、RMS、DC偏移

可以直接访问我好朋友的淘宝链接,从链接中的网盘资料进行拉取。店铺链接:首页-智能语音开发者联盟-淘宝网产品链接:https:item.

可以直接访问我好朋友的淘宝链接,从链接中的网盘资料进行拉取。

店铺链接:首页-智能语音开发者联盟-淘宝网

产品链接:https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-

他店铺里面的麦克风这些都是可以通过测试的,哈哈。最多至16路麦克风。

提到麦克风阵列好多人只知道这个东西能有很多功能,比传统的单麦效果要好。但是我们怎么评判一个阵列的好坏。只有一个好的阵列才能让算法更精准,如果抛开硬件只谈算法的实现,实际效果是啥样也是不能预知的。

同步性:

什么是同步性!就是指n个麦克风之间的信号是否有延迟。相位差是判断麦克风信号同步性的重要指标之一。

同步性基本在codec这部分产生,比如一个四路codec例如那家的我就不指出了,有些多路的codec确实有这个问题。这个codec的实现原理是12路和34路各由一个adc进行采集。但是这个过程就会出现1和3同时采集、2和4会在大概1/16000s后触发采集。所以这种codec的同步性就不好。

如何测试同步性,找一个信号发生器,生成一个正选波进行输出,通过条线进行一分N。之后使用codec采集信号,观察不同信号之间的相位差。不要只测一次,记住不要只测一次!!!!!!要多测,断电之后测,断电之后再测。才能判断一个codec是不是靠谱。之前我是吃过亏的,测了两次觉得ok结果后来发现偶发差一个点的相位。

如这个公式y=sin(x+φ),我们希望所有的信号都是φ=0。

一致性:

我们先看下图是一个麦克风阵列采集到的信号,我们通过au进行分析。

下图是一个4+2的阵列:

下图是6+2的阵列:

 从上图我们看到几个名词,我们分别解释一下。且分析一下6+2的这张图。

测试方法找一个音响,播放一段正选波或者测试音频。要求放声的距离到各个麦距离相等!有条件的去消音室,没条件的保持室内安静!

下面我们分析声道1-6.

峰值幅度:峰峰值是指最高点和最低点的差值,即正波峰到负波峰的电位差。对于麦克风阵列来讲我们希望这个数值相差越小越好。上图相差超过2db了就有点大了。

RMS振幅:RMS其实就是跟我们初高中学习的交流电的电压计算方法一样,就好比我们市电是220V,但是实际上交流电是一个50Hz的正弦波,等效直流电压。RMS表达的就是这个意思。那我们看上面的“平均RMS振幅”,我们同样希望这些数值的差也是相差越小越好。

DC偏移:dc偏移就是直流分量,正常我们的麦克风采集电路都会有电容串联。我们都知道电容的特性是通交流阻直流。我们希望麦克风信号是对y轴对称的。如这个曲线y=sin(x)+k。k最好是0,这样就说明没有直流分量。一般驻极体麦克风DC偏移基本没有,常见于MEMS硅麦。

去DC偏移需要滤波器或者一个DC BLOCK算法进行消除。直流偏置还是很好去除的,也不是很影响。

一致性不好是需要检查codec和麦克风的焊点是否完好无虚焊,如果无虚焊则需要进行逐个更换麦克风进行多次测试。焊接温度同样会影响的。


推荐阅读
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • 本作业探讨了矩阵链乘法的问题,包括问题定义、解析过程、算法设计思路及性能分析。通过将矩阵链分解为多个子问题,旨在找到最小化基本运算次数的方法。 ... [详细]
  • 解决宝塔面板Nginx反向代理缓存问题
    本文介绍如何在宝塔控制面板中通过编辑Nginx配置文件来解决反向代理中的缓存问题,确保每次请求都能从服务器获取最新的数据。 ... [详细]
  • 本文介绍了两个重要的Node.js库——cache-content-type和mime-types,它们在处理HTTP响应头时非常有用。cache-content-type是基于mime-types构建的,并且实现了缓存机制以提高性能。 ... [详细]
  • 为帮助编程爱好者更好地掌握Python和Go语言的核心技能,我们特别提供两本精选图书的免费赠阅机会。《易懂的Python算法指南》适合所有希望提高算法理解能力的读者,《Go语言编程从入门到精通》则面向对Go语言感兴趣的初学者及有一定基础的开发者。 ... [详细]
  • Node.js 断点调试指南
    本文详细介绍了利用Google Chrome DevTools和Visual Studio Code两种工具进行Node.js应用的断点调试技巧。 ... [详细]
  • 本文介绍了基于Java的在线办公工作流系统的毕业设计方案,涵盖了MyBatis框架的应用、源代码分析、调试与部署流程、数据库设计以及相关论文撰写指导。 ... [详细]
  • iOS 小组件开发指南
    本文详细介绍了iOS小部件(Widget)的开发流程,从环境搭建、证书配置到业务逻辑实现,提供了一系列实用的技术指导与代码示例。 ... [详细]
  • 本文将详细介绍如何配置并整合MVP架构、Retrofit网络请求库、Dagger2依赖注入框架以及RxAndroid响应式编程库,构建高效、模块化的Android应用。 ... [详细]
  • Git版本控制基础解析
    本文探讨了Git作为版本控制工具的基本概念及其重要性,不仅限于代码管理,还包括文件的历史记录与版本切换功能。通过对比Git与SVN,进一步阐述了分布式版本控制系统的独特优势。 ... [详细]
  • 来自FallDream的博客,未经允许,请勿转载,谢谢。一天一套noi简直了.昨天勉强做完了noi2011今天教练又丢出来一套noi ... [详细]
  • 本文探讨了在不同场景下如何高效且安全地存储Token,包括使用定时器刷新、数据库存储等方法,并针对个人开发者与第三方服务平台的不同需求提供了具体建议。 ... [详细]
  • 如何高效学习鸿蒙操作系统:开发者指南
    本文探讨了开发者如何更有效地学习鸿蒙操作系统,提供了来自行业专家的建议,包括系统化学习方法、职业规划建议以及具体的开发技巧。 ... [详细]
  • 本文探讨为何Request对象的外观设计被认为是精妙的,重点在于其如何利用门面模式确保数据安全,同时保持系统的高效交互。 ... [详细]
  • Quick BI是一款专为云计算环境设计的高级数据分析与可视化解决方案,旨在帮助企业和组织实现从传统数据处理模式到现代云端数据管理的无缝过渡。本文将深入探讨Quick BI在数据可视化方面的独特功能及其发展历程。 ... [详细]
author-avatar
青锋寒万岁
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有