韩思清, 颜新青
(中国人民大学附属中学,北京 100080)
人耳具有对声音定位的功能. 从物理学角度分析,水平向的定位比较容易理解,基于双耳定位的原理,人耳通过分辨声音信号到达双耳的时间差和声级差,可以确定声源在水平向的位置[1]. 当声源具有相同水平角度时,对于不同垂直角度的声源,声音信号到达双耳的时间差和声级差是相同的,基于时间差和声级差定位的原理无法解释人可以分辨出声源的垂直向角度. 1968年,美国科学家K. Roffler和 A. Butler的研究,从生理上揭示了人耳对垂直方向角度的感知能力是基于声音信号的高频部分[2],1969年,E.A.G. Shaw和R. Teranishi的研究证明了人耳垂直向的定向能力来源于耳廓效应[3]. 针对人耳垂直面定向实验,设计了简易的研究人耳垂直面定向原理实验装置,并利用该装置进行了实验研究和分析.
根据文献[2-5]的解释,来自不同垂直向的声波与耳廓交互作用,会出现折射、反射和衍射现象,等效为与垂直向方向有关的滤波效应,不同垂直向角度的声音经过耳廓时,得到不同的滤波作用,如图1所示[6],只要能区分出滤波后的声音信号,就可分辨垂面声源的方向,实现垂直面定向.
图1 耳廓对声音的滤波作用示意图
Lopez-Poveda等对耳廓滤波作用进行了深入分析,提出了基于耳廓物理结构的声音衍射反射模型对耳道入口声信号的物理解释,如图2所示[5].
图2 声音信号入射耳廓漩涡结构的二维示意图
Lopez-Poveda等认为,耳道的声音入口处声音信号来自3部分:入射波、入射波的反射波和入射波的衍射波的反射波,这3部分波基于波的相干叠加原理形成耳道入口的声音信号.
Parham Mokhtari等基于人工耳廓开展了耳廓对不同垂直向滤波作用的研究工作[7],声源位于正前方垂直向角-45°~90°,以约为5°的间隔,对采集的信号进行频谱分析,如图3所示[7].
图3 声源在不同垂直角度时的耳廓滤波作用
由图3可见,耳廓滤波作用出现在5 kHz以上的频段,音频信号频谱波峰和波谷随声源高度角变化呈有规律地变化.
人耳耳廓的滤波器作用,对不同垂直角度方向的声音信号,形成了在不同频带的波峰和波谷变化,人耳耳蜗神经可以感受到这种频率变化,进而得以感知声源在垂直面的角度.
为了开展人耳垂直面定向研究和实验,设计了人耳垂直面定向原理研究的简易装置. 实验装置的组成框图如图4所示. 实验装置主要包括人工耳廓、旋转支架、外置声卡、麦克风、有源音箱和计算机.
图4 人耳垂直面定向原理实验装置框图
人工耳廓采用了医用硅胶注塑的等比人耳模型,旋转支架采用安装了量角器的可旋转的显示器支架,外置声卡为雅马哈USB声卡,麦克风为百灵达电容麦克风,有源音箱为BOSE便携式音箱. 实验装置的工作原理示意图如图5所示.
图5 实验工作原理示意图
在实验中,声源(音箱)位于接收装置(人工耳廓和麦克风)的正前方,通过调节旋转支架上的转动轴,使声源与人工耳廓之间的垂直向的角度在0°~180°之间变化,对应人耳与声源之间的垂直向的角度在0°(对应头顶指向声源)~180°(对应下颚指向声源)之间变化.
图6是实验装置接收端的工作照片,接收端包括人工耳廓和旋转支架,旋转支架能够在垂直向旋转,带动人工耳廓调节其垂直向的角度,如图7所示. 图8是声卡和音箱的照片.
(a)侧面
(b)正面图6 实验装置的接收端照片
图7 实验时旋转支架在不同垂直向角度的状态
图8 实验装置的声卡和音箱照片
在实验中,声源与人工耳廓之间的垂直向的角度在0°~180°之间调整,以5°为间隔采集数据,在采集时,调整旋转支架,使人工耳廓定位在预定角度,然后声卡发送500~20 000 Hz的线性调频声音信号,由音箱将声音信号播出,声音信号经实验装置的接收端的人工耳廓作用,由麦克风采集声音信号,经声卡输入到计算机,再对采集的信号进行频谱分析.
实验装置的数据采集通过Matlab程序实现,以下是数据采集代码.
for nn=1:100
fs=44000;
t = 0:1/fs:6;
y = chirp(t,500,6,20000);
soundsc(y,fs);
R = audiorecorder(fs, 24 ,2) ;
disp(‘Start of Recording.’);
recordblocking(R, 7);
disp(‘End of Recording.’);
myspeech(nn,:,:) = getaudiodata(R);
nn
pause
end
以下给出了对采集到的数据进行处理与绘图显示的Matlab代码.
nn=100
d=4000;
cut=d/2;
m=1;
aa=[51 93 57 25 63 19 69 13 75 7 81 1 37];
de=[0 105 15 120 30 135 45 150 60 165 75 180 90];
for nn=1:length(aa)
num=length(myspeech(aa(nn),:,2));
fspeech=abs(fft(myspeech(aa(nn),:,2)));
cut_fspeech=fspeech(cut:length(fspeech)-cut-1);
z=reshape(cut_fspeech,d,(num-cut*2)/d);
z=max(z);
subplot(ceil(length(aa)/2),2,m);
x=1:44000/length(z):22000;
plot(x,z(1:length(z)/2));
title(strcat(num2str(de(m)),‘ã’));xlabel(‘frequency/Hz’);
axis([0 25000 0 60]);
grid on;
ylabel(‘amplitude’);
m=m+1;
end
程序中首先对所采集的数据进行傅里叶变换,其频谱如图9所示,然后提取频谱包络.
图9 采集数据的频谱分布图
图9的横轴为频率,纵轴为傅里叶变换后的频谱幅度,因对麦克风和声卡的增益未进行标定,频谱幅度为相对值. 对频谱图提取包络后,由于频谱的对称性,只需要保留正频率部分的频谱就可以用于分析声源方向.
为验证实验系统的稳定性,在固定角度重复采集,图10为在105°采集8次数据处理后得到的频谱包络,可以看出同样角度下,频谱包络相似,实验具有可重复性.
图10 人耳垂直面定向原理实验105°的频谱分析
图11所示为部分数据(间隔15°)频谱图. 从图11中可以看出,不同垂直向角的频谱有很大差异,可以从频谱的形状上区分声源的垂直向角度.
以频谱幅度为例,从采集到数据的频谱包络可以看出,在0~75°的区间内5 kHz附近处受到了滤波作用,整体的振幅不超过50. 在90°~105°的区间内5 kHz处受到的滤波作用相对较弱,最高振幅达到并超过了50. 而在120°~180°间,5 kHz附近所受到的滤波效果逐渐增强,图像所呈现的峰值受到较大程度的削减.
位于10 kHz至15 kHz处的较小峰值同样会因为角度的不同而受到不同的滤波作用. 从120°开始到180°峰值的振幅逐渐增加.
图11耳廓对声源滤波形成的频谱轮廓与图3有一定差异,分析主要原因是由于纵轴坐标的差异和简易实验装置的整体幅度频率响应不平坦造成的.
图11 人耳垂直面定向原理实验不同角度的频谱分析
通过对人耳声源垂直角度的辨别原理的学习,搭建了简易的人耳垂直面定向原理研究装置,并利用该装置进行人耳垂直面定向的实验. 通过该实验,验证了人耳垂直向的定向能力来源于耳廓效应,验证了在利用非平坦幅度频谱的实验装置,可以区分出声源在垂直向的方向. 对于实验可以做进一步的改进,一种方法是采用更高的频率响应性能的声卡、麦克风和音箱构建实验系统,这样可以获得更好的实验结果;另一种方法是采用频谱幅度补偿处理的方法,通过补偿测量数据频谱幅度的平坦性.