Engee 文档

希尔伯特

离散分析信号使用希尔伯特变换。

库::`工程师`

语法

函数调用

争论

输入参数

# xr — 输入信号

+ 向量资料 | 矩阵

Details

输入信号被指定为实向量或矩阵。 如果 xr 复杂,那么 希尔伯特 忽略它的虚部。

数据类型

漂浮物32, 漂浮64</无翻译>

# *n*是 DFT的长度

+ 正整数标量

Details

离散傅立叶变换(dft)的长度,作为正整数标量给出。

数据类型

漂浮物32, 漂浮64</无翻译>

输出参数

# x — 分析信号

+ 向量资料 | 矩阵

Details

作为向量或矩阵返回的分析信号。

例子:

序列分析信号

Details

让我们定义序列并使用函数计算其分析信号 希尔伯特.

import EngeeDSP.Functions: hilbert

xr = [1 2 3 4]'
x = hilbert(xr)
4×1 Matrix{ComplexF64}:
 1.0 + 1.0im
 2.0 - 1.0im
 3.0 - 1.0im
 4.0 + 1.0im

虚部 x -这是矩阵的希尔伯特变换 xr 而真正的部分是本身 xr.

imx = imag(x)
4×1 Matrix{Float64}:
  1.0
 -1.0
 -1.0
  1.0
rex = real(x)
4×1 Matrix{Float64}:
 1.0
 2.0
 3.0
 4.0

DFT矩阵的后半部分 x 它等于零。 (在此示例中,转换的后半部分只是最后一个元素。)中的常数分量和奈奎斯特分量 fft(x) 它们纯粹是物质的。

import EngeeDSP.Functions: fft

dft=fft(x)
4-element Vector{ComplexF64}:
 10.0 + 0.0im
 -4.0 + 4.0im
 -2.0 + 0.0im
  0.0 + 0.0im

此外

分析信号

Details

功能 希尔伯特 从真实数据序列返回一个复杂的螺旋序列,有时称为分析信号。

分析信号 它有一个真正的部分 ,其表示原始数据,以及虚部 包含希尔伯特变换。 虚部是原始实数序列的一个版本,其相移为 90°. 因此,正弦被转换为余弦,反之亦然,余弦被转换为正弦。 希尔伯特变换后的序列具有与原始序列相同的振幅和频率组成。 变换包括依赖于原始序列的相位的相位信息。

希尔伯特变换对于计算时间序列的瞬时特性,特别是幅度和频率是有用的。 瞬时幅值为复希尔伯特变换的幅值;瞬时频率为瞬时相位角的变化率。 对于纯正弦波,瞬时振幅和频率是恒定的。 然而,瞬时相位是反映局部相位角在单个周期上的线性变化的锯齿形状。 对于正弦曲线的混合物,属性是短期或局部平均值,复盖不超过两个或三个点。

[1]描述了用于最小相位重建的Kolmogorov方法,该方法包括时间序列的谱密度对数的Hilbert变换。 工具栏功能执行此重建。 rcep.

算法

序列的分析信号 [参数:xr] 具有_rilateral Fourier transform_。 也就是说,对于负频率,转换变为零。 为了近似分析信号,函数 希尔伯特 计算输入序列的FFT,用零替换负频率对应的FFT系数,并计算结果的逆FFT。

功能 希尔伯特 使用四步算法:

  1. 通过将结果存储在向量中来计算输入序列的FFT [参数:x].

  2. 创建矢量 h,其元素为 h(i) 具有以下值:

    • 1i=1,([参数:n]/2)+1;

    • 2i=2,3,…​,(n/2);

    • 0i=(n/2)+2,…​,n.

  3. 计算零碎产品 xh.

  4. 计算步骤3中获得的序列的逆FFT并返回第 n 结果元素。

该算法最早是在[2]中引入的。 该方法假设输入信号为 x 它表示有限的数据块。 该假设允许函数通过以下方式精确地消除频谱冗余 x. FIR滤波方法只能近似分析信号,但其优点在于数据处理的连续性。

文学作品

  1. Claerbout,Jon F. _fundamentals Of Geophysical Data Processing with Applications to Petroleum Prospecting._牛津,英国:布莱克威尔,1985.

  2. Marple,S.L."通过FFT计算离散时间分析信号。"_ieee®关于信号处理的事务。_卷。 47,1999,第2600-2603页。

  3. Oppenheim,Alan V.,Ronald W.Schafer和John R.Buck。 _实时信号处理。_第二版。 Upper Saddle River,NJ:Prentice Hall,1999。