CN106791279B - 基于遮挡检测的运动补偿方法及系统 - Google Patents
基于遮挡检测的运动补偿方法及系统 Download PDFInfo
- Publication number
- CN106791279B CN106791279B CN201611262019.9A CN201611262019A CN106791279B CN 106791279 B CN106791279 B CN 106791279B CN 201611262019 A CN201611262019 A CN 201611262019A CN 106791279 B CN106791279 B CN 106791279B
- Authority
- CN
- China
- Prior art keywords
- block
- frame
- interpolation
- processed
- motion vector
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 39
- 239000013598 vector Substances 0.000 claims abstract description 170
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000007781 pre-processing Methods 0.000 claims description 11
- 125000001475 halogen functional group Chemical group 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/14—Picture signal circuitry for video frequency region
- H04N5/144—Movement detection
- H04N5/145—Movement estimation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Television Systems (AREA)
Abstract
本发明涉及一种基于遮挡检测的运动补偿方法及系统,通过运动估计得到前向运动矢量和后向运动矢量,对显露/遮挡区域进行检测;根据运动矢量到达插值帧的位置与待处理块的重叠面积计算显露/遮挡概率并计算插值权重;根据前一帧和当前帧各自对应的前、后向运动矢量,以及显露/遮挡区域检测结果,计算得到插值帧的运动矢量;通过插值帧运动矢量的一致性与前面所述的插值权重,对显露/遮挡区域与背景的交界处进行检测并校正其插值权重;通过插值得到逐像素的插值权重;根据插值帧运动矢量和像素插值权重插值出中间帧,得到最终帧率提升后的视频。提高了显露/遮挡区域检测的精确度,明显减轻了运动补偿图像中的halo现象。
Description
技术领域
本发明涉及图像处理领域,具体涉及一种基于遮挡检测的运动补偿方法及系统。
背景技术
由于液晶显示器的保持型显示特性,其在播放运动画面时会出现运动模糊和抖动现象。通过运动补偿技术对视频帧率进行提升,可以减轻上述失真。
由于图像中不同区域的运动差异,形成了显露区域和遮挡区域,这些区域只存在于相邻两帧的一帧当中,使用传统的基于前后两帧的运动估计方法,可能会造成显露/遮挡区域的运动矢量估计错误以及运动补偿错误,在物体周围出现光晕效应,称为halo。
现有的遮挡检测的方法主要是利用前向运动估计和后向运动估计得到的两场运动矢量场,或是更多的运动矢量场,通过比较匹配误差的大小,或是邻域内运动矢量的相对大小关系,或是运动矢量到达插值帧上的位置等方法检测出显露/遮挡区域。虽然这些方法可以检测出大部分显露/遮挡区域,但是由于这些方法都是基于块的方法,在显露/遮挡区域与背景的交界处,可能存在显露/遮挡区域在交界块中占的比例较小,导致该块被检测成正常区域(不是显露/遮挡的区域),造成运动补偿后在显露/遮挡与背景的交界处存在一圈halo。即使采用后处理滤波等方式,也只能减轻上述halo效应,而不能完全去除。
发明内容
本发明为了解决现有技术中的上述问题,提出一种基于遮挡检测的运动补偿方法及系统,提高了显露/遮挡区域检测的精确度,明显减轻了运动补偿图像中的halo现象。
本发明提出一种基于遮挡检测的运动补偿方法,包括以下步骤:
步骤1,进行运动估计,生成前向运动矢量和后向运动矢量;
步骤2,进行遮挡检测,检测插值帧上的显露块与遮挡块;
步骤3,计算插值帧中块的显露、遮挡概率并生成插值权重;
步骤4,生成插值帧的运动矢量;
步骤5,对遮挡区域与背景的边界块的插值权重进行校正;
步骤6,计算插值帧中像素的插值权重;
步骤7,进行运动补偿,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量,插值出中间帧,从而得到帧率提升后的视频。
优选的,所述运动估计在当前帧和后一帧之间进行,通过前向运动估计得到当前帧的前向运动矢量,通过后向运动估计得到后一帧的后向运动矢量。
优选的,步骤2中所述遮挡检测在前一帧和当前帧之间进行,具体方法为:
步骤21,计算前一帧的前向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为显露块,否则待处理块为正常块;
步骤22,计算当前帧的后向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为被遮挡块,否则待处理块为正常块;
步骤23,根据步骤21和步骤22的检测结果,将插值帧上所有的待处理块进行分类:
若g=0且h=0,则为正常块;
若g=0且h=-1,则为被遮挡块;
若g=1且h=0,则为显露块;
若g=1且h=-1,统计其邻域内块的分类情况,若被遮挡块的数目大于显露块的数目,则确定其为被遮挡块,否则确定其为显露块;
其中,g表示由前向运动矢量确定的块分类,h表示由后向运动矢量确定的块分类,0表示正常块,-1表示被遮挡块,1表示显露块;
优选的,步骤3所述插值权重,指运动补偿时前一帧fn-1所占的权重。生成插值权重的具体方法为:
步骤31,根据前一帧fn-1的前向运动矢量计算出插值帧上待处理块的显露概率occprobUncover;
步骤32,根据当前帧fn的后向运动矢量计算出插值帧上待处理块的被遮挡概率occprobCover;
步骤33,根据遮挡区域的检测结果,结合计算出的显露概率与被遮挡概率,计算出插值帧上待处理块的插值权重,
其中,w(C)为待处理块C的插值权重,α为时间域上插值帧到当前帧的距离,occ(C)为待处理块C的遮挡检测结果,occ(C)=1为显露块,occ(C)=0为正常块,occ(C)=-1为被遮挡块。
优选的,计算显露概率与被遮挡概率的方法为:
对插值帧上待处理块周围的重叠面积进行预处理,从预处理后的重叠面积中取最大值,根据最大重叠面积计算出待处理块的显露概率或被遮挡概率;
计算显露概率时,所述预处理为:对于前一帧fn-1的前向运动矢量,若两个块在fn-1上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将这两个块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值;
计算被遮挡概率时,所述预处理为:对于当前帧fn的后向运动矢量,若两个块在fn上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将两个这块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值。
优选的,步骤4所述生成插值帧的运动矢量,具体为:
步骤41,若插值帧上待处理块的遮挡检测结果为正常块,则选择到达该块重叠面积最大的前一帧的前向运动矢量或当前帧的后向运动矢量;
步骤42,若插值帧上待处理块的遮挡检测结果为遮挡块,则选择反向延长线到达该块重叠面积最大的前一帧的后向运动矢量;
步骤43,若插值帧上待处理块的遮挡检测结果为显露块,则选择反向延长线到达该块重叠面积最大的当前帧的前向运动矢量。
优选的,步骤5所述对遮挡区域与背景的边界块的插值权重进行校正,具体为:
步骤51,判断插值帧上待处理块邻域内运动矢量的一致性,邻域内运动矢量的一致性使用邻域内运动矢量的最大差异表征,两个运动矢量(dxi,dxi)和(dxj,dyj)的差异mvdiffij为:
mvdiffij=|dxi-dxj|+|dyi-dyj|,
待处理块邻域Ω内的运动矢量一致性等于:
其中,T为预设的阈值;
步骤52,统计出待处理块邻域内显露块的数目numUncover和被遮挡块的数目numCover;
步骤53,通过判断待处理块邻域内运动矢量的一致性,以及显露块与被遮挡块的数量,来决定待处理块是否位于遮挡区域与背景的边界:
若mvconsist=1,numCover>0,numCover>numUncover,或mvconsist=1,numUncover>0,numUncover>numCover,则待处理块位于遮挡区域与背景的边界;
步骤54,对位于遮挡区域与背景边界的待处理块的插值权重进行校正:
其中,wij为待处理块C邻域内块的插值权重,w(C)为待处理块C的插值权重。
优选的,步骤6所述计算插值帧中像素的插值权重,具体为:
令每个块的中心点的插值权重等于块的插值权重,待处理像素的插值权重通过计算与其最邻近的四个块的插值权重双线性插值得到。
优选的,步骤7中所述运动补偿在前一帧和当前帧之间进行,补偿得到前一帧和当前帧之间的插值帧;待插值像素的运动补偿结果为:
fn-α(i,j)=wpix·fn-1(i-(1-α)·dx,j-(1-α)·dy)+(1-wpix)·fn(i+α·dx,j+α·dy),
其中,i,j为待插值像素的坐标,wpix为像素的插值权重,dx,dy为待插值像素所在块的运动矢量,fn-1为前一个原始帧,fn为当前的原始帧,fn-α为插值帧,α为时间域上插值帧到当前帧的距离。
优选的,对于前向运动矢量,所述重叠面积的计算方法为:
其中,overlapArea为重叠面积;(xintp,yintp)为插值帧上待处理块的宽度;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x+dx·(1-α),y′=y+dy·(1-α);
α为时间域上插值帧到当前帧的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x-dx·α,y′=y-dy·α;
α为时间域上插值帧到当前帧的距离。
优选的,对于前向运动矢量,所述重叠面积的计算方法为:
overlapArea=|W+x'-xintp|+|H+y'-yintp|,-W<x'-xintp≤0且-H<y'-yintp≤0,
其中,overlapArea为重叠面积;(xintp,yintp)为插值帧上待处理块的宽度;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x+dx·(1-α),y′=y+dy·(1-α);
α为时间域上插值帧到当前帧的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x-dx·α,y′=y-dy·α;
α为时间域上插值帧到当前帧的距离。
本发明同时提出一种基于遮挡检测的运动补偿系统,根据上面所述的基于遮挡检测的运动补偿方法,包括:前向运动估计单元、后向运动估计单元、遮挡检测单元、插值权重计算单元、插值帧运动矢量生成单元、插值权重校正单元、像素插值权重计算单元、运动补偿单元,以及存储器;
所述前向运动估计单元,用于生成前向运动矢量;
所述后向运动估计单元,用于生成后向运动矢量;
所述遮挡检测单元,用于检测插值帧上的显露块与遮挡块;
所述插值权重计算单元,用于计算插值帧中块的显露、遮挡概率并生成插值权重;
所述插值帧运动矢量生成单元,用于生成插值帧的运动矢量;
所述插值权重校正单元,用于对遮挡区域与背景的边界块的插值权重进行校正;
所述像素插值权重计算单元,用于计算插值帧中像素的插值权重;
所述运动补偿单元,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量插值出中间帧,从而得到帧率提升后的视频;
所述存储器,用于存储前向运动矢量、后向运动矢量和原始帧;存储的前向运动矢量和后向运动矢量在遮挡检测时使用,存储的原始帧在运动补偿时使用。
本发明提出的基于遮挡检测的运动补偿系统及方法,通过遮挡检测、显露/遮挡概率计算、显露/遮挡边界插值权重校正等,能够准确地检测出显露/遮挡区域,结合相应的运动补偿方法,能够有效地减轻甚至去除插值帧中物体周围的halo。
附图说明
图1是本实施例中基于遮挡检测的运动补偿方法的流程示意图;
图2是本实施例中运动估计与遮挡区域的示意图;
图3是本实施例中前向运动矢量到达插值帧上待处理块附近的位置示意图;
图4是本实施例中遮挡概率与最大重叠面积的函数关系示意图;
图5是本实施例中重叠面积预处理的示意图;
图6是本实施例中插值帧运动矢量生成方法的示意图;
图7是本实施例中显露区域与正常区域边界位置的示意图;
图8是本实施例中像素插值权重计算方法的示意图;
图9是本实施例中基于遮挡检测的运动补偿系统的结构示意图。
具体实施方式
下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
本发明提出一种基于遮挡检测的运动补偿方法,如图1所示,包括以下步骤:
步骤1,进行运动估计,生成前向运动矢量和后向运动矢量;
步骤2,进行遮挡检测,检测插值帧上的显露块与遮挡块;
步骤3,计算插值帧中块的显露、遮挡概率并生成插值权重;
步骤4,生成插值帧的运动矢量;
步骤5,对遮挡区域与背景的边界块的插值权重进行校正;
步骤6,计算插值帧中像素的插值权重;
步骤7,进行运动补偿,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量,插值出中间帧,从而得到帧率提升后的视频。
本实施例中,所述运动估计在当前帧和后一帧之间进行,通过前向运动估计得到当前帧的前向运动矢量,通过后向运动估计得到后一帧的后向运动矢量。
本实施例中,步骤2中所述遮挡检测在前一帧和当前帧之间进行,如图2所示,对于fn-α上的显露区域,fn-1上的前向运动矢量mvFWn-1不会通过该区域;对于fn-α上的被遮挡区域,fn上的后向运动矢量mvBWn不会通过该区域。利用这一特性,对插值帧上的显露区域和被遮挡区域进行检测。具体方法为:
步骤21,计算前一帧的前向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为显露块,否则待处理块为正常块;
步骤22,计算当前帧的后向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为被遮挡块,否则待处理块为正常块;
步骤23,根据步骤21和步骤22的检测结果,将插值帧上所有的块进行分类:
若g=0且h=0,则为正常块;
若g=0且h=-1,则为被遮挡块;
若g=1且h=0,则为显露块;
若g=1且h=-1,统计其邻域内块的分类情况,若被遮挡块的数目大于显露块的数目,则确定其为被遮挡块,否则确定其为显露块;
其中,g表示由前向运动矢量确定的块分类,h表示由后向运动矢量确定的块分类,0表示正常块,-1表示被遮挡块,1表示显露块;
本实施例中,步骤3所述插值权重,指运动补偿时前一帧fn-1所占的权重;
生成插值权重的具体方法为:
步骤31,使用前一帧fn-1的前向运动矢量计算出插值帧上待处理块的显露概率occprobUncover;
步骤32,使用当前帧fn的后向运动矢量计算出插值帧上待处理块的被遮挡概率occprobCover;
步骤33,根据遮挡区域的检测结果,结合计算出的显露概率与被遮挡概率,计算出待处理块的插值权重,如公式(1)所示:
其中,w(C)为待处理块C的插值权重;α为时间域上插值帧到当前帧的距离,若前一帧到当前帧的距离为1,则0≤α≤1;occ(C)为待处理块C的遮挡检测结果,occ(C)=1为显露块,occ(C)=0为正常块,occ(C)=-1为被遮挡块。
本实施例中,计算显露概率与被遮挡概率的方法为:
对插值帧上待处理块周围的重叠面积进行预处理,从预处理后的重叠面积中取最大值,根据最大重叠面积计算出待处理块的显露概率或被遮挡概率;
计算显露概率时,所述预处理为:对于前一帧fn-1的前向运动矢量,若两个块在fn-1上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将这两个块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值;
计算被遮挡概率时,所述预处理为:对于当前帧fn的后向运动矢量,若两个块在fn上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将两个这块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值。
以后向运动矢量为例,根据待处理块上的最大重叠面积maxArea和图4所示的曲线,计算待处理块的被遮挡概率。图4中横坐标为最大重叠面积maxArea,纵坐标为待处理块的被遮挡概率prob。当maxArea小于阈值T1时,被遮挡概率为1,当maxArea大于阈值T2时,被遮挡概率为0,当T1≤maxArea≤T2时,被遮挡概率随maxArea的增加呈线性下降。fn-1上几个相邻块与待处理块的重叠面积可能出现图5所示的情况,相邻块与待处理块的重叠面积各只占块面积的1/4,若直接取最大重叠面积计算被遮挡概率,则可能认为待处理块的被遮挡概率较大,但实际上待处理块为正常块,因此需要进行前面所述的重叠面积预处理。
本实施例中,如图6所示,根据遮挡检测单元的结果occ,以及四场运动矢量场:前一帧的后向运动矢量mvBWn-1,前一帧的前向运动矢量mvFWn-1,当前帧的后向运动矢量mvBWn和当前帧的前向运动矢量mvFWn,计算出插值帧fn-α上的运动矢量。步骤4所述生成插值帧的运动矢量,具体为:
步骤41,若插值帧上待处理块的遮挡检测结果为正常块,则选择到达该块重叠面积最大的前一帧的前向运动矢量或当前帧的后向运动矢量;
步骤42,若插值帧上待处理块的遮挡检测结果为遮挡块,则选择反向延长线到达该块重叠面积最大的前一帧的后向运动矢量;
步骤43,若插值帧上待处理块的遮挡检测结果为显露块,则选择反向延长线到达该块重叠面积最大的当前帧的前向运动矢量。
本实施例中,步骤5所述对遮挡区域与背景的边界块的插值权重进行校正,如图7所示,遮挡区域与正常区域的边界有两种,一种是遮挡区域与前景物体的边界,一种是遮挡区域与背景的边界。由于插值权重是以块为单位计算的,一个块内可能同时含有遮挡区域与正常区域(前景或背景)。该块的运动补偿结果可能含有halo或出现前景缺失。即使通过插值将块的插值权重转换为像素的插值权重,可能减轻上述问题但仍然不能解决,尤其是遮挡区域与背景的边界造成的halo易被人眼察觉。插值权重校正单元用于对遮挡区域与背景的边界块的插值权重进行校正。通过判断插值帧上待处理块邻域内运动矢量的一致性,以及显露块与被遮挡块的数量,来决定待处理块是否位于遮挡区域与背景的边界。邻域内运动矢量的一致性可以使用邻域内运动矢量的最大差异表征,也可以使用邻域内运动矢量的方差表征,或是其他的方法。这里,采用邻域内运动矢量的最大差异。具体为:
步骤51,判断插值帧上待处理块邻域内运动矢量的一致性,邻域内运动矢量的一致性使用邻域内运动矢量的最大差异表征,两个运动矢量(dxi,dxi)和(dxj,dyj)的差异mvdiffij,如公式(2)所示:
mvdiffij=|dxi-dxj|+|dyi-dyj| (2)
待处理块邻域Ω内的运动矢量一致性,如公式(3)所示:
其中,T为预设的阈值;
步骤52,统计出待处理块邻域内显露块的数目numUncover和被遮挡块的数目numCover;
步骤53,通过判断待处理块邻域内运动矢量的一致性,以及显露块与被遮挡块的数量,来决定待处理块是否位于遮挡区域与背景的边界:
若mvconsist=1,numCover>0,numCover>numUncover,或mvconsist=1,numUncover>0,numUncover>numCover,则待处理块位于遮挡区域与背景的边界;
步骤54,对位于遮挡区域与背景边界的待处理块的插值权重进行校正,如公式(4)所示:
其中,wij为待处理块C邻域内块的插值权重,w(C)为待处理块C的插值权重。
本实施例中,步骤6所述计算插值帧中像素的插值权重,具体为:
令每个块的中心点的插值权重等于块的插值权重,待处理像素的插值权重通过计算与其最邻近的四个块的插值权重双线性插值得到。如图8所示,待处理块C中左上角的像素p,最邻近的四个块为待处理块左上角的三个块A,B,D与待处理块。像素p与块A的中心点的水平距离为a,垂直距离为b,像素p的插值权重如公式(5)所示:
其中,H为待处理块的高度,W为待处理块的宽度,wf为校正后的插值权重。
本实施例中,步骤7中所述运动补偿在前一帧和当前帧之间进行,补偿得到前一帧和当前帧之间的插值帧;待插值像素的运动补偿结果如公式(6)所示:
fn-α(i,j)=wpix·fn-1(i-(1-α)·dx,j-(1-α)·dy)+(1-wpix)·fn(i+α·dx,j+α·dy) (6)
其中,i,j为待插值像素的坐标,wpix为像素的插值权重,dx,dy为待插值像素所在块的运动矢量,fn-1为前一个原始帧,fn为当前的原始帧,fn-α为插值帧,α为时间域上插值帧到当前帧的距离。
本实施例中,如图3所示,对于前向运动矢量,所述重叠面积的计算方法如公式(7)所示:
其中,overlapArea为重叠面积;(xintp,yintp)为待处理块的宽度;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x+dx·(1-α),y′=y+dy·(1-α);
α为时间域上插值帧到当前帧的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x-dx·α,y′=y-dy·α;
α为时间域上插值帧到当前帧的距离。
本实施例中,对于前向运动矢量,所述重叠面积的计算方法还可以如公式(8)所示:
overlapArea=|W+x'-xintp|+|H+y'-yintp|,-W<x'-xintp≤0且-H<y'-yintp≤0 (8)
其中,overlapArea为重叠面积;(xintp,yintp)为待处理块的宽度;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x+dx·(1-α),y′=y+dy·(1-α);
α为时间域上插值帧到当前帧的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标:
x′=x-dx·α,y′=y-dy·α;
α为时间域上插值帧到当前帧的距离。
本发明同时提出一种基于遮挡检测的运动补偿系统,根据上面所述的基于遮挡检测的运动补偿方法,如图9所示,包括:前向运动估计单元、后向运动估计单元、遮挡检测单元、插值权重计算单元、插值帧运动矢量生成单元、插值权重校正单元、像素插值权重计算单元、运动补偿单元,以及存储器;
所述前向运动估计单元,用于生成前向运动矢量;
所述后向运动估计单元,用于生成后向运动矢量;
所述遮挡检测单元,用于检测插值帧上的显露块与遮挡块;
所述插值权重计算单元,用于计算插值帧中块的显露、遮挡概率并生成插值权重;
所述插值帧运动矢量生成单元,用于生成插值帧的运动矢量;
所述插值权重校正单元,用于对遮挡区域与背景的边界块的插值权重进行校正;
所述像素插值权重计算单元,用于计算插值帧中像素的插值权重;
所述运动补偿单元,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量插值出中间帧,从而得到帧率提升后的视频;
所述存储器,用于存储前向运动矢量、后向运动矢量和原始帧;存储的前向运动矢量和后向运动矢量在遮挡检测时使用,存储的原始帧在运动补偿时使用。
如图9所示,所述前向运动估计单元,生成当前帧fn的前向运动矢量mvFWn;所述后向运动估计单元,生成后一帧fn+1的后向运动矢量mvBWn+1,将mvFWn、mvBWn+1与fn一起保存于存储器当中,用于下一次遮挡检测和运动补偿;
所述遮挡检测单元,针对前一帧fn-1和当前帧fn进行遮挡检测,计算时要用到前一帧的前向运动矢量mvFWn-1和当前帧的后向运动矢量mvBWn,其中mvFWn-1从存储器中读取;
所述插值帧运动矢量生成单元,根据遮挡检测单元的结果occ,以及四场运动矢量场:前一帧的后向运动矢量mvBWn-1、前一帧的前向运动矢量mvFWn-1、当前帧的后向运动矢量mvBWn和当前帧的前向运动矢量mvFWn,计算出插值帧fn-α上的运动矢量mvIntpn-α。
所述插值权重校正单元,以插值权重计算单元的输出w和插值帧上的运动矢量mvIntpn-α作为输入,输出校正后的插值权重wf;
所述运动补偿单元,针对前一帧fn-1和当前帧fn生成插值帧fn-α,并且会用到所述插值帧运动矢量生成单元的输出mvIntpn-α和所述像素插值权重计算单元的输出wpix;其中0≤α≤1,fn-1也是从存储器中读取。
本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (11)
1.一种基于遮挡检测的运动补偿方法,其特征在于,包括以下步骤:
步骤1,进行运动估计,生成前向运动矢量和后向运动矢量;
步骤2,进行遮挡检测,检测插值帧上的显露块与遮挡块;
步骤3,计算插值帧中块的显露、遮挡概率并生成插值权重;
步骤4,根据遮挡检测结果以及四场运动矢量场:前一帧fn-1的后向运动矢量mvBWn-1、前一帧fn-1的前向运动矢量mvFWn-1、当前帧fn的后向运动矢量mvBWn和当前帧fn的前向运动矢量mvFWn,计算出插值帧上的运动矢量;
步骤5,对遮挡区域与背景的边界块的插值权重进行校正;
步骤6,计算插值帧中像素的插值权重;
步骤7,进行运动补偿,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量,插值出中间帧,从而得到帧率提升后的视频;
步骤6所述计算插值帧中像素的插值权重,具体为:
令每个块的中心点的插值权重等于块的插值权重,待处理像素的插值权重通过计算与其最邻近的四个块的插值权重双线性插值得到。
2.根据权利要求1所述的方法,其特征在于,所述运动估计在当前帧fn和后一帧fn+1之间进行,通过前向运动估计得到当前帧fn的前向运动矢量,通过后向运动估计得到后一帧fn+1的后向运动矢量;
其中,n为视频帧的序号。
3.根据权利要求2所述的方法,其特征在于,步骤2中所述遮挡检测在前一帧fn-1和当前帧fn之间进行,具体方法为:
步骤21,计算前一帧fn-1的前向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为显露块,否则待处理块为正常块;
步骤22,计算当前帧fn的后向运动矢量到达插值帧上待处理块的所有重叠面积,若所有重叠面积均小于预设的阈值,则待处理块为被遮挡块,否则待处理块为正常块;
步骤23,根据步骤21和步骤22的检测结果,将插值帧上所有的待处理块进行分类:
若g=0且h=0,则为正常块;
若g=0且h=-1,则为被遮挡块;
若g=1且h=0,则为显露块;
若g=1且h=-1,统计其邻域内块的分类情况,若被遮挡块的数目大于显露块的数目,则确定其为被遮挡块,否则确定其为显露块;
其中,g表示由前向运动矢量确定的块分类,h表示由后向运动矢量确定的块分类,0表示正常块,-1表示被遮挡块,1表示显露块。
4.根据权利要求3所述的方法,其特征在于,步骤3所述插值权重,指运动补偿时前一帧fn-1所占的权重;生成插值权重的具体方法为:
步骤31,根据前一帧fn-1的前向运动矢量计算出插值帧上待处理块的显露概率occprobUncover;
步骤32,根据当前帧fn的后向运动矢量计算出插值帧上待处理块的被遮挡概率occprobCover;
步骤33,根据遮挡区域的检测结果,结合计算出的显露概率与被遮挡概率,计算出插值帧上待处理块的插值权重:
其中,w(C)为待处理块C的插值权重,α为时间域上插值帧到当前帧fn的距离,occ(C)为待处理块C的遮挡检测结果,occ(C)=1为显露块,occ(C)=0为正常块,occ(C)=-1为被遮挡块。
5.根据权利要求4所述的方法,其特征在于,计算显露概率与被遮挡概率的方法为:
对插值帧上待处理块周围的重叠面积进行预处理,从预处理后的重叠面积中取最大值,根据最大重叠面积计算出待处理块的显露概率或被遮挡概率;
计算显露概率时,所述预处理为:对于前一帧fn-1的前向运动矢量,若两个块在fn-1上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将这两个块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值;
计算被遮挡概率时,所述预处理为:对于当前帧fn的后向运动矢量,若两个块在fn上位置相邻,且这两个块的运动矢量差异小于预设的阈值,且它们与待处理块的重叠面积都不为零,则将这两个块的重叠面积进行求和,作为这两个块与待处理块的重叠面积;否则,这两个块与待处理块的重叠面积均保持原值。
6.根据权利要求3所述的方法,其特征在于,步骤4所述生成插值帧的运动矢量,具体为:
步骤41,若插值帧上待处理块的遮挡检测结果为正常块,则选择到达该块重叠面积最大的前一帧fn-1的前向运动矢量或当前帧fn的后向运动矢量;
步骤42,若插值帧上待处理块的遮挡检测结果为遮挡块,则选择反向延长线到达该块重叠面积最大的前一帧fn-1的后向运动矢量;
步骤43,若插值帧上待处理块的遮挡检测结果为显露块,则选择反向延长线到达该块重叠面积最大的当前帧fn的前向运动矢量。
7.根据权利要求6所述的方法,其特征在于,步骤5所述对遮挡区域与背景的边界块的插值权重进行校正,具体为:
步骤51,判断插值帧上待处理块邻域内运动矢量的一致性,邻域内运动矢量的一致性使用邻域内运动矢量的最大差异表征,两个运动矢量(dxi,dxi)和(dxj,dyj)的差异mvdiffij为:
mvdiffij=|dxi-dxj|+|dyi-dyj|,
待处理块邻域Ω内的运动矢量一致性等于:
其中,T为预设的阈值;
步骤52,统计出待处理块邻域内显露块的数目numUncover和被遮挡块的数目numCover;
步骤53,通过判断待处理块邻域内运动矢量的一致性,以及显露块与被遮挡块的数量,来决定待处理块是否位于遮挡区域与背景的边界:
若mvconsist=1,numCover>0,numCover>numUncover,或mvconsist=1,numUncover>0,numUncover>numCover,则待处理块位于遮挡区域与背景的边界;
步骤54,对位于遮挡区域与背景边界的待处理块的插值权重进行校正:
其中,wij为待处理块C邻域内块的插值权重,w(C)为待处理块C的插值权重。
8.根据权利要求1所述的方法,其特征在于,步骤7中所述运动补偿在前一帧fn-1和当前帧fn之间进行,补偿得到前一帧fn-1和当前帧fn之间的插值帧;待插值像素的运动补偿结果为:
fn-α(i,j)=wpix·fn-1(i-(1-α)·dx,j-(1-α)·dy)+(1-wpix)·fn(i+α·dx,j+α·dy),
其中,i,j为待插值像素的坐标,wpix为像素的插值权重,dx,dy为待插值像素所在块的运动矢量,fn-1为前一个原始帧,fn为当前的原始帧,fn-α为插值帧,α为时间域上插值帧到当前帧fn的距离。
9.根据权利要求3所述的方法,其特征在于,所述重叠面积的计算方法为:
其中,overlapArea为重叠面积;(xintp,yintp)为插值帧上待处理块的左上角坐标;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标,x′=x+dx·(1-α),y′=y+dy·(1-α);α为时间域上插值帧到当前帧fn的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标,x′=x-dx·α,y′=y-dy·α;α为时间域上插值帧到当前帧fn的距离。
10.根据权利要求3所述的方法,其特征在于,所述重叠面积的计算方法为:
overlapArea=|W+x'-xintp|+|H+y'-yintp|,-W<x'-xintp≤0且-H<y'-yintp≤0,
其中,overlapArea为重叠面积;(xintp,yintp)为插值帧上待处理块的左上角坐标;W为待处理块的宽度;H为待处理块的高度;(dx,dy)为(x,y)的运动矢量;
对于前向运动矢量,(x',y')为前一帧fn-1上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标,x′=x+dx·(1-α),y′=y+dy·(1-α);α为时间域上插值帧到当前帧fn的距离;
对于后向运动矢量,(x',y')为当前帧fn上块的左上角坐标(x,y)到达插值帧fn-α上块的左上角坐标,x′=x-dx·α,y′=y-dy·α;α为时间域上插值帧到当前帧fn的距离。
11.一种基于遮挡检测的运动补偿系统,其特征在于,所述系统基于权利要求1~10中任一项所述的基于遮挡检测的运动补偿方法,包括:前向运动估计单元、后向运动估计单元、遮挡检测单元、插值权重计算单元、插值帧运动矢量生成单元、插值权重校正单元、像素插值权重计算单元、运动补偿单元,以及存储器;
所述前向运动估计单元,用于生成前向运动矢量;
所述后向运动估计单元,用于生成后向运动矢量;
所述遮挡检测单元,用于检测插值帧上的显露块与遮挡块;
所述插值权重计算单元,用于计算插值帧中块的显露、遮挡概率并生成插值权重;
所述插值帧运动矢量生成单元,用于生成插值帧的运动矢量;
所述插值权重校正单元,用于对遮挡区域与背景的边界块的插值权重进行校正;
所述像素插值权重计算单元,用于计算插值帧中像素的插值权重;
所述运动补偿单元,根据前后两帧原始帧、像素插值权重和插值帧的运动矢量插值出中间帧,从而得到帧率提升后的视频;
所述存储器,用于存储前向运动矢量、后向运动矢量和原始帧;存储的前向运动矢量和后向运动矢量在遮挡检测时使用,存储的原始帧在运动补偿时使用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611262019.9A CN106791279B (zh) | 2016-12-30 | 2016-12-30 | 基于遮挡检测的运动补偿方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611262019.9A CN106791279B (zh) | 2016-12-30 | 2016-12-30 | 基于遮挡检测的运动补偿方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106791279A CN106791279A (zh) | 2017-05-31 |
CN106791279B true CN106791279B (zh) | 2020-01-03 |
Family
ID=58953971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611262019.9A Active CN106791279B (zh) | 2016-12-30 | 2016-12-30 | 基于遮挡检测的运动补偿方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106791279B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110782415A (zh) * | 2019-11-01 | 2020-02-11 | 合肥图鸭信息科技有限公司 | 一种图像补全方法、装置及终端设备 |
CN111491204B (zh) * | 2020-04-17 | 2022-07-12 | Oppo广东移动通信有限公司 | 视频修复方法、装置、电子设备和计算机可读存储介质 |
CN111586321B (zh) * | 2020-05-08 | 2023-05-12 | Oppo广东移动通信有限公司 | 视频生成方法、装置、电子设备和计算机可读存储介质 |
CN111696037B (zh) * | 2020-05-25 | 2023-07-18 | Oppo广东移动通信有限公司 | 深度图像处理方法及装置、存储介质和电子设备 |
CN113873095A (zh) * | 2020-06-30 | 2021-12-31 | 晶晨半导体(上海)股份有限公司 | 运动补偿方法和模块、芯片、电子设备及存储介质 |
CN112700516B (zh) * | 2020-12-23 | 2023-12-01 | 杭州群核信息技术有限公司 | 基于深度学习的视频渲染方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616279A (zh) * | 2009-07-16 | 2009-12-30 | 宝利微电子系统控股公司 | 一种视频帧率上变换的方法和装置 |
CN102123235A (zh) * | 2011-03-24 | 2011-07-13 | 杭州海康威视软件有限公司 | 视频插值帧的生成方法及其装置 |
CN102447870A (zh) * | 2010-09-30 | 2012-05-09 | 宝利微电子系统控股公司 | 静止物体检测方法和运动补偿装置 |
CN105915835A (zh) * | 2016-02-05 | 2016-08-31 | 四川长虹电器股份有限公司 | 一种可硬件实现的帧频提升方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8724022B2 (en) * | 2009-11-09 | 2014-05-13 | Intel Corporation | Frame rate conversion using motion estimation and compensation |
US9013584B2 (en) * | 2010-03-01 | 2015-04-21 | Stmicroelectronics, Inc. | Border handling for motion compensated temporal interpolator using camera model |
-
2016
- 2016-12-30 CN CN201611262019.9A patent/CN106791279B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101616279A (zh) * | 2009-07-16 | 2009-12-30 | 宝利微电子系统控股公司 | 一种视频帧率上变换的方法和装置 |
CN102447870A (zh) * | 2010-09-30 | 2012-05-09 | 宝利微电子系统控股公司 | 静止物体检测方法和运动补偿装置 |
CN102123235A (zh) * | 2011-03-24 | 2011-07-13 | 杭州海康威视软件有限公司 | 视频插值帧的生成方法及其装置 |
CN105915835A (zh) * | 2016-02-05 | 2016-08-31 | 四川长虹电器股份有限公司 | 一种可硬件实现的帧频提升方法 |
Non-Patent Citations (1)
Title |
---|
适用于高清视频的帧率上变换算法研究与实现;韩睿;《中国博士学位论文全文数据库信息科技辑》;20150415;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106791279A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106791279B (zh) | 基于遮挡检测的运动补偿方法及系统 | |
US9202263B2 (en) | System and method for spatio video image enhancement | |
US8254439B2 (en) | Apparatus and methods for motion vector correction | |
US8340186B2 (en) | Method for interpolating a previous and subsequent image of an input image sequence | |
US7796191B1 (en) | Edge-preserving vertical interpolation | |
US20100067818A1 (en) | System and method for high quality image and video upscaling | |
JP2013225740A (ja) | 画像生成装置、画像表示装置及び画像生成方法並びに画像生成プログラム | |
JP2012129842A (ja) | フレーム補間装置及び方法、並びにプログラム及び記録媒体 | |
US10614554B2 (en) | Contrast adaptive video denoising system | |
US8406305B2 (en) | Method and system for creating an interpolated image using up-conversion vector with uncovering-covering detection | |
JP6160292B2 (ja) | 画像補正装置、撮像装置及び画像補正用コンピュータプログラム | |
TW200945904A (en) | Image interpolation with halo reduction | |
KR20080087589A (ko) | 모션 벡터에 기반한 적응적 프레임율 변환 방법 및 장치 및적응적 프레임율 변환 기능을 가지는 디스플레이 장치 | |
WO2010073177A1 (en) | Image processing | |
US9197891B1 (en) | Systems and methods for periodic structure handling for motion compensation | |
US20140147012A1 (en) | Method and apparatus for processing image data corresponding to temporally successive motions of object | |
TWI408621B (zh) | 影像插補處理裝置及其方法 | |
CN109325909B (zh) | 一种图像放大方法和图像放大装置 | |
US8787696B1 (en) | Method and apparatus for replacing a block of pixels in a digital image frame to conceal an error associated with the block of pixels | |
JP2009042897A (ja) | 画像処理装置及び画像処理方法 | |
EP2224738A1 (en) | Identifying occlusions | |
AU2004200237B2 (en) | Image processing apparatus with frame-rate conversion and method thereof | |
CN105100588A (zh) | 图像处理设备、成像设备以及图像处理方法 | |
JP4886479B2 (ja) | 動きベクトル補正装置、動きベクトル補正プログラム、補間フレーム生成装置及び映像補正装置 | |
JPWO2013011797A1 (ja) | 劣化復元システム、劣化復元方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |