目录

1. TDOA简介

2. 时延估计

3. 定位估计

4. 声源定位


根据现有的研究成果来看,声源定位(Sound Source Localization, SSL)存在以下几种方法:基于最大输出功率的可控波束成形的定位方法、基于高分辨谱估计的定位方法和基于到达时延差(Time Difference of Arrival,TDOA)估计的定位方法,以及基于机器学习的方法。其中基于时延估计的定位方法计算量小,实时性好,实用性强等特点,我们就先介绍这种较为简单的声源定位算法。基于TDOA的方法一般分为两步,首先计算声源信号到达麦克风阵列的时间差(时延估计),然后通过麦克风阵列的几何形状建立声源定位模型并求解从而获得位置信息(定位估计)。

1. TDOA简介

首先介绍下TDOA的概念,如图所示,假设我们在空间中有一个声源(记为s(t),其在空间的位置为S)两个麦克风(记为m1和m2,它们在空间的位置分别为M1M2,接收到的信号为x1(t)和x2(t)

那么麦克风m1和m2收到的信号分别为:

其中τ1和τ2分别是声源到达两个麦克风的延迟时间,n1(t)和n2(t)为加性噪声。那么声源信号到达两个麦克风的TDOA为

τ1和τ2可以通过下式计算

其中c是声速。一般情况下,我们选择一个麦克风的信号作为参考信号,例如我们把M2作为参考信号,那么τ2=0。在麦克风阵列几何形状已知的情况下,声源定位问题变为对时延的估计问题。

2. 时延估计

时延估计常用的有很多种比如使用广义互相关函数(Generalized Cross Correlation, GCC)估计时延,或者使用倒谱分析进行时延估计等,这里介绍常用的基于广义互相关函数时延估计方法。

互相关函数我们以前已经介绍过了,而广义互相关函数是为了减少噪声和混响在实际环境中的影响,在互功率谱域使用加权函数加权,然后经过IFFT运算后找到峰值估计时延,其流程如下图所示:

广义GCC计算公式为:

其中Ψ12为频域加权函数,常用的有如下几种

Gx1x2(ω)为互频谱,其计算公式为:

最后我们就可以通过式(8)估计语音信号到达两个麦克风的时延了。

3. 定位估计

如果要确定出声源在二维平面内的位置坐标,都至少需要三个麦克风。对于两个麦克风的情况,我们只能计算到达角(Direction of Arrival, DOA)。在介绍如何定位估计前需要先区分下近场(near-field)和远场(far-field),假设声速波长为λ,麦克风之间的距离为d(有的地方称为孔径,aperture),那么声源与麦克风之间的距离r大于2d2/λ时,符合远场模型,反之则为近场模型。对于远场模型来说,声源到达麦克风阵列的波形视为平面波,如下图所示:

此时根据麦克风阵列的几何关系,我们有

进而可以求出,声源相对麦克风阵列的角度

对于近场模型来说,声源到达麦克风阵列的波形视为球面波,如下图所示:

近场模型需要三个麦克风,我们假设τ12,τ13分别为第二和第三个麦克风与第一个麦克风的时延,那么

根据麦克风阵列的几何关系,我们得到

其中τ12,τ13通过时延估计得到,因此可以求解公式(11)到(13)的方程组,进而使用正弦定理可以得到θ2和θ3。

4. 声源定位

在麦克风孔径不大的情况下,一般都符合远场模型(不信读者可自己算一下),因此这里应用远场模型进行声源定位。声源位置在大约在45度角,麦克风之间的距离为0.15m,48 kHz的采样率,使用gcc-phat进行时延估计,结果如下图所示(代码和数据还是在公众号菜单More->Code里面)。

可以看到大体上方向还是被正确估计到,想必聪明的读者已经发现了声源定位的一些数据可以进行VAD结果的判定。这里的Demo比较简单,采用的是单源自由场模型,真实情况下需要考虑更多的问题,比如房间的混响,噪声,声源个数等问题。另外gcc-phat只能用于双麦克风阵列,如果你有多个麦克风,可以使用Spatial Linear Prediction Method 方法去利用麦克风之间的冗余信息获得更为精确的定位结果。此外波束成形(Beam forming, BF)和声源定位联系比较密切,因为时延和BF所要求的导向量等价,因此也有基于BF的声源定位算法。最后提一下机器学习/深度学习的定位方法,前面的流程还是不变,只是最后通过最大值估计时延的这一步换成了使用机器学习模型来估计时延,即模型输入为gcc-phat,输出结果为时延。然后根据这个时延进行声源定位。


参考文献:

[1]. https://www.canalu.tv/video/inria/time_difference_of_arrival_tdoa.33273

[2]. Springer, Micrphone Array Processing,2008


使用TDOA进行声源定位相关推荐

  1. (转载)基于TDOA声源定位算法仿真–MATLAB仿真

    (转载)基于TDOA声源定位算法仿真–MATLAB仿真 转载自:https://blog.xxcxw.cn/archives/28 声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUS ...

  2. matlab 声源定位csdn_[转]基于TDOA声源定位算法仿真--MATLAB仿真

    声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUSIC和DOA算法并不适用该场景,本仿真主要用TDOA算法进行定位. 常用的阵列信号定位算法主要有三大类:基于高分辨率谱估计的定位技术 ...

  3. 基于TDOA声源定位算法仿真–MATLAB仿真

    评论或私信 5元获取解压码 声源定位算法是利用麦克风阵列进行声音定位,属于宽带信号,传统的MUSIC和DOA算法并不适用该场景,本仿真主要用TDOA算法进行定位. 常用的阵列信号定位算法主要有三大类: ...

  4. 麦克风阵列声源定位效果测试

    下列图片如果不清楚可以直接访问淘宝链接,从链接中的网盘资料进行拉取.从此链接看到的购买可以跟客服说,提我可以便宜50块钱~~~ 店铺链接:首页-智能语音开发者联盟-淘宝网 产品链接:https://i ...

  5. 麦克风阵列声源定位四通道麦克风数据库及TDOA双曲交汇定位算法实验

    麦克风阵列声源定位四通道麦克风数据库建立 四通道麦克风数据库建立物理模型的建立,来源于文献:SLoClas: A DATABASE FOR JOINT SOUND LOCALIZATION AND C ...

  6. 【定位问题】基于CC和GCC算法实现近场声源定位TDOA问题附matlab代码

    1 简介 声源定位是许多领域里的一个基本问题.声源定位技术的研究一直是个研究热点,涉及到很多技术领域,如声学,信号检测,数字信号处理等,有着广阔的应用前景.目前,该技术在仿人智能机器人上的应用还不是很 ...

  7. AliOS Things声源定位应用演示

    1. 概述 利用麦克风阵列进行声源定位在智能降噪.语音增强.语音识别等领域有广泛应用和研究前景.本文介绍基于AliOS Things + STM32F413H Discovery开发板实现声源定位算法 ...

  8. AliOS Things声源定位应用演示 1

    摘要: 1. 概述 利用麦克风阵列进行声源定位在智能降噪.语音增强.语音识别等领域有广泛应用和研究前景.本文介绍基于AliOS Things + STM32F413H Discovery开发板实现声源 ...

  9. 基于双麦克风声源定位的视频跟踪

    基于双麦克风声源定位的视频跟踪 声源定位跟踪技术在当今社会有着越来越广泛的应用.在此使用两个高灵敏度麦克风作为传感器,配以音频信号处理芯片,接收音频信号并进行模数转换,使用FPGA器件作为核心控制器, ...

最新文章

  1. 一、如何创建一个状态栏扩展(火狐插件扩展开发教程)
  2. 1个多月就能看到效果的减肥大法 - 生活至上,美容至尚!
  3. 水题Kattis Temperature Confusion小学数学
  4. Windows10中Docker的安装与遇到的那些坑
  5. 机器学习(三):支持向量机SVM(含代码和注释)
  6. 以太网接口保护方案设计图
  7. 有道云笔记的word文档导入功能
  8. [css] OOCSS有哪些好处?对应的库有哪些?
  9. Ipython知识点总结
  10. 续php的一些基本概念
  11. PostgreSQL 辟谣存在任意代码执行漏洞:消息不实
  12. 吃透这份pdf,拿下阿里、腾讯等大厂心仪offer(软件测试岗)
  13. Qt5构建出错问题解决办法:为项目untitled执行步骤
  14. 论文笔记 Digging into self-supervised monocular depth estimation
  15. 测试架构需要具备哪些能力
  16. 移动端网页站点调用拨打电话发送短信等功能
  17. Python数据分析学习总结——替代Matlab
  18. SEO快排是什么?怎样实现快排?
  19. 2012年培养学员25万人,每年增长25%,请问按此增长速度,哪一年培训学员人数到达100万人?
  20. linux管道举例理解

热门文章

  1. JS_Gallary
  2. python实现关联算法_【原创】利用python实现apriori关联算法并分析挖掘数据
  3. Android 渐变色背景样式
  4. qt 使用样式设置渐变色背景
  5. pdf工具类之添加页码
  6. mac 文字识别软件ocr_Mac平台上一款免费的OCR文字识别功能的屏幕截图软件Screen OCR...
  7. 用PHP查看微信撤回的消息,python实现文件助手中查看微信撤回消息
  8. Unity连接Photon
  9. Zxing jar的下载地址
  10. 英文文档翻译软件-汉语文章翻译成英语