娄玉强,蒋华涛,常 琳,李 庆,陈大鹏
(1.中国科学院微电子研究所,北京 100029;2.中国科学院物联网研究发展中心,江苏 无锡 214135;3.中国科学院大学,北京 100049)
复杂环境下车辆检测是计算机视觉领域的难题之一[1],它在安全辅助驾驶、智能交通中都有着重要的应用。由于需要应对环境光照剧烈变化、目标姿态变化等问题,对算法时间复杂度、检测准确率等都提出了更高的要求。文献[2]提出一种基于局部敏感直方图(Locality Sensitive Histograms, LSH)提取光照不变特征的方法,能够快速地得到图像中不随光照变化的部分。文献[3]提出的Fourier HOG,通过将梯度方向直方图(Histogram of Oriented Gradients,HOG)[4]引入极坐标系下进行傅里叶分析,使Fourier HOG描述符具备旋转不变性,明显优于其他旋转不变描述符[5],但是该算法却存在时间复杂度较高的问题,通过引入快速傅里叶变换(Fast Fourier Transform, FFT),可以对算法进行优化,得到FFT-Fourier HOG。在检测过程中,采用目标推荐法(object proposals)可过滤掉无关区域,大大降低系统计算负担。本文算法首先采用EdgeBoxes算法[6]确定车辆候选区域(proposals),然后采用参考文献[2]中方法对图像进行处理得到光照不变特征,之后采用FFT-Fourier HOG算法,得到最终特征描述符(descriptor)。结合线性SVM分类器,在公开数据集上实验结果表明,相比其他算法,该算法不但提高了检测的速度,而且提高了检测准确率。
在车辆检测过程中,首先确定车辆候选区域能极大地提高车辆的检测速度。本文采用EdgeBoxes算法[6]来确定车辆候选区域,具体如下:
(1)采用结构化边缘检测算法[7]得到边缘图像,然后采用非极大值抑制算法进一步处理得到一个相对稀疏的边缘图像。
(2)将得到的边缘进行分组,并计算每两组之间的相似度。得到边缘图像后,采用贪心算法搜索8连通的边缘,直到边缘之间的方向角度和的差值大于π/2,这样就形成了多个边缘分组。然后计算每两个边缘组之间的相似度,计算公式为:
(1)
其中,si和sj为两个边缘组,其平均位置为xi和xj,平均方向角分别为θi和θj,θij是xi和xj之间的角度,γ为调整相似度敏感度的参数,在此设置为2。
(3)根据边缘组相似度确定轮廓,得到最后的候选区域。定义ωb(si)∈[0,1],即si完全在区域b内,则ωb(si)=1,其他情况ωb(si)=0。ωb(si)计算公式如下:
(2)
其中,T是长度为|T|、起点为t1∈Sb、终点为t|T|∈si的有序边缘组路径,由ωb可以得到每个候选区域的得分函数:
(3)
其中,mi为所有在si中像素值大小之和,bω和bh为候选区域的宽和高,κ为补偿系数。根据边缘图像以及相似度,由公式(2)、(3)计算候选区域得分,在实际中为了提高计算效率,公式(3)中得分函数采用以下计算方法:
(4)
图1 图像得到候选区域
文献[2]给出了一种基于局部敏感直方图(LSH)计算光照不变特征的算法,该算法可以有效降低光照变化的影响,同时具有速度快的优点。具体步骤如下:
(1)计算局部敏感直方图。像素点p处的局部敏感直方图为:
(5)
其中,α∈(0,1)为控制像素远离目标中心时衰减权重系数,I为图像,W为像素数,B为灰度级总数,Q(Iq,b)定义为:q∈b时,Q(Iq,b)=1,否则为0。通过理论证明可得LSH计算过程中每个像素位置仅有B个加法和B个乘法,从而得到像素为W、直方图个数为B的LSH,算法复杂度为O(WB),具有较好的实时性。
(2)得到光照不变特征。得到局部敏感直方图后,计算得到光照不变特征:
(6)
式中,p点灰度级为bp,整个目标模板的灰度级个数为B,rp=k·Ip,其中k为常系数,Ip是目标模板平均亮度,平均亮度值越大,权重值越小。实验证明,光照剧烈变化时,Γp的值基本不变。图2(a)为原始图片,图2(b)为提取光照不变特征后的图片,可见经过提取光照不变特征后光照影响得到很大限度上的滤除,纹理特征得到了很好的保留,有利于接下来梯度信息的计算。
图2 提取光照不变特征
本文算法在文献[3]的基础上进行了优化,引入快速傅里叶变换(FFT),得到基于快速傅里叶变换的Fourier HOG,从而显著地提升了特征提取的效率。具体步骤为:
(1)卷积核傅里叶变换。首先计算卷积核的傅里叶变换,包括空间聚集核K1,局部对比归一化核K2以及二维基函数Uj,k。傅里叶变换后3个量分别表示为K1,K2,Uj,k。
(2)计算局部区域特征。首先,对于输入图像的梯度场D做基于FFT卷积的局部对比归一化:
(7)
Fm=Znorm·exp(-imβ)
(8)
Am=F-1{F{Fm}·K1}
(9)
(10)
(3)生成最终旋转不变特征。本步骤中,一共生成4种最终的旋转不变特征。Am的旋转秩特征是-m,第一种旋转不变特征计算为:
(11)
(12)
(13)
(14)
(15)
(16)
以便于保持相位的同时保持阶数。最终,得到一个实值特征向量。对于实值特征,它们被直接放入描述符,对于复值特征,实值与虚部分开放入描述符。算法流程如图3所示。
图3 得到旋转不变特征描述符
实验的计算机环境是:Intel(R)Core i7-6700,3.4 GHz,Windows 7,64位操作系统。所需软件为MLTLAB R2015b。
本文实验数据来源于Google Earth卫星图像数据集[8],该公开数据集包括30张卫星拍摄图像,每幅图像大小为792×636像素,共有1 319辆被标注的车辆,所有车辆在图像中任意旋转。由于图像的低分辨率以及因为建筑物阴影造成的多光照条件,使得该数据集上的检测任务十分具有挑战性。
选择1 200个包含汽车目标在不同方向不同背景下的图像块作为正样本,选择3 000个不包含车辆的不同背景的图像块作为负样本,其中正样本从检测框中心处选取,负样本为检测框外随机采样选取。将各个图形块进行归一化为64×64像素大小的图像,得到一个4 200 个样本的训练集数据,然后使用线性支持向量机来进行训练和分类。
本文算法设置最大频率mmax=4,即m∈{0,1,2,3,4}。然后设置σ为6像素,同时rj∈{6,12,18}像素。只需低阶k来组成二维基函数,即-4≤k≤4。本文所选取的对比算法为Fourier HOG[3],为保持变量一致均采用线性SVM[9]作为分类器,因此需要将每一维特征归一化到[-1,1]。在检测过程中引入非极大值抑制[10]来消除多余的检测框,同时采用5折交叉验证。
分别得到对比算法(Fourier HOG)与本文算法的实验结果。图4为每幅图片特征提取时间的对比,本文算法特征提取时间缩短为对比算法的1/2。图5是检测时间的对比,由于本文算法首先确定了车辆候选区域,因此检测时间有着明显的提升,接近实时(10 fps)。图6为准确率-召回率曲线,相比对比算法79.9%的平均准确率(AP),本文算法达到了84.0%。综合实验结果可见本文算法在提高检测速度的同时也提高了检测准确率。
图4 特征提取时间对比
图5 检测时间对比
图6 准确率—召回率曲线
综合分析现有文献并结合具体应用需求,本文提出了一种基于EdgeBoxes与旋转不变特征的车辆检测算法。与传统的车辆检测算法相比,该算法通过提取光照不变特征与旋转不变特征,提高了检测的准确率,而且通过确定目标候选区域以及引入快速傅里叶变换进一步降低了算法的时间复杂度。通过在Google Earth卫星图像数据集上的实验表明,该算法具有检测准确率高、速度较快的优点,并且因为该算法核心是HOG在傅里叶空间的映射,从而也具有很好的鲁棒性。算法下一步优化的方向是引入特征选择,减少冗余特征,进一步提高检测速度与准确率。
[1] MALIK J, ARBELAEZ P, CARREIRA J, et al. The three R’s of computer vision: recognition, reconstruction and reorganization[J]. Pattern Recognition Letters, 2016, 72(72): 4-14.
[2] HE S F, LAU R W H, YANG Q X, et al. Robust object tracking via locality sensitive histograms[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2017,27(5):1006-1017.
[3] LIU K, SKIBBE H, SCHMIDT T, et al. Rotation-invariant HOG descriptors using Fourier analysis in polar and spherical coordinates[J]. International Journal of Computer Vision, 2014, 106(3): 342-364.
[4] DALAL N, TRIGGS B. Histograms of oriented gradients for human detection[C]∥Computer Vision and Pattern Recognition, 2005: 886-893.
[5] ZHANG W, SUN X F, FU K, et al. Object detection in high-resolution remote sensing images using rotation invariant parts based model[J]. IEEE Geoscience and Remote Sensing Letters, 2014, 11(1): 74-78.
[6] ZITNICK C L, DOLLAR P. Edge Boxes: locating object proposals from edges[C]∥European Conference on Computer Vision, 2014: 391-405.
[7] DOLLAR P, ZITNICK C L. Structured forests for fast edge detection[C]∥International Conference on Computer Vision, 2013: 1841-1848.
[8] HEITZ G, KOLLER D. Learning spatial context: using stuff to find things[C]∥European Conference on Computer Vision, 2008: 30-43.
[9] FAN R E, CHANG K W, HSIEH C J, et al. LIBLINEAR: a library for large linear classification[J]. Journal of Machine Learning Research, 2008,9(9): 1871-1874.
[10] FELZENSZWALB P F, GIRSHICK R, MCALLESTER D, et al. Object detection with discriminatively trained part-based models[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2010, 32(9): 1627-1645.