Version 2 (modified by benl, 4 years ago)

--

fft2d-highpass

Applies a highpass to a BMP image. The first argument is the lower cutoff frequency.

Each of the RGB channels is converted to the frequency domain, the lower frequencies are set to zero, then the channels are converted back to the image domain.

 repa-fft2d-highpass 2 lena.bmp lena-high2.bmp

Code

The main algorithm is at http://code.haskell.org/repa/repa-stable/repa-algorithms/Data/Array/Repa/Algorithms/FFT.hs

The wrapper is at http://code.haskell.org/repa/repa-stable/repa-examples/FFT/src/HighPass/Main.hs

Test Data

http://en.wikipedia.org/wiki/Lenna is a standard test image.

lena.bmp lena-high2.bmp
Error: Macro Image(WikiStart:lena-high2-thumb.jpg) failed
Attachment 'wiki:WikiStart: lena-high2-thumb.jpg' does not exist.
full size full size

Runtime

Compiled with GHC 6.13.20100309. 512x512 image.

Running on a Intel i7 iMac.

Threads Time(s)
1 24.81
2 13.37
3 10.4
4 7.79
5 8.24
6 7.25
7 6.87
8 6.58

Attachments