본문 바로가기
이미지 Processing!/2D Processing

[python] # 5 . cv2.getRotationMatrix2D 영상 회전

by 욱찡이 2022. 1. 10.
반응형

안녕하세요 

https://kimtaeuk0103.tistory.com/37?category=982083 

 

[python] # 4 . cv2.rotate 회전하기, cv2.flip 반전시키기

안녕하세요 이번엔 회전하는 방법과 반전시키는 방법에 대해 간단하게 설명하겠습니다 우선 회전시키는 방법입니다. import cv2 img_color = cv2.imread('C:/Users/smc/Desktop/test/test.jpg',1) img_color = cv2..

kimtaeuk0103.tistory.com

위 링크의 cv2.rotate와 다른 영상회전에 대해 알아보겠습니다.

 

cv2.rotate는 이미지 전체가 사각형 테두리안에서 회전을하지만

cv2.getRotationMatrix2D는 사각형 테두리를 벗어나 회전을 합니다.

 

 

cv2.getRotationMatrix2D(center, angle, scale)

이미지 center 좌표 중심으로 angle만큼 이동합니다. scale은 이미지크기인데 1로 하면 원본, 0.5로하면 반으로 줄어든 이이미지가 나오게 됩니다.

코드와 이미지로 설명드리겠습니다 

 

import cv2

img_color = cv2.imread('C:/test.jpg',1)
img_color = cv2.resize(img_color,(256,256))

rotation_angle = cv2.getRotationMatrix2D((img_color.shape[0]/2,img_color.shape[1]/2),10,1)
# img_color.shape[0] = 256, img_color.shape[1] = 256

img_color=cv2.warpAffine(img_color,rotation_angle,(0,0))
cv2.imshow('dst', img_color)
cv2.waitKey()

cv2.destroyAllWindows()

이미지 중심을 기준으로 10도 이동한 결과입니다.(scale=1)

rotation과는 다르게 바깥쪽에 검은색 여백이 생겼습니다.

scale=0.5로 했을때 결과입니다

 

이렇게 cv2.rotation과는 다른 cv2.getRotationMatrix2D에 대해 알아보았습니다

 

 

반응형

댓글