matlab-program.txt

来自「运用MATLAB对波形的进行最优预处理」· 文本 代码 · 共 56 行

TXT
56
字号
clear
clc

%打开数据文件----------------------
[k,s]=fopen('12.txt');
a=fscanf(k,'%g');
a1=a;
fclose all;


%去奇点(异常的噪点)------------------------
b=size(a);
for i=2:b-1;
 if a(i)>=a(i+1)+10&a(i)>=a(i-1)+10;
     
    a(i)=(a(i-1)+a(i+1))./2;
     
 end
 if a(i)+8<=a(i+1)&a(i)+8<=a(i-1);
     
     a(i)=(a(i-1)+a(i+1))./2;
 end
end
 a2=a;
 
 %平滑(去毛刺)----------------------------
b=size(a);
for l=1:4;
for i=2:b-1;
if a(i)>=a(i+1)&a(i)>=a(i-1);
     c=(a(i)+a(i-1)+a(i+1))./3;
     a(i)=c;
     a(i+1)=c;
     a(i-1)=c;
 end
 if a(i)<=a(i+1)&a(i)<=a(i-1);
     c=(a(i)+a(i-1)+a(i+1))./3;
     a(i)=c;
     a(i+1)=c;
     a(i-1)=c;
 end
 
 
 
 
end
end

%画出处理前后的对比曲线图-----------------------
subplot(311);
plot(a1);
subplot(312);
plot(a2);
subplot(313);
plot(a);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?