文章目录
前言
按照coco数据集制作自己公司的大型目标检测数据集,Airport Objects in Context(AOCO)
一、公开数据集
1.1 COCO数据集
COCO数据集全称为Microsoft Common Objects in Context(MS COCO),它是一个大规模(large-scale)的对象检测(object detection)、分割(segmentation)、关键点检测(key-point detection)和字幕(captioning)数据集。此数据集由32.8万张图像组成,官网为:https://cocodataset.org/#home ,论文《Microsoft COCO: Common Objects in Context》:https://arxiv.org/pdf/1405.0312.pdf
COCO数据集的第一个版本于2014年发布,它包含16.4万张图像,分为训练集(8.3万张)、验证集(4.1万张)和测试集(4.1万张)。2015年发布了额外的8.1万张图像测试集,包括所有以前的测试图像和4万张新图像。2017年将训练集/验证集分配从8.3万/4.1万更改为11.8万/0.5万张,新的拆分使用相同的图像和标注(annotation)。2017年测试集是2015年测试集的子集包含4.1万张。此外,2017版本包含一个新的未标注的12.3万张数据集。近几年的Tasks使用的都是2017年的数据集。可以从https://cocodataset.org/#download 直接下载需要的COCO数据集。
COCO API可以帮助加载、解析和可视化COCO中的标注。API支持多种标注格式(annotation formats)。
COCO数据集features:
(1).对象检测:具有80个对象类别(object categories)的边界框(bounding boxes)和每个实例的分割掩码。80个类别包括:person, bicycle, car, motorcycle, airplane, bus, train, truck, boat, traffic light, fire hydrant, stop sign, parking meter, bench, bird, cat, dog, horse, sheep, cow, elephant, bear, zebra, giraffe, backpack, umbrella, handbag, tie, suitcase, frisbee, skis, snowboard, sports_ball, kite, baseball bat, baseball glove, skateboard, surfboard, tennis racket, bottle, wine glass, cup, fork, knife, spoon, bowl, banana, apple, sandwich, orange, broccoli, carrot, hot_dog, pizza, donut, cake, chair, couch, potted plant, bed, dining table, toilet, tv, laptop, mouse, remote, keyboard, cell phone, microwave, oven, toaster, sink, refrigerator, book, clock, vase, scissors, teddy bear, hair drier, toothbrush。
(2).字幕(captioning):图像的自然语言描述。
(3).关键点检测:包含超过20万张图像和25万个关键点标记的人物实例(17个可能的关键点:nose, left_eye, right_eye, left_ear, right_ear, left_shoulder, right_shoulder, left_elbow, right_elbow, left_wrist, right_wrist, left_hip, right_hip, left_knee, right_knee, left_ankle, right_ankle)。
(4).图像分割(stuff image segmentation):分为91种类别(stuff categories),包括:banner, blanket, branch, bridge, building-other, bush, cabinet, cage, cardboard, carpet, ceiling-other, ceiling-tile, cloth, clothes, clouds, counter, cupboard, curtain, desk-stuff, dirt, door-stuff, fence, floor-marble, floor-other, floor-stone, floor-tile, floor-wood, flower, fog, food-other, fruit, furniture-other, grass, gravel, ground-other, hill, house, leaves, light, mat, metal, mirror-stuff, moss, mountain, mud, napkin, net, paper, pavement, pillow, plant-other, plastic, platform, playingfield, railing, railroad, river, road, rock, roof, rug, salad, sand, sea, shelf, sky-other, skyscraper, snow, solid-other, stairs, stone, straw, structural-other, table, tent, textile-other, towel, tree, vegetable, wall-brick, wall-concrete, wall-other, wall-panel, wall-stone, wall-tile, wall-wood, water-other, waterdrops, window-blind, window-other, wood。
(5).全场景分割(panoptic:full scene segmentation):分为80种类别(thing classes,例如人、自行车、大象)和91种stuff类别(stuff classes,例如草、天空、道路)。1(不属于任何其它类,Id为0,label name为unlabeled)+80+91类别具体Id和对应的Label name参考:https://github.com/nightrome/cocostuff/blob/master/labels.md 。
(6).人体姿势(dense pose)估计:超过3.9万张图像和5.6万个DensePose标注的人物实例。
1.2 VOC数据集
作为标准数据集, VOC 2007是衡量图像分类识别能级的基准。共计20个类别。
voc数据集的单张图片对象的个数在2.3~2.5之间
JPEGImages 内部存放了PASCAL VOC所提供的所有的图片信息,包括了训练图片和测试图片。这些图像的像素尺寸大小不一,但是横向图的尺寸大约在500375左右,纵向图的尺寸大约在375500左右,基本不会偏差超过100。(在之后的训练中,第一步就是将这些图片都resize到300300或是500500,所有原始图片不能离这个标准过远。
分类识别只关注【Main】,它内部存储20个分类类别的标签,-1表示负样本,+1位正样本
需要保证的是train和val两者没有交集,也就是训练数据和验证数据不能有重复,在选取训练数据时,也应该是随机产生的。
二. 标注数据对模型的影响
- 标注框不贴紧目标
- 个别错误的标签
- 图像长宽比例比值非常大或者非常小
- 相同数量的数据集,识别的类比增多
三. 目标检测常见的评价指标
TP: IoU>0.5的检测框数量(同一Ground Truth只计算一次)
FP: IoU<=0.5的检测框,或者是检测到同一个GT的多余检测框的数量
FN: 没有检测到的GT的数量
Precision: TP / (TP + FP)
Recall: TP / (TP + FN)
PR曲线: Precision-Recall曲线
AP: PR曲线下面积
mAP: mean Average Precision, 即各类别AP的平均值
四. labelimg 安装使用
4.1 安装
windows 打开cmd,输入如下命令
pip install labelimg -i https://pypi.douban.com/simple
4.2 使用
安装好就开始使用吧
点击open dir选择要标注文件的路径,点击change save dir选择保存的路径(Annotations文件夹,这里是存放勾画结果的)。在view菜单栏中打开auto save mode格式,这个可以帮助我们自动的保存。然后点击creat\nRectBox进行勾画,勾画之后就可以输入其类别。然后点击下一张继续画就行了。a和d是切换图片,上一张和下一张(如果感觉这个比较难检测,可以点击上右上角的那个difficult)。
“Open”是打开单个图像, “Open Dir” 打开文件夹;
"Change Save Dir"图像保存的路径,“Next Image” 切换到下一张图像;
“Prev Image”切换到上一张图像, “Verify Image”校验图像;
“Save”保存图像, “Create RectBox”画标注框一个;
“Duplicate RectBox”重复标注框, “Delete RectBox”删除标注框;
“Zoom In”放大图像, “Zoom Out” 缩小图像;
“Fit Window”图像适用窗口, “Fit Width”图像适应宽度。
4.3 标注规范
在框选物体的时候,尽量贴紧物体,包络物体的最外边的坐标,不留多余的间隙。
4.4 校验别人标注效果
同时给到我的
使用如下命令去查看文件的个数
ls -l |grep "^-" | wc -l
参考博客
https://blog.csdn.net/fengbingchun/article/details/121308708
https://blog.csdn.net/ThomasCai001/article/details/120097650