首页> 中国专利> 一种基于ORB算子的无参考视频平滑度的评价方法

一种基于ORB算子的无参考视频平滑度的评价方法

摘要

本发明涉及一种基于ORB算子的无参考视频平滑度的评价方法,包括以下步骤:取视频连续n帧图像,提取n帧图像中的ORB特征点;对每相邻两帧图像中的ORB特征点进行匹配;对每相邻两帧图像误匹配的ORB特征点进行筛选并剔除;根据运动仿射变换模型生成相邻两帧图像间的仿射变换矩阵,即相邻两帧图像间的单应性矩阵,对单应性矩阵A进行逐步迭代求解;计算每相邻两帧图像间的运动参数,所述运动参数包括图像的平移及旋转角度;生成视频序列平移运动轨迹及旋转运动轨迹;利用高斯滤波器对平移运动轨迹及旋转运动轨迹进行滤波处理,得到滤波后的平移轨迹、旋转运动轨迹;计算平移抖动数及旋转抖动数,并计算水平平滑度值及旋转平滑度值并判断视频平滑度。

著录项

  • 公开/公告号CN103700069A

    专利类型发明专利

  • 公开/公告日2014-04-02

    原文格式PDF

  • 申请/专利权人 武汉工程大学;

    申请/专利号CN201310674448.7

  • 申请日2013-12-11

  • 分类号G06T5/00(20060101);

  • 代理机构42102 湖北武汉永嘉专利代理有限公司;

  • 代理人唐万荣

  • 地址 430074 湖北省武汉市洪山区雄楚大街693号

  • 入库时间 2024-02-19 22:53:23

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-11-30

    授权

    授权

  • 2014-04-30

    实质审查的生效 IPC(主分类):G06T5/00 申请日:20131211

    实质审查的生效

  • 2014-04-02

    公开

    公开

说明书

技术领域

本发明涉及图像处理领域,尤其涉及一种视频平滑度检测方法。

背景技术

现有的大部分视频质量评价方法都是在图片质量评价方法基础上发展而来的,一般先用图片质量评价方法得到每一帧视频的质量,然后按照某种标准对各帧视频进行加权,最后得到整个视频的质量,三类方法中都是针对如测量信号幅度、定时关系、信噪比等物理参数,以及通过各种算法来评价图像的模糊、噪声、块效应等现象来评价视频质量,但是都没有针对视频的抖动程度进行评估,视频的最终受体是人的眼睛,人眼观察是评价视频质量最精确的方法,视频的抖动,即视频的平滑度,是视频质量的另外一个重要指标,也是直接关系到人对视频的感受,因此本文提出了无参考视频平滑度的检测方法,可以通过对视频的平滑度检测评估来完善补充对视频质量的评价。

发明内容

本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种无参考视频平滑度检测方法。

本发明解决其技术问题所采用的技术方案是:

一种基于ORB算子的无参考视频平滑度的评价方法,包括以下步骤:

1)取视频连续n帧图像,提取n帧图像中的ORB特征点;

2)采用FLANN特征点匹配算法对每相邻两帧图像中的ORB特征点进行匹配;

3)对每相邻两帧图像误匹配的ORB特征点进行筛选并剔除;剔除方法为:求每相邻两帧图像中所有匹配特征点两两之间的距离,取得其距离的最小值记为min_dist,将特征点距离大于B*min_dist的特征点进行剔除,B取值范围为6~10;

4)生成两幅图像间的仿射变换矩阵,--单应性矩阵,利用RANSAC算法对

单应性矩阵A进行逐步迭代求解;利用RANSAC算法求解单应性矩阵A的步骤如下:

(a)从匹配的ORB特征点对中随机抽4个匹配的特征点对作为一个RANSAC样本。

(b)利用这4个匹配的ORB特征点对计算单应性矩阵A。

(c)利用ORB特征点对集、单应性矩阵A及误差度量函数计算满足当前单应性矩阵A的一致集consensus,并返回一致集中元素个数。

(d)如果当前一致集中元素个数大于某个阈值,则认为它是最优一致集,并利用此一致集对当前最优一致集进行更新。

(e)更新当前错误概率p,如果P大于设定的最小错误概率则重复(a)至(d)继续迭代,直到当前错误概率p小于最小错误概率。

5)根据单应性矩阵-计算每相邻两帧图像间的运动参数,平移及旋转角度;设前一帧图像为I,当前帧图像为J,则其运动参数可以通过下列公式求解:

>(X,Y)=(Height2,Width2)>

>Dx=(m11*X+m12*Y+m13)-XDY=(m21*X+m22*Y+m23)-Y>

>sinθ=m21-m12(m12*m12+m11*m11+m21*m21+m22*m22))/2cosθ=m11+m22(m12*m12+m11*m11+m21*m21+m22*m22))/2>

其中(X,Y)分别表示原始图像I的中心点,Height、Width分别表示图像的高、宽,Dx、Dy分别表示图像水平、垂直方向的位移,θ表示图像间的旋转角度变化。所述运动参数包括图像的平移、旋转和尺度变化;

6)生成视频序列平移运动轨迹DTajectory及旋转运动轨迹;将视频序列中所有两两相邻图像间的位移及旋转角度求解出来便得到整个视频序列的平移、旋转轨迹,记D=[Dx,Dy]有:

DTajectory=(D1,D2,...DN-1)

θTajectory=(θ12,...θN-1)

其中N表示视频序列总帧数,DN-1表示第N-1幅视频图像与第N幅视频图像间的平移向量,θN-1表示第N-1幅视频图像与第N幅图像图像间的旋转角度。

7)利用高斯滤波器对平移运动轨迹及旋转运动轨迹进行滤波处理,得到滤波后的平移轨迹DSTajectory、旋转运动轨迹θSTajectory;高斯滤波器的定义如下:

>G(k)=e-k2/2δ22πδ>

对视频序列的运动轨迹进行高斯平滑有:

>DSTajectory=ΣNDTajectoryG>

>θSTajectory=ΣNθTajectoryG>

其中DSTajectory、θSTajectory表示平滑后的平移、旋转运动轨迹,N表示视频序列总帧数;

8)计算平移均值Daverage、旋转均值θaverage;平滑后帧间运动的平均值:

Daverage=(DS,1+DS,2+....DS,N-1)/(N-1)

θaverage=(θS,1S,2+...θS,N-1)/(N-1)

若图像中存在DS,i>m*Daverage(i=1,…N-1)则表示视频序列中存在平移抖动,若图像中存在θS,i>m*θaverage(i=1,…N-1)则表示视频序列中存在旋转抖动,m表示调整系数,取值范围一般为1~1.2。

9)计算平移抖动数count_T及旋转抖动数count_R,并计算水平平滑度值

Tsmoothness及旋转平滑度值Tsmoothness;>count_R=Σi=1N-1δ[θS,i-m*θaverage]count_T=Σi=1N-1δ[DS,i-m*Daverage]>

>δ(x)=1x>00x0>

其中count_T表示平移抖动数,count_R表示旋转抖动数,δ(x)表示判断函数。平移抖动程度Tmeasure及旋转抖动程度值Rmeasure计算公式为:

>Tmeasure=count_TN-1Rmeasure=count_RN-1>

因此,其水平平滑度值Tsmoothness及旋转平滑度值Rsmoothness为:

>Tsmoothness=1-TmeasureRsmoothness=1-Rmeasure>

10)判断:Tsmoothness与Rsmoothness的值介于0~1之间,越接近于0表示视频序列中不存在抖动,视频平滑度好,越接近于1表示视频序列中抖动帧数越多,视频平滑度越差。

本发明产生的有益效果是:

本方法通过选取合适的特征对视频帧进行描述,利用运动模型计算前后相邻两帧的图像运动的参数,计算出整个视频序列相邻两帧图像的参数的序列,针对序列进行分析进而得出对视频平滑度的评价,实现效果良好,具有很大的使用价值。该方法不需要任何原始视频相关的信息,直接根据待评价视频的信息评价视频平滑度,具有更好的灵活性和通用性,以及更广泛的应用价值。

本方法进一步补充了对视频质量的评价方法,具有重要的理论意义和应用价值。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1是本发明实施例的步骤流程图;

图2是本发明实施例的ORB特征点匹配效果图。

图3是本发明实施例的特征点筛选后的匹配效果图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

如图1所示,一种无参考视频平滑度检测方法,包括以下步骤:

1)取视频连续n帧图像,提取n帧图像中的ORB特征点;通过一个二进制串描述某个图像块,该二进制串的构造方式如下:

>fn(p)=Σ1in2i-1τ(p;xi,yi)---(1)>

>τ(p;x,y)=1p(x)<p(y)0p(x)p(y)---(2)>

其中p(x)表示点x处图像块P的灰度值。ORB算法中采用5×5的子窗口作为测试点,图像块大小为31×31,n取值为256。由于BEIEF算法在图像发生内平面旋转时,算法性能将急速下降,为解决这个问题,ORB算法中提出一种称之为Steered BRIEF的算法,它在特征点位置(xi,yi)构造一个2×n的矩阵S:

>S=x1,···,xny1,···,yn---(3)>

利用图像块的主方向θ及对应的旋转矩阵Rθ构造Steered版本的S:

Sθ=RθS     (4)

其中图像块的主方向θ通过灰度中心(intensity centroid)[10]法计算得到,公式如下:

>mpq=Σx,yxpyqI(x,y)---(5)>

>C=(m10m00,m01m00)---(6)>

θ=atan2(m01,m10)   (7)

上述公式中mpq表示点(x,y)处的力矩(moments),C表示图像块的中心,θ表示图像块的主方向。因此,ORB算法所得到的描述子为:

gn(p,θ)=fn(p)(xi,yi)∈S0(8)

算法将360度方向分成30份,并预先构造BRIEF模式的查找表,以加速ORB描述子的生成。

2)采用FLANN特征点匹配算法对每相邻两帧图像中的ORB特征点进行匹配;如图2所示;

3)对每相邻两帧图像误匹配的ORB特征点进行筛选并剔除;剔除方法为:求每相邻两帧图像中所有匹配特征点两两之间的距离,取得其距离的最小值记

为min_dist,将特征点距离大于B*min_dist的特征点进行剔除,B取值范围为6~10;在本实施例中B取10;剔除后如图3所示。

4)根据运动仿射变换模型生成两幅图像间的仿射变换矩阵,--单应性矩阵,利用RANSAC算法对单应性矩阵A进行逐步迭代求解;

仿射变换矩阵定义如下:

>A=m11m12m13m21m22m23001---(9)>

>xy1=Axy1>

其中(x,y)表示第一幅图像中的像素点,(x′,y′)表示视频序列中相邻的第二幅图像中的像素点,矩阵A称为仿射变换矩阵,也称为单应性(Homography)矩阵,m13和m23用于描述视频序列中相邻两幅图像间的平移运动,m11,m12,m21及m22则用于描述相邻两幅图像间的尺度变化和旋转运动,因此要计算两幅图像间的仿射变换需要计算6个参数。

利用RANSAC算法求解单应性矩阵A的步骤如下:

(a)从匹配的ORB特征点对中随机抽4个匹配的特征点对作为一个RANSAC样本。

(b)利用这4个匹配的ORB特征点对计算单应性矩阵A。

(c)利用ORB特征点对集、单应性矩阵A及误差度量函数计算满足当前单应性矩阵A的一致集consensus,并返回一致集中元素个数。

(d)如果当前一致集中元素个数大于某个阈值,则认为它是最优一致集,并利用此一致集对当前最优一致集进行更新。

(e)更新当前错误概率p,如果P大于设定的最小错误概率则重复(a)至(d)继续迭代,直到当前错误概率p小于最小错误概率。

5)根据单应性矩阵-计算每相邻两帧图像间的运动参数,平移及旋转角度;设前一帧图像为I,当前帧图像为J,则其运动参数可以通过下列公式求解:

>(X,Y)=(Height2,Width2)---(11)>

>Dx=(m11*X+m12*Y+m13)-XDY=(m21*X+m22*Y+m23)-Y---(12)>

>sinθ=m21-m12(m12*m12+m11*m11+m21*m21+m22*m22)/2cosθ=m11+m22(m12*m12+m11*m11+m21*m21+m22*m22)/2>

其中(X,Y)分别表示原始图像I的中心点,Height、Width分别表示图像的高、宽,Dx、Dy分别表示图像水平、垂直方向的位移,θ表示图像间的旋转角度变化。所述运动参数包括图像的平移、旋转和尺度变化;

6)生成视频序列平移运动轨迹DTajectory及旋转运动轨迹;将视频序列中所有两两相邻图像间的位移及旋转角度求解出来便得到整个视频序列的平移、旋转轨迹,记D=[Dx,Dy]有:

DTajectory=(D1,D2,...DN-1)(14)

θTajectory=(θ12,...θN-1)(15)

其中N表示视频序列总帧数,DN-1表示第N-1幅视频图像与第N幅视频图像间的平移向量,θN-1表示第N-1幅视频图像与第N幅图像图像间的旋转角度。

7)利用高斯滤波器对平移运动轨迹及旋转运动轨迹进行滤波处理,得到滤波后的平移轨迹DSTajectory、旋转运动轨迹θSTajectory;高斯滤波器的定义如下:

>G(k)=e-k2/2δ22πδ---(16)>

对视频序列的运动轨迹进行高斯平滑有:

>DSTajectory=ΣNDTajectoryG---(17)>

>θSTajectory=ΣNθTajectoryG---(18)>

其中DSTajectory、θSTajectory表示平滑后的平移、旋转运动轨迹,N表示视频序列总帧数;为简便计算,设M表示与图像前后两相邻的若干帧图像,例如对于第i幅图像,N取值可以为2M,即图像i前M帧图像与i后M帧图像间的运动轨迹都被高斯滤波器覆盖;

8)计算平移均值Daverage、旋转均值θaverage;平滑后帧间运动的平均值:

Daverage=(DS,1+DS,2+....DS,N-1)/(N-1)     (21)

θaverage=(θS,1S,2+...θS,N-1)/(N-1)     (22)

若图像中存在DS,i>m*Daverage(i=1,…N-1)则表示视频序列中存在平移抖动,若图像中存在θS,i>m*θaverage(i=1,…N-1)则表示视频序列中存在旋转抖动,m表示调整系数,取值范围一般为1~1.2。

9)计算平移抖动数count_T及旋转抖动数count_R,

并计算水平平滑度值Tsmoothness及旋转平滑度值Rsmoothness

>count_R=Σi=1N-1δ[θS,i-m*θaverage]count_T=Σi=1N-1δ[DS,i-m*Daverage]---(23)>

>δ(x)=1x>00x0---(24)>

其中count_T表示平移抖动数,count_R表示旋转抖动数,δ(x)表示判断函数。平移抖动程度Tmeasure及旋转抖动程度值Rmeasure计算公式为:

>Tmeasure=count_TN-1Rmeasure=count_RN-1---(25)>

因此,其水平平滑度值Tsmoothness及旋转平滑度值Rsmoothness为:

>Tsmoothness=1-TmeasureRsmoothness=1-Rmeasure---(26)>

10)判断:Tsmoothness与Rsmoothness的值介于0~1之间,越接近于0表示视频序列中不存在抖动,视频平滑度好,越接近于1表示视频序列中抖动帧数越多,视频平滑度越差。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号