Apa itu Walsh-Hadamard Transform dan apa gunanya?

19

Saya mencoba untuk belajar sendiri tentang WHT tetapi sepertinya tidak ada banyak penjelasan yang baik tentang itu secara online di mana saja. Saya pikir saya sudah menemukan cara menghitung WHT, tapi saya benar-benar mencoba memahami mengapa itu dianggap berguna dalam domain pengenalan gambar.

Apa yang istimewa dari itu, dan sifat apa yang dihasilkannya dalam sinyal yang tidak akan muncul pada transformasi Fourier klasik, atau transformasi wavelet lainnya? Mengapa ini berguna untuk pengenalan objek seperti yang ditunjukkan di sini ?

Spacey
sumber
Salah satu aplikasi adalah sistem pengukuran yang menggunakan Maximum Length Sequences (MLS) sebagai eksitasi (misalnya mlssa.com ). Seharusnya lebih cepat karena tidak ada perkalian yang diperlukan. Dalam prakteknya itu tidak banyak manfaatnya dan MLS memiliki masalah lain
Hilmar
@DilipSarwate Mengapa WHT bermanfaat dan / atau unik?
Spacey

Jawaban:

11

NASA dulu menggunakan transformasi Hadamard sebagai dasar untuk mengompresi foto dari penyelidikan antarplanet selama 1960-an dan awal 70-an. Hadamard adalah pengganti yang lebih sederhana secara komputasi untuk transformasi Fourier, karena tidak memerlukan operasi perkalian atau pembagian (semua faktor plus atau minus satu). Operasi penggandaan dan pembagian sangat intensif waktu pada komputer kecil yang digunakan di pesawat ruang angkasa itu, sehingga menghindarinya akan bermanfaat baik dalam hal waktu komputasi dan konsumsi energi. Tetapi sejak pengembangan komputer yang lebih cepat dengan pengganda satu siklus, dan kesempurnaan algoritma yang lebih baru seperti Fast Fourier Transform, serta pengembangan JPEG, MPEG, dan kompresi gambar lainnya, saya percaya Hadamard tidak lagi digunakan. Namun, Saya mengerti ini mungkin akan menjadi comeback untuk digunakan dalam komputasi kuantum. (Penggunaan NASA berasal dari artikel lama di NASA Tech Briefs; atribusi tepat tidak tersedia.)

Eric Peters
sumber
Akun sejarah yang fantastis, Tuan Peters, terima kasih untuk itu. Bisakah Anda memperluas apa / bagaimana maksud Anda bahwa itu mungkin akan kembali dalam komputasi kuantum? Dengan cara apa Anda menyinggung hal itu dalam pos Anda?
Spacey
Menurut sebuah artikel di Wikipedia, banyak algoritma kuantum menggunakan transformasi Hadamard sebagai langkah awal, karena memetakan n qubit ke superposisi semua status ortogonal 2n dalam basis kuantum dengan bobot yang sama.
Eric Peters
Eric, dapatkah Anda memberikan tautan ke artikel wikipedia yang Anda kutip? Jika Anda melakukannya, saya dapat menerima jawaban Anda.
Spacey
Pasti. Ini adalah en.wikipedia.org/wiki/Hadamard_transform
Eric Peters
Eric, saya pikir itu sumber lain yang Anda maksud. Tidak pernah milikku. :-)
Spacey
7

Koefisien transformasi Hadamard semuanya +1 atau -1. Fast Hadamard Transform karenanya dapat dikurangi menjadi operasi penjumlahan dan pengurangan (tidak ada pembagian atau penggandaan). Ini memungkinkan penggunaan perangkat keras yang lebih sederhana untuk menghitung transformasi.

Jadi biaya atau kecepatan perangkat keras mungkin merupakan aspek yang diinginkan dari transformasi Hadamard.

Han
sumber
1
Terima kasih atas jawabannya, tetapi saya ingin memahami transformasinya? Saya tidak peduli sekarang tentang implementasi cepat. Transformasi apa ini? Mengapa ini bermanfaat? Wawasan apa yang diberikannya kepada kami VS transformasi wavelet lainnya?
Spacey
5

Lihatlah makalah ini jika Anda memiliki akses, saya telah menempelkan abstrak di sini Pratt, WK; Kane, J .; Andrews, HC; , "Hadamard mentransformasikan pengkodean gambar," Prosiding IEEE, vol.57, no.1, hlm. 58-68, Januari 1969 doi: 10.1109 / PROC.1969.6869 URL: http://ieeexplore.ieee.org/stamp /stamp.jsp?tp=&arnumber=1448799&isnumber=31116

Abstrak Pengenalan algoritma transformasi Fourier yang cepat telah mengarah pada pengembangan teknik pengkodean transformasi gambar Fourier dimana transformasi Fourier dua dimensi dari suatu gambar ditransmisikan melalui saluran daripada gambar itu sendiri. Devlopement ini selanjutnya mengarah pada teknik pengkodean gambar terkait di mana gambar diubah oleh operator matriks Hadamard. Matriks Hadamard adalah array kuadrat dari plus dan minus yang baris dan kolomnya ortogonal satu sama lain. Algoritma komputasi berkecepatan tinggi, mirip dengan algoritma transformasi Fourier cepat, yang melakukan transformasi Hadamard telah dikembangkan. Karena hanya penambahan dan pengurangan bilangan real diperlukan dengan transformasi Hadamard, urutan keunggulan kecepatan mungkin dimungkinkan dibandingkan dengan transformasi kompleks Fourier.

Charna
sumber
Terima kasih atas tautan ini, saya pasti akan membacanya, tetapi mungkin perlu waktu. Hanya dari abstrak, sepertinya Hadamard Transform dapat digunakan sebagai ... pengganti? ... untuk transformasi Fourier, sebagian karena secara komputasi sangat efisien, tetapi mungkin karena alasan lain juga? Apa pendapat Anda tentang hal ini?
Spacey
Dengan menggunakan transformasi hadamard, kami dapat mentransmisikan versi gambar yang dikodekan dan kemudian merekonstruksi di penerima. Dalam kasus khusus ini penulis menggunakan transformasi untuk memusatkan energi sinyal dalam pita yang lebih sempit daripada gambar asli sehingga kurang dipengaruhi oleh noise dan dapat direkonstruksi dengan menggunakan inverse hadamard pada penerima.
Charna
Hmm, ya, saya baru saja selesai membaca koran - sepertinya transformasi Hadamard hanyalah alternatif yang lebih cepat daripada transformasi fourier, tetapi tidak ada hal lain yang benar-benar menonjol. Ini menghemat energi, dan entropi dll, tetapi lebih atau kurang sepertinya sama seperti FFT.
Spacey
Apakah Hadamard Transform melakukan pekerjaan yang cukup baik (bahkan jika tidak lebih baik) terhadap transformasi lain seperti DFT atau bahkan DCT. Menjadi cepat itu baik, tetapi bisakah itu benar-benar melakukan kompresi sebaik mengatakan DCT adalah pertanyaan nyata. Kebanyakan standar JPEG konvensional, MPEGx tidak cukup menggunakannya BTW.
Dipan Mehta
2

Ingin menambahkan bahwa m-transform (matriks Toeplitz yang dihasilkan oleh m-sequence) dapat didekomposisi menjadi

P1 * WHT * P2

di mana WHT adalah Transform Walsh Hadamard, P1 dan P2 adalah permutasi (ref: http://dl.acm.org/citation.cfm?id=114749 ).

m-transform digunakan untuk sejumlah hal: (1) identifikasi sistem ketika sistem terganggu dengan noise dan (2) secara virtual dari (1) mengidentifikasi fase lag dalam sistem yang terganggu dengan noise

untuk (1), m-transform memulihkan kernel sistem ketika rangsangannya adalah urutan-m, yang berguna dalam neurofisiologi (misalnya http://jn.physiology.org/content/99/1/367. penuh dan lain-lain) karena ini adalah daya tinggi untuk sinyal pita lebar.

Untuk (2), Kode emas dibuat dari m-sequence (http://en.wikipedia.org/wiki/Gold_code).

thang
sumber
1

Saya cukup senang menyaksikan kebangkitan di sekitar transformasi Walsh-Paley-Hadamard (atau kadang-kadang disebut Waleymard), lihat Bagaimana kita dapat menggunakan transformasi Hadamard dalam ekstraksi fitur dari gambar?

±1

2n

Dengan demikian, mereka dapat digunakan dalam aplikasi apa pun di mana basis cosinus / sinus atau wavelet digunakan, dengan implementasi yang sangat murah. Pada data integer, mereka dapat tetap integer, dan memungkinkan transformasi dan kompresi yang benar-benar lossless (mirip dengan integer DCT atau wavelet atau binlet biner). Jadi seseorang dapat menggunakannya dalam kode biner.

Kinerja mereka sering dianggap lebih buruk daripada transformasi harmonik lainnya pada sinyal dan gambar alami, karena sifatnya yang kuning. Namun, beberapa varian masih digunakan seperti untuk transformasi warna reversibel (RCT) atau transformasi pengkodean video dengan kompleksitas rendah ( Transformasi kompleksitas rendah dan kuantisasi dalam H.264 / AVC ).

Beberapa literatur:

Laurent Duval
sumber
-2

Beberapa tautan: Halaman Web

Gambaran umum

Untuk distribusi Gaussian

Melaporkan

Sean O'Connor
sumber
Lebih baik jika Anda bisa memberikan penjelasan mengapa setiap tautan bagus. Bahkan judul lengkap dokumen tertaut akan lebih baik.
Peter K.
Saya mencoba tetapi perangkat lunak forum terkelupas, maka Anda mendapatkan versi ringkasan. Jika Anda ingin menghapus semua gaya wiki-polisi, tentu saja lakukan.
Sean O'Connor
Saya tidak berpikir bahwa itu adalah "wiki-policing" dalam hal ini mencoba mempertahankan standar format Q&A di forum ini. Tujuannya bukan untuk berfungsi sebagai forum. Jadi, umpan balik tentang kontribusi Anda bukan tentang menghapusnya, ini tentang membawanya, tetapi juga memastikan bahwa itu sesuai dengan standar. Ini umum di seluruh jaringan pertukaran stack. Saya akan berpikir bahwa ada baiknya mengedit posting.
A_A