Introduksjon til filterfunksjon i Matlab

Denne funksjonen filtrerer datasekvensen ved å bruke et digitalt filter. Utgangen fra filtrering er i utgangspunktet jevn eller skjerping av signalet (eliminerer spesifikt frekvensområde). Det er direkte fra II-implementering av signal (standardforskjellsligning). Det er fire måter å representere filtre i Matlab på følgende måte:

  1. Utgang = filter (koeffis b, koeffis a, x)
  2. Utgang = filter ((b, a, x, z)
  3. Filter (b, a, x, z, dim)
  4. F, zf = filter ()

Syntaks og eksempler

Nedenfor er syntaks og eksempler på filterfunksjon i Matlab:

1. Utgang = filter (koeffis b, koeffis a, x)

  • Denne modelleringen brukte rasjonell overføringsfunksjon på inngangssignalet 'x'. I den ovennevnte ligning er a og b teller og nevnerkoeffisienter for signal.
  • I dette tilfellet er det obligatorisk å ha en (1) er 1 så vi normaliserer koeffisienten til 1 for å tilfredsstille denne betingelsen a (1) skal ikke være lik null, bare vi kan normalisere koeffisienten.
  • Utgangen til filteret avhenger av inngangstypen 'x'.
  • Hvis input 'x' er vektor, får vi output 'z' som en vektor.
  • Hvis inngangssignalet 'x' er matrise, får vi et utsignal 'z' i forhold til hver kolonne.
  • Og hvis det er et flerdimensjonalt signal, får vi output med hensyn til den første matrisen.

Eksempel

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

Produksjon:

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

  • Hvis det er hukommelsesbegrensninger i utformingen, vurderer noen filtre den opprinnelige tilstanden og den endelige tilstanden.
  • Disse filtrene lager store data og deler inndata i to segmenter.

Eksempel

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

Produksjon:

Utgangen til koden ovenfor er 1 som betyr logisk 1, logisk 1 er en sann tilstand.

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

Denne typen filter brukes til matriseinngang og utgangsdesign.

Eksempel

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

Produksjon:

4. F, zf = filter ()

Hvis det er minnebegrensning, brukes denne typen filter, det brukte start- og sluttbetingelser, og det deler inngangssignalet i to segmenter.

Eksempel

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

Produksjon:

Utgangen fra signalet ovenfor er logisk 1 som betyr at tilstanden er sann.

Konklusjon - Filterfunksjon i Matlab

Filterfunksjonen brukes hovedsakelig til å implementere Moving gemiddelde filter. Bevegende gjennomsnittlig filtrering er den enkleste og vanlige metoden for å jevne ut. filtrering brukes også til å fjerne støy.

Anbefalte artikler

Dette er en guide til filterfunksjon i Matlab. Her diskuterer vi introduksjonen og forskjellige eksempler på filterfunksjon i matlab sammen med syntaks. Du kan også se på følgende artikler for å lære mer-

  1. Inline-funksjoner i Matlab
  2. Overfør funksjoner i Matlab
  3. Anonyme funksjoner i Matlab
  4. MATLAB intervjuspørsmål
  5. MATLAB-funksjoner
  6. Matlab Compiler | Bruksområder av Matlab Compiler

Kategori: