论文部分内容阅读
摘要: 蔬菜的成熟度可以通过作物的形态特征直观地体现出来,其标准可用积温比值来衡量。对LED智能植物生长柜中采集的油菜图像进行处理和分析,分割出叶冠投影图像和植株侧面图像轮廓,从而提取叶冠投影面积、株高等形态特征数据,然后根据BP神经网络的建模原理对采集的样本数据进行训练,实现了基于BP神经网络模型的蔬菜成熟度等级测定。结果表明,该方法能够在不破坏植株的情况下检测油菜的成熟度,准确率达到95%。
关键词: 图像处理;BP神经网络;油菜;株高;叶冠投影;成熟度;等级测定
中图分类号:TP335 1;S126 文献标志码: A
文章编号:1002-1302(2015)08-0403-03
油菜原产于我国西部,栽培历史十分悠久,主要分布于我国的西北、华北、内蒙古及长江流域等各省(区、市)。油菜具有耐热、耐寒、适应性强等特性,南方可四季栽培,北方多在春秋季栽培。近几年来,为了补充冬春淡季供应,油菜凭借其生长周期短、易于栽培等优势已成为LED智能植物生长柜生产应用的主要作物之一。尤其是随着营养液栽培技术和人工模拟环境与控制技术的不断推进,LED智能植物生长柜生产方式得到了快速发展。蔬菜成熟度是科学管理、增产增收的重要因素,因此本试验围绕蔬菜成熟度等级检测展开相关研究。
1 材料与方法
由于油菜的株高、叶冠投影面积与成熟度之间属于非线性关系,而神经网络模型非常适用于非线性模型构建,具有对非线性函数最佳逼近和全局最优的性能。因此,本研究采用神经网络检测的方法,通过数码相机定期采集植物生长柜中的蔬菜叶片图像 [1-2],利用图像处理得到的特征数据作为网络输入值,通过积温比值得到标准成熟度等级作为网络输出值,从而建立人工神经网络模型,实现对蔬菜的成熟度等级进行检测,其流程见图1。
1 1 试验环境设置
本试验以LED智能植物生长柜中的先优7号小油菜作为研究对象,为了保证植物生长所必需的各种营养元素以及提供适宜的生长环境,试验采用标准营养液,并通过智能控制面板调节柜内环境参数,将光照度设置为3 000 lx,温度设置为22 ℃,湿度设置为60%,二氧化碳浓度设置为700 mg/L。
1 2 成熟度等级标准
植物在生长发育的过程中,其生长速率受环境温度的影响较大,而且必须达到一定的积温,即从环境中摄取一定的热量才能够完成其发育过程,因此植物的成熟度可以利用积温来衡量。积温学说又称为度·日法 [3-4],是1735年由德列奥来尔提出的,他指出,在一定的温度范围内,当其他环境条件基本满足的情况下,作物发育速度主要受温度的影响,而且作物完成某一发育阶段所需的积温基本上是一个常数,即:
NT=K。
式中:N为发育历期,也就是生长发育所需的时间;T为发育期间的平均温度,℃;K为有效积温,℃。 由于生物的发育都不是从0开始,而是从某一温度开始的,所以生物开始发育的温度称为发育起点温度C,因此有:
[JZ]N(T-C)=K。
K与C的计算可以通过1组对比试验获得。在T1、T2温度下,记录蔬菜发育成熟所需要的时间N1、N2,将其带入(1)中,即可通过(2)得到K、C的值,具体公式如下:
K1=N1(T1-C)
K2=N2(T2-C)
K1=K2 [JB)]; (1)
C=[SX(]N2×T2-N1×T1[]N2-N1[SX)]
Ki=Ni(Ti-C);i=1,2[JB)]。 (2)
由此可知,蔬菜的有效积温可以由温度、生长时间推算出来,蔬菜的有效积温越大,则蔬菜越成熟,因此我们可以利用对每个生长阶段的实际有效积温与整个植株成熟所需的总有效积温作比值近似取整来表示其成熟度,从而制定出蔬菜成熟度的等级标准,以便于作为输出数据进行神经网络的训练 [5-7]。
1 3 蔬菜形态数据的采集
形态是描述物体最直接的视觉特征,蔬菜生长过程中,作物的外观形态会不断地发生变化,比如植株长高、叶片变大等,因此可以用其形态特征来衡量蔬菜的成熟度。作物形态特征参数则可以通过数字图像处理技术实现其无损测量。
1 3 1 图像采集 本研究采用参照物法测量作物形态数据,因此测量株高时需要提前制作已知尺寸且与目标对象颜色对比明显的背景板作为参照物。如图2所示,由于植物生长柜中的定植板呈白色,与叶片颜色能够形成鲜明的对比,所以在叶冠投影面积测量时则无须特制背景板,仅用黑胶带在定植杯四周贴1个矩形框,使黑色矩形框的长、宽分别与计算机图像显示窗口的长、宽对应成比例。同时将植物生长柜上方的LED灯光设置为白色,调节数码相机的位置,使其光轴垂直于待测对象所在平面,并确保背景边缘恰好与图像显示屏的边缘对齐,以免产生几何畸变。
1 3 2 图像预处理 数字图像在获取和传输过程中,会受到各种噪声的干扰使图像质量下降,因此在图像分割之前还须对图像进行平滑处理来消除噪声,以提高图像质量并降低后续处理工作的难度。对于物体和背景对比较为明显的图像,其灰度直方图会呈现出1个双峰形状,选择两峰之间的波谷对应的像素值作为全局阈值,可将图像分割为目标对象、背景2个部分,相应公式为:
g(x,y)= 1,f(x,y)>K
0,f(x,y)≤K[JB)]。 (3)
式中:f(x,y)为点(x,y)的像素值;g(x,y)为分割后的图像像素值;K为全局阈值,K可以通过灰度直方图来获取。对采集的图像阈值分割后,得到像素值只有1、0 的二值化图像,其中1代表对象,0代表背景。
1 3 3 特征提取 对于阈值分割后的冠层投影的二值图像来说,其目标对象的面积相当于像素值为1的像素点的集合,因此油菜的叶面积测量则可以转化为二值图像的像素数目统计。而此时得到的数据仅为像素数目,因此还须通过参照物等比例变换求得叶片的真实面积: 叶面积=[SX(]叶片像素数目[]参照物像素数目[SX)]×参照物面积。 (4)
至于株高,则须要将二值化后的植株侧面图像进行数学形态学边缘提取,得到植株轮廓。本研究利用图像腐蚀的性质,先用1个结构元素B对图像A进行腐蚀运算,然后再求腐蚀结果和集合A的差集,由此得到目标对象的边界,所用的公式为:
Y=A-(AΘB)。 (5)
然后再利用链码扫描来获取边界长度数据,试验中笔者将株高定义为植株的最高点到基部定植板之间的距离,因此株高即为侧面图像垂直像素点个数的最大值。
1 4 神经网络设计
单层神经网络只能解决线性可分的分类问题,因此蔬菜成熟度的检测须要采用多层神经网络 [8-9]。目前神经网络类型繁多,其中BP网络是最常用的1种,它是1个利用误差反向传播算法对网络进行训练的前向多层网络。BP网络通常包括输入层、隐含层、输出层,而输入层、隐含层、输出层的单元数以及它们之间作用函数等则是须要设计的特征参数。标准的BP神经网络沿着误差性能函数梯度的反方向修改权值,原理属于最速下降法,即对于实值函数F(x),如果F(x)在某点x0处有定义且可微,则函数在该点处沿着梯度相反的方向-F(x0)下降最快。
本研究采用BP人工神经网络构建蔬菜成熟度的预测模型,其网络结构如图3所示。
(1)输入层:BP神经网络的输入节点数根据研究需要来确定,所以该神经网络模型的输入层有2个神经元,X1、X2分别为株高、叶冠投影面积。
(2)输出层:BP神经网络的输出节点数同样也根据输出需要来确定,也就是说输出为成熟度等级。为了方便而准确地细化成熟度的等级,本研究将成熟度分为8个等级,目标输出模式为(000)、(001)、(010)、(011)、(100)、(101)、(110)、(111),分别对应1—8级,因此输出层的神经元个数为3,Y1、Y2、Y3的取值均为0或者1。
(3)隐含层:隐含层数目的增加能够提高BP神经网络的非线性映射能力,但是如果隐含层数目过多,则会降低网络性能。而单隐层的BP神经网络可以逼近1个任意的连续非线性函数,因此本研究采用单隐层的BP网络。隐含层神经元数目的确定尚无明确的理论指导,本研究通过反复试验后,确定隐含层神经元的数目为9,图3中Ki为隐含层神经元节点。
(4)传递函数:隐含层神经元的传递函数为S形正切函数tansig。由于输出向量的元素值为0、1,因此输出神经元的传递函数可选用S形的对数函数logsig。ωmi为输入层到隐含层之间的权值矩阵,其中mi为第m个输入到第j个隐含层节点之间的权值;ωij为隐含层到输出层之间的权值矩阵,其中ij为第i个隐含层节点到第j个输出节点之间的权值。
(5)训练函数:通过测试不同训练函数对网络性能的影响,本研究最后选择训练效果较为理想的L-M优化算法。
2 结果与分析
2 1 数据统计
由于在理想环境下,LED智能植物生长柜中的小油菜从幼苗到完全成熟大约需要40 d,因此从蔬菜出苗开始,每隔 5 d 对LED智能植物生长柜中的50株小油菜幼苗进行叶片图像采集,利用计算机技术对其进行形态特征提取与分析,共得到400组样本数据。在神经网络模型的实际应用中,通常须要将样本数据进行归一化处理,以便提高神经网络的训练效率以及泛化性能。本研究将样本数据归一化到区间为[-1,1],如表1所示。
2 2 神经网络模型训练与检验
以MATLAB 7 6作为系统仿真平台,从400组样本数据中随机抽取380组数据用于构建BP神经网络模型,模型训练过程如图4所示。
剩余的20组数据用来验证该神经网络模型,将网络测试的输出值与实际值进行对比,如表2所示。
从表2的数据可以看出,该神经网络成熟度检测模型能够较为准确地检测出LED植物生长柜中蔬菜的成熟度,而且准确率达到95%。
3 结论与讨论
本研究对LED植物生长柜中的油菜样本进行图像采集之后,利用计算机图像处理技术提取作物形态特征信息,在对50株油菜在8个不同成熟度时期的400组样本数据进行分析的基础上,构建了基于BP神经网络的蔬菜成熟度检测模型,用来预测作物的成熟度。
将预留的测试样本对该模型进行验证后发现,其准确度能够达到95%,表明利用神经网络检测成熟度方法便利、精确度高、实用性强。蔬菜成熟度等级检测方法的实现对于促进植物生长柜发展、推进农业生产信息化以及实现农业现代化发展具有重要的现实意义。
参考文献:
[1] 郭孝玉,孙玉军,王轶夫,等 基于改进人工神经网络的植物叶面积测定[J] 农业机械学报,2013,44(2):200-204,199
[2]吴春胤,张文昭,欧阳庆,等 基于BP神经网络模型的荔枝树叶面积测定方法[J] 农业工程学报,2007,23(7):166-169
[3]尹建军,毛罕平,王新忠,等 自然条件下番茄成熟度机器人判别模型[J] 农业机械学报,2009,40(10):146-150,168
[4]张长利,房俊龙,潘伟 用遗传算法训练的多层前馈神经网络对番茄成熟度进行自动检测的研究[J] 农业工程学报,2001,17(3):153-156
[5]闫 润,王新忠,张莹莹 基于神经网络及近红外光谱的草莓成熟度快速识别方法[J] 安徽农业科学,2012,40(10):6292-6294
[6]王慧慧,孙永海,张贵林,等 基于压力和图像的鲜玉米果穗成熟度分级方法[J] 农业工程学报,2010,26(7):369-373
[7]吕 琛,李锋霞,马本学,等 甜瓜成熟度检测技术研究进展[J] 江苏农业科学,2014,42(1):244-246
[8]张德丰 MATLAB神经网络编程[M] 北京:化学工业出版社,2011
[9]周开利,康耀红 神经网络模型及其MATLAB仿真程序设计[M] 北京:清华大学出版社,2005
关键词: 图像处理;BP神经网络;油菜;株高;叶冠投影;成熟度;等级测定
中图分类号:TP335 1;S126 文献标志码: A
文章编号:1002-1302(2015)08-0403-03
油菜原产于我国西部,栽培历史十分悠久,主要分布于我国的西北、华北、内蒙古及长江流域等各省(区、市)。油菜具有耐热、耐寒、适应性强等特性,南方可四季栽培,北方多在春秋季栽培。近几年来,为了补充冬春淡季供应,油菜凭借其生长周期短、易于栽培等优势已成为LED智能植物生长柜生产应用的主要作物之一。尤其是随着营养液栽培技术和人工模拟环境与控制技术的不断推进,LED智能植物生长柜生产方式得到了快速发展。蔬菜成熟度是科学管理、增产增收的重要因素,因此本试验围绕蔬菜成熟度等级检测展开相关研究。
1 材料与方法
由于油菜的株高、叶冠投影面积与成熟度之间属于非线性关系,而神经网络模型非常适用于非线性模型构建,具有对非线性函数最佳逼近和全局最优的性能。因此,本研究采用神经网络检测的方法,通过数码相机定期采集植物生长柜中的蔬菜叶片图像 [1-2],利用图像处理得到的特征数据作为网络输入值,通过积温比值得到标准成熟度等级作为网络输出值,从而建立人工神经网络模型,实现对蔬菜的成熟度等级进行检测,其流程见图1。
1 1 试验环境设置
本试验以LED智能植物生长柜中的先优7号小油菜作为研究对象,为了保证植物生长所必需的各种营养元素以及提供适宜的生长环境,试验采用标准营养液,并通过智能控制面板调节柜内环境参数,将光照度设置为3 000 lx,温度设置为22 ℃,湿度设置为60%,二氧化碳浓度设置为700 mg/L。
1 2 成熟度等级标准
植物在生长发育的过程中,其生长速率受环境温度的影响较大,而且必须达到一定的积温,即从环境中摄取一定的热量才能够完成其发育过程,因此植物的成熟度可以利用积温来衡量。积温学说又称为度·日法 [3-4],是1735年由德列奥来尔提出的,他指出,在一定的温度范围内,当其他环境条件基本满足的情况下,作物发育速度主要受温度的影响,而且作物完成某一发育阶段所需的积温基本上是一个常数,即:
NT=K。
式中:N为发育历期,也就是生长发育所需的时间;T为发育期间的平均温度,℃;K为有效积温,℃。 由于生物的发育都不是从0开始,而是从某一温度开始的,所以生物开始发育的温度称为发育起点温度C,因此有:
[JZ]N(T-C)=K。
K与C的计算可以通过1组对比试验获得。在T1、T2温度下,记录蔬菜发育成熟所需要的时间N1、N2,将其带入(1)中,即可通过(2)得到K、C的值,具体公式如下:
K1=N1(T1-C)
K2=N2(T2-C)
K1=K2 [JB)]; (1)
C=[SX(]N2×T2-N1×T1[]N2-N1[SX)]
Ki=Ni(Ti-C);i=1,2[JB)]。 (2)
由此可知,蔬菜的有效积温可以由温度、生长时间推算出来,蔬菜的有效积温越大,则蔬菜越成熟,因此我们可以利用对每个生长阶段的实际有效积温与整个植株成熟所需的总有效积温作比值近似取整来表示其成熟度,从而制定出蔬菜成熟度的等级标准,以便于作为输出数据进行神经网络的训练 [5-7]。
1 3 蔬菜形态数据的采集
形态是描述物体最直接的视觉特征,蔬菜生长过程中,作物的外观形态会不断地发生变化,比如植株长高、叶片变大等,因此可以用其形态特征来衡量蔬菜的成熟度。作物形态特征参数则可以通过数字图像处理技术实现其无损测量。
1 3 1 图像采集 本研究采用参照物法测量作物形态数据,因此测量株高时需要提前制作已知尺寸且与目标对象颜色对比明显的背景板作为参照物。如图2所示,由于植物生长柜中的定植板呈白色,与叶片颜色能够形成鲜明的对比,所以在叶冠投影面积测量时则无须特制背景板,仅用黑胶带在定植杯四周贴1个矩形框,使黑色矩形框的长、宽分别与计算机图像显示窗口的长、宽对应成比例。同时将植物生长柜上方的LED灯光设置为白色,调节数码相机的位置,使其光轴垂直于待测对象所在平面,并确保背景边缘恰好与图像显示屏的边缘对齐,以免产生几何畸变。
1 3 2 图像预处理 数字图像在获取和传输过程中,会受到各种噪声的干扰使图像质量下降,因此在图像分割之前还须对图像进行平滑处理来消除噪声,以提高图像质量并降低后续处理工作的难度。对于物体和背景对比较为明显的图像,其灰度直方图会呈现出1个双峰形状,选择两峰之间的波谷对应的像素值作为全局阈值,可将图像分割为目标对象、背景2个部分,相应公式为:
g(x,y)= 1,f(x,y)>K
0,f(x,y)≤K[JB)]。 (3)
式中:f(x,y)为点(x,y)的像素值;g(x,y)为分割后的图像像素值;K为全局阈值,K可以通过灰度直方图来获取。对采集的图像阈值分割后,得到像素值只有1、0 的二值化图像,其中1代表对象,0代表背景。
1 3 3 特征提取 对于阈值分割后的冠层投影的二值图像来说,其目标对象的面积相当于像素值为1的像素点的集合,因此油菜的叶面积测量则可以转化为二值图像的像素数目统计。而此时得到的数据仅为像素数目,因此还须通过参照物等比例变换求得叶片的真实面积: 叶面积=[SX(]叶片像素数目[]参照物像素数目[SX)]×参照物面积。 (4)
至于株高,则须要将二值化后的植株侧面图像进行数学形态学边缘提取,得到植株轮廓。本研究利用图像腐蚀的性质,先用1个结构元素B对图像A进行腐蚀运算,然后再求腐蚀结果和集合A的差集,由此得到目标对象的边界,所用的公式为:
Y=A-(AΘB)。 (5)
然后再利用链码扫描来获取边界长度数据,试验中笔者将株高定义为植株的最高点到基部定植板之间的距离,因此株高即为侧面图像垂直像素点个数的最大值。
1 4 神经网络设计
单层神经网络只能解决线性可分的分类问题,因此蔬菜成熟度的检测须要采用多层神经网络 [8-9]。目前神经网络类型繁多,其中BP网络是最常用的1种,它是1个利用误差反向传播算法对网络进行训练的前向多层网络。BP网络通常包括输入层、隐含层、输出层,而输入层、隐含层、输出层的单元数以及它们之间作用函数等则是须要设计的特征参数。标准的BP神经网络沿着误差性能函数梯度的反方向修改权值,原理属于最速下降法,即对于实值函数F(x),如果F(x)在某点x0处有定义且可微,则函数在该点处沿着梯度相反的方向-F(x0)下降最快。
本研究采用BP人工神经网络构建蔬菜成熟度的预测模型,其网络结构如图3所示。
(1)输入层:BP神经网络的输入节点数根据研究需要来确定,所以该神经网络模型的输入层有2个神经元,X1、X2分别为株高、叶冠投影面积。
(2)输出层:BP神经网络的输出节点数同样也根据输出需要来确定,也就是说输出为成熟度等级。为了方便而准确地细化成熟度的等级,本研究将成熟度分为8个等级,目标输出模式为(000)、(001)、(010)、(011)、(100)、(101)、(110)、(111),分别对应1—8级,因此输出层的神经元个数为3,Y1、Y2、Y3的取值均为0或者1。
(3)隐含层:隐含层数目的增加能够提高BP神经网络的非线性映射能力,但是如果隐含层数目过多,则会降低网络性能。而单隐层的BP神经网络可以逼近1个任意的连续非线性函数,因此本研究采用单隐层的BP网络。隐含层神经元数目的确定尚无明确的理论指导,本研究通过反复试验后,确定隐含层神经元的数目为9,图3中Ki为隐含层神经元节点。
(4)传递函数:隐含层神经元的传递函数为S形正切函数tansig。由于输出向量的元素值为0、1,因此输出神经元的传递函数可选用S形的对数函数logsig。ωmi为输入层到隐含层之间的权值矩阵,其中mi为第m个输入到第j个隐含层节点之间的权值;ωij为隐含层到输出层之间的权值矩阵,其中ij为第i个隐含层节点到第j个输出节点之间的权值。
(5)训练函数:通过测试不同训练函数对网络性能的影响,本研究最后选择训练效果较为理想的L-M优化算法。
2 结果与分析
2 1 数据统计
由于在理想环境下,LED智能植物生长柜中的小油菜从幼苗到完全成熟大约需要40 d,因此从蔬菜出苗开始,每隔 5 d 对LED智能植物生长柜中的50株小油菜幼苗进行叶片图像采集,利用计算机技术对其进行形态特征提取与分析,共得到400组样本数据。在神经网络模型的实际应用中,通常须要将样本数据进行归一化处理,以便提高神经网络的训练效率以及泛化性能。本研究将样本数据归一化到区间为[-1,1],如表1所示。
2 2 神经网络模型训练与检验
以MATLAB 7 6作为系统仿真平台,从400组样本数据中随机抽取380组数据用于构建BP神经网络模型,模型训练过程如图4所示。
剩余的20组数据用来验证该神经网络模型,将网络测试的输出值与实际值进行对比,如表2所示。
从表2的数据可以看出,该神经网络成熟度检测模型能够较为准确地检测出LED植物生长柜中蔬菜的成熟度,而且准确率达到95%。
3 结论与讨论
本研究对LED植物生长柜中的油菜样本进行图像采集之后,利用计算机图像处理技术提取作物形态特征信息,在对50株油菜在8个不同成熟度时期的400组样本数据进行分析的基础上,构建了基于BP神经网络的蔬菜成熟度检测模型,用来预测作物的成熟度。
将预留的测试样本对该模型进行验证后发现,其准确度能够达到95%,表明利用神经网络检测成熟度方法便利、精确度高、实用性强。蔬菜成熟度等级检测方法的实现对于促进植物生长柜发展、推进农业生产信息化以及实现农业现代化发展具有重要的现实意义。
参考文献:
[1] 郭孝玉,孙玉军,王轶夫,等 基于改进人工神经网络的植物叶面积测定[J] 农业机械学报,2013,44(2):200-204,199
[2]吴春胤,张文昭,欧阳庆,等 基于BP神经网络模型的荔枝树叶面积测定方法[J] 农业工程学报,2007,23(7):166-169
[3]尹建军,毛罕平,王新忠,等 自然条件下番茄成熟度机器人判别模型[J] 农业机械学报,2009,40(10):146-150,168
[4]张长利,房俊龙,潘伟 用遗传算法训练的多层前馈神经网络对番茄成熟度进行自动检测的研究[J] 农业工程学报,2001,17(3):153-156
[5]闫 润,王新忠,张莹莹 基于神经网络及近红外光谱的草莓成熟度快速识别方法[J] 安徽农业科学,2012,40(10):6292-6294
[6]王慧慧,孙永海,张贵林,等 基于压力和图像的鲜玉米果穗成熟度分级方法[J] 农业工程学报,2010,26(7):369-373
[7]吕 琛,李锋霞,马本学,等 甜瓜成熟度检测技术研究进展[J] 江苏农业科学,2014,42(1):244-246
[8]张德丰 MATLAB神经网络编程[M] 北京:化学工业出版社,2011
[9]周开利,康耀红 神经网络模型及其MATLAB仿真程序设计[M] 北京:清华大学出版社,2005