Odwróć spektrogram A La Aphex Twin w programie MATLAB

Próbuję przekonwertować obraz na sygnał audio w programie MATLAB, traktując go jako spektrogramjak w piosence Aphex TwinWindowlicker. Niestety, mam problem z uzyskaniem wyniku.

Oto co mam w tej chwili:

function signal = imagetosignal(path, format)

    % Read in the image and make it symmetric.
    image = imread(path, format);
    image = [image; flipud(image)];
    [row, column] = size(image);
    signal = [];

    % Take the ifft of each column of pixels and piece together the real-valued results.
    for i = 1 : column

        spectrogramWindow = image(:, i);
        R = abs(ifft(spectrogramWindow));
        % Take only the results for the positive frequencies.
        signalWindow = R(1 : row / 2.0);
        signal = [signal; signalWindow];

    end

end

Biorę więc odwrotne transformaty Fouriera na kolumnach mojego obrazu, a następnie łączę je, tworząc sygnał. Ta funkcja używa również narzędzia do przetwarzania obrazu do MATLAB do odczytu obrazów. Celem jest posiadanie pewnych odmian

spectrogram(imagetosignal('image', 'bmp'));

w rezultacie coś, co wygląda jak oryginalny obraz. Byłbym bardzo wdzięczny za każdą pomoc! Po prostu uczę się przetwarzania sygnałów, więc nie zdziw się, jeśli istnieje oczywiste nieporozumienie. Dzięki!

Edytować: Dzięki Dave! Mam to działa! Skończyło się na tym:

function signal = imagetosignal(path, format)

    % Read in the image and make it symmetric.
    image = imread(path, format);
    image = [image; flipud(image)];
    [row, column] = size(image);
    signal = [];

    % Take the ifft of each column of pixels and piece together the results.
    for i = 1 : column

        spectrogramWindow = image(:, i);
        signalWindow = real(ifft(spectrogramWindow));
        signal = [signal; signalWindow];

    end

end

questionAnswers(2)

yourAnswerToTheQuestion