.npy 이미지를 np.load를 불러와서 imshow 할 시 에러가 뜬다.
아래는 npy 이미지 예시 차원이다.
TypeError: Invalid shape (2, 256, 256) for image data
img_array = np.load('./train/healthy/1.npy')
plt.imshow(img_array)
보통 이미지를 읽을때 (W x H x C) 이므로 (256, 256, 2)로 변형해줘야된다. 제일 쉬운방법은 permute를 사용하는 건데 torch tensor로 변형 후 permute을 해야된다.
img_array = np.load('/home/donggeun/DeScarGAN/warp_set/train/diseased/1.npy')
# img_array = img_array.permute(1,2,0)
tensordata = torch.from_numpy(img_array)
tensordata = tensordata.permute(1,2,0)
plt.imshow(tensordata[:,:,0])
마지막 tensordata에 [:,:,0]을 취하지 않으면 에러가 뜬다.
마지막 차원중 Channel 에서 0만뽑아 이미지 출력을 하면 된다.