一种基于gpu自适应的前景提取方法

文档序号:8431499阅读:194来源:国知局
一种基于gpu自适应的前景提取方法
【技术领域】
[0001] 本发明涉及属于视频监控领域,具体地说是一种基于GPU自适应的前景提取方 法。
【背景技术】
[0002] 视频监控系统广泛用于人们的日常生活当中,比如对医院、银行、车站等大型公共 场所的监控,以及社区、超市商场等等的安全保卫。随着人们生活水平日益提高,人们对城 市的安防工作要求越来越高,这就对监控系统的智能化程度提出要求。
[0003] 视频流中前景的提取是运动目标精确提取的前提和保证。而快速、准确、完整地分 割出背景成为运动目标精确提取研宄中的难点。当前,帧间差分法、光流法和背景提取法是 主要的运动目标检测方法。其中帧间差分法适应性差,光流法计算量大,无法达到实时处 理。在背景建模各方法中,混合高斯建模方法是公认的检测效果和适应性都较好的方法,但 有一定的局限性:每个像素点的高斯数目是固定的,固定的高斯数目无法更好的适应实际 环境。此外需要对每个像素点建立3到5个高斯模型,每次背景模型更新都需要遍历到每 个像素的所有高斯模型并进行相应的计算,因此计算量巨大,仅靠串行处理难以实时实现, 无法在实际中使用。随着技术的发展,在实际使用环境中,高清监控设备以及多路监控设备 的应用越来越多,这些设备会在短时间内产生海量的视频图像数据,面对海量数据仅仅使 用以前的CPU进行串行处理,已经完全达不到实时要求。此外很多算法已经无法再继续进 行优化而对硬件速度的提高也很难完成。

【发明内容】

[0004] 本发明是为了克服现有技术存在的不足之处,提供一种基于GPU自适应的前景提 取方法,以期能大大提高背景建模效率,并能够实时、精确的提取运动目标,从而能够更好 的适应实际环境。
[0005] 本发明为解决技术问题采用如下技术方案:
[0006] 本发明一种基于GPU自适应的前景提取方法,是应用于含有GPU图像处理器的计 算机中,其特点是按如下步骤进行:
[0007] 步骤1、将分辨率为WXH的待处理视频的第t帧图像读取到所述计算机的内存中; 1 < t < T ;T表示所述待处理视频的总帧数;
[0008] 步骤2、所述GPU图像处理器从所述计算机的内存中复制所述第t帧图像的像素值 并保存到所述GPU图像处理器的显存中;
[0009] 步骤3、在所述GPU图像处理器中创建WXH个线程,使得所述WXH个线程依次对 应于所述待处理视频的WXH个像素点;
[0010] 步骤4、令所述第t帧图像的第i行第j列的像素点尤;对应于所述WXH个线程 中的第i X W+j个线程;在所述第i X W+j个线程中建立N个高斯函数,从而构成所述第i行 第j列的像素点^;的高斯模型;1彡i彡H;1彡j彡W;
[0011] 步骤5、将所述第i行第j列的像素点尤,的高斯模型的参数保存在所述GPU图像 处理器的全局存储器中;所述第i行第j列的像素点尤,,的高斯模型的参数包括N个高斯 函数的参数;第k个高斯函数的参数为:标准差erf、均值//;^和权重; 1 < k < N ;
[0012] 步骤6、重复执行步骤4-步骤5,使得所述第t帧图像中的每个像素点都在所对应 的线程中建立相应的高斯模型,从而获得WXH个不同的高斯模型的参数保存在所述GPU图 像处理器的全局存储器中;
[0013] 步骤7、判断t = T是否成立,若成立,则表示所述待处理视频已完成前景提取;否 贝1J,将t+1的值赋值给t ;并执行步骤8 ;
[0014] 步骤8、所述GPU图像处理器从所述计算机的内存中复制所述第t帧图像的像素值 并保存到所述GPU图像处理器的显存中;
[0015] 步骤9、根据所述第t帧图像的第i行第j列的像素值尤.,,利用式(1)、式(2)和 式(3)更新所述WXH个线程中的第iXW+j个线程中的高斯模型的参数:
【主权项】
1. 一种基于GPU自适应的前景提取方法,是应用于含有GPU图像处理器的计算机中,其 特征是按如下步骤进行: 步骤1、将分辨率为WXH的待处理视频的第t帧图像读取到所述计算机的内存中; 1 < t < T ;T表示所述待处理视频的总帧数; 步骤2、所述GPU图像处理器从所述计算机的内存中复制所述第t帧图像的像素值并保 存到所述GPU图像处理器的显存中; 步骤3、在所述GPU图像处理器中创建WXH个线程,使得所述WXH个线程依次对应于 所述待处理视频的WXH个像素点; 步骤4、令所述第t帧图像的第i行第j列的像素点尤,对应于所述WXH个线程中的 第i X W+j个线程;在所述第i X W+j个线程中建立N个高斯函数,从而构成所述第i行第j 列的像素点尤j的高斯模型;1彡i彡H ;1彡j彡W ; 步骤5、将所述第i行第j列的像素点的高斯模型的参数保存在所述GPU图像处理 器的全局存储器中;所述第i行第j列的像素点ZL的高斯模型的参数包括N个高斯函数 的参数;第k个高斯函数的参数为:标准差、均值和权重? ; 1彡k彡N ; 步骤6、重复执行步骤4-步骤5,使得所述第t帧图像中的每个像素点都在所对应的线 程中建立相应的高斯模型,从而获得WXH个不同的高斯模型的参数保存在所述GPU图像处 理器的全局存储器中; 步骤7、判断t = T是否成立,若成立,则表示所述待处理视频已完成前景提取;否则, 将t+Ι的值赋值给t ;并执行步骤8 ; 步骤8、所述GPU图像处理器从所述计算机的内存中复制所述第t帧图像的像素值并保 存到所述GPU图像处理器的显存中; 步骤9、根据所述第t帧图像的第i行第j列的像素值夂丨.,,利用式(1)、式(2)和式(3) 更新所述WXH个线程中的第iXW+j个线程中的高斯模型的参数:
式(4)中,α表示权重的更新速度,为常数;表示所述第t帧图像的第i行第j列 像素点尤,与第k个高斯函数的匹配结果,并有
式(7)中,=1表示匹配成功,Μ=/ =0表示匹配失败,ε表示概率阈值; 表示所述第t帧图像的第i行第j列的像素点X),的第k个高斯函数的函数值;并有:
步骤10、动态调整所述第t帧图像的第i行第j列的像素点尤.,的高斯函数的个数1 从而更新所述第ixw+j个线程所对应的第i行第j列的像素点尤的高斯模型; 步骤11、遍历所述第t帧图像的每个像素值并按照步骤9和步骤10分别进行更新和动 态调整;从而获得更新后的第t帧图像的WXH个线程所分别对应的WXH个像素点的高斯 模型; 步骤12、对所述更新后的第t帧图像的WXH个像素点中第i行第j列像素点所对 应的高斯模型中,选出一个权重最大的高斯函数,并将所述权重最大的高斯函数所对应的 均值与所设定的阈值进行比较;若均值大于所设定的阈值,则设置所述第i行第j列像素点 尤,为1 ;否则,设置所述第i行第j列像素点尤/为〇 ;从而获得第t帧图像中第i行第j 列像素点的取值; 步骤13、重复步骤12直到获取所述第t帧图像中所有像素点的取值,从而获得所述第 t帧图像的二值图像并存入所述GPU图像处理器的全局存储器中; 步骤14、将所述第t帧图像的二值图像从所述GPU图像处理器的全局存储器中复制到 所述计算机的内存中,以所述第t帧图像的二值图像中取值为1的像素点构成所述前景,从 而完成第t帧图像的前景提取; 步骤15、返回步骤7执行。
2. 根据权利要求1所述的方法,其特征是:所述待处理视频的第t帧图像为RGB格式 图像。
3. 根据权利要求1所述的方法,其特征是:所述步骤10中第t帧图像的第i行第j列 像素点Z丨,的高斯函数个数N是按如下步骤进行动态调整: 步骤1、比较所述第t帧图像的第i行第j列像素点尤j的N个高斯函数中任意两个高 斯函数的权重,若任意两个高斯函数的权重差值小于所设定的差值阈值,则将所述任意两 个高斯函数的参数分别求出均值,将所述均值赋值给所述任意两个高斯函数中任一高斯函 数;并删除另一高斯函数,将N-I赋值给N ;从而合并所述任意两个高斯函数; 步骤2、建立长度为N的一维数组= …6S],并初始化每个元素值为 O; 表示T帧待处理视频中第i行第j列像素点Xu的第k个高斯函数连续匹配失败的 次数; 步骤3、若所述第t帧图像的第i行第j列的像素点与第k个高斯函数匹配失败,即 Μ=/ =O,则将+1赋值给< ;若所述第t帧图像的第i行第j列的像素点尤,与第k个 高斯函数匹配成功,即= 1;则将次数设置为〇 ; 步骤4、判断所述次数大于等于所设定的累加阈值是否成立;在成立时将Ν+1赋值 给Ν; 步骤5、判断t = T是否成立,若成立,则表示完成动态调整;否则将t+Ι的值赋值给t ; 并执行步骤2。
【专利摘要】本发明公开了一种基于GPU自适应的前景提取方法,是应用于含有GPU图像处理器的计算机中,其特征包括:将图像数据从内存传递到GPU显存中,对每个像素点对应GPU中一个线程分别进行混合高斯背景建模,其中每个像素点的高斯数目可以动态调整,最后将每个像素点中每个高斯权重最大的进行二值化处理,处理结果作为最终结果通过全局内存传递到内存中。本发明能大大提高前景提取效率,并能够实时、精确的提取运动目标,从而能够更好的适应实际环境。
【IPC分类】G06T7-20
【公开号】CN104751485
【申请号】CN201510128601
【发明人】赵海峰, 胡林, 肖安南, 戴先玉, 秦栋, 张城玮, 王剑
【申请人】安徽大学, 国家电网公司, 国网安徽省电力公司滁州供电公司
【公开日】2015年7月1日
【申请日】2015年3月20日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1