zoukankan      html  css  js  c++  java
  • 声源定位之2精读《sound localization based on phase difference enhancement using deep neuarl networks》

    2.1.1 题目与摘要

    1、为什么要增强IPD?

    The phase differences between the discrete Fourier transform (DFT) coefficients for two microphone signals are one of popular spatial cues in the frequency domain.

    非理想情况下,IPD会失真,会偏离纯净语音提取的IPD。

    2、IPD在复杂场景(混响、噪声)下受到了什么影响?

    我们可以从单通道的时频域的功率谱观察到:

    噪声使得许多TFbin上的能量增加,从而disturb纯净语音。两个通道的功率谱均会受到影响,导致某些TFbin上的空间定位线索被破坏。

    混响会smear掉纯净语音的功率谱,出现拖尾现象。同样会导致空间定位线索被破坏。

    3、还有其他增强IPD的方法吗?他们是如何增强的?

    4、为什么用DNN来增强IPD,不用其他神经网络,如CNN?

    因为DNN已经被成功应用在SSL里了。用CNN或者其他网络的比较少。

    5、为什么只增强IPD呢?可以增加其他特征吗

    因为仅仅IPD/ITD就已经包含了足够多的空间定位线索了,仅仅使用ILD的效果不如仅仅使用IPD。

    如果用一个网络来同时增强ILD和IPD的话,效果应该不好。因为ILD并不需要sinusoidal来解卷绕,两种类型数据(单位不同,取值范围也需要归一化)同时作为输入,怎么融合呢?简单的串联吗?[注:可以参考pc师兄的期刊]

    如果用两个网络,那获得增强后的特征应该怎么在进行DoA估计呢?

    6、本文是如何增强IPD的?

    用DNN学习混合信号的IPD到纯净信号IPD的映射关系。

    2.1.2 I Introduction

    7、IPD计算公式的推导。为什么相位差等于STFT系数之比再取相位?(暂时理解不了)

    http://www.sengpielaudio.com/calculator-timedelayphase.htm

    傅里叶级数/傅里叶变换:https://zhuanlan.zhihu.com/p/19763358

    相位谱:https://www.cnblogs.com/brucebi/p/4403603.html

    8、复数操作中,如何取相位?

    对于a+bi,其相位为arctan(b/a)

    9、AxB* = A/B ?? A乘以B的共轭 = A除以B?

    我用MATLAB设置了两个复数,验证了不相等。

    10、什么是broadside direction?

    转向角 阵列的知识

    11、DoA估计的公式对应的几何关系是什么?公式的推导。

    更正:上图中角度应为弧度

    12、什么是interference?与noise、reverberation的区别是什么?

    13、log power spectra, Mel-frequency cepstral coefficients, time-domain speech signal的值是什么样的?

    14、为什么说IPD不是连续的值?IPD的取值是什么样的呢

    其实这里说MSE不适合IPD主要是因为IPD的卷绕现象,因为IPD的取值是周期的,一个周期内的IPD是连续的,超出一个周期就会重复。

    IPD的取值应该是弧度。

    15、如何解决IPD取值变化的问题?

    论文并没有对IPD解卷绕,而是直接同时用sin和cosine函数进行编解码。

    16、为什么不直接使用周期性的cost function,如MCE、MSPE?或者说sinusoidal的优势在哪里?

    17、既然选择了IPD的sinusoidal function作为增强对象,那为什么要同时用sine和cosine来编码呢?sine和cosine不就差了pi/2吗?

    配合公式3,在解码(由DNN得到IPD)时,使用了arctan2函数,其参数为sin和cosine刚好可以

    18、第k个子带对应的频率f是什么?一个具体的数吗?

    对应的是具体的频率,单位是Hz,具体的一个数值,如1000Hz。

    19、如何从网络输出中解码出IPD?

    利用arctan函数对sin和cos进行计算,可以解码得到IPD。

    20、公式3的意义?

    同时利用sin和cosine值解码出IPD。

    21、什么是four-quadrant inverse tangent function?

    四象限反tan函数。

    在几何意义上, 等价于 ,但 的最大优势是可以正确处理 的情况,而不必进行会引发除零异常 操作。

    22、arcsin函数什么样?为什么要丢弃信息?

    反三角函数维基百科:https://zh.wikipedia.org/zh-hans/%E5%8F%8D%E4%B8%89%E8%A7%92%E5%87%BD%E6%95%B0

    23、为什么会引入估计偏差?

    当图中theta=90度时,即声源在侧面时,两条平面波根本无法构成三角形,也就无法利用公式2中的arcsin函数估计DoA。所以,根本不能估计到90度和-90度,由此引入了估计误差。

    24、如何知道一个TF bin中是由哪个信号主导的呢?也就是说,怎么知道TF bin中真实的IPD是哪个方向的?TFbin-wise的ground truth是怎么标注的?

    25、为什么DNN的输入是一帧的所有频带的IPD?为什么不分开频带进行处理?不同TF bin的话可能主导声源不同。

    分频处理的话,也就是每一个TFbin都单独处理,太低效了。不同频带的主导声源不同不是问题,因为IPD是从一对一对的TFbin中得出的,所以不同的TFbin计算出的IPD可以是不一样的。

    26、为什么说分类问题会天生地限制精度?

    因为分类问题只会估计DoA为某一个类别,如30度,-65度等。但是,分类器不能估计出33.5度等精度更高的角度值。这也是为什么论文的DoA估计使用几何关系的原因。

    27、为什么以下公式中,帽子在红色部分?

    因为hat的意思是估计,DNN的输出是

    ,作为一个整体,帽子应该加在估计值整体的上方。

    28、公式4,5的意义?

    公式4:我们可以通过这一个公式,得到end-fire两端的调整过后的角度值。该公式的设计是为了既可以处理-90度附近的角度也可以处理90度附近的角度。max控制最小值不低于-90度,min控制最大值不超过90度。

    公式5:前面的估计值是基数,后一项是偏移值。a是缩放因子,sgn函数如下图所示,为符号函数,后面的4次方是为了放大两端的角度值。越靠近两端,偏移值的绝对值就越大,a用来控制偏移的总体程度。

    36、什么是相位卷绕phase wrap问题?如何解决?

    同47.

    37、为什么不用sine+arcsin或者cosine+arccos来对相位进行编解码?

    2.1.3 多声源定位

    29、如何利用每一个TF bin的DOA估计值来估计多个声源?

    首先,我们每次都利用N个时间帧的K/2-1个频带的DoA估计值。

    其次,我们对这些TF bin的DOA的估计值进行K-means多次聚类,每次检查包含最少DOA估计值的簇,如果其分布点的个数低于阈值,我们则去除该簇。

    最后,直到每个簇所包含分布点的个数都不低于阈值时,我们停止执行K-means算法,并且将每个簇的峰值作为最终的DoA估计值。

    30、为什么已经通过聚类得出多个DoA估计值了,还要对每个TFbin的DoA估计值进行精细化?

    因为可以用于其他应用,如声源分离。这样的话,TFbin-wise的DOA估计结果就更加精确了。

    31、k-means算法?

    k-均值聚类初始化k个不同的中心点{u1,...,uk},然后迭代交换两个不同的步骤直到收敛。

    步骤一,每个训练样本分配到最近的中心点ui所代表的聚类i。

    步骤二,每一个中心点ui更新为聚类i中所有训练样本xj的均值。

    《深度学习》P94

    32、如何改变最近邻条件和中心点条件?

    就是指的步骤一和步骤二的迭代交换执行。

    39、多次k-means聚类,调整k,直到每个簇内DOA估计的个数都足够多。该方法与统计直方图,再直接pick peaks有什么区别?

    2.1.4 实验

    33、什么是IEEE-AASP挑战?LOCATA的任务1是什么?

    IEEE Audio and Acoustic Signal Processing。

    acoustic source LOCalization And TrAcking:声源定位与跟踪

    任务一:使用固定麦克风阵列来采集单个固定声源信号。

    34、为什么没有做单声源有噪声有混响的实验?

    我们可以设置以下实验

    1. 单声源有混响
    2. 单声源有噪声
    3. 单声源有混响有噪声
    4. 多声源有混响
    5. 多声源有噪声
    6. 多声源有混响有噪声

    我们一般先做简单场景下的实验,以此来验证方法的可行性。然后,复杂实验验证鲁棒性。

    实验1验证单声源时该方法对混响是否有效,实验2验证单声源时该方法对噪声是否有效,实验3验证单声源时该方法对混响噪声同时存在是否有效。以此类推。

    如果1好2不好,说明对噪声效果不好。反之。

    如果12好3不好,说明分别有效,但所提出的方法不能处理混响噪声同时存在的一些特性。

    如果123好,4/5/6不好,说明只对单声源有效,多声源之间的相互影响没有解决。

    此处,论文展示了实验1、2和6。与其余state-of-art方法相比,在最复杂情况6下性能也是比较好的,所以隐性表明了3、4、5的性能比较好。

    35、什么是空间混叠?为什么采样率等于8kHz就可以避免空间混叠?

    统计信号处理和相关领域中, 混叠 是指取样信号被还原成连续信号时产生彼此交叠而 失真 的现象。当混叠发生时,原始信号无法从取样信号还原。而混叠可能发生在时域上,称做时间混叠,或是发生在频域上,被称作空间混叠。

    ——百度百科

    根据奈奎斯特采样定律,按照高于最大频率两倍的采样速率进行采样,不会出现混叠现象。

    为什么是8kHz,而不是16kHz呢?

    空间混叠:当传感器间距d>波长/2=c/(2f)时,c是声速,f为频率,会发生空间混叠。由栅瓣方向传播过来的信号与主瓣方向传播过来的信号将是不可分辨的。

    所以阵列间距必须满足d<=c/(2f),称为空间采样定理。

    若声速为320m/s,信号变换到频域之后,我们只需要处理0-f/2的频率,又已知麦克风间距为0.04m,这样的话截止频率为c/(2d),即320/0.08=4000Hz,采样率超过8kHz就会产生空间混叠。

    40、什么是steered-response SNR?

    可控响应信噪比。

    具体来说,对于每个感兴趣的方向,我们设计一个波束形成器指向那个方向,产生最高信噪比的方向被认为是预测的目标方向[29]。

    41、为什么对比方法MA的CCF间隔改变为-4到4个采样点?

    42、为什么MA的多声源定位在既有混响又有噪声下会更有效?

    43、什么是onset detection?

    According to wikipedia Onset detection:

    Onset refers to the beginning of a musical note or other sound, in which the amplitude rises from zero to an initial peak. It is related to (but different from) the concept of a transient: all musical notes have an onset, but do not necessarily include an initial transient.

    检测声音的开始

    And the Pitch detection

    A pitch detection algorithm (PDA) is an algorithm designed to estimate the pitch or fundamental frequency of a quasiperiodic or virtually periodic signal, usually a digital recording of speech or a musical note or tone. This can be done in the time domain or the frequency domain or both the two domains.

    检测基音。

    参考:

    https://en.wikipedia.org/wiki/Onset_(audio)

    https://dsp.stackexchange.com/questions/18836/what-is-the-difference-between-pitch-detection-and-onset-detection

    44、既然是在背景噪声的环境下,为什么还要5种房间配置?到底有无混响?

    可能是diffuse noise生成时需要房间大小。

    45、为什么前两个实验的训练集的语音数不一样?

    46、两个声源的定位性能是如何评估的?

    分别计算所有语音的minMSE,然后再平均,最后加平方根,得到总的RMSE。

    MA:每条语音挑出L个DoA之后,每条语音都计算minMSE,最后所有语音的minMSE算平均再平方根。

    PRO:每帧都计算DoA,每条语音挑L个DoA,后续同上。

    WANG:整条语音估计Mask,再使用估计出的steering vector进行定位,后续同上。

    cIPD:同PRO。

    47、什么是wrap phase?为什么转向角从-90度到90度就不存在相位卷绕?

    解卷绕:https://blog.csdn.net/zhoufan900428/article/details/9007125

    因为STFT或DFT后,对信号求相位是通过tan-1(Img/Real)来实现的。

    振幅和相位:

    tan函数: 反tan函数:

    当我们用反tan函数去求相位时,值域被限制在(-pi/2,pi/2),而我们定位的角度范围也刚好是[-pi/2,pi/2]。所以相位不会超过范围产生卷绕问题。

  • 相关阅读:
    迭代
    UIViewController生命周期控制
    JPA相关注解
    正則表達式截取字符串两字符间的内容
    HDU 1789 Doing Homework again
    《从零開始学Swift》学习笔记(Day48)——类型检查与转换
    POJ 3280 Cheapest Palindrome(区间DP)
    JavaScript高级特性之原型
    http协议
    编程算法
  • 原文地址:https://www.cnblogs.com/JJJanepp/p/11733412.html
Copyright © 2011-2022 走看看