基于迁移学习的树种识别

2019-10-09 02:58高旋赵亚凤熊强陈喆
森林工程 2019年5期
关键词:迁移学习卷积神经网络深度学习

高旋 赵亚凤 熊强 陈喆

摘 要:使用树干和树叶图像实现树种自动识别,目前深度学习可以有效的解决该类问题,但它需要大量样本做训练才能达到较高的识别精度。当面对有限图像数量时,提出基于迁移学习的方法,把经过预训练的卷积神经网络模型进行迁移,即共享卷积层和池化层的权重参数,对新的网络模型超参数进行调整,并建立一个包含10种共计2 000张树干图像和8种共计1 725张树叶图像的数据库,把图片分为训练集和测试集,分别利用迁移学习、普通深度学习和SVM分类方法进行训练和测试,并将这3种方法作对比。最后,通过构建树干和树叶图像的混淆矩阵对迁移学习进行具体分析与说明。实验结果表明,通过迁移学习得到的树干和树叶最高识别精度分别达到92.51%和98.20%,比普通深度学习提高了51.38%和51.69%,比SVM分类方法提高了43.94%和45.08%。迁移学习比普通深度学习和传统SVM分类方法更适合用于小样本数据集的分类识别,并且显著优于普通深度学习和SVM分类方法。

关键词:深度学习;迁移学习;卷积神经网络;混淆矩阵

中图分类号:S781.1    文献标识码:A   文章编号:1006-8023(2019)05-0068-08

Abstract:Objective Tree trunk and leaf images are used to realize automatic identification of tree species. At present, deep learning can effectively solve this kind of problem, but it needs a large number of samples for training to achieve high recognition accuracy. Methods When the number of images is limited, a method based on transfer learning is proposed to migrate the pre-trained convolution neural network model, that is, the weight parameters of convolution and pooling layer. The parameters of the new network are adjusted and a database containing 10 kinds of 2000 tree trunk images and 8 kinds of 1 725 leaf images are established. The images are divided into training sets and test sets, which are trained and tested by transfer learning, general deep learning and SVM classification methods respectively, and the three methods are compared. Results The experimental results show that the maximum recognition accuracy of tree trunks and leaves obtained through transfer learning is 92.51% and 98.20%, respectively, which is higher than general deep learning by 51.38% and 51.69%, and higher than SVM classification by 43.94% and 45.08%. Conclusion Transfer learning is more suitable for classification and recognition of small sample data sets than general deep learning and traditional SVM classification methods, and is significantly better than general deep learning and SVM classification methods.

Keywords:Deep learning; transfer learning; convolutional neural network; confusion matrix

0 引言

木材是人類赖以生存和发展的宝贵资源,保护并合理利用木材资源已成为全人类共同关心的课题[1]。对每个人来说,肉眼识别树种是很难的,所以自动识别成为了最主要的识别途径。树叶和树干作为树木的独特特征,越来越成为自动识别树木种类的重要途经。最早的树种识别方法主要依靠具有木材解剖学知识以及丰富实践经验的专业人员来鉴别,但是这种方法耗时、耗力,并不能保证准确性[1]。随着计算机时代的到来,我国大约从上世纪八十年代利用计算机建立了植物数据库[2],国外起步相对较早,最新的树种数据库,如E Beech等人公布了一个关于树种的数据库[3],但并不能随时进行更新。近几年,随着机器学习的发展,实现了对某些树种的自动识别,如梁龙等人选择基于支持向量机的近红外特征变量选择算法用于树种识别[4]。虽然这种方法也取得了较好的识别结果,但它的缺陷是人工选取特征,具有局限性。后来随着深度学习和神经网络的兴起,越来越多的人选择这种方法实现对树种的快速识别,其中利用卷积神经网络的效果最为显著。例如,赵鹏超等将树叶图像放在卷积神经网络上进行分类训练,最终识别率可以达到95%,这是在大量树叶图像下的研究[5];SP Mohanty等人训练了一个深度卷积神经网络,对该网络进行了迁移学习,将植物叶片病害进行分类识别,最终的识别精度可以达到99.35%,该研究是从网上收集了54 306张图片,无法排除现实环境对拍摄树叶照片时造成的影响[6]。还有研究者在大数据集的条件下训练关于树干的网络模型,例如M Carpentier等人自己建立了一个包含23 000张树干图片的数据库,在ResNet18和ResNet34上进行训练,识别精度达到93.88%[7]。孙俊等人针对训练时间长、模型参数庞大的问题,提出将传统的卷积神经网络模型改进,对从网上收集的21 917张叶片病害进行识别,平均测试识别准确率达到99.56%[8]。但在现实条件下,人工不可能采集大量图片,耗时又耗力。

为了更好的考虑自然环境带来的影响,实地拍摄图片。但是人工采集的图片数量有限,针对这一问题,作者提出运用迁移学习这一方法,可以有效利用小样本数据集进行识别训练。分别在校内和林场内采集了树叶、树干图片,分成两种数据库。利用深度学习在卷积神经网络上对这两种数据库进行训练,然后利用迁移学习对这两种数据库再次进行训练并与深度学习和SVM分类方法作对比。最后,对树叶和树干数据库分别构建混淆矩阵,分析迁移学习的有效性。

1 网络模型

1.1 深度学习与迁移学习

深度学习通过建立、模拟人脑的信息处理神经结构来实现对外部输入的数据进行从低级到高级的特征提取,从而能够使机器理解学习数据,获得信息。卷积神经网络作为经典的深度学习网络,同时也是发展最为深入的网络,所以更适合解决图像领域问题。通过对其结构的不断改进和研究,形成了一系列网络模型。虽然深度学习在应用中取得了很多成绩,但仍存在很多局限:理论研究缺乏、无监督学习能力弱等[9-10]。在实际生活中,无标签未知的数据是占主体的,有这样的问题出现时,迁移学习的提出可以有效的解决这一问题。

迁移学习是一种学习的思想和模式,是指利用数据、任务或模型之间的相似性,将在旧领域学习过的模型应用于新领域的一种学习过程。机器学习解决的是让机器自主地从数据中获取知识,从而应用于新的问题中。迁移学习是机器学习的一个重要分支,它的核心问题是找到新问题和原问题之间的相似性[11]。

现在迁移学习已被广泛的应用于计算机视觉的研究中,例如同一类图片,不同拍摄角度、不同光照、不同背景,都会造成特征分布发生改变[11]。因此,使用迁移学习构建跨领域的鲁棒分类器是十分重要的[10]。通过认识和学习卷积神经网络的性能,选择了在本实验中比较适用的3个网络架构,即ResNet18、DenseNet121、Vgg16。利用基于模型的迁移方法,是指从源域和目标域中找到他们之间共享的参数信息,以实现迁移的方法。这种迁移方式要求的假设条件是:源域中的数据与目标域中的数据可以共享一些模型的参数[11]。如龙明盛等人改进了深度网络结构,通过在网络中加入概率分布适配层,进一步提高深度迁移学习网络对于大数据的泛化能力[12]。

1.2 卷积神经网络(CNN)

卷积神经网络(Convolution neural networks,CNN)是基于人工神经网络带有卷积层的网络结构。它的基本结构由输入层、卷积层、池化层、全连接层及输出层构成。卷积层和池化层一般会取若干个,采用卷积层和池化层交替设置,即一个卷积层连接一个池化层,池化层后再连接一个卷积层,依此类推。由于卷积层中输出特征面的每个神经元与其输入进行局部连接,并通过对应的连接权值与局部输入进行加权求和再加上偏置值,得到该神经元输入值,该过程等同于卷积过程,卷积神经网络也由此而得名[13]。

1.2.1 卷积神经网络之ResNet18

2 数据集

作者选择在不同拍摄距离和角度,不同光照和天气条件下采集图像,确保数据集尽可能多样化。首先,使用了不同的手机拍摄:魅族4、苹果6s、华为note。然后,选择了两个地点:黑龙江省哈尔滨市东北林业大学校园内和林场,不同的地方会影响树木的生长情况。

数据库中每一张图片都有自己的编号,用来标识不同的种类。小部分数据集被删除,主要是因为相机运动而拍摄的图片模糊。然后手动剪裁剩余的每张图片,尺寸全部改为256×256,这能使得更方便的对图像进行处理,并去除每张图片的背景。实验中还采用了原始图像与灰度图像作对比,以防光照和色彩对实验造成影响。

2.1 树干数据集

为缩短数据收集过程,选择每棵树的不同位置,并距离该树30 cm左右拍摄照片。这个距离的变化,取决于拍摄条件(手机前面是否有障碍物或者树木粗细等)。共采集10种2 000张树干图片,树干种类见表1。表1中a~j代表10种树,第二、三行分别为树木名称以及用于实验的图片数目。原始图像和灰度图像如图4所示。

2.2 树叶数据集

樹叶的收集相对来说比较方便,一片树叶为一张图片。共采集1 725张8种类别树叶图像,见表2。表2中a~h代表8种树叶,第二、三行为树叶种类以及采集图片数目。原始图像和灰度图像如图5所示。

3 实验

3.1 模型训练

使用两种学习环境,一种是开源深度学习框架Pytorch0.4.1进行深度学习实验,选用Python作为编程语言,另一种是MATLAB开发环境。实验硬件为Ubuntu 16.04 LTS 64 位系统,计算机内存为16GB,搭载 Intel CoreTM i7-7800XCPU @ 3.50GHz×12处理器,并采用GeForce GTX 1080Ti显卡加速图像处理。

为了了解采用的方法是否会过度拟合,所以在接下来的训练-测试中,将两类数据集分别调整为80%和20%(80%用于训练,20%用于测试),60%和40%(60%用于训练,40%用于测试),40%和60%(40%用于训练,60%用于测试),20%和80%(20%用于训练,80%用于测试)。在实验中,还要确保树叶和树干的每一个类别都分布在训练和测试中。

三种机器学习方式:一是从头开始对训练集进行训练,即普通深度学习;二是迁移网络模型,即迁移学习,这两种方式的差异性在于权重的初始状态在哪一层;三是传统识别方式SVM分类器,人工选择提取图片的HOG和GLCM特征。分析这三种结构在训练-测试数据集上的性能。实验参数如下:

(1)神经网络模型:ResNet18、Vgg16、DenseNet121

(2)训练机制:普通深度学习、迁移学习、SVM

(3)训练数据集分布:训练:80%,测试:20%;训练:60%,测试:40%;训练:40%,测试:60%;训练:20%,测试:80%。

为了使得测试结果之间进行公平的比较,在实验中标准化超参数,如下:

(1)算法:随机梯度下降。

(2)学习率:0.01。

(3)学习衰减:0.001。

(4)动量:0.5。

(5)权重衰减:0.000 5。

(6)批量大小:64。

3.2 研究方法

作者将2 000张的树干图片,分为4种形式的训练和测试集,即总图片数的80%训练20%测试、60%训练40%测试、40%训练60%测试、20%训练80%测试。并在ResNet18、Vgg16、DenseNet121三种网络模型中训练。将1 725张树叶图片,选择和树干相同形式的训练-测试集和相同的网络模型。

由于担心卷积神经网络在提取图片特征时可能会提取与颜色有关的特征,所以使用树干和树叶的灰度图像测试这三种网络模型在没有颜色的情况下识别精度会不会有变化。

最后利用混淆矩阵,具体对迁移学习进行说明与分析。实验中只使用了树干原始图像和树干数据集的80%训练—20%测试,即树干图像总数为2 000张,1 600张为训练图像,400张为测试图像。并且分别表示出迁移学习在ResNet18、Vgg16、DenseNet121上的混淆矩阵。基于迁移学习的树叶图像混淆矩阵表示方法与树干相同,树叶图片共为1 725张,其中1 374张为训练图像,351为预测图像。

3.3 结果与分析

3.3.1 树干图像识别结果与分析

表3表示普通深度学习和迁移学习的三种网络模型以及SVM分类器在4种训练测试模式下的识别精度。当训练集分别为80%、60%、40%、20%时,普通深度学习最高识别精度分别为41.13%、35.52%、32.28%、28.05%,迁移学习最高识别精度92.51%、88.02%、70.52%、69.98%。随着训练图片数量的减少,识别精度也逐渐降低,训练为20%时,SVM最低识别精度为31.76%,普通深度学习最低识别精度为21.73%,而遷移学习最低识别精度为61.90%。

实验证明灰度图像与原始图像相比,识别准确率会下降,但变化并不大,见表3。当训练分别为80%、60%、40%、20%时,普通深度学习最高识别精度分别为35.31%、30.61%、25.83%、24.90%,迁移学习最高识别精度分别为89.32%、84.72%、68.61%、66.10%。当训练集数量最少时,普通深度学习最低识别精度为16.56%,迁移学习最低识别精度为58.29%。

3.3.2 树叶图像识别结果与分析

表4第一行为训练测试集4种形式,第二部分深度学习和迁移学习在三种网络模型下的识别精度,最后为SVM的识别精度。从表4中得到,当训练集数量最少为20%时,SVM分类器最低识别精度为31.67%,普通深度学习最低识别精度为16.53%,迁移学习最低识别精度为69.90%。当训练集分别为80%、60%、40%、20%时,最高识别精度分别为98.20%、96.65%、94.19%、84.25%。并利用了灰色图像证明颜色是否会被当作特征被提取,实验证明识别精度虽下降,但与原始图像相差不大。

在原始图像识别中,运用了传统的分类识别方法SVM和普通深度学习与迁移学习做了对比。实验结果表明无论是图像类型(原始图像和灰度图像)不同,训练—测试形式不同,还是网络模型不同,数据集(树干和树叶)不同,最终得到在小样本数据集上,利用迁移学习得到的识别结果明显高于前两种识别方法。

3.4 混淆矩阵

3.4.1 树干图像的混淆矩阵

利用混淆矩阵对迁移学习这一方法进行分析。在混淆矩阵中,用蓝色代表识别准确度,颜色越深,识别越准确。x轴表示为测试数据集,y轴表示为训练数据集,a~j代表了10种树干类别,具体的介绍在表1。其中80%训练共1 600张图片,20%测试共400张,每种树测试图片均为40张。如图6(a)所示,a~j这10种树干,其中a全部识别正确;bcdeghj识别图片错误数目在10张以内;而f有23张识别正确,有1张识别为j,2张识别为d,2张识别为e,12张识别为h;i有29张识别正确,3张识别为b,1张识别为e,1张识别为h,6张为j。图6(b)中,a和j全部正确;bcdehi错误在10张以内;f和g识别错误的图片数目在10张以上。图6(c)中,a和j全部识别正确;bcdefhi识别错误图片数目10张以内;g有28张识别正确,有4张被识别为b,有4张被识别为c,有1张被识别为h,有3张被识别为i。这就是迁移学习在这三种网络模型上的具体表现,结果较为理想。虽有个别图片识别出现错误,但是大部分图片都被正确识别。出现这种错误的原因是不同树干之间有相似性,例如颜色、纹理、形状比较相像。

3.4.2 树叶图像的混淆矩阵

在混淆矩阵中,a~h代表了8种树叶类别,具体介绍见表2。如图7(a)所示,abdeg被识别正确;c有39张被识别,6张被识别为f,1张被识别为g;f有44张被识别,1张被识别为c、h有40张被识别,有3张分别被识别为a、b、c。如图7(b)所示,a、b、d、e、g全部被识别正确,c、f、h别识别正确数目分别为37、44、38。如图7(c)所示,a、b、d、e全部识别正确,c、f、g、h识别正确数目分别为34、41、41、42。

4 讨论

在本实验中,利用了传统的SVM对树干和树叶进行了分类识别。虽然识别结果略高于实验中使用的深度学习方法,主要是由于本实验所用的样本较少,无法满足深度学习需要的大量样本做支持这一条件。但是传统的分类方法需要人工设定提取图片特征。所以这种方法的性能在很大程度上取决于已经设定好的特征。而设定图像特征本身就是一个复杂而繁琐的过程,一旦相关的数据集发生变化时,都需要重新对其进行特征提取。此外,通过机器学习进行分类的传统方法通常只能识别单一物种,如庞俊震利用图像处理技术和手机移动端结合的方法,得到了月季花的22个特征,虽说取得了一定的成果,但是算法复杂,且对单一物种比较合适[17]。虽然神经网络之前也被应用于图像识别,如袁培森等人利用卷积神经网络对菊花花型和品种进行识别,得到了较高的识别率,但他是把菊花的识别作为一个封闭的系统,假设所有的识别结果都是菊花,该方法对其他花卉的识别会出现错误的输出[18]。

作者选用的迁移学习方法是在了解了现在的深度学习之后提出的,在实验中,选用了卷积神经网络作为训练模型,同样的数据集和网络结构下与普通深度学习和传统方法SVM相比分类效果明显。在图片数量仅有几千张情况下,迁移训练过的ResNet18、Vgg16、DenseNet121三种神经网络模型,最高识别精度树叶达到98.20%,树干达到92.51%。

然而,现阶段仍然存在许多问题。首先,用于训练的图像是在不同条件下拍摄,例如拍摄工具不同、光照强度不同、天气阴晴等,与相同条件下获得图像进行对比时,模型准确率也是大大降低。要想更好的符合实际情况,而且还要保证准确性高,则需要更多样化的数据集做训练。第二个问题是,无论是树干还是树叶,不同种类之间总会存在相似性,而同一种类之间又会存在差异性,出现这一问题时,不仅对最终的识别精度会产生影响,而且还会产生识别错误的结果。经验证,本文中提出的方法对树干和树叶的识别相当适用。最后还要说明一点,在这里介绍的方法并非是取代现有的识别方法,而是为了弥补不足,表明这种方法的测试结果要比视觉识别更可靠。

5 结论

本文成功的将迁移学习引入具有少量样本的树种识别中,并与普通深度学习和传统分类方法SVM作对比,通过测试集得到基于迁移学习的树叶和树干最高识别精度为98.20%、92.51%,比普通深度学习提高了51.69%和51.38%,比SVM分类方法提高了45.08%和43.94%,该方法使得识别精度得到很大提高。但所面临的问题有,一是树叶或树干在同种类间是存在差异性,不同种类间存在相似性,在构建的混淆矩阵中已经表示出来,这会影响识别准确度。二是拍摄的树木包含松科类,当树叶被作为树种特征进行识别时,松树的松针大部分很相似,很难被作为识别特征,而且现在也没有相关的研究成果。对于这两个问题,作者将会在接下来的实验中拟引入信息融合的方法,选取适合的网络模型,解决这类问题。

【参 考 文 献】

[1]贾潇然,刘迎涛.树种识别技术的研究进展[J].林业机械与木工设备,2009,37(9):15-19.

JIA X R, LIU Y T. Research advances in identification system of timber-producing tree species management and the development trend[J]. Forestry Machinery & Woodworking Equipment, 2009, 37(9):15-19.

[2]任洪娥,高潔,马岩.我国木材材种识别技术的新进展[J].木材加工机械,2007,18(4):38-41.

REN H E, GAO J, MA Y. The newly evolvement of wood recognition technology in China[J]. Wood Processing Machinery, 2007, 18(4):38-41.

[3]BEECH E, RIVERS M C, OLDFIELD S, et al. GlobalTreeSearch: the first complete global database of tree species and country distributions[J]. Journal of Sustainable Forestry, 2017, 36(5):454-489.

[4]梁龙,房桂干,吴珽,等.基于支持向量机的近红外特征变量选择算法用于树种快速识别[J].分析测试学报,2016,35(1):101-106.

LIANG L, FANG G G, WU H, et al. Fast identification of wood species by near infrared spectroscopy coupling with support vector machine[J]. Journal of Instrumental Analysis, 2016, 35(1):101-106.

[5]赵鹏超,戚大伟.基于卷积神经网络和树叶纹理的树种识别研究[J].森林工程,2018,34(1):56-59.

ZHAO P C, QI D W. Study on tree species identification based on convolution neural network and leaf texture image[J]. Forest Engineering, 2018, 34(1):56-59.

[6]MOHANTY S P, HUGHES D P, SALATHE M. Using deep learning for image-based plant disease detection[J]. Frontiers in Plant Science, 2016, 7:1419.

[7]CARPENTIER M, GIGUERE P, GAUDREAULT J. Tree species identification from bark images using convolutional neural networks[J]. IEEE/RSJ International Conference on Intelligent Robots and Systems, 2018:1075-1081.

[8]孙俊,谭文军,毛罕平,等.基于改进卷积神经网络的多种植物叶片病害识别[J].农业工程学报,2017,33(19):209-215.

SUN J, TAN W J, MAO H P, et al. Recognition of multiple plant leaf diseases based on improved convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering, 2017, 33(19):209-215.

[9]侯宇青陽,全吉成,王宏伟.深度学习发展综述[J].舰船电子工程,2017,37(4):5-9.

HOU Y Q Y, QUAN J C, WANG H W. Review of deep learning development[J]. Ship Electronic Engineering, 2017, 37(4):5-9.

[10]程玉柱,顾权,王众辉,等.基于深度学习的木材缺陷图像检测方法[J].林业机械与木工设备,2018,46(8):33-36.

CHENG Y Z, GU Q, WANG Z H, et al. Wood defect image segmentation based on deep learning[J]. Forestry Machinery & Woodworking Equipment, 2018, 46(8):33-36.

[11]庄福振,罗平,何清,等.迁移学习研究进展[J].软件学报,2015,26(1):26-39.

ZHUANG F Z, LUO P, HE Q, et al. Survey on transfer learning research[J]. Journal of Software, 2015, 26(1):26-39.

[12]LONG M S, ZHU H, WANG J M, et al. Deep transfer learning with joint adaptation networks[J]. International Conference on Machine Learning, 2016, 26(1):26-39.

[13]周飞燕,金林鹏,董军.卷积神经网络研究综述[J].计算机学报,2017,40(6):1229-1251.

ZHOU F Y, JIN L P, DONG J. Review of convolutional neural network[J]. Chinese Journal of Computers, 2017, 40(6):1229-1251.

[14]HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[J]. Computer Vision and Pattern Recognition, 2016:770-778.

[15]HUANG G, LIU Z, MAATEN L V D, et al. Densely connected convolutional networks[J]. Computer Vision and Pattern Recognition, 2017:2261-2269.

[16]SIMONYAN K, ZISSERMAN A. Very deep convolutional networks for large-scale image recognition[J]. Computer Science, 2014.

[17]庞俊震,淮永建.基于移动端的月季花快速识别方法研究[J].计算机应用与软件,2017,34(8):36-41.

PANG J Z, HUAI Y J. Rapid recognition approach for Chinese rose based on mobile phone[J]. Computer Applications & Software, 2017, 34(8):36-41.

[18]袁培森,黎薇,任守纲,等.基于卷积神经网络的菊花花型和品种识别[J].农业工程学报,2018,34(5):152-158.

YUAN P S, LI W, REN S G, et al. Recognition for flower type and variety of chrysanthemum with convolutional neural network[J]. Transactions of the Chinese Society of Agricultural Engineering, 2018, 34(5):152-158.

猜你喜欢
迁移学习卷积神经网络深度学习
奇异值分解与移移学习在电机故障诊断中的应用
基于深度卷积神经网络的物体识别算法
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
深度学习算法应用于岩石图像处理的可行性研究
基于深度卷积网络的人脸年龄分析算法与实现
基于卷积神经网络的树叶识别的算法的研究
一种基于迁移极速学习机的人体行为识别模型
大数据环境下基于迁移学习的人体检测性能提升方法