當前位置:編程學習大全網 - 源碼下載 - pytorch之transforms.Compose()函數理解

pytorch之transforms.Compose()函數理解

torchvision 是pytorch的壹個圖形庫,它服務於PyTorch深度學習框架的,主要用來構建計算機視覺模型。torchvision.transforms主要是用於常見的壹些圖形變換。以下是torchvision的構成:

1 .torchvision.datasets : 壹些加載數據的函數及常用的數據集接口;

2. torchvision.models : 包含常用的模型結構(含預訓練模型),例如AlexNet、VGG、ResNet等;

3. torchvision.transforms : 常用的圖片變換,例如裁剪、旋轉等;

4. torchvision.utils : 其他的壹些有用的方法。

pytorch中的transforms模塊中包含了很多種對圖像數據進行變換的函數,這些都是在我們進行圖像數據讀入步驟中必不可少的。這個類的主要作用是串聯多個圖片變換的操作。

import torchvision

data_transform = torchvision.transforms.Compose([

# 隨機縮放裁剪 size 224*224

torchvision.transforms.RandomResizedCrop(224),

# 隨機裁剪 size 224*224

torchvision.transforms.RandomCrop(224),

# 中心裁剪 size 224*224

torchvision.transforms.CenterCrop(224),

# 將圖片的尺寸 Resize 到128*128 不裁剪

torchvision.transforms.Resize((128,128)),

# 轉為張量並歸壹化到[0,1](是將數據除以255),且會把H*W*C會變成C *H *W

torchvision.transforms.ToTensor(),

? ? # 數據歸壹化處理,3個通道中的數據整理理到[-1, 1]區間。3個通道,故有3個值。該[0.485, 0.456, 0.406]這壹組平均值是從imagenet訓練集中抽樣算出來的。

? ? # ToTensor()的[0,1]只是範圍改變了, 並沒有改變分布,mean和std處理後可以讓數據正態分布

torchvision.transforms.Normalize(mean=[0.485, 0.456, 0.406],std=[0.229, 0.224, 0.225]),

])

  • 上一篇:連續兩個板回調低吸公式
  • 下一篇:分析獨生子女的心理特點及教育對策
  • copyright 2024編程學習大全網