数据预处理

1. torchvision.transforms: 常用的图像预处理方法

    1.数据标准化
        
        transforms.Normalisze(mean, std, inplace=False)

        功能: 不同channel对图像进行标准化
        mean: 通道的均值
        std: 通道的标准差
        inplace: 是否原地操作

    2.裁剪
        1. transforms.CenterCrop # 从图像中心裁剪图片
        2. transforms.RandomCrop # 从图片中随机裁剪出尺寸为size的图片
        3. transforms.RandomResizedCrop # 随机大小、长宽比裁剪图片
        4. transforms.FiveCrop
        5. transforms.TenCrop
    3.旋转 和 翻转
        1. transforms.RandomHorizontalFlip
        2. transforms.RandomVerticalFlip # 根据概率水平或垂直翻转图片
        3. transforms.RandomRotation # 随机旋转图片
    4.图像变换
        1. transforms.Pad # 图片边缘填充
        2. transforms.ColorJitter # 调整亮度、对比度、饱和度、色相
        3. transforms.GrayScale
        4. transforms.RandomGrayscale # 图片转化为灰度图
        5. transforms.RandomAffine # 图片放射变换(旋转、平移、缩放、错切、旋转)
        6. transforms.LinearTransformation
        7. transforms.RandomErasing # 图片随机遮掩
        8. transforms.Lambda # 自定义lambda方法
        9. transforms.Resize
        10. transforms.Totensor
        11. transforms.Normalize

    5. 其他操作

        1. transforms.RandomChoice # 从一系列transforms方法中随机挑选一个
        2. transforms.RandomApply # 根据概率执行一组transforms操作
        3. transforms.RandomOrder # 对一组transforms操作打乱顺序
    
    
    
2. 自定义transforms

    1. 仅接收一个参数,返回一个参数
    2. 注意上下游的输出和输入

    class MyTransforms(object):
        def __init__(self, ..)
            ..
        def __call__(self, img):
            """
            主要自定义预处理逻辑操作
            """
            return img


# 应用
train_transform = transforms.Compose([
    transforms.Resize((224, 224)),
    MyTransforms(),
    transforms.ToTensor(),
    transforms.Normalize(norm_mean, norm_std),
])

valid_transform = transforms.Compose([
    transforms.Resize((224, 224)),
    transforms.ToTensor(),
    transforms.Normalize(norm_mean, norm_std)
])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值