CN114758167B - 一种基于自适应对比学习的菜品识别方法 - Google Patents
一种基于自适应对比学习的菜品识别方法 Download PDFInfo
- Publication number
- CN114758167B CN114758167B CN202210163470.4A CN202210163470A CN114758167B CN 114758167 B CN114758167 B CN 114758167B CN 202210163470 A CN202210163470 A CN 202210163470A CN 114758167 B CN114758167 B CN 114758167B
- Authority
- CN
- China
- Prior art keywords
- dish
- pictures
- self
- identification method
- dish identification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012549 training Methods 0.000 claims abstract description 23
- 230000008569 process Effects 0.000 claims abstract description 22
- 238000013528 artificial neural network Methods 0.000 claims abstract description 15
- 238000000605 extraction Methods 0.000 claims description 14
- 230000003044 adaptive effect Effects 0.000 claims description 12
- 238000012952 Resampling Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 5
- 239000013598 vector Substances 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 abstract description 14
- 238000012360 testing method Methods 0.000 description 8
- 238000009825 accumulation Methods 0.000 description 5
- 230000001976 improved effect Effects 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000007430 reference method Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种基于自适应对比学习的菜品识别方法,与传统的菜品识别方法不同,基于自适应对比学习的神经网络,无需在线训练,对推理环境要求较低,本发明提出多尺度三元组损失函数,使得神经网络自适应的学习不同尺度差异的损失,从而更好的区分菜品间的细微差异;所述的多尺度三元组损失函数由包括三种边界的三元组损失函数以及一个最大值选择函数组成,可自适应选择三元组损失的边界值;本发明通过自适应对比学习的方式来实现菜品识别的离线推理,不仅不受菜品种类的约束,能够应对类别的实时变化,离线推理还大大降低了菜品识别应用环境的算力要求;本发明通过在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间稳定运行。
Description
技术领域
本发明涉及一种用基于自适应对比学习的菜品识别方法。
背景技术
现有的经典菜品识别方法,往往基于神经网络对不同菜品进行分类的方式来实现,这种方式往往需要对神经网络的参数进行重新训练来实现,需要依赖云端或边端有较大的算力以及较长的训练时间。由于需要较长的时间对网络参数进行训练,传统的菜品无法实时新增。传统的基于对比学习的方案往往无视菜品之间的相似程度,使用同一个距离的边界值来计算损失函数,导致特征提取网络预测的特征的可区分性不强。此外,基于对比学习的菜品识别方案在识别的过程中往往会累积错误,导致菜品识别的精度会随着使用时间而变差。
发明内容
本发明的一个目的,就是是解决至少上述问题和/或缺陷中的一种,并提供至少后面讲说明的优点。
本发明还有一个目的,是提供一种基于自适应对比学习的菜品识别方法,其能够通过使用自适应边界的三元组损失函数,来优化特征提取网络预测特征的可区分性,保障菜品识别的高精度。通过引入低相似度样本自动删除的策略,有效缓解了菜品识别推理中错误累计的问题。
为了实现根据本发明的这些目的和其他优点,提供了一种基于自适应对比学习的菜品识别方法,包括:在训练过程中,提出了一种基于自适应对比学习损失函数的特征提取模型的训练方法,对每一个三元组同时计算基于三种不同边界的三元组损失,然后对每一个三元组选择三个损失值中较大的损失值用于反向传播;神经网络参数固定,仅做推理,无需训练更新参数;在推理阶段,为防止错误的积累,在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间的稳定运行。
所述训练过程的输入包含多个菜品类别,每个类别的图像数量不少于两张。每两张同类别的图像与一张不同类别的图像组成一个三元组。在训练过程中,对每一个三元组同时计算基于多种边界的三元组损失,然后对每一个三元组选择两者间较大的损失值用于反向传播。
优选的是,假设三元组(a,p,n),其中a和p是同一个菜品类别,而n则属于不同的菜品类别。所述较大边界三元组损失函数为LB=max{d(a,p)-d(a,n)+MB,0},MB为较大的边界常数。所述中等边界三元组损失函数为LI=g*max{d(a,p)-d(a,n)+MI,0},MI为中等的边界常数。所述较小边界三元组损失函数为LS=f*max{d(a,p)-d(a,n)+MS,0},MS为较小的边界常数,其中f、g为常量。所述的自适应对比学习损失函数为L=max{LB,LI,LS};
所述推理阶段由三个过程组成:特征提取过程、比对过程以及反馈过程。首先,在特征提取过程,基于训练阶段优化的特征提取模型对输入图像进行特征提取,得到特征M。然后取出特征缓存区缓存的所有特征,基于相似程度与当前特征计算距离,取特征缓存区的所有特征与当前特征的最小距离D对应的特征的类别为识别的结果。随后,若最小距离小于阈值T,则将当前识别的特征保存到特征缓存区中,否则丢弃,完成推理过程。
优选的是,其中所述训练过程中,还包括菜品识别图像预处理的数据增强步骤:对输入图像进行随机的水平/竖直翻转;对输入图像增加随机的对比度、饱和度或者亮度的噪声。
本发明至少包括以下有益效果:由于在训练阶段引入自适应的对比学习损失函数,从而对不同的三元组选择不同边界的损失函数,使得神经网络达到更好的对比学习效果,提高菜品识别的准确度;神经网络参数固定,仅做推理,无需训练更新参数,可以大大降低对计算设备的算力要求;在推理阶段,为防止错误的积累,在反馈过程中引入低相似度样本自动删除,使得菜品识别方法可以长时间的稳定运行
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
图1为本发明中一个实施例中基于自适应对比学习的菜品识别方法的训练流程图;
图2为本发明中一个实施例中基于自适应对比学习的菜品识别方法的应用流程图;
图3为根据本发明所提出的一个实施例的自适应对比学习的损失函数计算图。
具体实施方式
下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明。
应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其他元件或其组合的存在或添加。
图1和图2示出了根据本发明的一个实施例的基于自适应对比学习的菜品识别方法,其包括:在训练过程中,针对每一个三元组,分别计算三种边界的三元组损失,然后对每一个三元组的损失值中选择较大的损失值作为最终的损失值。最终的损失值用于神经网络参数的优化;在推理过程中,首先基于训练阶段优化的特征提取模型对输入图像进行特征提取,然后将提取的特征与特征缓存区缓存的所有特征,基于相似程度计算与当前特征的距离,取特征缓存区的所有特征与当前特征的最小距离D对应的特征的类别为识别的结果。随后,若最小距离小于阈值T,则将当前识别的特征保存到特征缓存区中,否则丢弃,完成推理过程。
基于自适应对比学习的菜品识别方法采用的特征提取网络是ResNet18,具体方法实现过程如下:
一、训练过程
从训练集中随机选择32个不同的菜品类别,然后从每个类别中随机取8张图片,共256张图片进行数据增强,包括:
步骤一,对所选的256张图片以Q1的概率做水平翻转得到随机水平翻转后的256张图片;
步骤二,对步骤一中得到的256张图片以Q2的概率做竖直翻转得到随机竖直翻转后的256张图片;
步骤三,对步骤二中得到的256张图片按顺序以Q3的概率增加随机的对比度噪声、饱和度噪声和亮度噪声,得到随机增加随机噪声的256张图片;
步骤四,图像重采样和像素值归一化,将步骤三中得到的256张图片均重采样,得到宽高均为224个像素的256张图片,将每张图片的像素值归一化处理为0和1之间;
步骤五,将上述重采样和归一化处理后的256张图片输入ResNet18网络中,得到尺寸为(256,1000)的特征;
步骤六,根据256张图片的菜品ID找出这256张图片中存在的所有的三元组(a,p,n),其中a为基于模版图片提取的特征,p为基于任意一张与a同类别的输入图片提取的特征,n为基于任意一张与a不同类别的输入图片提取的特征。我们计算每个三元组的较大边界三元组损失LB=max{d(a,p)-d(a,n)+MB,0}、中等边界三元组损失LI=g*max{d(a,p)-d(a,n)+MI,0}、以及较小边界三元组损失LS=f*max{d(a,p)-d(a,n)+MS,0},其中g、f为常量,分别优选2和4。d(x,y)为x与y的欧式距离。下标B、I、S分别代表较大边界、中等边界、较小边界。然后对每一个三元组(a,p,n),保留L=max{LB,LI,LS}为最终损失;
步骤七,基于AdamW优化器以及最终损失来计算神经网络参数的梯度,对模型的参数进行优化。
二、菜品识别过程
步骤一,将一张未知菜品图像经过重采样和像素值归一化处理,得到尺寸为(1,3,224,224)的图像张量P,输入基于自适应对比学习优化的神经网络中,经过神经网络计算后得到一个尺寸为(1,1000)的特征向量M;
步骤二,若该类别菜品第一次出现或特征缓存区中为空,则认为是新类别。否则,计算M与特征缓存区内所有特征的欧式距离,取最小值D对应的菜品类别为最终识别结果;
步骤三,执行低相似度样本自动删除策略,若最小距离D小于预设的阈值T,优选0.1,则将当前识别的特征及识别结果保存到特征缓存区中,否则丢弃,完成识别过程。
为对本发明效果做进一步说明,列举两个实施例如下:
采用三个来自不同地区且随机选择的A、B、C的餐厅数据进行菜品识别的对比实验,为了便于验证方法的准确性,实验选取的数据分别为三家餐厅时间维度上连续一个月的菜品识别记录,并且每家餐厅的菜品种类中均有较多的外观相似的菜品类别。其中,A餐厅作为训练集,共600种菜品,总图片数量达到80,000张。B餐厅和C餐厅分别作为验证集和测试集。数据集样本数如表1所示。
表1数据集组成
训练集-A餐厅 | 验证集-B餐厅 | 测试集-C餐厅 | |
类别数量 | 600 | 200 | 300 |
总图片数量 | 80,000 | 21,000 | 24,000 |
为了显示基于自适应对比学***均概率作为衡量标准,并且在识别过程中会将所有识别结果加入到特征缓存区中。基于相同的训练/验证/测试的实验配置,在验证集以及测试集上对比有无自适应对比学习(表2中用缩写+ada表示)以及在反馈过程中引入低相似度样本自动删除(表2中用缩写+T表示)对生鲜识别方法的精度产生的影响。对比实验如表2所示。
表2不同数据集有无自适应卷积核的对比实验结果
如表2所示,由固定三元组损失优化的特征提取网络以及识别错误累积组成的基线方法在验证集B餐厅以及测试集C餐厅,无论是ResNet18还是ResNet50的菜品识别效果均有限,低于75%。当采用本发明提出的基于自适应对比学习的训练方法后,在测试集C餐厅上的测试结果表明,ResNet18和ResNet50的菜品识别准确度分别提高了7.4%和7.0%。当采用本发明提出的反馈过程低相似度样本自动删除的策略后,由于有效的缓解了识别误差累积问题,识别精度得到了较大的提升,ResNet50在验证集B餐厅和测试集C餐厅上的识别精确度分别提升了11.5%和10.8%,分别达到了90.9%和92.4%,证实了在跨餐厅进行菜品识别时,本发明提出的低相似度样本自动删除策略对提升菜品识别精确度有显著的改进效果,且“ResNet18+ada+T”和“ResNet50+ada+T”的实施例为本发明的优选实施例。
如上所述,根据本发明,采用使用基于自适应对比学习的训练方案以及低相似度样本自动删除策略,可以保障高精度的且无需训练的菜品识别方法。该菜品识别方法不仅可以支持实时增加菜品,还可以长时间稳定的进行菜品识别,并且该识别方法可以广泛应用于社餐,智慧校园等需要使用菜品识别提高菜品数字化的应用场景。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用。它完全可以被适用于各种适合本发明的领域。对于熟悉本领域的人员而言,可容易地实现另外的修改。因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (3)
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不同菜品类别的输入图片提取的特征,计算每个三元组的多尺度三元组损失LB=max{d(a,p)-d(a,n)+MB,0}、中等边界三元组损失LI=g*max{d(a,p)-d(a,n)+MI,0}、以及较小边界三元组损失LS=f*max{d(a,p)-d(a,n)+MS,0},其中g、f为常量,d(x,y)为x与y的欧式距离,下标B、I、S分别代表较大边界、中等边界、较小边界,然后对每一个三元组(a,p,n),保留L=max{LB,LI,LS}为最终损失;
A7)基于AdamW优化器以及最终损失来计算神经网络参数的梯度,对模型的参数进行优化,
B)菜品识别步骤,包括:
B1)将一张未知菜品图像经过重采样和像素值归一化处理,得到尺寸为(1,3,224,224)的图像张量P,输入基于自适应对比学习优化的神经网络中,经过神经网络计算后得到一个尺寸为(1,1000)的特征向量M;
B2)若该菜品类别的菜品第一次出现或特征缓存区中为空,则认为是新菜品类别,不做识别且将特征向量及新类别加入特征库,否则,计算M与特征缓存区内所有特征的欧式距离,取最小值D对应的菜品类别为最终识别结果;
步骤三,执行低相似度样本自动删除策略,若最小距离D小于预设的阈值T,则将当前识别的特征及识别结果保存到特征缓存区中,否则丢弃,完成识别过程。
2.如权利要求1所述的基于自适应对比学习的菜品识别方法,其特征在于:
所述预设的阈值优选0.1。
3.如权利要求1或2所述的基于自适应对比学习的菜品识别方法,其特征在于:
常量g和f分别优选2和4。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210163470.4A CN114758167B (zh) | 2022-02-22 | 2022-02-22 | 一种基于自适应对比学习的菜品识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210163470.4A CN114758167B (zh) | 2022-02-22 | 2022-02-22 | 一种基于自适应对比学习的菜品识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114758167A CN114758167A (zh) | 2022-07-15 |
CN114758167B true CN114758167B (zh) | 2024-04-26 |
Family
ID=82325913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210163470.4A Active CN114758167B (zh) | 2022-02-22 | 2022-02-22 | 一种基于自适应对比学习的菜品识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114758167B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399428A (zh) * | 2018-02-09 | 2018-08-14 | 哈尔滨工业大学深圳研究生院 | 一种基于迹比准则的三元组损失函数设计方法 |
KR20190140824A (ko) * | 2018-05-31 | 2019-12-20 | 한국과학기술원 | 트리플릿 기반의 손실함수를 활용한 순서가 있는 분류문제를 위한 딥러닝 모델 학습 방법 및 장치 |
CN113313149A (zh) * | 2021-05-14 | 2021-08-27 | 华南理工大学 | 一种基于注意力机制和度量学习的菜品识别方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008842A (zh) * | 2019-03-09 | 2019-07-12 | 同济大学 | 一种基于深度多损失融合模型的行人重识别方法 |
-
2022
- 2022-02-22 CN CN202210163470.4A patent/CN114758167B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399428A (zh) * | 2018-02-09 | 2018-08-14 | 哈尔滨工业大学深圳研究生院 | 一种基于迹比准则的三元组损失函数设计方法 |
KR20190140824A (ko) * | 2018-05-31 | 2019-12-20 | 한국과학기술원 | 트리플릿 기반의 손실함수를 활용한 순서가 있는 분류문제를 위한 딥러닝 모델 학습 방법 및 장치 |
CN113313149A (zh) * | 2021-05-14 | 2021-08-27 | 华南理工大学 | 一种基于注意力机制和度量学习的菜品识别方法 |
Non-Patent Citations (2)
Title |
---|
吕永强 ; 闵巍庆 ; 段华 ; 蒋树强 ; .融合三元卷积神经网络与关系网络的小样本食品图像识别.计算机科学.2020,(第01期),全文. * |
朱瑶 ; 刘一茳 ; .基于深度卷积神经网络的菜品识别.常州信息职业技术学院学报.2020,(第04期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN114758167A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110163234B (zh) | 一种模型训练方法、装置和存储介质 | |
CN113378632B (zh) | 一种基于伪标签优化的无监督域适应行人重识别方法 | |
CN106446896B (zh) | 一种字符分割方法、装置及电子设备 | |
CN110555399B (zh) | 手指静脉识别方法、装置、计算机设备及可读存储介质 | |
EP3171332A1 (en) | Methods and systems for inspecting goods | |
CN109684922B (zh) | 一种基于卷积神经网络的多模型对成品菜的识别方法 | |
CN107392919B (zh) | 基于自适应遗传算法的灰度阈值获取方法、图像分割方法 | |
CN108038859B (zh) | 基于pso和综合评价准则的pcnn图分割方法及装置 | |
CN110781921A (zh) | 一种基于深度残差网络与迁移学习的毒蕈图像识别方法和装置 | |
CN110188763B (zh) | 一种基于改进图模型的图像显著性检测方法 | |
CN112200293A (zh) | 基于cart-amv改进的随机森林算法 | |
CN115546626B (zh) | 面向数据双重不平衡的降偏场景图生成方法及*** | |
CN106780501A (zh) | 基于改进人工蜂群算法的图像分割方法 | |
CN116664643A (zh) | 基于SuperPoint算法的铁路列车图像配准方法及设备 | |
Li et al. | A novelty harmony search algorithm of image segmentation for multilevel thresholding using learning experience and search space constraints | |
CN113378620B (zh) | 监控视频噪声环境下跨摄像头行人重识别方法 | |
CN113033345B (zh) | 基于公共特征子空间的v2v视频人脸识别方法 | |
Jiao et al. | [Retracted] An Improved Cuckoo Search Algorithm for Multithreshold Image Segmentation | |
CN114758167B (zh) | 一种基于自适应对比学习的菜品识别方法 | |
CN110781936A (zh) | 基于纹理描述和深度学习的阈值可学习局部二进制网络的构建方法以及遥感图像分类方法 | |
CN113435480B (zh) | 通道顺序切换自监督提升长尾分布视觉识别能力的方法 | |
Zheng et al. | Improvement of grayscale image segmentation based on pso algorithm | |
CN112381161B (zh) | 一种神经网络训练方法 | |
CN114677535A (zh) | 域适应图像分类网络的训练方法、图像分类方法及装置 | |
CN114399780A (zh) | 表格检测方法、表格检测模型训练方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |