苹果轻微机械损伤高光谱无损检测Stacking集成学习模型构建
张悦1,2, 李扬1,2, 宋月鹏1,2,*
1.山东农业大学机械与电子工程学院, 山东 泰安 271018
2.山东省园艺机械与装备重点实验室, 山东 泰安 271018
*通讯作者 e-mail: uptonsong@163.com

作者简介: 张 悦, 1992年生,山东农业大学机械与电子工程学院博士研究生 e-mail: 1964360182@qq.com

摘要

为了无损伤地检测苹果轻微机械损伤, 以我国最为常见的富士苹果为研究对象, 利用高光谱成像技术, 采集了完好、 刚损伤及损伤后1、 3、 6和24 h的样品光谱信息。 采用竞争性自适应重加权算法与连续投影算法分别提取苹果高光谱数据的特征波长, 并使用最小噪声分离变换方法对所选特征波长图像进行数据压缩, 用以后续研究。 采用随机森林(RF)、 支持向量机(SVM)、 光谱角算法(SAM)作为第一层训练器, 以逻辑回归算法(Logistic)作为第二层训练器, 建立了新的Stacking模型, 以提取苹果的轻微损伤区域。 通过建立训练集、 预测集并与第一层训练器中三个单一算法对比的方式, 对其性能进行评估, 结果表明: (1)损伤果品的分类检测, Stacking模型对于损伤的样本, 检测正确率达到了100%, 对于完好样本检测正确率为96.67%, 整体检测正确率为99.4%, 表明该模型能有效地适用于不同损伤程度的苹果损伤分类检测。 (2)损伤区域的检测, Stacking模型与其他三种单一的算法进行对比发现, 对于刚出现损伤的果品, 支持向量机算法以及光谱角算法的分类精度较差, 均低于60%, 随机森林算法分类精度相对较好达到了75%以上, 而Stacking模型分类精度对损伤和未损伤果品区域的分类精度分别达到了90.2%与92.3%; 对于损伤1~6 h的果品, Stacking模型的分类精度对于两种果品区域的分类精度均达到了92%以上, 明显优于其他分类模型; 对于损伤24 h的果品, 4种模型差距不大均具有比较良好的分类效果, 均达到97%以上的分类精度, 表明Stacking模型能相对准确地提取苹果轻微损伤区域, 对高光谱的果品损伤研究具有较高的参考价值。

关键词: Stacking; 高光谱; 苹果; 机械损伤; 无损检测
中图分类号:TP751.1 文献标志码:A
Nondestructive Detection of Slight Mechanical Damage of Apple by Hyperspectral Spectroscopy Based on Stacking Model
ZHANG Yue1,2, LI Yang1,2, SONG Yue-peng1,2,*
1. College of Mechanical and Electrical Engineering, Shandong Agricultural University, Taian 271018, China
2. Shandong Province Key Laboratory of Horticultural Machinery and Equipment, Taian 271018, China
*Corresponding author
Abstract

To detect minor mechanical damage to apples without damage, the most common Fuji apple in China was used as the research object. The spectral information of intact, just damaged and 1, 3, 6 and 24 h after damage were collected using the hyperspectral imaging. Competitive adaptive reweighted sampling and continuous projection algorithms were used to extract the feature wavelengths of apple hyperspectral data. The extracted feature wavelength image data were compressed using the minimum noise fraction transform to study damage detection of Fuji apples. Taking random forest, Support Vector Machine, and Spectral Angle Mapper Classifier algorithm as primary learners and logistic regression as secondary learners, a new Stacking model, is established to extract the slight damage area of the apple. Its performance is evaluated by establishing a training set and prediction set and comparing it with three single algorithms in primary learners. The results show that: (1) for the classification detection of damaged fruits, the detection accuracy of the stacking model for damaged samples is 100%, for intact samples, the detection accuracy is 96.67%, and the overall detection accuracy is 99.4%, indicating that the model can be effectively applied to the classification detection of Apple damage in different damage periods. (2) The stacking model is compared with the other three single algorithms for detecting damaged areas. It is found that for the newly damaged fruits, the classification accuracy of the support vector machine algorithm and the triangular algorithm is poor, both of which are less than 60%, and the classification accuracy of the random forest algorithm is relatively good, reaching more than 75%, The classification accuracy of stacking model for damaged and undamaged fruit areas reached 90.2% and 92.3% respectively. For the fruits damaged for 1~6 hours, the classification accuracy of the stacking model for the two fruit regions reached more than 92%, which was significantly better than other classification models. For the fruits damaged for 24 hours, there is little difference among the four models, all of which have a good classification effect, and all of them have a classification accuracy of more than 97%, indicating that the stacking model can extract the slightly damaged area of Apple relatively accurately. It has a high reference value for the follow-up study of fruit damage based on Hyperspectral.

Keyword: Stacking; Hyperspectral; Apple; Mechanical damage; Nondestructive testing
引言

苹果在采摘、 运输、 分检过程中经常容易出现轻微的碰撞, 轻微损伤和正常组织的颜色差异不大, 在初期肉眼很难识别, 随着时间的推移, 损伤区域会进一步褐变甚至腐烂[1]。 因此, 寻求一种快速、 高效地损伤检测方法, 对果品质量进行鉴定具有十分重要研究意义与实用价值。

国内外许多学者对苹果碰伤的无损检测进行了研究, 研究结果表明使用计算机视觉技术对水果轻微损伤检测的精度不高[2]。 近年来, 随着高光谱技术的发展, 因其无损伤、 信息量大、 检测准确度高等优点, 被广泛应用于果品品质的检测[3, 4]。 2015年Ferrari等采用超光谱图(Hyperspectrogram)的方式将三维高光谱图像转换为二维数据矩阵, 然后采用偏最小二乘辨别分析的方法检测苹果损伤区域并取得了较好的效果[5]。 2016年Zhu等利用高光谱信息建立了苹果损伤敏感性的偏最小二乘模型, 结果表明, 各冲击能量水平的模型对损伤敏感性均具有较好的预测性能[6]。 2014年Rivera等以芒果为样品, 比较了五种方法在选定波长下分割多光谱图像, 最终选用K邻近算法对完好和受损像素进行了分类, 正确率达到98%[7]。 2018年车文凯等获取了损伤苹果的高光谱图像, 使用主成分分析(principal component analysis, PCA)方法进行数据压缩并通过分析建立射频模型的方式, 筛选出与碰伤区域相关的675和960 nm两个特征波段, 同时通过多种算法比较, 表明随机森林(random forest, RF)算法比其他算法更适合苹果瘀伤的分类[8]。 由此可见, 高光谱成像技术应用于苹果碰伤的检测已经取得了较好的效果, 但对苹果碰伤后能够立即检测出机械轻微损伤的难度仍然较大, 精度依旧不高, 且对损伤区域面积精确提取的研究相对较少, 这是由于苹果轻微机械损伤的初期, 果品的内部化学成分几乎没有变化, 导致了损伤区域与完好区之间光谱差异较小, 使得苹果碰伤的部位与苹果完好区很难完全区分开来。

针对上述情况, 以富士苹果为研究对象, 采集了苹果碰伤后0、 1、 3、 6和24 h的光谱信息, 采用竞争性自适应重加权与连续投影的特征波长提取方法, 利用最小噪声分离变换进行数据压缩, 提出了一种苹果轻微损伤的鉴别模型Stacking, 并对其准确性做出了评估。

1 实验部分
1.1 样品制备

2020年9月, 在山东省泰安市新时代超市挑选了60个同一批次的大小、 颜色、 形状均差异不大且表面无明显损伤的新鲜苹果, 直径均约为6~7 cm。 使用LX-A型号的日本三量硬度计测得硬度约为: 7.8 kg·cm-2; 使用RY-107型号的韧跃糖度计测得糖度约为: 16.3%。 在苹果被运送到实验室后, 苹果在常温(约20 ℃)条件下编号并保存至试验结束。

1.2 碰撞实验

苹果轻微损伤的碰撞试验的设计如图1所示。 将直径为20 mm的金属小球从50 cm的塑料直管顶端自由下落碰击苹果使苹果损伤。 采集刚损伤苹果果梗面, 侧面以及果鄂面的高光谱图像; 将损伤后的苹果在常温下(温度约20 ℃, 湿度55%)静置1、 3、 6和24 h后又逐一采集果梗面, 侧面以及果鄂面的高光谱图像。

图1 高光谱成像系统与苹果损伤试验图
1: 金属小球; 2: 塑料直管; 3, 9: 苹果; 4: 支架; 5: 置物台; 6: 相机; 7: 镜头; 8: 光源; 10: 托盘; 11: 上位机
Fig.1 Hyperspectral imaging system and apple damage test
1: Small metal sphere; 2: Plastic tube; 3 and 9: Apple; 4: Holder; 5: Platform; 6: Camera; 7: Lens; 8: Light source; 10: Tray; 11: Computer

1.3 高光谱系统的搭建

用于采集光谱信息的相机型号为SOC710, 照明使用的设备为2盏100 W可调钨卤灯; 数据采集使用的软件为HyperScanner2.0。 为使采集数据可靠, 在高光谱相机每次数据采集时保持环境一致。 该相机采集的光谱范围为: 376~1 011 nm, 分辨率为4.68 nm, 波段为: 128个。 一个波段像素为: 520×696。

1.4 光谱校正

为了去除因操作、 环境影响等产生的电子噪声, 需要依据公式对采集的光谱图像进行校正[9]

I=IR-IDIW-ID(1)

式(1)中, IR为原始高光谱图像, IW为标准白板获取的光谱图像, ID为全黑光谱图像, I为校正后的光谱图像。

校正后的苹果光谱曲线如图2所示, 可以看出, 苹果完好的区域与已经损伤区域的光谱曲线整体较为相似, 且均出现两个波谷, 这可能是由于果品中叶绿素变化和水分含量变化引起。 果品碰伤后, 样品损伤处的反射率逐渐下降, 原因可能是: 苹果受到碰撞导致了果品表面及内部细胞组织变化, 造成光的散射减弱, 样品组织的光学密度下降[10]

图2 完好与损伤样本的平均光谱Fig.2 Average spectra of intact and damaged samples

1.5 特征波长提取

竞争性自适应重加权算法(competitive adaptive reweighted sampling, CARS)与连续投影算法(successive projections algorithm, SPA)具有计算速度快、 筛选的特征变量少等优点在光谱提取特征波长方面有着广泛的应用。

1.5.1 竞争性自适应重加权算法特征波长提取

竞争性自适应重加权算法是一种基于蒙特卡罗采样和PLS(偏最小二乘)回归系数的特征波长选择方法[11], 具体步骤分为:

(1)利用蒙特卡罗采样筛选出的校正集样本构建相应的偏最小二乘模型;

(2)计算本次采样时波长回归系数绝对值的权重并剔除绝对值较小的变量, 剔除后的变量数量用指数衰减法(exponentially decreasing function, EDF)进行判定;

(3)根据其余变量利用自适应重加权采样筛选出波长并构建PLS模型, RMSECV最小值PLS模型所对应波长即为所筛选出的特征波长。

图3为CARS方法选择特征波长过程, 设置运行次数为50次, 当运行次数为23次时, 选取波段数为20个, 占波长总量的15.6%。

图3 CARS特征波长选择图Fig.3 Characteristic wavelength selection of CARS

1.5.2 连续投影算法特征波长提取

连续投影算法是目前优选特征波长的一种常用方法。 这种算法先在光谱数据中任意选取一波长, 再把此波长向其余波长进行投影, 并对比其投影量, 随后将投影量最多的波长代入波长组合。 重复以上步骤, 挑选某一数量的波长, 每个新选波长和前面波长之间线性关系最弱, 最终依据校正模型来确定最优特征波长[12]

图4为利用SPA方法选择出的特征波长分布图。 选择波长数范围为N=5~30, 从128个波段中优选出471、 486、 506、 521、 596、 611、 711、 741、 751、 766、 791、 821、 831、 851、 876、 896、 916和966 nm, 共18个波段, 与CARS提取的特征波段共有5个重复波段。 综合上述两种特征波长提取方法, 共筛选出33个波段参与后续建模。

图4 SPA方法选择特征波长分布图Fig.4 Characteristic wavelength distribution of SPA

1.6 最小噪声分离变换

最小噪声分离变换(minimum noise fraction, MNF)的主要步骤为: 设高光谱图像的每个观测信号为z, 若假定噪声信号与理想状态下的信号不相关, 则有

z=s+n(2)

式(2)中: z为原始观测信号; n为噪声信号; s为理想状态下的信号。

首先采用低通滤波的方式从原始图像z中分离出图像噪声n, 并计算出z的协方差矩阵z, 和n的协方差矩阵n。计算的特征值λ和特征向量u, 使得特征值满足λ1λ2λL, 其中L为高光谱图像的波段数, 则MNF变换可表示为

y=uTz(3)

与PCA变换相比, MNF变换按照信噪比从大到小排列, 而不像PCA变换按照方差由大到小排列, 从而有效减少了噪声对影像质量的影响。

前几个MNF图像包含了大部分最小噪声分离变换后的信息。 为了选择适当的MNF图像数量, 计算前六个MNF图像的特征值, 如图5(a)所示。 第一个主成分的特征值达到88.2%, 前四个MNF图像的特征值占图像信息的99.01% , 包含了图像信息的主要成分。 而在第五、 六个MNF图像信息量只占累计信息量的不到1%, 且由图5(b)可知, 图像MNF4中有较为清晰的识别损伤区域, 有利于损伤区域的提取, MNF5, MNF6及之后图像均以噪声为主, 模糊不清。 因此只保留前4个MNF图像的信息。

图5 最小噪声分离变换图像Fig.5 Images after minimum noise fraction transform

1.7 分割方法

首先对利用最小噪声分离变换后的数据进行ROI选择并标记, 选取25×25的像素作为标记大小, 分为损伤区域与完好区域, 根据所选变换后图像的平均像素数据, 将所选择的ROI中的所有像素点的光谱均参与建模。

将感兴趣区域下每个完好区域的像素光谱与损伤区域像素光谱提为数据集, 并作为数据集DS展开。 为了尽可能保证分类模型的准确性, 将DS分割为训练集和测试集, 比例为5∶1。

1.8 Stacking模型测试与对比

为了达到更好的分类效果, 测试了4种分类算法分别为: 随机森林(决策树数量为100)、 支持向量机(RBF核参数g=0.01, 惩罚参数c=100)、 光谱角(阈值α=0.12), 以及本文模型Stacking。

Stacking模型是WOLPERT开发, 将多个训练器分层组合的学习方法[13]。 首先利用交叉验证将原始数据变换成新特征, 并在此基础上利用第二层训练器训练新特征。 与传统模型不同的是, Stacking模型结合了不同的基础训练器来实现新模型的构建[14]

如图6所示, 利用Stacking模型对苹果轻微损伤进行检测的步骤主要分为:

(1)将分割好的训练集和测试集, 利用交叉验证的方式在第一层训练器中进行训练;

(2)每个第一层训练器中的模型进行训练后, 在测试集上得到相应的预测值;

(3)将第一层训练器中的结果输入到第二层训练器中作为新的特征量进行训练并得到最终的分类结果。

图6 Stacking模型图Fig.6 Stacking model

Stacking模型具有鲁棒性强、 迁移能力强等特点, 而第一层训练器内模型性能对于Stacking模型预测结果影响很大, 因此在第一层训练器内选取学习能力强、 差异度大的模型做第一层训练器能够改善预测结果[15]。 其中随机森林利用引导聚集算法学习, 能力突出、 数学理论严密; 支持向量机具有较强的泛化能力、 在处理高维度回归问题上有优势; 光谱角算法由于训练效率高而在光谱分类中有较多的应用。 第二层分类器选用逻辑(Logistic)算法, 因其不仅配合L1正则化还可以进一步防止过拟合、 还具有选择有效特征, 从第一层的训练器中删除不必要的分类器等优点。

正则化的主要目的是控制模型复杂度, 减小过拟合。 采用基本的正则化方法, 在原目标函数中添加惩罚项, 对复杂度高的模型进行“惩罚”。

J˜(ω; X, y)=J(ω; !x, y)+αΩ(ω)(4)

式(4)中: X为训练样本; Y为样本标签; ω 为权重系数向量; J为目标函数; Ω (ω )为惩罚项; α为控制量。

不同的Ω 函数对权重ω 的最优解有不同的偏好, 因而会产生不同的正则化效果。 当Ω(ω)=ω1=iωi, 为L1正则。

综上所述, 经多次实验组合, 最终采用随机森林(random forest, RF)、 支持向量机(support vector machine, SVM)、 光谱角算法(spectral angle mapper classifer, SAM), 3个模型作为第一层训练器, 利用Logistic作为第二层训练器进行融合得到集成模型。

1.9 果品轻微机械损伤区域检测

分别使用CARS与SPA算法分别提取苹果高光谱数据的特征波长, 得到两组特征波长值, 再将这两组特征波长图像组合进行MNF变换, 保留前4幅图像作为数据集, 建立Stacking模型, 并进行逐像素筛查图像中苹果损伤区域, 整体算法流程图如图7所示。

图7 苹果损伤提取算法流程图Fig.7 Flow chart of apple damage extraction algorithm

2 结果与讨论

为了验证上述分类方法的效果, 对苹果整体损伤分类与损伤区域分割均进行有效性验证。

2.1 损伤苹果检测结果

利用Stacking模型分别对30个苹果进行不同时段的损伤检测, 如表1所示。 30个完好样本, 有一个误检; 对于损伤的样本, 检测正确率达到了100%。 完好样本被误检的原因可能是由于拍摄高光谱图像时由光照在苹果表面产生的光斑被错误检测为损伤所造成。 结果表明, Stacking模型能有效地适用于不同损伤时段的苹果损伤检测, 其样本整体检测正确率为99.4%。

表1 损伤苹果检测结果表 Table 1 Test results of damaged apples
2.2 损伤区域检测结果

采用4种不同的分类方法建立模型。 4种模型对苹果完好区域、 损伤区域与平均值的分类精度如表2所示。 由表2可以看出, 4种分类模型对于刚出现损伤的果品, SVM算法以及SAM算法的分类精度较差, 均低于60%, RF算法分类精度较好达到了75%以上, Stacking模型分类精度达到90%以上。 对于损伤1~6 h的果品, Stacking模型的分类精度也高于其他分类模型, 达到了92%以上, 这是由于Stacking模型将前三种算法作为了第一层训练器, 将其结果再次进行分类, 致使其准确率明显优于其他模型。 对于损伤24 h的果品, 4种模型差距不大均具有比较良好的分类效果均达到97%以上的分类精度。 结果表明 Stacking模型能有效地提取苹果轻微损伤区域。

表2 损伤苹果检测结果表 Table 2 Test results of damaged apples
3 结论

(1)采用CARS与SPA分别提取苹果高光谱数据的特征波长, 并对特征波长提取的图像数据进行最小噪声分离变换, 有效地减少了数据量并保留了重要信息。

(2)使用了一种新的Stacking模型用以鉴定苹果的轻微损伤, 并通过建立训练集与预测集的方式, 对算法的性能进行评估, 结果表明, 果品的平均识别率为99.4%。 该算法对苹果早期轻微损伤具有较好的检测性能。

(3)通过建立Stacking模型能较为准确地提取苹果轻微损伤区域其平均准确率达到了95.9%, 为搭建多光谱快速检测平台奠定了基础。

参考文献
[1] Che W, Sun L, Zhang Q, et al. Computers and Electronics in Agriculture, 2018, 146: 12. [本文引用:1]
[2] Cavallo D P, Cefola M, Pace B, et al. Computers and Electronics in Agriculture, 2019, 156: 558. [本文引用:1]
[3] Pan X, Sun L, Li Y, et al. Journal of the Science of Food and Agriculture, 2019, 99(4): 1709. [本文引用:1]
[4] Rivera N V, Gómez-sanchis J, Chanona-pérez J, et al. Biosystems Engineering, 2014, 122: 91. [本文引用:1]
[5] Ferrari C, Foca G, Calvini R, et al. Chemometrics and Intelligent Laboratory Systems, 2015, 146: 108. [本文引用:1]
[6] Zhu Q, Guan J, Huang M, et al. Postharvest Biology and Technology, 2016, 114: 86. [本文引用:1]
[7] Rivera N V, Gómez-sanchis J, Chanona-pérez J, et al. Biosystems Engineering, 2014, 122: 91. [本文引用:1]
[8] Che W, Sun L, Zhang Q, et al. Computers and Electronics in Agriculture, 2018, 146: 12. [本文引用:1]
[9] GUO Zhi-ming, ZHAO Chun-jiang, HUANG Wen-qian, et al(郭志明, 赵春江, 黄文倩, ). Transactions of the Chinese Society for Agricultural Machinery(农业机械学报), 2015, 46(7): 227. [本文引用:1]
[10] SHEN Yu, FANG Sheng, ZHENG Ji-ye, et al(沈宇, 房胜, 郑纪业, ). Shand ong Agricultural Sciences(山东农业科学), 2020, 52(2): 144. [本文引用:1]
[11] Li H, Liang Y, Xu Q, et al. Analytica Chimica Acta, 2009, 648(1): 77. [本文引用:1]
[12] Zhang P, Shen B, Ji H, et al. Food Analytical Method, 2022, 15(5): 1397. [本文引用:1]
[13] Wolpert D H. Neural Network, 1992, 5(2): 241. [本文引用:1]
[14] CHEN Zhi-jun, ZHU Zhen-chuang, SUN Shi-jun, et al(陈志君, 朱振闯, 孙仕军, ). Transactions of the Chinese Society of Agricultural Engineering(农业工程学报), 2021, 52(7): 195. [本文引用:1]
[15] ZHANG Hong-ming, CHEN Li-jun, LIU Wen, et al(张宏鸣, 陈丽君, 刘雯, ). Transactions of the Chinese Society for Agricultural Machinery(农业机械学报), 2021, 52(7): 195. [本文引用:1]