list, numpy to tensor

YoungJoon Suh·2022년 11월 14일
0
  1. torch.as_tensor(array), torch.Tensor(array), torch.FloatTensor(array): list to tensor
    torch.tensor(array): int타입의 tensor를 반환함. 이 경우 dtype=torch.float64를 사용하여 type을 float로 바꿔줄 수 있다.
  2. torch.tensor(np_array), torch.from_numpy(np_array): numpy array to tensor
    np.array(리스트나 PIL image)로 하면 numpy array가 생성된다.
  3. tensor를 numpy로 변환
    x.numpy(): 이 경우 x는 tensor임

numpy배열 구조: (H x W x C), 이미지 픽셀 밝기의 값 범위: 0 ~ 255
tensor배열 구조: (C x H x W), 이미지 픽셀 밝기의 값 범위: 0 ~ 1

PIL 이미지, Numpy 배열 -> Pytorch Image Tensor
PIL 이미지 또는 Numpy 배열에서 Pytorch Image Tensor로 변환하는 과정에서 두가지가 바뀌어야 한다. (torchvision.transforms.ToTensor())
1. 배열 구조: (H x W x C) -> (C x H x W)
2. 이미지 픽셀 밝기 정도: (scale)
[0~255] -> [0~1]

Pytorch Image Tensor -> PIL 이미지, Numpy 배열
(torchvision.transforms.ToPILImage()
1. 배열 구조: (C x H x W) -> (H x W x C)
2. 이미지 픽셀 밝기 정도: (scale)
[0~1] -> [0~255]

profile
저는 서영준 입니다.

0개의 댓글