🍓Arduino耳间时差声音定位和导向

Arduino | 耳间时差 | 声音定位 | 导向 | 耳间电平差 | 头部相关转移功能 | 识别声音 | 步进电机 | 麦克风 | 流程图 | 模数转换 ADC

耳间时差

当涉及人类或动物时,耳间时间差(或 ITD)是声音在两耳之间的到达时间差。 它在声音的定位中很重要,因为它提供了从头部到声源的方向或角度的提示。 如果信号从一侧到达头部,则信号必须经过更远的距离才能到达远耳而不是近耳。 该路径长度差异导致声音到达耳朵之间的时间差异,该时间差异被检测到并有助于识别声源方向的过程。

当信号在水平面上产生时,其相对于头部的角度称为方位角,0 度 (0°) 方位角位于收听者正前方,向右 90°,向右 180°直接在后面。

在左(上)和右(下)耳朵之间。 (声源:来自 90° 方位角、0° 仰角的 100 毫秒白噪声)

测量 ITD 的不同方法

  • 对于诸如点击之类的突然刺激,测量起始 ITD。起始 ITD 是信号到达两只耳朵之间的时间差。

  • 瞬态 ITD 可以在使用随机噪声刺激时测量,并计算为到达耳朵的噪声刺激的设定峰值之间的时间差。

  • 如果使用的刺激不是突然的而是周期性的,则测量持续的 ITD。 这是到达双耳的波形可以及时移动的地方,直到它们完全匹配,并且这种移动的大小被记录为 ITD。 这种偏移称为耳间相位差 (IPD),可用于测量周期性输入的 ITD,例如纯音和调幅刺激。 可以通过查看波形包络或波形精细结构来评估调幅刺激 IPD。

理论依据

我们人类比较擅长定位声音,我们主要使用三种不同的技术。 其中两种技术过于先进,无法在我们的项目中实施。 另一方面,后者在理论上相对简单,尽管实践往往证明是另一回事。

耳间电平差 (ILD)

这种技术是基于声音强度随着声音在空气中传播而逐渐降低的事实。 长距离的差异非常明显,但在短距离内,它们充其量是最小的。 对于我们使用 arduino 的应用程序,这些差异在两个或多个麦克风之间可接受的距离内是无法测量的。

这种技术也非常依赖于波长,因为长波只会简单地通过头部而没有任何明显的水平差异。 当涉及到高频时,人类仍然使用这种技术,因为人头会产生非常独特的声影 (HRTF)。

头部相关转移功能 (HRTF)

人头的形状很有特点,这与声音的传递方式有很大关系。 这意味着来自不同角度的声音将以不同的方式到达耳朵,主要是在声级方面。 除其他外,来自上方的声音听起来与来自下方的声音不同。 如果我们要在我们的项目中使用它,我们将不得不构建一种高级几何形式的材料,这种材料在声学上相对来说是死的。 然后我们必须以精确的角度进行许多样本测量,并为我们的“头部”创建一个模型。 这将非常耗时,并且使用 arduino 将很难实现。

耳间时差 (ITD)

这是我们使用的方法,因为它显然是最容易实现的。 这种方法利用了声音在空气中传播速度相对较低的特点。 这意味着如果声音来自一侧,两个麦克风之间将存在可测量的时间差。 您可以在下面看到一个说明实际情况的图:如果这些麦克风放置的距离与正常头部一样远,则该差异将约为 600 毫秒。 这种技术也有一些错误来源,但这对我们的应用程序来说不是主要问题。

计算和公式

识别声音

系统解决方案

电路图

测试

流程图

物理单元连接图

源代码

🏈指点迷津 | Brief

Last updated