一种基于注意力机制SENet的FaterR-CNN食物分类和GL值识别方法技术

技术编号:27362676 阅读:34 留言:0更新日期:2021-02-19 13:45
本申请公开了一种基于注意力机制SENet的Faster R

【技术实现步骤摘要】
一种基于注意力机制SENet的Fater R-CNN食物分类和GL值识别方法


[0001]本申请涉及食品安全领域,图像识别领域,特别是涉及GL值计算方法。具体的是一种用餐中膳食摄入导致的人体血糖负荷值变化的预测方法。主要针对糖尿病患者这一人群提供血糖负荷参考,建立和改善饮食结构,形成饮食便捷的良性循环。

技术介绍

[0002]现有技术介绍
[0003]糖尿病患者想要测量血糖需先用温水和中性肥皂洗净双手,反复揉搓需要采血的手指,直至血运丰富;用采血笔紧挨指腹,按动弹簧开关,针刺指腹;打开血糖仪开关,取一条试纸插入机内,即可得到血糖值。但这过程不仅非常繁琐,同时局限性也非常高。况且糖尿病患者无须每餐餐后都精准测量其血糖值,对于每餐的食物准确把握其升糖负荷指数,判断食物是否适合自己食用,是否会过分增加身体糖分负荷即可。升糖指数(Glycemic index,GI)是衡量食物摄入后血糖升高程度的一项指标,具体是指含50克碳水化合物的食物与50克葡萄糖在2小时内升高人体血糖水平的百分比,因此数值都是用%来表示。糖尿病患者在考虑食物的GI值的时候,还要考虑食物的升糖负荷(Glycemic load,GL)值,两者结合使用,可反映特定食品的一般食用量中所含可利用糖的数量,能更好地预测食用后对血糖的影响。
[0004]对于食物的识别,目前常用的特征提取技术有尺度不变特征变换(SIFT)、定向梯度直方图(HOG)、Gabor滤波、MR8滤波器和局部二值模式(LBP)等。为了提高食品分类的识别率,通过融合不同的特征向量,开发更复杂的特征描述符。F.Kong等人提出了一种被称为多视角食物识别的技术,即从不同视角拍摄照片,解决了使用单一图像时出现的遮挡和视野受限的问题,通过最近邻分类器(KNN)用于食品分类。与传统机器学习方法相比,卷积神经网络(convolutional neural network,CNN)能够从图像中自动提取表达能力更强的特征,减少识别时间,提高分类和识别的准确率。2014年,H.Kagaya等人发表了一篇基于深度学习的食品识别论文,他们把卷积神经网络(CNN)应用于饮食监测的任务。得出传统方法(SVM)的准确率约为50-60%,而CNN的精度则优于10%;A.Meyers等人提出在ImageNet数据集上应用预先训练好的GoogLeNet执行食物识别;Takumi Ege等人利用Faster-R CNN框架对食物进行识别,取得了较好的识别效果。
[0005]目前国内、国外缺少针对糖尿病患者的将食物识别与GL值估算相结合的方法,为解决上述问题,在本申请中提出将食物识别与GL值相结合,对糖尿病人日常饮食中糖分的获取提供直接参考。减轻患者对于饮食的心理负担,让患者对于日常摄入没有后顾之忧。现有的食物识别中,一般采用CNN进行目标检测与食物分类,但是在光线昏暗等复杂环境中,很难提取到有效的特征或者提取到的特征不够突出,从而影响分类的精度。本专利采用基于注意力机制的Faster R-CNN来进行食物识别和食物分类。常见的CNN处理过程中,受限于局部小视野信息,而使用注意力机制使特征提取网络能使用全局信息;ResNet中的残差块
的使用令网络中上一层残差块的信息可以顺利进入到下一个残差块中,避免因为网络深度增加,而导致的梯度消失和退化。

技术实现思路

[0006]本专利技术的目的是提供一种基于注意力机制SENet的Fater R-CNN网络进行目标检测并进行食物分类和食物升糖负荷(Glycemic load,GL)值计算的方法,用于解决在
技术介绍
中所述的问题。
[0007]第一步,制作食物识别和分类的数据集:在图片集Food-101和图片集FooDD上制作神经网络需要的VOC格式的xml文件。这些xml文件包含了图片中食物的边框标注,食物的类别标注和参照物边框标注。
[0008]第二步,制作计算食物体积的数据集:在图片集Food-101和图片集FooDD上制作适用于计算食物体积的VOC格式的数据集。这些xml文件中包含参照物的体积和食物的体积。
[0009]第三步,将VOC格式的xml文件转换为神经网络需要的txt文件。
[0010]第四步,用户需要通过移动设备获取食物的主视图和俯视图。例如,用户通过Android手机、iPhone或者其他终端拍照获取食物照片。在用户端将图片尺寸调整到600*1000像素大小。之后就是将照片上传到本专利技术中的服务器进行处理。服务器获得用户上传的图片后,进行食物识别和分类,并将食物类别信息、GL值以及食物可食用指示灯信息附于食物主视图中反馈给用户。<图1>讲述了用户和服务器之间的信息的传送过程。
[0011]第五步,服务器获得用户上传的图片后,先检查用户上传的图片尺寸是否符合600*1000像素的限制。如果不符合,那么对图像进行调整,限制短边等于600像素,长边等于1000像素。
[0012]第六步,服务器使用Faster R-CNN进行食物识别和分类。Faster R-CNN可以使用常见的卷积神经网络(Convolutional Neural Networks,CNN)进行特征提取。例如AlexNet,Inception,ResNet,VGG16等都是常见的卷积神经网络。本专利技术使用包含注意力机制SENet的ResNet进行特征提取。ResNet有两个基本的结构:Conv Block和Identity Block。残差网络的设计可以有效避免网络因为深度增加而产生学习效率变低和无法提高准确率的问题。在本专利技术中向Identity Block添加注意力机制SENet。<图7>介绍了含有注意力机制的Faster R-CNN结构。<图6>为<图7>中进行特征提取的包含注意力机制SENet的ResNet网络结构。该卷积神经网络包含了<图3>介绍的Conv Block和<图5>介绍的SEIdentity Block。<图4>为Identity Block的结构。注意力机制使特征提取网络能使用全局信息,而不受限于局部小视野信息。最后输出一个共用特征层。ResNet中的残差块的使用令网络中上一层残差块的信息可以顺利进入到下一个残差块中,可以有效避免由于网络深度增加所引起的梯度消失和退化问题。
[0013]第7步,计算食物的体积。将第6步识别出来的食物的位置和种类,和识别参照物的位置当作计算食物体积的线性回归模型的输入。线性回归模型计算出食物的体积。
[0014]第8步,根据食物的类别、密度、GI值、每百克碳水化合物含量数值表和食物的体积,计算出食物的GL值。根据食物GL值数值表判断食物为高、中、低GL食物,生成食物可食用指示灯。<图2>讲述了服务器处理食物图像的流程图。
[0015]第9步,服务器将食物类别和GL值本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于注意力机制SENet的Fater R-CNN食物分类和GL值识别方法,其特征在于,包括如下所述内容:步骤1,制作食物识别和分类的数据集:在图片集Food-101和图片集FooDD上制作神经网络需要的VOC格式的xml文件。这些xml文件包含了图片中食物的边框标注,食物的类别标注和参照物边框标注。步骤2,制作计算食物体积的数据集:在图片集Food-101和图片集FooDD上制作适用于计算食物体积的VOC格式的数据集。这些xml文件中包含参照物的体积和食物的体积。步骤3,处理步骤1和步骤2中的数据集:将步骤1处理后的不同食物类别的图像文件放在/classification/JPEGImages文件夹中;将步骤1中生成的含有标注信息的xml文件放在/classification/Annotations文件夹中;在/classification/ImageSets/Main文件夹中新建train.txt、trainval.txt、val.txt和test.txt文件。这四个文件分别对应训练集、训练和验证集、验证集、测试集。将步骤2处理后的不同食物的图像放在/volume/JPEGImages文件夹中;将步骤2中生成的含有标...

【专利技术属性】
技术研发人员:刘瑞军王俊章博华张伦
申请(专利权)人:北京工商大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1