ChineseFoodNet: A Large-scale Image Dataset for Chinese Food Recognition 阅读笔记

1) 摘要

(1) 提出了一个中国食物的数据集,叫做ChineseFoodNet;

(2) 我们努力构建这个大规模的图像数据集,包括食品类别选择,数据收集,数据清洗和标签,特别是如何使用机器学习方法来减少手动标签工作,这是一个昂贵的过程。

(3) 我们进一步提出了一种新颖的两步数据融合方法,称为“TastyNet”,它将来自不同CNN的预测结果与投票方法相结合。

2) 介绍

中国食物难以识别的原因如下:

(1)相同种类的菜却具有不能的外观,因为大多数相同的中国的食物具有不同的成分和不同的烹饪方法,即使对于人眼来说,图像也具有极大的差异;

(2)由于复杂的噪声和多样的背景,我们很难对造成进行建模,中国食物的图像是在各种环境和复杂的背景下拍摄的,例如昏暗的光线,蒸汽环境,强烈的反射,盛菜的器具不同等等。

在本文中,我们还提出了一种新的隶属于投票方式的两步数据融合的方法。投票方式虽然简单但是融合结果很有效,我们采用Resnet152,Densenet121,Densenet169,Densenet201和VGG19-BN作为预测的模型,然后用投票的方式对这些模型的预测结果进行融合,把它称作“TastyNet”,我们提出的方法在验证集上的top-1准确率为81.43%,在测试集上的top-1准确率为81.55%,和单一网络的最高相比,在验证集上提高了2.38%,在训练集上面提高了2.33%.

3) 数据集的收集过程

(1)种类选择

首先通过互联网搜集到250种,然后通过对组里面的调查,得到了300种,因为有一些菜是非常相似的,我们有手工归并为1类,最终得到了208种。

(2)数据收集

图像主要来源于互联网图像以及实际拍照图像,一共收集了50万多张。然而,这些图像中可能有的没有标签,可能有的标签不正确、可能有的标签不明确。

(3)数据和标签清洗

有了数据以后,接下来就是清洗数据并且对每一张图像生成合适的标签。首先删除不规则大小(太大或者太小)的图像,因为这些图像往往是不相关的图像。然后使用信息熵来清除没有内容的图像,我们计算每个通道的熵值,如果太小就清除。最后清除复制的或者非常相似的图像:首先使用AlexNet最后一层全连接层提取1024维特征,然后计算特征之间的欧式距离,如果他们之间的距离小于某个阈值,就认定为这两张图像非常相似,然后删除其中之一。

还有很多图像的标签存在问题,通过以下几步来修正标签:(1)每种类型的图像都对应元数据,元数据就是每张图像的文本描述,包括类别名称、食谱和有关食物的其他信息。首先针对每种类别生成一系列关键字,并且使用关键字来匹配元数据,选择包含特定类关键字的元数据的图像,并用该类标记。经过这步以后,仍然存在一些不正确的标签。(2)通过使用一些已经标注好的样本来加速自己的数据集的标注。我们首先使用crowd-sourcing platform和相同的类别标签收集一个小型的食物图像数据库。然后在这个小型数据库上训练浅层CNN模型用于食物识别任务。通过此CNN模型,我们将收集的图像分类为代表候选标签的不同类。具体地,选择来自浅层网络的前n个(例如,5个)预测作为一个图像的候选标签。最后,我们通过消除错误的标记图像来执行手动标签验证以最终确定数据集。

4) 单模型实验结果

ChineseFoodNet: A Large-scale Image Dataset for Chinese Food Recognition 阅读笔记_第1张图片

5) 数据融合方式

ChineseFoodNet: A Large-scale Image Dataset for Chinese Food Recognition 阅读笔记_第2张图片

 

ChineseFoodNet: A Large-scale Image Dataset for Chinese Food Recognition 阅读笔记_第3张图片

你可能感兴趣的:(Image,Classification)