我如何从 MSCOCO 数据集中获取人物 class 和细分?
How can i get person class and segmentation from MSCOCO dataset?
我只想从 COCO 数据集中下载人 class 和二进制分割。我该怎么做?
使用 pycocotools .
- 导入库
from pycocotools.coco import COCO
- 加载coco注解的json文件
coco = COCO('/home/office/cocoDataset/annotations/instances_train2017.json')
- 获取coco数据集的类别ID
category_ids = coco.getCatIds(catNms=['person'])
- 获取单张图片的标注
annotations = coco.getAnnIds(imgIds=image_id, catIds=category_ids, iscrowd=False)
- 这里每个人的标注都不一样,第i个人的标注是
annotation[i]
所以合并所有的标注保存
if annotations:
mask = coco.annToMask(annotations[0])
for i in range(len(annotations)):
mask |= coco.annToMask(annotations[i])
mask = mask * 255
im = Image.fromarray(mask)
im.save('~/mask_name.png')
我只想从 COCO 数据集中下载人 class 和二进制分割。我该怎么做?
使用 pycocotools .
- 导入库
from pycocotools.coco import COCO
- 加载coco注解的json文件
coco = COCO('/home/office/cocoDataset/annotations/instances_train2017.json')
- 获取coco数据集的类别ID
category_ids = coco.getCatIds(catNms=['person'])
- 获取单张图片的标注
annotations = coco.getAnnIds(imgIds=image_id, catIds=category_ids, iscrowd=False)
- 这里每个人的标注都不一样,第i个人的标注是
annotation[i]
所以合并所有的标注保存if annotations: mask = coco.annToMask(annotations[0]) for i in range(len(annotations)): mask |= coco.annToMask(annotations[i]) mask = mask * 255 im = Image.fromarray(mask) im.save('~/mask_name.png')