技术领域
[0001] 本
发明涉及一种仿真方法,尤其是一种三维声场多普勒音效的仿真方法及仿真系统。
背景技术
[0002] 双
耳听音环境仿真是
虚拟现实研究的重要技术手段,在复杂声场情形下,对飞机、舰艇、客车以及各种语音等背景声进行虚拟具有很高的研究价值,尤其在立体声告警、虚拟现实以及
增强现实等领域应用广泛。
[0003] 在航空领域,飞行员通过双手控制飞机
操作系统,通过屏显或头显来判断空中目标
位置,为解放飞行员的双眼,可以通过虚拟立体声来辅助判断空中目标的方位。然而在空中,飞机与目标的相对位置时刻变化,此时,目标与飞行员相对介质运动而使飞行员接收到波的
频率有所变化,此种变化称为多普勒频移。简单而言,当目标相对飞机方位
角始终相同时,可仅实现该方位
多普勒效应;然而,实际中,单一方位的多普勒效应显然不能准确模拟目标相对飞机的运动。为了能够更为准确的实时模拟多普勒效应,假定在一段时间内飞机是沿直线飞行,此时可选择在该方位进行多普勒模拟,在下一时刻选择此时目标相对飞机的方位进行多普勒模拟,将实时合成的模拟音频进行拼接以获得实时模拟效果。
[0004] 文献:“不同参考系下多普勒效应公式统一,大学物理,2006,第25卷第7期”、“利用MATLAB模拟多普勒效应,南方
冶金学院学报,2005,第26卷第6期”以及“多普勒效应公式的简单推导,大学物理,2005,第25卷第7期”均只是对多普勒效应中的多普勒频移进行了相关的研究,而对于多普勒效应产生过程中的接收者接收到的
声波声压级变化没有做深入研究,这导致了合成的多普勒音效在听觉
感知上只能听到频率移动,而听不出来声压级的变化,与实际多普勒音效听觉感知不相符。同时,该多普勒效应是在二维情形下获得的,通过这些方法合成的多普勒音效,只能是二维的,即只能是单一方位的多普勒音效。然而,声场是三维的,人们在真实声场中获得的听觉感知也是三维的,为此本发明
专利提出一种简单的三维声场多普勒效应仿真方法,来模拟三维声场多普勒效应。
发明内容
[0005] 针对上述问题中存在的不足之处,本发明提供一种将头相关传递函数与多普勒效应结合起来,应用分
帧处理技术实现三维声场多普勒效应仿真的一种三维声场多普勒音效的仿真方法及仿真系统。
[0006] 为实现上述目的,本发明提供一种三维声场多普勒音效的仿真方法,包括以下步骤:
[0007] 计算多普勒频移;
[0008] 计算接收者接收到声波声压级的变化;
[0009] 对三维多普勒音效进行分帧处理及重叠相加后,以得到具有三维声场多普勒效应的声音。
[0010] 上述的一种三维声场多普勒音效的仿真方法,其中,上述方法的实施步骤如下:
[0011] 步骤1、利用下式计算多普勒频移;
[0012]
[0013] 其中,f′为接收者接收的频率,c为声速,v为声源运动速度,f0为声源发出的声波的频率,θ为声源运动方向与声源与接收者连线方向的夹角;
[0014] 步骤2、利用下式计算接收者接收到声波声压级的变化;
[0015]
[0016] 其中,ρ0为媒质
密度,r0为球状声源半径,ua为振速幅值,p0为基准声压,r为声源至接收点的距离;
[0017] 步骤3、对三维多普勒音效进行分帧处理及重叠相加后,得到连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0018] 上述的一种三维声场多普勒音效的仿真方法,其中,在步骤2中,利用下式推导出任意两点间的声压级关系:
[0019]
[0020] 上述的一种三维声场多普勒音效的仿真方法,其中,在步骤3中,包括以下子步骤:
[0021] 步骤31、对由步骤1与步骤2合成的多普勒音效进行分帧,并将分帧完的
信号分别与特定方位左、右耳HRTF进行卷积;
[0022] 步骤32、应用语音合成中的重叠相加法将一帧一帧的数据依照分帧顺序拼接成连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0023] 上述的一种三维声场多普勒音效的仿真方法,其中,在步骤31中,当方位改变时,选择当前方位的HRTF,与当前帧进行卷积。
[0024] 本发明还提供一种三维声场多普勒音效的仿真系统,包括:
[0025] 多普勒频移计算装置,用于计算多普勒频移;
[0026] 声波声压级的变化计算装置,用于计算接收者接收到声波声压级的变化;
[0027] 分帧处理装置,用于对三维多普勒音效进行分帧处理;
[0028] 重叠相加装置,用于将一帧一帧的数据依照分帧顺序拼接成连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0029] 上述的仿真系统,其中,所述多普勒频移计算装置利用下式计算多普勒频移;
[0030]
[0031] 其中,f′为接收者接收的频率,c为声速,v为声源运动速度,f0为声源发出的声波的频率,θ为声源运动方向与声源与接收者连线方向的夹角。
[0032] 上述的仿真系统,其中,所述声波声压级的变化计算装置利用下式计算接收者接收到声波声压级的变化;
[0033]
[0034] 其中,ρ0为媒质密度,r0为球状声源半径,ua为振速幅值,p0为基准声压,r为声源至接收点的距离。
[0035] 上述的仿真系统,其中,所述分帧处理装置对由所述多普勒频移计算装置与所述声波声压级的变化计算装置合成的多普勒音效进行分帧,并将分帧完的信号分别于特定方位左、右耳HRTF进行卷积。
[0036] 与
现有技术相比,本发明具有以下优点:
[0037] 本发明将头相关传递函数与多普勒效应结合起来,应用分帧处理技术实现三维声场多普勒效应仿真。将多普勒音效计算过程简单化,同时应用该方法合成的三维声场多普勒效应在具有多普勒效应的同时,还具有良好的方位感。
附图说明
[0039] 图2为多普勒音效合成原理图;
[0040] 图3为双耳多普勒音效仿真原理图;
具体实施方式
[0042] 本发明提供一种三维声场多普勒音效的仿真方法,包括以下步骤:
[0043] 计算多普勒频移;
[0044] 计算接收者接收到声波声压级的变化;
[0045] 对三维多普勒音效进行分帧处理及重叠相加后,以得到具有三维声场多普勒效应的声音。
[0046] 如图1至图3所示,本发明提供一种三维声场多普勒音效的仿真方法,包括以下步骤:
[0047] 步骤1、利用下式计算多普勒频移;
[0048]
[0049] 其中,f′为接收者接收的频率,c为声速,v为声源运动速度,f0为声源发出的声波的频率,θ为声源运动方向与声源与接收者连线方向的夹角。
[0050] 步骤2、利用下式计算接收者接收到声波声压级的变化;
[0051] 球面声波的声压级可表示为:
[0052]
[0053] 其中,ρ0为媒质密度,r0为球状声源半径,ua为振速幅值,p0为基准声压,r为声源至接收点的距离;
[0054] 声源在运动过程中,随时发出声波,接收者接收到的声波的大小随声源与接收者距离的变化而有所不同。由于声源与接收者距离远大于接收者声源大小,故声源可作为点声源处理。
[0055] 点声源在运动过程中,媒质密度、球状声源半径、振速幅值、基准声压四个参数均为定值,考虑多普勒频移后,不同点的声压级与接收点至声源的距离r有关,因此可推导出任意两点间的声压级关系:
[0056]
[0057] 步骤3、对三维多普勒音效进行分帧处理及重叠相加后,得到连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0058] 在步骤3中,包括以下子步骤:
[0059] 步骤31、对由步骤1与步骤2合成的多普勒音效进行分帧,并将分帧完的信号分别于特定方位左、右耳HRTF进行卷积。
[0060] 当方位改变时,选择当前方位的HRTF,与当前帧进行卷积。
[0061] 步骤32、应用语音合成中的重叠相加法将一帧一帧的数据依照分帧顺序拼接成连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0062] 在步骤3中,对由步骤1、步骤2合成的多普勒音效进行分帧,将分帧完的信号分别与特定方位左、右耳HRTF进行卷积,由于卷积合成的信号引入了HRTF,应用语音合成中的重叠相加法将一帧一帧的数据连接成连续的平滑的数据流,而不使中间数据产生跳变。
[0063] 多普勒音效用x(n)表示,HRIR用h(n)表示。h(n)长度为N,x(n)长度为N1,N1>>N。将x(n)分为许多帧xi(m),然后将每帧xi(m)与h(n)做卷积,最后在相邻两帧之间时间重叠部分相加。
[0064]
[0065] 且
[0066]
[0067] 式(5)中,p为分帧后总帧数。
[0068] 把每帧数据xi(m)和h(n)均进行补零处理,使其长度为N+M-1。对补零后的数据进行卷积(或进行频域乘积)
[0069]
[0070] yi(n)长度为N+M-1,而xi(m)长度为M,故相领两帧yi(n)之间有N-1长度的数据在时间上相互重叠。把重叠部分相加,与不重叠部分共同构成输出:
[0071]
[0072] 合成的y(n)即为具有三维声场多普勒效应的声音。
[0073] 如图4所示,本发明提供一种仿真系统的结构框图
[0074] 本发明还提供一种三维声场多普勒音效的仿真系统,包括:多普勒频移计算装置、声波声压级的变化计算装置、分帧处理装置与重叠相加装置。
[0075] 多普勒频移计算装置利用下式计算多普勒频移;
[0076]
[0077] 其中,f′为接收者接收的频率,c为声速,v为声源运动速度,f0为声源发出的声波的频率,θ为声源运动方向与声源与接收者连线方向的夹角。
[0078] 声波声压级的变化计算装置利用下式计算接收者接收到声波声压级的变化;
[0079]
[0080] 其中,ρ0为媒质密度,r0为球状声源半径,ua为振速幅值,p0为基准声压,r为声源至接收点的距离。
[0081] 声源在运动过程中,随时发出声波,接收者接收到的声波的大小随声源与接收者距离的变化而有所不同。由于声源与接收者距离远大于接收者声源大小,故声源可作为点声源处理。
[0082] 点声源在运动过程中,媒质密度、球状声源半径、振速幅值、基准声压四个参数均为定值,考虑多普勒频移后,不同点的声压级与接收点至声源的距离r有关,因此可推导出任意两点间的声压级关系:
[0083]
[0084] 分帧处理装置,用于对三维多普勒音效进行分帧处理。
[0085] 其中,分帧处理装置对由多普勒频移计算装置与述声波声压级的变化计算装置合成的多普勒音效进行分帧,并将分帧完的信号分别于特定方位左、右耳HRTF进行卷积。
[0086] 重叠相加装置,用于将一帧一帧的数据依照分帧顺序拼接成连续的平滑的数据流,以得到具有三维声场多普勒效应的声音。
[0087] 多普勒音效用x(n)表示,HRIR用h(n)表示。h(n)长度为N,x(n)长度为N1,N1>>N。将x(n)分为许多帧xi(m),然后将每帧xi(m)与h(n)做卷积,最后在相邻两帧之间时间重叠部分相加。
[0088]
[0089] 且
[0090]
[0091] 式(5)中,p为分帧后总帧数。
[0092] 把每帧数据xi(m)和h(n)均进行补零处理,使其长度为N+M-1。对补零后的数据进行卷积(或进行频域乘积)
[0093]
[0094] yi(n)长度为N+M-1,而xi(m)长度为M,故相领两帧yi(n)之间有N-1长度的数据在时间上相互重叠。把重叠部分相加,与不重叠部分共同构成输出:
[0095]
[0096] 合成的y(n)即为具有三维声场多普勒效应的声音。
[0097] 以上所述仅为本发明的较佳
实施例,对发明而言仅仅是说明性的,而非限制性的。本专业技术人员理解,在发明
权利要求所限定的精神和范围内可对其进行许多改变,
修改,甚至等效,但都将落入本发明的保护范围内。