基于超像素和支持向量机的车辆阴影检测算法
2015-06-09路小波曾维理
朱 周 路小波 卫 朋 曾维理
(1东南大学交通学院, 南京 210096)(2东南大学自动化学院, 南京 210096)(3东南大学复杂工程系统测量与控制教育部重点实验室, 南京 210096)
基于超像素和支持向量机的车辆阴影检测算法
朱 周1,3路小波2,3卫 朋2,3曾维理2,3
(1东南大学交通学院, 南京 210096)(2东南大学自动化学院, 南京 210096)(3东南大学复杂工程系统测量与控制教育部重点实验室, 南京 210096)
为解决车辆阴影检测中易将车辆阴影相似的车辆区域误检测为车辆阴影的问题,提出了一种基于超像素和支持向量机的车辆阴影检测算法.首先,利用简单线性迭代聚类法将图像分割为若干超像素;然后,以超像素为基本检测单位,根据HSV空间中的一组判别条件对车辆阴影进行初步检测;在此基础上,利用支持向量机识别并去除被误检测为车辆阴影的车辆区域,进而得到最终的车辆阴影.实验结果表明,所提算法能够较好地区分车辆阴影及与车辆阴影相似的车辆区域,提高车辆阴影的检测率和分类率.
阴影检测;超像素;支持向量机;车辆检测
视频车辆检测能够提供车辆的形状、位置信息,是智能运输系统(ITS)中一项重要的交通信息采集技术.在实际交通场景中,光线被遮挡时会在图像中产生阴影.车辆阴影可能被检测为车辆的一部分,也可能将相近的车辆连接在一起,使其被检测为一辆车.为了准确地检测车辆,必须对车辆阴影进行检测和去除[1].学者们已经在阴影检测方面进行了大量研究.Sanin等[2]将已有的阴影检测方法按照选取特征的不同分为5类:基于灰度的阴影检测方法、基于颜色的阴影检测方法、基于物理的阴影检测方法、基于几何的阴影检测方法和基于纹理的阴影检测方法.其中,基于灰度的阴影检测方法往往与其他方法结合使用.在HSV[3]、c1c2c3[4]、YUV[5]、规则化RGB[6]、HMMD[7]等空间中,基于颜色的阴影检测方法通过设定相应的条件对阴影进行检测,简单易行,对噪声较敏感.基于物理的阴影检测方法通过建立物理模型来区分阴影和前景,但当阴影和前景的光谱特征相近时方法失效[8-9].基于几何的阴影检测方法对阴影与前景之间的几何关系进行了特定的假设,适用于检测单一目标的阴影[10].基于纹理的阴影检测方法通过选取候补阴影区域,并将其与背景区域的纹理进行比较,以确定最终的阴影区域[11].
当前景区域的特征比较一致,且前景区域与阴影区域的特征差别较大时,上述方法通常能够取得较好的效果.然而,在实际应用中,前景区域的组成较丰富,一部分区域的特征与阴影区域的特征差别较大,另一部分区域(如吸收了大量光线的车窗区域)的特征与阴影区域的特征则较接近,导致其容易被检测为阴影区域.超像素分割[12]是近年来兴起的一种图像分割方法,它利用图像特征分布的局部相似性,将图像分为若干个同质的超像素.以超像素为单位能够提高特征分析的灵活性.本文提出了一种基于超像素和支持向量机的车辆阴影检测算法.首先,对图像进行超像素分割;然后,以超像素为基本单位,利用HSV空间的色度法对阴影区域进行初步检测,去除与阴影区域区别较明显的超像素;最后,利用支持向量机识别并去除与阴影区域相似的超像素,得到最终的车辆阴影.
1 超像素分割
5D空间内像素点之间的距离可以通过颜色距离和空间距离加权得到,即
(1)
式中,m为控制超像素大小一致性的参数,且m∈[1,20],m越大则超像素的大小越一致.
SLIC超像素分割算法步骤如下[12]:
① 将图像转化至CIELAB颜色空间.
② 按间距S以均匀的方式对第k个超像素的中心点位置Ck={lk,ak,bk,xk,yk}进行初始化.
③ 对超像素中心点Ck而言,计算其3×3邻域内像素点的梯度,用梯度最小的像素点对中心点位置进行更新.
④ 对每一个像素点而言,按照式(1)计算其与2S×2S范围之内所有超像素中心点之间的距离,选择具有最小距离的超像素中心点与之对应.
⑦ 将面积较小的孤立区域的标号用其周围面积最大的超像素的标号来代替,以增加超像素之间的连通性.
当S=10,m=1时,超像素分割的结果见图1.由图可知,阴影超像素和背景超像素之间的分割线基本上与阴影区域和背景区域之间的分割线吻合.当阴影区域与车辆区域边缘较模糊时会出现一定的误差(如图1中最上面的车),但由于单一超像素的尺寸较小,该误差也较小,相对于由车辆内部与阴影相似区域引起的误差而言可以忽略不计.
图1 超像素分割结果
2 初步阴影检测
下面利用混合高斯背景模型[13]来检测前景区域,该区域由车辆区域和阴影区域组成.在此前景区域内,以超像素为单位对阴影进行初步检测.
一般而言,阴影像素点比背景像素点暗,但色度较为接近.根据这一规律,设定超像素p属于阴影区域的条件为[11]
图2(a)显示了初步阴影检测的结果,其中白色区域为检测到的阴影.从图中可以看出,阴影区域被准确检测出来,但同时部分车辆区域也被误检测为阴影.图2(b)对这2种阴影进行了区分,其中绿色区域为被误检测为阴影的车辆区域,蓝色区域为真实阴影.为了消除误检测到的阴影,需要对阴影做进一步精确检测.
(a) 检测结果
(b) 图(a)的直观显示
3 基于支持向量机的阴影检测
文献[14]以像素点为基本单位,利用支持向量机对前景和阴影进行训练和分类.相比大多数基于颜色的方法,这种方法能够更加准确地检测阴影[2].然而,该方法将与阴影区别较大的区域和与阴影相似的区域一起作为样本进行训练,可能会把与阴影相似的车辆区域误判为阴影区域.本文则以超像素为单位,利用支持向量机对阴影区域(见图2(b)中的蓝色区域)和与阴影接近的车辆区域(见图2(b)中的绿色区域)进行训练和分类,以将两者区分开来.
图3 用于提取特征的RGB颜色模型
其次,定义超像素的特征向量为其所包含的所有像素点的二十维特征向量平均值.为避免受超像素外其他像素点的干扰,先在超像素内部进行腐蚀运算,去除其中的边缘像素点,再计算腐蚀后留下来的像素点的特征向量.腐蚀运算的结构元素为
(2)
超像素p的特征向量为
(3)
然后,在初始阴影检测的基础上以人工方式选择训练样本.如图2所示,蓝色区域的超像素组成了阴影样本集,绿色区域的超像素组成了与阴影区域类似的前景样本集.在20帧图像中采集这2类样本,其中前景样本数为543,阴影样本数为630.按照式(3)提取样本集中超像素的特征向量,并采用基于高斯核函数的支持向量机对这2类样本进行训练,即求解下式:
0≤αp≤Wp=1,2,…,n
(4)
式中,n为样本的总数量;up∈{-1,1},uq∈{-1,1}分别为超像素p,q的样本标号;σ为高斯核函数的参数;W为惩罚因子;αp,αq分别为超像素p,q的拉格朗日算子.
式中,b*为截距.
在识别并去除与阴影接近的前景超像素后,剩下的超像素组成了最终的阴影区域.
4 实验
为验证本文算法的有效性,在Matlab R2011b编程环境下,分别利用本文算法和文献[14]中的算法对Highway 1数据库[15]中的车辆阴影进行了检测.在实验中,2种算法都采用了20帧图像用于训练,并采用另外10帧图像用于检测.2组实验的部分结果见图4~图6.为了更好地对2种算法进行比较,没有对检测结果进行后续的形态学处理.从图可知,车辆区域中大量较暗的区域被文献[14]中的算法误检测为阴影,这是因为采用该算法时,车辆区域训练样本中同时包含了与阴影区域区别较大的车辆区域和与阴影区域相近似的车辆区域,导致训练得到的支持向量难以将阴影区域及与阴影区域相似的车辆区域区分开来.采用本文算法时,车辆区域训练样本中只包含与阴影区域相近似的车辆区域,故能更有效地区分阴影区域及与阴影区域相似的车辆区域.为了定量比较2种算法的性能,采用文献[15]中的评价指标对2组实验结果进行评价,结果见表1.
(a) 原始图像
(b) 文献[14]算法结果
(c) 本文算法结果
图4 第121帧图像实验结果
(a) 原始图像
(b) 文献[14]算法结果
(c) 本文算法结果
(a) 原始图像
(b) 文献[14]算法结果
(c) 本文算法结果
阴影检测率η和阴影分类率ξ的计算公式分别为
式中,T1为10帧测试图像中被检测为阴影的总阴影区域面积;F1是被误检测为车辆或背景的总阴影区域面积;T2为被检测为车辆的总车辆区域面积;F2为被检测为阴影或背景的总车辆区域面积;Z1为真实的总车辆区域面积;Z2为被检测为阴影的总车辆区域面积.
表1 实验结果的定量比较
阴影检测率η越大,表示被检测出的阴影越多;阴影分类率ξ越大,表示被误检测为阴影的车辆区域面积越小.由表1可知,相比文献[14]算法,本文算法提高了阴影检测率和阴影分类率.此外,本文算法还具有更高的计算效率,这是因为尽管增加了超像素分割以及初步阴影检测的环节,但是该算法无需对每一个像素进行识别,而只需对每个超像素进行识别,从而大大减少了计算量.
5 结语
在进行车辆阴影检测时,一部分与阴影区域相近似的车辆区域容易被误检测为阴影区域.为了解决这一问题,本文提出了一种结合超像素和支持向量机的车辆阴影检测算法.在超像素分割的基础上,以超像素为单位在HSV空间内对车辆阴影进行初步检测,然后在RGB颜色空间内定义超像素的特征向量,利用支持向量机对阴影区域的超像素及与阴影相似区域的超像素进行训练和分类,以对车辆阴影进行进一步的检测.实验结果表明,本文算法能够较好地区分车辆阴影及与车辆阴影相似的车辆区域,从而提高车辆阴影检测的准确性.在HSV空间中进行初步阴影检测时,本文根据经验选取了固定阈值,在不同光线环境下如何自动选取合适的阈值仍需进行深入研究.
References)
[1]Xiao M, Han C Z, Zhang L. Moving shadow detection and removal for traffic sequences[J].InternationalJournalofAutomationandComputing, 2007, 4(1): 38-46.
[2]Sanin A, Sanderson C, Lovell B. Shadow detection: a survey and comparative evaluation of recent methods[J].PatternRecognition, 2012, 45(4):1684-1695.
[3]Cucchiara R, Grana C, Piccardi M, et al. Detecting moving objects, ghosts and shadows in video streams[J].IEEETransactionsonPatternAnalysisandMachineIntelligence, 2003, 25(10): 1337-1342.
[4]Salvador E, Cavallaro A, Ebrahimi T. Cast shadow segmentation using invariant color features[J].ComputerVisionandImageUnderstanding, 2004, 95(2): 238-259.
[5]Chen C T, Su C Y, Kao W C. An enhanced segmentation on vision-based shadow removal for vehicle detection[C]//2010InternationalConferenceonGreenCircuitsandSystems. Shanghai, China, 2010: 679-682.
[6]Cavallaro A, Salvador E, Ebrahimi T. Shadow-aware object-based video processing[J].IEEProceedings—Vision,ImageandSignalProcessing, 2005, 152(4): 398-406.
[7]Mao Y F, Shi P F. Multimodal background model with noise and shadow suppression for moving object detection[J].JournalofSoutheastUniversity:EnglishEdition, 2004, 20(4):423-426.
[8]Huang J B, Chen C S. Moving cast shadow detection using physics-based features[C]//2009IEEEConferenceonComputerVisionandPatternRecognition. Miami, FL, USA, 2009: 2310-2317.
[9]Martel-Brisson N, Zaccarin A. Kernel-based learning of cast shadows from a physical model of light sources and surfaces for low-level segmentation[C]//2008IEEEConferenceonComputerVisionandPatternRecognition. Anchorage, AK, USA, 2008: 1-8.
[10]Fang L Z, Qiong W Y, Sheng Y Z. A method to segment moving vehicle cast shadow based on wavelet transform[J].PatternRecognitionLetters, 2008, 29(16):2182-2188.
[11]Cucchiara R, Grana C, Piccardi M, et al. Detecting objects, shadows and ghosts in video streams by exploiting color and motion information[C]//Proceedingsof11thInternationalConferenceonImageAnalysisandProcessing. Palermo, Italy, 2001: 360-365.
[12]Achanta R, Shaji A, Smith K, et al. SLIC superpixels compared to state-of-the-art superpixel methods[J].IEEETransactionsonPatternAnalysisandMachineIntelligence, 2012, 34(11):2274-2282.
[13]Stauffer C, Grimson W E L. Adaptive background mixture models for real-time tracking[C]//1999IEEEComputerSocietyConferenceonComputerVisionandPatternRecognition. Fort Collins, CO, USA, 1999,2:246-252.
[14]Joshi A J, Papanikolopoulos N P. Learning to detect moving shadows in dynamic environments[J].IEEETransactionsonPatternAnalysisandMachineIntelligence, 2008, 30(11):2055-2063.
[15]Prati A, Mikic I, Trivedi M M, et al. Detecting moving shadows: algorithms and evaluation[J].IEEETransactionsonPatternAnalysisandMachineIntelligence, 2003, 25(7):918-923.
Vehicle shadow detection algorithm based on superpixel and SVM
Zhu Zhou1,3Lu Xiaobo2,3Wei Peng2,3Zeng Weili2,3
(1School of Transportation, Southeast University, Nanjing 210096, China) (2School of Automation, Southeast University, Nanjing 210096, China) (3Key Laboratory of Measurement and Control of Complex Systems of Engineering of Ministry of Education, Southeast University, Nanjing 210096, China)
To solve the problem that the vehicle region similar to the shadow is apt to be wrongly detected as the shadow during vehicle shadow detection, a vehicle shadow detection algorithm based on superpixel and SVM(support vector machine) is proposed. First, the current image is segmented to several superpixels by the simple linear iterative clustering method. Then, according to a group of criterion conditions in HSV(hue, saturation, value) space, the vehicle shadow is detected preliminary by taking superpixels as basic testing units. Finally, the vehicle region which is detected wrongly as the vehicle shadow is recognized by SVM and removed from the preliminary detection results, thus the final vehicle shadow is obtained. The experimental results show that the proposed method can well distinguish the shadow from the vehicle region similar to the shadow, and can improve the detection rate and the discrimination rate of the vehicle shadow.
shadow detection; superpixel; support vector machine; vehicle detection
10.3969/j.issn.1001-0505.2015.03.006
2014-11-10. 作者简介: 朱周(1984—),男,博士生;路小波(联系人),男,博士,教授,博士生导师,xblu2013@163.com.
国家自然科学基金资助项目(61374194,61403081).
朱周,路小波,卫朋,等.基于超像素和支持向量机的车辆阴影检测算法[J].东南大学学报:自然科学版,2015,45(3):443-447.
10.3969/j.issn.1001-0505.2015.03.006
U491.1
A
1001-0505(2015)03-0443-05