An image processing apparatus configured to perform a two-dimensional, 2D, fast Fourier transform, FFT, with respect to image data, the image processing apparatus comprising: a first core and a second core, each of the first core and the second core comprising a plurality of processors configured to perform a one-dimensional, 1D, FFT; a memory configured to store data output from the first core and the second core; and a controller configured to control the first core and the second core to perform a primary 2D FFT and a secondary 2D FFT with respect to the image data by repeatedly performing the 1D FFT, wherein the image processing apparatus further comprises: a plurality of operators configured to generate depth-summed image data by arranging primary 2D FFT-transformed data generated by the first core and the second core into a plurality of lines having a predetermined depth level and sequentially summing a subset of the plurality of lines, wherein a number of lines included in the subset is equal to the predetermined depth level, wherein the controller is configured to store the depth-summed image data in the memory, read the depth-summed data from the memory, and input the read data to the first core and wherein the controller is further configured to input the depth-summed image data to the second core, thereby omitting the process of storing the depth-summed image data in and reading the depth-summed image data from the memory when the depth-summed image data is input to the second core. a first core and a second core, each of the first core and the second core comprising a plurality of processors configured to perform a one-dimensional, 1D, FFT; a memory configured to store data output from the first core and the second core; and a controller configured to control the first core and the second core to perform a primary 2D FFT and a secondary 2D FFT with respect to the image data by repeatedly performing the 1D FFT, wherein the image processing apparatus further comprises: a plurality of operators configured to generate depth-summed image data by arranging primary 2D FFT-transformed data generated by the first core and the second core into a plurality of lines having a predetermined depth level and sequentially summing a subset of the plurality of lines, wherein a number of lines included in the subset is equal to the predetermined depth level, wherein the controller is configured to store the depth-summed image data in the memory, read the depth-summed data from the memory, and input the read data to the first core and wherein the controller is further configured to input the depth-summed image data to the second core, thereby omitting the process of storing the depth-summed image data in and reading the depth-summed image data from the memory when the depth-summed image data is input to the second core. a plurality of operators configured to generate depth-summed image data by arranging primary 2D FFT-transformed data generated by the first core and the second core into a plurality of lines having a predetermined depth level and sequentially summing a subset of the plurality of lines, wherein a number of lines included in the subset is equal to the predetermined depth level, wherein the controller is configured to store the depth-summed image data in the memory, read the depth-summed data from the memory, and input the read data to the first core and wherein the controller is further configured to input the depth-summed image data to the second core, thereby omitting the process of storing the depth-summed image data in and reading the depth-summed image data from the memory when the depth-summed image data is input to the second core.