CN106204567B - 一种自然背景视频抠图方法 - Google Patents
一种自然背景视频抠图方法 Download PDFInfo
- Publication number
- CN106204567B CN106204567B CN201610525850.2A CN201610525850A CN106204567B CN 106204567 B CN106204567 B CN 106204567B CN 201610525850 A CN201610525850 A CN 201610525850A CN 106204567 B CN106204567 B CN 106204567B
- Authority
- CN
- China
- Prior art keywords
- frame
- pixel
- image
- video
- trimap
- 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
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000003993 interaction Effects 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims description 39
- 230000003287 optical effect Effects 0.000 claims description 38
- 238000005070 sampling Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 18
- 230000011218 segmentation Effects 0.000 claims description 17
- 238000005457 optimization Methods 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 8
- 230000007704 transition Effects 0.000 claims description 7
- 238000009826 distribution Methods 0.000 claims description 6
- 230000009191 jumping Effects 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000009499 grossing Methods 0.000 claims description 5
- 230000002194 synthesizing effect Effects 0.000 claims description 4
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 230000000644 propagated effect Effects 0.000 abstract description 3
- 238000000638 solvent extraction Methods 0.000 abstract 1
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 3
- 239000002131 composite material Substances 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Image Analysis (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
本发明公开了一种自然背景视频抠图方法,包括步骤:1)关键帧自动选取,通过计算帧间差异自动地选取视频中的关键帧;2)关键帧Trimap图的生成,允许用户通过少量的手工交互提供有效信息,采用GrabCut分割算法与高斯模糊方法半自动地生成关键帧上的Trimap图;3)中间帧Trimap图的生成,利用双向光流传播生成中间各帧的Trimap图,并利用颜色、梯度等信息修正光流传播产生的误差;4)根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,将α掩码图与新的背景进行合成,得到新的合成视频。本发明方法具有速度快,用户交互少,最后得到的新合成视频具有良好的时间连贯性,真实感更强等优点。
Description
技术领域
本发明涉及视频处理的技术领域,尤其是指一种自然背景视频抠图方法。
背景技术
抠图是指从静态图像或者连续的视频序列中精确地将感兴趣的前景对象从背景中分离出来的过程。在照片编辑、影视动画制作、虚拟现实等领域有着广泛的应用。
具体地,通过估计图像中每个像素的颜色和透明度信息来从背景中提取前景对象。像素的透明度值被称为α值,而所有像素透明度组成的图像被称为α掩码图。抠图的形式化描述如下:
Iz=αzFz+(1-αz)Bz (1)
其中,Iz、Fz、Bz、αz分别为像素z的观察颜色、前景颜色、背景颜色、α值,αz∈[0,1],当αz=0时,像素z为确定背景,当αz=1时,像素z为确定前景,当αz∈(0,1)时,z为混合像素,亦即该像素的颜色值由前景和背景物体的共同作用得到。
抠图是一个欠约束问题,如果没有任何附加约束,公式(1)有无穷多解。因此,大多数抠图算法都要求用户通过交互的方式提供已知信息作为输入。如要求用户为每一幅图像指定确定的前景区、确定的背景区和待计算的未知区域,这种具有三种不同标记区域的三元图称为Trimap图。或者要求用简单的笔画标记出图像中的一部分前景像素和背景像素,如GrabCut抠图、简易抠图(Easy matting)等,但这种方式往往由于输入太少而效果不佳。
视频抠图则是将前景对象的提取技术应用到视频序列中。最终计算得到一个α掩码图序列,利用该序列可以合成新的视频。同样地,第t帧的像素z的颜色可表示如下:
视频抠图就是求解所有帧中像素的前景色背景色和透明度值
视频就是连续的图像序列,其每一帧都是一幅图像,且一般都是背景较为复杂的自然图像。直观意义上讲,我们需要对每一帧图像得到一个抠图结果,构成新的视频序列。这样的话,用户也就需要为视频的每一帧图像提供Trimap图等作为已知信息。
视频抠图的挑战是显而易见的:其一,视频是由很多帧图像组成的,数据量大,求解时需要提供更多的已知信息,即更多的用户交互,且对算法的时间性能提出更高要求。其二,人类视觉对时间连贯性敏感,抠图结果必须很好地保持时间上的连贯性,避免出现闪烁和抖动等不连续现象,而逐帧独立抠图显然难以保证得到的前景序列在视觉上保持空间以及时间上的连贯性。最后,需要解决高速运动和低时间分辨率之间的矛盾。标准摄像设备每秒拍摄30帧图像,对高速运动物体来说,这样的采样率过低,使得构造帧间对应关系变得更加困难。
目前大多数的视频抠图算法都是在已有的图像抠图算法的基础上进行相应的扩展和优化。如Chuang等提出的复杂场景的视频抠图及Apostoloff等提出的学习先验知识的贝叶斯视频抠图就是基于贝叶斯抠图;Lee等提出的时间连贯的视频抠图及Bai等提出的保持时间连贯的视频抠图则是基于鲁棒抠图、随机行走抠图。E.Shahrian等于2012年提出的综合颜色和纹理采样的图像抠图算法也被很好的扩展应用到其2014年提出的时间连贯和空间精确的视频抠图中。其中大部分现有的视频抠图算法都采用了以下流程框架:首先,对输入视频通过添加适当的用户交互产生每一帧的Trimap;然后,将图像抠图算法应用到视频的每一帧,产生α掩码图;最后,通过某些方式加强帧与帧之间的时间连贯性,得到最终的动态前景序列。
以上这些方法大都过多的依赖于用户交互,不但需要消耗较多的时间,还增加了视频抠图结果的不确定性。且一些方法在单帧上分别运用抠图算法,并未充分利用视频帧与帧之间的时空相关性,使得抠图结果缺少连贯性,在新的合成视频中出现闪烁和抖动的现象。
发明内容
本发明的目的在于克服现有技术的不足,提供一种自然背景视频抠图方法,可以有效的减少抠图过程中的用户交互,充分利用帧与帧之间的时空连贯性,提高视频抠图结果的时效性和准确性,使最后的合成视频更加的具有真实感。
为实现上述目的,本发明所提供的技术方案为:一种自然背景视频抠图方法,包括以下步骤:
1)关键帧自动选取,通过计算帧间差异自动地选取视频中的关键帧,并根据当前视频运动情况得到一个自适应的结果;
2)关键帧Trimap图的生成,允许用户通过手工交互提供有效信息,采用GrabCut分割算法与高斯模糊方法半自动地生成关键帧上的Trimap图;
3)中间帧Trimap图的生成,利用双向光流传播生成中间各帧的Trimap图,并利用颜色、梯度信息修正光流传播产生的误差;
4)根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,将α掩码图与新的背景进行合成,得到新的合成视频。
在步骤1)中,所述的计算帧间差异自动选取关键帧,具体如下:
假设{It:t=0,1...,F-1}为给定的视频序列,It为时刻t对应的视频帧,F为帧数;It(x,y)则为像素z=(x,y)处的亮度值,假定每帧有NR行、NC列;从第二帧开始,对于每一帧图像,按照下式计算前一帧到当前帧的亮度差异,得到帧差图像Dt;
Dt(x,y)=|It(x,y)-It-1(x,y)|
然后,定义阈值T对帧差图像Dt进行二值化:
接下来遍历二值图像Bt,统计其中非0元的个数为At,作为当前帧相对于前一帧的运动区域的面积,计算运动区域在整幅图像中所占的面积比例Rt:
然后利用运动区域占比,针对当前视频运动情况分布自适应地选取关键帧;
所述的自适应地选取关键帧,具体如下:
a)设定一个关键帧平均间隔tK,进而得到需要选取的关键帧总数Nk=F/tK;
b)将运动区域面积比例序列按照从大到小的顺序进行排序;对这个排序后的序列,依次从大到小取前NK个元素的帧序号插入关键帧集合,其中,视频的第一帧和最后一帧默认为关键帧;
c)在物体高速运动时,会出现一些连续帧的运动区域面积比例都较大,在取得的关键帧中出现连续帧序号的情况,导致冗余现象;为了使关键帧的分布更加均匀,在b)步的过程中添加了适当地扰动,对于每一个将要依序插入关键帧集合的帧序号t,首先查找关键帧集合中是否有在区间[t-r,t+r]的帧序号,若没有,则将t插入关键帧集合,若有,则说明集合中已有与第t帧相邻的帧,不插入序号t,继续向下取帧序号。
在步骤2)中,所述的关键帧Trimap图半自动生成,具体如下:
用矩形框选出It的前景对象的大致区域,方框外均为确定背景像素,而方框内则为可能的前景像素;将这个矩形框的划分结果作为输入,利用GrabCut算法得到初始的分割结果;
根据初始分割的精确程度,作为可选操作适当添加一些笔画交互,标记确定前景像素和/或确定背景像素作为补充信息,再进行Grabcut得到更为精细的二值分割结果;
所述的关键帧Trimap图计算区域的生成,具体如下:
为得到Trimap图的计算区域,对二值分割图的x和y方向上各进行一次一维高斯模糊,从而在前景背景边缘上产生模糊区域,用高斯核半径来控制边缘的模糊程度,进而控制计算区域的宽度;然后计算模糊后的图像在各个像素处的梯度的模长:
记Gmax=max{G(x,y),1≤x≤NC,1≤y≤NR},如果将(x,y)置为待计算的未知像素,最后得到关键帧的Trimap图;
所述的中间帧Trimap图的生成,具体如下:
对于每一个中间帧,计算并结合两个方向的光流:从前一个关键帧正向传递过来的光流,以及从后一个关键帧反向传递过来的光流,将关键帧上的Trimap图结果逐帧传递到各中间帧,然后结合真实的观察图像来度量每个像素上方向流的准确性,从而决定中间帧Trimap图上每个像素的标记。
在步骤3)中,所述的利用颜色、梯度信息修正光流传播产生的误差,具体如下:
根据光流得到的预测图像和实际的观察图像之间在RGB空间的颜色距离分别计算光流在逐帧传递过程中,连续两帧之间的正向误差图和反向误差图;
然后利用正向误差图和反向误差图,分别计算从两个方向的关键帧逐帧传递到当前帧所产生的正向累积光流误差图和反向累积光流误差图;
计算区域位于前景和背景的过渡区域,是整幅图像中梯度变化较大的地方,因此计算区域像素的梯度值往往比较大,而相反则能够认为梯度较小即邻域较为平滑的像素为未知像素的概率较小;因此能够根据当前像素的梯度信息来修正累积误差,即当某一方向传递过来的Trimap标记为计算区域,且该像素的梯度小于阈值时,则为这个方向的累计误差加上一个惩罚值P;
最后,对于各中间帧上的每一个像素,选择累计误差较小的那个方向传递过来的Trimap图的标记作为当前像素的标记。
在步骤4)中,所述的根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,具体如下:
基于贝叶斯抠图算法完成视频每一帧α掩码图的计算,并对其加入三维的时空优化,最大化能量如下公式:
εORG(z)=lnP(Iz|Fz,Bz,αz)+ln P(Fz)+ln P(Bz)
首先在颜色采样时加入时间维的颜色样本,在连续的三帧上分别采样,即不仅仅在当前帧上进行采样,也在当前帧的前一帧和后一帧上进行采样,三维颜色采样的详细过程如下:
a)在当前帧中,滑动窗口从已知区域的边界逐渐向未知区域移动,对每一个未知像素z,在以当前位置(xz,yz,t)为圆心的邻域内由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景或背景颜色值当作样本点,直到样本数目达到K个;
b)在当前帧的前一帧中,在以像素z的对应位置(xz,yz,t-1)处为圆心的邻域内采取a)中的同样的策略,由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景或背景颜色值,直到样本数目达到K个;
c)在当前帧的后一帧中,在位置(xz,yz,t+1)处按照b)中的方式采集颜色样本,
记得到的新像素集合为为每个颜色样本点定义权重wi,加入时间维的信息,wi定义:
同样,对背景像素,将αi 2改为(1-αi)2即可;得到前景或背景颜色值的样本集,通过贝叶斯抠图算法得到每个未知像素的初始前景值F和初始背景值B;
α求解算法过程如下:
a)获取第t帧的图像及其Trimap图;
b)从已知区域与未知区域的边界开始依次为每个未知像素采集三维的前景颜色样本点和背景颜色样本点,定义每个颜色样本点的权值;
c)以当前未知像素邻域内的像素点α的均值作为αz的初始值,采用贝叶斯抠图算法求解F,B作为初始值;
e)构造三维平滑约束项εALP(z),最大化求解能量公式εIMP,得到当前帧中每个像素的透明度值α;
f)更新αz值,其中z=1,2,...N,重新利用贝叶斯抠图算法求解F,B;
d)当能量公式收敛或者达到规定迭代次数,跳到步骤g),否则,跳到e);
g)输出当前帧的αz,Fz,Bz,其中z=1,2,...N,计算下一帧。
对每一个未知像素,加入时间维的平滑约束;将α的平滑约束由8邻域扩充到26邻域,即不仅包括当前帧中未知像素位置处为中心的3×3窗口内的像素,还包括其前一帧、后一帧对应位置处3×3的窗口内的像素;使得未知像素的α值不仅仅在当前帧的8邻域内尽量保持平滑,还要与加上前一帧、后一帧的共26邻域内的像素α值尽可能地保持平滑,以确保抠图结果在时间上的连贯性;
像素z的26领域,用来表示,对定义如下权重:
其中σ=8,这样使得距离未知像素z更近的点的权重更大,且当前帧像素的权重比前一帧和后一帧的像素点的权重更大,则εALP(z)定义为:
其中,使前景到背景的α值按照高斯衰减函数的曲线变化过渡,其中σf=2,dz为未知像素z到已知区域的距离;
在实际计算过程中,由于当前帧的前一帧已经计算完毕,而后一帧还未开始计算,当前帧的26邻域内位于后一帧的像素可能包含未知像素,即其αj未知,令其权重为0,不纳入计算。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明采用帧差法自适应地选取关键帧,计算过程简单,效率较高,且不易受到光照变化的干扰。根据帧与帧之间的像素差异来衡量运动的变化,选取运动较大的帧作为关键帧,符合视频抠图对于关键帧的要求。同时,本文在关键帧的选取过程中添加适当地扰动,可以使关键帧的分配相对均匀,避免出现相邻过近或者相邻过远的关键帧,这样可以保证后续两个关键帧之间的光流传播更加高效和可信。
2、本发明采用关键帧和双向光流传播结合的方式,生成视频所有帧的Trimap图,并充分利用图像颜色信息、梯度信息等来对光流传播产生的误差进行纠正,以提高Trimap图的正确度。
3、本发明在贝叶斯抠图算法的基础上提出三维的时空优化,加入三维颜色采样和三维平滑约束,充分利用视频帧与帧之间的相关性,使得抠图结果更加的真实自然,加强了视频抠图结果的连贯性,减少了闪烁和抖动现象的产生。
附图说明
图1是视频抠图与合成流程图。
图2是关键帧自动选取流程图。
图3是关键帧Trimap图生成流程图。
图4是中间帧Trimap图的自动生成流程。
图5是α求解及背景合成流程图。
图6是关键帧与双向光流结合产生中间帧Trimap结果。
图7是本发明与Chuang等人技术的比较。
图8是本发明与Chuang等人技术合成结果及α图的局部放大对比图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本实施例所述的一种自然背景视频抠图方法,包括以下步骤:
1)关键帧自动选取,通过计算帧间差异自动地选取视频中的关键帧,并根据当前视频运动情况得到一个自适应的结果;
2)关键帧Trimap图的生成,允许用户通过少量的手工交互提供有效信息,采用GrabCut分割算法与高斯模糊方法半自动地生成关键帧上的Trimap图;
3)中间帧Trimap图的生成,利用双向光流传播生成中间各帧的Trimap图,并利用颜色、梯度等信息修正光流传播产生的误差;
4)根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,将α掩码图与新的背景进行合成,得到新的合成视频。
步骤1)中,所述的计算帧间差异自动选取关键帧,具体如下:
假设{It:t=0,1...,F-1}为给定的视频序列,It为时刻t对应的视频帧,F为帧数。It(x,y)则为像素z=(x,y)处的亮度值,假定每帧有NR行、NC列。从第二帧开始,对于每一帧图像,按照下式计算前一帧到当前帧的亮度差异,得到帧差图像Dt。
Dt(x,y)=|It(x,y)-It-1(x,y)|
然后,定义阈值T对帧差图像Dt进行二值化:
接下来遍历二值图像Bt,统计其中非0元的个数为At,作为当前帧相对于前一帧的运动区域的面积,计算运动区域在整幅图像中所占的面积比例Rt:
然后利用运动区域占比,针对当前视频运动情况分布自适应地选取关键帧。
所述的自适应地选取关键帧,具体如下:
a)设定一个关键帧平均间隔tK,进而得到需要选取的关键帧总数Nk=F/tK;
b)将运动区域面积比例序列按照从大到小的顺序进行排序;对这个排序后的序列,依次从大到小取前NK个元素的帧序号插入关键帧集合,其中,视频的第一帧和最后一帧默认为关键帧;
c)在物体高速运动时,会出现一些连续帧的运动区域面积比例都较大,在取得的关键帧中出现连续帧序号的情况,导致冗余现象。为了使关键帧的分布更加均匀,在b)步的过程中添加了适当地扰动,对于每一个将要依序插入关键帧集合的帧序号t,首先查找关键帧集合中是否有在区间[t-r,t+r](实验中r取3)的帧序号,若没有,则将t插入关键帧集合,若有,则说明集合中已有与第t帧相邻的帧,不插入序号t,继续向下取帧序号。
步骤2)中,所述的关键帧Trimap图半自动生成,具体如下:
用矩形框选出It的前景对象的大致区域,方框外均为确定背景像素,而方框内则为可能的前景像素。将这个矩形框的划分结果作为输入,利用GrabCut算法得到初始的分割结果。
根据初始分割的精确程度,作为可选操作适当添加一些笔画交互,标记确定前景像素和/或确定背景像素作为补充信息,再进行Grabcut得到更为精细的二值分割结果。
所述的关键帧Trimap图计算区域的生成,具体如下:
为得到Trimap图的计算区域,我们对二值分割图的x和y方向上各进行一次一维高斯模糊,从而在前景背景边缘上产生模糊区域,用高斯核半径来控制边缘的模糊程度,进而控制计算区域的宽度。然后计算模糊后的图像在各个像素处的梯度的模长:
记Gmax=max{G(x,y),1≤x≤NC,1≤y≤NR},如果将(x,y)置为待计算的未知像素,最后得到关键帧的Trimap图;
步骤3)中,所述的中间帧Trimap图的生成,具体如下:
对于每一个中间帧,计算并结合两个方向的光流:从前一个关键帧正向传递过来的光流,以及从后一个关键帧反向传递过来的光流,将关键帧上的Trimap图结果逐帧传递到各中间帧。然后结合真实的观察图像来度量每个像素上方向流的准确性,从而决定中间帧Trimap图上每个像素的标记。
所述的利用颜色、梯度等信息修正光流传播产生的误差,具体如下:
根据光流得到的预测图像和实际的观察图像之间在RGB空间的颜色距离分别计算光流在逐帧传递过程中,连续两帧之间的正向误差图和反向误差图。
然后利用正向误差图和反向误差图,分别计算从两个方向的关键帧逐帧传递到当前帧所产生的正向累积光流误差图和反向累积光流误差图。
计算区域位于前景和背景的过渡区域,是整幅图像中梯度变化较大的地方,因此计算区域像素的梯度值往往比较大,而相反则可以认为梯度较小(邻域较为平滑)的像素为未知像素的概率较小。因此可以根据当前像素的梯度信息来修正累积误差,即当某一方向传递过来的Trimap标记为计算区域,且该像素的梯度小于阈值(实验中取10)时,则为这个方向的累计误差加上一个惩罚值P(实验中P取50)。
最后,对于各中间帧上的每一个像素,选择累计误差较小的那个方向传递过来的Trimap图的标记作为当前像素的标记。
步骤4)中,所述的根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,具体如下:
基于贝叶斯抠图算法完成视频每一帧α掩码图的计算,并对其加入三维的时空优化。最大化能量如下公式:
εORG(z)=lnP(Iz|Fz,Bz,αz)+ln P(Fz)+ln P(Bz)
首先在颜色采样时加入时间维的颜色样本,在连续的三帧上分别采样,即不仅仅在当前帧上进行采样,也在当前帧的前一帧和后一帧上进行采样。三维颜色采样的详细过程如下:
a)在当前帧中,滑动窗口从已知区域的边界逐渐向未知区域移动,对每一个未知像素z,在以当前位置(xz,yz,t)为圆心的邻域内由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景(或背景)颜色值当作样本点,直到样本数目达到K个(实验中取K=85);
b)在当前帧的前一帧中,在以像素z的对应位置(xz,yz,t-1)处为圆心的邻域内采取a)中的同样的策略,由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景(或背景)颜色值,直到样本数目达到K个;
c)在当前帧的后一帧中,在位置(xz,yz,t+1)处按照b)中的方式采集颜色样本。
记得到的新像素集合为为每个颜色样本点定义权重wi,加入时间维的信息,wi定义:
同样,对背景像素,将αi 2改为(1-αi)2即可。得到前景(或背景)颜色值的样本集,通过贝叶斯抠图算法得到每个未知像素的初始前景值F和初始背景值B。
对每一个未知像素,加入时间维的平滑约束;将α的平滑约束由8邻域扩充到26邻域,即不仅包括当前帧中未知像素位置处为中心的3×3窗口内的像素,还包括其前一帧、后一帧对应位置处3×3的窗口内的像素;使得未知像素的α值不仅仅在当前帧的8邻域内尽量保持平滑,还要与加上前一帧、后一帧的共26邻域内的像素α值尽可能地保持平滑,以确保抠图结果在时间上的连贯性。
像素z的26领域,用来表示,对定义如下权重:
其中σ=8,这样使得距离未知像素z更近的点的权重更大,且当前帧像素的权重比前一帧和后一帧的像素点的权重更大,则εALP(z)定义为:
其中,使前景到背景的α值按照高斯衰减函数的曲线变化过渡,其中σf=2,dz为未知像素z到已知区域的距离;
在实际计算过程中,由于当前帧的前一帧已经计算完毕,而后一帧还未开始计算,当前帧的26邻域内位于后一帧的像素可能包含未知像素,即其αj未知,令其权重为0,不纳入计算。
本发明设计的视频抠图与合成的完整流程如图1。读取视频文件之后,我们首先自动地选取所需的关键帧;然后在关键帧上添加少量的手工交互,半自动地生成关键帧的Trimap图;接下来,将关键帧的Trimap图通过双向光流传播到中间帧,自动地生成中间各帧的Trimap图;然后,对视频的每一帧应用第四章中所描述的抠图算法,生成所有帧的α掩码图;最后依照生成的α掩码图将前景序列与新的背景进行合成,输出并保存新的视频。具体地:
1.关键帧自动选取的流程如图2所示。首先,对读取的视频,从第二帧开始计算每一帧相对于前一帧的帧差图像;然后对每一帧的帧差图像进行二值化,并统计二值图像中值为1(代表运动像素)的像素个数,计算运动区域占比;然后将运动区域占比从大到小排序,依次取前NK个帧序号,在取的过程中,添加适当地扰动,如图中所示,以避免取到邻近的帧序号。我们采用STL中的multimap关联容器保存运动区域占比及其对应的帧序号,以运动区域占比为关键字,自动从小到大排序。使用反向迭代器,从multimap末尾开始向前依次取前NK大的元素,关键帧集合采用STL中的set容器保存,最后得到一个有序的关键帧序列。
2.关键帧Trimap图生成的流程如图3所示。首先用一个矩形框框出前景的大致区域,作为可能的前景;应用GrabCut分割算法得到前景背景的分割结果,如果对分割不满意,可添加手工交互指定确定的前景像素或确定的背景像素作为输入,再进行依次GrabCut分割,若满意,则利用高斯模糊生成计算区域,得到Trimap图;同样,如果对生成的Trimap图不满意,我们提供画刷工具,可直接修改前景区域、背景区域及计算区域。最终的Trimap图,如图6中左边第2列第一行和第4列最后一行。
3.中间帧Trimap图自动生成的流程如图4所示。在每两个关键帧区间内,分别通过正向和反向光流逐帧的传播,为每一个中间帧生成一个正向的Trimap图和反向的Trimap图;在计算的过程中,利用颜色信息和梯度信息为每一个方向上的光流计算其传播误差,对每一个像素,选择误差较小的方向上传递过来的Trimap图标记作为其最终的标记,进而得到整幅图像的Trimap图。光流传播生成的中间帧Trimap图结果如图6中左边第3列所示。
4.α求解及背景合成流程如图5所示。α求解算法过程如下:
a)获取第t帧的图像及其Trimap图;
b)从已知区域与未知区域的边界开始依次为每个未知像素采集三维的前景颜色样本点和背景颜色样本点,定义每个颜色样本点的权值;
c)以当前未知像素邻域内的像素点α的均值作为αz的初始值,采用贝叶斯抠图算法求解F,B作为初始值;
e)构造三维平滑约束项εALP(z),最大化求解能量公式εIMP,得到当前帧中每个像素的透明度值α;
f)更新αz值,其中z=1,2,...N,重新利用贝叶斯抠图算法求解F,B;
d)当能量公式收敛或者达到规定迭代次数,跳到步骤g),否则,跳到e);
g)输出当前帧的αz,Fz,Bz,其中z=1,2,...N,计算下一帧。
在与新背景进行合成时,视频帧图像f、与背景图像b在RGB三通道上根据掩码图像α,按照以下公式进行合成,得到新的图像c:
c=α*f+(1-α)b
在实际计算过程中,将上述公式改写为下面的形式,以减少乘法的运算次数,提高程序的效率:
c=α*(f-b)+b
新的合成结果如图6中左边第5列及图7中左边第3列。在图7和图8的对比中可以看到最后合成结果图里背景到前景的过渡更加平滑与真实。新的合成视频在播放时也更加的连贯自然。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (5)
1.一种自然背景视频抠图方法,其特征在于,包括以下步骤:
1)关键帧自动选取,通过计算帧间差异自动地选取视频中的关键帧,并根据当前视频运动情况得到一个自适应的结果;
其中,所述的计算帧间差异自动选取关键帧,具体如下:
假设{It:t=0,1...,F-1}为给定的视频序列,It为时刻t对应的视频帧,F为帧数;It(x,y)则为像素z=(x,y)处的亮度值,假定每帧有NR行、NC列;从第二帧开始,对于每一帧图像,按照下式计算前一帧到当前帧的亮度差异,得到帧差图像Dt;
Dt(x,y)=|It(x,y)-It-1(x,y)|
然后,定义阈值T对帧差图像Dt进行二值化:
接下来遍历二值图像Bt,统计其中非0元的个数为At,作为当前帧相对于前一帧的运动区域的面积,计算运动区域在整幅图像中所占的面积比例Rt:
然后利用运动区域占比,针对当前视频运动情况分布自适应地选取关键帧;
所述的自适应地选取关键帧,具体如下:
a)设定一个关键帧平均间隔tK,进而得到需要选取的关键帧总数Nk=F/tK;
b)将运动区域面积比例序列按照从大到小的顺序进行排序;对这个排序后的序列,依次从大到小取前NK个元素的帧序号插入关键帧集合,其中,视频的第一帧和最后一帧默认为关键帧;
c)在物体高速运动时,会出现一些连续帧的运动区域面积比例都较大,在取得的关键帧中出现连续帧序号的情况,导致冗余现象;为了使关键帧的分布更加均匀,在b)步的过程中添加了适当地扰动,对于每一个将要依序插入关键帧集合的帧序号t,首先查找关键帧集合中是否有在区间[t-r,t+r]的帧序号,若没有,则将t插入关键帧集合,若有,则说明集合中已有与第t帧相邻的帧,不插入序号t,继续向下取帧序号;
2)关键帧Trimap图的生成,允许用户通过手工交互提供有效信息,采用GrabCut分割算法与高斯模糊方法半自动地生成关键帧上的Trimap图;
3)中间帧Trimap图的生成,利用双向光流传播生成中间各帧的Trimap图,并利用颜色、梯度信息修正光流传播产生的误差;
4)根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,将α掩码图与新的背景进行合成,得到新的合成视频。
2.根据权利要求1所述的一种自然背景视频抠图方法,其特征在于:在步骤2)中,所述的关键帧Trimap图半自动生成,具体如下:
用矩形框选出It的前景对象的区域,方框外均为确定背景像素,而方框内则为可能的前景像素;将这个矩形框的划分结果作为输入,利用GrabCut算法得到初始的分割结果;
根据初始分割的精确程度,作为可选操作适当添加一些笔画交互,标记确定前景像素和/或确定背景像素作为补充信息,再进行Grabcut得到更为精细的二值分割结果;
所述的关键帧Trimap图计算区域的生成,具体如下:
为得到Trimap图的计算区域,对二值分割图的x和y方向上各进行一次一维高斯模糊,从而在前景背景边缘上产生模糊区域,用高斯核半径来控制边缘的模糊程度,进而控制计算区域的宽度;然后计算模糊后的图像在各个像素处的梯度的模长:
G(x,y)=||▽It(x,y)||
记Gmax=max{G(x,y),1≤x≤NC,1≤y≤NR},如果将(x,y)置为待计算的未知像素,最后得到关键帧的Trimap图;
所述的中间帧Trimap图的生成,具体如下:
对于每一个中间帧,计算并结合两个方向的光流:从前一个关键帧正向传递过来的光流,以及从后一个关键帧反向传递过来的光流,将关键帧上的Trimap图结果逐帧传递到各中间帧,然后结合真实的观察图像来度量每个像素上方向流的准确性,从而决定中间帧Trimap图上每个像素的标记。
3.根据权利要求1所述的一种自然背景视频抠图方法,其特征在于:在步骤3)中,所述的利用颜色、梯度信息修正光流传播产生的误差,具体如下:
根据光流得到的预测图像和实际的观察图像之间在RGB空间的颜色距离分别计算光流在逐帧传递过程中,连续两帧之间的正向误差图和反向误差图;
然后利用正向误差图和反向误差图,分别计算从两个方向的关键帧逐帧传递到当前帧所产生的正向累积光流误差图和反向累积光流误差图;
计算区域位于前景和背景的过渡区域,是整幅图像中梯度变化较大的地方,因此计算区域像素的梯度值往往比较大,而相反则能够认为梯度较小即邻域较为平滑的像素为未知像素的概率较小;因此能够根据当前像素的梯度信息来修正累积误差,即当某一方向传递过来的Trimap标记为计算区域,且该像素的梯度小于阈值时,则为这个方向的累计误差加上一个惩罚值P;
最后,对于各中间帧上的每一个像素,选择累计误差较小的那个方向传递过来的Trimap图的标记作为当前像素的标记。
4.根据权利要求1所述的一种自然背景视频抠图方法,其特征在于:在步骤4)中,所述的根据所有视频帧的Trimap图,以及加入三维时空优化的贝叶斯抠图算法计算出视频每一帧的α掩码图,具体如下:
基于贝叶斯抠图算法完成视频每一帧α掩码图的计算,并对其加入三维的时空优化,最大化能量如下公式:
εORG(z)=lnP(Iz|Fz,Bz,αz)+lnP(Fz)+lnP(Bz)
首先在颜色采样时加入时间维的颜色样本,在连续的三帧上分别采样,即不仅仅在当前帧上进行采样,也在当前帧的前一帧和后一帧上进行采样,三维颜色采样的详细过程如下:
a)在当前帧中,滑动窗口从已知区域的边界逐渐向未知区域移动,对每一个未知像素z,在以当前位置(xz,yz,t)为圆心的邻域内由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景或背景颜色值当作样本点,直到样本数目达到K个;
b)在当前帧的前一帧中,在以像素z的对应位置(xz,yz,t-1)处为圆心的邻域内采取a)中的同样的策略,由内向外逐渐扩大采样半径,依次采集邻近的已知像素和完成计算的未知像素的前景或背景颜色值,直到样本数目达到K个;
c)在当前帧的后一帧中,在位置(xz,yz,t+1)处按照b)中的方式采集颜色样本,
记得到的新像素集合为Ns;为每个颜色样本点i∈Ns,定义权重wi,加入时间维的信息,wi定义:
同样,对背景像素,将αi 2改为(1-αi)2即可;得到前景或背景颜色值的样本集,通过贝叶斯抠图算法得到每个未知像素的初始前景值F和初始背景值B;
α求解算法过程如下:
a)获取第t帧的图像及其Trimap图;
b)从已知区域与未知区域的边界开始依次为每个未知像素采集三维的前景颜色样本点和背景颜色样本点,定义每个颜色样本点的权值;
c)以当前未知像素邻域内的像素点α的均值作为αz的初始值,采用贝叶斯抠图算法求解F,B作为初始值;
e)构造三维平滑约束项εALP(z),最大化求解能量公式εIMP,得到当前帧中每个像素的透明度值α;
f)更新αz值,其中z=1,2,...N,重新利用贝叶斯抠图算法求解F,B;
d)当能量公式收敛或者达到规定迭代次数,跳到步骤g),否则,跳到e);
g)输出当前帧的αz,Fz,Bz,其中z=1,2,...N,计算下一帧。
5.根据权利要求4所述的一种自然背景视频抠图方法,其特征在于:对每一个未知像素,加入时间维的平滑约束;将α的平滑约束由8邻域扩充到26邻域,即不仅包括当前帧中未知像素位置处为中心的3×3窗口内的像素,还包括其前一帧、后一帧对应位置处3×3的窗口内的像素;使得未知像素的α值不仅仅在当前帧的8邻域内尽量保持平滑,还要与加上前一帧、后一帧的共26邻域内的像素α值保持平滑,以确保抠图结果在时间上的连贯性;
像素z的26领域,用N(z)来表示,对j∈N(z),定义如下权重:
其中σ=8,这样使得距离未知像素z更近的点的权重更大,且当前帧像素的权重比前一帧和后一帧的像素点的权重更大,则εALP(z)定义为:
其中,W=∑j∈N(z)w'j,使前景到背景的α值按照高斯衰减函数的曲线变化过渡,其中σf=2,dz为未知像素z到已知区域的距离;
在实际计算过程中,由于当前帧的前一帧已经计算完毕,而后一帧还未开始计算,当前帧的26邻域内位于后一帧的像素可能包含未知像素,即其αj未知,令其权重为0,不纳入计算。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610525850.2A CN106204567B (zh) | 2016-07-05 | 2016-07-05 | 一种自然背景视频抠图方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610525850.2A CN106204567B (zh) | 2016-07-05 | 2016-07-05 | 一种自然背景视频抠图方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106204567A CN106204567A (zh) | 2016-12-07 |
CN106204567B true CN106204567B (zh) | 2019-01-29 |
Family
ID=57466380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610525850.2A Active CN106204567B (zh) | 2016-07-05 | 2016-07-05 | 一种自然背景视频抠图方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106204567B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815848A (zh) * | 2017-01-17 | 2017-06-09 | 厦门可睿特信息科技有限公司 | 基于grubcut和人工智能的人像背景分离及轮廓提取方法 |
CN107564010A (zh) * | 2017-09-11 | 2018-01-09 | 新疆大学 | 一种结合贝叶斯分类与SLIC的Grabcut彩色图像分割方法 |
CN109697689B (zh) * | 2017-10-23 | 2023-09-01 | 北京京东尚科信息技术有限公司 | 存储介质、电子设备、视频合成方法及装置 |
CN108305256B (zh) * | 2017-11-28 | 2019-11-15 | 腾讯科技(深圳)有限公司 | 视频抠像处理方法、处理装置及计算机可读存储介质 |
CN108566521A (zh) * | 2018-06-26 | 2018-09-21 | 蒋大武 | 一种基于自然图像抠像的视频合成系统 |
CN109035253A (zh) * | 2018-07-04 | 2018-12-18 | 长沙全度影像科技有限公司 | 一种语义分割信息指导的深度学习自动图像抠图方法 |
CN108961303B (zh) * | 2018-07-23 | 2021-05-07 | 北京旷视科技有限公司 | 一种图像处理方法、装置、电子设备和计算机可读介质 |
WO2020062899A1 (zh) * | 2018-09-26 | 2020-04-02 | 惠州学院 | 通过前景背景像素对和灰度信息获得透明度遮罩的方法 |
CN109461167B (zh) * | 2018-11-02 | 2020-07-21 | Oppo广东移动通信有限公司 | 图像处理模型的训练方法、抠图方法、装置、介质及终端 |
CN111179276B (zh) * | 2018-11-12 | 2024-02-06 | 北京京东尚科信息技术有限公司 | 一种图像处理方法和装置 |
US10929665B2 (en) * | 2018-12-21 | 2021-02-23 | Samsung Electronics Co., Ltd. | System and method for providing dominant scene classification by semantic segmentation |
CN109840912B (zh) * | 2019-01-02 | 2021-05-04 | 厦门美图之家科技有限公司 | 一种图像中异常像素的修正方法及计算设备 |
CN109816611B (zh) * | 2019-01-31 | 2021-02-12 | 北京市商汤科技开发有限公司 | 视频修复方法及装置、电子设备和存储介质 |
CN111247790A (zh) * | 2019-02-21 | 2020-06-05 | 深圳市大疆创新科技有限公司 | 一种图像处理方法、装置、图像拍摄和处理系统及载体 |
CN109978891A (zh) * | 2019-03-13 | 2019-07-05 | 浙江商汤科技开发有限公司 | 图像处理方法及装置、电子设备和存储介质 |
CN110070507B (zh) * | 2019-04-17 | 2021-03-02 | 安徽科朗电子科技有限公司 | 一种视频图像的抠图方法、装置、存储介质及抠图设备 |
CN110264417B (zh) * | 2019-05-31 | 2022-04-12 | 西安理工大学 | 基于分层模型的局部运动模糊区域自动检测提取方法 |
CN110309721B (zh) * | 2019-05-31 | 2021-06-29 | 百度在线网络技术(北京)有限公司 | 视频处理方法、终端和存储介质 |
CN110517215B (zh) * | 2019-08-28 | 2022-03-25 | 咪咕视讯科技有限公司 | 一种视频压缩处理方法、电子设备及存储介质 |
CN111476146B (zh) * | 2020-04-03 | 2023-04-07 | 北京金沙江科技有限公司 | 一种基于移动端的学历证件照标准化处理方法 |
CN112055222B (zh) * | 2020-08-21 | 2024-05-07 | 浙江大华技术股份有限公司 | 视频编解码方法、电子设备及计算机可读存储介质 |
CN112396636B (zh) * | 2020-12-01 | 2022-09-30 | 石家庄铁道大学 | 基于时空隧道流量模型的监控视频运动片段分割方法 |
CN113407185B (zh) * | 2021-03-10 | 2023-01-06 | 天津大学 | 基于贝叶斯优化的编译器优化选项推荐方法 |
CN113253890B (zh) * | 2021-04-02 | 2022-12-30 | 中南大学 | 视频人像抠图方法、系统和介质 |
CN113610865B (zh) * | 2021-07-27 | 2024-03-29 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备及计算机可读存储介质 |
CN113724130B (zh) * | 2021-08-20 | 2022-04-19 | 深圳市飘飘宝贝有限公司 | 可变宽度的人像精细抠图方法、装置、设备及存储介质 |
CN114613006A (zh) * | 2022-03-09 | 2022-06-10 | 中国科学院软件研究所 | 一种远距离手势识别方法及装置 |
CN114694092A (zh) * | 2022-03-15 | 2022-07-01 | 华南理工大学 | 基于混合背景模型的高速公路监控视频抛洒物检测方法 |
CN115223016A (zh) * | 2022-09-19 | 2022-10-21 | 苏州万店掌网络科技有限公司 | 一种样本标注方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101098475A (zh) * | 2007-07-10 | 2008-01-02 | 浙江大学 | 一种数字视频处理中交互式时空一致的视频抠图方法 |
CN101588459A (zh) * | 2009-06-26 | 2009-11-25 | 北京交通大学 | 一种视频抠像处理方法 |
CN101951511A (zh) * | 2010-08-19 | 2011-01-19 | 深圳市亮信科技有限公司 | 一种通过分析深度进行视频场景分层的方法 |
JP2012221272A (ja) * | 2011-04-11 | 2012-11-12 | Nippon Signal Co Ltd:The | 画像処理システムおよび画像処理方法 |
CN104935832A (zh) * | 2015-03-31 | 2015-09-23 | 浙江工商大学 | 针对带深度信息的视频抠像方法 |
-
2016
- 2016-07-05 CN CN201610525850.2A patent/CN106204567B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101098475A (zh) * | 2007-07-10 | 2008-01-02 | 浙江大学 | 一种数字视频处理中交互式时空一致的视频抠图方法 |
CN101588459A (zh) * | 2009-06-26 | 2009-11-25 | 北京交通大学 | 一种视频抠像处理方法 |
CN101951511A (zh) * | 2010-08-19 | 2011-01-19 | 深圳市亮信科技有限公司 | 一种通过分析深度进行视频场景分层的方法 |
JP2012221272A (ja) * | 2011-04-11 | 2012-11-12 | Nippon Signal Co Ltd:The | 画像処理システムおよび画像処理方法 |
CN104935832A (zh) * | 2015-03-31 | 2015-09-23 | 浙江工商大学 | 针对带深度信息的视频抠像方法 |
Non-Patent Citations (1)
Title |
---|
Video matting of complex scenes;Yung-Yu Chuang, et al.;《ACM Transactions on Graphics》;20020726;第21卷(第3期);Pages 243,245-248 |
Also Published As
Publication number | Publication date |
---|---|
CN106204567A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106204567B (zh) | 一种自然背景视频抠图方法 | |
US11954813B2 (en) | Three-dimensional scene constructing method, apparatus and system, and storage medium | |
JP7177062B2 (ja) | 統計モデルを用いた画像データからの深度予測 | |
CN109387204B (zh) | 面向室内动态环境的移动机器人同步定位与构图方法 | |
CN109064507B (zh) | 一种用于视频预测的多运动流深度卷积网络模型方法 | |
Engel et al. | Direct sparse odometry | |
CN107644429B (zh) | 一种基于强目标约束视频显著性的视频分割方法 | |
US11017586B2 (en) | 3D motion effect from a 2D image | |
CN104899845B (zh) | 一种基于lαβ空间场景迁移的多曝光图像融合方法 | |
CN109993095B (zh) | 一种面向视频目标检测的帧级别特征聚合方法 | |
US8320666B2 (en) | Real-time image and video matting | |
CN110443173B (zh) | 一种基于帧间关系的视频实例分割方法及系统 | |
CN106027851A (zh) | 基于图像梯度的图像滤波 | |
CN106210449B (zh) | 一种多信息融合的帧率上变换运动估计方法及系统 | |
CN112104830A (zh) | 视频插帧方法、模型训练方法及对应装置 | |
CN104935832B (zh) | 针对带深度信息的视频抠像方法 | |
CN107968946B (zh) | 视频帧率提升方法及装置 | |
CN107194948B (zh) | 基于集成式预测与时空域传播的视频显著性检测方法 | |
KR100987412B1 (ko) | 멀티프레임을 고려한 비디오 오브젝트 매팅 시스템 및 방법 | |
CN113610865B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
CN108961196A (zh) | 一种基于图的3d注视点预测的显著性融合方法 | |
CN104159098B (zh) | 一种视频的时域一致性半透明边缘提取方法 | |
CN102930513B (zh) | 一种视频场景的虚实光照融合方法 | |
CN105590327A (zh) | 运动估计方法及装置 | |
CN113344941A (zh) | 一种基于聚焦图像的深度估计方法及图像处理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |