当前位置:首页 期刊杂志

虚拟人体听觉系统模型的构建方法研究

时间:2024-07-28

吕 文

(四川省工业和信息化研究院,四川 成都 610017)

听觉系统是人体感观中非常重要的一个系统,人类可以通过听觉系统感受周围的听觉刺激,进行有效的信息交互。当信息的目的是要吸引操作者的注意时,听觉交互通道通常比视觉交互通道效果更好。因此,听觉显示广泛地应用于警示设备[1]。当信息简短、单纯时,听觉显示也比较适合。听觉显示可有效地应用在以下几个方面:①用于减少视觉工作的劳动量;②引起人的立即注意,如警示信号;③提高人们集中注意的能力。

1 听觉特性分析

听觉的信号可以包含单纯的音调、复合的音调及语音的信息。音调可以是连续的、周期的或不定期的。音调信号可在以下状况下使用:①需要听者的立即反应;②听者必须察觉一个关于语音的信息;③条件不利于语音信息;④语音的信息会干扰其他的人或会遮蔽其他的信息。

操控系统中,听觉人机交互的用途极广,常见的有如下几种:

(1)蜂鸣器。它是一种频率低、音调声压级低的电子讯响器,发出的声音相对柔和,不会带来突然人体应激反应,经常与信号装置组合使用,仅运用在较安静的环境,提醒操作者注意,发挥听觉和视觉的指示作用。汽车驾驶员在打开转向拨杆后操作转弯时,驾驶室的显示仪表上就有一个信号灯亮和蜂鸣器鸣笛,显示汽车正在转弯,直至转弯结束[2]。

(2)响铃。是一种声压级和频率稍大于蜂鸣器的听觉提醒装置。因其使用场合和使用目的不同,其声压级和频率的设置会有比较大的差别,例如在安静的环境下使用的电话铃声,因其使用环境优良,同时其目的只是为了引起接听者注意,因此,声压级和频率都较低。而在各种环境声音及噪声比较复杂的开放环境下使用,如用作指示上下班的铃声,其声压级和频率就较高。

(3)角笛和汽笛。根据声压级和频率的不同,角笛分为声压级90~100 dB、低频的吼声和高声压、高频的尖叫器,常用于环境恶劣、夹杂多种高噪声环境中的报警装置。而汽笛则是声压级高、频率也高,传播距离远,运用于紧急事态的音调信号报警装置。如汽车中常用的测距雷达,当距离较远时声调柔和,而当距离较近时则声调逐渐升高且变得急促,以提醒驾驶员注意。

(4)警报器。警报器声音频率可以由高到低或者由低到高调节,声压级很高,传播距离很远,同时有声调的起伏变化,抗噪声干扰能力较强,能瞬时引起人们的注意。可运用在安全紧急状态,比如防空警报、地震警报等。

2 听觉信号

听觉信号常常用来传达警告。信息的响度必须大到足够容易察觉,但也不应该太大。所有的警告信号应该至少要比预期周围的声讯大10~15 dB。对大多数的应用而言,它必须在0.5 s内吸引听者的注意,直到听者有适宜的反应才停止。一般听觉警告的能量应集中在频率250~2500 Hz之间。在此范围内,连续性音调信号与间断性音调信号应该限制在400~1500 Hz之间。颤音或起伏的音调的建议频率范围甚至更小(500~1000 Hz)。

听觉信号的警告效果,可用数种方法来提高。最显著的是提高它的强度。其他的方法包括调节信号的振幅、给予适当的间断声以及周期性地改变信号的频率,使得声调达到每秒有1~3次的高低变化。

在听觉人机信息交互中,应注意以下原则:①在环境复杂并带有较少噪声背景的场合,需要按照最小化原则,把听觉信号和报警信号的频率设置在噪声掩盖效应最小的范围内,使人们既能清晰分辨音调信号,同时又不过于刺耳。②对于仅需要引起人们注意的声音,最好不使用连续的声音信号,以防造成声音干扰;而对于用于紧急事态的报警装置,最好采用连续变频、声调起伏的方法,更能快速引起人们的注意。另外,警报装置最好与信号灯一起使用,组成“视、听”双重报警信号[3]。③当需要声音传播距离远,且环境遮挡比较多时,应该使用低频率、高强度的声音信号。④在使用音调信号范围比较小时,应该合理设置声音发射装置的数量,避免各个信号之间互相干扰,造成听觉接受者获取信息的混淆。

3 语音信息

人与机器之间,除了可以使用简单的声音信息外,也可以用复杂的言语来传递信息[4]。传递和显示言语信号的装置称为言语传示装置。如麦克风这样的受话器就是言语传示装置,而扬声器就是言语显示装置。作为言语显示装置,具有显示信息准确、信息量大的优点,又由于是信息的单向传输,所以信息传播迅速,缺点是容易受到噪音的干扰。常用的言语显示装置有电视、广播、电话、电报及其它录音、放音的装置。

言语显示装置比音调装置表达信息更准确,信息量大,因此,在选择时应与音调装置相区别,并注意以下原则:①当需要大量传输信息时,使用单一言语显示装置表达信息准确,不易产生信息内容的混乱。②言语显示装置由于显示的信息内容比较单一,形式相对固定,较一般的视觉信号更有利于错误溯源和故障处理。③在某些追踪操纵中,言语传动装置的效率甚至高于视觉信号。④在一些非职业领域中,如娱乐、广播、电视等,采取言语显示装置比音调装置更符合人们的习惯。

4 人机听觉信息虚拟交互实现

4.1 虚拟听觉系统机理

虚拟听觉空间(Virtual Auditory Space,VAS),是在虚拟现实系统中加入虚拟听觉,以增强虚拟环境中使用者的沉浸感,减弱大脑对于视觉的依赖性[5],使用户能在融合视觉信息和听觉信息的环境中,获得更多的人机交互设计信息。虚拟听觉空间比较真实地模拟了人们的自然视听环境,但是又简化处理了无关信号,具有结构简单等特点,它是研究听觉、声学以及人机虚拟交互的重要方法。

虚拟听觉空间的最终目的是重塑真实空间中人获取各种声音信息的虚拟模型。它是基于人工头模型立体声系统,结合各种声音信息的特点,构建的复杂人机交互系统。在这个系统中,将传声器放入人工头的双耳处,所得信号再用一对耳机重发,即可再现原声场的空间信息[6]。在自由声场的情况下,与头部相关联的传递函数的频率定义为:

(1)

其中,HL、HR分别表示左耳和右耳的传递函数,PL和PR分别表示在简谐点声源情况下,左、右耳道入口处的复数声压振幅。HL、HR是声源的方位角θ、仰角φ,声源到头中心距离r,以及声波的角频率ω的函数,并且与头部等效尺寸α以及头和耳廓的形状有关。

式(1)也可写成相应的时域形式:

(2)

要实现虚拟听觉系统,通过测量得到自由声场与头部相关联的传递函数,将单路声频信号E0用信号处理的方法,按(2)式进行处理:

(3)

所得的双耳信号EL、ER经一对耳机重发,倾听者的双耳声压将正比于θ、φ方向的单声源所产生的双耳声压,通过改变θ、φ,从而在虚拟听觉系统中模拟出相应的空间信息声像。图1是虚拟听觉空间信号处理的结构原理图。

图1 虚拟听觉空间信号处理的结构原理

4.2 单通道虚拟听觉交互实现

虚拟听觉交互通过对原始的声音相关联的传递函数的处理,得到双声道的数字信号,利用耳机对其信号进行重发。图2是虚拟听觉系统的功能实现流程图。

图2 虚拟听觉系统的功能实现流程图

方位选择器根据虚拟声源相对于收听者的位置,决定大致的空间方位,由存储器得到相应的系数,并重建出所需方位与头部相关联的冲激响应,分别送往左右耳的感知计算器。声音信息经过信号放大器放大后,输送到收听者的左右听觉感知器。

由图2所示的虚拟听觉系统的实现流程可以看出,每一帧数据都要使用线性运算,两个序列的线性运算可以用圆周计算来代替,而圆周计算可以在频域中用FFT快速算法实现。

对于两个有限长序列x(m),h(m),要使圆周计算的结果不产生混淆,则两个序列长度都必须进行补零扩展,其长度至少为n点,即:

M=M1+M2-1

(4)

其中,M1为x(m)的数据长度,M2为h(m)的数据长度。

y(m)=x(m)⊗h(m)的计算可以通过以下几个步骤来完成,其中⊗为线性运算:

(1)求H(k)=DFT[h(m)],M点;

(2)求X(k)=DFT[x(m)],M点;

(3)计算Y(k)=H(k)·X(k);

(4)y(m)=IDFT[Y(k)]。

虚拟听觉系统实现中,一般采用wav格式的音频文件,wav音频采样率为 44.1kHz,如果有几分钟长度的wav文件,则整个文件需要占用大量的计算机存储空间,会严重造成数据处理的延迟。因此,需要对数据进行分帧、分段处理。

数据分段的方法是将声音信息序列进行分段,再和相关联的传递函数做运算处理。具体分段过程为:先确定输入序列x(m)的分段长度,对x(m)各段xi(m)作如下处理:

(1)与上帧重叠Mk-1点取点,其中第一帧数据前补Mk-1个零,做M1点FFT得到Xi(k);

(2)在h(m)后补零至长度为M1,做M1点FFT得到H(k);

(3)求Yi(k)=H(k)·Xi(k);

(4)对Yi(k)做IFFT得到yi(m)。

(5)将yi(m)的后(M1-Mk+1)个点作为该段卷积输出。

每一段输出的前(Mk-1)点是要删除的,然后把相邻段留下的点链接起来就构成了最终的输出,因为最终的输出是双声道数据,所以都需要对每段数据经过两次正反 FFT变换。基于此,我们转换如下运算:

yi(m)=yil(m)+jyir(m)=xi(m)·hl(m)+jxi(m)·hi(m)

=xi(m)·(hl(m)+jhr(m))

(5)

其中,yil、yir分别代表左、右耳数据,hl、hr为对应的左、右耳相关联的冲激响应数据。相应的:

Yi(k)=Xi(k)·H(k)

(6)

其中,

H(k)=FFT(hl(m)+jhr(m))

(7)

最后,即可得到:

yil(m)=Re(IFFT[Yi(k)])

yil(m)=Img(IFFT[Yi(k)])

(8)

4.3 双通道虚拟听觉交互实现

以上实现的是一个声源情况下虚拟系统的听觉交互[7]。但是,在实际环境中,往往会有2种甚至多种以上的声源信息同时进入人的听觉感知系统。对此情况采用如图3所示的多声源信息的合成处理。

图3 双声源信号合成处理示意图

将两声源分别进行相关联的传递函数处理,得到左右声道不同的声音感知信息,然后进行相互叠加,最终得到综合性的听觉感知。

以上,不管是单声源信息或者是多声源信息,都是在声源静止情况下的虚拟实现。在实际的动态操控系统中,声音信息与操作者之间往往存在相对运动,这时,声波频率与波源频率会发生多普勒频移。在处理动态声音的虚拟实现中,一般采用傅立叶变换方法。

fR(h)=fS(h)g(h)

(9)

其中,

g(h)=1-

(10)

(11)

其中,g(h)是接收频率与发送频率的变换因子,vx(h)、vy(h)、vs(h)是t时刻声源相对接收者的速度分量,v(h)、y(h)、s(h)分别是t时刻声源相对接收者的坐标分量,c是空气中的声速。

si(h)=Aicos[βi(h)]

(12)

其中,βi(t)是瞬时相位。

频率也可以用相位来定义:

(13)

根据式(12)、式(13),可得到:

(14)

将式(12)、式(13)代入式(14),去掉积分得到:

(15)

把声源信号按时间划分为长度为N的序列,傅立叶变换后,得到傅立叶级数的系数Ai和Bi,则运动声源的信号可以表示为:

(16)

其中,α(h)=η/r(h)是声音的衰减因子。

经过以上的函数变换,就可以实现虚拟环境中人体模型听觉系统的人机信息交互。

5 总结

文章分析了人体听觉的特征,利用人工头模型立体声系统,虚拟人体对声音的感知模型。同时通过函数计算,实现了虚拟环境中的人体对音频信息的感知,最终构建了虚拟人机环境中听觉的交互模型,该模型对复杂系统中多信息虚拟人机交互有重要的意义。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!