APP下载

基于改进残差网络的黑毛猪肉新鲜度识别方法

2019-09-10王文周侯金波何屿彤辜丽川

农业机械学报 2019年8期
关键词:黑毛新鲜度菌体

焦 俊 王文周 侯金波 孙 裴 何屿彤 辜丽川

(1.安徽农业大学信息与计算机学院, 合肥 230036; 2.安徽泓森物联网有限公司, 亳州 236800; 3.安徽农业大学动物科技学院, 合肥 230036)

0 引言

猪肉在存放过程中,由于酶的作用、微生物污染或宰杀前患病等原因,造成猪肉自溶、腐败分解等变化,导致猪肉新鲜度下降。猪肉成分的分解必然使其营养价值降低,而且参与腐败的微生物和毒素,以及腐败后产生的有毒分解物,可能引起食用者中毒或诱发疾病。猪肉质变是一个渐进过程,受诸多因素的影响。因此快速识别猪肉品质和安全性有助于维护消费者的健康和切身利益。

猪肉品质的评价指标有颜色、质地、pH值、嫩度、新鲜度等,新鲜度反映微生物、理化和生化特性,是评价猪肉品质和安全性的重要指标。猪肉的主要成分(蛋白质、脂肪和碳水化合物)被酶和细菌分解,产生气味;猪肉中的蛋白质将逐渐分解为氢、硫化物、氨、乙基硫醇等,产生包括组胺、酪胺、腐胺和色胺有毒小分子;脂肪分解成醛类化合物和醛酸;碳水化合物分解为醇类、酮类、醛类、烃类和羧酸类酸性气体。在贮藏过程中,这些物质和其他碱性氮化合物一起将影响猪肉的颜色、纹理和形状特征[1-3]。

理化分析挥发性盐基氮(Total volatile basic nitrogen,TVB-N)和微生物种群是猪肉新鲜度检测的常规方法,但是该方法有损、低效和耗时。近红外(Near-infrared ,NIR)光谱具有快速、简单检测肉品性状的能力,将其与计算机视觉(Computer vision,CV)结合评估猪肉新鲜度,已经取得了较好的效果[4-5]。高光谱结合成像技术也在食品品质检测中得到了应用,文献[6-7]利用高光谱图像(Hyperspectral imaging, HSI)技术检测猪肉中细菌总数(Total viable count,TVC),效果良好;文献[8-9]用HSI评估肴肉的新鲜度,也获得了较好的检测结果。多光谱成像(Multispectral imaging, MSI)同样是新型的检测技术,该方法将图像和光谱结合起来,获得检测对象的空间信息和光谱信息[10-15],以实现对猪肉新鲜度高精度的无损检测。文献[16]将MSI与线性算法相结合,检测有氧包装牛肉在不同贮藏温度下的品质状况,结果表明,其对牛肉腐烂等级有较好的分类效果。MSI与线性偏最小二乘回归(Partial least squares regression, PLSR)相结合,检测熟猪肉香肠中需氧平板数(APC)的快速无损检测技术,表现出良好的检测能力[17]。

近红外、高光谱和多光谱检测设备价格高昂,这些设备只能作为一种实验室研究设备。为了满足消费者的需要,研究低成本猪肉新鲜度检测方法尤为重要。

随着深度学习和计算机视觉技术的快速发展,开发基于深度学习和计算机视觉的猪肉新鲜度识别系统成为可能。迁移学习运用在大样本数据集上训练好的模型,再提取小样本特征,为小样本检测对象的识别提供了途径[18-25]。

黑毛猪是淮猪的一个品系,是生长于淮北平原的地方优良品种,由于现有淮猪肉新鲜度图像样本数量较少,因此对其新鲜度的识别较为困难。

针对小样本黑毛猪肉新鲜度识别问题,本文提出一种改进残差网络的黑毛猪肉新鲜度识别模型,以兽医病理生物学与疫病防控安徽省重点实验室多年积累的各类猪肉新鲜度图像为样本数据集(Pork freshness image as data set, PfidSet),并完成分类标注。运用残差网络(Residual networks, ResNet)ResNet-50在该数据集上进行识别训练,构建残差网络ResNet-50的参数模型,然后运用迁移学习和模型微调将训练好的ResNet-50模型迁移到黑毛猪肉图像数据集(Iberico pork image data set,IpidSet)中微调,在黑毛猪肉图像样本较少的情况下,实现黑毛猪肉新鲜度的准确识别。

1 试验数据

1.1 样本制备

黑毛猪肉新鲜度分级的主要依据是微生物菌群总量、大肠菌群和pH值。大肠菌群的计数方法根据GB/T 4789.32—2002《食品大肠菌群快速检验标准》;微生物菌落总数计数根据GB 47892—2010《食品微生物菌落总数测定标准》;pH值根据GB 5009.237—2016《食品测定标准》。因此,黑毛猪肉图像样本的设计思路是:采用正常宰杀、未经冷冻处理的黑毛猪后腿部位肌肉和脂肪组织,拍摄保存为新鲜的猪肉样本图像。把新鲜猪肉样本分为A、B、C共3组。其中A组样本由14块肉组成,每两块放进一个密封袋,共7份;B组样本由12块肉组成,每两块肉放进一个密封袋,共6份;C组样本由10块肉组成,每两块放进一个密封袋,共5份。

将3组样本放进-20℃环境保存,1 d后,拿出标签为A的全部样本放进4℃环境继续保存1 d,再取A组样本中的第1份猪肉样本编号,分别统计其微生物菌群总量和大肠菌群,检测pH值。

然后,从-20℃冷冻的环境中取出保存2 d的B组肉样本放在4℃环境保存1 d后,再取出A组样本中的第2份样本和B组样本中的第1份样本分别编号并统计其微生物菌群总量和大肠菌群,检测pH值。

最后,把C组样本全部从保存3 d的-20℃环境中取出,放进4℃环境保存1 d,再取出A组样本中的第3份、B组样本中的第2份和C组样本中的第1份样本,分别编号并统计其微生物菌群总量和大肠菌群,检测pH值。

以后每天取出A、B、C组各一份猪肉样本,统计微生物总数和检测pH值,全部样本检测需要7 d。不同新鲜度猪肉样本制备流程图如图1所示。

图1 制备不同新鲜度猪肉样本流程图Fig.1 Procedures for preparing pork samples with different freshness

1.2 新鲜度分类标准

依据国家规定,把被检测猪肉的pH值在5.6~6.2之间、稀释度为1/10 000的条件下,微生物菌体浓度在2.46~16.2 CFU/mL之间、大肠菌菌体浓度在3.48~5.97 CFU/mL之间规定为新鲜肉;pH值在6.2~6.7之间、稀释度为1/10 000的条件下微生物菌体浓度在16.8~ 370.43 CFU/mL之间、大肠菌菌体浓度在9.24~ 93 CFU/mL之间规定为次鲜肉;pH值大于6.7、稀释度为1/10 000的条件下微生物菌体浓度在410~3 070 CFU/mL之间、大肠菌菌体浓度在240~1 100 CFU/mL之间规定为腐败肉。

图2 猪肉样本Fig.2 Pictures for pork freshness samples

把次鲜肉微生物菌体浓度在16.2~28.4 CFU/mL之间、大肠菌菌体浓度在5.97~9.2 CFU/mL之间且pH值在6.1~6.3之间规定为次鲜肉一级;微生物菌体浓度在28.4~142 CFU/mL之间、大肠菌菌体浓度在9.2~28 CFU/mL之间且pH值在6.2~6.5之间规定为次鲜肉二级;微生物菌体浓度在142~370 CFU/mL之间、大肠菌菌体浓度在28~93 CFU/mL之间且pH值在6.4~ 6.7之间规定为次鲜肉三级。

把腐败肉微生物菌体浓度在370~1 040 CFU/mL之间、大肠菌菌体浓度在93~240 CFU/mL之间且pH值在6.7~6.8之间规定为腐败肉一级;微生物菌体浓度在1 040~1 420 CFU/mL之间、大肠菌菌体浓度在240~290 CFU/mL之间且pH值在6.8~7.0之间规定为腐败肉二级;微生物菌体浓度1 420~3 020 CFU/mL之间、大肠菌菌体浓度在290~1 100 UFC/mL且pH值大于7.0规定为腐败肉三级。

1.3 样本图像获取与增广

在每次检测黑毛猪肉样本微生物菌体浓度、大肠菌菌体浓度和pH值前,采用高清晰摄像头拍摄被检测样本,拍摄时选择单一背景颜色、光线明亮适中,摄像头背光,拍摄的图片以JPG或PNG格式保存。待试验完成后,根据微生物菌体浓度、大肠菌菌体浓度和pH值,对照1.2节的分类标准,把A、B、C组猪肉样本图像分别标记,归到7个类别的相应类别中。最终把所有7类图像以等级名称命名放在samples文件夹中。7类样本图像如图2所示。

利用边缘的最小外接矩,裁剪样本为224像素×224像素,使之缩小,样本裁剪前后如图3所示,每个样本约11 kB。对样本分别运用仿射变换、透视变换和旋转进行增广处理,其中初始图像7 823幅、增广图像15 604幅。

图3 样本裁剪Fig.3 Cutting samples

2 试验方法

2.1 深度残差神经网络

深度残差神经网络(ResNet)是由残差学习模块重复堆积而形成的一个完整网络[26],由于其引入残差模块,解决模型在训练时的梯度弥散问题,增强了模型的特征学习能力,以及模型的识别性能。残差模块如图4所示。

图4 残差模块Fig.4 Residual module

设x为输入,经过卷积层W1、W2运算后输出为F(x,W1,W2),激活函数为ReLu,因此,残差模块单元的最终输出y可表示为

y=F(x,W1,W2)+Wsx

(1)

式中W1、W2——卷积神经网络1、2层所要学习的权重参数

Ws——将变量x从输入残差模块维度变换到输出维度的方阵

x跨层后与F(x,W1,W2)融合,成为下个残差模块的输入。

当Ws的模为1表示残差模块的输入与输出维度相同;当Ws的模不为1表示残差模块的输入与输出维度不相同,需要通过Ws将残差模块的输入与输出维度变换到相同的维度。当y-x=0,表示为恒等映射;当y-x≠0,表明残差网络只需要学习输入输出的差别部分。深度残差神经网络在训练时,深层的误差通过捷径传播到浅层,减轻梯度弥散现象。ResNet-50被本文选为图像的特征提取器,来学习图像的抽象特征。

2.2 迁移学习

在监督学习方式下,需要大量数据训练残差网络模型,然而,目前带标签的黑毛猪肉新鲜度图像数据较少,难以满足训练深度网络模型的需求。

为了改善黑毛猪肉新鲜度图像识别精度和ResNet-50模型的泛化能力,采用基于中层表达的迁移学习方法,将迁移学习和深度学习结合,先利用PfidSet对ResNet-50网络进行预训练,使其具有抽取图像特征的能力,并将训练好的网络参数作为网络模型的初始参数;然后,改进ResNet-50网络,利用7类黑毛猪肉图像对改进的ResNet-50进行微调,实现黑毛猪肉新鲜度图像自动识别。

2.3 ResNet-50模型的改进

为了使PfidSet训练后的ResNet-50模型更具有泛化能力,采用一个3层的自适应网络取代ResNet-50模型的全连接层和分类层,再运用LReLu-Softplus作为网络的激活函数。

ReLu非线性映射函数为

(2)

图5a为其示意图。当输入x≤0时,ReLu输出0,该单元处于未激活状态。

LReLu线性整流单元的表达式为

(3)

取α=0.01,图5b为其示意图,当输入x<0时,输出负值,神经元仍处于激活状态,避免了神经元的坏死。

Softplus激活函数为

f(x)=ln(ex+1)

(4)

从图5c可见,函数变化平缓,其值与ReLu接近,具有较高的模型识别性能和较好的泛化性,并且其规避了ReLu函数强制性稀疏的缺点。但是Softplus函数存在一个与ReLu—样的问题,即输出偏移现象,这会影响网络的收敛性。

虽然LReLu函数解决ReLu函数会导致神经元死亡的问题,但函数光滑度不高。Softplus函数具有优良的光滑特性,可是该函数的输出偏移会影响网络的收敛性。考虑到LReLu和Softplus函数的特点,结合这2个函数特点,本文设计一种改进的激活函数,即LReLu-Softplus函数,公式为

(5)

图5 激活函数Fig.5 Activation functions

其中α是个常数,接近于0,初始值设为0.25,图5d为其示意图。

本文提出的改进残差网络的黑毛猪肉新鲜度识别模型是基于迁移学习和LReLu-Softplus激活函数的残差网络模型,即Proposed(LReLu- Softplus),其结构如图6所示,其中,M1、M2、M3、M4分别为ResNet-50所示模型中的4个残差块,自适应网络

N1层的神经元有1 000个;N2层有256个神经元;有7个神经元在N3层,每层神经元的激活函数采用LReLu-Softplus,在深度神经网络的训练过程中,加入dropout(“丢弃”)机制,以一定的概率“暂时丢弃”一些神经元,减少神经元之间的依赖性,提高模型的泛化能力,取dropout为0.8。

图6 基于中层表达的迁移学习Fig.6 Transfer learning based on middle-level expressions

3 试验结果及分析

试验软硬件环境主要配置:主板为华硕Z170,CPU为Intel Core i7-6700k,硬盘为三星SSD 950 PRO256GB+希捷ST2000 2.0TB,显卡为GeForce GTX1080,内存为金士顿DDR46 4GB,操作系统为Windows 10企业版,Caffe系统是Windows 10版,模型训练参数见表1。

训练与测试用的黑毛猪肉新鲜度图像数据共有23 427幅,其中初始图像7 823幅,扩展图像15 604幅,如表2所示。

按照4∶1的比例随机分配训练集和测试集,按照9∶1的比例分配训练集与验证集。利用可以度量真实样本分布与预测样本分布差异的交叉熵代价函数,监督本文提出的Proposed (LReLu-Softplus)模型训练,图7为训练时的模型损失率和模型准确率变化曲线,可以发现经过800代遍历,训练和验证集上的模型损失率均趋向零。也可以发现经过800代遍历后,训练集的识别准确率趋向于99.7%,验证集的准确率最高达到95%。可见,本文设计的基于改进残差网络和迁移学习的猪肉新鲜度识别模型具有较好的肉品图像识别性能。

表1 模型训练参数Tab.1 Parameters for model training

表2 初始图像和扩展图像数量Tab.2 Total number for initial and extended images 幅

本文利用混淆矩阵来定量评估猪肉各类新鲜度之间的混淆程度,矩阵的行和列分别代表真实和预测情况,矩阵中任意一个元素xij代表将第i种类别预测为第j种类别的图像数占该类别图像总数的百分比。对角线元素值分别表示各种黑毛猪肉新鲜度识别的准确率,其他位置为错分率。表3为混淆矩阵,分析表3可知,新鲜肉的识别效果最好,具有99%的准确率,次鲜肉三级和腐败肉一级的识别准确率最差,为91%;各类黑毛猪肉新鲜度的总体识别准确率为94.5%,可见,本文设计的Proposed(LReLu-Softplus)模型对黑毛猪肉新鲜度的识别具有较高准确率。

图7 模型损失率和识别准确率变化曲线Fig.7 Changing curves for model loss and recognition accuracy rate

表3 混淆矩阵Tab.3 Confusion matrix %

同时,将Proposed(LReLu-Softplus)模型,与仅使用PfidSet数据集训练的ResNet-50 (PfidSet)模型、仅使用IpidSet数据集训练的ResNet-50 (IpidSet)模型和基于迁移理论与ReLu激活函数的改进ResNet-50模型,即Proposed(ReLu)进行比较,表4是比较结果。表4中模型的识别准确率均是在测试集上获得,分析表4可得,ResNet-50(IpidSet)的识别准确率最差,这是由于IpidSet的样本数量较少;综合表3和表4可知,仅使用PfidSet数据集训练模型会出现过拟合现象。本文提出的Proposed(LReLu- Softplus)模型是利用PfidSet数据集预训练模型,然后迁移到IpidSet数据集上微调模型,优于仅使用PfidSet或IpidSet训练的模型。此外,本文通过对ResNet-50模型的改进,减少了模型的运算量和训练时间,而且模型识别准确性能相对于未改进的ResNet-50模型也有较好的提高。网络中利用LReLu-Softplus激活函数对模型的效率影响,较利用ReLu激活函数明显,模型的识别准确率也有所提高。

表4 模型性能比较Tab.4 Comparison for models performance

4 结束语

为了解决小样本黑毛猪肉新鲜度识别问题,使用PfidSet源数据制作了包含7类各品种的猪肉新鲜度图像数据集,构建基于中层表达的迁移学习模型,利用一个3层的自适应网络取代ResNet-50模型的全连接层和识别层,并使用7类黑毛猪肉图像数据对模型进行微调,实现对7类新鲜猪肉图像的有效识别。试验结果表明,Proposed(LReLu- Softplus)模型适合黑毛猪肉新鲜度识别,各类新鲜度猪肉总体识别准确率为94.5%。

猜你喜欢

黑毛新鲜度菌体
NH4+双阶段发酵控制谷氨酸工艺研究
归寻
菌体蛋白精养花鲢高产技术探析
稻谷新鲜度测定影响因素分析及优化
自然发酵肉制品中乳酸菌的体外降胆固醇特性
可爱的“黑毛球”
你在异性眼中的“新鲜度”
生产中丙丁菌及其常见杂菌的镜检形态研究
基于TTI的冷鲜羊肉新鲜度研究
不同新鲜度金枪鱼肉蒸煮品质的研究