I agree with Bob (the other Bob), as long as what you want to average is the original images on the one hand and the complex FFT (or the FHT) on the other hand. Averaging and transforming are both linear operations, so it does not matter what order you do them in: average(transform(images)) = transform(averages(images)). There are types of processing in which you want to average the power spectra of the various images. (At least there are times you want to do this in regular signal processing of a Short Time Fourier Transform. I'm not sure when it applies in image processing.) Squaring to get the power spectra levels is a nonlinear operation, so it would not work to average the images first in this case.
Bob D.
> Are you positive? This wouldn't work in the one dimensional case.
> -----Original Message-----
> From: Bob <
[hidden email]>
> Date: Thu, 22 Apr 2010 17:21:41
> To: <
[hidden email]>
> Subject: Re: FFT averaging
>
> Average the images first, then do the FFT. Yes, you will get the same
> result, regardless of the order of the two operations.
>
>
> --------------------------------------------------
> From: "gary" <
[hidden email]>
> Sent: Thursday, April 22, 2010 4:53 PM
> To: <
[hidden email]>
> Subject: FFT averaging
>
>> I did a search on the list archive and fft yielded nothing, something I
>> seriously doubt is the case. I used
>>
https://list.nih.gov/cgi-bin/wa.exe>>
>> In any event, I can use Imagej to take the FFT of an image without issue.
>> Both the "FFT window" and "complex FFT" work. But what I'd like to do is
>> to average a few FFTs of some images, then take the inverse of that
>> result.
>>
>> You can put the "FFT Window" images into a stack, but it just saves the 2D
>> magitude, so when you average the slices, the result cannot be put through
>> the inverse FFT.
>>
>> Using the complex FFT, I cam create a stack of real and a stack of
>> imaginary, average each stack individually, but then the inverse FFT
>> doesn't recognize it as a complex image.
>>
Robert Dougherty, Ph.D.
President, OptiNav, Inc.
4176 148th Ave. NE