二维傅里叶变换简化方式

article/2025/10/3 2:17:39

在处理二维矩阵时,常想着如何把时域转换到频域来处理,因此翻来了以往数分里面的常用的傅里叶(Fourier Transform);
(Notes:一下公式中 M,N分别为二维矩阵的列数和行数,f(x,y) 代表改二维矩阵,F(u,v)为转换后的矩阵);
I. 傅里叶变换的公式:
在这里插入图片描述
拆分到这里,我也很开心的掏出祖传的Matlab写了几行代码来实现:

function [Fuv] = Myft2(fxy)[N,M,dim] = size(fxy);if dim > 1txy = double((rgb2gray(fxy)))/255;elsetxy = double(fxy)/255;end[U,V] = meshgrid(0:M-1,0:N-1);Gxv = zeros(N,M);for y = 1:NA2 = txy.*exp(-2*pi*1i * (y-1)*V./N);Gxv(y,:) = sum(A2,1);endFuv = zeros(N,M);for x = 1:MA1 = Gxv .* exp(-2*pi*1i * (x-1)*U ./ M);Fuv(:,x) = sum(A1,2);end

然后与matlab自带函数fft2 做组对比:

clear;clc;
Lena = imread('lena.jpg');tic;
tSrc_fft = Lena;
Fmy = Myft2(tSrc_fft);
sp1 = toc;
tic;
if size(Lena,3) > 1tSrc_mat = double((rgb2gray(Lena)))/255;
elsetSrc_mat = double(Lena)/255;
end
Fmatlab = fft2(tSrc_mat);
sp2=toc;
tE = isempty(find(abs(Fmatlab - Fmy) > 0.01, 1));
disp(['是否为空:',num2str(tE)]);
disp(['时间长(s):',num2str(sp1 - sp2)]);

但是时间却相差甚远:
在这里插入图片描述
看了看原公式,想了想如果把上述代码转换成Matlab 矩阵运算是不是会提速。然后就实际行动起来:
上面公式可以转换成 F = g1* f *g2;(矩阵与代码如下:)
在这里插入图片描述

function [Fuv ] = Myft2(fxy )[N,M,dim] = size(fxy);if dim > 1txy = double((rgb2gray(fxy)))/255;elsetxy = double(fxy)/255;end[Vx,Vy] = meshgrid(0:N-1,0:N-1);G1 = exp(-1i*2*pi .*(Vx.*Vy)./N);[Ux,Uy] = meshgrid(0:M-1,0:M-1);G2 = exp(-1i*2*pi .*(Ux.*Uy)./M);Fuv = G1 * txy * G2;

重复上面的对比:
在这里插入图片描述
果然Matlb矩阵计算还是有优势的,效果看起来还可以;

II. 傅里叶逆变换公式:
在这里插入图片描述
用同样的方式,写傅里叶逆变换的代码,即可获取同样的效果,这里就只贴上公式了;下一期打算做一下基于fft的高通滤波


http://chatgpt.dhexx.cn/article/rdCsbAG7.shtml

相关文章

C++中fftw库二维傅里叶变换笔记

目录 1.相关基础知识参考链接 2.二维傅里叶变换作用简介 3.FFTW二维傅里叶变换输出分析 (1)原始输出数据​ (2)频谱中心化后的输出数据 4.频谱图绘制 5.二维傅里叶变换逆变换 6.从输出结果中分离各平面波并画出波形平面图…

二维傅里叶变换的理解和使用

目录 似模似样的前言一维傅里叶二维傅里叶 似模似样的前言 最近的瑕疵检测项目需要在有纹理的产品上做很细致的检测。由于当前做项目使用的还是halcon居多,目前知道的方法还是傅里叶变换比较靠谱。 但仅靠halcon自带的样例并不能很好的理解和使用傅里叶&#xff0…

二维傅里叶变换频谱图的直观理解

众所周知:频谱中心代表低频,四周代表高频。 问:那(u,v)一点代表什么? 答: 1.当为水平方向的正弦图片时,二维傅里叶变换后,其只有u方向的频谱值; 2…

Matlab:二维傅里叶变换

Matlab:二维傅里叶变换 二维傅里叶变换二维衍射模式fft2 函数将二维数据变换为频率空间。例如,您可以变换二维光学掩膜以揭示其衍射模式。 二维傅里叶变换 以下公式定义 mn 矩阵 X 的离散傅里叶变换 Y。 i 是虚数单位,p 和 j 是值范围从 0 到 m–1 的索引,q 和 k 是值范围…

matlab二维傅里叶变换ffshift,形象理解二维傅里叶变换

点击上方“机器学习与生成对抗网络”,关注"星标" 获取有趣、好玩的前沿干货! 来自 | 知乎 阿姆斯特朗 链接 | https://zhuanlan.zhihu.com/p/110026009 文仅交流,侵删 1.回顾一下一维FT 公式: 通俗来讲,一维傅里叶变换是将一个一维的信号分解成若干个复指数波 …

傅里叶变换(二维离散傅里叶变换)

离散二维傅里叶变换 一常用性质: 可分离性、周期性和共轭对称性、平移性、旋转性质、卷积与相关定理; (1)可分离性: 二维离散傅里叶变换DFT可分离性的基本思想是DFT可分离为两次一维DFT。因此可以用通过计算两次一维…

二维傅里叶变换

fft2 函数将二维数据变换为频率空间。例如,可以变换二维光学掩膜以揭示其衍射模式。 二维傅里叶变换 以下公式定义 mn 矩阵 X 的离散傅里叶变换 Y。 和 是以下方程所定义的复单位根。 i 是虚数单位,p 和 j 是值范围从 0 到 m–1 的索引,q …

【深度好文】二维图像傅里叶变换 YYDS

1. 傅里叶变换原理 在数学中进行傅里叶变换为连续模拟信号,通常来说: 二维连续函数f(x,y)的傅里叶正变换为: 相应的傅里叶逆变换公式为: 但是在计算机领域,计算机一般处理的是数字信号,只能进行有限次计…

微信公众号开发模式没有域名怎么办?申请免费域名

微信公众号开发采用前后端分离模式,那么前端使用微信开发工具开发时,需要域名才能访问,那么域名从何而来呢? 1、申请域名 a)、NetApp申请免费域名 : https://natapp.cn/login b)、域名申请好以后,下载客户端&#xf…

freenom 申请免费域名

为了降低建站成本,可在freenom上申请免费域名,可以免费使用一年。 一. 注册域名 登录freenom.com,输入域名,检测通过后,输入邮箱,登录邮箱完成激活。 二. 配置DNS 上面申请的域名未绑定外网ip&#xff0c…

如何注册一个免费的网站空间和域名

https://www.jianshu.com/p/016c83f70d43 前几天想搞个网站玩玩,于是就上网搜哪里可以注册免费的网站空间和域名,折腾了好几天都没注册成,国内好像已经没有免费的了。只好用英文去搜国外的网站,才找到了一个能注册成功的&#xff…

Freenom免费域名申请

Freenom免费域名申请 准备条件操作流程注意选择域名确定并提交订单方法一(谷歌,FaceBook)方法二(开发者邮箱注册) 注册谷歌,Facebook 注册 防订单失败操作 准备条件 必须拥有一个 谷歌账号 或 Facebook 账号 亦或者 拥有一个 未注册Freenom的邮箱 登录 …

【免费域名】教你免费申请顶级域名

一、输入网址 :https://my.freenom.com/ 二、点击Service->Register a New Domain,注意这里有网络延时至少30秒 三、输入自己想要的域名,点击Check Avaliability,比如我的是abc5500,延时10秒 四、Get it now! ->…

免费域名证书最新申请方式大全

目前市场环境下,可获得域名SSL证书的方式有很多,一般有付费和免费划分。对于想免费使用域名SSL证书的朋友,这里收集整理了几个常用的SSL证书申请方式。 对于SSL证书的用处,简单的来说,就是加密数据传输,使…

免费域名申请及免费DNS解析

一:免费域名申请 1:freenom免费域名申请(有效期12个月) 我是通过科学上网才申请成功。普通方式申请容易出现各种问题不成功。因为freenom网站要连接国外各种服务器检测域名的可用性。 如下图申请成功的域名: 域名再DNS…

freenom域名申请教程

freenom域名申请教程 1. 注册&申请域名 打开freenom官网,注册一个账户【注意:如果没有明显的注册按钮,可以通过如下方式同时申请域名和注册账户】 打开域名申请【不用注册】 选择好了域名之后,点击Checkout;选择…

freenom免费域名的申请+cloudflare(域名代理解析)

视频网址:公众号知识浅谈回复 freenom+cloudflare 领取 第一步:注册 freenom{申请免费域名}: https://my.freenom.com/ 注册步骤 首页->partners->Devlopers->下滑找到Get a Random Domains Account today! 这句话,点击之后进入下一个页面 然后去邮箱激活,再次重复上…

免费申请国外免费域名超详细教程

注意事项: 1.需要准备好VPN(因为是用的国外的,不会搭建的可以看我之前的笔记笔记地址) 2.手机下载Gmail, 注册谷歌邮箱,国内手机号就可以注册手机邮箱 3.谷歌邮箱内验证freenom注册信息时候需要美区手机号验证。这里给…

freenom 加 cloudflare免费域名申请

https://www.freenom.com/zh/index.html?langzh 该网站管理 .tk .ml 等后缀 输入如 aaa.tk购买时需要账号(免费购买),需要一个谷歌账号,可以 social login 购买成功后,可以看见域名 打开 https://dash.cloudflare.…

申请免费域名、配置域名以及https证书设置

如何申请免费域名 域名申请官方网站 https://my.freenom.com/clientarea.php 详细的申请教程可以查看都比根据地良心教程 https://doub.io/dbwz-3/ 我申请的免费域名 如何用刚申请到的域名 现在我们有了域名,接下来就是解析域名了,也就是域名配置绑定…