CN104504181B - 一种基于稀疏复原的信号包络线提取方法 - Google Patents
一种基于稀疏复原的信号包络线提取方法 Download PDFInfo
- Publication number
- CN104504181B CN104504181B CN201410751425.6A CN201410751425A CN104504181B CN 104504181 B CN104504181 B CN 104504181B CN 201410751425 A CN201410751425 A CN 201410751425A CN 104504181 B CN104504181 B CN 104504181B
- Authority
- CN
- China
- Prior art keywords
- value
- designated
- row
- vector
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于稀疏复原的信号包络线提取方法,其先找出待提取包络线的信号中的所有极大值点和所有极小值点,对应构成极大值点向量和极小值点向量;然后构建一个DCT基,从DCT基中提取出行号与每个极大值点的下标一致的每行元素构成一个矩阵,并从DCT基中提取出行号与每个极小值点的下标一致的每行元素构成一个矩阵;接着将极大值点向量作为观测向量、对应的矩阵作为感知矩阵获取上包络线,并将极小值点向量作为观测向量、对应的矩阵作为感知矩阵获取下包络线;最后根据上包络线和下包络线各自的平滑度,并结合DCT基的带宽的变化因子获取最佳上包络线和最佳下包络线;优点是不仅能够有效地提高包络线的精度,而且能够有效地抑制端点效应。
Description
技术领域
本发明涉及一种信号处理技术,尤其是涉及一种基于稀疏复原的信号包络线提取方法。
背景技术
包络分析方法的核心是把调制在中、高频带的低频故障信息,解调到低频进行分析处理,从而提取出故障信息。在机械故障诊断过程中,由于受旋转机械的干扰信号和噪声的影响,提高了信噪比,因而在故障诊断,尤其是齿轮箱、滚动轴承故障诊断中,包络分析方法具有其他故障检测方法不可替代的作用,是目前诊断轴承和齿轮故障的最有效方法。
在信号处理中,目前常用的包络分析方法有:Hilbert(希尔伯特)变换、三次样条插值等。基于Hilbert变换提取信号包络线的方法可以有效地提取调制频率及具有一定的抗噪性,但是随着信号信噪比的变小,Hilbert变换所得的包络误差会逐渐变大,导致所提取的信号包络线不光滑,从而影响信号包络线提取的精度。而基于三次样条插值提取信号包络线的方法提取出的信号包络线不仅有很好的光滑度,而且当节点逐渐加密时,能够很好的提高信号包络线提取的精度,但是样条插值函数需要数据向量两端数据的一阶和二阶导数,而由数据曲线得不到所需要的端点处信息,因此包络线在端点会发生大的摆动,形成非常棘手的端点效应问题。
发明内容
本发明所要解决的技术问题是提供一种基于稀疏复原的信号包络线提取方法,其不仅能够有效地提高包络线的精度,而且能够有效地抑制端点效应。
本发明解决上述技术问题所采用的技术方案为:一种基于稀疏复原的信号包络线提取方法,其特征在于包括以下步骤:
①假定待提取包络线的信号为x,则将x以行向量的形式表示为x=[x1 x2 … xN-1xN],其中,在此符号“[ ]”为向量表示符号,N表示x的采样点数,x1表示x中的第1个采样值,x2表示x中的第2个采样值,xN-1表示x中的第N-1个采样值,xN表示x中的第N个采样值;
②找出x中的所有极大值点和所有极小值点,然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa,并将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb;
③根据所要构建的DCT基的阶数和用于改变所要构建的DCT基的带宽的变化因子,构建一个DCT基,记为Ψ,其中,Ψ为一个N阶方阵;
④从Ψ中提取出行号与x中的每个极大值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K1×N的矩阵,记为H1,其中,K1表示x中的极大值点的总个数,1≤K1<N;
同样,从Ψ中提取出行号与x中的每个极小值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K2×N的矩阵,记为H2,其中,K2表示x中的极小值点的总个数,1≤K2<N;
⑤将Pa作为观测向量,将H1作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的上包络线,记为xa;
同样,将Pb作为观测向量,将H2作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的下包络线,记为xb;
⑥构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0;然后根据xa和D获取xa的平滑度,记为Ha,同样根据xb和D获取xb的平滑度,记为Hb;
⑦判断Ha是否小于min_Ha,如果是,则令min_Ha=Ha,并将xa作为x的最佳上包络线,然后执行步骤⑧,否则,直接执行步骤⑧,其中,min_Ha的初始值为无穷大;
⑧判断Hb是否小于min_Hb,如果是,则令min_Hb=Hb,并将xb作为x的最佳下包络线,然后执行步骤⑨,否则,直接执行步骤⑨,其中,min_Hb的初始值为无穷大;
⑨判断m是否等于md,如果是,则分别输出x的最佳上包络线和x的最佳下包络线,否则,令m=m+1,然后返回步骤③继续执行,其中,m表示用于改变所要构建的DCT基的带宽的变化因子,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值,m=m+1中的“=”为赋值符号。
所述的步骤②中x的极大值点向量的获取过程为:
②-1a、对x求一阶差分,得到x的一阶差分向量,记为dx;
②-2a、根据dx中的每个元素的值,获取一个元素的值为1或0的新向量,记为Ax;对于dx中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N;
②-3a、对Ax求一阶差分,得到Ax的一阶差分向量,记为Bx;
②-4a、在Bx中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为W1x;再将W1x中的每个元素的值加1,得到新的位置向量,记为W1x',W1x'中的任一个元素的值为x中的一个极大值点的下标;
②-5a、根据W1x'中的每个元素的值,在x中找出所有极大值点,对于W1x'中的任一个元素,其值为x中的一个极大值点的下标;然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa;
所述的步骤②中x的极小值点向量的获取过程为:
②-1b、对x进行取反操作,得到x的反向量,记为然后对求一阶差分,得到的一阶差分向量,记为
②-2b、根据中的每个元素的值,获取一个元素的值为1或0的新向量,记为对于中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N;
②-3b、对求一阶差分,得到的一阶差分向量,记为
②-4b、在中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为接着将中的每个元素的值加1,得到新的位置向量,记为再对进行取反操作,得到的反向量,记为中的任一个元素的值为x中的一个极小值点的下标;
②-5b、根据中的每个元素的值,在x中找出所有极小值点,对于中的任一个元素,其值为x中的一个极小值点的下标;然后将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb。
所述的步骤③的具体过程为:
③-1、假定所要构建的DCT基的阶数为N阶,并令m表示用于改变所要构建的DCT基的带宽的变化因子,其中,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值;
③-2、构建一个N阶方阵,记为Ψ,将Ψ中第p行第q列的元素的值记为Ψ(p,q),其中,p和q的初始值均为1,1≤p≤N,1≤q≤N,cos()为求余弦函数;
③-3、将步骤③-2构建的Ψ作为DCT基。
所述的步骤⑤中x的上包络线的获取过程为:
⑤-1a、令ka表示迭代次数,令P1表示维数为K1的向量,令B1表示维数为K1×K1的矩阵,其中,ka的初始值为1,1≤ka≤K1;
⑤-2a、计算H1中的每一列与第ka-1次迭代的残差值rka-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H1中的一列的列号作为P1中的第ka个元素的值,并将N个相关系数中的最大值对应的H1中的一列作为B1中的第ka列;再在H1中将N个相关系数中的最大值对应的H1中的一列剔除;
其中,H1中的第j列与第ka-1次迭代的残差值rka-1之间的相关系数为H1中的第j列与第ka-1次迭代的残差值rka-1之间的内积,1≤j≤N,当ka=1时取rka-1=Pa;
⑤-3a、利用最小二乘法,计算rka-1在B1中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为aka;
⑤-4a、根据B1和aka,计算第ka次迭代的残差值,记为rka,rka=rka-1-B1×aka;
⑤-5a、判断ka是否等于K1,如果是,则执行步骤⑤-6a,否则,令ka=ka+1,然后返回步骤⑤-2a继续执行,其中,ka=ka+1中的“=”为赋值符号;
⑤-6a、根据P1和aka获取稀疏信号,记为共包含K1个非零信号值和N-K1个零值,中下标与P1中的第i个元素的值一致的元素的值为非零信号值且等于aka中的第i个元素的值,中下标与P1中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K1;
⑤-7a、根据和Ψ,计算由Pa恢复出的信号,记为xa,然后将xa作为x的信号上包络线;
同样,将Pb作为观测向量,将H2作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的下包络线,记为xb;
所述的步骤⑤中x的下包络线的获取过程为:
⑤-1b、令kb表示迭代次数,令P2表示维数为K2的向量,令B2表示维数为K2×K2的矩阵,其中,kb的初始值为1,1≤kb≤K2;
⑤-2b、计算H2中的每一列与第kb-1次迭代的残差值rkb-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H2中的一列的列号作为P2中的第kb个元素的值,并将N个相关系数中的最大值对应的H2中的一列作为B2中的第kb列;再在H2中将N个相关系数中的最大值对应的H2中的一列剔除;
其中,H2中的第j列与第kb-1次迭代的残差值rkb-1之间的相关系数为H2中的第j列与第kb-1次迭代的残差值rkb-1之间的内积,1≤j≤N,当kb=1时取rkb-1=Pb;
⑤-3b、利用最小二乘法,计算rkb-1在B2中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为akb;
⑤-4b、根据B2和akb,计算第kb次迭代的残差值,记为rkb,rkb=rkb-1-B2×akb;
⑤-5b、判断kb是否等于K2,如果是,则执行步骤⑤-6b,否则,令kb=kb+1,然后返回步骤⑤-2b继续执行,其中,kb=kb+1中的“=”为赋值符号;
⑤-6b、根据P2和akb获取稀疏信号,记为共包含K2个非零信号值和N-K2个零值,中下标与P2中的第i个元素的值一致的元素的值为非零信号值且等于akb中的第i个元素的值,中下标与P2中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K2;
⑤-7b、根据和Ψ,计算由Pb恢复出的信号,记为xb,然后将xb作为x的信号下包络线。
所述的步骤⑥的具体过程为:
⑥-1、构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0,即
⑥-2、根据xa和D计算的差分向量,记为dxa,dxa=xa×D;同样,根据xb和D计算xb的差分向量,记为dxb,dxb=xb×D;
⑥-3、计算dxa中的所有元素的值的平方和,记为Ha,然后将Ha作为xa的平滑度;同样,计算dxb中的所有元素的值的平方和,记为Hb,然后将Hb作为xb的平滑度。
与现有技术相比,本发明的优点在于:
1)本发明方法引入一个用于改变所要构建的DCT基的带宽的变换因子,可通过改变变换因子的值来构建不同的稀疏基即DCT基,这种方式可以利用正交匹配追踪算法自适应的提取出信号的最佳上包络线和最佳下包络线,因此本发明方法具有很好的自适应性,能够有效地提高包络线提取的精度。
2)本发明方法采用的稀疏复原方法是正交匹配追踪算法,分别以极大值点向量和极小值点向量作为正交匹配追踪算法的观测矩阵,相应求出信号的最佳上包络线和最佳下包络线,正交匹配追踪算法不仅在程序上易于实现,而且计算成本低、速度快。
3)本发明方法采用的是基于稀疏复原方法拟合出极大值点和极小值点的曲线,即将极大值点向量作为观测向量进行稀疏复原提取出信号的上包络线,并将极小值点向量作为观测向量进行稀疏复原提取出信号的下包络线,这就避免了三次样条插值拟合曲线所存在的端点效应问题,因此本发明方法可以有效的抑制端点效应,该特性在经验模态分解中可以得到很好的应用。
附图说明
图1为本发明方法的流程框图;
图2为采用本发明方法提取出的信号的最佳上包络线的示意图;
图3为采用本发明方法提取出的信号的最佳下包络线的示意图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
本发明提出的一种基于稀疏复原的信号包络线提取方法,其流程框图如图1所示,其包括以下步骤:
①假定待提取包络线的信号为x,则将x以行向量的形式表示为x=[x1 x2 … xN-1xN],其中,在此符号“[ ]”为向量表示符号,N表示x的采样点数,N的具体值一般根据处理的信号而定,通常采样点数越多越好,但是采样点数越多则计算复杂度会增加,因此在实际处理过程中一般都折衷考虑,如本实施例在仿真时取N=256,x1表示x中的第1个采样值,x2表示x中的第2个采样值,xN-1表示x中的第N-1个采样值,xN表示x中的第N个采样值。
②找出x中的所有极大值点和所有极小值点,然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa,并将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb。
在本实施例中,步骤②中x的极大值点向量的获取过程为:
②-1a、对x求一阶差分,得到x的一阶差分向量,记为dx。在此,对x求一阶差分采用现有技术。
②-2a、根据dx中的每个元素的值,获取一个元素的值为1或0的新向量,记为Ax;对于dx中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N。
②-3a、对Ax求一阶差分,得到Ax的一阶差分向量,记为Bx。
②-4a、在Bx中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为W1x;再将W1x中的每个元素的值加1,得到新的位置向量,记为W1x',W1x'中的任一个元素的值为x中的一个极大值点的下标。
②-5a、根据W1x'中的每个元素的值,在x中找出所有极大值点,对于W1x'中的任一个元素,其值为x中的一个极大值点的下标;然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa。
在本实施例中,步骤②中x的极小值点向量的获取过程与x的极大值点向量的获取过程大致相同,只是先将x取反,然后按照步骤②-1a至步骤②-4a的过程,以相同的方式获取新的位置向量,接着对新的位置向量取反,再按照步骤②-5a的过程,以相同的方式获取x的极大值点向量,即步骤②中x的极小值点向量的获取过程为:
②-1b、对x进行取反操作,得到x的反向量,记为然后对求一阶差分,得到的一阶差分向量,记为在此,对x进行取反操作,即对x中的每个元素取其相反数,如2的相反数为-2。
②-2b、根据中的每个元素的值,获取一个元素的值为1或0的新向量,记为对于中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N。
②-3b、对求一阶差分,得到的一阶差分向量,记为
②-4b、在中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为接着将中的每个元素的值加1,得到新的位置向量,记为再对进行取反操作,得到的反向量,记为中的任一个元素的值为x中的一个极小值点的下标。在此,对进行取反操作,即对中的每个元素取其相反数。
②-5b、根据中的每个元素的值,在x中找出所有极小值点,对于中的任一个元素,其值为x中的一个极小值点的下标;然后将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb。
③根据所要构建的DCT基的阶数和用于改变所要构建的DCT基的带宽的变化因子,构建一个DCT基,记为Ψ,其中,Ψ为一个N阶方阵。
在此具体实施例中,步骤③的具体过程为:
③-1、假定所要构建的DCT基的阶数为N阶,并令m表示用于改变所要构建的DCT基的带宽的变化因子,其中,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值,在本实施例中取md=20,该值是在本发明方法的基础上通过大量实验获得的实验结果。
③-2、构建一个N阶方阵,记为Ψ,将Ψ中第p行第q列的元素的值记为Ψ(p,q),其中,p和q的初始值均为1,1≤p≤N,1≤q≤N,cos()为求余弦函数。
③-3、将步骤③-2构建的Ψ作为DCT基。
④从Ψ中提取出行号与x中的每个极大值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K1×N的矩阵,记为H1,其中,K1表示x中的极大值点的总个数,亦表示提取出的行的总行数,1≤K1<N。
同样,从Ψ中提取出行号与x中的每个极小值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K2×N的矩阵,记为H2,其中,K2表示x中的极小值点的总个数,亦表示提取出的行的总行数,1≤K2<N。
⑤将Pa作为观测向量,将H1作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的上包络线,记为xa。
在此具体实施例中,步骤⑤中x的上包络线的获取过程为:
⑤-1a、令ka表示迭代次数,令P1表示维数为K1的向量,令B1表示维数为K1×K1的矩阵,其中,ka的初始值为1,1≤ka≤K1。
⑤-2a、计算H1中的每一列与第ka-1次迭代的残差值rka-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H1中的一列的列号作为P1中的第ka个元素的值,并将N个相关系数中的最大值对应的H1中的一列作为B1中的第ka列;再在H1中将N个相关系数中的最大值对应的H1中的一列剔除。
其中,H1中的第j列与第ka-1次迭代的残差值rka-1之间的相关系数为H1中的第j列与第ka-1次迭代的残差值rka-1之间的内积,1≤j≤N,当ka=1时取rka-1=Pa。
⑤-3a、利用最小二乘法,计算rka-1在B1中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为aka。
⑤-4a、根据B1和aka,计算第ka次迭代的残差值,记为rka,rka=rka-1-B1×aka。
⑤-5a、判断ka是否等于K1,如果是,则执行步骤⑤-6a,否则,令ka=ka+1,然后返回步骤⑤-2a继续执行,其中,ka=ka+1中的“=”为赋值符号。
⑤-6a、根据P1和aka获取稀疏信号,记为共包含K1个非零信号值和N-K1个零值,中下标与P1中的第i个元素的值一致的元素的值为非零信号值且等于aka中的第i个元素的值,中下标与P1中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K1。
当ka等于K1时,P1和aka中均包含有K1元素,假设P1=[P11,P12,...,P1i,...,P1K1],aka=[aka1,aka2,...,akai,...,akaK1],则中下标为P11的元素的值为非零信号值且等于aka1,中下标为P12的元素的值为非零信号值且等于aka2,中下标为P1i的元素的值为非零信号值且等于akai,中下标为P1K1的元素的值为非零信号值且等于akaK1,中的其他元素的值为0。
⑤-7a、根据和Ψ,计算由Pa恢复出的信号,记为xa,然后将xa作为x的信号上包络线。
同样,将Pb作为观测向量,将H2作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的下包络线,记为xb。
在此具体实施例中,步骤⑤中x的下包络线的获取过程为:
⑤-1b、令kb表示迭代次数,令P2表示维数为K2的向量,令B2表示维数为K2×K2的矩阵,其中,kb的初始值为1,1≤kb≤K2。
⑤-2b、计算H2中的每一列与第kb-1次迭代的残差值rkb-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H2中的一列的列号作为P2中的第kb个元素的值,并将N个相关系数中的最大值对应的H2中的一列作为B2中的第kb列;再在H2中将N个相关系数中的最大值对应的H2中的一列剔除。
其中,H2中的第j列与第kb-1次迭代的残差值rkb-1之间的相关系数为H2中的第j列与第kb-1次迭代的残差值rkb-1之间的内积,1≤j≤N,当kb=1时取rkb-1=Pb。
⑤-3b、利用最小二乘法,计算rkb-1在B2中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为akb。
⑤-4b、根据B2和akb,计算第kb次迭代的残差值,记为rkb,rkb=rkb-1-B2×akb。
⑤-5b、判断kb是否等于K2,如果是,则执行步骤⑤-6b,否则,令kb=kb+1,然后返回步骤⑤-2b继续执行,其中,kb=kb+1中的“=”为赋值符号。
⑤-6b、根据P2和akb获取稀疏信号,记为共包含K2个非零信号值和N-K2个零值,中下标与P2中的第i个元素的值一致的元素的值为非零信号值且等于akb中的第i个元素的值,中下标与P2中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K2。
当kb等于K2时,P2和akb中均包含有K2元素,假设P2=[P21,P22,...,P2i,...,P2K2],akb=[akb1,akb2,...,akbi,...,akbK2],则中下标为P21的元素的值为非零信号值且等于akb1,中下标为P22的元素的值为非零信号值且等于akb2,中下标为P2i的元素的值为非零信号值且等于akbi,中下标为P2K2的元素的值为非零信号值且等于akbK2,中的其他元素的值为0。
⑤-7b、根据和Ψ,计算由Pb恢复出的信号,记为xb,然后将xb作为x的信号下包络线。
⑥构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0;然后根据xa和D获取xa的平滑度,记为Ha,同样根据xb和D获取xb的平滑度,记为Hb。
在此具体实施例中,步骤⑥的具体过程为:
⑥-1、构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0,即
⑥-2、根据xa和D计算xa的差分向量,记为dxa,dxa=xa×D;同样,根据xb和D计算xb的差分向量,记为dxb,dxb=xb×D。
⑥-3、计算dxa中的所有元素的值的平方和,记为Ha,然后将Ha作为xa的平滑度;同样,计算dxb中的所有元素的值的平方和,记为Hb,然后将Hb作为xb的平滑度。
⑦判断Ha是否小于min_Ha,如果是,则令min_Ha=Ha,并将xa作为x的最佳上包络线,然后执行步骤⑧,否则,直接执行步骤⑧,其中,min_Ha的初始值为无穷大。
⑧判断Hb是否小于min_Hb,如果是,则令min_Hb=Hb,并将xb作为x的最佳下包络线,然后执行步骤⑨,否则,直接执行步骤⑨,其中,min_Hb的初始值为无穷大。
⑨判断m是否等于md,如果是,则分别输出x的最佳上包络线和x的最佳下包络线,否则,令m=m+1,然后返回步骤③继续执行,其中,m表示用于改变所要构建的DCT基的带宽的变化因子,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值,在本实施例中取md=20,该值是在本发明方法的基础上通过大量实验获得的实验结果,m=m+1中的“=”为赋值符号。
为进一步说明本发明方法的可行性和有效性,对本发明方法进行实验。
假设一维信号x(t)=0.8exp(-1.5t)cos(2πf1t+0.1)+0.9exp(-2t)cos(2πf2t+0.2),并假设采样点数N为256,信号采样频率为fs=800Hz,式中f1=50Hz,f2=100Hz。利用本发明方法分别提取一维信号x(t)的最佳上包络线和最佳下包络线,图2给出了采用本发明方法提取出的信号x(t)的最佳上包络线的示意图,图3给出了采用本发明方法提取出的信号x(t)的最佳下包络线的示意图。图2中的m为用于表示改变DCT基的带宽的变化因子,dd表示的是采用本发明方法拟合出的曲线的平滑程度。由于包络线具有变化缓慢的特性,因此dd越小越好。图2中的稀疏复原即为本发明方法,从图2中可以看出利用本发明方法可以准确地提取出信号的最佳上包络线,并且端点处的包络线也能够准确提取出来,由此证明了本发明方法的可行性和有效性。图3中的稀疏复原即为本发明方法,从图3中可以看出利用本发明方法也能准确地提取出信号的最佳下包络线,再次验证了本发明方法的可行性和有效性。
Claims (4)
1.一种基于稀疏复原的信号包络线提取方法,其特征在于包括以下步骤:
①假定待提取包络线的信号为x,则将x以行向量的形式表示为x=[x1 x2 … xN-1 xN],其中,在此符号“[]”为向量表示符号,N表示x的采样点数,x1表示x中的第1个采样值,x2表示x中的第2个采样值,xN-1表示x中的第N-1个采样值,xN表示x中的第N个采样值;
②找出x中的所有极大值点和所有极小值点,然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa,并将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb;
③根据所要构建的DCT基的阶数和用于改变所要构建的DCT基的带宽的变化因子,构建一个DCT基,记为Ψ,其中,Ψ为一个N阶方阵;
所述的步骤③的具体过程为:
③-1、假定所要构建的DCT基的阶数为N阶,并令m表示用于改变所要构建的DCT基的带宽的变化因子,其中,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值;
③-2、构建一个N阶方阵,记为Ψ,将Ψ中第p行第q列的元素的值记为Ψ(p,q),其中,p和q的初始值均为1,1≤p≤N,1≤q≤N,cos()为求余弦函数;
③-3、将步骤③-2构建的Ψ作为DCT基;
④从Ψ中提取出行号与x中的每个极大值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K1×N的矩阵,记为H1,其中,K1表示x中的极大值点的总个数,1≤K1<N;
同样,从Ψ中提取出行号与x中的每个极小值点的下标一致的每行元素,然后将提取出的所有行按行号顺序排列构成一个维数为K2×N的矩阵,记为H2,其中,K2表示x中的极小值点的总个数,1≤K2<N;
⑤将Pa作为观测向量,将H1作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的上包络线,记为xa;
同样,将Pb作为观测向量,将H2作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的下包络线,记为xb;
⑥构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0;然后根据xa和D获取xa的平滑度,记为Ha,同样根据xb和D获取xb的平滑度,记为Hb;
⑦判断Ha是否小于min_Ha,如果是,则令min_Ha=Ha,并将xa作为x的最佳上包络线,然后执行步骤⑧,否则,直接执行步骤⑧,其中,min_Ha的初始值为无穷大;
⑧判断Hb是否小于min_Hb,如果是,则令min_Hb=Hb,并将xb作为x的最佳下包络线,然后执行步骤⑨,否则,直接执行步骤⑨,其中,min_Hb的初始值为无穷大;
⑨判断m是否等于md,如果是,则分别输出x的最佳上包络线和x的最佳下包络线,否则,令m=m+1,然后返回步骤③继续执行,其中,m表示用于改变所要构建的DCT基的带宽的变化因子,m的初始值为1,1≤m≤md,md表示设定的变化因子最大值,m=m+1中的“=”为赋值符号。
2.根据权利要求1所述的一种基于稀疏复原的信号包络线提取方法,其特征在于所述的步骤②中x的极大值点向量的获取过程为:
②-1a、对x求一阶差分,得到x的一阶差分向量,记为dx;
②-2a、根据dx中的每个元素的值,获取一个元素的值为1或0的新向量,记为Ax;对于dx中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N;
②-3a、对Ax求一阶差分,得到Ax的一阶差分向量,记为Bx;
②-4a、在Bx中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为W1x;再将W1x中的每个元素的值加1,得到新的位置向量,记为W1x',W1x'中的任一个元素的值为x中的一个极大值点的下标;
②-5a、根据W1x'中的每个元素的值,在x中找出所有极大值点,对于W1x'中的任一个元素,其值为x中的一个极大值点的下标;然后将从x中找出的所有极大值点按序排列构成一个x的极大值点向量,记为Pa;
所述的步骤②中x的极小值点向量的获取过程为:
②-1b、对x进行取反操作,得到x的反向量,记为然后对求一阶差分,得到的一阶差分向量,记为
②-2b、根据中的每个元素的值,获取一个元素的值为1或0的新向量,记为对于中的第j个元素,如果该元素的值大于零,则将该元素的值置为1,如果该元素的值小于或等于零,则将该元素的值置为0,其中,1≤j≤N;
②-3b、对求一阶差分,得到的一阶差分向量,记为
②-4b、在中找出值小于零的所有元素;然后将找出的所有元素的下标按序排列构成一个位置向量,记为接着将中的每个元素的值加1,得到新的位置向量,记为再对进行取反操作,得到的反向量,记为中的任一个元素的值为x中的一个极小值点的下标;
②-5b、根据中的每个元素的值,在x中找出所有极小值点,对于中的任一个元素,其值为x中的一个极小值点的下标;然后将从x中找出的所有极小值点按序排列构成一个x的极小值点向量,记为Pb。
3.根据权利要求1所述的一种基于稀疏复原的信号包络线提取方法,其特征在于所述的步骤⑤中x的上包络线的获取过程为:
⑤-1a、令ka表示迭代次数,令P1表示维数为K1的向量,令B1表示维数为K1×K1的矩阵,其中,ka的初始值为1,1≤ka≤K1;
⑤-2a、计算H1中的每一列与第ka-1次迭代的残差值rka-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H1中的一列的列号作为P1中的第ka个元素的值,并将N个相关系数中的最大值对应的H1中的一列作为B1中的第ka列;再在H1中将N个相关系数中的最大值对应的H1中的一列剔除;
其中,H1中的第j列与第ka-1次迭代的残差值rka-1之间的相关系数为H1中的第j列与第ka-1次迭代的残差值rka-1之间的内积,1≤j≤N,当ka=1时取rka-1=Pa;
⑤-3a、利用最小二乘法,计算rka-1在B1中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为aka;
⑤-4a、根据B1和aka,计算第ka次迭代的残差值,记为rka,rka=rka-1-B1×aka;
⑤-5a、判断ka是否等于K1,如果是,则执行步骤⑤-6a,否则,令ka=ka+1,然后返回步骤⑤-2a继续执行,其中,ka=ka+1中的“=”为赋值符号;
⑤-6a、根据P1和aka获取稀疏信号,记为共包含K1个非零信号值和N-K1个零值,中下标与P1中的第i个元素的值一致的元素的值为非零信号值且等于aka中的第i个元素的值,中下标与P1中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K1;
⑤-7a、根据和Ψ,计算由Pa恢复出的信号,记为xa,然后将xa作为x的信号上包络线;
同样,将Pb作为观测向量,将H2作为感知矩阵,利用正交匹配追踪算法恢复出的信号即为x的下包络线,记为xb;
所述的步骤⑤中x的下包络线的获取过程为:
⑤-1b、令kb表示迭代次数,令P2表示维数为K2的向量,令B2表示维数为K2×K2的矩阵,其中,kb的初始值为1,1≤kb≤K2;
⑤-2b、计算H2中的每一列与第kb-1次迭代的残差值rkb-1之间的相关系数,共得到N个相关系数;然后将N个相关系数中的最大值对应的H2中的一列的列号作为P2中的第kb个元素的值,并将N个相关系数中的最大值对应的H2中的一列作为B2中的第kb列;再在H2中将N个相关系数中的最大值对应的H2中的一列剔除;
其中,H2中的第j列与第kb-1次迭代的残差值rkb-1之间的相关系数为H2中的第j列与第kb-1次迭代的残差值rkb-1之间的内积,1≤j≤N,当kb=1时取rkb-1=Pb;
⑤-3b、利用最小二乘法,计算rkb-1在B2中的每一列上的稀疏映射系数,然后将所有稀疏映射系数按序构成稀疏映射系数序列,记为akb;
⑤-4b、根据B2和akb,计算第kb次迭代的残差值,记为rkb,rkb=rkb-1-B2×akb;
⑤-5b、判断kb是否等于K2,如果是,则执行步骤⑤-6b,否则,令kb=kb+1,然后返回步骤⑤-2b继续执行,其中,kb=kb+1中的“=”为赋值符号;
⑤-6b、根据P2和akb获取稀疏信号,记为共包含K2个非零信号值和N-K2个零值,中下标与P2中的第i个元素的值一致的元素的值为非零信号值且等于akb中的第i个元素的值,中下标与P2中的任一个元素的值不一致的元素的值等于0,其中,1≤i≤K2;
⑤-7b、根据和Ψ,计算由Pb恢复出的信号,记为xb,然后将xb作为x的信号下包络线。
4.根据权利要求3所述的一种基于稀疏复原的信号包络线提取方法,其特征在于所述的步骤⑥的具体过程为:
⑥-1、构建一个维数为(N-1)×N的差分矩阵,记为D,D中第i行第i列的元素的值为1,D中第i行第i+1列的元素的值为-1,D中除第i行第i列的元素和第i行第i+1列的元素外的所有元素的值均为0,即
⑥-2、根据xa和D计算的差分向量,记为dxa,dxa=xa×D;同样,根据xb和D计算xb的差分向量,记为dxb,dxb=xb×D;
⑥-3、计算dxa中的所有元素的值的平方和,记为Ha,然后将Ha作为xa的平滑度;同样,计算dxb中的所有元素的值的平方和,记为Hb,然后将Hb作为xb的平滑度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410751425.6A CN104504181B (zh) | 2014-12-10 | 2014-12-10 | 一种基于稀疏复原的信号包络线提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410751425.6A CN104504181B (zh) | 2014-12-10 | 2014-12-10 | 一种基于稀疏复原的信号包络线提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504181A CN104504181A (zh) | 2015-04-08 |
CN104504181B true CN104504181B (zh) | 2017-06-16 |
Family
ID=52945578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410751425.6A Active CN104504181B (zh) | 2014-12-10 | 2014-12-10 | 一种基于稀疏复原的信号包络线提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504181B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106646012B (zh) * | 2016-09-09 | 2020-01-31 | 中国舰船研究设计中心 | 一种用频装备发射谱包络提取方法 |
CN108491563B (zh) * | 2018-01-30 | 2022-04-01 | 宁波大学 | 一种基于稀疏重构最优化算法的信号包络线提取方法 |
CN112232321B (zh) * | 2020-12-14 | 2021-03-19 | 西南交通大学 | 一种振动数据干扰降噪方法、装置、设备及可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407020B1 (en) * | 2010-09-28 | 2013-03-26 | The United States Of America As Represented By The Secretary Of The Navy | Fast method to search for linear frequency-modulated signals |
CN103558498A (zh) * | 2013-11-18 | 2014-02-05 | 华北电力大学 | 基于小波分析的绝缘子污闪泄漏电流信号稀疏表示方法 |
-
2014
- 2014-12-10 CN CN201410751425.6A patent/CN104504181B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407020B1 (en) * | 2010-09-28 | 2013-03-26 | The United States Of America As Represented By The Secretary Of The Navy | Fast method to search for linear frequency-modulated signals |
CN103558498A (zh) * | 2013-11-18 | 2014-02-05 | 华北电力大学 | 基于小波分析的绝缘子污闪泄漏电流信号稀疏表示方法 |
Non-Patent Citations (2)
Title |
---|
The empirical mode decomposition and the Hilbert spectrum for nonlinear and non-stationary time series analysis;Huang N E等;《Royal Society of London Proceedings Series》;19881231;903-998 * |
斜拉索非线性振动信号粒子滤波分析与应用;叶庆卫等;《振动与冲击》;20131231;第32卷(第5期);108-112 * |
Also Published As
Publication number | Publication date |
---|---|
CN104504181A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110702411B (zh) | 一种基于时频分析的残差网络滚动轴承故障诊断方法 | |
CN110334580A (zh) | 基于集成增量的动态权重组合的设备故障分类方法 | |
CN104504181B (zh) | 一种基于稀疏复原的信号包络线提取方法 | |
CN104794501B (zh) | 模式识别方法及装置 | |
Saufi et al. | Differential evolution optimization for resilient stacked sparse autoencoder and its applications on bearing fault diagnosis | |
CN109683591B (zh) | 基于融合信号时域能量与时频熵的水下推进器故障程度辨识方法 | |
CN102636742A (zh) | 基于小波神经网络的大规模模拟电路故障诊断方法 | |
CN114216682B (zh) | 一种基于tcn和bls的滚动轴承的寿命预测方法及装置 | |
CN113033611B (zh) | 一种电机轴承数据采集与故障诊断系统 | |
CN110749442A (zh) | Laplace小波自适应稀疏表示的滚动轴承故障特征提取方法 | |
CN110807524A (zh) | 单通道信号盲源分离幅度校正方法 | |
An et al. | Robust automatic modulation classification in low signal to noise ratio | |
CN110971457A (zh) | 一种基于elm的时间同步方法 | |
CN117171544B (zh) | 基于多通道融合卷积神经网络的电机振动故障诊断方法 | |
CN103152298B (zh) | 一种基于分布式压缩感知系统的盲信号重构方法 | |
CN110569966B (zh) | 一种数据处理方法、装置及电子设备 | |
CN111079347B (zh) | 一种利用星座图的基于深度学习的信噪比估计方法 | |
CN116805055A (zh) | 一种基于无监督动量对比学习的辐射源个体识别方法 | |
CN108491563B (zh) | 一种基于稀疏重构最优化算法的信号包络线提取方法 | |
CN104200002A (zh) | 一种粘性阻尼振动信号中的模态参数提取方法 | |
CN107704825A (zh) | 基于自适应集成多小波的机械设备故障特征提取方法 | |
CN111397884B (zh) | 一种改进梅尔倒谱系数算法的叶片故障诊断方法 | |
CN104378176B (zh) | 一种鲁棒通信信号调制识别方法 | |
CN103312337A (zh) | 一种振动信号的稀疏矩阵的自适应获取方法 | |
CN110727256A (zh) | 一种基于混合小波神经网络的工业设备故障诊断方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |