Introdução à função de filtro no Matlab

Esta função filtra a sequência de dados usando um filtro digital; a saída da filtragem é basicamente suavizar ou aprimorar o sinal (eliminando a faixa de frequência específica). É direto da II implementação do sinal (equação da diferença padrão). Existem quatro maneiras de representar filtros no Matlab da seguinte maneira:

  1. Saída = filtro (coeficiente b, coeficiente a, x)
  2. Saída = filtro ((b, a, x, z)
  3. Filtro (b, a, x, z, dim)
  4. F, zf = filtro ()

Sintaxe e Exemplos

Abaixo estão a sintaxe e os exemplos de função de filtro no Matlab:

1. Saída = filtro (coeficiente b, coeficiente a, x)

  • Essa modelagem usou a função de transferência racional no sinal de entrada 'x'. Na equação acima, a e b são os coeficientes de numerador e denominador do sinal.
  • Nesse caso, é obrigatório ter um (1) é 1, portanto, normalizamos o coeficiente para 1 para satisfazer essa condição a (1) não deve ser igual a zero, apenas podemos normalizar o coeficiente.
  • A saída do filtro depende do tipo de entrada 'x'.
  • Se a entrada 'x' é um vetor, obtemos a saída 'z' como um vetor.
  • Se o sinal de entrada 'x' for matriz, obteremos um sinal de saída 'z' em relação a cada coluna.
  • E se for um sinal multidimensional, obtemos saída com relação ao primeiro array.

Exemplo

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

Resultado:

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

  • Se houver limitações de memória no design, alguns filtros consideram a condição inicial e a condição final.
  • Esses filtros criam grandes dados e dividem a entrada em dois segmentos.

Exemplo

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

Resultado:

A saída do código acima é 1 que significa lógico 1, lógico 1 é uma condição verdadeira.

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

Esse tipo de filtro é usado para o design de entrada e saída da matriz.

Exemplo

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

Resultado:

4. F, zf = filtro ()

Se houver limitação de memória, esse tipo de filtro é usado, ele usa condições iniciais e finais e divide o sinal de entrada em dois segmentos.

Exemplo

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

Resultado:

A saída do sinal acima é lógica 1, o que significa que a condição é verdadeira.

Conclusão - Função de filtro no Matlab

A função de filtro usada principalmente para implementar o filtro de média móvel. A filtragem da média móvel é o método mais simples e comum de suavização. a filtragem também é usada para remover o ruído.

Artigos recomendados

Este é um guia para a Função de filtro no Matlab. Aqui discutimos a introdução e diferentes exemplos de funções de filtro no matlab, juntamente com sua sintaxe. Você também pode consultar os seguintes artigos para saber mais:

  1. Funções embutidas no Matlab
  2. Funções de transferência no Matlab
  3. Funções anônimas no Matlab
  4. Perguntas da entrevista do MATLAB
  5. Funções do MATLAB
  6. Compilador Matlab | Aplicações do Matlab Compiler

Categoria: