Co to jest transformacja Walsha-Hadamarda i do czego służy?


19

Próbuję nauczyć się o WHT, ale wydaje się, że nie ma wielu dobrych wyjaśnień online. Myślę, że wymyśliłem sposób obliczania WHT, ale naprawdę staram się zrozumieć, dlaczego uważa się to za przydatne w dziedzinie rozpoznawania obrazów.

Co jest w tym takiego wyjątkowego i jakie właściwości wywołuje w sygnale, który nie pojawiałby się w klasycznych transformatach Fouriera lub innych transformatach falkowych? Dlaczego wskazano tutaj rozpoznawanie obiektów ?


Jedną z aplikacji są systemy pomiarowe, które wykorzystują sekwencje maksymalnej długości (MLS) jako wzbudzenie (np. Mlssa.com ). Powinno być szybciej, ponieważ nie są wymagane mnożenia. W praktyce nie ma to większego znaczenia, a MLS mają inne problemy
Hilmar,

@DilipSarwate Dlaczego WHT jest użyteczny i / lub unikalny?
Spacey,

Odpowiedzi:


11

NASA używała transformacji Hadamarda jako podstawy do kompresji zdjęć z sond międzyplanetarnych w latach 60. i wczesnych 70. Hadamard jest obliczeniowo prostszym zamiennikiem transformaty Fouriera, ponieważ nie wymaga żadnych operacji mnożenia ani dzielenia (wszystkie czynniki są plus lub minus jeden). Operacje mnożenia i dzielenia były niezwykle czasochłonne na małych komputerach używanych na pokładzie tych statków kosmicznych, więc ich unikanie było korzystne zarówno pod względem czasu obliczeniowego, jak i zużycia energii. Ale od czasu opracowania szybszych komputerów z multiplikatorami jednocyklowymi i udoskonalenia nowszych algorytmów, takich jak szybka transformacja Fouriera, a także opracowania JPEG, MPEG i innych kompresji obrazów, uważam, że Hadamard przestał być używany. Jednak, Rozumiem, że może to być powrót do użycia w obliczeniach kwantowych. (Wykorzystanie NASA pochodzi ze starego artykułu w NASA Tech Briefs; dokładne przypisanie jest niedostępne).


Fantastyczne konto historyczne, panie Peters, dziękuję za to. Czy możesz rozwinąć, co / jak masz na myśli mówiąc, że może to być powrót do obliczeń kwantowych? W jaki sposób wspominasz o tym w swoim poście?
Spacey,

Według artykułu w Wikipedii wiele algorytmów kwantowych wykorzystuje transformację Hadamarda jako krok początkowy, ponieważ odwzorowuje n kubitów na superpozycję wszystkich 2n stanów ortogonalnych w bazie kwantowej o równej wadze.
Eric Peters,

Eric, czy możesz podać link do cytowanego artykułu na Wikipedii? Jeśli tak, mogę przyjąć twoją odpowiedź.
Spacey,


Eric, myślałem, że to kolejne źródło, o którym mówisz. Nieważne. :-)
Spacey

7

Współczynniki transformacji Hadamarda wynoszą +1 lub -1. Szybką transformację Hadamarda można zatem zredukować do operacji dodawania i odejmowania (bez dzielenia lub mnożenia). Pozwala to na użycie prostszego sprzętu do obliczenia transformacji.

Zatem koszt lub szybkość sprzętu mogą być pożądanym aspektem transformacji Hadamarda.


1
Dzięki za odpowiedź, ale chciałbym zrozumieć transformację, proszę? Nie obchodzi mnie teraz szybka implementacja. Co to za transformacja? Dlaczego to jest przydatne? Jaki wgląd daje nam VS innych transformacji falkowych?
Spacey,

5

Spójrz na ten artykuł, jeśli masz dostęp, wkleiłem tutaj streszczenie Pratt, WK; Kane, J .; Andrews, HC; , „Kodowanie obrazu transformacji Hadamarda”, Proceedings of IEEE, vol.57, no.1, str. 58-68, styczeń 1969 doi: 10.1109 / PROC.1969.6869 URL: http://ieeexplore.ieee.org/stamp /stamp.jsp?tp=&arnumber=1448799&isnumber=31116

Streszczenie Wprowadzenie algorytmu szybkiej transformacji Fouriera doprowadziło do opracowania techniki kodowania obrazu z transformacją Fouriera, w której dwuwymiarowa transformata Fouriera obrazu jest przesyłana kanałem, a nie samym obrazem. To rozwinięcie doprowadziło ponadto do pokrewnej techniki kodowania obrazu, w której obraz jest transformowany przez operatora macierzy Hadamarda. Macierz Hadamarda to kwadratowa tablica plusów i minusów, których rzędy i kolumny są do siebie prostopadłe. Opracowano szybki algorytm obliczeniowy, podobny do algorytmu szybkiej transformaty Fouriera, który wykonuje transformację Hadamarda. Ponieważ tylko transformaty Hadamarda wymagają dodawania i odejmowania liczb rzeczywistych, możliwa jest przewaga prędkości rzędu wielkości w porównaniu do transformaty Fouriera o liczbie zespolonej.


Dzięki za ten link, z pewnością go przeczytam, ale może to zająć trochę czasu. Z samego streszczenia wydaje się, że transformata Hadamarda może być używana jako ... substytut? Transformacji Fouriera, częściowo dlatego, że jest bardzo wydajna obliczeniowo, ale może z innego powodu? Jakie było Twoje ogólne zdanie na ten temat?
Spacey

Za pomocą transformacji hadamarda jesteśmy w stanie przesłać zakodowaną wersję obrazu, a następnie zrekonstruować ją w odbiorniku. W tym konkretnym przypadku autor wykorzystuje transformację, aby skoncentrować energię sygnału w wąskim paśmie niż obraz pierwotny, aby był mniej podatny na zakłócenia i można go zrekonstruować, stosując odwrotną hadamard w odbiorniku.
Charna

Hmm, tak, właśnie skończyłem czytać gazetę - wygląda na to, że transformacja Hadamarda jest po prostu szybszą alternatywą dla transformacji Fouriera, ale nic innego tak naprawdę się nie wyróżnia. Oszczędza energię, entropię itp., Ale mniej więcej wydaje się być podobna do FFT.
Spacey,

Czy Hadamard Transform wykonuje wystarczająco dobrą (nawet jeśli nie lepszą) pracę przeciwko innym transformacjom, takim jak DFT lub nawet DCT. Bycie szybkim jest dobre, ale czy naprawdę potrafi zrobić tak dobrą kompresję, jak powiedzmy, że DCT to prawdziwe pytanie. Większość konwencjonalnych standardów JPEG, MPEGx raczej go nie używa BTW.
Dipan Mehta

2

Chciałbym dodać, że dowolna transformacja m (macierz Toeplitza wygenerowana przez sekwencję m) może zostać rozłożona

P1 * WHT * P2

gdzie WHT jest transformacją Walsha Hadamarda, P1 i P2 są permutacjami (zob .: http://dl.acm.org/citation.cfm?id=114749 ).

transformacja m jest używana do wielu rzeczy: (1) identyfikacji systemu, gdy system jest nękany hałasem i (2) przez wirtualne z (1) identyfikacji opóźnienia fazowego w systemie nękanym hałasem

dla (1) transformacja m odzyskuje jądro systemu, gdy bodziec jest sekwencją m, co jest przydatne w neurofizjologii (np . http://jn.physiology.org/content/99/1/367. pełne i inne), ponieważ jest to duża moc dla sygnału szerokopasmowego.

Dla (2) złoty kod jest zbudowany z sekwencji m (http://en.wikipedia.org/wiki/Gold_code).


1

Cieszę się, że jestem świadkiem ożywienia wokół transformacji Walsha-Paleya-Hadamarda (lub czasem nazywanych Waleymardem). Zobacz, jak możemy wykorzystać transformację Hadamarda do wydobywania cech z obrazu?

±1

2n

Jako takie, można je stosować w dowolnej aplikacji, w której stosuje się zasady cosinus / sinus lub falki, z bardzo tanią implementacją. W przypadku danych liczb całkowitych mogą pozostać liczbami całkowitymi i pozwolić na naprawdę bezstratne transformacje i kompresję (podobnie jak liczby całkowite DCT lub binarne falki lub binlet). Można więc używać ich w kodach binarnych.

Ich działanie jest często uważane za gorsze niż inne transformacje harmoniczne naturalnych sygnałów i obrazów, ze względu na ich blokowy charakter. Jednak niektóre warianty są nadal w użyciu, na przykład w przypadku odwracalnych transformacji kolorów (RCT) lub transformacji kodowania wideo o niskiej złożoności (transformacja i kwantyzacja o niskiej złożoności w H.264 / AVC ).

Trochę literatury:


-2

Lepiej jest, jeśli możesz wyjaśnić, dlaczego każdy link jest dobry. Lepszy byłby nawet pełny tytuł powiązanego dokumentu.
Peter K.

Próbowałem, ale oprogramowanie forum było płatne, dlatego otrzymujesz wersję podsumowującą. Jeśli chcesz stylu wiki-policyjnego, usuń wszystko, zrób wszystko.
Sean O'Connor,

Nie sądzę, aby w tym przypadku chodziło tyle o „policyjną policję”, ile o utrzymanie standardu formatu pytań i odpowiedzi na tym forum. Jego celem nie jest funkcjonowanie jako forum. Tak więc informacja zwrotna na temat twojego wkładu nie polega na usunięciu go, ale na zabraniu go na pokład, ale także upewnieniu się, że jest zgodny ze standardem. Jest to powszechne w sieci wymiany stosów. Myślę, że warto edytować post.
A_A
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.