CN103167304B - 立体视频帧率提升方法和装置 - Google Patents

立体视频帧率提升方法和装置 Download PDF

Info

Publication number
CN103167304B
CN103167304B CN201310073131.8A CN201310073131A CN103167304B CN 103167304 B CN103167304 B CN 103167304B CN 201310073131 A CN201310073131 A CN 201310073131A CN 103167304 B CN103167304 B CN 103167304B
Authority
CN
China
Prior art keywords
image block
motion vector
depth
pixel
degree
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310073131.8A
Other languages
English (en)
Other versions
CN103167304A (zh
Inventor
杨晓晖
刘琚
孙建德
元辉
刘韶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Group Co Ltd
Original Assignee
Hisense Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hisense Group Co Ltd filed Critical Hisense Group Co Ltd
Priority to CN201310073131.8A priority Critical patent/CN103167304B/zh
Publication of CN103167304A publication Critical patent/CN103167304A/zh
Application granted granted Critical
Publication of CN103167304B publication Critical patent/CN103167304B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种立体视频帧率提升方法和装置,所述方法包括:确定待插入彩色视频帧Ct中的每个图像块的运动向量,包括:对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量;根据确定的运动向量,对该图像块进行运动补偿,包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景和背景部分进行运动补偿;将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧。由于对深度不连续的图像块区分了背景和前景部分,并分别进行运动补偿,从而经运动补偿后的插入帧的图像中可以更好地划分出运动物体与背景部分的边缘,以提高帧率提升后的视频质量。

Description

立体视频帧率提升方法和装置
技术领域
本发明涉及视频技术,尤其涉及立体视频帧率提升方法和装置。
背景技术
随着3D技术的发展,立体视频技术引起的广泛的关注,并且向着高清、高帧率方向发展。具有播放立体视频功能的移动终端接收某些特定视点的视频及其深度视频后,通过视点合成技术合成其它所需视点视频,不同视点的视频图像进入观看者左右眼,从而使观看者感受到3D效果。立体视频由于需要多个视点视频,所以数据传输量较大;特别是移动终端通过无线传输信道接收视频数据,有可能出现由于数据传输量过大,而造成视频数据传输延迟的情况。因此,为了减少传输过程中的视频数据,通常会对3D视频做一些处理,比如减少、限制视频帧率;将视频帧率较低的多个视点视频的数据传输给移动终端。随着移动终端的处理器运算能力的提升,移动终端可以在接收到视频数据后,通过帧率提升技术,实现高帧率视频的恢复与播放。
目前的帧率提升技术主要是采用基于运动补偿的帧插入方法。该方法中,移动终端在接收到视频帧率较低的视频数据后,在帧间插入通过计算得到的视频帧,本文中称为插入帧,以提高帧率。插入帧的图像是根据其前后视频帧中各图像块的运动向量进行计算后得到的。具体地,通常将视频帧分成大小相等的块,然后根据前后视频帧块的匹配,估计出相应块的运动向量,根据每个块的运动向量可以确定出每个块在插入帧中对应的位置,从而确定出插入帧的图像。
然而该方法,在运动物体的边缘由于块匹配的不准确,会出现不准确的运动向量,从而造成运动物体的模糊,极大影响了帧率提升后的视频质量。其直观效果是,采用该方法进行帧率提升后得到的立体视频会出现运动物体边缘模糊的现象,导致视频质量不佳。
发明内容
本发明的实施例提供了一种立体视频帧率提升方法和装置,用以提高帧率提升后得到的立体视频的质量。
根据本发明的一个方面,提供了一种立体视频帧率提升方法,包括:
对于所述立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量;其中包括:对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量;
针对Ct中的每个图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;其中包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿;
将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧;
其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧。
其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,具体包括:
对Ct中的一个图像块进行双向运动估计后,计算出该图像块的估计运动向量;根据所述估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块;若Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块。
较佳地,所述对于待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量,具体还包括:
对于所述深度连续的图像块,将计算出的该图像块的估计运动向量,确定为最终的该图像块的运动向量,或将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量。
较佳地,所述对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量,具体包括:
对所述深度不连续的图像块划分出背景部分和前景部分后,确定的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;其中,所述集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定;
以及确定的背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者确定的背景运动向量为将该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量。
较佳地,所述深度连续前景图像块的判定方法包括:
针对集合Q中每个图像块,计算该图像块的深度平均值;其中,所述集合Q为包括所述深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块的集合;
根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值;
针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较;将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
较佳地,所述前景运动向量具体根据如下公式9计算得到:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) ∈ s 2 Σ ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为第二范围,(wx/2,wy/2)为第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示所述集合P中图像块的各像素的坐标,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,S2根据BCt的估计运动向量以及设定的第二向量调整步长决定。
进一步,在所述对所述深度不连续的图像块划分出背景部分和前景部分之前,还包括:
对所述深度不连续的图像块运用前景匹配技术计算得到该图像块的前景运动向量;
判断所述前景运动向量是否等于0;若判断所述前景运动向量等于0,则根据所述前景运动向量对所述深度不连续的图像块进行运动补偿;以及
所述对于深度不连续的图像块,分别确定其背景部分和前景部分的运动向量具体为:
若判断所述前景运动向量不等于0,则对于该深度不连续的图像块,分别确定其背景部分和前景部分的运动向量。
较佳地,所述对所述深度不连续的图像块划分出背景部分和前景部分具体包括:
对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用阿尔法通道抠图算法alpha matting的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分。
较佳地,所述将该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为所述背景运动向量具体包括:
将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;其中,第一范围根据该深度不连续的图像块的估计运动向量以及设定的第一向量调整步长决定;或者,
将该深度不连续的图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式25计算出深度绝对差之和:
SADD = Σ ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式25)
公式25中,(m,n)表示该深度不连续的图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量;否则,判断该深度不连续的图像块初步优化后的运动向量不是可靠运动向量;
若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式对初步优化后的运动向量作二次优化:根据如下公式26对所述初步优化后的运动向量作二次优化:
MV = Σ N ( w q × MV q ′ ) Σ N w q     (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量;其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式27决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;
将经二次优化后得到的运动向量确定为最终的该图像块的运动向量。
较佳地,所述将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高具体包括:
根据如下公式24得到该深度不连续的图像块BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) ∈ s 2 Σ ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式24)
公式24中,(v1x/2,v1y/2)为BCt的初步优化后的运动向量,S1为第一范围,(wx/2,wy/2)为第一范围内的运动向量,表示在S1内查找出使得arg min后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。
较佳地,所述对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿具体包括:
根据如下公式10或公式12对所述深度不连续的图像块的前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 × RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 × RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式10)
公式10中,(vqx/2,vqy/2)为所述深度不连续的图像块BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = λ fwd × RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + λ bwd × RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式12)
公式12中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
所述公式12中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
根据如下公式11或公式14对所述深度不连续的图像块的背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式11)
公式11中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式14)
公式14中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
所述公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
较佳地,所述将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量具体包括:
将该图像块的估计运动向量进行步初步优化的过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;其中,第一范围根据该图像块的估计运动向量以及设定的第一向量调整步长决定;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;或者,
将该图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式4计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式4)
公式4中,(m,n)表示该图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
若计算出的深度绝对差之和小于设定差值,则判断该图像块初步优化后的运动向量为可靠运动向量;否则,判断该图像块初步优化后的运动向量不是可靠运动向量;
若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式5对初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q     (公式5)
公式5中,N表示与BCt相邻的图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量。其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式6)
公式6中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;
将经二次优化后得到的运动向量确定为最终的该图像块的运动向量。
较佳地,所述将该图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高具体包括:
根据如下公式3得到该图像块BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) | (公式3)
公式3中,(v1x/2,v1y/2)为BCt的初步优化后的运动向量,S1为第一范围,(wx/2,wy/2)为第一范围内的运动向量,表示在S1内查找出使得arg min后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。
进一步,所述根据确定的该图像块的运动向量,对该图像块进行运动补偿,还包括:
对于所述深度连续的图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿具体为:
根据如下公式7对所述深度连续的图像块进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; RGB t + 1 ( m - v x / 2 , n - v y / 2 )     (公式7)
公式7中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt中坐标为(m,n)的像素的色彩值(即RGB值)。
进一步,在所述对于待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量后,还包括:
根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿;其中,所述Dt为对应于Ct的待插入深度视频帧;
将各图像块经过运动补偿的Dt作为深度视频插入帧插入到Dt-1和Dt+1之间。
较佳地,所述根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿,具体包括:
若Ct中的图像块为深度连续的图像块BCt,则对Dt中对应BCt的图像块进行运动补偿的方法为:根据如下公式8进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )     (公式8)
公式8中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;其中,BDt为Dt中与BCt对应的图像块。
较佳地,所述根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿,具体包括:
若Ct中的图像块为深度不连续的图像块BCt,则对Dt中对应BCt的图像块进行运动补偿的方法为:
根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;
根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿。
较佳地,所述根据BCt的前景运动向量对BDt的前景部分进行运动补偿具体包括:
根据如下公式16或公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式16)
公式16中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式18)
公式18中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
所述公式18中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧。
较佳地,所述根据BCt的背景运动向量对BDt的背景部分进行运动补偿具体包括:
根据如下公式17或公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式17)
公式17中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式19)
公式19中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
所述公式19中的λfwd和λbwd值根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块。
根据本发明的另一个方面,还提供了一种立体视频帧率提升装置,包括:
图像块运动向量确定模块,用于对于所述立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量;其中包括:对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量;
图像块运动补偿补偿模块,用于针对Ct中的每个图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;其中包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿;
视频帧插入模块,用于将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧;
其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧。
其中,所述图像块运动向量确定模块具体包括:
图像块判定单元,用于对Ct中的一个图像块进行双向运动估计后,计算出该图像块的估计运动向量;根据所述估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块;若Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块;
第一图像块运动向量确定单元,用于对于所述深度连续的图像块,将计算出的该图像块的估计运动向量,确定为最终的该图像块的运动向量,或将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量;
第二图像块运动向量确定单元,用于对所述深度不连续的图像块划分出背景部分和前景部分后,确定的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;其中,所述集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定;以及,确定所述背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者为该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量。
较佳地,第二图像块运动向量确定单元具体包括:区域划分子单元、前景运动向量确定子单元、背景运动向量确定子单元、深度连续前景图像块判定子单元;其中,
所述前景运动向量确定子单元,用于根据如下公式9计算所述前景运动向量:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为第二范围,(wx/2,wy/2)为第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示所述集合P中图像块的各像素的坐标,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,S2根据BCt的估计运动向量以及设定的第二向量调整步长决定;
所述区域划分子单元,用于对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用alpha matting的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分;
所述背景运动向量确定子单元,确定所述背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者,将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;其中,第一范围根据该深度不连续的图像块的估计运动向量以及设定的第一向量调整步长决定;或者,
所述背景运动向量确定子单元将该深度不连续的图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式25计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式25)
公式25中,(m,n)表示该深度不连续的图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
所述背景运动向量确定子单元若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量;否则,判断该深度不连续的图像块初步优化后的运动向量不是可靠运动向量;
所述背景运动向量确定子单元若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式对初步优化后的运动向量作二次优化:根据如下公式26对所述初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q     (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量;其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式27决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;将经二次优化后得到的运动向量确定为最终的该图像块的运动向量;
所述深度连续前景图像块判定子单元,用于针对集合Q中每个图像块,计算该图像块的深度平均值;其中,所述集合Q为包括所述深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块的集合;根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值;针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较;将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
较佳地,所述图像块运动补偿模块具体包括:
第一图像块运动补偿单元,用于对于所述深度连续的图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;
第二图像块运动补偿单元,用于对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿。
较佳地,第二图像块运动补偿单元具体包括:前景运动补偿子单元、背景运动补偿子单元;
所述前景运动补偿子单元用于根据如下公式10或公式12对所述深度不连续的图像块的前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式10)
公式10中,(vqx/2,vqy/2)为所述深度不连续的图像块BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式12)
公式12中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
所述公式12中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元根据如下公式11或公式14对所述深度不连续的图像块的背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式11)
公式11中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式14)
公式14中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
所述公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
较佳地,所述图像块运动补偿模块还包括:
第三图像块运动补偿单元,用于对Ct中的深度连续的图像块,对Dt中对应该深度连续的图像块的图像块进行运动补偿
第四图像块运动补偿单元,用于对Ct中的深度不连续的图像块,对Dt中对应该深度不连续的图像块的图像块进行运动补偿;以及
所述视频帧插入模块还用于将各图像块经过运动补偿的Dt作为深度视频插入帧插入到Dt-1和Dt+1之间。
较佳地,第三图像块运动补偿单元具体根据如下公式8进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )     (公式8)
公式8中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;其中,BDt为Dt中与BCt对应的图像块。
较佳地,第四图像块运动补偿单元具体用于根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿;其中,BDt为Dt中与BCt对应的图像块。
较佳地,第四图像块运动补偿单元包括:区域划分子单元、前景运动补偿子单元、背景运动补偿子单元;
所述区域划分子单元用于根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;
所述前景运动补偿子单元具体用于根据如下公式16或公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式16)
公式16中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式18)
公式18中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
所述公式18中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元用于根据如下公式17或公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 ) (公式17)
公式17中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式19)
公式19中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
所述公式19中的λfwd和λbwd值根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块。
本发明实施例由于结合深度视频帧中的深度信息区分出深度连续的图像块和深度不连续的图像块,对深度不连续的图像块区分了背景部分和前景部分,并分别进行运动补偿,则作为运动物体的前景部分在进行运动补偿时,不会与背景部分混为一体,从而经运动补偿后的插入帧的图像中可以更好地划分出运动物体与背景部分的边缘,也就可以更好地防止运动物体出现边缘模糊的问题,从而提高插入帧的图像质量,也就提高了帧率提升后的视频质量。
附图说明
图1为本发明实施例的立体视频帧率提升方法的总体流程图;
图2为本发明实施例的立体视频帧率提升方法的具体流程图;
图3a为本发明实施例的对深度连续的图像块进行运动向量优化后再进行运动补偿的方法流程图;
图3b为本发明实施例的相邻图像块中包括深度连续的图像块和深度不连续的图像块的示意图;
图4为本发明实施例的对深度不连续的图像块进行运动补偿的方法流程;
图5为本发明实施例的深度连续前景图像块的判定方法流程图;
图6为本发明实施例的对深度不连续的图像块的估计运动向量进行优化,将优化后的运动向量作为背景运动向量的方法流程图;
图7为本发明实施例的立体视频帧率提升装置的结构框图;
图8为本发明实施例的第二图像块运动向量确定单元的结构框图;
图9为本发明实施例的第四图像块运动补偿单元的内部结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举出优选实施例,对本发明进一步详细说明。然而,需要说明的是,说明书中列出的许多细节仅仅是为了使读者对本发明的一个或多个方面有一个透彻的理解,即便没有这些特定的细节也可以实现本发明的这些方面。
本申请使用的“模块”、“系统”等术语旨在包括与计算机相关的实体,例如但不限于硬件、固件、软硬件组合、软件或者执行中的软件。例如,模块可以是,但并不仅限于:处理器上运行的进程、处理器、对象、可执行程序、执行的线程、程序和/或计算机。举例来说,计算设备上运行的应用程序和此计算设备都可以是模块。一个或多个模块可以位于执行中的一个进程和/或线程内,一个模块也可以位于一台计算机上和/或分布于两台或更多台计算机之间。
本发明的发明人发现,现有技术的帧率提升技术主要还是基于对普通的、非立体视频进行研究的基础上实现的,并没有考虑立体视频应用中的深度信息,所以可以考虑通过深度信息和视频中的物体运动之间的关系进一步消除不准确运动向量,提高插入帧的图像质量。
事实上,常用的三维立体视频显示技术为“视频+深度”技术:使用一路彩色视频来表达纹理信息,并且使用一路与其对应的深度视频来表达彩色视频中每个像素点的纵向深度信息。其中彩色视频为传统的彩色视频;深度视频是与彩色视频“像素-像素”对应的,且每个像素的值在0~255范围内的灰度视频。
本发明的技术方案中,立体视频接收端在接收、获取到立体视频中的低帧率彩色视频和深度视频后,结合深度视频中的深度信息,以及对彩色视频的块运动估计,以计算出质量更佳的插入帧,进行帧率提升,从而提高帧率提升后得到的立体视频的质量。所述立体视频接收端具体可以包括移动终端或其它客户端、计算机、电脑等。移动终端具体可以包括:手机、掌上电脑、平板电脑、智能电视、机顶盒等设备。
本发明技术方案的立体视频帧率提升方法的总体思路,如图1所示,包括如下几大步骤:
S101:对于立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量。
具体地,Ct中均匀划分的若干图像块可以分为深度连续的图像块、深度不连续的图像块;对于深度连续的图像块,其运动向量的确定方法可以与现有技术的方法一样;而对于深度不连续的图像块,确定的运动向量中包括前景运动向量和背景运动向量,也就是说,深度不连续的图像块的运动向量包括该图像块的背景部分的运动向量和前景部分的运动向量。
如何判断Ct中的图像块是深度连续的图像块,还是深度不连续的图像块的具体方法将在后续进行介绍。
对于深度不连续的图像块,如何确定其前景运动向量和背景运动向量的具体方法将在后续进行介绍。
S102:针对Ct中的每个图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿。
具体地,对于深度连续的图像块,根据运动向量进行运动补偿的方法可以与现有技术的方法一样;而对于深度不连续的图像块,则根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿。
由于本发明中,结合深度视频帧中的深度信息区分出深度连续的图像块和深度不连续的图像块,对深度不连续的图像块区分了背景部分和前景部分,并分别进行运动补偿,则作为运动物体的前景部分在进行运动补偿时,不会与背景部分混为一体,从而经运动补偿后的插入帧的图像中可以更好地划分出运动物体与背景部分的边缘,也就可以更好地防止运动物体出现边缘模糊的问题,从而提高插入帧的图像质量,也就提高了帧率提升后的视频质量。
S103:将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间,实现立体视频的帧率提升。其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧。
下面详细介绍本发明的立体视频帧率提升方法,具体流程如图2所示,包括如下步骤:
S201:将待插入彩色视频帧(记为Ct)均匀划分为若干图像块。
在本步骤中,将Ct帧的图像划分为等尺寸的若干图像块,例如,将Ct帧的图像划分为n×n的图像块,n为自然数由本领域技术人根据实际情况设置。
S202:针对Ct中的每个图像块,对该图像块进行双向运动估计,计算出该图像块的估计运动向量。
在本步骤中,针对Ct中的每个图像块,运用运动估计算法,比如MSEA(Multilevel Successive Eliminate Algorithm,多级顺序排除算法)算法,进行双向运动估计,分别在Ct-1和Ct+1中找到与Ct中的该图像块最匹配的图像块;根据找到的Ct-1和Ct+1中最匹配的图像块,计算Ct中的该图像块估计运动向量。
由于运动估计算法,以及如何根据Ct-1和Ct+1中最匹配的图像块,计算Ct中的该图像块估计运动向量的方法为现有技术,此处不再赘述。
S203:针对Ct中的每个图像块,根据该图像块的估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块,依据Dt-1和Dt+1中对应的图像块的深度信息判定Ct中的该图像块是深度连续的图像块,还是深度不连续的图像块。其中,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧。
具体地,针对Ct中的每个图像块,根据该图像块的估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块,依据Dt-1和Dt+1中对应的图像块的深度标准差判断Ct中的该图像块是深度连续的图像块,还是深度不连续的图像块:根据Ct中的图像块的估计运动向量,对该图像块的像素坐标做平移后得到的像素坐标,即为Dt-1和Dt+1中对应的图像块中的像素的坐标;在Dt-1中对应的图像块的像素的坐标可以根据如下公式1确定:
公式1中,(it,jt)为Ct中的图像块BCt中的像素的坐标,(it-1,jt-1)为图像块BDt-1中的像素的坐标;BDt-1为BCt基于其估计运动向量在Dt-1中对应的图像块;为图像块BCt的估计运动向量。
在Dt+1中对应的图像块的像素的坐标可以根据如下公式2确定:
公式2中,(it,jt)为Ct中的图像块BCt的像素的坐标,(it+1,jt+1)为图像块BDt+1中的像素的坐标;BDt+1为BCt基于其估计运动向量在Dt+1中对应的图像块;为图像块BCt的估计运动向量。
在确定了Dt-1和Dt+1中对应的图像块BDt-1和BDt+1后,分别计算BDt-1和BDt+1的深度标准差;具体为,根据BDt-1中各像素的深度值计算BDt-1的深度标准差,根据BDt+1中各像素的深度值计算BDt+1的深度标准差。
根据计算的深度标准差,判断Ct中的该图像块是深度连续的图像块,还是深度不连续的图像块:若对于Ct中的一个图像块,Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块。比如,若BDt-1和BDt+1的深度标准差均小于设定阈值,则判断BCt为深度连续的图像块;否则,判断BCt为深度不连续的图像块。该设定阈值由本领域技术人员根据实际情况设定。
S204:针对深度连续的图像块和深度不连续的图像块采用不同方法进行运动补偿。
针对深度连续的图像块和深度不连续的图像块进行运动补偿的具体方法将在后续进行详细介绍。
S205:将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间,实现立体视频中的彩色视频帧率的提升。
上述步骤S204中提到的针对深度连续的图像块采用的运动补偿方法,可以是和现有技术对图像块进行运动补偿的方法一样:将上述步骤S202中计算出的深度连续的图像块的估计运动向量,确定为最终的该图像块的运动向量;根据确定的最终的该图像块的运动向量对该图像块进行运动补偿。
作为一种更优的实施方式,针对深度连续的图像块,本发明还可对估计运动向量进行优化后,再进行运动补偿,具体流程如图3a所示,包括如下步骤:
S301:对上述步骤S202中计算出的深度连续的图像块的估计运动向量进行初步优化。
具体地,针对Ct中的一个深度连续的图像块,找出满足以下条件的运动向量:对于第一范围内的运动向量,该深度连续的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高(或匹配度最高);将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量。其中,所述第一范围根据Ct中的深度连续的图像块的估计运动向量以及设定的向量调整步长决定。
例如,若Ct中的图像块BCt为深度连续的图像块,则可以根据如下公式3得到BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式3)
公式3中,(v1x/2,v1y/2)为初步优化后的运动向量,S1为所述第一范围,(wx/2,wy/2)为所述第一范围内的运动向量,表示在S1内查找出使得argmin后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值(即RGB值),表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值(即RGB值)。其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。例如,设定的第一向量调整步长为a,则第一范围S1中wx的取值范围为wy的取值范围为第一向量调整步长由本领域技术人员根据实际情况设置,可以是1、2或其它数值。
作为一种更优的实施方式,还可考虑对初步优化后的运动向量作二次优化,具体包括以下步骤。
初步优化中,由于在第一范围内查找到使得Ct-1和Ct+1中对应的图像块的相似度最高的运动向量,因此,该查找到的运动向量将比估计运动向量更为合理,而根据初步优化后的运动向量进行运动补偿可以得到更佳的图像质量。
S302:判断初步优化后的运动向量是否为可靠运动向量;若是,执行步骤S311;否则,执行步骤S321。
具体地,判断初步优化后的运动向量是否为可靠运动向量的方法为,对于深度连续的图像块,根据初步优化后的运动向量确定该图像块在Dt-1和Dt+1中对应的图像块,计算确定出的两个图像块的对应像素的深度绝对差之和。例如,若Ct中的图像块BCt为深度连续的图像块,则可以根据如下公式4计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式4)
公式4中,(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和。
若计算出的深度绝对差之和小于设定差值,则判断该深度连续的图像块初步优化后的运动向量为可靠运动向量,执行步骤S311,将初步优化后的运动向量确定为最终的该深度连续的图像块的运动向量;否则,判断该深度连续的图像块初步优化后的运动向量为不可靠运动向量,还需进一步优化,执行步骤S321。
S311:将初步优化后的运动向量确定为最终的该深度连续的图像块的运动向量后,跳转到步骤S331。
S321:对初步优化后的运动向量作二次优化。
具体地,对于深度连续的图像块,根据与其相邻的图像块的可靠运动向量,对该深度连续的图像块的初步优化后的运动向量作二次优化。例如图3b示出了与深度连续的图像块相邻的图像块,其中共包括8个图像块;其中,图像块1、2、4为深度连续的图像块(具体为深度连续前景图像块),图像块8、9也为深度连续的图像块(具体为深度连续背景图像块),图像块3、5、6、7为深度不连续的图像块。
例如,若Ct中的图像块BCt为深度连续的图像块,则可以根据如下公式5对其运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q     (公式5)
公式5中,N表示与BCt相邻的图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量。其中,wq根据第q个图像块与BCt的距离决定,具体可以是根据N中第q个图像块的中心点到BCt的中心点的距离决定,如公式6所示:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式6)
公式6中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标。
S322:将二次优化后的运动向量确定为最终的该深度连续的图像块的运动向量后,跳转到步骤S331。
S331:根据确定的最终的运动向量对该深度连续的图像块进行运动补偿。
具体地,若Ct中的图像块BCt为深度连续的图像块,则可以根据如下公式7对其进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 RGB t + 1 ( m - v x / 2 , n - v y / 2 )     (公式7)
公式7中,(vx/2,vy/2)为确定的最终的BCt的运动向量,表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct-1中对应的像素的色彩值(即RGB值),表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct+1中对应的像素的色彩值(即RGB值),为计算出的BCt中坐标为(m,n)的像素的色彩值(即RGB值)。
进一步,还可根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿;其中,所述Dt为对应于Ct的待插入深度视频帧;
若Ct中的图像块BCt为深度连续的图像块,则根据确定的最终的BCt的运动向量,对Dt中与BCt对应的图像块进行运动补偿的方法与上述类似,具体可以根据如下公式8进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )     (公式8)
公式8中,(vx/2,vy/2)为确定的最终的BCt的运动向量,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值。其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
具体地,对深度不连续的图像块进行运动补偿的方法为,对于所述深度不连续的图像块,分别根据其背景、前景运动向量对其背景部分和前景部分进行运动补偿;其具体方法的流程图如图4所示,包括如下步骤:
S401:对所述深度不连续的图像块运用前景匹配技术,估计得到前景运动向量。
具体地,根据深度不连续的图像块的估计运动向量,运用前景匹配技术计算得到前景运动向量;即该深度不连续的图像块的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高(或匹配度最高);其中,集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定。
例如,若Ct中的图像块BCt为深度不连续的图像块,则具体可以根据如下公式9计算BCt的前景运动向量:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) | (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为上述的第二范围,(wx/2,wy/2)为所述第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示集合P中图像块的各像素的坐标(集合P包含BCt,以及与BCt相邻的图像块中所有深度连续前景图像块),表示集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值(比如RGB值),示集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值(比如RGB值)。其中,第二范围S2根据BCt的估计运动向量以及设定的第二向量调整步长决定。例如,设定的第二向量调整步长为b,则第二范围S2中wx的取值范围为wy的取值范围为第二向量调整步长由本领域技术人员根据实际情况设置,可以是5、6、7或其它数值。
上述的深度连续前景图像块的判定方法将在后续进行详细介绍。
S402:判断所述前景运动向量是否等于0;若是,则执行步骤S411;否则,执行步骤S403。
具体地,判定上述计算出的前景运动向量是否等于0;若等于0,则说明该图像块中没有物体运动,即前景部分没有运动,因此不必对前景、背景部分分别进行运动补偿,执行步骤S411一律采用上述计算出的前景运动向量进行运动补偿即可;若不等于0,则说明该图像块中前景部分进行了运动,需要区分前景与背景部分后分别进行运动补偿,以获得较好的运动物体的边缘视觉效果。
S403:对所述深度不连续的图像块划分出背景部分和前景部分。
本步骤中,对所述深度不连续的图像块划分出背景部分和前景部分;一种简单的方法是:计算集合Q的深度平均值,将所述深度不连续的图像块中每个像素的深度值与集合Q的深度平均值进行比较;若像素的深度值大于集合Q的深度平均值,则该像素划分为背景部分;否则,该像素划分为前景部分。其中,集合Q中包括上述S401中提到的深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块,集合Q的深度平均值是对集合Q中的各图像块的深度平均值求平均后得到。
较佳地,另一种方法则是对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用现有技术的划分方法,即采用alphamatting(阿尔法通道抠图算法)的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分;由于alpha matting的块分割方法为本领域技术人员所熟知的技术,此处不再赘述。
S404:确定背景运动向量。
在划分背景部分和前景部分后,需要针对背景部分确定背景运动向量,一种简单的方法是将该深度不连续的图像块的估计运动向量确定为所述背景运动向量;
一种更优的方案是,对该深度不连续的图像块的估计运动向量进行优化后,再作为所述背景运动向量;与对深度不连续的图像块的估计运动向量的优化方法类似,也可对深度不连续的图像块的估计运动向量进行初步优化,和/或二次优化。对该深度不连续的图像块的估计运动向量的具体优化方法将在后续进行详细介绍。
S405:将所述前景运动向量作为所述前景部分的运动向量对前景部分进行运动补偿,根据确定的背景运动向量对背景部分进行运动补偿。
在本步骤中,根据前景运动向量对前景部分进行运动补偿的方法具体可以采用现有技术的运动补偿方法:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式10对其前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式10)
公式10中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值(即RGB值),表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值(即RGB值),为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值(即RGB值)。
类似地,根据背景运动向量对背景部分进行运动补偿的方法具体可以也采用现有技术的运动补偿方法:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式11对其背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式11)
公式11中,(vhx/2,vhy/2)为确定的BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值(比如RGB值),表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值(比如RGB值),为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值(比如RGB值)。
更优地,本发明提出了一种更为优化的运动补偿方法,可以应用于前景部分和背景部分的运动补偿方案,以获得补偿后质量更佳的图像效果:
更优地,若Ct中的图像块BCt为深度不连续的图像块,可以根据如下公式12对其前景部分进行运动补偿:
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式12)
公式12中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值。
公式12中的λfwd和λbwd值可以根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为确定的BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
更优地,可以根据如下公式14对BCt的背景部分进行运动补偿:
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式14)
公式14中,(vhx/2,vhy/2)为确定的BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值(比如RGB值),表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值(比如RGB值),为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值。
公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
进一步,在上述步骤S403对所述深度不连续的图像块划分出背景部分和前景部分后,还可对Dt中对应图像块进行运动补偿:类似地,若Ct中的图像块为深度不连续的图像块,则对Dt中对应图像块进行运动补偿的方法为:若Ct中的图像块BCt为深度不连续的图像块,则根据BCt的前景部分,确定出BDt图像块中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;其中,BDt为Dt中与BCt对应的图像块;之后,根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿。
具体地,根据BCt的前景运动向量对BDt的前景部分进行运动补偿可以采用现有技术的运动补偿方法:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式16对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式16)
公式16中,(vqx/2,vqy/2)为确定的最终的BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值。
类似地,根据BCt的背景运动向量对BDt的背景部分进行运动补偿可以采用现有技术的运动补偿方法:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式17对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式17)
公式17中,(vhx/2,vhy/2)为确定的最终的BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值。
作为一种更优的实施方式,也可根据如下公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式18)
公式18中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;公式18中的λfwd和λbwd值可以根据如上方程组13确定。
作为一种更优的实施方式,也可根据如下公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式19)
公式19中,(vhx/2,vhy/2)为确定的BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;公式19中的λfwd和λbwd值可以根据如上方程组15确定。
S411:根据所述前景运动向量对所述深度不连续的图像块进行运动补偿。
在本步骤中,根据前景运动向量对所述深度不连续的图像块进行运动补偿的方法具体可以采用现有技术的运动补偿方法:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式20对BCt进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式20)
公式20中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BCt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值(比如RGB值或其它色彩值),表示BCt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt中坐标为(m,n)的像素的色彩值。
更优地,也可根据如下公式21对BCt进行运动补偿:
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式21)
公式21中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BCt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt中坐标为(m,n)的像素的色彩值;公式21中的λfwd和λbwd值可以根据上述方程组13确定。
进一步,在上述步骤S402中若判断计算出的前景运动向量等于0;之后,还可对Dt中对应图像块进行运动补偿:可以采用现有技术对Dt中对应图像块进行运动补偿:比如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式22对BDt进行运动补偿;其中,BDt为Dt中与BCt对应的图像块。
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式22)
公式22中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BDt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值。
作为一种更优的实施方式,也可根据如下公式23对BDt进行运动补偿:
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式23)
公式23中,(vqx/2,vqy/2)为确定的BCt的前景运动向量,表示BDt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;公式23中的λfwd和λbwd值可以根据如上方程组13确定。
上述步骤S401中提到的深度连续前景图像块的判定方法,具体流程如图5所示,包括以下步骤:
S501:针对集合Q中每个图像块,计算该图像块的深度平均值。
具体地,集合Q中包括上述S401中提到的深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块。针对集合Q中每个图像块,分别计算各图像块的深度平均值。
S502:根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值。
具体地,对集合Q中的各图像块的深度平均值求平均,得到集合Q的深度平均值。
S503:针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较,根据比较结果判定该图像块是深度连续前景图像块还是深度连续背景图像块。
具体地,将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
上述步骤S404中,提到对该深度不连续的图像块的估计运动向量进行优化,将优化后的运动向量作为背景运动向量的具体方法,流程如图6所示,包括如下步骤:
S601:对上述步骤S202中计算出的深度不连续的图像块的估计运动向量进行初步优化。
具体地,对深度不连续的图像块的估计运动向量进行初步优化,与上述步骤S301中介绍的对深度连续的图像块的估计运动向量进行初步优化的方法一样:
针对Ct中的一个深度不连续的图像块,找出满足以下条件的运动向量:对于第一范围内的运动向量,该深度不连续的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高(或匹配度最高);将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量。其中,所述第一范围根据Ct中的深度不连续的图像块的估计运动向量以及设定的向量调整步长决定。
例如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式24得到BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式24)
公式24中,(v1x/2,v1y/2)为初步优化后的运动向量,S1为所述第一范围,(wx/2,wy/2)为所述第一范围内的运动向量,表示在S1内查找出使得argmin后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值(比如RGB值),表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值。其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。例如,设定的第一向量调整步长为a,则第一范围S1中wx的取值范围为wy的取值范围为第一向量调整步长由本领域技术人员根据实际情况设置,可以是1、2或其它数值。
作为一种更优的实施方式,还可考虑对初步优化后的运动向量作二次优化,具体包括以下步骤。
初步优化中,由于在第一范围内查找到使得Ct-1和Ct+1中对应的图像块的相似度最高的运动向量,因此,该查找到的运动向量将比估计运动向量更为合理,而根据初步优化后的运动向量进行运动补偿可以得到更佳的图像质量。
S602:判断步骤S601中初步优化后的运动向量是否为可靠运动向量;若是,执行步骤S611;否则,执行步骤S621。
具体地,判断初步优化后的运动向量是否为可靠运动向量的方法为,对于深度不连续的图像块,根据初步优化后的运动向量确定该图像块在Dt-1和Dt+1中对应的图像块,计算确定出的两个图像块的对应像素的深度绝对差之和。例如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式25计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式25)
公式25中,(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和。
若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量,执行步骤S611,将初步优化后的运动向量确定为最终的该深度连续的图像块的运动向量;否则,判断该深度连续的图像块初步优化后的运动向量为不可靠运动向量,还需进一步优化,执行步骤S621。
S611:将初步优化后的运动向量确定为该深度不连续的图像块的背景运动向量。
S621:对初步优化后的运动向量作二次优化。
具体地,对于深度不连续的图像块,根据与其相邻的深度连续背景图像块的可靠运动向量,对该深度不连续的图像块的初步优化后的运动向量作二次优化。如何判断图像块为深度连续背景图像块的方法已在上述如图5所示步骤中进行了详细介绍,此处不再赘述。
例如,若Ct中的图像块BCt为深度不连续的图像块,则可以根据如下公式26对其运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q     (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量。其中,wq根据第q个图像块与BCt的距离决定,具体可以是根据N中第q个图像块的中心点到BCt的中心点的距离决定,如公式27所示:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标。
S622:将二次优化后的运动向量确定为最终的该深度连续的图像块的背景运动向量。
本发明实施例根据以上的立体视频帧率提升方法,提供的立体视频帧率提升装置,如图7所示,包括:图像块运动向量确定模块701、图像块运动补偿模块702、视频帧插入模块703。
图像块运动向量确定模块701用于对于所述立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量;其中包括:对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量;
图像块运动补偿模块702用于针对Ct中的每个图像块,根据图像块运动向量确定模块701确定的该图像块的运动向量,对该图像块进行运动补偿;其中包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿;
视频帧插入模块703用于将各图像块经过图像块运动补偿补偿模块702运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧;其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧。
其中,图像块运动向量确定模块701具体包括:图像块判定单元711、第一图像块运动向量确定单元712、第二图像块运动向量确定单元713。
图像块判定单元711用于对Ct中的一个图像块进行双向运动估计后,计算出该图像块的估计运动向量;根据所述估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块;若Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块;
第一图像块运动向量确定单元712用于对于图像块判定单元711判定出的所述深度连续的图像块,将计算出的该图像块的估计运动向量,确定为最终的该图像块的运动向量,或将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量;
第二图像块运动向量确定单元713用于对于图像块判定单元711判定出的所述深度不连续的图像块划分出背景部分和前景部分后,确定的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;其中,所述集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定;以及,确定所述背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者为该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量。
其中,如图8所示,第二图像块运动向量确定单元713中具体包括:区域划分子单元801、前景运动向量确定子单元802、背景运动向量确定子单元803、深度连续前景图像块判定子单元804;其中,
区域划分子单元801用于对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用alpha matting的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分;
深度连续前景图像块判定子单元804,用于针对集合Q中每个图像块,计算该图像块的深度平均值;其中,所述集合Q为包括所述深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块的集合;根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值;针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较;将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
前景运动向量确定子单元802用于根据如下公式9针对区域划分子单元801划分出的前景部分计算所述前景运动向量:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为第二范围,(wx/2,wy/2)为第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示所述集合P中图像块的各像素的坐标,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,S2根据BCt的估计运动向量以及设定的第二向量调整步长决定;
背景运动向量确定子单元803针对区域划分子单元801划分出的背景部分确定其背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者,将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;其中,第一范围根据该深度不连续的图像块的估计运动向量以及设定的第一向量调整步长决定;或者,
背景运动向量确定子单元803将该深度不连续的图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式25计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |     (公式25)
公式25中,(m,n)表示该深度不连续的图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
背景运动向量确定子单元803若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量;否则,判断该深度不连续的图像块初步优化后的运动向量不是可靠运动向量;
背景运动向量确定子单元803若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式对初步优化后的运动向量作二次优化:根据如下公式26对所述初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q     (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量;其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式27决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2     (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;将经二次优化后得到的运动向量确定为最终的该图像块的运动向量。
上述的图像块运动补偿模块702内部结构,包括:第一图像块运动补偿单元721、第二图像块运动补偿单元722。
第一图像块运动补偿单元721用于对于所述深度连续的图像块,根据第一图像块运动向量确定单元712确定的该图像块的运动向量,对该图像块进行运动补偿;
第二图像块运动补偿单元722用于对于所述深度不连续的图像块,根据第二图像块运动向量确定单元713确定的所述深度不连续的图像块前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿。
第二图像块运动补偿单元722中具体包括前景运动补偿子单元、背景运动补偿子单元。
所述前景运动补偿子单元用于根据如下公式10或公式12对所述深度不连续的图像块的前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式10)
公式10中,(vqx/2,vqy/2)为所述深度不连续的图像块BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式12)
公式12中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
所述公式12中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元根据如下公式11或公式14对所述深度不连续的图像块的背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式11)
公式11中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式14)
公式14中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
所述公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
上述的图像块运动补偿模块702还包括:第三图像块运动补偿单元723、四图像块运动补偿单元724。
第三图像块运动补偿单元723用于对Ct中的深度连续的图像块,对Dt中对应该深度连续的图像块的图像块进行运动补偿
第四图像块运动补偿单元724用于对Ct中的深度不连续的图像块,对Dt中对应该深度不连续的图像块的图像块进行运动补偿;以及
所述视频帧插入模块703还用于将各图像块经过运动补偿的Dt作为深度视频插入帧插入到Dt-1和Dt+1之间。
上述的第三图像块运动补偿单元723具体用于:若BCt为Ct中的深度连续的图像块则根据如下公式8进行BCt运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )     (公式8)
公式8中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;其中,BDt为Dt中与BCt对应的图像块。
第四图像块运动补偿单元724具体用于:若BCt为Ct中的深度不连续的图像块,则根据BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿;其中,BDt为Dt中与BCt对应的图像块。
具体地,第四图像块运动补偿单元724内部结构如图9所示,包括:区域划分子单元901、前景运动补偿子单元902、背景运动补偿子单元903;
所述区域划分子单元901用于根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;
所述前景运动补偿子单元902具体用于针对区域划分子单元901划分出的前景部分,根据如下公式16或公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式16)
公式16中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式18)
公式18中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
所述公式18中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )     (方程组13)
方程组13中,MVt q为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元903用于针对区域划分子单元901划分出的背景部分,根据如下公式17或公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式17)
公式17中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式19)
公式19中,(vhx/2,vhy/2)为BCt的背景运动向量,示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
所述公式19中的λfwd和λbwd值根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )     (方程组15)
方程组15中,MVt h为BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块。
本发明实施例由于结合深度视频帧中的深度信息区分出深度连续的图像块和深度不连续的图像块,对深度不连续的图像块区分了背景部分和前景部分,并分别进行运动补偿,则作为运动物体的前景部分在进行运动补偿时,不会与背景部分混为一体,从而经运动补偿后的插入帧的图像中可以更好地划分出运动物体与背景部分的边缘,也就可以更好地防止运动物体出现边缘模糊的问题,从而提高插入帧的图像质量,也就提高了帧率提升后的视频质量。
进一步,本发明实施例中还对Ct中的图像块的运动向量进行了优化,并根据优化后的运动向量对图像块进行运动补偿,从而可以确定出质量更佳的图像。
进一步,本发明实施例中对深度不连续的图像块的运动补偿方法进行了改进,而不是简单地采用现有技术的补偿方法,通过结合深度信息与运动向量来确定是依据在前帧进行补偿、还是在后帧进行补偿,还是在前帧、在后帧各一半的方式进行补偿,从而使得补偿更为合理,确定出质量更佳的图像。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读取存储介质中,如:ROM/RAM、磁碟、光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (26)

1.一种立体视频帧率提升方法,包括:
对于所述立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量;其中,对于深度不连续的图像块,如下确定运动向量中的前景运动向量和背景运动向量:
对所述深度不连续的图像块划分出背景部分和前景部分后,确定的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;其中,所述集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定;
以及确定的背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者确定的背景运动向量为将该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量;
针对Ct中的每个图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;其中包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿;
将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧;
其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧。
2.如权利要求1所述的方法,其特征在于,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,具体包括:
对Ct中的一个图像块进行双向运动估计后,计算出该图像块的估计运动向量;根据所述估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块;若Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块。
3.如权利要求2所述的方法,其特征在于,所述对于待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量,具体还包括:
对于所述深度连续的图像块,将计算出的该图像块的估计运动向量,确定为最终的该图像块的运动向量,或将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量。
4.如权利要求1所述的方法,其特征在于,所述深度连续前景图像块的判定方法包括:
针对集合Q中每个图像块,计算该图像块的深度平均值;其中,所述集合Q为包括所述深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块的集合;
根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值;
针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较;将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
5.如权利要求4所述的方法,其特征在于,所述前景运动向量具体根据如下公式9计算得到:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为第二范围,(wx/2,wy/2)为第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示所述集合P中图像块的各像素的坐标,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,S2根据BCt的估计运动向量以及设定的第二向量调整步长决定。
6.如权利要求1所述的方法,其特征在于,在所述对所述深度不连续的图像块划分出背景部分和前景部分之前,还包括:
对所述深度不连续的图像块运用前景匹配技术计算得到该图像块的前景运动向量;
判断所述前景运动向量是否等于0;若判断所述前景运动向量等于0,则根据所述前景运动向量对所述深度不连续的图像块进行运动补偿;以及
所述对于深度不连续的图像块,分别确定其背景部分和前景部分的运动向量具体为:
若判断所述前景运动向量不等于0,则对于该深度不连续的图像块,分别确定其背景部分和前景部分的运动向量。
7.如权利要求1所述的方法,其特征在于,所述对所述深度不连续的图像块划分出背景部分和前景部分具体包括:
对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用阿尔法通道抠图算法alpha matting的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分。
8.如权利要求1所述的方法,其特征在于,所述将该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为所述背景运动向量具体包括:
将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;其中,第一范围根据该深度不连续的图像块的估计运动向量以及设定的第一向量调整步长决定;或者,
将该深度不连续的图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式25计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |          (公式25)
公式25中,(m,n)表示该深度不连续的图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量;否则,判断该深度不连续的图像块初步优化后的运动向量不是可靠运动向量;
若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式对初步优化后的运动向量作二次优化:根据如下公式26对所述初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q               (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量;其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式27决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2          (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;
将经二次优化后得到的运动向量确定为最终的该图像块的运动向量。
9.如权利要求8所述的方法,其特征在于,所述将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高具体包括:
根据如下公式24得到该深度不连续的图像块BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 1 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |    (公式24)
公式24中,(v1x/2,v1y/2)为BCt的初步优化后的运动向量,S1为第一范围,(wx/2,wy/2)为第一范围内的运动向量,表示在S1内查找出使得argmin后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。
10.如权利要求1-3任一所述的方法,其特征在于,所述对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿具体包括:
根据如下公式10或公式12对所述深度不连续的图像块的前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )    (公式10)
公式10中,(vqx/2,vqy/2)为所述深度不连续的图像块BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )    (公式12)
公式12中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
所述公式12中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )             (方程组13)
方程组13中,为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
根据如下公式11或公式14对所述深度不连续的图像块的背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )    (公式11)
公式11中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )    (公式14)
公式14中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
所述公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )          (方程组15)
方程组15中,为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
11.如权利要求3所述的方法,其特征在于,所述将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量具体包括:
将该图像块的估计运动向量进行步初步优化的过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;其中,第一范围根据该图像块的估计运动向量以及设定的第一向量调整步长决定;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;或者,
将该图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式4计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |         (公式4)
公式4中,(m,n)表示该图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
若计算出的深度绝对差之和小于设定差值,则判断该图像块初步优化后的运动向量为可靠运动向量;否则,判断该图像块初步优化后的运动向量不是可靠运动向量;
若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式5对初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q                 (公式5)
公式5中,N表示与BCt相邻的图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量。其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2                (公式6)
公式6中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;
将经二次优化后得到的运动向量确定为最终的该图像块的运动向量。
12.如权利要求11所述的方法,其特征在于,所述将该图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高具体包括:
根据如下公式3得到该图像块BCt的初步优化后的运动向量:
( v 1 x / 2 , v 1 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 1 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |       (公式3)
公式3中,(v1x/2,v1y/2)为BCt的初步优化后的运动向量,S1为第一范围,(wx/2,wy/2)为第一范围内的运动向量,表示在S1内查找出使得arg min后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示BCt中各像素的坐标,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,第一范围S1根据BCt的估计运动向量以及设定的第一向量调整步长决定。
13.如权利要求1-3任一所述的方法,其特征在于,所述根据确定的该图像块的运动向量,对该图像块进行运动补偿,还包括:
对于所述深度连续的图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿具体为:
根据如下公式7对所述深度连续的图像块进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; RGB t + 1 ( m - v x / 2 , n - v y / 2 )    (公式7)
公式7中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct-1中对应的像素的色彩值,表示BCt的(m,n)像素基于运动向量(vx/2,vy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt中坐标为(m,n)的像素的色彩值(即RGB值)。
14.如权利要求1-3任一所述的方法,其特征在于,在所述对于待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量后,还包括:
根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿;其中,所述Dt为对应于Ct的待插入深度视频帧;
将各图像块经过运动补偿的Dt作为深度视频插入帧插入到Dt-1和Dt+1之间。
15.如权利要求14所述的方法,其特征在于,所述根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿,具体包括:
若Ct中的图像块为深度连续的图像块BCt,则对Dt中对应BCt的图像块进行运动补偿的方法为:根据如下公式8进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )            (公式8)
公式8中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;其中,BDt为Dt中与BCt对应的图像块。
16.如权利要求14所述的方法,其特征在于,所述根据Ct中的每个图像块的运动向量,对Dt中对应图像块进行运动补偿,具体包括:
若Ct中的图像块为深度不连续的图像块BCt,则对Dt中对应BCt的图像块进行运动补偿的方法为:
根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;
根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿。
17.如权利要求16所述的方法,其特征在于,所述根据BCt的前景运动向量对BDt的前景部分进行运动补偿具体包括:
根据如下公式16或公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )         (公式16)
公式16中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )    (公式18)
公式18中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
所述公式18中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )           (方程组13)
方程组13中,为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧。
18.如权利要求16所述的方法,其特征在于,所述根据BCt的背景运动向量对BDt的背景部分进行运动补偿具体包括:
根据如下公式17或公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )           (公式17)
公式17中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )    (公式19)
公式19中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
所述公式19中的λfwd和λbwd值根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )           (方程组15)
方程组15中,为BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块。
19.一种立体视频帧率提升装置,包括:
图像块运动向量确定模块,用于对于所述立体视频中待插入彩色视频帧Ct中的每个图像块,确定该图像块的运动向量;其中包括:对于深度不连续的图像块,确定的运动向量包括前景运动向量和背景运动向量;
图像块运动补偿补偿模块,用于针对Ct中的每个图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;其中包括:对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿;
视频帧插入模块,用于将各图像块经过运动补偿的Ct作为彩色视频插入帧插入到Ct-1和Ct+1之间;其中,Ct-1为Ct的在前彩色视频帧,Ct+1为Ct的在后彩色视频帧;
其中,所述深度不连续的图像块是根据该图像块在Dt-1和Dt+1中对应的图像块的深度信息进行判定的,Dt-1和Dt+1为所述立体视频中分别对应Ct-1和Ct+1的深度视频帧;
其中,所述图像块运动向量确定模块具体包括:
图像块判定单元,用于对Ct中的一个图像块进行双向运动估计后,计算出该图像块的估计运动向量;根据所述估计运动向量确定该图像块在Dt-1和Dt+1中对应的图像块;若Dt-1和Dt+1中对应的图像块的深度标准差均小于设定阈值,则判断Ct中的该图像块为深度连续的图像块;否则,判断Ct中的该图像块为深度不连续的图像块;
第一图像块运动向量确定单元,用于对于所述深度连续的图像块,将计算出的该图像块的估计运动向量,确定为最终的该图像块的运动向量,或将该图像块的估计运动向量经初步优化、或二次优化后得到的运动向量确定为最终的该图像块的运动向量;
第二图像块运动向量确定单元,用于对所述深度不连续的图像块划分出背景部分和前景部分后,确定的前景运动向量为满足以下条件的运动向量:对于第二范围内的运动向量,集合P中的图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;其中,所述集合P具体为包含该深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块中所有深度连续前景图像块的集合;第二范围根据该深度不连续的图像块的估计运动向量以及设定的第二向量调整步长决定;以及,确定所述背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者为该深度不连续的图像块的估计运动向量经初步优化、或二次优化后得到的运动向量。
20.如权利要求19所述的装置,其特征在于,第二图像块运动向量确定单元具体包括:区域划分子单元、前景运动向量确定子单元、背景运动向量确定子单元、深度连续前景图像块判定子单元;其中,
所述前景运动向量确定子单元,用于根据如下公式9计算所述前景运动向量:
( v 2 x / 2 , v 2 y / 2 ) = arg min ( w x / 2 , w y / 2 ) &Element; s 2 &Sigma; ( m , n ) | RGB t - 1 ( m + w x / 2 , n + w y / 2 ) - RGB t + 1 ( m - w x / 2 , n - w y / 2 ) |     (公式9)
公式9中,(v2x/2,v2y/2)为计算出的所述深度不连续的图像块BCt的前景运动向量,S2为第二范围,(wx/2,wy/2)为第二范围内的运动向量,表示在S2内查找出使得后面的表达式计算值最小的(wx/2,wy/2),(m,n)表示所述集合P中图像块的各像素的坐标,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct-1中对应的像素的色彩值,表示所述集合P中图像块的(m,n)像素基于运动向量(wx/2,wy/2)在Ct+1中对应的像素的色彩值;其中,S2根据BCt的估计运动向量以及设定的第二向量调整步长决定;
所述区域划分子单元,用于对所述深度不连续的图像块,以及与所述深度不连续的图像块相邻的图像块,运用alpha matting的块分割方法,将所述深度不连续的图像块划分出背景部分和前景部分;
所述背景运动向量确定子单元,确定所述背景运动向量为计算出的该深度不连续的图像块的估计运动向量,或者,将该深度不连续的图像块的估计运动向量进步初步优化过程中,找出满足以下条件的运动向量:对于第一范围内的运动向量,该图像块基于该运动向量在Ct-1中对应的图像块与Ct+1中对应的图像块的相似度最高;将找出的运动向量作为对该图像块的估计运动向量进行初步优化后得到的运动向量;将经初步优化后得到的运动向量确定为最终的该图像块的运动向量;其中,第一范围根据该深度不连续的图像块的估计运动向量以及设定的第一向量调整步长决定;或者,
所述背景运动向量确定子单元将该深度不连续的图像块的估计运动向量进步初步优化后,判断初步优化后的运动向量是否为可靠运动向量:根据如下公式25计算出深度绝对差之和:
SADD = &Sigma; ( m , n ) | DE t - 1 ( m + v 1 x / 2 , n + v 1 y / 2 ) - DE t + 1 ( m - v 1 x / 2 , n - v 1 y / 2 ) |            (公式25)
公式25中,(m,n)表示该深度不连续的图像块BCt中各像素的坐标,表示BCt的(m,n)像素基于初步优化后的运动向量(v1x/2,v1y/2)在Dt-1中对应的像素的深度值,表示BCt的(m,n)像素基于运动向量(v1x/2,v1y/2)在Dt+1中对应的像素的深度值,SADD为计算出的深度绝对差之和;
所述背景运动向量确定子单元若计算出的深度绝对差之和小于设定差值,则判断该深度不连续的图像块初步优化后的运动向量为可靠运动向量;否则,判断该深度不连续的图像块初步优化后的运动向量不是可靠运动向量;
所述背景运动向量确定子单元若判断出不是可靠运动向量,则对初步优化后的运动向量进行二次优化:根据如下公式对初步优化后的运动向量作二次优化:根据如下公式26对所述初步优化后的运动向量作二次优化:
MV = &Sigma; N ( w q &times; MV q &prime; ) &Sigma; N w q                  (公式26)
公式26中,N表示与BCt相邻的深度连续背景图像块中,运动向量为可靠运动向量的图像块的集合;MV′q表示N中第q个图像块的可靠运动向量,wq为MV′q的权重,MV表示BCt的二次优化后的运动向量;其中,wq根据第q个图像块与BCt的距离决定,具体根据如下公式27决定:
w q = e - ( i 0 - i 0 q ) 2 + ( j 0 - j 0 q ) 2        (公式27)
公式27中,(i0,j0)为BCt的中心点的坐标,(i0q,j0q)为N中第q个图像块的中心点的坐标;将经二次优化后得到的运动向量确定为最终的该图像块的运动向量;
所述深度连续前景图像块判定子单元,用于针对集合Q中每个图像块,计算该图像块的深度平均值;其中,所述集合Q为包括所述深度不连续的图像块,以及与该深度不连续的图像块相邻的图像块的集合;根据计算出的集合Q中的各图像块的深度平均值,计算集合Q的深度平均值;针对集合Q中每个深度连续的图像块,将该图像块的深度平均值分别与集合Q的深度平均值进行比较;将深度平均值小于所述集合Q的深度平均值的深度连续的图像块判定为深度连续前景图像块,将深度平均值大于、等于所述集合Q的深度平均值的深度连续的图像块判定为深度连续背景图像块。
21.如权利要求19所述的装置,其特征在于,所述图像块运动补偿模块具体包括:
第一图像块运动补偿单元,用于对于所述深度连续的图像块,根据确定的该图像块的运动向量,对该图像块进行运动补偿;
第二图像块运动补偿单元,用于对于所述深度不连续的图像块,根据其前景运动向量和背景运动向量分别对其前景部分和背景部分进行运动补偿。
22.如权利要求21所述的装置,其特征在于,第二图像块运动补偿单元具体包括:前景运动补偿子单元、背景运动补偿子单元;
所述前景运动补偿子单元用于根据如下公式10或公式12对所述深度不连续的图像块的前景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式10)
公式10中,(vqx/2,vqy/2)为所述深度不连续的图像块BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式12)
公式12中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct-1中对应的像素的色彩值,表示BCt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的前景部分中坐标为(m,n)的像素的色彩值;
所述公式12中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )          (方程组13)
方程组13中,为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元根据如下公式11或公式14对所述深度不连续的图像块的背景部分进行运动补偿:
RGB t ( m , n ) = 1 2 &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )     (公式11)
公式11中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
RGB t ( m , n ) = &lambda; fwd &times; RGB t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; RGB t + 1 ( m - vh x / 2 , n - vh y / 2 )    (公式14)
公式14中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct-1中对应的像素的色彩值,表示BCt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Ct+1中对应的像素的色彩值,为计算出的BCt的背景部分中坐标为(m,n)的像素的色彩值;
所述公式14中的λfwd和λbwd值可以根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )           (方程组15)
方程组15中,为确定的BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块;Dt为对应于Ct的待插入深度视频帧。
23.如权利要求21所述的装置,其特征在于,所述图像块运动补偿模块还包括:
第三图像块运动补偿单元,用于对Ct中的深度连续的图像块,对Dt中对应该深度连续的图像块的图像块进行运动补偿
第四图像块运动补偿单元,用于对Ct中的深度不连续的图像块,对Dt中对应该深度不连续的图像块的图像块进行运动补偿;以及
所述视频帧插入模块还用于将各图像块经过运动补偿的Dt作为深度视频插入帧插入到Dt-1和Dt+1之间。
24.如权利要求23所述的装置,其特征在于,
第三图像块运动补偿单元具体根据如下公式8进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + v x / 2 , n + v y / 2 ) + 1 2 &times; DE t + 1 ( m - v x / 2 , n - v y / 2 )          (公式8)
公式8中,(vx/2,vy/2)为确定的最终的所述深度连续的图像块BCt的运动向量,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt-1中对应的像素的深度值,表示BDt的(m,n)像素基于运动向量(vx/2,vy/2)在Dt+1中对应的像素的深度值,为计算出的BDt中坐标为(m,n)的像素的深度值;其中,BDt为Dt中与BCt对应的图像块。
25.如权利要求23所述的装置,其特征在于,第四图像块运动补偿单元具体用于根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;根据BCt的前景运动向量对BDt的前景部分进行运动补偿;根据BCt的背景运动向量对BDt的背景部分进行运动补偿;其中,BDt为Dt中与BCt对应的图像块。
26.如权利要求25所述的装置,其特征在于,第四图像块运动补偿单元包括:区域划分子单元、前景运动补偿子单元、背景运动补偿子单元;
所述区域划分子单元用于根据Ct中的深度不连续的图像块BCt的前景部分,确定出Dt中对应图像块BDt中对应的前景部分;根据BCt的背景部分,确定出BDt图像块中对应的背景部分;
所述前景运动补偿子单元具体用于根据如下公式16或公式18对BDt的前景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + 1 2 &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )            (公式16)
公式16中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vq x / 2 , n + vq y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vq x / 2 , n - vq y / 2 )     (公式18)
公式18中,(vqx/2,vqy/2)为BCt的前景运动向量,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt-1中对应的像素的深度值,表示BDt前景部分中的(m,n)像素基于前景运动向量(vqx/2,vqy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的前景部分中坐标为(m,n)的像素的深度值;
所述公式18中的λfwd和λbwd值根据如下方程组13确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t q &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t q &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t q &CenterDot; V depth = 0 )         (方程组13)
方程组13中,为BCt的前景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块,Dt;Dt为对应于Ct的待插入深度视频帧;
所述背景运动补偿子单元用于根据如下公式17或公式19对BDt的背景部分进行运动补偿:
DE t ( m , n ) = 1 2 &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + 1 2 &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )         (公式17)
公式17中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
DE t ( m , n ) = &lambda; fwd &times; DE t - 1 ( m + vh x / 2 , n + vh y / 2 ) + &lambda; bwd &times; DE t + 1 ( m - vh x / 2 , n - vh y / 2 )    (公式19)
公式19中,(vhx/2,vhy/2)为BCt的背景运动向量,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt-1中对应的像素的深度值,表示BDt背景部分中的(m,n)像素基于背景运动向量(vhx/2,vhy/2)在Dt+1中对应的像素的深度值,为计算出的BDt的背景部分中坐标为(m,n)的像素的深度值;
所述公式19中的λfwd和λbwd值根据如下方程组15确定:
&lambda; fwd = 1 , &lambda; bwd = 0 ; ( MV t h &CenterDot; V depth < 0 ) &lambda; fwd = 0 , &lambda; bwd = 1 ; ( MV t h &CenterDot; V depth > 0 ) &lambda; fwd = 1 2 , &lambda; bwd = 1 2 ; ( MV t h &CenterDot; V depth = 0 )            (方程组15)
方程组15中,为BCt的背景运动向量,Vdepth为图像块BDt的深度分布向量;BDt的深度分布向量为,以BDt图像块的深度值的质心为起点,BDt图像块的几何中心为终点所构成的向量;其中,BDt为Dt中与BCt对应的图像块。
CN201310073131.8A 2013-03-07 2013-03-07 立体视频帧率提升方法和装置 Active CN103167304B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310073131.8A CN103167304B (zh) 2013-03-07 2013-03-07 立体视频帧率提升方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310073131.8A CN103167304B (zh) 2013-03-07 2013-03-07 立体视频帧率提升方法和装置

Publications (2)

Publication Number Publication Date
CN103167304A CN103167304A (zh) 2013-06-19
CN103167304B true CN103167304B (zh) 2015-01-21

Family

ID=48590006

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310073131.8A Active CN103167304B (zh) 2013-03-07 2013-03-07 立体视频帧率提升方法和装置

Country Status (1)

Country Link
CN (1) CN103167304B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103888767B (zh) * 2014-03-31 2017-07-28 山东大学 Umh块匹配运动估计与光流场运动估计相结合的一种帧率提升方法
CN105915881B (zh) * 2016-05-06 2017-12-01 电子科技大学 一种基于显著性检测的立体视频帧率提升方法
CN106954076B (zh) * 2017-03-13 2018-01-12 济南大学 一种基于视点间关系的多视点视频帧插入方法
CN112995678B (zh) * 2021-02-22 2022-10-25 深圳创维-Rgb电子有限公司 一种视频运动补偿方法、装置及计算机设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008136286A1 (ja) * 2007-04-27 2008-11-13 Sharp Kabushiki Kaisha 画像処理装置及び方法、画像表示装置及び方法
CN102761765A (zh) * 2012-07-16 2012-10-31 清华大学 一种用于三维立体视频的深度快速插帧方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008136286A1 (ja) * 2007-04-27 2008-11-13 Sharp Kabushiki Kaisha 画像処理装置及び方法、画像表示装置及び方法
CN102761765A (zh) * 2012-07-16 2012-10-31 清华大学 一种用于三维立体视频的深度快速插帧方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
利用边缘像素深度特性的深度估计方法;刘晓仙等;《西安电子科技大学学报》;20111031;第38卷(第05期);第73-78页 *
基于运动补偿的帧率提升算法的研究;高欣;《天津大学》;20100630;全文 *

Also Published As

Publication number Publication date
CN103167304A (zh) 2013-06-19

Similar Documents

Publication Publication Date Title
US10540590B2 (en) Method for generating spatial-temporally consistent depth map sequences based on convolution neural networks
US9053575B2 (en) Image processing apparatus for generating an image for three-dimensional display
US8953874B2 (en) Conversion of monoscopic visual content using image-depth database
US9237326B2 (en) Imaging system and method
US9361699B2 (en) Imaging system and method
CN103167304B (zh) 立体视频帧率提升方法和装置
US20070064803A1 (en) Adaptive motion search range
CN102881018B (zh) 一种图像深度图生成方法
CN103440664B (zh) 一种生成高分辨率深度图的方法、系统及计算设备
CN103888767B (zh) Umh块匹配运动估计与光流场运动估计相结合的一种帧率提升方法
CN101873509B (zh) 消除深度图序列背景和边缘抖动的方法
US20060285595A1 (en) Intermediate vector interpolation method and three-dimensional (3D) display apparatus performing the method
US20120098932A1 (en) Disparity estimation system, apparatus, and method for estimating consisten disparity from multi-viewpoint video
CN102985949B (zh) 使用背景像素扩大和背景优先块匹配的多视图绘制设备和方法
US20120002862A1 (en) Apparatus and method for generating depth signal
CN105069804A (zh) 基于智能手机的三维模型扫描重建方法
US20170064279A1 (en) Multi-view 3d video method and system
CN101790103A (zh) 一种视差计算方法及装置
CN103260032B (zh) 一种立体视频深度图序列的帧率提升方法
CN102368826A (zh) 双视点视频到多视点视频的实时自适应生成方法
EP2326096A2 (en) 3D Image Display Apparatus and Display Method
US20130135430A1 (en) Method for adjusting moving depths of video
EP2391135B1 (en) Method and device for processing depth image sequence
CN101945299B (zh) 一种基于拍摄设备阵列的动态场景深度恢复方法
US20170309055A1 (en) Adjusting parallax of three-dimensional display material

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant