【语音识别】基于MFCC和MEL倒频系数实现声纹识别附matlab代码

简介: 【语音识别】基于MFCC和MEL倒频系数实现声纹识别附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

随着科技的进步和先进生活理念的日益深入,智慧家庭(Smart Home-SH)正逐步成为现实。尤其是近年来互联网、人工智能、生物识别等技术的突飞猛进,对SH的发展提供了更多方面的参考,可以广泛的应用于日常生活中,让科技的进步造福人类。然而,现在的生物识别技术尤其是声纹识别,除了在重要的安全部门,即便是在国外,很少见于SH的领域。 本文针对声纹识别在智慧家庭领域的应用及其相关问题进行了详细的分析和深入的研究。主要研究了以下几个方面:说话人语音识别系统,对能够反映人对语音感知特性的Mel频率倒谱系数(MFCC)作为特征参数进行提取。

⛄ 部分代码

function m = melfb(p, n, fs)

% MELFB         Determine matrix for a mel-spaced filterbank

%

% Inputs:       p   number of filters in filterbank

%               n   length of fft

%               fs  sample rate in Hz

%

% Outputs:      x   a (sparse) matrix containing the filterbank amplitudes

%                   size(x) = [p, 1+floor(n/2)]

%

% Usage:        For example, to compute the mel-scale spectrum of a

%               colum-vector signal s, with length n and sample rate fs:

%

%               f = fft(s);

%               m = melfb(p, n, fs);

%               n2 = 1 + floor(n/2);

%               z = m * abs(f(1:n2)).^2;

%

%               z would contain p samples of the desired mel-scale spectrum

%

%               To plot filterbanks e.g.:

%

%               plot(linspace(0, (12500/2), 129), melfb(20, 256, 12500)'),

%               title('Mel-spaced filterbank'), xlabel('Frequency (Hz)');


f0 = 700 / fs;

fn2 = floor(n/2);


lr = log(1 + 0.5/f0) / (p+1);


% convert to fft bin numbers with 0 for DC term

bl = n * (f0 * (exp([0 1 p p+1] * lr) - 1));


b1 = floor(bl(1)) + 1;

b2 = ceil(bl(2));

b3 = floor(bl(3));

b4 = min(fn2, ceil(bl(4))) - 1;


pf = log(1 + (b1:b4)/n/f0) / lr;

fp = floor(pf);

pm = pf - fp;


r = [fp(b2:b4) 1+fp(1:b3)];

c = [b2:b4 1:b3] + 1;

v = 2 * [1-pm(b2:b4) pm(1:b3)];


m = sparse(r, c, v, p, 1+fn2);


⛄ 运行结果

⛄ 参考文献

[1] 于树本. 基于MFCC的说话人语音识别系统的研究[J]. 黑龙江科技信息, 2015.

[2] 于树本. 基于MFCC的说话人语音识别系统的研究[J]. 黑龙江科技信息, 2015(27):77-78.

[3] 李文. 智慧家庭中声纹识别技术的研究与实现[D]. 东北大学.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关实践学习
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
相关文章
|
5月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
522 0
|
5月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
186 0
|
5月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
267 8
|
5月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
278 8
|
5月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
208 8
|
5月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
531 0
|
5月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
209 0
|
5月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
308 8
|
5月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
405 12
|
5月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
198 9

热门文章

最新文章