基于机器学习的智能昆虫分目识别算法应用

2018-03-03 13:12穆文秀洪蕾王瀚
数字技术与应用 2018年11期
关键词:图像识别深度学习

穆文秀 洪蕾 王瀚

摘要:以智能昆虫分目识别系统为背景,本文运用卷积神经网络原理提出基于Vgg16的昆虫图像识别方法,提高自然环境下昆虫的智能识别效率。本文利用Vgg16神经网络的预训练模型来进行昆虫图像的特征提取,从而实现昆虫的智能识别,仿真实验证明本优化算法确实对智能昆虫识别有着较高的应用价值。

关键词:图像识别;CNN卷积神经网络;昆虫分目;深度学习;Vgg16

中图分类号:TP391.41 文献标识码:A 文章编号:1007-9416(2018)11-0118-02

0 引言

传统的昆虫识别方法是昆虫专家观察昆虫的外部特征,对照模式标本鉴定识别,费时费力。或者农户凭借自身经验对昆虫进行识别,但是农户所认识的昆虫毕竟有限,且仅凭借肉眼观察对于外形相似的昆虫难以进行明确的判断。传统的昆虫识别的费时费力,准确度不高,严重影响后期对昆虫防治工作的开展。

如今,图像处理和识别技术的发展给昆虫的准确识别带来了可能。及时、快速地发现并识别农作物昆虫,为及时正确采取相应措施防治虫害,减少虫害带来的损失具有重要意义。本文旨在通过分析昆虫图像特征提取和优化方法、智能识别算法基础上,依据昆虫分目识别研究方法的基本流程模块,力争在智能识别体系构建思路、办法和途径上有所创新,大大提高识别精度。

1 CNN卷积神经网络的三个基本层

1.1 卷积层(Convolutional Layer)

卷积层(Convolutional layer),卷积神经网络中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通过反向传播算法最佳化得到的。卷积运算的目的是提取输入的不同特征,第一层卷积层可能只能提取一些低级的特征如边缘、线条和角等层级,更多层的网路能从低级特征中迭代提取更复杂的特征。

由于每个神经元都和相邻层的神经元相连接,传统的三层神经网络需要大量的参数,显然这种方式不是必须的。全连接层的方式对于图像数据来说显得很繁琐,因为图像本身具有“二维空间特征”,即局部特性。譬如看一只昆虫的图片,看到昆虫的某个典型局部特征就可以知道昆虫的种类。但是出现一张新图时,CNN并不能准确地知道已有的特征(features)如何匹配,因此它会在原图中每一个可能的位置尝试匹配。匹配的过程就被称为卷积操作,卷积的第一个参数通常称为输入,第二个参数称为核函数。

在机器学习的应用中,输入通常是多维数组的数据,而核通常是由学习算法优化得到的多维数组的参数。因为在输入与核中的每一个元素都必须明确地分开存储,通常假设在存储了数值地有限点集以外,这些函数地值都为零。这意味着在实际操作中,可以通过对有限个数组元素的求和来实现无限求和。

1.2 池化层(Pooling Layer)

池化层0是对输入的特征图进行压缩,一方面使特征图变小,简化网络计算复杂度;一方面进行特征压缩,利用卷积获得的特征(features)去做分类。池化层的主要目的是对输入做降采样,在不影响图像质量的情况下,压缩图片,减少参数。池化层还能降低输出结果的维度,并能保留显著的特征。

1.3 全连接层(Fully Connected Layer)

全连接层的作用是将经过多个卷积层和池化层的特征图中的特征进行整合,将获取的图像特征用于图像分类。在卷积神经网络中,全连接层将卷积层产生的特征图映射成一个固定长度(一般为输入图像数据集中的图像类别数)的特征向量。这个特征向量包含了输入图像所有特征的组合信息,虽然丢失了图像的位置信息,但是该向量将图像中含有最具有特点的图像特征保留了下来以此完成图像分类任务。从图像分类任务的角度来看,计算机只需要对图像内容进行判定,计算输入图像具体所属类别数值,将最有可能的类别输出即可完成分类任务。

2 昆虫图像识别模型的建立

2.1 建立昆虫图像集

实验前期每个目选出10000张昆虫图像,并对这些图像进行特征提取,建立昆虫数据集。由于同一昆虫的图像相似性很高,并且为了防止出现过拟合现象,同时使图像数据更为丰富,在对图像进行特征提取之前,先做数据提升操作,将图像分别从水平和竖直方向做一定幅度的偏移,以及以图像的某个点为中心实现图像的转动,从而使提取的特征更具代表性。

2.2 特征降维处理

利用神经网络进行的特征提取通常维数较高并且存在大量冗余信息,因此需要对这些特征进行降维处理。假设一个数据集有N个样本,每个样本是M维,则该数据集可表示为AN*M。降维就是说把A变成A'N*K,其中K<M,这样样本可以由更少维度的特征来表示。常用的降维算法有主成分分析算法PCA、有监督的线性降维算法LDA,局部线性嵌入LLE等。几种算法中,PCA是丢失原始信息最少的一种方法并且计算方法也比较简洁,适合图像识别的使用。

实际上PCA是要找到样本空间中的一组新的基(维度更低),将原数据在这组新基上进行投影,使得投影后的方差最大或者说投影使损失最小。利用PCA算法将数据集中样本的维度降为K维,则降维后数据集可表示为AN*K。利用PCA降维的过程主要有以下几个步骤:

(1)数据表示为A={,,…,}对数据A进行中心化得新矩阵B={,,…,}={-,-,...,-},其中=(这里的向量都是列向量);

(2)求B的协方差矩阵:cov(B)=BB/(n-1);

(3)对协方差矩阵cov(B)进行特征值分解;

(4)取特征值矩阵中最大的K个特征值对应的“k-特征向量”矩陣P;

(5)将原数据A乘以P得到降维后的新矩阵。

2.3 相似性检索算法

机器学习中的相似性度量方法有很多,例如闵可夫斯基距离,切比雪夫距离,余弦相似度等。由于提取的图像特征是作为向量来进行处理的,所以本文采用余弦相似度的方法来进行相似度匹配。

3 具體实现过程

在本文在实验过程中,从每个目中选10000张昆虫图像建立数据集,利用Vgg16神经网络的预训练模型进行特征提取并作为昆虫图像的特征向量进行存储,之后通过PCA进行降维处理,通过余弦相似度的算法对昆虫图像进行匹配。实验表明,对昆虫图像的数据集进行特征降维,识别的准确率高达82.34%。

第一步:数据预处理,为提高昆虫图像识别的准确率,在建立数据集的时候就选取清晰的昆虫图像,并对昆虫图像从数量和角度两个方面进行数据提升。以一张大头丽蝇图像为例,对该图像进行数据提升。

第二步:每个目取10000张图像构成最终的数据集。输入Vgg16神经网络的预训练模型。该网络以大小为224×224的图片作为输入,以4096维向量作为昆虫图像的特征向量输出,最后将提取的800×4096的张量作为图像数据集的特征向量保存至相应文件中。

第三步:将保存的原始向量空间,利用PCA,进行空间映射将并保存降维后的特征向量空间。

第四步:利用余弦相似度算法计算相似度。夹角余弦越大表示两个向量的夹角越小,夹角余弦越小表示两向量的夹角越大。

4 结语

本文针对昆虫的智能识别建立在上述原理及实验上,CNN最大的特点就是在于卷积的权值共享,利用空间结构减少学习的参数量,防止过拟合的同时减少计算量。在对CNN深入研究基础上,提出了一种可以直接作用于昆虫识别的方法。传统昆虫识别方法依据经验人为地从昆虫外表中提取特征,再在该特征上查找索引表进行分类识别,存在盲目性、操作复杂和分类精度低等缺陷,基于CNN的昆虫识别方法不存在上述缺点,并且实验结果证明了该方法在昆虫识别时的高效可靠。

参考文献

[1]伊恩·古德费洛,约书亚·本吉奥,亚伦·库维尔.深度学习[M].赵申剑,黎彧君,符天凡李凯译.北京:人民邮电出版社,2017:201-226.

[2]龚丁禧,曹长荣.基于卷积神经网络的植物叶片分类[J].计算机与现代化,2014(04):12-15+19.

[3]于林森,张田文,张开越.图像检索中的相似性判别及索引方法综述[J].小型微型计算机系统,2007,28(2):356-360.

[4]张惠凡,罗泽.基于卷积神经网络的鸟类视频图像检索研究[J].科研信息化技术与应用,2017(5):50-57.

Insect Recognition Based on Machine Learning

MU Wen-xiu, HONG Lei, WANG Han

(School of Software Engineering,Jinling Institute of Technology, Nanjing  Jiangsu  211169)

Abstract:Based on the intelligent insect eye-shadow recognition system, this paper proposes a Vgg16-based insect image recognition method based on the convolutional neural network principle to improve the intelligent recognition efficiency of insects in the natural environment. In this paper, the pre-training model of Vgg16 neural network is used to extract the features of insect images, so as to realize the intelligent recognition of insects. The simulation experiment proves that the optimization algorithm has a high application value for intelligent insect identification.

Key words:image identification;convolutional neural network;insects;  deep learning; Vgg16

猜你喜欢
图像识别深度学习
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
图像识别在物联网上的应用
图像识别在水质检测中的应用
浅谈模式识别在图像识别中的应用
有体验的学习才是有意义的学习
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
基于多组合内容的图像识别机制