clear windowSize=101; sampleLength=1000; hairio=rand(1,sampleLength); for I=1:sampleLength/2 x(I)=-2+hairio(I); end for I=sampleLength/2+1:sampleLength x(I)=2+hairio(I); end xm=medfilt1(x,windowSize); xlp=filter(ones(1,windowSize)/windowSize,1,x); hold on plot(x) plot(xm,'+red') plot(xlp,'black') grid hold off
Sininen viiva | Alkuperäinen kohinaa sisältävä signaali (1000 näytettä) |
Paksu punainen viiva | Mediaanisuodatettu signaali (ikkunan pituus 101 näytettä) |
Musta viiva | Alipäästösuodatettu signaali (keskiarvottava suodatin, ikkunan pituus 101 näytettä) |