如何用mathematica对一幅图像进行二维傅立叶变换

来源:百度知道 编辑:UC知道 时间:2024/06/27 02:39:15
如题
请以代码形式给出结果
我基本不怎么会使用里面的傅立叶函数
如果方便请稍进行讲解
在此先谢过了
感谢每位回答的朋友

费了不少功夫,不过也学了不少。助人利己吧,呵呵~
找一个样例图片
img = Import["ExampleData/lena.tif"]

转化成灰度格式
img2 = ColorConvert[img, "GrayLevel"];

ImageData可以得到矩阵格式的数据,然后直接Fourier命令得到复数矩阵,这就是结果了。为了可视化,Abs取模并使用对数函数进行“再分布”(不知道这个词合不合适~),然后画出来!
ArrayPlot[Log[1 + Abs[Fourier[ImageData[img2]]]]]