街景字符编码识别项目学习笔记(三)torchvision中的数据增强方法

内容简介

本文介绍torchvision当中有关数据增强方法的使用以及其在街景字符编码识别项目起到的效果。

基本方法总结如下表

方法 效果
transforms.Resize((m,n)) 将原始图像进行resize
transforms.RandomCrop((m,n)) 将原始图像进行随机剪裁
transforms.CenterCrop((m.n)) 取图像中心处进行一定大小的剪裁
transforms.ColorJitter(a,b,c,d) 调整原始图像有关颜色对比度等参数
transforms.Grayscale(num_output_channels) 将原始图像变为灰度图
transforms.RandomHorizontalFlip(p) 对原始图像进行随机水平翻转
transforms.RandomVerticalFlip(p) 对原始图像进行随机竖直翻转
transforms.RandomRotation(a) 随机使图像旋转一定的角度
transforms.RandomErasing(p,scale,ratio,value,inplace) 对原始图像进行仿射变换
transforms.Pad(padding,fill,padding_mode) 对原始图像周围进行元素补充

以下是对上述方法针对本次项目的应用,同时包含对函数中参数设置的详细说明。

应用效果

选取一张图片并进行读取

im = Image.open('D:/dawhale_cv1/input/train/000011.png')

图片示例
对一张图片进行resize操作 输入参数为一个tuple 代表resize之后的图片大小

im_resize = transforms.Resize((100,100))(im) #resize

resize之后的效果
对一张图片进行随机剪裁操作,输入参数同上。当随机剪裁得当的时候,为下图效果

im_random = transforms.RandomCrop((60,100))(im)

在这里插入图片描述
可以看到如果选择一个较为准确得size来对原始图像进行剪裁,则能够获得较为突出的特征,这样有助于网络进行特征提取。如果选取的size出现的过小,则可能会导致获得的图片不足以让网络获得正确的含有数字的图片信息。如下图所示:
剪裁不当出现的效果
以一张图片的中心为基准,截取一定size的图片。输入变量同上。

im_center = transforms.CenterCrop((60.60))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值