getf0.m
来自「语音处理平台 可以分析语音能量 第一振峰频率等数据」· M 代码 · 共 38 行
M
38 行
function [avgF0, f01] = getf0 (sr,x)
% Copyright (c) 1995 Philipos C. Loizou
%
n_samples=length(x);
fRate=floor(40*sr/1000); % -- Use a 40 msec segment
nFrames=floor(2*n_samples/fRate);
k=1;
f01=zeros(1,nFrames-1);
f0=zeros(1,nFrames-1);
m=1;
avgF0=0.0;
for t=1:nFrames-1
yin=x(k:k+fRate-1);
a=pitch(fRate,sr,yin);
f0(t)=a;
if t>2 %--do some median filtering
z=f0(t-2:t);
md=median(z);
f01(t-2)=md;
end
if a > 0
avgF0=avgF0+a;
m=m+1;
end
k=k+fRate/2;
end
avgF0=avgF0/m;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?