采用DSP及车辆噪声信号的车辆碰撞声检测装置
2 软件和算法设计
我们设计的系统软件是一个运行于DSP之上的程序,控制系统各模块工作,并完成算法计算。使用TI公司的CCS集成开发环境,用C语言和汇编语言进行编程。
该软件首先进行初始化,对VC5509和AIC23的运行参数进行配置。对VC5509芯片的锁相环配置时,将系统时钟设置为144kHz。对McBSP进行配置时,打开VC5509的McBSP0并启动其进行输入输出操作。配置DMA0通道,使其工作于兼容模式并在中断时停止数据的传输。配置AIC23的工作模式为DSP模式并使用IIC方式传输数据。启动AIC23对声信号进行32k采样速率的采样。
初始化结束后进行采样检测,经过采样检测,一旦发现采集到的信号满足分帧条件,即采集到的声信号长度足够1秒时,就执行自动声检测算法。
自动声检测算法读出数据并进行判断,如果检测到的是非碰撞事件,则继续执行采样检测以等待处理下一秒数据,这时软件在执行空循环;当自动声检测算法检测到的是碰撞事件,就向通讯模块传递信息,在GPS模块确认速度和位置信息之后就通过报警模块报警。此软件的流程如图3所示。 本文引用地址: //m.amcfsurvey.com/article/148425.htm
软件流程图中自动声检测算法的设计是核心部分,下面做重点介绍。由于不同声波信号的幅频特性和相频特性不同,不同声波信号在各个频率段的幅值也存在一定的差异。因此,可利用各个频率成分的能量变化来实现目标识别。
自动声检测算法包括声音信号采集和分帧、特征提取、特征降维、特征分类四部分,
其具体实现步骤如下:
(1)采集和分帧。将采集到的信号按每2s分为一帧,帧与帧之间有1s的交叠。对32k采样率的芯片来说,即每一次只对2s的片段65536个点进行处理,在训练阶段两个片段之间有1/2重复。这样得到一组数据Datai(1≤i≤65535)。
(2)特征提取。对每一帧信号数据Datai(1≤i≤65535)实施DWT变换以得到频域信息,然后根据得到的频域信息统计能量的分布,以此作为识别交通事故的特征。本算法采用DB1小波,对每一帧信号,先进行一层分解,然后高频系数进行两层完整的分解,低频系数进行10层单向分解得到18组数据。计算得到特征分量F=[E1,E2…E18],En的计算公式如下:,其中N为Cn的长度。
(3)特征降维。对特征提取后的信号量实现降维。在提取出的特征分量F的基础上,本算法采用基于主成分分析(PCA)的异常点检测算法检测交通事故碰撞声。原特征F变换后得到公式为
,其中H为PCA方法得到的投影矩阵。
(4)特征分类。收集正常运行和交通事故时的车辆周围声音信号样本,并训练构造分类器,实现对行驶过程中的声音分类。分类器拟输出两类分类结果:一类为正常运行声音,另一类为重大交通事故的碰撞声音。判别条件为:
其中为训练样本集的特征分量投影。n表示
允许偏出给定区间Ii的最大个数,当n大于某个阈值时即为碰撞,反之则不为碰撞。
3 实验结果及分析
系统实验所采用的实验样本总数为200个,分为碰撞样本和非碰撞样本两类,每类都为100个样本。碰撞样本采集于车辆厂商的碰撞试验,非碰撞样本采集于日常常见各类声音信号。其中碰撞样本的长度为10s,包含完整的车辆碰撞过程的声音,并混有刹车等常见噪声。非碰撞样本的长度为20s,分为自然环境类、音乐类和语音类等几种声音。在碰撞样本中,20个作为算法的训练样本,剩下的80个用于检测算法的效果。一般普通声音的频谱如图4 a)所示,而典型的碰撞声样本的频谱如图4 b)所示。
我们的碰撞声检测仪在一个模拟的环境下进行测试,尽可能地还原真实场景。使用低失真功放装置反复对真实场景中采集到的碰撞信号进行实验。并和文献中的实验结果进行了对比。其中整体成功率是对判断对的样本总数和实验样本总数的比值。实验结果示于表1。
由实验结果可以看出,无论对碰撞样本还是非碰撞样本,实验结果都非常准确,这说明本算法在设计上较为合理,在较小的干扰下可以达到碰撞声分类的目的,和文献提到的结果相比,无论是碰撞样本还是非碰撞样本,准确度都有所提升。
4 结束语
利用TMS3205509芯片做信号处理以及TLV320AIC23B做采集芯片的车辆碰撞报警装置,体积小、成本低。此装置使用分帧的方式对声信号进行模式识别计算,以实现车辆碰撞的及时报警。实验结果表明,此系统可靠性高、延时较短、可及时发出报警信号。此系统的应用可提高机动车辆驾乘人员的安全系数,从而降低驾乘人员的车祸伤亡率,具有良好的应用前景。
评论