养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

怎么对数据进行离散的Fourier变换

时间:2024-11-02 10:30:41

离散Fourier变换,螅岔出礤在信息处理过程中应用广泛。比如,在处理图像的时候,计算机获得的是离散的图像数据,因此使用的变换也是离散的。下面,我介绍一下对离散数据进行Fourier变换的方法。

工具/原料

电脑

Mathematica

方法/步骤

1、首先,给出一个离散的随机数据。a=Table[RandomInteger[9],10]

怎么对数据进行离散的Fourier变换

2、直接套用Fourier:Fourier[a]得到的结果,是一组复数序列。

怎么对数据进行离散的Fourier变换

3、给出一幅图片:img=图片;

怎么对数据进行离散的Fourier变换

4、把图片转化为图片数据:data=ImageData[img];通过数据,可以知道,这是一幅四通道图片。

怎么对数据进行离散的Fourier变换

5、看看一个小区域上的数据,进行处理的结果。Fourier[data[[50;;53,60;;63]]]

怎么对数据进行离散的Fourier变换

6、对整个数据进行处理,并看看相对应的小区域的处理结果。掂迎豢畦Fourier[data][[50;;53,60;;63]]这样可以发现,整体的变换结果,和局部的变换结果,差异很大。

怎么对数据进行离散的Fourier变换

7、把Fourier变换之后的图片数据,转化为图片:Fourier[data]//Image

怎么对数据进行离散的Fourier变换

8、好像,Fourier变换之后擢爻充种的数据转化为图片后,系统把虚数部分忽略了,只保留了实数部分。(Fourier[data]//Image//ImageData)[[50;;53,60;;63]]

怎么对数据进行离散的Fourier变换

9、看看Fourier[data]的实数部分:(Fourier[data]//Re)[[50挢旗扦渌;;53,60;;63]]发现不一样。

怎么对数据进行离散的Fourier变换

10、看看Fourier[data]的虚数部分:(Fourier[data]//Im)[[50;;53,60;;63]]也不一样。

怎么对数据进行离散的Fourier变换

11、这是怎么回事呢?我糊涂了。(Abs[Fourier[data]]^2)[[50;;53,60;;63]]也不是。

怎么对数据进行离散的Fourier变换

12、算了,不明白。把图片变得不那么黑:100*Fourier[data]//Image

怎么对数据进行离散的Fourier变换

13、(1-10*Fourier[data])//Image

怎么对数据进行离散的Fourier变换

© 一点知识