fftw

Newbie Thread Question (FFTW)

I'm using the threaded version of FFTW (a FFT library) to try to speed up some code on a dual CPU machine. Here is the output of time w/ only 1 thread: 131.838u 1.979s 2:13.91 99.9% Here it is with 2 threads: 166.261u 30.392s 1:52.67 174.5% The user times and the CPU load percentages seem to indicate that it is threading pretty eff...

FFT of an image

Hi. I have an assignment about fftw and I was trying to write a small program to create an fft of an image. I am using CImg to read and write images. But all I get is a dark image with a single white dot :( I'm most likely doing this the wrong way and I would appreciate if someone could explain how this should be done. I don't need the ...

To start debug mode in Visual C++ 2005, do I have to provide debug version linked library?

Hi there, I have an annoying problem with the debug mode of Visual C++ 2005. My scientific program uses FFTW3 library which is a FFT transformation calculation library. Sadly, there is no official VC++ pre-compiled version of FFTW3 library. More sadly, compiling FFTW3 from source code with VC++ 2005 is very hard. The FFTW3 official webs...

Multi threaded FFTW 3.1.2 on a shared memory computer

I use FFTW 3.1.2 with Fortran to perform real to complex and complex to real FFTs. It works perfectly on one thread. Unfortunately I have some problems when I use the multi-threaded FFTW on a 32 CPU shared memory computer. I have two plans, one for 9 real to complex FFT and one for 9 complex to real FFT (size of each real field: 512*512...

How to get FFTW to work in Eclipse CDT on windows XP

I'm trying to get the Fastest Fourier Transform in the West to cooperate with eclipse. I downloaded it from the website (it's a big folder called fftw-3.2.2 filled with other folders with names api, dft, cell, doc, kernel, fdft and more, each filled with .h and .c files). I've tried going to project>Properties>MinGW C linker>Libraries>...

Pitch recognition of musical notes on a smart phone, pt. 2

As a follow-up to my previous question, if I want my smartphone application to detect a certain musical note, and I only need to know whether the incoming sound is that musical note or not, with a certain amount of fuzziness, to allow the note to be off-key by x cents. Given that, is there a superior method over others for speed and acc...

Magnitude of FFT result depends on wave frequency?

I'm baffled by the results I'm getting from FFT and would appreciate any help. I'm using FFTW 3.2.2 but have gotten similar results with other FFT implementations (in Java). When I take the FFT of a sine wave, the scaling of the result depends on the frequency (Hz) of the wave--specifically, whether it's close to a whole number or not....

How do I get a .so file from a .la file?

FFTW 2.x builds a .la file (under fftw/.libs directory). I think I need a .so file to link to. (I am not sure, because I am a gcc newbie). ...

fftw in Visual Studio?

I'm trying to link my project with fftw and so far, I've gotten it to compile, but not link. As the site said, I generated all the .lib files (even though I'm only using double precision), and copied them to C:\Program Files\Microsoft Visual Studio 9.0\VC\lib, the .h file to C:\Program Files\Microsoft Visual Studio 9.0\VC\include and the...

How to extract semi-precise frequencies from a WAV file using Fourier Transforms

Let us say that I have a WAV file. In this file, is a series of sine tones at precise 1 second intervals. I want to use the FFTW library to extract these tones in sequence. Is this particularly hard to do? How would I go about this? Also, what is the best way to write tones of this kind into a WAV file? I assume I would only need a simp...

How to integrate FFTW3 into an iPhone app?

I'm trying to integrate the FFTW3 (a GNU FFT library written in C, http://www.fftw.org/) into an iPhone app. I downloaded the source code and I found there are hundreds of .h and .c files along with a lot of other files I can't recognize. I'm not a linux expert so I don't really understand how the .configure file and other similar files ...

How to extract frequency information from samples from PortAudio using FFTW in C

Hi all, I want to make a program that would record audio data using PortAudio (I have this part done) and then display the frequency information of that recorded audio (for now, I'd like to display the average frequency of each of the group of samples as they come in). From some research I've done, I know that I need to do an FFT. So I...

Why does negative number show up when I do FFT on a Gaussian?

I'm using this fftw library. Currently I'm trying to plot a 2D Gaussian in the form e^(-(x^2+y^2)/a^2). Here is the code: using namespace std; int main(int argc, char** argv ){ fftw_complex *in, *out, *data; fftw_plan p; int i,j; int w=16; int h=16; double a = 2; in = (fftw_complex*) fftw_malloc(sizeof(fftw...

fftw3 on windows 64-bit

I would like to use FFTW3 on Windows-64 bit. I follow the instructions on FFTW website: download the package, unzip, run lib.exe to create .lib "import libraries". After doing so, I build my application (which runs just fine using FFTW3 dlls 32-bit) and I get the following errors: 1>pyramidTransform.obj : error LNK2019: unresolved...

going from Inverse discrete FFT to spectrogram

I need to locate some generic C++ library that takes the inverse fft output (fftw_complex format, i.e. two doubles) and converts this data to an image file such as png. I can waterfall the dffts to obtain the 2d data (and use 10log10(re*re+im*im) to obtain magnitudes for each frequency component) but I don't know which image library wil...

How can I compile a standalone FFTW library?

I need to compile a standalone .a or .so library in Ubuntu 10.04 from the FFTW source code. I find that the directory layout of the source distribution is so complex that I have no idea where to start. I need to use an older version of gcc as well. ...

Implement Hanning Window

I take blocks of incoming data and pass them through fftw to get some spectral information. Everything seems to be working, however I think I'm getting some aliasing issues. I've been trying to work out how to implement a hann window on my blocks of data. Google has failed me for examples. Any ideas or links I should be looking at? dou...

How to link third party libraries like fftw3 and sndfile to an iPhone project in Xcode?

I'm trying to link third party libraries like fftw3 and sndfile to my iPhone project in Xcode3.2. I got it working in a regular Mac project by setting the "Header Search Path" to "/usr/local/include" and the "Other Linker Flags" to "-lfftw3 -lsndfile" under the project build configuration. However, it gave me "library not found for -lfft...

FFTW: Inverse of forward fft not equal to original function

I'm trying to use FFTW to compute fast summations, and I've run into an issue: int numFreq3 = numFreq*numFreq*numFreq; FFTW_complex* dummy_sq_fft = (FFTW_complex*)FFTW_malloc( sizeof(FFTW_complex)*numFreq3 ); FFTW_complex* dummy_sq = (FFTW_complex*)FFTW_malloc( sizeof(FFTW_complex)*numFreq3 ); FFTW_complex* orig = (FFTW_complex*)FF...

How to batch FFT in C

I am trying to do a batch FFT on 50 images using the following snippet: pix3 = n*pix1*pix2; fftwf_complex *in2, *f2h; //input for FFT2 in2 = (fftwf_complex*)fftwf_malloc(sizeof(fftwf_complex) * pix3); f2h = (fftwf_complex*)fftwf_malloc(sizeof(fftwf_complex) * pix3); for (i = 0; i < pix3; i++) { in2[i][0] = ref20[i]; //ref20 is an array...