CN108335300A - 一种基于cnn的食品高光谱信息分析系统与方法 - Google Patents
一种基于cnn的食品高光谱信息分析系统与方法 Download PDFInfo
- Publication number
- CN108335300A CN108335300A CN201810260864.5A CN201810260864A CN108335300A CN 108335300 A CN108335300 A CN 108335300A CN 201810260864 A CN201810260864 A CN 201810260864A CN 108335300 A CN108335300 A CN 108335300A
- Authority
- CN
- China
- Prior art keywords
- data
- cnn
- food
- model
- models
- 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.)
- Pending
Links
- 235000013305 food Nutrition 0.000 title claims abstract description 51
- 238000004458 analytical method Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 33
- 230000007547 defect Effects 0.000 claims abstract description 26
- 238000012549 training Methods 0.000 claims abstract description 19
- 238000012360 testing method Methods 0.000 claims abstract description 14
- 238000005457 optimization Methods 0.000 claims abstract description 7
- 238000013523 data management Methods 0.000 claims abstract description 6
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims abstract description 6
- 238000003491 array Methods 0.000 claims abstract description 5
- 238000001228 spectrum Methods 0.000 claims description 30
- 241000209140 Triticum Species 0.000 claims description 26
- 235000021307 Triticum Nutrition 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 14
- 238000010276 construction Methods 0.000 claims description 9
- 238000011895 specific detection Methods 0.000 claims description 8
- 238000012937 correction Methods 0.000 claims description 6
- 238000013500 data storage Methods 0.000 claims description 5
- 230000008676 import Effects 0.000 claims description 5
- 230000000877 morphologic effect Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 claims description 4
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 claims description 3
- 241000220324 Pyrus Species 0.000 claims description 3
- 240000008042 Zea mays Species 0.000 claims description 3
- 235000005824 Zea mays ssp. parviglumis Nutrition 0.000 claims description 3
- 235000002017 Zea mays subsp mays Nutrition 0.000 claims description 3
- 235000005822 corn Nutrition 0.000 claims description 3
- 238000013135 deep learning Methods 0.000 claims description 3
- 235000021017 pears Nutrition 0.000 claims description 3
- 238000004451 qualitative analysis Methods 0.000 claims description 3
- 238000000547 structure data Methods 0.000 claims description 3
- 230000035945 sensitivity Effects 0.000 claims description 2
- 230000000007 visual effect Effects 0.000 claims description 2
- 230000001133 acceleration Effects 0.000 claims 1
- 238000013527 convolutional neural network Methods 0.000 abstract description 63
- 238000009659 non-destructive testing Methods 0.000 abstract description 4
- 230000013011 mating Effects 0.000 abstract description 3
- 235000021393 food security Nutrition 0.000 abstract 1
- 235000013339 cereals Nutrition 0.000 description 17
- 210000001161 mammalian embryo Anatomy 0.000 description 7
- 235000013399 edible fruits Nutrition 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000004611 spectroscopical analysis Methods 0.000 description 3
- 240000005809 Prunus persica Species 0.000 description 2
- 235000006040 Prunus persica var persica Nutrition 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 235000000177 Indigofera tinctoria Nutrition 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 240000000581 Triticum monococcum Species 0.000 description 1
- 235000010724 Wisteria floribunda Nutrition 0.000 description 1
- 238000010521 absorption reaction Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 235000021028 berry Nutrition 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 229940097275 indigo Drugs 0.000 description 1
- COHYTHOBJLSHDF-UHFFFAOYSA-N indigo powder Natural products N1C2=CC=CC=C2C(=O)C1=C1C(=O)C2=CC=CC=C2N1 COHYTHOBJLSHDF-UHFFFAOYSA-N 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/17—Systems in which incident light is modified in accordance with the properties of the material investigated
- G01N21/25—Colour; Spectral properties, i.e. comparison of effect of material on the light at two or more different wavelengths or wavelength bands
- G01N21/31—Investigating relative effect of material at wavelengths characteristic of specific elements or molecules, e.g. atomic absorption spectrometry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Biochemistry (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Image Analysis (AREA)
Abstract
本发明公布了一种基于卷积神经网络(Convolutional Neural Networks,CNN)模型的食品高光谱信息分析系统与方法。其中,该系统改进了现有商用高光谱仪配套的数据处理平台,除了增加用于加速CNN运算的GPU阵列以外,还集成了数据管理模块、预处理模块、模型建立模块和模型优化模块。一种基于CNN的食品高光谱信息分析方法,包括以下步骤:高光谱数据数据采集,预处理,构建训练与测试集,调用CNN模型,根据需要检测类型获得待测样本缺陷类型,调整模型参数。利用本发明提供的技术方案,用户能够实现对食品高光谱样本缺陷的无损检测与分类,可以在短时间内对TB甚至PB级别的数据进行分析后输出结果,满足了食品安全大数据快速、实时分析的需求,具有十分重要的现实意义。
Description
技术领域
本发明涉及食品无损检测和数据处理,尤其涉及一种基于卷积神经网络(Convolutional Neural Networks,CNN)模型的食品高光谱信息分析系统与方法。
背景技术
高光谱成像技术同时采集样本的图像与光谱信息,是近年来应用于食品无损检测领域的一项新兴技术。图像信息可以反映样本的大小、形状、缺陷等外部品质特征,由于成分不同对光谱吸收也不同,在某个特定波长下图像对某个缺陷会有较显著的反映。
CN200610097857公布了一种通过对农畜产品的高光谱图像进行特征提取,然后与专家库中的数据相对照进行综合判别的方法;CN201310409795公布了一种对桃果实高光谱图像进行独立主成分ICA分析,建立基于Fisher的反射和半反射高光谱模型的检测桃果实冷害的装置和方法;CN201310463530公布了一种基于高光谱图像的过熟蓝靛果果实识别方法,依次采用逐步向前变量选择法和线性判别分析法建立判别过熟果与适熟果像素的函数模型;CN201310141349 公布了一种通过建立鱼肉嫩度与特征波长的多元线性回归模型的高光谱检测方法。
以上高光谱分析中常用到模型均是针对小样本,从统计学习理论(SLT) 的基础上发展起来的,需要人为提取光谱图像的特征图。然而,这种模型在大样本下的泛化性表现并不理想。近年来,深度学习算法和大数据运算平台的发展为高光谱分析的研究开辟了一种新的思路。CNN通过卷积操作将光谱特征转变成为更高层次的描述。经过足够多的转换组合和足够大的样本训练,非常复杂的非线性模型也可以被学习。CNN模型可以很好的解决传统的化学计量学方法不擅长建立大样本下食品高光谱非线性模型的难题。
发明内容
为了克服现有技术的不足,本发明提供了一种基于CNN的食品高光谱信息分析系统与方法,实现了对食品高光谱样本缺陷的无损检测与分类
所述系统改进了现有商用高光谱仪配套的数据处理平台,除了已有的CPU、内存、存储器等标准配置以外,增加了用于加速CNN运算的GPU阵列。具体的,一种基于CNN的食品高光谱信息分析系统,包括:
预处理模块,提供图像增强工具和阈值分割工具,用于对食品样本的高光谱数据进行预处理,去除采集过程中产生的背景噪声。具体为,对原始数据进行Gamma校正,采用非线性函数(指数函数)对图像的灰度值进行变换,并且选择合适的阈值,对增强后的灰度图像进行阈值分割,得到食品高光谱的二值图像。将二值图像与原始图像相乘,可以得到去除背景后的食品高光谱图像。
数据管理模块,提供数据存储及检索工具和数据集构建工具。所述数据存储工具将预处理后的高光谱数据保存到指定路径下的分类文件夹中,并以链表形式在数据库中记录设备信息和采集信息,包括:仪器设备型号,扫描速度,扫描时间,分辨率,灵敏度,样本批次,波长,缺陷类型以及采集时间。同时,将以上信息作为高光谱图像数据的属性添加到数据库中。所述数据检索工具,包含以下三种检索方式:(1)可选定波长范围或某一特定波长;(2)可设定间隔波段数;(3)可按属性信息检索。所述数据集构建工具可以按照检索信息和设定比例,将数据随机分为训练集和测试集,同时根据缺陷类型为样本设定标签值。
CNN模型构建模块,提供可供调用的开源CNN模型或定制CNN模型。根据检测样本的形态差异选择适合的CNN模型,对缺陷类型做定性分析。所述形态差异主要指样本的形状大小,具体的,比如对于小麦、玉米这类小样本,选用 LeNet-5模型;而对于苹果、梨这类大样本,则采用VGG模型;用户也可以针对不同的需求,通过prototxt文件修改网络的每一层行为,自定义新的CNN 模型。具体的,包括可设定输入层图像尺寸、卷积层数、池化层数、卷积核尺寸等模型参数。
CNN模型优化模块,提供CNN参数调整工具和CNN模型加速工具。通过不断调整模型的学习率、迭代次数、学习率衰减系数等参数,可以得到针对具体检测对象的最佳模型,从而提高检测精度。并且支持使用GPU对CNN模型进行加速,可设定挂载GPU卡的数目。
一种基于CNN的食品高光谱信息分析方法,包括以下步骤:
S1)通过高光谱成像仪采集食品样本的高光谱数据
S2)对高光谱数据进行预处理操作
S3)实验员凭视觉经验对食品样本进行区分,确定数据的分类标签,构建训练数据集和测试集
S4)根据所选食品样本的形态大小,建立不同结构的CNN模型
S5)利用步骤S3)得到的训练数据集的分类标签和预处理后训练集食品样本的高光谱数据,对建立的CNN模型进行训练
S6)针对需要检测的缺陷类型,利用步骤S5)获得的CNN模型对待测食品样本的相应的缺陷指标进行检测,得到待测集食品样本的缺陷类型;
S7)调整模型参数,得到针对具体检测对象的最佳模型。
所述步骤S2)的预处理,具体地,通过采用图像增强和阈值分割方法对食品样本的高光谱图像去除背景。
所述步骤S4)中建立CNN模型,具体地,在实际检测过程中,根据检测样本的形态差异选择适合的CNN模型,通过该模型对待测样本的缺陷类型进行区分,包括调用开源框架中CNN模型和定制CNN模型。
所述步骤S7)中,调整模型参数,具体地,通过逐步调整模型的学习率、迭代次数、学习率衰减系数等参数,优化网络模型,最终得到训练速度快、分类效果好的网络模型。
与现有的技术进行对比,本发明的优势是:
面对食品行业数据体量巨大、种类繁多的高光谱大数据时,传统的数据预处理、奇异样本筛选、多元校正和模型转移技术的分析能力将大打折扣。因此,必须发展以大数据算法为基础的新型光谱分析技术。新的算法能够在短时间内对TB甚至PB级别的高光谱数据进行分析后输出结果,满足了大数据快速、实时分析的需求。
本发明采用基于CNN的高光谱信息分析系统与方法对食品进行缺陷检测,不仅分析速度快,而且在检测分析前不需要对食品进行化学处理,检测后不会产生化学污染。用户可以不受高光谱采集仪器提供的配套分析软件中固化模型的限制,在实际检测过程中,可以根据检测样本的数据特点,选择合适的CNN 模型,并寻找最优参数,得到针对具体检测食品对象的最佳检测模型,提高模型的检测精度。
附图说明
图1是基于CNN的食品高光谱信息分析系统框图
图2是基于CNN的食品高光谱信息分析系统的运作流程框图
图3是基于CNN的食品高光谱信息分析方法的流程框图
图4是CNN的模型优化结果图
具体实施方式
下面结合附图和实施例,对本发明作进一步详细说明,但本发明的实施方式不限于此。
本实施例中所述基于CNN的食品高光谱信息分析系统除了已有的CPU、内存、存储器以外,增加了用于高光谱图像数据处理的GPU阵列。所述GPU阵列由4路Nvidia公司的GTX1080显卡组成。
所述基于CNN的食品高光谱信息分析系统包括四个部分,分别是数据管理模块102、预处理模块103、CNN模型构建模块104和CNN模型优化模块105,如图1所示。
所述预处理模块用于对样本光谱数据进行预处理,包括:图像增强工具106 和阈值分割工具107。具体为,对原始数据进行Gamma校正,采用非线性函数 (指数函数)对图像的灰度值进行变换,并且选择合适的阈值,对增强后的灰度图像进行阈值分割,得到食品高光谱的二值图像。将二值图像与原始图像相乘,可以得到去除背景后的食品高光谱图像。并且通过将处理后的图片保存到指定路径下的对应分类的文件夹中,从而记录处理后的图片的波段及分类等信息。
所述数据管理模块用于将高光谱仪采集的数据进行管理,包括:数据存储及检索工具108和数据集构建工具109。所述数据存储及检索工具将预处理后的高光谱数据的路径以链表形式进行存储,并且获取上传图片的时间,以时间和分类对图片进行命名,可以防止图片重名。同时将波长、缺陷类型作为图片的附属信息添加到数据库中。然后可以对数据库中的数据通过以下方式进行检索:(1)可选定波长范围或某一特定波长(例如:挑选特定波峰或波谷处的光谱数据);(2)可设定间隔波段数(例如:每间隔5个波段挑选一组光谱数据); (3)可按属性信息检索(例如:上传时间、标签信息等)。所述数据集构建工具可以按照检索信息将检索到的数据按照一定比例(例如:3:1或4:1等)随机分为训练集和测试集,同时根据缺陷类型为样本设定标签值。
所述CNN模型构建模块针对检测的缺陷类型建立定性分析模型,通过该模型对待测样本的缺陷类型进行区分,包括调用深度学习的开源框架中提供的 CNN模型110或定制CNN模型111,可设定网络参数(输入层图像尺寸、卷积层数、池化层数、卷积核尺寸等)。
所述CNN模型优化模块包含CNN参数调整工具112和CNN模型加速工具113,通过不断调整模型参数(学习率、迭代次数、学习率衰减系数等)得到针对具体检测对象的最佳模型,从而提高检测精度,并且支持使用GPU对CNN模型进行加速,设定挂载GPU卡的数目。
本实施例中所述系统的具体运作流程如图2所示,包括以下步骤:
1)对系统进行初始化。
2)检测MySQL数据库连接是否正常,如果正常则进行下一步操作,否则提示未成功连接,重新连接MySQL数据库,重复此操作。
所述检测MySQL数据库连接是否正常,具体为,首先通过Qt调用“QSqlDatabase::addDatabase”函数创建一个数据库连接,其调用格式为“dbconn=QSqlDatabase::addDatabase("QMYSQL")”,其中QMYSQL为所选数据库的类型。通过调用“dbconn.open”函数连接到数据库,其调用格式为“dbconn.open(m_strUserName,m_strPassword)”其中m_strUserName为用户名,m_strPassword为用户密码。如果函数返回值为1,则表示数据库连接成功;如果函数返回值为0,则表示数据库没有连接成功,需要重新连接数据库。数据库成功连接后,可以执行数据的导入导出操作。
3)选择是否导入新数据,如没有新数据导入,则进行下一步操作,否则执行图像预处理,导入数据库,重复此操作。
所述图像预处理,具体为,对原始数据进行Gamma校正,采用非线性函数 (指数函数)对图像的灰度值进行变换,并且选择合适的阈值,对增强后的灰度图像进行阈值分割,得到食品高光谱的二值图像。将二值图像与原始图像相乘,可以得到去除背景后的食品高光谱图像。并且通过将处理后的图片保存到指定路径下的对应分类的文件夹中,从而记录处理后的图片的波段及分类等信息。
所述导入数据库,具体为,使用Qt调用“insert into images(Image) values()”语句用来向数据库中导入高光谱数据,其中images为数据库的表名。高光谱数据的路径以链表形式进行存储,并且获取上传图片的时间,以时间和分类对图片进行命名,可以防止图片重名。同时将仪器信息、扫描方式、波长、缺陷类型等作为图片的附属信息添加到数据库中。
4)数据检索
所述数据检索,具体为,使用Qt调用“select*from data where name=’i’”来选择数据库中特定行,或通过组合条件“select*from data where name=‘i’and table=’j’”来进行查询;i、j具体为对数据库中数据的检索方式:1)选定波长范围或某一特定波长;2)设定间隔波段数;3) 按属性信息检索(例如:上传时间、标签信息等)。
5)构建数据集
所述构建数据集,具体为,可以按照检索信息将检索到的数据按照一定比例(如:3:1或4:1等)随机分为训练集和测试集,同时根据步骤3)中存储的缺陷类型为样本设定标签值(如:完整粒为0、破损粒为1等)。
6)检测Caffe的Python接口是否正常,如果正常则进行下一步操作,否则修改Makefile.config文件,重复此操作。
所述修改Makefile.config文件,具体为,修改“PYTHON_INCLUDE”,添加Python相应的路径,使其能够找到Python.h以及numpy/arrayobject.h文件;修改“PYTHON_LIB”、“INCLUDE_DIRS”和“LIBRARY_DIRS”,添加相应的路径,使Python能够找到对应的依赖项;取消对“WITH PYTHON LAYER:=1”的注释,将Caffe链接到Python libs,支持Python编写的层。
7)检测Qt的Python接口是否正常,如果正常则进行下一步操作,否则修改Python路径,重复此操作。
所述Qt的Python接口,其调用格式为,“QProcess::execute(“python path+filename”)”,其中“path+filename”为所调Python文件的路径和文件名。
8)根据食品样本的外部特征选择合适的CNN模型。
所述外部特征主要指样本的形状大小,具体的,比如对于小麦、玉米这类小样本,选用LeNet-5模型;而对于苹果、梨这类大样本,则采用VGG模型;用户也可以针对不同的需求,自定义新的CNN模型。
9)检测CUDA环境是否安装正常,如果正常则进行下一步操作,否则重新安装CUDAToolkit,重复此操作。
10)使用GPU对所选CNN模型进行加速,可根据实际需求选择挂载的GPU 数量,本实施例中,可选定挂载GPU数量为1~4。
11)对所选CNN模型进行训练和测试,并显示最后的测试结果。
12)调整模型参数,得到针对具体检测对象的最佳模型。
所述调整模型参数,具体地,通过逐步调整模型的学习率、迭代次数、学习率衰减系数等参数,优化网络,最终得到训练速度快、分类效果好的网络模型。
本实施例中,使用基于CNN的食品高光谱信息分析方法对三种不同形态的样本进行检测,分别采用了三种方案,检测方法的步骤如图3所示:
方案一、针对形态较小的样本,以小麦不完善粒检测为例,样品尺寸为28 像素点*28像素点。
(1)数据预处理:针对获取的493~1106nm范围内的116个波段的正常粒 (486个)、黑胚粒(100个)、虫蚀粒(100个)、破损粒(100个)样本进行预处理。
为了实现小麦种子的单粒识别,需要将种子图像从背景中分割出来。选择样本与背景区分明显的波段下,先对原始数据进行Gamma校正,采用非线性函数(指数函数)对图像的灰度值进行变换,并且选择合适的阈值,对增强后的灰度图像进行阈值分割,得到小麦粒的二值图像。将二值图像与116个波段的所有原始图像相乘,可以得到去除背景后的小麦高光谱图像,然后分别将处理后的小麦高光谱图像裁剪为28*28的单粒小麦高光谱图像,最终得到完整粒小麦高光谱图像56376张,黑胚粒小麦高光谱图像11600张,虫蚀粒小麦高光谱图像11600张,破损粒小麦高光谱图像11600张。
(2)构建数据集:对116个波段的小麦图像每隔4个波段选取一个特征波段,共得到24个特征波段;分别对完整粒、黑胚粒、虫蚀粒和破损粒小麦各特征波段下的高光谱图像,按照3:1划分为CNN网络的训练集和测试集;并且对其设置标签值,正常粒小麦标签值为0,不完善粒(黑胚粒、虫蚀粒或破损粒)小麦标签值为1。
(3)CNN模型构建:本方案选用LeNet-5结构对小麦高光谱图像进行分类。其中,LeNet-5模型共有7层:5C-2S-5C-2S-4C-NN,其中n(5、2、5等)表示卷积层或池化层核尺寸n*n,C、S分别表示卷积层和池化层,NN表示两个全连接层,输入图片大小为28*28,则结构参数可以表示为如下表1所示:
表1 LeNet-5结构参数
层名 | 类型名 | 特征图数目 | 特征图尺寸 | 核尺寸 |
I | 输入 | 1 | 28*28 | — |
C1 | 卷积层1 | 20 | 24*24 | 5*5 |
S1 | 池化层1 | 20 | 12*12 | 2*2 |
C2 | 卷积层2 | 50 | 8*8 | 5*5 |
S2 | 池化层2 | 50 | 4*4 | 2*2 |
C3 | 卷积层3 | 500 | 1*1 | 4*4 |
(4)模型训练与模型测试:使用步骤(2)得到的训练集数据对CNN网络进行训练,其中包括完整粒小麦高光谱图像42282张,黑胚粒小麦高光谱图像8700张,虫蚀粒小麦高光谱图像8700张,破损粒小麦高光谱图像8700张,最终得到一个小麦高光谱图像的分类器模型,通过对该分类器的输出结果与标签集数据进行对比,可以得到最终的分类结果409(正常粒或不完善粒)。并且可以使用训练得到的分类器模型对测试集数据进行分类,包括完整粒小麦高光谱图像14094张,黑胚粒小麦高光谱图像2900张,虫蚀粒小麦高光谱图像2900 张,破损粒小麦高光谱图像2900张,同样的将输出结果与其标签集数据进行对比,最终得到测试集的分类结果(正常粒或不完善粒)。
(5)参数调整:卷积神经网络是一种基于误差梯度下降的前馈型神经网络,然而在梯度下降算法中的学习率很难确定。如果学习率过大,就会跳过全局最小值,从而无法得到最优解。如果学习率过小,卷积神经网络容易陷入局部最优,也无法得到最优解。为了提高CNN模型的准确率,本实施例通过不断调整学习率,研究代价函数和迭代次数之间的关系,分别建立学习率为0.005,0.01, 0.015,0.02,0.03,0.05,迭代次数为2000,4000,6000,8000,10000,的二分类模型,通过实验,如图4所示,当学习率为0.01,迭代次数为10000 次时,黑胚粒的识别准确率基本都在94%以上,其中在波段为493nm和1106nm 时,识别准确率更是达到98%;虫蚀粒的识别准确率基本都在95%以上,其中在波段为493nm时识别准确率达到97.3%;破损粒的识别准确率也基本全部达到92%。
方案二、针对形态较大的样本,以苹果早期碰伤检测为例,样品尺寸为224 像素点*224像素点。
本方案除模型构建外其他步骤同方案一。选择附近超市的箱装红富士苹果作为实验样本,利用GaiaSorter高光谱成像仪进行扫描获取苹果的光谱数据,并在系统中进行数据预处理,建立完好苹果和碰伤苹果的CNN模型,并根据建立的模型对苹果早期碰伤进行有效的检测。
本方案选用VGG模型对苹果高光谱图像进行分类。其中,VGG模型共有21 层:3CC-2S-3CC-2S-3CCC-2S-3CCC-2S-3CCC-2S-NNN,其中n(3、2、3、2等) 表示卷积层或池化层核尺寸n*n,C、S分别代表卷积层和池化层,CC表示两个卷积层,CCC表示三个卷积层,NNN表示三个全连接层,输入图片大小为224*224,则结构参数可以表示为如表2所示:
表2 VGG结构参数
层名 | 类型名 | 特征图数目 | 特征图尺寸 | 核尺寸 |
I | 输入 | 1 | 224*224 | — |
Conv1_1 | 卷积层1-1 | 64 | 224*224 | 3*3 |
Conv1_2 | 卷积层1-2 | 64 | 224*224 | 3*3 |
S1 | 池化层1 | 64 | 112*112 | 2*2 |
Conv2_1 | 卷积层2-1 | 128 | 112*112 | 3*3 |
Conv2-2 | 卷积层2-2 | 128 | 112*112 | 3*3 |
S2 | 池化层2 | 128 | 56*56 | 2*2 |
Conv3_1 | 卷积层3-1 | 256 | 56*56 | 3*3 |
Conv3_2 | 卷积层3-2 | 256 | 56*56 | 3*3 |
Conv3_3 | 卷积层3-3 | 256 | 56*56 | 3*3 |
S3 | 池化层3 | 256 | 28*28 | 2*2 |
Conv4_1 | 卷积层4-1 | 512 | 28*28 | 3*3 |
Conv4_2 | 卷积层4-2 | 512 | 28*28 | 3*3 |
Conv4_3 | 卷积层4-3 | 512 | 28*28 | 3*3 |
S4 | 池化层4 | 512 | 14*14 | 2*2 |
Conv5_1 | 卷积层5-1 | 512 | 14*14 | 3*3 |
Conv5_2 | 卷积层5-2 | 512 | 14*14 | 3*3 |
Conv5_3 | 卷积层5-3 | 512 | 14*14 | 3*3 |
S5 | 池化层5 | 512 | 7*7 | 2*2 |
方案三、针对处理不同类型样本的需求,用户可以自定义新的CNN模型。本方案除模型构建外其他步骤同方案一。
使用Caffe框架自定义新的CNN模型,可以通过修改prototxt文件实现。主要包括修改网络模型文件中的输入层、卷积层、池化层、全连接层、激活函数以及loss层。
所述网络模型文件,定义了网络的每一层行为。
所述卷积层,首先命名卷积层的名称convN,其中N为卷积层的层数;然后设置层类型,学习率的调整参数,以及卷积层的参数,包括输出单元数,卷积核大小,步长,以及权重的初始化方法。
所述池化层,首先对池化层命名poolN,其中N为池化层的层数;然后设置层类型,以及池化层的参数,包括池化方式,卷积核的大小,步长。
所述全连接层,首先对全连接层命名ipN,其中N为全连接层的层数;然后设置层类型,以及全连接层的参数,包括输出节点数、权重初始化方法。
所述激活函数,主要用来选择激活函数的类型。
所述loss层,主要用来选择误差的传播方式。
上述实施例仅用以说明本发明的技术方案,但本发明的实施方式并不受所述实施例的限制,其依然可以对上述实施例所记载的技术方案进行修改,或者对其中的部分技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于CNN的食品高光谱信息分析系统,其特征在于,改进了现有商用高光谱仪配套的数据处理平台,增加了用于运行深度学习框架的GPU阵列。
2.所述基于CNN的食品高光谱信息分析系统,其特征在于,包括预处理模块、数据管理模块、CNN模型构建模块和CNN模型优化模块。
3.如权利要求2所述预处理模块,其特征在于,提供图像增强工具和阈值分割工具,用于对食品样本的高光谱数据进行预处理,去除采集过程中产生的背景噪声。具体为,对原始数据进行Gamma校正,采用非线性函数(指数函数)对图像的灰度值进行变换,并且选择合适的阈值,对增强后的灰度图像进行阈值分割,得到食品高光谱的二值图像。将二值图像与原始图像相乘,可以得到去除背景后的食品高光谱图像。
4.如权利要求2所述数据管理模块,其特征在于,提供数据存储及检索工具和数据集构建工具。所述数据存储工具将预处理后的高光谱数据保存到指定路径下的分类文件夹中,并以链表形式在数据库中记录设备信息和采集信息,包括:仪器设备型号,扫描速度,扫描时间,分辨率,灵敏度,样本批次,波长,缺陷类型以及采集时间。同时,将以上信息作为高光谱图像数据的属性添加到数据库中。所述数据检索工具,包含以下三种检索方式:(1)可选定波长范围或某一特定波长;(2)可设定间隔波段数;(3)可按属性信息检索。所述数据集构建工具可以按照检索信息和设定比例,将数据随机分为训练集和测试集,同时根据缺陷类型为样本设定标签值。
5.如权利要求2所述CNN模型构建模块,其特征在于,提供可供调用的开源CNN模型或定制CNN模型。根据检测样本的形态差异选择适合的CNN模型,对缺陷类型做定性分析。所述形态差异主要指样本的形状大小,比如对于小麦、玉米这类小样本,选用LeNet-5模型;而对于苹果、梨这类大样本,则采用VGG模型;用户也可以针对不同的需求,自定义新的CNN模型,具体的,包括可设定输入层图像尺寸、卷积层数、池化层数、卷积核尺寸等模型参数。
6.如权利要求2所述CNN模型优化模块,其特征在于,提供CNN参数调整工具和CNN模型加速工具。通过不断调整模型的学习率、迭代次数、学习率衰减系数等参数,可以得到针对具体检测对象的最佳模型,从而提高检测精度。并且支持使用GPU对CNN模型进行加速,可设定挂载GPU卡的数目。
7.所述基于CNN的食品高光谱信息分析系统的运作流程,其特征在于,包括以下步骤:
1)对系统进行初始化;
2)检测MySQL数据库连接是否正常,如果正常则进行下一步操作,否则提示未成功连接,重新连接MySQL数据库,重复此操作;
3)选择是否导入新数据,如没有新数据导入,则进行下一步操作,否则执行图像预处理,导入数据库,重复此操作;
4)数据检索
所述数据检索,包含三种检索方式:(1)选定波长范围或某一特定波长;(2)设定间隔波段数;(3)按属性信息检索。
5)构建数据集
所述构建数据集,具体为,可以按照检索信息将检索到的数据按照一定比例随机分为训练集和测试集,同时根据步骤3)中存储的缺陷类型为样本设定标签值。
6)检测Caffe的Python接口是否正常。
7)检测Qt的Python接口是否正常。
8)根据检测样本的形态差异选择适合的CNN模型对缺陷类型分析。
9)检测CUDA环境是否安装正常。
10)使用GPU对所选CNN模型进行加速,可根据实际需求选择挂载的GPU数量。
11)对所选CNN模型进行训练和测试,并显示最后的测试结果。
12)调整模型参数,得到针对具体检测对象的最佳模型。
8.一种基于CNN的食品高光谱信息分析方法,其特征在于,包括以下步骤:
S1)通过高光谱成像仪采集食品样本的高光谱数据
S2)对高光谱数据进行预处理操作,采用图像增强和阈值分割方法对食品样本的高光谱图像去除背景。
S3)实验员凭视觉经验对食品样本进行区分,确定数据的分类标签,构建训练数据集和测试集。
S4)根据所选食品样本的形态大小,建立不同结构的CNN模型,包括调用开源框架中CNN模型或定制CNN模型。
S5)利用步骤S3得到的训练数据集的分类标签和预处理后训练集食品样本的高光谱数据,对建立的CNN模型进行训练。
S6)针对需要检测的缺陷类型,利用步骤5获得的CNN模型对待测食品样本的相应的缺陷指标进行检测,得到待测集食品样本的缺陷类型;
S7)调整模型参数,得到针对具体检测对象的最佳模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810260864.5A CN108335300A (zh) | 2018-06-22 | 2018-06-22 | 一种基于cnn的食品高光谱信息分析系统与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810260864.5A CN108335300A (zh) | 2018-06-22 | 2018-06-22 | 一种基于cnn的食品高光谱信息分析系统与方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108335300A true CN108335300A (zh) | 2018-07-27 |
Family
ID=62931624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810260864.5A Pending CN108335300A (zh) | 2018-06-22 | 2018-06-22 | 一种基于cnn的食品高光谱信息分析系统与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108335300A (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109377487A (zh) * | 2018-10-16 | 2019-02-22 | 浙江大学 | 一种基于深度学习分割的水果表面缺陷检测方法 |
CN110736707A (zh) * | 2019-09-16 | 2020-01-31 | 浙江大学 | 一种主仪器向从仪器光谱模型传递的光谱检测优化方法 |
CN111738673A (zh) * | 2020-05-28 | 2020-10-02 | 西安交通大学 | 一种实验数据采集管理系统及方法 |
CN111815540A (zh) * | 2020-07-22 | 2020-10-23 | 吉林大学 | 一种基于高光谱的冷库果蔬冷害检测方法 |
CN112580540A (zh) * | 2020-12-23 | 2021-03-30 | 安徽高哲信息技术有限公司 | 一种人工智能农作物处理系统和方法 |
CN112905823A (zh) * | 2021-02-22 | 2021-06-04 | 深圳市国科光谱技术有限公司 | 一种基于大数据平台的高光谱物质检测识别系统及方法 |
CN112966692A (zh) * | 2020-12-23 | 2021-06-15 | 中国人民解放军空军工程大学 | 一种基于图像识别的飞机机翼、平尾结冰实时探测方法 |
CN113129300A (zh) * | 2021-05-10 | 2021-07-16 | 深圳市水务工程检测有限公司 | 一种降低误检率的排水管道缺陷检测方法、装置、设备及介质 |
CN113392916A (zh) * | 2021-06-23 | 2021-09-14 | 华南农业大学 | 基于高光谱图像的麻竹笋营养成分检测方法、系统和存储介质 |
CN113469364A (zh) * | 2020-03-31 | 2021-10-01 | 杭州海康威视数字技术股份有限公司 | 一种推理平台、方法及装置 |
RU2775808C2 (ru) * | 2018-08-22 | 2022-07-11 | Флорент Текнолоджиз, ЭлЭлСи | Нейронные сетевые системы и компьютерно-реализуемые способы идентификации и/или оценки одного или более пищевых изделий в визуальной входной информации |
CN116007753A (zh) * | 2022-12-09 | 2023-04-25 | 重庆理工大学 | 基于fpga及高光谱的水果品质实时无损检测方法 |
CN117890311A (zh) * | 2024-02-05 | 2024-04-16 | 烟台大学 | 一种基于光谱学鉴定小眼绿鳍鱼的方法 |
CN118469400A (zh) * | 2024-07-09 | 2024-08-09 | 中科信息产业(山东)有限公司 | 基于中药识别数据的中医人才分析系统 |
-
2018
- 2018-06-22 CN CN201810260864.5A patent/CN108335300A/zh active Pending
Non-Patent Citations (1)
Title |
---|
吴静珠等: "基于CNN神经网络的小麦不完善粒高光谱检测", 食品科学, pages 283 - 287 * |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2775808C9 (ru) * | 2018-08-22 | 2022-09-27 | Флорент Текнолоджиз, ЭлЭлСи | Нейронные сетевые системы и компьютерно-реализуемые способы идентификации и/или оценки одного или более пищевых изделий в визуальной входной информации |
RU2775808C2 (ru) * | 2018-08-22 | 2022-07-11 | Флорент Текнолоджиз, ЭлЭлСи | Нейронные сетевые системы и компьютерно-реализуемые способы идентификации и/или оценки одного или более пищевых изделий в визуальной входной информации |
CN109377487A (zh) * | 2018-10-16 | 2019-02-22 | 浙江大学 | 一种基于深度学习分割的水果表面缺陷检测方法 |
CN110736707A (zh) * | 2019-09-16 | 2020-01-31 | 浙江大学 | 一种主仪器向从仪器光谱模型传递的光谱检测优化方法 |
CN113469364B (zh) * | 2020-03-31 | 2023-10-13 | 杭州海康威视数字技术股份有限公司 | 一种推理平台、方法及装置 |
CN113469364A (zh) * | 2020-03-31 | 2021-10-01 | 杭州海康威视数字技术股份有限公司 | 一种推理平台、方法及装置 |
CN111738673A (zh) * | 2020-05-28 | 2020-10-02 | 西安交通大学 | 一种实验数据采集管理系统及方法 |
CN111815540A (zh) * | 2020-07-22 | 2020-10-23 | 吉林大学 | 一种基于高光谱的冷库果蔬冷害检测方法 |
CN112966692A (zh) * | 2020-12-23 | 2021-06-15 | 中国人民解放军空军工程大学 | 一种基于图像识别的飞机机翼、平尾结冰实时探测方法 |
CN112580540A (zh) * | 2020-12-23 | 2021-03-30 | 安徽高哲信息技术有限公司 | 一种人工智能农作物处理系统和方法 |
CN112905823A (zh) * | 2021-02-22 | 2021-06-04 | 深圳市国科光谱技术有限公司 | 一种基于大数据平台的高光谱物质检测识别系统及方法 |
CN112905823B (zh) * | 2021-02-22 | 2023-10-31 | 深圳市国科光谱技术有限公司 | 一种基于大数据平台的高光谱物质检测识别系统及方法 |
CN113129300A (zh) * | 2021-05-10 | 2021-07-16 | 深圳市水务工程检测有限公司 | 一种降低误检率的排水管道缺陷检测方法、装置、设备及介质 |
CN113392916A (zh) * | 2021-06-23 | 2021-09-14 | 华南农业大学 | 基于高光谱图像的麻竹笋营养成分检测方法、系统和存储介质 |
CN113392916B (zh) * | 2021-06-23 | 2023-10-17 | 华南农业大学 | 基于高光谱图像的麻竹笋营养成分检测方法、系统和存储介质 |
CN116007753A (zh) * | 2022-12-09 | 2023-04-25 | 重庆理工大学 | 基于fpga及高光谱的水果品质实时无损检测方法 |
CN117890311A (zh) * | 2024-02-05 | 2024-04-16 | 烟台大学 | 一种基于光谱学鉴定小眼绿鳍鱼的方法 |
CN118469400A (zh) * | 2024-07-09 | 2024-08-09 | 中科信息产业(山东)有限公司 | 基于中药识别数据的中医人才分析系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108335300A (zh) | 一种基于cnn的食品高光谱信息分析系统与方法 | |
Kukreja et al. | A Deep Neural Network based disease detection scheme for Citrus fruits | |
Yogesh et al. | Computer vision based analysis and detection of defects in fruits causes due to nutrients deficiency | |
Thakur et al. | An innovative approach for fruit ripeness classification | |
CN107679569A (zh) | 基于自适应超图算法的拉曼光谱物质自动识别方法 | |
Ünal et al. | Classification of hazelnut kernels with deep learning | |
Militante | Fruit grading of garcinia binucao (Batuan) using image processing | |
Gai et al. | Convolutional neural network for apple bruise detection based on hyperspectral | |
CN110348503A (zh) | 一种基于卷积神经网络的苹果品质检测方法 | |
CN112464762A (zh) | 基于图像处理的农产品筛选系统及其方法 | |
Shahin et al. | Lentil type identification using machine vision | |
Sola-Guirado et al. | A smart system for the automatic evaluation of green olives visual quality in the field | |
CN112974303A (zh) | 一种基于高光谱的果品品质检测方法、设备及介质 | |
Kalim et al. | Citrus leaf disease detection using hybrid cnn-rf model | |
Goyal et al. | Tomato ripeness and shelf-life prediction system using machine learning | |
Doan et al. | A Novel Mango Grading System Based on Image Processing and Machine Learning Methods | |
Legaspi et al. | Tomato Ripeness and Size Classification Using Image Processing | |
Ji et al. | Apple color automatic grading method based on machine vision | |
CN117392104A (zh) | 一种基于深度学习的计算机视觉水稻质量测定方法 | |
CN117538287A (zh) | 一种无损检测黄冠梨果磷含量的方法及装置 | |
CN114820619B (zh) | 块茎类植物分选方法、系统、计算机设备和存储介质 | |
Aguirre-Radilla et al. | Texture and color-based analysis to determine the quality of the manila mango using digital image processing techniques | |
Behera et al. | A novel approach for classification of apple using on-tree images based on image processing | |
Mahmood et al. | C-net: a deep learning-based Jujube grading approach | |
Sobolu et al. | Automatic sorting of potatoes according to their defects. |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180727 |
|
RJ01 | Rejection of invention patent application after publication |