基于 CNN 实现鲜花的二分类
王珊珊、曲比尔伍
摘要:
自然条件下采集的花卉图像存在较大的背景干扰,又因其本身的类间相似
与类内多样性为识别带来了较大难度。针对花卉图像识别面临的挑战性,本项目
提出一种基于卷积神经网络实现的花卉识别方法,以卷积神经网络为特征提取
器,经过模型训练就可以得到花卉更深层次的类别信息,能够更为全面的描述
花卉,很好地表达图像不同类别的信息,替代传统的手工提取特征进行图像分类
的方法。
通过已有的大量的花卉图片素材,编写卷积神经网络对花卉图片训练集进
行训练,并且将训练后所得模型存放在指定文件夹。再编写一个简洁的 python
图形的用户交互界面,实现图片的选择,根据训练出来的神经网络将识别结果
输出,并通过绘制的图形进行分析和评估。实验对比后发现花卉图像分类识别
效果较好,测试集准确率达到了 99%以上,具有较高的识别准确率和稳定性。
关键词:卷积神经网络、模型训练、特征提取、图像识别
目录
一、引言 .............................................................................................................................................. 1
(1)研究背景 ......................................................................................................................... 1
(2)发展现状 ......................................................................................................................... 1
(3)问题与思路..................................................................................................................... 1
二、方法和数据集 ........................................................................................................................... 2
(1)CNN 简介 ........................................................................................................................ 2
(2)网络结构 ......................................................................................................................... 2
1、卷积层 .......................................................................................................................... 2
2、池化层 .......................................................................................................................... 3
3、激活函数 ...................................................................................................................... 3
4、全连接层 ...................................................................................................................... 4
(3)数据处理和分析 ........................................................................................................... 5
(4)评价指标 ......................................................................................................................... 5
三、结果及讨论 ............................................................................................................................... 6
(1)耗时分析 ......................................................................................................................... 6
(2)损失值对比分析 ........................................................................................................... 6
(3)准确率对比分析 ........................................................................................................... 7
(4)花卉识别结果与分析 ................................................................................................. 7
四、结论 .............................................................................................................................................. 8
参考文献 .............................................................................................................................................. 9
分工 ..................................................................................................................................................... 10
第 1 页
一、引言
(1)研究背景
花卉分类是植物分类学的重要部分,利用计算机进行花卉自动种类识别具
有重要意义。在我国有着成千上万种花卉,对花卉研究历史悠久,但如何能方
便快捷的识别辨识出这些花卉的种类仍是植物学领域的重要研究课题。多年来
已经形成一定体系化分类系统,但需要植物学家耗费大量的精力人工分析,不仅
要了解花卉的生长环境,还要去研究花卉的整体形态特征。在观察植株形态特
征时尤其是重点观察花卉的花蕊特征、花卉的纹理颜色和形状及其相关信息等。
然后在和现有的样本进行比对,最终确定花卉的所属类别。过程较为复杂且准
确率较低,故需要新的花卉识别方法来提高效率和准确率。
(2)发展现状
随着信息技术的快速发展,通过移动设备获取花卉图像,并能快速准确的
对花卉进行识别与分类的应用研究受到了广泛的关注。自然条件下采集的花卉
图像存在较大的背景干扰,又因其本身的类间相似与类内多样性为识别带来了
较大难度。传统的花卉识别方法依靠经验手工选取特征,并训练分类器进行分
类,存在特征描述不全面、效率较低等问题。近些年由于深度学习的快速发展,
花卉分类的方法也由传统的图像分类技术向深度学习过渡。卷积神经网络
(Convolutional Neural Network,CNN)作为深度学习的一个分支,在图像识别、
物体检测等各种视觉任务中得到广泛应用。
(3)问题与思路
由于花卉所处背景的复杂性,以及花卉自身的类间相似性和类内多样性,利用
传统的手工提取特征进行图像分类的方法,并不能很好地解决花卉图像分类这一
问题。
本项目基于卷积神经网络实现的花卉识别实验与传统图像分类方法不同,卷
积神经网络无需人工提取特征, 经过训练学习就可以得到花卉更深层次的类别信
息,能够更为全面的描述花卉,很好地表达图像不同类别的信息。
第 2 页
二、方法和数据集
基于 tensorflow,利用卷积神经网络实现花卉识别,根据输入图像,自动学
习图像信息的特征,得到更为全面的花卉图像特征描述,表达图像不同类别的信
息。
(1)CNN 简介
卷积神经网络(Convolutional Neural Networks,简称 CNN)是一种具有局
部连接、权值共享等特点的深层前馈神经网络(Feedforward Neural Networks),
是深度学习的代表算法之一,擅长处理图像特别是图像识别等相关机器学习问
题,比如图像分类、目标检测、图像分割等各种视觉任务中都有显著的提升效
果,是目前应用最广泛的模型之一。
(2)网络结构
1、卷积层
是卷积神经网络最重要的一个层次,也是“卷积神经网络”的名字来源。
卷积神经网路中每层卷积层由若干卷积单元组成,每个卷积单元的参数都是通
过反向传播算法优化得到的。
目的是提取输入的不同特征,某些卷积层可能只能提取一些低级的特征如
边缘、线条和角等层级,更多层的网路能从低级特征中迭代提取更复杂的特征。
作用是对输入数据进行卷积操作,也可以理解为滤波过程,一个卷积核就是一
个窗口滤波器,在网络训练过程中,使用自定义大小的卷积核作为一个滑动窗
口对输入数据进行卷积。
图 1 卷积操作示意图