网上对于傅里叶变换相关的文章很多(足够多),有的是从物理相关角度入场,有的从数学分析角度入场。对于有志学习相关概念的同学还是能够很好的理解的。

数学包括三大块:代数学、几何、数学分析。前两块我们在中学阶段一直在用,数学分析(非数学专业以高等数学入门)在大学开始接触

本文从更简单(最简单)的解析几何角度尝试讲一点DFT的入门概念。

解析几何就是把几何用代数学表示,引入了平面直角坐标系,是高中数学的主要部分

一、复数和单位复数根

复数我们在高中已经接触过了。当时为了强调二次方程一定有两个根(而不是更多或更少),引入了虚数单位\(i\),它是-1的平方根:

但实际上反过来不成立,也就是说-1的平方根并不只是\(i\)。想一下为什么?

这样类似于\(2+3i\)这样的_表示_就叫“复数”。其中\(2\)是实部,\(3\)是虚部(注意虚部不是\(3i\),因为\(i\)只是一种约定俗成的字母,实际可以用任何字母。甚至用有序实数对_表示_复数的时候完全不用引入字母)。

这里我们多次使用表示来说复数,是因为复数实际真的不是数(虽然说它是对实数系的扩充)。数的作用是“计数”,要能够比较大小。实数以后的数系都不再能比较了。只是在生产过程中,新的数系能把事情解释的更明白。而且对比来讲,实数上面的运算只是高等数系的一种特殊情况,复数的各种规律依然完全适用于实数。这样看来,用来计数的实数反而是自然界的“副产品”

有了复数概念,我们就可以说n次方程有且只有n个(复数)根。比如:有4个根。除了我们一眼看出的熟悉的正负1,还有两个虚数根:正负i。

单位复数根就是这么来的:方程的n个根就叫n次单位复根

二、与复平面的关系

复平面可以理解为中学的平面直角坐标系,只不过横轴变成了实数轴,纵轴变成了虚数轴。

上图中横轴是实轴,纵轴是虚轴。单位圆与横轴的两个交点左右分别是-1,1;与纵轴的两个交点上下分别是i,-i。

上面提到的4次方程的4个根就是四次单位复根。从复平面看就是:第一个根从原点向实轴正向交于1(任意次单位复根第一个根都是1对吧?),第二个逆时针(或者说正向)转90度(因为3604)到了i,再转90度是第三个根-1,继续转是最后一个-i。

再比如,的8个八次单位复数根同理可知,分别是或者用三角函数表示

实际上,每次转动的角度确定以后(这个角度很好算,就是360除以次数,比如8次的就是360/8=45度,对应弧度π/4),第k个根(k从0开始到n-1)就是

可以自行验证。

三、离散傅里叶变换

有了上面的基础知识,我们来定义离散傅里叶变换。

设有向量

对于每一个下标\(j=0,1,...,n-1\),重新计算一个值:

其中\(w_n^j\)是n次单位复根中的第\(j\)个。

这样,离散傅里叶变换就是下面这个向量:

四、练习

请计算向量\(\left[\begin{array}{cccccc}
0&1& 2&3
\end{array}\right]^T\)的DFT。

离散傅里叶变换DFT入门的更多相关文章

  1. 灰度图像--频域滤波 傅里叶变换之离散傅里叶变换(DFT)

    学习DIP第23天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan,欢迎大家转载,发现博客被某些论坛转载后,图像无法正常显示,无法正常表达本人观点,对此表示很不 ...

  2. 【转】离散傅里叶变换-DFT(FFT)基础

    转:https://blog.csdn.net/zhangxz259/article/details/81627341 什么是离散傅里叶变换 matlab例子 本文是从最基础的知识开始讲解,力求用最通 ...

  3. 用matlab脚本语言写M文件函数时用三种方法简单实现实现DFT(离散傅里叶变换)

    %用二重循环实现DFT: function xk=dt_0(xn); %define a function N=length(xn); %caculate the length of the vari ...

  4. c语言数字图像处理(六):二维离散傅里叶变换

    基础知识 复数表示 C = R + jI 极坐标:C = |C|(cosθ + jsinθ) 欧拉公式:C = |C|ejθ 有关更多的时域与复频域的知识可以学习复变函数与积分变换,本篇文章只给出DF ...

  5. opencv 3 core组件进阶(3 离散傅里叶变换;输入输出XML和YAML文件)

    离散傅里叶变换 #include "opencv2/core/core.hpp" #include "opencv2/imgproc/imgproc.hpp" ...

  6. OpenCV离散傅里叶变换

    离散傅里叶变换 作用:得到图像中几何结构信息 结论:傅里叶变换后的白色部分(即幅度较大的低频部分),表示的是图像中慢变化的特性,或者说是灰度变化缓慢的特性(低频部分). 傅里叶变换后的黑色部分(即幅度 ...

  7. 离散傅里叶变换(DFT)

    目录     一.研究的意义     二.DFT的定义    三.DFT与傅里叶变换和Z变换的关系     四.DFT的周期性     五.matlab实验       五.1 程序         ...

  8. Opencv 实现图像的离散傅里叶变换(DFT)、卷积运算(相关滤波)

    我是做Tracking 的,对于速度要求非常高.发现傅里叶变换能够使用. 于是学习之. 核心: 最根本的一点就是将时域内的信号转移到频域里面.这样时域里的卷积能够转换为频域内的乘积! 在分析图像信号的 ...

  9. 【算法•日更•第四十二期】离散傅里叶变换(DFT)

    ▎前言 小编相当的菜,这篇博客难度稍高,所以有些可能不会带有证明,博客中更多的是定义. 我们将要学到的东西: 复数 暴力多项式乘法 DFT 当然,小编之前就已经写过一篇博客了,主要讲的就是基础多项式, ...

随机推荐

  1. Robot Framework+adb框架自动化测试Android设备案例⑷——L2层关键字

    一.EMMC测试套件 L2层关键字.robot *** Settings *** Resource ../L3公共层.robot *** Keywords *** 一般录影文件列表(EMMC) ${f ...

  2. React Native学习记录

    1.端口问题 在调试的时候,监听的是8081端口.如果被占用,会报错,并且在reload的时候导致app直接崩掉. 2.插件网站收集 https://nativebase.io/ https://js ...

  3. 剑指Java高效编程教程

    教程介绍 所谓"武以快为尊,天下武功唯快不破".本课程剑指Java高效编程,致力于从"技术"和"工具"两大 维度提高编程效率,帮助广大程序员 ...

  4. K8s 终将废弃 docker,TKE 早已支持 containerd

    近日 K8s 官方称最早将在 1.23版本弃用 docker 作为容器运行时,并在博客中强调可以使用如 containerd 等 CRI 运行时来代替 docker.本文会做详细解读,并介绍 dock ...

  5. 软件测试最常用的 SQL 命令 | 掌握基本查询、条件查询、聚合查询

    1.DML核心CRUD增删改查 缩写全称和对应 SQL: * DML 数据操纵语言:Data Manipulation Language * Create 增加:insert * Retrieve 查 ...

  6. Promise对象,究竟为何物?

    Promise对象 一.什么是Promise? Promise是一种异步操作的解决方案,将写法复杂的传统的回调函数和监听事件的异步操作,用同步代码的形式表达出来. Promise避免了多级异步操作的回 ...

  7. Protobuf简单类型直接反序列化方法

    我有一个想法,有一个能够进行跨平台的高性能数据协议规范,能够让数据在两个不同的程序之间进行读取,最好能够支持直接将object序列化,那就完美了. 目标 支持任意Object序列化 支持从类似Syst ...

  8. 【剑指offer】03 从尾到头打印链表

    题目地址:从尾到头打印链表 题目描述                                    输入一个链表,按链表从尾到头的顺序返回一个ArrayList. 时间限制:C/C++ 1秒, ...

  9. Windows系统提示:“windows找不到文件请确定文件名是否正确后

    最近使用Win7/10系统的用户反应在系统中移动了桌面上的一些与系统无关的文档,在挪动了文件之后出现的问题,弹出了windows找不到文件请确定文件名是否正确后,再试一次, 的错误提示,该怎么办呢? ...

  10. (十二)、file--判断文件类型命令

    一.命令描述与格式 描述:linux在查看一个文件前,要首先确定该文件中数据的类型,之后再使用适当的命令或者方法打开该文件,在linux中文件的扩展名并不代表文件的类型,也就是说扩展名与文件的类型没有 ...