# Difference between 2D-DFT's and 1D-DFT's of linearized matrices

I have recently left the safe and easy MATLAB environment and begun to use CUDA-C/C++ for image processing. Since CUDA doesn't allow 2D arrays to be passed into kernels I am now used to linearizing my gray-scale images (2D matrices) into 1D arrays before processing them. I seem to have no problem applying 1D-DFT's to my linearzied arrays. This leads me to wonder why people use 2D-DFT's at all? Why not just linearize your matrices into 1D-arrays and apply 1D-DFT's?

Can 1D-DFT's always operate on 2D-data by simply laying the matrix out into a 1D array?

You simply sample the 2D DTFT with parallel lines of angle $1/N$ where the original matrix has $N \times N$ samples.