首页> 中国专利> 基于超像素的Codebook动态场景中目标检测方法

基于超像素的Codebook动态场景中目标检测方法

摘要

本发明公开了一种基于超像素的Codebook动态场景中目标检测方法,其特征在于,包括以下步骤:(1)采用的超像素分割方法对视频帧进行分割,分割成K个超像素;(2)采用Codebook背景建模法,为步骤(1)中分割出来的每一个超像素建立一个Codebook,每个Codebook包括一个或几个Codeword,每个Codeword有它的学习时最大最小阈值,检测时的最大最小阈值,完成背景建模;(3)背景建模完成后,对当前进入的视频帧进行目标检测,如果当前帧的某个超像素值符合该背景像素值的分布,就标记为背景,否则标记为前景;最后,用当前的视频帧更新背景模型。本发明解决传统Codebook背景建模算法计算量和内存需求大,并且构建的Codewords不准确等问题,提高目标检测的准确度和速度,使其达到实时准确的要求,从而满足现实生活中智能监控的需求。

著录项

  • 公开/公告号CN103578119A

    专利类型发明专利

  • 公开/公告日2014-02-12

    原文格式PDF

  • 申请/专利权人 苏州大学;

    申请/专利号CN201310534301.8

  • 申请日2013-10-31

  • 分类号G06T7/20(20060101);

  • 代理机构11331 北京康盛知识产权代理有限公司;

  • 代理人伊美年

  • 地址 215123 江苏省苏州市工业园区仁爱路199号

  • 入库时间 2024-02-19 22:49:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-02-15

    授权

    授权

  • 2014-03-12

    实质审查的生效 IPC(主分类):G06T7/20 申请日:20131031

    实质审查的生效

  • 2014-02-12

    公开

    公开

说明书

技术领域

本发明涉及一种数据识别方法,尤其涉及一种目标检测算法。

背景技术

自然场景的研究和应用已经成为当今世界热门主题。视频监控系统是自然场景中的一个重要模 块,IVS(Intelligent Video Surveillance Systems)利用图像传感器作为前面主要的设备,然后使用计算 机视觉、图像处理、模式识别、机器学习等算法处理视频,最终的目的是给交通控制和管理提供交通 数据。目标是监控系统中的重要部分,所以他们对整个监控系统的正常运行有着重要的作用。基于视 觉的目标检测对IVS有着重要的意义,因为IVS需要它来提供搜集目标数据,一方面,搜集到的数据 可以用于优化监控控制和日常安排,监控模拟系统也能基于这些数据来建立,通过这些数据来检测控 制和日常安排算法。另一方面,目标的密度能直接反应公共场合的拥挤情况,所以当危险出现时,可 以通过搜集的数据来合理制作疏通方案。在视频监控中,摄像机是静止的并且经常朝向地面,根据摄 像机不同的安装位置,可以粗略的将监控场景分为两类:复杂场景和简单场景。复杂场景包括非机动 化车辆行驶的道路、十字路口、人行道、公交站台等,在复杂场景的监控算法中,必须考虑环境因素, 例如天气、光照、风的级数等。因此,如果可以准确和实时的检测出复杂场景下的所有目标,那么将 会推动IVS的快速发展。上述的这个例子属于计算机视觉中的概念,而完成这项工作的基础即为目标 检测技术。所谓目标,即监控视频中运动的车辆、行人和其他物体的总称,也称为“视频前景”。而 目标检测是计算机视觉中的一个基本概念,它是在智能监控系统中,根据视频帧所描述的场景构建出 背景模型,然后将当前帧与构建的背景模型进行比较,找出前景目标。从上述的例子可知,IVS为交 通控制和交通管理提供准确、实时的交通数据主要就依赖于对视频帧的目标检测,所以对视频帧进行 有效的目标检测是重要的基础性工作,因此目标检测是计算机视觉中最为基础和关键的研究内容之 一。目前目标检测系统已经广泛应用到多领域。如:在主成分分析算法(Principal components analysis, PCA)和马尔科夫随机场(Markov random field,MRF)中研究目标检测系统,主要是研究目标检测系统中 背景像素值分布和像素的时空上下文如何影响目标检测;基于Codebook算法研究动态场景下的目标 检测,背景建模是目标检测的关键技术,Codebook是一种简单有效的背景建模算法,所以文中用 Codebook算法作为研究目标检测系统的基础模型,通过实验表明Codebook是有效解决目标检测问题 的关键技术;在目标检测中,背景模型对目标检测的准确性有很大的影响,目标检测的特征也就是如 何在复杂的场景下实时的构建出准确的背景模型,超像素是具有相似特征的一块区域,区域的相似性 也就是有着高度的空间一致性,所以文中提出一种基于超像素的Codebook目标检测方法;在目标检 测领域,目前已经提出相应的利用像素点的时空信息进行目标检测,能够有效的构建准确的背景模型, 并实时的检测出目标前景。尽管针对不同场景下的视频采用目标检测的算法可能存在差别,但其过程 基本一致。首先对训练视频帧进行背景建模,主要是从训练的视频帧中提取像素值,然后针对不同的 方法,建立不同的背景模型;背景模型建好以后,对当前进入的视频帧进行目标检测,如果当前帧的 某个像素值符合该背景像素值的分布,就标记为背景,否则标记为前景;最后,用当前的视频帧更新 背景模型。

目前,基于背景建模的目标检测方法主要有以下4种:帧差法、混合高斯(Mixtures of Gaussian, 简称GMM)、核密度估计(Kernel Density Estimation,简称KDE)和Codebook背景建模方法。帧差 法计算简单、复杂度低、实时性好,但是当目标运动过慢或者与周围像素点比较相似时,容易把一个 目标份分割成几个目标,鲁棒性不够。Stauffer等人提出了GMM,将每个像素点的概率分布用参数化 的混合高斯来描述,利用多个高斯函数能够很好地描述背景像素值的分布。GMM算法计算量小,内 存需求小,能够很好的检测出前景目标。但是当前景目标运动过快或者过慢时,不能很好的检测出前 景目标。Elgammal等人提出KDE,通过采样训练帧得到的像素值来估计当前像素点属于背景的概率, 很好的检测出完整的前景目标,同时也克服了像素值在短时间内发生频繁变化等问题,但是KDE计 算量过大,实时性比较差,不能满足实际应用的需求。王兴宝等人针对KDE前期计算量大,后期背 景更新阶段自适应性差等问题,提出了LST-KDE(Kernel Density Estimation of local spatio-temporal  model),在前期训练学习阶段采用K-means选择关键帧,一定程度的减少了信息冗余和计算量大等问 题,但是对于复杂场景下的目标检测,检测效果仍然不够理想。Yaser Sheikh等人提出一种 KDE-Bayesian背景建模,利用KDE在联合域内表示像素值,很好的考虑了像素的空间一致性,但是 在计算像素的后验概率时,时间复杂度太大,不能满足实时性的要求。

针对上述方法存在的各种不足,特别是在复杂场景下,例如大量的摇摆树叶、波动的水面、喷泉 和训练帧中存在目标前景,检测效果受到严重影响,Kim等人提出了Codebook目标检测方法。Kim 通过光照实验观察到视频帧的像素值在RGB空间中呈现圆柱体的分布,并且圆柱体的轴心是指向 RGB坐标原点的,于是假设背景像素点分布在圆柱体内,对其进行建模和参数化,同时也对背景 Codewords进行了改进,提出了分层Codebook模型。与其他方法相比,Codebook目标检测方法具有 计算量小、内存需求小和实时性好等优点,同时对动态背景(摇摆树叶、波动的水面和喷泉等)具有 很好的检测效果。Codebook是基于聚类和量化的目标检测方法,通过对每个像素点建立一个或者几个 Codewords来描述该像素点背景像素值的聚类情况。该算法为图像中每一个像素点建立一个 Codebook,每个Codebook可以包括多个Codewords,每个Codewords有它的学习时最大最小阈值, 检测时的最大最小阈值等成员。在背景建模期间,每当来了一幅新图片,对每个像素点进行Codebook 匹配,也就是说如果该像素值在Codebook中某个Codewords的学习阈值内,则认为它离过去该对应 点出现过的历史情况偏离不大,通过一定的像素值比较,如果满足条件,此时还可以更新对应点的学 习阈值和检测阈值。如果新来的像素值对Codebook中每个Codewords都不匹配,则有可能是由于背 景是动态的,所以我们需要为其建立一个新的Codewords,并且设置相应的Codewords成员变量。因 此,在背景学习的过程中,每个像素点可以对应多个Codewords,这样就可以学到复杂的动态背景。

Codebook算法计算复杂度低,内存需求小,能够在复杂环境下达到实时的效果,而且对于动态背 景问题能很好地解决。正是因为Codebook背景建模算法构建的背景如此优越,从而吸引着大量的研 究人员对其学习和研究,从不同的方面对其进行了改进,主要分为4类:1)对参数的更改;2)对模型 的更改;3)与其他方法结合;4)像素集上扩展。

1)对参数的更改

Atif等人指出只用最长未配对时间来筛选Codewords是不够的,同时对于分层Codebook,缓存 Codewords在足够长的时间后就融入到背景也是不合适,必须加上相应其他控制条件。针对这些不足, Atif在筛选Codewords时使用了最长未配对时间和访问频率两个条件,改进算法的准确度有了较大的 提高,但是速度有所减低。徐成等人针对现有Codebook模型在RGB颜色空间下不能很好地契合其计 算特征,且无法兼顾抗干扰能力和分割质量的问题,提出一种改进Codebook模型的快速运动检测算 法。首先将像素从RGB空间转换到YUV空间来建立Codebook模型;然后单独对Codewords中的亮 度分量进行单高斯建模,使得整个Codebook具有高斯混合模型的特征。实验表明,该码书能很好的 处理噪声和阴影。

2)对模型的更改

Anup Doshi等人用HSV代替RGB颜色空间,在HSV空间中,直接用V分量代表像素的亮度, 减少了计算量,另一方面,H和S分量不会受到V分量的影响,独立性比较好。实验表明,基于HSV 的Codebook目标检测能很好的处理阴影,效果比RGB空间要好。Anup Doshi实验发现阴影部分的背 景像素没有分布在圆柱体内,而是分布在圆锥体内,为了更好的表示背景模型,他将圆柱与圆锥进行 结合,利用圆柱圆锥(Hybrid Cone-Cylinder)混合模型来建立背景模型,从而更好的描述了像素的分 布特征。霍东海等人发现背景像素的分布中心轴心并没有指向坐标原点,而且背景像素值分布形状呈 现椭球体,针对这些问题,提出了一种基于主成分分析的Codebook背景建模算法,该模型克服了混 合高斯球体模型和Codebook圆柱体模型假设的局限性,同时利用主成分分析(Principal components  analysis,简称PCA)方法来刻画椭球体背景模型,实验表明,该算法不仅能够更准确地描述背景像素 值在RGB空间中的分布特征,而且具有良好的鲁棒性。

3)与其他方法结合

Yongbin Li等人将高斯分布引入到了Codebook模型中,假设每个背景Codewords服从高斯分布, 这样对它的描述不且包含均值,还包含方差,Yongbin Li用一个协方差矩阵来表示背景的概率分布, 其中对角线元素就是每个分量的方差。通过将高斯分布与Codebook相结合,可以更好地描述背景像 素的概率分布。Yu Wu提出了通过将LBP(Local binary pattern)与Codebook相结合来检测目标,首先 利用基于LBP的纹理信息进行第一层分块背景建模,然后缩小建模粒度,在第一层上选取代表点进行 第二层Codebook背景建模;目标检测时,不同粒度从上到下与所得背景模型分层匹配。第一层采用 纹理背景建模,在第一层均匀地选取几个代表点,每个点代表一小块区域,对其进行第二层的Codebook 建模。实验表明,该方法能很好地利用局部纹理特征消除了阴影。叶勇将GMM和Codebook相结合, 利用GMM进行背景图像建模并初步提取前景对象,对背景图像进行Codebook学习,将Codebook 建模得到的前景对象与GMM得到的前景对象相融合,根据前后帧间差分得到前景对象的比例关系, 自适应地更新高斯参数和扩展码字,得到前景对象目标。实验结果表明,该方法实时性好,可消除视 频序列中的阴影和鬼影,提取完整的前景对象。

4)像素集上扩展。

Mingjun Wu将像素的时空上下文考虑进来,分别对Codebook算法在时间和空间两个维度上进行 了扩展,提出了基于上下文信息的Codebook目标检测方法,不且将当前像素值与自身Codewords进 行判断,还和周围8个领域对应的Codewords进行比较,同时也利用马尔可夫随机场将前一帧相应的 像素的是否为前景的状态信息融合到模型中,基于上下文的Codebook能很好地从复杂场景中检测出 前景目标,但是计算复杂度太高,计算量太大,平均1秒只能处理5帧左右,达不到实时的要求。陈 财雄为了消除摄像机静止条件下复杂背景环境对运动目标检测造成的影响,首先利用分块的思想将一 幅图像分成若干规则块,然后用块代替像素值进行背景建模聚类成Codebook。实验证实,对存在动态 因素的背景视频,该算法能有效抑制伪目标的出现,而且能准确快速地检测出运动目标。

以上这些Codebook背景建模算法都是对单个像素点建模,而在图像中相似区域往往是属于某一 个目标的,并有着相同的运动变化,所以基于单个像素点的背景建模算法没有考虑到背景目标空间一 致性,对动态背景建模不够稳定;Anup Doshi将像素值从RGB颜色空间转换到HSV颜色空间中,V分 量分布不对称,从白到黑变化剧烈,不能很好地适应光照的变化。

发明内容

本发明目的是:提供一种实时性、准确率和和鲁棒性都很好的基于超像素的Codebook动态场 景中目标检测方法,解决传统Codebook背景建模算法计算量和内存需求大,并且构建的Codewords 不准确等问题,提高目标检测的准确度和速度,使其达到实时准确的要求,从而满足现实生活中智能 监控的需求。

本发明的技术方案是:一种基于超像素的Codebook动态场景中目标检测方法,其特征在于, 包括以下步骤:

(1)采用的超像素分割方法对视频帧进行分割,分割成K个超像素;

(2)采用Codebook背景建模法,为步骤(1)中分割出来的每一个超像素建立一个Codebook, 每个Codebook包括一个或几个Codeword,每个Codeword有它的学习时最大最小阈值,检测时的最 大最小阈值,完成背景建模;

(3)背景建模完成后,对当前进入的视频帧进行目标检测,如果当前帧的某个超像素值符合 该背景像素值的分布,就标记为背景,否则标记为前景;最后,用当前的视频帧更新背景模型。

进一步的,所述步骤(1)中的超像素分割方法为:改进的SLIC分割法。其他分割方法,如: Superpixel(CVPR2003)分割法、Superpixel Lattices(CVPR2008)分割法、TurboPixels(PAMI2009) 分割法或Entropy Rate Superpixel Segmentation(CVPR2011)分割法也可以实现本发明。但是在 分割精度和实时性方面不如改进的SLIC分割法。

优选的,所述步骤(2)中Codebook背景建模法采用HSL颜色空间替代原算法中的RGB空间, HSL颜色空间将像素值分为三个通道:色调(H)、饱和度(S)、亮度(L)进行计算。

进一步的,所述步骤(1)具体为:

假设视频帧大小为N×M,将其分割成具有K个超像素,则每个超像素约包含N×M/K个 像素值,每个超像素的中心区域约为对每个超像素构建5元组的初始聚类中心 Ck=[Hk,Sk,Lk,xk,yk](1≤k≤K),由于每个超像素的空间范围约为S2,所以可以假设属于该聚类 中心的像素点在2S×2S的范围内,然后计算2S×2S范围内所有像素点(1≤h≤2S×2S)与该聚 类中心的欧氏距离:

dHSL=(Hk-Hh)2+(Sk-Sh)2+(Lk-Lh)2---(1)

dxy=(xk-xh)2+(yk-yh)2---(2)

Ds=(1-m)dHSL+mdxy           (3)

公式3中的m代表压缩系数,取值在10和20之间,越大代表像素点的空间信息越重要,越小 代表颜色信息越重要。通过公式3可以计算出2S×2S范围内所有像素点与该聚类中心的距离。

G(x,y)=||I(x+1,y)-I(x-1,y)||2+||I(x,y+1)-I(x,y-1)||2      (4)

根据公式4计算出超像素中心点3×3领域内最小梯度点,然后选取该点作为初始种子点,通过 寻找最小梯度点可以避免选取边界点和噪声点,提高分割的准确度;

超像素分割步骤如下所示:

在边长为S的规则方块内采样像素值,并初始化聚类中心Ck=[Hk,Sk,Lk,xk,yk];

根据公式4计算该聚类中心点周围的3×3领域内的梯度值,选取最小梯度值像素点作为聚类中 心点;

根据距离公式3,计算所有聚类中心点周围的2S×2S平方领域内所有像素点到该聚类中心点 的距离,然后重新分配像素到最佳聚类中心点;

重新计算所有聚类中心点和移动误差E(当前聚类中心与上一次聚类中心的L1范式距离);

如果E小于所设阈值,则算法停止,否则返回到3)。

进一步的,其特征在于,所述步骤(2)具体为:

通过SLIC将视频帧分割为K个超像素区域,每个超像素大小约为将分割结果存 储在SP={s1,s2,s3,........sK},sk代表第k(1≤k≤K)个超像素的所有像素点集合,设 sk={(xk1,yk1),(xk2,yk2),........,(xkw,ykw)},其中(xkj,ykj)代表属于第k个超像素的第j个像素点坐标,每 个超像素拥有不同个数的像素,也就是w是不一样的;

根据分割的结果,在背景训练阶段,给超像素sk构建D个Codewords:SPCW={c1,c2,.......cD}, 其中ci由一个HS向量和一个6元组向量组成,直接用L颜色分 量表示亮度减少计算量,其中:

1)和分别代表属于该ci的超像素色调和饱和度的平均值;

2)和分别代表最大和最小亮度值;

3)fi是匹配成功的次数;

4)λi是没有匹配的最长时间间隔;

5)pi和qi分别代表ci第一次和最后一次出现的时间;

||Ft||2=H2+S2---(5)

||vi||2=Hi2+Si2---(6)

<Ft,vi>2=(Hi×H+Si×S)2---(7)

z2=||Ft||2cos2θ=<Ft,vi>2||vi||2---(8)

colordist(Ft,vi)=||Ft||2-z2---(9)

Ft为t帧的第i个超像素,和分别为该超像素的色调和饱和度的平均值,亮度bright 的判断与经典Codebook一样。只通过色调和饱和度来计算当前超像素与Codewords的颜色扭曲度, 而没有将亮度加入计算,可以增强对光照变化的适应性同时也减少了计算量,对第i个超像素,根 据如下步骤来建立背景Codewords:

初始化D为零,SPCW为空;

训练帧t从1到NF,循环执行:

(iv)计算属于第i个超像素所有像素点的H、S和L三个通道的平均值:和

(v)如果SPCW为空或者根据条件(a)和(b)没有匹配到,则令D加1,新建一个Codewords: cD并初始化vD=(H,S)booD=<L,L,1,t-1,t,t>;

·(a)colordist(Ft,vi)≤ε

·(b)bright=1(IlowLIhig)

(vi)如果根据条件(a)和(b)与SPCW中某个ci匹配,则更新ci

vi=(fiHi+Hfi+1,fiSi+Sfi+1)

对于SPCW中的每个ci,更新λi为max(λi,(N-qi+pi-1)),如果λi≥N2,则删掉ci,此时 构建的Codewords就是基于超像素的Codebook背景模型。

进一步的,所述步骤(3)具体为:在前景检测时,当前帧为t,判断过程如下:

对于第k个超像素,计算出属于该超像素的所有像素的和

计算出该超像素与ci(1≤i≤D)的颜色扭曲度(公式9),判断下面两个条件是否满足,如果都 满足,标记该超像素为背景区域,并根据公式10更新ci,如果存在任何一个条件不满足,则标记该 超像素为前景,

·(a)colordist(Ft,vi)≤ε。

·(b)bright=1(IlowLIhig)

该公式表示计算出来的亮度的范围在Codewords的最小Ilow最大Ihig亮度范围之内时,则标 记当前像素的亮度bright为1。

本发明提出了基于超像素的Codebook目标检测方法(CBSP—OD),首先将视频帧像素值转换到HSL 颜色空间,然后利用改进的SLIC(Simple Linear Iterative Clustering)方法对视频帧中的像素点 进行聚类,最后对每个超像素进行Codebook背景建模。用超像素代替单个像素构建背景模型,使得 构建的Codewords更加准确,通过室内外动态场景视频实验证明该算法在实时性、准确率和和鲁棒性 方面取得很好效果。可用于前景检测、行人检测、目标跟踪、前背景分割、人物识别、智能监控等多 个领域。主要优点如下:

1)经典Codebook背景建模算法像素值是在RGB空间,在RGB空间中,三个通道之间存在极 大的相关性,当光照变化时,像素的三个通道值都将发生剧烈的变化,匹配过程中将背景像素误判为 前景点,降低算法的稳定性。HSV颜色空间将V作为亮度分量,能较好的降低误检率,但是亮度分 量V并非均匀对称,从亮到暗变化过于剧烈,对光照鲁棒性不够。HSL颜色空间将像素值分为三个通 道:色调(H)、饱和度(S)、亮度(L),HSL将亮度作为一个独立的分量分离出来,可以避免当光 照存在剧烈变化时,依然能够检测出真实的前景目标,不会出现漏检和误检的情况。实验证实,HSL 空间下的Codebook背景建模要比RGB空间下的效果好。

2)传统Codebook背景建模算法都是对单个像素点建模,而在图像中相似区域往往是属于某一个 目标的,并有着相同的运动变化,所以基于单个像素点的背景建模算法没有考虑到背景目标空间一致 性,对动态背景建模不够稳定。超像素是具有某种相似特征的一个区域,通常选取颜色特征。用相似 像素区域块代替单个像素进行背景建模,很好地考虑了背景目标的完整性,使得背景Codewords构建 的更加准确。

3)本发明用超像素代替单个像素点进行背景建模,能够很好的避免了计算量和内存需求大等 问题。对于320×240的视频帧,通常构建1500个超像素,每个超像素平均拥有50(320×240/1500) 个像素点,去除超像素分割所花费的0.5秒,理论上速度可以提高10倍左右。通过大量复杂场景 下的实验,验证了本发明算法比经典Codebook检测速度快2倍以上。

附图说明

下面结合附图及实施例对本发明作进一步描述:

图1为视频帧在不同超像素大小下分割的结果图。

图2为交通监控视频检测结果。

图3为河边复杂场景检测结果。

图4为摇摆树枝复杂场景检测结果。

图5为CBSP-OD与其他算法训练时间对比。

图6为CBSP-OD与其他算法漏检率对比。

图7为CBSP-OD与其他算法误检率对比。

具体实施方式

实施例:本发明实验环境IntelCore22.0GHz,1G内存的PC机器,编程语言C++,实验环境为 VS2008,超像素分割K=1500、m=15,训练采样NF=50,背景Codewords亮度调节α=0.6、β=1.8, 背景差分颜色扭曲度阈值ε=20(在文中已设定的阈值已根据实验验证效果比较好,算法再现时不需要 修改,而对于实验分析中所设定的阈值,可依实验视频属性的差异有所改动但调整幅度不大)。本发 明实验视频为取自I2R视频库中的交通监控视频、河边和摇摆树枝动态场景监控视频。

超像素是具有某种相似特征的一个区域,通常选取颜色特征。本发明采用的超像素分割方法是 SLIC分割方法,假设视频帧大小为N×M,将其分割成具有K个超像素,则每个超像素约包含 N×M/K个像素值,每个超像素的中心区域约为对每个超像素构建5元组的初 始聚类中心Ck=[Hk,Sk,Lk,xk,yk](1≤k≤K),由于每个超像素的空间范围约为S2,所以可以假设 属于该聚类中心的像素点在2S×2S的范围内,然后计算2S×2S范围内所有像素点( 1≤h≤2S×2S)与该聚类中心的欧氏距离:

dHSL=(Hk-Hh)2+(Sk-Sh)2+(Lk-Lh)2---(1)

dxy=(xk-xh)2+(yk-yh)2---(2)

Ds=(1-m)dHSL+mdxy        (3)

公式3中的m代表压缩系数,取值在10和20之间,越大代表像素点的空间信息越重要,越小 代表颜色信息越重要。通过公式3可以计算出2S×2S范围内所有像素点与该聚类中心的距离。

G(x,y)=||I(x+1,y)-I(x-1,y)||2+||I(x,y+1)-I(x,y-1)||2      (4)

根据公式4计算出超像素中心点3×3领域内最小梯度点,然后选取该点作为初始种子点,通过 寻找最小梯度点可以避免选取边界点和噪声点,提高分割的准确度。

超像素分割步骤如下所示:

在边长为S的规则方块内采样像素值,并初始化聚类中心Ck=[Hk,Sk,Lk,xk,yk];

根据公式4计算该聚类中心点周围的3×3领域内的梯度值,选取最小梯度值像素点作为聚类中 心点;

根据距离公式3,计算所有聚类中心点周围的2S×2S平方领域内所有像素点到该聚类中心点 的距离,然后重新分配像素到最佳聚类中心点;

重新计算所有聚类中心点和移动误差E(当前聚类中心与上一次聚类中心的L1范式距离);

如果E小于所设阈值,则算法停止,否则返回到3);

超像素分割算法可以很好地将视频帧中的相似区域分割出来,一幅320×240的图像,分割的超像 素为1500,正确率大于85%,耗时约为0.5秒,分割效果如图1所示。在图1中,第1帧和第10帧 取自交通监控视频,第8帧和第16帧取自河边复杂场景监控视频。第一行分割的超像素大小为200; 第二行超像素大小为400;第三行超像素分割大小为700;第四行超像素分割大小为1000。图1是不 同的超像素数目分割结果图,对于所有图像分割设置m=0.8,在此强调空间信息比颜色重要,本发明 所有实验设置K=1500。

改进的SLIC能很好地分割出相似区域,通过SLIC算法将视频帧分割成K个超像素,在训练 阶段,视频帧有N×M个像素值,其中1≤h≤N,1≤w≤M,其中N是图像高度,M为宽度。

通过改进的SLIC将视频帧分割为K个超像素区域,每个超像素大小约为将分 割结果存储在SP={s1,s2,s3,........sK},sk代表第k(1≤k≤K)个超像素的所有像素点集合,设 sk={(xk1,yk1),(xk2,yk2),........,(xkw,ykw)},其中(xkj,ykj)代表属于第k个超像素的第j个像素点坐标,每 个超像素拥有不同个数的像素,也就是w是不一样的。

根据分割的结果,在背景训练阶段,给超像素sk构建D个Codewords: SPCW={c1,c2,.......cD},其中ci由一个HS向量和一个6元组向量 组成,直接用L颜色分量表示亮度减少计算量,其中:

1)和分别代表属于该ci的超像素色调和饱和度的平均值;

2)和分别代表最大和最小亮度值;

3)fi是匹配成功的次数;

4)λi是没有匹配的最长时间间隔;

5)pi和qi分别代表ci第一次和最后一次出现的时间。

||Ft||2=H2+S2---(5)

||vi||2=Hi2+Si2---(6)

<Ft,vi>2=(Hi×H+Si×S)2---(7)

z2=||Ft||2cos2θ=<Ft,vi>2||vi||2---(8)

colordist(Ft,vi)=||Ft||2-z2---(9)

Ft为t帧的第i个超像素,和分别为该超像素的色调和饱和度的平均值,亮度bright的判 断与经典Codebook一样。只通过色调和饱和度来计算当前超像素与Codewords的颜色扭曲度,而没 有将亮度加入计算,可以增强对光照变化的适应性同时也减少了计算量,对第i个超像素,根据如下 步骤来建立背景Codewords:

初始化D为零,SPCW为空;

训练帧t从1到NF,循环执行:

计算属于第i个超像素所有像素点的H、S和L三个通道的平均值:和

如果SPCW为空或者根据条件(a)和(b)没有匹配到,则令D加1,新建一个Codewords: cD并初始化vD=(H,S)booD=<L,L,1,t-1,t,t>;

·(a)colordist(Ft,vi)≤ε

·(b)bright=1(IlowLIhig)

如果根据条件(a)和(b)与SPCW中某个ci匹配,则更新ci

vi=(fiHi+Hfi+1,fiSi+Sfi+1)

对于SPCW中的每个ci,更新λi为max(λi,(N-qi+pi-1)),如果λi≥N2,则删掉ci,此 时构建的Codewords就是基于超像素的Codebook背景模型。

在前景检测时,当前帧为t,判断过程如下:

对于第k个超像素,计算出属于该超像素的所有像素的和

计算出该超像素与ci(1≤i≤D)的颜色扭曲度(公式9),判断下面两个条件是否满足,如果都 满足,标记该超像素为背景区域,并根据公式10更新ci,如果存在任何一个条件不满足,则标记该 超像素为前景。

·(a)colordist(Ft,vi)≤ε

·(b)bright=1(IlowLIhig)

图2是CBSP-OD和LST-KDE、KDE-Bayesian和Codebook在交通监控视频上的检测结果,该 视频拍摄的是某个乡村道路转弯口的交通场景,该场景中有很多树并伴有剧烈和方向不定的风,随着 风吹,摆动的树叶形成动态背景,同时从树叶缝隙中透射出的阳光也会造成大面积的光照变化,属于 复杂的交通场景。LST-KDE不能很好地对动态背景进行处理,所以在检测复杂场景时会将动态背景 误检为前景点,如图2(c)所示;KDE-Bayesian使用KDE在联合域内表示像素,并且通过MAP-MRF 计算后验函数,由于没有考虑局部区域运动的一致性,当前景目标运动缓慢或者与背景像素点相似时, 目标检测不出,如图2(d)所示;Codebook采用聚类和压缩技术对背景像素进行描述,比较好的处理 了动态背景对目标检测的影响,但是由于构建的Codewords准确度不够,误检率和漏检率仍然很高, 检测结果如图2(e)所示;本发明提出的CBSP-OD算法很好地弥补了LST-KDE、KDE-Bayesian和文献 Codebook的不足,首先对像素帧进行超像素分割,然后利用超像素代替单个像素点进行背景建模, 很好地考虑了区域的一致性,构建的背景模型很好地描述了背景像素点的分布,减少误检率的同时也 增强了前景目标的完整性。

图3是河边复杂场景检测结果,该视频中的场景存在着大量的动态背景,其中有摇摆的树叶、 草丛和波动的水纹,而且有时树叶的摆动幅度特别大,导致会对目标检测造成巨大的干扰。图3(c)是 LST-KDE的检测结果,结果显示LST-KDE对动态背景不具有很好的检测效果,会将动态背景误检为 前景目标;KDE-Bayesian和Codebook的检测结果如图3(d)、图3(e)所示,KDE-Bayesian由于没有考 虑局部运动的一致性,对树叶摇摆剧烈的区域检测结果不理想,Codebook能处理部分动态背景,但 是由于构建的Codewords不准确,所以不能很好的处理剧烈摇摆的树叶;本发明提出的CBSP-OD能 够很好地利用前景目标运动的一致性,对剧烈摇摆的树叶有很好的适应性,同时检测的前景目标比较 完整,如图3(f)所示。实验证明,CBSP-OD能很好地处理复杂场景下的目标检测,在减少误检的同时 也能够完整的将前景目标检测出来。

图4是摇摆树枝复杂场景检测结果,该视频中的场景存在着剧烈摇摆的树枝,对目标检测造成 巨大的干扰。图4(c)是LST-KDE的检测结果,结果显示LST-KDE对动态背景不具有很好的检测效果, 会将动态背景误检为前景目标;KDE-Bayesian和Codebook的检测结果如图4(d)、图4(e)所示, KDE-Bayesian由于没有考虑局部运动的一致性,对树叶摇摆剧烈的区域检测结果不理想,Codebook 能处理部分动态背景,但是由于构建的Codewords不准确,所以不能很好的处理剧烈摇摆的树叶;本 发明提出的CBSP-OD能够很好地利用前景目标运动的一致性,对剧烈摇摆的树叶有很好的适应性, 同时检测的前景目标比较完整,如图4(f)所示。实验证明,CBSP-OD能很好地处理复杂场景下的目标 检测,在减少误检的同时也能够完整的将前景目标检测出来。

图5为CBSP-OD和LST-KDE、KDE-Bayesian和Codebook的训练时间对比图,实验中CBSP-OD 选取的超像素个数为1500,假设视频帧大小为320×240,LST-KDE在背景训练时,首先需要通过 K-means聚类算法(K取5)提取关键样本,每个样本存储需要8bytes,则它的内存需求约为3072000 (320×240×5×8),由于在提取关键样本和计算概率时计算量太大,所以整体花费时间最多; KDE-Bayesian对每个像素通过其与周围相邻的像素点计算联合概率,然后计算后验概率,计算量和 内存需求都是最大的,所以速度最慢;Codebook在构建背景时,每个Codewords需要6个短整型变 量和3个字符型变量,平均每个像素点需要4个Codewords,内存需求约为4608000bytes (320×240×15×4);CBSP-OD只需要对K(1500)个超像素快进行背景建模,为每个超像素块构建的 Codewords约为5个,每个Codewords需要8个短整型变量,则构建背景需要的内存大小为120000 (1500×16×5),由于在超像素分割时需要花费0.5秒左右时间,所以整体速度比其他三种算法快2倍 多。

算法 速度/fps 使用内存/MB LST-KDE 23.398 15.643 KDE-Bayesian 18.764 19.582 Codebook 27.541 17.281 CBSP-OD 65.924 6.172

表1不同算法的检测对比

在目标检测时,本发明将4种方法进行了对比,如表1所示。虽然LST-KDE的内存使用比 Codebook要小,但是在计算像素值是否属于前景点时,计算量太大,所以导致运行速度比Codebook 要慢很多。KDE-Bayesian所需内存和计算量都是最大的,所以总体速度是最慢的。CBSP-OD使用的 内存数是最少的,还不到Codebook内存的一半,所以运行速度要比Codebook快一倍多,已经满足大 多数实时系统的要求了。

前景目标检测准确率用漏检率和误检率来分析。漏检率(omissionratio,OR)是指前景点被误检 为背景点的百分比个数,误检率(misusedetectionratio,MDR)指背景点被误检为前景点的比例。

OR=OPTP+OP---(11)

MDR=MPTP+MP---(12)

其中OP为前景点被误检为背景点的个数,TP为实际前景像素,同时正确检测为前景像素的个 数。MP为误检为前景点个数。

对比实验从选取的交通监控视频中第50帧以后开始抽取检测结果,每隔100帧抽取一个,然 后统计检测结果并分别计算漏检率和误检率。四种算法的检测结果的漏检率对比如图4所示。从图6 可以看出,由于LST-KDE不能很好地对动态背景建模,将大量的摇摆树叶检测为了前景点,所以漏 检率是最高的,KDE-Bayesian和Codebook基本能够很好地对动态背景很好地建模,但是对于部分遮 挡的目标前景不能很好地检测出来。CBSP-OD能很好地考虑了目标的完整性,所以能够较好的检测 出全部前景目标,但是对于过小的前景目标,CBSP-OD还无法检测出,所以导致第750帧的检测效 果比较差。总体来说,CBSP-OD的漏检率是最低的。

图7是CBSP-OD与其他算法的误检率对比,由于LST-KDE不能很好地对动态背景建模,导致 将大量的摇摆树叶误检为了前景点像素,所以误检率是最高的,平均达到了50%以上。Codebook和 KDE-Bayesian能较好的对动态背景像素点建模,所以误检率比较低,但是由于都没有考虑运动目标 区域一致性,所以构建的Codewords不能准确的描述背景像素点,导致误检率比较高。CBSP-OD用 相似区域块代替单个像素点建模,很好地考虑了区域的空间一致性,构建的Codewords能准确描述背 景像素点,所以误检率是最小的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号