一种基于舰载设备的电子稳像方法
技术领域
本发明涉及数字图像处理技术领域,具体涉及一种基于舰载设备的电子稳像方法。
背景技术
电子稳像技术的研究始于20世纪80年代中期。电子稳像是集电子学、计算机、图像识别等技术于一体、直接确定图像序列帧间映射关系并进行补偿的新一代图像稳定技术,旨在消除视频图像序列中的随机运动。与传统的机械稳像和光学稳像相比,电子稳像具有易于操作、稳像精度高、灵活性强、体积小、重量轻、能耗低以及高智能化实时处理等优点。利用电子稳像技术实现视频图像序列稳定是现代稳像技术的发展方向之一。此外,随着计算机技术和大规模集成电路技术的迅猛发展,图像处理设备的价格持续下降,商用摄像机、监视器的嵌入式电子稳像系统也成为目前电子稳像技术的研究热点之一,并伴随着巨大的市场需求。
现有的电子稳像方法大致可分为以下几类:基于图像块匹配的方法、灰度投影映射方法、基于图像二值位平面信息的方法、相位相关方法、基于图像特征的方法以及基于变换域的方法等。对这些算法的研究和实践过程中发现:基于图像块匹配的方法适用于信息丰富的图像,且计算量大、效率低;灰度投影映射方法算法简单,易于实现,但对灰度信息较单一的场景处理效果较差;基于图像二值位平面信息的方法适用于位平面信息明显如建筑、室内等场景,且误匹配概率较高,抗噪声能力差;相位相关方法对场景光照变化不敏感,对噪声、遮挡等干扰有明显抑制作用,且匹配精度高,可达到亚像素级,但算法计算量较大,若场景中存在多运动目标时影响检测效果;基于图像特征的方法适用于特征明显的场景,当特征不明显或过于集中于局部区域时,误匹配概率高;基于变换域的方法复杂度较高,且精度也不高。
发明内容
为了解决现有电子稳像方法均不适用与舰载设备的问题,本发明提供一种基于舰载设备的电子稳像方法。
本发明为解决技术问题所采用的技术方案如下:
本发明的一种基于舰载设备的电子稳像方法,包括以下步骤:
(101)原始视频图像采集;
(102)选取参考帧图像;
(103)读取当前帧图像;
(104)采用基于物天曲线的运动估计方法计算运动矢量:水平偏移量、垂直偏移量和旋转角度;
(105)对运动矢量进行滤波;
(106)对运动矢量进行补偿;
(107)输出稳定图像。
进一步的,步骤(102)选取参考帧图像的具体过程如下:
当当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy)小于给定阈值时,则将参考帧图像更新为当前帧图像。
进一步的,步骤(104)采用基于物天曲线的运动估计方法计算运动矢量的具体过程如下:
分别提取参考帧图像和当前帧图像的特征点,然后分别判断参考帧图像和当前帧图像的特征点个数,若两幅图像的特征点个数都小于2,则对两幅图像分别进行最小二乘拟合计算得到对应的直线方程,利用这两个直线方程计算两条曲线的平移量和旋转角;若两幅图像中有一幅图像的特征点个数大于等于2或者两幅图像的特征点个数都大于等于2,则将这两幅图像的特征点进行匹配,计算两条曲线的平移量和旋转角。
进一步的,分别提取参考帧图像和当前帧图像的特征点的具体过程如下:
(201)图像滤波
采用中值滤波算法分别对参考帧图像和当前帧图像进行中值滤波处理;
(202)分块灰度映射
将经过滤波处理的图像在水平方向上分别进行分块处理,总共分成k块,对第l块图像进行垂直方向平均灰度映射为其中i、j表示图像的第i行第j列,f(i,j)表示图像第i行第j列的灰度值,s[l]表示第l块的起始列,e[l]表示第l块的终止列,0≤l<k;
(203)阈值分割
对平均灰度映射函数map[l][i]中的i从hei到1遍历,hei为图像高度,找到第一个波谷gl,定义开始下降到第一个波谷的点为gh,取g[l]=(gl+gh)/2为第l块的阈值,将图像进行阈值分割,获得二值图像;
(204)边缘提取
将二值图像进行形态学边缘提取,即将二值图像进行膨胀得到图像d,将二值图像进行腐蚀得到图像e,则边缘图像edge(i,j)=e(i,j)-d(i,j);
(205)提取物天曲线
将边缘图像上端且连续像素个数大于m的边缘线保留,作为物天曲线,其余边缘去除,m取大于1的整数;
(206)提取特征点
利用物天曲线的曲率计算公式,提取物天曲线上的曲率极大值点作为特征点,物天曲线的曲率计算公式如下所示:
其中:k(t)为物天曲线上第t个点的曲率,it为第t个点的横坐标,it+1为第t+1个点的横坐标,it+2为第t+2个点的横坐标,jt为第t个点的纵坐标,jt+1为第t+1个点的纵坐标,ht为第t个点与第t+1个点的纵坐标之差,mt为第t个点与第t+1个点的横坐标之差,mt+1为第t+1个点与第t+2个点的横坐标之差,并且ht=jt+1-jt,mt=it+1-it,mt+1=it+2-it+1。
进一步的,当参考帧图像和当前帧图像的特征点个数都小于2时,计算两条曲线的平移量和旋转角的具体过程如下:
(208)最小二乘拟合
在曲率一致的物天曲线上均匀的选取3个点,采用最小二乘拟合方法拟合出参考帧图像的直线方程amj+bmi+cm=0以及当前帧图像的直线方程anj+bni+cn=0,其中am、bm、cm是参考帧图像的直线方程参数,an、bn、cn是当前帧图像的直线方程参数,j为图像像素的列坐标,i为图像像素的行坐标;
(2101)通过参考帧图像和当前帧图像的两条直线方程计算当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy):
当前帧图像相对于参考帧图像的旋转角
将旋转之后的当前帧图像的直线方程垂直投影,计算平均坐标其中yi为当前帧图像的直线方程的纵坐标,in为当前帧图像的直线方程取点个数;将参考帧图像的直线方程垂直投影,计算平均坐标其中yi为当前帧图像的直线方程的纵坐标,im为参考帧图像的直线方程取点个数,则当前帧图像的垂直平移量
将旋转且垂直平移之后的当前帧图像的直线方程水平投影,计算平均坐标其中xnj是当前帧图像的直线方程的横坐标,jn为当前帧图像的直线方程取点个数;将参考帧图像的直线方程水平投影,计算平均坐标其中xmj是参考帧图像的直线方程的横坐标,jm为参考帧图像的直线方程取点个数,则当前帧图像的水平平移量
进一步的,当参考帧图像和当前帧图像中有一幅图像的特征点个数大于等于2或者两幅图像的特征点个数都大于等于2时,计算两条曲线的平移量和旋转角视的具体过程如下:
(209)特征点匹配
采用Hausdorff距离法进行特征点匹配,将参考帧图像和当前帧图像中匹配成功的特征点分别存放在点集P和点集Q内;
(2102)将点集P和点集Q中的特征点分别代入到以下变换矩阵中其中(xm,ym)为参考帧图像点集P中特征点的坐标参数,(xn,yn)为当前帧图像点集Q中特征点的坐标参数,从而计算出当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy)。
进一步的,步骤(105)中,采用低通滤波的方法对运动矢量进行滤波处理。
进一步的,步骤(106)对运动矢量进行补偿的具体过程如下:
平移量补偿公式:旋转角补偿公式:其中(xn,yn)为运动补偿前的当前帧图像点集Q中特征点的坐标参数,(x0,y0)为运动补偿后的当前帧图像点集Q中特征点的坐标参数,θ为顺时针旋转角度,(x,y)为运动补偿后的旋转角坐标;
采用双线性插值方法计算旋转之后的图像:对于运动补偿后的旋转角坐标写成浮点坐标形式:其中α、β均为[0,1)区间的浮点数,则像素值f(i+α,j+β)由原始图像中坐标为(i,j)、(i+1,j)、(i,j+1)、(i+1,j+1)所对应的四个像素的值决定,即
f(i+α,j+β)=(1-α)(1-β)f(i,j)+(1-α)βf(i+1,j)+α(1-β)f(i,j+1)+αβf(i+1,j+1),其中f(i+1,j+1)表示原始图像在(i+1,j+1)处的像素值,以此类推,则f(i+1,j)表示原始图像在(i+1,j)处的像素值,f(i,j+1)表示原始图像在(i,j+1)处的像素值,f(i+1,j+1)表示原始图像在(i+1,j+1)处的像素值。
本发明的有益效果是:
舰载设备采集的图像中一般包括海、天、山、船等信息,所采集的图像的特点是信息量不够丰富。天空灰度均匀,细节较少;海水有波动,对图像块匹配产生干扰;但是天空、大海、山脉、舰船之间总有一条较为明显的物天曲线。本发明根据对现有各种电子稳像方法的分析以及舰载设备采集图像的特点,在运动矢量估计时,克服现有方法的不足,提出一种新的基于物天曲线的运动估计方法,实现舰载设备的稳像功能。本发明可以快速、准确的计算出当前帧图像相对于参考帧图像的平移量和旋转角,运算量小、精度高,既能提高算法的实时性,又能提高算法的准确率,具有很好的鲁棒性。
附图说明
图1为本发明的一种基于舰载设备的电子稳像方法的流程图。
图2为本发明中采用基于物天曲线的运动估计方法计算运动矢量的流程图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
本发明的一种基于舰载设备的电子稳像方法,其流程如图1所示。该方法的具体步骤如下:
(101)原始视频图像采集
采集舰载设备中摄像机所采集的视频图像并将其传输到计算机中进行后期处理。
(102)选取参考帧图像
第一次选取的参考帧图像一般为舰载设备稳定之后摄像机采集的第一帧图像,之后为了消除累计误差,需要对第一次选取的参考帧图像进行更新。具体的是:当当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy)小于给定阈值(阈值可根据场景由用户设定或给定)时,则将参考帧图像更新为当前帧图像。
(103)读取当前帧图像
计算完上一帧图像后读取当前帧图像进行下一步计算,当计算完当前帧图像后再读取下一帧图像进行下一步计算,保证算法的实时性。
(104)采用基于物天曲线的运动估计方法计算运动矢量:水平偏移量、垂直偏移量和旋转角度。具体的是分别针对参考帧图像和当前帧图像进行计算,也就是分别执行步骤(201)~(207)。如果两幅图像的特征点个数都小于2,则对两幅图像分别进行最小二乘拟合,拟合之后分别得到一个直线方程,通过这两个直线方程就可以计算两条曲线的平移量和旋转角,即执行步骤(210);如果两幅图像中有一幅图像的特征点个数大于等于2或者两幅图像的特征点个数都大于等于2,则将这两幅图像的特征点进行特征点匹配,计算两条曲线的平移量和旋转角,即执行步骤(210)。
该步骤(104)是整个电子稳像方法的核心,其具体操作过程如下:
(201)图像滤波
图像(参考帧图像和当前帧图像)在采集和传输的过程中,往往会掺杂各种噪声,造成图像的质量下降,影响后期算法的准确率,所以,首先需要对图像进行滤波。本发明中采用中值滤波算法分别对参考帧图像和当前帧图像进行中值滤波处理。所采用的中值滤波算法计算过程简单,对消除椒盐噪声尤为有效。
(202)分块灰度映射
将步骤(201)中经过滤波处理的图像(参考帧图像和当前帧图像)在水平方向上分别进行分块处理,总共分成k块图像,对第l(0≤l<k)块图像进行垂直方向平均灰度映射为其中i、j表示图像的第i行第j列,f(i,j)表示图像第i行第j列的灰度值,s[l]表示第l块的起始列,e[l]表示第l块的终止列。
(203)阈值分割
对平均灰度映射函数map[l][i]中的i从hei到1遍历,hei为图像高度,找到第一个波谷gl,定义开始下降到第一个波谷的点为gh,取g[l]=(gl+gh)/2为第l块的阈值,将图像(参考帧图像和当前帧图像)进行阈值分割,获得二值图像。
(204)边缘提取
将上述获得的二值图像进行形态学边缘提取,即将二值图像进行膨胀得到图像d,将二值图像进行腐蚀得到图像e,则边缘图像edge(i,j)=e(i,j)-d(i,j),其中i、j表示图像的第i行第j列。
(205)提取物天曲线
将边缘图像中最靠近图像上端的且连续像素的个数大于m(m取大于1的整数)的边缘线保留,作为物天曲线,其余边缘去除。
(206)提取特征点
利用物天曲线的曲率计算公式,提取物天曲线上的曲率极大值点作为特征点。物天曲线的曲率计算公式如下所示:
其中:k(t)为物天曲线上第t个点的曲率,it为第t个点的横坐标,it+1为第t+1个点的横坐标,it+2为第t+2个点的横坐标,jt为第t个点的纵坐标,jt+1为第t+1个点的纵坐标,ht为第t个点与第t+1个点的纵坐标之差,mt为第t个点与第t+1个点的横坐标之差,mt+1为第t+1个点与第t+2个点的横坐标之差,并且ht=jt+1-jt,mt=it+1-it,mt+1=it+2-it+1。
(207)判断特征点个数,若特征点个数≥2,则执行步骤(209),若特征点个数<2,则执行步骤(208)。
(208)最小二乘拟合
若特征点个数小于2,则认为物天曲线能够拟合成直线或者分段直线:在曲率一致的物天曲线上均匀的选取3个点,采用最小二乘拟合方法拟合出参考帧图像的直线方程amj+bmi+cm=0以及当前帧图像的直线方程anj+bni+cn=0,其中am、bm、cm是参考帧图像的直线方程参数,an、bn、cn是当前帧图像的直线方程参数,j为图像像素的列坐标,i为图像像素的行坐标。
(209)特征点匹配
若特征点个数大于等于2,则认为物天曲线不能够用简单的直线方程表示,因此,需要采用Hausdorff距离法进行特征点匹配,将参考帧图像和当前帧图像中匹配成功的特征点分别存放在点集P和点集Q内。
Hausdorff距离是一种定义于两个点集上的最大最小(max-min)距离。Hausdorff距离定义为:H(M,N)=max(h(M,N),h(N,M)),其中 || ||为定义在点集M、N上的某种距离范数,在本实施例中采用欧几里德范数。基于Hausdorff距离的特征点匹配方法计算简单,且抗干扰能力强。
(210)分两种情况计算当前帧图像相对于参考帧图像的旋转角和平移量,两种情况分别的具体操作过程分别为步骤(2101)和步骤(2102):
(2101)当特征点个数小于2时,通过参考帧图像和当前帧图像的两条直线方程(amj+bmi+cm=0和anj+bni+cn=0)计算当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy),具体的计算过程如下:
计算旋转角:当前帧图像相对于参考帧图像的旋转角其中am、bm、cm是参考帧图像的直线方程参数,an、bn、cn是当前帧图像的直线方程参数。
计算垂直平移量:将旋转之后的当前帧图像的直线方程垂直投影,计算平均坐标其中yi为当前帧图像的直线方程的纵坐标,in为当前帧图像的直线方程取点个数。
将参考帧图像的直线方程垂直投影,计算平均坐标其中yi为当前帧图像的直线方程的纵坐标,im为参考帧图像的直线方程取点个数,则当前帧图像的垂直平移量
计算水平平移量:将旋转且垂直平移之后的当前帧图像的直线方程水平投影,计算平均坐标其中xnj是当前帧图像的直线方程的横坐标,jn为当前帧图像的直线方程取点个数。
将参考帧图像的直线方程水平投影,计算平均坐标其中xmj是参考帧图像的直线方程的横坐标,jm为参考帧图像的直线方程取点个数,则当前帧图像的水平平移量
(2102)当特征点个数大于等于2时,将步骤(209)中匹配成功的点集P和点集Q中的特征点分别代入到以下变换矩阵中,其中(xm,ym)为参考帧图像点集P中特征点的坐标参数,(xn,yn)为当前帧图像点集Q中特征点的坐标参数,从而计算出当前帧图像相对于参考帧图像的旋转角θ和平移量(Δx,Δy)。
(105)对运动矢量进行滤波
实际工程中往往会存在舰载设备中摄像机的抖动引起的视频序列随机运动,或者运动估计时出现误匹配的现象,为了使视频稳像效果更好,需要对运动矢量(水平偏移量、垂直偏移量和旋转角度)进行滤波。
目前用于电子稳像的运动滤波算法主要有:基于低通滤波的方法、基于B样条的运动滤波方法、基于Kalman滤波的方法以及基于多轨迹映射的运动滤波方法等。
本发明采用的方法是基于低通滤波的方法。将视频图像序列的运动轨迹用信号来描述,将随机运动看作是信号的高频噪声,利用中值滤波算法进行去噪,从而达到视频图像序列的运动轨迹平滑的目的。基于低通滤波的方法简单有效,可以快速滤除高频噪声。
(106)对运动矢量进行补偿
根据计算的运动矢量,对当前帧图像进行补偿从而显示出稳定、清晰的图像序列。运动矢量的补偿包括平移量(Δx,Δy)的补偿和旋转角θ的补偿。平移量补偿公式:旋转角补偿公式:其中(xn,yn)为运动补偿前的当前帧图像点集Q中特征点的坐标参数,(x0,y0)为运动补偿后的当前帧图像点集Q中特征点的坐标参数,θ为顺时针旋转角度,(x,y)为运动补偿后的旋转角坐标。
由于图像的离散特性,图像旋转之后会出现“空洞”点和马赛克现象,为了消除这种现象,本发明采用双线性插值方法计算旋转之后的图像。对于运动补偿后的旋转角坐标写成浮点坐标形式:其中α、β均为[0,1)区间的浮点数,则像素值f(i+α,j+β)可由原始图像中坐标为(i,j)、(i+1,j)、(i,j+1)、(i+1,j+1)所对应的四个像素的值决定,即
f(i+α,j+β)=(1-α)(1-β)f(i,j)+(1-α)βf(i+1,j)+α(1-β)f(i,j+1)+αβf(i+1,j+1),其中f(i+1,j+1)表示原始图像在(i+1,j+1)处的像素值,以此类推,则f(i+1,j)表示原始图像在(i+1,j)处的像素值,f(i,j+1)表示原始图像在(i,j+1)处的像素值,f(i+1,j+1)表示原始图像在(i+1,j+1)处的像素值。双线性插值之后的图像更加平滑、清晰、完整。
(107)输出稳定图像
运动补偿后输出视频序列图像,达到连续、稳定的视觉效果。补偿后的图像的边缘会出现空白区域,若想得到全帧视频图像,需对空白区域进行填充。由于舰载设备图像的边缘空白区域一般信息量较少,本发明采用改进的图像拼接方法进行填充,即基于相邻几帧图像准确对齐后图像内容的近似性,使用相邻几帧的像素值来填充空白区域。该方法简单,补偿效果较好,具有较好的视觉品质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。