本发明属于振动频率测量技术领域,具体涉及一种基于多目标长短期记忆循环神经网络的非接触振动频率组成测量方法。
背景技术:
现有技术的一些非接触振动频率测量方法,往往只能获取到被测物的主频率,但其它的振动频率组成均被忽略了。但是工程实际中,很多时候还是需要获取多个振动频率组成的信息。
人工神经网络的输入与输出、网络内的参数与参数之间是相对独立的。但现实世界诸多事物及现象都是相互关联的,振动信号也是其中之一。单个或小部分片段的采样点,本质上是没有振动特征可言,循环神经网络(recurrentneuralnetwork,rnn)的提出就是用来处理这类前后信息相互关联的任务。并已成功利用到语言翻译、人工智能写作、作曲、语音增强等诸多任务中。长短期记忆循环神经网络(long-shorttermmemory-recurrentneuralnetworks,lstm-rnns)由于其可以记忆并综合理解远期及近期的输入信息,被使用在诸多与时序相关的应用领域,如时序信号分类和声音事件识别(soundeventdetection,sed)。除此之外,多任务学习可以实现参数共享,特征共享表示,实现多个优化指标同时进行学习和训练,提高训练效率和高效利用模型参数等。根据具体任务的不同,进行灵活的设计网络结构及数据流程,现已有较多的多任务学习的具体应用。
技术实现要素:
本发明的目的在于提供一种非接触振动频率组成测量方法,该方法有利于获取被测物的振动频率组成。
为实现上述目的,本发明采用的技术方案是:一种非接触振动频率组成测量方法,包括以下步骤:
1)获取被测物的图像序列,在此基础上,选取被测物的待测区域,然后提取待测区域的图像序列;
2)将待测区域内的所有像素沿时程方向读出亮度信号后,分别储存为独立的亮度变化值;设待测区域宽度为w,高度为h,则得到w×h个亮度变化信号,且该些亮度变化信号的长度为图像序列的总帧数;
3)将得到的该些亮度变化信号输入训练好的多目标长短期记忆循环神经网络,得到总数量为n×w×h的振动频率预测结果,同时将该些振动频率预测结果重建成n个振动频率预测结果图;
4)将振动频率预测结果分布绘制成统计直方图,取预测计数最大的振动频率为整个待测区域的振动频率预测值。
进一步地,所述多目标长短期记忆循环神经网络包括长短期记忆隐藏层,循环连接t次,所述t与图像序列以秒为单位的长度相同,且每层的隐藏尺寸为l,所述l与信号输入长度相同;将尺寸为l的一维矩阵输入所述多目标长短期记忆循环神经网络,然后将输入的一维张量变维为尺寸为t×i的二维矩阵,此处l为输入的亮度变化信号长度且等于t×i,t为输入图像序列长度,i为输入图像序列采样率;对于每个长短期记忆单元,它的输入尺寸为i,输入的二维矩阵将以t个时间步输入所述多目标长短期记忆循环神经网络;采用f个全连接层来全连接最后一次长短期记忆单元的输出,将所有的输出全连接至可预测的振动频率预测种类值mfc,然后采用柔性最大方程作为激活函数,利用全连接层的输出最终产生每个振动频率预测类的概率分布;将变维后的二维张量重复输入到所述多目标长短期记忆循环神经网络n次,隐藏状态和单元状态在一轮二维张量输入时均置为零,在之后的n-1轮输出中,都将隐藏状态和单元状态设为前一轮的隐藏状态和单元状态输出,将该流程重复n次,最终得到n个振动频率概率分布,标有最高概率的输出即为所对应的振动频率组成。
进一步地,采用数据集生成算法生成的模拟信号对所述多目标长短期记忆循环神经网络进行训练,以实现多个振动频率组成的测量;多频率振动组成的振动信号的模拟方法为:首先模拟生成一个由n个振动信号成分组成的多频率振动信号s:
其中,n是想要获得的目标振动频率组成数量,si是第i个信号组成成分,用预设频率为fi的标准正弦波与随机噪声rn叠加来构造si,即:
si=sin(2πfi×t) rn
其中,fi为所模拟的振动信号频率,t为从零以步长为采样间隔递增至信号持续时间的离散数值;
对于每一个si,即所有可能的预测振动频率类mfc都生成对应频率类别,并与其它的组成相加,并且所对应的预设振动频率组成都储存为对应的标记。
进一步地,所述随机噪声rn随机取样于以零为均值的高斯分布且该分布的标准差不断变化,该分布的概率分布如下:
其中,rn为随机噪声的强度,σ为该分布的标准差。
进一步地,在多目标训练阶段,将数据集生成算法生成的模拟信号输入到长短期记忆循环神经网络,共有n个预测振动频率组成从长短期记忆循环神经网络输出;随后在长短期记忆循环神经网络所预测的n个振动频率组成与输入信号所对应的标记频率组成之间计算负对数似然损失,多目标学习损失定义为:
其中,li和pi分别是n中第i个标记值和预测的振动频率组成,n是网络输出的目标振动频率组成数量,对数操作中的项
相较于现有技术,本发明具有以下有益效果:提供了一种基于多目标长短期记忆循环神经网络的非接触振动频率组成测量方法,该方法结合长短期记忆循环神经网络和多目标学习方法来实现基于图像的非接触多振动频率组成预测,克服了现有非接触振动频率测量方法只能输出主频率而不能输出多个频率组成的问题,具有很强的实用性和广阔的应用前景。
附图说明
图1是本发明的方法实现流程图。
图2是本发明实施例中多目标长短期记忆循环神经网络结构示意图。
图3是本发明实施例中长短期记忆单元示意图。
图4是本发明实施例中多目标训练示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细说明。
本发明提供了一种基于多目标长短期记忆循环神经网络的非接触振动频率组成测量方法,如图1所示,包括以下步骤:
1)获取被测物的图像序列,在此基础上,选取被测物的待测区域,然后提取待测区域的图像序列。
2)将待测区域内的所有像素沿时程方向读出亮度信号后,分别储存为独立的亮度变化值;设待测区域宽度为w,高度为h,则得到w×h个亮度变化信号,且该些亮度变化信号的长度为图像序列的总帧数。
3)获取到该些亮度变化信号之后,将得到的该些亮度变化信号输入训练好的多目标长短期记忆循环神经网络,得到总数量为n×w×h的振动频率预测结果,同时将该些振动频率预测结果重建成n个振动频率预测结果图。
该重建过程是将每个像素级的振动预测结果重排至他们原先在待测区域的空间位置。从图1可以看到,左下角被高亮的像素位置,该像素位置上的亮度值先是沿着时间方向读出,输入所述多目标长短期记忆循环神经网络后得到n个振动频率预测结果,进而重建回原先所在待测区域中的空间位置。
4)在得到n个像素级振动频率预测结果图之后,为了能够得到一个待测区域中的全局振动频率预测结果,将振动频率预测结果分布绘制成统计直方图,取预测计数最大的振动频率为整个待测区域的振动频率预测值。
图2所示为所述多目标长短期记忆循环神经网络结构,包括s(stacked)层,即长短期记忆隐藏层,循环连接t次,所述t与图像序列以秒为单位的长度相同,且每层的隐藏尺寸为l,所述l与信号输入长度相同;将尺寸为l的一维矩阵输入所述多目标长短期记忆循环神经网络,然后将输入的一维张量变维为尺寸为t×i的二维矩阵,此处l为输入的亮度变化信号长度且等于t×i,t为输入图像序列长度,i为输入图像序列采样率;对于每个长短期记忆单元,它的输入尺寸为i,输入的二维矩阵将以t个时间步输入所述多目标长短期记忆循环神经网络;采用f个全连接层来全连接最后一次长短期记忆单元的输出,将所有的输出全连接至可预测的振动频率预测种类值mfc(measuredfrequencyclasses),其中mfc为测量量程与测量精度倒数的积,然后采用柔性最大方程作为激活函数,利用全连接层的输出最终产生每个振动频率预测类的概率分布。本发明方法中的长短期记忆循环神经网络中的长短期记忆单元的如图3;为了得到被测物的n个振动频率组成,将变维后的二维张量重复输入到所述多目标长短期记忆循环神经网络n次,如图2所示;隐藏状态(hiddenstate)和单元状态(cellstate)在一轮二维张量输入时均置为零,在之后的n-1轮输出中,都将隐藏状态和单元状态设为前一轮的隐藏状态和单元状态输出,通过隐藏状态和单元状态传递,所述多目标长短期记忆循环神经网络将被认为有能力记忆前一轮的振动频率预测以及前一轮所对应的特征,将该流程重复n次,最终得到n个振动频率概率分布,标有最高概率的输出即为所对应的振动频率组成。
为了能够通过训练让本发明所述多目标长短期记忆循环神经网络实现多个振动频率组成的测量,本发明对应所述多目标长短期记忆循环神经网络设计了一个数据集生成算法。通过数据集生成算法生成的模拟信号对所述多目标长短期记忆循环神经网络进行训练,以实现多个振动频率组成的测量。所述数据集生成算法的基本思想是通过模拟带有噪声的多频率组成的信号,并获得已知频率组成的标记;与此同时,让这些模拟的带噪信号尽可能地随机,从而使得最终训练完成的模型有尽可能强的泛化能力。多频率振动组成的振动信号的模拟方法为:首先模拟生成一个由n个振动信号成分组成的多频率振动信号s:
其中,n是想要获得的目标振动频率组成数量,si是第i个信号组成成分,用预设频率为fi的标准正弦波与随机噪声rn叠加来构造si,即:
si=sin(2πfi×t) rn
其中,fi为所模拟的振动信号频率,t为从零以步长为采样间隔(采样频率的倒数)递增至信号持续时间的离散数值;
对于每一个si,即所有可能的预测振动频率类mfc都生成对应频率类别,并与其它的组成相加,并且所对应的预设振动频率组成都储存为对应的标记。同样的步骤对每一组振动频率组合重复r次,以使得该数据集能够让所训练的模型获得更好的泛化能力。
所述随机噪声rn随机取样于以零为均值的高斯分布且该分布的标准差不断变化,该分布的概率分布如下:
其中,rn为随机噪声的强度,σ为该分布的标准差。
为了更好地说明数据集生成算法,举例如下。例如计划制备一个能够训练预测两个振动频率组成的多目标长短期记忆循环神经网络,同时测量范围mr=50,测量精度mp=0.1hz,每个频率组成重复次数r=100,其所对应的mfc将为
进行多目标训练是为了让长短期记忆循环神经网络能够获得多目标预测的能力,此处的多目标即为多个振动频率组成。通常预测多个目标是使用不同的神经网络,这将不可避免地增加模型的参数数量。本发明方法仅使用一个长短期记忆循环神经网络实现多目标的预测,这样大大减少冗余的参数数量,同时可增强本发明所提出的长短期记忆循环神经网络的泛化能力。更重要的是,这样的设计可以更加充分地利用长短期记忆循环神经网络提取输入信号在时域上远处和近处特征的能力。
如图4所示,在多目标训练阶段,将数据集生成算法生成的模拟信号输入到长短期记忆循环神经网络,共有n个预测振动频率组成从长短期记忆循环神经网络输出。随后在长短期记忆循环神经网络所预测的n个振动频率组成与输入信号所对应的标记频率组成之间计算负对数似然损失,多目标学习损失定义为:
其中,li和pi分别是n中第i个标记值和预测的振动频率组成,n是网络输出的目标振动频率组成数量,对数操作中的项
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
1.一种非接触振动频率组成测量方法,其特征在于,包括以下步骤:
1)获取被测物的图像序列,在此基础上,选取被测物的待测区域,然后提取待测区域的图像序列;
2)将待测区域内的所有像素沿时程方向读出亮度信号后,分别储存为独立的亮度变化值;设待测区域宽度为w,高度为h,则得到w×h个亮度变化信号,且该些亮度变化信号的长度为图像序列的总帧数;
3)将得到的该些亮度变化信号输入训练好的多目标长短期记忆循环神经网络,得到总数量为n×w×h的振动频率预测结果,同时将该些振动频率预测结果重建成n个振动频率预测结果图;
4)将振动频率预测结果分布绘制成统计直方图,取预测计数最大的振动频率为整个待测区域的振动频率预测值。
2.根据权利要求1所述的一种非接触振动频率组成测量方法,其特征在于,所述多目标长短期记忆循环神经网络包括长短期记忆隐藏层,循环连接t次,所述t与图像序列以秒为单位的长度相同,且每层的隐藏尺寸为l,所述l与信号输入长度相同;将尺寸为l的一维矩阵输入所述多目标长短期记忆循环神经网络,然后将输入的一维张量变维为尺寸为t×i的二维矩阵,此处l为输入的亮度变化信号长度且等于t×i,t为输入图像序列长度,i为输入图像序列采样率;对于每个长短期记忆单元,它的输入尺寸为i,输入的二维矩阵将以t个时间步输入所述多目标长短期记忆循环神经网络;采用f个全连接层来全连接最后一次长短期记忆单元的输出,将所有的输出全连接至可预测的振动频率预测种类值mfc,然后采用柔性最大方程作为激活函数,利用全连接层的输出最终产生每个振动频率预测类的概率分布;将变维后的二维张量重复输入到所述多目标长短期记忆循环神经网络n次,隐藏状态和单元状态在一轮二维张量输入时均置为零,在之后的n-1轮输出中,都将隐藏状态和单元状态设为前一轮的隐藏状态和单元状态输出,将该流程重复n次,最终得到n个振动频率概率分布,标有最高概率的输出即为所对应的振动频率组成。
3.根据权利要求1所述的一种非接触振动频率组成测量方法,其特征在于,采用数据集生成算法生成的模拟信号对所述多目标长短期记忆循环神经网络进行训练,以实现多个振动频率组成的测量;多频率振动组成的振动信号的模拟方法为:首先模拟生成一个由n个振动信号成分组成的多频率振动信号s:
其中,n是想要获得的目标振动频率组成数量,si是第i个信号组成成分,用预设频率为fi的标准正弦波与随机噪声rn叠加来构造si,即:
si=sin(2πfi×t) rn
其中,fi为所模拟的振动信号频率,t为从零以步长为采样间隔递增至信号持续时间的离散数值;
对于每一个si,即所有可能的预测振动频率类mfc都生成对应频率类别,并与其它的组成相加,并且所对应的预设振动频率组成都储存为对应的标记。
4.根据权利要求3所述的一种非接触振动频率组成测量方法,其特征在于,所述随机噪声rn随机取样于以零为均值的高斯分布且该分布的标准差不断变化,该分布的概率分布如下:
其中,rn为随机噪声的强度,σ为该分布的标准差。
5.根据权利要求4所述的一种非接触振动频率组成测量方法,其特征在于,在多目标训练阶段,将数据集生成算法生成的模拟信号输入到长短期记忆循环神经网络,共有n个预测振动频率组成从长短期记忆循环神经网络输出;随后在长短期记忆循环神经网络所预测的n个振动频率组成与输入信号所对应的标记频率组成之间计算负对数似然损失,多目标学习损失定义为:
其中,li和pi分别是n中第i个标记值和预测的振动频率组成,n是网络输出的目标振动频率组成数量,对数操作中的项