Borrar filtros
Borrar filtros

strange output after using the Moving average filter

1 visualización (últimos 30 días)
Gova ReDDy
Gova ReDDy el 26 de Dic. de 2013
Comentada: Image Analyst el 26 de Dic. de 2013
Hello, I used a moving average filter of 30 order as shown below for the attached signal and the output of the moving average filter starts from the some other value instead of starting from the original input value when it comes for filtering the new set of values there is new set input values as shown in the image with the green portion
P=load('Noise_Pulse_signal.mat');
a2=P.a1;
x1=a2(1:500,:);
for i=1:500:length(a2)-1500
x1=a2(i:i+499,:);
movingAverage = conv2(x1,ones(30,1)/30, 'same');
Mov_avrg(i:i+499,:)=movingAverage;
input(i:i+499,:)=x1;
end;
plot(input);hold on;plot(Mov_avrg,'-r');
hleg1 = legend('input','MovAvrg');
Can someone explain the reason for this.

Respuestas (1)

Image Analyst
Image Analyst el 26 de Dic. de 2013
The 'same' option assumes that the signal is zero outside of the signal. So the part of the window that spills outside the signal is zero, which is less than your signal. So it makes absolute prefect sense that the first 15 and last 15 elements of your moving average signal will be lower than the input signal.
  2 comentarios
Gova ReDDy
Gova ReDDy el 26 de Dic. de 2013
thankyou and Is there any way of modifying the filter so that the filter will response will start from the same intial value as the input.
Image Analyst
Image Analyst el 26 de Dic. de 2013
I don't think you know how the filter works. To have the window fully covering the signal, the center of the window has to be half a window's width inside the signal. Just draw it out and you'll see. There is a 'valid' option which will use that case but the output will be a window's width shorter than the input signal for obvious reasons.

Iniciar sesión para comentar.

Categorías

Más información sobre Matched Filter and Ambiguity Function en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by