반응형

torchvision.transforms.ToTensor()이란?

torchvision.transforms.ToTensor() class는 PIL 이미지 또는 numpy 배열을 pytorch tensor로 변화 시켜주는  클래스입니다.

반응형

 

즉, 이미지를 PIL 이미지 또는 numpy 배열의 구조를 "Channel x Height x Width"로 바꿔줍니다.

그리고 이미지 픽셀의 밝기를 [0~225]를 [0~1]로 수정합니다.

 

from torchvision.transforms import ToTensor
from PIL import Image
import numpy as np

test_img  = Image.open('test.jpg')
img_array  = np.array(test_img)

tf_toTensor = ToTensor()

# PIL
img_tensor = tf_toTensor(test_img)
print(img_tensor_PIL)
print(img_tensor_PIL.size()) # 3 x 428 x 428
print(img_tensor_PIL.min(), img_tensor_PIL.max()) # 0~1

# numpy
img_tensor_ndarray = tf_toTensor(img_array)
print(img_tensor_ndarray)
print(img_tensor_ndarray.size()) # 3 x 428 x 428
print(img_tensor_ndarray.min(), img_tensor_ndarray.max()) # 0~1
반응형

'머신러닝 & 딥러닝' 카테고리의 다른 글

'NoneType' object has no attribute 'shape'  (0) 2023.04.13
pin_memory란?  (0) 2023.04.11
Data annotation이란?  (0) 2023.04.10
end-to-end란?  (0) 2023.04.09
Fully Connected Layers  (0) 2023.04.07

+ Recent posts