Estou tentando me ensinar sobre o WHT, mas não parece haver muitas explicações boas on-line em nenhum lugar. Acho que descobri como calcular o WHT, mas estou realmente tentando entender por que ele é considerado útil no domínio de reconhecimento de imagem.
O que há de tão especial nisso e quais propriedades ele produz em um sinal que não aparecia nas transformações clássicas de Fourier ou em outras transformações de wavelets? Por que é útil para o reconhecimento de objetos, como apontado aqui ?
image-processing
Spacey
fonte
fonte
Respostas:
A NASA costumava usar a transformação Hadamard como base para comprimir fotografias de sondas interplanetárias durante os anos 1960 e início dos anos 70. Hadamard é um substituto computacionalmente mais simples para a transformação de Fourier, uma vez que não requer operações de multiplicação ou divisão (todos os fatores são mais ou menos um). As operações de multiplicar e dividir consumiam muito tempo nos pequenos computadores usados a bordo dessas naves espaciais; portanto, evitá-las era benéfico tanto em termos de tempo de computação quanto no consumo de energia. Mas desde o desenvolvimento de computadores mais rápidos que incorporam multiplicadores de ciclo único e a perfeição de algoritmos mais recentes, como a Transformada Rápida de Fourier, bem como o desenvolvimento de JPEG, MPEG e outra compressão de imagem, acredito que o Hadamard ficou fora de uso. Contudo, Entendo que pode estar retornando para uso na computação quântica. (O uso da NASA é de um artigo antigo do NASA Tech Briefs; atribuição exata indisponível.)
fonte
Os coeficientes da transformação Hadamard são todos +1 ou -1. A Fast Hadamard Transform pode, portanto, ser reduzida a operações de adição e subtração (sem divisão ou multiplicação). Isso permite o uso de hardware mais simples para calcular a transformação.
Portanto, o custo ou a velocidade do hardware podem ser o aspecto desejável da transformação Hadamard.
fonte
Dê uma olhada neste artigo, se você tiver acesso, colei o resumo aqui Pratt, WK; Kane, J .; Andrews, HC; , "Hadamard transform coding image coding", Anais do IEEE, vol.57, no.1, pp. 58- 68, janeiro de 1969 doi: 10.1109 / PROC.1969.6869 URL: http://ieeexplore.ieee.org/stamp /stamp.jsp?tp=&arnumber=1448799&isnumber=31116
Resumo A introdução do algoritmo de transformação rápida de Fourier levou ao desenvolvimento da técnica de codificação de imagem da transformada de Fourier, na qual a transformação bidimensional de Fourier de uma imagem é transmitida por um canal e não pela própria imagem. Esse desenvolvimento levou ainda a uma técnica de codificação de imagem relacionada, na qual uma imagem é transformada por um operador de matriz Hadamard. A matriz Hadamard é uma matriz quadrada de mais e menos cujas linhas e colunas são ortogonais entre si. Foi desenvolvido um algoritmo computacional de alta velocidade, semelhante ao algoritmo de transformação rápida de Fourier, que executa a transformação Hadamard. Como apenas adições e subtrações de números reais são necessárias com a transformação Hadamard, é possível uma vantagem de velocidade de ordem de magnitude em comparação com a transformação de Fourier de número complexo.
fonte
Gostaria de acrescentar que qualquer transformação m (matriz Toeplitz gerada por uma sequência m) pode ser decomposta em
P1 * WHT * P2
onde WHT é a transformada de Walsh Hadamard, P1 e P2 são permutações (ref: http://dl.acm.org/citation.cfm?id=114749 ).
A transformação m é usada para várias coisas: (1) identificação do sistema quando o sistema é atormentado por ruído e (2) por virtual de (1) identificar atraso de fase em um sistema atormentado por ruído
para (1), m-transform recupera o (s) núcleo (s) do sistema quando o estímulo é uma seqüência m, útil em neurofisiologia (por exemplo, http://jn.physiology.org/content/99/1/367. cheio e outros) porque é de alta potência para um sinal de banda larga.
Para (2), o código Gold é construído a partir de sequências-m (http://en.wikipedia.org/wiki/Gold_code).
fonte
Fico feliz em testemunhar um renascimento das transformações Walsh-Paley-Hadamard (ou às vezes chamado Waleymard); veja Como podemos usar a transformação Hadamard na extração de recursos de uma imagem?
Eles são exemplos de funções do Rademacher. Eles formam transformações ortogonais que podem, omitindo normalizações de potência, ser implementadas apenas com adição e subtração, e mudanças potencialmente binárias. Os coeficientes vetoriais são constituídos por± 1 , que imitam uma versão binarizada de bases seno ou cosseno. A ordem dos vetores Walsh é em sequência (em vez de frequência) que conta o número de alterações de sinal. Eles desfrutam de algoritmos de borboleta semelhantes para uma implementação ainda mais rápida.
Sequências de Walsh de comprimento2n também pode ser interpretado como instâncias de um pacote wavelet Haar.
Como tal, eles podem ser usados em qualquer aplicação em que bases cosseno / seno ou wavelet são usadas, com uma implementação muito barata. Em dados inteiros, eles podem permanecer inteiros e permitir transformações e compactação verdadeiramente sem perdas (da mesma forma que DCT inteiro ou wavelets binárias ou binlet). Então, pode-se usá-los em códigos binários.
Seu desempenho é frequentemente considerado pior do que outras transformações harmônicas em sinais e imagens naturais, devido à sua natureza em blocos. No entanto, algumas variantes ainda estão em uso, como para transformações reversíveis em cores (RCT) ou transformações de codificação de vídeo de baixa complexidade (transformação e quantização de baixa complexidade em H.264 / AVC ).
Alguma literatura:
fonte
Alguns links: Página da Web
Descrição geral
Para distribuição gaussiana
Relatório
fonte