离散Fourier变换,在信息处理过程中应用广泛。比如,在处理图像的时候,计算机获得的是离散的图像数据,因此使用的变换也是离散的。下面,我介绍一下对离散数据进行Fourier变换的方法。
工具/原料
1
电脑
2
Mathematica
方法/步骤
1
首先,给出一个离散的随机数据。a=Table[RandomInteger[9],10]
2
直接套用Fourier:Fourier[a]得到的结果,是一组复数序列。
3
给出一幅图片:img=图片;
4
把图片转化为图片数据:data=ImageData[img];通过数据,可以知道,这是一幅四通道图片。
5
看看一个小区域上的数据,进行处理的结果。Fourier[data[[50;;53,60;;63]]]
6
对整个数据进行处理,并看看相对应的小区域的处理结果。Fourier[data][[50;;53,60;;63]]这样可以发现,整体的变换结果,和局部的变换结果,差异很大。
7
把Fourier变换之后的图片数据,转化为图片:Fourier[data]//Image
8
好像,Fourier变换之后的数据转化为图片后,系统把虚数部分忽略了,只保留了实数部分。(Fourier[data]//Image//ImageData)[[50;;53,60;;63]]
9
看看Fourier[data]的实数部分:(Fourier[data]//Re)[[50;;53,60;;63]]发现不一样。
10
看看Fourier[data]的虚数部分:(Fourier[data]//Im)[[50;;53,60;;63]]也不一样。
11
这是怎么回事呢?我糊涂了。(Abs[Fourier[data]]^2)[[50;;53,60;;63]]也不是。
12
算了,不明白。把图片变得不那么黑:100*Fourier[data]//Image
13
(1-10*Fourier[data])//Image
注意事项
对图像进行傅立叶变换,真的是这个样子吗?
上一篇:首饰怎样保养之银首饰日常保养方法
下一篇:银饰上的ys是什么