本发明涉及计算机视觉技术领域,尤其涉及一种真实场景下基于多通带滤波器的多目标微小振动视频放大方法。
背景技术:
自然界中存在众多人眼无法感知的微小振动,这些微小振动往往蕴含着反映物体振动特性或本质属性的重要信息。
视频放大方法主要用于将人眼不可感知的微小振动进行可视化显示,使人眼能够直接观察微小振动现象。按照流体力学中描述流体运动的两种视角,现有的视频放大方法主要分为两类,即拉格朗日视角视频放大方法和欧拉视角视频放大方法。拉格朗日视频放大方法首先选取特征点用于运动追踪,然后记录运动过程中物体的坐标位置、得到运动向量,最后通过放大运动向量实现微小振动可视化。这种方法虽然能够产生良好的视频放大效果,但是计算量大;另外输出视频的清晰度受运动追踪算法精度影响严重,即算法的误差在放大之后将产生运动伪影,影响视频放大结果。欧拉视频放大方法提取固定像素位置处的图像信息(亮度或相位),建立图像亮度或相位变化量与运动信号之间的数学关系,从而提取微小振动信号;然后利用带通滤波器筛选出目标通频带内的微小振动,并进行放大。与拉格朗日视频放大相比,这种方法不需要标记特征点,也不需要运动追踪。
欧拉放大方法包括基于亮度信息的线性视频放大方法evm和基于相位信息的视频放大方法pvm。evm根据“光流一致性假设”和“一阶泰勒级数展开”,建立了图像亮度变化量与运动信号之间的数学关系。该方法避免了拉格朗日方法中的运动追踪,具有良好的放大效果。但是,evm在放大亮度变化量的同时,不可避免地放大了噪声,导致输出视频受噪声影响严重。pvm根据“傅里叶变换的移位性质”,建立了图像相位变化量与运动信号之间的数学关系;与evm方法相比,pvm并未放大噪声信号的幅值,具有更清晰的放大结果。
欧拉视角中的pvm视频放大方法虽然能够清晰地放大人眼不能感知的微小振动,但是该算法只能放大视频中的一种微小振动,这是因为算法使用的带通滤波器只有一个通频带,它只能筛选出通频带内的信号,不能同时筛选出多个通频带内的微小振动,因此pvm方法不能同时放大多种微小振动。在实际场景中,设备运转使得多个机械部件同时振动,为了展示各个部件的振动现象以便于工人观察、分析机械运转状态,提出了一种基于多通带滤波器的多目标微小振动视频放大方法。
本方法根据视频中多个目标的振动频率设计出一种多通带滤波器,用于同时筛选出视频中的多个通频带内的微小振动信号;然后,替换pvm视频放大框架中的单通带带通滤波器,从而提取相应的微小振动信号、实现多目标微小振动视频放大。该方法既可用于同时展示多个目标的微小振动现象,也可用于同时展示物体的多种模态振型。
技术实现要素:
本发明针对现有技术中存在的问题,提出了一种基于多通带滤波器的多目标微小振动视频放大方法,该方法旨在对实际场景中多个目标的微小振动进行可视化显示。该方法主要包括多目标微小振动信号提取、频率检测、多通带滤波器设计、视频放大等。
为实现上述目的,本发明提供的技术方案如下:
提供一种基于多通带滤波器的多目标微小振动视频放大方法,该方法包括以下步骤:
步骤s1,视频采集,获得亮度视频序列。用相机拍摄多目标振动视频,将视频进行颜色空间转换,由rgb空间转换到yiq空间,提取y通道的视频数据,用于提取微小振动信号;
步骤s2,分别提取多个目标的微小振动信号,并检测每个目标的振动频率。在y视频中,人工框选包含第1个振动目标边缘的roi(regionofinterest)区域,提取该区域中n个像素位置上的亮度信号,记为in(t)=[in(1),in(2),…,in(t)],n=1,2,3…n,t=1,2,…,t。t表示y视频的总帧数。利用傅里叶变换,获得每个亮度信号的频谱pn(fq)=[pn(f1),pn(f2),…,pn(fq)],其中pn(fq)表示频点fq的幅度;q表示频谱的点数。计算该roi区域内所有像素点上亮度信号的平均频谱
步骤s3,根据检测到的m个振动频率,分别设计出m个长度为q、具有高斯包络的一维向量filterm,1≤m≤m。每个高斯包络的中心为fm,高斯包络的方差为σ2(可人工调整,默认值为1)。高斯包络的窗口宽度为
步骤s4,用设计的频域多通带滤波器filter替换pvm视频放大框架中的时域带通滤波器,用于同时筛选出期望放大的多个目标的微小振动,进而实现视频放大。
进一步地,所述步骤s4具体包括以下步骤:
s41,输入原始视频,利用复数可控金字塔对原始视频的y视频进行多尺度、多方向分解,得到不同空间频带对应的空间相位视频。以相位视频第一帧为参考帧,计算后续各帧与第一帧的相位差值图像,形成相位差视频;
s42,利用设计的频域多通带滤波器filter对相位差视频中各像素位置处的时间维信号进行频域滤波,筛选出期望放大的多目标微小振动信号;
s43,将筛选出的多目标微小振动信号乘以放大倍数,进行放大;
s44,将放大后的信号进行复数可控金字塔重构,得到放大后的视频。
进一步地,所述视频数据包括avi、mov、mp4等常用视频格式。
本发明提供了一种基于多通带滤波器的多目标微小振动视频放大方法,该方法与已有的公知技术相比,具有如下优点:
(1)它设计了一种频域多通带滤波器,可用于同时筛选多个不同频率的振动信号;该滤波器可用于替换传统视频放大方法(pvm)中的单通道时域滤波器,实现多目标视频放大;
(2)它可同时展示机械运转过程中各个部件的振动现象,以便于观察、分析机械运转状态;
(3)它可用于同时展示机械结构的多种模态振型,以便于分析结构属性、检查结构健康状况。
附图说明
图1为本发明基于多通带滤波器的多目标微小振动视频放大方法的流程图;
图2为本发明人工框选振动目标roi区域的示意图;
图3为本发明设计的频域多通带滤波器模型;
图4为本发明以吉他视频为测试对象的视频放大结果。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施适用于说明本发明,但不用来限制本发明的范围。
结合图1,本发明一种基于多通带滤波器的多目标微小振动视频放大方法,包括如下步骤:
步骤s1:采集自然界中多个振动目标的视频数据,提取微小振动信号,检测多目标微小振动信号的频率。
在本步骤中,根据本发明的实施例,具体为:
1a)利用佳能相机在实际场景中拍摄多个振动目标的视频。相机帧率根据实际情况进行调整,为了满足奈奎斯特采样定理,相机帧率应大于最大振动频率的2倍。视频帧数在300到400帧之间即可,将其保存为avi视频格式。
1b)利用颜色空间转换,将原始频频从rgb空间转化为yiq空间,并提取y通道(亮度通道)的视频数据(简称“y视频”),用于提取微小振动信号。
1c)结合图2,在y视频中,人工框选包含第1个振动目标边缘的roi(regionofinterest)区域,提取该区域中n个像素位置上的亮度信号,记为in(t)=[in(1),in(2),…,in(t)],n=1,2,3…n,t=1,2,…,t。t表示y视频的总帧数。利用傅里叶变换,获得每个亮度信号的频谱pn(fq)=[pn(f1),pn(f2),…,pn(fq)],其中pn(fq)表示频点fq的频谱能量;q表示频谱的点数。计算该roi区域内所有像素点上亮度信号的平均频谱
1d)根据m个振动目标的频谱,人工检测并记录每个振动目标的振动频率和频率峰值,分别记为频率向量fvector=[f1,f2,…,fm]和频率峰值向量evector=[e1,e2,…,em]。对频率峰值向量除以最大频率峰值进行“最大值归一化”,即
步骤s2,根据检测得到的频率向量fvector和频率峰值向量
首先,根据检测到的频率向量fvector(包含m个振动频率),分别设计出m个长度为q、具有高斯包络的一维向量filterm,1≤m≤m。每个高斯包络的中心为fm,高斯包络的方差为σ2(默认值为1)。高斯包络的窗口宽度为
步骤s3:结合图1,将设计得到的频域多通带滤波器代入到欧拉视角pvm方法框架中,替换原有的时域带通滤波器,从而实现多目标微小振动视频放大。
在本步骤中,根据本发明的实施例,具体为:
3a)输入原始视频,利用复数可控金字塔对原始视频的y视频进行多尺度、多方向分解,得到不同空间频带对应的空间相位视频。以相位视频第一帧为参考帧,计算后续各帧与第一帧的相位差值图像,形成相位差视频。
3b)利用设计的频域多通带滤波器filter对相位差视频中各像素位置处的时间维信号进行频域滤波,筛选出期望放大的多目标微小振动信号。
3c)将筛选出的多目标微小振动信号乘以放大倍数,进行放大。
3d)将放大后的振动信号进行复数可控金字塔重构,得到放大后的视频。以吉他视频为例(吉他视频中上方三根琴弦同时振动)进行测试,结合图4,可以看出该方法能够实现3个振动目标同时放大。
一般而言,采集的视频数据可为avi、mov、mp4等常用视频格式。
以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发明的精神和原则内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。