图像DFT和DCT的频域真实频率

图像的频率与波长

我们知道图像的空间域和频率域都是离散的。如果用二维DFT进行变换,(x,y)表示空间域坐标,(u,v)表示频率域坐标。以一行为例,那么x,u=0,1,…N-1。
这个N就是图像一行的像素点数。在上一篇博客中介绍了图像空间频率(波数)的概念,也就是单位长度(mm)内图像变化的次数。那么这个u肯定就不是这个概念啦。

图像DFT和DCT的频域真实频率
我们在数字信号处理里的频率是单位时间转过的周期个数,角频率是单位时间转过的弧度,数字角频率是每隔时间间隔TsT_s转过的弧度。
对应的图像里的空间频率(波数)是单位长度转过的周期个数,角频率(角波数)是单位长度转过的弧度,数字角频率是每隔空间间隔LsL_s转过的弧度。

时域频域DFT:设 TsT_s时域采样间隔TT时域周期ff频域基频率(单位时间转过的周期个数)Ω\Omega频域基角频率(单位时间转过的弧度)ω\omega频域基数字角频率(每隔 TsT_s 转过的弧度)
ejωn=ejΩTsne^{j\omega n}=e^{j\Omega T_sn}ω=ΩTs\omega=\Omega T_s
那么有NTs=TNT_s=T1NTs=f\frac {1} {NT_s}=f1NTs2π=f2π=Ω\frac {1} {NT_s}*2\pi=f*2\pi=\Omega2πN=1NTs2πTs=f2πTs=ω\frac {2\pi} {N}=\frac {1} {NT_s}*2\pi*T_s=f*2\pi*T_s=\omega
所以我们有
时域与频域
时域周期:NTsNT_s
时域采样间隔:TsT_s(可以看成时域基频,单位频率转过的频域周期个数,频域时域又有什么绝对之分呢)
时域采样频率:1Ts\frac {1} {T_s} 频域周期

频域周期:1Ts=fs\frac {1} {T_s}=f_s ,fsf_s即时域采样频率
基频率就是频域采样间隔
频域基频率:1NTs\frac {1} {NT_s}
频域基角频率:2πNTs\frac {2\pi} {NT_s}
频域基数字角频率:2πN\frac {2\pi} {N}
频域采样频率:基频率的倒数,一般取NTsNT_s,即时域周期

图像空间域与频域
LsL_s 是一个像素点的宽度,这里仅考虑一维
空域周期:NLsNL_s,也就是图像一行的宽度,由于图像是静止不动的,所以波长等于波速乘以周期不适用,这里周期其实就是波长λ\lambda,与之前博客讲的以下公式一致
图像DFT和DCT的频域真实频率
空域采样间隔(采样周期):LsL_s(可以看成空域基频,单位频率转过的频域周期个数)
空域采样频率:1Ls\frac {1} {L_s},即每隔一个像素点的宽度取一个值,用该像素点灰度值表示

频域周期:1Ls=fs\frac {1} {L_s}=f_s ,fsf_s即空域采样频率
基频率就是频域采样间隔
频域基频率:1NLs\frac {1} {NL_s},对应空间波长为NLsNL_s
频域基角频率:2πNLs\frac {2\pi} {NL_s}, 对应空间波长也是NLsNL_s
频域基数字角频率:2πN\frac {2\pi} {N} ,对应空间波长为N,即一行像素点个数
频域采样频率:基频率的倒数,一般取NLsNL_s,即空域周期(波长)
对于图像处理(以像素为单位)
DFT的基频取数字角频率也就是频域采样间隔,是2π\pi/N, 也就是说图像空间数字角频率是u×2π\times2\pi/N,就是指每个像素点的角度变化,空间波长λ\lambda=2π\pi/ω\omega,就是一个波动周期的像素点数。

如果不是图像信号
我们对空域信号采样,采样周期(采样间隔)为Ls=length/NL_s=length/Nlength是一行的长度,那么采样频率为fs=1/Ls=N/lengthf_s=1/L_s=N/length个数/长度。频域发生[0,fs]的频谱搬移。[0,fs]对应于u(频域空间(u,v)表示)的[0,N-1]的取值范围。即我们在频域[0,fs]的范围内采样采了N个点,那么我们有了DFT的频率分辨率为fs/N=1NLs\frac {1} {NL_s},即我们求出来的u并不是真实行空间频率,u×\timesfs/N=uNLs\frac {u} {NL_s}=ulength\frac {u} {length}才是。

而我们知道DFT变换的实部相当于DCT(离散余弦变换),虚部相当于DST(离散正弦变换),即DCT的本质上还是DFT。所以有着一样的频率分辨率。