APP下载

基于AdaBoost算法的级联分类器对绿色荔枝的快速检测方法*

2018-03-02程佳兵邹湘军林桂潮李锦慧陈明猷黄矿裕

自动化与信息工程 2018年5期
关键词:级联荔枝分类器

程佳兵 邹湘军 林桂潮 李锦慧 陈明猷 黄矿裕



基于AdaBoost算法的级联分类器对绿色荔枝的快速检测方法*

程佳兵 邹湘军 林桂潮 李锦慧 陈明猷 黄矿裕

(华南农业大学工程学院)

针对绿色荔枝与树叶颜色相似,采摘机器人在自然环境下准确识别较为困难的问题,提出一种基于AdaBoost算法的级联分类器快速检测方法。首先提取MB-LBP特征,并基于积分图技术快速计算其特征值;然后利用AdaBoost算法从MB-LBP特征中构造若干个最优弱分类器,并加权组合成强分类器;最后通过若干个强分类器的级联来构造级联分类器,可获得基于MB-LBP特征的AdaBoost级联分类器。试验表明:该方法对绿色荔枝的识别准确率为92.7%,召回率为81.3%;测试图像的平均处理时间为1.276 s。

绿色荔枝;MB-LBP特征;AdaBoost算法;强分类器;级联分类器

0 引言

我国是荔枝生产大国,在荔枝种植过程中,通过对绿色荔枝进行识别来估计产量,由产量决定决策,具有一定的科学依据,并可合理利用资源。

近年来,许多学者深入研究了自然环境下成熟荔枝的检测方法。彭红星等[1]提出一种双次Otsu分割算法,果实分割正确率达94.75%,并且该算法实时性较好,但对与背景颜色相似的果实分割效果不佳。熊俊涛等[2-5]基于YIQ颜色模型中I分量、YCbCr颜色模型的Cr分量、HSV颜色模型或HSV颜色模型中H分量的旋转,结合Otsu算法除去背景,再用模糊C均值聚类方法使果实与果梗分开,该算法的分割正确率、稳定性和实时性均较好。郭艾侠[6]等基于YCbCr颜色模型中Cr分量的灰度化处理,采用二次阈值方法对不同光照条件下的荔枝各部位进行识别,荔枝果、荔枝串和结果母枝的平均识别率分别为91.67%,91.67%和86.67%,但在强光条件下对荔枝果分割效果不佳。郭艾侠等[7]提出探索性分析与荔枝图像识别融合的方法,可较好地识别荔枝串、荔枝果和结果母枝。Han等[8]提出一种基于机器视觉的快速归一化互相关(FNCC)算法,可在野外环境下识别出绿色柑橘,正确识别率为84.4%。Sun等[9]提出将模糊集理论和流行排序方法融合的识别算法,在自然环境下对绿色苹果的正确识别率为90.87%。伍艳莲[10]等提出改进的均值漂移算法与颜色指数结合的方法,利用阈值分割将图像分成绿色部分与背景部分,该方法能将绿色作物从复杂背景中分离出来且误分割率小于6.5%。但当背景与绿色作物颜色相似时,该方法无法正确分割。谢忠红等[11]对目标果实颜色与背景相差较大时,基于HIS和RGB色彩模型,利用H分量或R-G分量,通过Otsu方法确定最优阈值来分割目标果实与背景,准确分割目标果实成功率达98%;但当目标果实颜色与背景相似时,需通过提取熵和能量两个纹理特征,才可将绿色果实从复杂背景中分割出来,试验表明果实分割成功率达95%。熊俊涛等[12]提出基于深度学习的技术,利用YOLOV2模型对自然环境下树上的绿色芒果进行检测识别,试验表明识别准确率为90.64%。

为检测野外环境下的绿色荔枝,He等[13]提出一种改进的LDA分类器,采用SVM最大余量的思想确定LDA分类器阈值,用AdaBoost算法将多个LDA分类器加权组合成强分类器,该强分类器对绿色荔枝的检测准确率为80.4%,召回率为76.4%。为进一步提高绿色荔枝的检测准确率以及召回率,本文提出一种基于AdaBoost算法的级联分类器对绿色荔枝快速检测方法,实现在自然环境下对绿色荔枝的快速检测。

1 绿色荔枝图像采集

2018年5月30日上午,天气晴,在广东省增城区某果业园,用型号为D3400(分辨率是6000×4000像素)的相机采集绿色荔枝图像150张,并将采集的图像约按4:1分为训练集和测试集。在图像采集过程中,相机与目标的距离约为600 mm。

2 绿色荔枝检测

由训练集图像制作正负样本集,正样本与负样本数量之比约为1:3。通过提取MB-LBP特征并计算特征值,训练弱分类器,寻得最优弱分类器;基于AdaBoost算法获得强分类器,将强分类器级联构建级联分类器,对测试图像中的绿色荔枝检测识别。

2.1 特征提取及快速计算

2.1.1提取MB-LBP特征

LBP特征[14]可提取图像的局部纹理信息,但只能描述图像的微观特征。Zhang等提出MB-LBP特征,可描述不同尺度下图像的微观、宏观信息[15]。文献[16]将MB-LBP特征用于检测人脸,效果较好。绿色荔枝与树叶、枝干等背景的纹理显著不同,本文将MB-LBP特征用于绿色荔枝的检测识别。

先将图像进行灰度化处理,在3×3像素的大方块中,以中间块像素灰度值的平均值为阈值,分别与其他邻域块像素灰度值的平均值一一进行比较。当某邻域块像素灰度值的平均值大于中间块像素灰度值的平均值时,该位置置1,否则置0。通过式(1)和式(2)可计算出MB-LBP的特征值。

提取MB-LBP特征时,以1像素为步长平移遍历整个图像。在检测测试图像时,由于图像远大于MB-LBP特征的尺寸,为检测不同尺寸的绿色荔枝,需将测试图像按一定的比例缩小,再由MB-LBP特征遍历整个图像,重复检测过程。因此提取MB-LBP特征的数量较多,特征值计算量较大。为减少计算量,本文采用积分图技术。

2.1.2积分图

为减少特征值的计算量,Viola等[17]人引入了积分图技术。积分图技术是把从图像起点开始到图像中所有点构成的矩形区域中像素值之和作为元素存储在数组中,当需要计算某个特征值时,直接访问存储在数组中相应位置的值进行相关计算即可。积分图的定义为[16]

其中,i(x, y)是点(x, y)处的像素值;ii(x, y)是图像i在像素(x, y)的左上角与原点所构成区域中的所有像素值之和;(x', y')是区域中任意一点。积分图的定义如图1所示。

为实时计算积分图,采用递归法。

其中()表示列的积分值。

基于积分图,任意矩形区域的像素值之和可由该区域4个顶点的积分图值计算得到,如图2所示。

区域D的积分图值为

(4)−(2)− ii(3)+(1)

其中,(1)表示区域A的像素值之和;(2)表示区域A+B的像素值之和;(3)表示区域A+C的像素值之和;(4)表示区域A+B+C+D的像素值之和。

图2 积分图计算示意图

2.2 AdaBoost算法原理

AdaBoost算法是通过不同的训练集训练弱分类器,从弱分类器中挑选出对训练样本分类误差最小的作为最优弱分类器。不同训练集是指每次用来训练的样本相同,但样本的权值不同。首次训练弱分类器时,设定正负样本权值的初始值;然后从得到的弱分类器中挑选出对训练样本分类误差最小的作为最优弱分类器,将其分类正确的样本权值降低,分类错误的样本权值升高,并归一化权值。多次重复上述训练步骤,并将得到的所有最优弱分类器以其分类误差的函数作为权值,加权组合成强分类器。在此基础上,对若干个强分类器进行级联来构造级联分类器。该算法在训练弱分类器时,看重分类错误的样本,提高其权重,这样在下一次训练获得的弱分类器对该样本可能分类正确。

2.2.1弱分类器的构造与训练

假设训练样本集为

对每一个特征,通过样本训练得到弱分类器,计算该弱分类器对样本的分类误差。统计样本所有特征训练得到的弱分类器误差,取其中分类误差最小的弱分类器作为最优弱分类器,并记下阈值。

2.2.2强分类器的构造

2)归一化权重为

其中,循环次数=1,2,…,;为正负样本总数();的取值为1~;

其中,为特征编号;为窗口编号;

4)计算最优弱分类器在强分类器中的权值

5)更新训练样本的权值

2.2.3级联分类器的构建

将AdaBoost算法训练得到的若干个强分类器进行级联构造级联分类器。级联分类器总的准确率和误识别率,由式(13)和式(14)计算[20]。

其中,为级联分类器的总层数;表示级联分类器的某层。

图3 级联分类器的示意图

3 试验结果与分析

3.1 试验平台

为验证本文提出算法的可行性,采用试验测试。试验平台为内存16 GB的Window10笔记本电脑;编程平台为Visual Studio 2013与Opencv3.0;编程语言采用C++。

3.2 定量实验

用获得的级联分类器对测试图像进行检测,得到绿色荔枝的候选区域;提取最大连通区域,获得其最小外接矩形;以外接矩形的中心为圆心,荔枝的平均半径画圆,圈出识别出的绿色荔枝并统计个数。本文将正确识别的绿色荔枝定义为:当未被遮挡时,要求圆心在绿色荔枝上,并且圆圈住绿色荔枝露出面积超过60%;若有遮挡时,只要圆的中心在绿色荔枝上即可;若有多个圆圈住同一个绿色荔枝,则将其只算一个是正确识别的,其余则当作误检测处理。对以下3种情况下的绿色荔枝不进行识别:1)拍照时由于风的干扰,造成部分绿色荔枝模糊;2)当两个绿色荔枝有重叠,前面绿色荔枝露出面积的1/2大于后面绿色荔枝的截取面积,后面的绿色荔枝将不能被识别;3)由于树叶或者树枝的遮挡,绿色荔枝露出部分小于50%。

本文采用准确率和召回率来评价训练得到的级联分类器的性能。准确率的定义为预测为正的样本中正例所占识别出样本总数的比例。召回率的定义为正确识别的样本总数占正例的样本总数的比例。本文随机选取116张绿色荔枝图像作训练,34张绿色荔枝图像作测试,以评估该算法训练获得的级联分类器相关性能。试验相关数据如表1所示。从表1可知,本文提出的基于MB-LBP特征的AdaBoost级联分类器,绿色荔枝识别准确率为92.7%,召回率为81.3%,图像平均检测时间为1.276 s。为验证本文算法的识别准确率以及实时性,采用同样的训练样本,提取Haar-like特征,获得基于Haar-like特征的AdaBoost级联分类器。该级联分类器对绿色荔枝的识别准确率为89.4%,召回率为79.6%,图像平均检测时间为1.494 s。可看出,前者级联分类器性能要比后者好,绿色荔枝识别准确率提高3.3%,召回率提高1.7%,并且试验过程中前者训练得到级联分类器以及检测每张测试图像所花的时间较短,满足实时性的要求。

表1 不同特征训练获得的级联分类器的识别效果

3.3 定性分析

将级联分类器用于检测测试图像,其效果如图4所示,其中图4(a)比图4(b)中绿色荔枝准确识别的数量要多,且误识别较少。

MB-LBP特征反映图像区域的纹理信息,绿色荔枝的纹理信息相对于背景而言较为突出;同时MB-LBP特征对不同的光照条件具有鲁棒性,提高级联分类器的准确识别率;并且MB-LBP特征的特征值是十进制整数,加快模型的训练过程以及测试图像的检测过程。Haar-like特征反映图像区域的灰度差异,但该特征由一些简单矩形构成,呈现出一定的局限性;而且对于同样尺寸的图像而言,Haar-like特征的数量相对于MB-LBP特征要多,训练模型所需的时间较长。但也可看出:1)两者均会出现不同程度的误检测情况,由于裁剪正样本时,当绿色荔枝被树叶、树枝等背景遮挡时,为提取完整的绿色荔枝,会将部分的树枝或树叶等背景保留,这增加了级联分类器的误识别;2)图像中有小部分绿色荔枝出现漏检测的情况。

图4(a) 基于MB-LBP特征的AdaBoost级联分类器识别绿色荔枝的效果图

4 结论

1)本文提出一种基于AdaBoost算法的级联分类器对绿色荔枝快速检测方法,能有效将绿色荔枝从颜色相似的背景中准确分离。通过试验可得:基于MB-LBP特征的AdaBoost级联分类器对测试图像中的绿色荔枝识别准确率为92.7%,召回率为81.3%,测试图像平均检测时间为1.276 s,准确率以及实时性满足实际应用的需求。

2)本文利用AdaBoost算法将所得的最优弱分类器加权组合成强分类器,同时将多个强分类器进行级联构造级联分类器。每个检测窗口首先由若干个最优弱分类器的加权投票决定其是否为目标,当其概率小于50%时,非目标的窗口经过一个强分类器后,就有部分被剔除,则后面的强分类器检测的窗口将会减少,多个强分类器的决策可降低误识别率,提高识别准确率。

3)引入积分图技术,加快了特征值的计算,减少级联分类器训练花费的时间。由于裁剪样本时,绿色荔枝被背景遮挡,为尽量保证绿色荔枝截取完整,会将部分背景保留,导致后续级联分类器出现误识别。

后续研究将结合绿色果实的颜色、形状和其他抽象特征从复杂背景中检测识别绿色果实,在保证准确率的同时尽量减少漏检数,提高召回率。

[1] 彭红星,邹湘军,陈丽娟,等.基于双次Otsu算法的野外荔枝多类色彩目标快速识别[J].农业机械学报,2014,45(4):61-68,75.

[2] 熊俊涛,林睿,刘振,等.夜间自然环境下荔枝采摘机器人识别技术[J].农业机械学报,2017,48(11):28-34.

[3] 熊俊涛,邹湘军,陈丽娟,等.基于机器视觉的自然环境中成熟荔枝识别[J].农业机械学报,2011,42(9):162-166.

[4] 熊俊涛,邹湘军,陈丽娟,等.荔枝采摘机械手果实识别与定位技术[J].江苏大学学报(自然科学版),2012,33(1):1-5.

[5] 熊俊涛,邹湘军,王红军,等.基于Retinex 图像增强的不同光照条件下的成熟荔枝识别[J].农业工程学报,2013,29(12): 170-178.

[6] 郭艾侠,邹湘军,邹海鑫.基于二次阈值的荔枝果与结果母枝图像识别[J].计算机工程与设计,2014,35(2):557-561.

[7] 郭艾侠,邹湘军,朱梦思,等.基于探索性分析的荔枝果及结果母枝颜色特征分析与识别[J].农业工程学报,2013,29(4):191-197.

[8] Li H, Lee WS, Wang K. Immature green citrus fruit detection and counting based on fast normalized cross correlation (FNCC) using natural outdoor colour images[J]. Precision agriculture, 2016,17(6):678-697.

[9] Sun S, Wu Q, Jiao L, et al. Recognition of green apples based on fuzzy set theory and manifold ranking algorithm[J]. Optik, 2018,165:395-407.

[10] 伍艳莲,赵力,姜海燕,等.基于改进均值漂移算法的绿色作物图像分割方法[J].农业工程学报,2014,30(24):161-167.

[11] 谢忠红,姬长英.基于颜色模型和纹理特征的彩色水果图像分割方法[J].西华大学学报(自然科学版),2009,28(4):41-45.

[12] 熊俊涛,刘振,林睿,等.自然环境下树上绿色芒果的无人机视觉检测技术[J].农业机械学报,2018,49(11):23-29.

[13] He ZL, Xiong JT, Lin R, et al. A method of green litchi recognition in natural environment based on improved LDA classifier[J]. Computers and Electronics in Agriculture, 2017,140:159-167.

[14] Sun H, Shen J, Chen B. LBP based fast face recognition system on symbian platform[J]. AASRI Procedia, 2012,1:276-281.

[15] Zhang L, Chu RF, Xiang SM, et al. Face Detection Based on Multi-Block LBP Representation[C].Seoul,Korea:Springer-Verlag Berlin Heidelberg, 2007:27-29.

[16] Jia ZJ, Wang CS, Yang G, et al. A Research of Face Feature Extraction Based on MB-LBP[C].2011 IEEE Power Engineering and Automation ConferenceL:IEEE,2011:69-72.

[17] Viola P, Jones M. Rapid Object Detection using a Boosted Cascade of Simple Features[C]. CVPR 2001:IEEE,2001:511-518

[18] 江伟坚,郭躬德,赖智铭.基于新Haar-like特征的AdaBoost 人脸检测算法[J].山东大学学报(工学版),2014,44(2):43-48.

[19] 张雪芹,方婷,李志前,等.基于类Haar特征和AdaBoost的车辆识别技术[J].华东理工大学学报(自然科学版),2016, 42(2):260-265.

[20] 李芳.基于AdaBoost算法的人脸检测研究与实现[D].武汉:武汉理工大学,2013.

Fast Detection Method for Green Litchi by Cascaded Classifier Based on AdaBoost Algorithm

Cheng Jiabing Zou Xiangjun Lin Guichao Li Jinhui Chen Mingyou Huang Kuangyu

(School of Engineering, South China Agricultural University)

Due to the similar color of green litchi and leaves, it is more difficult to accurately identify green litchi in the wild environment. In this regard, this paper proposes a fast detection method for green litchi by cascaded classifier based on AdaBoost algorithm. Firstly, the MB-LBP features are extracted, and their eigenvalues are quickly calculated based on the integral graph technique. Then, several optimal weak classifiers are constructed from the MB-LBP features by AdaBoost algorithm, and weighted into strong classifiers. Finally, the AdaBoost cascade classifier based on MB-LBP feature can be obtained by constructing a cascade classifier by cascading several strong classifiers. Experiments show that the AdaBoost cascade classifier based on MB-LBP features the recognition accuracy of green litchi is 92.7%, the recall rate is 81.3%, and the average processing time of test images is 1.276s. Therefore, the robustness and real-time performance of the algorithm is good, and it also provides a feasible method for green fruit detection.

Green Litchi; MB-LBP Feature; AdaBoost Algorithm; Strong Classifier; Cascade Classifier

程佳兵,女,1994年生,硕士研究生,主要研究方向:机器视觉。

邹湘军(通信作者),女,1957年生,教授,博士生导师,主要研究方向:农业机器人、智能设计与制造、仿真等。 E-mail: xjzou1@163.com

国家自然科学基金(31571568);广东省省级科技计划项目(2017A030222005)。

猜你喜欢

级联荔枝分类器
岭南荔枝红
铀浓缩厂级联系统核安全分析
基于特征选择的SVM选择性集成学习方法
ЛИЧИ: ЭКЗОТИЧЕСКИЙ ТРОПИЧЕСКИЙ ФРУКТ
千里采荔枝的鹤
富集中间组分同位素的级联
—— “T”级联
基于深度优先随机森林分类器的目标检测
基于差异性测度的遥感自适应分类器选择
荔枝
基于层次化分类器的遥感图像飞机目标检测