La ecuación de un filtro pasabajos digital de primer orden es:

    y[n]=\frac{x[n]+x[n-1]}{2}
    También es llamado filtro promediador, debido a que promedia las muestras de la entrada y por lo tanto suprime variaciones rápidas, característica que le otorga el carácter de pasabajos.En la ecuación se ve fácilmente que se esta promediando los valores de la señal en el instante actual y el anterior.Por ejemplo, si la entrada x[n] es (en instantes sucesivos):

    8    1    7    1

    se tiene:

    x[0] = 8    x[1] = 1    x[2] = 7    x[3] = 1

    se puede ver que los cambios abruptos (transiciones de 8 a 1, etc) se suavizan, ya que a la salida del filtro se tiene:

    y[1] = (8+1)/2 = 4.5   y[2] = (1+7)/2 = 4   y[3] = (7+1)/2 = 4

    y por lo tanto y[n] queda:

    4.5    4    4

    una señal mucho más “suave”.

    Nota: es muy similar a lo que hay en wikipedia en español porque antes lo habia escrito ahí.

    Ejemplo de aplicación a un archivo wav en matlab/octave:

    function [ salida ] = pasabajos(nombre)
    %Filtro pasabajos de 1er orden:
     
    [X,Fs,bits] = wavread(nombre); %carga el wav
    FX = fft(X);
     
    pfiltro = [1 1]; %orden 1, promediador de 2 muestras: y[n]=(x[n]+x[n-1])/2
     
    Y=1/2*filter(pfiltro,[1],X);
    FY = fft(Y);
     
    N=length(FX);
     
    if( mod(N,2) == 0 )
    	t = N/2;
    else
    	t = floor(N/2)+1;
    end
     
    rectaFrec=linspace(0,Fs/2,floor(N/2)+1);
     
    FX = fftshift(FX);
    FY = fftshift(FY);
     
    subplot(2,1,1)
    title(?Original?)
    Espectro=abs(FX(t:N));
    plot(rectaFrec,Espectro,?r'); %Grafico en funcion de la frecuencia en Hz
     
    subplot(2,1,2)
    title(?Pasabajos de 1er orden?)
    Espectro=abs(FY(t:N));
    plot(rectaFrec,Espectro,?b'); %Grafico en funcion de la frecuencia en Hz
     
    salida = Y;
    (el archivo original aquí)

    Share This/Compártelo


    (link al post completo)