Pytorch学习笔记(五)

目录

目标检测

01 相关概念

02 数据集

开源数据集

①VOC数据集,常用VOC2007和VOC2012

②COCO数据集,常用COCO2017

标注自己的数据集

03 Pytorch加载数据集

用Pytorch读取COCO数据集

用Pytorch读取自己标注的数据集


目标检测

01 相关概念

什么是目标检测?输入图片,检测出目标位置与类别

Pytorch学习笔记(五)_第1张图片

什么是目标?在应用场景中抽象出目标。

eg:人脸检测——人脸-目标

Pytorch学习笔记(五)_第2张图片

文字检测——文字-目标

Pytorch学习笔记(五)_第3张图片

主流的目标检测,都是以矩阵框的形式进行输出的。更高精度的通常叫做语义分割。

Pytorch学习笔记(五)_第4张图片


02 数据集

开源数据集

①VOC数据集,常用VOC2007和VOC2012

下载方式:

1>官网 :http://host.robots.ox.ac.uk/pascal/VOC

2>Pytorch dataset

数据集标注:

Annotations:包含了.xml文件,描述了图片的各种信息,特别是目标的位置坐标

ImageSet:主要关注Main文件夹的内容,里面的文件包含了不同类别目标的训练/验证数据集图片名称

JPEGImages:原图片

SegmentationClass/Object:用于语义分割

Pytorch学习笔记(五)_第5张图片

②COCO数据集,常用COCO2017

Pytorch学习笔记(五)_第6张图片

官网:https://cocodataset.org

数据集标注:

.json文件

Pytorch学习笔记(五)_第7张图片

更正:在COCO标注中,bbox中后两个数值不是右下角坐标,而是标注框的宽度和高度

Pytorch学习笔记(五)_第8张图片

标注自己的数据集

在线标注数据集工具:

(网站)比较推荐,可以使用model自动标注

www.makesense.ai

Computer Vision Annotation Tool (http://cvat.org)

(本地)软件安装比较麻烦,且有一定限制

精灵标注助手 只能导出voc格式

vott


03 Pytorch加载数据集

前提:

1.Pytorch环境配置

2.了解Pytorch的数据结构

元组 a=(1,2) a[0]

字典 b={'gzh':'hygge','username':'zz'} b['username']

数组c=[1,2,3] c[1]

用Pytorch读取COCO数据集

import torchvision
from PIL import ImageDraw

coco_dataset=torchvision.datasets.CocoDetection(root=r"D:\\XunLei_Download\\COCO2017\\val2017",
                                                annFile=r"D:\\XunLei_Download\\COCO2017\\annotations\\instances_val2017.json")
print(coco_dataset[0])
# coco_dataset返回一个元组,元组当中有两个元素。
# 第一个元素是图片 第二个元素是标注
image,info=coco_dataset[0]
image.show()#原始图片
Image_handler=ImageDraw.ImageDraw(image) #PIL库提供的ImageDraw画出图片标注
#info是一个数组 其中含有20个元素
for annotation in info: #annotation是一个字典dict
    x_min,y_min,width,height=annotation['bbox']
    #'bbox'对应的值是list数组 [x_min,y_min,width,height]
    Image_handler.rectangle(((x_min,y_min),(x_min+width,y_min+height)))

image.show()#带有目标标注框的图片

注:由于python=3.9环境下没有相应的pycocotools-windows版本下载,降低python版本可能会导致之前安装的一些包出现不匹配问题,故无法在本地debug、运行观察。

用Pytorch读取自己标注的数据集

按照之前标注数据集的方式,将自己数据集的原始图片文件夹路径与标注路径替换上述代码路径即可

你可能感兴趣的:(深度学习,深度学习,计算机视觉,目标检测)