Loading...
2024. 4. 22. 23:43

matplotlib.pyplot의 gray image 출력이 이상하다면

흑백이미지를 준비하고 matplotlib.pyplot에서 plt.imshow로 출력을 해보면 cmap이라는 옵션을 줘야한다 color map이라는 뜻인데 기본값이 viridis라고 한다. 실제로 색이 비슷한걸 보니 그런것 같다 This parameter is ignored if X is RGB(A). 마지막에 이런 문장이 있는데, X가 RGB image면 cmap을 무시한다고 한다 channel 3인 gray image로 줬을 때는 cmap을 안줘도 gray로 잘 나온다

2024. 4. 22. 23:24

gray image의 channel은 1이 아니다

그냥 channel이 1이면 gray image이고 channel이 3이면 color image다 라고 생각해왔는데... 파이썬으로 gray image를 불렀을때 channel이 3인데 gray로 나오는 것 보고 갑자기 궁금증이 생겼다 핵심은 image의 channel이 3이면 각각 R,G,B pixel의 value값을 나타내는데, 이들이 합쳐져서 color image가 나온다. 그런데 R,G,B pixel의 value가 모두 동일하면 gray image가 나온다 먼저 color image를 보면 Image.open으로 열어서 torchvision.transforms.ToTensor()로 tensor로 바꾸면 from PIL import Image from torchvision import dataset..

2023. 11. 7. 11:44

opencv와 PIL이 이미지를 저장하는 방식의 차이

opencv는 컬러 이미지를 BGR로 저장하는데, PIL은 RGB로 저장한다 그래서 동일한 이미지를 opencv로 read할때와 PIL로 open할때 plt.imshow()하면 보이는게 다르다 from imageio import imread from PIL import Image import cv2 import matplotlib.pyplot as plt #opencv를 이용하여 이미지 load 후 시각화 img = cv2.imread(kitten_path) plt.imshow(img) plt.show() opencv로 열면 파란색이 먼저 보임 # PIL을 이용하여 이미지 load후 시각화 img_ = Image.open(kitten_path) plt.imshow(img_) plt.show() #imag..