Introducción a la función de filtro en Matlab

Esta función filtra la secuencia de datos mediante el uso de un filtro digital, la salida del filtrado es básicamente suavizar o agudizar la señal (eliminando el rango de frecuencia específico). Es directo desde la implementación II de la señal (ecuación de diferencia estándar). Hay cuatro formas de representar filtros en Matlab de la siguiente manera:

  1. Salida = filtro (coeff b, coeff a, x)
  2. Salida = filtro ((b, a, x, z)
  3. Filtro (b, a, x, z, dim)
  4. F, zf = filtro ()

Sintaxis y ejemplos

A continuación se encuentran la sintaxis y ejemplos de la función de filtro en Matlab:

1. Salida = filtro (coeff b, coeff a, x)

  • Este modelado utilizó la función de transferencia racional en la señal de entrada 'x'. En la ecuación anterior, ayb son los coeficientes de señal de numerador y denominador.
  • En este caso, es obligatorio tener un (1) es 1, entonces, normalizamos el coeficiente a 1 para satisfacer esta condición, a (1) no debe ser igual a cero, entonces solo podemos normalizar el coeficiente.
  • La salida del filtro depende del tipo de entrada 'x'.
  • Si la entrada 'x' es vector, obtenemos la salida 'z' como vector.
  • Si la señal de entrada 'x' es matriz entonces obtenemos una señal de salida 'z' con respecto a cada columna.
  • Y si es una señal multidimensional, obtenemos salida con respecto a la primera matriz.

Ejemplo

T = linspace(-pi, pi, 100 );
X = sin( t ) + 0.50 * rand ( size( t )) ;
w_size = 5;
b = ( 1 /w_size ) * ones( 1, w_size ) ;
a = 1 ;
f = filter ( coeff b, coeff a, x ) ;
plot ( t, x )
hold on
plot ( t, f )
legend ( 'Input ', 'Filter Data')

Salida:

2. F = filtro ((b, a, x, z)

  • Si existen limitaciones de memoria en el diseño, algunos filtros consideran la condición inicial y la condición final.
  • Estos filtros crean datos grandes y dividen la entrada en dos segmentos.

Ejemplo

x = randn( 110000, 1 ); - - - creation of input sequence x (1 to 110000)
x1 = x ( 1 : 51000 ) ; - - - splitting the seq. x1= 1 to 51000
x2 = x ( 51001 : end ) ; - - - second seg is x2 = 51000 to 110000
b = ( 4, 3 ) ; - - - numerator coefficient
a = ( 1, 0.4 ) ; - - - denominator coefficient
( f1, zf ) = filter ( b, a, x1 ) ; - - - filter function
f2 = filter ( b, a, x2, zf ) ; - - - filter function
f = filter ( b, a, x ) ; - - - filter function
isequal( f, ( f1 ; f2 ) ) - - - filter function matching

Salida:

La salida del código anterior es 1 que significa 1 lógico, 1 lógico es una condición verdadera.

3. Filtro (b, a, x, z, dim)

Este tipo de filtro se utiliza para el diseño de entrada y salida de matriz.

Ejemplo

rng default
x = rand ( 3, 10 ) ; - - - creation of input sequence 3 by 10
b = 1 ; - - - coefficient of numerator
a = ( 4 -0 .1 ) ; - - - coefficient of numerator
f = filter ( b, a, x, ( ), 2 ) ; - - - filter function
t = 0 : length (input seq. )-1 ;
plot ( t, x ( 1, : ) ) - - - input signal
hold on
plot ( t, f ( 1, : ) ) - - - output signal
legend('Input ', 'Filter output')

Salida:

4. F, zf = filtro ()

Si hay limitación de memoria, entonces se usa este tipo de filtro, usa condiciones iniciales y finales y divide la señal de entrada en dos segmentos.

Ejemplo

x = randn ( 110000, 1 ) ; - - - create random signal
x1 = x ( 1 : 51000 ) ; - - - splits signal from 1 to 51000
x2 = x ( 51001 : end ) ; - - - second input signal 51001 to 110000
b = ( 6, 3 ); . - - -numerator coefficient
a = ( 1, 0.9 ) ; - - - denominator coefficient
( f1, zf ) = filter ( b, a, x1 ) ; - - - filter function
f2 = filter ( b, a, x2, zf ) ; . - - - filter function
f = filter ( b, a, x) ; - - - .filter function
isequal ( f, ( f1 ; f2 ) ) - - - output signal matching

Salida:

La salida de la señal anterior es 1 lógico, lo que significa que la condición es verdadera.

Conclusión - Función de filtro en Matlab

La función de filtro se utiliza principalmente para implementar filtro de media móvil. El filtrado de promedio móvil es el método más simple y común de suavizado. El filtrado también se utiliza para eliminar el ruido.

Artículos recomendados

Esta es una guía para la función de filtro en Matlab. Aquí discutimos la introducción y diferentes ejemplos de la función de filtro en matlab junto con su sintaxis. También puede consultar los siguientes artículos para obtener más información.

  1. Funciones en línea en Matlab
  2. Funciones de transferencia en Matlab
  3. Funciones anónimas en Matlab
  4. Preguntas de la entrevista de MATLAB
  5. Funciones de MATLAB
  6. Compilador Matlab | Aplicaciones del compilador Matlab

Categoría: