文档

alignsignals

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

句法

[XA,YA] = alignsignals(X,Y)
[XA,YA] = alignsignals(X,Y,maxlag)
[XA,YA] = alignsignals(X,Y,maxlag, '截断')
[XA,YA,d] = alignsignals(___

描述

[XA] = alignsignals(Xÿ估计延迟,d中,两个输入信号之间,Xÿ并返回该对准信号,XA

  • 如果ÿ延迟相对于X, 然后d是积极的,X被延迟d样本。

  • 如果ÿ是超前于X, 然后d是负的,ÿ被延迟 -d样本。

延误X要么ÿ可以通过在前面加上零出台。

[XA] = alignsignals(Xÿmaxlag使用maxlag作为最大窗口大小来找到估计的延迟,d中,两个输入信号之间,Xÿ。它返回的调整信号,XA

[XA] = alignsignals(Xÿmaxlag,'截短')保持对准信号的长度,XA中,相同的输入信号,Xÿ, 分别。

  • 如果估计的延迟,d是肯定的,则d零预先计划X最后d样本X被截断。

  • 如果估计的延迟,d,是负的,那么 -d零预先计划ÿ最后 -d样本ÿ被截断。

笔记

Xÿ是长度的行或列向量大号X大号ÿ, 分别。

  • 如果d大号X, 然后XA由组成大号X零。所有样品X丢失。

  • 如果-d大号ÿ, 然后由组成大号ÿ零。所有样品ÿ丢失。

为了避免分配一个特定的值maxlag当使用'截短'选项,设置maxlag[]

[XAd] = alignsignals(___返回估计的延迟,d。这句法可以包括任何在以前的语法使用的输入参数。

例子

全部收缩

对齐信号ÿ关于X通过推进这三个样本。

创建两个信号,XÿX是完全一样的ÿ, 除X有三个前导零和一个额外的后面的零。对齐两个信号。

X = [0 0 0 1 2 3 0 0];Y = [1 2 3 0];[XA,YA] = alignsignals(X,Y)
XA =1×80 0 0 1 2 3 0 0
雅=1×70 0 0 1 2 3 0

对齐信号X什么时候ÿ延迟相对于X两个样本。

创建两个信号,Xÿÿ是完全一样的X, 除ÿ有两个前导零。对齐两个信号。

X = [1 2 3];Y = [0 0 1 2 3];maxlag = 2;[XA,YA,d] = alignsignals(X,Y,maxlag)
XA =1×50 0 1 2 3
雅=1×50 0 1 2 3
d = 2

对齐信号ÿ关于X,尽管ÿ是一个噪声信号。

创建两个信号,Xÿÿ是完全一样的X与添加到它的一些噪音。对齐两个信号。

X = [0 0 1 2 3 0];Y = [0.02 0.12 1.08 2.21 2.95 -0.09];[XA,YA,d] = alignsignals(X,Y)
XA =1×60 0 1 2 3 0
雅=1×60.0200 0.1200 1.0800 2.2100 2.9500 -0.0900
d = 0

你并不需要改变输入信号以产生输出信号。延时d是零。

调用'截短'调用时选项alignsignals功能。

创建两个信号,Xÿÿ是完全一样的X, 除ÿ有两个前导零。对齐两个信号,将所述'截短'指示。

X = [1 2 3];Y = [0 0 1 2 3];[XA,YA,d] = alignsignals(X,Y,[]'截短'
XA =1×30 0 1
雅=1×50 0 1 2 3
d = 2

观察到的输出信号XA具有3的长度,相同的长度,输入信号X

在情况下使用'截短'选项结束了截断的所有原始数据X,将发出警告。为了使alignsignals发出这样的警告,运行下面的示例。

Y = [0 0 0 0 1 2 3];[XA,YA,d] = alignsignals(X,Y,[]'截短'
警告:在第一次输入X所有的原始数据已被截断,因为X的长度比估计的延迟d较小:避免截断此数据不使用“截断”选项。
XA =1×30 0 0
雅=1×70 0 0 0 1 2 3
d = 4

对齐信号ÿ关于X,尽管ÿ是的周期性重复X。返回最小的可能延迟。

创建两个信号,Xÿÿ由非零部分的两个拷贝的X由零隔开。对齐两个信号。

X = [0 1 2 3];Y = [1 2 3 0 0 0 0 1 2 3 0 0];[XA,YA,d] = alignsignals(X,Y)
XA =1×40 1 2 3
雅=1×130 1 2 3 0 0 0 0 1 2 3 0 0⋯
d = -1

输入参数

全部收缩

第一输入信号,指定为长度的数值向量LX

例:[1 2 3]

数据类型:||INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64
复数支持:万博1manbetx

第二输入信号,指定为长度的数值向量LY

例:[0 0 1 2 3]

数据类型:||INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64
复数支持:万博1manbetx

最大窗口大小,或滞后,指定为一个整数值标量。默认,maxlag等于最大(长度(X),长度(Y)) - 1。如果maxlag被输入作为[],它是由默认值替换。如果maxlag是负的,这是由它的绝对值代替。如果maxlag不是整数值,或是复杂的,天道酬勤, 要么为NaN, 然后alignsignals返回一个错误。

例:2

数据类型:||INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64

输出参数

全部收缩

对准的第一信号,返回的作为与所述第二输出参数对准的数字载体,。如果输入参数X是一个行向量,然后XA也是一个行向量。如果输入参数X是一个列向量,则XA也是一个列向量。如果您指定'截短'选项和估计的延迟d为正,则XA等效于输入信号Xd前面加上它和它的最后一个零d样品被截断。

排列的第二信号,返回为数值向量与所述第一输出参数对齐,XA。如果输入参数ÿ是一个行向量,然后也是一个行向量。如果输入参数ÿ是一个列向量,则也是一个列向量。如果您指定'截短'选项和估计的延迟d为负,则等效于输入信号ÿ有 -d零前面加上它和它的最后一次 -d样品被截断。

输入信号之间估计延迟,返回作为标量整数。此整数表示样品通过其两个输入信号的数量,Xÿ被抵消。

  • 如果ÿ延迟相对于X, 然后d是积极的,X被延迟d样本。

  • 如果ÿ是超前于X, 然后d是负的,ÿ被延迟 -d样本。

  • 如果Xÿ已经对齐,然后d是零,既不X也不ÿ被延迟。

如果指定的输入参数的值maxlag, 然后d必须小于或等于maxlag

算法

  • 你可以找到时延估计理论中的规范finddelay功能(见算法)。

  • alignsignals功能使用估计延迟d延迟的最早信号,使得这两个信号具有相同的起始点。

  • 至于指定finddelay功能,对信号不必是精确的延迟彼此的副本。然而,该信号可以被成功地仅当在它们之间存在充分的相关对齐。

有关估计协方差和相关功能的更多信息,请参见[1]

参考

[1] ORFANIDIS,索福克勒斯J.最佳信号处理。一个介绍。第二版。新泽西州Englewood Cliffs:普伦蒂斯霍尔,1996年。

扩展功能

C / C ++代码生成
生成使用MATLAB®编码器™C和C ++代码。

也可以看看

||||

是这个主题有帮助吗?