点击上方“机器学习与生成对抗网络”,关注"星标"
获取有趣、好玩的前沿干货!
来自 | 知乎 阿姆斯特朗
链接 | https://zhuanlan.zhihu.com/p/110026009
文仅交流,侵删
1.回顾一下一维FT
公式:
通俗来讲,一维傅里叶变换是将一个一维的信号分解成若干个复指数波 。而由于
,所以可以将每一个复指数波
都视为是余弦波+j*正弦波的组合。
对于一个正弦波而言,需要三个参数来确定它:频率 ,幅度
,相位
。因此在频域中,一维坐标代表频率,而每个坐标对应的函数值也就是
是一个复数,其中它的幅度
就是这个频率正弦波的幅度
,相位
就是
。下图右侧展现的只是幅度图,在信号处理中用到更多的也是幅度图。
![](https://i-blog.csdnimg.cn/blog_migrate/32c0a9410df55abe326337a9b1e6f912.png)
一维傅里叶变换就是一个基变换,在时域中,基是一族冲激信号 ,在频域中;基是
,而且这组基是正交基。
![](https://i-blog.csdnimg.cn/blog_migrate/ad87565d242ff86afbf4ccbb33575c70.png)
F=Mf,基变换示意图
2.类比:从一维到二维
一维信号是一个序列,FT将其分解成若干个一维的简单函数之和。二维的信号可以说是一个图像,类比一维,那二维FT是不是将一个图像分解成若干个简单的图像呢?
确实是这样,二维FT将一个图像分解成若干个复平面波 之和。如下图:
![](https://i-blog.csdnimg.cn/blog_migrate/31cf81663139862c3f0ad43d5bf3448d.png)
二维FT的公式:
通过公式,我们可以计算出,每个平面波在图像中成分是多少。从公式也可以看到,二维傅里叶变换就是将图像与每个不同频率的不同方向的复平面波做内积(先点乘在求和),也就是一个求在基 上的投影的过程。(应该知道
是b在a上的投影,只不过这里的|a|的值被设为1,所以只有内积)
3.什么是二维频率域K-SPACE
对于正弦平面波,可以这样理解,在一个方向上存在一个正弦函数,在法线方向上将其拉伸。前面说过三个参数可以确定一个一维的正弦波。哪几个参数可以确定一个二维的正弦平面波呢?答案是四个,其中三个和一维的情况一样(频率 ,幅度
,相位
),但是具有相同这些参数的平面波却可以有不同的方向
。如下图所示:
![](https://i-blog.csdnimg.cn/blog_migrate/7991d1931d6bcdf05b9fa9eda72accff.png)
两个不同方向的平面波叠加
类比一维中,幅度和相位可以用一个复数表示,它可以作为我们存储的内容。但是还有两个:一个频率一个方向。这时想到向量是有方向的,也是有长度的。所以我们用一个二维的矩阵的来保存分解之后得到的信息。这个矩阵就是K空间。(一般用k来表示空间频率,单位是1/m)
什么意思呢?就是说一个二维矩阵点 代表这个平面波的法向量
,这个向量的模
代表这个平面波的频率
,这个点里面保存的内容复数就是此平面波的幅度和相位。下面这个图很好的体现了这一点:
![](https://i-blog.csdnimg.cn/blog_migrate/ad013cb7bdacbc277d3bf7e1e99edc70.png)
也因此K空间的中心对于低频,周围对于高频。如下图,K空间中只有(0,0)处有值,也就是信号都是直流即不存在变化,所以实空间就是一张白纸。
![](https://i-blog.csdnimg.cn/blog_migrate/6ce83f48d5da4cf1f40fd7f0a41fba92.png)
再如下面这个图片,中心低频贡献了图像的主体,周围高频提供图像的细节和边缘。
![](https://i-blog.csdnimg.cn/blog_migrate/28ba5ecbacf730ff52b8b2c1eb00e732.png)
因此,k空间的每一个位置存储的数代表了所在位置复平面波在图像中占多少成分,我们就可以用每个系数*所代表的平面波相加得到原来的图像,也就是下图。所以k空间和对应图像储存的信息含量是一样的,只不过表现形式不同,或者说基不同。
![](https://i-blog.csdnimg.cn/blog_migrate/7e126b51f0ec4ff22f9cd395cf823a2e.png)
4.K空间的一些性质
离散的2D-FT
在数字图像中,数据都是离散的。也就涉及到采样的问题,和一维一样,如果采样率过低,k空间就会混叠。同时在k空间中采样过低,图像也会混叠。
FOV和分辨率在k空间和图像中是相反的关系。也就是:
![](https://i-blog.csdnimg.cn/blog_migrate/9f3d641abf5f77188f3acdfa399aa4a6.png)
![](https://i-blog.csdnimg.cn/blog_migrate/376f1f5c76dadc7914e3d02fe52ffe06.png)
减小kmax,使得图像分辨率下降,减小Δk,使得FOV缩小。
旋转不变性
从平面波的角度很容易理解,旋转没有改变平面波的幅度相位,只是将所有的平面波都旋转了一个角度。下面这个图像显示了二维傅里叶变换中,实空间旋转多少,频率空间也会相应旋转多少。这其实是高维傅里叶变换缩放定理的一种特殊情况。(连续的是可以证明的,离散的涉及插值 ,不一定完全准确)
![](https://i-blog.csdnimg.cn/blog_migrate/1a0b2bb0dcf2c96f65c7aaee5513019f.png)
5.其他
1.因为matlab中的fft算法都是将0放在第一个的,所有写matlab时一定要将k空间fftshift一下使得零频回到k空间中心。
2.简单的应用k空间进行去噪例子。通过去掉明显的k空间的异常峰,可以去除图像中有规律变化的噪声或者伪影。
![](https://i-blog.csdnimg.cn/blog_migrate/b3f5aa3d52a8e18ac1f010194fad5217.png)
指纹去噪
![](https://i-blog.csdnimg.cn/blog_migrate/723941effa9386b6fc4dffbf4c9f8244.png)
天体表面去噪
6、评论及解答
1、始终想不通为啥各个波的叠加能反应出某一个像素点的信号大小
你把它理解向量分解就懂了,平面波就是基,k空间里的数就是基的系数。你得到系数(k空间)的时候就是在投影,变为原向量(图像)就是叠加。只不过这里一个图像是一个向量而已。复平面波叠加时,先经过放大(幅度)在经过移位(相位),相位信息里保留了很多位置信息,可以查看我的另一个回答:
为什么用图像二维傅里叶变换的相位谱进行反变换,能够大致得到原图的形状,而幅度谱则不行呢?
https://www.zhihu.com/question/23718291/answer/1057562032
2、傅里叶变换后图像是关于频率矩形中心对称的,那么对称的4个平面三角波不就是注定了幅值和相角,频率是相等的。那么这样不是说明了任何波都是包含了4个这样对称的三角波,由它们组成?
是中心共轭对称,而没有左右上下的对称。而且只有实数图像的k空间才有这种特点,这是为了将复平面波中的虚部抵消掉,只留下实数部分。复数图像的k空间没有共轭对称的特点。下面是k空间的一部分数据,中心点为(101,101)。
![](https://i-blog.csdnimg.cn/blog_migrate/7f2512086f497e1f9e3439a13036be64.png)
参考:
[1] http://mriquestions.com
[2] A. Zisserman's lecture in B14 Image Analysis
链接:http://www.robots.ox.ac.uk/~az/lectures/ia/lect2.pdf
(这个slides真的不错,大家可以下载看看,里面也有其他的内容)
戳我,查看GAN的系列专辑~!CVPR 2020之117篇GAN论文分类汇总清单2020年6月100篇GAN论文汇总
2020年5月60篇GAN论文汇总
2020年4月70多篇GAN论文
2020年3月90多篇GAN论文
2020年2月50多篇GAN论文
2020年1月GAN论文汇总
2019年12月份GAN论文汇总超100篇!CVPR 2020最全GAN论文梳理汇总!
拆解组新的GAN:解耦表征MixNMatch
StarGAN第2版:多域多样性图像生成附下载 | 《可解释的机器学习》中文版
附下载 |《TensorFlow 2.0 深度学习算法实战》
附下载 |《计算机视觉中的数学方法》分享