基于K-SVD和正交匹配追踪稀疏表示的稻飞虱图像分类方法

2019-11-28 08:53林相泽张俊媛朱赛华刘德营
农业工程学报 2019年19期
关键词:稻飞虱字典重构

林相泽,张俊媛,朱赛华,刘德营

(南京农业大学工学院,南京210031)

0 引 言

水稻是世界三大粮食作物之一,也是中国重要的谷类粮食作物,其种植面积占全国粮食种植面积的30%以上,超过65%的中国人将水稻作为主要口粮[1]。因此,稻田害虫防治是农业生产发展的重要部分。稻田害虫少,水稻产量高、品质好;稻田害虫猖獗,稻米产量少、品质差,对国家粮食安全和农业经济的稳定发展造成严重威胁。

水稻在生长的不同阶段都会受到不同程度、不同种类害虫的侵害,危害中国水稻生长的害虫主要有稻飞虱、水稻螟虫、稻苞虫、稻纵卷叶螟等,其中稻飞虱对水稻的影响尤为严重,可使水稻产量最高下降35%[2]。稻飞虱通常以群集方式在稻丛基部刺吸水稻汁液,危害水稻生长,严重的还会造成冒穿、黄塘、毁秆、倒伏甚至无产[3]。因此,准确获取稻飞虱虫情信息并及时制定合理防治措施是控制稻飞虱爆发、降低虫害的有效途径。

为了实现稻飞虱虫情测报的自动化与高效化,稻飞虱图像分类成为近几年的研究热点。Sarin 等[4]提出了一种基于颜色和灰度共生矩阵(gray-level co-occurrence matrix,GLCM)图像特征训练的支持向量机分类算法,可以自动检测收集图像中稻飞虱的位置和对稻飞虱的生长阶段进行分类,分类精度可达87%;林相泽等[5]提出了一种基于迁移学习和Mask-CNN相结合的稻飞虱图像分类算法,分类精度可达92.3%;Tsung 等[6]提出了一种感兴趣区域(region of interest, ROI)方法来检测稻飞虱并利用决策树算法对分析数据进行分类识别,分类精度可达80%;Yue 等[7]探讨了一种基于颜色特征和边缘特征的多特征融合均值偏移方法,分类精度可达80%;虽然以上研究均取得了一定的成果,但是在识别速度与分类精度方面仍需进一步提高。

由于图像稀疏表示的识别速度快、分类精度高,近年来,图像稀疏表示技术得到了深入研究,目前已被广泛用于图像处理的各个领域[8]。在人工智能行业,稀疏表示已广泛用于人脸识别与人脸修复[9];在医学行业,医学影像去噪、影像增强以及影像序列分析中也离不开稀疏表示[10];在电子产品行业,稀疏表示更是计算机视觉跟踪中最常用方法之一[11]。但是,在农业工程领域中,基于稀疏表示的图像分类还处于起步阶段。

因此,为了加快稻飞虱图像分类速度,提高识别精度,本文提出了一种基于K-SVD 和OMP 稀疏表示的稻飞虱图像分类方法。该方法在图像识别过程中可自行对信号进行降维,剔除多余噪声,提高收敛速度,可对稻飞虱虫害的预防治理提供信息和技术支持。

1 稻飞虱图像获取

1.1 野外昆虫图像采集装置

根据稻飞虱趋光性强的特点,稻飞虱图像通过团队自主研发的野外昆虫图像采集装置[12-13]自动采集,装置结构如图1所示。

图1 野外昆虫图像采集装置Fig.1 Field insect image acquisition device

其中,工作台基座是整个装置的支撑部分,采用轻便牢固的铝合金材料制成;采集工作台由透明亚克力板和白色的确良幕布组成,尽可能保证采集背景干净,减少拍摄干扰。根据稻飞虱的趋光性,试验通过高压汞灯将昆虫吸引至采集工作台,使用高清工业相机进行拍摄;由于拍摄环境光线较暗,拍摄装置前方装有环形光源,用于增强光照并使光线均匀扩散。X、Y、Z 向三向调节装置控制相机的移动方向与拍摄距离,控制单元由台达DVP32EH00T3 型PLC 组成并搭载于X、Z向调节装置顶端,控制调节装置的移动速度;相机以每次移动5 cm、停留5 s 的运动状态在X、Z 向上进行往返运动。

整个试验过程在无人监督的情况下自动获取清晰完整的水稻害虫图像,图像以782 像素×576 像素、JPEG 格式存储于计算机中。

1.2 稻田昆虫图像采集

试验地点:南京农业大学江浦农场(32°01’N ,118°37’E)、白马国家农业科技园(31°37’N ,119°10’E)。

试验时间:2015 年8 月至10 月、2016 年6 月至9 月、2017年8月至9月。

试验环境:温度20~30 ℃、相对湿度6%~8%。

试验共采集到1 186 幅昆虫图像,通过在不同时间、地点下对稻飞虱图像进行采集,有效保证了试验数据的完整性与多样性。采集到的图像背景复杂、目标模糊,需要进一步对其进行分割,增强图像的可检测性。

1.3 OTSU阈值分割

本试验采用OTSU 阈值分割法(又叫大津法)[14]对图像进行分割,当阈值为148 时,图像背景与目标的分割效果最佳,经OTSU处理后的图像如图2所示。

从图2 可知,经过OTSU 分割处理后,背景与目标可明确进行区分,根据像素大小的不同,将目标进行提取,最终获得300 像素×300 像素大小的单一稻田昆虫图像,部分结果如图3所示。

图2 OTSU分割处理结果Fig.2 OTSU split processing result

图3 部分数据样本Fig.3 Partial data sample

试验中,将白背飞虱、褐飞虱、灰飞虱归为稻飞虱类,其他水稻害虫均归为非稻飞虱类。选取1 100幅单一稻田昆虫图像作为试验数据。

2 算法设计

稀疏表示是在给定的过完备字典中用尽可能少的原子来对图像信号进行线性表示[15]。其实质是在稀疏度不变的情况下,对过完备字典上的信号进行稀疏逼近,有效提取图像信号内部结构和本质特征,以便于对信号进行进一步压缩、编码等处理[16]。其稀疏表达式如下:

图像的稀疏表示主要分为稀疏编码和更新字典两部分。本文采用OMP 算法[17]对输入信号进行稀疏分解并计算重构误差,采用K-SVD(K-means singular value decompo-sition)算法[18]对字典进行构造更新。

2.1 OMP稀疏分解算法

试验采用OMP 算法来实现图像信号稀疏分解。OMP 算法是一种典型的贪婪算法,其基本思想是将正交化的输入信号作为局部最优解,从过完备字典中选择与其最匹配的信号进行稀疏逼近并求解残差,通过反复迭代计算来获得全局最优解,当达到预设迭代次数N 时停止迭代[19]。具体的算法过程如下:

输入:过完备字典D,原始信号Y,稀疏度T0;

初始化:残差r(0)= y,索引集∧(0)= ∅,J = 1;

循环执行步骤1)~5):

1)找出残差r(J-1)与字典D 中某列dj内积最大所对应的下标;

5)如果J >N,迭代结束;否则重复1。

在课程中,教者提出辩题:“今天,武松的精神值得我们学习吗?”正反两方各持己见。正方认为武松无所畏惧的精神值得肯定,与其坐以待毙,不如放手一搏!反方觉得武松逞一时之勇不值效仿,醉得一塌糊涂却险胜老虎,只能说明他运气好。正方又指出:武松不顾一己之身为民除害,值得称赞;反方滔滔不绝地列出武松不听劝告,执意上冈的“罪状”。双方唇枪舌剑,针尖对麦芒,学生情绪高涨,现场气氛热烈……

2.2 K-SVD字典学习算法

对于复杂的高维图像信号来说,构造合适的过完备字典是图像进行稀疏表示的关键步骤[20]。K-SVD 算法是在K-means[2]算法的基础上发展起来的一种聚类字典构建算法。K-SVD 算法以误差最小原则作为基本思想、聚类最大值作为分类中心,使用K 个原子的线性组合来表示图像信号,通过计算其与原始信号的误差ε,选择ε最小项进行SVD 后分解作为字典的新原子,从而达到更新字典的目的[22-23]。其目标方程为

其中T0表示非零稀疏系数上限。

算法具体流程如图4所示。

图4 试验流程图Fig.4 Experimental flow chart

试验选取500 幅稻飞虱图像作为过完备字典数据、200 幅稻飞虱图像作为原始输入图像,再取稻飞虱图像(rice planthopper,RPH) 和 非 稻 飞 虱 图 像(non-rice planthopper,nRPH)各200幅,并按照3:1的比例分成测试集和验证集2 部分。经试验测试,迭代次数为500 时,分类精度趋于稳定,稻飞虱的重构误差均低于0.1,而非稻飞虱的重构误差均在0.1以上,所以试验设定重构误差值设为0.1。

字典特征选取文献[24]中的20 个优化特征,其中包括颜色特征中向量L 的熵、能量与偏度;形态特征中的球状性、矩形度和Hu不变矩;纹理特征中的能量、逆差矩和熵等,并标记为M1。为了增强试验结果的可信度,选取文献[25]和[26]中的20 个特征进行对比验证,其中包括7组Hu 不变矩和13 组傅里叶描述子,并标记为M2。稻飞虱与非稻飞虱的部分特征参数如表1所示。其中M1类特征分别为熵、能量、偏度、球状性、矩形度与逆差矩;M2类特征分别为3个傅里叶描述子与3个Hu不变矩。

表1 水稻昆虫特征参数Table 1 Feature parameters of rice insect

3 试验结果与分析

3.1 过完备字典的获取

获得良好的过完备字典,是图像进行有效分类的关键。因此,为了保证试验的准确性,初始过完备字典数据从样本集中随机选取,部分初始字典如图5所示。

图5 部分初始字典样本集Fig.5 Partial initial dictionary sample set

由于初始过完备字典中存在大量背景信息,通过对初始字典进行迭代更新,可有效剔除无关信息,尽量保留用于重构的显著特征。进行初次迭代时,使用OMP算法对初始字典进行稀疏编码,计算输入信号的初始稀疏系数x0。在满足稀疏度的约束下,使用K-SVD 算法对字典进行逐列更新并重构误差ε,直至更新完字典的全部原子。当迭代次数满足设定值时,停止迭代。重构后的部分字典如图6所示。

图6 部分重构字典样本集Fig.6 Partially reconstructed dictionary sample set

如图6 所示,将初始过完备字典中的图像按列分割,并提取相应的显著特征。更新时,不带有显著特征的图像块将会被带有显著特征的图像块取代,从而到达字典更新的目的。所以,重构后的字典样本均是带有显著特征的图像块。在M1和M2类特征下分别生成过完备字典D1、D2。

3.2 最优稀疏度的获取

选取合适的稀疏度是提高分类速度的关键。任意选取M1和M2特征各3 组测试重构误差随着稀疏度的变化趋势,结果如图7所示。

图7 重构误差变化趋势Fig.7 Reconstruction error trend

从图7中可以看出,随着稀疏度T0的增加,重构误差不断减小。在T0= 1,...,6 时,ε 随着T0的增加而快速降低,变化幅度在0.4~0.6 之间;在T0= 6,...,11 时,ε 的变化幅度在0.2~0.3之间,趋势较为平缓;但在T0=12时,ε的数值陡然下降且均小于0.1;在T0= 12,...,18 时,变化趋势几乎趋于平稳,并且在T0=18 时,ε 达到最小并且不再随着稀疏度的变化而改变。可见,在T0=6、12、18 时,ε 会发生明显变化。因此,本文选取T0=6、12、18 时对全部试验数据进行测试。

首先,每次选取1组稻飞虱的M1和M2类特征信号作为原始参考值,然后使用多组稻飞虱特征信号依次进行测试,分别在过完备字典D1、D2下进行稀疏重构,最后,分别在T0=6、12、18 时计算重构误差。部分计算结果如表2所示。

根据表2 可知,T0=6 时,M1和M2的重构误差ε 的变化 范 围 在0.02~0.09 之 间;T0=12 时,ε 的 变 化 范 围 在0.003~0.02 之间;T0=18 时,ε 的变化范围在0.002~0.02 之间。随着稀疏度T0数值的升高,重构误差ε逐渐减小,但是ε均低于0.1。重构误差变化趋势如图8所示。

表2 不同稀疏度M1和M2类特征的重构误差Table 2 Reconstruction errors of feature M1and M2 under different sparsity T0

图8 M1和M2特征的重构误差变化趋势Fig.8 Reconstruction error variation trend of feature M1and M2

从图8 中可以看出,T0=6 时的重构误差最大,与T0=12、18 时重构误差平均相差0.037 1;在T0=12 与T0=18时,重构误差相差很小,几乎难以区分。图像越稀疏,分类速度越快,但是重构误差也最大。即当T0=6 稀疏度最高,分类速度最快,重构误差最大;T0=18时,稀疏度最低,分类速度最慢,但是重构误差最小,但是相对于T0=12 时的重构误差变化甚微。所以,综合稀疏程度与重构误差两方面考虑,当T0=12 时,重构速度与分类效果最好。因此,选取T0=12 作为最优稀疏度并在此稀疏度下测试稻飞虱与非稻飞虱的重构误差。

3.3 稻飞虱分类试验

3.3.1 数据分类结果

经大量试验验证,稻飞虱的重构误差ε 均在0.1 之下,因此,将ε 的阈值设定为0.1,当ε 小于0.1 时判断为稻飞虱,否则为非稻飞虱。

当T0=12 时,分别选取M1和M2类特征信号,在字典D1、D2上对稻飞虱与非稻飞虱进行稀疏重构并计算重构误差,部分试验结果如表3所示。

表3 稻飞虱与非稻飞虱图像的重构误差(T0=12)Table 3 Reconstruction error of rice planthopper and non-rice planthopper image(T0=12)

由表3 可知,当T0=12,在2 种不同的分类特征下,稻飞虱的重构误差ε约在0.01左右,而非稻飞虱的重构误差ε均在0.2以上,根据重构误差对图像进行明确分类,分类精度分别达到93.3%和94.1%,平均分类精度可达93.7%。

3.3.2 图像分类结果与分析可视化

为了明显区分图片目标与背景,图像使用imagesc函数将像素矩阵中的元素数值按大小转化为不同颜色,并显示在坐标轴的不同位置。在图像彩色通道下,输入一幅300 像素×300 像素大小的稻飞虱图像作为参考,分别提取稻飞虱和非稻飞虱的M1和M2组特征在更新后的过完备字典D1和D2上进行重构,结果如图9所示。

图9 M1和M2特征的重构结果Fig.9 Reconstruction result of feature M1and M2

从图9 中可以看出,稻飞虱重构图像与原始图像基本一致,吻合度极高,可获得良好重构;非稻飞虱重构图像模糊,难以辨认,对原图像还原程度低,不可稻飞虱图像进行稀疏重构。

试验结果表明,在2 组不同的分类特征下,稻飞虱与非稻飞虱的重构误差值差别大,重构图像吻合度区别明显。因此,本文所提出的方法对采集到稻田昆虫图像可进行有效分类。

3.4 对比验证试验

为了证明本文方法的优越性,将本文方法与SVM、BP 神经网络方法进行比较。选取M1、M2特征的稻飞虱与非稻飞虱图像各500幅作为训练样本,不重复的400幅稻飞虱图像和100 幅非稻飞虱图像按照3:1 的比例分成验证样本与测试样本进行分类实验,其中,SVM 设置惩罚系数为100,核参数为0.07,BP神经网络的输入层神经节点个数为20,输出节点个数为2,初始权值与偏差均设为0,Sigmoid 参数设为0.5;迭代次数均为500。试验结果如表4所示。

表4 对比试验结果Table 4 Comparative test results

根据表4 可知,SVM 的分类精度为65.5%,BP 神经网络的分类精度为78%。传统的图像分类方法分类精度均在80%以下,而本文所提方法的分类精度可达到93.7%。比传统分类方法的分类精度分别提高15.7 和28.2个百分点。稀疏表示在图像初步处理时进行阈值分割,并结合稀疏表示的算法复杂程度低、数据处理量少的特点,使处理速度远大于传统的分类方法。与BP神经网络1.0 帧/s(即每1 s 处理1 帧图像)和SVM 0.5 帧/s(即每2 s处理1帧图像)的检测速率相比,稀疏表示检测速率可达到6帧/s,分类速度分别提高5和5.5帧/s。。

4 结论

1)结合稻飞虱趋光性强的生物特点,通过使用团队自主研发的野外昆虫图像采集装置在无人监督的情况下对稻飞虱图像进行采集,为试验提供完整的图像数据集。

2)试验采用OMP 算法对原始图像进行稀疏表示,结合K-SVD 算法对字典进行构造更新并计算重构误差。在稀疏度不同、分类特征不同的情况下,对稻飞虱和非稻飞虱分别进行重构与分类。

3)试验结果表明,在稀疏度为12时,图像分类效果最好。与传统的图像分类算法SVM、BP神经网络进行对比,本文提出的方法分类速度到达6.0帧/s,且平均识别精度达到93.7%,可以为稻飞虱的虫情控制提供信息和技术支持。

猜你喜欢
稻飞虱字典重构
视频压缩感知采样率自适应的帧间片匹配重构
长城叙事的重构
分析稻飞虱发生特点及防治技术分析
高盐肥胖心肌重构防治有新策略
几种药剂防治稻飞虱效果分析
江城县水稻稻飞虱主要发生原因及防治对策
字典的由来
水稻稻飞虱的发生与防治
大头熊的字典
北京的重构与再造