Sissejuhatus Matlabi filtrifunktsioonidesse

See funktsioon filtreerib andmejada digitaalse filtri abil, filtreerimise väljundiks on põhimõtteliselt signaali silumine või teritamine (spetsiifilise sagedusvahemiku välistamine). See on otsene signaali II rakendamisest (standardne erinevusvõrrand). Matlabis on filtrite esitamiseks neli võimalust:

  1. Väljund = filter (koef. B, koef. A, x)
  2. Väljund = filter ((b, a, x, z)
  3. Filter (b, a, x, z, tuhm)
  4. F, zf = filter ()

Süntaks ja näited

Allpool on toodud Matlati filtrifunktsioonide süntaks ja näited:

1. Väljund = filter (koef. B, koef. A, x)

  • See modelleerimine kasutas sisendsignaali 'x' ratsionaalset ülekandefunktsiooni. Ülaltoodud võrrandis on a ja b signaali lugeja ja nimetaja koefitsiendid.
  • Sel juhul on kohustuslik, et (1) oleks 1, nii et selle tingimuse täitmiseks normaliseerime koefitsiendi väärtuseks 1 (a) (1) ei tohiks olla võrdne nulliga, siis saab koefitsienti normaliseerida ainult siis.
  • Filtri väljund sõltub sisendi 'x' tüübist.
  • Kui sisend 'x' on vektor, siis saame väljundina 'z' vektorina.
  • Kui sisendsignaal 'x' on maatriks, saame iga kolonni suhtes väljundsignaali 'z'.
  • Ja kui see on mitmemõõtmeline signaal, siis saame väljundi esimese massiivi suhtes.

Näide

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

Väljund:

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

  • Kui kujundamisel on mälupiiranguid, arvestavad mõned filtrid algse ja lõpliku tingimusega.
  • Need filtrid loovad suured andmed ja jagavad sisendi kaheks segmendiks.

Näide

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

Väljund:

Ülaltoodud koodi väljund on 1, mis tähendab loogilist 1, loogiline 1 on tõeline tingimus.

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

Seda tüüpi filtrit kasutatakse maatriksi sisendi ja väljundi kujundamiseks.

Näide

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

Väljund:

4. F, zf = filter ()

Kui mälu on piiratud, siis kasutatakse seda tüüpi filtrit, kasutatakse alg- ja lõpptingimusi ning see jagab sisendsignaali kaheks segmendiks.

Näide

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

Väljund:

Ülaltoodud signaali väljund on loogiline 1, mis tähendab, et tingimus on tõene.

Järeldus - filtri funktsioon Matlabis

Filtri funktsiooni kasutatakse peamiselt liikuva keskmise filtri rakendamiseks. Liikuv keskmine filtreerimine on lihtsaim ja levinum meetod silumiseks. filtreerimist kasutatakse ka müra eemaldamiseks.

Soovitatavad artiklid

See on Matlabi filtrifunktsiooni juhend. Siin käsitleme Matlabi filtrifunktsiooni tutvustamist ja erinevaid näiteid koos selle süntaksiga. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Sisefunktsioonid Matlabis
  2. Funktsioonide ülekandmine Matlabis
  3. Anonüümsed funktsioonid Matlabis
  4. MATLABi intervjuuküsimused
  5. MATLAB-i funktsioonid
  6. Matlabi koostaja | Matlab Compileri rakendused

Kategooria: