一种基于自适应对比学习的菜品识别方法技术

技术编号:34171289 阅读:10 留言:0更新日期:2022-07-17 10:50
本发明专利技术涉及一种基于自适应对比学习的菜品识别方法,与传统的菜品识别方法不同,基于自适应对比学习的神经网络,无需在线训练,对推理环境要求较低,本发明专利技术提出多尺度三元组损失函数,使得神经网络自适应的学习不同尺度差异的损失,从而更好的区分菜品间的细微差异;所述的多尺度三元组损失函数由包括三种边界的三元组损失函数以及一个最大值选择函数组成,可自适应选择三元组损失的边界值;本发明专利技术通过自适应对比学习的方式来实现菜品识别的离线推理,不仅不受菜品种类的约束,能够应对类别的实时变化,离线推理还大大降低了菜品识别应用环境的算力要求;本发明专利技术通过在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间稳定运行。法可以长时间稳定运行。法可以长时间稳定运行。

A dish recognition method based on adaptive contrast learning

【技术实现步骤摘要】
一种基于自适应对比学习的菜品识别方法


[0001]本专利技术涉及一种用基于自适应对比学习的菜品识别方法。

技术介绍

[0002]现有的经典菜品识别方法,往往基于神经网络对不同菜品进行分类的方式来实现,这种方式往往需要对神经网络的参数进行重新训练来实现,需要依赖云端或边端有较大的算力以及较长的训练时间。由于需要较长的时间对网络参数进行训练,传统的菜品无法实时新增。传统的基于对比学习的方案往往无视菜品之间的相似程度,使用同一个距离的边界值来计算损失函数,导致特征提取网络预测的特征的可区分性不强。此外,基于对比学习的菜品识别方案在识别的过程中往往会累积错误,导致菜品识别的精度会随着使用时间而变差。

技术实现思路

[0003]本专利技术的一个目的,就是是解决至少上述问题和/或缺陷中的一种,并提供至少后面讲说明的优点。
[0004]本专利技术还有一个目的,是提供一种基于自适应对比学习的菜品识别方法,其能够通过使用自适应边界的三元组损失函数,来优化特征提取网络预测特征的可区分性,保障菜品识别的高精度。通过引入低相似度样本自动删除的策略,有效缓解了菜品识别推理中错误累计的问题。
[0005]为了实现根据本专利技术的这些目的和其他优点,提供了一种基于自适应对比学习的菜品识别方法,包括:在训练过程中,提出了一种基于自适应对比学习损失函数的特征提取模型的训练方法,对每一个三元组同时计算基于三种不同边界的三元组损失,然后对每一个三元组选择三个损失值中较大的损失值用于反向传播;神经网络参数固定,仅做推理,无需训练更新参数;在推理阶段,为防止错误的积累,在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间的稳定运行。
[0006]所述训练过程的输入包含多个菜品类别,每个类别的图像数量不少于两张。每两张同类别的图像与一张不同类别的图像组成一个三元组。在训练过程中,对每一个三元组同时计算基于多种边界的三元组损失,然后对每一个三元组选择两者间较大的损失值用于反向传播。
[0007]优选的是,假设三元组(a,p,n),其中a和p是同一个菜品类别,而n则属于不同的菜品类别。所述较大边界三元组损失函数为L
B
=max{d(a,p)

d(a,n)+M
B
,0},M
B
为较大的边界常数。所述中等边界三元组损失函数为L
I
=g*max{d(a,p)

d(a,n)+M
I
,0},M
I
为中等的边界常数。所述较小边界三元组损失函数为L
S
=f*max{d(a,p)

d(a,n)+M
S
,0},M
S
为较小的边界常数,其中f、g为常量。所述的自适应对比学习损失函数为L=max{L
B
,L
I
,L
S
};
[0008]所述推理阶段由三个过程组成:特征提取过程、比对过程以及反馈过程。首先,在特征提取过程,基于训练阶段优化的特征提取模型对输入图像进行特征提取,得到特征M。
然后取出特征缓存区缓存的所有特征,基于相似程度与当前特征计算距离,取特征缓存区的所有特征与当前特征的最小距离D对应的特征的类别为识别的结果。随后,若最小距离小于阈值T,则将当前识别的特征保存到特征缓存区中,否则丢弃,完成推理过程。
[0009]优选的是,其中所述训练过程中,还包括菜品识别图像预处理的数据增强步骤:对输入图像进行随机的水平/竖直翻转;对输入图像增加随机的对比度、饱和度或者亮度的噪声。
[0010]本专利技术至少包括以下有益效果:由于在训练阶段引入自适应的对比学习损失函数,从而对不同的三元组选择不同边界的损失函数,使得神经网络达到更好的对比学习效果,提高菜品识别的准确度;神经网络参数固定,仅做推理,无需训练更新参数,可以大大降低对计算设备的算力要求;在推理阶段,为防止错误的积累,在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间的稳定运行
[0011]本专利技术的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本专利技术的研究和实践而为本领域的技术人员所理解。
附图说明
[0012]图1为本专利技术中一个实施例中基于自适应对比学习的菜品识别方法的训练流程图;
[0013]图2为本专利技术中一个实施例中基于自适应对比学习的菜品识别方法的应用流程图;
[0014]图3为根据本专利技术所提出的一个实施例的自适应对比学习的损失函数计算图。
具体实施方式
[0015]下面结合附图对本专利技术做进一步的详细说明,以令本领域技术人员参照说明。
[0016]应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其他元件或其组合的存在或添加。
[0017]图1和图2示出了根据本专利技术的一个实施例的基于自适应对比学习的菜品识别方法,其包括:在训练过程中,针对每一个三元组,分别计算三种边界的三元组损失,然后对每一个三元组的损失值中选择较大的损失值作为最终的损失值。最终的损失值用于神经网络参数的优化;在推理过程中,首先基于训练阶段优化的特征提取模型对输入图像进行特征提取,然后将提取的特征与特征缓存区缓存的所有特征,基于相似程度计算与当前特征的距离,取特征缓存区的所有特征与当前特征的最小距离D对应的特征的类别为识别的结果。随后,若最小距离小于阈值T,则将当前识别的特征保存到特征缓存区中,否则丢弃,完成推理过程。
[0018]基于自适应对比学习的菜品识别方法采用的特征提取网络是ResNet18,具体方法实现过程如下:
[0019]一、训练过程
[0020]从训练集中随机选择32个不同的菜品类别,然后从每个类别中随机取8张图片,共256张图片进行数据增强,包括:
[0021]步骤一,对所选的256张图片以Q1的概率做水平翻转得到随机水平翻转后的256张
图片;
[0022]步骤二,对步骤一中得到的256张图片以Q2的概率做竖直翻转得到随机竖直翻转后的256张图片;
[0023]步骤三,对步骤二中得到的256张图片按顺序以Q3的概率增加随机的对比度噪声、饱和度噪声和亮度噪声,得到随机增加随机噪声的256张图片;
[0024]步骤四,图像重采样和像素值归一化,将步骤三中得到的256张图片均重采样,得到宽高均为224个像素的256张图片,将每张图片的像素值归一化处理为0和1之间;
[0025]步骤五,将上述重采样和归一化处理后的256张图片输入ResNet18网络中,得到尺寸为(256,1000)的特征;
[0026]步骤六,根据256张图片的菜品ID找出这256张图片中存在的所有的三元组(a,p,n),其中a为基于模版图片提取的特征,p为基于任意一张与a同类别的输入图片提取的特征,n为基于任意一张与a不同类别的输入图片提取的特征。我们计算每个本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于自适应对比学习的菜品识别方法,其特征在于包括:A)训练步骤,包括从训练集中随机选择32个不同的菜品类别,然后从每个菜品类别中随机取8张图片,共256张图片进行数据增强,包括:A1)对所选的256张图片以Q1的概率做水平翻转得到随机水平翻转后的256张图片;A2)对步骤A1)中得到的256张图片以Q2的概率做竖直翻转得到随机竖直翻转后的256张图片;A3)对步骤A2)中得到的256张图片按顺序以Q3的概率增加随机的对比度噪声、饱和度噪声和亮度噪声,得到随机增加随机噪声的256张图片;A4)图像重采样和像素值归一化,包括将步骤A3)中得到的256张图片均重采样,得到宽高均为224个像素的256张图片,将每张图片的像素值归一化处理为0和1之间;A5)将上述重采样和像素值归一化处理后的256张图片输入到特征提取网络中,该特征提取网络可以是任意的可用于图像分类的神经网络,本发明以ResNet18、ResNet50为例,得到尺寸为(256,V)的特征向量,V可以是任意长度,本发明以常见的1000为例;A6)根据256张图片的菜品ID找出这256张图片中存在的所有的三元组(a,p,n),其中a为基于模版图片提取的特征,p为基于任意一张与a同菜品类别的输入图片提取的特征,n为基于任意一张与a不同菜品类别的输入图片提取的特征,计算每个三元组的多尺度三元组损失L
B
=max{d(a,p)

d(a,n)+M
B
,0}、中等边界三元组损失L
I
=g*max{d(a,...

【专利技术属性】
技术研发人员:胡海苗徐振博黄龚姜宏旭李明竹
申请(专利权)人:杭州食方科技有限公司
类型:发明
国别省市:

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

1