一种结合改进ViBe和多特征融合的运动目标检测算法
A Moving Target Detection Algorithm Combining Improved ViBe and Multi-Feature Fusion
摘要: 针对ViBe算法易受光照以及动态背景影响,在运动目标检测过程中容易出现鬼影、阴影和运动目标空洞问题,提出一种改进ViBe和多特征融合的运动目标检测算法。首先,初始化背景建模采用鲁棒主成分分析(RPCA)方法,解决首帧产生鬼影问题;其次,引入标准离差率和帧间均速测量值能够自适应改变匹配半径和更新速率,从而适应动态背景变化情况,消除空洞现象;最后,融合HSV、LBP和Gabor特征对阴影进行检测并去除。在公开的CDnet 2014数据集进行实验,结果表明,本文算法能够适应动态背景变化,有效解决了鬼影和阴影问题,在多种场景下能完整提取目标。
Abstract: For the ViBe algorithm is susceptible to lighting and dynamic background, ghosts, shadows and holes in the moving target detection process, an improved ViBe and multi-feature fusion motion target detection algorithm is proposed. Firstly, robust principal component analysis (RPCA) is used to initialize background modeling to solve the ghosting problem in the first frame. Secondly, the standard deviation rate and interframe average speed measurements are introduced to adaptively change the matching radius and update rate, so as to adapt to dynamic background changes and eliminate holes. Finally, HSV, LBP, and Gabor features are combined to detect and remove shadows. Experiments on an open CDnet 2014 dataset show that the algorithm can adapt to dynamic back-ground changes, effectively solve ghost and shadow problems, and extract targets completely in multiple scenarios.
文章引用:周莹瑛, 黄亚群, 蒋慕蓉, 张占伟, 刘新富. 一种结合改进ViBe和多特征融合的运动目标检测算法[J]. 计算机科学与应用, 2022, 12(2): 376-384. https://doi.org/10.12677/CSA.2022.122038

1. 引言

随着视频监控的广泛应用,获取运动目标信息在生活中尤为重要,如智能交通、航空航天等。运动目标检测主要有三种方法,分别为帧差法、背景减分法和光流法。帧差法 [1] 运行速度比较快,但提取的运动目标容易产生空洞现象,不适用复杂场景。光流法 [2] 能计算出运动目标速度,但运行速度较慢,无法满足时效性。背景减分法 [3] 将当前帧跟背景模型进行相减,较之前的算法有更好的实时性和准确性。

背景减分法的过程包括背景建模、更新以及检测,其中最常用的是ViBe算法,ViBe算法 [4] 具有速度快、易于实现等特点,但由于采用固定的半径和更新速率,会在一定情况下产生鬼影现象且易受背景干扰使得目标提取不完整。为此,针对ViBe算法存在的问题,文献 [5] 提出三帧差分与ViBe融合方法,抑制鬼影出现,但没彻底消除鬼影;文献 [6] 提出结合边缘检测进行ViBe改进,提高目标准确性,但在复杂背景下鲁棒性差;文献 [7] 引入OTSU对鬼影进行抑制,具有较高准确率;文献 [8] 采用像素点闪烁次数对背景进行更新,一定程度抑制鬼影;文献 [9] 对匹配半径进行自适应改进,解决动态背景对目标提取不完整问题,但效果仍不佳;文献 [10] 采用纹理特征和颜色特征对阴影进行检测,一定程度上消除阴影。

针对ViBe算法存在鬼影、阴影以及易受背景干扰,本文提出一种基于改进ViBe与多特征融合的运动目标检测算法。该算法主要做了以下改进:

第一,初始化背景建模采用鲁棒主成分分析方法,解决首帧产生鬼影问题;

第二,采用标准离差率自适应改变匹配半径代替固定匹配半径;采用帧间均速测量值自适应改变更新速率代替固定更新速率,能够解决动态背景对目标提取不完整的问题;

第三,融合HSV、LBP和Gabor三种特征,去除阴影,从而解决目标阴影问题。

在公开的CDnet 2014数据集上实验,并对ViBe以及改进ViBe进行对比分析,验证本算法在运动目标检测中的优势。

论文基本结构如下:第二部分是对ViBe算法改进及描述;第三部分是实验结果分析,验证算法可行、有效性;第四部分是对本文的简要总结,通过实验表明,本文算法较现有算法在准确率和召回率等上有明显提升,且改善了鬼影以及阴影问题。

2. 改进算法

本文算法框架如图1所示,具体步骤如下:

第一、输入视频,对视频进行中值滤波预处理,并采用鲁棒主成分分析进行初始化背景建模;

第二、采用ViBe算法进行前景提取,判断前景与背景,采用帧间均速测量值自适应改变更新速率、标准离差率自适应改变匹配半径,从而实时更新背景,当前帧与背景相减得到前景目标;

第三、将提取的目标经过LBP、HSV和Gabor等操作,有效去除阴影,并进行形态学后处理,得到运动目标。

第四、判断视频是否最后一帧,若是则结束算法,若否则返回执行下一帧。

Figure 1. This article’s algorithm flowchart

图1. 本文算法流程图

2.1. 初始化背景模型

在ViBe算法中采用第一帧进行背景初始化,若第一帧存在运动目标,会产生鬼影现象,对目标准确性产生严重影响,对此,本文采用鲁棒主成分分析法构建初始化模型。

鲁棒主成分分析法 [11] 是将图像分成低秩图像和稀疏图像即前景以及背景图像。初始化建模结构如图2所示,从图2中可以看出ViBe算法所建背景图像含有运动目标,而改进后算法没有出现运动目标,能够有效抑制鬼影产生,提高准确度。

Figure 2. Initialize background model diagram

图2. 初始化背景模型图

2.2. 自适应匹配半径

在ViBe算法中采用固定半径R (默认20),不能适应动态背景变化,易受背景干扰,产生大量噪声。为了适应复杂场景下,将引入标准离差率自适应改变固定半径,动态调整大小,一定程度阻碍背景噪声对目标影响。

标准离差率 [12] 是标准差 σ 与平均值 μ 的比值,代表数据离散程度,如公式(1)所示:

d = σ ( x , y ) / μ ( x , y ) (1)

自适应匹配半径如公式(2)所示,当背景处于高频变化情况下,匹配半径将适当扩大;当背景处于低频情况下,匹配半径将适当缩小,能够自适应调节匹配半径,确保背景模型准确。

R ( x , y ) = { σ ( x , y ) μ ( x , y ) R μ ( x , y ) > 0 R μ ( x , y ) = 0 (2)

其中,平均值如公式(3)所示,标准差如公式(4)所示。

μ ( x , y ) = i = 1 N v i ( x , y ) N (3)

σ ( x , y ) = i = 1 N ( v i ( x , y ) μ ( x , y ) ) 2 N (4)

2.3. 自适应更新速率

在ViBe算法中采用固定更新速率(更新因子默认16),当背景处于高频情况下,背景模型无法及时更新,导致目标产生大量噪声,对此,采用帧间均速测量值 [13] 来自适应更新速率。帧间均速测量值表示一段时间内平均运动速度,如公式(5)所示。

Δ V = i = 1 f Δ D i f (5)

式(5)中, Δ D i 中表示质心差,f表示帧数。

自适应更新速率如式(6)所示,当平均运动速率小于2时,表示运动目标移动过慢,需采用较大的 φ 值,降低更新速率,防止运动目标出现空洞和不完整现象;当平均运动速率大于8时,表示运动目标移动过快,需采用较小的 φ 值,提高更新速率,快速更新背景提取出准确目标。

{ φ 1 = 8 , Δ V 8 φ 2 = 16 , 2 Δ V < 8 φ 3 = 32 , Δ V < 2 (6)

2.4. 多特征融合技术

对ViBe算法进行上述改进后,但提取的目标仍存在阴影问题如图3所示,这会对后续跟踪、识别等会产生影响,对此,采用多特征融合技术对阴影部分进行剔除,利用HSV [14] 颜色特征与LBP [15]、Gabor纹理特征 [16] 对阴影进行分析,提取出阴影部分。

Figure 3. Moving object extraction results with shadows

图3. 具有阴影的运动目标提取结果

HSV颜色与人类视觉完全相同,明亮度和色度信息能更好区别开来,阴影检测公式如式(7)所示, B HSV 为HSV阴影检测结果,当 B HSV 为1时表示阴影像素点,即当前帧与背景帧的H值、S值与V值在一定范围内相近。

B HSV ( x , y ) = { 1 , τ V 1 F V B V τ V 2 | F S B S | τ S min ( | F H B H | , 360 | F H B H | ) τ H 0 , otherwise (7)

LBP纹理特征具有灰度不变性,LBP纹理阴影检测是将当前帧和背景帧的LBP纹理特征值进行纹理相似性比较,判断其为阴影,如式(8)所示,其中 H F H B 表示当前帧与背景帧的LBP特征值。

B LBP ( x , y ) = { 1 , ρ ( H F , H B ) τ L 0 , otherwise (8)

Gabor滤波器与人类视觉频率相似,对图像亮度对比度敏感,常用于描述纹理特征,如式(9)所示, B Gabor 为Gabor阴影检测结果, B Gabor 当为1时表示阴影像素点,即当前帧与背景帧的Gabor特征值相近。

B Gabor ( x , y ) = { 1 , ρ ( G F , G B ) τ G 0 , otherwise (9)

将HSV、LBP和Gabor所得到的图像进行融合并采用形态学后操作得到运动目标阴影部分,如图4所示,图4可看出HSV方法能够选出阴影大致位置,但会将部分目标也提取出来,误检率较高;LBP与Gabor方法能够较为完整检测阴影区域,同样存在部分目标被提取;之后将颜色和纹理所得到的结果取相同部分,可发现只有少数目标存在误检,之后通过形态学和边缘处理,得到阴影提取结果。

Figure 4. Shadow processing results of HSV, LBP, Gabor and fusion methods

图4. HSV、LBP、Gabor、融合方法对阴影处理结果

3. 实验结果分析

实验平台为MATLAB R2019b,运行环境Windows10,数据集采用CDnet 2014。

评价指标如式(10)~(13)所示:准确率(P)、召回比(R)、综合评价值(F)。

P = T P T P + F P (10)

R = T P T P + F N (11)

F = 2 R P R + P (12)

3.1. 动态背景实验

为了验证本文算法在动态背景下有效,采用Highway、Fall、Canoe三组视频序列对ViBe、改进ViBe算法 [17] 以及本文算法进行对比试验,如图5所示,在Highway视频中选取795帧,可以看出ViBe算法将树叶和阳光均看作运动目标,而且还产生大量空洞;改进ViBe算法明显改善了动态背景对运动目标的影响,但仍存在噪声,效果不佳;而本文算法基本上没有噪声,提取结果较完整,有明显改进。在Fall视频中选取1978帧,可以看出VIBE算法在树叶抖动下检测效果差,会产生大面积噪声;改进ViBe算法大大提高了准确率,但仍存在细微噪声且目标提取不完整;而本文算法能够自适应改变半径和更新因子,实时改变背景模型,提取效果俱佳。在Canoe视频中选取368帧,可以看出VIBE算法提取出大量流动河水,产生大量噪声且目标空洞现象严重;改进ViBe算法剔除背景噪声,但提取目标完整度不全;而本文算法既能解决动态背景产生噪声问题又能提取出完整目标,鲁棒性强。

Figure 5. Detection results of different algorithms under Highway, Fall and Canoe

图5. 不同算法在Highway、Fall、Canoe下检测结果图

表1对比了ViBe、改进ViBe算法以及本文算法在Highway、Fall、Canoe视频中的准确率(P)、召回率(R)、综合评价值(F)情况,从表1中可以看出在不同动态场景下,本文算法比其他算法在P、R、F上均有所提高,由此可见,本文算法能够适应背景变化,及时更新背景模型,能够较为完整提取出运动目标。

Table 1. Evaluation index results of different ViBe methods under three videos

表1. 不同ViBe方法在三种视频下的评价指标结果

3.2. 去除鬼影实验

为验证本文算法的去除鬼影效果,选取PETS2009视频序列对ViBe算法和本文算法进行对比实验,如图6所示。

Figure 6. Ghost detection results

图6. 鬼影检测结果图

图6可知ViBe算法出现明显的鬼影现象(白色框)且受风影响产生噪声,而本算法没鬼影现象产生,能够自适应调节背景模型,提高检测准确性。

3.3. 去除阴影实验

为了验证本文算法在去除阴影效果,选取Pedestrias、Lab、Hallway和Room四个视频帧序列对文献 [18]、文献 [19]、文献 [20] 以及本文算法进行对比实验,如图7所示。

图7中可知,文献 [18] 采用混合色度空间来检测阴影,仅采用颜色特征,对于Pedestrias视频中衣服跟阴影颜色类似,将衣服判定为阴影,检测结果不好;文献 [19] 采用YcbCr颜色空间与混合高斯阴影模型来去除阴影,基本将阴影检测出来,但也存在误检情况;文献 [20] 采用颜色与纹理相结合方式去阴影,存在边缘像素点误检情况;而本文算法相比文献 [18]、文献 [19] 和文献 [20] 能够较为完整地检测出阴影部分,误检率低,采用多特征融合方法有效检测出阴影,得到运动目标。

表2对比了上述算法在不同视频帧下的准确率(P)、召回率(R)、综合评价值(F)情况,从表2中可以看出在不同场景下,本文算法比其他算法在P、R、F上均有所提高,由此可见,本文算法具有较好地去阴影效果,能够完整提取出运动目标。

Figure 7. Shadow detection result diagram

图7. 阴影检测结果图

Table 2. Evaluation index results of different shadow removal methods under four videos

表2. 不同去阴影方法在四种视频下的评价指标结果

4. 总结

本文提出一种改进ViBe和多特征融合的运动目标检测算法,主要解决ViBe算法中容易受背景干扰、产生空洞、鬼影和阴影问题。该算法首先在初始化阶段采用鲁棒主成分分析,经过实验得出该方法有效解决鬼影问题,其次引入标准离差率和帧间均速测量值,实时更新背景模型,经过实验得出该方法能够避免背景原因产生的噪声,提高准确度和消除空洞现象,最后引入多特征融合技术,通过实验验证该方法有效解决目标阴影问题,能够提取出阴影部分,从而得到前景目标。综上所述,与之前算法相比,本文算法目标检测结果更加准确。

致谢

感谢蒋老师和黄老师对实验提供专业技术指导,在撰写论文期间给予修正意见,耐心指导和鼓励我;也感谢实验室师兄师姐在科研方面提供帮助,您们的科研态度和专业知识激励我成长。

NOTES

*通讯作者。

参考文献

[1] 金守峰, 林强强, 高磊, 张浩. 帧间差分融合灰度投影的运动目标检测方法[J]. 现代电子技术, 2019, 42(6): 114-117.
[2] 周登浩, 武斌. 基于景深和LK光流法的视频测速算法[J]. 传感器与微系统, 2021, 40(8): 116-120.
[3] 乐英, 赵志成. 基于背景差分法的多运动目标检测与分割[J] . 中国工程机械学报, 2020, 18(4): 305-309.
[4] 涂伟强, 李炎炎, 龙伟, 陈金戈, 丁伟. 采取阶段性改进的全新ViBe目标检测算法[J]. 四川大学学报(自然科学版), 2021, 58(3): 67-72.
[5] 王春丹, 谢红薇, 李亚旋, 张昊. 融合改进的三帧差分和ViBe算法的运动目标检测[J]. 计算机工程与应用, 2020, 56(13): 199-203.
[6] 丁哲, 陆文总. 基于Vibe背景建模的运动目标检测算法[J]. 计算机系统应用, 2019, 28(4): 183-187.
[7] 肖红军, 白冰鑫. 基于改进ViBe算法的动态目标检测[J]. 自动化与信息工程, 2020, 41(5): 33-37.
[8] 王玮. 基于视频图像的运动目标与阴影检测算法研究[D]: [硕士学位论文]. 南昌: 华东交通大学, 2018.
[9] 李善超, 车国霖, 张果, 杨晓洪. 一种自适应运动目标检测算法及其应用[J]. 小型微型计算机系统, 2021, 42(2): 381-386.
[10] 钟忺, 汪梦, 张倩, 李琳. 一种基于纹理和颜色置信融合的运动目标检测方法[J]. 计算机应用研究, 2017, 34(7): 2196-2201.
[11] 张超婕, 余勤. 时空RPCA在复杂场景下的运动目标检测[J]. 计算机工程与设计, 2020, 41(1): 197-202.
[12] 刘伟. 动态背景下的运动目标检测算法研究[D]: [硕士学位论文]. 太原: 太原理工大学, 2020.
[13] 郭志涛, 曹小青, 厉成元, 于洪泽, 王卿粹. 一种基于改进ViBe算法的运动目标检测方法[J]. 电视技术, 2018, 42(8): 33-35+48.
[14] 高晓旭, 冯国瑞. 基于HSV颜色空间的自适应性运动目标检测[J]. 电视技术, 2015, 39(10): 1-4+30.
[15] 顾玮. 基于LBP纹理特征的运动目标检测算法研究[J]. 办公自动化, 2017, 22(24): 21-24.
[16] 杨尚斌, 刘秉瀚. 基于Log-gabor小波的运动目标阴影检测[J]. 福州大学学报(自然科学版), 2016, 44(1): 26-32.
[17] 王冰洋, 孟卿卿. 一种改进视觉背景提取算法研究[J]. 电子测量技术, 2020, 43(22): 104-108.
[18] 官洪运, 井倩倩, 王亚青, 缪新苗, 张抒艺. 融合改进ViBe与自适应阴影消除的目标检测算[J]. 信息技术与网络安全, 2020, 39(8): 48-51+56.
[19] 崔鹏翔, 于凤芹. 消除鬼影及阴影的改进ViBe运动目标检测算法[J]. 激光与光电子学进展, 2020, 57(16): 98-106.
[20] 龙浩, 李庆党, 张明月. 基于HSV颜色空间和局部纹理的阴影消除算法研究[J]. 电子测量技术, 2020, 43(18): 81-87.