计算机视觉部分函数积累

  1. torchvision.transforms.Compose()
    它服务于PyTorch深度学习框架的,主要用来构建计算机视觉模型。torchvision.transforms主要是用于常见的一些图形变换。以下是torchvision的构成:

(1.torchvision.datasets: 一些加载数据的函数及常用的数据集接口;
(2.torchvision.models: 包含常用的模型结构(含预训练模型),例如AlexNet、VGG、ResNet等;
(3.torchvision.transforms: 常用的图片变换,例如裁剪、旋转等;
(4.torchvision.utils: 其他的一些有用的方法。
torchvision.transforms.Compose()类,主要作用是串联多个图片变换的操作。
以上摘自
实例:

transform_train = torchvision.transforms.Compose([
    # 在高度和宽度上将图像放大到40像素的正方形
    torchvision.transforms.Resize(40),
    # 随机裁剪出一个高度和宽度均为40像素的正方形图像,
    # 生成一个面积为原始图像面积0.64到1倍的小正方形,
    # 然后将其缩放为高度和宽度均为32像素的正方形
    torchvision.transforms.RandomResizedCrop(32, scale=(0.64, 1.0),
                                                   ratio=(1.0, 1.0)),
    torchvision.transforms.RandomHorizontalFlip(),
    torchvision.transforms.ToTensor(),
    # 标准化图像的每个通道
    torchvision.transforms.Normalize([0.4914, 0.4822, 0.4465],
                                     [0.2023, 0.1994, 0.2010])])

transforms.RandomResizedCrop(224) 函数:将原图片随机裁剪出一块,再缩放成相应 (sizesize) 的比例(即先随机采集,然后对裁剪得到的图像缩放为同一大小),默认scale=(0.08, 1.0)
transforms.Resize(size):将图片的短边缩放成size的比例,然后长边也跟着缩放,使得缩放后的图片相对于原图的长宽比不变。会改变图片的长宽比,但是本身并没有发生裁切,仍可以通过resize方法返回原来的形状。
transforms.CenterCrop(size):从图片中心开始沿两边裁剪,裁剪后的图片大小为(size
size)。
transforms.RandomHorizontalFlip() 以给定的概率随机水平旋转给定的PIL的图像,默认为0.5;
transforms.ToTensor() 将给定图像转为Tensor;
transforms.Normalize() 归一化处理;
部分摘自图像操作

  1. os.path.join()函数:连接两个或更多的路径名组件
    (1.如果各组件名首字母不包含’/’,则函数会自动加上
    (2.第一个以”/”开头的参数开始拼接,之前的参数全部丢弃,当有多个时,从最后一个开始
    (3.如果最后一个组件为空,则生成的路径以一个’/’分隔符结尾
    (4.若出现”./”开头的参数,会从”./”开头的参数的上一个参数开始拼接。
import os

Path1 = 'home'
Path2 = 'develop'
Path3 = 'code' 

Path20 = os.path.join(Path1,Path2,Path3)
print ('Path20 = ',Path20)
输出
Path20 = home\develop\code

猜你喜欢

转载自blog.csdn.net/weixin_44040169/article/details/126845470