王粉蝶,普杰信
(河南科技大学电子信息工程学院,河南洛阳471003)
随着国内外对重要场合的安全检测要求的提高,汽车底盘异物智能图像识别技术越来越受到重视。针对系统采集的海量数据,需要在汽车通过的短短几秒时间中完成数据的处理,就必须有一套高效检测算法来与之相适应,以提高海量数据处理的速度,达到高速处理的目的。本课题是基于车辆底盘异物智能识别系统(Under Vehicle Inspection System,UVIS),主要是采用线阵CCD相机对汽车底盘图像进行采集,之后将采集到的图像与标准图像库中的标准图进行对比,检测出底盘上异物的位置,并标示出来供安检人员参考以做进一步处理。标准图是将编码器装置在汽车的尾部,根据汽车的速度变化来调整采样频率得到的。由于检测时候汽车的运动速度是非匀速直线的,因此找出与采集图相对应的标准图之后,要想准确地对异物进行定位,就需要进行图像匹配。对于整个系统来说,图像配准是变化检测的基本步骤[1]。由Herbert Bay等提出的 SURF(Speeded Up Robust Features)[2]算法具有速度较快、鲁棒性强的特点,是现在的配准算法研究的热点之一[3-6],因此本文采用了该算法来实现图像的配准。
配准之后,对图像进行进一步处理,采用开运算用于补偿不均匀的背景亮度,并与顶帽变换结合增强对比度,之后采用自动阈值迭代算法计算局部阈值,根据阈值产生二值图像,对二值图像采取八连通处理,最后用彩色的线标示出异物的位置。
SURF算法是一种新的局部不变特征算法,该算法主要由4个部分组成:1)特征点检测;2)特征点方向的确定;3)特征描述符的提取;4)特征匹配。算法采用快速Hession检测算法检测关键点,以经过方向配准的梯度方向直方图作为算法的特征,且此特征具有尺度旋转不变性。
SURF算法为提高计算速度,使用积分图像[7]完成卷积操作。其定义为:
若图像I(x)的一像素点用X=(x,y)表示,那么积分图像I∑(X)表示以该点和原点为对角顶点的矩形区域内的像素之和,即
计算积分图像时,只要遍历一遍原图像即可。若矩形区域的4个顶点分别为A,B,C,D,如图1所示,则该矩形窗口的灰度值之和为
SURF算法的特征点[8]是基于Hession矩阵的,首先要提取极值点作为候选的特征点。Hession矩阵的定义如下
当行列式的值小于某个阈值,则判为不稳定的点,不作为极值点。如果行列式的值最大,则为特征点。在计算视觉领域,尺度空间被象征性的表述为一个图像金字塔,其中,输入图像函数反复与高斯函数的核卷积并反复对其进行二次抽样。SURF算法根据此方法构建尺度空间,使用快速Hession矩阵检测每一层图像上的极值点,对该点邻近3×3×3立体邻域进行非最大值抑制,大于邻近26个响应值的点称为SURF特征点。之后在特征点的邻域上计算Harr小波,选择四种构成特征向量描述。
采用欧氏距离来度量特征点间的相似性[9-10]
近似值和准确值不可避免存在误差,为此引入一个常数权值0.9。得到其判别式为
式中:Aik表示待匹配的第一幅图像的第i个特征点描述向量的第k维的值;Bik表示待匹配的第二幅图像的第i个特征点描述向量的第k维的值;n表示特征点描述子是一个n维的描述向量。选择欧氏距离最小的一对特征点进行匹配,然后采用穷举搜索算法找到所有的点对即可。
汽车底盘异物检测系统首先将存在畸变的待测图与标准图进行SURF匹配,之后需要对异物进行定位并标示
阈值T的迭代步骤为:
1)为T选择一个初始估计值(一般为最大亮度和最小亮度的平均值)。
2)使用T分割图像,会产生两组像素,即亮度值≥T的所有像素组成的G1和亮度值<T的所有像素组成的G2。
3)计算G1和G2范围内的像素的平均亮度值μ1和
μ2。
4)计算一个新阈值
5)重复步骤2)~步骤4),直到连续迭代中的T比预先指定的参数T0小为止。
经过阈值处理之后,得到二值图像,为了标记出异物的大小和位置,需对差分得到的二值图像进行边缘跟踪。二值图像轮廓提取采用3×3网格的八邻域分析方法。
定义边界点标记为1,而其8连通邻域中至少有1个标记为0的点,网格中心点为当前待处理点。算法规则是以边界点为中心的八邻域内,记中心点为1,其邻域的8个点按逆时针分别记为P0,P1,…,P7,其中P0在P的左下角,见图2。如果中心点P为黑,且它的8个相邻点都是黑色时(该点为内部点),则将该点删除,也即把内部点都掏空。出来。将标准图与矫正图进行差分,得到差分图。由于差分图像对比度较低,首先对图像进行处理增强对比度,之后进行自动阈值处理,处理后的图像定义为
基于SURF算法的汽车底盘异物检测流程如图3所示。
实验图像采用的是线阵CCD相机获得的汽车底盘的图像,为了检测出异物的位置,需要建立一个标准库,里面存储不含异物的标准汽车底盘图像。因为在所研究的系统中,需要对运动的汽车底盘进行底盘扫描成像,而线阵CCD相机因其采样频率高,积分时间短,用来获取移动图像是最恰当的。
图4是采用线阵CCD相机获取到的汽车底盘的图像(彩图见 http://blog.csdn.net/fendie123/article/details/18957841),图4a中含有一个盒子用来模拟异物,图4b对应的是标准图,可以看到异物部分也含有相应的特征点。根据SURF算法将二者的对应点匹配起来,由于采取欧氏距离最小的原则,会产生匹配错误的情况,用阈值对欧氏距离进行限定,减少误匹配现象的出现。
图4 汽车底盘特征点的提取(截图)
采用SURF算法匹配的结果如图5所示,由于汽车移动的非匀速,使得存在漏采集和重复采集的现象,根据匹配的结果对图像进行单应性矩阵变换可以得到畸变校正后的图形,如图6所示。
校正后的图像用来与标准图做差分运算,经过进一步阈值和8连通处理可以标示出异物的位置。实验中分别对大小为60×45、20×15、5×5(单位为 piexel)的异物进行了实验,从图7中可以看出均可标示出异物的位置和大小。图8是未经图像匹配直接进行检测的结果,对比可知不经过匹配的检测结果存在很多散乱的标记点,不存在异物的地方也被标记了出来,检测的准确性相对较差。根据实验结果统计虚检(即实际之中没有异物却被误认为有异物存在)的个数如表1所示。由表中可以看出,采用SURF算法匹配之后系统虚检的概率大大减少,增加了整个系统的可靠性。同时匹配之后虚检的数目大大减少,使得后面的异物检测部分边缘跟踪的时间缩短了一半左右,提高了整体检测的速度,为智能实时检测打下了基础。
表1 虚检的个数统计
针对汽车底盘智能异物检测系统中采集到的线阵CCD图像存在漏采、重复采集等现象,采用SURF算法对畸变图像配准,使得待测图像与标准库中的标准图保持一致,配准之后进行了后期处理,包括增强对比度,阈值处理和轮廓跟踪,最后将汽车底盘中所包含的异物标示出来。实验结果表明采用的算法是有效的,可以准确标示出所加异物的位置,满足实时性的要求。多种类型的异物检测将作为以后的研究方向。
:
[1] GHAFFARY B K,SAWCHUK A A.A survey of new techniques for image registration and mapping[C]//Proc.the SPIE:Application of Digital image Processing.[S.l.]:IEEE Press,1983:222-239.
[2] BAY H,TUYTEPLAARS T,VAN G L.SURF:speeded up robust features[C]//Proc.the European Conference on Computer Version(ECCV 2006).[S.l.]:IEEE Press,2006:404-417.
[3]李慧,蔺启忠,刘庆杰.基于FAST和 SURF的遥感图像自动配准方法[J].国土资源遥感,2012(2):28-33.
[4]郭亮,滕奇志.基于SURF算法的微观驱替图像配准[J].太赫兹科学与电子信息学报,2013,2(11):271-276.
[5]唐坚刚,杨生远,孙龙杰.双目立体视觉测量中的特征点快速匹配算法[J].信息技术,2013(3):51-59.
[6]张开玉,梁凤梅.基于改进SURF的图像配准关键算法研究[J].科学技术与工程,2013,10(13):2875-2879.
[7]陈艺虾,权森,徐焕宇,等.SURF算法和RANSAC算法相结合的遥感图像匹配方法[J].计算机科学与探索,2012(9):1-9.
[8] LOWE D.Distinctive image features from scale-invariant keypoints[J].International Joural of Computer Vision,2004,60(2):91-110.
[9] ZITOVA B,FLUSSER J.Image registration methods:a survey[J].Image and Vision Computing,2003,21(11):977-1000.
[10] FONSECA L M G,MANJUNATH B S.Registration techniques for multisensor remotely sensed imagery[J].Photogrammetric Engineering and Remote Sensing,1996,62(1):1049-1056.