📄 不同信噪比下sin函数zcr.m
字号:
n=0:0.002:4;
y=sin(100*pi*n);
subplot(4,1,1);%做出图像
axis([0 length(y) -1 1]);
plot(y);
x=awgn(y,0.05);
subplot(4,1,2);%做出图像
plot(x);
axis([0 length(x) -1 1]);
%--------------------------------------------------------------------------
Framelen = 200;%帧长
Framemove = 80;%帧移
%--------------------------------------------------------------------------
A1 = enframe(x(1:end-1), Framelen, Framemove);%采样信号中第一值到第N-1个信号值
A2 = enframe(x(2:end) , Framelen, Framemove);%采样信号中第二值到第N个信号值
signs = (A1.*A2)<0;%signs为符号数组,用于存储相邻两个采样点的符号是否相同,即是否
%穿过零电平
W = abs(A1 -A2)>0.02;%W用来度量相邻两个采样点之间的距离,如果距离大于门限0.02(经验值),
%则为1,否则为0.
ZC = sum(signs.*W, 2);%单帧过零次数
ZCR=ZC/(20*0.02);%短时过零率
subplot(4,1,3);%做出图像
plot(ZCR);%单体坐标
axis([0 length(ZCR) 0 max(ZCR)+100])%坐标横纵轴设置
xlabel('ZCR');%坐标名
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -