ifft2

二维快速傅里叶逆变换

全页折叠

语法

X = ifft2(Y)
X = ifft2(Y,m,n)
X = ifft2(___,symflag)

说明

示例

X = ifft2(Y) 使用快速傅里叶变换算法返回矩阵的二维离散傅里叶逆变换。如果 Y 是一个多维数组,则 ifft2 计算大于 2 的每个维度的二维逆变换。输出 X 的大小与 Y 相同。

示例

X = ifft2(Y,m,n) 在计算逆变换之前截断 Y 或用尾随零填充 Y,以形成 m×n 矩阵。X 也是 m×n。如果 Y 是一个多维数组,ifft2 将根据 mn 决定 Y 的前两个维度的形状。

示例

X = ifft2(___,symflag) 指定 Y 的对称性。例如,ifft2(Y,'symmetric')Y 视为共轭对称。

示例

全部折叠

矩阵的二维逆变换

打开实时脚本

Y = fft2(X)
Y = 3×3 complex

45.0000 + 0.0000i, 0.0000 + 0.0000i 0.0000 + 0.0000i
0.00000 + 0.0000i, 13.5000 + 7.7942i 0.0000 - 5.1962i
0.00000 - 0.0000i, 0.00000 + 5.1962i 13.5000 - 7.7942i

计算 Y 的逆变换,结果与原始矩阵 X 相同(基于舍入误差)。

ifft2(Y)
ans = 3×3
8.0000    1.0000    6.0000
3.0000    5.0000    7.0000
4.0000    9.0000    2.0000

用尾随零填充 Y 的两个维度,使变换的大小为 8×8。

Z = ifft2(Y,8,8);
size(Z)
ans = 1×2
 8     8

共轭对称矩阵

打开实时脚本

X = ifft2(Y,‘symmetric’)

X = 2×2
 4     00    -1

输入参数

全部折叠

Y - 输入数组
矩阵 | 多维数组

输入数组,指定为矩阵或多维数组。如果 Y 的类型为 single,则 ifft2 本身以单精度进行计算,X 的类型也是 single。否则,Xdouble 类型返回。

数据类型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical
复数支持:

m - 逆变换行数
正整数标量

逆变换行数,指定为正整数标量。

n - 逆变换列数
正整数标量

逆变换列数,指定为正整数标量。

symflag - 对称类型
'nonsymmetric' (默认) | 'symmetric'

对称类型,指定为 'nonsymmetric''symmetric'。当 Y 由于舍入误差而导致不完全共轭对称时,ifft2(Y,'symmetric') 会将 Y 视为共轭对称。有关共轭对称的详细信息,请参阅算法。

详细信息

全部折叠

二维傅里叶变换/逆变换

m×n的矩阵 Y或连续函数 的离散傅里叶变换,结果为 X:

xp,q=∑j=1m∑k=1ne(j−1)(p−1)2πime(k−1)(q−1)2πinYjk,.x_{p,q} =\sum_{j=1}^{m}\sum_{k=1}^{n}e^{\frac{(j-1)(p-1)2\pi i}{m}}e^{\frac{(k-1)(q-1)2\pi i}{n}}Y_{jk},. xp,q​=j=1∑m​k=1∑n​em(j−1)(p−1)2πi​en(k−1)(q−1)2πi​Yjk​,.
i 是虚数单位。p 的范围从 1 到 m,q 的范围从 1 到 n。

m×n的矩阵 Y或连续函数 的离散傅里叶逆变换,结果为 X:
xp,q=1mn∑j=1m∑k=1ne−(j−1)(p−1)2πime−(k−1)(q−1)2πinYjk,.x_{p,q} =\frac{1}{mn} \sum_{j=1}^{m}\sum_{k=1}^{n}e^{-\frac{(j-1)(p-1)2\pi i}{m}}e^{-\frac{(k-1)(q-1)2\pi i}{n}}Y_{jk},. xp,q​=mn1​j=1∑m​k=1∑n​e−m(j−1)(p−1)2πi​e−n(k−1)(q−1)2πi​Yjk​,.
让p,q从0开始,j,k也从0开始,则
xp,q=1mn∑j=0m−1∑k=0n−1e−jp2πime−kq2πinYjk,.x_{p,q} =\frac{1}{mn} \sum_{j=0}^{m-1}\sum_{k=0}^{n-1}e^{-\frac{jp2\pi i}{m}}e^{-\frac{kq2\pi i}{n}}Y_{jk},. xp,q​=mn1​j=0∑m−1​k=0∑n−1​e−mjp2πi​e−nkq2πi​Yjk​,.
如果m=nm=nm=n,则
xp,q=1m2∑j=0m−1∑k=0m−1e−(jp+kqm)2πiYjk,.x_{p,q} =\frac{1}{m^{2}} \sum_{j=0}^{m-1}\sum_{k=0}^{m-1}e^{-(\frac{jp +kq}{m})2\pi i}Y_{jk},. xp,q​=m21​j=0∑m−1​k=0∑m−1​e−(mjp+kq​)2πiYjk​,.

算法

ifft2 函数测试矩阵 Y 中的向量是否在两个维度上都共轭对称。

  • 当向量 v 的第 i 个元素满足 v(i) = conj(v([1,end:-1:2])) 时,它就是一个共轭对称向量。
  • 如果 Y 中的向量在两个维度上都共轭对称,则逆变换的计算速度更快,并且输出为实数。

见https://ww2.mathworks.cn/help/matlab/ref/fft2.html

二维快速傅里叶逆变换相关推荐

  1. ifft2 二维快速傅里叶逆变换(Matlab)

    1.语法 X = ifft2(Y)         X = ifft2(Y,m,n)         X = ifft2(___,symflag) 2.说明 X = ifft2(Y) 使用快速傅里叶变 ...

  2. 【经典算法实现 44】理解二维FFT快速傅里叶变换 及 IFFT快速傅里叶逆变换(迭代法 和 递归法)

    [经典算法实现 44]理解二维FFT快速傅里叶变换 及 IFFT快速傅里叶逆变换(迭代法 和 递归法) 一.二维FFTFFTFFT快速傅里叶变换 公式推导 二.二维FFTFFTFFT 及 IFFTIF ...

  3. C++实现二维快速傅里叶变换(FFT)

    上一篇文章里,我根据DFT公式用C++实现了二维离散傅里叶变换.但跑一张300*300的图片都要好几分钟,速度实在太慢了.我研究了下快速傅里叶变换,在网上找了一些资料,然后用C++实现了二维快速傅里叶 ...

  4. C++实现二维离散傅里叶变换

    在上一篇文章<C++实现一维离散傅里叶变换>中,我们介绍了一维信号傅立叶变换的公式和C++实现,并阐述了频域幅值的意义. 一维傅立叶变换只适用于一维信号,例如音频数据.心脑电图等. 在图像 ...

  5. Python 二维离散傅里叶变换

    Python 二维离散傅里叶变换 文章目录 Python 二维离散傅里叶变换 需要的库 计算两张图片的PSNR 二维离散傅里叶变换 二维离散傅里叶逆变换 频域平移 绘制频域图像 需要的库 import ...

  6. 通过二维FFT变换对比加入窗函数之后的图像频谱和相位

    目录 一.理论基础 1.1二维FFT变换 1.2窗函数 二.核心程序 三.测试结果 一.理论基础 1.1二维FFT变换 以下公式定义 m×n 矩阵 X 的离散傅里叶变换 Y: ωm 和 ωn 是复单位 ...

  7. 单尺度二维离散小波重构(逆变换)idwt2

    clc,clear all,close all; load woman; %单尺度二维离散小波分解.分解小波函数haar [cA,cH,cV,cD]=dwt2(X,'haar'); %单尺度二维离散小 ...

  8. 泊松融合进阶——DFT求解二维泊松方程

    前言 泊松融合(Poisson Blending)是图像处理领域著名的图像融合算法,自从2003年发表以来,有很多基于此算法的应用和改进研究出现.泊松融合无需像Alpha blending一样的精确抠 ...

  9. 对图像进行二维离散Fourier变换

    用函数fft2对图像进行二维离散Fourier变换.用图像的形式分别显示清晰的频谱幅度和相位.对图像用窗函数加权,观察其Fourier变换,解释加窗前后的变化.对图像作Fourier变换和反变换.将图 ...

最新文章

  1. qt与JAVA服务器通信_Qt实现的SSL通信客户端和服务器
  2. java 中如何连接 oracle 数据库
  3. 用大数据看中国美食咸甜之战
  4. 201671010103 2016-2017-2 《Java程序设计》第二周学习心得
  5. Zookeeper-单机/集群安装
  6. BZOJ2428[HAOI2006] 均分数据
  7. 如何划分和细化有限元网格,才能提高计算的精度和速度?
  8. Trance — Aura NFT 合集
  9. 数据库设计-UML模型
  10. macbook不能进系统 备份数据_用数据“说话” VOCs治理在线监测系统不能少
  11. 【云原生 | Kubernetes 系列】K8s 实战 一文学会如何从 PodSecurityPolicy 迁移到内置的 PodSecurity 准入控制器
  12. 连作业都不会抄!盘点那些年被淘宝直播带沟里的直播平台
  13. iphone修改app名称_iPhone6 plus怎么修改图标名字?苹果6 plus设置修改图标名字教程...
  14. Mac显示/隐藏文件夹
  15. 形状文法--建筑风格分类总结
  16. Hive中小表与大表关联(join)的性能分析
  17. Java项目:SSH的自动排课系统-遗传算法
  18. reshape(1,-1)与reshape(-1,1)的理解
  19. 嵌入式开发常见通信协议
  20. python爬虫解决403禁止访问错误

热门文章

  1. 开源项目 ——API接口管理平台数据库原型设计(三)
  2. YApi接口管理平台远程代码执行漏洞(含批量POC)
  3. 物联网发展前景和统一通信
  4. Flask源码阅读(六)——Flash消息
  5. Python 爬取朋友圈最新方法!!(文末赠书)
  6. ms office excel2013教程 - 分类汇总
  7. 51单片机复习程序例举004--HD44780控制的1602LCD
  8. webpy使用说明(二)
  9. [BZOJ 3653] 谈笑风生
  10. 【计算机网络】—— 数据链路层的功能概述