基于AR谱特征的声目标识别

本文第一部分先解释AR谱,但并不会给出太多的细节,第二部分介绍几种常见的语音中的特征,有些在之前的博文中已经用过,诸如过零率。第三部分给出实际操作的过程及识别的效果。本文的目标是通过对DSP采集的声音信号提取特征,识别卡车和飞机。

转载请注明出处: xiahouzuoxin.github.io

关于AR谱

AR模型全称Auto-Regression Model,是通过参数计算信号功率谱的一种方法。在Matlab中计算AR谱很简单:假设有一个1024个点的车辆信号x,

y = pyulear(x, 256, 128);



ARspectrum

AR谱的计算有2个重要的参数:系数阶数、FFT反变换的点数。AR谱是一种递推模型,即用前p个时刻的时域值估计当前第n时刻的值:

其中u(n)是噪声输入,系数阶数就是上式中的p。牵扯到FFT,是因为功率谱的计算中可以使用FFT进行快速计算,因此就有离散FFT在单位圆上抽样点数的问题,功率谱的计算公式是:

上式中转化后有a0=1,将FFT计算扩充到N点后有a(p+1)...a(N-1)=0,FFT点数就是指的这里用于FFT计算的长度N。

AR谱是一个什么样的概念呢,首先我对功率谱的理解就是:不同频率处的能量值的大小,这个大小并不一定是真实的能量值,但不同频率的能量谱值的相对大小关系却接近真实值,因此不同频率处功率谱值的相对关系比其真实的谱值更重要。比如,车辆在远处的时候能量相对较小,在近处的时候能量较大,但对于平稳的信号,虽然能量值不同,但都具有相似的谱包络,因此我们更关注的是谱在不同频率上的分布大小,就像概率一样,看在哪个频率值(或段)的功率谱大。

通过观察AR谱,我们能清晰的知道:主要的能量都集中在什么频率段,从而对信号进行分析主要关注这些频率段就行了。

AR谱的细节参见胡广书编著《数字信号处理》一书,其C实现参考我的Github项目,关于AR的基本理论参见之前的博文“现代数字信号处理——AR模型

音频信号特征提取

1 短时平均能量(Short Time Energy, STE)

其中N表示一帧的长度。短时平均能量可用于判断静音帧,静音帧的短时能量小,这比直接通x(n)的最高幅值进行判断稳定性要高。对于静音帧,应该在后续的处理之前去除。通常,语音比音乐含有更多的静音(人说话没有音乐那样着腔带调),因此,语音的平均能量的变化要比音乐中大很多。

2 短时过零率(Short Time Zero-Corssing Rate, ZCR)

短时过零率是在一个音频帧内,离散采样信号值由负到正或由正到负的变换次数。

从某种程序上讲,过零率表达了信号的跳变速度,是频率的一种简单度量。过零率与平均能量结合能用于语音端点检测。在博文自适应含噪信号过零率算法中也曾尝试改进过零率用于震动信号的识别。

3 子带能量比(Sub-band energy ratio, SER)

子带能量用于描述主要能量的频域分布特征,其过程就是将频域等间隔划分成B个子带,在AR谱图上,对每个子带范围进行积分就可求出子带能量Ei,则子带能量比就是

不同音频信号的能量分布不同,通过子带能量能区分能量的主要分布频带。子带能量比是一个很好参数,用于识别频率能量分布不同的目标。当然类似的思想也可以用到FFT频谱图上。

4 谱频率重心(Spectrum Centroid, SC)

将AR谱的幅值看做权值w,则谱频率重心的计算是:

谱频率重心是通过谱峰统计的中心,并不会(当然也可能等于)等于AR谱主峰对应的频率。

5 带宽(Band Width, BW)

带宽指信号谱值下降到中心频率谱值的0.707处的高低频率差BW=fH-fL。

基于支持向量机的识别

卡车和飞机的主频位置可能存在不同,所以使用声音信号AR谱的最高峰值对应的频率Fmax作为一个特征维度;另外使用谱频率重心和子带能量比分别作为特征的另两个维度。因此,最后组合特征为{Fmax,SC,SER}。

值得注意的是,本文使用的谱频率重心不是简单的对所有频域进行统计计算,而是:

  1. 先对频谱org_psd进行从高到低排序,排序后的psd以及对应的频率索引为idx
  2. 选择部分具有高的谱值(这些谱值的和占整个频域谱值和的0.707)进行频谱重心计算,这样能避免一些高频噪声的影响。

识别使用支持向量机(SVM)模型,关于支持向量机,对于没太多基础的可以参考July的博文支持向量机通俗导论(理解SVM的三层境界),有一点基础的可以看看林智仁老师的讲义,这里使用的工具箱就是林智仁的LibSVM,可以从软件主页http://www.csie.ntu.edu.tw/~cjlin/libsvm/index.html 中下载到。

实际操作通过自己设计的DSP+FPGA控制AD7606采集声音信号,将声音信号上传到PC的matlab上进行训练,提取特征。很重要的一点是:使用分类算法(比如这里的LibSVM支持向量机或其它的如神经网络等)进行分类的前提是数据本身可分,如下为卡车和飞机的特征可视化结果,从图中可以看出,两类样本使用上面构造的特征可分,因此才可以接着做识别的工作。



特征

使用LibSVM训练,核函数使用RBF,效果一般比其它的要好一些,这里大部分参数默认(主要有gamma和C参数)。要使用LibSVM获得好的效果,请参考我的另一篇博文“LibSVM笔记系列(2)——如何提升LibSVM分类效果”,主要是一些关于如何搜索获得最佳参数的方法。

实验总共数据1400组,卡车和飞机各选200组用于训练(代码为实际代码的一部分,由于其它原因,暂时无法公开代码),

n_trian = 200;

label_car = zeros(length(car_feat),1);
label_plane = ones(length(plane_feat),1);

instance = [car_feat(idx,1:n_trian) plane_feat(idx,1:n_trian)];   % idx表示第idx维的特征
instance = instance‘;
label = [label_car(1:n_trian); label_plane(1:n_trian)];
model = svmtrain(label, instance, ‘-s 0 -t 2‘);  % SVM训练结果为model模型,这个模型将用于下面的预测

其余的1000组用于测试,

tests = [car_feat(idx,(n_trian+1):end) plane_feat(idx,(n_trian+1):end)];
test_label = [label_car((n_trian+1):end); label_plane((n_trian+1):end)];
tests = tests‘;
pd_label = svmpredict(test_label, tests, model);
fprintf(‘\n识别正确率%.4f\n‘, length(pd_label(test_label==pd_label))/length(test_label));

最后的预测结果如下:



识别结果

预测正确率达到86.50%,能使用到到实际当中。

时间: 2024-10-15 18:50:40

基于AR谱特征的声目标识别的相关文章

基于汉字字频特征实现99.99%准确率的新闻文本分类器(四)

基于汉字字频特征实现99.99%准确率的新闻文本分类器(一) 基于汉字字频特征实现99.99%准确率的新闻文本分类器(二) 基于汉字字频特征实现99.99%准确率的新闻文本分类器(三) 基于汉字字频特征实现99.99%准确率的新闻文本分类器(四) 回顾 上一节中,使用五层神经网络,对抽取出的汉字字频特征向量进行分类,得到了超过99%的准确率,在高准确率的前提下,没有陷入局部最优解,对一些在训练中,被指定了上千次不是军事类的新闻,只要内容是军事类的,就能被正确的找出,同样,混在军事类新闻里的[慈善

Behavior Recognition via Sparse Spatio-Temporal Features 基于稀疏时空特征点的运动识别

Duanxx的论文阅读: Behavior Recognition via Sparse Spatio-Temporal Features 基于稀疏时空特征点的运动识别 ——Duanxx ——2015-04-24 1.Inreoduction In this work we develop a general framework for detecting and characterizing behavior from video sequences, making few underlyin

基于IG的特征评分方法

本文简单介绍了熵.信息增益的概念,以及如何使用信息增益对监督学习的训练样本进行评估,评估每个字段的信息量. 1.熵的介绍       在信息论里面,熵是对不确定性的测量.通俗来讲,熵就是衡量随机变量随机性的指标.比如一个随机变量X的状态有{1,2,...,n},如果X取1的概率为1,其他状态为0,那么这个随机变量一点儿随机性都没有,也就是信息量为0:反之,如果每个状态的概率都相当,也就是说这个随机变量不倾向任何一个状态,因此随机性最高.(在离散情况,均匀分布的熵最高:在连续情况,正态分布的熵最高

译:Local Spectral Graph Convolution for Point Set Feature Learning-用于点集特征学习的局部谱图卷积

标题:Local Spectral Graph Convolution for Point Set Feature Learning 作者:Chu Wang, Babak Samari, Kaleem Siddiqi 译者:Elliott Zheng 来源:ECCV 2018 Abstract 点云的特征学习已经显示出巨大的希望,引入了有效且可推广的深度学习框架,例如pointnet ++. 然而,到目前为止,点特征已经以独立和孤立的方式被抽象,忽略了相邻点的相对布局及其特征.在本文中,我们建议

基于谱减法的声音去噪

转载请注明出处: http://xiahouzuoxin.github.io/notes/ 谱减法模型 实际听觉环境中,肯定是含有噪声的,那掺杂有噪声的声音信号中原声音信号和噪声信号是如何体现的呢?一种普遍被使用的方法是:采集到的声音信号永远都是原信号与噪声信号的叠加,即 模型是信号的直接叠加,这就要满足:原信号与噪声信号不相关.其实有些情况下这个条件是不满足的,所以依然有很多其他的模型,如有人认为原信号和噪声信号是卷积的关系.当然,这些都是模型,还没有明确的理论证明那种是对的,反正哪种好用我们

基于人体部件小边特征的多行人检测和跟踪算法

基于人体部件小边特征的多行人检测和跟踪算法 detection tracking edgelet feature multiple occluded human Bayesian combination 读"B. Wu, R. Nevatia. Detection and tracking of multiple, partially occluded humans by Bayesian combination of edgelet based part detectors[J],IJCV,7

声纹识别技术助力远重庆时时彩技巧程身份认证无线互联网以及智能手机的迅速发展

声纹"作为一种典型的行为特征,相比其他生理特征在远程身份认证中具有先天的优势,文章介绍了声密保在远程身份认证中的应用,解析了一些在声纹识别准确率.时变问题和噪音问题等方面的技术难点和工程解决经验,最后针对远程身份认证的安全性问题,分享了得意音通在防录音闯入上的最新研究成果.希望对广大读者有所帮助. 声纹在远程身份认证中的应用 网络安全面临重大挑战 无线互联网以及智能手机的迅速发展,给人们日常生活带来极大便利的同时也带来了不容忽视的安全隐患,如何准确.迅速.安全地实现远程身份认证成为摆在人们面前急

讯飞开放平台上线业界首个多生物特征融合认证方案

年末岁初,是各类犯罪案件的高发时段,而其中不法分子通过倒卖.盗取他人身份信息后,利用身份认证漏洞可办理银行卡.电话卡,进而从事各种违法犯罪活动的案件近来尤为常见.从前不久微信H5链接盗取支付宝存款的谣言散播中可见广大用户对身份安全认证,尤其是金融领域的安全认证的一贯担忧.话说讯飞开放平台刚刚上线多生物特征融合认证方案,免费向业界开发者开放,“声纹+人脸”验证护航全民信息安全.一起来探讨下,到底有什么特点?案例演示地址:讯飞开放平台多生物特征融合认证方案 信息时代掉,队的身份验证 身处信息社会,如

我对说话人识别/声纹识别的研究综述

GMM-UBM系统框架 最初用的特征是声学特征MFCC,这个东西我不太熟,只知道它是从wav或者其它格式语音文件直接提出. 有了特征就可以建立模型了,这里我们的模型叫做"高斯混合模型".不同说话人的差异主要表现在其短时语音谱的差异,而这又可以用每个说话人的短时谱特征所具有的概率密度函数来衡量.高斯混合模型GMM将空间分布的概率密度用多个高斯概率密度函数的加权和来拟合,可以平滑地逼近任意形状的概率密度函数,并且是一个易于处理的参数模型.在具体表示上,这个模型实际上就是把高斯混合模型的每个