一种基于神经网络的食物识别方法技术

技术编号:18445649 阅读:11 留言:0更新日期:2018-07-14 10:40
本发明专利技术公开了一种基于神经网络的食物识别方法,包括以下步骤:S1,获取食物图像并输入神经网络;S2,对输入的图像进行特征抽取和降维,得到关键特征;S3,对输入的图像进行LBP特征值计算,得到LBP特征图;S4,将LBP特征图与关键特征进行合并,得到细节特征,并将细节特征输入到下一层;S5,使用神经网络最终抽取的特征进行食物图像的分类。对获取的食物图像不仅进行关键特征的提取,还对其进行LBP特征计算,将得到的LBP特征图与关键特征进行合并,使得细节特征不被抛弃,网络上层依旧可以学习细节特征,解决了目前食物识别方法对细节识别不准确的问题。

A method of food recognition based on Neural Network

The invention discloses a food recognition method based on neural network, which includes the following steps: S1, obtaining food images and input neural network; S2, extracting and reducing the input images by feature extraction and dimensionality reduction; S3, the LBP eigenvalue of the input image is calculated and the LBP feature map is obtained; S4, LBP feature maps and The key features are merged, the detail features are obtained, and the details are entered into the next layer; S5, using the characteristics of the neural network to be extracted by the neural network to classify the food images. The extracted food images are not only extracted from the key features, but also the LBP features are calculated. The LBP feature maps and the key features are merged to make the details not abandoned, and the upper layer of the network can still learn the details of the details, and the problem of the inaccurate identification of the details is solved by the food identification method.

【技术实现步骤摘要】
一种基于神经网络的食物识别方法
本专利技术涉及一种食物识别方法,尤其涉及一种基于神经网络的食物识别方法。
技术介绍
随着智能化技术的发展,基于深度神经网络,使用卷积计算提取输入食物图像中的特征,并根据提取得到的特征对食物进行分类的方法已经逐步得到应用。目前使用神经网络模型,对给定的输入图像进行卷积计算进行特征提取,使用池化操作对卷积计算后的结果进行降维,对图像从局部到全局进行特征抽取,最后根据提取的特征进行食物图像的分类,在大多数情况下能够准确地识别并分类食物图片。但是网络在进行池化池化操作的过程中会丢失低层的卷积计算得到的一些细节信息,所以对于一些细节对分类起到重要作用的场景,其准确度会降低。具体而言,目前的食物识别方法在对食物原材进行识别是有较好的效果,究其原因则在,于食物原材未经处理,待识别食物体积大,即便抛弃大量特征也不会影响识别结果。但是,对于熟食而言,尤其对于以精细见长的中餐,食物原材经过细致的处理,在菜品中食物往往是极细致的丝状或粒状,在这种情况下,采用原本会对图像特征进行大量抛弃的识别方法,则会导致重要的细节信息丢失,而无法识别中餐菜品。对此,人们需要一种可以针对食物细节更好进行识别的方法。
技术实现思路
本专利技术提供一种基于神经网络的食物识别方法,旨在解决目前食物识别方法对细节识别不准确的问题。本专利技术所述的一种基于神经网络的食物识别方法,包括以下步骤:S1,获取食物图像并输入神经网络;S2,对输入的图像进行特征抽取和降维,得到关键特征;S3,对输入的图像进行LBP特征值计算,得到LBP特征图;S4,将LBP特征图与关键特征进行合并,得到细节特征,并将细节特征输入到下一层;S5,使用神经网络最终抽取的特征进行食物图像的分类。本专利技术所述的一种基于神经网络的食物识别方法,对获取的食物图像不仅进行关键特征的提取,还对其进行LBP特征计算,将得到的LBP特征图与关键特征进行合并,也就是说,可以将得到的LBP特征图,使用跳跃连接输入到网络的较高层中,与其抽取的特征进行合并,作为下一次的输入,形成残差模块,使得网络可以在较高层中学到一些已经丢失和经过变化后的局部细节信息,实现对细节的准确识别,解决目前食物识别方法在进行池化操作的过程中会丢失低层的卷积计算得到的一些细节信息,对于一些细节对分类起到重要作用的场景,其准确度会降低的问题。具体而言,目前的食物识别方法在识别中餐菜品时,由于菜品呈现食物体积细小且相互混合的特点,在进行识别丢失的细节信息会使菜品中体积细小的食材被丢失,导致不能准确识别食物,而本专利技术通过计算图像的LBP特征图,并将LBP特征图与关键特征合并,使得细节特征不被抛弃,网络上层依旧可以学习细节特征,基于这一优点,本专利技术所述的识别方法可以用于精准识别食物,尤其适用于中餐菜品的识别,解决了目前食物识别方法识别细节不准确的问题。同时,本专利技术要求保护的识别方法,不仅仅适用于识别食物,由于其具有保留细节特征的功能,在需要进行细节识别,例如与中餐菜品有类似特点的塑料颗粒分离等方面,都可以使用该种识别方法。本专利技术提供了一种可以进行准确识别的方法,一种基于神经网络的食物识别方法,解决了目前食物识别方法对细节识别不准确的问题。附图说明图1是一种基于神经网络的食物识别方法的流程图1;图2是一种基于神经网络的食物识别方法的流程图2;图3是一种基于神经网络的食物识别方法的步骤S0的流程图;图4是一种基于神经网络的食物识别方法的步骤S01的流程图;图5是一种基于神经网络的食物识别方法的步骤S02的流程图;图6是一种基于神经网络的食物识别方法的步骤S03的流程图;图7是一种基于神经网络的食物识别方法的步骤S2的流程图;图8是一种基于神经网络的食物识别方法的步骤S3的流程图。具体实施方式如图1所示,一种基于神经网络的食物识别方法,包括以下步骤:S1,获取食物图像并输入神经网络;S2,对输入的图像进行特征抽取和降维,得到关键特征;S3,对输入的图像进行LBP特征值计算,得到LBP特征图;S4,将LBP特征图与关键特征进行合并,得到细节特征,并将细节特征输入到下一层;S5,使用神经网络最终抽取的特征进行食物图像的分类。对获取的食物图像不仅进行关键特征的提取,还对其进行LBP特征计算,将得到的LBP特征图与关键特征进行合并,使得细节特征不被抛弃,网络上层依旧可以学习细节特征,解决了目前食物识别方法对细节识别不准确的问题。如图2、图3所示,该种基于神经网络的食物识别方法,还包括神经网络训练步骤S0,所述S0包括以下步骤:S01,制作收集样本;S02,选择训练样本,提取其关键特征和LBP特征图并进行合并,得到细节特征并输入到下一层;S03,计算神经网络最终抽取的特征的损失,损失大于阈值至返回步骤S02,步骤小于阈值则进入步骤S04;S04,使用测试样本的图像进行测试,若测试损失小于阈值则结束训练步骤,进入步骤S1,若测试损失大于阈值则返回步骤S02。该步骤为神经网络训练步骤,神经网络具有学习功能,在使用神经网络进行食物识别前,可以对神经网络进行训练,使其学习需要识别的对象,在对大量训练样本的学习下,可以更为快速准确的对需要识别的对象进行识别。如图4所示,所述步骤S01包括以下步骤:S011,收集所有菜式的图像,调整为固定大小的图像;S012,为每个菜式图像的分配对应的菜式名标签;S013,将所有图像和对应的标签分为训练样本和测试样本。本专利技术中使用神经网络对食物进行识别,在训练神经网络是需要收集食物样本,部分食物样本作为训练样本,对神经网络进行训练,部分样本作为测试样本,对经过训练的神经网络进行测试,以便后续使用。如图5所示,所步骤S02包括以下步骤:S021,选取训练样本输入网络,使用卷积计算提取输入图像的特征图;S022,使用最大池化操作处理步骤S021中的特征图,并对结果进行非线性激活函数处理得到关键特征;S023,计算图像的LBP特征图并与步骤S022得到的关键特征合并;S024,将步骤S023合并所得的均值和方差进行BatchNormalization操作,将其归一化到[0,1]的范围内,作为细节特征输入下一层的卷积。将得到的LBP特征图,使用跳跃连接输入到网络的较高层中的,与其抽取的特征进行合并,作为下一层的输入,形成残差模块,使得网络可以在较高层中学到一些已经丢失和经过变化后的局部细节信息。如图6所示,所述步骤S03包括以下步骤:S031,将最后一个激活函数的激活值使用全连接层展开成指定大小;S032,使用softmax输出图像属于各个菜式的概率得到预测标签;S033,根据预测标签和实际标签使用损失函数计算损失,如损失小于阈值则结束步骤,如损失大于阈值则进入步骤S034;S034,根据步骤S033的损失使用优化函数计算梯度更新网络参数,并返回步骤S02。对损失进行计算,以便进一步对神经网络进行调整训练,保证神经网络可以保留适当的细节信息,即便因为抛弃底层信息而导致细节缺失,也不因为保留大量无用信息,影响处理效率。如图7所示,所述步骤S2包括以下步骤:S21,使用卷积计算提取输入图像的特征图;S22,使用最大池化操作处理步骤S21中的特征图;S23,使用非线性激活函数处理步骤S22中的输出,得到关键特征。该步本文档来自技高网...

【技术保护点】
1.一种基于神经网络的食物识别方法,其特征在于,包括以下步骤:S1,获取食物图像并输入神经网络;S2,对输入的图像进行特征抽取和降维,得到关键特征;S3,对输入的图像进行LBP特征值计算,得到LBP特征图;S4,将LBP特征图与关键特征进行合并,得到细节特征,并将细节特征输入到下一层;S5,使用神经网络最终抽取的特征进行食物图像的分类。

【技术特征摘要】
1.一种基于神经网络的食物识别方法,其特征在于,包括以下步骤:S1,获取食物图像并输入神经网络;S2,对输入的图像进行特征抽取和降维,得到关键特征;S3,对输入的图像进行LBP特征值计算,得到LBP特征图;S4,将LBP特征图与关键特征进行合并,得到细节特征,并将细节特征输入到下一层;S5,使用神经网络最终抽取的特征进行食物图像的分类。2.根据权利要求1所述的一种基于神经网络的食物识别方法,其特征在于,还包括神经网络训练步骤S0,所述S0包括以下步骤:S01,制作收集样本;S02,选择训练样本,提取其关键特征和LBP特征图并进行合并,得到细节特征并输入到下一层;S03,计算神经网络最终抽取的特征的损失,损失大于阈值至返回步骤S02,步骤小于阈值则进入步骤S04;S04,使用测试样本的图像进行测试,若测试损失小于阈值则结束训练步骤,进入步骤S1,若测试损失大于阈值则返回步骤S02。3.根据权利要求2所述的一种基于神经网络的食物识别方法,其特征在于,所述步骤S01包括以下步骤:S011,收集所有菜式的图像,调整为固定大小的图像;S012,为每个菜式图像的分配对应的菜式名标签;S013,将所有图像和对应的标签分为训练样本和测试样本。4.根据权利要求2所述的一种基于神经网络的食物识别方法,其特征在于,所述步骤S02包括以下步骤:S021,选取训练样本输入网络,使用卷积计算提取输入图像的特征图;S022,使用最大池化操作处理步骤S021中的特征图,并对结果进行非线性激活函数处理得到关键特征;S023,计算图像的LBP特征图并与...

【专利技术属性】
技术研发人员:杨德顺陈晓鹏
申请(专利权)人:广州市派客朴食信息科技有限责任公司
类型:发明
国别省市:广东,44

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

1