1.3 MS COCO挑战赛和数据集

MS COCO(Microsoft Common Objects in Context,常见物体图像识别)起源于2014年由微软出资赞助的Microsoft COCO数据集。MS COCO既是数据集的名称,又是计算机视觉顶级赛事的名称,MS COCO竞赛与ImageNet在2017年举办的最后一届ILSVRC赛事一样,都被视为计算机视觉领域最权威的竞赛之一。

⋘ 1.3.1 MS COCO挑战赛的竞赛任务

MS COCO挑战赛更偏向于检测任务。根据MS COCO官网的定义,图像中的全景(Panoptic)可以分为物体(Things)和背景(Stuff)。其中,物体一般指代那些可数的图像内容,如人、马、车、工具等;背景一般指代具有纹理特征但不可数的图像内容,如天空、草地、树林等。MS COCO对于图像的全景、物体和背景的定义如图1-17所示。

图1-17 MS COCO对于图像的全景、物体和背景的定义

针对此定义,MS COCO挑战赛一共分为6个任务:与全景、物体、背景相关的3个任务,与人体相关的2个任务,与图像自然语言相关的1个任务。

全景分割任务主要是对全景的分割,需要将每类物体和每类背景都分割出来,但是不需要详细到每个个体实例。背景分割任务主要是检测背景,不需要关注物体种类和个体实例(Instance)的分割,在分割方式上,需要将图像中的每类背景都分割出来,本质上属于种类分割。物体检测任务主要是检测物体,不需要关注背景的分割,在分割方式上,需要将每类物体的每个个体实例都一一区分出来,本质上属于实例分割。检测物体的标注有两种方法,一种是矩形框,另一种是像素级别的实例分割。2018年之后的物体检测任务只开展像素级别的实例分割检测,不开展矩形框形式的物体检测。MS COCO关于全景分割、物体检测、背景分割的三大任务如图1-18所示。

图1-18 MS COCO关于全景分割、物体检测、背景分割的三大任务

除此之外,MS COCO挑战赛还有2个与人体相关的任务。稠密姿态任务主要是将单张二维图片中所有描述人体的像素映射到一个三维的人体表面模型。人体关键点检测任务主要是将图片中人体各个部位上的关键点的位置检测出来。MS COCO挑战赛与人体相关的2个任务如图1-19所示。

图1-19 MS COCO挑战赛与人体相关的2个任务

MS COCO挑战赛还有一个与自然语言相关的图像说明任务。图像说明任务也称看图说话任务,是一个融合计算机视觉模态、自然语言模态的多模态(Multimodality)任务,它将输入的一幅图像输出为一段针对该图像的描述文字。MS COCO挑战赛的图像说明任务如图1-20所示。

图1-20 MS COCO挑战赛的图像说明任务

以上6个任务并非每年都举办,MS COCO挑战赛历年任务列表如表1-3所示。

表1-3 MS COCO挑战赛历年任务列表

续表

⋘ 1.3.2 MS COCO数据集简介

随着MS COCO挑战赛公开的就是与其同名的MS COCO数据集。MS COCO数据集集中在2014年、2015年和2017年这3个年份释放。MS COCO历年数据集图片规模如表1-4所示。其中,“k”表示数量单位“千”。

表1-4 MS COCO历年数据集图片规模

注:单元格含义是样本数量/压缩包大小。

MS COCO数据集的物体检测任务数据集支持80个分类,拥有超过33万张图片,其中20万张有标注,整个数据集中个体的数目超过150万个。背景分割任务数据集支持91个分类(天空、树林等)。全景分割任务数据集支持物体检测任务的80个分类和背景分割任务的91个分类,合计171个分类。人体关键点检测任务数据集拥有超过20万张图片,涵盖25万个人体。稠密姿态任务数据集拥有超过3.9万张图片,涵盖5.6万个人体。

MS COCO数据集在官网的下载分为图片下载和标注下载。图片压缩包只包含以jpg为后缀的图片文件,标注压缩包内含的标注文件为json格式。由于单个json文件较大,建议读者使用MS COCO数据集的数据集工具(pycocotools),它支持数据集的解析和统计,安装它之前需要预先安装Visual C++Build Tools(高于14的版本)。

MS COCO数据集的pycocotools提供了支持Python语言的版本。如果读者的操作系统是Linux家族的,那么可以登录MS COCO的官方GitHub主页下载安装和使用;如果读者的操作系统是Windows,那么由于官方pycocotools并没有提供基于Windows操作系统的预编译包,所以必须登录GitHub上用户名为philferriere的主页,下载由该用户为Windows预先编译的pycocotools工具包。下载安装命令和交互输出如下。命令中的“#”并不是注释符号,而用于子目录索引。

由于MS COCO数据集较大,因此官网支持整体打包下载,也支持每个任务所需的数据集子集单独下载。本书的案例使用的是数据量较小的PASCAL VOC数据集,因此这里对MS COCO数据集不展开叙述。