FFTs in Graphics and Vision
600.660
Assignment 1

Due: Sunday (02/22/15)
You can download the code stub from here.
  1. Implement the 1D FFT: Implement the O(n logn) algorithm for computing the forward and inverse Fourier transforms. To help you on your way, a starting code stub is provided for you in FFT1D.cpp. You will need to implement the methods ForwardFFT and InverseFFT which compute the forward and inverse Fourier transforms.

    To run the code, you need to specify the input 1D array name:

    % FFT1D --in in.array

    The code will then test to see that:

    Notes:

  2. Image Processing: For this part of the assignment, you will need to implement the following image processing filters discussed in class: A code base for this project is provided in ImageProcessing.cpp. The code reads in the names of the input and output files and parses the command line arguments specifying which of the image processing methods are to be run. Your job is to implement the missing code in main. To run the code, you will have to specify the input and output file-names for the images (24-bit bmp and jpeg extensions are supported):
    % ImageProcessing --in in.[bmp/jpeg/jpg] --out out.[bmp/jpeg/jpg]
    and the types of image processing operations you would like performed: Notes: