【语音识别】基于MPCC+IPL特征结合SVM实现中英语种识别含Matlab源码

简介: 【语音识别】基于MPCC+IPL特征结合SVM实现中英语种识别含Matlab源码

1 简介

语种识别系统通常采用支持向量机(support vectormachine,SVM)一对多分类加Gauss后端分类器的方法进行分类.传统的SVM一对一分类在进行线性鉴别性分析(linear discriminant analysis,LDA)时特征值矩阵往往为奇异的,识别性能很低.该文提出一种改进的一对一分类方法,对SVM一对一分类得分重新建模,识别性能明显提高.在美国国家标准技术署(National Institute of Standardsand Technology,NIST)2011年语种识别评测(languagerecognition evaluation,LRE)30s数据集上的实验结果表明:在采用SVM的全变化量因子分析(total variability,iVector)和支持向量机-Gaussn超向量(support vectormachine-Gaussian super vector,SVM-GSV)语种识别系统上,该方法比SVM一对多分类方法性能更好,并且两种方法线性融合可明显提升识别性能,在iVector系统上各指标相对提升7.7%~15.9%,在SVM-GSV系统上各指标相对提升11.2%~33.9%.

2 部分代码

%提取基音周期,得到1*N维的特征向量function PCH=framepitches(x,fs,zchang,zyi)[nrows,ncols]=size(x); if nrows>1    x=x';enddata=enframe(x,zchang,zyi);[nframe,flen]=size(data);for ij=1:nframe,    R=zeros(1,flen);                 %基音周期(n)多次分析数组      for k=1:flen-1                   %求自相关序列       for jj=1:flen-k         R(k)=R(k)+data(ij,jj)*data(ij,jj+k);       end     end     zer=find(R==0);  %找第一个零点如果存在     jiaocha=0;       %找第一近零点    ii=1;    while (jiaocha<=0)        if(R(ii)>0 && R(ii+1)<0 && (ii+1)<length(R))            jiaocha=ii;        end        ii=ii+1;        if ii==length(R)  %没有找到符合要求的点            jiaocha=1;        end    end    if length(zer)>0     %检查是否存在零点        if zer(1)<jiaocha  %存在,则和jiaocha比较大小,用于祛除前点的对基音周期的查找带来的影响        jiaocha=zer(1);        end    end    R(1:jiaocha)=0; %祛除影响    maxn=max(R);    %找最大值    temp=find(R==maxn);%返回第一个最大值    nmax=temp(1);    pitch=fs/nmax;    PCH(1,ij)=pitch;        end

3 仿真结果

4 参考文献

[1]王宪亮, 吴志刚, 杨金超,等. 基于SVM一对一分类的语种识别方法[J]. 清华大学学报:自然科学版, 2013(6):5.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

相关实践学习
一键创建和部署高分电影推荐语音技能
本场景使用天猫精灵技能应用平台提供的技能模板,在2-5分钟内,创建一个好玩的高分电影推荐技能,使用模板后无须代码开发,系统自动配置意图、实体等,新手0基础也可体验创建技能的乐趣。
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
1月前
|
算法
【MATLAB】语音信号识别与处理:滑动平均滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:滑动平均滤波算法去噪及谱相减算法呈现频谱
44 0
|
1月前
|
算法
【MATLAB】语音信号识别与处理:T1小波滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:T1小波滤波算法去噪及谱相减算法呈现频谱
31 0
|
1月前
|
算法
【MATLAB】语音信号识别与处理:SG滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:SG滤波算法去噪及谱相减算法呈现频谱
41 1
|
1月前
|
算法
【MATLAB】语音信号识别与处理:移动中位数滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:移动中位数滤波算法去噪及谱相减算法呈现频谱
23 2
|
1月前
|
算法
【MATLAB】语音信号识别与处理:卷积滑动平均滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:卷积滑动平均滤波算法去噪及谱相减算法呈现频谱
32 0
|
1月前
|
算法
【MATLAB】语音信号识别与处理:一维信号NLM非局部均值滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:一维信号NLM非局部均值滤波算法去噪及谱相减算法呈现频谱
39 1
|
1月前
|
算法
【MATLAB】语音信号识别与处理:高斯加权移动平均滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:高斯加权移动平均滤波算法去噪及谱相减算法呈现频谱
94 0
|
15天前
|
存储 人工智能 机器人
【Matlab】Matlab 汉/英语(A/a)声学特征比较与基音频率分析(源码+音频文件)【独一无二】
【Matlab】Matlab 汉/英语(A/a)声学特征比较与基音频率分析(源码+音频文件)【独一无二】
|
15天前
|
存储 人工智能 机器人
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
【Matlab】Matlab电话拨号音合成与识别(代码+论文)【独一无二】
|
1月前
|
机器学习/深度学习 算法 生物认证
基于深度学习的人员指纹身份识别算法matlab仿真
这是一个关于使用深度学习进行指纹识别的算法概述。在matlab2022a环境下,通过预处理指纹图像(灰度化、二值化等)并利用卷积神经网络(CNN)提取特征。CNN架构包含卷积、池化、归一化和全连接层。特征向量通过余弦相似度计算匹配,训练时采用triplet loss优化。部分核心代码展示了加载预训练模型进行测试集分类预测并计算准确率的过程。

热门文章

最新文章