Pytorch使用transforms
首先,這次講解的tansforms
功能,通俗地講,類似於在計算機視覺流程裡的圖像預處理部分的數據增強。
transforms的原理:
說明:圖片(輸入)通過工具得到結果(輸出),這個工具,就是transforms
模板工具,(tool=transforms.ToTensor()
具體工具),使用工具result=tool
(圖片)
tansforms的調用與使用,由下圖可得:
- 先創建一個
transforms.Tensor(),
使用from torchvision import transforms
調包 transforms
去調init函數- init去調用真正的
transforms
類,裡面就有很多的方法(綠色五角星標註),例如:resize
,ToTensor
,CenterCrop
(從這些方法可以看出,許多都是數據增強的方法)。
接下來,上代碼:
import os from torchvision import transforms from PIL import Image root_path = "D:\\data\\basic\\Image" label_path = "aligned" # 1.獲取aligned第一張圖的名字 img_dir = os.path.join(root_path, label_path) img_list = os.listdir(img_dir) img_path = img_list[0] # 2.獲取aligned第一張圖的路徑 img = os.path.join(root_path, label_path, img_path) # 3.使用python自帶的PIL獲取圖片 img = Image.open(img) # 4.將PIL利用transforms轉換成ToTensor to_tensor = transforms.ToTensor() # 創建totensor () img = to_tensor(img) # 使用to_tensor直接將圖片的PIL轉化為tensor print(img) # transforms
代碼結果:
推薦閱讀:
- 初識Pytorch使用transforms的代碼
- pytorch 中transforms的使用詳解
- pytorch 把圖片數據轉化成tensor的操作
- Pytorch關於Dataset 的數據處理
- Pytorch中的圖像增廣transforms類和預處理方法