基于自适应六边形搜索及五帧背景对齐的动背景视频对象提取
技术领域:
本发明涉及一种视频分割中的处理方法,特别涉及一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法。
背景技术:
对于动态视频序列中运动对象的提取,由于摄像机产生的全局运动使得在静背景下的分割方法,如:帧差或者背景差分等方法不适用于动背景下的分割,即不能够准确地将运动对象提取出来,因此针对动背景下的分割问题必须首先消除摄像机运动所造成的全局运动的影响,通过全局运动估计和补偿技术,将问题转化成静背景下的分割问题,进而应用静背景下广泛的分割方法实现动背景下的准确、有效分割。
全局运动估计是指估计由摄像机运动引起的序列背景区域的运动规律,求解出相应数学运动模型中的多个参数。全局运动补偿是在根据运动估计所得到的全局运动参数,在当前帧和前一帧之间作一个相应的背景对齐的映射变换。这样在准确的补偿之后就可以采用帧差或背景差等方法消除背景区域,突出感兴趣的具有局部运动的前景区域(参见杨文明.时空融合的视频对象分割[D].浙江:浙江大学,2006)。
对于动背景下的运动对象分割问题,目前国际上已有相当多的学者做了大量的研究工作。如利用改进的分水岭算法将运动补偿后的视频帧分割成不同的灰度区域,通过光流计算得到序列的运动信息,最后,将运动信息和分割的区域按一定的准则综合得到对象模板,达到对视频对象的准确定位(参见张庆利.一种基于运动背景的视频对象分割算法.上海大学学报(自然科学版),2005,11(2):111-115.)。如建立四参数运动放射模型来描述全局运动,采用块匹配方法进行参数估计,结合Horn-Schunck算法检测出运动目标并应用卡尔曼滤波对运动目标的质心位置等信息进行跟踪,实现了动态场景中运动对象的检测与跟踪。(参见施家栋.动态场景中运动目标检测与跟踪.北京理工大学学报,2009,29(10):858-876.)。另一种采用非参数核密度估计的方法,首先采用匹配加权的全局运动估计补偿算法消除动态场景下背景运动的影响,然后估计各像素属于前景与背景的概率密度并结合形态学等算法进行处理,实现了动背景下运动对象的准确、有效分割。(参见马志强.一种动态场景下运动对象分割新算法.计算机工程与科学,2012,34(4):43-46.)。
为了解决动背景下的分割问题,本发明方法实现了一种采用宏块预判断、块匹配、摄像机六参数仿射模型、最小二乘法等全局运动估计及补偿方法,并通过五帧背景对齐结合边缘信息等实现动背景分割。实验证明,该方法实现了动背景视频序列中视频对象的提取,并且提取精度得到明显提高。
发明内容:
本发明要解决的技术问题是:如何减少块匹配的运算时间,如何实现动背景下视频对象的准确提取。
本发明解决其技术问题所采用的技术方案是:一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法,包括以下步骤:
(1)将第K-2帧、第K-1帧、参考帧K帧、第K+1帧与第K+2帧分别分成8×8宏块,根据纹理信息对该五帧中所有宏块进行预判断、筛选;
(2)对上述筛选后的宏块采用SAD准则、自适应六边形搜索策略进行块匹配,分别以第K-2帧、第K-1帧、第K+1帧与第K+2帧作为当前帧,以第K帧作为参考帧,得到该四帧相对于参考帧K帧的运动矢量场,并通过最小二乘法计算全局运动参数,获得摄像机六参数模型;
(3)对第K-2帧进行运动补偿,使第K-2帧与第K帧背景对齐,得到重建帧K-2',按照同样的方法对第K-1帧、第K+1帧与第K+2帧进行运动补偿,使第K-1帧、第K+1帧及第K+2帧分别与第K帧背景对齐,并得到重建帧K-1'、重建帧K+1'及重建帧K+2';
(4)对重建帧K-2'、K-1'、K+1'、K+2'及参考帧K帧分别采用Kirsch算子提取边缘信息,并分别计算其相对于参考帧K边缘的帧差d1、d2、d3、d4,采用最大方差阈值方法进行二值化;
(5)分别对连续五帧前两帧和后两帧得到的帧差二值化结果进行与运算;对得到的与运算结果采用或运算及形态学、中值滤波等进行后处理,实现动背景下视频对象的快速有效分割。
所述步骤(1)中对于当前第K-2帧、第K-1帧、第K+1帧、第K+2帧与参考帧K帧中分成的8×8宏块进行预判断及筛选,具体步骤如下:
由于在下述步骤中应用最小二乘法计算全局运动参数的时候,很多误差大的宏块被直接删除,如果能够在最小二乘法运算之前将误差大的宏块剔除,将显著的提高运算速度,并降低运算量。而决定宏块误差大小、影响计算准确性的重要因素便是宏块的纹理信息,也就是梯度信息。本部分提出的宏块预判断及筛选的方法正是从宏块的梯度信息出发,根据设定的阈值对于宏块进行筛选抑或保留,当宏块的信息量小于该阈值时,对该宏块进行筛选,不作为下述步骤中参与块匹配的宏块;当信息量大于该阈值时,则对宏块进行保留,作为有效特征块参与进行下述的运动估计等运算。
其主要步骤如下:
第一步:将每一帧分成8×8子块,经试验证明,若采用分成16×16子块的形式则计算量过大,若分成4×4子块则块匹配等方法不够精确,故采用8×8子块的形式;
第二步:采用Sobel算子得到每一帧的梯度图,将梯度信息作为宏块剔除的判断依据;
其中
表示该点的梯度信息,G
x、G
y分别表示偏导数。
第三步:计算每一个宏块的梯度量;以8×8子块为例,其梯度信息量为:
第四步:确定宏块预断的阈值,一般保留所有宏块的40%,根据这个确定的值,对所有宏块的梯度量进行排序,确定保留40%下宏块筛选的最佳阈值T;
第五步:完成对于宏块的筛选,若其梯度信息量>T,则对宏块进行保留,作为有效特征块参与进行下述的运动估计等运算;若其梯度信息量<T,对该宏块进行筛选,不作为下述步骤中参与块匹配的宏块。
所述步骤(2)中的分别以K-2帧、K-1帧、K+1帧、K+2帧作为当前帧,以K帧作为参考帧,对筛选后的宏块采用SAD准则、自适应六边形搜索策略进行块匹配,并将块匹配求得的运动矢量场利用最小二乘法获得摄像机六参数模型,其具体步骤如下:
(i)块匹配准则SAD
本部分采用SAD块匹配准则,该准则不仅能够找到最佳匹配点,并且计算量小、耗时短。
其中(i,j)为位移量,fk和fk-1分别为当前帧和上一帧的灰度值,M×N为宏块的大小,若在某一点处SAD(i,j)达到最小,则该点为要找的最优匹配点。
(ii)自适应六边形搜索策略
本部分所采用的大六边形模式除了包含传统六边形的六个搜索顶点和中心点之外,如图2(b),还包含六边形中分别位于搜索中心点正上方和正下方的两条边的中点,如图2(c),这样新的大六边形搜索模式共包含了9个搜索点,可以在保证大六边形搜索方法运算复杂度的前提下,大大提高搜索的速度,并结合了运动矢量的中心偏置特性和相关性,提出了一种基于运动矢量场的自适应六边形搜索方法。
基于运动矢量场的自适应六边形搜索方法具体步骤如下:
步骤1:在起始点处利用十字模式搜索最佳匹配点,如图3(a)所示,此步骤中十字模式的5个搜索点用①表示,如果最佳匹配点在十字模式的中心,即中心的黑色的①位置处,一步搜索停止,此时即为最佳匹配点,得到最终要求的运动矢量MV(0,0);否则,进入步骤(2);
步骤2:以步骤(1)搜索到的最佳匹配点为中心进行十字模式块匹配,此时需要搜寻3个新的搜索点,如图3(b)中增加的②所示,如果最佳匹配点在十字模式的中心,即中心黑色的①位置处,二步搜索停止,此点即为最佳匹配点,得到最终要求的运动矢量MV(±1,0)或(0,±1);否则,进入步骤(3);
步骤3:以第一步的起始点为中心,进行LHSP匹配计算,如图3(c)中增加的③所示,并将结果与第二步得到的最佳匹配点进行比较,若新的最佳匹配点在LHSP模板上则转到步骤4,如果新的最佳匹配点仍在步骤2所得的最佳匹配点且不在LHSP上,那么认为该点为最佳匹配点,终止运动估计;
步骤4:以上一步的最佳匹配点为中心,构造大六边形搜索模式,如图3(d)中的增加的④所示,找出新的最佳匹配点,如果该点在大六边形的中心,即中心的黑色的②位置处,进入步骤(5);否则,继续步骤(4);
步骤5:以步骤(4)所搜索到的位于大六边形的中心的最佳匹配点为中心,构造小六边形搜索模式,如3(e)中的增加的⑤所示。应用改进的部分块失真准则,找出新的最佳匹配点,如黑色的⑤位置处,该点所对应的向量即为最终要求的运动矢量。
相比六边形搜索法和现有的十字菱形搜索法,基于运动矢量场的自适应六边形搜索方法最大的改进是利用运动矢量的特性使得搜索点数减少,搜索速度提高,尤其是对静止块或准静止块(|MV|=1),基于运动矢量场的自适应六边形搜索方法搜索模式在前两步中采用的十字搜索方法能够快速确定分布在起始点周围小十字区域内的最佳匹配点,由于MV的中心偏置性以及方法对搜索起始点的预测,这种搜索策略能够以很大的概率在前期的局部搜索中找到最佳匹配点。如果前两步搜索后还未能确定最佳匹配点,这时为避免继续使用小模板而陷入局部最优,基于运动矢量场的自适应六边形搜索方法首先对搜索起始点外围LHSP上的点作匹配计算,然后用HEXBS中的循环搜索确定最佳匹配点。这样基于运动矢量场的自适应六边形搜索方法能够以大跨度快速逼近距离起始点较远的最佳匹配点,同时较好地避免了陷入局部最优,在方法后期也能达到很好的搜索速度和精度。
分别将K-1帧、K+1帧中筛选后的宏块和参考帧K按照上述SAD准则及自适应六边形搜索策略进行块匹配,获得当前帧K-1相对于参考帧K的运动矢量场,以及当前帧K+1相对于参考帧K的运动矢量场。
(iii)最小二乘法获得摄像机六参数模型
选取步骤(i)中获取到的当前帧K-2帧、K-1帧、K+1帧、K+2帧中两侧子块作为特征块,将经过(i)(ii)步骤获得的运动矢量代入摄像机六参数模型(如下式)后,采用最小二乘法估计参数m0、m1、m2、n0、n1、n2。6参数仿射变换模型:可以对平移、旋转、缩放运动进行建模,其定义如下:
其中m0和n0分别表示像素点在x和y方向的平移幅度,m1、n1、m2、n2四个参数描述了缩放和旋转转动。
所述步骤(3)中的通过运动补偿分别获得当前帧K-2帧、K-1帧、K+1帧、K+2帧的重建帧K-2'、K-1'、K+1'、K+2',其具体内容如下:
对于当前帧K-2帧、K-1帧、K+1帧、K+2帧中的每一个点根据上述获取的摄像机模型,计算其分别在参考帧K中的对应位置并对其进行赋值,从而实现对于K-2帧、K-1帧、K+1帧、K+2帧的全局运动补偿,使补偿后的重建帧K-2'、K-1'、K+1'、K+2'与参考帧K的背景对齐,从而实现下述结合边缘信息、自适应最大方差阈值的基于自适应六边形运动估计及五帧背景对齐的动背景下视频分割方法。
所述步骤(4)中的采用Kirschl算子提取边缘信息,并分别与参考帧K边缘进行差分,并采用最大方差阈值进行二值化,其具体步骤如下:
(i)Kirsch算子提取边缘信息,并与参考帧K边缘进行差分
边缘检测算子种类很多,选择Kirsch边缘检测算子对于重建帧K-2'、K-1'、K+1'、K+2'及参考帧K帧进行边缘特征提取。
Kirsch算子是由8个模板组成的方向算子,如下所示,8个模板代表8个方向,图像中的每个点都用8个模板进行卷积,取8个方向中的最大值作为边缘幅度图像的输出。
Kirschl算子的8个方向模板如下:
应用Kirsch算子对于重建帧K-2'、K-1'、K+1'、K+2'及参考帧K帧分别提取边缘的结果为:fk-2′(x,y)、fk-1′(x,y)、fk+1′(x,y)、fk+2′(x,y)及fk(x,y)。
对重建帧K-2'、K-1'、K+1'、K+2'分别与K帧的边缘进行图像差分运算,求得帧差d1、d2、d3、d4,其中:
帧差d1=|fk-2′(x,y)-fk(x,y)|,帧差d2=|fk-1′(x,y)-fk(x,y)|
帧差d3=|fk+1′(x,y)-fk(x,y)|,帧差d4=|fk+2′(x,y)-fk(x,y)|
(ii)采用最大方差阈值进行二值化
最大方差阈值是一种自适应的阈值确定方法,它以最佳门限将图像的直方图分成两组,当两组间的方差为最大时,决定阈值。所以本部分采用这种方法来实现边缘图像差分结果的二值化。
设一幅图像的灰度值为0~m-1级,灰度值i的像素数为n
i,则总的像素点数:
各值的概率为:
设最佳阈值为T,用阈值T将像素分成两组:C0={0~T-1}和C1={T~m-1},C0和C1产生的概率及平均值由以下公式得出:
C0产生的概率
C1产生的概率
C0的平均值
C1的平均值
其中:
则全部采样的灰度平均值为:μ=w0μ0+w1μ1
两组间的方差:
在1~m-1之间求上式为最大值时的T,即为最佳阈值。
根据所得到的最佳阈值T对边缘检测结果进行二值化,二值化结果分别为OtusBuf1、OtusBuf2、OtusBuf3、OtusBuf4。
所述步骤(5)中对连续五帧前两帧和后两帧得到的帧差二值化结果分别进行与运算,并经过或运算及滤波等后处理。
对上述二值化结果OtusBuf1、OtusBuf2、OtusBuf3、OtusBuf4进行与运算,与运算的结果如下:
其中:DifferBuf(1)为五帧中前两帧K-2与K-1经过运动补偿等二值化的与运算的结果,DifferBuf(2)为五帧中后两帧K+1与K+2经过运动补偿等二值化的与运算的结果;OtusBuf1(i)、OtusBuf2(i)、OtusBuf3(i)、OtusBuf4(i)表示对帧差d1、d2、d3、d4分别进行二值化的结果。
对上述与运算结果进行或运算:
其中DifferBuf(i)为经过或运算的最终处理结果。
本发明与现有技术相比所具有的优点在于:本方法通过在块匹配方法前进行宏块的预先判断能够有效减少块匹配的时间,通过将连续五帧视频序列通过运动估计、运动补偿进行背景对齐及后续对五帧图像的处理,能够准确的将动背景下的视频对象分割出来。
附图说明:
图1为本发明一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法流程图;
图2为本发明一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法中基于运动矢量场的自适应六边形搜索方法模式示意图;
图3为本发明一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法中基于运动矢量场的自适应六边形搜索方法搜索示例说明图;
图4为本发明一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法Coastguard视频序列的第139帧采用本发明方法补偿后的视频对象提取结果;其中(a)表示Coastguard视频序列的第137帧;(b)表示Coastguard视频序列的第138帧;(c)表示Coastguard视频序列的第139帧;(d)表示Coastguard视频序列的第140帧;(e)表示Coastguard视频序列的第141帧;(f)表示Coastguard视频序列的第137帧预处理的结果;(g)表示Coastguard视频序列的第138帧预处理的结果;(h)表示Coastguard视频序列的第139帧预处理的结果;(i)表示Coastguard视频序列的第140帧预处理的结果;(j)表示Coastguard视频序列的第141帧预处理的结果;(k)表示Coastguard视频序列的第137帧的重建帧经过Kirsch边缘检测的处理结果;(l)表示Coastguard视频序列的第138帧经过Kirsch边缘检测的处理结果;(m)表示Coastguard视频序列的第139帧的重建帧经过Kirsch边缘检测的处理结果;(n)表示Coastguard视频序列的第140帧的重建帧经过Kirsch边缘检测的处理结果;(o)表示Coastguard视频序列的第141帧的重建帧经过Kirsch边缘检测的处理结果;(p)表示Coastguard视频序列的第139帧采用本发明方法经过运动估计、补偿的五帧背景对齐方法后提取的二值视频对象平面;(q)表示Coastguard视频序列的第139帧采用本发明方法经过运动估计、补偿的五帧背景对齐方法后提取的视频对象平面。
具体实施方式:
下面结合附图及具体实施方式进一步详细介绍本发明。
本发明一种基于自适应六边形运动估计及五帧背景对齐的动背景下视频对象提取方法,包括以下步骤(如图1所示):
步骤1.灰度变换及形态学预处理。
首先将YUV格式的视频序列做灰度变换,由于Y分量包含灰度信息,因此将Y分量从视频序列中提取出来。由于视频中不可避免的会出现噪声的干扰,因此对每帧图像进行形态学开闭重建,消除噪声,平滑掉一些细小的边缘以简化图像。预处理的结果可参见图4(f)(g)(h)(i)(j)。
步骤2.将第K-2帧、第K-1帧、参考帧K帧、第K+1帧与第K+2帧分成8×8宏块,根据纹理信息对第K-2帧、第K-1帧、参考帧K帧、第K+1帧与第K+2帧中所有宏块进行预判断、筛选。
由于在下述步骤中应用最小二乘法计算全局运动参数的时候,很多误差大的宏块被直接删除,如果能够在最小二乘法运算之前将误差大的宏块剔除,将显著的提高运算速度,并降低运算量。而决定宏块误差大小、影响计算准确性的重要因素便是宏块的纹理信息,也就是梯度信息。本部分提出的宏块预判断及筛选的方法正是从宏块的梯度信息出发,根据设定的阈值对于宏块进行筛选抑或保留,当宏块的信息量小于该阈值时,对该宏块进行筛选,不作为下述步骤中参与块匹配的宏块;当信息量大于该阈值时,则对宏块进行保留,作为有效特征块参与进行下述的运动估计等运算。
其主要步骤如下:
第一步:将每一帧分成8×8子块,经试验证明,若采用分成16×16子块的形式则计算量过大,若分成4×4子块则块匹配等方法不够精确,故采用8×8子块的形式;
第二步:采用Sobel算子得到每一帧的梯度图,将梯度信息作为宏块剔除的判断依据;
其中
表示该点的梯度信息,G
x、G
y分别表示偏导数。
第三步:计算每一个宏块的梯度量;以8×8子块为例,其梯度信息量为:
第四步:确定宏块预断的阈值,一般保留所有宏块的40%,根据这个确定的值,对所有宏块的梯度量进行排序,确定保留40%下宏块筛选的最佳阈值T;
第五步:完成对于宏块的筛选,若其梯度信息量>T,则对宏块进行保留,作为有效特征块参与进行下述的运动估计等运算;若其梯度信息量<T,对该宏块进行筛选,不作为下述步骤中参与块匹配的宏块
步骤3.对上述筛选后的宏块采用SAD准则、自适应六边形搜索策略进行块匹配,以第K-2帧、第K-1帧、第K+1帧与第K+2帧分别作为当前帧,以第K帧作为参考帧,得到该四帧相对于参考帧K帧的运动矢量场,并通过最小二乘法计算全局运动参数,获得摄像机六参数模型。
目前常用的块匹配准则有:平均绝对误差MAD(Mean Absolute Difference)、最小均方误差MSE(Mean Square Error)、最小绝对差SAD(Sum of Absolute)。
本部分采用SAD块匹配准则,该准则不仅能够找到最佳匹配点,并且计算量小、耗时短。
其中(i,j)为位移量,fk和fk-1分别为当前帧和上一帧的灰度值,M×N为宏块的大小,若在某一点处SAD(i,j)达到最小,则该点为要找的最优匹配点。
自适应六边形搜索策略
本部分所采用的大六边形模式除了包含传统六边形的六个搜索顶点和中心点之外,如图2(b),还包含六边形中分别位于搜索中心点正上方和正下方的两条边的中点,如图2(c),这样新的大六边形搜索模式共包含了9个搜索点,可以在保证大六边形搜索方法运算复杂度的前提下,大大提高搜索的速度,并结合了运动矢量的中心偏置特性和相关性,提出了一种基于运动矢量场的自适应六边形搜索方法。
基于运动矢量场的自适应六边形搜索方法具体步骤如下:
第一步:在起始点处利用十字模式搜索最佳匹配点,如图3(a)所示,此步骤中十字模式的5个搜索点用①表示,如果最佳匹配点在十字模式的中心,即中心的黑色的①位置处,一步搜索停止,此时即为最佳匹配点,得到最终要求的运动矢量MV(0,0);否则,进入步骤(2);
第二步:以步骤(1)搜索到的最佳匹配点为中心进行十字模式块匹配,此时需要搜寻3个新的搜索点,如图3(b)中增加的②所示,如果最佳匹配点在十字模式的中心,即中心黑色的①位置处,二步搜索停止,此点即为最佳匹配点,得到最终要求的运动矢量MV(±1,0)或(0,±1);否则,进入步骤(3);
第三步:以第一步的起始点为中心,进行LHSP匹配计算,如图3(c)中增加的③所示,并将结果与第二步得到的最佳匹配点进行比较,若新的最佳匹配点在LHSP模板上则转到步骤4,如果新的最佳匹配点仍在步骤2所得的最佳匹配点且不在LHSP上,那么认为该点为最佳匹配点,终止运动估计;
第四步:以上一步的最佳匹配点为中心,构造大六边形搜索模式,如图3(d)中的增加的④所示,找出新的最佳匹配点,如果该点在大六边形的中心,即中心的黑色的②位置处,进入步骤(5);否则,继续步骤(4);
第五步:以步骤(4)所搜索到的位于大六边形的中心的最佳匹配点为中心,构造小六边形搜索模式,如3(e)中的增加的⑤所示。应用改进的部分块失真准则,找出新的最佳匹配点,如黑色的⑤位置处,该点所对应的向量即为最终要求的运动矢量。
相比六边形搜索法和现有的十字菱形搜索法,基于运动矢量场的自适应六边形搜索方法最大的改进是利用运动矢量的特性使得搜索点数减少,搜索速度提高,尤其是对静止块或准静止块(|MV|=1),基于运动矢量场的自适应六边形搜索方法搜索模式在前两步中采用的十字搜索方法能够快速确定分布在起始点周围小十字区域内的最佳匹配点,由于MV的中心偏置性以及方法对搜索起始点的预测,这种搜索策略能够以很大的概率在前期的局部搜索中找到最佳匹配点。如果前两步搜索后还未能确定最佳匹配点,这时为避免继续使用小模板而陷入局部最优,基于运动矢量场的自适应六边形搜索方法首先对搜索起始点外围LHSP上的点作匹配计算,然后用HEXBS中的循环搜索确定最佳匹配点。这样基于运动矢量场的自适应六边形搜索方法能够以大跨度快速逼近距离起始点较远的最佳匹配点,同时较好地避免了陷入局部最优,在方法后期也能达到很好的搜索速度和精度。
分别将K-1帧、K+1帧中筛选后的宏块和参考帧K按照上述SAD准则及自适应六边形搜索策略进行块匹配,获得当前帧K-1相对于参考帧K的运动矢量场,以及当前帧K+1相对于参考帧K的运动矢量场。
步骤4.根据最小二乘法求摄像机运动参数。
选取步骤2中获取到的当前帧K-2帧、K-1帧、K+1帧、K+2帧中两侧子块作为特征块,将经过块匹配、运动估计获得的运动矢量代入摄像机六参数模型(如下式)后,采用最小二乘法估计参数m0、m1、m2、n0、n1、n2。6参数仿射变换模型:可以对平移、旋转、缩放运动进行建模,其定义如下:
其中m0和n0分别表示像素点在x和y方向的平移幅度,m1、n1、m2、n2四个参数描述了缩放和旋转转动。
步骤5.通过运动补偿分别获得当前帧K-2帧、K-1帧、K+1帧、K+2帧的重建帧K-2'、K-1'、K+1'、K+2'。
对于当前帧K-2帧、K-1帧、K+1帧、K+2帧中的每一个点根据上述获取的摄像机模型,计算其分别在参考帧K中的对应位置并对其进行赋值,从而实现对于K-2帧、K-1帧、K+1帧、K+2帧的全局运动补偿,使补偿后的重建帧K-2'、K-1'、K+1'、K+2'与参考帧K的背景对齐,从而实现下述结合边缘信息、自适应阈值的基于自适应六边形运动估计及五帧背景对齐的动背景下视频分割方法。
步骤6.采用Kirsch算子提取边缘信息,分别与参考帧K边缘进行差分,并采用最大方差阈值进行二值化。
边缘检测算子种类很多,选择Kirsch边缘检测算子对于重建帧K-2'、K-1'、K+1'、K+2'及参考帧K帧进行边缘特征提取。
Kirsch算子是由8个模板组成的方向算子,如下所示,8个模板代表8个方向,图像中的每个点都用8个模板进行卷积,取8个方向中的最大值作为边缘幅度图像的输出。
Kirschl算子的8个方向模板如下:
应用Kirsch算子对于重建帧K-2'、K-1'、K+1'、K+2'及参考帧K帧分别提取边缘的结果为:fk-2′(x,y)、fk-1′(x,y)、fk+1′(x,y)、fk+2′(x,y)及fk(x,y),结果可参见图2(k)(l)(m)(n)(o)。
对重建帧K-2'、K-1'、K+1'、K+2'分别与K帧的边缘进行图像差分运算,求得帧差d1、d2、d3、d4,其中:
帧差d1=|fk-2′(x,y)-fk(x,y)|,帧差d2=|fk-1′(x,y)-fk(x,y)|
帧差d3=|fk+1′(x,y)-fk(x,y)|,帧差d4=|fk+2′(x,y)-fk(x,y)|
最大方差阈值是一种自适应的阈值确定方法,它以最佳门限将图像的直方图分成两组,当两组间的方差为最大时,决定阈值。所以本部分采用这种方法来实现边缘图像差分结果的二值化。
设一幅图像的灰度值为0~m-1级,灰度值i的像素数为ni,则总的像素点数:
设最佳阈值为T,用阈值T将像素分成两组:C0={0~T-1}和C1={T~m-1},C0和C1产生的概率及平均值由以下公式得出:
C0产生的概率
C1产生的概率
C0的平均值
C1的平均值
其中:
则全部采样的灰度平均值为:μ=w0μ0+w1μ1
两组间的方差:
在1~m-1之间求上式为最大值时的T,即为最佳阈值。
根据所得到的最佳阈值T对帧差d1、d2、d3、d4分别进行二值化,二值化的结果分别为OtusBuf1、OtusBuf2、OtusBuf3、OtusBuf4。
步骤7.与运算及后处理。
对上述二值化结果OtusBuf1、OtusBuf2、OtusBuf3、OtusBuf4进行与运算,与运算的结果如下:
其中:DifferBuf(1)为五帧中前两帧K-2与K-1经过运动补偿等二值化的与运算的结果,DifferBuf(2)为五帧中后两帧K+1与K+2经过运动补偿等二值化的与运算的结果;OtusBuf1(i)、OtusBuf2(i)、OtusBuf3(i)、OtusBuf4(i)表示对帧差d1、d2、d3、d4分别进行二值化的结果。
对上述与运算结果再进行或运算:
其中DifferBuf(i)为经过或运算的最终处理结果。
由于视频序列中不可避免的会有噪声的干扰,因此在与运算后还要进行一些后处理工作,以去除孤立的小区域、小间隙,后处理的结果见图4(p)。为此,本部分首先采用中值滤波的方法去掉一些干扰的噪声,再采用图像形态学方法,主要包括腐蚀及膨胀运算,不但可以去除噪声并且可以起到平滑图像的作用。腐蚀运算主要消除边界点,使边界向内部收缩,而膨胀运算则将与物体接触的所有背景点合并到该物体中,使边界向外扩张。