基于模型迁移的苹果光学特征参数反演
2020-11-25徐焕良周冰清王浩云李亦白胡华东
徐焕良 周冰清 王浩云 李亦白 胡华东 黄 芬
(1.南京农业大学信息科技学院, 南京 210095; 2.南京农业大学农业工程博士后流动站, 南京 210031)
0 引言
我国苹果产量和栽培面积一直处于世界领先地位。苹果产量逐年增加,而出口比例却没有随之提高,其原因之一是我国苹果产业的采后商品化处理技术较为落后,其中包括品质检测装备。因此对苹果品质进行无损检测具有重要意义。
苹果组织属于混浊组织,光子在混沌组织中的吸收和散射会使光在传播过程中出现衰减[1-2]。其中,吸收现象可以量化为吸收系数μa(mm-1),μa主要反映组织体内部化学信息的变化(如水分、酸度、糖度等);散射现象可被量化为有效散射系数μs(mm-1),μs主要表现为组织结构或物理特性(如密度、形态学特征、细胞结构组成等)。这两种系数统称为光学特征参数。苹果的组织结构、物理特征以及化学成分决定了苹果的光学特征参数,换言之,可以将光学特性参数作为光谱特征,预测苹果内部品质。光学特征参数一般无法直接测量,传统的方法如积分球技术[3-4]会破坏苹果组织结构。高光谱技术可以实现此功能,通过光谱图像来检测苹果品质,建立苹果光谱图像与光学特征参数之间的相关联系成为重要环节。QIN等[5]利用高光谱成像技术,基于子空间信任域的牛顿最小二乘迭代方法对组织模拟液的漫反射近似模型进行了反演计算,得到吸收系数和散射系数的平均反演误差分别为16%和11%。何春柳[6]使用漫反射近似模型拟合得到吸收系数和散射系数,结合PLSDA 模型建立了西红柿成熟度的分类模型。除了传统建模方法,许多学者也尝试利用深度学习进行反演研究。刘奇[7]利用人工神经网络对分层组织的光学特性参数进行反演,单层模型的反演误差为1.94%,双层模型的反演误差为1.85%,证明基于神经网络的参数反演方法比线性拟合法和微扰蒙特卡罗方法具有更高的精度。于博文[8]建立卷积神经网络(Convolutional neural net, CNN)模型,对VIIRS卫星全球海洋叶绿素a浓度进行反演。甘海明等[9]结合SAR模型预测龙眼叶片叶绿素含量分布情况。现有反演方法仅在单层平板组织模型上取得了较好效果,对多层组织的光学特征参数反演效果并不理想,同时,建立数学模型需要进行大量实验、获取大量数据。虽然深度学习在反演上有良好的表现,但是同样需要大量的带标签样本进行模型训练,因此耗费了大量人力物力,而且建立模型的可迁移性差。ZEILER等[10]和SERMANET等[11]证实,通过微调、更改分类器等方式,利用预训练网络进行迁移学习可以获得比迁移前更好的分类效果。郑一力等[12]、龙满生等[13]将迁移学习方法应用到农业领域的图像识别中。许景辉等[14]提出一种基于迁移学习的卷积神经网络玉米病害图像识别模型,对两种迁移学习方式进行了实验研究。
本文提出结合仿真数据和迁移学习进行光学特征参数反演的方法。以苹果为例,构造仿真生物组织模型,基于蒙特卡洛原理对光子在组织中的传输进行模拟,获得大量仿真高光谱图像;建立卷积神经网络结构,将仿真高光谱图像作为输入进行训练,得到预训练模型;同时,实测少量点光源高光谱图像,将预训练模型迁移到实测点光源高光谱图像中训练,并进行微调,以提高反演准确率。
1 数据获取
1.1 实测数据获取
1.1.1苹果光学参数采集和标签处理
使用上海五铃光电科技有限公司的双积分球系统采集60个苹果的果皮、果肉的反射率与透射率,其中积分球的直径为5 cm,内部采用聚四氟乙烯涂层,反射球有3个开口,透射球有2个开口;光源为150 W IT3900型卤素光源;光谱仪包括NIRez型近红外光谱仪(900~1 700 nm)和SE1040-25-VNIR型可见光光谱仪(350~1 020 nm)。采集到苹果的果皮吸收系数μa1、果肉吸收系数μa2、果皮散射系数μs1、果肉散射系数μs24组参数,为使训练和测试所用的每个标签下的样本数量近似相等,采用统计样本数量的方法对光学参数进行分类标注。共计得到500个不同的光学参数组合。双积分球系统结构示意图如图1所示。
图1 双积分球系统结构示意图Fig.1 Schematic of integrating sphere system1.光纤 2.透射球 3.样本夹 4.光栅 5.反射球 6.光谱仪
1.1.2苹果高光谱图像获取
使用上海五铃光电科技有限公司的高光谱成像装置获取点光源高光谱图像,由文献[15]和实验可确定点光源入射样本的位置为赤道位置,采用图2中的装置模式采集200个陕西红富士苹果的点光源高光谱图像,采集波段为373.54~1 033.87 nm。样本保持完整,不做切开处理。用HIS Analyzer分析软件将光谱数据导出,如图3所示。
图2 高光谱成像系统结构图Fig.2 Structural diagram of hyperspectral imaging system1.高光谱成像仪 2.待测样本 3.点光源
图3 高光谱图像导出图Fig.3 Hyperspectral image exported diagram
1.2 仿真数据获取
1.2.1基于蒙特卡洛方法的双层生物组织仿真模型
蒙特卡洛(Monte Carlo)是一种统计模拟随机抽样方法,因其优秀的特性被应用到各研究领域的仿真研究中,蒙特卡洛方法在有关生物组织光传输问题中的随机抽样表现在:
(1)步长的概率抽样:在蒙特卡洛仿真模拟中,每一个光子的步长都是随机的。将光子在组织中的散射步长定义为s,s的概率密度可以表示为
p(s)=μte-μts
(1)
其中
μt=μa+μs
(2)
式中p(s)——概率密度
μt——总衰减系数
μa——吸收系数
μs——散射系数
根据随机密度函数,可得光子随机步长s为
(3)
式中ξ——随机变量,ξ∈(0,1)
(2)散射方向的概率抽样:光子与组织之间发生碰撞之后,光子的方向会发生变化,光子的下一步传输方向由方位角ψ∈[0,2π]和散射角θ∈[0,2π]来确定。其中ψ服从均匀分布,抽样得到
ψ=2πξ
(4)
偏转角余弦cosθ服从Henyey-Greensterin函数分布,即
(5)
式中g——各向异性系数
对Henyey-Greensterin函数进行抽样得到
(6)
实践证明,使用蒙特卡洛方法进行光传输模拟得到的结果与实际测量结果基本相同,故该方法已成为光在生物组织中传播研究的非实验检验标准。蒙特卡洛方法的基本原理[16]如图4所示。WANG等[17-18]基于蒙特卡洛方法原理对光在多层组织中的传输问题进行了编程,得到了MCML和CONV模型, MCML模型为多层模型,计算量较大。在前期模拟中发现,光子进入果肉后最大深度为2.3 cm,并且99%的光子传输深度不到1 cm。对于苹果而言,光子无法传输到果核层,因此本文使用双层模型,基于蒙特卡洛思想,如图5所示,构建了双层生物组织模型。其中d1和d2为果皮层和果肉层厚度,n0、n1、n2分别为空气层折射率、果皮层折射率以及果肉层折射率。
图4 基于蒙特卡洛方法的光子传输过程 Fig.4 Photon transmission process based on Monte Carlo method
图5 双层生物组织模型简图Fig.5 Double-layer biological tissue model schematic
1.2.2基于仿真模型的光亮度分布图
经测量得到μa1、μa2、μs1、μs2数值分别为0.4~6.5 mm-1、0.03~8.7 mm-1、1.69~260 mm-1、0.01~75 mm-1,在这些数值区间内均匀选取了11×11×11×11个光学特征参数组合作为仿真模型的参数,同时模型中设置果皮厚度为0.2 mm,空气折射率n0为1,果皮层折射率n1为1.38,果肉层折射率n2为1.38,对模型进行光子传输模拟,用于模拟的服务器为超微 Super Server Main Server Chassis,使用Windows 2012 R2 Server Standard操作系统,模拟软件为Matlab R2014b。得到的光子逸出图按一定比例映射到一幅50像素×50像素的图像中,得到仿真高光谱图像,并视为光亮分布图,如图6所示。
图6 点光源亮度分布图Fig.6 Light intensity distribution map
图7 卷积神经网络结构图Fig.7 Convolutional neural network structure
2 研究方法
2.1 卷积神经网络构建
卷积神经网络是深度学习在图像领域的重要算法之一,网络结构分为输入层、卷积层、池化层、全连接层。输入层可以直接作用于原始输入数据Xi(i=1,2,…,R),对于输入是图像来说,输入数据即图像的像素值。卷积层是特征提取层,包括两部分:第1部分是真正的卷积层,卷积层主要作用是提取输入数据的特征。卷积层的卷积核数量越多意味着提取到的特征越多,以及计算量的增加。第2部分是池化层(pooling),其主要目的是在保留有用信息的基础上减少数据处理量,加快训练网络的速度。卷积层计算公式为
(7)
式中W——卷积核X——输入张量
i、j——张量坐标值
m、n——卷积核坐标值
不同于一般神经网络[19],卷积神经网络将每层的点乘运算改成卷积或池化运算,同时拥有局部感知能力,在数据量足够的条件下分类效果很好[20],仿真得到的数据量满足卷积神经网络的要求,故选择卷积神经网络进行预训练。
仿真双层生物组织模型共得到150万幅光亮度分布图,由文献[15]可知,距中心点1~11像素为品质探测时的源探距离,将探头放在这一部分进行探测时效果最好,即此范围为探测时的感兴趣区间。故为了使训练效率更高,使用光亮图中距中心点1~11像素的部分作为输入数据。以5∶1的比例随机划分训练集与测试集,将训练集输入预设网络进行训练,调整每层卷积核数目,得到最佳分类准确率。卷积神经网络的训练基于深度学习框架TensorFlow1.14.0,Python版本为3.7,实验环境为AMD Ryzen 7 2700X Eight-Core Processor 3.7 GHz, NVIDIA GeForce RTX 2080 Ti显卡。最终得到的网络结构如图7所示,模型学习率为0.000 1,批次为242,总迭代次数2 000次,第1层卷积层使用40个2×2卷积核对图像进行卷积,卷积核移动步长为1,卷积方式采用valid,第2层卷积层和第1层参数相同,第3层为池化层,采用2×2平均池化。第4层使用30个3×3卷积核,卷积核移动步长为1。第5层和第6层均使用20个2×2卷积核,卷积核移动步长为1。全连接层将第6层网络的输出拉成60×1的一维向量,最后一层为网络输出层。
2.2 Pretrain-finetune模型迁移
卷积神经网络可以自动对数据进行特征提取,以局部全治共享的特殊结构对图像处理有着独特的优越性,但是传统卷积神经网络的训练需要大量有监督的训练样本作为输入才能获得较高分类准确度。基于模型的迁移学习方法可以将在数据量大的源数据集上预训练的深度神经网络权值参数迁移到与源数据集相似但数据量小的目标数据集上,对于不能共享特征及权值参数的深层网络,再进行网络微调,实现良好的迁移学习分类效果。迁移学习示意图如图8所示。
图8 模型迁移示意图Fig.8 Transfer learning process
本实验中点光源高光谱图像和仿真光亮度分布图的分布相同,故可以使用模型迁移的方法使用实测小数据集进行训练[21],实验采集到200个苹果的高光谱点光源图像共4 000幅,并用光学特征参数作为标签,将高光谱图像以3∶1的比例划分为训练集和测试集,将使用仿真数据训练好的卷积神经网络结构和权值取出,此时预训练模型已经提取出仿真数据的特征,通过固定底层权重、仅调节高层权重的方式对网络进行微调,找到最理想的微调深度。迭代2 000次后生成新的模型,由于此模型是基于CNN网络结构迁移而来,故称之为Tran-CNN模型。
2.3 对比算法
选择的对比算法为3种较为成熟的多标签分类算法,分别是基于神经网络改进的BP-MLL、基于支持向量机改进的RankSVM和基于K邻近的ML-KNN算法,BP-MLL算法[22]是一种利用反向传播神经网络处理标签分类的方法,通过梯度下降与误差反向传播策略相结合来实现全局误差函数的最小化,时间消耗较小,ML-KNN[23]利用最大后验概率准则确定测试样本的标签集合,是一种懒惰学习算法,性能常常较其他算法更稳定。RankSVM[24]将排序问题转换为pairwise的分类问题,然后使用SVM分类模型进行学习并求解,具有较小的经验误差。
3 实验结果与分析
3.1 光学参数敏感性比较
为考察果肉和果皮吸收系数和散射系数的变化对光子的传输影响,固定其余参数,计算当单一变量发生变化时,进入组织和最后逸出组织的光子比例,结果如图9所示。
图9 逸出光子比例和光学特征参数关系Fig.9 Relationships between ratio of escaped photons and optical characteristics
从图9可以看出,当果皮的光学特征参数发生改变时,逸出光子百分比在74%上下波动,波动变化较小,由于果皮层厚度较小,光子在果皮层中的传播路径较短,逸出光子携带的果皮层信息很少。故果皮内光学参数的变化对光子传输的影响较小。而当果肉的光学特征参数发生改变时,逸出光子百分比明显变化较大,且变化趋势呈现一定的规律性。这表明在果肉中,光学特征参数对光子传输影响更大,且由于品质检测的主体为水果组织的果肉部分,所以对果肉中的光学特征参数反演结果更有研究价值。
3.2 仿真数据反演结果
使用仿真数据集进行训练时网络收敛图和光学参数的测试集反演准确率变化曲线如图10所示。最终反演结果如表1所示。
图10 卷积神经网络训练结果(仿真数据)Fig.10 Training results of convolutional neural networks (simulation data)
从图10a可以看到,损失值曲线在迭代750次以后逐渐趋于平稳。由表1可以看到,果肉的光学特征参数反演结果较稳定,均达到了85%以上,而果皮光学特征参数的反演结果却呈现较为极端且不稳定的情况,果皮吸收系数反演准确率只有67.53%,而果皮散射系数反演准确率却达到了91.24%,这是因为仿真模型中果皮的厚度设置与实际果皮厚度相比较薄,光子在果皮中运输携带的有效信息较少。而实际果皮在不同区域的薄厚程度有微小变化,反而使得光子携带有效信息相对较多。因此将主要考查对象选定为果肉光学特征参数。
表1 仿真数据光学参数反演准确率 Tab.1 Optical parameter inversion accuracy using simulation data
3.3 实测数据反演结果
使用实测高光谱数据集进行训练时的网络收敛示意图和4个光学参数的反演准确率变化曲线如图11所示。最终反演结果如表2所示。
图11 卷积神经网络训练结果(实测数据)Fig.11 Training results of convolutional neural networks(actual measurement data)
从图11a可以看到,由于训练数据量较少,模型很快收敛,但是随着迭代次数的增加,损失值会出现波动,最终的训练结果并不理想,且模型鲁棒性很差。由表2可知,除了μa2反演准确率达到80%以上,其他光学特征系数反演准确率均不到80%,可见在数据量较少的情况下,使用卷积神经网络来反演光学特征参数效果并不理想。
3.4 迁移学习结果
Tran-CNN模型对光学特征参数反演结果如图12和表3所示。
从图12a可以看出,迁移以后的模型收敛速度更快,在迭代500次以后趋于平稳。同时对光学特征参数的反演准确率,μa1从67.53%上升到87.26%,提升了19.73个百分点;μa2从86.23%上升到90.53%,提升了4.3个百分点;μs1从91.24%下降到86.66%,减少了4.58个百分点;μs2从86.30%上升到87.57%,提升了1.27个百分点。由于主要考察对象为果肉的光学参数反演准确率,迁移后的模型比预训练模型的反演准确率分别提高了4.3个百分点和1.27个百分点,由此可见预训练模型提取到的果肉光学特征参数深度特征较成功地迁移到本文实测小数据集上。
表2 实测数据光学参数反演准确率Tab.2 Optical parameter inversion accuracy using actual data
图12 Tran-CNN训练结果Fig.12 Training results of Tran-CNN
表3 模型迁移光学参数反演准确率Tab.3 Model transform optical parameter inversion accuracy
3.5 结果对比
将仿真数据集和实测数据集在卷积神经网络上的反演结果与迁移学习后的反演结果进行对比,同时选择了3种常用的多标签分类算法,在实测数据集上进行反演,结果如表4所示。
表4 不同模型下的光学参数平均反演准确率 Tab.4 Optical parameter inversion accuracy by different models %
由表4可知,使用仿真数据集进行训练时,果皮的反演准确率出现了较为极端的情况,导致果皮中散射系数反演准确率相当低,而散射系数反演准确率却达到了91.24%,出现这种情况的原因是仿真数据中不存在噪声,故模型鲁棒性不够高。相比较仿真数据,实测数据的4个光学参数反演准确率较
平均,但是从数值上来看,实测数据反演效果并不好,这是数据集较小造成的。而迁移学习后由于在原来仿真数据的基础上加上了实测数据中的噪声,使得模型鲁棒性得到了提升,并且反演效果比仅使用实测数据进行训练得到了很大的提升。由此可以看出,迁移学习很好地结合了两类数据的优点,BP-MLL的反演效果最差,ML-KNN性能较好,但是仍不如Tran-CNN,基于迁移学习方法得到的Tran-CNN模型对苹果组织光学特征参数的反演准确率明显高于其他几种光学参数反演模型。由于光学参数反演需要依赖大量数据,在数据量不足的情况下其他模型的准确率较难提升,故而利用仿真数据进行模型预训练的方法为水果领域内的光学参数反演提供新的思路。
4 结论
(1)提出了一种基于迁移学习的苹果果实光学特征参数反演方法,解决了传统算法中因为样本不足而导致反演准确率无法提升的问题。
(2)对传统的基于蒙特卡洛模拟光子传输的MCML模型进行了简化,构造了仿真双层生物组织模型,模拟产生大量点光源光亮分布图,将模拟数据作为输入来训练卷积神经网络,最后,将预训练模型迁移到实测小样本数据集上进行微调,得到最终模型。
(3)实验表明,利用仿真数据进行模型预训练可以加快收敛速度,同时提高在实测小样本数据上的反演准确率,训练得到的模型较其他反演算法准确率更高。预训练模型良好的可迁移性可以减少实际测量的数据。