高数 高斯公式、泰勒公式、麦克劳伦公式、欧拉公式、傅里叶公式

一、高斯公式

参考文章:图像处理 高斯滤波(带权值的均值滤波)

1、一维高斯滤波。

         \LARGE f(x)=\frac{1}{\sqrt{2\pi }\sigma }e^\frac{-(x-u)^2}{2\sigma^2 }

        a表示得到曲线的高度,u是指曲线在x轴的中心, σ指width(与半峰全宽有关,即平方差)。

2、二维高斯滤波。

         \LARGE f(x,y)=\frac{1}{2\pi \sigma ^2}e^\frac{-(x^2+y^2)}{2\sigma ^2}

 

二、泰勒公式 

1、泰勒公式介绍。

        泰勒公式:\LARGE f(x)=\sum_{n=0}^{N}\frac{f^{(n)}(a)}{n!}(x-a)^n+R_{n}(x)

        设n是一个正整数。如果定义在一个包含aa的区间上的函数f在a点处n+1次可导,那么对于这个区间上的任意x都可以用泰勒公式来表示。如果函数足够平滑的话,在已知函数在某一点的各阶导数值的情况之下,泰勒公式可以用这些导数值做系数构建一个多项式来近似函数在这一点的邻域中的值。泰勒公式还给出了这个多项式和实际的函数值之间的偏差。  

2、拉格朗日中值定理。

        曲线在A,B间至少存在1点,使得该曲线在P点的切线与割线AB平行。对于曲线运动在任意一个运动过程中至少存在一个位置或一个时刻的瞬时速率等于这个过程中的平均速率。如果函数f(x)满足,在[a,b]上连续,在(a,b)上可导,那么至少有一点θ(a\LARGE f(x)=\frac{f(a)-f(b)}{a-b}成立。 

 

三、麦克劳伦公式

1、麦克劳伦公式介绍。

        麦克劳伦公式:\LARGE f(x)=\sum_{n=0}^{N}\frac{f^{(n)}(0)}{n!}(x)^n+R_{n}(x)

        泰勒公式中当a=0的时候,就是麦克劳伦公式。

 

2、例子。

1)、\LARGE e^x

        因为\LARGE e^x的导数还是 \LARGE e^x,而且\LARGE e^0=1

        所以\LARGE e^x=1+\frac{x^1}{1!}+\frac{x^2}{2!} ...... +\frac{x^n}{n!}

       

2)、sinx:

        因为sin0 = 0。

               sin'x = cosx,sin'0 = cos0 = 1。

               sin''x = cos'x = -sinx,sin''0 = -sin0 = 0。

               sin'''x = cos''x = -sin'x=-cosx,sin'''0 = -cos0 = -1。

               sin''''x = cos'''x = -sin''x = -cos'x = sinx,sin'''0 = sin0 = 0。

       所以\LARGE sinx=\frac{x^1}{1!}-\frac{x^3}{3!}+\frac{x^5}{5!}-\frac{x^7}{7!}......+\frac{(-1)^{n+1}x^{2n-1}}{(2n-1)!}

3)、cosx:

        因为cos0=1

               cos'x=-sinx,cos'0=sin0=0。

               cos''x=-sin'x=-cosx,cos''0=-cos0=-1。

               cos'''x=-sin''x=-cos'x=sinx,cos'''0=sin0=0。

               cos''''x=-sin'''x=-cos''x=sin'x=cosx,cos''''0=cos0=1。

        所以\LARGE cosx=1-\frac{x^2}{2!}+\frac{x^4}{4!}-\frac{x^6}{6!}+\frac{x^8}{8!}......+\frac{(-1)^{n}x^{2n}}{(2n)!}

 

四、欧拉公式

因为:

e^x=1+\frac{x^1}{1!}+\frac{x^2}{2!} ...... +\frac{x^n}{n!}

sinx=\frac{x^1}{1!}-\frac{x^3}{3!}+\frac{x^5}{5!}-\frac{x^7}{7!}......+\frac{(-1)^{n-1}x^{2n-1}}{(2n-1)!}cosx=1-\frac{x^2}{2!}+\frac{x^4}{4!}-\frac{x^6}{6!}+\frac{x^8}{8!}......+\frac{(-1)^{n}x^{2n}}{(2n)!}

所以:

\tiny sinx+cosx=1+\frac{x^1}{1!}-\frac{x^2}{2!}-\frac{x^3}{3!}+\frac{x^4}{4!}+\frac{x^5}{5!}-\frac{x^6}{6!}-\frac{x^7}{7!}......+\frac{(-1)^{n-1}x^{2n-1}}{(2n-1)!}+\frac{(-1)^{n}x^{2n}}{(2n)!}

e^{xi}=1+\frac{i^1x^1}{1!}+\frac{i^2x^2}{2!}+\frac{i^3x^3}{3!}+\frac{i^4x^4}{4!}......\frac{i^nx^n}{n!}=sinx+cosx,其中i是虚数,即i的平方为-1。

 

得出欧拉公式:e^{xi}=cosx+(sinx)i

 

五、傅里叶公式

参考文章:一维离散傅里叶变换、二维离散傅里叶变换、一维快速傅里叶变换、二维离散傅里叶变换(代码和性能的优化)

1、傅里叶变换。

        傅立叶变换,也可以看作是泰勒公式的一种。表示能将满足一定条件的某个函数表示成三角函数(正弦和/或余弦函数)或者它们的积分的线性组合。时域和频域有关联:连续对非周期,离散对周期。

原始信号 傅里叶方法 时域 频域
非周期性连续信号 (连续)傅立叶变换(FT) 连续、非周期 连续、非周期
周期性连续信号 傅立叶级数(FS)  连续、周期 离散、非周期
非周期性离散信号 离散时域傅立叶变换(DTFT) 离散、非周期 连续、周期
周期性离散信号 离散傅立叶变换(DFT)  离散、周期 离散、周期

2、一维离散傅里叶变换DFT。

公式:F(u)=\sum_{x=0}^{N-1}f(x)e^{-\frac{2\pi ux}{N}i},其中i是虚数。

一维DFT公式中的 -\frac{2\pi ux}{N} 就是欧拉公式中的x,而且cos(-x)=cosx,sin(-x)=-sinx。

所以一维DFT公式又可以写成:F(u)=\sum_{x=0}^{N-1}f(x)[cos \frac{2\pi ux}{N}-sin \frac{2\pi ux}{N}i]

 

3、一维离散傅里叶逆变换IDFT。

公式:f(x)=\frac{1}{N}\sum_{u=0}^{N-1}F(u)e^{\frac{2\pi ux}{N}i}

又可以写成: f(x)=\frac{1}{N}\sum_{u=0}^{N-1}F(u)[cos \frac{2\pi ux}{N}+sin \frac{2\pi ux}{N}i]

 

4、二维离散傅里叶变换DFT。

公式:F(u,v)=\sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y)e^{-2\pi (\frac{ux}{M}+\frac{vy}{N})i}

又可以写成:F(u,v)=\sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y)[cos(2\pi (\frac{ux}{M}+\frac{vy}{N})) -sin(2\pi (\frac{ux}{M}+\frac{vy}{N}))i ]

 

5、二维离散傅里叶逆变换IDFT。

公式:f(x,y)=\frac{1}{N+M}\sum_{u=0}^{N-1}\sum_{v=0}^{N-1}F(u,v)e^{2\pi (\frac{ux}{M}+\frac{vy}{N})i}

又可以写成:F(u,v)=\sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y)[cos(2\pi (\frac{ux}{M}+\frac{vy}{N}))+sin(2\pi (\frac{ux}{M}+\frac{vy}{N}))i ]

 

6、一维傅里叶快速变换FFT。

    1)FFT(Fast Fourier Transformation)是离散傅氏变换(DFT)的快速算法,即利用计算机计算离散傅里叶变换(DFT)的高效、快速计算方法的统称。快速傅里叶变换是1965年由J.W.库利和T.W.图基提出的。采用这种算法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少,特别是被变换的抽样点数N越多,FFT算法计算量的节省就越显著。即为快速傅氏变换。它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。

\dpi{120} \begin{bmatrix}F(0)\\F(1)\\ F(2)\\ \vdots\\ F(N-1) \end{bmatrix} =\begin{bmatrix} 1&1&1&\cdots &1\\ 1&W_{N}^1&W_{N}^2&\cdots &W_{N}^{(N-1)}\\ 1&W_{N}^2&W_{N}^4&\cdots &W_{N}^{2(N-1)}\\ \vdots&\vdots&\vdots&\vdots &\vdots\\ 1&W_{N}^{(N-1)}&W_{N}^{2(N-1)}&\cdots &W_{N}^{(N-1)(N-1)}\\ \end{bmatrix} + \begin{bmatrix}f(0)\\f(1)\\ f(2)\\ \vdots\\ f(N-1) \end{bmatrix}

    2)因为根据欧拉公式e^{\theta i}=cos \theta +(sin \theta )i和一维离散傅里叶公式,可以将欧拉公式中的\theta看作是\frac{2\pi }{N}k,而且可以是要将其代入到cos和sin函数中,所以其实可以看作是一个半径为1的圆。而W_{N}^k可以看作将圆分成N份,即上面那个矩阵中的\frac{2\pi }{N}k,而第k份的那个点就是那个值。

    3)可以推导出关系。

               周期性:W_{N}^{k+nN}=W_{N}^k+W_{N}^{nN}=W_{N}^k  ,        W_{nN}^{nk}=W_{N}^k         

               原点对称:W_{N}^{k+\frac{N}{2}}=W_{N}^k+W_{N}^{\frac{N}{2}}=W_{N}^ke^{-j\frac{2\pi }{N}\frac{N}{2}}=W_{N}^ke^{-j\pi}=W_{N}^k(cos\pi-sin\pi)=-W_{N}^k

    4)要让DFT的长度等于2的n次幂,其中n是正整数。

        \tiny F(k)=\sum_{x=0}^{\frac{N}{2}-1}f(2x)W_{N}^{(2x)k}+\sum_{x=0}^{\frac{N}{2}-1}f(2x+1)W_{N}^{(2x+1)k}=\sum_{x=0}^{\frac{N}{2}-1}f(2x)W_{N}^{(2x)k}+W_{N}^{k}\sum_{x=0}^{\frac{N}{2}-1}f(2x+1)W_{N}^{(2x)k}

        令 G(k)=\sum_{x=0}^{\frac{N}{2}-1}f(2x)W_{N}^{(2x)k}P(k)=\sum_{x=0}^{\frac{N}{2}-1}f(2x+1)W_{N}^{(2x)k}

F(k)=G(k)+W_{N}^{k}P(k)

        但是这里的k是小于\frac{N}{2}的,但是可以推导出F(k+\frac{N}{2})=G(k+\frac{N}{2})+W_{N}^{k+\frac{N}{2}}P(k+\frac{N}{2})=F(x)=G(x)-W_{N}^kP(x)  ,  其中x=k+\frac{N}{2}

    5)最后将G(x),P(x)按照这个方式,用分治法不停的拆分出来,剩下最后俩个\begin{bmatrix}F(0)\\F(1) \end{bmatrix}= \begin{bmatrix}1&1\\1&W_{2}^1\end{bmatrix}* \begin{bmatrix}f(0)\\f(1) \end{bmatrix}= \begin{bmatrix}1&1\\1&-1\end{bmatrix}* \begin{bmatrix}f(0)\\f(1) \end{bmatrix}= \begin{bmatrix}f(0)+f(1)\\f(0)-f(1)\end{bmatrix} ,然后返回计算的结果。

 

7、一维逆傅里叶快速变换IFFT。

        \dpi{120} \frac{1}{N}\begin{bmatrix}f(0)\\f(1)\\ f(2)\\ \vdots\\ f(N-1) \end{bmatrix} =\begin{bmatrix} 1&1&1&\cdots &1\\ 1&W_{N}^1&W_{N}^2&\cdots &W_{N}^{(N-1)}\\ 1&W_{N}^2&W_{N}^4&\cdots &W_{N}^{2(N-1)}\\ \vdots&\vdots&\vdots&\vdots &\vdots\\ 1&W_{N}^{(N-1)}&W_{N}^{2(N-1)}&\cdots &W_{N}^{(N-1)(N-1)}\\ \end{bmatrix} + \begin{bmatrix}F(0)\\F(1)\\ F(2)\\ \vdots\\ F(N-1) \end{bmatrix}

比较DFT和IDFT公式,会发现逆变换和正变换的区别在于:

        1、e^{\theta i}中的\theta正负的区别。

        2、逆变换在结束之后,每个值都要除以原数组的大小。

所以我们只要套用FFT的算法就可以了,将F(k)作为输入数组,输出f(x)作为输出数组,将因子W_{N}^{k}改为W_{N}^{-k},最后将f(x)全部除以N就可以了。

\tiny f(k)=\sum_{x=0}^{\frac{N}{2}-1}F(2x)W_{N}^{(2x)k}+\sum_{x=0}^{\frac{N}{2}-1}F(2x+1)W_{N}^{(2x+1)k}=\sum_{x=0}^{\frac{N}{2}-1}F(2x)W_{N}^{(2x)k}+W_{N}^{k}\sum_{x=0}^{\frac{N}{2}-1}F(2x+1)W_{N}^{(2x)k}

f(k+\frac{N}{2})=G(k+\frac{N}{2})+W_{N}^{k+\frac{N}{2}}P(k+\frac{N}{2})=f(x)=G(x)-W_{N}^kP(x)

你可能感兴趣的:(高数)