一种维持视差的双目视频稳像方法与流程

文档序号:14060954阅读:278来源:国知局
一种维持视差的双目视频稳像方法与流程

本发明涉及计算机视觉和计算机图形学领域,具体的说,是一种维持视差的双目视频稳像方法。



背景技术:

用户通过手持设备拍摄的视频往往存在大量的抖动,影响视觉效果。数字视频稳像技术是一种通过低频滤波器对相机运动进行平滑滤波,去除抖动的相机运动(cameramotion),并渲染输出平稳视频的技术。相比专业拍摄设备使用移动导轨拍摄稳定视频的方式,采用视频稳像算法提升用户拍摄视频的平稳质量更加经济和简便。此外,视频稳像技术将有助于提高计算机视觉中许多算法的准确性,例如视频的分割、识别、检测等。

随着3d电影在影视界的成功应用,双目相机和立体显示设备变得越来越流行。近些年来,双目图像和视频的处理方法和技术逐渐成为学术界和产业界的热门课题。例如,双目图像的扭曲变换(stereoscopicwarping)、克隆(cloning)、以及全景拼接(panorama)等应用。然而,针对双目视频的稳像问题至今尚未出现非常有效的方法。原因在于如果将传统的单目视频稳像算法直接应用在双目视频的两个视角时,双目视频原始的视差(disparity)信息会发生畸变,从而导致输出结果出现错误的感知深度。



技术实现要素:

本发明的目的在于提供一种维持视差的双目视频稳像方法,用于对双目视频进行去抖动处理,在提升双目视频的平稳质量的同时保持双目视频原始的视差信息,最终获得稳定并具备正确感知深度的双目视频。

本发明通过下述技术方案实现:一种维持视差的双目视频稳像方法,将双目视频分解为左视角视频和右视角视频;对左视角视频进行防抖处理并输出相应的左视角平稳变换矩阵,对右视角视频进行防抖处理并输出相应的右视角平稳变换矩阵;左视角视频根据左视角平稳变换矩阵渲染输出左视角输出视频,右视角视频根据右视角平稳变换矩阵渲染输出右视角输出视频;将左视角输出视频和右视角输出视频合成稳定的双目视频输出。

主要包括以下几个步骤:

步骤s1:初始化相关参数;

步骤s2:将双目视频拆分为左视角视频和右视角视频,利用光流法和/或sift算法计算左视角视频与右视角视频的匹配特征点对;利用sift算法分别计算左视频前后相邻帧之间的左视匹配sift特征点和右视频前后相邻帧之间的右视匹配sift特征点,其中同一时刻t下的左视角视频图帧记为右视角视频图帧记为

步骤s3:利用视差计算模块逐帧计算左视角视频与右视角视频之间的原始视差,其中原始视差记为dt;

步骤s4:利用多路径视频稳像模块分别将左视角视频和右视角视频的每一帧划分为n*n的网格并对左视角视频和右视角视频进行防抖处理,同时输出左视角平稳变换矩阵和右视角平稳变换矩阵,利用左视角平稳变换矩阵计算出左视角视频网格的对应位置,其中左视角平稳变换矩阵记为右视角平稳变换矩阵记为

步骤s5:利用视差变换模块对左视角平稳变换矩阵与原始视差进行处理得到视频稳像后的视差,其中视差记为dt′;

步骤s6:利用jdsw模块根据右视角平稳变换矩阵与视差计算出右视角视频网格的对应位置;

步骤s7:利用网格映射模块根据左视角视频网格的对应位置与右视角视频网格的对应位置分别渲染输出左视角的平稳视频和右视角的平稳视频;

步骤s8:将左视角的平稳视频和右视角的平稳视频合成双目视频输出。

所述的步骤s3中,视差计算模块根据匹配特征点对计算t时刻下左视角视频与右视角视频在每一个匹配特征点对(i,j)处的视差。

所述的匹配特征点对包括稠密点对和稀疏点对;所述的稠密点包括利用光流法对左视角视频计算得出的左视稠密点和利用光流法对右视角视频计算得出的右视稠密点;所述的稀疏点对包括利用sift算法对左视角视频计算得出的左视稀疏点和利用sift算法对右视角视频计算得出的右视稀疏点。其中左视稠密点和左视稀疏点记为pli,j,右视稠密点和右视稀疏点记为pri,j

所述的步骤s4中,利用多路径视频稳像模块将左视角视频的每一帧划分为n*n的网格,根据content-preservingwarping变换方法利用左视匹配sift特征点引导网格变换并估算每一个网格的相机路径,利用网格的相机路径计算相应的平滑相机路径,使用平滑相机路径计算得出该网格的左视角平稳变换矩阵;对于右视角视频采用相同的方法计算出右视角平稳变换矩阵。其中相机路径记为c(t),平滑相机路径记为p(t)。

所述的步骤s5中,利用视差变换模块计算出原始视差在左视角平稳变换矩阵的约束下进行变换后的视差。

所述的步骤s2中,利用ransac算法剔除匹配特征点对中匹配错误的点对。

本发明与现有技术相比,具有以下优点及有益效果:

本发明在提升双目视频的平稳质量的同时保持双目视频原始的视差信息,最终获得稳定并具备正确感知深度的双目视频。

附图说明

图1为本方案的流程示意图;

图2为jdsw变换示意图;

图3为相似规整项原理示意图;

图4为网格渲染示意图;

图5为双目视频稳像方法结果示意图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

本实施例中,一种维持视差的双目视频稳像方法,首先将双目视频分解为左视角视频和右视角视频。分别对左视角视频进行防抖处理并输出相应的左视角平稳变换矩阵,对右视角视频进行防抖处理并输出相应的右视角平稳变换矩阵。左视角视频根据左视角平稳变换矩阵渲染输出左视角输出视频,右视角视频根据右视角平稳变换矩阵渲染输出右视角输出视频。最后将左视角输出视频和右视角输出视频合成稳定的双目视频输出。本方案在提升双目视频的平稳质量的同时保持了双目视频原始的视差信息,从而能够获得稳定并具备正确感知深度的双目视频。

实施例2:

如图1所示,本实施例中,一种维持视差的双目视频稳像方法,主要包括以下几个步骤:

步骤s1:初始化相关参数。

步骤s2:将双目视频拆分为左视角视频和右视角视频,利用光流法和/或sift算法计算左视角视频与右视角视频的匹配特征点对。所述的匹配特征点对包括稠密点对和稀疏点对。所述的稠密点对包括利用光流法对左视角视频计算得出的左视稠密点和利用光流法对右视角视频计算得出的右视稠密点。所述的稀疏点对包括利用sift算法对左视角视频计算得出的左视稀疏点和利用sift算法对右视角视频计算得出的右视稀疏点。

利用sift算法分别计算左视频前后相邻帧之间的左视匹配sift特征点和右视频前后相邻帧之间的右视匹配sift特征点。

其中同一时刻t下的左视角视频图帧记为右视角视频图帧记为本实施例中,所述的光流法与sift算法为本领域技术人员的公知常识以及惯用手段,本领域技术人员根据本方案记载的内容能够实现上述效果,此处不对光流法与sift算法的具体内容进行赘述。

步骤s3:利用视差计算模块逐帧计算左视角视频与右视角视频之间的原始视差,其中原始视差记为dt。视差计算模块根据匹配特征点对,并利用以下公式计算t时刻下左右视角在每一个匹配特征点对(i,j)处的视差,即分别对每一个稀疏点或稠密点计算视差,其具体利用以下公式进行计算:

其中:

pli,j为t时刻下左视角视频图中的对应匹配点,包括左视稠密点和左视稀疏点;

pri,j为t时刻下右视角视频图中的对应匹配点,包括右视稠密点和右视稀疏点。

dt包含所有的所有的组成dt。

因为在稳像过程中是有可能改变双目视频的视差,改变后的视差应尽可能和原始视差保持相同。变化后的视差只有在和原始视差基本相同的情况下,人眼感知到的深度才是正确的。利用视差计算模块能够准确的获取视频原始视差,从而提供准确的参考。

步骤s4:利用多路径视频稳像模块分别将左视角视频和右视角视频的每一帧划分为16*16的网格并对左视角视频和右视角视频进行防抖处理,同时输出左视角平稳变换矩阵和右视角平稳变换矩阵,利用左视角平稳变换矩阵计算出左视角视频网格的对应位置,其中左视角平稳变换矩阵记为右视角平稳变换矩阵记为

其具体过程为:利用多路径视频稳像模块将左视角视频的每一帧划分为16*16的网格,根据content-preservingwarping变换方法利用左视匹配sift特征点引导网格变换并估算每一个网格的相机路径,利用网格的相机路径计算相应的平滑相机路径,使用平滑相机路径计算得出该网格的左视角平稳变换矩阵。对于右视角视频采用相同的方法计算出右视角平稳变换矩阵。其中每一个网格的相机路径记为ck(t),每一个网格的平滑相机路径记为pk(t),这里k索引每一个网格。

利用以下公式计算得到每一个网格的相机路径,即子路径ck(t):

ck(t)=fk(t)fk(t-1)...fk(1)fk(0),fk(0)=i(2);

其中:

fk(t)为利用sift算法对原始视频的相邻视频帧计算匹配sift特征点,之后根据匹配sift特征点对计算出的原始视频相邻视频帧之间的帧间投影变换,t时刻的相机路径ck(t)定义为以上帧间投影变换的累乘。原始视频包括左视角视频和右视角视频,匹配sift特征点包括左视匹配sift特征点和右视匹配sift特征点;

i指的3*3的单位矩阵。

所有网格的平滑相机路径通过最优化以下能量方程得到:

∑ko({pk(t)})+∑t∑h∈n(k)||pk(t)-ph(t)||(3);

其中:

公式(3)为多路径视频稳像模块的能量优化函数。

k表示索引每一个子路径,∑k表示对所有的子路径能量o({pk(t)})的求和;

∑t指的是对于所有的视频帧;

∑h∈n(k)指的是对于第k条子路径的所有相邻路径;

n(k)指的是与第k条路径相邻的8个路径,因为路径是按网格划分的,对于一个k,以k为中心形成一个9宫格,周围有8个相邻网格;

ph(t)指的是pk(t)的邻居路径;

h指的是k的邻居;

||pk(t)-ph(t)||表示对pk(t)与ph(t)之差求范数。

公式(4)的物理意义为平滑每一个子相机路径,其中第一项要求每一个平滑后的子路径应该和原始路径尽量接近;第二项要求每一条子路径在时续上平滑。

其中,r∈ωt代表以t为中心,在一个半径内与t邻近的帧;ωt,r(ck)为平滑权重。

利用以下公式计算得到平稳变换矩阵bk(t):

bk(t)=ck(t)-1pk(t)(5);

bk(t)包括每一个网格可以通过bk(t)变换到平滑的位置而得到变换后的网格。

利用多路径视频稳像模块执行视频稳像操作,相较于单路径稳像算法,多路径稳像能获得更好的稳定效果,能有效应对场景中存在的各种深度变换以及卷帘快门现象。

步骤s5:利用视差变换模块计算出原始视差dt在左视角平稳变换矩阵的约束下进行变换后的视差,其中视差记为d′t。视差变换模块通过最小化以下能量方程对原始视差dt进行变换:

其中:

di指的是第i个点的原始视差;

指的是第i个点变换后的视差,这里第i个点,其图像坐标已经产生了变化,假设变化前其图像二维坐标为(x,y),变化后图像二维坐标为(x’,y’),这个变化就是由所描述的;

si为尺度因子,由几何变换矩阵h来计算得出,几何变换矩阵h为单应性变换矩阵,利用h计算得到si为本领域技术人员的公知常识,此处不对具体si的计算过程进行赘述;

所有的构成了d′t;

表示对于每一个原始视差,或者说是遍历每一个原始视差;

dmin表示所有的原始视差中,具有最小长度的那个视差;

表示具有最小长度的视差变换过后的视差,s为最小长度视差所对应的尺度因子si。

利用视差变换模块能够准确的计算视频稳定后应该具有的视差,从而作为后续判断的标准。

步骤s6:利用jdsw模块根据右视角平稳变换矩阵与视差计算出右视角视频网格的对应位置。图2(a)、图2(b)所示,设分别是第t帧下左右两个视角的第i对匹配特征点,即第i个匹配特征点对,该点对对应的视差为di,在经过多路径视频稳像模块处理后,左右两个视角的网格分别通过变换到新的位置,如图2(c)(d)所示,相应的由原始位置通过公式变换到点处,相应的由原始位置通过公式变换到点处,此外根据变换原始视差di经过视差变换模块得到从而得到在新视差下左视角点在右视角的对应点位置在图2(d)中,点蕴含着右视角网格应该变换到的平稳的位置,点代表着右视角变换后需要具备的视差约束。jdsw变换要求变换后的网格同时保证视差约束以及平稳约束,其可以通过以下能量方程来表征:

其中:

为待求的网格坐标;

为视差约束项;

为平稳约束项;

为相似规整项;

λ1、λ2、λ3为步骤s1中初始化的参数,分别用于调整视差约束项、平稳约束项和相似规整项的权重。

定义视差约束项:

定义平稳约束项:

定义相似规整项:

初始化网格为在视频帧上均匀划分的16*16的网格将每一个点用包围其的四个网格顶点通过双线性插值权重ωi来表征,则有其中且其和为1。

视差约束项和平稳约束项保证了变换后的网格同时具备视频的稳像效果以及正确的感知深度。相似规整项约束网格在变换过程中空间上的形变接近相似变换。

如图3所示,首先将初始化的每一个规整四边形网格被划分为两个三角形,[v1,v2,v3]为三角形的顶点,其为四边形网格中四个顶点中的三个。其中v1可以用另外两个三角形格点v2、v3来表征。设(u,v)为v1在以v2、v3形成的直角坐标系中的坐标,则(u,v)共同表征了v1与v2、v3之间的角度和比例关系。我们希望在变换后的网格中以及依旧保持上述的尺度关系,这一约束通过使用公式(9)来表征。

由于公式(7)是一个二次能量方程,所以可以通过解稀疏线性方程来优化得到最终的网格格点坐标。本实施例中,解稀疏线性方程为本领域技术人员的惯用手段,此处不对解稀疏线性方程的具体过程进行赘述。

利用jdsw模块能够在稳像的过程中,同时保持视频的稳定性和视差约束。通过视差变化模块后,已经知道了稳定后的视频应该具有的视差,利用jdsw模块能够提供满足该视差要求且用于稳定视频的网格。使得稳像后视频的视差与其应该具有的视差相同,从而使得稳像后的视频具有正确的感知深度。

步骤s7:利用网格映射模块根据左视角视频网格的对应位置与右视角视频网格的对应位置分别渲染输出左视角的平稳视频和右视角的平稳视频。如图4所示,左边为原始网格,右边为变换后的网格,每一个网格都能够通过构成其的四个网格顶点来计算出一个单应性变换矩阵fi(t),因此原始视频在第t帧的第i个网格中的所有像素可以通过fi(t)反向映射来渲染输出,最终每一个网格都依照上述方式得到最终视频。通过jdsw模块获得了用于稳定视频的网格,向网格映射模块输入原始视频与用于稳定视频的网格能够输出稳定的视频。

步骤s8:如图5所示,将左视角的平稳视频和右视角的平稳视频合成双目视频输出。

实施例3:

在上述实施例的基础上,本实施例中,所述的步骤s2中,利用ransac算法剔除匹配特征点对中匹配错误的点对。以此能够在计算视差时提高计算结果的准确度。本实施例中,所述的ransac算法为本领域技术人员的常用算法,本领域技术人员根据本方案记载的内容能够实现上述效果,此处不对的ransac算法的具体内容进行赘述。本实施例中,其他未描述的部分与上述实施例的内容相同,故不赘述。

以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

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