PYTHON 프로그래밍

본문 바로가기
사이트 내 전체검색


PYTHON 프로그래밍
PYTHON 프로그래밍

7. 확대 & 축소

페이지 정보

작성자 관리자 댓글 0건 조회 4,389회 작성일 19-09-10 12:08

본문

7. 확대 & 축소

이미지 피라미드(Image Pyramid)


1이미지 피라미드 (Image Pyramid)란 이미지의 크기를 변화시켜 원하는 단계까지 샘플링하는 작업입니다.

영상이나 이미지를 확대, 축소시켜 띄울 수 있습니다.

 

 

소스 :


import cv2

src = cv2.imread("image/glass.png", cv2.IMREAD_COLOR)

height, width, channel = src.shape
dst = cv2.pyrUp(src, dstsize=(width*2, height*2), borderType=cv2.BORDER_DEFAULT);
dst2 = cv2.pyrDown(src);

cv2.imshow("src", src)
cv2.imshow("dst", dst)
cv2.imshow("dst2", dst2)
cv2.waitKey(0)
cv2.destroyAllWindows()

 

 

소스 분석 :

 

width, height, channel = src.shape

 

height, width, channel = src.shape를 이용하여 해당 이미지의 높이, 너비, 채널의 값을 저장합니다.

너비와 높이를 이용하여 dstsize (결과 이미지 크기)을 설정합니다.

 

dst = cv2.pyrUp(src, dstsize=(width*2, height*2), borderType=cv2.BORDER_DEFAULT);

 

cv2.pyrUp(원본 이미지)로 이미지를 2배로 확대할 수 있습니다.

cv2.pyrUp(원본 이미지, 결과 이미지 크기, 픽셀 외삽법)을 의미합니다.

결과 이미지 크기는 pyrUp()함수일 경우, 이미지 크기의 2배로 사용합니다.

픽셀 외삽법은 이미지를 확대 또는 축소할 경우, 영역 밖의 픽셀은 추정해서 값을 할당해야합니다.

이미지 밖의 픽셀을 외삽하는데 사용되는 테두리 모드입니다. 외삽 방식을 설정합니다.

 

dst2 = cv2.pyrDown(src);

 

cv2.pyrDown(원본 이미지)로 이미지를 1/2배로 축소할 수 있습니다.

cv2.pyrUp() 함수와 동일한 매개변수를 가집니다.

결과 이미지 크기는 (width/2, height/2)를 사용해야합니다.

 

 

pyrUp()과 pyrDown() 함수에서 결과 이미지 크기와 픽셀 외삽법은 기본값으로 설정된 인수를 할당해야하므로 생략하여 사용합니다.

피라미드 함수에서 픽셀 외삽법은 cv2.BORDER_DEFAULT만 사용할 수 있습니다.

이미지를 1/8배, 1/4배 ,4배, 8배 등의 배율을 사용해야하는 경우, 반복문을 이용하여 적용할 수 있습니다. 

 

 

결과 :

 

 

 

 

1.PNG 

댓글목록

등록된 댓글이 없습니다.


개인정보취급방침 서비스이용약관 모바일 버전으로 보기 상단으로

TEL. 063-469-4551 FAX. 063-469-4560 전북 군산시 대학로 558
군산대학교 컴퓨터정보공학과

Copyright © www.leelab.co.kr. All rights reserved.