Introduction à la fonction de filtrage dans Matlab

Cette fonction filtre la séquence de données en utilisant un filtre numérique, la sortie du filtrage consiste essentiellement à lisser ou à affiner le signal (en éliminant la plage de fréquence spécifique). Elle est directement issue de l'implémentation du signal II (équation de différence standard). Il existe quatre façons de représenter les filtres dans Matlab comme suit:

  1. Sortie = filtre (coeff b, coeff a, x)
  2. Sortie = filtre ((b, a, x, z)
  3. Filtre (b, a, x, z, dim)
  4. F, zf = filtre ()

Syntaxe et exemples

Voici la syntaxe et des exemples de fonction de filtre dans Matlab:

1. Sortie = filtre (coeff b, coeff a, x)

  • Cette modélisation a utilisé une fonction de transfert rationnelle sur le signal d'entrée «x». Dans l'équation ci-dessus, a et b sont les coefficients du numérateur et du dénominateur du signal.
  • Dans ce cas, il est obligatoire d'avoir a (1) est 1 donc, nous normalisons le coefficient à 1 pour satisfaire cette condition a (1) ne doit pas être égal à zéro alors seulement nous pouvons normaliser le coefficient.
  • La sortie du filtre dépend du type d'entrée «x».
  • Si l'entrée 'x' est vectorielle, alors nous obtenons la sortie 'z' comme vecteur.
  • Si le signal d'entrée «x» est matriciel, nous obtenons un signal de sortie «z» par rapport à chaque colonne.
  • Et s'il s'agit d'un signal multidimensionnel, nous obtenons une sortie par rapport au premier tableau.

Exemple

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')

Production:

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

  • S'il existe des limitations de mémoire dans la conception, certains filtres prennent en compte la condition initiale et la condition finale.
  • Ces filtres créent des données volumineuses et divisent l'entrée en deux segments.

Exemple

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

Production:

La sortie du code ci-dessus est 1, ce qui signifie 1 logique, 1 logique est une condition vraie.

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

Ce type de filtre est utilisé pour la conception d'entrées et de sorties matricielles.

Exemple

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')

Production:

4. F, zf = filtre ()

S'il y a une limitation de mémoire, ce type de filtre est utilisé, il utilise les conditions initiale et finale et divise le signal d'entrée en deux segments.

Exemple

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

Production:

La sortie du signal ci-dessus est logique 1, ce qui signifie que la condition est vraie.

Conclusion - Fonction de filtrage dans Matlab

La fonction de filtre principalement utilisée pour implémenter le filtre de moyenne mobile. Le filtrage à moyenne mobile est la méthode de lissage la plus simple et la plus courante. le filtrage est également utilisé pour éliminer le bruit.

Articles recommandés

Ceci est un guide de la fonction de filtrage dans Matlab. Nous discutons ici de l'introduction et des différents exemples de fonction de filtre dans matlab ainsi que de sa syntaxe. Vous pouvez également consulter les articles suivants pour en savoir plus-

  1. Fonctions en ligne dans Matlab
  2. Fonctions de transfert dans Matlab
  3. Fonctions anonymes dans Matlab
  4. Questions d'entretiens chez MATLAB
  5. Fonctions MATLAB
  6. Compilateur Matlab | Applications du compilateur Matlab

Catégorie: