首页 > 其他分享 >拉普拉斯变换的几何直观理解

拉普拉斯变换的几何直观理解

时间:2023-08-10 17:35:00浏览次数:47  
标签:函数 变换 拉普拉斯 beta 积分 傅里叶 直观


傅里叶变换具有非常广泛的应用,但是也有明显的缺点,就是对函数

拉普拉斯变换的几何直观理解_1024程序员节

的要求太苛刻,主要便现在:

  1. 要求函数在绝对可积,即满足, 傅里叶变换存在.这个条件要求当,,事实上,很多函数都不满足这个条件,比如,正弦和余弦函数,单位阶跃函数等.
  2. 要求函数必须在整个区间有定义,对于定义在区间的函数,比如以时间t为变量的函数,则无法进行傅里叶变换.

解决这些问题的办法是引入拉普拉斯变换,拉普拉斯变换可以说是信息机电类专业本科阶段知识的极限了,控制,通信,电气,甚至机械都难逃它罪恶的魔爪,它比把大象放进冰箱复杂多了。

拉普拉斯变换的定义:

拉普拉斯变换是在傅里叶变换的基础上引入的,现在考虑对一个任意函数

拉普拉斯变换的几何直观理解_傅里叶变换_02

进行傅里叶变换,为了使之在

拉普拉斯变换的几何直观理解_1024程序员节_03

区间有定义,给它乘以单位阶跃函数

拉普拉斯变换的几何直观理解_时域_04

,为了容易满足绝对可积条件,再乘以衰减因子

e^{-\beta t}\ (\beta > 0)

,然后对函数

拉普拉斯变换的几何直观理解_傅里叶变换_06

进行傅里叶变换.

拉普拉斯变换的几何直观理解_时域_07

其中,

拉普拉斯变换的几何直观理解_拉普拉斯变换_08

,

, 拉普拉斯变换记为:

拉普拉斯变换的几何直观理解_傅里叶变换_09

可见,

拉普拉斯变换的几何直观理解_时域_10

的拉普拉斯变换就是

拉普拉斯变换的几何直观理解_傅里叶变换_06

的傅里叶变换,上式是函数

的拉普拉斯变换的一般定义式,其中参数

拉普拉斯变换的几何直观理解_1024程序员节_12

是一个复数,实部为正.

拉普拉斯变换的几何直观理解_时域_10

的拉普拉斯变换记为

拉普拉斯变换的几何直观理解_时域_14


拉普拉斯变换的几何直观理解_1024程序员节_15

为像函数,

拉普拉斯变换的几何直观理解_时域_10

为原函数.

e^{-\beta t}\ (\beta > 0)

的主要作用是把一个定义域内绝对不可积的函数”掰弯“,从而让它变得绝对可积,方法是乘以一个变化率比函数更大更高阶的无穷小,下图形象展示了指数函数是如何掰弯一个高次幂函数的。

拉普拉斯变换的几何直观理解_时域_18

可以看到,

拉普拉斯变换的几何直观理解_数学_19

级的幂函数在n还没取到2的时候竟然已经被掰弯的不成样子了,可以看出

e^{-\beta t}\ (\beta > 0)

还是蛮给力的,在指数函数绝对的实力面前,幂级数还是不堪一击的。


相对于傅里叶变换,拉普拉斯变换存在的条件要弱的多,因为指数因子

e^{-\beta t}\ (\beta > 0)

的加入使积分变得更容易收敛.绝对可积不在必要,但这并不意味着任意一个函数都存在拉普拉斯变换而无需任何条件,事实上,拉普拉斯变换存在的充分条件可以表述为:

  1. 函数在区间上是分段连续的.
  2. 存在正常数和,对于所有的,使得成立,则函数对于所有的,存在拉普拉斯变换,即:

证明:

例如对于下面的分段连续函数

拉普拉斯变换的几何直观理解_时域_22

定义域是

拉普拉斯变换的几何直观理解_傅里叶变换_23

,再区间

拉普拉斯变换的几何直观理解_数学_24


拉普拉斯变换的几何直观理解_傅里叶变换_25

均连续,在

拉普拉斯变换的几何直观理解_拉普拉斯变换_26

点不连续.

拉普拉斯变换的几何直观理解_时域_27

由于

拉普拉斯变换的几何直观理解_数学_24

上是连续的,所以

在这个区间也是连续的,于是第一个积分存在.为了证明第二个积分存在,需要利用条件

拉普拉斯变换的几何直观理解_时域_29


拉普拉斯变换的几何直观理解_傅里叶变换_30

实际问题中的大部分函数都满足laplace变换的充分条件,而不满足fourier变换中绝对可积条件的

拉普拉斯变换的几何直观理解_时域_04

,

拉普拉斯变换的几何直观理解_拉普拉斯变换_32

,

拉普拉斯变换的几何直观理解_1024程序员节_33

等函数,现在都满足上述拉普拉斯变换存在的条件:

拉普拉斯变换的几何直观理解_数学_34

拉普拉斯变换的几何直观理解_时域_35

拉普拉斯变换的几何直观理解_傅里叶变换_36

与fourier变换类似,上面的两个条件是充分的,但不是必要的,有的函数尽管不满足上面的条件,但仍然存在拉普拉斯变换.


拉普拉斯逆变换公式-反演积分公式推导

由拉普拉斯变换和傅里叶变换的关系可知,函数

拉普拉斯变换的几何直观理解_时域_10


拉普拉斯变换的几何直观理解_数学_38

拉普拉斯变换的几何直观理解_傅里叶变换_39


拉普拉斯变换的几何直观理解_1024程序员节_40

在积分区间

拉普拉斯变换的几何直观理解_1024程序员节_41

变化时候,

拉普拉斯变换的几何直观理解_数学_42


拉普拉斯变换的几何直观理解_时域_43

上变化,所以积分式可以化为:

换公式总结为:

拉普拉斯变换的几何直观理解_时域_44

\mathbf{\mathcal{L}^{-1}[F(s)]=f(t)=\frac{1}{2\pi j}\int_{\beta -j\infty}^{\beta +j\infty}F(s)e^{s t}ds \ \ (t > 0)}

拉普拉斯反变换积分路径是复平面一条直线,它的实部为

拉普拉斯变换的几何直观理解_傅里叶变换_46

,也就是复平面上

拉普拉斯变换的几何直观理解_数学_47

的一条直线.如果

拉普拉斯变换的几何直观理解_1024程序员节_15

在直线

拉普拉斯变换的几何直观理解_1024程序员节_49

上有奇点,则要求

,也就是要求

拉普拉斯变换的几何直观理解_傅里叶变换_46

大于

拉普拉斯变换的几何直观理解_1024程序员节_15

所有奇点的正实部.

如下图:

拉普拉斯变换的几何直观理解_时域_52

换句话说,如果

,说明时域的信号如此发散,以至于必须乘以一个

e^{-\beta t}\ (\beta > c)

的衰减信号才能满足绝对可积的条件.在控制系统稳定性分析中,如果特征根的实部大于零,那就麻烦大了,说明系统存在

拉普拉斯变换的几何直观理解_拉普拉斯变换_54

的模态信号分量输出,系统不稳定.由于

所以:

拉普拉斯变换的几何直观理解_时域_55

因为

拉普拉斯变换的几何直观理解_数学_56

是常量,所以

拉普拉斯变换的几何直观理解_数学_57

反演积分公式从形式上看,是一堆堆的向量进行积分后,得到一个时域的实数信号,学过复数我们知道,概率上来讲,一堆随机的复数相加结果是实数,基本上是不可能的,虚部很难保证恰好消掉。但反演积分却必须保证消掉虚部,因为时域信号一定是实数嘛。

我们从形式上看一下为什么反演化积分结果一定是没有虚部的,根据上面的推导:

\\ \mathcal{L}^{-1}[F(s)]=f(t)=\frac{1}{2\pi j}\int_{\beta -j\infty}^{\beta +j\infty}F(s)e^{s t}ds \ \ (t > 0)=\frac{1}{2\pi }\int_{\beta -j\infty}^{\beta +j\infty}F(s)e^{s t}d\omega

s是复数,对于函数 :

拉普拉斯变换的几何直观理解_拉普拉斯变换_59

来讲,根据复数性质:

拉普拉斯变换的几何直观理解_傅里叶变换_60

由于

拉普拉斯变换的几何直观理解_数学_56

不变,积分虚部关于实轴对称,对于每个s的积分,都有互为共轭的两个s取值,所以积分过程中,累计虚部一定可以消去,最终的积分值是不带虚部的。


先看一个直观一点的例子,以单位阶跃信号

拉普拉斯变换的几何直观理解_时域_04

为例,它的拉普拉斯变换为:

拉普拉斯变换在形式上非常有特点,它把积分变成倒数,又把微分变成幂乘, 所以,有的时候也被称为拉普拉斯算子。

它的图象是:

拉普拉斯变换的几何直观理解_数学_63

取正实部的部分:

拉普拉斯变换的几何直观理解_数学_64

如果要算反变换,相当于沿着

拉普拉斯变换的几何直观理解_数学_65

的平面与F(s)的交线取路径积分,当

拉普拉斯变换的几何直观理解_傅里叶变换_46

不断变化是,积分曲线扫过整个拉普拉斯平面。不过积分结果和积分曲线的选择没有关系,沿着任何一条线进行积分的结果都是相同的,最终都是拉普拉斯变换代表的时域信号。

拉普拉斯变换的几何直观理解_时域_67

拉普拉斯变换的几何直观理解_傅里叶变换_46

可以任意取,都不会影响反变换的结果,只要积分路径在F(s)的存在域中。

\mathbf{f(t)=\frac{1}{2\pi j}\int_{\beta -j\infty}^{\beta +j\infty}\frac{1}{s}e^{s t}ds =1=u(t) \ \ (t > 0)}

时域结果为单位阶跃函数。

这个积分要用到复变函数中的留数定理来算,公式有多复杂,结果就有多让人惊讶,我一直怀疑书本在骗我,以至于多年后我很还想找一个类似于傅里叶变换圆环那样的可视化方法来说明这个结果,无奈功力还是未到,只能先借助于python mpmath(pip/pip3 install mpmath) 库的 invertlaplace函数说明,它的结果确实是1.

from mpmath import *
mp.dps = 15; mp.pretty = True
tt = [0.001, 0.01, 0.1, 1, 10, 9793792345]
fp = lambda p: 1/(p)
ft = lambda t: 1
print invertlaplace(fp,tt[0],method='talbot')
print invertlaplace(fp,tt[1],method='talbot')
print invertlaplace(fp,tt[2],method='talbot')
print invertlaplace(fp,tt[3],method='talbot')
print invertlaplace(fp,tt[4],method='talbot')
print invertlaplace(fp,tt[5],method='talbot')

运行结果:

拉普拉斯变换的几何直观理解_傅里叶变换_70

可以看到,在时间点[0.001, 0.01, 0.1, 1, 10, 9793792345]处,积分值固定为1,猜测mpmath库里面用了数值计算方法来计算积分值,如果是这样的话,说明公式没有骗我们。

拉普拉斯变换的几何直观理解_拉普拉斯变换_71

拉普拉斯变换的几何直观理解_拉普拉斯变换_72

利用wolframalpha求积分工具,可以得到上式子的不定积分(定积分需要单独收费。。。)

拉普拉斯变换的几何直观理解_拉普拉斯变换_73

拉普拉斯变换的几何直观理解_数学_74

从形式上,可以看到确实出现

拉普拉斯变换的几何直观理解_傅里叶变换_75

可以和积分式前面的额系数相抵消的情况,虽然无法得到精确结果,但我们可以大胆猜测,这个结果就是常数1.

(思考此问题有一段时间了,还是感觉无法像周期函数傅立叶变换那样画圆的方式来说明拉普拉斯变换,原因可能和对偶性有关,周期<-->离散,非周期<-->非离散(连续),连续<-->非周期在时间域和频率域之间是对偶的,所以对于时间域为连续非周期的的拉普拉斯原函数,变换后一定是非周期且连续的拉普拉斯变换结果,既然频率域是连续的,当然无法表示为离散的频率点的圆周旋转了。)

时域

周期

非周期

连续

频域离散非周期(傅立叶变换)

频域连续非周期(小波变换)

非连续(离散)

频域离散周期(数字信号处理FFT)

频域连续周期(没见过)

频域

周期

非周期

连续

时域离散非周期(没见过)

时域连续非周期(小波变换)

非连续(离散)

时域离散周期(数字信号处理FFT)

时域连续周期(傅立叶变换)

Matlab绘制此函数的模曲面图,可以看到,因为是模曲面,相位为0,所以全图红色。

拉普拉斯变换的几何直观理解_1024程序员节_76

matlab代码:

z = cplxgrid(30);
subplot(1,1,1);
cplxmap(z,abs(z.^(-1)));%幂函数z^n
colorbar('vert');
title('复幂函数');

和傅里叶变换的关系:

拉普拉斯变换和逆变换的公式:

\\ F(s)=\int_{0}^{+\infty}f(t)e^{-st}dt \\f(t)=\frac{1}{2\pi j}\int_{\beta -j\infty}^{\beta +j\infty}F(s)e^{s t}ds (t > 0)

对比傅里叶变换的公式:

拉普拉斯变换的几何直观理解_傅里叶变换_78

可以看到形式上几乎完全相同,排除积分区间的因素,当拉普拉斯的积分变量中

,取

时,拉普拉斯变换就变为傅里叶变换.所以,我们先看一下傅里叶变换的几何意义.

周函数的傅里叶变换叫做傅里叶级数,它的复数形式是:

拉普拉斯变换的几何直观理解_数学_79

公式

看起来有些奇怪,

拉普拉斯变换的几何直观理解_拉普拉斯变换_80

是复数,

拉普拉斯变换的几何直观理解_数学_81

也是复数,而

拉普拉斯变换的几何直观理解_1024程序员节

是实信号,复述乘在一起,再做累加怎么就变成实数了?

复指数函数

拉普拉斯变换的几何直观理解_数学_81

可以表示一个连续旋转的圆,当

拉普拉斯变换的几何直观理解_时域_84

时,他表示一组按照不同频率旋转的单位圆,而

拉普拉斯变换的几何直观理解_拉普拉斯变换_80

则表示对应单位圆的幅度因子和初始相位,也可以认为是某种形式的坐标,如下图所示:

拉普拉斯变换的几何直观理解_时域_86

拉普拉斯变换的几何直观理解_时域_87

注意到

拉普拉斯变换的几何直观理解_拉普拉斯变换_88

,当

拉普拉斯变换的几何直观理解_数学_89

时,

拉普拉斯变换的几何直观理解_数学_81

代表逆时针旋转的圆,当

拉普拉斯变换的几何直观理解_傅里叶变换_91

时,表示的是顺时针旋转的圆,任意时刻,

拉普拉斯变换的几何直观理解_1024程序员节_92


拉普拉斯变换的几何直观理解_傅里叶变换_93

代表的两个单位圆旋转角速度相同,旋转方向相反。

再回头看看

拉普拉斯变换的几何直观理解_数学_94

也就是说,

拉普拉斯变换的几何直观理解_傅里叶变换_95

互为共轭,

拉普拉斯变换的几何直观理解_拉普拉斯变换_80

决定了旋转元的半径系数和初始相位,互为共轭的两个负数作为

拉普拉斯变换的几何直观理解_1024程序员节_92


拉普拉斯变换的几何直观理解_傅里叶变换_93

的系数,则再任意时刻

拉普拉斯变换的几何直观理解_时域_99


拉普拉斯变换的几何直观理解_傅里叶变换_100

旋转速度相同,方向相反,相位相反,所以互为共轭,对于

拉普拉斯变换的几何直观理解_傅里叶变换_46

是这样,对于

拉普拉斯变换的几何直观理解_拉普拉斯变换_88

也都是如此,所以,综合起来的效果

代表沿着时间轴分布的无穷多个小圆的旋转的叠加,由于虚部互相抵消,只留下实数部分,实部叠加的结果,就是

拉普拉斯变换的几何直观理解_1024程序员节

.

关于初始相位互为共轭的两个相同角频率的向量和,虚部消去,只剩下实部,可以用下图说明:

拉普拉斯变换的几何直观理解_拉普拉斯变换_104

上图说明,

拉普拉斯变换的几何直观理解_1024程序员节_92


拉普拉斯变换的几何直观理解_傅里叶变换_93

两个旋转的圆合成后只在实轴上有投影,虚轴上的投影为0.为了解释方便,上图使用了二维坐标系展示

拉普拉斯变换的几何直观理解_傅里叶变换_93

函数的特点,实际上,由于

拉普拉斯变换的几何直观理解_傅里叶变换_93

的结果是复数,包含两个维度,再加上自变量

拉普拉斯变换的几何直观理解_时域_109

,一共有三个维度,需要在三维坐标系中才能展示全图,在三维坐标系中,

拉普拉斯变换的几何直观理解_傅里叶变换_93

是一个螺旋曲线,如下图所示:

拉普拉斯变换的几何直观理解_时域_111

从不同的角度看,螺旋线在二维平面中的投影就变成了正弦或者余弦:

拉普拉斯变换的几何直观理解_数学_112

正弦:

拉普拉斯变换的几何直观理解_数学_113

你能看到上图中所有的维度么?还是你只能看到圆周上转动的点?你看不到螺旋。


以方波信号的傅里叶分解为例,我们看一下这些无穷多个向量的叠加效果,图中每一小段就可以认为

代表的一个向量(实际上只有正频率部分,复频率没有绘制出来,原因是如果加上负频率后,终点只会上下浮动了,虚部表示的转动部分再图上就看不出来了,看着附图,忽略掉虚部投影即可。我们只关心一个方向上的投影就能绘制出原图,就是因为另一个方向上的投影已经被负频率 ”中和“ 掉了).

向量的魔法:

拉普拉斯变换的几何直观理解_傅里叶变换_114

这个就是傅里叶级数和傅里叶变换的几何直观描述。

本质上,拉普拉斯的几何描述和傅里叶变换没有区别,只是由于

拉普拉斯变换的几何直观理解_数学_38

因子的存在,在单位圆的半径的表示上有所区别。转动的单位圆则完全一样。

\\ F(s)=\int_{0}^{+\infty}f(t)e^{-st}dt \\f(t)=\frac{1}{2\pi j}\int_{\beta -j\infty}^{\beta +j\infty}F(s)e^{s t}ds (t > 0)

将逆变换转换形式:

其中

其中

拉普拉斯变换的几何直观理解_时域_117

分别为分子和分母关于s多项式的最高阶次,由于现实世界中任何信号都是因果信号,并且具有惯性,所以一定满足

拉普拉斯变换的几何直观理解_数学_118

.

 则进一步化为:

拉普拉斯变换的几何直观理解_傅里叶变换_119

拉普拉斯变换的几何直观理解_数学_120

是单位圆,我们很熟悉,再来看这个复杂一些的多项式分式

拉普拉斯变换的几何直观理解_傅里叶变换_121

由于

拉普拉斯变换的几何直观理解_傅里叶变换_46

是常数, 所以整个分式可以看成是角频率

拉普拉斯变换的几何直观理解_1024程序员节_40

的函数:

拉普拉斯变换的几何直观理解_1024程序员节_124

由于

拉普拉斯变换的几何直观理解_数学_118

,当

拉普拉斯变换的几何直观理解_傅里叶变换_126

时,

拉普拉斯变换的几何直观理解_时域_127

所以,拉普拉斯逆变换的效果和傅里叶逆变换类似,它的时域波形也是由无数个半径逐渐减小的频域圆”组装“而成的。

拉普拉斯变换的几何直观理解_拉普拉斯变换_128


从一个更复杂一些的例子中看傅里叶变换和拉普拉斯变换的联系:

信号

拉普拉斯变换的几何直观理解_时域_129

其拉氏变换为:

拉普拉斯变换的几何直观理解_时域_130


拉普拉斯变换的几何直观理解_1024程序员节_131

傅里叶变换为:

拉普拉斯变换的几何直观理解_时域_132

其扫过的区域的三维立体曲面即是拉普拉斯变换的结果,每一条黑色轨迹都是原函数乘以衰减因子之后的傅里叶变换。

拉普拉斯变换的几何直观理解_时域_133

拉普拉斯变换要求取的衰减因子

,所以,实际的拉普拉斯模图像为半幅,也就是

拉普拉斯变换的几何直观理解_1024程序员节_134

的部分:

拉普拉斯变换的几何直观理解_1024程序员节_135

再回头看一下此函数的傅里叶变换,先看f(t)的图像:

拉普拉斯变换的几何直观理解_数学_136

可以看出在自变量趋大的过程中,函数的值趋于0,看上去满足绝对可积的条件,我们对其进行积分试试:

拉普拉斯变换的几何直观理解_1024程序员节_137

其密度谱是:

拉普拉斯变换的几何直观理解_拉普拉斯变换_138

和上图的半幅拉普拉斯变换的界面曲线做一下对比,是不是很像? 实际上它们完全一样,所以,傅里叶变换可以看成是拉普拉斯变换在

时候的特例。

如果我们尝试把

改成

的形式,并让m值在一定范围内变化,得到如下变化的拉普拉斯图像,注意到当m=0的时候,拉普拉斯变换与yoz平面的截面出现两个尖峰,它恰好对应的是

的在s取实部为0时候的拉普拉斯变换,也就是sin(t)的傅里叶变换,而且正弦函数的傅里叶变换恰好是在正频率和负频率位置处的两个尖峰,这说明在谐振频率处,系统的输出幅值可以达到无穷大,而在其他频率点为0,说明此点没有频率分量.

这幅动图说明了拉普拉斯变换和傅里叶变换的深刻联系.

拉普拉斯变换的几何直观理解_傅里叶变换_139

常见函数的laplace变换手搓推导:

拉普拉斯变换的几何直观理解_傅里叶变换_140

拉普拉斯变换的几何直观理解_1024程序员节_141

本文受到了这篇文章的启发.


结束!

标签:函数,变换,拉普拉斯,beta,积分,傅里叶,直观
From: https://blog.51cto.com/u_15899439/7037905

相关文章

  • 分布理论读书笔记三:Fourier变换
    5.\(\mathscr{S}\)上的傅里叶变换5.1.Schwartz函数空间\(\mathscr{S}(\mathbb{R}^n)\).定义1:设\(\varphi\inC^{\infty}(\mathbb{R}^n)\),如果对任意非负多重指标\(\alpha,p\)都有:\[\lim_{|x|\to\infty}|x^{\alpha}\partial^p\varphi|=0\qquad(eq1)\]在\(\mathbb{R}......
  • 《VTK图形图像开发进阶》第2章——坐标系统及空间变换
    2.1坐标系统计算机图形学里常用的坐标系统主要有4种,分别是Model坐标系统、World坐标系统、View坐标系统和Display坐标系统,此外还有两种表示坐标点的方式:以屏幕像素值为单位和归一化坐标值(各坐标轴取值范围为[-1,1])。它们之间的关系如下图。Model坐标系统:定义模型时所采用的......
  • Matlab的信号频谱分析——FFT变换
    Matlab的信号频谱分析——FFT变换Matlab的信号频谱分析FFT是离散傅立叶变换的快速算法,可以将一个时域信号变换到频域。有些信号在时域上是很难看出什么特征的。但是如果变换到频域之后,就很容易看出特征了。这就是很多信号分析采用FFT变换的原因。另外,FFT可以将一个信号的频谱提取出......
  • m基于FFT傅里叶变换的QPSK基带信号频偏估计和补偿算法FPGA实现,包含testbench和matlab
    1.算法仿真效果本系统进行了Vivado2019.2平台的开发,并使用matlab2022a对结果进行星座图的显示:将FPGA的频偏基带QPSK信号和频偏补偿后的QPSK基带信号使用matlab显示星座图,结果如下:2.算法涉及理论知识概要QPSK(QuadraturePhaseShiftKeying)是一种常用的调制方式,它可以在相位和......
  • m基于FFT傅里叶变换的QPSK基带信号频偏估计和补偿算法FPGA实现,包含testbench和matlab
    1.算法仿真效果本系统进行了Vivado2019.2平台的开发,并使用matlab2022a对结果进行星座图的显示:   将FPGA的频偏基带QPSK信号和频偏补偿后的QPSK基带信号使用matlab显示星座图,结果如下:   2.算法涉及理论知识概要       QPSK(QuadraturePhaseShiftKeying)......
  • 线性方程组数学原理、矩阵原理及矩阵变换本质、机器学习模型参数求解相关原理讨论
    线性方程组数学原理、矩阵原理及矩阵变换本质、机器学习模型参数求解相关原理讨论1.线性方程组0x1:无处不在的线性方程组日常生活或生产实际中经常需要求一些量,用未知数x1,x2,....,xn表示这些量,根据问题的实际情况列出方程组,而最常见的就是线性方程组(当然并不......
  • 两个有序数组的中位数(第k大的数)——使用二分答案的思路写起来更直观
    问题:两个已经排好序的数组,找出两个数组合并后的中位数(如果两个数组的元素数目是偶数,返回上中位数)。 感觉这种题目挺难的,尤其是将算法完全写对。因为当初自己微软面试的时候遇到了,但是没有想出来思路。看网上写了一堆解法,但是将思路说得非常清楚的少之又少。有两种思路,一个是算法导......
  • opencv-python霍夫变换
    1霍夫线检测原理霍夫变换常用来提取图像中的直线和圆等几何形状。在笛卡尔坐标系中,直线可以表示为y=kx+q 也就是说通过变量k,q可以确定一条直线,把直线写成关于k,q的函数,进行空间转换,转换后的空间称为霍夫空间。也就是说:笛卡尔坐标系中的一条线对应了霍夫空间的一个点。反过......
  • 使用 OpenCV 进行图像模糊度检测(拉普拉斯方差方法)
    写在前面工作中遇到,简单整理人脸识别中,对于模糊程度较高的图像数据,识别率低,错误率高。虽然使用AdaFace模型,对低质量人脸表现尤为突出。但是还是需要对模糊程度高的图像进行丢弃处理当前通过阈值分类,符合要求的进行特性提取实际应用中,可以维护一个质量分数比如由模糊程度,图片字......
  • m基于FPGA的256点FFT傅里叶变换verilog实现,含testbench,不使用IP核
    1.算法仿真效果本系统进行了Vivado2019.2平台的开发,其中Vivado2019.2仿真结果如下:2.算法涉及理论知识概要傅里叶变换(FourierTransform)是一种重要的信号处理技术,用于将一个时域信号转换为频域表示,分析信号的频率成分。FFT(FastFourierTransform)是一种高效的傅里叶变换算法,可以......