一种滤波降噪方法、装置、电子设备及存储介质与流程

文档序号:16975569发布日期:2019-02-26 18:57阅读:153来源:国知局
一种滤波降噪方法、装置、电子设备及存储介质与流程

本发明属于传感器技术领域,具体涉及一种滤波降噪方法、装置、电子设备及存储介质。



背景技术:

mems(micro-electro-mechanicalsystem,微机电系统)传感器,由于体积小、重量轻、成本低、可靠性高等优点,其被广泛应用于军事、商业、民用等各种领域。但是由于系统结构偏差、干扰力矩、环境噪声等的影响,使得mems传感器的输出数据中存在随机误差。因此,如何提高mems传感器的精度是目前国内外研究的热点问题。针对这一问题,目前主要的解决方案有两种,一种是从硬件方面改善传感器结构,通过减小结构误差提高传感器精度;另一种是从软件方面着手,通过滤波算法消除随机误差达到提高传感器精度目的。由于开发周期短,耗资少,目前第二种方法的研究工作比较多,一般方法是先基于已有数据建立传感器输出数据模型,然后基于此模型应用滤波算法对传感器输出数据进行滤波处理。但是该方法计算量过大,对于低成本实时系统来说较难实现。



技术实现要素:

鉴于此,本发明的目的在于提供一种滤波降噪方法、装置、电子设备及存储介质,以有效地改善上述问题。

本发明的实施例是这样实现的:

第一方面,本发明实施例提供了一种滤波降噪方法,包括:获取待处理的原始信号;将所述原始信号分解成多个本征时间尺度分量;计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值;基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理;基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。

结合第一方面的一种可选的实施方式,将所述原始信号分解成多个本征时间尺度分量,包括:获取所述原始信号中的所有局部极值点;根据所述所有局部极值点和预设公式获得基线信号;基于所述基线信号将所述原始信号分解成多个本征时间尺度分量。

结合第一方面的一种可选的实施方式,计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值,包括:计算所述多个本征时间尺度分量中的每个本征时间尺度分量的赫斯特指数;根据每个所述本征时间尺度分量的赫斯特指数计算对应的本征时间尺度分量的滤波阈值。

结合第一方面的一种可选的实施方式,基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理,包括:基于每个所述本征时间尺度分量的滤波阈值采用区间阈值法对对应的本征时间尺度分量进行滤波处理。

结合第一方面的一种可选的实施方式,,基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号,包括:将滤波处理后的每个所述本征时间尺度分量累加,得到处理后的信号。

第二方面,本发明实施例还提供了一种滤波降噪装置,包括:获取模块,用于获取待处理的原始信号;分解模块,用于将所述原始信号分解成多个本征时间尺度分量;计算模块,用于计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值;滤波模块,用于基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理;重建模块,用于基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。

结合第二方面的一种可选的实施方式,所述分解模块,还用于获取所述原始信号中的所有局部极值点;根据所述所有局部极值点和预设公式获得基线信号;基于所述基线信号将所述原始信号分解成多个本征时间尺度分量。

结合第二方面的一种可选的实施方式,所述计算模块,还用于计算所述多个本征时间尺度分量中的每个本征时间尺度分量的赫斯特指数;根据每个所述本征时间尺度分量的赫斯特指数计算对应的本征时间尺度分量的滤波阈值。

结合第二方面的一种可选的实施方式,所述滤波模块,还用于基于每个所述本征时间尺度分量的滤波阈值采用区间阈值法对对应的本征时间尺度分量进行滤波处理。

结合第二方面的一种可选的实施方式,所述重建模块,还用于将滤波处理后的每个所述本征时间尺度分量累加,得到处理后的信号。

第三方面,本发明实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器和所述处理器连接;所述存储器用于存储程序;所述处理器用于调用存储于所述处理器中的程序,以执行第一方面和/或结合第一方面的任一种可选实施方式提供的方法。

第四方面,本发明实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行第一方面和/或结合第一方面的任一种可选实施方式提供的方法。

本申请实施例提供的滤波降噪方法,包括:获取待处理的原始信号;将所述原始信号分解成多个本征时间尺度分量;计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值;基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理;基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。本申请实施例中,通过将原始信号分解成多个分量,然后分别对各个分量进行滤波处理,从而达到降噪、提高传感器输出数据精度的目的,且计算量小,能满足低成本实时系统的需求。

本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本发明的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本发明的主旨。

图1示出了本发明实施例提供的一种电子设备的结构示意图。

图2示出了本发明实施例提供的一种滤波降噪方法的方法流程图。

图3给出了对原时间尺度分解算法的拟合基线与改进后的时间尺度分解算法的拟合基线进行对比的效果图。

图4示出了本发明实施例提供的一种滤波降噪装置的模块示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本发明的描述中,需要说明的是,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。

如图1所示,图1示出了本发明实施例提供的一种电子设备100的结构框图。所述电子设备100包括:滤波降噪装置110、存储器120、存储控制器130和处理器140。其中,该电子设备100可以是,但不限于个人电脑(personalcomputer,pc)、工控机等电子设备。

所述存储器120、存储控制器130、处理器140各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述滤波降噪装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器120中或固化在所述电子设备100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器140用于执行存储器120中存储的可执行模块,例如所述滤波降噪装置110包括的软件功能模块或计算机程序。

其中,存储器120可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器120用于存储程序,所述处理器140在接收到执行指令后,执行所述程序,后述本发明实施例任一实施例揭示的流程定义的电子设备100所执行的方法可以应用于处理器140中,或者由处理器140实现。

处理器140可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

第一实施例

请参阅图2,为本发明实施例提供的一种应用于上述电子设备100的滤波降噪方法,下面将结合图2对其所包含的步骤进行说明。

步骤s101:获取待处理的原始信号。

获取待处理的原始信号,例如,获取mems传感器采集的原始信号。本申请主要针对低成本的微机电系统(mems)传感器的动态输出信号进行滤波处理,从而提高传感器输出的数据精度。

步骤s102:将所述原始信号分解成多个本征时间尺度分量。

获取到待处理的原始信号后,采用改进的自适应时间尺度分解(improvedadaptivetime-scaledecomposition,iatd)算法将所述原始信号分解成多个本征时间尺度分量。首先,将原始信号作为待处理信号x(t),获取x(t)中的所有局部极值点(τk,xk)(k=0,2,3…m,m为极值点的个数),其中τk为极值点的横坐标,对应于极值出现的时间点。xk为极值点的纵坐标,为时间序列的幅值。序列端点采用镜像对称延拓方法进行延拓,得到左右两端点极值(τ0,x0)和(τm+1,xm+1)。

其次,根据所述所有局部极值点和预设公式获得基线信号,也即根据所有局部极值点和预设公式(1)获得一系列的lk点,然后采用三次样条差值拟合的方式,计算出拟合曲线l1(t),采用三次样条差值拟合的方式,计算出拟合曲线l2(t),采用预设公式(2)获得基线信号l(t)。

其中,预设公式(1)为:

预设公式(2)为:l(t)=βl1(t)+(1-β)l2(t),其中,0<α<1,一般取0.5;0<β<1,使用时取0.4,其中t为时间序列的时间点。则拟合出的曲线既能有效避免“过冲”现象,又保持了三次样条差值法的优点,图3给出了对原时间尺度分解算法的拟合基线(△所在的曲线)与改进后的时间尺度分解算法的拟合基线(○所在的曲线)进行对比的效果图。

最后,基于所述基线信号将所述原始信号分解成多个本征时间尺度分量,也即,从原始信号x(t)中减去基线信号l(t),得到剩余信号m(t):m(t)=x(t)-l(t)。检测m(t)是否满足本征时间尺度分量的两个基本条件:第一,在整个数据序列中,局部极值点的数量nm与过零点的数量nz必须相等,或者最多只相差1个,即满足:|nm-nz|≤1此条件保证信号满足高斯平稳过程分布,去除骑行波。

第二,基线信号l(t)均值为0,因为基线信号l(t)为x(t)的均值曲线,此条件能强迫基线信号对称,平滑不对称的幅值。在实际操作中,可设定一极小量ε,当时,就可认为基线信号均值为0;若m(t)不满足上述两个条件,则将m(t)作为待处理信号,带回上述的步骤。若满足,则m(t)即为分解出的本征时间尺度分量itck(t),rk(t)=x(t)-itck(t)然后将待处理信号x(t)减去本征时间尺度分量itck(t),得到剩余的信号,即:令x(t)=rk(t),重新带回上述步骤即获取x(t)中的所有局部极值点(τk,xk)进行计算,也就是说继续对剩余信号rk(t)进行分解,这样,就可以将原始信号分解为一系列时间尺度分量之和,

作为一种可选的实施方式,也可以利用ceemd(clusterensembleempiricalmodedecomposition)或者与其相近似的分解算法将原始信号分解成多个分量。

步骤s103:计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值。

利用改进的自适应时间尺度分解算法将带处理信号按照频率由高到低逐层分解后,根据各个分量信号的随机特征,计算各个本征时间尺度分量的滤波阈值。可选地,该过程可以是:计算所述多个本征时间尺度分量中的每个本征时间尺度分量的赫斯特指数;根据每个所述本征时间尺度分量的赫斯特指数计算对应的本征时间尺度分量的滤波阈值。其中,计算所述多个本征时间尺度分量中的每个本征时间尺度分量的赫斯特指数的步骤如下:

(1)初始化,设置模块长度s=1;

(2)计算n个点的标准差σs,并记录点对(s,σs),标准差计算公式:

(3)计算相邻两点的均值,并更新原始数据:

其中j=1,2,….n/2;同时修改n和s的值:如果n小于64,至步骤(4);否则至步骤(2)

(4)在双对数曲线上,拟合记录点的数据log10(sσs)=hlog10(s)+c,其中h即为赫斯特指数。

其中,根据每个所述本征时间尺度分量的赫斯特指数计算对应的本征时间尺度分量的滤波阈值的步骤如下:

(1)由于前2组itc噪声分量比较大,因此其标准差可按下式计算:

其中median()表示取序列的中位数操作。

(2)其余itci的标准差按下式计算:

其中ρh≈2.01+0.2(h-0.5)+0.12(h-0.5)2

(3)计算每个itc信号的阈值:

步骤s104:基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理。

基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理。例如,分解成11个本征时间尺度itci,对应的存在11个滤波阈值ti,在对每个itci进行滤波处理时保留信号中大于对应滤波阈值的部分,也即,其中xjk表示区间内的数据点,表示滤波处理后的数据点。

作为一种可选的实施方式,为了避免上述硬阈值滤波带来的信号出现不连续点,可以采用区间阈值法,即在两个过零点确定的区间sec=[tj,tj+1]内,寻找sec的极值xmax,对区间阈值内的点做如下处理:

基于每个所述本征时间尺度分量的滤波阈值采用区间阈值法对对应的本征时间尺度分量进行滤波处理。

当然,也可以采用软阈值滤波,例如

步骤s105:基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。

得到滤波处理后的每个所述本征时间尺度分量后,基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。例如,将滤波处理后的每个所述本征时间尺度分量累加,如,得到处理后的信号。其中为滤波后的本征时间尺度分量。

为了便于理解上述方法的滤波效果,本申请实施例,还给出了处理前和处理后的数据,如表1所示。

表1

本申请实施例还提供了一种滤波降噪装置110,如图4所示。该滤波降噪装置110包括:获取模块111、分解模块112、计算模块113、滤波模块114以及重建模块115。

获取模块111,用于获取待处理的原始信号;

分解模块112,用于将所述原始信号分解成多个本征时间尺度分量;

计算模块113,用于计算所述多个本征时间尺度分量中的每个本征时间尺度分量的滤波阈值;

滤波模块114,用于基于每个所述本征时间尺度分量的滤波阈值对对应的本征时间尺度分量进行滤波处理;

重建模块115,用于基于滤波处理后的每个所述本征时间尺度分量,得到处理后的信号。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本发明实施例所提供的滤波降噪装置110,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1