Engee 文档

对齐信号

通过延迟最早的信号来对齐两个信号。

库::`工程师`

语法

函数调用

  • [参数:xa],[参数:ya],[参数:D]=alignsignals(<参数:x>>,<参数:y>>,<名称=值>>) — 也使用参数 名称=值,其包括用于截断输入信号的估计方法和选项。 例如,要根据每个信号中最大峰值的位置来估计延迟,请为自变量设置 [参数:方法] 意义 "maxpeak".

争论

输入参数

# *x*是 第一输入信号

+ 向量资料

Details

第一个输入信号,指定为长度的数字向量 .

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译> 支持复数::是

# *y*是 第二输入信号

+ 向量资料

Details

第二个输入信号,指定为长度的数字向量 .

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译> 支持复数::是

名称-值输入参数

指定格式中的可选参数对 名称=值,在哪里 姓名 -参数的名称,以及 价值 -适当的值。 类型参数 名称=值 它们应该放在其他参数之后,但对的顺序无关紧要。

# *方法*是 一种估计信号间延迟的方法

+ "xcorr" (默认情况下)| "maxpeak" | "npeak" | "上升时间"

Details

用于估计指定为信号之间的延迟的方法 "xcorr", "maxpeak", "npeak""上升时间". 您可以根据指定的参数指定其他名称值参数 方法:

# MaxLag — 最大窗口大小

+ 标量,标量

Details

用于估计信号之间的延迟的最大窗口大小被设置为整数标量。 默认情况下 马克斯拉格 等于 ,在哪里 -长度 [参数:x],而 -长度 [参数:y]. 如果 马克斯拉格 如果是负数,则函数使用绝对值。

此参数仅在参数时使用 [参数:方法] 值设置 "xcorr".

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译>

# PeakNum — 峰值数

+ 标量,标量

Details

用于信号对准的峰值数被设置为正整数标量。 此参数仅在参数时使用 [参数:方法] 值设置 "npeak".

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译>

# MinPeakProminence — 最低峰值海拔

+ 标量,标量

Details

用于识别信号中的峰值的最小峰值标高作为真实的非负标量给出。 指定时 MinPeakProminence缧 函数查找相对重要性不小于指定值的峰。 有关更多信息,请参阅部分 海拔

此参数仅在参数时使用 [参数:方法] 值设置 "npeak""maxpeak".

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译>

# MinPeakHeight — 最小峰值高度

+ 标量,标量

Details

用于确定信号中峰值的最小峰值高度作为实标量给出。 指定时 MinPeakHeight 该函数查找高度超过指定值的峰。 有关详细信息,请参阅 发现,发现.

此参数仅在参数时使用 [参数:方法] 值设置 "npeak""maxpeak".

数据类型

漂浮物32, 漂浮64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64</无翻译>

# 国家航空 — 州级

+ 双元素向量是一个字符串

Details

状态级别被指定为一个真正的双元素向量字符串。 第一元件对应于输入信号的低状态电平,而第二元件对应于输入信号的高状态电平。 如果值为 国家航空 如果未指定,则该函数使用直方图方法计算输入信号的状态电平。

有关详细信息,请参阅 上升时间.

此参数仅在参数时使用 [参数:方法] 值设置 "上升时间".

数据类型

漂浮64</无翻译>

# 截断 — 截断输入信号的选项

+ 错误(0) (默认)| 真(1)

Details

截断输入信号的选项,由数字或逻辑设置 真(1)错误(0). 指定值时 真(1) 为了论证 截断,截断 长度 [参数:xa][参数:ya] 等于长度 [参数:x][参数:y] 相应地。

输出参数

# xa — 对齐的第一信号

+ 向量资料

Details

返回的对齐的第一个信号作为与第二个输出参数对齐的数字向量 [参数:ya].

  • 如果输入参数是 [参数:x] -向量是一个字符串,然后 xa 它也是一个字符串向量。

  • 如果输入参数是 [参数:x] 是列向量,则 xa 也是列向量。

如果要争论 [参数:截断] 值设置 真的,以及估计的延迟 [参数:D] 如果是肯定的,那么 xa 相当于输入信号 [参数:x][参数:D] 添加零和截断最后一个 [参数:D] 通过倒计时。

# — 对齐的第二信号

+ 向量资料

Details

作为与第二输出参数对齐的数字向量返回的对齐的第二信号 [参数:xa].

  • 如果输入参数是 [参数:y] -向量是一个字符串,然后 它也是一个字符串向量。

  • 如果输入参数是 [参数:y] 是列向量,则 也是列向量。

如果要争论 [参数:截断] 值设置 真的,以及估计的延迟 [参数:D] 如果它是负的,那么 相当于输入信号 [参数:y]−<参数:D>> 添加零和截断最后一个 −<参数:D>> 通过倒计时。

# *D*是 输入信号之间的计算延迟

+ 一个整数标量

Details

输入信号之间的计算延迟,作为整数标量返回。 该值表示两个输入信号偏移的采样数。 [参数:x][参数:y].

如果指定了输入参数的值 [参数:MaxLag] 然后 D 将小于或等于 [参数:MaxLag].

例子:

如果第一个信号落后三个样本,则两个信号的均衡

Details

创建两个信号: xy. 信号 x —这是一样的 y,除了你有 x 开头有三个零,结尾有一个额外的零。 对齐两个信号。

import EngeeDSP.Functions: alignsignals

x = [0, 0, 0, 1, 2, 3, 0, 0]
y = [1, 2, 3, 0]

xa, ya, D = alignsignals(x, y)
(xa = [0, 0, 0, 1, 2, 3, 0, 0], ya = [0, 0, 0, 1, 2, 3, 0], D = -3)

如果第二个信号落后两个样本,则两个信号的均衡

Details

创建两个信号: xy. 信号 y —这是一样的 x,除了 y 它被延迟了两个计数。 对齐两个信号。

import EngeeDSP.Functions: alignsignals

x = [1, 2, 3]
y = [0, 0, 1, 2, 3]

xa, ya, D = alignsignals(x, y)
(xa = [0, 0, 1, 2, 3], ya = [0, 0, 1, 2, 3], D = 2)

使用最大窗口大小对齐信号 1:

maxlag = 1
xa, ya, D = alignsignals(x, y, Method="xcorr", MaxLag=maxlag)
(xa = [0, 1, 2, 3], ya = [0, 0, 1, 2, 3], D = 1)

两个双电平信号沿上升沿对齐

Details

我们将生成两个表示两电平信号的信号。 信号具有采样频率 50 Hz期间 20 几秒钟。 对于第一个信号,通过 13 测量开始后几秒钟。 对于第二个信号,通过 5 测量开始后几秒钟。 信号具有不同的幅度,并且处于具有不同方差的白高斯噪声中。 让我们绘制信号图。

t = range(0, 20, length=1001)

e1 = 1.4 .* tanh.(t .- 13) .+ randn(length(t)) ./ 3
e2 = tanh.(3 .* (t .- 5)) .+ randn(length(t)) ./ 5

plot(t, e1, label="e1")
plot!(t, e2, label="e2")
xlabel!("Seconds")
ylabel!("Amplitude")

alignsignals 1

对齐信号,使其转换时间匹配。

相关方法不允许我们充分对齐这种类型的信号。:

y1, y2 = alignsignals(e1, e2)

plot(y1, label="y1 (aligned e1)")
plot!(y2, label="y2 (aligned e2)")
xlabel!("Samples")
ylabel!("Amplitude")

alignsignals 2

使用该方法对齐信号 "上升时间":

y1, y2 = alignsignals(e1, e2, Method="risetime")

plot(y1, label="y1 (aligned e1)")
plot!(y2, label="y2 (aligned e2)")
xlabel!("Samples")
ylabel!("Amplitude")

alignsignals 3

文学作品

  1. Orfanidis,Sophocles J. _Optimum信号处理。_介绍。 第二版。 Englewood Cliffs,NJ:Prentice-Hall,1996。