matlab使用教程(40)—二维傅里叶变换和多项式插值

1使用 FFT 进行多项式插值

        使用快速傅里叶变换 (FFT) 来估算用于对一组数据进行插值的三角函数多项式的系数。

1.1数学中的 FFT

        FFT 算法通常与信号处理应用相关,但也可以在数学领域更广泛地用作快速计算工具。例如,通常通过解算简单的线性系统来计算用于对一组数据进行插值的 n 次多项式的系数c i:
        在 19 世纪初研究小行星轨道时,卡尔·弗里德里希·高斯发现了一种数学捷径,即通过将问题分解为多个较小的子问题,然后将结果合并来计算多项式插值的系数。他的方法等同于估算其数据的离散傅里叶变换。

1.2 小行星数据插值

        在高斯的论文中,他描述了一种估算小行星智神星轨道的方法。他从以下 12 个二维数据点 x y 开始。
x = 0:30:330;
y = [408 89 -66 10 338 807 1238 1511 1583 1462 1183 804];
plot(x,y,'ro')
xlim([0 360])

        高斯使用以下形式的三角函数多项式为小行星的轨道建模。
        使用 fft 计算多项式的系数。
m = length(y);
n = floor((m+1)/2);
z = fft(y)/m;
a0 = z(1); 
an = 2*real(z(2:n));
a6 = z(n+1);
bn = -2*imag(z(2:n));
        在原始数据点上绘制插值多项式。
hold on
px = 0:0.01:360;
k = 1:length(an);
py = a0 + an*cos(2*pi*k'*px/360) ...
 + bn*sin(2*pi*k'*px/360) ...
 + a6*cos(2*pi*6*px/360); 
plot(px,py)

2二维傅里叶变换

        fft2 函数将二维数据变换为频率空间。例如,您可以变换二维光学掩膜以揭示其衍射模式。

2.1二维傅里叶变换原理

        以下公式定义 m×n 矩阵 X 的离散傅里叶变换 Y。
        计算 X 的二维傅里叶变换等同于首先计算 X 每列的一维变换,然后获取每行结果的一维变换。换言之,命令 fft2(X) 等同于 Y = fft(fft(X).').'

2.2二维衍射模式

        在光学领域,傅里叶变换可用于描述平面波入射到带有小孔的光学掩膜上所产生的衍射模式 [1]。本示例对光学掩膜使用 fft2 函数来计算其衍射模式。
        创建用于定义带有小圆孔的光学掩膜的逻辑数组。
n = 2^10; % size of mask
M = zeros(n);
I = 1:n; 
x = I-n/2; % mask x-coordinates 
y = n/2-I; % mask y-coordinates
[X,Y] = meshgrid(x,y); % create 2-D mask grid
R = 10; % aperture radius
A = (X.^2 + Y.^2 <= R^2); % circular aperture of radius R
M(A) = 1; % set mask elements inside aperture to 1
imagesc(M) % plot mask
axis image

        使用 fft2 计算掩膜的二维傅里叶变换,并使用 fftshift 函数重新排列输出,从而使零频率分量位于中央。绘制生成的衍射模式频率。蓝色指示较小的幅值,黄色指示较大的幅值。
DP = fftshift(fft2(M));
imagesc(abs(DP))
axis image

        为增强小幅值区域的细节,需绘制衍射模式的二维对数。极小的幅值会受数值舍入误差影响,而矩形网格则会导致径向非对称性。
imagesc(abs(log2(DP)))
axis image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/534301.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JS加密:对比JScrambler和JShaman加密效果

本文&#xff0c;以一个实例&#xff0c;比对JS加密两大神器&#xff1a;JScrambler、JShaman的加密结果&#xff0c;看看谁的加密效果更好。 注&#xff1a;本文不是技术文章&#xff0c;仅仅从加密结果的“型”上简单观查&#xff0c;不做技术分析&#xff0c;仅看哪个加密代…

Windows系统Docker部署IT工具箱It- Tools结合内网穿透实现公网访问

文章目录 1. 使用Docker本地部署it-tools2. 本地访问it-tools3. 安装cpolar内网穿透4. 固定it-tools公网地址 本篇文章将介绍如何在Windows上使用Docker本地部署IT- Tools&#xff0c;并且同样可以结合cpolar实现公网访问。 在前一篇文章中我们讲解了如何在Linux中使用Docker搭…

AI论文速读 | TF-LLM:基于大语言模型可解释性的交通预测

论文标题&#xff1a; Explainable Traffic Flow Prediction with Large Language Models 作者&#xff1a;Xusen Guo, Qiming Zhang, Mingxing Peng, Meixin Zhu(朱美新)*, Hao (Frank)Yang(杨昊) 机构&#xff1a;香港科技大学&#xff08;广州&#xff09;&#xff0c;约翰…

vue3 + potree 渲染点云数据记录

potree 官网示例 前置条件&#xff1a; potree 无法直接加载 LAS&#xff0c;LCD&#xff0c;PLY等格式的点云文件, 需要通过 PotreeConverte 转换为 octree 数据格式&#xff0c;前端渲染中加载转换后的 json 格式 格式转换方向 .las ---- potreeConverter ----> .json…

【Python】类和对象

类和对象 构造方法封装继承多继承 多态 类&#xff1a; 类是一个模板&#xff0c;描述一类对象的行为和状态。 有了模板我们就可以根据这个模板创建具体的对象。 对象&#xff1a; 对象是类的一个具体实例&#xff0c;有状态和行为。 class 类名称: 类的属性类的行为 # 其中 c…

Python 复杂密码图形化生成工具,支持选择生成10位和12位复杂密码(初版)

代码 #!/usr/bin/env python # -*- coding: utf-8 -*- # Time : 2024/3/26 15:22 # Author : wyq # File : 部署测试.py import random import string from tkinter import *def generate_password(length):characters string.ascii_letters string.digits string.p…

2006-2021年各省能源消费总量数据(无缺失)

2006-2021年各省能源消费总量数据&#xff08;无缺失&#xff09; 1、时间&#xff1a;2006-2021年 2、来源&#xff1a;能源年鉴、各省年鉴 3、范围&#xff1a;30个省 4、指标&#xff1a;能源消费总量&#xff08;万吨标煤&#xff09; 5、缺失情况&#xff1a;无缺失 …

智能网联汽车自动驾驶数据记录系统DSSAD数据元素

目录 第一章 数据元素分级 第二章 数据元素分类 第三章 数据元素基本信息表 表1 车辆及自动驾驶数据记录系统基本信息 表2 车辆状态及动态信息 表3 自动驾驶系统运行信息 表4 行车环境信息 表5 驾驶员操作及状态信息 第一章 数据元素分级 自动驾驶数据记录系统记录的数…

设计模式-组合模式(Composite Pattern)

1. 概念 组合模式是一种结构型设计模式&#xff0c;它允许将对象组合成树状的层次结构&#xff0c;用来表示“整体-部分”的关系。 2. 原理结构图 原理图 抽象角色&#xff08;Component&#xff09;&#xff1a;这是组合模式的核心&#xff0c;它定义了树叶和树枝构件的公…

跟TED演讲学英文:The inside story of ChatGPT‘s astonishing potential by Greg Brockman

The inside story of ChatGPT’s astonishing potential Link: https://www.ted.com/talks/greg_brockman_the_inside_story_of_chatgpt_s_astonishing_potential Speaker: Greg Brockman Date:April 2023 文章目录 The inside story of ChatGPTs astonishing potentialIntro…

第100+5步 ChatGPT文献复现:ARIMAX预测肺结核 vol. 5

基于WIN10的64位系统演示 一、写在前面 我们继续往下看&#xff0c;首先例行回顾文章&#xff1a; 《PLoS One》杂志的2023年一篇题目为《A comparative study of three models to analyze the impact of air pollutants on the number of pulmonary tuberculosis cases in …

zdpreact_antdesginpro 研究一下react里面比较流行的一个UI框架,开发后台管理系统

首先看一下最开始的代码&#xff1a; 这里面大部分的东西都可以删掉&#xff0c;比如README&#xff0c;只留下中文的那个就可以了。 之后看看README.md中介绍的特性。 特性 &#x1f4a1; TypeScript: 应用程序级 JavaScript 的语言&#x1f4dc; 区块: 通过区块模板快速…

LeetCode 热题 100 题解(二):双指针部分(2)| 滑动窗口部分(1)

题目四&#xff1a;接雨水&#xff08;No. 43&#xff09; 题目链接&#xff1a;https://leetcode.cn/problems/trapping-rain-water/description/?envTypestudy-plan-v2&envIdtop-100-liked 难度&#xff1a;困难 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图&am…

[数据概念|数据技术]智能合约如何助力数据资产变现

“ 区块链上数据具有高可信度&#xff0c;智能合约将区块链变得更加智能化&#xff0c;以支持企业场景。” 之前鼹鼠哥已经发表了一篇文章&#xff0c;简单介绍了区块链&#xff0c;那么&#xff0c;智能合约又是什么呢&#xff1f;它又是如何助力数据资产变现的呢&#xff1f;…

Python空间分析简明教程

数据世界是一个活生生的、会呼吸的事物。 当一个城市的犯罪率上升时&#xff0c;这是因为现实世界中有人在某个地方犯罪。 有警察局、住宅区和商业区、人口密度以及可以与位置相关联的人的地方。 所有这些东西都存在于数据框和表格之外的世界中。 空间分析使数据科学家能够回答…

成都百洲文化传媒有限公司靠谱吗?怎么样?

随着互联网的迅猛发展&#xff0c;电子商务行业迎来了前所未有的发展机遇。在这个变革的浪潮中&#xff0c;成都百洲文化传媒有限公司凭借其深厚的行业经验和创新的服务模式&#xff0c;正逐渐成为电商服务领域的新领军者。 一、创新引领&#xff0c;塑造电商服务新标准 成都百…

FX110网:Exness平台2024年3月交易量环比增长9%

FX110获知&#xff0c;多资产公司Exness 2024年3月份的客户交易量环比大幅增长9%&#xff0c;达到3.856万亿美元&#xff0c;而上个月为3.534万亿美元。 交易量激增的同时&#xff0c;活跃客户数量不断增加&#xff0c;3月份达到破纪录的836,873位交易者&#xff0c;超过了上个…

51单片机学习笔记——LED点亮

一、独立按键控制LED元器件和原理图 根据厂家给的原理图找到独立按键模块&#xff0c;观察下图我们知道按钮的一个头接GND&#xff0c;一头接IO口。由此可知我们如果需要使用第一个按钮则需要用p31。 二、独立按键控制LED程序 程序编写需要使用到IF else语句 当如果P310时P20…

vue快速入门(十六)事件修饰符

注释很详细&#xff0c;直接上代码 上一篇 新增内容 事件修饰符之阻止冒泡事件修饰符之阻止默认行为 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdev…

uniapp开发小程序,点击右上角<重新进入小程序>进行刷新时,设置开屏加载页面

一、需求及问题 问题&#xff1a;使用uniapp开发小程序时&#xff0c;有【学生端】和【企业端】两个入口&#xff0c;一进入小程序默认进入【学生端首页】&#xff0c;但是当前处于【企业端】时&#xff0c;点击右上角<重新进入小程序>进行刷新时&#xff0c;页面默认进…