Fast Walsh Transform for Seismic Autocorrelation

  • Thread starter Thread starter manzana
  • Start date Start date
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
2 replies · 1K views
manzana
Messages
12
Reaction score
2
I need to do a realtime 512 point autocorrelation for a seismic project but my poor little Parallax computer is getting swamped by all the floating point multiplies. The answer seems to be in the fast Walsh Transform. I bought some IEEE papers on the subject but they are a little deep! Does anyone have any words of encouragement? According to Wiener-Khinchin I can get the same effect by taking the fft of the data, multiplying by the complex conjugate, and taking the inverse FFT. I tried this too on Scilab but it doesn't seem to really work. Any thoughts appreciated.
 
Physics news on Phys.org
When testing code, two approaches I like to use are using an input for which the output is known and testing the output between a known good method and the code being tested.

If you have a known good method that is slow, test with that, possibly on a faster computer like a PC. Even slow Fourier methods are fast on modern PCs with only 512 data points.
 
Thanks for the reply. This is for a remote sensing application with very limited power available. A PC is not an option but I do use it to verify my code. I am using a very low power (battery supplied) micorcontroller. I need to do a 512 point autocorrelation every 5 seconds and the brute forced lagged-product technique is too processor intensive. I know the autocorrelation can be done much simpler and faster using Walsh, for example. I am sure Matlab uses some such technique.since it can do huge autocorrelations instantly. All of these techniques are similar with butterflies and exotic orderings. But if you are a newcomer it is hard to see the forest for the trees. It is more like solving a Rubbix Cube than calculus. 'Preciate it...