CN111144464A - 基于CNN-Kmeans算法水果自动识别方法 - Google Patents

基于CNN-Kmeans算法水果自动识别方法 Download PDF

Info

Publication number
CN111144464A
CN111144464A CN201911300699.2A CN201911300699A CN111144464A CN 111144464 A CN111144464 A CN 111144464A CN 201911300699 A CN201911300699 A CN 201911300699A CN 111144464 A CN111144464 A CN 111144464A
Authority
CN
China
Prior art keywords
cnn
model
fruit
algorithm
layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911300699.2A
Other languages
English (en)
Other versions
CN111144464B (zh
Inventor
江煜
许飞云
杨忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinling Institute of Technology
Original Assignee
Jinling Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jinling Institute of Technology filed Critical Jinling Institute of Technology
Priority to CN201911300699.2A priority Critical patent/CN111144464B/zh
Publication of CN111144464A publication Critical patent/CN111144464A/zh
Application granted granted Critical
Publication of CN111144464B publication Critical patent/CN111144464B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明的目的是提出一种基于CNN‑Kmeans算法水果自动识别方法,本发明拟通过构建CNN‑Lenet5模型,即网络结构为输入层、卷积层、池化层、卷积层、池化层、全连接层、全连接层、输出层构成。首先对图像逐渐提取特征,最后提取得到高级水果图像特征。完成特征提取后将网络结构的最后一层softmax分类层去掉,用K‑means算法模型来替代。通过CNN自动的特征提取结合K‑means无监督学习两种算法模型来实现水果图像的自动分类识别。

Description

基于CNN-Kmeans算法水果自动识别方法
技术领域
本发明涉及水果自动识别分类领域,特别设计基于CNN-Kmeans算法水果自动识别方法。
背景技术
近年来随着信息技术的不断进步,智慧农业技术大力发展,现代农业领域中水果图像识别已成为当前众多重要农业科技发展方向中的关键技术。水果图像的识别在智慧农业领域具有重要的地位,例如,水果图像识别将实现该水果的自动化采摘等相关操作过程;可利用水果图像识别技术进行病患饮食营养成分分析;在智慧农业方面,通过水果识别可以实现对复合型果园的果树进行精准培育,这样不仅仅可以节省大量的人力物力,而且精准的采摘对提高水果的分类质量也有很大的帮助。
但是传统水果图像识别方法已经无法满足现代化产业发展需求,传统的图像检测方法为通过寻找图像特征特点来建立识别特征数据库,这些特征属于浅层特征,常见的浅层特征可以分为人工特征和图像本身的属性特征。其中,常用的人工特征包括Harris角点征、加速鲁棒特征和尺度不变特征变换特征等。而常见的图像属性特征包括图像的纹理、颜色和形状等。通过传统的浅层特征来实现水果的分类识别。这样的技术过程效率低下、精度不高、棒性不好,所以还需对水果图像识别进行深入研究,从而提高其图像识别的精度及效率。由于浅层特征的表达能力有限,很难全面完备地反映图像中复杂的深层语义信息,因此在实际操作中需要对多种类型的浅层特征进行进一步的特征提取。另外,浅层特征的提取过程需要人工参与,图像分类的精度会受到人为因素的干扰。因此,基于浅层特征的水果图像分类识别模型在实际生产应用中受到限制。
CNN是一种典型的前馈神经网络,在结构上主要由输入层、卷积层、池化层、非线性激活层和全连接层等模块组成,在学习阶段通过反向传播算法进行参数优化。CNN具有主动特征学习的特点,同时具有很强的表达能力和泛化能力,通过利用CNN能够提取到高级的图像特征。CNN通过多层的卷积网络,从原始图像中逐渐地提取每一级别的图像特征,由一开始纹理、颜色、形状等浅层特征然后逐渐提取到浅层特征中的高级特征。提取完特征后利用CNN最后一层卷积层提取到的高级特征,结合K-means聚类算法就可以实现自动的识别分类。由于CNN的实现是监督学习,该专利把CNN网络最后的softmax层去掉,仅利用CNN来提取特征,然后使用同为无监督学习的K-means算法来实现分类。这样整个检测过程则实现了全过程无监督学习,可以实现自动化的水果识别任务。
发明内容
为了解决上述存在问题。本发明提供基于CNN-Kmeans算法水果自动识别方法,利用CNN很强的表达能力和泛化能力,通过CNN提取到水果图像的高级图像特征,结合K-means无监督聚类算法,实现全过程自动化地识别水果类别任务。为达此目的:
本发明提供基于CNN-Kmeans算法水果自动识别方法,具体步骤如下,
步骤1:将采集到的水果图像分类建立数据集,并建立水果图像类别,即为每一副水果图像人工标注类别,为后续训练CNN网络模型做准备;
步骤2:将建立好的数据集中的原始数据划分为训练样本图像和测试样本图像,训练样本图像用于训练CNN模型,测试样本图像用于测试算法模型的有效性,其中测试样本图像又分为两个部分,其中一部分用于调整训练CNN模型,另外一部分用于测试整个CNN-Kmeans算法模型;
步骤3:构建CNN-Lenet5模型,输入层结构为256*256*3,两层卷积层的结构为256*256*24和256*256*64,池化层选择最大池化方式,两层全连接层为1*1*64到120和120到10;
步骤4:将构建好的CNN-Lenet5模型结构完成CNN模型的预训练。特征提取阶段通过图像标签的监督学习,利用第一部分的测试样本图像来使得softmax层来计算损失误差,然后不断减小误差从而不断地调整CNN卷积层模板参数,训练到最佳的特征提取的卷积模板;
步骤5:构建K-means算法模型,根据所构建的CNN输出为10,则K-means算法的输入为10维度,输出为待识别的水果类别;
步骤6:将训练好的CNN模型中的最后一个损失函数softmax层去掉,然后从第二部分测试集中逐个选取图片输入到该CNN模型中,并输出全连接层120*10中的10个高级学习特征作K-means算法输入,在K-means输出端得到具体分类结果;
步骤7:通过不断的调节CNN模型参数和K-means算法模型参数来优化整个CNN-Kmeans算法模型的识别精度、有效性和鲁棒性。
作为本发明进一步改进,所述步骤四中softmax的计算公式入下:
Figure BDA0002321670720000021
其中n个数值表示的分类Sk,k∈(0,n],i表示k中的某个分类,gi表示该分类的值,P(Sk)为该分类的概率。
作为本发明进一步改进,所述步骤五中K-means核心算法公式如下:
Figure BDA0002321670720000031
其中SSE参数计算的内容为当前迭代得到的中心位置到各自中心点簇的欧式距离总和,这个值越小表示当前的分类效果越好,p表示点位置(x,y)。mi为中心点的位置。
本发明提供基于CNN-Kmeans算法水果自动识别方法,具体设计如下:
1、本发明利用CNN主动特征学习,具有很强的特征表达能力和泛化能力的特点,通过利用CNN提取水果图像的高级特征来实现水果识别。CNN提取的特征鲁棒性更强,泛化能力能强,能够更好的表征不同类别的图像。
2、本发明采用K-means算法来替代CNN中的softmax层以实现数学分类算法模型的全程自动化,以无监督的聚类来取消图像识别时的人工标签操作。
3、CNN提取图像特征时不需要预先对图像做繁琐的预处理工作,CNN提取的特征可以自动地克服一定的噪声干扰。
4、本发明CNN-Kmeans算法模型大大提高了水果分类识别的准确率,提高了识别过程中的鲁棒性,在工程上具有应用的意义。
5、本发明所提出的CNN-Kmeans算法模型可以实现水果的自动识别,为后续的水果自动化采摘等智慧农业科技奠定坚实的核心技术。
附图说明
图1是本发明整体算法原理流程图;
图2是本发明中采用的CNN模型结构;
图3是K-means算法流程原理图。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述:
本发明提供基于CNN-Kmeans算法水果自动识别方法,利用CNN很强的表达能力和泛化能力,通过CNN提取到水果图像的高级图像特征,结合K-means无监督聚类算法,实现全过程自动化地识别水果类别任务。
本发明的整体算法原理流程如图1所示。
将采集到的水果图像分类建立数据集,并建立水果图像类别,即为每一副水果图像人工标注类别。为后续训练CNN网络模型做准备。然后将建立好的数据集中的原始数据划分为训练样本图像和测试样本图像,训练样本图像用于训练CNN模型,测试样本图像用于测试算法模型的有效性。其中测试样本图像又分为两个部分,其中一部分用于调整训练CNN模型。因为CNN整个算法流程需要有损失函数层的参与,在损失函数下降的作用下才能使得卷积模板参数卷积得到的特征最佳,所以一开始的CNN预训练中需要有一部分的测试样本对其进行参数调优。另外一部分测试样本用于测试整个CNN-Kmeans算法模型,在构建好整个算法模型后需要对整个算法模型的识别性能进行评估,所以取另一部分测试数据对其进行整体的测试。
完成数据集的准备后就开始创建CNN网络,网络采用构建CNN-Lenet5模型,输入层结构为256*256*3,两层卷积层的结构为256*256*24和256*256*64,池化层选择最大池化方式,两层全连接层为1*1*64到120和120到10。CNN-Lenet5的网络模型结构如图2所示。
将构建好的CNN-Lenet5模型结构完成CNN模型的预训练。特征提取阶段通过图像标签的监督学习,利用第一部分的测试样本图像来使得softmax层来计算损失误差,然后不断减小误差从而不断地调整CNN卷积层模板参数,训练到最佳的特征提取的卷积模板。因为在softmax层不断减小误差就会使得卷积层提取得到的特征更加能够被网络所识别,误差越小代表所提取的特征有效性和鲁棒性越强,则后续的识别则效果越佳,其中softmax的计算公式入下:
Figure BDA0002321670720000041
其中n个数值表示的分类Sk,k∈(0,n],i表示k中的某个分类,gi表示该分类的值,P(Sk)为该分类的概率。
构建K-means算法模型,根据所构建的CNN输出为10,则K-means算法的输入为10维度,输出为待识别的水果种类,K-means算法流程图如图3。其中设置K-means参数为距离测度参数:sqEuclidean,初始质心位置参数:sample,聚类重复次数:5,其中K-means核心算法公式如下:
Figure BDA0002321670720000042
其中SSE参数计算的内容为当前迭代得到的中心位置到各自中心点簇的欧式距离总和,这个值越小表示当前的分类效果越好,p表示点位置(x,y)。mi为中心点的位置。
将训练好的CNN模型中的最后一个损失函数softmax层去掉,并且将最后一层用K-means模型来替代,然后从第二部分测试集中逐个选取图片输入到该CNN模型中,并输出全连接层120*10中的10个高级学习特征作K-means算法输入,在K-means输出端得到具体分类结果。因为CNN网络参数在前序的工作中即完成了调优操作,所以不需要在进行大幅度的修正,但需要通过不断的调节K-means算法模型参数来优化整个CNN-Kmeans算法模型的识别精度、有效性和鲁棒性,若效果尚未达到最佳可以辅助调整CNN参数。这样通过集合CNN和K-means算法就完成了全过程的自动化水果类别识别任务。最后优化得到的基于CNN-Kmeans算法模型在水果自动识别中的准确率达到95.7%。
以上所述,仅是本发明的较佳实施例而已,并非是对本发明作任何其他形式的限制,而依据本发明的技术实质所作的任何修改或等同变化,仍属于本发明所要求保护的范围。

Claims (3)

1.基于CNN-Kmeans算法水果自动识别方法,具体步骤如下,其特征在于,
步骤1:将采集到的水果图像分类建立数据集,并建立水果图像类别,即为每一副水果图像人工标注类别,为后续训练CNN网络模型做准备;
步骤2:将建立好的数据集中的原始数据划分为训练样本图像和测试样本图像,训练样本图像用于训练CNN模型,测试样本图像用于测试算法模型的有效性,其中测试样本图像又分为两个部分,其中一部分用于调整训练CNN模型,另外一部分用于测试整个CNN-Kmeans算法模型;
步骤3:构建CNN-Lenet5模型,输入层结构为256*256*3,两层卷积层的结构为256*256*24和256*256*64,池化层选择最大池化方式,两层全连接层为1*1*64到120和120到10;
步骤4:将构建好的CNN-Lenet5模型结构完成CNN模型的预训练。特征提取阶段通过图像标签的监督学习,利用第一部分的测试样本图像来使得softmax层来计算损失误差,然后不断减小误差从而不断地调整CNN卷积层模板参数,训练到最佳的特征提取的卷积模板;
步骤5:构建K-means算法模型,根据所构建的CNN输出为10,则K-means算法的输入为10维度,输出为待识别的水果类别;
步骤6:将训练好的CNN模型中的最后一个损失函数softmax层去掉,然后从第二部分测试集中逐个选取图片输入到该CNN模型中,并输出全连接层120*10中的10个高级学习特征作K-means算法输入,在K-means输出端得到具体分类结果;
步骤7:通过不断的调节CNN模型参数和K-means算法模型参数来优化整个CNN-Kmeans算法模型的识别精度、有效性和鲁棒性。
2.根据权利要求1所述的基于CNN-Kmeans算法水果自动识别方法,其特征在于:所述步骤四中softmax的计算公式入下:
Figure FDA0002321670710000011
其中n个数值表示的分类Sk,k∈(0,n],i表示k中的某个分类,gi表示该分类的值,P(Sk)为该分类的概率。
3.根据权利要求1所述的基于CNN-Kmeans算法水果自动识别方法,其特征在于:所述步骤五中K-means核心算法公式如下:
Figure FDA0002321670710000012
其中SSE参数计算的内容为当前迭代得到的中心位置到各自中心点簇的欧式距离总和,这个值越小表示当前的分类效果越好,p表示点位置(x,y)。mi为中心点的位置。
CN201911300699.2A 2019-12-17 2019-12-17 基于CNN-Kmeans算法水果自动识别方法 Active CN111144464B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911300699.2A CN111144464B (zh) 2019-12-17 2019-12-17 基于CNN-Kmeans算法水果自动识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911300699.2A CN111144464B (zh) 2019-12-17 2019-12-17 基于CNN-Kmeans算法水果自动识别方法

Publications (2)

Publication Number Publication Date
CN111144464A true CN111144464A (zh) 2020-05-12
CN111144464B CN111144464B (zh) 2023-04-07

Family

ID=70518531

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911300699.2A Active CN111144464B (zh) 2019-12-17 2019-12-17 基于CNN-Kmeans算法水果自动识别方法

Country Status (1)

Country Link
CN (1) CN111144464B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114882263A (zh) * 2022-05-18 2022-08-09 南京智慧航空研究院有限公司 一种基于cnn图像模式的对流天气相似性识别方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106709511A (zh) * 2016-12-08 2017-05-24 华中师范大学 基于深度学习的城市轨道交通全景监控视频故障检测方法
US20170316285A1 (en) * 2016-04-28 2017-11-02 International Business Machines Corporation Detection of objects in images using region-based convolutional neural networks
CN107527068A (zh) * 2017-08-07 2017-12-29 南京信息工程大学 基于cnn和域自适应学习的车型识别方法
CN108491864A (zh) * 2018-02-27 2018-09-04 西北工业大学 基于自动确定卷积核大小卷积神经网络的高光谱图像分类
CN109768985A (zh) * 2019-01-30 2019-05-17 电子科技大学 一种基于流量可视化与机器学习算法的入侵检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170316285A1 (en) * 2016-04-28 2017-11-02 International Business Machines Corporation Detection of objects in images using region-based convolutional neural networks
CN106709511A (zh) * 2016-12-08 2017-05-24 华中师范大学 基于深度学习的城市轨道交通全景监控视频故障检测方法
CN107527068A (zh) * 2017-08-07 2017-12-29 南京信息工程大学 基于cnn和域自适应学习的车型识别方法
CN108491864A (zh) * 2018-02-27 2018-09-04 西北工业大学 基于自动确定卷积核大小卷积神经网络的高光谱图像分类
CN109768985A (zh) * 2019-01-30 2019-05-17 电子科技大学 一种基于流量可视化与机器学习算法的入侵检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王改华等: "采用无监督学习算法与卷积的图像分类模型", 《华侨大学学报(自然科学版)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114882263A (zh) * 2022-05-18 2022-08-09 南京智慧航空研究院有限公司 一种基于cnn图像模式的对流天气相似性识别方法
CN114882263B (zh) * 2022-05-18 2024-03-08 南京智慧航空研究院有限公司 一种基于cnn图像模式的对流天气相似性识别方法

Also Published As

Publication number Publication date
CN111144464B (zh) 2023-04-07

Similar Documents

Publication Publication Date Title
CN110543878B (zh) 一种基于神经网络的指针仪表读数识别方法
CN112446388A (zh) 一种基于轻量化二阶段检测模型的多类别蔬菜幼苗识别方法及***
CN108304826A (zh) 基于卷积神经网络的人脸表情识别方法
CN109272500B (zh) 基于自适应卷积神经网络的织物分类方法
CN111127423B (zh) 一种基于cnn-bp神经网络算法水稻病虫害识别方法
CN107451565B (zh) 一种半监督小样本深度学习图像模式分类识别方法
CN110222767B (zh) 基于嵌套神经网络和栅格地图的三维点云分类方法
CN113392748B (zh) 一种基于卷积神经网络的遥感影像耕地信息提取方法
CN111598001A (zh) 一种基于图像处理的苹果树病虫害的识别方法
CN111178177A (zh) 一种基于卷积神经网络的黄瓜病害识别方法
CN112434662B (zh) 一种基于多尺度卷积神经网络的茶叶病斑自动识别算法
CN116071560A (zh) 一种基于卷积神经网络的水果识别方法
CN112016596A (zh) 基于卷积神经网络的农田土壤肥力评价方法
CN114676769A (zh) 一种基于视觉Transformer的小样本昆虫图像识别方法
CN111160428A (zh) 基于cnn-svm算法蔬菜自动识别方法
CN117743975A (zh) 山坡耕地土壤环境改良方法
Arshaghi et al. Detection and Classification of Potato Diseases Potato Using a New Convolution Neural Network Architecture.
CN113505856B (zh) 一种高光谱影像无监督自适应分类方法
CN111144464B (zh) 基于CNN-Kmeans算法水果自动识别方法
Chen et al. Deep convolutional network for citrus leaf diseases recognition
CN117541422A (zh) 一种基于农业环境数据的农业生产管理***
CN111695560A (zh) 基于卷积神经网络对农作物病虫害主动定位聚焦的方法
Rajeswarappa et al. Crop Pests Identification based on Fusion CNN Model: A Deep Learning
CN116206208A (zh) 一种基于人工智能的林业病虫害快速分析***
CN114550164B (zh) 一种基于深度学习的番茄叶片病害识别研究方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant