APP下载

基于云计算的食品品质实时在线光谱检测系统实现

2023-11-06刘翠玲闻世震孙晓荣张善哲姜传智殷莺倩

食品科学技术学报 2023年6期
关键词:小麦粉光谱仪面筋

刘翠玲, 闻世震, 孙晓荣, 张善哲, 姜传智, 殷莺倩

(北京工商大学 人工智能学院/食品安全大数据技术北京市重点实验室, 北京 100048)

目前,近红外光谱技术已广泛应用于食品、药品、农产品等领域的无损检测中。微型便携式近红外光谱仪因体积小、价格低等优点,逐渐在食品安全领域中得到普及和应用[1-3]。随着便携式光谱仪集成化程度的提高,该类产品实现了数据采集、处理和得到结果显示一键式操作等系统功能。虽然该类产品对特定物质有较高精度的采集和分析能力,但是现有产品存在设备成本高、模型可扩展性较差和适用场景单一的问题,不适用于多目标场景的食品品质实时在线检测和分析。

近年来,云计算及其服务在诸多领域得到了广泛应用[4-6],尤其是云服务器使用成本降低,提高了各领域基于云计算服务的开发效率。云计算融合了分布式计算、网格计算、虚拟化、网络存储等计算机网络技术的特点[7],在移动计算方面有着显著优势。基于云计算的便捷、可扩展、廉价等优势,结合光谱分析技术,通过部署食品光谱模型到云计算中心,实现模型资源云端共享;同时云计算中心高性能服务器高效率的计算能力,为食品品质实时在线检测分析提供了服务支撑。

国内外基于近红外光谱技术的食品品质检测相关研究较多[8-10],针对云计算与光谱检测技术的结合在国内外也有研究。李庆等[11]利用云端互联便携式近红外技术结合化学计量学方法对名贵药材西红花与其常见伪品和掺伪品进行了现场快速真伪鉴别及掺伪量的定量预测。王林惠等[12]设计了一套基于深度卷积神经网络的柑橘虫害实时检测系统,实现了柑橘虫害的快速准确识别。Muller-Maatsch等[13]提出了对每种食品或目标化合物,使用机器学习和深度学习策略的数据融合方法,对光谱数据进行云端分析。目前,云计算在光谱检测技术的应用研究主要是使用云端系统对单一对象检测分析,提高了检测分析的便捷性,但缺乏对云端光谱分析系统的设计结构和实现过程的整体描述,对于系统的模型扩展性和光谱资源共享功能关注较少。

基于云计算技术和光谱分析技术的优势,以食品品质多场景实时在线检测为目的,本研究拟构建以云计算服务为中心的光谱实时在线检测系统。以小麦粉面筋为例,建立定量分析模型并部署到云端,以手机终端作为数据传输媒介,完成光谱数据采集上传和分析结果可视化,验证系统的可靠性。希望提供一种云端部署模型实现光谱实时在线分析方案,为多场景下食品品质快速无损检测提供平台和技术支撑。

1 光谱实时在线检测系统功能设计

1.1 系统架构

光谱实时在线检测系统是以模型复用和光谱数据共享为最终目的的开放式服务平台。通过系统中已经建立的模型,对实时采集的光谱数据进行快速分析,为现场无损快速检测提供有力支持。系统整体架构自下而上分别为设备层、客户端层和云服务层。系统架构如图1。

图1 光谱实时在线检测系统架构Fig.1 Architecture of spectral real-time online detection system

在设备层中,便携式光谱仪负责采集光谱数据,使用通用串行总线(universal serial bus, USB)或者低功耗蓝牙(bluetooth low energy, BLE)方式与客户端通信,由客户端进行管理控制。在客户端层中,移动设备作为数据传输媒介,通过无线网络与云服务器进行通信,实现光谱数据上传和接收光谱数据云端计算结果,而且还可完成本地光谱数据可视化和控制便携式光谱仪设备的功能。在云服务层,硬件系统由云服务器厂商提供,根据系统所需的运算能力和数据存储空间大小,从云服务器厂商获取云服务器作为该系统的基础开发环境,利用模块化开发思想,将光谱算法和建模算法设计为应用编程接口(application programming interface, API),在主程序中组合调用即可完成光谱分析;同时云服务层还包含了数据存储和用户管理,云端部署的模型和参与云计算的光谱数据存放于云服务器的数据库中,根据用户注册身份给予对应的使用权限,管理员可对模型和光谱数据进行增删改查,普通用户可以查询、上传光谱数据和使用模型,光谱模型由管理员负责进行维护更新,保证了系统稳定性。

1.2 系统功能

现有的近红外光谱分析软件大多数是基于离线数据进行分析研究,较少有在线光谱获取和离线光谱分析的结合,进而难以实现实时在线分析,在一定程度上制约了现场快速检测的信息化发展。为了更加符合便携式光谱仪实际检测场景的需求,在现有便携式近红外光谱技术的基础上,增加云服务器作为光谱数据分析系统载体,在云端实现光谱数据分析并返回分析结果。通过将分析功能封装并部署至云端,用户只需在手机终端控制便携式光谱仪采集数据并上传数据至云服务器进行分析处理,即可得到数据可视化的分析结果。系统的主要功能如图2。

图2 光谱实时在线检测系统功能结构Fig.2 Functional structure of spectral real-time online detection system

光谱实时在线检测系统主要功能包括用户基本信息和权限管理;常用的光谱预处理算法管理,如多元散射校正(multiplicative scatter correction, MSC)、标准正态变量变换(standard normal variable transformation, SNV)、Savitzky-Golay卷积平滑(Savitzky-Golay smooth, S-G)等[14];常用的建模算法管理,如主成分回归(principle component regression, PCR)、偏最小二乘回归(partial least squares regression, PLSR)、人工神经网络(artificial neural network, ANN)等[15];光谱数据和光谱模型的上传与下载;光谱数据和模型导入,返回结果评价;光谱数据预处理、建立模型、结果可视化。

2 光谱实时在线检测系统实现

2.1 系统服务端开发

光谱实时在线检测系统的服务端由前端和后端两部分组成。前端系统主要用于用户与服务端交互,简化数据管理和使用。后端系统是光谱实时在线检测系统的核心,用于处理移动端和系统前端发来的请求。前端系统采用HTML、CSS和JavaScript编程语言编写管理界面,使用Vue前端框架实现系统的前后端分离。后端系统开发语言采用Java 8,使用Spring开发框架实现控制反转(inversion of control, IoC)和面向切面编程(aspect oriented programming, AOP)技术,采用SpringMVC开发模式简化开发流程,降低系统的耦合性,便于对系统的功能扩展;使用Java的持久层框架MyBatis简化对输入输出数据的处理;使用Maven项目构建工具自动管理项目依赖包;服务器数据存储使用MySQL 5.7,Web容器采用Tomcat 8.0。光谱实时在线检测系统界面如图3。

图3 光谱实时在线检测系统界面Fig.3 Interface of spectral real-time online detection system

系统主要有原始数据管理、数据分析管理和基础信息管理。原始数据管理模块用于存储实验样本的光谱数据,数据由管理员审核上传,普通用户只可查看和使用。数据分析管理模块负责对光谱数据进行处理,用户可在该模块界面选择需要进行分析的光谱数据、预处理方法和建模算法,在线分析光谱数据并给出可视化的分析结果。基础信息管理模块包括了用户权限、个人信息和上传的文件,由管理员负责更新和维护。

2.2 系统移动端开发

移动端系统基于第三方软件开发工具,在Android平台上开发手机终端应用程序。在Android Studio 4.2软件环境中开发光谱仪通信和网络数据传输服务代码,主要完成控制光谱仪数据采集、设置光谱仪采集参数、光谱仪数据的本地存储、光谱仪采集数据网络传输和解析光谱仪分析系统返回结果。该移动端系统的软件功能流程如图4。

图4 移动端软件功能流程Fig.4 Flow chart of mobile terminal software function

移动端使用JavaScript对象表示法(javascript object notation, JSON)格式作为数据格式,相比较传统的可扩展标记语言(extensible markup language, XML)数据格式,JSON数据格式能直接与服务器端进行交互,压缩数据大小,降低网络的占用带宽。同时移动端采用异步通信模式,降低应用程序的耦合性,提升应用程序与服务器端的通信效率。

2.3 系统云计算服务实现

2.3.1开发环境

系统的开发环境:Windows10 21H1,内存16GB,处理器为AMD Ryzen 7 5800H、阿里云云服务器ECS(1核CPU,2 GB内存,1M bps带宽,40 GB存储空间),服务器操作系统CentOS 7.5。

2.3.2实现方式

云计算服务主要在系统服务端实现,包含控制模块、服务模块和数据通信模块,系统云计算服务实现方式如图5。控制模块用于处理用户按照超文本传输协议(hypertext transfer protocol,HTTP)发送的请求参数,根据请求参数的内容,将光谱数据传递给服务模块中对应的数据处理方法。服务模块是云计算服务的核心,其包含不同种类物质定量分析的业务逻辑代码,根据模型的多项表达式运算规则,提取光谱数据中对应波长点的吸光度数据进行计算,实现物质的定量分析,同时将分析结果数据传递给数据通信模块。数据通信模块用于系统访问光谱模型资源,建立与数据库的通信和打包数据功能,通过将光谱数据的分析结果打包成JSON格式,发送至手机应用程序进行数据解析并可视化,实现系统的云计算服务。

图5 系统云计算服务实现方式Fig.5 Implementation of system cloud computing services

2.3.3云服务部署

云服务部署流程如图6,在获取阿里云ECS服务器后,登录阿里云服务器控制面板,使用ECS服务器账号配置并激活服务器;搭建JDK1.8+Tomcat+MySQL5.7环境,为后续Web项目的运行提供基础条件;使用FinalShell软件在本地建立与云服务器的SSH远程连接,然后使用FTP协议将本地的光谱实时在线检测系统的服务端项目打包上传至云服务器;通过云服务器控制面板配置服务器安全组规则,选择项目所需服务器开放的端口号;最后使用Linux命令运行项目文件,完成系统云服务的部署。

图6 云服务部署流程Fig.6 Flow chart of cloud service deployment

在部署过程中,项目未租用场地放置实体服务器,通过云服务厂商提供的控制面板有助于项目的快速部署,体现了云计算的存储计算资源虚拟化和成本低的特点。另外,云服务器作为云计算服务载体,以付费形式获得额外计算资源,做到了按需付费,为项目后续扩展提供了便利。

3 光谱分析与系统验证

3.1 材料与仪器

实验所用的小麦粉样本均来自北京古船面粉厂不同批次的面粉产品,共计125个。对每个小麦粉样本,按照GB/T 5506.2—2008《小麦和小麦粉 面筋含量 第2部分:仪器法测定湿面筋》,使用面筋仪测得小麦粉面团洗涤后的湿面筋含量;按照GB/T 5506.3—2008《小麦和小麦粉 面筋含量 第3部分:烘箱干燥法测定干面筋》,使用烘箱和干燥器对湿面筋进行干燥,得到小麦粉样本的干面筋含量。本研究中小麦粉样本的面筋含量以干面筋含量为标准,其数值由北京古船面粉厂按照国标方法测定提供。

NIR-M-R2型便携式近红外光谱仪,深圳谱研互联有限公司。

3.2 光谱数据采集

在室内自然状态下使用便携式近红外光谱仪采集小麦粉光谱数据。光谱仪参数设置为:光谱采集波长为900~1 700 nm,积分时间100 ms,扫描次数6次,平滑宽度2.34 nm,曝光时间0.635 ms。采集光谱数据前,使用白板对光谱仪进行校正。采集时,室内温度31 ℃,湿度29%,将采集探头与透明袋装小麦粉样本的平整面接触,每个小麦粉样本采集一次。实验一共采集125组包含228个波长点的小麦粉样本吸光度数据,原始光谱数据如图7。由图7可见,在波长为 1 120、1 300、1 680 nm处有较为明显的吸收峰,其中1 120 nm吸收峰对应C—H键的3倍频吸收带,1 300 nm的吸收峰对应水分中的O—H吸收带,1 680 nm的吸收峰对应蛋白质结构中的N—H吸收带。由于采集光谱数据的环境、样本表面差异等因素影响,光谱重叠现象较为明显,影响预测模型的准确性。

图7 小麦粉样本原始近红外光谱Fig.7 Raw NIR spectrum of a wheat flour sample

3.3 定量分析模型建立

3.3.1模型评价指标的确定

光谱分析模型的评价指标有:均方根误差(root mean square error, RMSE)、相关系数(correlation coefficient,R2)以及相对分析误差(relative percent deviation, RPD)[16]。RMSE越小模型效果越好;R2越接近于1,预测结果越好;RPD大于2表明模型具有良好的预测能力。

3.3.2样本集划分

样本集中会存在差异性较小的样本,包含这些样本建立的校正模型不利于模型的扩展和维护。Kennard-Stone(K-S)算法[17]基于变量之间的欧氏距离,选择距离大的样本为校正集,剩余样本作为预测集,保证了校正集中的样本按照空间距离分布均匀。对采集得到的125个小麦粉样本,按照4∶1比例划分校正集和预测集,划分出100个校正集样本和25个预测集样本。校正集和预测集的面筋含量统计结果如表1,校正集的最大值和最小值分别为36.2%、25.7%,预测集的最大值和最小值分别为31.8%、27.3%,校正集和预测集的平均值相差0.2%,表明样本集经K-S算法划分后的数据分布合理,有助于提高模型的稳定性。

表1 校正集和预测集面筋含量统计结果

3.3.3光谱预处理

为了减少近红外光因小麦粉样本散射水平不同带来的光谱差异,需要对原始光谱进行光谱预处理。采用多种预处理方法进行PLSR建模,结果如表2。由表2可知,使用MSC预处理方法建立的模型效果较好,预测集的R2达到了0.826 4,RMSE达到了0.463 2,RPD达到了2.162 1。MSC通过把所有光谱数据的平均值作为理想光谱,修正光谱数据的基线平移和偏移现象,可以有效消除由于散射水平不同带来的光谱差异,从而增强光谱与数据之间的相关性[18]。经MSC预处理后的光谱如图8,光谱重叠现象大幅减少,1 120、1 300、1 680 nm处的波峰更为明显,有利于提高模型的准确性。

表2 不同预处理方法下PLSR模型的预测集结果

图8 小麦粉样本经MSC预处理后的光谱Fig.8 Spectra of wheat flour samples pretreated by MSC

3.3.4波长筛选

在建立近红外分析模型时,光谱仪器噪声或外界环境因素变化使某些波段下的样本光谱信噪比较低,影响模型稳定性。利用波长筛选选择光谱数据的最优波长进行建模,可提高模型的预测能力和稳定性。使用多种特征波长筛选算法建立PLSR模型,结果如表3。使用竞争性自适应重加权采样法[19](competitive adaptive reweighted sampling, CARS)所建立PLSR模型预测集的R2、RMSE和RPD都优于无信息变量消除算法(uninformative variables elimination,UVE)、连续投影算法(successive projections algorithm,SPA)建立的PLSR模型。CARS算法选取小麦粉面筋的特征波长如图9。由图9可知,当交叉验证均方根误差(root mean square error of cross validation, RMSECV)逐渐减小时,表明光谱无用信息被剔除;当RMSECV逐渐增大时,表明光谱中的有用信息被剔除。因此取50次采样所建立的PLSR模型中对应的最小RESECV作为最优结果,在取样运行次数达到24次时,RMSECV最小。经过CARS算法进行特征波长提取,共选出28个最优波长。

表3 不同特征波长筛选算法PLSR模型的预测集结果

图9 基于CARS算法的小麦粉面筋特征波长选取结果Fig.9 Selection results of characteristic wavelengths of gluten in wheat flour based on CARS algorithm

3.3.5模型建立

对于便携式近红外光谱仪所测得的小麦粉面筋光谱数据,使用MSC+CARS+PLSR算法建立定量分析模型。校正集的R2为0.900 6,校正集的RMSE为0.125 9,预测集的R2为0.870 4,预测集的RMSE为0.182 4,相对分析误差RPD为2.835 1,说明模型对面筋含量有良好的预测能力。校正集和预测集的面筋含量真实值与预测值对比结果如图10。

图10 小麦粉校正集和预测集面筋含量预测结果Fig.10 Prediction results of gluten content of wheat flour gluten training set and test set

3.4 系统测试

将基于MSC+CARS+PLSR算法建立的包含28个波长的小麦粉面筋定量分析模型以表达式形式写入服务端程序中,并重新打包上传至服务器完成模型部署。为了验证光谱实时在线检测系统的可靠性,从北京古船面粉厂不同批次的面粉产品中随机选取与样本集无关的25个小麦粉测试样本,测试样本的面筋含量按照GB/T 5506.2—2008、GB/T 5506.3—2008进行测定,数值由北京古船面粉厂测定提供。

使用便携式光谱仪手机终端,设置光谱仪参数(采集波长为900~1 700 nm,积分时间为100 ms,扫描次数为6次,平滑宽度为2.34 nm,曝光时间为0.635 ms),对测试样本进行光谱扫描,上传测得的光谱数据至云端处理,返回小麦粉面筋预测值和处理用时。系统对单个小麦粉样本的光谱数据分析结果如图11。

在相同网络环境下,使用光谱实时在线检测系统对25个小麦粉测试样本进行检测分析,系统测得的25个小麦粉测试样本结果如图12。25个小麦粉样本的面筋含量预测值与真实值差值范围为0~0.7%,单个样本检测分析平均耗时7.09 s。结果表明,光谱实时在线检测系统预测分析小麦粉面筋含量较为准确且用时较少,验证了系统通过建立分析模型并部署模型至云端,完成实时在线分析是可行的。

图12 25个小麦粉样本的面筋分析结果Fig.12 Gluten analysis results for 25 wheat flour samples

4 结 论

结合云计算技术和光谱分析技术,设计并实现了一个多场景食品品质光谱实时在线检测系统。该系统所使用的便携式光谱仪只需光谱数据采集模块,与集成化程度更高的专用光谱仪相比,能做到体积更小,设备成本更低。使用手机终端将光谱数据上传云端并进行分析处理,不但提高了光谱检测的便捷性,同时还可将分析结果可视化。

1)在云服务器中实现光谱数据分析和模型部署,通过在云端部署不同的分析模型,解决了模型扩展性较差的问题。

2)光谱实时在线检测系统利用云计算高扩展性、使用便捷等优势,弥补了光谱分析扩展性、便捷性上的不足,保证了云端进行光谱分析的可靠性,同时使用云服务器搭建系统环境,降低了光谱模型资源的共享成本。

以小麦粉面筋定量分析验证系统的可靠性,结果表明,系统具有良好的准确性和较快的分析速度,能够满足光谱的实时在线检测分析。希望该系统可为模型资源共享和光谱实时在线检测分析提供一种解决方案,同时为多场景食品品质的快速无损检测提供新的思路。系统分析结果与云端部署模型精度具有较高相关性,本研究所使用的模型准确率还有提升空间,因此后续的模型应持续优化,可采用增加样本量、使用人工神经网络建模等方法提高模型精度。

猜你喜欢

小麦粉光谱仪面筋
小麦粉加工及选购
白俄罗斯延长小麦粉和荞麦出口禁令
SPE-GC法在小麦粉中典型农药残留物测定中的应用
面团变面筋
偏偏是它
面筋包揣肉圆
中阶梯光栅光谱仪自动化波长提取算法
医用显微成像光谱仪的光谱定标技术
双面镜结构成像光谱仪的改进及性能分析
光谱干扰校正软件在ICP-4顺序扫描直读光谱仪中的应用分析