-
[파이썬] 이미지 크기, 비율 바꾸기Programming Language/Python 2022. 5. 19. 15:44반응형
1년 넘게 안 쓰다 오랜만에 블로그에 글을 써봅니당.
파이썬으로 300*300 픽셀의 이미지를 150*300 픽셀로 줄여볼게요.
import matplotlib.pyplot as plt from PIL import Image import numpy as np img_path = '이미지경로/파일이름.jpg' img = Image.open(img_path) imgnp = np.array(img) plt.imshow(imgnp, aspect='auto') #aspect='auto'로 지정하면 이미지가 지정된 크기에 맞게 늘어남 #interpolation 방식은 여러가지 지정 가능 (참고: https://matplotlib.org/stable/gallery/images_contours_and_fields/interpolation_methods.html) fig = plt.gcf() #최근 이미지를 가져옴 (get the current figure) plt.axis('off'), plt.xticks([]), plt.yticks([]) #축, 눈금 등을 없애줌. plt.tight_layout() #여백 제거 plt.subplots_adjust(left=0, bottom=0, right=1, top=1, hspace=0, wspace=0) #(참고: https://matplotlib.org/3.5.0/api/_as_gen/matplotlib.pyplot.subplots_adjust.html) fig.set_size_inches(1.5,3) #150*300픽셀로 전환하기 위해 1.5,3인치로 지정 fig.savefig('temp.jpg',dpi=100) #인치당 100픽셀이 차지하도록 dpi 설정, 이미지 저장
짠
더 간단한 방법도 있을테지만 아무튼 이미지 크기는 조절되었습니다.interpolation 설정에 따라 이미지 결과물이 달라지게 되는데, 여러 옵션을 줘보세요. (링크는 코드 안에 있음)
-끝
반응형'Programming Language > Python' 카테고리의 다른 글
[Python] 리스트 중복 제거 (0) 2023.04.17 [Python] 리스트 내용 오름차순, 내림차순 정렬하기 (0) 2023.04.17 [Python] 리스트 A에서 다른 리스트 B의 항목 제거하기 (0) 2023.04.17 [Python] 배열 값이 안 바뀔 때 (0) 2019.04.18 [Python] 배열 전체 print하기 (0) 2019.04.18