数据集是由一组数据组成的集合,用于对提出算法进行训练和测试。在图像领域,针对不同应用,数据集构造不同,体现在规模,图片尺寸等性质上。图像应用主要有检测、分类和分割三大类。本文将介绍数据集的构建以及辅助生成工具。

1. 数据集的特点

在物体检测方面,数据集规模适中,图片范围相对较大。自然图像中,以PASCAL VOC2007为例(The 2005 PASCAL Visual Object Classes Challenge, The PASCAL Visual Object Classes Challenge 2012
http://www.pascalnetwork.org/challenges/),该数据集中图片包含多方位的多成像视觉类,目标物体类别数为20,目标物体多视角,如人有侧面照,正面照,远照,近照等,同时在一幅图像中,包含多个目标物体,可以是一个类别,也可以是多个类,同时,背景也相对复杂。该数据集需要进行定期扩充和更新,防止出现算法对数据的过拟合。
    在目标分类方面,数据集规模较大,包含大量基本类别,图片范围相对较小,包含目标内容即可。自然图像中,以ImageNet为例(ImageNet: A Large-Scale Hierarchical Image Database, http://www.image-net.org/),该数据集包含5247个类别,共3200000张图像,各类别图像数量在500~1000不等,相同类别的目标物体在外形,位置,视角,姿势,背景等方面都存在差异,增强样本的多样性。
    在图像分割方面,数据集规模相对较小,相对物体检测提供的边界框更精细,需要给出感兴趣区域的大致轮廓。自然图像中,以BSDS500 为例,该数据集包含500张图片,其中训练集200张,测试集300张。(http://www.eecs.berkeley.edu/Research/Projects/CS/vision/bsds/
    目前,对于目标分类数据集,大多数关注基本类别,如各种类型的动物,无生命物体等,类别覆盖范围广,如ImageNet和UCMercedLandUse数据集。针对这类数据集设计得到的算法在泛化性方面性能较优。当然,也有部分关注具体所属类别分类,该类数据集中各类别之间的差异较小,此处,比较典型的如Caltech-UCSD Bird 200(Caltech-UCSD Birds 200, http://authors.library.caltech.edu/27468/)数据集,该数据集由200种类型的鸟组成,大部分类别间的鸟形态相似。对这些数据的分类,只有小部分人在没有专业指导的情况下能够分类正确,这样,虽然根据此数据集训练得到的识别系统分类性能不是特别完美,但仍然非常有用。
    数据集规模一定程度上影响了算法性能的实际评测。例如手写数字数据库MNIST(http://yann.lecun.com/exdb/mnist/),该数据集包含类别少,部分针对此数据集训练测试进行设计的算法能够起到很好的分类效果,但应用到其它大型数据集上,如ImageNet,效果不佳。而针对大型数据集能够取得很好性能的算法,在小规模数据集上性能依旧较优。

2. 构建数据集方法

面向不同应用,数据集的构建方法也存在差异。针对物体检测,首先确定数据组织方式,包括数据存储形式,图片尺寸,目标物体的定义,图片中包含目标物体的选取,标注信息的描述等。在PASCAL VOC2007数据集中,数据层次关系见图1,其中Annotations文件夹中包含目标物体标签信息,以yml文件形式存储,JPEGImages中内容为样本图片,ImageSet/Main为目标物体类别,训练集、验证集和测试集信息,该数据集中共选取了人,动物,车辆和室内物体四大类,共20类目标物体。

常用的图像分类数据集 图像数据集是什么_常用的图像分类数据集


    随后,根据之前关于数据的定义,选择满足条件的样本,具有方法有通过聚类方法采样,生成式样本生成样本,通过AMT平台人工选取等,其中,各目标物体的数量分布尽量均匀。PASCAL VOC2007共选取图片数量为9963。针对已有样本,根据目标物体的定义,对样本进行标注,如图2。图中,红色矩形框内目标物体为狗,绿色矩形框内目标物体为人。如图3所示,褐色窗口为检测窗口,通过计算IOU来判断该褐色窗口是否检测到目标物体。IOU的计算为两个窗口相交部分的面积/两个窗口并部分的面积,与阈值比较,计算结果大于该部分阈值,表明检测到目标物体,不同算法设置标准不同。根据数据组织形式中要求,描述物体标签信息,如图4所示,给出具体目标物体类别,包含目标物体的矩形区域坐标等信息。此部分标注方法有人工标注,通过已有物体检测算法进行粗标注,再进行人工校正等。由于数据量大,存在人为的误操作,多采用多用户同时参与,对用户选择判断结果进行统计,计算置信度来进行相应的选择判断,降低上述行为的影响。也可采用弱监督学习方法,自动找到最优的位置,较好地解决标注位置存在偏差,不能很好地覆盖目标物体的问题。

    完成上述操作后,进行训练集、验证集和测试集的分配。一般而言,当数据量较大时,典型划分是训练集占总样本的50%,而其它各占25%,当样本少的时候,上面的划分就不合适了,常用较少部分做测试集,而训练集与验证集再以一定比例分配,具体视样本容量而定。在此数据集中,三部分的数据比例为1:1:2。

常用的图像分类数据集 图像数据集是什么_benchmark_02


    针对图像分类,相比物体检测,数据组织方式较为简单,包括样本尺寸,形状、具体类别等。此后,根据物体类别以及对图片的约束,针对各个类别进行采样即可。该部分图片包含范围相对较小,包含目标物体即可,当然,也可包含背景。采样方法也与上述类似,由于数据量大,同样存在人为的误操作和用户未按指导进行操作等,也都采用多用户参与的方式减少影响。该部分也可以利用已有检测算法得到目标物体的位置,截取部分图片作为目标分类的样本等方法,利用已有分类算法,初步对数据库样本分类,在人为进行校正。此时需要关注的是各类样本的多样性,采集的各类样本能够较好地表征该类样本的特性,各个类别的数量分布也应相对均匀。以ImageNet为例,该数据集包含5247个类别,共3200000张图像,各类别图像数量在500~1000不等,相同类别的目标物体在外形,位置,视角,姿势,背景等方面都存在差异,以增强样本的多样性。

    针对图像分割,该部分数据组织形式包含图像尺寸的选择,目标物体的定义,标签的形式,如图5所示,针对同一幅图像5-a,有图5-b和图5-c两种分割形式,图5-b带类别信息。在选取样本后,对样本进行标注,该部分多由人工标注,平台有AMT等。相对以上两种标注任务,该部分工作相对繁杂和精细,需要给出目标物体的大致轮廓,随后将同一分割处图像的像素值设定为相同值,不再关注目标物体细节,这也使得该类数据集相对较小,图片数量少。针对该类数据集算法的评测一般参用逐像素比较,各点像素值相当于一个类别,具体判别详见评测标准。

常用的图像分类数据集 图像数据集是什么_benchmark_03

3. 辅助生成工具

一个数据集的构建过程中需要大量辅助工具的部分主要有数据采样和标签标注。

3.1 数据采样

在数据采样部分,目前比较通用的方法是从数据库中进行检索,粗略获取源数据。在自然图像中,如TinyImages(80 Million Tiny Images,http://groups.csail.mit.edu/vision/TinyImages/),先使用KNN等聚类算法,从图片库中找出大部分相似的图片;如ImageNet数据集,先通过关键词检索,获取大量样本,为进一步扩大候选图片的多样性,将关键词翻译成其它语言进一步检索。在样本采集困难,数据库样本较少的情况下,比较简单的处理方法是对样本进行平移、旋转等仿射变换,增大样本量。当前,生成式模型在样本生成方面也取得了一定的成果,通过对已有样本进行学习,生成类似样本的图片。相比原图片,该类图片进行了大量的随机采样与变换,可以对样本的多样性,规模等进行扩充。不过,目前仍没有公开数据集采用此方法进行样本扩充,主要原因是通过生成式算法产生的样本是否具有代表性仍然是一个未知数。通过上述方法得到的样本,存在大部分符合要求,如不存在目标物体,与实际类别差别大等,需要对样本进行初步筛选,剔除不符合要求的样本。该部分工作多由人工完成,相关的平台有Amazon Mechanical Tuck(AMT)。为消除人为的误操作,可多人同步进行判断,在TinyImages中,该阶段的选择有确定,可能,猜测三个选项。随后,对用户判断结果进行统计,计算置信度,最终决定是否剔除。

3.2 标签标注

标签标注部分,根据不同应用操作略有不同。在目标定位、分割方面,需要给出目标物体的边界框,大致轮廓等信息,其中边界框也能从轮廓信息中提取出来。这些操作同样也都可以在AMT平台上完成。当要得到图片的二进制属性注释,则需要对图像进行更详细的细分。在目标分类方面,那么需要对图像标注类别信息。与上面部分方法类似,判定具体类别的,需要多人同步进行,可根据类别信息,从wiki上获取目标的具体定义,再对待分类图像进行判断。判断的选项有相同,相似,不同,不好判断四个选项,最后系统对判断结果进行统计,使用相应算法计算置信度,完成对目标物体类别标签的设定。此处,由于wiki等系统定义中的图片多来自于少量摄影师较短时间范围内获取的图片,相对单一,因此基准可能并不具有特别好的代表性。
    两部分的辅助方法多是基于人工选择判断进行的,因此,人为的误操作,参与用户未按指导进行等行为都可能造成数据集存在一定的缺陷。通过弱监督学习方法,自动找到最优的位置,可以比较好地解决标注位置存在偏差,不能很好地覆盖目标物体的情况。而对于出现完全标注错误或类别判断错误的情况,目前,数据集一般采用多用户同时参与,对用户选择判断结果进行统计,计算置信度来进行相应的选择判断,降低上述行为的影响。在面临数据量特大的情况下,弱监督、半监督以及相关的检测算法也可以派上用场,通过算法的初步检测,给出目标物体的大致位置,进行初步定位,再有人工进行校正,可以进一步地缓解这一问题。