APP下载

基于三帧差法与聚类算法的目标识别方法*

2018-04-20蔡湧达路梅梅林诗颖陈鹏光熊建斌

网络安全与数据管理 2018年3期
关键词:差法像素点聚类

梁 琼,蔡湧达,路梅梅,林诗颖,陈鹏光,熊建斌

(1. 广东石油化工学院 理学院,广东 茂名 525000;2. 广东石油化工学院 计算机与电子信息学院,广东 茂名 525000)

0 引言

视频监控在政府部门、金融、公安、交通、电力等特殊部门及行业中有广泛的应用。如何将视频监控的背景滤除实现运动目标的智能识别成为近年来的科研热点之一[1-3]。能否对视频中运动目标进行准确的检测是后面能否实现对运动目标实时检测和实时监控的关键所在。现有的监控视频目标识别方法主要有背景减除法、光流法和帧差法。背景减除算法是目前最常用的方法之一,该算法首先要确定视频画面的监控范围来获得相应的背景图像,然后使用当前帧的图像与背景图像作差,从而检测出相应的运动目标。这种方法思路简单,容易实现,但是环境背景的变化对其目标识别的影响比较大,只能够在背景图像相对稳定的条件下实现运动目标的检测[4],但实际的视频监控场景中往往会存在明显的变化(如树叶摇动、光照变化),这会影响目标检测的准确性,因此在应用过程中需要适当地对背景进行更新。当然也可以用平滑滤波法中的均值滤波除去所得图像中的这些干扰因子。平滑滤波器滤去图像中微小细节,有效抑制加性噪声,减少局部灰度的起伏,但容易引起由图像灰度尖锐变化所带来的边缘模糊的负影响[5]。光流法主要是通过检测像素点的光流变化来检测运动目标,该方法的优点是可以在未知背景的情况下对运动目标进行较准确的检测,适用于运动背景的实时检测,还可以应用于摄像机运动的情况,但这种方法的算法复杂程度很高,不能够满足视频监控目标检测中对实时性的要求[6-7]。这种方法存在的缺点也是不能被忽视的,在较大的干扰下鲁棒性差,很难保证可靠性和准确性。帧差法是通过相邻两帧图像或者多帧图像之间作差,得到帧与帧之间像素点之间的值的变化,根据这些变化对像素点进行二值化实现运动目标识别。它作为一种快速算法可以实现良好运动目标区域检测,但是这种方法需要根据具体的情况确定二值化的阈值,如果阈值设置得过小则会出现目标区域缺失,阈值设置得过大则会引入错误的目标[8]。同时,当运动目标的速度较快时会导致相邻帧的背景遮挡变化较快,此时背景有可能被误检测为运动目标[9-10]。因此,在本文中对三帧差法进行改进并与基于网格的聚类算法进行结合实现运动目标的有效检测。

近年来,由于计算机技术的快速发展以及社会上频频发生危及人身安全的各种事件,广大学者认为通过视频监控可以预防某些危险的发生。视频监控这一领域在短时间内就得到了广大学者的关注,许多有关目标识别的文献增长速度飞快,一些发达、发展中国家也对其投入了大量的资源,同时视频监控技术也得到了飞速发展。但在目标识别这个领域里,依然存在许多不足,需要更深入地研究和改进。本文针对传统的基于帧差法的目标识别方法,提出基于三帧差法与聚类算法相结合的运动目标识别方法,在一定程度上满足了视频监控目标检测准确性、稳定性和实时性的要求,具有一定的实用性价值。用三帧差法提取出视频监控区的目标,三帧差法是运用相邻帧的图像作差,其优点是运算简单、速度快,在背景静止时提取运动目标的效果会更理想。但图片背景中仍然极有可能存在很多冗余的亮点,为滤除这些干扰因素,仅保留所需要部分,本文运用基于网格的聚类算法来滤除这些亮点,这样就大幅度提高了目标识别的准确率,减少了误报的几率。因此研发、提出了基于三帧差法与聚类算法相结合的监控目标识别方法。

1 改进的目标检测方法

1.1 三帧差法目标检测原理

视频监控是由多帧图像组成的,每一帧图像都包含很多像素点。对于运动的目标来说,不同帧图像的像素点会发生变化,背景的像素点值变化很小,理想状态下变化为零。根据这个原理可以用后一帧图像的像素点减前一帧图像的像素点得出两帧图像变化的像素点值。用fk(x,y)代表第k帧图像的像素点值,则二帧差法的计算公式为:

D(x,y)=fk(x,y)-fk-1(x,y)

(1)

通过式(1)可以得到两帧图像之间的像素差,根据这个像素差可以实现图片像素的二值化,从而提取出视频监控区域的目标。由于一部分背景像素点会因为外部干扰而发生细微的变化,因此在二值化过程中需要确定一个阈值。当像素差大于这个阈值的像素点值时,该点像素值增强为255,小于这个阈值的像素点值时,该点像素值设置为0。二值化公式如式(2)所示:

(2)

上面介绍了二帧差法基本原理,三帧差法在此基础上增加k+1帧图像与第k帧图像作差并且二值化,得出第二个二值化数据BD1(x,y)。将BD(x,y)与BD1(x,y)作“与”操作即为三帧差法,这种方法可以解决运动目标被拉长或者不完整的问题。用公式表示为:

BD2(x,y)=BD(x,y)&BD1(x,y)

(3)

1.2 基于网格的聚类算法

对于一幅经过三帧差法处理的图像,可以得到较为完整的目标。但是大多数情况下由于阈值设置得不够合理,图片背景中还会存在许多冗余的亮点,这些亮点显然不是所需要的。为了解决这个问题,在本文提出了基于网格的聚类算法来去除这些亮点。网格聚类主要是将像素点数据分割成很多很小的m×n网格,根据网格数据的分布情况来评估整个小网格是否为视频监控检测的目标。在网格聚类过程中像素点可以表示为:

(4)

本文中使用求和法评估网格中的像素点是否在目标区域,对于m×n的二值化像素矩阵可以用以下公式进行聚类。

σ=∑∑BD2(x,y),BD2(x,y)∈[m×n]

(5)

(6)

通过式(5)、(6)可以将图像背景中大多数的冗余的亮点清除并加强目标区域的亮度,从而得到一个清晰的运动目标。

2 实验内容

2.1 实验步骤

实验步骤如下:

(1)采集视频图像。

(2)取连续三帧视频图像,对三帧图像进行差分运算,得到每相邻帧图像之间的像素差。

(3)根据步骤(2)中得到的像素差进行运算可以实现图像像素的二值化,从而提取出视频监控区域的目标,得到黑白图像。

(4)对步骤(3)中得到的图像用基于网格的聚类算法进行背景亮点滤除,排除这些冗余亮点的干扰,得到较为清晰的运动目标。

2.2 实验的环境

本文以MATLAB 2010 为软件平台,借助二值化公式将帧差得到的数据进行二值化,再用聚类算法进行降噪处理,排除光线变化、噪声等造成差分图像检测精度不高的因素。在实验过程中,采集不同的连续三帧图像进行本文算法计算实验,每次都可得到最终的清晰图片,绝非偶然情况。

2.3 实验方法对比

在表1中,分别对五种运动目标检测方法进行了对比,可以发现聚类算法更易于实现,其目标识别效果更好。

表1 运动目标检测技术汇总表

2.4 实验结果与分析

传统的三帧差法是利用图片的像素点进行减法运算,将得到的像素点值进行合理的二值化处理。本文算法是经过三帧差法的处理后,再经过网格聚类算法处理加强运动目标,更好地进行识别,消除多余的亮点。算法流程如图1所示。首先收集实验原图,如图2所示,经过如图1所示的算法流程处理后,得到如图3所示的实验结果图。通过多次实验发现,当阈值设置在10和11时得到的效果最好,能比较完整地识别运动目标。但由于车的行驶使得右面的墙壁出现了光线变化,从而出现错误的识别。由于背景环境中有风的干扰,地面的积水被风吹动,因此也被错判是运动目标。

图1 本文算法流程图

图2 实验原图

图3 运动目标识别结果对比

3 结论

如表1所示,如果只用某种检测方法对目标进行检测识别,则会给检测带来不同程度的误差,例如传统的三帧差法在运动目标识别过程中容易出现多余的亮点或是产生空洞,不利于目标的确定。本文提出了网格聚类的解决方法。网格聚类算法主要功能是区分小网格内的像素点是否位于要显示的目标区域。通过这种分类可以将目标区域外的冗余点去除并对目标区域进行加强。通过实验可以发现本文算法具有很好的运动目标识别能力。但是,本文的算法依然存在不足之处,还可以在许多方面进行改进。例如在阈值设置极不合理的时候,由于冗余点太多太大会出现错检的现象。所以在以后的研究中可以从阈值自适应调整方向着手实现运动目标的精准识别。

[1] 黄凯奇, 陈晓棠, 康运锋,等. 智能视频监控技术综述[J]. 计算机学报, 2015, 38(6):1093-1118.

[2] 伊国栋. 智能视频监控技术及其在安防领域的应用[J]. 电子世界, 2014(24):125-126.

[3] 杜正聪, 宁龙飞. 基于Sobel算法图像边缘检测的FPGA实现[J]. 电子技术应用, 2016, 42(10):89-91.

[4] 张小骏, 刘志镜, 陈昆. 一种基于曝光补偿与颜色信息融合的背景减除法[J]. 电子技术与软件工程, 2014(21):115-118.

[5] 郑丹,马尚昌,赵静.基于空域滤波的图像增强法的探讨[J].微型机与应用,2017,36(4):40-42,46.

[6] 裴巧娜. 基于光流法的运动目标检测与跟踪技术[D]. 北京:北方工业大学, 2009.

[7] 姚倩, 安世全, 姚路. 三帧差法和Mean-shift结合的行人检测与跟踪研究[J]. 计算机工程与设计, 2014, 35(1):223-227.

[8] 周晓, 方玖琳, 郑定超. 基于三帧差分和滑动平均背景的运动目标检测[J]. 计算机测量与控制, 2016, 24(5):32-34.

[9] 程爱灵, 黄昶, 李小雨. 运动目标检测算法研究综述. 信息通信, 2017(1):13.

[10] 张玲, 陈丽,何伟,等.基于视频的改进帧差法在车流量检测中的应用[J].重庆大学学报,2004,27(5): 31-33,73.

[11] 杨国亮,王志良,牟世堂,等.一种改进的光流算法[J].计算机工程,2006,32(15): 187-189.

[12] 孙玉芬. 基于网格方法的聚类算法研究[D]. 武汉:华中科技大学, 2006.

猜你喜欢

差法像素点聚类
例谈“定比点差法”在解几问题中的应用
基于局部相似性的特征匹配筛选算法
基于K-means聚类的车-地无线通信场强研究
基于5×5邻域像素点相关性的划痕修复算法
基于动态差法的交通量监测技术应用
基于canvas的前端数据加密
关于用逐差法计算纸带加速度合理性的讨论
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
基于高斯混合聚类的阵列干涉SAR三维成像
基于Spark平台的K-means聚类算法改进及并行化实现