import cv2
from google.colab.patches import cv2_imshow
import numpy as np
img_path = '/content/drive/My Drive/다핏문제/907/lena.jpg'
세 개의 꼭지점을 정해주면 getAffineTransform을 통해 이미지 변환을 할 수 있다.
img = cv2.imread(img_path,1)
height, width = img.shape[:2]
controls = []
controls.append((0,0))
controls.append((0,height))
controls.append((width,0))
controls.append((width, height))
src = np.float32([list(controls[0]),list(controls[1]),list(controls[2])])
dst = np.float32([list(controls[0]),list(controls[1]),list(controls[2])])
dst[1][1] -= 50 # 오른쪽 상단 모서리 기준 y로 -50 내리기
dst[2][1] += 50 # 왼쪽 하단 모서리 기준 y로 50 올리기
M = cv2.getAffineTransform(src, dst)
img_result = cv2.warpAffine(img, M, (height, width))
cv2_imshow(img_result)
'DAFIT > 907 - OpenCV 다루기 첫걸음' 카테고리의 다른 글
<DAFIT> 07 OpenCV 다루기 첫걸음 - 06 영상 크기 조절 (0) | 2019.11.26 |
---|---|
<DAFIT> 07 OpenCV 다루기 첫걸음 - 05 영상 뒤집기 (0) | 2019.11.26 |
<DAFIT> 07 OpenCV 다루기 첫걸음 - 04 영상 회전 (0) | 2019.11.26 |
<DAFIT> 07 OpenCV 다루기 첫걸음 - 03 영상 이동 (0) | 2019.11.26 |
<DAFIT> 07 OpenCV 다루기 첫걸음 - 02 영상 읽기, 출력, 저장 (0) | 2019.11.26 |