有人知道MFCC参数提取的MATLAB程序吗?

有人知道MFCC参数提取的MATLAB程序吗?,第1张

%mfcc

function mfc=mfcc(x)

%%%%%%%%%%%%%%%%%%%%%%%%%

%对输入的语音序列x进行mfcc参数提取,返回mfcc参数和一阶差分mfcc参数,mel滤波器的阶数为24

%fft变换长度为256,采样频率为8000HZ,对x 256点分为一帧

%%%%%%%%%%%%%%%%%%%%%%%%%%%%

bank=melbankm(24,256,8000,0,0.5,'m')

%归一化mel滤波器组参数

bank=full(bank)

bank=bank/max(bank((:))

%DCT系数,12*24

for k=1:12

n=0:23

dctcoef(:,k)=cos((2*n+1)*k*pi/(2*24))

end

%归一化倒谱提升窗口

w=1+6*sin(pi*[1:12]./12)

w=w/max(w)

%预加重滤波器

xx=double(x)

xx=filter([1 -0.9375],1,xx)

%语音信号分帧

xx=enframe(xx,256,80)

%计算每帧的mfcc参数

for i=1:size(xx,1) %

y=xx(i,:)

s=y'.*hamming(256)

t=abs(fft(s))

t=t.^2%计算能量

c1=dctcoef*log(bank*t(1:129))%dctcoef为dct系数,bank归一化mel滤波器组系数

c2=c1.*w'%w为归一化倒谱提升窗口

m(i,:)=c2'

end

%差分系数

dtm=zeros(size(m))

for i=3:size(m,1)-2

dtm(i,:)=-2*(i-2,:)-m(i-1,1)+2*m(i+2,:)

end

dtm=dtm/3

%合并mfcc参数和一阶差分mfcc参数

mfc=[m dtm]

%去除首尾两帧,因为这两帧的一阶差分参数为0

mfc=mfc(3:size(m,1)-2,:)

局域网查看器的具体 *** 作方法如下:

1、运行程序后,一般我是先点击【搜索计算机】,看看有哪些同事在局域网上

2、如果我想与某位同事联系业务可先点击【发消息】→在【添加计算机】的左边输入此人IP地址→点击【添加计算机】→然后在【消息内容】的下方框中输入需要发送的文字→点击【发送】→这时在上面的【是否成功】可以看到消息内容是否发送成功

3、【搜索共享文件】点击后即可罗列出局域网内可供使用的共享资源都在哪个机器的什么目录下

4、【查找文件】点击后即可在局域网内可供使用的共享资源中查找指定的文件或类型

5、【复制文件】就不用解释了吧? ^_^

6、【远程管理】一般用不着,它是专门供网络管理员使用的例如某人出差了,可其他的人要调用其机器上的共享数据资源时,网络管理员使用【远程管理】功能可将此人的电脑唤醒(当然电脑中必须装客户端程序,而且电脑不能断电关闭,而是处于休眠待机状态)

7、局域网查看工具(LanSee)是一款对局域网上的各种信息进行查看的工具,该软件是一款绿色软件,解压后直接打开运行,无需安装,支持在线升级。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11132046.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存