2.2 TÉCNICAS DE IDENTIFICAÇÃO DE TRANSIENTES
2.2.2 Transformada wavelet
A transformadawavelet é uma operação que decompõe uma função definida no domínio do tempo em outra função, definida no domínio do tempo e no domínio da frequência. A transformada é definida como a convolução da função f(t) por uma função wavelet ψa,b(t):
ψa,b(t) = 1
q|a|ψ∗ t−b a
!
(14)
W(a, b) =
Z ∞
−∞f(t)ψ∗a,b(t)dt (15)
Sendo ψa,b(t) a função wavelet utilizada, a o fator de escala da wavelet, b o fator de deslocamento da wavelet, W(a, b) a transformada e f(t) a função que se deseja decompor.
O símbolo sobrescrito ∗ indica o conjugado complexo da função.
Wavelets são funções matemáticas que se assemelham a ondas, que atendem a duas condições: energia finita e média zero. Energia finita significa que a wavelet é localizada em tempo e frequência; que é integrável e que o produto interno entre a função analisada e a wavelet existem. A média zero é necessária para garantir que seja integrável, que a forma da função seja do tipo onda, e que o inverso da transformada pode ser calculado.
Os principais parâmetros de uma wavelet são a escala e a deslocamento. Escalonar uma wavelet é o mesmo que “esticá-la” ou “comprimi-la”. Já o deslocamento de uma wavelet significa simplesmente deslocá-la ao longo do tempo. A Figura 9 ilustra o escalonamento de uma wavelet, onde a é o fator de escala, e a Figura 10 ilustra o deslocamento de uma wavelet, onde b é o fator de deslocamento.
Existem vários tipos de wavelets, agrupadas em “famílias”. Chamamos a wavelet para a = 1 e b = 0 de wavelet mãe ψ1,0(t), e as derivadas desta de wavelets filhas ψa,b(t). As wavelets de uma mesma família compartilham o formato e algumas propriedades.
A Figura 11 ilustra oito famílias diferentes dewavelets, sendo a primeira linha composta por wavelets discretas e a segunda composta porwavelets contínuas.
A teoria de wavelets pode ser aplicada para as mais diversas áreas, como compressão de dados, remoção de ruído, processamento de sinais, processamento de imagens, reconheci- mento de padrões, etc. A transformada wavelet foi uma das primeiras técnicas aplicadas para a identificação de transientes de pressão em dados PDGs.
Figura 9 – Escalonamento de uma funçãowavelet.
Fonte: Misiti et al. (1996).
Figura 10 – Deslocamento de uma funçãowavelet.
Fonte: Misiti et al. (1996).
Figura 11 – Diferentes famílias dewavelets.
Fonte: Adaptado de Taspinar (2022)
A transformada wavelet pode ser de dois tipos: contínua (CWT – continuous wavelet transform) e discreta (DWT – discrete wavelet transform); tendo a discreta sua forma normal e não-decimada (NDWT – non-decimated discrete wavelet transform). Elas diferem principalmente na forma como discretizam o fator de escala e na amostragem do sinal.
Enquanto a CWT utiliza escalas exponenciais de base menor que 2, a DWT e NDWT sempre utilizam escalas de base igual a 2, a chamada escala diádica. A DWT e a NDWT diferem em como discretizam o fator de deslocamento: a DWT sempre utiliza um inteiro múltiplo de 2j; já a NDWT utiliza valores inteiros. Por fim, a DWT sub-amostra o sinal original, enquanto CWT e a NDWT não o fazem.
Na prática, a DWT é implementada como um banco de filtros discretos. Tome a Figura 12 como exemplo. Na figura, o sinal original é uma senoide de frequência crescente, y =sen(250πx2), que será decomposto pela DWT com awavelet daubechies.
No primeiro nível de decomposição, são aplicados dois filtros ao sinal, um filtro de passa- baixa (quadrados vermelhos) e um filtro de passa-alta (quadrados-verdes). O sinal é decomposto em dois: um sinal com baixa frequência, chamado de Sinal Aproximação (curvas vermelhas); e um sinal de alta frequência, chamado de Sinal Detalhe (curvas verdes).
A cada nível de decomposição, os dois filtros são reaplicadas ao Sinal Aproximação do nível anterior, gerando a Aproximação e o Detalhe do novo nível.
Figura 12 – Transformadawavelet discreta DWT como um banco de filtros. O algoritmo apresentado é conhecido como “algoritmo piramidal” ou “algoritmo de Mallat”.
Fonte: Adaptado de Taspinar (2022)
É possível reconstruir o sinal decomposto pela DWT através dos filtros de reconstrução, fazendo o caminho inverso da árvore da Figura 12. Os bancos de filtros, que dependem de cada tipo de wavelet, normalmente possuem poucos coeficientes, de modo que a DWT pode ser implementada de forma bastante eficiente.
A DWT faz sub-amostragem do sinal a cada decomposição, como indicado na Figura 12.
O sinal começa com 2000 pontos, caindo para metade desse valor em cada nível. Isso faz com que a DWT utilize uma representação mais esparsa do sinal, sendo menos custosa computacionalmente. Entretanto, essa sub-amostragem faz com a DWT seja variável ao deslocamento do sinal, o que significa que uma perturbação no sinal em algum nível de decomposição não ocorre na mesma posição para todos os níveis. Isso dificulta a localização de anomalias através dos níveis.
A transformada discreta não-decimada, NDWT, por sua vez, não sub-amostra o sinal. A cada nível de decomposição, tanto o Sinal Aproximação quanto o Sinal Detalhe mantém o mesmo número de dados do sinal original. Isso lhe confere a vantagem de ser invariável ao deslocamento, de modo que uma perturbação em algum nível de decomposição pode ser mapeado para os demais níveis. Esta propriedade a torna uma boa escolha para análises de anomalias em séries temporais.
A Figura 13 ilustra a diferença entre a transformada DWT e NDWT. O sinal original é uma senoide de frequência crescente, y=sen(250πx2), que será decomposto com awavelet daubechies. O sinal em azul é o dado original, e as curvas vermelhas e verdes são os sinais decompostos a cada nível. Enquanto a DWT sub-amostra, a NDWT mantém os 2000 pontos do dado original em cada nível.
Por fim, temos a transformada contínua CWT. Para calculá-la, primeiro, realiza-se a convolução de todo o sinal pela wavelet mãe. Em seguida, a operação é repetida para as wavelets filhas em diversas outras escalas, e as convoluções geradas por cada escala são combinadas num único gráfico, chamado de escalograma. Essa repetição torna a CWT uma transformada altamente redundante, tendo um alto custo computacional para grandes quantidades de dados. Além disso, possui uma desvantagem na reconstrução do sinal decomposto: enquanto a DWT e a NDWT permitem uma perfeita reconstrução através da transformada inversa, isso nem sempre é possível para a CWT. Por outro lado, a CWT não sub-amostra o sinal, tendo a vantagem de ser invariante ao deslocamento, e o fato de calcular a convolução para para várias escalas resulta numa representação mais fidedigna, obtendo mais detalhes do sinal.
A Figura 14 ilustra o escalograma 2D e 3D de uma transformada CWT aplicada ao sinal y =sen(250πx2) e utilizando a wavelet ricker.
Figura 13 – Comparação entre a transformada discreta DWT e sua forma não-decimada NDWT. Na figura, é apresentada uma implementação da NDWT chamada de transforma discreta estacionária (SWT –stationary discrete wavelet transform), ou então de “algoritmoà trous”.
Fonte: Próprio autor.
Figura 14 – Escalograma de um transformada wavelet contínua CWT.
Fonte: Próprio autor.
Vale notar que, para realizar a decomposição wavelet de um sinal, os dados devem ser igualmente espaçados entre si (seja para a transformada DWT, NDWT ou CWT). Para contornar este problema, duas estratégias usuais são ignorar a dimensão do tempo, tratando o sinal como uma série de dados sucessivos e igualmente espaçados, ou então realizar a interpolação dos dados originais para se obter um sinal com espaçamento regular.