2021-10-15 COCO数据集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021-10-15 COCO数据集相关的知识,希望对你有一定的参考价值。

参考技术A # 图像分割

## 普通分割

将不同分属不同物体的像素区域分开。

如前景与后景分割开,狗的区域与猫的区域与背景分割开。

## 语义分割

在普通分割的基础上,分类出每一块区域的语义(即这块区域是什么物体)。

如把画面中的所有物体都指出它们各自的类别。

## 实例分割

在语义分割的基础上,给每个物体编号。

如这个是该画面中的狗A,那个是画面中的狗B。

# COCO数据集(Common Objects in COntext)

COCO数据集中图像都是一样的,标注信息annotations不一样(就是包含注释信息的json文件),有captions,instances,person_keypoints,stuff四大类,表示不同的任务,每一类都分别包含train和val。分为:

1. instances——实例分割

2. person_keypoints——关键点分割

3. stuff——语义分割

4. captions——图片的配文,是一句话

每个类别分别包含train,val。做实例分割任务时,使用instance_train201X.json文件作为标签信息。

##  annotations中json文件数据类型

```c



"info" : info,

"images" : [image],

"annotations" : [annotation],

"licenses" : [license],

"categories": [category]



info

"year" : int,

"version" : str,

"description" : str,

"contributor" : str,

"url" : str,

"date_created" : datetime,



image

"id" : int,

"width" : int,

"height" : int,

"file_name" : str,

"license" : int,

"flickr_url" : str,

"coco_url" : str,

"date_captured" : datetime,



license

"id" : int,

"name" : str,

"url" : str,



```

images数组元素的数量等同于划入训练集(或者测试集)的图片的数量;

annotations数组元素的数量等同于训练集(或者测试集)中bounding box的数量;

categories数组元素的数量为80(2017年);

##  解析Object Instance Annotations

每个instance annotation包含一系列字段,包括对象的category id和分割掩码(segmentation mask)。segmentation格式取决于实例是否代表单个对象(iscrowd = 0,在这种情况下使用多边形(polygons))或对象集合(iscrowd = 1,在这种情况下使用RLE(自定义运行长度编码,Run Length Encoding))。

```bash

annotation

    "id": int,   

    "image_id": int,

    "category_id": int,

    "segmentation": RLE or [polygon],

    "area": float,

    "bbox": [x,y,width,height],

    "iscrowd": 0 or 1,



```

单个的对象(iscrowd=0)可能需要多个polygon来表示,比如这个对象在图像中被挡住了。而iscrowd=1时(将标注一组对象,比如一群人)的segmentation使用的就是RLE格式。

注意啊,只要是iscrowd=0那么segmentation就是polygon格式;只要iscrowd=1那么segmentation就是RLE格式。另外,每个对象(不管是iscrowd=0还是iscrowd=1)都会有一个矩形框bbox ,矩形框左上角的坐标和矩形框的长宽会以数组的形式提供,数组第一个元素就是左上角的横坐标值。

area是area of encoded masks,是标注区域的面积。如果是矩形框,那就是高乘宽;如果是polygon或者RLE,那就复杂点。

最后,annotation结构中的categories字段存储的是当前对象所属的category的id,以及所属的supercategory的name.

###  categories字段

categories是一个包含多个category实例的数组,而category结构体描述如下:

```bash



  "supercategory": "vehicle",

"id": 2,

"name": "bicycle"



```

###  以instance_train2014.json文件为例

```bash



    "info":      #info信息

                #数据集信息

                  "description": "COCO 2014 Dataset", # 描述

                  "url": "http://cocodataset.org",  # 链接

                  "version": "1.0", # 版本

                  "year": 2014, # 年份

                  "contributor": "COCO Consortium",  # 贡献者

                  "date_created": "2017/09/01" # 创建日期

        ,

      "images":  #图片信息,数组包含了多张图像

      [        #每张图像的具体信息

                  "license": 5,

                  "file_name": "COCO_train2014_000000057870.jpg",

                  "coco_url": "http://images.cocodataset.org/train2014/COCO_train2014_000000057870.jpg",

                  "height": 480,

                  "width": 640,

                  "date_captured": "2013-11-14 16:28:13",

                  "flickr_url": "http://farm4.staticflickr.com/3153/2970773875_164f0c0b83_z.jpg",

                  "id": 57870

          ,

          ......

          ......  #此处省略很多图片

       

                  "license": 4,

                  "file_name": "COCO_train2014_000000475546.jpg",

                  "http://images.cocodataset.org/train2014/COCO_train2014_000000475546.jpg",

                  "height": 375,

                  "width":500,;、

                  "date_captured": "2013-11-25 21:20:23",

                  "flickr_url": "http://farm1.staticflickr.com/167/423175046_6cd9d0205a_z.jpg",

                  "id": 475546

          ],        #图像描述结束,下面开始介绍licenses

    "licenses":

        [

                  "url": "http://creativecommons.org/licenses/by-nc-sa/2.0/",

                  "id": 1,

                  "name": "Attribution-NonCommercial-ShareAlike License"

          ,

            .....#此处省略七个license

            .....

       

                  "url": "http://creativecommons.org/licenses/by-nc-nd/2.0/",

                  "id": 8,

                  "name": "Attribution-NonCommercial-NoDerivs License"

        ],

      "annotations":

      [ 

#如果你想了解这个annotations中segment里面是什么,首先它是通过压缩处理后的分割区域的一个表示,TFRecord

                "segmentation":[[312.29,562.89,402.25,511.49,400.96,425.38,398.39,372.69,

                                  388.11,332.85,318.71,325.14,295.58,305.86,269.88,314.86,

                                  258.31,337.99,217.19,321.29,182.49,343.13,141.37,348.27,

                                  132.37,358.55,159.36,377.83,116.95,421.53,167.07,499.92,

                                  232.61,560.32,300.72,571.89]],

                "area": 54652.9556,

                "iscrowd": 0,

                "image_id": 480023,

                "bbox": [116.95,305.86,285.3,266.03],

                "category_id": 58,"id": 86

          ,

            .....#此处省略很多图像的分割标签

            .....

                "segmentation":[[312.29,562.89,402.25,511.49,400.96,425.38,398.39,372.69,

                                388.11,332.85,318.71,325.14,295.58,305.86,269.88,314.86,

                                258.31,337.99,217.19,321.29,182.49,343.13,141.37,348.27,

                                132.37,358.55,159.36,377.83,116.95,421.53,167.07,499.92,

                                232.61,560.32,300.72,571.89]],

              "area": 54652.9556,

              "iscrowd": 0,

              "image_id": 480023,

              "bbox": [116.95,305.86,285.3,266.03],

              "category_id": 58,

              "id": 86

          ,

      "categories":#类别信息

    [ 

              "supercategory": "person",

              "id": 1,

              "name": "person"

          ,

              .......#此处省略很多图像的类标签

              .......

         

              "supercategory": "vehicle",

              "id": 2,

              "name": "bicycle"

          ,

       

              "supercategory": "kitchen",#大类

              "id": 50,

              "name": "spoon"

       

```

以上是关于2021-10-15 COCO数据集的主要内容,如果未能解决你的问题,请参考以下文章

COCO_01 数据集介绍 COCO目标检测分割数据集格式

COCO_01 数据集介绍 COCO目标检测分割数据集格式

coco2017数据集COCO格式转YOLO格式

coco2017数据集COCO格式转YOLO格式

yolov5训练coco数据集

Pascal VOC & COCO数据集介绍 & 转换