Existem abordagens analíticas para o design de filtros polinomiais quadráticos?


19

O documento a seguir descreve uma aplicação do operador de energia Teager-Kaiser ao aprimoramento da imagem de raios-x:

Reinhard Bernstein, Michael S. Moore e Sanjit K. Mitra, "Filtros Quadráticos Ajustáveis ​​para Aprimoramento de Imagem" Proc. Conferência Internacional do IEEE sobre Processamento de Imagens (ICIP), Santa Barbara, CA, vol. 1, pp. 287-290, outubro de 1997. http://vision.ece.ucsb.edu/publications/view_abstract.cgi?52

Os autores desenvolvem intuição para o comportamento do filtro por analogia com um operador linear semelhante (ou seja, "Portanto, a saída de um filtro Teager é aproximadamente igual a uma resposta de filtro passa-alta ponderada pela média local" ). Por uma questão de precisão, por filtros polinomiais quadráticos, quero dizer filtros não lineares e não recursivos que podem ser completamente caracterizados por uma série Volterra truncada , como a seguir (no caso 1D):

y(n)=m1=0N11h1(m1)x(nm1)+m1=0N21.m2=0N21h2(m1,m2)x(nm1)x(nm2)

Parece que a maioria das abordagens para o design de filtros polinomiais de baixa ordem envolve estruturas de identificação do sistema, mas sem qualquer entendimento profundo do porquê dos filtros estimados funcionarem. Atualmente, as abordagens analíticas baseadas em analogias lineares são o estado da arte ou existem ferramentas matemáticas conhecidas que podem ser usadas?


Eu já usei o operador de energia Teager-Kaiser antes. Eu sei que ele é excelente para ampliar impulsos curtos de "extração" de dados ruidosos (tipo o oposto de um filtro mediano). Também pode fazer o ruído rosa branco. Para tons puros, sua saída é uma constante (a energia do tom).
Spacey

@Mohammad Interessante. Basta usá-lo como exemplo para a pergunta, mas não estava ciente da propriedade rosa-para-branco. Obrigado por isso!
datageist

Aqui está minha implementação do Matlab, se você quiser brincar com ela. ( dl.dropbox.com/u/4724281/TKEO.m )
Spacey

@datageist Você já conseguiu encontrar uma resposta para isso? Você pode postar é que você tem? Esta é a pergunta sem resposta mais votada, não menos importante! =)
Phonon 27/10/2013

@Phonon Encontrei uma espécie de resposta parcial em um ponto, mas não foi muito satisfatório. Vou tentar escrever em breve (ish) embora.
datageist

Respostas:


1

Não é realmente uma resposta (portanto, este é um wiki da comunidade), mas pensei que deveríamos capturar o código de @ Mohammad:

%Mohammad Z

%Teager-Kaiser Non-Linear Energy Operator. 
function [out] = TKEO(x)
    N = length(x);
    x = x(:).';
    temp = x(2:N-1).^2 - x(3:N).*x(1:N-2);
    out = [temp(1) temp temp(end)];    
end
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.