短时能量基于matlab语音信号短时能量含Matlab源码 1719期
Posted 紫极神光
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了短时能量基于matlab语音信号短时能量含Matlab源码 1719期相关的知识,希望对你有一定的参考价值。
一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【短时能量】基于matlab语音信号短时能量【含Matlab源码 1719期】
获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、短时能量简介
1 原理
2 语音信号的读取
2.1 函数使用示例1
[y,Fs] = audioread(filename) 从名为 filename 的文件中读取数据,并返回样本数据 y 以及该数据的采样率 Fs。
2.2 函数使用示例2
[y,Fs] = audioread(filename,samples) 读取文件中所选范围的音频样本,其中 samples 是 [start,finish] 格式的向量。也就是说你可以得到任意一段的音频数据
2.3 函数使用示例3
[y,Fs] = audioread(___,dataType) 返回数据范围内与 dataType(‘native’ 或 ‘double’)对应的采样数据,可以包含先前语法中的任何输入参数
3 语音信号的分帧
3.1 分帧原理
为了分析读入数据,通常进行分帧处理。在分帧中,往往设置在相邻两帧之间有一部分重叠。
3.2 计算分帧后的对应时间
三、部分源代码
clear all; clc; close all;
filedir=[]; % 设置路径
filename='s.wav'; % 设置文件名
fle=[filedir filename]; % 构成完整的路径和文件名
[x,Fs]=audioread(fle); % 读入数据文件
wlen=200; inc=80; % 给出帧长和帧移
win=hanning(wlen); % 给出海宁窗
N=length(x); % 信号长度
X=enframe(x,win,inc)'; % 分帧
fn=size(X,2); % 求出帧数。size函数里选择1时是返回行数,2是返回列数
time=(0:N-1)/Fs; % 计算出信号的时间刻度
四、运行结果
五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.
[2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.
[3]宋云飞,姜占才,魏中华.基于MATLAB GUI的语音处理界面设计[J].科技信息. 2013,(02)
以上是关于短时能量基于matlab语音信号短时能量含Matlab源码 1719期的主要内容,如果未能解决你的问题,请参考以下文章
语音分析基于matlab短时自相关基音周期检测+LPC预测增益计算含Matlab源码 1517期
数字信号处理基于matlab数字信号离散序列短时傅里叶变换含Matlab源码 1545期