零基础入门CV实践-Task2

任务简介

数据读取与数据扩增

学习目标

1、学习Python和Pytorch中的图像读取
2、学会增广方法和Pytorch读取赛题数据

数据读取

图像读取

1、Pillow(可参考廖雪峰的教程中的介绍)
2、OpenCV
开源计算机视觉库(Open Source Computer Vision Library)
解释:是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上
优点:执行速度快,有很多图像相关的操作,内置图像特征处理算法(如:关键点检测边缘检测直线检测)后期再深入了解

数据扩增方法

个人理解

数据量通常都很有限,这样的情况下我们需要想办法使数据量增多,这样的方法称之为数据扩增方法。相当于对数据做一些大小,颜色,角度等等的改变,在不改变性质的情况下使得图像数据变多
(类似是在模拟生活中物体的颜色不同,看物体的角度不同等情况)

常见的数据扩增方法

  1. transforms.CenterCrop 对图片中心进行裁剪
  2. transforms.ColorJitter 对图像颜色的对比度、饱和度和亮度进行变换
  3. transforms.FiveCrop 对图像四个角和中心进行裁剪得到五分图
  4. transforms.Grayscale 对图像进行灰度变换
  5. transforms.Pad 使用固定值进行像素填充
  6. transforms.RandomAffine 随机仿射变换
  7. transforms.RandomCrop 随机区域裁剪
  8. transforms.RandomHorizontalFlip 随机水平翻转
  9. transforms.RandomRotation随机旋转
  10. transforms.RandomVerticalFlip 随机垂直翻转

在这里插入图片描述
注意:类似数据9和6,旋转和转置会改变数值,不可以的

常用的数据扩增库

torchvision
pytorch官方提供的数据扩增库,提供了基本的数据数据扩增方法,可以无缝与torch进行集成;但数据扩增方法种类较少,且速度中等;

imgaug
imgaug是常用的第三方数据扩增库,提供了多样的数据扩增方法,且组合起来非常方 便,速度较快;

albumentations
是常用的第三方数据扩增库,提 供了多样的数据扩增方法,对图像分类、语义分割、物体检测和关键点检测都支持,速度较快。 albumentations 是我个人比较喜欢的,也是用的次数最多的。

Pytorch读取赛题数据

在Pytorch中数据是通过Dataset进行封装的,并通过DataLoder进行并读取

Dataset是一个包装类,用来将数据包装为Dataset类,然后传入DataLoader中,我们再使用DataLoader这个类来更加快捷的对数据进行操作。

DataLoader是一个比较重要的类,它为我们提供的常用操作有:batch_size(每个batch的大小), shuffle(是否进行shuffle操作), num_workers(加载数据的时候使用几个子进程)
以上原文链接

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值