论文部分内容阅读
科技的快速发展极大提升人们的日常生活水平,食品自动识别作为计算机视觉领域在真实场景下的重要应用之一是当前的研究热点。食品自动识别不仅能够用于自动计价,增加结算窗口,降低人力资源损耗,有效减少顾客排队等候时间,还可以用于顾客的饮食偏好分析。后续能够通过大数据分析此区域的饮食习惯,对库存管理起指导作用,同时也能够进行顾客自身的摄食营养分析,帮助顾客合理膳食,避免代谢性疾病的产生。在食品自动识别算法中,传统的图像处理和机器学习方法存在许多不足。大部分研究基于食品分类任务,在实际场景中此类方法容易受到光照强度、噪声干扰、位置方向等因素的影响。随着深度学习的发展,卷积神经网络在图像识别、目标检测、语义分割等领域获得巨大的成功,食品识别技术也逐渐围绕卷积神经网络展开研究。但在食品识别实际落地的过程中,发现存在样本标记获取成本高,食品类别增加模型更新周期长,识别速度较慢等问题。本文致力于解决以上问题,研究实际食堂应用计费场景中的碗碟检测以及菜品识别,主要工作包括以下几个方面:(1)构建并开源国内外首个真实场景下的碗碟数据集Bowl-10和Bowl-95,数据集用于碗碟目标检测研究。Bowl-10数据集含有31111个样本,Bowl-95数据集含有54860个样本,分别包含10类和95类碗碟。此外Bowl-10数据集额外划分实际使用的测试集样本包含有各种背景干扰因素,比如手机、筷子、支付卡等,这有利于测试模型泛化的能力。(2)构建并开源国内外首个大规模目标检测食品数据集CNFood-252以及少样本学习数据集FewFood-50。CNFood-252数据集含有32190个样本,总计252类常见的中式食品。FewFood-50数据集含有50类食品,每类包含少量样本,主要用于研究少量样本情况下的食品识别问题。(3)提出融合低层次特征与高层次特征的跨连Faster R-CNN碗碟检测模型。利用可视化方法详细分析通用目标检测模型Faster R-CNN针对碗碟目标的检测原理和过程,并根据碗碟特征和可视化结果提出跨连Faster R-CNN模型。在Faster R-CNN模型的基础上加入跨连层和特征融合层,其核心是复用并融合CNN提取的浅层特征和深层特征,弥补CNN池化过程损失的部分信息,加强碗碟特征描述,在保证检测速度基本不变的同时提升模型的检测精度。依次在Bowl-10和Bowl-95数据集中对提出的跨连Faster R-CNN碗碟检测模型进行实验并与Faster R-CNN进行比较,结果证明在增加的检测时间在可接受范围内所提出的跨连结构能够提升碗碟检测的准确率。(4)将食品识别难题解耦合为食品定位和食品分类问题以及提出少样本学习模型YOLO-Siam。Tiny-YOLO模型具有极快的检测速度和较好的定位能力,因此在Bowl-95数据集上训练Tiny-YOLO用于食品定位,食品分类可以根据实际需求选择分类合适的分类模型,在CNFood-252数据集上,提出的定位再分类方法对食品识别准确率有所提升。YOLO-Siam模型结合Tiny-YOLO和孪生网络,尝试通过少样本学习的方式解决食品识别需要大量样本问题。YOLO-Siam模型虽然在FewFood-50数据集中并未取得较高的准确率,但为后续的研究指明了可行的方向。