2D傅里叶变换理解心得
一、 目的
完整推倒2D傅里叶变换公式,加深对2D傅里叶变换公式的理解。 二、 内容
2维傅里叶变换,针对的信号函数是2维空间平面内的函数,2维傅里叶变换也有四种不同的形式。
1、 连续周期时域信号<---->非周期离散频谱。2D_CFS
fXY(x,y)表示2维周期连续信号,可以理解为一幅连续的图像信号(这里fXY(x,y)可以为复数信号,但工程实践中常为实信号),F(k,l)表示2维频谱信号,其中k,l取??XYXY??上的整数。
F(k,l)?00XY??fXY(x,y).e?2?j(ku0x?lv0y)dxdy???00fXY(x,y).e?2?j(ku0x?lv0y)dxdyXY2?j(ku0x?lv0y)?2?j(ku0x?lv0y)e.edxdy??00XY??1dxdy00
???00fXY(x,y).e?2?j(ku0x?lv0y)dxdyXY,k,l取-?+?上的实整数其中X,Y为fXY(x,y)在x坐标和y坐标上各自的最小正周期。u0,v0表示在x坐标和y坐标上各自的基频率,这里有u0?11,v0?,k,l取XY????上的整数,对应不同的频率成分,F(k,l)11,v0?。 XY的图像为离散的,且在x坐标和y坐标上的频率间隔分别为u0?fXY(x,y)?k???l??????2?j(ku0x?lv0y)F(k,l).e,x,y取-????+?上的实数
这里,F(k,l)为复数。
所以得到2D_CFS(2维连续傅里叶级数)
XY??2?j(ku0x?lv0y)f(x,y).edxdy?XY????F(k,l)?00,k,l取-?+?上的实整数 ?XY??????fXY(x,y)???F(k,l).e2?j(ku0x?lv0y),x,y取-?+?上的实数?k???l????2、 连续非周期信号?-----?连续非周期频谱 2D_CTFT
f(x,y)表示非周期的连续2维信号,F(u,v)表示其频谱,这里F(u,v)是连续非周期的2维信号
XY????F(u,v)?lim00X,Y???XY2?j(ku0x?lv0y)u0,v0?0??f(x,y).e?2?j(ku0x?lv0y)dxdy?.e?2?j(ku0x?lv0y)????X,Y???u0,v0?0??f(x,y).e?2?j(ux?vy)dxdylimXY??e00dxdy令F*(u,v)=F(u,v).limXY,则X,Y???u0,v0?0????F*(u,v)=?????X,Y???u0,v0?0?f(x,y).e?2?j(ux?vy)dxdyu,v取-?+?上的实整数 这里,1/limXY为无穷小量,为了使频谱的取值能够便于研究,这里进行了放大,得到
F*(u,v),所以这里就不是2D_CFS,而是2D_CTFT(2维连续时间傅里叶变换),这里仍然有
u0?11,v0?。 XYf(x,y)?k???l??????2?j(ku0x?lv0y)F(k,l).e???u0,v0?0,?f(x,y)?u???v?????????F(u,v).e2?j(ux?vy)
F*(u,v)=limXY.F(u,v)X,Y???u0,v0?0?F(u,v)=F*(u,v)/limXYX,Y???u0,v0?0?f(x,y)?u???v?????????F(u,v).e2?j(ux?vy)?u???v???X,Y???u0,v0?0??????F*(u,v).e2?j(ux?vy)limXY11u0?,v0?,XY1?lim?dudvX,Y???XYu,v?000
?f(x,y)?u???v?????????????F*(u,v).e2?j(ux?vy)dudv?
u???v?????F*(u,v).e2?j(ux?vy)dudv所以2D_CTFT为
?????*?2?j(ux?vy)F(u,v)=f(x,y).edxdy??????????????f(x,y)?*2?j(ux?vy)F(u,v).edudv????????u,v取-?x,y取-?+?上的实数+?上的实数
这里,u,v为x,y方向上的空间频率变量。 3、 离散周期信号?-----?离散周期频谱 2D_DFS
对连续信号fXY(x,y)按照x方向Tx的采样周期(单位不一定为时间),y方向(单位不一定为时间)Ty的采样周期进行采样,得到fMN(m,n)。
??X?MTx??x?mTx这里,?,?,所以
Y?NTy?nT??yy??fXY(x,y)?fXY(mTx,nTy)。
通常,我们会去掉离散信号的周期单位(时间或者距离),只取出点列,不要物理意义。 所以我们会得到离散周期信号
fMN[m,n]?fXY(mTx,nTy),这就是一个单纯的2维点阵,
没有物理意义,是数学抽象出来的点阵。
XY??2?j(ku0x?lv0y)f(x,y).edxdy?XY????F(k,l)?00,k,l取-?+?上的实整数 2D_CFS ?XY??????fXY(x,y)???F(k,l).e2?j(ku0x?lv0y),x,y取-?+?上的实数?k???l????利用2D_CFS推倒2D_DFS
XYXYF(k,l)???00fXY(x,y).e?2?j(ku0x?lv0y)dxdy?XYMTxNTy?2?j(k00XY??fXY(x,y).e?2?j(ku0x?lv0y)dxdyk,l为整数,x,y为实数2?j(ku0x?lv0y)?2?j(ku0x?lv0y)e.edxdy??0011mTx?lnTy)MTxNTyF[k,l]?00MTxNTy?2?j(k1mT?l1nT)xyMTxNTy??0fXY(mTx,nTy).e.edmTxdnTydmTxdnTy??e0?2?j(k11mTx?lnTy)MTxNTyMTxNTy?00MTxNTy??0fXY(mTx,nTy).e?2?j(k11m?ln)MN?2?j(k11m?ln)MNdmTxdnTy??e0.e?2?j(k11m?ln)MNdmTxdnTy11m?ln)MNMTx??mTxNTy??nTymTx=0?=nTy=0?fXY(mTx,nTy).ee?2?j(k11m?ln)MN?2?j(k?mTx?nTym,n这里为非负整数MTx??mTxNTy??nTymTx=0?nTy=0?.e?2?j(k11m?ln)MN?mTx?nTy?m?1,?n?1。令fMN[m,n]?fXY(mTx,nTy)MTx?TxNTy?TymTx=0nTy=0MTx?TxNTy?TymTx=0nTy=0MTx?TxNTy?TymTx=0nTy=0MTx?TxNTy?TymTx=0nTy=0MTx?TxNTy?TymTx=0nTy=0??fMN[m,n].e?2?j(k11m?ln)MNTxTy?上式=???2?j(k1TxTyTxTy??fMN[m,n].e11m?ln)MN=??1TxTy????中Tx,Ty为常数,等价于??m=0n=0MNM?1N?1?MTx?TxNTy?TymTx=0nTy=0M?1N?1?上式=m=0n=0??f[m,n].eM?1N?1m=0n=0?2?j(k11m?ln)MNM?1N?1TxTy=m=0n=0xy??fMN[m,n].eMN?2?j(kmln?)MN
??1TT所以通过上面的推倒,我们可以看出2D_CFS推出了2D_DFS,说明其本质是一致的。