1. pycocotools#

下面主要介绍 COCO 类的使用, 使用牛仔行头检测竞赛的数据。

import os
from pycocotools.coco import COCO

1.1. COCO 的实例化#

root_dir = 'datasets'
coco_file = os.path.join(root_dir, 'train.json')
img_dir = os.path.join(root_dir, 'images')
coco = COCO(coco_file)

1.2. 常用查询函数#

# 获取类别 ID
cat_ids = coco.getCatIds(catNms=[], supNms=[], catIds=[])
# 获取图片 ID
img_ids = coco.getImgIds(imgIds=[], catIds=[])
# 获取标注 ID
ann_ids = coco.getAnnIds(imgIds=[], catIds=[], areaRng=[], iscrowd=None)
NOTE
参数说明
catNms限定类别名列表
supNms限定超类别名列表
catIds限定类别 ID 列表
imgIds限定图像 ID 列表
areaRng限定分割掩膜的面积范围
iscrowd指定 iscrowd 标志。0 表示单个对象,1 表示人群区域,None 表示不限制
CAUTION

当函数返回类型与参数类型相同,函数起起过滤作用,即过滤出参数列表中属于coco的ID。
三个函数的返回值类型均为 List (即使是单个元素)。

:::

1.3. 加载所有类#

cats = coco.loadCats(coco.getCatIds())
NOTE

loadCats(ids=[])<传入id以加载id对应的类>

返回值 cats (以载入 cowboy 所有类别为例)的格式为

[{'freebase_id': '/m/0176mf', 'id': 87, 'name': 'belt'},
{'freebase_id': '/m/017ftj', 'id': 1034, 'name': 'sunglasses'},
{'freebase_id': '/m/01b638', 'id': 131, 'name': 'boot'},
{'freebase_id': '/m/025rp__', 'id': 318, 'name': 'cowboy_hat'},
{'freebase_id': '/m/032b3c', 'id': 588, 'name': 'jacket'}]

1.4. 加载图片(信息)#

img_info = coco.loadImgs(img_ids)
NOTE

coco.loadImgs(ids=[])<传入id以加载id对应的图片>

返回值 img_info (以载入一张图片为例)的格式为

[{'file_name': 'ddd2b190ea90dffa.jpg',
'height': 1024,
'id': 15984033263460081658,
'neg_category_ids': [],
'pos_category_ids': [45, 69, 277, 434],
'source': 'OpenImages',
'width': 768}]

1.5. 加载标注#

anns = coco.loadAnns(ann_ids)
NOTE

coco.loadAnns(ids=[])<传入id以加载id对应的标注>

返回值 anns (以载入一张图片有两个标注为例)的格式为

[{'area': 220911.31,
'bbox': [0.0, 257.92, 313.51, 704.64],
'category_id': 131,
'freebase_id': '/m/01b638',
'id': 2267424,
'image_id': 2608397864569803265,
'iscrowd': False},
{'area': 123689.57,
'bbox': [432.51, 282.24, 214.98, 575.36],
'category_id': 131,
'freebase_id': '/m/01b638',
'id': 2267425,
'image_id': 2608397864569803265,
'iscrowd': False}]

参考资料#

  1. pycocotools库的下载、简介、安装、配置、常用函数使用方法之详细教程指南
  2. Cowboy_outfits_starter_kit
  3. [Training]cowboy_object_detection_YOLOv5🤠
目标检测常用 Python 库
https://blog.rinne05.top/blog/technology/python-detection-libs/
作者
发布于
9/19/2025
许可协议
CC BY-NC-SA 4.0

主题设置

主题模式
主题色
透明度
模糊
© 2025 霖,采用 CC BY-NC-SA 4.0 许可
ICP备案号: 豫ICP备2025156598号-1
输入以搜索...
通过 Fuse.js 搜索