Introduktion till filterfunktion i Matlab

Denna funktion filtrerar datasekvensen med hjälp av ett digitalt filter, filtreringens utgång är i princip utjämning eller skärpning av signalen (eliminerar specifikt frekvensområde). Det är direkt från II-implementering av signal (standardskillnadsekvation). Det finns fyra sätt att representera filter i Matlab enligt följande:

  1. Utgång = filter (koeff b, koeff a, x)
  2. Utgång = filter ((b, a, x, z)
  3. Filter (b, a, x, z, dim)
  4. F, zf = filter ()

Syntax och exempel

Nedan är syntax och exempel på filterfunktion i Matlab:

1. Utgång = filter (koeff b, koeff a, x)

  • Denna modellering använde rationell överföringsfunktion på insignalen 'x'. I ovanstående ekvation är a och b tecken- och nämnarkoefficienterna för signal.
  • I det här fallet är det obligatoriskt att ha en (1) är 1 så vi normaliserar koefficienten till 1 för att uppfylla detta villkor a (1) ska inte vara lika med noll, bara vi kan normalisera koefficienten.
  • Filtrets utgång beror på typen av ingång 'x'.
  • Om input 'x' är vektor så får vi output 'z' som en vektor.
  • Om insignalen 'x' är matris får vi en utsignal 'z' med avseende på varje kolumn.
  • Och om det är en multidimensionell signal får vi utmatning med avseende på den första matrisen.

Exempel

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

Produktion:

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

  • Om det finns minnesbegränsningar i utformningen beaktar vissa filter det initiala villkoret och det slutliga villkoret.
  • Dessa filter skapar stora data och delar in input i två segment.

Exempel

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

Produktion:

Utgången från ovanstående kod är 1 som betyder logisk 1, logisk 1 är ett riktigt villkor.

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

Denna typ av filter används för matrisinmatning och utgångsdesign.

Exempel

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

Produktion:

4. F, zf = filter ()

Om det finns minnesbegränsning används den här typen av filter, det använde initiala och slutliga förhållanden och det delar in insignalen i två segment.

Exempel

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

Produktion:

Utgången från ovanstående signal är logisk 1 vilket betyder att villkoret är sant.

Slutsats - Filterfunktion i Matlab

Filterfunktionen används huvudsakligen för att implementera rörligt medelfilter. Rörligt medelfiltrering är den enklaste och vanligaste metoden för utjämning. filtrering används också för att ta bort brus.

Rekommenderade artiklar

Detta är en guide till filterfunktion i Matlab. Här diskuterar vi introduktionen och olika exempel på filterfunktion i matlab tillsammans med dess syntax. Du kan också titta på följande artiklar för att lära dig mer-

  1. Inlinefunktioner i Matlab
  2. Överför funktioner i Matlab
  3. Anonyma funktioner i Matlab
  4. MATLAB Intervjufrågor
  5. MATLAB-funktioner
  6. Matlab Compiler | Användningar av Matlab Compiler

Kategori: