cv2.resize(src, dsize [, dst [, fx [, fy [, interpolation]]]]) [] : 생략 가능
import cv2
img = cv2.imread("imgs/Lenna.png") # 이미지 불러오기
# height, width, channel = img.shape
# print(f'width : {width}, height : {height}, channel : {channel}')
dst = cv2.resize(img, dsize=(0, 0), fx=1.5, fy=1.5)
dst2 = cv2.resize(img, dsize=(500, 500))
dst3 = cv2.resize(img, dsize=(840, 720))
cv2.imshow("Lenna", img)
cv2.imshow("dst", dst)
cv2.imshow("dst2", dst2)
cv2.imshow("dst3", dst3)
cv2.waitKey()
cv2.destroyAllWindows()
src : 입력 영상
dsize : 결과 영상 크기. (w, h) - (0,0)이면 fx, fy값 이용하여 결정
dst : 출력 영상
fx, fy : x와 y방향 스케일 비율(dsize값 0일 때 유효)
interpolation : 보간법 지정(기본값 : cv2.INTER_LINEAR)
- cv2.INTER_NEAREST : 최근방 이웃 보간법(비추!) 속도↑↑ 품질↓↓
- cv2.INTER_LINEAR : 양선형 보간법(2x2 이웃 픽셀 참조) 속도↑ 품질↓
- cv2.INTER_CUBIC : 3차회선 보간법(4x4 이웃 픽셀 참조) 속도↓ 품질↓
- cv2.INTER_LANCZOS4 : Lanczos 보간법(8x8 이웃 픽셀 참조) 속도↓↓ 품질↑↑
- cv2.INTER_AREA : 영상 축소 시 효과적
height, width, channel = img.shape
print(f'width : {width}, height : {height}, channel : {channel}')
자신이 불러온 이미지 원본 크기가 궁금하신 분들은 위의 코드 부분을 주석을 풀고 실행시켜보시기 바랍니다.
'OpenCV-Python' 카테고리의 다른 글
OpenCV Python 선, 도형, 문자열 출력 (0) | 2021.08.24 |
---|---|
OpenCV Python 필터링 - 잡음 제거 : 양방향(bilateral) 필터 (0) | 2021.08.23 |
OpenCV Python 필터링 - 날카로운 영상 만들기: 언샤프(unsharp) 필터 (0) | 2021.08.23 |
OpenCV Python 필터링 - 부드러운 영상 만들기 : blur, GaussianBlur (0) | 2021.08.22 |
OpenCV Python 자르기, 붙이기 (2) | 2021.08.21 |