home

PDF (letter size)

Note on how to calculate Discrete time Fourier transform for 2D data

Nasser M. Abbasi

September 7, 2023   Compiled on September 7, 2023 at 9:26pm

Given data f(n,m)=(1234) To find its DFT, we compute the DFT of each column at a time, which generates a temporary matrix. Then compute the DFT of each row of the temporary matrix. This gives the DFT of the above.  

The DFT of 1D is given byF[s]=1nr=1nf[r]e2πni((r1)(s1)) Hence for first column in the data, which is (13) and using n=2 in this example (same number of rows as columns). Then the above becomesF[s]=12r=12f[r]eπi((r1)(s1))=12(f[1]+f[2]eπi(s1))=12(1+3eπi(s1))

ThereforeF[s=1]=42=2F[s=2]=12(1+3eπi)=12(13)=1

Hence the first column of the temporary matrix in F space is (21). Now we find the DFT of the second column of the input which is (24). we have (since n=2 in this example)F[s]=12r=12f[r]e2π2i((r1)(s1))=12(f[1]+f[2]eπi(s1))=12(2+4eπi(s1))

ThereforeF[s=1]=12(2+4)=3F[s=2]=12(2+4eπi)=12(24)=1

Hence the second column of the temporary matrix in F space is (31) which means after first pass, the temporary matrix in F space is now(2311) Now we apply DFT to each row of the above. This is the second pass. For the first row of the above, the DFT is F[s]=12r=12f[r]e2π2i((r1)(s1))=12(f[1]+f[2]eπi(s1))=12(2+3eπi(s1))

Therefore the DFT of the first row becomesF[s=1]=12(2+3)=2.5F[s=2]=12(2+3eπi)=12(23)=0.5

Which is (2.50.5), and the DFT of the second isF[s]=12r=12f[r]e2π2i((r1)(s1))=12(f[1]+f[2]eπi(s1))=12(1eπi(s1))

which isF[s=1]=12(11)=1F[s=2]=12(1eπi)=12(1+1)=0

Which is (21). Therefore the final DFT is (2.50.510)