陈双燕,汤巧治
(闽南理工学院电子与电气工程学院,福建石狮362700)
根据2017年世界卫生组织(WHO)关于听力损失的报告[1],全球有5%的人口患有残疾型听力损失,其中3200万是儿童,约3.28亿的成年人听力损失超过40 分贝[2]。据2016年北京听力大会的报告[3],我国有15.84%的人存在听力障碍。调查发现,耳病患者中接受过耳科检查的比例只有27.56%。
除了先天性的基因缺陷、人体随着年龄自身衰退等原因,生活噪音也是造成听力损失的一大威胁。另外,常年戴着耳机,也容易伤害耳朵[4]。听力损伤是一个长期积累的过程。越早发现听力损伤,越有利于听力障碍的及时治疗。自助的听力评价系统可以方便我们日常检测听力,及早发现听力的问题。
由于Android 手机的普及率很高,手机便于携带,方便随时检测听力,因此采用Android手机平台来进行听力损伤测试系统的开发。
综合考虑助听器验配的相关需求、补偿算法所需数据以及移动平台本身的特点,听力测试系统的功能需求主要有以下方面:
1)系统具有纯音信号产生功能,可以根据频率信息产生对应的纯音信号;
2)具有纯音听阈测试功能,可以给出受试者的听力图;
3)具有良好的人机交互界面。
系统设计所参照的技术指标约定如下:
1)频率范围:250~6 kHz中的6个频点(250 Hz、500 Hz、1000 Hz、2000 Hz、4000 Hz、6000 Hz);
2)最大声压级100 dB HL;声压级误差在±3 dB内;
3)频率误差小于1%;
4)环境噪声小于40 dB。
针对成年人,目前主流的听力检测方式是纯音测听、音叉检查、声导抗测试等方法。较之于音叉检查和声导抗测试等方法,纯音测听对于仪器的要求不高,只需要能产生固定频率的单频声音信号发生器,而由于Android平台中含有MediaRecord类能播放固定频率的声音,因此采用纯音测听法进行。
纯音测听法就是通过播放固定频率点的声音,将受试者在这些频率点上能听到的最小的声音强度记录下来。
国际上通用的几个专门用于听力测试的频率点是:500 Hz、1000 Hz、2000 Hz 和4000 Hz,本次设计增加了250 Hz和6000 Hz。
固定频率的声音可以用正弦波来描述,如公式(1)所示:
由于人的耳朵对相位的敏感度较低,因此,取φ=0。
声音的采样频率用fs来表示。采样频率是指在一秒时间内采集声音样本的次数,采样频率越高,声音的效果越好。目前常见的声音采样频率为:11 kHz,22 kHz和44.1 kHz。
本次设计采用44.1 kHz 的采样频率,因此,接下来以在44 100 Hz 的采样率生成1000 Hz 测试音源为例。由于采样频率是44 100 Hz,因此需要通过44 100个点来完成这些弧度的采样,每个采样点的弧度间隔为:
因此每个周期需要45个采样点,可表示为:
n为整数,根据以上公式来采集正弦波形的数据,其中A为信号的幅度。
声音强度用声压级来表示,其单位是dB SPL,用AdB来表示。由于要产生不同强度的声音,因此要让信号幅度以5 dB 的间隔增加。声音强度AdB和信号幅度A的关系如公式(2)所示。本次设计,由于Android 手机能够输出的声音强度有限,因此将声强范围设置为0~99 dB。在设计中,Android 的采样位数定为16 bit,数据是有符号数,因此取值范围是-32 768~32 767。以正信号为例,有32 767个等级,根据公式(2),可知对应的声强范围为0~90.3 dB。
按照5 dB 的声强间距,可以分为19 个声强等级。
本次设计是在Android Studio平台下,采用Java语言进行的,系统总体框架如图1所示。该听力损伤测试系统主要包括以下界面:
1)欢迎界面:欢迎界面中包含logo,以及系统功能说明。
2)功能选择界面:用户可以根据需求进行环境噪音测量或者纯音听力测试。
3)环境噪声检测界面:进行环境噪声的实时监测,显示信息包括最高分贝、平均分贝、最低分贝,环境噪声实时曲线以及噪声分贝说明。当环境噪声小于40 dB 时,适合进行听力检测,否则建议用户到安静的环境下进行测试。
4)测试耳机设备界面:系统提示“戴上耳机”,分别测试设备的左声道和右声道是否正常工作,并建议选择听力较好的耳朵先进行测试。
5)纯音听力检测界面:显示当前测试的耳朵,当前纯音频率,当前纯音的分贝,以及“听不到”、“播放”、“听得到”三个按钮。
6)测试结果界面:包括左耳和右耳的检查结果曲线图。
7)听力损失情况分析界面:包括左耳以及右耳的听力损失情况,并且根据用户的情况给出分析与建议。
图1 系统总体框架
系统主要包括环境噪音检测模块和纯音听力检测模块。
MainActivity 是系统的主活动,用户可以选择环境噪声测量或者检查耳朵。一般建议用户先进行环境噪声检查,对当前的环境噪声进行测评,判断是否适合进行听力检测。
环境噪声测量模块由NoiceCheckActivity 实现。采用MediaRecorder 类进行测量,检测时间为15 s,取样时间为0.1 s。环境噪音测量给出当前噪音值,最大噪音值,最小噪音值,平均噪音值以及实时显示分贝值的折线图,并有对应的分贝说明。
当15 s的检测时间到,如果当前的环境噪音大于40 dB,则弹出对话框,不建议进行听力测试,建议到较安静的环境测试;当环境噪音小于40 dB,则进入测试。
实时分贝值的折线图,纵坐标是0~90 dB,横坐标是时间,可以实时描绘出环境的噪音值。
进入听力检查后,首先进行设备检测,采用AudioManager分别检测左耳和右耳的耳机是否正常工作。系统依次播放0.6 s、0.8 s 和1 s 的1000 Hz、50 dB的纯音来检测设备。
听力检查模块是TestActivity。若左耳、右耳都能听到声音,建议用户选择听力较好的耳朵先进行测试,以isLeft 参数来判断当前测试的耳朵是左耳还是右耳。
左耳和右耳的测试流程是一样的。纯音测听流程如图2所示:初始频率为1000 Hz,声音强度为40 dB,若受试者可以听到声音,则每次下降10 dB,若受试者听不到声音,则每次增加5 dB,直到受试者可以听到声音,系统记录该频率下受试者能听到的最小声音强度。接着测试2000 Hz、4000 Hz、6000 Hz、250 Hz、500 Hz这些频点的声音。一只耳朵测试完,测试另一只耳朵。
图2 听力测试流程
环境噪声实时监测结果如图3(a)所示,当环境噪声大于40 dB 时,建议用户选择安静的环境进行听力测试。用户在听力测试界面进行左右耳的测试后,则给出听力测试曲线图,如图3(b)所示。最后,根据表1 的听损程度分级[5]给出听力测试结果以及分析与建议。
图3 系统测试结果
表1 WHO听损程度分级
经测试,系统可以实现环境噪声监测和听力检测。用户界面友好,具有一定的实用价值。