【COCO数据集】COCO API入门 超详细注解

A Glance through COCO

Presented By R.G.

关于COCO

COCO的官网:https://cocodataset.org/
COCO API : https://github.com/cocodataset/cocoapi

以下是 COCO API 的 README

COCO is a large image dataset designed for object detection, segmentation, person keypoints detection, stuff segmentation, and caption generation. This package provides Matlab, Python, and Lua APIs that assists in loading, parsing, and visualizing the annotations in COCO. Please visit http://cocodataset.org/ for more information on COCO, including for the data, paper, and tutorials. The exact format of the annotations is also described on the COCO website. The Matlab and Python APIs are complete, the Lua API provides only basic functionality.

In addition to this API, please download both the COCO images and annotations in order to run the demos and use the API. Both are available on the project website.
-Please download, unzip, and place the images in: coco/images/
-Please download and place the annotations in: coco/annotations/
For substantially more details on the API please see http://cocodataset.org/#download.

After downloading the images and annotations, run the Matlab, Python, or Lua demos for example usage.

To install:

  • For Matlab, add coco/MatlabApi to the Matlab path (OSX/Linux binaries provided)
  • For Python, run “make” under coco/PythonAPI
  • For Lua, run “luarocks make LuaAPI/rocks/coco-scm-1.rockspec” under coco/

关于COCO API的安装

参考我的另一篇文章:
【COCO数据集】python使用pip安装COCO API

COCO数据集配置

配置COCO数据集的路径

import sys,os
# 配置COCO数据集的路径
COCOPATH = os.path.join(os.getcwd(), 'COCO') # 这里配置你COCO数据集的所在路径,我是放在当前文件夹路径内
COCOPATH
'/Users/rgmax/Desktop/COCO_ABC/COCO'

查看路径(文件夹)下内容,可以看到由于是mac的缘故,多了一个’.DS_Store’

os.listdir(COCOPATH) 
['image_info_test2017',
 '.DS_Store',
 'val2017',
 'panoptic_annotations_trainval2017',
 'test2017',
 'stuff_annotations_trainval2017',
 'unlabeled2017',
 'annotations_trainval2017',
 'train2017',
 'image_info_unlabeled2017']

剔除mac自带的.DS_Store文件夹,并将COCO数据集所含的所有文件夹路径保存在COCODIRS字典中

COCODIRS = os.listdir(COCOPATH)
try: # 剔除mac自带的.DS_Store文件夹
    COCODIRS.remove('.DS_Store')
except:
    pass
# COCODIRS = [os.path.join(COCOPATH, d) for d in COCODIRS] # 生成完整文件夹路径
COCODIRS = {
     # 改用字典比较好访问
    d : os.path.join(COCOPATH, d) for d in COCODIRS
}
COCODIRS
{'image_info_test2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/image_info_test2017',
 'val2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/val2017',
 'panoptic_annotations_trainval2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/panoptic_annotations_trainval2017',
 'test2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/test2017',
 'stuff_annotations_trainval2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/stuff_annotations_trainval2017',
 'unlabeled2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/unlabeled2017',
 'annotations_trainval2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/annotations_trainval2017',
 'train2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/train2017',
 'image_info_unlabeled2017': '/Users/rgmax/Desktop/COCO_ABC/COCO/image_info_unlabeled2017'}

构建训练集对象train_set

# 构建训练集
train_set = [os.path.join(COCODIRS['train2017'],p) for p in os.listdir(COCODIRS['train2017'])]
train_set[:5] # 查看部分训练集(图片)
['/Users/rgmax/Desktop/COCO_ABC/COCO/train2017/000000109622.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/train2017/000000160694.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/train2017/000000308590.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/train2017/000000327573.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/train2017/000000062929.jpg']

构建验证集对象val_set

val_set = [os.path.join(COCODIRS['val2017'],p) for p in os.listdir(COCODIRS['val2017'])]
val_set[:5]
['/Users/rgmax/Desktop/COCO_ABC/COCO/val2017/000000182611.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/val2017/000000335177.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/val2017/000000278705.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/val2017/000000463618.jpg',
 '/Users/rgmax/Desktop/COCO_ABC/COCO/val2017/000000568981.jpg']

下面是一个图像通道转换函数

随便加载一张训练集和验证集的一

  • 18
    点赞
  • 73
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
COCO数据集是一个广泛使用的计算机视觉数据集,用于目标检测,分割和图像字幕等任务。以下是COCO数据集详细介绍: 一、什么是COCO数据集COCO数据集是Microsoft COCO(Common Objects in Context)计划的一部分,它包含过33万张带注释的图像,涵盖了80个常见的对象类别。COCO数据集的目标是为计算机视觉领域的研究提供一个统一的基准,以便研究人员可以比较不同算法的性能。 COCO数据集可以应用到的Task: COCO数据集可以用于多种计算机视觉任务,包括目标检测,分割,关键点检测和图像字幕等。 一个简单的数据集实例展示: 以下是一个COCO数据集中的图像示例,其中包含了多个对象类别的实例标注。 附录80个类别: COCO数据集中包含了80个常见的对象类别,包括人,动物,交通工具,家具等。 二、COCO数据集的格式介绍 基础的数据格式介绍: COCO数据集中的每个图像都有一个唯一的ID,对应于一个JSON文件中的一个条目。每个JSON条目包含了图像的文件名,图像的宽度和高度,以及图像中每个对象的标注信息。 不同Task下的annotation: COCO数据集可以用于多种计算机视觉任务,因此在不同的任务下,标注信息的格式也有所不同。例如,在目标检测任务中,每个对象的标注信息包括对象的类别,边界框坐标等。 Object Detection annotation: 在目标检测任务中,每个对象的标注信息包括对象的类别,边界框坐标等。 other task: 在其他任务中,标注信息的格式也有所不同。例如,在图像分割任务中,每个像素都被标注为属于哪个对象。 Result format 输出格式: 为了便于比较,COCO采用统一的输出格式。具体格式形式可以参考:https://cocodataset.org/#format-results。 便于后续可以通过官方的测试集来和公共榜单上的结果比较。 三、COCO数据集的下载 COCO数据集可以从官方网站上下载,网址为:https://cocodataset.org/#download。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值