APP下载

基于一种新的级联分类器的目标检测系统

2020-03-03熊凯龙范方亮汪保玉吴建华

现代电子技术 2020年1期
关键词:查准率目标检测

熊凯龙 范方亮 汪保玉 吴建华

摘  要: 在机器视觉领域中,目标检测是一个至关重要的研究问题,提出一种新的目标检测算法。该算法在MB?LBP特征级联分类器的基础上再串联两个分类器,分别为基于SIFT特征分类器和基于SURF特征分类器。首先,当测试图像通过MB?LBP特征级联分类器时,所有的目标都没漏检,但是有部分非目标被误检为目标,接着依次通过基于SIFT特征分类器和基于SURF特征分类器,检测结果只剩下目标和极少数非目标。实验结果表明,由MB?LBP特征级联分类器、基于SIFT特征分类器和基于SURF特征分类器构成的新级联分类器可以有效提高查准率。

关键词: 目标检测; 级联分类器; MB?LBP; SIFT; SURF; 查准率

中图分类号: TN911.1?34; TP75                   文献标识码: A                     文章编号: 1004?373X(2020)01?0048?05

An object detection system based on a new cascade classifier

XIONG Kailong1, FAN Fangliang2, WANG Baoyu1, WU Jianhua1

Abstract: In the field of machine vision, object detection is a crucial issue in the research. A new algorithm of object detection is proposed in this paper. On the basis of MB?LBP feature cascade classifier, the algorithm is connected in series with other two classifiers (the classifier based on SIFT feature and the classifier based on SURF feature). When the images under test are sent through the MB?LBP feature cascade classifier, all of the objects are detected, which means there is no missing detection, however, some non?objects are mistakenly detected as the objects. Then they are sent through the classifier based on SIFT feature and the classifier based on SURF feature in sequence, and the result is that only the objects and a very few non?objects are accepted. Experimental results show that the new cascade classifier constructed by MB?LBP feature cascade classifier, the classifier based on SIFT feature and classifier based on SURF feature can effectively improve the precision ratio.

Keywords: object detection; cascade classifier; MB?LBP; SIFT; SURF; precision ratio

0  引  言

目标视觉检测是机器视觉领域一个至关重要的问题,在自动驾驶、人机交互、人脸检测、车牌识别、视频监控等方面具有重要研究意义和应用价值[1]。

文献[2]最先将Haar?like特征级联分类器用于人脸检测,取得了良好的效果。但是Haar?like特征集太大,包含许多冗余信息,并且其过于简单,需要大量的矩形特征才能实现较好的性能[3]。文献[3]根据文献[2]的思想将MB?LBP特征替换为Haar?like特征应用于人脸检测,相对Haar?like特征而言,MB?LBP特征可以获取更多的图像结构信息,展现更好的性能。然而将MB?LBP特征级联分类器用在点胶机的工件目标检测中,仍有部分的非目标被误检为目标。因此,本文提出一种新的级联分类器的目标检测算法,该算法是在MB?LBP特征级联分类器的基础上依次串联了基于SIFT特征和基于SURF特征的分类器。

本文提出的算法由三个分类器组成,分別为:MB?LBP特征级联分类器、基于SIFT特征分类器和基于SURF特征分类器。MB?LBP特征级联分类器是由多个通过Adaboost算法训练得到的分类器串联而成的。本文将所有样本的SIFT特征与正样本的平均SIFT特征作内积得到一个相似度直方图,然后用OTSU算法对直方图求最佳阈值,进而得到基于SIFT特征分类器,通过相同的方法同时得到基于SURF特征分类器。当测试图像经过第一个分类器时,可以去掉一部分的非目标图像,剩下的是目标和一部分非目标图像;经过第二个分类器时,又去掉一部分非目标图像;当经过最后一个分类器时,剩下的仅有目标和极少数非目标。实验结果表明,本文提出的目标检测算法与MB?LBP级联分类器相比,查准率明显提高。

1  基础工作

1.1  MB?LBP特征

文献[4]提出多块局部二值模式(Multi?block Local Binary Pattern, MB?LBP)特征,其为文献[5]提出的局部二值模式(Local Binary Pattern,LBP)特征的一种变形。它的核心思想是用中心像素块(像素块大小为[n×n],其中,[n]为像素块的边长)的平均灰度值作为阈值,将周围像素块的平均灰度值与阈值比较,若大于等于阈值则记为1,否则记为0。将这些0,1依次排列可生成一个8位二进制数来表示图像纹理特征。当[n]为1时,即得到原始的LBP特征。

以大小为3×3的像素块为例,MB?LBP特征提取过程如图1所示。图1a)中的每个数字为对应每个像素块的平均灰度值。

MB?LBP可以表示为:

[MB?LBP=p=072pf(gp-gc)] (1)

式中:[gc],[gp]分别为中心块和第[p]个邻域块的平均灰度值;[f(x)]为阶跃函数,定义如下:

[f(x)=1,    x≥00,    x<0] (2)

1.2  SIFT特征

文献[6]在计算机视觉国际会议上首次提出了SIFT特征描述子,在圖像处理、机器视觉、模式识别等领域产生了重大影响。文献[7]将SIFT进行了完善,使其在光照和3D视觉变化的条件下都有很好的稳定性。

SIFT特征描述子的生成过程如下[6?8]:

1) 构建图像尺度空间:将原图像和一个尺度变化的高斯函数进行卷积,从而构建一个图像尺度空间:

[L(x,y,σ)=G(x,y,σ)*I(x,y)] (3)

式中:[I(x,y)]为原图像;[G(x,y,σ)]为高斯函数;[σ]为尺度。

2) 构造差分图像尺度空间:

[D(x,y,σ)=(G(x,y,kσ)-G(x,y,σ))*I(x,y)=L(x,y,kσ)-L(x,y,σ)] (4)

在差分图像尺度空间中搜索局部极值点作为特征点,其属性包括位置[(x,y)]和尺度[σ]。

3) 对于在尺度[σ]下检测到的特征点,根据特征点的尺度值得到最近似这一尺度的高斯图像为:

[L(x,y)=G(x,y,σ)*I(x,y)]    (5)

4) 计算该尺度下以特征点为中心、[3×1.5σ]为半径的区域内的图像梯度的幅值和相位:

[m(x,y)=]

[[L(x+1,y)-L(x-1,y)]2+[L(x,y+1)-L(x,y-1)]2]  (6)

[θ(x,y)=arctanL(x,y+1)-L(x,y-1)L(x+1,y)-L(x-1,y)]  (7)

5) 统计邻域内像素的梯度幅值和方向,构成梯度方向直方图,梯度相位值作为横坐标,梯度相位值对应的梯度幅值累加值作为纵坐标。梯度方向直方图将梯度相位值(0°~360°)分成了36个柱,每个柱为10°。

6) 选取主方向:特征点的主方向为直方图峰值对应的梯度方向。

7) 将坐标轴旋转至特征点的主方向,重新选取以特征点为中心的邻域,邻域的大小为8×8,将其划分为4个4×4的子窗口。在每个子窗口内计算8个方向的梯度方向直方图,即形成一个种子点。每个种子点包含8个方向向量信息,即其维度为8维,如图2所示。为了增强匹配稳定性,Lowe建议每个关键点由4×4=16个种子点构成,则最终形成的SIFT特征向量的维度为4×4×8=128维。

8) 对得到的128维SIFT特征向量进行L2范数归一化处理,从而去除光照变化影响,增强鲁棒性。

1.3  SURF特征

文献[9]结合Lowe的思路提出加速的鲁棒特征(Speed Up Robust Features,SURF)。SURF特征生成过程是在积分图像上操作,利用Hessian矩阵快速地构建尺度空间。

SURF特征描述子生成过程如下[8?9]:

1) 构建Hessian矩阵,对于图像[I(x,y)],在尺度[σ]下的Hessian矩阵为:

[H(x,y,σ)=Lxx(x,y,σ)Lxy(x,y,σ)Lxy(x,y,σ)Lyy(x,y,σ)] (8)

式中:[Lxx(x,y,σ)]为图像[I(x,y)]与[G(x,y,σ)]卷积对像素点[(x,y)]的二阶导数;[Lxy(x,y,σ)],[Lyy(x,y,σ)]的含义与其类似。

2) 通过Hessian矩阵的判别式,判别特征点。将Hessian矩阵的行列式作为其判别式,式(7)中高斯二阶导数可用盒滤波器近似,近似值分别用[Dxx],[Dxy]和[Dyy]表示,则Hessian判别式为:

[det(Happrox)=DxxDyy-(0.9Dxy)2] (9)

3) 构建尺度空间:使用不同尺寸的方框滤波器对原图像滤波,以9×9滤波器的输出作为初始尺度,其尺度用[s]表示,且[s=]1.2(对应[σ=]1.2高斯二阶微分滤波器)。

4) 特征点定位:使用不同尺寸的盒滤波模板和积分图求取Hessian矩阵行列式的响应图像,然后在响应图像上利用3维非极大值抑制提取特征点。

5) 特征点方向分配:选取一个圆形区域,其中心为特征点、半径为[6s]([s]为特征点的尺度),对圆形区域内每个像素计算边长为[4s]的哈尔小波响应值。计算角度为60°的扇形滑动窗内像素的哈尔小波响应值d[x]和d[y],并进行累加,从而得到一个矢量[(mω,θω)],[ω]表示滑动窗口,如图3a)所示,即:

[mω=ωdx+ωdy] (10)

[θω=arctanωdxωdy] (11)

圆内模值最大向量的方向作为特征点的主方向。

6) 特征描述符生成:选取一个边长为[20s]([s]为特征点的尺度)的正方形区域,该正方形区域的中心为特征点,且该正方形的边和特征点的主方向向量垂直。沿主方向将正方形区域划分为4×4个子块。在每个子块内计算尺寸大小为2[s]的哈尔小波响应值,然后对响应值进行统计([dx],[dx],[dy],[dy]),形成特征向量,如图3b)所示。每个子块得到一个4维的特征向量,一共有16个子块,最终形成一个16×4=64维的SURF特征向量。

1.4  Adaboost算法

Adaboost算法由文献[10?11]提出。该算法的核心思想是针对同一个训练集训练出多个不同弱分类器,再将得到的所有弱分类器进行线性组合,从而得到一个强分类器。Adaboost算法实现步骤如下[10?12]:

1) 给定数据集:

[T={(x1,y1),(x2,y2),…,(xN,yN)}yi∈{-1,+1},  i=1,2,…,N]  (12)

初始化训练数据的权重分布:

[D1=(ω1,1,ω1,2,…,ω1,N),  ω1,i=1N;i=1,2,…,N] (13)

2) 总共迭代次数设为[M],当第[m]次迭代时:

① 对初始化权重后的训练数据进行学习,获得基本分类器:

[Gm(x):x→{-1,+1}] (14)

② 计算[Gm(x)]在训练数据上的分类误差:

[em=i=1Nωm,i1(Gm(xi)≠yi)]    (15)

其中,[1](false)=0,[1](true)=1。

③ 计算[Gm(x)]的加权系数:

[αm=12log1-emem] (16)

④ 更新训练数据集的权重分布:

[Dm+1=(ωm+1,1,ωm+1,2,…,ωm+1,N)]   (17)

[ωm+1,i=ωm,iZmexp(-αmyiGm(xi)), i=1,2,…,N    ] (18)

其中,[Zm]为规范因子:

[Zm=i=1Nωm,iexp(-αmyiGm(xi))]  (19)

3) 构建基本分类器的线性组合:

[f(x)=m=1MαmGm(x)] (20)

4) 得到最終的分类器:

[G(x)=sgn(f(x))=sgnm=1MαmGm(x)] (21)

式中sgn([x])为符号函数。

2  本文算法

2.1  本文算法框架

针对点胶机的工件目标检测问题,本文采用3个分类器串联构成一种新的级联分类器的目标检测算法。第一级为MB?LBP级联分类器;第二级为基于SIFT特征分类器;第三级为基于SURF特征分类器。目标检测算法框图如图4所示。

本文的MB?LBP特征级联分类器由10个分类器串联而成,其中每一个分类器都是通过Adaboost算法训练得到的,其检测率为0.999,拒绝率为0.5,则MB?LBP特征级联分类器最终的检测率为0.99910≈99%,假阳性率0.510≈0.09%。基于SIFT特征和基于SURF特征的分类器检测率都能达到0.999以上,并且有较高的拒绝率。MB?LBP级联分类器与基于SIFT特征分类器和基于SURF特征分类器依次串联之后,检测率大致不变,假阳性率明显减少。本文最终得到的新级联分类器具有较高的检测率和较低的假阳性率。3个分类器的训练过程见2.2节。

2.2  分类器训练

本文一共训练3个分类器,分别为MB?LBP特征级联分类器、基于SIFT特征分类器和基于SURF特征分类器。

1) 借助OpenCV 3.3.0中的训练程序完成MB?LBP特征级联分类器的训练。训练步骤如下:

① 准备正样本,截取只含有检测目标的图像作为正样本,并进行灰度化和尺寸归一化。

② 准备负样本,将不含检测目标的图像作为负样本。

③ 将正负样本的图像名称做成TXT文件。

④ 借助opencv_createsample.exe程序生成样本描述文件。

⑤ 借助opencv_traincascade.exe程序进行训练得到MB?LBP特征级联分类器。

2) 基于SIFT特征分类器的训练步骤如下:

① 提取所有正样本的SIFT特征,计算平均SIFT特征。

② 提取所有正负样本的SIFT特征,分别和步骤①中计算的平均SIFT特征作内积,得到一组相似度的值。

③ 统计相同相似度值的样本个数,构建其和相似度值的直方图。

④ 使用OTSU算法求得直方图的最佳阈值,得到一个分类器。

3) 基于SURF特征分类器的训练步骤如下:

① 提取所有正样本的SURF特征,计算平均SURF特征。

② 提取所有正负样本的SURF特征,分别和步骤①中计算的平均SURF特征作内积,得到一个相似度值。

③ 统计相同相似度值的样本个数,构建其和相似度值的直方图。

④ 使用OTSU算法求得直方图的最佳阈值,得到一个分类器。

3  实验结果与分析

本文对贴片LED点胶工件进行检测实验,对于其他种类工件,只需将其他种类的工件当作样本进行训练。本次实验运行硬件环境为Intel[?] CoreTM i7?4790 CPU @3.60 GHz,软件环境为Windows 7系统下的Visual Studio 2017和OpenCV 3.3.0。

本文算法先对训练集进行学习,再使用一共含有目标308个的多张图像作为测试集来检测系统的性能。将本文的目标检测系统与MB?LBP特征级联分类器的检测结果进行对比,并分别计算查准率(precision),如表1所示。查准率[P]计算公式如下:

[P=TP(TP+FP)×100%] (22)

式中TP,FP分别代表检测结果中为目标和假目标的个数。

表1中分类器1,2分别代表MB?LBP特征级联分类器和本文提出的目标检测分类器。

从表1的数据可以看出,本文提出的目标检测算法相对MB?LBP级联分类器,查准率提高了9.7%。部分目标检测结果如图5所示。图5中任何一种颜色的矩形框标记的是通过MB?LBP特征级联分类器时检测到的目标,绿色(虚线)矩形框标记的是第二个分类器去除的非目标,黄色(点线)矩形框标记的是第三个分类器去除的非目标,红色(实线)矩形框标记的是测试图像依次通过三个分类器之后剩下的目标。

跟踪程序执行过程可以得到:当用MB?LBP级联分类器检测时,一共检测到345个目标,接着通过基于SIFT特征分类器检测到的目标只剩下318个,减少了27个错误的目标,最后通过基于SURF特征分类器,检测到的目标剩下了311个,又减少了7个错误的目标。因此本文提出的算法相较于MB?LBP特征级联分类器而言,查准率明显提升。

4  结  语

当用MB?LBP特征级联分类器进行目标检测时,仍有较多的非目标被错误地检测为目标,因此本文提出一种新的级联分类器的目标检测算法,即在MB?LBP特征级联分类器的基础上再串联了基于SIFT特征和基于SURF特征的分类器。实验结果表明,本文提出的目標检测算法可以弥补MB?LBP特征级联分类器的不足,明显提高了查准率。本文的特征提取仍然属于人工选定特征,Adaboost算法没有自动学习能力,今后可以考虑用卷积神经网络进行自动特征提取和学习,使得目标检测算法更加泛化。

参考文献

[1] 张慧,王坤峰,王飞跃.深度学习在目标视觉检测中的应用进展与展望[J].自动化学报,2017,43(8):1289?1305.

[2] VIOLA P, JONES M J. Robust real?time face detection [J]. International journal of computer vision, 2004, 57(2): 137?154.

[3] ZHANG L, CHU R, XIANG S, et al. Face detection based on Multi?Block LBP representation [C]// Advances in Biometrics, International Conference. Heidelberg, Berlin: Springer?Verlag, 2007: 11?18.

[4] LIAO S, ZHU X, LEI Z, et al. Learning multi?scale block local binary patterns for face recognition [C]// Advances in Biome?trics, International Conference. Heidelberg, Berlin: Springer?Verlag, 2007: 828?837.

[5] OJALA T, PIETIK?INEN M, HARWOOD D. A comparative study of texture measures with classification based on featured distributions [J]. Pattern recognition, 1996, 29(1): 51?59.

[6] LOWE D G. Object recognition from local scale?invariant feature [C]// Proceedings of the Seventh IEEE International Conference on Computer Vision. Kerkyra, Greece: IEEE, 1999: 1150?1157.

[7] LOWE D G. Distinctive image feature from scale?invariant keypoints [J]. International journal of computer vision. 2004, 60(2): 91?110.

[8] 杨化超.图像局部不变性特征及其匹配问题研究与应用[M].北京:测绘出版社,2013:27?58.

[9] BAY H, ESS A, TUYTELAARS T, et al. Speeded?up robust feature [J]. Computer vision & image understanding, 2008, 110(3): 346?359.

[10] FREUND Y, SCHAPIRE R E. A decision?theoretic generalization of on?line learning and an application to boosting [J]. Journal of computer and system sciences. 1997, 55(1): 119?139.

[11] FREUND Y, SCHAPIRE R E. Experiments with a new boos?ting algorithm [C]// Proceedings of the Thirteenth International Conference on Machine Learning. Bari, Italy: Morgan Kaufmann, 1996: 148?156.

[12] 周志华.机器学习[M].北京:清华大学出版社,2015:173?178.

作者简介:熊凯龙(1994—),男,硕士研究生,从事信号处理与机器视觉研究。

范方亮(1984—),男,硕士研究生,讲师,从事随机过程研究。

汪保玉(1994—),男,硕士研究生,从事信号处理与机器视觉研究。

吴建华(1956—),男,博士,教授,从事信号处理、模式识别研究。

猜你喜欢

查准率目标检测
中国最具影响力的综合搜索引擎比较研究
基于深度特征分析的双线性图像相似度匹配算法
视频中目标检测算法研究
行为识别中的人体运动目标检测方法
移动机器人图像目标识别
基于背景建模法的运动目标检测
基于P3电位的目标检测研究